agda: Remove unused/uneeded abstractions, including `postprocess`

+11 -18
+11 -18
pkgs/build-support/agda/default.nix
··· 10 with stdenv.lib.strings; 11 12 let 13 - optionalString = stdenv.lib.optionalString; 14 - filter = stdenv.lib.filter; 15 - unwords = concatStringsSep " "; 16 - mapInside = xs: unwords (map (x: x + "/*") xs); 17 - 18 defaults = self : { 19 # There is no Hackage for Agda so we require src. 20 inherit (self) src name; ··· 24 buildInputs = [ Agda ] ++ self.buildDepends; 25 buildDepends = []; 26 27 - buildDependsAgda = filter 28 (dep: dep ? isAgdaPackage && dep.isAgdaPackage) 29 self.buildDepends; 30 buildDependsAgdaShareAgda = map (x: x + "/share/agda") self.buildDependsAgda; 31 32 # Not much choice here ;) 33 LANG = "en_US.UTF-8"; 34 - LOCALE_ARCHIVE = optionalString stdenv.isLinux "${glibcLocales}/lib/locale/locale-archive"; 35 36 everythingFile = "Everything.agda"; 37 ··· 52 includeDirs = self.buildDependsAgdaShareAgda 53 ++ self.sourceDirectories ++ self.topSourceDirectories 54 ++ [ "." ]; 55 - buildFlags = unwords (map (x: "-i " + x) self.includeDirs); 56 57 agdaWithArgs = "${Agda}/bin/agda ${self.buildFlags}"; 58 ··· 62 runHook postBuild 63 ''; 64 65 - installPhase = '' 66 runHook preInstall 67 mkdir -p $out/share/agda 68 - cp -pR ${unwords self.sourceDirectories} ${mapInside self.topSourceDirectories} $out/share/agda 69 runHook postInstall 70 ''; 71 ··· 84 }; 85 }; 86 }; 87 - 88 - postprocess = x: x // { 89 - sourceDirectories = filter (y: !(y == null)) x.sourceDirectories; 90 - propagatedBuildInputs = filter (y : ! (y == null)) x.propagatedBuildInputs; 91 - propagatedUserEnvPkgs = filter (y : ! (y == null)) x.propagatedUserEnvPkgs; 92 - everythingFile = if x.everythingFile == "" then "Everything.agda" else x.everythingFile; 93 - }; 94 in 95 { mkDerivation = args: let 96 super = defaults self // args self; 97 self = super // extension self super; 98 - in stdenv.mkDerivation (postprocess self); 99 }
··· 10 with stdenv.lib.strings; 11 12 let 13 defaults = self : { 14 # There is no Hackage for Agda so we require src. 15 inherit (self) src name; ··· 19 buildInputs = [ Agda ] ++ self.buildDepends; 20 buildDepends = []; 21 22 + buildDependsAgda = stdenv.lib.filter 23 (dep: dep ? isAgdaPackage && dep.isAgdaPackage) 24 self.buildDepends; 25 buildDependsAgdaShareAgda = map (x: x + "/share/agda") self.buildDependsAgda; 26 27 # Not much choice here ;) 28 LANG = "en_US.UTF-8"; 29 + LOCALE_ARCHIVE = stdenv.lib.optionalString 30 + stdenv.isLinux 31 + "${glibcLocales}/lib/locale/locale-archive"; 32 33 everythingFile = "Everything.agda"; 34 ··· 49 includeDirs = self.buildDependsAgdaShareAgda 50 ++ self.sourceDirectories ++ self.topSourceDirectories 51 ++ [ "." ]; 52 + buildFlags = concatStringsSep " " (map (x: "-i " + x) self.includeDirs); 53 54 agdaWithArgs = "${Agda}/bin/agda ${self.buildFlags}"; 55 ··· 59 runHook postBuild 60 ''; 61 62 + installPhase = let 63 + srcFiles = self.sourceDirectories 64 + ++ map (x: x + "/*") self.topSourceDirectories; 65 + in '' 66 runHook preInstall 67 mkdir -p $out/share/agda 68 + cp -pR ${concatStringsSep " " srcFiles} $out/share/agda 69 runHook postInstall 70 ''; 71 ··· 84 }; 85 }; 86 }; 87 in 88 { mkDerivation = args: let 89 super = defaults self // args self; 90 self = super // extension self super; 91 + in stdenv.mkDerivation self; 92 }