zaphyra's git: oeffisearch

fast and simple tripplanner

commit a79993f5b85437b0d08b003c2bf56c645922d288
parent 61e87f2681acc0e5fa494859dcb51c1e6b8afc14
Author: Katja Ramona Sophie Kwast (zaphyra) <git@zaphyra.eu>
Date: Sat, 21 Feb 2026 12:12:05 +0100

move package to 'package.nix'
2 files changed, 57 insertions(+), 33 deletions(-)
M
flake.nix
|
36
+++---------------------------------
A
package.nix
|
54
++++++++++++++++++++++++++++++++++++++++++++++++++++++
diff --git a/flake.nix b/flake.nix
@@ -50,39 +50,9 @@
       });
 
       overlays.default = final: prev: {
-        oeffisearch = final.stdenv.mkDerivation (finalAttrs: {
-          pname = "oeffisearch";
-          version = finalAttrs.env.GIT_VERSION;
-          npmHash = "sha256-lT8EHG2tZkqBrR5QkyP16JcGD6zkvWHqYjzItJDdB8Y=";
-
-          src = inputs.self;
-
-          nativeBuildInputs = [
-            final.nodejs
-            final.pnpm.configHook
-          ];
-
-          pnpmDeps = final.pnpm.fetchDeps {
-            inherit (finalAttrs) pname version src;
-            hash = finalAttrs.npmHash;
-            fetcherVersion = 2;
-          };
-
-          env.GIT_VERSION =
-            if (inputs.self.sourceInfo ? shortRev) then inputs.self.sourceInfo.shortRev else "dirty";
-          env.GIT_COMMIT = if (inputs.self.sourceInfo ? rev) then inputs.self.sourceInfo.rev else "dirty";
-          env.GIT_COMMITDATE = builtins.concatStringsSep "-" (
-            builtins.match "(.{4})(.{2})(.{2}).*" inputs.self.lastModifiedDate
-          );
-
-          buildPhase = ''
-            pnpm build
-          '';
-
-          installPhase = ''
-            cp -r dist $out
-          '';
-        });
+        oeffisearch = final.callPackage ./package.nix {
+          flakeSelf = inputs.self;
+        };
       };
     };
 
diff --git a/package.nix b/package.nix
@@ -0,0 +1,54 @@
+{
+  stdenv,
+  nodejs,
+  pnpm,
+  flakeSelf ? null,
+  version ? (
+    if (flakeSelf != null && flakeSelf.sourceInfo ? shortRev) then
+      flakeSelf.sourceInfo.shortRev
+    else
+      "dirty"
+  ),
+  commit ? (
+    if (flakeSelf != null && flakeSelf.sourceInfo ? rev) then flakeSelf.sourceInfo.rev else "dirty"
+  ),
+  date ? (
+    if (flakeSelf != null) then
+      (builtins.concatStringsSep "-" (builtins.match "(.{4})(.{2})(.{2}).*" flakeSelf.lastModifiedDate))
+    else
+      ""
+  ),
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "oeffisearch";
+  version = finalAttrs.env.GIT_VERSION;
+  npmHash = "sha256-lT8EHG2tZkqBrR5QkyP16JcGD6zkvWHqYjzItJDdB8Y=";
+
+  src = ./.;
+
+  nativeBuildInputs = [
+    nodejs
+    pnpm.configHook
+  ];
+
+  pnpmDeps = pnpm.fetchDeps {
+    inherit (finalAttrs) pname version src;
+    hash = finalAttrs.npmHash;
+    fetcherVersion = 2;
+  };
+
+  env = {
+    GIT_VERSION = version;
+    GIT_COMMIT = commit;
+    GIT_COMMITDATE = date;
+  };
+
+  buildPhase = ''
+    pnpm build
+  '';
+
+  installPhase = ''
+    cp -r dist $out
+  '';
+})