Merge 9979a56ae65660cc2585e0c70d3252979e89ae44 into haskell-updates

Changed files
+803 -128
doc
languages-frameworks
nixos
modules
services
pkgs
by-name
development
python-modules
aider-chat
elevenlabs
pymilvus
servers
monitoring
+128 -10
doc/languages-frameworks/javascript.section.md
···
### Yarn {#javascript-yarn}
-
Yarn based projects use a `yarn.lock` file instead of a `package-lock.json` to pin dependencies. Nixpkgs provides the Nix function `fetchYarnDeps` which fetches an offline cache suitable for running `yarn install` before building the project. In addition, Nixpkgs provides the hooks:
+
Yarn based projects use a `yarn.lock` file instead of a `package-lock.json` to pin dependencies.
+
+
To package yarn-based applications, you need to distinguish by the version pointers in the `yarn.lock` file. See the following sections.
+
+
#### Yarn v1 {#javascript-yarn-v1}
+
+
Yarn v1 lockfiles contain a comment `# yarn lockfile v1` at the beginning of the file.
+
+
Nixpkgs provides the Nix function `fetchYarnDeps` which fetches an offline cache suitable for running `yarn install` before building the project. In addition, Nixpkgs provides the hooks:
- `yarnConfigHook`: Fetches the dependencies from the offline cache and installs them into `node_modules`.
- `yarnBuildHook`: Runs `yarn build` or a specified `yarn` command that builds the project.
···
})
```
-
#### `yarnConfigHook` arguments {#javascript-yarnconfighook}
+
##### `yarnConfigHook` arguments {#javascript-yarnconfighook}
By default, `yarnConfigHook` relies upon the attribute `${yarnOfflineCache}` (or `${offlineCache}` if the former is not set) to find the location of the offline cache produced by `fetchYarnDeps`. To disable this phase, you can set `dontYarnInstallDeps = true` or override the `configurePhase`.
-
#### `yarnBuildHook` arguments {#javascript-yarnbuildhook}
+
##### `yarnBuildHook` arguments {#javascript-yarnbuildhook}
This script by default runs `yarn --offline build`, and it relies upon the project's dependencies installed at `node_modules`. Below is a list of additional `mkDerivation` arguments read by this hook:
- `yarnBuildScript`: Sets a different `yarn --offline` subcommand (defaults to `build`).
- `yarnBuildFlags`: Single string list of additional flags to pass the above command, or a Nix list of such additional flags.
-
#### `yarnInstallHook` arguments {#javascript-yarninstallhook}
+
##### `yarnInstallHook` arguments {#javascript-yarninstallhook}
To install the package `yarnInstallHook` uses both `npm` and `yarn` to cleanup project files and dependencies. To disable this phase, you can set `dontYarnInstall = true` or override the `installPhase`. Below is a list of additional `mkDerivation` arguments read by this hook:
- `yarnKeepDevDeps`: Disables the removal of devDependencies from `node_modules` before installation.
-
### yarn2nix {#javascript-yarn2nix}
+
#### yarn2nix {#javascript-yarn2nix}
-
WARNING: The `yarn2nix` functions have been deprecated in favor of the new `yarnConfigHook`, `yarnBuildHook` and `yarnInstallHook`. Documentation for them still appears here for the sake of the packages that still use them. See also a tracking issue [#324246](https://github.com/NixOS/nixpkgs/issues/324246).
+
WARNING: The `yarn2nix` functions have been deprecated in favor of `yarnConfigHook`, `yarnBuildHook` and `yarnInstallHook` (for Yarn v1) and `yarn-berry_*.*` tooling (Yarn v3 and v4). Documentation for `yarn2nix` functions still appears here for the sake of the packages that still use them. See also a tracking issue [#324246](https://github.com/NixOS/nixpkgs/issues/324246).
-
#### Preparation {#javascript-yarn2nix-preparation}
+
##### Preparation {#javascript-yarn2nix-preparation}
You will need at least a `yarn.lock` file. If upstream does not have one you need to generate it and reference it in your package definition.
···
}
```
-
#### mkYarnPackage {#javascript-yarn2nix-mkYarnPackage}
+
##### mkYarnPackage {#javascript-yarn2nix-mkYarnPackage}
`mkYarnPackage` will by default try to generate a binary. For package only generating static assets (Svelte, Vue, React, WebPack, ...), you will need to explicitly override the build step with your instructions.
···
}
```
-
#### mkYarnModules {#javascript-yarn2nix-mkYarnModules}
+
##### mkYarnModules {#javascript-yarn2nix-mkYarnModules}
This will generate a derivation including the `node_modules` directory.
If you have to build a derivation for an integrated web framework (rails, phoenix..), this is probably the easiest way.
···
}
```
-
#### Pitfalls {#javascript-yarn2nix-pitfalls}
+
##### Pitfalls {#javascript-yarn2nix-pitfalls}
- If version is missing from upstream package.json, yarn will silently install nothing. In that case, you will need to override package.json as shown in the [package.json section](#javascript-upstream-package-json)
- Having trouble with `node-gyp`? Try adding these lines to the `yarnPreBuild` steps:
···
- The `echo 9` steps comes from this answer: <https://stackoverflow.com/a/49139496>
- Exporting the headers in `npm_config_nodedir` comes from this issue: <https://github.com/nodejs/node-gyp/issues/1191#issuecomment-301243919>
- `offlineCache` (described [above](#javascript-yarn2nix-preparation)) must be specified to avoid [Import From Derivation](#ssec-import-from-derivation) (IFD) when used inside Nixpkgs.
+
+
#### Yarn Berry v3/v4 {#javascript-yarn-v3-v4}
+
Yarn Berry (v3 / v4) have similar formats, they start with blocks like these:
+
+
```yaml
+
__metadata:
+
version: 6
+
cacheKey: 8[cX]
+
```
+
+
```yaml
+
__metadata:
+
version: 8
+
cacheKey: 10[cX]
+
```
+
+
For these packages, we have some helpers exposed under the respective `yarn-berry_3` and `yarn-berry_4` packages:
+
+
- `yarn-berry-fetcher`
+
- `fetchYarnBerryDeps`
+
- `yarnBerryConfigHook`
+
+
It's recommended to ensure you're explicitly pinning the major version used, for example by capturing the `yarn-berry_Xn` argument and then re-defining it as a `yarn-berry` `let` binding.
+
+
```nix
+
{
+
stdenv,
+
nodejs,
+
yarn-berry_4,
+
}:
+
+
let
+
yarn-berry = yarn-berry_4;
+
in
+
+
stdenv.mkDerivation (finalAttrs: {
+
pname = "foo";
+
version = "0-unstable-1980-01-01";
+
+
src = {
+
#...
+
};
+
+
nativeBuildInputs = [
+
nodejs
+
yarn-berry.yarnBerryConfigHook
+
];
+
+
offlineCache = yarn-berry.fetchYarnBerryDeps {
+
inherit (finalAttrs) src;
+
hash = "...";
+
};
+
})
+
```
+
+
##### `yarn-berry_X.fetchYarnBerryDeps` {#javascript-fetchYarnBerryDeps}
+
`fetchYarnBerryDeps` runs `yarn-berry-fetcher fetch` in a fixed-output-derivation. It is a custom fetcher designed to reproducibly download all files in the `yarn.lock` file, validating their hashes in the process. For git dependencies, it creates a checkout at `${offlineCache}/checkouts/<40-character-commit-hash>` (relying on the git commit hash to describe the contents of the checkout).
+
+
To produce the `hash` argument for `fetchYarnBerryDeps` function call, the `yarn-berry-fetcher prefetch` command can be used:
+
+
```console
+
$ yarn-berry-fetcher prefetch </path/to/yarn.lock> [/path/to/missing-hashes.json]
+
```
+
+
This prints the hash to stdout and can be used in update scripts to recalculate the hash for a new version of `yarn.lock`.
+
+
##### `yarn-berry_X.yarnBerryConfigHook` {#javascript-yarnBerryConfigHook}
+
`yarnBerryConfigHook` uses the store path `offlineCache` points to, to run a `yarn install` during the build, producing a usable `node_modules` directory from the downloaded dependencies.
+
+
Internally, this uses a patched version of Yarn to ensure git dependencies are re-packed and any attempted downloads fail immediately.
+
+
##### Patching upstream `package.json` or `yarn.lock` files {#javascript-yarnBerry-patching}
+
In case patching the upstream `package.json` or `yarn.lock` is needed, it's important to pass `finalAttrs.patches` to `fetchYarnBerryDeps` as well, so the patched variants are picked up (i.e. `inherit (finalAttrs) patches`.
+
+
##### Missing hashes in the `yarn.lock` file {#javascript-yarnBerry-missing-hashes}
+
Unfortunately, `yarn.lock` files do not include hashes for optional/platform-specific dependencies. This is [by design](https://github.com/yarnpkg/berry/issues/6759).
+
+
To compensate for this, the `yarn-berry-fetcher missing-hashes` subcommand can be used to produce all missing hashes. These are usually stored in a `missing-hashes.json` file, which needs to be passed to both the build itself, as well as the `fetchYarnBerryDeps` helper:
+
+
```nix
+
{
+
stdenv,
+
nodejs,
+
yarn-berry_4,
+
}:
+
+
let
+
yarn-berry = yarn-berry_4;
+
in
+
+
stdenv.mkDerivation (finalAttrs: {
+
pname = "foo";
+
version = "0-unstable-1980-01-01";
+
+
src = {
+
#...
+
};
+
+
nativeBuildInputs = [
+
nodejs
+
yarn-berry.yarnBerryConfigHook
+
];
+
+
missingHashes = ./missing-hashes.json;
+
offlineCache = yarn-berry.fetchYarnBerryDeps {
+
inherit (finalAttrs) src missingHashes;
+
hash = "...";
+
};
+
})
+
```
## Outside Nixpkgs {#javascript-outside-nixpkgs}
+18
doc/redirects.json
···
"javascript-yarn": [
"index.html#javascript-yarn"
],
+
"javascript-yarn-v1": [
+
"index.html#javascript-yarn-v1"
+
],
+
"javascript-yarn-v3-v4": [
+
"index.html#javascript-yarn-v3-v4"
+
],
"javascript-yarnconfighook": [
"index.html#javascript-yarnconfighook"
],
···
],
"javascript-yarn2nix-pitfalls": [
"index.html#javascript-yarn2nix-pitfalls"
+
],
+
"javascript-yarnBerry-missing-hashes": [
+
"index.html#javascript-yarnBerry-missing-hashes"
+
],
+
"javascript-yarnBerryConfigHook": [
+
"index.html#javascript-yarnBerryConfigHook"
+
],
+
"javascript-yarnBerry-patching": [
+
"index.html#javascript-yarnBerry-patching"
+
],
+
"javascript-fetchYarnBerryDeps": [
+
"index.html#javascript-fetchYarnBerryDeps"
],
"javascript-outside-nixpkgs": [
"index.html#javascript-outside-nixpkgs"
+9 -1
nixos/modules/services/misc/nix-ssh-serve.nix
···
write = lib.mkOption {
type = lib.types.bool;
default = false;
-
description = "Whether to enable writing to the Nix store as a remote store via SSH. Note: the sshServe user is named nix-ssh and is not a trusted-user. nix-ssh should be added to the {option}`nix.settings.trusted-users` option in most use cases, such as allowing remote building of derivations.";
+
description = "Whether to enable writing to the Nix store as a remote store via SSH. Note: by default, the sshServe user is named nix-ssh and is not a trusted-user. nix-ssh should be added to the {option}`nix.sshServe.trusted` option in most use cases, such as allowing remote building of derivations to anonymous people based on ssh key";
+
};
+
+
trusted = lib.mkOption {
+
type = lib.types.bool;
+
default = false;
+
description = "Whether to add nix-ssh to the nix.settings.trusted-users";
};
keys = lib.mkOption {
···
shell = pkgs.bashInteractive;
};
users.groups.nix-ssh = { };
+
+
nix.settings.trusted-users = lib.mkIf cfg.trusted [ "nix-ssh" ];
services.openssh.enable = true;
+1
pkgs/by-name/br/bruno-cli/package.nix
···
npm run build --workspace=packages/bruno-common
npm run build --workspace=packages/bruno-graphql-docs
npm run build --workspace=packages/bruno-query
+
npm run build --workspace=packages/bruno-requests
npm run sandbox:bundle-libraries --workspace=packages/bruno-js
+5 -3
pkgs/by-name/br/bruno/package.nix
···
buildNpmPackage rec {
pname = "bruno";
-
version = "2.0.1";
+
version = "2.2.0";
src = fetchFromGitHub {
owner = "usebruno";
repo = "bruno";
tag = "v${version}";
-
hash = "sha256-iKwmBkeyKlahzmPCPZ/S8XwIgTK6qD2XHiQkUu2nnZQ=";
+
hash = "sha256-4SIOLVXVxRSaSmZcje//+o/dyLINDAM2CvLQGEAykq0=";
postFetch = ''
${lib.getExe npm-lockfile-fix} $out/package-lock.json
'';
};
-
npmDepsHash = "sha256-t6KZc48nS9hyQZdOS4lVgcMw9RyyK7jEmMjA41s4HaY=";
+
npmDepsHash = "sha256-W4qF2/AAcygqykB4zcBjb8KhfVaMrj8FLgadalDNF+0=";
npmFlags = [ "--legacy-peer-deps" ];
nativeBuildInputs =
···
npm run build --workspace=packages/bruno-common
npm run build --workspace=packages/bruno-graphql-docs
+
npm run build --workspace=packages/bruno-converters
npm run build --workspace=packages/bruno-app
npm run build --workspace=packages/bruno-query
+
npm run build --workspace=packages/bruno-requests
npm run sandbox:bundle-libraries --workspace=packages/bruno-js
+5 -5
pkgs/by-name/cl/clouddrive2/package.nix
···
in
stdenv.mkDerivation (finalAttrs: {
pname = "clouddrive2";
-
version = "0.8.15";
+
version = "0.8.16";
src = fetchurl {
url = "https://github.com/cloud-fs/cloud-fs.github.io/releases/download/v${finalAttrs.version}/clouddrive-2-${os}-${arch}-${finalAttrs.version}.tgz";
hash =
{
-
x86_64-linux = "sha256-jvcnXgAVfIJoSP4GSHmqyVr9/cVYV1CRcZ4FSBHDqkE=";
-
aarch64-linux = "sha256-JFUqzRKQgn+azZj7vb2MCrsELQillFX+9Mh3VZy4lFs=";
-
x86_64-darwin = "sha256-T3wXgRN0muZfR/RXrYLM8ycrk1dpxHvOK833LaHWEnc=";
-
aarch64-darwin = "sha256-a/q37rtEL923/YDUrA1OyN2YFkYMxk2MAayxYr4etKU=";
+
x86_64-linux = "sha256-NUXafHlH/TsIW4sTDOZ01AxNSnQ1M0yMgtoHBlYBzAU=";
+
aarch64-linux = "sha256-FcCz/DcNOIOm9WE2zuL3WA3mkbxO57eCtHpD9PjDG94=";
+
x86_64-darwin = "sha256-Bm5w6AgZ1cafopa+w5+0yADGS4rfsFXpHZ21NHu5tC8=";
+
aarch64-darwin = "sha256-4dwht7AbBB6b35n8joH7sR8zUgSQqILrkORIJaSm2xI=";
}
.${stdenv.hostPlatform.system} or (throw "unsupported system ${stdenv.hostPlatform.system}");
};
+27
pkgs/by-name/he/hedgedoc/missing-hashes.json
···
+
{
+
"@esbuild/aix-ppc64@npm:0.25.2": "3b5ee5599a8446074bd6aad732c5f2833a4b77e8af62cfcdee7508ded661daa054c481c2fa69f5341e65cc8846a2b3f026ffca12934cb24d76df93e4800e2979",
+
"@esbuild/android-arm64@npm:0.25.2": "556d958ea6f33073669a8a41645b0e51cecb2c0788ece8827a8752e666fd178ae28b2f9749b8a968f1e9c66b09dab7933be8d8b53e391ea9eca7bddf3f53b26a",
+
"@esbuild/android-arm@npm:0.25.2": "0ce9f260216520a4d53c2736b60e8e55b8c6569b944555cb7840fbe2ff16278d4e6591aedcbc38b3f69a6d98167367f36bba1d35b41d725e4d68a67f942e2a28",
+
"@esbuild/android-x64@npm:0.25.2": "57d0c438a3bcc25db5aa89c9d9b60827d3ee6d9553234d95a16f52f8a7780778e5e7a9975374e4d37a81e600d2b8f32bd46d5633bb83bcd958ee2f5162d1359b",
+
"@esbuild/darwin-arm64@npm:0.25.2": "e148927428c0c5d69e681ee8d4b47e0bcc5116296c47c41ed44068d686a0568b23dc493dc47b4d103e7b21894fafbaf5c2d64bf2420a5d6b6b22f71bf6c2fb08",
+
"@esbuild/darwin-x64@npm:0.25.2": "2bc37a902d7828f3973d28f486bcf26da13f6f421122348fc510551a4674bc706eb8e6f692ccd3d887523c373580b3228797f2fd73d641b2e106a6d44e3f20c7",
+
"@esbuild/freebsd-arm64@npm:0.25.2": "431ddf98e7c0b7c6a7d1a689454ab449df8eaacca242442153a4f149017d6bd03e16b7fda01e9fe26316d135176d74f5de09e9a21357648c320a3211a1c862a2",
+
"@esbuild/freebsd-x64@npm:0.25.2": "21545ec11969db7ed091819b63c88a9c4490edce8a98d64718f79352a5001927d1d85e6261170562850afdb5a7a2182ccf3d936eab0db615e51188ab6f95789b",
+
"@esbuild/linux-arm64@npm:0.25.2": "332ba0533f2a2bba21dfb3c9130f9a1cef5b420da29f67116e7fbff4cfd12039d06646b4a636952b873b22129a4e5c6ea6ea9b57286949980add7bab5d6684c1",
+
"@esbuild/linux-arm@npm:0.25.2": "a89613faa8ce9f307eea4c2b4ada8cdb56e378716d5250fc163674032bfbdda8b8aacc730c6b5fa05b5e5bff04a9a11dd02934d69b2233ecf0ff58af4ef5bb45",
+
"@esbuild/linux-ia32@npm:0.25.2": "5907824945c067f092bb28807080a2617b5208583ef71b2091d57b6039df182735ba62ee0142e993260d80df3a5b7ae88c0fff28f2e4efd8254dd34de2f4ad95",
+
"@esbuild/linux-loong64@npm:0.25.2": "ed521bfa81db13fc628455fc0feec4e75150ed2248013baaf8fa7d6d278295d3a2b09196c79169b7331e50e6d3abf86ee5773ad28f8d5914bbe4034758a424c2",
+
"@esbuild/linux-mips64el@npm:0.25.2": "9961d5853e7ff048ae2cb3997136f96ca5180dcc483e88e2ae0d34ca8ec097af3cc7d7c8ac6303a3cf2582eadbe905fa97a38dd9b402f82b9e104a0070f04b79",
+
"@esbuild/linux-ppc64@npm:0.25.2": "9ee2360fa976e7c0e16b09fd551fba232e19ede65a326544d16bcae0c399e2937b853eab5649a52589e483c77dbc4ab5e082177ee70e6fd2de53c421314ea458",
+
"@esbuild/linux-riscv64@npm:0.25.2": "e6bff41e76d44a8d6f27a53b2aeb98c771f6215590d411a1b6b682aa41c96cc9ed8baa6d17412d09419b10778dc40ca75b6cfe71dc8e24f1bf5c1e7793e2c560",
+
"@esbuild/linux-s390x@npm:0.25.2": "34ca97c2506f1a1e646bc74f7cfff7bc7990052c3a2ade963c010c6bff6ae6135b9788f7972af2fb47e1a5380b26b8ca1b7a6c3f2bc9eaa7c9e7fdf227e38ab0",
+
"@esbuild/linux-x64@npm:0.25.2": "ac2c60f9dcbf9c55f66aef618b2a3218ddde92aad764aa6645b94b50c8c6242f1f97a0af956759738bca97686918dd71a0cfc82c73eadb0ab921918c9927a627",
+
"@esbuild/netbsd-arm64@npm:0.25.2": "6d820e86cbf10d305520ed7dbf4358bd4d75d333de39c100156dcc5619446916b4d5a1c1e07b838d22f6013aaf57bdd93187f2e97b1357a426e94e91b485e0e1",
+
"@esbuild/netbsd-x64@npm:0.25.2": "89153d1753254cd88f12b9e088a79398dcee11c0a1349a0886b54dd2db0ae2faf64ac0e364494f0cbd64163320cff94f02fc1fe827ff950daa0a27e50ef84a27",
+
"@esbuild/openbsd-arm64@npm:0.25.2": "71ede4e8f1086bece4e6d528b46ee3a493e0d33d749d5ac9050afd5471465badce7f36f1d04c1edddec75fde49e1229adb0f7758bcd508219a7598086b9a3c5c",
+
"@esbuild/openbsd-x64@npm:0.25.2": "95d90426c96d27980340d29c6d83f79ea2a22008041a5366c81820275ce36ba95ad0bf5e89ee199747a5921953587e7dcdc2e5a97368dec4efbcfc83ab5be4ee",
+
"@esbuild/sunos-x64@npm:0.25.2": "da59382e27897f98ee7261651eff1bcf42b1d659b078e500f664ef18137d70298f0bc0a50cf5af2311931e5b0454c6d3756a0ff9e560ab0a754ea56b0f04768c",
+
"@esbuild/win32-arm64@npm:0.25.2": "39f9a30d00a788ef168d7186f366397f7c471f1db3328efc0b9ff0861475f8a4484723b60ab6ab04c3bb27ebcdc8632e4883c28b5fa93b0606dd9f85f7904043",
+
"@esbuild/win32-ia32@npm:0.25.2": "74a7726d21a347faa1debdcd540e77fa5af9f96d5e0d625f2752d24a1616ac0fdea6582a0499935d9d964ee4c7a57ad8f30c6fe355089af2095bd0e41b70ea49",
+
"@esbuild/win32-x64@npm:0.25.2": "1e3f44cc53acaff9d45e2cded9811c750b7eb946f7b76d1fec66b862a89da800f9291269607d7cbb8d7e6068504571904d93a0813692e74fbae1fc321fe46440"
+
}
+10 -37
pkgs/by-name/he/hedgedoc/package.nix
···
fetchFromGitHub,
gitMinimal,
cacert,
-
yarn,
makeBinaryWrapper,
nodejs,
python3,
nixosTests,
+
yarn-berry_4,
writableTmpDirAsHomeHook,
}:
···
tag = version;
hash = "sha256-hXcPcGj+efvRVt3cHQc9KttE0/DOD9Bul6f3cY4ofgs=";
};
-
-
# we cannot use fetchYarnDeps because that doesn't support yarn 2/berry lockfiles
-
offlineCache = stdenv.mkDerivation {
-
name = "hedgedoc-${version}-offline-cache";
-
inherit src;
-
-
nativeBuildInputs = [
-
cacert # needed for git
-
gitMinimal # needed to download git dependencies
-
nodejs # needed for npm to download git dependencies
-
yarn
-
writableTmpDirAsHomeHook
-
];
-
-
buildPhase = ''
-
yarn config set enableTelemetry 0
-
yarn config set cacheFolder $out
-
yarn config set --json supportedArchitectures.os '[ "linux" ]'
-
yarn config set --json supportedArchitectures.cpu '["arm", "arm64", "ia32", "x64"]'
-
yarn
-
'';
-
-
outputHashMode = "recursive";
-
outputHash = "sha256-KTUj1O2AA1qTQOqTbGBPLHAgiG5sG832Na8qLvEccmc=";
-
};
+
missingHashes = ./missing-hashes.json;
in
stdenv.mkDerivation {
pname = "hedgedoc";
-
inherit version src;
+
inherit version src missingHashes;
+
+
offlineCache = yarn-berry_4.fetchYarnBerryDeps {
+
inherit src missingHashes;
+
hash = "sha256-V7ptquAohv0t5oA+3iTvlQOZoEtY5xWyhSoJP8jwYI8=";
+
};
nativeBuildInputs = [
makeBinaryWrapper
(python3.withPackages (ps: with ps; [ setuptools ])) # required to build sqlite3 bindings
-
yarn
-
writableTmpDirAsHomeHook # A writable home directory is required for yarn
+
yarn-berry_4
+
yarn-berry_4.yarnBerryConfigHook
];
buildInputs = [
nodejs # for shebangs
];
-
-
dontConfigure = true;
buildPhase = ''
runHook preBuild
-
yarn config set enableTelemetry 0
-
yarn config set cacheFolder ${offlineCache}
-
export npm_config_nodedir=${nodejs} # prevent node-gyp from downloading headers
-
-
yarn --immutable-cache
yarn run build
# Delete scripts that are not useful for NixOS
···
'';
passthru = {
-
inherit offlineCache;
tests = { inherit (nixosTests) hedgedoc; };
};
+3 -3
pkgs/by-name/md/mdq/package.nix
···
rustPlatform.buildRustPackage (finalAttrs: {
pname = "mdq";
-
version = "0.5.0";
+
version = "0.6.1";
src = fetchFromGitHub {
owner = "yshavit";
repo = "mdq";
tag = "v${finalAttrs.version}";
-
hash = "sha256-X+ROsNngMYiAcRaxdb+eZ3qpTqqPPWvlVfcy73gOh+o=";
+
hash = "sha256-izjWFnu2plm6nE1ZhjHLi9lURoHMp+K2kDXu8WonuLE=";
};
useFetchCargoVendor = true;
-
cargoHash = "sha256-WO3INFfUuH4QMdxE9W7WQ2tvguf3y/kOTHG6KRB1/28=";
+
cargoHash = "sha256-QNtIG27vRtLcUTyCoDyxVNaQbxhANUZDPAEcEK8Uztk=";
passthru.updateScript = nix-update-script { };
+3 -3
pkgs/by-name/mi/mitra/package.nix
···
rustPlatform.buildRustPackage rec {
pname = "mitra";
-
version = "3.22.0";
+
version = "3.23.0";
src = fetchFromGitea {
domain = "codeberg.org";
owner = "silverpill";
repo = "mitra";
rev = "v${version}";
-
hash = "sha256-TWU8df6IjzyvRyMLt3YE9Uuc9PoZBbzF62ojRaLzsvw=";
+
hash = "sha256-QE/K9Hhu7e1y1JzuA8YxRTGDV6uAoSA+h1iWXH/4M8g=";
};
useFetchCargoVendor = true;
-
cargoHash = "sha256-kRGhf/B6ni4gtl28ycQgIb5z+OP3CEHonTNId2MZsW4=";
+
cargoHash = "sha256-JmX4Cbpj5gA0XWA5NQLfyFAQnoJmRCOaiNew96sWABI=";
# require running database
doCheck = false;
+2
pkgs/by-name/tu/tumiki-fighters/package.nix
···
fetchurl,
unzip,
gdc,
+
libGL,
SDL,
SDL_mixer,
bulletml,
···
];
buildInputs = [
+
libGL
SDL
SDL_mixer
bulletml
+2 -2
pkgs/by-name/xk/xk6/package.nix
···
buildGoModule rec {
pname = "xk6";
-
version = "0.18.0";
+
version = "0.19.1";
src = fetchFromGitHub {
owner = "grafana";
repo = "xk6";
tag = "v${version}";
-
hash = "sha256-Ob9H3EMEo611Ivyu2UoR7ZHXvWPjJAR4T0HBTRhmH+M=";
+
hash = "sha256-LlHInRfKhYhRPfRZTQ9qycnJU8e20NYeEphKBvdcU54=";
};
vendorHash = null;
+85
pkgs/by-name/ya/yarn-berry/fetcher/berry-3-offline.patch
···
+
diff --git a/packages/plugin-essentials/sources/commands/install.ts b/packages/plugin-essentials/sources/commands/install.ts
+
index 9dcd02d..cf1765a 100644
+
--- a/packages/plugin-essentials/sources/commands/install.ts
+
+++ b/packages/plugin-essentials/sources/commands/install.ts
+
@@ -254,6 +254,7 @@ export default class YarnCommand extends BaseCommand {
+
// If migrating from a v1 install, we automatically enable the node-modules linker,
+
// since that's likely what the author intended to do.
+
if (content?.includes(`yarn lockfile v1`)) {
+
+ throw new Error("Tried to use yarn-berry_3.yarnConfigHook (nixpkgs), but found a yarn v1 lockfile");
+
const nmReport = await StreamReport.start({
+
configuration,
+
json: this.json,
+
diff --git a/packages/plugin-git/sources/GitFetcher.ts b/packages/plugin-git/sources/GitFetcher.ts
+
index fe2a4fc..bfa8272 100644
+
--- a/packages/plugin-git/sources/GitFetcher.ts
+
+++ b/packages/plugin-git/sources/GitFetcher.ts
+
@@ -50,9 +50,14 @@ export class GitFetcher implements Fetcher {
+
}
+
+
async cloneFromRemote(locator: Locator, opts: FetchOptions) {
+
- const cloneTarget = await gitUtils.clone(locator.reference, opts.project.configuration);
+
-
+
const repoUrlParts = gitUtils.splitRepoUrl(locator.reference);
+
+
+
+ if (repoUrlParts.treeish.protocol !== "commit") {
+
+ throw new Error(`Missing source for git dependency ${locator.reference}`);
+
+ };
+
+
+
+ const cloneTarget = opts.cache.checkoutPath(repoUrlParts.treeish.request);
+
+
+
const packagePath = ppath.join(cloneTarget, `package.tgz` as PortablePath);
+
+
await scriptUtils.prepareExternalProject(cloneTarget, packagePath, {
+
diff --git a/packages/plugin-npm/sources/NpmSemverFetcher.ts b/packages/plugin-npm/sources/NpmSemverFetcher.ts
+
index 0f69423..5b21462 100644
+
--- a/packages/plugin-npm/sources/NpmSemverFetcher.ts
+
+++ b/packages/plugin-npm/sources/NpmSemverFetcher.ts
+
@@ -47,6 +47,7 @@ export class NpmSemverFetcher implements Fetcher {
+
}
+
+
private async fetchFromNetwork(locator: Locator, opts: FetchOptions) {
+
+ throw new Error(`Missing sources for ${structUtils.prettyLocator(opts.project.configuration, locator)}`);
+
let sourceBuffer;
+
try {
+
sourceBuffer = await npmHttpUtils.get(NpmSemverFetcher.getLocatorUrl(locator), {
+
diff --git a/packages/yarnpkg-core/sources/Cache.ts b/packages/yarnpkg-core/sources/Cache.ts
+
index d5e6864..374b5d6 100644
+
--- a/packages/yarnpkg-core/sources/Cache.ts
+
+++ b/packages/yarnpkg-core/sources/Cache.ts
+
@@ -158,6 +158,10 @@ export class Cache {
+
}
+
}
+
+
+ checkoutPath(commit: string): string {
+
+ return ppath.join(ppath.join(this.cwd, "../checkouts"), commit);
+
+ }
+
+
+
async fetchPackageFromCache(locator: Locator, expectedChecksum: string | null, {onHit, onMiss, loader, ...opts}: {onHit?: () => void, onMiss?: () => void, loader?: () => Promise<ZipFS> } & CacheOptions): Promise<[FakeFS<PortablePath>, () => void, string | null]> {
+
const mirrorPath = this.getLocatorMirrorPath(locator);
+
+
diff --git a/packages/yarnpkg-core/sources/scriptUtils.ts b/packages/yarnpkg-core/sources/scriptUtils.ts
+
index b3c2c59..6b9eb2f 100644
+
--- a/packages/yarnpkg-core/sources/scriptUtils.ts
+
+++ b/packages/yarnpkg-core/sources/scriptUtils.ts
+
@@ -287,10 +287,6 @@ export async function prepareExternalProject(cwd: PortablePath, outputPath: Port
+
// Run an install; we can't avoid it unless we inspect the
+
// package.json, which I don't want to do to keep the codebase
+
// clean (even if it has a slight perf cost when cloning v1 repos)
+
- const install = await execUtils.pipevp(`yarn`, [`install`], {cwd, env, stdin, stdout, stderr, end: execUtils.EndStrategy.ErrorCode});
+
- if (install.code !== 0)
+
- return install.code;
+
-
+
stdout.write(`\n`);
+
+
const pack = await execUtils.pipevp(`yarn`, [...workspaceCli, `pack`, `--filename`, npath.fromPortablePath(outputPath)], {cwd, env, stdin, stdout, stderr});
+
@@ -375,9 +371,6 @@ export async function prepareExternalProject(cwd: PortablePath, outputPath: Port
+
// We can't use `npm ci` because some projects don't have npm
+
// lockfiles that are up-to-date. Hopefully npm won't decide
+
// to change the versions randomly.
+
- const install = await execUtils.pipevp(`npm`, [`install`], {cwd, env, stdin, stdout, stderr, end: execUtils.EndStrategy.ErrorCode});
+
- if (install.code !== 0)
+
- return install.code;
+
+
const packStream = new PassThrough();
+
const packPromise = miscUtils.bufferStream(packStream);
+81
pkgs/by-name/ya/yarn-berry/fetcher/berry-4-offline.patch
···
+
diff --git a/packages/plugin-essentials/sources/commands/install.ts b/packages/plugin-essentials/sources/commands/install.ts
+
index 90ba553..ef5368c 100644
+
--- a/packages/plugin-essentials/sources/commands/install.ts
+
+++ b/packages/plugin-essentials/sources/commands/install.ts
+
@@ -302,6 +302,7 @@ export default class YarnCommand extends BaseCommand {
+
+
for (const rule of LOCKFILE_MIGRATION_RULES) {
+
if (rule.selector(lockfileLastVersion) && typeof configuration.sources.get(rule.name) === `undefined`) {
+
+ throw new Error(`Tried to use yarn-berry_4.yarnConfigHook (nixpkgs) which expects lockfile version 8, but found lockfile version ${lockfileLastVersion}`);
+
configuration.use(`<compat>`, {[rule.name]: rule.value}, project.cwd, {overwrite: true});
+
newSettings[rule.name] = rule.value;
+
}
+
diff --git a/packages/plugin-git/sources/GitFetcher.ts b/packages/plugin-git/sources/GitFetcher.ts
+
index d9f8d85..4db9f90 100644
+
--- a/packages/plugin-git/sources/GitFetcher.ts
+
+++ b/packages/plugin-git/sources/GitFetcher.ts
+
@@ -50,7 +50,11 @@ export class GitFetcher implements Fetcher {
+
async cloneFromRemote(locator: Locator, opts: FetchOptions) {
+
const repoUrlParts = gitUtils.splitRepoUrl(locator.reference);
+
+
- const cloneTarget = await gitUtils.clone(locator.reference, opts.project.configuration);
+
+ if (repoUrlParts.treeish.protocol !== "commit") {
+
+ throw new Error(`Missing source for git dependency ${locator.reference}`);
+
+ };
+
+
+
+ const cloneTarget = opts.cache.checkoutPath(repoUrlParts.treeish.request);
+
const projectPath = ppath.resolve(cloneTarget, repoUrlParts.extra.cwd ?? PortablePath.dot);
+
+
const packagePath = ppath.join(projectPath, `package.tgz`);
+
diff --git a/packages/plugin-npm/sources/NpmSemverFetcher.ts b/packages/plugin-npm/sources/NpmSemverFetcher.ts
+
index 7347859..ea5767f 100644
+
--- a/packages/plugin-npm/sources/NpmSemverFetcher.ts
+
+++ b/packages/plugin-npm/sources/NpmSemverFetcher.ts
+
@@ -45,6 +45,7 @@ export class NpmSemverFetcher implements Fetcher {
+
}
+
+
private async fetchFromNetwork(locator: Locator, opts: FetchOptions) {
+
+ throw new Error(`Missing sources for ${structUtils.prettyLocator(opts.project.configuration, locator)}`);
+
let sourceBuffer;
+
try {
+
sourceBuffer = await npmHttpUtils.get(NpmSemverFetcher.getLocatorUrl(locator), {
+
diff --git a/packages/yarnpkg-core/sources/Cache.ts b/packages/yarnpkg-core/sources/Cache.ts
+
index b712ecf..c7effbc 100644
+
--- a/packages/yarnpkg-core/sources/Cache.ts
+
+++ b/packages/yarnpkg-core/sources/Cache.ts
+
@@ -225,6 +225,10 @@ export class Cache {
+
}
+
}
+
+
+ checkoutPath(commit: string): string {
+
+ return ppath.join(ppath.join(this.cwd, "../checkouts"), commit);
+
+ }
+
+
+
async fetchPackageFromCache(locator: Locator, expectedChecksum: string | null, {onHit, onMiss, loader, ...opts}: {onHit?: () => void, onMiss?: () => void, loader?: () => Promise<ZipFS>} & CacheOptions): Promise<[FakeFS<PortablePath>, () => void, string | null]> {
+
const mirrorPath = this.getLocatorMirrorPath(locator);
+
+
diff --git a/packages/yarnpkg-core/sources/scriptUtils.ts b/packages/yarnpkg-core/sources/scriptUtils.ts
+
index 2dcd7e5..fe40fbb 100644
+
--- a/packages/yarnpkg-core/sources/scriptUtils.ts
+
+++ b/packages/yarnpkg-core/sources/scriptUtils.ts
+
@@ -287,10 +287,6 @@ export async function prepareExternalProject(cwd: PortablePath, outputPath: Port
+
// Run an install; we can't avoid it unless we inspect the
+
// package.json, which I don't want to do to keep the codebase
+
// clean (even if it has a slight perf cost when cloning v1 repos)
+
- const install = await execUtils.pipevp(`yarn`, [`install`], {cwd, env, stdin, stdout, stderr, end: execUtils.EndStrategy.ErrorCode});
+
- if (install.code !== 0)
+
- return install.code;
+
-
+
stdout.write(`\n`);
+
+
const pack = await execUtils.pipevp(`yarn`, [...workspaceCli, `pack`, `--filename`, npath.fromPortablePath(outputPath)], {cwd, env, stdin, stdout, stderr});
+
@@ -375,9 +371,6 @@ export async function prepareExternalProject(cwd: PortablePath, outputPath: Port
+
// We can't use `npm ci` because some projects don't have npm
+
// lockfiles that are up-to-date. Hopefully npm won't decide
+
// to change the versions randomly.
+
- const install = await execUtils.pipevp(`npm`, [`install`, `--legacy-peer-deps`], {cwd, env, stdin, stdout, stderr, end: execUtils.EndStrategy.ErrorCode});
+
- if (install.code !== 0)
+
- return install.code;
+
+
const packStream = new PassThrough();
+
const packPromise = miscUtils.bufferStream(packStream);
+77
pkgs/by-name/ya/yarn-berry/fetcher/default.nix
···
+
{
+
lib,
+
newScope,
+
yarn-berry,
+
libzip,
+
zlib,
+
zlib-ng,
+
}:
+
+
let
+
variantOverlays = {
+
"3" = final: {
+
berryCacheVersion = "8";
+
+
berryOfflinePatches = [ ./berry-3-offline.patch ];
+
+
# Known good version: 1.11.3
+
libzip =
+
(libzip.override {
+
# Known good version: 1.3.1
+
zlib = zlib;
+
}).overrideAttrs
+
(oA: {
+
patches = (oA.patches or [ ]) ++ [
+
(final.yarn-berry-fetcher.src + "/libzip-revert-to-old-versionneeded-behavior.patch")
+
];
+
});
+
};
+
"4" = final: {
+
berryCacheVersion = "10";
+
+
berryOfflinePatches = [ ./berry-4-offline.patch ];
+
+
# Known good version: 1.11.3
+
libzip =
+
(libzip.override {
+
# Known good version: 2.2.4
+
zlib = zlib-ng.override {
+
withZlibCompat = true;
+
};
+
}).overrideAttrs
+
(oA: {
+
patches = (oA.patches or [ ]) ++ [
+
(final.yarn-berry-fetcher.src + "/libzip-revert-to-old-versionneeded-behavior.patch")
+
];
+
});
+
};
+
};
+
in
+
+
lib.makeScope newScope (
+
final:
+
let
+
berryVersion = lib.versions.major yarn-berry.version;
+
+
err = throw ''
+
Berry version ${toString berryVersion} not supported by yarn-berry-fetcher.
+
Supported versions: ${lib.concatStringsSep ", " (lib.attrNames variantOverlays)}
+
'';
+
variantOverlay = (variantOverlays.${berryVersion} or err) final;
+
in
+
(
+
{
+
inherit yarn-berry berryVersion;
+
+
yarn-berry-offline = final.yarn-berry.overrideAttrs (old: {
+
pname = old.pname + "-offline";
+
patches = (old.patches or [ ]) ++ final.berryOfflinePatches;
+
});
+
+
yarn-berry-fetcher = final.callPackage ./yarn-berry-fetcher.nix { };
+
fetchYarnBerryDeps = final.callPackage ./fetch-yarn-berry-deps.nix { };
+
yarnBerryConfigHook = final.callPackage ./yarn-berry-config-hook.nix { };
+
}
+
// variantOverlay
+
)
+
)
+76
pkgs/by-name/ya/yarn-berry/fetcher/fetch-yarn-berry-deps.nix
···
+
{
+
lib,
+
stdenv,
+
yarn-berry-fetcher,
+
nix-prefetch-git,
+
cacert,
+
berryVersion,
+
}:
+
+
{
+
src ? null,
+
hash ? "",
+
sha256 ? "",
+
...
+
}@args:
+
+
let
+
hash_ =
+
if hash != "" then
+
{
+
outputHashAlgo = null;
+
outputHash = hash;
+
}
+
else if sha256 != "" then
+
{
+
outputHashAlgo = "sha256";
+
outputHash = sha256;
+
}
+
else
+
{
+
outputHashAlgo = "sha256";
+
outputHash = lib.fakeSha256;
+
};
+
in
+
+
stdenv.mkDerivation (
+
{
+
# The name is fixed as to not produce multiple store paths with the same content
+
name = "offline";
+
+
dontUnpack = src == null;
+
dontInstall = true;
+
+
nativeBuildInputs = [
+
yarn-berry-fetcher
+
nix-prefetch-git
+
cacert
+
];
+
+
buildPhase = ''
+
runHook preBuild
+
+
yarnLock=''${yarnLock:=$PWD/yarn.lock}
+
yarn-berry-fetcher fetch $yarnLock $missingHashes
+
+
runHook postBuild
+
'';
+
+
outputHashMode = "recursive";
+
+
passthru = {
+
inherit berryVersion;
+
};
+
}
+
// hash_
+
// (removeAttrs args (
+
[
+
"name"
+
"pname"
+
"version"
+
"hash"
+
"sha256"
+
]
+
++ (lib.optional (src == null) "src")
+
))
+
)
+24
pkgs/by-name/ya/yarn-berry/fetcher/yarn-berry-config-hook.nix
···
+
{
+
makeSetupHook,
+
yarn-berry-offline,
+
srcOnly,
+
nodejs,
+
diffutils,
+
}:
+
+
makeSetupHook {
+
name = "yarn-berry-config-hook";
+
substitutions = {
+
# Specify `diff` by abspath to ensure that the user's build
+
# inputs do not cause us to find the wrong binaries.
+
diff = "${diffutils}/bin/diff";
+
+
yarn_offline = "${yarn-berry-offline}/bin/yarn";
+
+
nodeSrc = srcOnly nodejs;
+
nodeGyp = "${nodejs}/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js";
+
};
+
meta = {
+
description = "Install nodejs dependencies from an offline yarn cache produced by fetchYarnDeps";
+
};
+
} ./yarn-berry-config-hook.sh
+85
pkgs/by-name/ya/yarn-berry/fetcher/yarn-berry-config-hook.sh
···
+
yarnBerryConfigHook() {
+
echo "Executing yarnBerryConfigHook"
+
+
# Use a constant HOME directory
+
export HOME=$(mktemp -d)
+
if [[ -n "$yarnOfflineCache" ]]; then
+
offlineCache="$yarnOfflineCache"
+
fi
+
if [[ -z "$offlineCache" ]]; then
+
echo yarnBerryConfigHook: No yarnOfflineCache or offlineCache were defined\! >&2
+
exit 2
+
fi
+
+
local -r cacheLockfile="$offlineCache/yarn.lock"
+
local -r srcLockfile="$PWD/yarn.lock"
+
+
echo "Validating consistency between $srcLockfile and $cacheLockfile"
+
+
if ! @diff@ "$srcLockfile" "$cacheLockfile"; then
+
# If the diff failed, first double-check that the file exists, so we can
+
# give a friendlier error msg.
+
if ! [ -e "$srcLockfile" ]; then
+
echo
+
echo "ERROR: Missing yarn.lock from src. Expected to find it at: $srcLockfile"
+
echo "Hint: You can copy a vendored yarn.lock file via postPatch."
+
echo
+
+
exit 1
+
fi
+
+
if ! [ -e "$cacheLockfile" ]; then
+
echo
+
echo "ERROR: Missing lockfile from cache. Expected to find it at: $cacheLockfile"
+
echo
+
+
exit 1
+
fi
+
+
echo
+
echo "ERROR: fetchYarnDeps hash is out of date"
+
echo
+
echo "The yarn.lock in src is not the same as the in $offlineCache."
+
echo
+
echo "To fix the issue:"
+
echo '1. Use `lib.fakeHash` as the fetchYarnBerryDeps hash value'
+
echo "2. Build the derivation and wait for it to fail with a hash mismatch"
+
echo "3. Copy the 'got: sha256-' value back into the fetchYarnBerryDeps hash field"
+
echo
+
+
exit 1
+
fi
+
+
if [[ -n "$missingHashes" ]] || [[ -f "$offlineCache/missing-hashes.json" ]]; then
+
echo "Validating consistency of missing-hashes.json"
+
if [[ -z "$missingHashes" ]]; then
+
echo "You must specify missingHashes in your derivation"
+
exit 1
+
fi
+
if ! @diff@ "$missingHashes" "$offlineCache/missing-hashes.json"; then
+
exit 1
+
fi
+
fi
+
+
YARN_IGNORE_PATH=1 @yarn_offline@ config set enableTelemetry false
+
YARN_IGNORE_PATH=1 @yarn_offline@ config set enableGlobalCache false
+
+
# The cache needs to be writable in case yarn needs to re-pack any patch: or git dependencies
+
rm -rf ./.yarn/cache
+
mkdir -p ./.yarn
+
cp -r --reflink=auto $offlineCache/cache ./.yarn/cache
+
chmod u+w -R ./.yarn/cache
+
[ -d $offlineCache/checkouts ] && cp -r --reflink=auto $offlineCache/checkouts ./.yarn/checkouts
+
[ -d $offlineCache/checkouts ] && chmod u+w -R ./.yarn/checkouts
+
+
export npm_config_nodedir="@nodeSrc@"
+
export npm_config_node_gyp="@nodeGyp@"
+
+
YARN_IGNORE_PATH=1 @yarn_offline@ install --inline-builds
+
+
echo "finished yarnBerryConfigHook"
+
}
+
+
if [[ -z "${dontYarnBerryInstallDeps-}" ]]; then
+
postConfigureHooks+=(yarnBerryConfigHook)
+
fi
+50
pkgs/by-name/ya/yarn-berry/fetcher/yarn-berry-fetcher.nix
···
+
{
+
lib,
+
rustPlatform,
+
fetchFromGitLab,
+
+
libzip,
+
openssl,
+
pkg-config,
+
+
berryVersion,
+
berryCacheVersion,
+
}:
+
+
rustPlatform.buildRustPackage (finalAttrs: {
+
pname = "yarn-berry-${toString berryVersion}-fetcher";
+
version = "1.0.0";
+
+
src = fetchFromGitLab {
+
domain = "cyberchaos.dev";
+
owner = "yuka";
+
repo = "yarn-berry-fetcher";
+
tag = "1.0.0";
+
hash = "sha256-iMU/SadzrNv8pZSgp2fBwWVgrgZsnyPRsvs0ugvwyks=";
+
};
+
+
useFetchCargoVendor = true;
+
cargoHash = "sha256-ETFaCu+6Ar7tEeRCbTbesEqx9BdztSvPXB7Dc5KGIx0=";
+
+
env.YARN_ZIP_SUPPORTED_CACHE_VERSION = berryCacheVersion;
+
env.LIBZIP_SYS_USE_PKG_CONFIG = 1;
+
+
nativeBuildInputs = [
+
rustPlatform.bindgenHook
+
pkg-config
+
];
+
buildInputs = [
+
libzip
+
openssl
+
];
+
+
meta = {
+
homepage = "https://cyberchaos.dev/yuka/yarn-berry-fetcher";
+
license = lib.licenses.mit;
+
mainProgram = "yarn-berry-fetcher";
+
maintainers = with lib.maintainers; [
+
yuka
+
flokli
+
];
+
};
+
})
+8 -5
pkgs/by-name/ya/yarn-berry/package.nix
···
stdenv,
testers,
yarn,
+
callPackage,
berryVersion ? 4,
}:
···
runHook postInstall
'';
-
passthru.updateScript = ./update.sh;
+
passthru = {
+
updateScript = ./update.sh;
-
passthru.tests = {
-
version = testers.testVersion {
-
package = finalAttrs.finalPackage;
+
tests = {
+
version = testers.testVersion {
+
package = finalAttrs.finalPackage;
+
};
};
-
};
+
} // (callPackage ./fetcher { yarn-berry = finalAttrs; });
meta = with lib; {
homepage = "https://yarnpkg.com/";
+2 -2
pkgs/development/python-modules/aider-chat/default.nix
···
];
};
-
version = "0.82.1";
+
version = "0.82.2";
aider-chat = buildPythonPackage {
pname = "aider-chat";
inherit version;
···
owner = "Aider-AI";
repo = "aider";
tag = "v${version}";
-
hash = "sha256-J9znZfPcg1cLINFOCSQ6mpr/slL/jQXqenyi3a++VVE=";
+
hash = "sha256-lV0d6/cT/B3zmn8/uEyAc3D0n6oFsLoWa/qYmGv3EiI=";
};
pythonRelaxDeps = true;
+2 -2
pkgs/development/python-modules/elevenlabs/default.nix
···
}:
let
-
version = "1.56.0";
+
version = "1.57.0";
tag = "v${version}";
in
buildPythonPackage {
···
owner = "elevenlabs";
repo = "elevenlabs-python";
inherit tag;
-
hash = "sha256-BDHfEhg8nj41jZa4Cuw1Ck2qWwY2GlKK8GQ9ZqMQHcs=";
+
hash = "sha256-t5/el7rmJvZHBCfmRhJ61ZJenELH99GEJ6XNRkpcKNo=";
};
build-system = [ poetry-core ];
+2 -2
pkgs/development/python-modules/pymilvus/default.nix
···
buildPythonPackage rec {
pname = "pymilvus";
-
version = "2.5.6";
+
version = "2.5.7";
pyproject = true;
src = fetchFromGitHub {
owner = "milvus-io";
repo = "pymilvus";
tag = "v${version}";
-
hash = "sha256-ejbzsiFd0kZKV3PEDDxDpl2wI0cwWEJjRcUmtvk59Jo=";
+
hash = "sha256-Sv1V8JjDQtgyKdd8yFNbXIXUK9hmlyB4xsmk49W0wGk=";
};
build-system = [
+10 -53
pkgs/servers/monitoring/grafana/default.nix
···
removeReferencesTo,
tzdata,
wire,
-
yarn,
+
yarn-berry_4,
nodejs,
python3,
cacert,
···
# borrowed from: https://github.com/NixOS/nixpkgs/blob/d70d9425f49f9aba3c49e2c389fe6d42bac8c5b0/pkgs/development/tools/analysis/snyk/default.nix#L20-L22
env = {
CYPRESS_INSTALL_BINARY = 0;
+
+
# The build OOMs on memory constrained aarch64 without this
+
NODE_OPTIONS = "--max_old_space_size=4096";
};
-
offlineCache = stdenv.mkDerivation {
-
name = "${pname}-${version}-yarn-offline-cache";
-
inherit src env;
-
nativeBuildInputs = [
-
yarn
-
nodejs
-
cacert
-
jq
-
moreutils
-
# required to run old node-gyp
-
(python3.withPackages (ps: [ ps.distutils ]))
-
git
-
# @esfx/equatable@npm:1.0.2 fails to build on darwin as it requires `xcbuild`
-
] ++ lib.optionals stdenv.hostPlatform.isDarwin [ xcbuild.xcbuild ];
-
buildPhase = ''
-
runHook preBuild
-
export HOME="$(mktemp -d)"
-
yarn config set enableTelemetry 0
-
yarn config set cacheFolder $out
-
yarn config set --json supportedArchitectures.os '[ "linux", "darwin" ]'
-
yarn config set --json supportedArchitectures.cpu '["arm", "arm64", "ia32", "x64"]'
-
yarn
-
runHook postBuild
-
'';
-
dontConfigure = true;
-
dontInstall = true;
-
dontFixup = true;
-
outputHashMode = "recursive";
-
outputHash =
-
rec {
-
x86_64-linux = "sha256-52Sq7YJHhs0UICMOtEDta+bY7b/1SdNfzUOigQhH3E4=";
-
aarch64-linux = x86_64-linux;
-
aarch64-darwin = "sha256-9AJbuA1WDGiln2ea0nqD9lDMhKWdYyVkgFyFLB6/Etc=";
-
x86_64-darwin = aarch64-darwin;
-
}
-
.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
+
missingHashes = ./missing-hashes.json;
+
offlineCache = yarn-berry_4.fetchYarnBerryDeps {
+
inherit src missingHashes;
+
hash = "sha256-qJ1xP02tdoZmAlrO5J8wxRYdNeg420NN27Tt2gaNPFc=";
};
disallowedRequisites = [ offlineCache ];
···
nativeBuildInputs = [
wire
-
yarn
jq
moreutils
removeReferencesTo
# required to run old node-gyp
(python3.withPackages (ps: [ ps.distutils ]))
faketty
+
yarn-berry_4
+
yarn-berry_4.yarnBerryConfigHook
] ++ lib.optionals stdenv.hostPlatform.isDarwin [ xcbuild.xcbuild ];
postConfigure = ''
···
GOARCH= CGO_ENABLED=0 go generate ./kinds/gen.go
GOARCH= CGO_ENABLED=0 go generate ./public/app/plugins/gen.go
-
# Setup node_modules
-
export HOME="$(mktemp -d)"
-
# Help node-gyp find Node.js headers
-
# (see https://github.com/NixOS/nixpkgs/blob/master/doc/languages-frameworks/javascript.section.md#pitfalls-javascript-yarn2nix-pitfalls)
-
mkdir -p $HOME/.node-gyp/${nodejs.version}
-
echo 9 > $HOME/.node-gyp/${nodejs.version}/installVersion
-
ln -sfv ${nodejs}/include $HOME/.node-gyp/${nodejs.version}
-
export npm_config_nodedir=${nodejs}
-
-
yarn config set enableTelemetry 0
-
yarn config set cacheFolder $offlineCache
-
yarn install --immutable-cache
-
-
# The build OOMs on memory constrained aarch64 without this
-
export NODE_OPTIONS=--max_old_space_size=4096
'';
postBuild = ''
+88
pkgs/servers/monitoring/grafana/missing-hashes.json
···
+
{
+
"@esbuild/aix-ppc64@npm:0.25.0": "f9a1263789c799c54255f102aa7e5eb92ff2938e5f1e28d7270ae9388d7f0b07a89c6928201089e9917da3531c3370675cbdf3ee213dbb46c219168826dcbf07",
+
"@esbuild/android-arm64@npm:0.25.0": "b935e4909cfecaf6166268edb337ac481eb79760230efe9893d09dfffc242915307edc890220ff1fe6378f9a6dc88043971a8282929e21ee92d5bb32d1ff33ad",
+
"@esbuild/android-arm@npm:0.25.0": "109a800ac79c78770cbc5f76c6ba8d2c3a3324c408748016429b5c8aad211463e33d8c0ed7a740f55d8df7a1bac4e78bc5029521f07e740731b7564c688c2206",
+
"@esbuild/android-x64@npm:0.25.0": "033e21f87df0b0a50b6f54de5ba2dc20c232f008fc62c377c8a359dc27c6d96eaaf57fab8c87c829e36fb49249811bcb0dfb0df958fc2cd1a2311fe443db7a2c",
+
"@esbuild/darwin-arm64@npm:0.25.0": "d82d5f8b724a77ee7d65b7d47159930015135c7fb0fc7dc3ad056203bb97a1a933f516fd91f0213420a80c0a9ddfec954c952c554edf00629d9bc964313a3836",
+
"@esbuild/darwin-x64@npm:0.25.0": "ae029503666bfa48c6cbcbc991ac9d841e1f03f056f71782b78e57ac4083022eb505deab330651ee05deab76688cf3139bdbea84caea6491fcaf5caa2b912946",
+
"@esbuild/freebsd-arm64@npm:0.25.0": "9f72aaa0c1845f3ada5a6a1cffa43c7683c25313455aa997ca8b233316a87d163722d8c26a0e86663c5ebbdca6ab91cf1975f0c0e7fbe062087cbef92c666b04",
+
"@esbuild/freebsd-x64@npm:0.25.0": "b96749a6d7da71fff98309655eb85b09de84416ae5c09a02e803342bba25c81e0ac181212bac49fa8d8cc28bfa5e1fbb8d349f2b4722e2ca2df2e4a383d17935",
+
"@esbuild/linux-arm64@npm:0.25.0": "1dbf78595fed87287eccde8fb9a5e35d448ab3b7cd84c03fdfa47c250701a62160d7aa45b4de9ca5e11039975680829644529636bbe254e1627836c5227efca2",
+
"@esbuild/linux-arm@npm:0.25.0": "b1a165678166d006b32f965cb51719403fdea18c9ec2e498807f0b273b46a3a555b214d5d5f832393471180e1d39ca9f06e7bfe3c2c97c0cbc30314a38b422c0",
+
"@esbuild/linux-ia32@npm:0.25.0": "21a136d8301fac7f23724061832426efddc2f9769b29b37e88443245ed0406f0b1f9bc05a02b6d0cf7b3e2e8ec2c8e1e8d99b3178a01ace6974369930f0020f6",
+
"@esbuild/linux-loong64@npm:0.25.0": "f87baa1534a52b24198d9d845821f37bec9c4afb08307ee66c3f1d223d3c684151749f4a0eeb96f3905d365bea9f6256787256ff35b9f80fdd51ed7d4f8356b6",
+
"@esbuild/linux-mips64el@npm:0.25.0": "2bfdec2d2730879795f6884d8f8a38a0297f0cd46bc3357c568fc59432d49d7e26c723d9b8111c799517628cafb469e30fa968387105079aa4b4b4d4192638bf",
+
"@esbuild/linux-ppc64@npm:0.25.0": "bca7b660b91939b5d9f4942b4f2e404efad88fa166c51ba49474b3b5ba200213e1c44499c419d2b13c5afe01b560f361b46d201acc146d76515b953be497bd4f",
+
"@esbuild/linux-riscv64@npm:0.25.0": "dfb00cd66f717315b9afab667a484c67a69a7a3f6bb9e4662cd3dd0b7465da3feb5182bca414ce0ad0f7a95d0a1fd248c792561c63008d483146eff8af6e678c",
+
"@esbuild/linux-s390x@npm:0.25.0": "4c5872f244ade04c71f1d0f14bd0d3ef0cd24c5404e55e33964fa5ce7b6f2e1283e9d9adb5356db76468cd85724f6cfdb1cd9674ad630344a7d01ca614bf59e3",
+
"@esbuild/linux-x64@npm:0.25.0": "22f6bfbb856653ee8cff0a93ce63947fd3bd4565c8bc7e9d437845fc4b44a2b3954b5e412b4aa4b63e62977beca12e0214b2607c7bc8c4ce359bd10118755df4",
+
"@esbuild/netbsd-arm64@npm:0.25.0": "a8286e8b687857779047d005d4a540a693a2e173893a34273773d0272e9908006e10085a52788f54775ca231ad231e8a7af9270dbd8203b9182dbe2c7fee68b6",
+
"@esbuild/netbsd-x64@npm:0.25.0": "e618540e5e086cabc260010e62110a8afb5b0dfc445e5cd6db843d8a7541403decee971265c5cf59e6f1268b03e8fb50e27b65f709faf647c4e20e0916f19621",
+
"@esbuild/openbsd-arm64@npm:0.25.0": "60cc4ce058e03389155dd34f777d4d5cae1fb62f9bb9659c615ce5d70e8093a58aa89a9ebb8fde4d2dba56e5771c6aaf4442db45f4a1c9d54d6c36a149b857d0",
+
"@esbuild/openbsd-x64@npm:0.25.0": "7ba16accc220c711d1bcbb17ada40de4503f9ed54b8a42957345a8a9b9a7c55eac550b234c6a5a812acf50386f2972fb6a5b0381b38f76cff4b3c44ba38ae1ac",
+
"@esbuild/sunos-x64@npm:0.25.0": "e6cbfb0a93b9f78ef991ff43af2ab33faacf382d9b8db44bf53a80b3fc27a9d0f598061b9a77de1db9481d69fd43a3fd4b20a40a2938923fa52cabdcac84e972",
+
"@esbuild/win32-arm64@npm:0.25.0": "47bd8e32c90da8472515ddc625e6284cf745b1b9eeecf16e2e699b94b3d11c2d773b16944c8de33d857a8e59426601063a3df04433cb670ed3e8421def07d96b",
+
"@esbuild/win32-ia32@npm:0.25.0": "072874686fe049446bba0ec18285414275ac74e8232307a856966ede8a822e72ab9f6119f7352f8feb51c629a20065dbc88f4412120480fe5bcc039dd439d0a7",
+
"@esbuild/win32-x64@npm:0.25.0": "ce021c1bb895345ee30f363d89e1f3631040fb44d2e27e614b65dc697090c30c5b66b80aa9d6e5e3b3153010b37e523d6ef34c7b4f2248192b1b4bdd30701b3f",
+
"@nx/nx-darwin-arm64@npm:19.8.2": "c537778a4629def5492e8e65184c2d6f6b36004231580d9d4ae0fbbabfe411d0149c5fac6369e5d5522bcddc0ad8f458b09ef6826a5da984ffb0d1d632e763cd",
+
"@nx/nx-darwin-x64@npm:19.8.2": "d9d8f9cea7b5a1e1ee7cdc783e6d0d228ea6d9bfd4b447ac6a99c7c12d64cb2a5fe26ab1633ccdc6cccbece828dc1f7cdfb628e1e7a7cfeb8ef8f843f200d533",
+
"@nx/nx-freebsd-x64@npm:19.8.2": "526002cfbec66b52fcad54e731fd8253063bb1bd838822169debcfba397946c2f85059adee75619762797bd91f860f7f360e3545a0815a85e301cb70cb20e074",
+
"@nx/nx-linux-arm-gnueabihf@npm:19.8.2": "0240584b8721eeaa44946df7d38259307dd03c1080d1b6086abde1e5bdb0bbd40c09e4fa8675e7103f1e3b381e11c941fe11743b8600aea0b30050cf71e8997b",
+
"@nx/nx-linux-arm64-gnu@npm:19.8.2": "8b988d520deb01393a839b090cd7862bc05c678857f50e71fac752992d9109706bea2e4013db0de002490597a75f5f8575cd5600f3b2593c9f1707e4223d49ce",
+
"@nx/nx-linux-arm64-musl@npm:19.8.2": "f49f65f457c200a4a16fc12384a86d262b06920988e946c7a06ec93de8bbdcc250779a1cbba363667a6faf7cecfe21bd11b06dc97f657e9fddb34d90b3cc6d5e",
+
"@nx/nx-linux-x64-gnu@npm:19.8.2": "1a1c613a2cb5e6641f974a46e9e0e0c85a327355a39cd8909107001c41aaa0b52f3a0d9e31484a247c8b851496d9bb41212c00b930eee8a6b53bcb909f47443a",
+
"@nx/nx-linux-x64-musl@npm:19.8.2": "bd8b6d6a6fa6c996de60f73c391364b9d1c094e24485da400b39209fac25aaca9d68ddb99b21b1a3666697b53eaa3afe325d998bebc656d5996a76788e8cab2f",
+
"@nx/nx-win32-arm64-msvc@npm:19.8.2": "7bbdc04b82b64bb1caaf57e098bcb569f19ec57752a31e742922808b59e86216eebe20c4ac742e2c5769903f16274b2285a87eb9d484a6a6eb2a45ca096ada63",
+
"@nx/nx-win32-x64-msvc@npm:19.8.2": "b6be716206e03e18e7ffabb13ba036abe22cda76af10c6342d836ad9185622be115f9ef91a8b28b38674cb7be0e7eae40614e29e1e81fc224514e6584283b3fa",
+
"@parcel/watcher-android-arm64@npm:2.4.1": "279ac643abaccb2f9c986f35e39478e242b33bdda3128ca9e728ca1429b923d5f1bdc22268946138b0ced130ac3b2294cf2a44ff080b27c06a79062a5bbba13c",
+
"@parcel/watcher-darwin-arm64@npm:2.4.1": "312fd03aaf7e75824fb84b6b99649caa4db01d55320320d88fb75ad5151bd24876555ae19fe8fdf81f92952bcf01e0a82db7c3bf540e54cee5beb20b85a6a80c",
+
"@parcel/watcher-darwin-x64@npm:2.4.1": "47d8fd40e17e419459294b75c455ac7ce2a53dfcc578f2c2ab0fb0f59ad1ee6a6e87b6ecb92708139f48ed8568ffdd675fe5e57ed1468abac6a2a650fe490926",
+
"@parcel/watcher-freebsd-x64@npm:2.4.1": "2f3a48d2f0baf9f70f1904c9288978308ea0632b39a59b0eb2b2ff7a34bf34a8ae31d7bfb1c6ac3c36e010cc1176dd04a6a7603a9b053f6230187a48ed07adc9",
+
"@parcel/watcher-linux-arm-glibc@npm:2.4.1": "1805d7f98f67b826211a184093d4ec4c280d2f932885b6b886fa02ee60fd7b3bab37ad62cf3ea65b8398aac5c26b7a23fa7634d4d69aede54411847efb5d6546",
+
"@parcel/watcher-linux-arm64-glibc@npm:2.4.1": "4e305f7a5763ba0dc1efee8de9ee31227a5e31f1124eb7cdbc3278dbc941ae1302bed28e7e53169914a9448c7768a548fa4df844ef4255e6afe95186e8558f27",
+
"@parcel/watcher-linux-arm64-musl@npm:2.4.1": "fbc03542be07147fe66e84b683f2d05818b5b04d72ec2f4c89e32ce5b02a0c121d20623ae8121fff66dfebd0eb02ef6eca682624f90ed38c9d7969a2cd501065",
+
"@parcel/watcher-linux-x64-glibc@npm:2.4.1": "4ab81240ba30adfdf360a0c1a62b2a6c1803997d70130b6238d99904d0ded1a71fdd35c0b3f14e5543e37660ad18c178e565e55f7cfd05316488f57a4293d759",
+
"@parcel/watcher-linux-x64-musl@npm:2.4.1": "b4bf90b17b7e6b79a1ec999924fb2f5ca9a9142debc04c636146013450662ee8dbba5667265091023b930af5feadcdd147bb6358b51c52ab8d335af9bdd27078",
+
"@parcel/watcher-win32-arm64@npm:2.4.1": "a1395a97d1373dd7075da7234af8996302e45cb9d2507633a0f8188c239e8121e63842dded6fc13613986e0833c88435a8750b3c6b35d86b9e1af2b97430b940",
+
"@parcel/watcher-win32-ia32@npm:2.4.1": "05a294e24923a02febe852154d8f8dd75fdeb53db8522c3bc87860523f1dc70d41a7507318b3ac93a24feda44526720dba2f1a7e0e20de7ca815c7dd175e3c11",
+
"@parcel/watcher-win32-x64@npm:2.4.1": "28dc8dc547c4ef8b24193356bab99c4e5aafb2c8097e2d06b875c2ce4d767a9034ff82fbfac34a86fd331f8daea91a3aeee5c179ed69120c02e035f72dd44877",
+
"@rollup/rollup-android-arm-eabi@npm:4.32.1": "b017ace00bd6c6a7c4dba799cabb9ffd231a23b181aff1664b60aa95dcbb28845f980c61e0031eab23f00fa612b231576d1a1c7fe4ec68e5c3e1787fb1bdd03e",
+
"@rollup/rollup-android-arm64@npm:4.32.1": "edcbb936fa8730598aa971f589f3413bd5148b8031c635a27ec9dd9415ef5a8257f6ef731d915aad0fbfcb5c5306d8ab135e09fefe0f876be198bd39466e1fdb",
+
"@rollup/rollup-darwin-arm64@npm:4.32.1": "721985238c99bd45a2afc8d17906cfdb4b8e7d73cc8adc0d30da8488248030d9d8248e1bdf1088414a67dfe3af8945d664437cebf327363de5842563148887be",
+
"@rollup/rollup-darwin-x64@npm:4.32.1": "dafe6ae9f41b1362bc0a40d7a9c65e769ddbc99a0f47420459b85eb35315016d8b2c7752491cceae9fba63a7b025bf9cba75fe0d7aeeb714c20adbe789d41836",
+
"@rollup/rollup-freebsd-arm64@npm:4.32.1": "56b6addc09573afa9a4c2cdcf60d04f6a02a9fbad091c508390504cdcb5c8c2ac4fe5f57615e3808eb3ae95e0976a0f6058304d07918078ee6cdd1da51270532",
+
"@rollup/rollup-freebsd-x64@npm:4.32.1": "8f0f96127a5011bdb94efbbb89c9cc1a2cb33bcd45501dd67f6615242be16d6e0fbb95a5827d4b81953755483565d8d8404e1edade20df1fadafda1e21842389",
+
"@rollup/rollup-linux-arm-gnueabihf@npm:4.32.1": "2762a35b562ff48deaafb6fb2a3f3a61aeab9193ad404ac2f92c0c8c601aa7ec0e0419601cf45f3d76793b43bdd3497e63d98bc3fa410f6363f3dca37f08eb70",
+
"@rollup/rollup-linux-arm-musleabihf@npm:4.32.1": "4ba13aa9a1ff86990a8aa13144942be97665d4cf657359c4d617f76dbf7d375ddf1e11531c74714997581645558df87d40b4e2e23d1d95ddf80909e529a6c2b9",
+
"@rollup/rollup-linux-arm64-gnu@npm:4.32.1": "578a86aaa8ce61b1e9a3963c753752181b3ce360f00fb5eaa96ae4e48d62d994f7e2c69870781ded78d2ff530d9f03986c3145f19f657aa881222b8d13d0dc99",
+
"@rollup/rollup-linux-arm64-musl@npm:4.32.1": "0800cced8692a3a0c48dfcc05b4ccd731ba288eb2bcfad680ea2a8272b31667c3bcabe3782d809bc9480a052144d6a6e91a7fa2584aded1fcd46ff81a5ec26ee",
+
"@rollup/rollup-linux-loongarch64-gnu@npm:4.32.1": "7bff2363b2d00d264f0001cd510b41eb1b6ceabe000a211871931e04d15983b44bf4b58eb87c61b007c278caff45178bdda596d08c5a2e281a76945a0f4eadd4",
+
"@rollup/rollup-linux-powerpc64le-gnu@npm:4.32.1": "0a86e6510f176d5e156bd2c77fbca2ab182289b54513ef5d450d308e1c1f144c94474d34c11a9f52be10512e92fe2f5239dc984914eaafd76cf96fd625b4f9ef",
+
"@rollup/rollup-linux-riscv64-gnu@npm:4.32.1": "1c1daef81116da736228a921abe935f3d7398c5f7f78aeeef9171f237c2ece162cb3adedb618a57739ec43cce111a24985aa776a5d802b09be46f341d9878c29",
+
"@rollup/rollup-linux-s390x-gnu@npm:4.32.1": "50974fbbd591a744ad5a6c240777fe7b96d1fc8827546655d38cfc3a764cd1a4491e2c012b949c8fd78d48b8000b91d0ec8b649299eaf26bba99564a20ca519c",
+
"@rollup/rollup-linux-x64-gnu@npm:4.32.1": "cadcff5dd0e7d01ac30043e4ce9df81e308c14b7eab1de65e59f114d08c122d76c15b20b9677686c0b6061691bcc13aa835c488c504d6f8c782330cb7db81afe",
+
"@rollup/rollup-linux-x64-musl@npm:4.32.1": "415b177b762909cd04af0277118c798e02f979ff86e84c8b4d65bc70323d8e221aff9c0c7d904221bd6338515fe0223b8d59610728dfcfc42c4dac864f9d0829",
+
"@rollup/rollup-win32-arm64-msvc@npm:4.32.1": "0a86e7b0bd7d80b01c6850c27ba5c8ad52d17ae98069b0741c074ef796285735da2a0bd936e347078c344e569d288ba84a188414163bf67979764e1b532873d1",
+
"@rollup/rollup-win32-ia32-msvc@npm:4.32.1": "e7076720071ba1020906a4ded867069bf20b48b44f2623f52eb06c006d1884aeebd05407f7b758375dc3ce351267c53185745de51fdb1593ec1302527b9b54ce",
+
"@rollup/rollup-win32-x64-msvc@npm:4.32.1": "a49e24d28b1ec5a07b75ae9a23ffb3542300b094a057dc5b57bd4923670a90fb8ba093fe4d3e07a78d6712a9fa20c21289cf5e4a67e7d0e513111053dc807ae2",
+
"@swc/core-darwin-arm64@npm:1.10.12": "f9e130a3f754b327499c9a2cce7ed7f7ade71430321a59d856102908c8d4c0ef873c1c84e35b303cfc632788579cd3f8474dc8d45d4f81ac2657e525b766aee9",
+
"@swc/core-darwin-arm64@npm:1.11.4": "f66ade345eda79cb2d61f9f1ef3492bd1caca389c19090b839c9f1e5d5080dde0162269130a0b4b1aec757f5f2d82393bad8b04075968c277a8b2f495ff47c14",
+
"@swc/core-darwin-x64@npm:1.10.12": "7176b9926e4bded9475fd964337fb2cf5a42dcd4d38ae660064c1ff554ce837c2b4c51b5ea8fe0b82f1cb7ee42f40ac913aa90cdb21b561b6cb0cf976ccebd91",
+
"@swc/core-darwin-x64@npm:1.11.4": "b223e1375196c5b3395bb321e5acc5503c5ce1e9ea7292171d49421e8cb9dc678ba61a3a1013d0d28edadcafb687fea95d0c2883cdfbff7d35c3425732ee5b9f",
+
"@swc/core-linux-arm-gnueabihf@npm:1.10.12": "3346e03f89e490978e6e87145790a47ffb563133ff37cefe21cd6ef0ea5b47b717ed82611305e4f70bf9f8023dc4f56e6d207c5e85fc2dd8d9a467c2bea339d9",
+
"@swc/core-linux-arm-gnueabihf@npm:1.11.4": "76f0a34f144c08259d45fb864023cce52970f3b2cd401d371b6f27d57d6d418b0aed8e30b90ad736b3cd71b542c3cff0908fa58da5558b2ff22b1cf070a961ca",
+
"@swc/core-linux-arm64-gnu@npm:1.10.12": "a3e19bc00cb0394b0f62e42220cff64f6e84aba72fd9a078cdba6523157d4ff240843a7dead6b5cdf8f143f5007445637e741ead794666d130644da70bb09737",
+
"@swc/core-linux-arm64-gnu@npm:1.11.4": "b4c6dfa4a80064f861afa82d31b630f104733516dd48d5614b345f76fad2648d0e76fe4ac36e5c5f02621ddf8d5be7f8e61c00c2ddab33e6f11b633cbabb0174",
+
"@swc/core-linux-arm64-musl@npm:1.10.12": "bca439723e73bef871ca0a22b00bd0f83bd972f172cc8b9594d85043c9ed2d0ca290ca58bba7afce064792685168f4e7c4561b7c25e085f95227252cee32e195",
+
"@swc/core-linux-arm64-musl@npm:1.11.4": "b23e6800a7bc75e46af230ec26fe699078ed422adc0393300479dab1735771178ad96c64c3548e5d79d447e8dcd7807757af71e3741d70e9e29ddac43d09242a",
+
"@swc/core-linux-x64-gnu@npm:1.10.12": "f0e40dc6c9c1b486ff8165b96e63cff66ccc1a35af922ee1ae99c9773eaaec8d6d080f18aacce5ef89987037aa8994422a73efb24eafdf151dcc0d6524a222ae",
+
"@swc/core-linux-x64-gnu@npm:1.11.4": "9979a8e0cd4a333f279340bef4c92bbffe211b81a0a8303dd98e4164f95d7f186587ef5f6d34a7d0a1f75ae23dd0c7350bd9214fa090d220d37288eb5580ebda",
+
"@swc/core-linux-x64-musl@npm:1.10.12": "a3d17b84d05233293280a9eb9a2a773a36b2a566147d8c1bc2551ee0166260f6e576589736f77a2f5270dd7b6988d4397119617232ecf351145dc4449e193212",
+
"@swc/core-linux-x64-musl@npm:1.11.4": "5d919b8ccc791f169f7f2d44edab577eeb809b82bbede081d307328209c7be82a29ab65f54fa69b28022366ccb4bdbcaceb623d55753e2f6067d77c90a06dd15",
+
"@swc/core-win32-arm64-msvc@npm:1.10.12": "9bc68365749129569258f6542a897eca224b67009aa43aabb08b074c3c7e63147acf2fb330c7fa0217e9816901eaeca7eb4e5abdf80c720a9296b865af8ff117",
+
"@swc/core-win32-arm64-msvc@npm:1.11.4": "c78cace9e6942216587ff4c82ebb45f9ca050b84eddc9a2e8f3a511eeff570a683a5016cf3badfae176b76c22f68395fdebf719a725ea54fd1a97e70ed4c8faf",
+
"@swc/core-win32-ia32-msvc@npm:1.10.12": "a6ff15734b55af34eebe86d6ee2d6b9447d4dd2bfcd50883a01d5310f5fa8274a1e2840b647a2b97e128cddc8463272f0258af35d1065e9c68784a425920e246",
+
"@swc/core-win32-ia32-msvc@npm:1.11.4": "e122f27adf40e581a7790beae25ee3c2c29b38520de8a1ecbbfea006bec52b3d6060db1cc9d6d6db1cb2950c28391f46dcc989536138084f30d5c95accb6049c",
+
"@swc/core-win32-x64-msvc@npm:1.10.12": "7efa206f3f2778cfeda3f9a580ebcbac34e91c3c720c16c1bc00bb7963f9c63a9dc226f89b6609f19d568a917fc9db3fc3ee5dcea931f70bbafb30602bc3b4d1",
+
"@swc/core-win32-x64-msvc@npm:1.11.4": "45e698626c0336a70501c8fb1c23feb28cfb03d61108104a6de6be0090ca4a47e455baac2396167d05e9c710d087d8e48c36cfeb52470c93be1e7599666680e0"
+
}