···1212Node dependencies are defined in [node-packages.json](node/node-packages.json).
1313[Node2nix](https://github.com/svanderburg/node2nix) is used for generating nix expression
1414from this file. Use [generate-node-packages.sh](node/generate-node-packages.sh) for updates of nix expressions.
1515-1616-## Binwrap Patch
1717-1818-Some node packages might use [binwrap](https://github.com/avh4/binwrap) typically for installing
1919-[elmi-to-json](https://github.com/stoeffel/elmi-to-json). Binwrap is not compatible with nix.
2020-To overcome issues with those packages apply [patch-binwrap.nix](../lib/default.nix) which essentially does 2 things.
2121-2222-1. It replaces binwrap scripts with noop shell scripts
2323-2. It uses nix for installing the binaries to expected location in `node_modules`
2424-2525-Example usage be found in `elm/default.nix`.
···1010 -o node-packages.nix \
1111 -c node-composition.nix \
1212 --no-copy-node-env -e ../../../../node-packages/node-env.nix
1313-# well, elm-pages requires two different version of esbuild so we twist it's wrist to only use one
1414-sed -i 's/sources."esbuild-0.19.12"/sources."esbuild-0.21.5"/' node-packages.nix
···22#!nix-shell -p cabal2nix elm2nix -i bash ../../..
3344# Update all cabal packages.
55-cabal2nix 'https://github.com/zwilias/elm-instrument' --revision '0.0.7' > packages/ghc8_10/elm-instrument/default.nix
65for subpath in 'avh4-lib' 'elm-format-lib' 'elm-format-markdown' 'elm-format-test-lib'; do
77- cabal2nix 'https://github.com/avh4/elm-format' --revision '0.8.7' \
88- --subpath $subpath > packages/ghc9_2/elm-format/${subpath}.nix
66+ cabal2nix --no-haddock 'https://github.com/avh4/elm-format' --revision '0.8.8' \
77+ --subpath $subpath > packages/ghc9_8/elm-format/${subpath}.nix
98done
1010-cabal2nix 'https://github.com/avh4/elm-format' --revision '0.8.7' > packages/ghc9_2/elm-format/elm-format.nix
1111-cabal2nix 'https://github.com/stoeffel/elmi-to-json' --revision '1.3.0' > packages/ghc8_10/elmi-to-json/default.nix
99+cabal2nix --no-haddock 'https://github.com/avh4/elm-format' --revision '0.8.8' > packages/ghc9_8/elm-format/elm-format.nix
1210cabal2nix 'https://github.com/ekmett/ansi-wl-pprint' --revision 'v0.6.8.1' > packages/ghc9_6/ansi-wl-pprint/default.nix
13111412# We're building binaries from commit that npm installer is using since
+10-5
pkgs/development/compilers/ghc/8.10.7-binary.nix
···342342 -exec sed -i "s@extra-lib-dirs: @extra-lib-dirs: ${libiconv}/lib@" {} \;
343343 ''
344344 +
345345- # aarch64 does HAVE_NUMA so -lnuma requires it in library-dirs in rts/package.conf.in
345345+ # Some platforms do HAVE_NUMA so -lnuma requires it in library-dirs in rts/package.conf.in
346346 # FFI_LIB_DIR is a good indication of places it must be needed.
347347- lib.optionalString (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isAarch64) ''
348348- find . -name package.conf.in \
349349- -exec sed -i "s@FFI_LIB_DIR@FFI_LIB_DIR ${numactl.out}/lib@g" {} \;
350350- ''
347347+ lib.optionalString
348348+ (
349349+ lib.meta.availableOn stdenv.hostPlatform numactl
350350+ && builtins.any ({ nixPackage, ... }: nixPackage == numactl) binDistUsed.archSpecificLibraries
351351+ )
352352+ ''
353353+ find . -name package.conf.in \
354354+ -exec sed -i "s@FFI_LIB_DIR@FFI_LIB_DIR ${numactl.out}/lib@g" {} \;
355355+ ''
351356 +
352357 # Rename needed libraries and binaries, fix interpreter
353358 lib.optionalString stdenv.hostPlatform.isLinux ''
+511
pkgs/development/compilers/ghc/9.0.2-binary.nix
···11+{
22+ lib,
33+ stdenv,
44+ fetchurl,
55+ perl,
66+ gcc,
77+ ncurses5,
88+ ncurses6,
99+ gmp,
1010+ libiconv,
1111+ numactl,
1212+ libffi,
1313+ llvmPackages,
1414+ coreutils,
1515+ targetPackages,
1616+1717+ # minimal = true; will remove files that aren't strictly necessary for
1818+ # regular builds and GHC bootstrapping.
1919+ # This is "useful" for staying within hydra's output limits for at least the
2020+ # aarch64-linux architecture.
2121+ minimal ? false,
2222+}:
2323+2424+# Prebuilt only does native
2525+assert stdenv.targetPlatform == stdenv.hostPlatform;
2626+2727+let
2828+ downloadsUrl = "https://downloads.haskell.org/ghc";
2929+3030+ # Copy sha256 from https://downloads.haskell.org/~ghc/9.0.2/SHA256SUMS
3131+ version = "9.0.2";
3232+3333+ # Information about available bindists that we use in the build.
3434+ #
3535+ # # Bindist library checking
3636+ #
3737+ # The field `archSpecificLibraries` also provides a way for us get notified
3838+ # early when the upstream bindist changes its dependencies (e.g. because a
3939+ # newer Debian version is used that uses a new `ncurses` version).
4040+ #
4141+ # Usage:
4242+ #
4343+ # * You can find the `fileToCheckFor` of libraries by running `readelf -d`
4444+ # on the compiler binary (`exePathForLibraryCheck`).
4545+ # * To skip library checking for an architecture,
4646+ # set `exePathForLibraryCheck = null`.
4747+ # * To skip file checking for a specific arch specific library,
4848+ # set `fileToCheckFor = null`.
4949+ ghcBinDists = {
5050+ # Binary distributions for the default libc (e.g. glibc, or libSystem on Darwin)
5151+ # nixpkgs uses for the respective system.
5252+ defaultLibc = {
5353+ i686-linux = {
5454+ variantSuffix = "";
5555+ src = {
5656+ url = "${downloadsUrl}/${version}/ghc-${version}-i386-deb9-linux.tar.xz";
5757+ sha256 = "fdeb9f8928fbe994064778a8e1e85bb1a58a6cd3dd7b724fcc2a1dcfda6cad47";
5858+ };
5959+ exePathForLibraryCheck = "ghc/stage2/build/tmp/ghc-stage2";
6060+ archSpecificLibraries = [
6161+ {
6262+ nixPackage = gmp;
6363+ fileToCheckFor = null;
6464+ }
6565+ # The i686-linux bindist provided by GHC HQ is currently built on Debian 9,
6666+ # which link it against `libtinfo.so.5` (ncurses 5).
6767+ # Other bindists are linked `libtinfo.so.6` (ncurses 6).
6868+ {
6969+ nixPackage = ncurses5;
7070+ fileToCheckFor = "libtinfo.so.5";
7171+ }
7272+ ];
7373+ };
7474+ x86_64-linux = {
7575+ variantSuffix = "";
7676+ src = {
7777+ url = "${downloadsUrl}/${version}/ghc-${version}-x86_64-deb10-linux.tar.xz";
7878+ sha256 = "5d0b9414b10cfb918453bcd01c5ea7a1824fe95948b08498d6780f20ba247afc";
7979+ };
8080+ exePathForLibraryCheck = "ghc/stage2/build/tmp/ghc-stage2";
8181+ archSpecificLibraries = [
8282+ {
8383+ nixPackage = gmp;
8484+ fileToCheckFor = null;
8585+ }
8686+ {
8787+ nixPackage = ncurses6;
8888+ fileToCheckFor = "libtinfo.so.6";
8989+ }
9090+ {
9191+ nixPackage = numactl;
9292+ fileToCheckFor = null;
9393+ }
9494+ ];
9595+ };
9696+ aarch64-linux = {
9797+ variantSuffix = "";
9898+ src = {
9999+ url = "${downloadsUrl}/${version}/ghc-${version}-aarch64-deb10-linux.tar.xz";
100100+ sha256 = "cb016344c70a872738a24af60bd15d3b18749087b9905c1b3f1b1549dc01f46d";
101101+ };
102102+ exePathForLibraryCheck = "ghc/stage2/build/tmp/ghc-stage2";
103103+ archSpecificLibraries = [
104104+ {
105105+ nixPackage = gmp;
106106+ fileToCheckFor = null;
107107+ }
108108+ {
109109+ nixPackage = ncurses6;
110110+ fileToCheckFor = "libtinfo.so.6";
111111+ }
112112+ {
113113+ nixPackage = numactl;
114114+ fileToCheckFor = null;
115115+ }
116116+ ];
117117+ };
118118+ x86_64-darwin = {
119119+ variantSuffix = "";
120120+ src = {
121121+ url = "${downloadsUrl}/${version}/ghc-${version}-x86_64-apple-darwin.tar.xz";
122122+ sha256 = "e1fe990eb987f5c4b03e0396f9c228a10da71769c8a2bc8fadbc1d3b10a0f53a";
123123+ };
124124+ exePathForLibraryCheck = null; # we don't have a library check for darwin yet
125125+ archSpecificLibraries = [
126126+ {
127127+ nixPackage = gmp;
128128+ fileToCheckFor = null;
129129+ }
130130+ {
131131+ nixPackage = ncurses6;
132132+ fileToCheckFor = null;
133133+ }
134134+ {
135135+ nixPackage = libiconv;
136136+ fileToCheckFor = null;
137137+ }
138138+ ];
139139+ };
140140+ aarch64-darwin = {
141141+ variantSuffix = "";
142142+ src = {
143143+ url = "${downloadsUrl}/${version}/ghc-${version}-aarch64-apple-darwin.tar.xz";
144144+ sha256 = "b1fcab17fe48326d2ff302d70c12bc4cf4d570dfbbce68ab57c719cfec882b05";
145145+ };
146146+ exePathForLibraryCheck = null; # we don't have a library check for darwin yet
147147+ archSpecificLibraries = [
148148+ {
149149+ nixPackage = gmp;
150150+ fileToCheckFor = null;
151151+ }
152152+ {
153153+ nixPackage = ncurses6;
154154+ fileToCheckFor = null;
155155+ }
156156+ {
157157+ nixPackage = libiconv;
158158+ fileToCheckFor = null;
159159+ }
160160+ ];
161161+ };
162162+ };
163163+ # Binary distributions for the musl libc for the respective system.
164164+ musl = {
165165+ x86_64-linux = {
166166+ variantSuffix = "-musl";
167167+ src = {
168168+ url = "${downloadsUrl}/${version}/ghc-${version}-x86_64-alpine3.12-linux-gmp.tar.xz";
169169+ sha256 = "5bb1e7192c2b9fcff68930dbdc65509d345138e9a43c5d447056a68decc05ec8";
170170+ };
171171+ exePathForLibraryCheck = "bin/ghc";
172172+ archSpecificLibraries = [
173173+ {
174174+ nixPackage = gmp;
175175+ fileToCheckFor = null;
176176+ }
177177+ {
178178+ nixPackage = ncurses6;
179179+ fileToCheckFor = "libncursesw.so.6";
180180+ }
181181+ ];
182182+ };
183183+ };
184184+ };
185185+186186+ distSetName = if stdenv.hostPlatform.isMusl then "musl" else "defaultLibc";
187187+188188+ binDistUsed =
189189+ ghcBinDists.${distSetName}.${stdenv.hostPlatform.system}
190190+ or (throw "cannot bootstrap GHC on this platform ('${stdenv.hostPlatform.system}' with libc '${distSetName}')");
191191+192192+ gmpUsed =
193193+ (builtins.head (
194194+ builtins.filter (
195195+ drv: lib.hasPrefix "gmp" (drv.nixPackage.name or "")
196196+ ) binDistUsed.archSpecificLibraries
197197+ )).nixPackage;
198198+199199+ useLLVM = !(import ./common-have-ncg.nix { inherit lib stdenv version; });
200200+201201+ libPath = lib.makeLibraryPath (
202202+ # Add arch-specific libraries.
203203+ map ({ nixPackage, ... }: nixPackage) binDistUsed.archSpecificLibraries
204204+ );
205205+206206+ libEnvVar = lib.optionalString stdenv.hostPlatform.isDarwin "DY" + "LD_LIBRARY_PATH";
207207+208208+ runtimeDeps =
209209+ [
210210+ targetPackages.stdenv.cc
211211+ targetPackages.stdenv.cc.bintools
212212+ coreutils # for cat
213213+ ]
214214+ ++ lib.optionals useLLVM [
215215+ (lib.getBin llvmPackages.llvm)
216216+ ]
217217+ # On darwin, we need unwrapped bintools as well (for otool)
218218+ ++ lib.optionals (stdenv.targetPlatform.linker == "cctools") [
219219+ targetPackages.stdenv.cc.bintools.bintools
220220+ ];
221221+222222+in
223223+224224+stdenv.mkDerivation {
225225+ inherit version;
226226+ pname = "ghc-binary${binDistUsed.variantSuffix}";
227227+228228+ src = fetchurl binDistUsed.src;
229229+230230+ nativeBuildInputs = [ perl ];
231231+232232+ # Set LD_LIBRARY_PATH or equivalent so that the programs running as part
233233+ # of the bindist installer can find the libraries they expect.
234234+ # Cannot patchelf beforehand due to relative RPATHs that anticipate
235235+ # the final install location.
236236+ ${libEnvVar} = libPath;
237237+238238+ postUnpack =
239239+ # Verify our assumptions of which `libtinfo.so` (ncurses) version is used,
240240+ # so that we know when ghc bindists upgrade that and we need to update the
241241+ # version used in `libPath`.
242242+ lib.optionalString (binDistUsed.exePathForLibraryCheck != null)
243243+ # Note the `*` glob because some GHCs have a suffix when unpacked, e.g.
244244+ # the musl bindist has dir `ghc-VERSION-x86_64-unknown-linux/`.
245245+ # As a result, don't shell-quote this glob when splicing the string.
246246+ (
247247+ let
248248+ buildExeGlob = ''ghc-${version}*/"${binDistUsed.exePathForLibraryCheck}"'';
249249+ in
250250+ lib.concatStringsSep "\n" [
251251+ (''
252252+ shopt -u nullglob
253253+ echo "Checking that ghc binary exists in bindist at ${buildExeGlob}"
254254+ if ! test -e ${buildExeGlob}; then
255255+ echo >&2 "GHC binary ${binDistUsed.exePathForLibraryCheck} could not be found in the bindist build directory (at ${buildExeGlob}) for arch ${stdenv.hostPlatform.system}, please check that ghcBinDists correctly reflect the bindist dependencies!"; exit 1;
256256+ fi
257257+ '')
258258+ (lib.concatMapStringsSep "\n" (
259259+ { fileToCheckFor, nixPackage }:
260260+ lib.optionalString (fileToCheckFor != null) ''
261261+ echo "Checking bindist for ${fileToCheckFor} to ensure that is still used"
262262+ if ! readelf -d ${buildExeGlob} | grep "${fileToCheckFor}"; then
263263+ echo >&2 "File ${fileToCheckFor} could not be found in ${binDistUsed.exePathForLibraryCheck} for arch ${stdenv.hostPlatform.system}, please check that ghcBinDists correctly reflect the bindist dependencies!"; exit 1;
264264+ fi
265265+266266+ echo "Checking that the nix package ${nixPackage} contains ${fileToCheckFor}"
267267+ if ! test -e "${lib.getLib nixPackage}/lib/${fileToCheckFor}"; then
268268+ echo >&2 "Nix package ${nixPackage} did not contain ${fileToCheckFor} for arch ${stdenv.hostPlatform.system}, please check that ghcBinDists correctly reflect the bindist dependencies!"; exit 1;
269269+ fi
270270+ ''
271271+ ) binDistUsed.archSpecificLibraries)
272272+ ]
273273+ )
274274+ # GHC has dtrace probes, which causes ld to try to open /usr/lib/libdtrace.dylib
275275+ # during linking
276276+ + lib.optionalString stdenv.hostPlatform.isDarwin ''
277277+ export NIX_LDFLAGS+=" -no_dtrace_dof"
278278+ # not enough room in the object files for the full path to libiconv :(
279279+ for exe in $(find . -type f -executable); do
280280+ isScript $exe && continue
281281+ ln -fs ${libiconv}/lib/libiconv.dylib $(dirname $exe)/libiconv.dylib
282282+ install_name_tool -change /usr/lib/libiconv.2.dylib @executable_path/libiconv.dylib -change /usr/local/lib/gcc/6/libgcc_s.1.dylib ${gcc.cc.lib}/lib/libgcc_s.1.dylib $exe
283283+ done
284284+ ''
285285+ +
286286+287287+ # Some scripts used during the build need to have their shebangs patched
288288+ ''
289289+ patchShebangs ghc-${version}/utils/
290290+ patchShebangs ghc-${version}/configure
291291+ test -d ghc-${version}/inplace/bin && \
292292+ patchShebangs ghc-${version}/inplace/bin
293293+ ''
294294+ +
295295+ # We have to patch the GMP paths for the integer-gmp package.
296296+ ''
297297+ find . -name ghc-bignum.buildinfo \
298298+ -exec sed -i "s@extra-lib-dirs: @extra-lib-dirs: ${lib.getLib gmpUsed}/lib@" {} \;
299299+300300+ # we need to modify the package db directly for hadrian bindists
301301+ find . -name 'ghc-bignum*.conf' \
302302+ -exec sed -e '/^[a-z-]*library-dirs/a \ ${lib.getLib gmpUsed}/lib' -i {} \;
303303+ ''
304304+ + lib.optionalString stdenv.hostPlatform.isDarwin ''
305305+ # we need to modify the package db directly for hadrian bindists
306306+ # (all darwin bindists are hadrian-based for 9.2.2)
307307+ find . -name 'base*.conf' \
308308+ -exec sed -e '/^[a-z-]*library-dirs/a \ ${lib.getLib libiconv}/lib' -i {} \;
309309+310310+ # To link RTS in the end we also need libffi now
311311+ find . -name 'rts*.conf' \
312312+ -exec sed -e '/^[a-z-]*library-dirs/a \ ${lib.getLib libffi}/lib' \
313313+ -e 's@/Library/Developer/.*/usr/include/ffi@${lib.getDev libffi}/include@' \
314314+ -i {} \;
315315+ ''
316316+ +
317317+ # Some platforms do HAVE_NUMA so -lnuma requires it in library-dirs in rts/package.conf.in
318318+ # FFI_LIB_DIR is a good indication of places it must be needed.
319319+ lib.optionalString
320320+ (
321321+ lib.meta.availableOn stdenv.hostPlatform numactl
322322+ && builtins.any ({ nixPackage, ... }: nixPackage == numactl) binDistUsed.archSpecificLibraries
323323+ )
324324+ ''
325325+ find . -name package.conf.in \
326326+ -exec sed -i "s@FFI_LIB_DIR@FFI_LIB_DIR ${numactl.out}/lib@g" {} \;
327327+ ''
328328+ +
329329+ # Rename needed libraries and binaries, fix interpreter
330330+ lib.optionalString stdenv.hostPlatform.isLinux ''
331331+ find . -type f -executable -exec patchelf \
332332+ --interpreter ${stdenv.cc.bintools.dynamicLinker} {} \;
333333+ '';
334334+335335+ # fix for `configure: error: Your linker is affected by binutils #16177`
336336+ preConfigure = lib.optionalString stdenv.targetPlatform.isAarch32 "LD=ld.gold";
337337+338338+ configurePlatforms = [ ];
339339+ configureFlags =
340340+ [
341341+ "--with-gmp-includes=${lib.getDev gmpUsed}/include"
342342+ # Note `--with-gmp-libraries` does nothing for GHC bindists:
343343+ # https://gitlab.haskell.org/ghc/ghc/-/merge_requests/6124
344344+ ]
345345+ ++ lib.optional stdenv.hostPlatform.isDarwin "--with-gcc=${./gcc-clang-wrapper.sh}"
346346+ # From: https://github.com/NixOS/nixpkgs/pull/43369/commits
347347+ ++ lib.optional stdenv.hostPlatform.isMusl "--disable-ld-override";
348348+349349+ # No building is necessary, but calling make without flags ironically
350350+ # calls install-strip ...
351351+ dontBuild = true;
352352+353353+ # GHC tries to remove xattrs when installing to work around Gatekeeper
354354+ # (see https://gitlab.haskell.org/ghc/ghc/-/issues/17418). This step normally
355355+ # succeeds in nixpkgs because xattrs are not allowed in the store, but it
356356+ # can fail when a file has the `com.apple.provenance` xattr, and it can’t be
357357+ # modified (such as target of the symlink to `libiconv.dylib`).
358358+ # The `com.apple.provenance` xattr is a new feature of macOS as of macOS 13.
359359+ # See: https://eclecticlight.co/2023/03/13/ventura-has-changed-app-quarantine-with-a-new-xattr/
360360+ makeFlags = lib.optionals stdenv.buildPlatform.isDarwin [ "XATTR=/does-not-exist" ];
361361+362362+ # Patch scripts to include runtime dependencies in $PATH.
363363+ postInstall = ''
364364+ for i in "$out/bin/"*; do
365365+ test ! -h "$i" || continue
366366+ isScript "$i" || continue
367367+ sed -i -e '2i export PATH="${lib.makeBinPath runtimeDeps}:$PATH"' "$i"
368368+ done
369369+ '';
370370+371371+ # Apparently necessary for the ghc Alpine (musl) bindist:
372372+ # When we strip, and then run the
373373+ # patchelf --set-rpath "${libPath}:$(patchelf --print-rpath $p)" $p
374374+ # below, running ghc (e.g. during `installCheckPhase)` gives some apparently
375375+ # corrupted rpath or whatever makes the loader work on nonsensical strings:
376376+ # running install tests
377377+ # Error relocating /nix/store/...-ghc-8.10.2-binary/lib/ghc-8.10.5/bin/ghc: : symbol not found
378378+ # Error relocating /nix/store/...-ghc-8.10.2-binary/lib/ghc-8.10.5/bin/ghc: ir6zf6c9f86pfx8sr30n2vjy-ghc-8.10.2-binary/lib/ghc-8.10.5/bin/../lib/x86_64-linux-ghc-8.10.5/libHSexceptions-0.10.4-ghc8.10.5.so: symbol not found
379379+ # Error relocating /nix/store/...-ghc-8.10.2-binary/lib/ghc-8.10.5/bin/ghc: y/lib/ghc-8.10.5/bin/../lib/x86_64-linux-ghc-8.10.5/libHStemplate-haskell-2.16.0.0-ghc8.10.5.so: symbol not found
380380+ # Error relocating /nix/store/...-ghc-8.10.2-binary/lib/ghc-8.10.5/bin/ghc: 8.10.5/libHStemplate-haskell-2.16.0.0-ghc8.10.5.so: symbol not found
381381+ # Error relocating /nix/store/...-ghc-8.10.2-binary/lib/ghc-8.10.5/bin/ghc: �: symbol not found
382382+ # Error relocating /nix/store/...-ghc-8.10.2-binary/lib/ghc-8.10.5/bin/ghc: �?: symbol not found
383383+ # Error relocating /nix/store/...-ghc-8.10.2-binary/lib/ghc-8.10.5/bin/ghc: 64-linux-ghc-8.10.5/libHSexceptions-0.10.4-ghc8.10.5.so: symbol not found
384384+ # This is extremely bogus and should be investigated.
385385+ dontStrip = if stdenv.hostPlatform.isMusl then true else false; # `if` for explicitness
386386+387387+ # On Linux, use patchelf to modify the executables so that they can
388388+ # find editline/gmp.
389389+ postFixup =
390390+ lib.optionalString (stdenv.hostPlatform.isLinux && !(binDistUsed.isStatic or false)) (
391391+ if stdenv.hostPlatform.isAarch64 then
392392+ # Keep rpath as small as possible on aarch64 for patchelf#244. All Elfs
393393+ # are 2 directories deep from $out/lib, so pooling symlinks there makes
394394+ # a short rpath.
395395+ ''
396396+ (cd $out/lib; ln -s ${ncurses6.out}/lib/libtinfo.so.6)
397397+ (cd $out/lib; ln -s ${lib.getLib gmpUsed}/lib/libgmp.so.10)
398398+ (cd $out/lib; ln -s ${numactl.out}/lib/libnuma.so.1)
399399+ for p in $(find "$out/lib" -type f -name "*\.so*"); do
400400+ (cd $out/lib; ln -s $p)
401401+ done
402402+403403+ for p in $(find "$out/lib" -type f -executable); do
404404+ if isELF "$p"; then
405405+ echo "Patchelfing $p"
406406+ patchelf --set-rpath "\$ORIGIN:\$ORIGIN/../.." $p
407407+ fi
408408+ done
409409+ ''
410410+ else
411411+ ''
412412+ for p in $(find "$out" -type f -executable); do
413413+ if isELF "$p"; then
414414+ echo "Patchelfing $p"
415415+ patchelf --set-rpath "${libPath}:$(patchelf --print-rpath $p)" $p
416416+ fi
417417+ done
418418+ ''
419419+ )
420420+ + lib.optionalString stdenv.hostPlatform.isDarwin ''
421421+ # not enough room in the object files for the full path to libiconv :(
422422+ for exe in $(find "$out" -type f -executable); do
423423+ isScript $exe && continue
424424+ ln -fs ${libiconv}/lib/libiconv.dylib $(dirname $exe)/libiconv.dylib
425425+ install_name_tool -change /usr/lib/libiconv.2.dylib @executable_path/libiconv.dylib -change /usr/local/lib/gcc/6/libgcc_s.1.dylib ${gcc.cc.lib}/lib/libgcc_s.1.dylib $exe
426426+ done
427427+428428+ for file in $(find "$out" -name setup-config); do
429429+ substituteInPlace $file --replace /usr/bin/ranlib "$(type -P ranlib)"
430430+ done
431431+ ''
432432+ + lib.optionalString minimal ''
433433+ # Remove profiling files
434434+ find $out -type f -name '*.p_o' -delete
435435+ find $out -type f -name '*.p_hi' -delete
436436+ find $out -type f -name '*_p.a' -delete
437437+ # `-f` because e.g. musl bindist does not have this file.
438438+ rm -f $out/lib/ghc-*/bin/ghc-iserv-prof
439439+ # Hydra will redistribute this derivation, so we have to keep the docs for
440440+ # legal reasons (retaining the legal notices etc)
441441+ # As a last resort we could unpack the docs separately and symlink them in.
442442+ # They're in $out/share/{doc,man}.
443443+ ''
444444+ # Recache package db which needs to happen for Hadrian bindists
445445+ # where we modify the package db before installing
446446+ + ''
447447+ shopt -s nullglob
448448+ package_db=("$out"/lib/ghc-*/lib/package.conf.d "$out"/lib/ghc-*/package.conf.d)
449449+ "$out/bin/ghc-pkg" --package-db="$package_db" recache
450450+ '';
451451+452452+ # GHC cannot currently produce outputs that are ready for `-pie` linking.
453453+ # Thus, disable `pie` hardening, otherwise `recompile with -fPIE` errors appear.
454454+ # See:
455455+ # * https://github.com/NixOS/nixpkgs/issues/129247
456456+ # * https://gitlab.haskell.org/ghc/ghc/-/issues/19580
457457+ hardeningDisable = [ "pie" ];
458458+459459+ doInstallCheck = true;
460460+ installCheckPhase = ''
461461+ # Sanity check, can ghc create executables?
462462+ cd $TMP
463463+ mkdir test-ghc; cd test-ghc
464464+ cat > main.hs << EOF
465465+ {-# LANGUAGE TemplateHaskell #-}
466466+ module Main where
467467+ main = putStrLn \$([|"yes"|])
468468+ EOF
469469+ env -i $out/bin/ghc --make main.hs || exit 1
470470+ echo compilation ok
471471+ [ $(./main) == "yes" ]
472472+ '';
473473+474474+ passthru =
475475+ {
476476+ targetPrefix = "";
477477+ enableShared = true;
478478+479479+ inherit llvmPackages;
480480+481481+ # Our Cabal compiler name
482482+ haskellCompilerName = "ghc-${version}";
483483+ }
484484+ # We duplicate binDistUsed here since we have a sensible default even if no bindist is available,
485485+ # this makes sure that getting the `meta` attribute doesn't throw even on unsupported platforms.
486486+ // lib.optionalAttrs (ghcBinDists.${distSetName}.${stdenv.hostPlatform.system}.isHadrian or false) {
487487+ # Normal GHC derivations expose the hadrian derivation used to build them
488488+ # here. In the case of bindists we just make sure that the attribute exists,
489489+ # as it is used for checking if a GHC derivation has been built with hadrian.
490490+ # The isHadrian mechanism will become obsolete with GHCs that use hadrian
491491+ # exclusively, i.e. 9.6 (and 9.4?).
492492+ hadrian = null;
493493+ };
494494+495495+ meta = rec {
496496+ homepage = "http://haskell.org/ghc";
497497+ description = "Glasgow Haskell Compiler";
498498+ license = lib.licenses.bsd3;
499499+ # HACK: since we can't encode the libc / abi in platforms, we need
500500+ # to make the platform list dependent on the evaluation platform
501501+ # in order to avoid eval errors with musl which supports less
502502+ # platforms than the default libcs (i. e. glibc / libSystem).
503503+ # This is done for the benefit of Hydra, so `packagePlatforms`
504504+ # won't return any platforms that would cause an evaluation
505505+ # failure for `pkgsMusl.haskell.compiler.ghc922Binary`, as
506506+ # long as the evaluator runs on a platform that supports
507507+ # `pkgsMusl`.
508508+ platforms = builtins.attrNames ghcBinDists.${distSetName};
509509+ teams = [ lib.teams.haskell ];
510510+ };
511511+}
+10-5
pkgs/development/compilers/ghc/9.2.4-binary.nix
···311311 -i {} \;
312312 ''
313313 +
314314- # aarch64 does HAVE_NUMA so -lnuma requires it in library-dirs in rts/package.conf.in
314314+ # Some platforms do HAVE_NUMA so -lnuma requires it in library-dirs in rts/package.conf.in
315315 # FFI_LIB_DIR is a good indication of places it must be needed.
316316- lib.optionalString (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isAarch64) ''
317317- find . -name package.conf.in \
318318- -exec sed -i "s@FFI_LIB_DIR@FFI_LIB_DIR ${numactl.out}/lib@g" {} \;
319319- ''
316316+ lib.optionalString
317317+ (
318318+ lib.meta.availableOn stdenv.hostPlatform numactl
319319+ && builtins.any ({ nixPackage, ... }: nixPackage == numactl) binDistUsed.archSpecificLibraries
320320+ )
321321+ ''
322322+ find . -name package.conf.in \
323323+ -exec sed -i "s@FFI_LIB_DIR@FFI_LIB_DIR ${numactl.out}/lib@g" {} \;
324324+ ''
320325 +
321326 # Rename needed libraries and binaries, fix interpreter
322327 lib.optionalString stdenv.hostPlatform.isLinux ''
+10-5
pkgs/development/compilers/ghc/9.6.3-binary.nix
···297297 -i {} \;
298298 ''
299299 +
300300- # aarch64 does HAVE_NUMA so -lnuma requires it in library-dirs in rts/package.conf.in
300300+ # Some platforms do HAVE_NUMA so -lnuma requires it in library-dirs in rts/package.conf.in
301301 # FFI_LIB_DIR is a good indication of places it must be needed.
302302- lib.optionalString (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isAarch64) ''
303303- find . -name package.conf.in \
304304- -exec sed -i "s@FFI_LIB_DIR@FFI_LIB_DIR ${numactl.out}/lib@g" {} \;
305305- ''
302302+ lib.optionalString
303303+ (
304304+ lib.meta.availableOn stdenv.hostPlatform numactl
305305+ && builtins.any ({ nixPackage, ... }: nixPackage == numactl) binDistUsed.archSpecificLibraries
306306+ )
307307+ ''
308308+ find . -name package.conf.in \
309309+ -exec sed -i "s@FFI_LIB_DIR@FFI_LIB_DIR ${numactl.out}/lib@g" {} \;
310310+ ''
306311 +
307312 # Rename needed libraries and binaries, fix interpreter
308313 lib.optionalString stdenv.hostPlatform.isLinux ''
+10-5
pkgs/development/compilers/ghc/9.8.4-binary.nix
···311311 -i {} \;
312312 ''
313313 +
314314- # aarch64 does HAVE_NUMA so -lnuma requires it in library-dirs in rts/package.conf.in
314314+ # Some platforms do HAVE_NUMA so -lnuma requires it in library-dirs in rts/package.conf.in
315315 # FFI_LIB_DIR is a good indication of places it must be needed.
316316- lib.optionalString (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isAarch64) ''
317317- find . -name package.conf.in \
318318- -exec sed -i "s@FFI_LIB_DIR@FFI_LIB_DIR ${numactl.out}/lib@g" {} \;
319319- ''
316316+ lib.optionalString
317317+ (
318318+ lib.meta.availableOn stdenv.hostPlatform numactl
319319+ && builtins.any ({ nixPackage, ... }: nixPackage == numactl) binDistUsed.archSpecificLibraries
320320+ )
321321+ ''
322322+ find . -name package.conf.in \
323323+ -exec sed -i "s@FFI_LIB_DIR@FFI_LIB_DIR ${numactl.out}/lib@g" {} \;
324324+ ''
320325 +
321326 # Rename needed libraries and binaries, fix interpreter
322327 lib.optionalString stdenv.hostPlatform.isLinux ''
···365365 ./Cabal-3.2-3.4-paths-fix-cycle-aarch64-darwin.patch
366366 )
367367 ]
368368+368369 # Fixes stack overrun in rts which crashes an process whenever
369370 # freeHaskellFunPtr is called with nixpkgs' hardening flags.
370371 # https://gitlab.haskell.org/ghc/ghc/-/issues/25485
···376377 url = "https://gitlab.haskell.org/ghc/ghc/-/commit/39bb6e583d64738db51441a556d499aa93a4fc4a.patch";
377378 sha256 = "0w5fx413z924bi2irsy1l4xapxxhrq158b5gn6jzrbsmhvmpirs0";
378379 })
379379- ];
380380+ ]
381381+382382+ # Before GHC 9.6, GHC, when used to compile C sources (i.e. to drive the CC), would first
383383+ # invoke the C compiler to generate assembly and later call the assembler on the result of
384384+ # that operation. Unfortunately, that is brittle in a lot of cases, e.g. when using mismatched
385385+ # CC / assembler (https://gitlab.haskell.org/ghc/ghc/-/merge_requests/12005). This issue
386386+ # does not affect us. However, LLVM 18 introduced a check in clang that makes sure no
387387+ # non private labels occur between .cfi_startproc and .cfi_endproc which causes the
388388+ # assembly that the same version (!) of clang generates from rts/StgCRun.c to be rejected.
389389+ # This causes GHC to fail compilation on mach-o platforms ever since we upgraded to
390390+ # LLVM 19.
391391+ #
392392+ # clang compiles the same file without issues whithout the roundtrip via assembly. Thus,
393393+ # the solution is to backport those changes from GHC 9.6 that skip the intermediate
394394+ # assembly step.
395395+ #
396396+ # https://gitlab.haskell.org/ghc/ghc/-/issues/25608#note_622589
397397+ # https://gitlab.haskell.org/ghc/ghc/-/merge_requests/6877
398398+ ++ (
399399+ if lib.versionAtLeast version "9.4" then
400400+ [
401401+ # Need to use this patch so the next one applies, passes file location info to the cc phase
402402+ (fetchpatch {
403403+ name = "ghc-add-location-to-cc-phase.patch";
404404+ url = "https://gitlab.haskell.org/ghc/ghc/-/commit/4a7256a75af2fc0318bef771a06949ffb3939d5a.patch";
405405+ hash = "sha256-DnTI+i1zMebeWvw75D59vMaEEBb2Nr9HusxTyhmdy2M=";
406406+ })
407407+ # Makes Cc phase directly generate object files instead of assembly
408408+ (fetchpatch {
409409+ name = "ghc-cc-directly-emit-object.patch";
410410+ url = "https://gitlab.haskell.org/ghc/ghc/-/commit/96811ba491495b601ec7d6a32bef8563b0292109.patch";
411411+ hash = "sha256-G8u7/MK/tGOEN8Wxccxj/YIOP7mL2G9Co1WKdHXOo6I=";
412412+ })
413413+ ]
414414+ else
415415+ [
416416+ # TODO(@sternenseemann): backport changes to GHC < 9.4 if possible
417417+ ]
418418+ );
380419381420 postPatch = "patchShebangs .";
382421
···6464 - adaptive-containers # failure in job https://hydra.nixos.org/build/233243181 at 2023-09-02
6565 - adaptive-tuple # failure in job https://hydra.nixos.org/build/233244881 at 2023-09-02
6666 - adb # failure in job https://hydra.nixos.org/build/233193888 at 2023-09-02
6767- - adblock2privoxy # failure in job https://hydra.nixos.org/build/295091236 at 2025-04-22
6867 - addy # failure in job https://hydra.nixos.org/build/233240594 at 2023-09-02
6968 - adhoc-fixtures-hspec # failure in job https://hydra.nixos.org/build/252725981 at 2024-03-16
7069 - adjunction # failure in job https://hydra.nixos.org/build/233237774 at 2023-09-02
···160159 - amazonka-iam-policy # failure in job https://hydra.nixos.org/build/233233098 at 2023-09-02
161160 - amazonka-mtl # failure in job https://hydra.nixos.org/build/295091544 at 2025-04-22
162161 - amazonka-s3-encryption # failure in job https://hydra.nixos.org/build/295091601 at 2025-04-22
163163- - amazonka-s3-streaming # failure in job https://hydra.nixos.org/build/295091587 at 2025-04-22
164162 - AMI # failure in job https://hydra.nixos.org/build/233232505 at 2023-09-02
165163 - amqp-conduit # failure in job https://hydra.nixos.org/build/233228080 at 2023-09-02
166164 - amqp-streamly # failure in job https://hydra.nixos.org/build/295091669 at 2025-04-22
167165 - amqp-worker # failure in job https://hydra.nixos.org/build/236675859 at 2023-10-04
168166 - amrun # failure in job https://hydra.nixos.org/build/295091655 at 2025-04-22
169169- - anagrep # failure in job https://hydra.nixos.org/build/295091652 at 2025-04-22
170167 - analyze # failure in job https://hydra.nixos.org/build/233251441 at 2023-09-02
171168 - anansi # failure in job https://hydra.nixos.org/build/273451545 at 2024-10-01
172169 - anansi-pandoc # failure in job https://hydra.nixos.org/build/233252389 at 2023-09-02
···198195 - antisplice # failure in job https://hydra.nixos.org/build/233238144 at 2023-09-02
199196 - antlr-haskell # failure in job https://hydra.nixos.org/build/233208196 at 2023-09-02
200197 - anydbm # failure in job https://hydra.nixos.org/build/233195447 at 2023-09-02
201201- - aoc # failure in job https://hydra.nixos.org/build/295091701 at 2025-04-22
202198 - Aoide # failure in job https://hydra.nixos.org/build/233239286 at 2023-09-02
203199 - aop-prelude # failure in job https://hydra.nixos.org/build/295091671 at 2025-04-22
204200 - aosd # failure in job https://hydra.nixos.org/build/233207331 at 2023-09-02
···436432 - binary-derive # failure in job https://hydra.nixos.org/build/233201950 at 2023-09-02
437433 - binary-ext # failure in job https://hydra.nixos.org/build/233247463 at 2023-09-02
438434 - binary-indexed-tree # failure in job https://hydra.nixos.org/build/233204069 at 2023-09-02
439439- - binary-parsers # failure in job https://hydra.nixos.org/build/233194579 at 2023-09-02
440435 - binary-protocol # failure in job https://hydra.nixos.org/build/233206098 at 2023-09-02
441436 - binary-strict # failure in job https://hydra.nixos.org/build/233231473 at 2023-09-02
442437 - binary-tree # failure in job https://hydra.nixos.org/build/233211047 at 2023-09-02
···529524 - blubber-server # failure in job https://hydra.nixos.org/build/233199530 at 2023-09-02
530525 - bludigon # failure in job https://hydra.nixos.org/build/233248190 at 2023-09-02
531526 - Blueprint # failure in job https://hydra.nixos.org/build/233252987 at 2023-09-02
532532- - bluesky-tools # failure in job https://hydra.nixos.org/build/295092042 at 2025-04-22
533527 - bluetileutils # failure in job https://hydra.nixos.org/build/233197334 at 2023-09-02
534528 - blunk-hask-tests # failure in job https://hydra.nixos.org/build/233240288 at 2023-09-02
535529 - bogocopy # failure in job https://hydra.nixos.org/build/233232322 at 2023-09-02
···654648 - cabal-install-bundle # failure in job https://hydra.nixos.org/build/233194629 at 2023-09-02
655649 - cabal-install-ghc72 # failure in job https://hydra.nixos.org/build/233246160 at 2023-09-02
656650 - cabal-install-ghc74 # failure in job https://hydra.nixos.org/build/233226625 at 2023-09-02
657657- - cabal-lenses # failure in job https://hydra.nixos.org/build/233247565 at 2023-09-02
658651 - cabal-meta # failure in job https://hydra.nixos.org/build/233194466 at 2023-09-02
659652 - cabal-mon # failure in job https://hydra.nixos.org/build/233217320 at 2023-09-02
660653 - cabal-nirvana # failure in job https://hydra.nixos.org/build/233222083 at 2023-09-02
···12591252 - definitive-base # failure in job https://hydra.nixos.org/build/233255489 at 2023-09-02
12601253 - deiko-config # failure in job https://hydra.nixos.org/build/233210895 at 2023-09-02
12611254 - deka # failure in job https://hydra.nixos.org/build/233206540 at 2023-09-02
12621262- - delivery-status-notification # failure in job https://hydra.nixos.org/build/295092814 at 2025-04-22
12631255 - Delta-Lambda # failure in job https://hydra.nixos.org/build/233239406 at 2023-09-02
12561256+ - delta-store # failure in job https://hydra.nixos.org/build/299186683 at 2025-06-23
12641257 - delude # failure in job https://hydra.nixos.org/build/233231224 at 2023-09-02
12651258 - demangler # failure in job https://hydra.nixos.org/build/295092777 at 2025-04-22
12661259 - demarcate # failure in job https://hydra.nixos.org/build/233194005 at 2023-09-02
···15821575 - enummapmap # failure in job https://hydra.nixos.org/build/233228525 at 2023-09-02
15831576 - enummaps # failure in job https://hydra.nixos.org/build/233251965 at 2023-09-02
15841577 - enummapset-th # failure in job https://hydra.nixos.org/build/233225322 at 2023-09-02
15851585- - env-extra # failure in job https://hydra.nixos.org/build/296519026 at 2025-05-14
15861578 - env-parser # failure in job https://hydra.nixos.org/build/233237933 at 2023-09-02
15871579 - envelope # failure in job https://hydra.nixos.org/build/233199309 at 2023-09-02
15881580 - envstatus # failure in job https://hydra.nixos.org/build/233257940 at 2023-09-02
···17221714 - FastxPipe # failure in job https://hydra.nixos.org/build/233232889 at 2023-09-02
17231715 - fathead-util # failure in job https://hydra.nixos.org/build/233255882 at 2023-09-02
17241716 - fay # failure in job https://hydra.nixos.org/build/233197122 at 2023-09-02
17251725- - fb # failure in job https://hydra.nixos.org/build/295093236 at 2025-04-22
17261717 - fb-persistent # failure in job https://hydra.nixos.org/build/233193999 at 2023-09-02
17271718 - fb-util # failure in job https://hydra.nixos.org/build/296519228 at 2025-05-14
17281719 - fbmessenger-api # failure in job https://hydra.nixos.org/build/233247641 at 2023-09-02
···18811872 - franchise # failure in job https://hydra.nixos.org/build/233256790 at 2023-09-02
18821873 - franz # failure in job https://hydra.nixos.org/build/252725109 at 2024-03-16
18831874 - fraxl # failure in job https://hydra.nixos.org/build/233219345 at 2023-09-02
18841884- - freckle-env # failure in job https://hydra.nixos.org/build/295093368 at 2025-04-22
18851885- - freckle-kafka # failure in job https://hydra.nixos.org/build/269673466 at 2024-08-19
18861875 - freddy # failure in job https://hydra.nixos.org/build/233208999 at 2023-09-02
18871876 - free-alacarte # failure in job https://hydra.nixos.org/build/275141793 at 2024-10-21
18881877 - free-applicative-t # failure in job https://hydra.nixos.org/build/252715728 at 2024-03-16
···18951884 - free-theorems-webui # failure in job https://hydra.nixos.org/build/233255034 at 2023-09-02
18961885 - free-v-bucks-generator-no-survey # failure in job https://hydra.nixos.org/build/233208419 at 2023-09-02
18971886 - free-v-bucks-generator-ps4-no-survey # failure in job https://hydra.nixos.org/build/233190747 at 2023-09-02
18871887+ - free-vector-spaces # failure in job https://hydra.nixos.org/build/299137660 at 2025-06-23
18981888 - freenect # failure in job https://hydra.nixos.org/build/233196105 at 2023-09-02
18991889 - freer-effects # failure in job https://hydra.nixos.org/build/233214270 at 2023-09-02
19001890 - freer-simple-catching # failure in job https://hydra.nixos.org/build/295122831 at 2025-04-22
···19151905 - frown # failure in job https://hydra.nixos.org/build/233208462 at 2023-09-02
19161906 - frp-arduino # failure in job https://hydra.nixos.org/build/233192216 at 2023-09-02
19171907 - frpnow # failure in job https://hydra.nixos.org/build/233236056 at 2023-09-02
19081908+ - fs-api # failure in job https://hydra.nixos.org/build/299137683 at 2025-06-23
19181909 - fs-events # failure in job https://hydra.nixos.org/build/233218231 at 2023-09-02
19191910 - fsh-csv # failure in job https://hydra.nixos.org/build/233220196 at 2023-09-02
19201911 - FSM # failure in job https://hydra.nixos.org/build/233247343 at 2023-09-02
···19791970 - gearhash # failure in job https://hydra.nixos.org/build/252728216 at 2024-03-16
19801971 - gelatin # failure in job https://hydra.nixos.org/build/233249394 at 2023-09-02
19811972 - gemcap # failure in job https://hydra.nixos.org/build/233202506 at 2023-09-02
19821982- - gemini-server # failure in job https://hydra.nixos.org/build/295093453 at 2025-04-22
19831973 - gemmula-altera # failure in job https://hydra.nixos.org/build/252721416 at 2024-03-16
19841974 - gemstone # failure in job https://hydra.nixos.org/build/233202246 at 2023-09-02
19851975 - gen-imports # failure in job https://hydra.nixos.org/build/233216588 at 2023-09-02
···20202010 - gentlemark # failure in job https://hydra.nixos.org/build/233202158 at 2023-09-02
20212011 - genvalidity-appendful # failure in job https://hydra.nixos.org/build/295093519 at 2025-04-22
20222012 - genvalidity-mergeful # failure in job https://hydra.nixos.org/build/295093508 at 2025-04-22
20132013+ - genvalidity-network-uri # failure in job https://hydra.nixos.org/build/299137822 at 2025-06-23
20232014 - geo-resolver # failure in job https://hydra.nixos.org/build/233206563 at 2023-09-02
20242015 - geo-uk # failure in job https://hydra.nixos.org/build/233221284 at 2023-09-02
20252016 - geocode-google # failure in job https://hydra.nixos.org/build/233191594 at 2023-09-02
···21212112 - gitlab-api # failure in job https://hydra.nixos.org/build/233256639 at 2023-09-02
21222113 - gitlib-cmdline # failure in job https://hydra.nixos.org/build/233230857 at 2023-09-02
21232114 - gitlib-utils # failure in job https://hydra.nixos.org/build/233190826 at 2023-09-02
21152115+ - gitrev-typed # failure in job https://hydra.nixos.org/build/299137966 at 2025-06-23
21242116 - gitter # failure in job https://hydra.nixos.org/build/233210040 at 2023-09-02
21252117 - glade # failure in job https://hydra.nixos.org/build/233229566 at 2023-09-02
21262118 - glambda # failure in job https://hydra.nixos.org/build/252728236 at 2024-03-16
···24212413 - haskell-formatter # failure in job https://hydra.nixos.org/build/233237167 at 2023-09-02
24222414 - haskell-generate # failure in job https://hydra.nixos.org/build/233197927 at 2023-09-02
24232415 - haskell-go-checkers # failure in job https://hydra.nixos.org/build/234459896 at 2023-09-13
24162416+ - haskell-halogen-core # failure in job https://hydra.nixos.org/build/299138362 at 2025-06-23
24242417 - haskell-holes-th # failure in job https://hydra.nixos.org/build/233238457 at 2023-09-02
24252418 - haskell-igraph # failure in job https://hydra.nixos.org/build/233201209 at 2023-09-02
24262419 - haskell-import-graph # failure in job https://hydra.nixos.org/build/233225328 at 2023-09-02
···24762469 - haskhol-core # failure in job https://hydra.nixos.org/build/233232550 at 2023-09-02
24772470 - haskmon # failure in job https://hydra.nixos.org/build/233228390 at 2023-09-02
24782471 - haskoin # failure in job https://hydra.nixos.org/build/233201668 at 2023-09-02
24722472+ - haskoin-store # failure in job https://hydra.nixos.org/build/299138382 at 2025-06-23
24792473 - haskoin-util # failure in job https://hydra.nixos.org/build/233222171 at 2023-09-02
24802474 - haskoin-wallet # failure in job https://hydra.nixos.org/build/233206922 at 2023-09-02
24812481- - haskore # failure in job https://hydra.nixos.org/build/233238668 at 2023-09-02
24752475+ - haskore-realtime # failure in job https://hydra.nixos.org/build/301391170 at 2025-07-01
24822476 - haskore-vintage # failure in job https://hydra.nixos.org/build/233230742 at 2023-09-02
24832477 - HaskRel # failure in job https://hydra.nixos.org/build/295090970 at 2025-04-22
24842478 - hasktorch-codegen # failure in job https://hydra.nixos.org/build/233232876 at 2023-09-02
···26132607 - hexpr # failure in job https://hydra.nixos.org/build/233198146 at 2023-09-02
26142608 - hexpress # failure in job https://hydra.nixos.org/build/233219047 at 2023-09-02
26152609 - hexquote # failure in job https://hydra.nixos.org/build/233230240 at 2023-09-02
26162616- - hexstring # failure in job https://hydra.nixos.org/build/233193009 at 2023-09-02
26172610 - hext # failure in job https://hydra.nixos.org/build/233221345 at 2023-09-02
26182611 - hextra # failure in job https://hydra.nixos.org/build/233238071 at 2023-09-02
26192612 - hextream # failure in job https://hydra.nixos.org/build/252712270 at 2024-03-16
···32423235 - io-capture # failure in job https://hydra.nixos.org/build/233196311 at 2023-09-02
32433236 - io-choice # failure in job https://hydra.nixos.org/build/233218388 at 2023-09-02
32443237 - io-reactive # failure in job https://hydra.nixos.org/build/233205095 at 2023-09-02
32453245- - io-sim # failure in job https://hydra.nixos.org/build/295094727 at 2025-04-22
32463238 - ioctl # failure in job https://hydra.nixos.org/build/233191634 at 2023-09-02
32473239 - IOR # failure in job https://hydra.nixos.org/build/233206346 at 2023-09-02
32483240 - iostring # failure in job https://hydra.nixos.org/build/233195232 at 2023-09-02
···34813473 - language-elm # failure in job https://hydra.nixos.org/build/233214012 at 2023-09-02
34823474 - language-fortran # failure in job https://hydra.nixos.org/build/233205480 at 2023-09-02
34833475 - language-gcl # failure in job https://hydra.nixos.org/build/233218957 at 2023-09-02
34843484- - language-gemini # failure in job https://hydra.nixos.org/build/295094938 at 2025-04-22
34853476 - language-go # failure in job https://hydra.nixos.org/build/233194866 at 2023-09-02
34863477 - language-guess # failure in job https://hydra.nixos.org/build/233257420 at 2023-09-02
34873478 - language-hcl # failure in job https://hydra.nixos.org/build/233212998 at 2023-09-02
···35723563 - lhslatex # failure in job https://hydra.nixos.org/build/233246375 at 2023-09-02
35733564 - LibClang # failure in job https://hydra.nixos.org/build/233194732 at 2023-09-02
35743565 - libexpect # failure in job https://hydra.nixos.org/build/233226545 at 2023-09-02
35753575- - libfuse3 # failure in job https://hydra.nixos.org/build/295095036 at 2025-04-22
35763566 - libGenI # failure in job https://hydra.nixos.org/build/233240857 at 2023-09-02
35773567 - libgit # failure in job https://hydra.nixos.org/build/252729283 at 2024-03-16
35783568 - libhbb # failure in job https://hydra.nixos.org/build/233232186 at 2023-09-02
···36633653 - LiterateMarkdown # failure in job https://hydra.nixos.org/build/233233229 at 2023-09-02
36643654 - little-earley # failure in job https://hydra.nixos.org/build/233197880 at 2023-09-02
36653655 - ll-picosat # failure in job https://hydra.nixos.org/build/233206257 at 2023-09-02
36563656+ - llama-cpp-hs # failure in job https://hydra.nixos.org/build/299139409 at 2025-06-23
36663657 - llsd # failure in job https://hydra.nixos.org/build/233241590 at 2023-09-02
36673658 - llvm-base # failure in job https://hydra.nixos.org/build/233244366 at 2023-09-02
36683659 - llvm-codegen # failure in job https://hydra.nixos.org/build/295095119 at 2025-04-22
···38883879 - midisurface # failure in job https://hydra.nixos.org/build/233224559 at 2023-09-02
38893880 - mig-swagger-ui # failure in job https://hydra.nixos.org/build/295095369 at 2025-04-22
38903881 - mighttpd2 # failure in job https://hydra.nixos.org/build/233213125 at 2023-09-02
38913891- - migrant-core # failure in job https://hydra.nixos.org/build/295095347 at 2025-04-22
38923892- - migrant-postgresql-simple # failure in job https://hydra.nixos.org/build/233191795 at 2023-09-02
38933882 - mikmod # failure in job https://hydra.nixos.org/build/233247364 at 2023-09-02
38943883 - mikrokosmos # failure in job https://hydra.nixos.org/build/233232143 at 2023-09-02
38953884 - miku # failure in job https://hydra.nixos.org/build/233212186 at 2023-09-02
···40884077 - my-package-testing # failure in job https://hydra.nixos.org/build/233201843 at 2023-09-02
40894078 - my-test-docs # failure in job https://hydra.nixos.org/build/233191840 at 2023-09-02
40904079 - myanimelist-export # failure in job https://hydra.nixos.org/build/233255510 at 2023-09-02
40914091- - myers-diff # failure in job https://hydra.nixos.org/build/295095575 at 2025-04-22
40924080 - myo # failure in job https://hydra.nixos.org/build/233251998 at 2023-09-02
40934081 - MyPrimes # failure in job https://hydra.nixos.org/build/233247934 at 2023-09-02
40944082 - mysnapsession # failure in job https://hydra.nixos.org/build/252732102 at 2024-03-16
···45984586 - phasechange # failure in job https://hydra.nixos.org/build/233254293 at 2023-09-02
45994587 - phaser # failure in job https://hydra.nixos.org/build/233250604 at 2023-09-02
46004588 - phash # We cannot build this package w/o the C library from <http://www.phash.org/>.
45894589+ - phino # failure in job https://hydra.nixos.org/build/299140266 at 2025-06-23
46014590 - phladiprelio-general-datatype # failure in job https://hydra.nixos.org/build/275139962 at 2024-10-21
46024591 - phoityne # failure in job https://hydra.nixos.org/build/233195238 at 2023-09-02
46034592 - phoityne-vscode # failure in job https://hydra.nixos.org/build/233190938 at 2023-09-02
···47454734 - pomohoro # failure in job https://hydra.nixos.org/build/233244601 at 2023-09-02
47464735 - ponder # failure in job https://hydra.nixos.org/build/233223646 at 2023-09-02
47474736 - pong-server # failure in job https://hydra.nixos.org/build/233194974 at 2023-09-02
47374737+ - pontarius-xmpp-extras # failure in job https://hydra.nixos.org/build/301059892 at 2025-07-01
47484738 - pontarius-xpmn # failure in job https://hydra.nixos.org/build/233217546 at 2023-09-02
47494739 - pool # failure in job https://hydra.nixos.org/build/233205364 at 2023-09-02
47504740 - pool-conduit # failure in job https://hydra.nixos.org/build/233246643 at 2023-09-02
···50425032 - rational-list # failure in job https://hydra.nixos.org/build/233197144 at 2023-09-02
50435033 - rattle # failure in job https://hydra.nixos.org/build/233234335 at 2023-09-02
50445034 - rattletrap # failure in job https://hydra.nixos.org/build/233206840 at 2023-09-02
50355035+ - rawlock # failure in job https://hydra.nixos.org/build/299186718 at 2025-06-23
50455036 - rawr # fails to build after unbreaking ghc-datasize at 2025-01-19
50465037 - raylib-imgui # failure in job https://hydra.nixos.org/build/233222471 at 2023-09-02
50475038 - raz # failure in job https://hydra.nixos.org/build/233218482 at 2023-09-02
50485039 - rbst # failure in job https://hydra.nixos.org/build/233238184 at 2023-09-02
50495040 - rclient # failure in job https://hydra.nixos.org/build/233239290 at 2023-09-02
50415041+ - rds-data # failure in job https://hydra.nixos.org/build/299186719 at 2025-06-23
50505042 - rds-data-codecs # failure in job https://hydra.nixos.org/build/253696582 at 2024-03-31
50515043 - react # failure in job https://hydra.nixos.org/build/257372364 at 2024-04-27
50525044 - react-flux # failure in job https://hydra.nixos.org/build/233246819 at 2023-09-02
···51885180 - resource-effectful # failure in job https://hydra.nixos.org/build/252712267 at 2024-03-16
51895181 - resource-embed # failure in job https://hydra.nixos.org/build/233209109 at 2023-09-02
51905182 - resource-pool-monad # failure in job https://hydra.nixos.org/build/233204199 at 2023-09-02
51835183+ - resource-registry # failure in job https://hydra.nixos.org/build/299350536 at 2025-06-23
51915184 - resourcet-pool # failure in job https://hydra.nixos.org/build/233213894 at 2023-09-02
51925185 - resp # failure in job https://hydra.nixos.org/build/295096632 at 2025-04-22
51935186 - respond # failure in job https://hydra.nixos.org/build/295096626 at 2025-04-22
···53735366 - SecureHash-SHA3 # failure in job https://hydra.nixos.org/build/233216866 at 2023-09-02
53745367 - secureUDP # failure in job https://hydra.nixos.org/build/233215410 at 2023-09-02
53755368 - SegmentTree # failure in job https://hydra.nixos.org/build/233216161 at 2023-09-02
53765376- - sel # failure in job https://hydra.nixos.org/build/255671988 at 2024-04-16
53775369 - selda-postgresql # failure in job https://hydra.nixos.org/build/245539286 at 2024-01-02
53785370 - selectors # failure in job https://hydra.nixos.org/build/233227433 at 2023-09-02
53795371 - selenium # failure in job https://hydra.nixos.org/build/233214276 at 2023-09-02
···55305522 - signable # failure in job https://hydra.nixos.org/build/259979871 at 2024-05-19
55315523 - signable-haskell-protoc # failure in job https://hydra.nixos.org/build/252734188 at 2024-03-16
55325524 - signal-messaging-dbus # failure in job https://hydra.nixos.org/build/252723131 at 2024-03-16
55255525+ - signature # failure in job https://hydra.nixos.org/build/301391178 at 2025-07-01
55335526 - significant-figures # failure in job https://hydra.nixos.org/build/295097004 at 2025-04-22
55345527 - silero-vad # failure in job https://hydra.nixos.org/build/295096978 at 2025-04-22
55355528 - simd # failure in job https://hydra.nixos.org/build/233206642 at 2023-09-02
···59335926 - supply-chain-core # failure in job https://hydra.nixos.org/build/252715612 at 2024-03-16
59345927 - surjective # failure in job https://hydra.nixos.org/build/233242908 at 2023-09-02
59355928 - sv-core # failure in job https://hydra.nixos.org/build/233217245 at 2023-09-02
59365936- - sv2v # failure in job https://hydra.nixos.org/build/295097359 at 2025-04-22
59375929 - SVD2HS # failure in job https://hydra.nixos.org/build/233248575 at 2023-09-02
59385930 - svfactor # failure in job https://hydra.nixos.org/build/233256743 at 2023-09-02
59395931 - svg-builder-fork # failure in job https://hydra.nixos.org/build/233224461 at 2023-09-02
···59675959 - symantic-xml # failure in job https://hydra.nixos.org/build/233230860 at 2023-09-02
59685960 - symbolic-link # failure in job https://hydra.nixos.org/build/233255331 at 2023-09-02
59695961 - symengine # failure in job https://hydra.nixos.org/build/233203977 at 2023-09-02
59705970- - symtegration # failure in job https://hydra.nixos.org/build/296523016 at 2025-05-14
59715962 - sync # failure in job https://hydra.nixos.org/build/233254114 at 2023-09-02
59725963 - sync-mht # failure in job https://hydra.nixos.org/build/233236022 at 2023-09-02
59735964 - syntactic # failure in job https://hydra.nixos.org/build/233210123 at 2023-09-02
···61156106 - text-all # failure in job https://hydra.nixos.org/build/233229321 at 2023-09-02
61166107 - text-and-plots # failure in job https://hydra.nixos.org/build/233205250 at 2023-09-02
61176108 - text-ascii # failure in job https://hydra.nixos.org/build/233247653 at 2023-09-02
61096109+ - text-builder-lawful-conversions # failure in job https://hydra.nixos.org/build/299141710 at 2025-06-23
61186110 - text-builder-time # failure in job https://hydra.nixos.org/build/295458315 at 2025-05-02
61196111 - text-compression # failure in job https://hydra.nixos.org/build/233202733 at 2023-09-02
61206112 - text-containers # failure in job https://hydra.nixos.org/build/233253948 at 2023-09-02
···64326424 - unicode-prelude # failure in job https://hydra.nixos.org/build/233241723 at 2023-09-02
64336425 - unicode-symbols # failure in job https://hydra.nixos.org/build/233241639 at 2023-09-02
64346426 - unicode-tricks # failure in job https://hydra.nixos.org/build/233258238 at 2023-09-02
64276427+ - unimap # failure in job https://hydra.nixos.org/build/299141969 at 2025-06-23
64356428 - union-find # failure in job https://hydra.nixos.org/build/233245476 at 2023-09-02
64366429 - union-map # failure in job https://hydra.nixos.org/build/233222765 at 2023-09-02
64376430 - uniprot-kb # failure in job https://hydra.nixos.org/build/233209692 at 2023-09-02
···65606553 - verdict # failure in job https://hydra.nixos.org/build/233238835 at 2023-09-02
65616554 - verify # failure in job https://hydra.nixos.org/build/233239874 at 2023-09-02
65626555 - verilog # failure in job https://hydra.nixos.org/build/233211999 at 2023-09-02
65566556+ - verismith # failure in job https://hydra.nixos.org/build/299186734 at 2025-06-23
65636557 - versioning # failure in job https://hydra.nixos.org/build/233205892 at 2023-09-02
65646558 - vformat # failure in job https://hydra.nixos.org/build/233222840 at 2023-09-02
65656559 - vgrep # failure in job https://hydra.nixos.org/build/233210982 at 2023-09-02
···67056699 - willow # failure in job https://hydra.nixos.org/build/233215807 at 2023-09-02
67066700 - windns # failure in job https://hydra.nixos.org/build/233242724 at 2023-09-02
67076701 - winerror # failure in job https://hydra.nixos.org/build/233196100 at 2023-09-02
67026702+ - wire-streams # failure in job https://hydra.nixos.org/build/299186735 at 2025-06-23
67086703 - wireguard-hs # failure in job https://hydra.nixos.org/build/233218722 at 2023-09-02
67096704 - wires # failure in job https://hydra.nixos.org/build/233192321 at 2023-09-02
67106705 - wiring # failure in job https://hydra.nixos.org/build/233191683 at 2023-09-02
···67546749 - writer-cps-mtl # failure in job https://hydra.nixos.org/build/252713593 at 2024-03-16
67556750 - wsdl # failure in job https://hydra.nixos.org/build/233208187 at 2023-09-02
67566751 - wsedit # failure in job https://hydra.nixos.org/build/233232333 at 2023-09-02
67526752+ - wsjtx-udp # failure in job https://hydra.nixos.org/build/299186736 at 2025-06-23
67576753 - wss-client # timeout
67586754 - wtk # failure in job https://hydra.nixos.org/build/233220668 at 2023-09-02
67596755 - wumpus-core # failure in job https://hydra.nixos.org/build/233244405 at 2023-09-02
···67996795 - xml-prettify # failure in job https://hydra.nixos.org/build/233225974 at 2023-09-02
68006796 - xml-prettify-text # failure in job https://hydra.nixos.org/build/233202586 at 2023-09-02
68016797 - xml-query # failure in job https://hydra.nixos.org/build/233194795 at 2023-09-02
68026802- - xml-syntax # failure in job https://hydra.nixos.org/build/233245678 at 2023-09-02
68036798 - xml-to-json # failure in job https://hydra.nixos.org/build/233197489 at 2023-09-02
68046799 - xml-tydom-core # failure in job https://hydra.nixos.org/build/233206253 at 2023-09-02
68056800 - xml-verify # failure in job https://hydra.nixos.org/build/233237302 at 2023-09-02