nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 buildNpmPackage,
4 fetchFromGitHub,
5
6 pnpm_10,
7 pnpm ? pnpm_10,
8 fetchPnpmDeps,
9 pnpmConfigHook,
10 nix-update-script,
11 nodejs,
12}:
13
14buildNpmPackage (finalAttrs: {
15 pname = "sub-store-frontend";
16 version = "2.16.11";
17
18 src = fetchFromGitHub {
19 owner = "sub-store-org";
20 repo = "Sub-Store-Front-End";
21 tag = finalAttrs.version;
22 hash = "sha256-fPJuWyVjs3Lbd2P4U6r9qb2yvTSYPtqtJoDyP2kRm9c=";
23 };
24
25 nativeBuildInputs = [
26 nodejs
27 pnpm
28 ];
29
30 npmDeps = null;
31 pnpmDeps = fetchPnpmDeps {
32 inherit (finalAttrs) pname version src;
33 inherit pnpm;
34 fetcherVersion = 3;
35 hash = "sha256-HEeNYLKvzO/RQWYnm5gqRjTrXiiCxKUxf3bcRvz+O4k=";
36 };
37
38 npmConfigHook = pnpmConfigHook;
39
40 installPhase = ''
41 runHook preInstall
42
43 cp -r dist $out
44
45 runHook postInstall
46 '';
47
48 passthru.updateScript = nix-update-script { };
49
50 meta = {
51 description = "Sub-Store Progressive Web App";
52 homepage = "https://github.com/sub-store-org/Sub-Store-Front-End";
53 changelog = "https://github.com/sub-store-org/Sub-Store-Front-End/releases/tag/${finalAttrs.version}";
54 license = lib.licenses.gpl3Only;
55 maintainers = with lib.maintainers; [ moraxyc ];
56 platforms = nodejs.meta.platforms;
57 };
58})