From af13ed448331981a9deb30c8019c52e0e5cc1233 Mon Sep 17 00:00:00 2001 From: happysalada Date: Tue, 15 Aug 2023 00:35:51 +0800 Subject: [PATCH] documenso: init at 0.9 --- .../applications/office/documenso/default.nix | 53 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 55 insertions(+) create mode 100644 pkgs/applications/office/documenso/default.nix diff --git a/pkgs/applications/office/documenso/default.nix b/pkgs/applications/office/documenso/default.nix new file mode 100644 index 000000000000..e57e6d0fae21 --- /dev/null +++ b/pkgs/applications/office/documenso/default.nix @@ -0,0 +1,53 @@ +{ lib +, fetchFromGitHub +, buildNpmPackage +, nodePackages +, nix-update-script +}: +let + version = "0.9"; +in +buildNpmPackage { + pname = "documenso"; + inherit version; + + src = fetchFromGitHub { + owner = "documenso"; + repo = "documenso"; + rev = "v${version}"; + hash = "sha256-uKOJVZ0GRHo/CYvd/Ix/tq1WDhutRji1tSGdcITsNlo="; + }; + + 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. + ${nodePackages.prisma}/bin/prisma generate + ''; + + npmDepsHash = "sha256-+JbvFMi8xoyxkuL9k96K1Vq0neciCGkkyZUPd15ES2E="; + + installPhase = '' + runHook preInstall + + mkdir $out + cp -r node_modules $out/ + cp package-lock.json $out + cp apps/web/package.json $out + cp -r apps/web/public $out/ + cp -r apps/web/.next $out/ + + runHook postInstall + ''; + + passthru.updateScript = nix-update-script {}; + + meta = with lib; { + description = "The Open Source DocuSign Alternative."; + homepage = "https://github.com/documenso/documenso"; + license = licenses.agpl3Only; + maintainers = with maintainers; [ happysalada ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 28da63366c2d..3bed28194801 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -589,6 +589,8 @@ with pkgs; dnf5 = callPackage ../tools/package-management/dnf5 { }; + documenso = callPackage ../applications/office/documenso { }; + dsq = callPackage ../tools/misc/dsq { }; dt = callPackage ../tools/text/dt { };