about summary refs log tree commit diff
diff options
context:
space:
mode:
authorsternenseemann <sternenseemann@systemli.org>2023-02-07 16:03:01 +0100
committersternenseemann <sternenseemann@systemli.org>2023-02-07 16:03:01 +0100
commitc9bef141d846c493a045385ab8146aa28fc8ef33 (patch)
tree713eba8fa3092a45bd101f6ee890847a312c10b8
parent980b425220219abfabe8ba9370e69771b29f2dc6 (diff)
refactor(pkgs): reduce closure size of likely-music-backend HEAD master
-rw-r--r--pkgs.nix47
1 files changed, 26 insertions, 21 deletions
diff --git a/pkgs.nix b/pkgs.nix
index dd82c2e..fd7de76 100644
--- a/pkgs.nix
+++ b/pkgs.nix
@@ -3,27 +3,32 @@
 rec {
   # likely-music haskellPackage
   likely-music-lib = likely-music-backend;
-  likely-music-backend = pkgs.haskell.lib.compose.overrideSrc {
-    # Prevent unnecessary rebuilds
-    src = builtins.path {
-      name = "likely-music-backend-source";
-      path = ./.;
-      filter = path: type:
-        # Exclude paths irrelevant to Haskell compilation
-        builtins.all (prefix: !pkgs.lib.hasPrefix prefix path) [
-          (toString ./default.nix)
-          (toString ./likely-music-backend.nix)
-          (toString ./likely-music-service.nix)
-          (toString ./pkgs.nix)
-          (toString ./README.md)
-          (toString ./web)
-        ]
-        # Apply .gitignore rules
-        && pkgs.nix-gitignore.gitignoreFilter (
-          builtins.readFile ./.gitignore
-        ) ./. path type;
-    };
-  } (pkgs.haskellPackages.callPackage ./likely-music-backend.nix { });
+  likely-music-backend = pkgs.lib.pipe
+    (pkgs.haskellPackages.callPackage ./likely-music-backend.nix { })
+    [
+      (pkgs.haskell.lib.compose.overrideSrc {
+        # Prevent unnecessary rebuilds
+        src = builtins.path {
+          name = "likely-music-backend-source";
+          path = ./.;
+          filter = path: type:
+            # Exclude paths irrelevant to Haskell compilation
+            builtins.all (prefix: !pkgs.lib.hasPrefix prefix path) [
+              (toString ./default.nix)
+              (toString ./likely-music-backend.nix)
+              (toString ./likely-music-service.nix)
+              (toString ./pkgs.nix)
+              (toString ./README.md)
+              (toString ./web)
+            ]
+            # Apply .gitignore rules
+            && pkgs.nix-gitignore.gitignoreFilter (
+              builtins.readFile ./.gitignore
+            ) ./. path type;
+        };
+      })
+      pkgs.haskell.lib.compose.justStaticExecutables
+    ];
 
   likely-music-frontend = pkgs.callPackage ./web { inherit napalm; };