summary refs log tree commit diff
path: root/pkgs/build-support/agda
diff options
context:
space:
mode:
authorJohn Ericson <Ericson2314@Yahoo.com>2015-05-30 19:33:20 +0000
committerJohn Ericson <Ericson2314@Yahoo.com>2015-05-31 01:55:10 +0000
commitbe2cba690ce6614768cae065d37ffffb9d4181d7 (patch)
treed3beb98018e56e6bf88260b9cba64f992b953b73 /pkgs/build-support/agda
parent9b31a07b0de58b5996ecc6b953350af3838d1706 (diff)
downloadnixpkgs-be2cba690ce6614768cae065d37ffffb9d4181d7.tar
nixpkgs-be2cba690ce6614768cae065d37ffffb9d4181d7.tar.gz
nixpkgs-be2cba690ce6614768cae065d37ffffb9d4181d7.tar.bz2
nixpkgs-be2cba690ce6614768cae065d37ffffb9d4181d7.tar.lz
nixpkgs-be2cba690ce6614768cae065d37ffffb9d4181d7.tar.xz
nixpkgs-be2cba690ce6614768cae065d37ffffb9d4181d7.tar.zst
nixpkgs-be2cba690ce6614768cae065d37ffffb9d4181d7.zip
agda: Remove unused/uneeded abstractions, including `postprocess`
Diffstat (limited to 'pkgs/build-support/agda')
-rw-r--r--pkgs/build-support/agda/default.nix29
1 files changed, 11 insertions, 18 deletions
diff --git a/pkgs/build-support/agda/default.nix b/pkgs/build-support/agda/default.nix
index 0bdc049934a..8a871cfeb51 100644
--- a/pkgs/build-support/agda/default.nix
+++ b/pkgs/build-support/agda/default.nix
@@ -10,11 +10,6 @@
 with stdenv.lib.strings;
 
 let
-  optionalString = stdenv.lib.optionalString;
-  filter = stdenv.lib.filter;
-  unwords = concatStringsSep " ";
-  mapInside = xs: unwords (map (x: x + "/*") xs);
-
   defaults = self : {
     # There is no Hackage for Agda so we require src.
     inherit (self) src name;
@@ -24,14 +19,16 @@ let
     buildInputs = [ Agda ] ++ self.buildDepends;
     buildDepends = [];
 
-    buildDependsAgda = filter
+    buildDependsAgda = stdenv.lib.filter
       (dep: dep ? isAgdaPackage && dep.isAgdaPackage)
       self.buildDepends;
     buildDependsAgdaShareAgda = map (x: x + "/share/agda") self.buildDependsAgda;
 
     # Not much choice here ;)
     LANG = "en_US.UTF-8";
-    LOCALE_ARCHIVE = optionalString stdenv.isLinux "${glibcLocales}/lib/locale/locale-archive";
+    LOCALE_ARCHIVE = stdenv.lib.optionalString
+      stdenv.isLinux
+      "${glibcLocales}/lib/locale/locale-archive";
 
     everythingFile = "Everything.agda";
 
@@ -52,7 +49,7 @@ let
     includeDirs = self.buildDependsAgdaShareAgda
                   ++ self.sourceDirectories ++ self.topSourceDirectories
                   ++ [ "." ];
-    buildFlags = unwords (map (x: "-i " + x) self.includeDirs);
+    buildFlags = concatStringsSep " " (map (x: "-i " + x) self.includeDirs);
 
     agdaWithArgs = "${Agda}/bin/agda ${self.buildFlags}";
 
@@ -62,10 +59,13 @@ let
       runHook postBuild
     '';
 
-    installPhase = ''
+    installPhase = let
+      srcFiles = self.sourceDirectories
+                 ++ map (x: x + "/*") self.topSourceDirectories;
+    in ''
       runHook preInstall
       mkdir -p $out/share/agda
-      cp -pR ${unwords self.sourceDirectories} ${mapInside self.topSourceDirectories} $out/share/agda
+      cp -pR ${concatStringsSep " " srcFiles} $out/share/agda
       runHook postInstall
     '';
 
@@ -84,16 +84,9 @@ let
       };
     };
   };
-
-  postprocess = x: x // {
-    sourceDirectories = filter (y: !(y == null)) x.sourceDirectories;
-    propagatedBuildInputs = filter (y : ! (y == null)) x.propagatedBuildInputs;
-    propagatedUserEnvPkgs = filter (y : ! (y == null)) x.propagatedUserEnvPkgs;
-    everythingFile = if x.everythingFile == "" then "Everything.agda" else x.everythingFile;
-  };
 in
 { mkDerivation = args: let
       super = defaults self // args self;
       self  = super // extension self super;
-    in stdenv.mkDerivation (postprocess self);
+    in stdenv.mkDerivation self;
 }