5 # from pkgs/stdenv/generic/make-derivation.nix
6 # This parameter is sometimes a string, sometimes null, and sometimes a list, yuck
7 normalizedConfigureFlags = configureFlags: let inherit (super) lib; in
8 (/**/ if lib.isString configureFlags then [configureFlags]
9 else if configureFlags == null then []
12 stackage2nixPackages = import ./stackage2nix/stackage-packages.nix { nixpkgs = self; };
15 haskell = super.haskell // {
16 packages = super.haskell.packages // {
17 stackage = super.callPackage ./stackage {} // {
18 lib = super.callPackage ./lib.nix {};
23 stackage2nix = self.callPackage ./stackage2nix {
24 drv = super.haskell.lib.disableSharedExecutables stackage2nixPackages.stackage2nix;
27 stackage2nixWrapper = import ./stackage2nix/impure.nix {
28 cacheVersion = builtins.readFile ./cache-version.txt;
32 stackage2nix-static = import ./stackage2nix/impure.nix {
35 stackagePackages = import ./stackage2nix/stackage-packages.nix { nixpkgs = self; };
36 in self.haskell.lib.overrideCabal stackagePackages.stackage2nix (drv: {
37 enableSharedExecutables = false;
38 enableSharedLibraries = false;
40 "--ghc-option=-optl=-static"
41 "--ghc-option=-optl=-L${self.glibc.static}/lib"
42 "--ghc-option=-optl=-L${self.gmp.override { withStatic = true; }}/lib"
43 "--ghc-option=-optl=-L${self.icu-static.static}/lib"
44 "--ghc-option=-optl=-L${self.openssl-static.static}/lib"
45 "--ghc-option=-optl=-L${self.zlib.static}/lib"
48 cacheVersion = builtins.readFile ./cache-version.txt;
52 icu-static = super.icu.overrideAttrs (attrs: {
53 dontDisableStatic = true;
54 configureFlags = normalizedConfigureFlags attrs.configureFlags ++ [ "--enable-static" ];
55 outputs = attrs.outputs ++ [ "static" ];
57 moveToOutput "lib/*.a" "$static"
58 '' + (if attrs ? postInstall then attrs.postInstall else "");
61 openssl-static = super.openssl.overrideAttrs (attrs: {
62 dontDisableStatic = true;
63 outputs = attrs.outputs ++ [ "static" ];
66 cp -v *.a $static/lib;
67 '' + (if attrs ? postInstall then attrs.postInstall else "");
keysesc to close
- j k
- move down, up
- enter
- open
- esc
- back, or up a level
- 1 2 3 4
- readme, files, commits, refs
- /
- filter
- y
- copy the clone command
- c
- compare the chosen commit with another (or shift-click both)
- ?
- show or hide this list