diff options
author | Malte Brandy <malte.brandy@maralorn.de> | 2021-05-09 01:01:21 +0200 |
---|---|---|
committer | Malte Brandy <malte.brandy@maralorn.de> | 2021-05-09 01:01:33 +0200 |
commit | 66de11da71cf3de9a748eb30cad667e6147b4c41 (patch) | |
tree | 9ae73a64d54a0b35f322e06be0bf558872bdce74 /maintainers | |
parent | 6a0d9e5242ea97fd0ae6e1294df2a6414a0a0d39 (diff) |
maintainers/scripts/haskell/regenerate-hackage-packages.sh: Small improvents and encoding workaround
Diffstat (limited to 'maintainers')
-rwxr-xr-x | maintainers/scripts/haskell/regenerate-hackage-packages.sh | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/maintainers/scripts/haskell/regenerate-hackage-packages.sh b/maintainers/scripts/haskell/regenerate-hackage-packages.sh index 462840cd24c95..1effa5e2596c9 100755 --- a/maintainers/scripts/haskell/regenerate-hackage-packages.sh +++ b/maintainers/scripts/haskell/regenerate-hackage-packages.sh @@ -1,12 +1,12 @@ #! /usr/bin/env nix-shell #! nix-shell -i bash -p coreutils haskellPackages.cabal2nix-unstable git nix -I nixpkgs=. -# This script is used to regenerate nixpkgs' Haskell package set, using a tool -# called hackage2nix. hackage2nix looks at the config files in -# pkgs/development/haskell-modules/configuration-hackage2nix and generates -# a Nix expression for package version specified there, using the Cabal files -# from the Hackage database (available under all-cabal-hashes) and its -# companion tool cabal2nix. +# This script is used to regenerate nixpkgs' Haskell package set, using the +# tool hackage2nix from the nixos/cabal2nix repo. hackage2nix looks at the +# config files in pkgs/development/haskell-modules/configuration-hackage2nix +# and generates a Nix expression for package version specified there, using the +# Cabal files from the Hackage database (available under all-cabal-hashes) and +# its companion tool cabal2nix. # # Related scripts are update-hackage.sh, for updating the snapshot of the # Hackage database used by hackage2nix, and update-cabal2nix-unstable.sh, @@ -14,10 +14,15 @@ set -euo pipefail +# To prevent hackage2nix fails because of encoding. +# See: https://github.com/NixOS/nixpkgs/pull/122023 +export LC_ALL=C.UTF-8 + extraction_derivation='with import ./. {}; runCommand "unpacked-cabal-hashes" { } "tar xf ${all-cabal-hashes} --strip-components=1 --one-top-level=$out"' unpacked_hackage="$(nix-build -E "$extraction_derivation" --no-out-link)" config_dir=pkgs/development/haskell-modules/configuration-hackage2nix +echo "Starting hackage2nix to regenerate pkgs/development/haskell-modules/hackage-packages.nix ..." hackage2nix \ --hackage "$unpacked_hackage" \ --preferred-versions <(for n in "$unpacked_hackage"/*/preferred-versions; do cat "$n"; echo; done) \ @@ -35,3 +40,5 @@ hackage-packages.nix: Regenerate based on current config This commit has been generated by maintainers/scripts/haskell/regenerate-hackage-packages.sh EOF fi + +echo "Regeneration of hackage-packages.nix finished." |