pnpm: refactor fetchDeps and configHook to top-level attributes (#469437)

This commit is contained in:
Gergő Gutyina
2025-12-18 12:52:44 +00:00
committed by GitHub
148 changed files with 1087 additions and 504 deletions
+70 -33
View File
@@ -327,16 +327,17 @@ See `node2nix` [docs](https://github.com/svanderburg/node2nix) for more info.
### pnpm {#javascript-pnpm}
Pnpm is available as the top-level package `pnpm`. Additionally, there are variants pinned to certain major versions, like `pnpm_8` and `pnpm_9`, which support different sets of lock file versions.
pnpm is available as the top-level package `pnpm`. Additionally, there are variants pinned to certain major versions, like `pnpm_8`, `pnpm_9` and `pnpm_10`, which support different sets of lock file versions.
When packaging an application that includes a `pnpm-lock.yaml`, you need to fetch the pnpm store for that project using a fixed-output-derivation. The functions `pnpm_8.fetchDeps` and `pnpm_9.fetchDeps` can create this pnpm store derivation. In conjunction, the setup hooks `pnpm_8.configHook` and `pnpm_9.configHook` will prepare the build environment to install the pre-fetched dependencies store. Here is an example for a package that contains `package.json` and a `pnpm-lock.yaml` files using the above `pnpm_` attributes:
When packaging an application that includes a `pnpm-lock.yaml`, you need to fetch the pnpm store for that project using a fixed-output-derivation. The function `fetchPnpmDeps` can create this pnpm store derivation. In conjunction, the setup hook `pnpmConfigHook` will prepare the build environment to install the pre-fetched dependencies store. Here is an example for a package that contains `package.json` and a `pnpm-lock.yaml` files using the fetcher and setup hook above:
```nix
{
stdenv,
fetchPnpmDeps,
nodejs,
# This is pinned as { pnpm = pnpm_9; }
pnpm,
pnpmConfigHook,
stdenv,
}:
stdenv.mkDerivation (finalAttrs: {
@@ -348,11 +349,12 @@ stdenv.mkDerivation (finalAttrs: {
};
nativeBuildInputs = [
nodejs
pnpm.configHook
nodejs # in case scripts are run outside of a pnpm call
pnpmConfigHook
pnpm # At least required by pnpmConfigHook, if not other (custom) phases
];
pnpmDeps = pnpm.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
fetcherVersion = 3;
hash = "...";
@@ -360,33 +362,68 @@ stdenv.mkDerivation (finalAttrs: {
})
```
NOTE: It is highly recommended to use a pinned version of pnpm (i.e., `pnpm_8` or `pnpm_9`), to increase future reproducibility. It might also be required to use an older version if the package needs support for a certain lock file version.
It is highly recommended to use a pinned version of pnpm (i.e., `pnpm_9` or `pnpm_10`), to increase future reproducibility. It might also be required to use an older version if the package needs support for a certain lock file version. To do so, you can pass the `pnpm` argument to `fetchPnpmDeps` and override the `pnpm` arg in `pnpmConfigHook`. Here are the changes in the example above to use a pinned pnpm version:
<!-- TODO: Does splicing still work when overriding in nativeBuildInputs here? -->
```diff
{
fetchPnpmDeps,
nodejs,
- pnpm,
+ pnpm_10,
pnpmConfigHook,
stdenv,
}:
+let
+ # Optionally override pnpm to use a custom nodejs version
+ # Make sure that the same nodejs version is referenced in nativeBuildInputs
+ # pnpm = pnpm_10.override { nodejs = nodejs_20; };
+in
stdenv.mkDerivation (finalAttrs: {
pname = "foo";
version = "0-unstable-1980-01-01";
src = {
#...
};
nativeBuildInputs = [
nodejs # in case scripts are run outside of a pnpm call
pnpmConfigHook
- pnpm # At least required by pnpmConfigHook, if not other (custom) phases
+ pnpm_10 # At least required by pnpmConfigHook, if not other (custom) phases
];
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
+ pnpm = pnpm_10;
fetcherVersion = 3;
hash = "...";
};
})
```
In case you are patching `package.json` or `pnpm-lock.yaml`, make sure to pass `finalAttrs.patches` to the function as well (i.e., `inherit (finalAttrs) patches`.
`pnpm.configHook` supports adding additional `pnpm install` flags via `pnpmInstallFlags` which can be set to a Nix string array:
`pnpmConfigHook` supports adding additional `pnpm install` flags via `pnpmInstallFlags` which can be set to a Nix string array:
```nix
{ pnpm }:
stdenv.mkDerivation (finalAttrs: {
pname = "foo";
version = "0-unstable-1980-01-01";
src = {
{
# ...
pnpmDeps = fetchPnpmDeps {
# ...
inherit (finalAttrs) pnpmInstallFlags;
};
pnpmInstallFlags = [ "--shamefully-hoist" ];
pnpmDeps = pnpm.fetchDeps { inherit (finalAttrs) pnpmInstallFlags; };
})
}
```
#### Dealing with `sourceRoot` {#javascript-pnpm-sourceRoot}
If the pnpm project is in a subdirectory, you can just define `sourceRoot` or `setSourceRoot` for `fetchDeps`.
If `sourceRoot` is different between the parent derivation and `fetchDeps`, you will have to set `pnpmRoot` to effectively be the same location as it is in `fetchDeps`.
If the pnpm project is in a subdirectory, you can just define `sourceRoot` or `setSourceRoot` for `fetchPnpmDeps`.
If `sourceRoot` is different between the parent derivation and `fetchPnpmDeps`, you will have to set `pnpmRoot` to effectively be the same location as it is in `fetchPnpmDeps`.
Assuming the following directory structure, we can define `sourceRoot` and `pnpmRoot` as follows:
@@ -402,7 +439,7 @@ Assuming the following directory structure, we can define `sourceRoot` and `pnpm
```nix
{
# ...
pnpmDeps = pnpm.fetchDeps {
pnpmDeps = fetchPnpmDeps {
# ...
sourceRoot = "${finalAttrs.src.name}/frontend";
};
@@ -414,7 +451,7 @@ Assuming the following directory structure, we can define `sourceRoot` and `pnpm
#### PNPM Workspaces {#javascript-pnpm-workspaces}
If you need to use a PNPM workspace for your project, then set `pnpmWorkspaces = [ "<workspace project name 1>" "<workspace project name 2>" ]`, etc, in your `pnpm.fetchDeps` call,
If you need to use a PNPM workspace for your project, then set `pnpmWorkspaces = [ "<workspace project name 1>" "<workspace project name 2>" ]`, etc, in your `fetchPnpmDeps` call,
which will make PNPM only install dependencies for those workspace packages.
For example:
@@ -423,14 +460,14 @@ For example:
{
# ...
pnpmWorkspaces = [ "@astrojs/language-server" ];
pnpmDeps = pnpm.fetchDeps {
inherit (finalAttrs) pnpmWorkspaces;
pnpmDeps = fetchPnpmDeps {
#...
inherit (finalAttrs) pnpmWorkspaces;
};
}
```
The above would make `pnpm.fetchDeps` call only install dependencies for the `@astrojs/language-server` workspace package.
The above would make `fetchPnpmDeps` call only install dependencies for the `@astrojs/language-server` workspace package.
Note that you do not need to set `sourceRoot` to make this work.
Usually, in such cases, you'd want to use `pnpm --filter=<pnpm workspace name> build` to build your project, as `npmHooks.npmBuildHook` probably won't work. A `buildPhase` based on the following example will probably fit most workspace projects:
@@ -457,23 +494,23 @@ set `prePnpmInstall` to the right commands to run. For example:
prePnpmInstall = ''
pnpm config set dedupe-peer-dependents false
'';
pnpmDeps = pnpm.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) prePnpmInstall;
# ...
};
}
```
In this example, `prePnpmInstall` will be run by both `pnpm.configHook` and by the `pnpm.fetchDeps` builder.
In this example, `prePnpmInstall` will be run by both `pnpmConfigHook` and by the `fetchPnpmDeps` builder.
#### PNPM `fetcherVersion` {#javascript-pnpm-fetcherVersion}
#### pnpm `fetcherVersion` {#javascript-pnpm-fetcherVersion}
This is the version of the output of `pnpm.fetchDeps`, if you haven't set it already, you can use `1` with your current hash:
This is the version of the output of `fetchPnpmDeps`, if you haven't set it already, you can use `1` with your current hash:
```nix
{
# ...
pnpmDeps = pnpm.fetchDeps {
pnpmDeps = fetchPnpmDeps {
# ...
fetcherVersion = 1;
hash = "..."; # you can use your already set hash here
@@ -486,7 +523,7 @@ After upgrading to a newer `fetcherVersion`, you need to regenerate the hash:
```nix
{
# ...
pnpmDeps = pnpm.fetchDeps {
pnpmDeps = fetchPnpmDeps {
# ...
fetcherVersion = 2;
hash = "..."; # clear this hash and generate a new one
@@ -494,7 +531,7 @@ After upgrading to a newer `fetcherVersion`, you need to regenerate the hash:
}
```
This variable ensures that we can make changes to the output of `pnpm.fetchDeps` without breaking existing hashes.
This variable ensures that we can make changes to the output of `fetchPnpmDeps` without breaking existing hashes.
Changes can include workarounds or bug fixes to existing PNPM issues.
##### Version history {#javascript-pnpm-fetcherVersion-versionHistory}
+2
View File
@@ -54,6 +54,8 @@
If your SQLite database is corrupted, the migration might fail and require [manual intervention](https://github.com/louislam/uptime-kuma/issues/5281).
See the [migration guide](https://github.com/louislam/uptime-kuma/wiki/Migration-From-v1-To-v2) for more information.
- `fetchPnpmDeps` and `pnpmConfigHook` were added as top-level attributes, replacing the now deprecated `pnpm.fetchDeps` and `pnpm.configHook` attributes.
- Added `dell-bios-fan-control` package and service.
- We now use the upstream wrapper script for Gradle, supporting both the `JAVA_HOME` and `GRADLE_OPTS` environment variables.
@@ -7,11 +7,12 @@
python3,
copyDesktopItems,
nodejs,
pnpm,
pnpm_10,
fetchPnpmDeps,
pnpmConfigHook,
makeDesktopItem,
nix-update-script,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "youtube-music";
version = "3.11.0";
@@ -28,8 +29,9 @@ stdenv.mkDerivation (finalAttrs: {
./fix-mpris-desktop-entry.patch
];
pnpmDeps = pnpm.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
pnpm = pnpm_10;
fetcherVersion = 2;
hash = "sha256-xZQ8rnLGD0ZxxUUPLHmNJ6mA+lnUHCTBvtJTiIPxaZU=";
};
@@ -38,7 +40,8 @@ stdenv.mkDerivation (finalAttrs: {
makeWrapper
python3
nodejs
pnpm.configHook
pnpmConfigHook
pnpm_10
]
++ lib.optionals (!stdenv.hostPlatform.isDarwin) [ copyDesktopItems ];
@@ -4,6 +4,8 @@
stdenv,
fetchFromGitHub,
pnpm,
fetchPnpmDeps,
pnpmConfigHook,
nodejs,
vscode-utils,
nix-update-script,
@@ -22,7 +24,7 @@ let
hash = "sha256-9XEv50WIG1BJenY9MswES6d72Ead2VqW5dgBr7Eu8ek=";
};
pnpmDeps = pnpm.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
fetcherVersion = 2;
hash = "sha256-QHITHoaz/lzZ3Th/YPlQayFMU9rtlnAZWEYkLyBuAkc=";
@@ -36,7 +38,7 @@ let
nativeBuildInputs = [
nodejs
pnpm.configHook
pnpmConfigHook
pnpm
];
@@ -3,6 +3,8 @@
stdenvNoCC,
fetchFromGitHub,
pnpm,
fetchPnpmDeps,
pnpmConfigHook,
nodejs,
vscode-utils,
nix-update-script,
@@ -21,7 +23,7 @@ let
hash = "sha256-Dy0dd07pWsSbrO6BX7GEYf7CunXD0itaeIFRv9mQJks=";
};
pnpmDeps = pnpm.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
fetcherVersion = 2;
hash = "sha256-hxgzmJD+Sl7E+ape1M1/Xl8XLtAhtht3AE45zHFctsQ=";
@@ -29,7 +31,7 @@ let
nativeBuildInputs = [
nodejs
pnpm.configHook
pnpmConfigHook
pnpm
];
@@ -3,6 +3,8 @@
stdenvNoCC,
fetchFromGitHub,
pnpm,
fetchPnpmDeps,
pnpmConfigHook,
nodejs,
vscode-utils,
nix-update-script,
@@ -21,7 +23,7 @@ let
hash = "sha256-YO3TxKcCDoIJeBoMGFFrHUp6lne1e84Tf1I2vHF6w1c=";
};
pnpmDeps = pnpm.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
fetcherVersion = 2;
hash = "sha256-k6Bw6MlFDNPNPdaKJ7tW8wje2j9LJvREtlAWyySnOC0=";
@@ -29,7 +31,7 @@ let
nativeBuildInputs = [
nodejs
pnpm.configHook
pnpmConfigHook
pnpm
];
@@ -10,9 +10,8 @@
yq,
zstd,
}:
let
pnpm' = pnpm;
pnpmLatest = pnpm;
supportedFetcherVersions = [
1 # First version. Here to preserve backwards compatibility
@@ -21,11 +20,11 @@ let
];
in
{
fetchDeps = lib.makeOverridable (
fetchPnpmDeps = lib.makeOverridable (
{
hash ? "",
pname,
pnpm ? pnpm',
pnpm ? pnpmLatest,
pnpmWorkspaces ? [ ],
prePnpmInstall ? "",
pnpmInstallFlags ? [ ],
@@ -50,15 +49,15 @@ in
in
# pnpmWorkspace was deprecated, so throw if it's used.
assert (lib.throwIf (args ? pnpmWorkspace)
"pnpm.fetchDeps: `pnpmWorkspace` is no longer supported, please migrate to `pnpmWorkspaces`."
"fetchPnpmDeps: `pnpmWorkspace` is no longer supported, please migrate to `pnpmWorkspaces`."
) true;
assert (lib.throwIf (fetcherVersion == null)
"pnpm.fetchDeps: `fetcherVersion` is not set, see https://nixos.org/manual/nixpkgs/stable/#javascript-pnpm-fetcherVersion."
"fetchPnpmDeps: `fetcherVersion` is not set, see https://nixos.org/manual/nixpkgs/stable/#javascript-pnpm-fetcherVersion."
) true;
assert (lib.throwIf (!(builtins.elem fetcherVersion supportedFetcherVersions))
"pnpm.fetchDeps `fetcherVersion` is not set to a supported value (${lib.concatStringsSep ", " (map toString supportedFetcherVersions)}), see https://nixos.org/manual/nixpkgs/stable/#javascript-pnpm-fetcherVersion."
"fetchPnpmDeps `fetcherVersion` is not set to a supported value (${lib.concatStringsSep ", " (map toString supportedFetcherVersions)}), see https://nixos.org/manual/nixpkgs/stable/#javascript-pnpm-fetcherVersion."
) true;
stdenvNoCC.mkDerivation (
@@ -72,12 +71,14 @@ in
cacert
jq
moreutils
args.pnpm or pnpm'
pnpm # from args
yq
zstd
];
]
++ args.nativeBuildInputs or [ ];
impureEnvVars = lib.fetchers.proxyImpureEnvVars ++ [ "NIX_NPM_REGISTRY" ];
impureEnvVars =
lib.fetchers.proxyImpureEnvVars ++ [ "NIX_NPM_REGISTRY" ] ++ args.impureEnvVars or [ ];
installPhase = ''
runHook preInstall
@@ -123,7 +124,7 @@ in
--registry="$NIX_NPM_REGISTRY" \
--frozen-lockfile
# Store newer fetcherVersion in case pnpm.configHook also needs it
# Store newer fetcherVersion in case pnpmConfigHook also needs it
if [[ ${toString fetcherVersion} -gt 1 ]]; then
echo ${toString fetcherVersion} > $out/.fetcher-version
fi
@@ -173,10 +174,10 @@ in
runHook postFixup
'';
passthru = {
passthru = args.passthru or { } // {
inherit fetcherVersion;
serve = callPackage ./serve.nix {
pnpm = args.pnpm or pnpm';
inherit pnpm; # from args
pnpmDeps = finalAttrs.finalPackage;
};
};
@@ -190,10 +191,9 @@ in
)
);
configHook = makeSetupHook {
pnpmConfigHook = makeSetupHook {
name = "pnpm-config-hook";
propagatedBuildInputs = [
pnpm
zstd
];
substitutions = {
@@ -12,6 +12,13 @@ pnpmConfigHook() {
exit 1
fi
if ! command -v "pnpm" &> /dev/null; then
echo "Error: 'pnpm' binary not found in PATH. Consider adding 'pkgs.pnpm' to 'nativeBuildInputs'." >&2
exit 1
fi
echo "Found 'pnpm' with version '$(pnpm --version)'"
fetcherVersion=$(cat "${pnpmDeps}/.fetcher-version" || echo 1)
echo "Using fetcherVersion: $fetcherVersion"
+11 -3
View File
@@ -11,6 +11,8 @@
openssl,
pkg-config,
pnpm_10,
fetchPnpmDeps,
pnpmConfigHook,
rustc,
stdenv,
xdg-utils,
@@ -73,8 +75,13 @@ let
hash = cargoHash;
};
pnpmDeps = pnpm_10.fetchDeps {
inherit src pname version;
pnpmDeps = fetchPnpmDeps {
inherit
src
pname
version
;
pnpm = pnpm_10;
fetcherVersion = 2;
hash = pnpmHash;
};
@@ -83,7 +90,8 @@ let
binaryen
cargo
nodejs
pnpm_10.configHook
pnpmConfigHook
pnpm_10
rustc
rustc.llvmPackages.lld
rustPlatform.cargoSetupHook
+6 -3
View File
@@ -5,6 +5,8 @@
cargo-tauri,
nodejs,
pnpm_8,
fetchPnpmDeps,
pnpmConfigHook,
pkg-config,
wrapGAppsHook3,
openssl,
@@ -12,7 +14,6 @@
glib-networking,
nix-update-script,
}:
rustPlatform.buildRustPackage (finalAttrs: {
pname = "aonsoku";
version = "0.9.1";
@@ -25,8 +26,9 @@ rustPlatform.buildRustPackage (finalAttrs: {
};
# lockfileVersion: '6.0' need old pnpm
pnpmDeps = pnpm_8.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
pnpm = pnpm_8;
fetcherVersion = 1;
hash = "sha256-h1rcM+H2c0lk7bpGeQT5ue9bQIggrCFHkj4o7KxnH08=";
};
@@ -40,7 +42,8 @@ rustPlatform.buildRustPackage (finalAttrs: {
nativeBuildInputs = [
nodejs
pnpm_8.configHook
pnpmConfigHook
pnpm_8
cargo-tauri.hook
pkg-config
wrapGAppsHook3
+5 -2
View File
@@ -2,6 +2,8 @@
buildGoModule,
lib,
fetchFromGitHub,
fetchPnpmDeps,
pnpmConfigHook,
pnpm,
nodejs,
fetchpatch,
@@ -25,7 +27,7 @@ buildGoModule rec {
sourceRoot = "${src.name}/ui";
pnpmDeps = pnpm.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit src version pname;
sourceRoot = "${src.name}/ui";
fetcherVersion = 1;
@@ -33,7 +35,8 @@ buildGoModule rec {
};
nativeBuildInputs = [
pnpm.configHook
pnpmConfigHook
pnpm
nodejs
];
+6 -2
View File
@@ -4,6 +4,8 @@
fetchFromGitHub,
nodejs,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
installShellFiles,
versionCheckHook,
stdenv,
@@ -28,11 +30,13 @@ let
nativeBuildInputs = [
nodejs
pnpm_9.configHook
pnpmConfigHook
pnpm_9
];
pnpmDeps = pnpm_9.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
pnpm = pnpm_9;
fetcherVersion = 1;
hash = "sha256-QIfadS2gNPtH006O86EndY/Hx2ml2FoKfUXJF5qoluw=";
};
@@ -3,10 +3,11 @@
stdenv,
fetchFromGitHub,
pnpm_10,
fetchPnpmDeps,
pnpmConfigHook,
nodejs,
nix-update-script,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "astro-language-server";
version = "2.16.2";
@@ -25,7 +26,7 @@ stdenv.mkDerivation (finalAttrs: {
pnpm approve-builds @emmetio/css-parser
'';
pnpmDeps = pnpm_10.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs)
pname
version
@@ -33,13 +34,15 @@ stdenv.mkDerivation (finalAttrs: {
pnpmWorkspaces
prePnpmInstall
;
pnpm = pnpm_10;
fetcherVersion = 2;
hash = "sha256-M2Xef5yTEQCLPzzx7WGQYplTrND+DPMy1hyEuahK+kM=";
};
nativeBuildInputs = [
nodejs
pnpm_10.configHook
pnpmConfigHook
pnpm_10
];
buildInputs = [ nodejs ];
+5 -2
View File
@@ -9,6 +9,8 @@
cargo-tauri,
nodejs,
pkg-config,
fetchPnpmDeps,
pnpmConfigHook,
pnpm,
alsa-lib,
@@ -32,7 +34,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
cargoRoot = "./.";
cargoHash = "sha256-T3cPvwph71lpqlGcugAO4Ua8Y5TNZSySbQatxcvoT4E=";
pnpmDeps = pnpm.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
fetcherVersion = 2;
hash = "sha256-XqKGAx2Q9cWO1oG4mP1cKM2Y9Pib5haFYEaq0PAfAdQ=";
@@ -40,7 +42,8 @@ rustPlatform.buildRustPackage (finalAttrs: {
nativeBuildInputs = [
cargo-tauri.hook
pnpm.configHook
pnpmConfigHook
pnpm
rustPlatform.bindgenHook
nodejs
+6 -2
View File
@@ -7,6 +7,8 @@
nix-update-script,
nodejs,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
typescript,
versionCheckHook,
}:
@@ -27,19 +29,21 @@ let
nativeBuildInputs = [
nodejs
pnpm_9.configHook
pnpmConfigHook
pnpm_9
typescript
];
sourceRoot = "${src.name}/web";
pnpmDeps = pnpm_9.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (autobrr-web)
pname
version
src
sourceRoot
;
pnpm = pnpm_9;
fetcherVersion = 1;
hash = "sha256-LOY8fLGsX966MyH4w+pa9tm/5HS6LnGwd51cj8TG6Mk=";
};
+6 -2
View File
@@ -3,6 +3,8 @@
stdenv,
nodejs,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
fetchFromGitHub,
callPackage,
nix-update-script,
@@ -20,11 +22,13 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [
nodejs
pnpm_9.configHook
pnpmConfigHook
pnpm_9
];
pnpmDeps = pnpm_9.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
pnpm = pnpm_9;
fetcherVersion = 1;
hash = "sha256-xPG67b54h+KmDrCgMmTVVVnBah9L6rgjh+EWnEzzI0w=";
};
+6 -2
View File
@@ -7,6 +7,8 @@
libredirect,
nodejs,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
restic,
stdenv,
util-linux,
@@ -30,11 +32,13 @@ let
nativeBuildInputs = [
nodejs
pnpm_9.configHook
pnpmConfigHook
pnpm_9
];
pnpmDeps = pnpm_9.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
pnpm = pnpm_9;
fetcherVersion = 1;
hash = "sha256-vJgsU0OXyAKjUJsPOyIY8o3zfNW1BUZ5IL814wmJr3o=";
};
@@ -3,12 +3,13 @@
stdenvNoCC,
fetchFromGitHub,
pnpm_10,
fetchPnpmDeps,
pnpmConfigHook,
nodejs,
makeBinaryWrapper,
shellcheck,
versionCheckHook,
}:
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "bash-language-server";
version = "5.6.0";
@@ -21,20 +22,22 @@ stdenvNoCC.mkDerivation (finalAttrs: {
};
pnpmWorkspaces = [ "bash-language-server" ];
pnpmDeps = pnpm_10.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs)
pname
version
src
pnpmWorkspaces
;
pnpm = pnpm_10;
fetcherVersion = 3;
hash = "sha256-6i+1V3ZkjiJ/IXDun3JfwmfDOiemxCmAXMzS/rGT6ZU=";
};
nativeBuildInputs = [
nodejs
pnpm_10.configHook
pnpmConfigHook
pnpm_10
makeBinaryWrapper
versionCheckHook
];
+6 -2
View File
@@ -5,6 +5,8 @@
srcOnly,
python3,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
fetchFromGitHub,
nodejs,
vips,
@@ -38,7 +40,8 @@ stdenv.mkDerivation (finalAttrs: {
nodejs
pythonEnv
pkg-config
pnpm_9.configHook
pnpmConfigHook
pnpm_9
removeReferencesTo
]
++ lib.optionals stdenv.hostPlatform.isDarwin [
@@ -48,13 +51,14 @@ stdenv.mkDerivation (finalAttrs: {
# Required for `sharp` NPM dependency
buildInputs = [ vips ];
pnpmDeps = pnpm_9.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs)
pname
version
src
sourceRoot
;
pnpm = pnpm_9;
fetcherVersion = 2;
hash = "sha256-4qKWkINpUHzatiMa7ZNYp1NauU2641W0jHDjmRL9ipI=";
};
+6 -6
View File
@@ -3,14 +3,13 @@
stdenv,
fetchFromGitHub,
nodejs,
pnpm_10,
fetchPnpmDeps,
pnpmConfigHook,
pnpm,
npmHooks,
versionCheckHook,
nix-update-script,
}:
let
pnpm = pnpm_10;
in
stdenv.mkDerivation (finalAttrs: {
pname = "bumpp";
version = "10.3.2";
@@ -22,7 +21,7 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-1hGVLPogdeyWh/B2Yxfo/9YbJpFYl8ATh+QCa2VVyyk=";
};
pnpmDeps = pnpm.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
fetcherVersion = 2;
hash = "sha256-y7uHDtoOjsLnNF47r4aWHYXW0ui8shhn1M0cD2FpaCg=";
@@ -30,7 +29,8 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [
nodejs
pnpm.configHook
pnpmConfigHook
pnpm
npmHooks.npmInstallHook
];
+6 -7
View File
@@ -8,15 +8,12 @@
openssl,
pkg-config,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
rustPlatform,
webkitgtk_4_1,
wrapGAppsHook4,
}:
let
pnpm = pnpm_9;
in
stdenv.mkDerivation (finalAttrs: {
pname = "test-app";
inherit (cargo-tauri) version src;
@@ -28,12 +25,13 @@ stdenv.mkDerivation (finalAttrs: {
inherit (cargo-tauri) cargoDeps;
pnpmDeps = pnpm.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs)
pname
version
src
;
pnpm = pnpm_9;
fetcherVersion = 1;
hash = "sha256-gHniZv847JFrmKnTUZcgyWhFl/ovJ5IfKbbM5I21tZc=";
@@ -44,7 +42,8 @@ stdenv.mkDerivation (finalAttrs: {
nodejs
pkg-config
pnpm.configHook
pnpmConfigHook
pnpm_9
rustPlatform.cargoCheckHook
rustPlatform.cargoSetupHook
wrapGAppsHook4
+6 -3
View File
@@ -6,11 +6,12 @@
node-gyp,
nodejs,
pnpm_10,
fetchPnpmDeps,
pnpmConfigHook,
python3,
stdenv,
xcbuild,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "cdxgen";
version = "11.10.0";
@@ -26,7 +27,8 @@ stdenv.mkDerivation (finalAttrs: {
makeWrapper
nodejs
node-gyp # required for sqlite3 bindings
pnpm_10.configHook
pnpmConfigHook
pnpm_10
python3 # required for sqlite3 bindings
]
++ lib.optional stdenv.hostPlatform.isDarwin [
@@ -34,8 +36,9 @@ stdenv.mkDerivation (finalAttrs: {
cctools.libtool
];
pnpmDeps = pnpm_10.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
pnpm = pnpm_10;
fetcherVersion = 2;
hash = "sha256-o5pNgn+ZqaEfsWO97jXkRyPH+0pffR6TBZcF6nApWVg=";
};
+6 -6
View File
@@ -3,13 +3,12 @@
stdenv,
fetchFromGitHub,
nodejs,
pnpm_10,
fetchPnpmDeps,
pnpmConfigHook,
pnpm,
npmHooks,
nix-update-script,
}:
let
pnpm = pnpm_10;
in
stdenv.mkDerivation (finalAttrs: {
pname = "changelogen";
version = "0.6.2";
@@ -21,7 +20,7 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-N6X9Wffl9WumCXvAt4y+vs3ZJY7NheK+O8BObmuIa/g=";
};
pnpmDeps = pnpm.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
fetcherVersion = 2;
hash = "sha256-UKSIfn2iR8Ydk9ViGCgWtspZr1FjTeW49UMwTcL57UA=";
@@ -29,7 +28,8 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [
nodejs
pnpm.configHook
pnpmConfigHook
pnpm
npmHooks.npmInstallHook
];
+11 -4
View File
@@ -16,6 +16,8 @@
nodejs,
pkg-config,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
glib,
kdePackages,
@@ -25,7 +27,6 @@
openssl,
webkitgtk_4_1,
}:
rustPlatform.buildRustPackage {
inherit version src meta;
pname = "${pname}-unwrapped";
@@ -35,8 +36,13 @@ rustPlatform.buildRustPackage {
cargoHash = vendor-hash;
pnpmDeps = pnpm_9.fetchDeps {
inherit pname version src;
pnpmDeps = fetchPnpmDeps {
inherit
pname
version
src
;
pnpm = pnpm_9;
fetcherVersion = 1;
hash = pnpm-hash;
};
@@ -94,7 +100,8 @@ rustPlatform.buildRustPackage {
moreutils
nodejs
pkg-config
pnpm_9.configHook
pnpmConfigHook
pnpm_9
];
buildInputs = [
+11 -6
View File
@@ -6,10 +6,13 @@
makeBinaryWrapper,
nodejs_24,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
versionCheckHook,
}:
let
buildNpmPackage' = buildNpmPackage.override { nodejs = nodejs_24; };
pnpm' = pnpm_9.override { nodejs = nodejs_24; };
in
buildNpmPackage' (finalAttrs: {
pname = "claude-code-router";
@@ -28,8 +31,9 @@ buildNpmPackage' (finalAttrs: {
'';
npmDeps = null;
pnpmDeps = pnpm_9.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname src;
pnpm = pnpm';
fetcherVersion = 2;
hash = "sha256-BLPGTbDvvI40kuXfE/p3+s9hkE0reXr7OJA6UGXN4ys=";
};
@@ -37,10 +41,10 @@ buildNpmPackage' (finalAttrs: {
nativeBuildInputs = [
esbuild
makeBinaryWrapper
pnpm_9.configHook
pnpm'
];
npmConfigHook = pnpm_9.configHook;
npmConfigHook = pnpmConfigHook;
buildPhase = ''
runHook preBuild
@@ -76,17 +80,18 @@ buildNpmPackage' (finalAttrs: {
sourceRoot = "${finalAttrs'.src.name}/ui";
npmDeps = null;
pnpmDeps = pnpm_9.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs') pname src sourceRoot;
pnpm = pnpm';
fetcherVersion = 2;
hash = "sha256-ZjYLUec9EADQmKfju8hMbq0y4f1TDVwjbe3yw8Gh4Ac=";
};
nativeBuildInputs = [
pnpm_9.configHook
pnpm'
];
npmConfigHook = pnpm_9.configHook;
npmConfigHook = pnpmConfigHook;
installPhase = ''
runHook preInstall
+6 -2
View File
@@ -3,6 +3,8 @@
stdenv,
nodejs,
pnpm_8,
fetchPnpmDeps,
pnpmConfigHook,
fetchFromGitHub,
npmHooks,
}:
@@ -17,13 +19,14 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-VZRHpy0OTmoQyOEa0vIJl/VkV52r0HEtTzY1fjr6yQ0=";
};
pnpmDeps = pnpm_8.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs)
pname
version
src
pnpmWorkspaces
;
pnpm = pnpm_8;
fetcherVersion = 2;
hash = "sha256-wQ9dcqY7BVXc7wpsHlYNpc7utL1+MkdTCu77Wh8+QWc=";
};
@@ -32,7 +35,8 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [
nodejs
pnpm_8.configHook
pnpmConfigHook
pnpm_8
];
buildPhase = ''
+6 -6
View File
@@ -6,11 +6,9 @@
makeWrapper,
nodejs,
pnpm_8,
fetchPnpmDeps,
pnpmConfigHook,
}:
let
pnpm = pnpm_8;
in
stdenv.mkDerivation (finalAttrs: {
pname = "concurrently";
version = "8.2.2";
@@ -22,13 +20,14 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-VoyVYBOBMguFKnG2VItk1L5BbF72nO7bYJpb7adqICs=";
};
pnpmDeps = pnpm.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs)
pname
version
src
patches
;
pnpm = pnpm_8;
fetcherVersion = 1;
hash = "sha256-F1teWIABkK0mqZcK3RdGNKmexI/C59QWSrrD1jYbHt0=";
};
@@ -44,7 +43,8 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [
makeWrapper
nodejs
pnpm.configHook
pnpmConfigHook
pnpm_8
];
buildPhase = ''
@@ -3,6 +3,8 @@
stdenv,
fetchFromGitHub,
nodejs,
fetchPnpmDeps,
pnpmConfigHook,
pnpm,
makeBinaryWrapper,
versionCheckHook,
@@ -20,7 +22,7 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-Pgx5gM4SdSL6WCkStByA7AP2O96MjAjyeMOI+Lo2mt0=";
};
pnpmDeps = pnpm.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
fetcherVersion = 2;
hash = "sha256-ZfG3F0J1hIhZlF2OadhVdbxhQrFcMYDG9gEXR04DgEI=";
@@ -28,7 +30,8 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [
nodejs
pnpm.configHook
pnpmConfigHook
pnpm
makeBinaryWrapper
];
+6 -3
View File
@@ -3,11 +3,12 @@
stdenv,
nodejs,
pnpm_10,
fetchPnpmDeps,
pnpmConfigHook,
fetchFromGitHub,
gitMinimal,
nix-update-script,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "cspell";
version = "9.4.0";
@@ -21,20 +22,22 @@ stdenv.mkDerivation (finalAttrs: {
pnpmWorkspaces = [ "cspell..." ];
pnpmDeps = pnpm_10.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs)
pname
version
src
pnpmWorkspaces
;
pnpm = pnpm_10;
fetcherVersion = 2;
hash = "sha256-GgcqgnrBoWu0paVSyTPfZIsGaPEH+EADBYoiZzlVrs8=";
};
nativeBuildInputs = [
nodejs
pnpm_10.configHook
pnpmConfigHook
pnpm_10
];
buildInputs = [
+11 -3
View File
@@ -1,5 +1,7 @@
{
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
nodejs,
stdenv,
clang,
@@ -25,15 +27,21 @@ let
web = stdenv.mkDerivation {
inherit pname version src;
pnpmDeps = pnpm_9.fetchDeps {
inherit pname version src;
pnpmDeps = fetchPnpmDeps {
inherit
pname
version
src
;
pnpm = pnpm_9;
fetcherVersion = 1;
hash = "sha256-+yLpSbDzr1OV/bmUUg6drOvK1ok3cBd+RRV7Qrrlp+Q=";
};
nativeBuildInputs = [
nodejs
pnpm_9.configHook
pnpmConfigHook
pnpm_9
];
buildPhase = ''
@@ -5,6 +5,8 @@
cargo-tauri,
nodejs,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
pkg-config,
wrapGAppsHook3,
desktop-file-utils,
@@ -23,7 +25,6 @@
fontconfig,
nix-update-script,
}:
rustPlatform.buildRustPackage (finalAttrs: {
pname = "deadlock-mod-manager";
version = "0.11.1";
@@ -44,7 +45,8 @@ rustPlatform.buildRustPackage (finalAttrs: {
rustPlatform.cargoSetupHook
cargo-tauri.hook
nodejs
pnpm_9.configHook
pnpmConfigHook
pnpm_9
pkg-config
wrapGAppsHook3
];
@@ -68,12 +70,13 @@ rustPlatform.buildRustPackage (finalAttrs: {
];
pnpmRoot = ".";
pnpmDeps = pnpm_9.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs)
pname
version
src
;
pnpm = pnpm_9;
fetcherVersion = 2;
sourceRoot = "source";
hash = "sha256-MCzRZt+l2wHETOxzSatPnz5G48HjjGrOj3BVP+S7/Ss=";
@@ -10,6 +10,8 @@
nodejs,
pkg-config,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
python3,
rustPlatform,
stdenv,
@@ -34,7 +36,6 @@ let
};
};
electron = electron_37;
pnpm = pnpm_9;
in
stdenv.mkDerivation (finalAttrs: {
pname = "deltachat-desktop";
@@ -56,8 +57,9 @@ stdenv.mkDerivation (finalAttrs: {
})
];
pnpmDeps = pnpm.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
pnpm = pnpm_9;
fetcherVersion = 2;
hash = "sha256-4BAcCzPZbCjUfHTnJ98TzcfI5UnfMmGdbdvCFaQNNsk=";
};
@@ -67,7 +69,8 @@ stdenv.mkDerivation (finalAttrs: {
makeWrapper
nodejs
pkg-config
pnpm.configHook
pnpmConfigHook
pnpm_9
python3
]
++ lib.optionals stdenv.hostPlatform.isLinux [
+6 -2
View File
@@ -15,6 +15,8 @@
pkg-config,
yq-go,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
webkitgtk_4_1,
cargo-tauri,
desktop-file-utils,
@@ -52,8 +54,9 @@ rustPlatform.buildRustPackage (finalAttrs: {
cargoHash = "sha256-9zH0Coiyoz6NK2go2XVL5xYaCrXzrOMKaK+3pDXqrGs=";
pnpmDeps = pnpm_9.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
pnpm = pnpm_9;
fetcherVersion = 1;
hash = "sha256-SO/9GkjNP+7IEeULCyWAp32RYIxyzgmbc8YZiTCTjF8=";
};
@@ -72,7 +75,8 @@ rustPlatform.buildRustPackage (finalAttrs: {
];
nativeBuildInputs = [
pnpm_9.configHook
pnpmConfigHook
pnpm_9
cargo-tauri.hook
nodejs
pkg-config
+8 -5
View File
@@ -10,6 +10,8 @@
makeWrapper,
nodejs_20,
pnpm_10,
fetchPnpmDeps,
pnpmConfigHook,
electron,
atk,
atkmm,
@@ -31,6 +33,7 @@
}:
let
pnpm' = pnpm_10.override { nodejs = nodejs_20; };
eSearch-OCR-ch = fetchzip {
url = "https://github.com/xushengfeng/eSearch-OCR/releases/download/4.0.0/ch.zip";
hash = "sha256-0NCXuy8k9/AdpK4ie49S8032u37gNhX6Jc6bOGufrV4=";
@@ -60,19 +63,19 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-K4GFLUeq/IbJC3FZBgvKnZq7JrXkqe6eVGsUxxlpWF0=";
};
pnpmDeps = pnpm_10.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
nativeBuildInputs = [ gitMinimal ];
pnpm = pnpm';
fetcherVersion = 2;
prePnpmInstall = ''
export PATH=$PATH:${gitMinimal}/bin
'';
hash = "sha256-wPwsFY7wvbE1LW5PMwMZKejELtqmdsYO2RVrEuOzdcg=";
};
nativeBuildInputs = [
autoPatchelfHook
gobject-introspection
pnpm_10.configHook
pnpmConfigHook
pnpm'
makeWrapper
nodejs_20
];
@@ -3,10 +3,11 @@
stdenvNoCC,
nodejs,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
fetchFromGitHub,
nix-update-script,
}:
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "emmet-language-server";
version = "2.8.0";
@@ -18,15 +19,17 @@ stdenvNoCC.mkDerivation (finalAttrs: {
hash = "sha256-EY/xfrf6sGnZPbkbf9msauOoZ0h0EjLSwQC0aiS/Kco=";
};
pnpmDeps = pnpm_9.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
pnpm = pnpm_9;
fetcherVersion = 1;
hash = "sha256-sMOC5MQmJKwXZoUZnOmBy2I83SNMdrPc6WQKmeVGiCc=";
};
nativeBuildInputs = [
nodejs
pnpm_9.configHook
pnpmConfigHook
pnpm_9
];
buildPhase = ''
+11 -4
View File
@@ -5,6 +5,8 @@
fetchFromGitHub,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
nodejs,
cargo-tauri_1,
pkg-config,
@@ -16,7 +18,6 @@
# webkitgtk_4_0,
gst_all_1,
}:
rustPlatform.buildRustPackage rec {
pname = "en-croissant";
version = "0.11.1";
@@ -28,8 +29,13 @@ rustPlatform.buildRustPackage rec {
hash = "sha256-EiGML3oFCJR4TZkd+FekUrJwCYe/nGdWD9mAtKKtITQ=";
};
pnpmDeps = pnpm_9.fetchDeps {
inherit pname version src;
pnpmDeps = fetchPnpmDeps {
inherit
pname
version
src
;
pnpm = pnpm_9;
fetcherVersion = 1;
hash = "sha256-hvWXSegUWJvwCU5NLb2vqnl+FIWpCLxw96s9NUIgJTI=";
};
@@ -41,7 +47,8 @@ rustPlatform.buildRustPackage rec {
buildAndTestSubdir = cargoRoot;
nativeBuildInputs = [
pnpm_9.configHook
pnpmConfigHook
pnpm_9
nodejs
cargo-tauri_1.hook
pkg-config
+6 -3
View File
@@ -13,6 +13,8 @@
libpulseaudio,
autoPatchelfHook,
pnpm_10,
fetchPnpmDeps,
pnpmConfigHook,
nodejs,
nix-update-script,
withTTS ? true,
@@ -29,20 +31,22 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-wvg06YSQOZvP/NHl3WPfnI9F0+KN0cJ2CBwaZD8Xpfk=";
};
pnpmDeps = pnpm_10.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs)
pname
version
src
patches
;
pnpm = pnpm_10;
fetcherVersion = 1;
hash = "sha256-HQxQIMbj2xsxD1jwj/itfAW6KHxX81Eu60ouzxQDu44=";
};
nativeBuildInputs = [
nodejs
pnpm_10.configHook
pnpmConfigHook
pnpm_10
# XXX: Equibop *does not* ship venmic as a prebuilt node module. The package
# seems to build with or without this hook, but I (NotAShelf) don't have the
# time to test the consequences of removing this hook. Please open a pull
@@ -129,7 +133,6 @@ stdenv.mkDerivation (finalAttrs: {
};
passthru = {
inherit (finalAttrs) pnpmDeps;
updateScript = nix-update-script { };
};
+6 -2
View File
@@ -4,6 +4,8 @@
lib,
nodejs,
pnpm_10,
fetchPnpmDeps,
pnpmConfigHook,
stdenv,
nix-update-script,
discord,
@@ -27,8 +29,9 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-12P62UAt9eiQoGCXQGYQx0cPmankniltGqPTsys9Ves=";
};
pnpmDeps = pnpm_10.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
pnpm = pnpm_10;
fetcherVersion = 1;
hash = "sha256-gl/4+AN3+YOl3uCYholPU8jo0IayazlY987fwhtHCuk=";
};
@@ -36,7 +39,8 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [
git
nodejs
pnpm_10.configHook
pnpmConfigHook
pnpm_10
];
env = {
+7 -6
View File
@@ -4,13 +4,12 @@
fetchFromGitHub,
nix-update-script,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
makeWrapper,
nodejs,
}:
let
pnpm = pnpm_9;
in
stdenv.mkDerivation (finalAttrs: {
pname = "etherpad-lite";
version = "2.5.1";
@@ -29,14 +28,16 @@ stdenv.mkDerivation (finalAttrs: {
./dont-fail-on-plugins-json.patch
];
pnpmDeps = pnpm.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
pnpm = pnpm_9;
fetcherVersion = 1;
hash = "sha256-gajm1yXQPZZ/oB27HwgTEoKLzwMKsHDoo2w+mIOnJrc=";
};
nativeBuildInputs = [
pnpm.configHook
pnpmConfigHook
pnpm_9
makeWrapper
];
@@ -69,7 +70,7 @@ stdenv.mkDerivation (finalAttrs: {
makeWrapper ${lib.getExe nodejs} $out/bin/etherpad-lite \
--inherit-argv0 \
--add-flags "--require tsx/cjs $out/lib/etherpad-lite/node_modules/ep_etherpad-lite/node/server.ts" \
--suffix PATH : "${lib.makeBinPath [ pnpm ]}" \
--suffix PATH : "${lib.makeBinPath [ pnpm_9 ]}" \
--set NODE_PATH "$out/lib/node_modules:$out/lib/etherpad-lite/node_modules/ep_etherpad-lite/node_modules" \
--set-default NODE_ENV production
find $out/lib -xtype l -delete
+6 -6
View File
@@ -5,6 +5,8 @@
nix-update-script,
pnpm_10,
fetchPnpmDeps,
pnpmConfigHook,
nodejs,
rustPlatform,
@@ -16,9 +18,6 @@
openssl,
}:
let
pnpm = pnpm_10;
in
rustPlatform.buildRustPackage (finalAttrs: {
pname = "fedistar";
version = "1.11.3";
@@ -35,8 +34,9 @@ rustPlatform.buildRustPackage (finalAttrs: {
cargoHash = "sha256-ZJgyrFDtzAH3XqDdnJ27Yn+WsTMrZR2+lnkZ6bw6hzg=";
pnpmDeps = pnpm.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
pnpm = pnpm_10;
fetcherVersion = 1;
hash = "sha256-xXVsjAXmrsOp+mXrYAxSKz4vX5JApLZ+Rh6hrYlnJDI=";
};
@@ -44,8 +44,8 @@ rustPlatform.buildRustPackage (finalAttrs: {
nativeBuildInputs = [
cargo-tauri.hook
pnpm.configHook
pnpm
pnpmConfigHook
pnpm_10
nodejs
pkg-config
+10 -7
View File
@@ -5,7 +5,9 @@
fetchFromGitHub,
electron_38,
dart-sass,
pnpm_10,
fetchPnpmDeps,
pnpmConfigHook,
pnpm,
darwin,
copyDesktopItems,
makeDesktopItem,
@@ -22,17 +24,16 @@ let
};
electron = electron_38;
pnpm = pnpm_10;
in
buildNpmPackage {
inherit pname version;
inherit src;
npmConfigHook = pnpm.configHook;
npmConfigHook = pnpmConfigHook;
npmDeps = null;
pnpmDeps = pnpm.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit
pname
version
@@ -44,9 +45,11 @@ buildNpmPackage {
env.ELECTRON_SKIP_BINARY_DOWNLOAD = "1";
nativeBuildInputs =
lib.optionals (stdenv.hostPlatform.isLinux) [ copyDesktopItems ]
++ lib.optionals stdenv.hostPlatform.isDarwin [ darwin.autoSignDarwinBinariesHook ];
nativeBuildInputs = [
pnpm
]
++ lib.optionals (stdenv.hostPlatform.isLinux) [ copyDesktopItems ]
++ lib.optionals stdenv.hostPlatform.isDarwin [ darwin.autoSignDarwinBinariesHook ];
postPatch = ''
# release/app dependencies are installed on preConfigure
+6 -4
View File
@@ -4,14 +4,14 @@
buildGoModule,
buildNpmPackage,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
nix-update-script,
nixosTests,
}:
let
version = "2.44.1";
pnpm = pnpm_9;
src = fetchFromGitHub {
owner = "filebrowser";
repo = "filebrowser";
@@ -25,16 +25,18 @@ let
sourceRoot = "${src.name}/frontend";
npmConfigHook = pnpm.configHook;
nativeBuildInputs = [ pnpm_9 ];
npmConfigHook = pnpmConfigHook;
npmDeps = pnpmDeps;
pnpmDeps = pnpm.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit
pname
version
src
sourceRoot
;
pnpm = pnpm_9;
fetcherVersion = 2;
hash = "sha256-3n44BGJLdQR6uBSF09oyUzJm35/S3/ZEyZh4Wxqlfiw=";
};
@@ -20,6 +20,8 @@
webkitgtk_4_1,
wrapGAppsHook3,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
nodejs,
makeDesktopItem,
copyDesktopItems,
@@ -37,8 +39,9 @@ let
pname = "firezone-gui-client-frontend";
inherit version src;
pnpmDeps = pnpm_9.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit pname version;
pnpm = pnpm_9;
src = "${src}/rust/gui-client";
fetcherVersion = 1;
hash = "sha256-ttbTYBuUv0vyiYzrFATF4x/zngsRXjuLPfL3qW2HEe4=";
@@ -48,7 +51,8 @@ let
env.GITHUB_SHA = version;
nativeBuildInputs = [
pnpm_9.configHook
pnpmConfigHook
pnpm_9
nodejs
];
+5 -3
View File
@@ -5,13 +5,14 @@
beamPackages,
gitMinimal,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
nodejs,
tailwindcss_3,
esbuild,
mixReleaseName ? "domain", # "domain" "web" or "api"
}:
beamPackages.mixRelease rec {
pname = "firezone-server-${mixReleaseName}";
version = "0-unstable-2025-08-31";
@@ -31,8 +32,9 @@ beamPackages.mixRelease rec {
}
}/elixir";
pnpmDeps = pnpm_9.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit pname version;
pnpm = pnpm_9;
src = "${src}/apps/web/assets";
fetcherVersion = 1;
hash = "sha256-40vtQIBhJNnzdxkAOVAcPN57IuD0IB6LFxGICo68AbQ=";
@@ -60,8 +62,8 @@ beamPackages.mixRelease rec {
'';
nativeBuildInputs = [
pnpmConfigHook
pnpm_9
pnpm_9.configHook
nodejs
];
+11 -4
View File
@@ -4,9 +4,10 @@
fetchFromGitHub,
nixosTests,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
nix-update-script,
}:
buildNpmPackage rec {
pname = "flood";
version = "4.11.0";
@@ -18,11 +19,17 @@ buildNpmPackage rec {
hash = "sha256-RBWDEFhLEZdC7luGFGx3qY0Hk7nM44RZgRyCWXFPh1k=";
};
npmConfigHook = pnpm_9.configHook;
nativeBuildInputs = [ pnpm_9 ];
npmConfigHook = pnpmConfigHook;
npmDeps = pnpmDeps;
dontNpmPrune = true;
pnpmDeps = pnpm_9.fetchDeps {
inherit pname version src;
pnpmDeps = fetchPnpmDeps {
inherit
pname
version
src
;
pnpm = pnpm_9;
fetcherVersion = 1;
hash = "sha256-MnsUTXcLMT0Q2bQ/rRD4FfJx8XP9TLiv1oTHIgnMZCQ=";
};
+11 -3
View File
@@ -7,6 +7,8 @@
makeWrapper,
nodejs,
pnpm_10,
fetchPnpmDeps,
pnpmConfigHook,
stdenv,
}:
stdenv.mkDerivation rec {
@@ -23,13 +25,19 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [
nodejs
pnpm_10.configHook
pnpmConfigHook
pnpm_10
makeWrapper
imagemagick
];
pnpmDeps = pnpm_10.fetchDeps {
inherit pname version src;
pnpmDeps = fetchPnpmDeps {
inherit
pname
version
src
;
pnpm = pnpm_10;
fetcherVersion = 1;
hash = "sha256-6I10NSmTDd/wmL/HfAgLH+G2MDfuPmrTePNDDy08nRA=";
};
+5 -2
View File
@@ -6,6 +6,8 @@
makeWrapper,
gdal,
geos,
fetchPnpmDeps,
pnpmConfigHook,
pnpm,
nodejs,
postgresql,
@@ -62,7 +64,8 @@ python.pkgs.buildPythonApplication rec {
nativeBuildInputs = [
makeWrapper
nodejs
pnpm.configHook
pnpmConfigHook
pnpm
];
dependencies = with python.pkgs; [
@@ -116,7 +119,7 @@ python.pkgs.buildPythonApplication rec {
websockets
];
pnpmDeps = pnpm.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit pname version src;
fetcherVersion = 1;
hash = "sha256-g7YX2fVXGmb3Qq9NNCb294bk4/0khcIZVSskYbE8Mdw=";
+6 -3
View File
@@ -7,6 +7,8 @@
jq,
moreutils,
pnpm_10,
fetchPnpmDeps,
pnpmConfigHook,
nodejs,
cargo-tauri,
pkg-config,
@@ -17,7 +19,6 @@
openssl,
webkitgtk_4_1,
}:
rustPlatform.buildRustPackage (finalAttrs: {
pname = "gale";
version = "1.10.0";
@@ -31,13 +32,14 @@ rustPlatform.buildRustPackage (finalAttrs: {
patches = [ ./fix-frontend-backend-tauri-version-mismatch.patch ];
pnpmDeps = pnpm_10.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs)
pname
version
src
patches
;
pnpm = pnpm_10;
fetcherVersion = 1;
hash = "sha256-ILhAhpY9a50a0KKWs5Y+G3jDyWuySHw8QcOJlYePzmc=";
};
@@ -54,7 +56,8 @@ rustPlatform.buildRustPackage (finalAttrs: {
nativeBuildInputs = [
jq
moreutils
pnpm_10.configHook
pnpmConfigHook
pnpm_10
nodejs
cargo-tauri.hook
pkg-config
+6 -5
View File
@@ -5,11 +5,10 @@
buildGoModule,
nodejs,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
nix-update-script,
}:
let
pnpm = pnpm_9;
in
buildGoModule (finalAttrs: {
pname = "garage-webui";
version = "1.1.0";
@@ -27,11 +26,13 @@ buildGoModule (finalAttrs: {
nativeBuildInputs = [
nodejs
pnpm.configHook
pnpmConfigHook
pnpm_9
];
pnpmDeps = pnpm.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs') pname version src;
pnpm = pnpm_9;
fetcherVersion = 2;
hash = "sha256-8eQhR/fuDFNL8W529Ev7piCaseVaFahgZJQk3AJA3ng=";
};
+7 -5
View File
@@ -17,7 +17,9 @@
nodejs,
openssl,
pkg-config,
pnpm_10,
fetchPnpmDeps,
pnpmConfigHook,
pnpm,
rust,
rustPlatform,
turbo,
@@ -27,7 +29,6 @@
}:
let
pnpm = pnpm_10;
excludeSpec = spec: [
"--exclude"
spec
@@ -65,7 +66,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
cargoHash = "sha256-H8YR+euwMGiGckURAWJIE9fOcu/ddJ6ENcnA1gHD9B8=";
pnpmDeps = pnpm.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
fetcherVersion = 2;
hash = "sha256-I55RNWP6csT08SBIFEyUp9JTC5EzQXjKIPPSxkSpg7Y=";
@@ -80,7 +81,8 @@ rustPlatform.buildRustPackage (finalAttrs: {
moreutils
nodejs
pkg-config
pnpm.configHook
pnpmConfigHook
pnpm
turbo
wrapGAppsHook4
yq # For `tomlq`
@@ -130,7 +132,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
# https://github.com/gitbutlerapp/gitbutler/blob/56b64d778042d0e93fa362f808c35a7f095ab1d1/crates/gitbutler-tauri/inject-git-binaries.sh#L10C10-L10C26
TRIPLE_OVERRIDE = rust.envVars.rustHostPlatformSpec;
# `pnpm`'s `fetchDeps` and `configHook` uses a specific version of pnpm, not upstream's
# `fetchPnpmDeps` and `pnpmConfigHook` use a specific version of pnpm, not upstream's
COREPACK_ENABLE_STRICT = 0;
# We depend on nightly features
+5 -2
View File
@@ -11,6 +11,8 @@
gzip,
nodejs,
openssh,
fetchPnpmDeps,
pnpmConfigHook,
pnpm,
stdenv,
sqliteSupport ? true,
@@ -22,7 +24,7 @@ let
pname = "gitea-frontend";
inherit (gitea) src version;
pnpmDeps = pnpm.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
fetcherVersion = 2;
hash = "sha256-0p7P68BvO3hv0utUbnPpHSpGLlV7F9HHmOITvJAb/ww=";
@@ -30,7 +32,8 @@ let
nativeBuildInputs = [
nodejs
pnpm.configHook
pnpmConfigHook
pnpm
];
buildPhase = ''
+6 -3
View File
@@ -3,6 +3,8 @@
stdenv,
fetchFromGitHub,
pnpm_10,
fetchPnpmDeps,
pnpmConfigHook,
nodejs,
electron,
makeDesktopItem,
@@ -11,7 +13,6 @@
makeWrapper,
nix-update-script,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "gitify";
version = "6.14.1";
@@ -25,14 +26,16 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [
nodejs
pnpm_10.configHook
pnpmConfigHook
pnpm_10
copyDesktopItems
imagemagick
makeWrapper
];
pnpmDeps = pnpm_10.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
pnpm = pnpm_10;
fetcherVersion = 2;
hash = "sha256-LnYwUXwGm/2yx7QrMcPu32oPtRJKnuqysecwwH25QIg=";
};
+7 -3
View File
@@ -3,6 +3,8 @@
stdenv,
fetchFromGitHub,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
nodejs_22,
nix-update-script,
electron,
@@ -14,7 +16,7 @@
}:
let
pnpm' = pnpm_9.override { nodejs = nodejs_22; };
pnpm = pnpm_9.override { nodejs = nodejs_22; };
in
stdenv.mkDerivation (finalAttrs: {
pname = "goofcord";
@@ -28,7 +30,8 @@ stdenv.mkDerivation (finalAttrs: {
};
nativeBuildInputs = [
pnpm'.configHook
pnpmConfigHook
pnpm
nodejs_22
makeShellWrapper
copyDesktopItems
@@ -40,8 +43,9 @@ stdenv.mkDerivation (finalAttrs: {
(lib.getLib stdenv.cc.cc)
];
pnpmDeps = pnpm'.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
inherit pnpm;
fetcherVersion = 1;
hash = "sha256-8dSyU9arSvISc2kDWbg/CP6L4sZjZi/Zv7TZN4ONOjQ=";
};
+6 -2
View File
@@ -8,6 +8,8 @@
nodejs,
pkg-config,
pnpm_10,
fetchPnpmDeps,
pnpmConfigHook,
wails,
webkitgtk_4_1,
makeDesktopItem,
@@ -39,16 +41,18 @@ let
nativeBuildInputs = [
nodejs
pnpm_10.configHook
pnpmConfigHook
pnpm_10
];
pnpmDeps = pnpm_10.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs)
pname
version
src
sourceRoot
;
pnpm = pnpm_10;
fetcherVersion = 2;
hash = "sha256-MvGLIB68itkCGsBIgAI6ak5xa5rFAJfoAwNuISPRw30=";
};
+6 -2
View File
@@ -8,6 +8,8 @@
nodejs,
pkg-config,
pnpm_10,
fetchPnpmDeps,
pnpmConfigHook,
wails,
webkitgtk_4_1,
makeDesktopItem,
@@ -39,16 +41,18 @@ let
nativeBuildInputs = [
nodejs
pnpm_10.configHook
pnpmConfigHook
pnpm_10
];
pnpmDeps = pnpm_10.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs)
pname
version
src
sourceRoot
;
pnpm = pnpm_10;
fetcherVersion = 2;
hash = "sha256-MA0CNF2MTCGvsxvEpRbTFu5Diap4XkIHKnxeROkgwnU=";
};
+6 -2
View File
@@ -5,6 +5,8 @@
fetchFromGitHub,
# Pinned, because our FODs are not guaranteed to be stable between major versions.
pnpm_10,
fetchPnpmDeps,
pnpmConfigHook,
nodejs,
python3,
makeWrapper,
@@ -34,15 +36,17 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-x792VA4PZleqUUgarh59JxJVXrvT95/rINYk8t9i3X0=";
};
pnpmDeps = pnpm_10.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
pnpm = pnpm_10;
fetcherVersion = 1;
hash = "sha256-F8H0eYltIJ0S8AX+2S3cR+v8dvePw09VWToVOLM8qII=";
};
nativeBuildInputs = [
nodejs
pnpm_10.configHook
pnpmConfigHook
pnpm_10
python3
makeWrapper
];
+5 -2
View File
@@ -3,6 +3,8 @@
buildGoModule,
fetchFromGitHub,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
nodejs,
go_1_24,
git,
@@ -35,9 +37,10 @@ buildGoModule {
preBuild = "";
};
pnpmDeps = pnpm_9.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit pname version;
src = "${src}/frontend";
pnpm = pnpm_9;
fetcherVersion = 1;
hash = "sha256-gHx4HydL33i1SqzG1PChnlWdlO5NFa5F/R5Yq3mS4ng=";
};
@@ -57,8 +60,8 @@ buildGoModule {
'';
nativeBuildInputs = [
pnpmConfigHook
pnpm_9
pnpm_9.configHook
nodejs
];
@@ -4,6 +4,8 @@
makeBinaryWrapper,
nodejs,
pnpm_10,
fetchPnpmDeps,
pnpmConfigHook,
python3,
stdenv,
unixtools,
@@ -38,12 +40,13 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-T2bAN8ucCjcWhXScTI8YxtfrwK9NEfHGHIE8xJgD6Bs=";
};
pnpmDeps = pnpm_10.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs)
pname
version
src
;
pnpm = pnpm_10;
fetcherVersion = 1;
hash = "sha256-42dT1za9M4DowBh27UYh2QDyoVoNWA/L/9lyIY5OVwM=";
};
@@ -51,7 +54,8 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [
makeBinaryWrapper
nodejs
pnpm_10.configHook
pnpmConfigHook
pnpm_10
]
++ lib.optionals stdenv.hostPlatform.isDarwin [ cctools ];
+6 -4
View File
@@ -3,12 +3,13 @@
stdenvNoCC,
fetchFromGitHub,
pnpm_10,
fetchPnpmDeps,
pnpmConfigHook,
nodejs,
dart-sass,
nix-update-script,
nixosTests,
}:
stdenvNoCC.mkDerivation rec {
pname = "homer";
version = "25.11.1";
@@ -19,13 +20,13 @@ stdenvNoCC.mkDerivation rec {
hash = "sha256-6shFVaCtPQeZCeeswAQHgcXOwVwABNa3ljsdUG63QGo=";
};
pnpmDeps = pnpm_10.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit
pname
version
src
;
pnpm = pnpm_10;
fetcherVersion = 2;
hash = "sha256-TtazfRhcniA1H//C95AMH8/Pw+Rbtinlfg7dDAmSk1w=";
};
@@ -33,7 +34,8 @@ stdenvNoCC.mkDerivation rec {
nativeBuildInputs = [
nodejs
dart-sass
pnpm_10.configHook
pnpmConfigHook
pnpm_10
];
buildPhase = ''
+3 -6
View File
@@ -6,11 +6,8 @@
makeWrapper,
stdenv,
versionCheckHook,
pnpmConfigHook,
}:
let
inherit (immich) pnpm;
in
stdenv.mkDerivation rec {
pname = "immich-cli";
version = "2.2.103";
@@ -26,8 +23,8 @@ stdenv.mkDerivation rec {
jq
makeWrapper
nodejs
pnpm
pnpm.configHook
pnpmConfigHook
immich.pnpm
];
buildPhase = ''
+13 -6
View File
@@ -4,8 +4,9 @@
fetchFromGitHub,
nodejs,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
}:
buildGoModule rec {
pname = "immich-kiosk";
version = "0.28.1";
@@ -23,8 +24,13 @@ buildGoModule rec {
'';
vendorHash = "sha256-5y//CdHgQjNJayNI/jzdD5WPa4XlIxMonqkPc/kJp8c=";
pnpmDeps = pnpm_9.fetchDeps {
inherit pname version src;
pnpmDeps = fetchPnpmDeps {
inherit
pname
version
src
;
pnpm = pnpm_9;
sourceRoot = "${src.name}/frontend";
hash = "sha256-FThVaNUUE3QCbq0iPRCet4SnlHCCQaw3N5PThKSM1ek=";
fetcherVersion = 2;
@@ -35,13 +41,14 @@ buildGoModule rec {
nativeBuildInputs = [
nodejs
pnpm_9.configHook
pnpmConfigHook
pnpm_9
];
# Generate templ templates during vendor hash calculation
# Don't run pnpm in this phase - filter out pnpm.configHook
# Don't run pnpm in this phase - filter out pnpmConfigHook
overrideModAttrs = oldAttrs: {
nativeBuildInputs = builtins.filter (drv: drv != pnpm_9.configHook) (
nativeBuildInputs = builtins.filter (drv: drv != pnpmConfigHook) (
oldAttrs.nativeBuildInputs or [ ]
);
preBuild = ''
+9 -7
View File
@@ -2,6 +2,8 @@
lib,
stdenv,
fetchFromGitHub,
fetchPnpmDeps,
pnpmConfigHook,
pnpm_10,
python3,
nodejs,
@@ -122,9 +124,9 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-K/E5bQraTlvNx1Cd0bKyY6ZhesafGccqVZ9Mu6Q0pZ0=";
};
pnpmDeps = pnpm.fetchDeps {
pname = "immich";
inherit (finalAttrs) version src;
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
inherit pnpm;
fetcherVersion = 2;
hash = "sha256-i0JHKjsQcdDUrDLK0hJGOvVRh/aOyvms/k+6WEPbyh8=";
};
@@ -139,8 +141,8 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [
nodejs
pkg-config
pnpm_10
pnpm_10.configHook
pnpmConfigHook
pnpm
python3
makeWrapper
node-gyp # for building node_modules/sharp from source
@@ -239,8 +241,8 @@ stdenv.mkDerivation (finalAttrs: {
binaryen
extism-js
nodejs
pnpmConfigHook
pnpm
pnpm.configHook
];
buildPhase = ''
@@ -268,8 +270,8 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [
nodejs
pnpmConfigHook
pnpm
pnpm.configHook
];
buildPhase = ''
+11 -3
View File
@@ -4,6 +4,8 @@
fetchFromGitHub,
nodejs,
pnpm_8,
fetchPnpmDeps,
pnpmConfigHook,
}:
stdenv.mkDerivation rec {
pname = "it-tools";
@@ -18,11 +20,17 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [
nodejs
pnpm_8.configHook
pnpmConfigHook
pnpm_8
];
pnpmDeps = pnpm_8.fetchDeps {
inherit pname version src;
pnpmDeps = fetchPnpmDeps {
inherit
pname
version
src
;
pnpm = pnpm_8;
fetcherVersion = 1;
hash = "sha256-m1eXBE5rakcq8NGnPC9clAAvNJQrN5RuSQ94zfgGZxw=";
};
+6 -2
View File
@@ -1,6 +1,8 @@
{
lib,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
fetchFromGitHub,
stdenv,
makeWrapper,
@@ -27,8 +29,9 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-a3lhQ33Zb+vSu1sQjuqO3bITiQEIOVyFTecmJAhJROU=";
};
pnpmDeps = pnpm.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
inherit pnpm;
fetcherVersion = 1;
hash = "sha256-3df72m/ARgfelBLE6Bhi8+ThHytowVOBL2Ndk7auDgg=";
};
@@ -40,7 +43,8 @@ stdenv.mkDerivation (finalAttrs: {
python3Packages.distutils
nodejs
makeWrapper
pnpm.configHook
pnpmConfigHook
pnpm
];
preBuild = ''
+6 -5
View File
@@ -13,10 +13,9 @@
srcOnly,
removeReferencesTo,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
}:
let
pnpm = pnpm_9;
in
stdenv.mkDerivation (finalAttrs: {
pname = "karakeep";
version = "0.29.1";
@@ -44,15 +43,17 @@ stdenv.mkDerivation (finalAttrs: {
python3
nodejs
node-gyp
pnpm.configHook
pnpmConfigHook
pnpm_9
];
buildInputs = [
gnutar
];
pnpmDeps = pnpm.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version;
pnpm = pnpm_9;
# We need to pass the patched source code, so pnpm sees the patched version
src = stdenv.mkDerivation {
+5 -2
View File
@@ -2,6 +2,8 @@
lib,
stdenv,
fetchFromGitHub,
fetchPnpmDeps,
pnpmConfigHook,
pnpm,
nodejs,
electron,
@@ -25,7 +27,8 @@ stdenv.mkDerivation (finalAttrs: {
};
nativeBuildInputs = [
pnpm.configHook
pnpmConfigHook
pnpm
nodejs
# we use a script wrapper here for environment variable expansion at runtime
# https://github.com/NixOS/nixpkgs/issues/172583
@@ -42,7 +45,7 @@ stdenv.mkDerivation (finalAttrs: {
(lib.getLib stdenv.cc.cc)
];
pnpmDeps = pnpm.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
fetcherVersion = 1;
hash = "sha256-D+GPJn3qpIax+YNcLqLX71bobDdfQXyGiJ6b5PiJqC4=";
+5 -2
View File
@@ -5,6 +5,8 @@
nix-update-script,
nodejs,
lib,
fetchPnpmDeps,
pnpmConfigHook,
pnpm,
buf,
cacert,
@@ -58,7 +60,7 @@ let
memos-web = stdenvNoCC.mkDerivation (finalAttrs: {
pname = "memos-web";
inherit version src;
pnpmDeps = pnpm.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
sourceRoot = "${finalAttrs.src.name}/web";
fetcherVersion = 1;
@@ -67,7 +69,8 @@ let
pnpmRoot = "web";
nativeBuildInputs = [
nodejs
pnpm.configHook
pnpmConfigHook
pnpm
];
preBuild = ''
cp -r {${memos-protobuf-gen},.}/web/src/types/proto
+6 -2
View File
@@ -4,6 +4,8 @@
nix-update-script,
nodejs,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
stdenv,
}:
stdenv.mkDerivation (finalAttrs: {
@@ -18,12 +20,14 @@ stdenv.mkDerivation (finalAttrs: {
};
nativeBuildInputs = [
pnpm_9.configHook
pnpmConfigHook
pnpm_9
nodejs
];
pnpmDeps = pnpm_9.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
pnpm = pnpm_9;
fetcherVersion = 1;
hash = "sha256-v+wuYGK0WEgrPNBLuLnoO/uDEk6AqJTlNJZHTpEb4mc=";
};
+5 -2
View File
@@ -3,6 +3,8 @@
stdenv,
fetchFromGitHub,
nodejs,
fetchPnpmDeps,
pnpmConfigHook,
pnpm,
npmHooks,
nix-update-script,
@@ -19,7 +21,7 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-jGzOwonT4nq0nMUBBp4Y7BvwTerHLzkTMss9glM+uP4=";
};
pnpmDeps = pnpm.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
fetcherVersion = 2;
hash = "sha256-oq7jczTfm6CgLAUYftBlAYK6MFELDRfXCFtjsLWV8mU=";
@@ -27,7 +29,8 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [
nodejs
pnpm.configHook
pnpmConfigHook
pnpm
npmHooks.npmInstallHook
];
+6 -4
View File
@@ -6,6 +6,8 @@
gitUpdater,
nodejs,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
makeWrapper,
python3,
bash,
@@ -14,7 +16,6 @@
writeShellScript,
xcbuild,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "misskey";
version = "2025.7.0";
@@ -33,20 +34,22 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [
nodejs
pnpm_9.configHook
pnpmConfigHook
pnpm_9
makeWrapper
python3
]
++ lib.optionals stdenv.hostPlatform.isDarwin [ xcbuild ];
# https://nixos.org/manual/nixpkgs/unstable/#javascript-pnpm
pnpmDeps = pnpm_9.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs)
pname
version
src
patches
;
pnpm = pnpm_9;
fetcherVersion = 2;
hash = "sha256-5yuM56sLDSo4M5PDl3gUZOdSexW1YjfYBR3BJMqNHzU=";
};
@@ -121,7 +124,6 @@ stdenv.mkDerivation (finalAttrs: {
'';
passthru = {
inherit (finalAttrs) pnpmDeps;
tests.misskey = nixosTests.misskey;
updateScript = gitUpdater { };
};
@@ -14,6 +14,8 @@
openssl,
pkg-config,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
replaceVars,
runCommand,
rustPlatform,
@@ -24,7 +26,6 @@
let
gradle = gradle_8.override { java = jdk; };
jdk = jdk11;
pnpm = pnpm_9;
in
rustPlatform.buildRustPackage (finalAttrs: {
@@ -72,8 +73,9 @@ rustPlatform.buildRustPackage (finalAttrs: {
data = ./deps.json;
};
pnpmDeps = pnpm.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
pnpm = pnpm_9;
fetcherVersion = 1;
hash = "sha256-1tDegt8OgG0ZhvNGpkYQR+PuX/xI287OFk4MGAXUKZQ=";
};
@@ -85,7 +87,8 @@ rustPlatform.buildRustPackage (finalAttrs: {
gradle
nodejs
pkg-config
pnpm.configHook
pnpmConfigHook
pnpm_9
]
++ lib.optional stdenv.hostPlatform.isDarwin makeBinaryWrapper;
+6 -2
View File
@@ -10,6 +10,8 @@
moonfire-nvr,
nodejs,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
}:
let
@@ -27,10 +29,12 @@ let
sourceRoot = "${src.name}/ui";
nativeBuildInputs = [
nodejs
pnpm_9.configHook
pnpmConfigHook
pnpm_9
];
pnpmDeps = pnpm_9.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
pnpm = pnpm_9;
sourceRoot = "${finalAttrs.src.name}/ui";
fetcherVersion = 1;
hash = "sha256-7fMhUFlV5lz+A9VG8IdWoc49C2CTdLYQlEgBSBqJvtw=";
+9 -4
View File
@@ -2,6 +2,8 @@
lib,
stdenv,
pnpm_10,
fetchPnpmDeps,
pnpmConfigHook,
nodejs_22,
fetchFromGitHub,
nix-update-script,
@@ -10,6 +12,9 @@
discord-canary,
discord-development,
}:
let
pnpm' = pnpm_10.override { nodejs = nodejs_22; };
in
stdenv.mkDerivation (finalAttrs: {
pname = "moonlight";
version = "1.3.33";
@@ -23,13 +28,13 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [
nodejs_22
pnpm_10.configHook
pnpmConfigHook
pnpm'
];
pnpmDeps = pnpm_10.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
buildInputs = [ nodejs_22 ];
pnpm = pnpm';
fetcherVersion = 2;
hash = "sha256-PRlgwyePFpFdQRcojGDEC4ESZEGTJf1Ad9EFgm8hmKY=";
+6 -3
View File
@@ -5,6 +5,8 @@
fetchFromGitHub,
nodejs,
pnpm_10,
fetchPnpmDeps,
pnpmConfigHook,
python3,
node-gyp,
cctools,
@@ -14,7 +16,6 @@
libpq,
makeWrapper,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "n8n";
version = "1.123.5";
@@ -26,14 +27,16 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-3vXJnLqQz60Sq1A8lLW0x6xAoN3DneFYVsaHAD0nzng=";
};
pnpmDeps = pnpm_10.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
pnpm = pnpm_10;
fetcherVersion = 2;
hash = "sha256-JlW08N9LuwmWqZsXmu4uMAHO0cb8XtOmtER7Bt/Vg8A=";
};
nativeBuildInputs = [
pnpm_10.configHook
pnpmConfigHook
pnpm_10
python3 # required to build sqlite3 bindings
node-gyp # required to build sqlite3 bindings
makeWrapper
+6 -6
View File
@@ -3,14 +3,13 @@
stdenv,
fetchFromGitHub,
nodejs,
pnpm_10,
fetchPnpmDeps,
pnpmConfigHook,
pnpm,
npmHooks,
versionCheckHook,
nix-update-script,
}:
let
pnpm = pnpm_10;
in
stdenv.mkDerivation (finalAttrs: {
pname = "ni";
version = "28.0.0";
@@ -22,7 +21,7 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-ka+p789qFCyFDFiNQYtcwhihCB05Bbw6/6dgBrR00xg=";
};
pnpmDeps = pnpm.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
fetcherVersion = 2;
hash = "sha256-0hxjX5bSqeOU9QNqusUd8L/0hoGsq4LQCr+9+5zrsaA=";
@@ -30,7 +29,8 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [
nodejs
pnpm.configHook
pnpmConfigHook
pnpm
npmHooks.npmInstallHook
];
+5 -2
View File
@@ -3,6 +3,8 @@
stdenv,
fetchFromGitHub,
nodejs,
fetchPnpmDeps,
pnpmConfigHook,
pnpm,
makeBinaryWrapper,
nix-update-script,
@@ -21,11 +23,12 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [
nodejs
pnpm.configHook
pnpmConfigHook
pnpm
makeBinaryWrapper
];
pnpmDeps = pnpm.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
fetcherVersion = 2;
hash = "sha256-PENYS5xO2LwT3+TGl/wU2r0ALEj/JQfbkpf/0MJs0uw=";
+11 -3
View File
@@ -6,6 +6,8 @@
callPackage,
gnumake,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
nodejs,
ocis,
}:
@@ -44,11 +46,17 @@ buildGoModule rec {
nativeBuildInputs = [
gnumake
nodejs
pnpm_9.configHook
pnpmConfigHook
pnpm_9
];
pnpmDeps = pnpm_9.fetchDeps {
inherit pname version src;
pnpmDeps = fetchPnpmDeps {
inherit
pname
version
src
;
pnpm = pnpm_9;
sourceRoot = "${src.name}/services/idp";
fetcherVersion = 1;
hash = "sha256-gNlN+u/bobnTsXrsOmkDcWs67D/trH3inT5AVQs3Brs=";
+11 -3
View File
@@ -3,6 +3,8 @@
stdenvNoCC,
nodejs,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
fetchFromGitHub,
}:
stdenvNoCC.mkDerivation rec {
@@ -18,7 +20,8 @@ stdenvNoCC.mkDerivation rec {
nativeBuildInputs = [
nodejs
pnpm_9.configHook
pnpmConfigHook
pnpm_9
];
buildPhase = ''
@@ -34,8 +37,13 @@ stdenvNoCC.mkDerivation rec {
runHook postInstall
'';
pnpmDeps = pnpm_9.fetchDeps {
inherit pname version src;
pnpmDeps = fetchPnpmDeps {
inherit
pname
version
src
;
pnpm = pnpm_9;
fetcherVersion = 1;
hash = "sha256-3Erva6srdkX1YQ727trx34Ufx524nz19MUyaDQToz6M=";
};
+6 -3
View File
@@ -3,9 +3,10 @@
lib,
opencloud,
pnpm_10,
fetchPnpmDeps,
pnpmConfigHook,
nodejs,
}:
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "opencloud-idp-web";
@@ -13,8 +14,9 @@ stdenvNoCC.mkDerivation (finalAttrs: {
pnpmRoot = "services/idp";
pnpmDeps = pnpm_10.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
pnpm = pnpm_10;
sourceRoot = "${finalAttrs.src.name}/${finalAttrs.pnpmRoot}";
fetcherVersion = 1;
hash = "sha256-NW7HK2B9h5JprK3JcIGi/OHcyoa5VTs/P0s3BZr+4FU=";
@@ -22,7 +24,8 @@ stdenvNoCC.mkDerivation (finalAttrs: {
nativeBuildInputs = [
nodejs
pnpm_10.configHook
pnpmConfigHook
pnpm_10
];
buildPhase = ''
+6 -3
View File
@@ -4,9 +4,10 @@
fetchFromGitHub,
nodejs,
pnpm_10,
fetchPnpmDeps,
pnpmConfigHook,
nix-update-script,
}:
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "opencloud-web";
version = "4.3.0";
@@ -18,15 +19,17 @@ stdenvNoCC.mkDerivation (finalAttrs: {
hash = "sha256-oLGmktFeDykpaK8YqMoIl7RrkPvHw2EULkbn1XDS/Yk=";
};
pnpmDeps = pnpm_10.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
pnpm = pnpm_10;
fetcherVersion = 1;
hash = "sha256-+oCoK6u46oPVtsvUEksuFFtjogirN370IsM33H5oOA4=";
};
nativeBuildInputs = [
nodejs
pnpm_10.configHook
pnpmConfigHook
pnpm_10
];
buildPhase = ''
+6 -3
View File
@@ -6,8 +6,9 @@
nodejs,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
}:
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "openlist-frontend";
version = "4.1.8";
@@ -27,11 +28,13 @@ stdenvNoCC.mkDerivation (finalAttrs: {
nativeBuildInputs = [
nodejs
pnpm_9.configHook
pnpmConfigHook
pnpm_9
];
pnpmDeps = pnpm_9.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
pnpm = pnpm_9;
fetcherVersion = 2;
hash = "sha256-bPI8g7wN9k1fBzj+F9wRDw7XPGT6DKDllbyOmUKi7HY=";
};
+6 -3
View File
@@ -9,13 +9,14 @@
nodejs,
pkg-config,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
libayatana-appindicator,
libsoup_3,
openssl,
webkitgtk_4_1,
}:
rustPlatform.buildRustPackage rec {
pname = "overlayed";
version = "0.6.2";
@@ -32,8 +33,9 @@ rustPlatform.buildRustPackage rec {
cargoHash = "sha256-6wN4nZQWrY0J5E+auj17B3iJ/84hzBXYA/bJsX/N5pk=";
pnpmDeps = pnpm_9.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit pname version src;
pnpm = pnpm_9;
fetcherVersion = 1;
hash = "sha256-+yyxoodcDfqJ2pkosd6sMk77/71RDsGthedo1Oigwto=";
};
@@ -44,7 +46,8 @@ rustPlatform.buildRustPackage rec {
moreutils
nodejs
pkg-config
pnpm_9.configHook
pnpmConfigHook
pnpm_9
];
buildInputs = [
+9 -3
View File
@@ -17,7 +17,9 @@
qpdf,
tesseract5,
unpaper,
pnpm,
fetchPnpmDeps,
pnpmConfigHook,
pnpm_10,
poppler-utils,
liberation_ttf,
xcbuild,
@@ -59,6 +61,8 @@ let
};
};
pnpm' = pnpm_10.override { nodejs = nodejs_20; };
path = lib.makeBinPath [
ghostscript_headless
(imagemagickBig.override { ghostscript = ghostscript_headless; })
@@ -77,8 +81,9 @@ let
src = src + "/src-ui";
pnpmDeps = pnpm.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
pnpm = pnpm';
fetcherVersion = 2;
hash = "sha256-pG7olcBq5P52CvZYLqUjb+RwxjbQbSotlS50pvgm7WQ=";
};
@@ -87,7 +92,8 @@ let
node-gyp
nodejs_20
pkg-config
pnpm.configHook
pnpmConfigHook
pnpm'
python3
]
++ lib.optionals stdenv.hostPlatform.isDarwin [
+6 -2
View File
@@ -5,6 +5,8 @@
lib,
nodejs,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
stdenv,
}:
let
@@ -22,8 +24,9 @@ let
pname = "parca-ui";
src = "${parca-src}/ui";
pnpmDeps = pnpm_9.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname src version;
pnpm = pnpm_9;
fetcherVersion = 1;
hash = "sha256-3egNSL62TyuRg6JDMMptjT0vLlwYdDLnJC2rYzaPE1w=";
};
@@ -31,7 +34,8 @@ let
nativeBuildInputs = [
faketty
nodejs
pnpm_9.configHook
pnpmConfigHook
pnpm_9
];
# faketty is required to work around a bug in nx.
+11 -3
View File
@@ -5,6 +5,8 @@
nix-update-script,
nodejs,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
}:
let
@@ -28,11 +30,17 @@ buildGoModule {
nativeBuildInputs = [
nodejs
pnpm_9.configHook
pnpmConfigHook
pnpm_9
];
env.pnpmDeps = pnpm_9.fetchDeps {
inherit pname version src;
env.pnpmDeps = fetchPnpmDeps {
inherit
pname
version
src
;
pnpm = pnpm_9;
fetcherVersion = 1;
hash = "sha256-o6wxO8EGRmhcYggJnfxDkH+nbt+isc8bfHji8Hu9YKg=";
};
+14 -4
View File
@@ -2,10 +2,14 @@
lib,
buildNpmPackage,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
fetchFromGitHub,
unstableGitUpdater,
}:
let
pnpm = pnpm_9;
in
buildNpmPackage rec {
pname = "piped";
version = "0-unstable-2024-11-04";
@@ -17,7 +21,8 @@ buildNpmPackage rec {
hash = "sha256-o3TwE0s5rim+0VKR+oW9Rv3/eQRf2dgRQK4xjZ9pqCE=";
};
npmConfigHook = pnpm_9.configHook;
nativeBuildInputs = [ pnpm_9 ];
npmConfigHook = pnpmConfigHook;
installPhase = ''
runHook preInstall
@@ -26,8 +31,13 @@ buildNpmPackage rec {
'';
npmDeps = pnpmDeps;
pnpmDeps = pnpm_9.fetchDeps {
inherit pname version src;
pnpmDeps = fetchPnpmDeps {
inherit
pname
version
src
;
pnpm = pnpm_9;
fetcherVersion = 1;
hash = "sha256-WtZfRZFRV9I1iBlAoV69GGFjdiQhTSBG/iiEadPVcys=";
};
+6 -3
View File
@@ -5,10 +5,11 @@
stdenvNoCC,
nodejs,
pnpm_10,
fetchPnpmDeps,
pnpmConfigHook,
nixosTests,
nix-update-script,
}:
buildGo125Module (finalAttrs: {
pname = "pocket-id";
version = "1.16.0";
@@ -49,10 +50,12 @@ buildGo125Module (finalAttrs: {
nativeBuildInputs = [
nodejs
pnpm_10.configHook
pnpmConfigHook
pnpm_10
];
pnpmDeps = pnpm_10.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
pnpm = pnpm_10;
fetcherVersion = 1;
hash = "sha256-drXGcUHP7J7keGra7/x1tr9Pfh/wjzmtUE1yAybYXLQ=";
};
+6 -2
View File
@@ -7,6 +7,8 @@
electron_39,
nodejs,
pnpm_10,
fetchPnpmDeps,
pnpmConfigHook,
makeDesktopItem,
darwin,
nix-update-script,
@@ -60,8 +62,9 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-08boCPsuT09OileZUWhB8awXWHrlJzoER2Bx0WXeOHU=";
};
pnpmDeps = pnpm_10.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
pnpm = pnpm_10;
fetcherVersion = 2;
hash = "sha256-nBjAmXzjR0qGCM91UAonQKP0NG7+DXImueSbhbnMK/k=";
};
@@ -76,7 +79,8 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [
makeBinaryWrapper
nodejs
pnpm_10.configHook
pnpmConfigHook
pnpm_10
]
++ lib.optionals (!stdenv.hostPlatform.isDarwin) [
copyDesktopItems
+7 -3
View File
@@ -3,6 +3,8 @@
rustPlatform,
lib,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
stdenvNoCC,
nodejs_22,
ffmpeg,
@@ -35,8 +37,8 @@ let
mainProgram = "izzy";
};
};
pnpm = pnpm_9;
nodejs = nodejs_22;
pnpm' = pnpm_9.override { nodejs = nodejs_22; };
in
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "porn-vault";
@@ -49,15 +51,17 @@ stdenvNoCC.mkDerivation (finalAttrs: {
hash = "sha256-wQ3dqLc0l2BmLGDYrbWxX2mPwO/Tqz0fY/fOQTEUv24=";
};
pnpmDeps = pnpm.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
pnpm = pnpm';
fetcherVersion = 1;
hash = "sha256-Xr9tRiP1hW+aFs9FnPvPkeJ0/LtJI57cjWY5bZQaRTQ=";
};
nativeBuildInputs = [
nodejs
pnpm.configHook
pnpmConfigHook
pnpm'
makeWrapper
];
+6 -3
View File
@@ -4,13 +4,14 @@
stdenv,
nodejs,
pnpm_10,
fetchPnpmDeps,
pnpmConfigHook,
prisma-engines,
jq,
makeWrapper,
moreutils,
callPackage,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "prisma";
version = "6.19.0";
@@ -24,14 +25,16 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [
nodejs
pnpm_10.configHook
pnpmConfigHook
pnpm_10
jq
makeWrapper
moreutils
];
pnpmDeps = pnpm_10.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
pnpm = pnpm_10;
fetcherVersion = 1;
hash = "sha256-9v30vhclD+sPcui/VG8dwaC8XGU6QFs/Gu8rjjoQy/w=";
};
+6 -2
View File
@@ -5,6 +5,8 @@
cargo-tauri,
nodejs,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
pkg-config,
glib-networking,
openssl,
@@ -36,8 +38,9 @@ rustPlatform.buildRustPackage (finalAttrs: {
patches = [ ./0001-disable-telemetry.patch ];
pnpmDeps = pnpm_9.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
pnpm = pnpm_9;
fetcherVersion = 1;
hash = "sha256-ncoxliXnLxWEXL1Z7ixOULI/uYkxmfLiDWu1tDSRsrM=";
};
@@ -49,7 +52,8 @@ rustPlatform.buildRustPackage (finalAttrs: {
pkg-config
wrapGAppsHook3
nodejs
pnpm_9.configHook
pnpmConfigHook
pnpm_9
];
buildInputs = [
+6 -2
View File
@@ -6,6 +6,8 @@
nix-update-script,
nodejs,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
typescript,
versionCheckHook,
}:
@@ -25,19 +27,21 @@ buildGoModule (finalAttrs: {
nativeBuildInputs = [
nodejs
pnpm_9.configHook
pnpmConfigHook
pnpm_9
typescript
];
sourceRoot = "${finalAttrs.src.name}/web";
pnpmDeps = pnpm_9.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs')
pname
version
src
sourceRoot
;
pnpm = pnpm_9;
fetcherVersion = 2;
hash = "sha256-6brOEC1UAxjIZB4pujhA624jKTTxfZQiiz/PzqooPeA=";
};
+6 -3
View File
@@ -1,6 +1,8 @@
{
rustPlatform,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
cargo-tauri,
nodejs,
pkg-config,
@@ -17,7 +19,6 @@
jq,
gst_all_1,
}:
rustPlatform.buildRustPackage (finalAttrs: {
pname = "readest";
version = "0.9.95";
@@ -37,8 +38,9 @@ rustPlatform.buildRustPackage (finalAttrs: {
sourceRoot = "${finalAttrs.src.name}/apps/readest-app";
pnpmDeps = pnpm_9.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
pnpm = pnpm_9;
fetcherVersion = 1;
hash = "sha256-hYwkPqePFPEdqZ3w0mNvNEypsVL1PKv29LFk7b11zkg=";
};
@@ -64,7 +66,8 @@ rustPlatform.buildRustPackage (finalAttrs: {
nativeBuildInputs = [
cargo-tauri.hook
nodejs
pnpm_9.configHook
pnpmConfigHook
pnpm_9
pkg-config
wrapGAppsHook3
autoPatchelfHook
+6 -3
View File
@@ -5,6 +5,8 @@
makeWrapper,
nodejs,
pnpm_10,
fetchPnpmDeps,
pnpmConfigHook,
python3,
testers,
xcbuild,
@@ -12,7 +14,6 @@
nix-update-script,
yq-go,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "renovate";
version = "42.57.1";
@@ -32,14 +33,16 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [
makeWrapper
nodejs
pnpm_10.configHook
pnpmConfigHook
pnpm_10
python3
yq-go
]
++ lib.optional stdenv.hostPlatform.isDarwin xcbuild;
pnpmDeps = pnpm_10.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
pnpm = pnpm_10;
fetcherVersion = 2;
hash = "sha256-WTShVxWhdAPbITBaSw6BrqSwSJ9pc2imB+ovjhTT6qY=";
};
+11 -4
View File
@@ -4,10 +4,11 @@
buildGoModule,
enableWebui ? true,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
nodejs,
nixosTests,
}:
buildGoModule rec {
pname = "rmfakecloud";
version = "0.0.26";
@@ -24,10 +25,15 @@ buildGoModule rec {
# if using webUI build it
# use env because of https://github.com/NixOS/nixpkgs/issues/358844
env.pnpmRoot = "ui";
env.pnpmDeps = pnpm_9.fetchDeps {
inherit pname version src;
env.pnpmDeps = fetchPnpmDeps {
inherit
pname
version
src
;
sourceRoot = "${src.name}/ui";
pnpmLock = "${src}/ui/pnpm-lock.yaml";
pnpm = pnpm_9;
fetcherVersion = 1;
hash = "sha256-uywmHN9HWKi0CaqTg9uEio2XCu6ap9v2xtbodW/6b4Q=";
};
@@ -42,7 +48,8 @@ buildGoModule rec {
'';
nativeBuildInputs = lib.optionals enableWebui [
nodejs
pnpm_9.configHook
pnpmConfigHook
pnpm_9
];
# ... or don't embed it in the server
+6 -2
View File
@@ -10,6 +10,8 @@
openssl,
pkg-config,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
protobuf,
rustPlatform,
stdenv,
@@ -39,13 +41,14 @@ rustPlatform.buildRustPackage rec {
'';
pnpmRoot = "app/main";
pnpmDeps = pnpm_9.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit
pname
version
src
patches
;
pnpm = pnpm_9;
postPatch = "cd ${pnpmRoot}";
fetcherVersion = 1;
hash = "sha256-VbdMaIEL1e+0U+ny4qbk1Mmkuc3cahKakKKYowCBK5Q=";
@@ -64,7 +67,8 @@ rustPlatform.buildRustPackage rec {
# Setup pnpm
nodejs
pnpm_9.configHook
pnpmConfigHook
pnpm_9
protobuf
]
+6 -5
View File
@@ -4,12 +4,11 @@
makeBinaryWrapper,
nodejs,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
replaceVars,
stdenv,
}:
let
pnpm = pnpm_9;
in
stdenv.mkDerivation (finalAttrs: {
pname = "rsshub";
version = "0-unstable-2025-11-28";
@@ -28,8 +27,9 @@ stdenv.mkDerivation (finalAttrs: {
./0002-fix-network-call.patch
];
pnpmDeps = pnpm.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
pnpm = pnpm_9;
fetcherVersion = 1;
hash = "sha256-zTsJZnhX7xUOsKST6S3TQUV8M1Tewcs9fZgrDSf5ba8=";
};
@@ -37,7 +37,8 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [
makeBinaryWrapper
nodejs
pnpm.configHook
pnpmConfigHook
pnpm_9
];
buildPhase = ''
@@ -5,6 +5,8 @@
fetchFromGitHub,
nodejs_20,
pnpm_8,
fetchPnpmDeps,
pnpmConfigHook,
wails,
wrapGAppsHook3,
glib-networking,
@@ -15,6 +17,7 @@
let
# NodeJS 22.18.0 broke our build, not sure why
wails' = wails.override { nodejs = nodejs_20; };
pnpm' = pnpm_8.override { nodejs = nodejs_20; };
in
buildGoModule rec {
pname = "satisfactorymodmanager";
@@ -42,7 +45,8 @@ buildGoModule rec {
'';
nativeBuildInputs = [
pnpm_8.configHook
pnpmConfigHook
pnpm'
wails'
wrapGAppsHook3
copyDesktopItems
@@ -55,8 +59,13 @@ buildGoModule rec {
# we use env because buildGoModule doesn't forward all normal attrs
# this is pretty hacky
env = {
pnpmDeps = pnpm_8.fetchDeps {
inherit pname version src;
pnpmDeps = fetchPnpmDeps {
inherit
pname
version
src
;
pnpm = pnpm';
sourceRoot = "${src.name}/frontend";
fetcherVersion = 1;
hash = "sha256-OP+3zsNlvqLFwvm2cnBd2bj2Kc3EghQZE3hpotoqqrQ=";
+6 -3
View File
@@ -5,8 +5,9 @@
makeWrapper,
nodejs,
pnpm_9,
fetchPnpmDeps,
pnpmConfigHook,
}:
buildNpmPackage (finalAttrs: {
pname = "serve";
version = "14.2.4";
@@ -19,13 +20,15 @@ buildNpmPackage (finalAttrs: {
};
npmDeps = null;
pnpmDeps = pnpm_9.fetchDeps {
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
pnpm = pnpm_9;
fetcherVersion = 2;
hash = "sha256-IJMu0XHwEn2TZP/He79FFGl/PeXOCTD51lIgmImpyKo=";
};
npmConfigHook = pnpm_9.configHook;
nativeBuildInputs = [ pnpm_9 ];
npmConfigHook = pnpmConfigHook;
dontNpmBuild = true;

Some files were not shown because too many files have changed in this diff Show More