summaryrefslogtreecommitdiffstats
path: root/flake/pkgs/by-name/prettier-plugin-pug/package.nix
blob: 14e24944bbf9d7dce8547ca22f7883702eefe197 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
{
  stdenv,
  nodejs,
  gitMinimal,
  pnpm_11,
  pnpmConfigHook,
  zstd,
  fetchPnpmDeps,
  pins,
  fetchFromGitHub,
  writableTmpDirAsHomeHook,
}: let
  pin = pins.prettier-plugin-pug;
in
  stdenv.mkDerivation (finalAttrs: {
    pname = "prettier-plugin-pug";
    version = pin.version or pin.revision;

    patches = [
      ./0001-fix-don-t-touch-git-state-while-building.patch
    ];

    src = fetchFromGitHub {
      inherit (pin.repository) owner repo;
      rev = finalAttrs.version;
      sha256 = pin.hash;
    };

    pnpmDeps = fetchPnpmDeps {
      pnpm = pnpm_11;
      inherit (finalAttrs) pname version src;
      hash = "sha256-aUTjJnJG47NPgwrZWjsEY7Qrq+hKAgKYhYUfSEp+E9U=";
      fetcherVersion = 4;
    };

    nativeBuildInputs = [
      nodejs
      gitMinimal
      writableTmpDirAsHomeHook
      (pnpmConfigHook.override {
        pnpm = pnpm_11;
      })
      pnpm_11
      zstd
    ];

    buildPhase = ''
      runHook preBuild
      pnpm run build
      runHook postBuild
    '';

    preInstall = ''
      cp -r dist/ $out
      cp -r node_modules $out
    '';
  })