summaryrefslogtreecommitdiff
path: root/pkgs/spliit
diff options
context:
space:
mode:
authorAlejandro Diaz <alejandrodp@protonmail.com>2025-06-22 01:17:27 -0600
committerAlejandro Diaz <alejandrodp@protonmail.com>2025-06-22 01:17:27 -0600
commitc199b745023a36e6dc7b24742c407be8f268d759 (patch)
tree623c8d6a06c71d9fdf395da457f7980289b45a89 /pkgs/spliit
parentece68e20ef296bcffe67301ae313e744d50b6475 (diff)
spliit: added functional package
Diffstat (limited to 'pkgs/spliit')
-rw-r--r--pkgs/spliit/default.nix41
1 files changed, 27 insertions, 14 deletions
diff --git a/pkgs/spliit/default.nix b/pkgs/spliit/default.nix
index 5ac56b1..60e12dd 100644
--- a/pkgs/spliit/default.nix
+++ b/pkgs/spliit/default.nix
@@ -4,7 +4,14 @@
nodePackages,
lib,
writeShellScriptBin,
+ pkgs
}:
+let
+ schemaEngine = "${pkgs.prisma-engines}/bin/schema-engine";
+ queryEngineBin = "${pkgs.prisma-engines}/bin/query-engine";
+ queryEngineLib = "${pkgs.prisma-engines}/lib/libquery_engine.node";
+ buildFlags = [ "--ignore-scripts" ];
+in
buildNpmPackage {
pname = "spliit2";
version = "master-20250420";
@@ -18,24 +25,26 @@ buildNpmPackage {
};
npmDepsHash = "sha256-sd0/7ruNUFxUKTeTwx/v8Vc/G3llkXP6RSDE78h3qVU=";
- npmRebuildFlags = ["--ignore-scripts"];
- doCheck = false;
+ nativeBuildInputs = [ pkgs.openssl ];
- postPatch = ''
- cp -v .env.example .env
- '';
+ npmRebuildFlags = buildFlags;
+
+ PRISMA_SCHEMA_ENGINE_BINARY = schemaEngine;
+ PRISMA_QUERY_ENGINE_BINARY = queryEngineBin;
+ PRISMA_QUERY_ENGINE_LIBRARY = queryEngineLib;
- # nixpkgs/pkgs/applications/office/documenso/default.nix (git)-[master] 05:36:05
preBuild = ''
- # somehow for linux, npm is not finding the prisma package with the
- # packages installed with the lockfile.
- # This generates a prisma version incompatibility warning and is a kludge
- # until the upstream package-lock is modified.
- ${lib.getExe nodePackages.prisma} generate
+ cp -v scripts/build.env .env
+
+ npx prisma generate
'';
+ npmBuildFlags = buildFlags;
+
postInstall = ''
+ cp -r .next public package.json next.config.mjs $out/lib/node_modules/spliit2
+
install -Dvm755 -t $out/bin ${lib.getExe (writeShellScriptBin "spliit2" ''
set -euxo pipefail
@@ -44,15 +53,19 @@ buildNpmPackage {
export PATH="$PWD/node_modules/.bin:$PATH"
export NEXT_TELEMETRY_DISABLED=1
+ export PRISMA_SCHEMA_ENGINE_BINARY="${schemaEngine}"
+ export PRISMA_QUERY_ENGINE_BINARY="${queryEngineBin}"
+ export PRISMA_QUERY_ENGINE_LIBRARY="${queryEngineLib}"
+
prisma migrate deploy
exec next start
'')}
- #kk?
- #${lib.getExe nodePackages.prisma} migrate deploy
-
substituteInPlace $out/bin/spliit2 \
--replace @out@ $out
+
+ wrapProgram $out/bin/spliit2 \
+ --prefix PATH : ${lib.makeBinPath [ pkgs.openssl ]}
'';
meta = {