mirror of
https://github.com/NixOS/nixpkgs.git
synced 2026-07-06 17:13:24 -05:00
Merge release-26.05 into staging-nixos-26.05
This commit is contained in:
commit
d282d377da
70 changed files with 650 additions and 371 deletions
1
.github/PULL_REQUEST_TEMPLATE.md
vendored
1
.github/PULL_REQUEST_TEMPLATE.md
vendored
|
|
@ -13,7 +13,6 @@ For new packages please briefly describe the package or provide a link to its ho
|
|||
- Built on platform:
|
||||
- [ ] x86_64-linux
|
||||
- [ ] aarch64-linux
|
||||
- [ ] x86_64-darwin
|
||||
- [ ] aarch64-darwin
|
||||
- Tested, as applicable:
|
||||
- [ ] [NixOS tests] in [nixos/tests].
|
||||
|
|
|
|||
17
.github/workflows/build.yml
vendored
17
.github/workflows/build.yml
vendored
|
|
@ -34,21 +34,18 @@ jobs:
|
|||
matrix:
|
||||
include:
|
||||
- runner: ubuntu-24.04
|
||||
name: x86_64-linux
|
||||
systems: x86_64-linux
|
||||
system: x86_64-linux
|
||||
builds: [shell, manual-nixos, lib-tests, tarball]
|
||||
desc: shell, docs, lib, tarball
|
||||
- runner: ubuntu-24.04-arm
|
||||
name: aarch64-linux
|
||||
systems: aarch64-linux
|
||||
system: aarch64-linux
|
||||
builds: [shell, manual-nixos, manual-nixpkgs]
|
||||
desc: shell, docs
|
||||
- runner: macos-14
|
||||
name: darwin
|
||||
systems: aarch64-darwin x86_64-darwin
|
||||
system: aarch64-darwin
|
||||
builds: [shell]
|
||||
desc: shell
|
||||
name: '${{ matrix.name }}: ${{ matrix.desc }}'
|
||||
name: '${{ matrix.system }}: ${{ matrix.desc }}'
|
||||
runs-on: ${{ matrix.runner }}
|
||||
timeout-minutes: 60
|
||||
steps:
|
||||
|
|
@ -80,7 +77,9 @@ jobs:
|
|||
|
||||
- name: Build shell
|
||||
if: contains(matrix.builds, 'shell')
|
||||
run: echo "${{ matrix.systems }}" | xargs -n1 nix-build-uncached nixpkgs/untrusted/ci --arg nixpkgs ./nixpkgs/untrusted-pinned -A shell --argstr system
|
||||
env:
|
||||
system: ${{ matrix.system }}
|
||||
run: nix-build-uncached nixpkgs/untrusted/ci --arg nixpkgs ./nixpkgs/untrusted-pinned -A shell --argstr system "$system"
|
||||
|
||||
- name: Build NixOS manual
|
||||
if: |
|
||||
|
|
@ -108,5 +107,5 @@ jobs:
|
|||
contains(fromJSON(inputs.baseBranch).type, 'primary')
|
||||
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
|
||||
with:
|
||||
name: ${{ inputs.artifact-prefix }}nixos-manual-${{ matrix.name }}
|
||||
name: ${{ inputs.artifact-prefix }}nixos-manual-${{ matrix.system }}
|
||||
path: nixos-manual
|
||||
|
|
|
|||
|
|
@ -364,7 +364,7 @@ It is highly recommended to use a pinned version of pnpm (i.e., `pnpm_9` or `pnp
|
|||
+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-slim_22; };
|
||||
+ # pnpm = pnpm_10.override { nodejs-slim = nodejs-slim_22; };
|
||||
+in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "foo";
|
||||
|
|
|
|||
|
|
@ -24,11 +24,11 @@
|
|||
# Pinned Nixpkgs archive
|
||||
#
|
||||
# Use `curl -I https://channels.nixos.org/nixos-26.05` to get the
|
||||
# latest commit of the stable channel and `nix --extra-experimental-features nix-command store prefetch-file --unpack`
|
||||
# to compute its hash.
|
||||
# latest commit of the stable channel and `nix-prefetch-url --unpack`
|
||||
# to compute its sha256 hash.
|
||||
nixpkgs = builtins.fetchTarball {
|
||||
url = "https://github.com/NixOS/nixpkgs/archive/c217913993d6.tar.gz";
|
||||
hash = "sha256-D1PA3xQv/s4W3lnR9yJFSld8UOLr0a/cBWMQMXS+1Qg=";
|
||||
sha256 = "026mprs324330pfazlgbw987qmsa8ligglarvqbcxzig2kgw0lqg";
|
||||
};
|
||||
in
|
||||
import "${nixpkgs}/nixos" {
|
||||
|
|
|
|||
|
|
@ -61,7 +61,7 @@ in
|
|||
certs.ca.cert
|
||||
];
|
||||
networking.extraHosts = ''
|
||||
${nodes.server.config.networking.primaryIPAddress} ${domain}
|
||||
${nodes.server.networking.primaryIPAddress} ${domain}
|
||||
'';
|
||||
services.alps = {
|
||||
enable = true;
|
||||
|
|
@ -83,7 +83,7 @@ in
|
|||
|
||||
baseurl = "http://localhost:${toString config.services.alps.port}"
|
||||
username = "alice"
|
||||
password = "${nodes.server.config.users.users.alice.password}"
|
||||
password = "${nodes.server.users.users.alice.password}"
|
||||
cookiejar = CookieJar()
|
||||
cookieprocessor = HTTPCookieProcessor(cookiejar)
|
||||
opener = build_opener(cookieprocessor)
|
||||
|
|
@ -125,7 +125,7 @@ in
|
|||
|
||||
client.start()
|
||||
client.wait_for_unit("alps.service")
|
||||
client.wait_for_open_port(${toString nodes.client.config.services.alps.port})
|
||||
client.wait_for_open_port(${toString nodes.client.services.alps.port})
|
||||
client.succeed("test-alps-login")
|
||||
'';
|
||||
}
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@
|
|||
testScript =
|
||||
{ nodes, ... }:
|
||||
let
|
||||
user = nodes.machine.config.users.users.alice;
|
||||
user = nodes.machine.users.users.alice;
|
||||
in
|
||||
''
|
||||
with subtest("Wait for cage to boot up"):
|
||||
|
|
|
|||
|
|
@ -47,7 +47,7 @@ in
|
|||
testScript =
|
||||
{ nodes, ... }:
|
||||
let
|
||||
user = nodes.machine.config.users.users.alice;
|
||||
user = nodes.machine.users.users.alice;
|
||||
XDG_RUNTIME_DIR = "/run/user/${toString user.uid}";
|
||||
in
|
||||
''
|
||||
|
|
|
|||
|
|
@ -47,9 +47,9 @@ in
|
|||
# need to distinguish because show-ip won't work for ipv6
|
||||
if container == "webserver4":
|
||||
ip = machine.succeed(f"nixos-container show-ip {container}").rstrip()
|
||||
assert ip == "${nodes.machine.config.containers.webserver4.localAddress}"
|
||||
assert ip == "${nodes.machine.containers.webserver4.localAddress}"
|
||||
return ip
|
||||
return "${nodes.machine.config.containers.webserver6.localAddress}"
|
||||
return "${nodes.machine.containers.webserver6.localAddress}"
|
||||
|
||||
|
||||
for container in "webserver4", "webserver6":
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@
|
|||
testScript =
|
||||
{ nodes, ... }:
|
||||
let
|
||||
user = nodes.machine.config.users.users.alice;
|
||||
user = nodes.machine.users.users.alice;
|
||||
sudo = lib.concatStringsSep " " [
|
||||
"XDG_RUNTIME_DIR=/run/user/${toString user.uid}"
|
||||
"DOCKER_HOST=unix:///run/user/${toString user.uid}/docker.sock"
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@
|
|||
testScript =
|
||||
{ nodes, ... }:
|
||||
let
|
||||
user = nodes.machine.config.users.users.alice;
|
||||
user = nodes.machine.users.users.alice;
|
||||
in
|
||||
''
|
||||
with subtest("Ensure x starts"):
|
||||
|
|
|
|||
|
|
@ -126,7 +126,7 @@ in
|
|||
];
|
||||
|
||||
environment.etc."initiator-root-disk-closure".source =
|
||||
nodes.initiatorRootDisk.config.system.build.toplevel;
|
||||
nodes.initiatorRootDisk.system.build.toplevel;
|
||||
|
||||
nix.settings = {
|
||||
substituters = lib.mkForce [ ];
|
||||
|
|
|
|||
|
|
@ -169,7 +169,7 @@ in
|
|||
initiatorAuto.succeed("mkfs.xfs /dev/sda")
|
||||
initiatorAuto.succeed("mkdir /mnt && mount /dev/sda /mnt")
|
||||
initiatorAuto.succeed(
|
||||
"nixos-install --no-bootloader --no-root-passwd --system ${nodes.initiatorRootDisk.config.system.build.toplevel}"
|
||||
"nixos-install --no-bootloader --no-root-passwd --system ${nodes.initiatorRootDisk.system.build.toplevel}"
|
||||
)
|
||||
initiatorAuto.succeed("umount /mnt && rmdir /mnt")
|
||||
initiatorAuto.shutdown()
|
||||
|
|
|
|||
|
|
@ -169,7 +169,7 @@ import ../make-test-python.nix (
|
|||
with subtest("Server: initialize host principal with keytab"):
|
||||
server.send_chars("sudo ktutil get -p alice/admin host/server.foo.bar\n")
|
||||
server.wait_until_tty_matches("1", "password for alice:")
|
||||
server.send_chars("${nodes.server.config.users.users.alice.password}\n")
|
||||
server.send_chars("${nodes.server.users.users.alice.password}\n")
|
||||
server.wait_until_tty_matches("1", "alice/admin@FOO.BAR's Password:")
|
||||
server.send_chars(f'{alice_krb_admin_pw}\n')
|
||||
server.wait_for_file("/etc/krb5.keytab")
|
||||
|
|
@ -194,7 +194,7 @@ import ../make-test-python.nix (
|
|||
|
||||
client.send_chars("sudo ktutil get -p alice/admin host/client.foo.bar\n")
|
||||
client.wait_until_tty_matches("1", "password for alice:")
|
||||
client.send_chars("${nodes.client.config.users.users.alice.password}\n")
|
||||
client.send_chars("${nodes.client.users.users.alice.password}\n")
|
||||
client.wait_until_tty_matches("1", "alice/admin@FOO.BAR's Password:")
|
||||
client.send_chars(f"{alice_krb_admin_pw}\n")
|
||||
client.wait_for_file("/etc/krb5.keytab")
|
||||
|
|
|
|||
|
|
@ -209,11 +209,11 @@ in
|
|||
testScript =
|
||||
{ nodes, ... }:
|
||||
let
|
||||
primary4 = (lib.head nodes.primary.config.networking.interfaces.eth1.ipv4.addresses).address;
|
||||
primary6 = (lib.head nodes.primary.config.networking.interfaces.eth1.ipv6.addresses).address;
|
||||
primary4 = (lib.head nodes.primary.networking.interfaces.eth1.ipv4.addresses).address;
|
||||
primary6 = (lib.head nodes.primary.networking.interfaces.eth1.ipv6.addresses).address;
|
||||
|
||||
secondary4 = (lib.head nodes.secondary.config.networking.interfaces.eth1.ipv4.addresses).address;
|
||||
secondary6 = (lib.head nodes.secondary.config.networking.interfaces.eth1.ipv6.addresses).address;
|
||||
secondary4 = (lib.head nodes.secondary.networking.interfaces.eth1.ipv4.addresses).address;
|
||||
secondary6 = (lib.head nodes.secondary.networking.interfaces.eth1.ipv6.addresses).address;
|
||||
in
|
||||
''
|
||||
import re
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
nodes.client =
|
||||
{ nodes, ... }:
|
||||
let
|
||||
user = nodes.client.config.users.users.alice;
|
||||
user = nodes.client.users.users.alice;
|
||||
in
|
||||
{
|
||||
imports = [
|
||||
|
|
@ -24,7 +24,7 @@
|
|||
testScript =
|
||||
{ nodes, ... }:
|
||||
let
|
||||
user = nodes.client.config.users.users.alice;
|
||||
user = nodes.client.users.users.alice;
|
||||
in
|
||||
''
|
||||
client.wait_for_x()
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@
|
|||
testScript =
|
||||
{ nodes, ... }:
|
||||
let
|
||||
user = nodes.machine.config.users.users.alice;
|
||||
user = nodes.machine.users.users.alice;
|
||||
in
|
||||
''
|
||||
start_all()
|
||||
|
|
|
|||
|
|
@ -21,7 +21,7 @@ in
|
|||
{
|
||||
imports = [ common ];
|
||||
networking.nameservers = lib.mkForce [
|
||||
(lib.head nodes.server.config.networking.interfaces.eth1.ipv4.addresses).address
|
||||
(lib.head nodes.server.networking.interfaces.eth1.ipv4.addresses).address
|
||||
];
|
||||
networking.interfaces.eth1.ipv4.addresses = [
|
||||
{
|
||||
|
|
@ -36,7 +36,7 @@ in
|
|||
{
|
||||
imports = [ common ];
|
||||
networking.nameservers = lib.mkForce [
|
||||
(lib.head nodes.server.config.networking.interfaces.eth1.ipv6.addresses).address
|
||||
(lib.head nodes.server.networking.interfaces.eth1.ipv6.addresses).address
|
||||
];
|
||||
networking.interfaces.eth1.ipv4.addresses = [
|
||||
{
|
||||
|
|
|
|||
|
|
@ -93,8 +93,8 @@ in
|
|||
testScript =
|
||||
{ nodes, ... }:
|
||||
let
|
||||
esPort = toString nodes.parsedmarc.config.services.elasticsearch.port;
|
||||
valueObject = lib.optionalString (lib.versionAtLeast nodes.parsedmarc.config.services.elasticsearch.package.version "7") ".value";
|
||||
esPort = toString nodes.parsedmarc.services.elasticsearch.port;
|
||||
valueObject = lib.optionalString (lib.versionAtLeast nodes.parsedmarc.services.elasticsearch.package.version "7") ".value";
|
||||
in
|
||||
''
|
||||
parsedmarc.start()
|
||||
|
|
@ -143,7 +143,7 @@ in
|
|||
|
||||
networking.extraHosts = ''
|
||||
127.0.0.1 ${parsedmarcDomain}
|
||||
${nodes.mail.config.networking.primaryIPAddress} ${mailDomain}
|
||||
${nodes.mail.networking.primaryIPAddress} ${mailDomain}
|
||||
'';
|
||||
|
||||
services.parsedmarc = {
|
||||
|
|
@ -170,7 +170,7 @@ in
|
|||
|
||||
networking.extraHosts = ''
|
||||
127.0.0.1 ${mailDomain}
|
||||
${nodes.parsedmarc.config.networking.primaryIPAddress} ${parsedmarcDomain}
|
||||
${nodes.parsedmarc.networking.primaryIPAddress} ${parsedmarcDomain}
|
||||
'';
|
||||
|
||||
services.dovecot2 = {
|
||||
|
|
@ -204,8 +204,8 @@ in
|
|||
testScript =
|
||||
{ nodes, ... }:
|
||||
let
|
||||
esPort = toString nodes.parsedmarc.config.services.elasticsearch.port;
|
||||
valueObject = lib.optionalString (lib.versionAtLeast nodes.parsedmarc.config.services.elasticsearch.package.version "7") ".value";
|
||||
esPort = toString nodes.parsedmarc.services.elasticsearch.port;
|
||||
valueObject = lib.optionalString (lib.versionAtLeast nodes.parsedmarc.services.elasticsearch.package.version "7") ".value";
|
||||
in
|
||||
''
|
||||
mail.start()
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@
|
|||
testScript =
|
||||
{ nodes, ... }:
|
||||
let
|
||||
user = nodes.machine.config.users.users.alice;
|
||||
user = nodes.machine.users.users.alice;
|
||||
gpg-uid = "alice@example.net";
|
||||
gpg-pw = "foobar9000";
|
||||
ready-file = "/tmp/secrets-dbus-init.done";
|
||||
|
|
|
|||
|
|
@ -41,8 +41,8 @@ in
|
|||
|
||||
<Proxy balancer://cluster>
|
||||
Require all granted
|
||||
BalancerMember http://${nodes.backend1.config.networking.hostName} retry=0
|
||||
BalancerMember http://${nodes.backend2.config.networking.hostName} retry=0
|
||||
BalancerMember http://${nodes.backend1.networking.hostName} retry=0
|
||||
BalancerMember http://${nodes.backend2.networking.hostName} retry=0
|
||||
</Proxy>
|
||||
|
||||
ProxyStatus full
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@
|
|||
machine.succeed(
|
||||
"""
|
||||
mkdir -p /run/nginx /var/log/nginx /var/cache/nginx
|
||||
${nodes.machine.config.systemd.services.nginx.runner} >&2 &
|
||||
${nodes.machine.systemd.services.nginx.runner} >&2 &
|
||||
echo $!>my-nginx.pid
|
||||
"""
|
||||
)
|
||||
|
|
|
|||
|
|
@ -42,7 +42,7 @@ in
|
|||
testScript =
|
||||
{ nodes, ... }:
|
||||
let
|
||||
user = nodes.machine.config.users.users.alice;
|
||||
user = nodes.machine.users.users.alice;
|
||||
in
|
||||
''
|
||||
start_all()
|
||||
|
|
|
|||
|
|
@ -194,7 +194,7 @@
|
|||
swaymsg("exec swaylock")
|
||||
machine.wait_until_succeeds("pgrep -xf swaylock")
|
||||
machine.sleep(3)
|
||||
machine.send_chars("${nodes.machine.config.users.users.alice.password}")
|
||||
machine.send_chars("${nodes.machine.users.users.alice.password}")
|
||||
machine.send_key("ret")
|
||||
machine.wait_until_fails("pgrep -xf swaylock")
|
||||
|
||||
|
|
|
|||
|
|
@ -322,7 +322,7 @@ in
|
|||
# and check if the blocks have the correct labels:
|
||||
store.succeed(
|
||||
"thanos tools bucket ls "
|
||||
+ "--objstore.config-file=${nodes.store.config.services.thanos.store.objstore.config-file} "
|
||||
+ "--objstore.config-file=${nodes.store.services.thanos.store.objstore.config-file} "
|
||||
+ "--output=json | "
|
||||
+ "jq .thanos.labels.some_label | "
|
||||
+ "grep 'required by thanos'"
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@
|
|||
testScript =
|
||||
{ nodes, ... }:
|
||||
let
|
||||
inherit (nodes.machine.config.services) redis;
|
||||
inherit (nodes.machine.services) redis;
|
||||
in
|
||||
''
|
||||
start_all()
|
||||
|
|
|
|||
|
|
@ -73,7 +73,7 @@
|
|||
testScript =
|
||||
{ nodes, ... }:
|
||||
let
|
||||
user = nodes.client.config.users.users.alice;
|
||||
user = nodes.client.users.users.alice;
|
||||
in
|
||||
''
|
||||
start_all()
|
||||
|
|
|
|||
|
|
@ -52,9 +52,9 @@ in
|
|||
filterFlags = lib.map (package: "--filter=${package}") pnpmWorkspaces;
|
||||
|
||||
pnpm-fixup-state-db' =
|
||||
if pnpm.nodejs or null != null then
|
||||
if pnpm.nodejs-slim or null != null then
|
||||
pnpm-fixup-state-db.override {
|
||||
inherit (pnpm) nodejs;
|
||||
inherit (pnpm) nodejs-slim;
|
||||
}
|
||||
else
|
||||
pnpm-fixup-state-db;
|
||||
|
|
|
|||
|
|
@ -37,37 +37,44 @@
|
|||
|
||||
attrs:
|
||||
let
|
||||
argsToOverride = args: {
|
||||
name = "${args.name or "${args.pname}-${args.version}"}-source";
|
||||
argsToOverride =
|
||||
args:
|
||||
{
|
||||
name = "${args.name or "${args.pname}-${args.version}"}-source";
|
||||
|
||||
outputs = [ "out" ];
|
||||
outputs = [ "out" ];
|
||||
|
||||
phases = [
|
||||
"unpackPhase"
|
||||
"patchPhase"
|
||||
"installPhase"
|
||||
];
|
||||
separateDebugInfo = false;
|
||||
phases = [
|
||||
"unpackPhase"
|
||||
"patchPhase"
|
||||
"installPhase"
|
||||
];
|
||||
separateDebugInfo = false;
|
||||
|
||||
dontUnpack = lib.warnIf (args.dontUnpack or false
|
||||
) "srcOnly: derivation has dontUnpack set, overriding" false;
|
||||
dontUnpack = lib.warnIf (args.dontUnpack or false
|
||||
) "srcOnly: derivation has dontUnpack set, overriding" false;
|
||||
|
||||
dontInstall = false;
|
||||
installPhase = "cp -pr --reflink=auto -- . $out";
|
||||
dontInstall = false;
|
||||
installPhase = "cp -pr --reflink=auto -- . $out";
|
||||
|
||||
# the original derivation might've set something like outputDev = "lib", but "lib" isn't an output anymore
|
||||
# some things get confused and error if one of these is set to an output that doesn't exist
|
||||
# ex: pkgs/build-support/setup-hooks/multiple-outputs.sh
|
||||
outputDev = "out";
|
||||
outputBin = "out";
|
||||
outputInclude = "out";
|
||||
outputLib = "out";
|
||||
outputDoc = "out";
|
||||
outputDevdoc = "out";
|
||||
outputMan = "out";
|
||||
outputDevman = "out";
|
||||
outputInfo = "out";
|
||||
};
|
||||
# the original derivation might've set something like outputDev = "lib", but "lib" isn't an output anymore
|
||||
# some things get confused and error if one of these is set to an output that doesn't exist
|
||||
# ex: pkgs/build-support/setup-hooks/multiple-outputs.sh
|
||||
outputDev = "out";
|
||||
outputBin = "out";
|
||||
outputInclude = "out";
|
||||
outputLib = "out";
|
||||
outputDoc = "out";
|
||||
outputDevdoc = "out";
|
||||
outputMan = "out";
|
||||
outputDevman = "out";
|
||||
outputInfo = "out";
|
||||
|
||||
}
|
||||
// lib.optionalAttrs (lib.isAttrs args.outputChecks or null) {
|
||||
# If the original derivation includes outputChecks for output we are removing, we need to reset it to an empty check.
|
||||
outputChecks = { };
|
||||
};
|
||||
in
|
||||
|
||||
# If we are passed a derivation (based on stdenv*), we can use overrideAttrs to
|
||||
|
|
|
|||
|
|
@ -20,13 +20,13 @@
|
|||
let
|
||||
nodejs = nodejs_24;
|
||||
|
||||
version = "2025.12.5";
|
||||
version = "2025.12.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "goauthentik";
|
||||
repo = "authentik";
|
||||
tag = "version/${version}";
|
||||
hash = "sha256-LPGAhbtmuztDQ4CVhUXb+vBU5HjvNZ7JicI5r3lr1QQ=";
|
||||
hash = "sha256-uIg47z4LaCawF/5ir4mKE6DpDnEpQ8DuObCNaq6TcYk=";
|
||||
};
|
||||
|
||||
meta = {
|
||||
|
|
@ -137,8 +137,8 @@ let
|
|||
|
||||
outputHash =
|
||||
{
|
||||
"aarch64-linux" = "sha256-smm9x29z7gOI7Wq0NvP45KHtBbT6p1lH6IjEf9LRuGs=";
|
||||
"x86_64-linux" = "sha256-K86wnn50svP+QG3i0mggH8RQgfoIqEmyQTouz35xzw8=";
|
||||
"aarch64-linux" = "sha256-EbLneRDCyLLLBOZ2DUDpf2TbZoTL8QMXP4WlAZEzS90=";
|
||||
"x86_64-linux" = "sha256-yDjwN/+lX2i9WYDXq4yWwf9o8nA4342iHDDQH4Jt7eQ=";
|
||||
}
|
||||
.${stdenvNoCC.hostPlatform.system} or (throw "authentik-website-deps: unsupported host platform");
|
||||
|
||||
|
|
|
|||
|
|
@ -50,6 +50,6 @@ stdenv.mkDerivation {
|
|||
platforms
|
||||
;
|
||||
|
||||
broken = !(lib.versionAtLeast kernel.version "6.16" && lib.versionOlder kernel.version "7.1");
|
||||
broken = !(lib.versionAtLeast kernel.version "6.16" && lib.versionOlder kernel.version "7.2");
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,13 +1,14 @@
|
|||
{
|
||||
"balanced_text": "sha256-U+gtC9AaUFp3gVkUzYMWAUSuUV7kYB8ZE2BsclnxwkA=",
|
||||
"flutter_carplay": "sha256-0lewLQFVx+0rW2aAxWSePz/9bhNmb/mWt4RBJ++BCuM=",
|
||||
"flutter_user_certificates_android": "sha256-HL1Qd0D3CLYJysWLX2jqWt1FJRGm/BE8EjVFPztOIPo=",
|
||||
"isar": "sha256-Wg1m/HM7UnK+aC1DOyY41Bo4HuLrEaAxCtQw12ZrnN0=",
|
||||
"isar_flutter_libs": "sha256-Z5IdfiaZ7348XwYSQb81z0YZEoIHWmsSZr6mYqqz4Oo=",
|
||||
"isar_flutter_libs": "sha256-abfMKRRVJgrG5orGvXJbIJNTx8Fx0XTlvZZ9W+LcsP0=",
|
||||
"isar_generator": "sha256-fM8ygT6il7TdjmeTdmk8o4exc3Z/F1tYF878eoDK37E=",
|
||||
"just_audio": "sha256-I+HTDx3IpaQw3VBVO7KGzl0vDcFrNZhN5455i7TNxxs=",
|
||||
"just_audio_media_kit": "sha256-dSlZETFqNQs7jxNN+8MWQzval31zA7zCs+7WiPPPZMw=",
|
||||
"just_audio_media_kit": "sha256-ZdSX86xeqXZZrdHpdg8W240qtSnUTfZLN9XrM05rVTI=",
|
||||
"media_kit_libs_windows_audio": "sha256-XAObjn7wcN4qA7MW+hKqjNZv/L2Ec8t/cTF+d2ZoZ+k=",
|
||||
"palette_generator": "sha256-mnRJf3asu1mm9HYU8U0di+qRk3SpNFwN3S5QxChpIA0=",
|
||||
"smtc_windows": "sha256-ESR6qw8ciJvo1YG3wNK7Uy/N0zzl6OX6q40Dmgsvx6A=",
|
||||
"split_view": "sha256-unTJQDXUUPVDudlk0ReOPNYrsyEpbd/UMg1tHZsmg+k="
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
dart,
|
||||
}:
|
||||
let
|
||||
version = "0.9.23-beta";
|
||||
version = "0.9.24-beta";
|
||||
in
|
||||
flutter341.buildFlutterApplication {
|
||||
inherit version;
|
||||
|
|
@ -24,7 +24,7 @@ flutter341.buildFlutterApplication {
|
|||
owner = "UnicornsOnLSD";
|
||||
repo = "finamp";
|
||||
rev = version;
|
||||
hash = "sha256-N1+6rB16geFMYMbfiF7eppnXfXC/pqv90I9aY/57lKI=";
|
||||
hash = "sha256-o7q7Yr47maTrt4CG3PiV9Fdhy77ToboVdd8olZFfFts=";
|
||||
};
|
||||
|
||||
pubspecLock = lib.importJSON ./pubspec.lock.json;
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
|
|
@ -18,16 +18,16 @@ let
|
|||
in
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "gitoxide";
|
||||
version = "0.54.0";
|
||||
version = "0.55.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "GitoxideLabs";
|
||||
repo = "gitoxide";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-MkOmxvACroJAB1nQZT1pcJ/Fn9gWNFwKiwVNb9iUlgY=";
|
||||
hash = "sha256-UtdXlIvX82UUhc4RWZZTBV5kz4YqfOTd4D/pGhDUfSI=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-bYgGQa8Gym4dzkuTrOSu3NwUhYdZNtq7ACwVwhdKQRI=";
|
||||
cargoHash = "sha256-Kv0NKA3OdHBn2M8DmcGyjcN2acGJYOdbczOb/nRsvDs=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
|
|
|
|||
|
|
@ -21,16 +21,16 @@
|
|||
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "halloy";
|
||||
version = "2026.7.1";
|
||||
version = "2026.7.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "squidowl";
|
||||
repo = "halloy";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-AFDx4gmYWUMcvpJi+/2xd0s4gAygwss2XrmCFsd6uKs=";
|
||||
hash = "sha256-+qFHwlwRxVN4W9DG+gY5N6um+JARD+3EiLlsD7R9Tpc=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-hrYWF5WNhLqKMFJJlir7tumxNZqgGm+gK+RI1iDPatM=";
|
||||
cargoHash = "sha256-/nFtOJXpusIlc7orGv013qzad8fdfQr32c8DAlccHIA=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
copyDesktopItems
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@ let
|
|||
in
|
||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
pname = "irpf";
|
||||
version = "2026-1.4";
|
||||
version = "2026-1.5";
|
||||
|
||||
# https://www.gov.br/receitafederal/pt-br/centrais-de-conteudo/download/pgd/dirpf
|
||||
# Para outros sistemas operacionais -> Multi
|
||||
|
|
@ -27,7 +27,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
|
|||
in
|
||||
fetchzip {
|
||||
url = "https://downloadirpf.receita.fazenda.gov.br/irpf/${year}/irpf/arquivos/IRPF${finalAttrs.version}.zip";
|
||||
hash = "sha256-tPIu1nt1FtGyjM1vnzAHenjlKeAKJfqPus+XsP2CH5g=";
|
||||
hash = "sha256-/y0XE+i+Sug/2TfqQuPQesYaDVn41v3hkikU/hmxxNE=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
|||
|
|
@ -12,6 +12,7 @@
|
|||
|
||||
# keep-sorted start
|
||||
cpptrace,
|
||||
fast-float,
|
||||
fmt,
|
||||
gtest,
|
||||
hat-trie,
|
||||
|
|
@ -83,8 +84,8 @@ let
|
|||
luajit-src = fetchFromGitHub {
|
||||
owner = "RocksLabs";
|
||||
repo = "LuaJIT";
|
||||
rev = "c0a8e68325ec261a77bde1c8eabad398168ffe74";
|
||||
hash = "sha256-Wjh14d0JR5ecAwdYVBjQYIHb2vJ1I61oR0N0LMmtq4E=";
|
||||
rev = "02dfcc34e93e57ac96e566d123c66ee01e650299";
|
||||
hash = "sha256-HINP9nahXHTManDMAAJBOUlSSxv5JZhlHs96HHkE7qE=";
|
||||
};
|
||||
|
||||
zlib-ng' = zlib-ng.override { withZlibCompat = true; };
|
||||
|
|
@ -107,13 +108,13 @@ let
|
|||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "kvrocks";
|
||||
version = "2.15.0";
|
||||
version = "2.16.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "apache";
|
||||
repo = "kvrocks";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-s4saKuezPYvcmKSqVBVDbPJcQXr6pVfIWjff7Txg8tY=";
|
||||
hash = "sha256-CAbhOX7dmyXgl0STNjzALseXUzrpTPNy9tjoPACe0Os=";
|
||||
};
|
||||
|
||||
__structuredAttrs = true;
|
||||
|
|
@ -151,6 +152,15 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
];
|
||||
}}
|
||||
${mkCmakeFile "fmt" { findPackage = "fmt"; }}
|
||||
${mkCmakeFile "fast_float" {
|
||||
findPackage = "FastFloat";
|
||||
libraries = [
|
||||
{
|
||||
name = "fast_float";
|
||||
target = "FastFloat::fast_float";
|
||||
}
|
||||
];
|
||||
}}
|
||||
${mkCmakeFile "spdlog" { findPackage = "spdlog"; }}
|
||||
${mkCmakeFile "snappy" {
|
||||
pkgConfig = {
|
||||
|
|
@ -273,6 +283,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
buildInputs = [
|
||||
# keep-sorted start
|
||||
cpptrace
|
||||
fast-float
|
||||
fmt
|
||||
gtest
|
||||
hat-trie
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
version = "1.30.1";
|
||||
hash = "sha256-Z/0Lh+2VLB3w4AHNf+imWRgHmarO1MMUmNqrcAVSQ2k=";
|
||||
npmDepsHash = "sha256-eccYGPIbk98+BtNtBAq4G1z/ymj6HHwacuH6ZktuN0U=";
|
||||
vendorHash = "sha256-FgwMdvND7DMrYWp9kB2IB+Gjyo1gm1LtLTeC9SfPw9U=";
|
||||
version = "1.30.2";
|
||||
hash = "sha256-37nJRJL1mxvUdD7L9/yO/Lzyjvn09Tu9xHTEt4pxu2s=";
|
||||
npmDepsHash = "sha256-AApRrIIYC4NtKIFyGQ3lnKIOk7LZNDK8wvUUbSczTrA=";
|
||||
vendorHash = "sha256-em0317Q1u5sl8gws4/qqM8e9H5F4vfBiM7tLCyufgEk=";
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,16 +7,18 @@
|
|||
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "mdns-scanner";
|
||||
version = "0.27.1";
|
||||
version = "0.27.2";
|
||||
|
||||
__structuredAttrs = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "CramBL";
|
||||
repo = "mdns-scanner";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-90+VBCxb4bbmGCpBLmqzhUJ0/9GAH8Fnju61kq7sx+A=";
|
||||
hash = "sha256-oqU7lpDD2umCBAcPYKjo+5kdsCu3gjBiP5MPNvH2fhs=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-LTL5nlT75Y/cALKVLVBWlMZZn9DewZfCbTAO1QsAfXI=";
|
||||
cargoHash = "sha256-TqTN9qXnfvP067kh+bfdXlU1lKaZistIvq1qJsgmJ8o=";
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
|
|
|
|||
|
|
@ -8,16 +8,16 @@
|
|||
}:
|
||||
buildGoModule (finalAttrs: {
|
||||
pname = "nezha-agent";
|
||||
version = "2.2.2";
|
||||
version = "2.2.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "nezhahq";
|
||||
repo = "agent";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-KaONvjQY204VUppt2h78IE92LP+YJQ128BCuHGgMsBk=";
|
||||
hash = "sha256-DDmxeWEIEJweqDbCDDTzK99cP28tz5bQpotyDMCTVuk=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-/pygqSThb3YQ188Ro0vjP4yDN/yfPNRJQWP5FQ7sJ8c=";
|
||||
vendorHash = "sha256-kYw1XgtlzRSQ0k8XK0lCJ0s2UaevVdmPunb9e7hoc70=";
|
||||
|
||||
ldflags = [
|
||||
"-s"
|
||||
|
|
|
|||
|
|
@ -21,17 +21,22 @@
|
|||
libsecret,
|
||||
gst_all_1,
|
||||
xdg-user-dirs,
|
||||
gnome,
|
||||
librsvg,
|
||||
webp-pixbuf-loader,
|
||||
libavif,
|
||||
libheif,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "nocturne";
|
||||
version = "1.2.1";
|
||||
version = "1.3.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Jeffser";
|
||||
repo = "Nocturne";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-CfrPmpkjcmKMB66kdFL4HqVukaIWAkIzOkwtBqZ65k4=";
|
||||
hash = "sha256-z7E4PVSp7HDarnJeQFrJ/HznxUT+b6xTF0QTm5ffvTQ=";
|
||||
};
|
||||
|
||||
__structuredAttrs = true;
|
||||
|
|
@ -78,6 +83,19 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
python3Packages.pillow
|
||||
];
|
||||
|
||||
preInstall = ''
|
||||
export GDK_PIXBUF_MODULE_FILE="${
|
||||
gnome._gdkPixbufCacheBuilder_DO_NOT_USE {
|
||||
extraLoaders = [
|
||||
librsvg
|
||||
webp-pixbuf-loader
|
||||
libavif
|
||||
libheif.lib
|
||||
];
|
||||
}
|
||||
}"
|
||||
'';
|
||||
|
||||
preFixup = ''
|
||||
gappsWrapperArgs+=(
|
||||
--prefix PATH : ${lib.makeBinPath [ xdg-user-dirs ]}
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
fetchPnpmDeps,
|
||||
pnpmConfigHook,
|
||||
pnpm_10,
|
||||
nodejs_22,
|
||||
nodejs-slim_22,
|
||||
makeWrapper,
|
||||
versionCheckHook,
|
||||
rolldown,
|
||||
|
|
@ -38,7 +38,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
|
|||
nativeBuildInputs = [
|
||||
pnpmConfigHook
|
||||
pnpm_10
|
||||
nodejs_22
|
||||
nodejs-slim_22
|
||||
makeWrapper
|
||||
installShellFiles
|
||||
];
|
||||
|
|
@ -83,7 +83,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
|
|||
# Remove symlinks pointing back to the build sandbox
|
||||
find $libdir/dist/extensions -type l -lname "$NIX_BUILD_TOP/*" -delete
|
||||
|
||||
makeWrapper ${lib.getExe nodejs_22} $out/bin/openclaw \
|
||||
makeWrapper ${lib.getExe nodejs-slim_22} $out/bin/openclaw \
|
||||
--add-flags "$libdir/dist/index.js" \
|
||||
--set NODE_PATH "$libdir/node_modules"
|
||||
ln -s $out/bin/openclaw $out/bin/moltbot
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
buildNpmPackage,
|
||||
lib,
|
||||
nodejs,
|
||||
nodejs-slim,
|
||||
pnpm,
|
||||
tests,
|
||||
}:
|
||||
|
|
@ -11,12 +11,13 @@ buildNpmPackage {
|
|||
|
||||
src = ./src;
|
||||
|
||||
inherit nodejs;
|
||||
nodejs = nodejs-slim;
|
||||
nativeBuildInputs = lib.optional (builtins.hasAttr "npm" nodejs-slim) nodejs-slim.npm;
|
||||
|
||||
npmDepsHash = "sha256-um6a4pEtPtdxHBRq9g5ZW20wIQAMjWJ3qF96XuxJg8o=";
|
||||
|
||||
postInstall = ''
|
||||
makeWrapper ${lib.getExe nodejs} $out/bin/pnpm-fixup-state-db \
|
||||
makeWrapper ${lib.getExe nodejs-slim} $out/bin/pnpm-fixup-state-db \
|
||||
--add-flags "$out/lib/node_modules/pnpm-fixup-state-db"
|
||||
'';
|
||||
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@
|
|||
makeBinaryWrapper,
|
||||
copyDesktopItems,
|
||||
electron_41,
|
||||
nodejs_24,
|
||||
nodejs-slim_24,
|
||||
pnpm_10_29_2,
|
||||
fetchPnpmDeps,
|
||||
pnpmConfigHook,
|
||||
|
|
@ -21,8 +21,8 @@
|
|||
}:
|
||||
|
||||
let
|
||||
nodejs = nodejs_24;
|
||||
pnpm = pnpm_10_29_2.override { inherit nodejs; };
|
||||
nodejs-slim = nodejs-slim_24;
|
||||
pnpm = pnpm_10_29_2.override { inherit nodejs-slim; };
|
||||
electron = electron_41;
|
||||
appName = "Podman Desktop";
|
||||
in
|
||||
|
|
@ -91,7 +91,8 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
|
||||
nativeBuildInputs = [
|
||||
makeBinaryWrapper
|
||||
nodejs
|
||||
nodejs-slim
|
||||
nodejs-slim.npm
|
||||
pnpm
|
||||
pnpmConfigHook
|
||||
]
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
fetchPnpmDeps,
|
||||
pnpmConfigHook,
|
||||
stdenvNoCC,
|
||||
nodejs_22,
|
||||
nodejs-slim_22,
|
||||
ffmpeg,
|
||||
imagemagick,
|
||||
makeWrapper,
|
||||
|
|
@ -37,8 +37,8 @@ let
|
|||
mainProgram = "izzy";
|
||||
};
|
||||
};
|
||||
nodejs = nodejs_22;
|
||||
pnpm' = pnpm_9.override { nodejs = nodejs_22; };
|
||||
nodejs-slim = nodejs-slim_22;
|
||||
pnpm' = pnpm_9.override { inherit nodejs-slim; };
|
||||
in
|
||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
pname = "porn-vault";
|
||||
|
|
@ -59,7 +59,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
|
|||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
nodejs
|
||||
nodejs-slim
|
||||
pnpmConfigHook
|
||||
pnpm'
|
||||
makeWrapper
|
||||
|
|
@ -92,7 +92,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
|
|||
'';
|
||||
|
||||
preFixup = ''
|
||||
makeWrapper "${lib.getExe nodejs}" "$out/bin/porn-vault" \
|
||||
makeWrapper "${lib.getExe nodejs-slim}" "$out/bin/porn-vault" \
|
||||
--chdir "$out/share/porn-vault" \
|
||||
--add-flags "dist/index.js" \
|
||||
--set-default IZZY_PATH "${lib.getExe izzy}" \
|
||||
|
|
@ -110,7 +110,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
|
|||
homepage = "https://gitlab.com/porn-vault/porn-vault";
|
||||
license = lib.licenses.gpl3Plus;
|
||||
maintainers = [ lib.maintainers.luNeder ];
|
||||
inherit (nodejs.meta) platforms;
|
||||
inherit (nodejs-slim.meta) platforms;
|
||||
mainProgram = "porn-vault";
|
||||
};
|
||||
})
|
||||
|
|
|
|||
|
|
@ -166,6 +166,8 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
$opt/resources/app/ppm/bin/node
|
||||
patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
|
||||
$opt/resources/app.asar.unpacked/node_modules/symbol-provider-ctags/vendor/ctags-linux
|
||||
patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
|
||||
$opt/chrome_crashpad_handler
|
||||
|
||||
# Replace the bundled git with the one from nixpkgs
|
||||
dugite=$opt/resources/app.asar.unpacked/node_modules/dugite
|
||||
|
|
|
|||
|
|
@ -1,12 +0,0 @@
|
|||
diff --git a/Cargo.lock b/Cargo.lock
|
||||
index c8c39e9617888199b86fa7c0273c0edebc85df2f..ea5e7b7e633a2de582a7b013a32a6eb6b166e2db 100644
|
||||
--- a/Cargo.lock
|
||||
+++ b/Cargo.lock
|
||||
@@ -2866,6 +2866,7 @@ dependencies = [
|
||||
name = "rustversion"
|
||||
version = "1.0.22"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d"
|
||||
|
||||
[[package]]
|
||||
name = "ryu"
|
||||
|
|
@ -10,22 +10,18 @@
|
|||
}:
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "pyrefly";
|
||||
version = "1.0.0";
|
||||
version = "1.1.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "facebook";
|
||||
repo = "pyrefly";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-S3phcTwZlG9VBHdYzcbsLzj0uqBUDy4Xfy/tlp3AQZg=";
|
||||
hash = "sha256-GHH+oG3oUEmGNEmtrmra321UIgRD04Eq1Ct0H7VsjxU=";
|
||||
};
|
||||
|
||||
buildAndTestSubdir = "pyrefly";
|
||||
|
||||
cargoPatches = [
|
||||
# https://github.com/facebook/pyrefly/issues/3383
|
||||
./fix-cargo-lock.patch
|
||||
];
|
||||
cargoHash = "sha256-OfbPPANsAhrp2MbzDEHGRLWWmUkbMMGKR5B4R6lXdE4=";
|
||||
cargoHash = "sha256-vOHcmYVKlsxueWjvCCDWwSfJt+2/71b5+NdQyW3jYH4=";
|
||||
|
||||
buildInputs = [ rust-jemalloc-sys ];
|
||||
|
||||
|
|
@ -42,9 +38,6 @@ rustPlatform.buildRustPackage (finalAttrs: {
|
|||
export TMPDIR=$(mktemp -d)
|
||||
'';
|
||||
|
||||
# requires unstable rust features
|
||||
env.RUSTC_BOOTSTRAP = 1;
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
meta = {
|
||||
|
|
|
|||
|
|
@ -13,17 +13,17 @@
|
|||
}:
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "reaction";
|
||||
version = "2.4.1";
|
||||
version = "2.5.1";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
domain = "framagit.org";
|
||||
owner = "ppom";
|
||||
repo = "reaction";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-1+kliU3TfXhAz/vRh/UamTdcv8UIXrcF1q+Qy1jsjD4=";
|
||||
hash = "sha256-a1ioQ+1CvC22tUeyVG8A7hciP+bXvX/UcRi0++To5Ik=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-FQCYCSKk8SLO2ddM6hklUuTvSK7+4dElaNQ3ZNnci3M=";
|
||||
cargoHash = "sha256-qbhNswQW6ExkMQ+KiAr50EOLiDScwm9hILiiN9GxGWU=";
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
{
|
||||
cmake,
|
||||
lib,
|
||||
rustPlatform,
|
||||
fetchFromGitHub,
|
||||
|
|
@ -8,16 +9,21 @@
|
|||
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "realm";
|
||||
version = "2.8.0";
|
||||
version = "2.9.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "zhboner";
|
||||
repo = "realm";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-7hOy+bqWoVyI2xGJ0eY7GvyIYykr6VP8d3ZYtY/jGPI=";
|
||||
hash = "sha256-gnsFqWhJOMKUaSWfRmHBksw3uWFP0smRhEbPLriEmlk=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-yR+ayseoUYpK9lUFRP0OLrp1+LUrtPnxiPRvjDFSNgo=";
|
||||
cargoHash = "sha256-b/cG6fGoAdhvmZXSQv/QkY3QKiMT7YcfEGohZSbk0q8=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
rustPlatform.bindgenHook
|
||||
];
|
||||
|
||||
env.RUSTC_BOOTSTRAP = 1;
|
||||
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
fetchFromGitHub,
|
||||
stdenv,
|
||||
makeWrapper,
|
||||
nodejs_22,
|
||||
nodejs-slim_22,
|
||||
python3,
|
||||
python3Packages,
|
||||
sqlite,
|
||||
|
|
@ -15,8 +15,8 @@
|
|||
}:
|
||||
|
||||
let
|
||||
nodejs = nodejs_22;
|
||||
pnpm = pnpm_10.override { inherit nodejs; };
|
||||
nodejs-slim = nodejs-slim_22;
|
||||
pnpm = pnpm_10.override { inherit nodejs-slim; };
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "seerr";
|
||||
|
|
@ -41,14 +41,14 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
nativeBuildInputs = [
|
||||
python3
|
||||
python3Packages.distutils
|
||||
nodejs
|
||||
nodejs-slim
|
||||
makeWrapper
|
||||
pnpmConfigHook
|
||||
pnpm
|
||||
];
|
||||
|
||||
preBuild = ''
|
||||
export npm_config_nodedir=${nodejs}
|
||||
export npm_config_nodedir=${nodejs-slim}
|
||||
pushd node_modules
|
||||
pnpm rebuild bcrypt sqlite3
|
||||
popd
|
||||
|
|
@ -77,7 +77,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
|
||||
postInstall = ''
|
||||
mkdir -p $out/bin
|
||||
makeWrapper '${nodejs}/bin/node' "$out/bin/seerr" \
|
||||
makeWrapper '${nodejs-slim}/bin/node' "$out/bin/seerr" \
|
||||
--add-flags "$out/share/dist/index.js" \
|
||||
--chdir "$out/share" \
|
||||
--set NODE_ENV production
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
jemalloc,
|
||||
makeWrapper,
|
||||
nix-update-script,
|
||||
nodejs_22,
|
||||
nodejs-slim_22,
|
||||
pango,
|
||||
pixman,
|
||||
pkg-config,
|
||||
|
|
@ -24,7 +24,7 @@
|
|||
}:
|
||||
|
||||
let
|
||||
pnpm = pnpm_10.override { nodejs = nodejs_22; };
|
||||
pnpm = pnpm_10.override { nodejs-slim = nodejs-slim_22; };
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "sharkey";
|
||||
|
|
@ -48,7 +48,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
|
||||
nativeBuildInputs = [
|
||||
makeWrapper
|
||||
nodejs_22
|
||||
nodejs-slim_22
|
||||
pkg-config
|
||||
pnpmConfigHook
|
||||
pnpm
|
||||
|
|
@ -79,7 +79,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
popd
|
||||
|
||||
# rebuild some node modules that have native dependencies
|
||||
export npm_config_nodedir=${nodejs_22}
|
||||
export npm_config_nodedir=${nodejs-slim_22}
|
||||
|
||||
pushd node_modules/.pnpm/node_modules/re2
|
||||
pnpm rebuild
|
||||
|
|
@ -105,7 +105,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
let
|
||||
binPath = lib.makeBinPath [
|
||||
bash
|
||||
nodejs_22
|
||||
nodejs-slim_22
|
||||
pnpm
|
||||
];
|
||||
libPath = lib.makeLibraryPath [
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
pnpmConfigHook,
|
||||
pnpm_10,
|
||||
faketty,
|
||||
nodejs_22,
|
||||
nodejs-slim_22,
|
||||
versionCheckHook,
|
||||
makeBinaryWrapper,
|
||||
nix-update-script,
|
||||
|
|
@ -14,8 +14,8 @@
|
|||
let
|
||||
pnpm = pnpm_10;
|
||||
|
||||
nodejs = nodejs_22;
|
||||
pnpm' = pnpm.override { inherit nodejs; };
|
||||
nodejs-slim = nodejs-slim_22;
|
||||
pnpm' = pnpm.override { inherit nodejs-slim; };
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "shopify";
|
||||
|
|
@ -37,7 +37,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
|
||||
nativeBuildInputs = [
|
||||
faketty
|
||||
nodejs
|
||||
nodejs-slim
|
||||
pnpmConfigHook
|
||||
pnpm'
|
||||
makeBinaryWrapper
|
||||
|
|
@ -73,7 +73,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
pnpm install --offline --prod --ignore-scripts --frozen-lockfile
|
||||
mv node_modules $out/lib/node_modules/@shopify/cli/node_modules
|
||||
|
||||
makeWrapper ${lib.getExe nodejs} $out/bin/shopify \
|
||||
makeWrapper ${lib.getExe nodejs-slim} $out/bin/shopify \
|
||||
--add-flags "$out/lib/node_modules/@shopify/cli/bin/run.js"
|
||||
|
||||
runHook postInstall
|
||||
|
|
|
|||
|
|
@ -19,13 +19,13 @@
|
|||
}:
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "squid";
|
||||
version = "7.5";
|
||||
version = "7.6";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/squid-cache/squid/releases/download/SQUID_${
|
||||
builtins.replaceStrings [ "." ] [ "_" ] finalAttrs.version
|
||||
}/squid-${finalAttrs.version}.tar.xz";
|
||||
hash = "sha256-9gWJB9sBUNL10ihIK1qeVniSDPNorgzLzszrL/TDUQY=";
|
||||
hash = "sha256-hSF4/cN8WweGqTT8mQx9L//IKs8ZsihL4gm5ZDHSWZI=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
fetchgit,
|
||||
srcOnly,
|
||||
removeReferencesTo,
|
||||
nodejs_24,
|
||||
nodejs-slim_24,
|
||||
pnpm_11,
|
||||
fetchPnpmDeps,
|
||||
pnpmConfigHook,
|
||||
|
|
@ -17,8 +17,10 @@
|
|||
zip,
|
||||
}:
|
||||
let
|
||||
nodeSources = srcOnly nodejs_24;
|
||||
pnpm' = pnpm_11.override { nodejs = nodejs_24; };
|
||||
nodeSources = (srcOnly nodejs-slim_24).overrideAttrs {
|
||||
outputChecks = { };
|
||||
};
|
||||
pnpm' = pnpm_11.override { nodejs-slim = nodejs-slim_24; };
|
||||
esbuild' = esbuild.override {
|
||||
buildGoModule =
|
||||
args:
|
||||
|
|
@ -61,7 +63,8 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
|
||||
nativeBuildInputs = [
|
||||
customPython
|
||||
nodejs_24
|
||||
nodejs-slim_24
|
||||
nodejs-slim_24.npm
|
||||
pnpmConfigHook
|
||||
pnpm'
|
||||
gitMinimal
|
||||
|
|
@ -70,7 +73,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
];
|
||||
|
||||
buildInputs = [
|
||||
nodejs_24
|
||||
nodejs-slim_24
|
||||
];
|
||||
|
||||
# Make a fake git repo with a commit.
|
||||
|
|
|
|||
|
|
@ -5,12 +5,12 @@
|
|||
pnpm_10,
|
||||
fetchPnpmDeps,
|
||||
pnpmConfigHook,
|
||||
nodejs_22,
|
||||
nodejs-slim_22,
|
||||
versionCheckHook,
|
||||
nix-update-script,
|
||||
}:
|
||||
let
|
||||
pnpm' = pnpm_10.override { nodejs = nodejs_22; };
|
||||
pnpm' = pnpm_10.override { nodejs-slim = nodejs-slim_22; };
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "tsx";
|
||||
|
|
@ -35,13 +35,13 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
nodejs_22
|
||||
nodejs-slim_22
|
||||
pnpmConfigHook
|
||||
pnpm'
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
nodejs_22
|
||||
nodejs-slim_22
|
||||
];
|
||||
|
||||
patchPhase = ''
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
stdenv,
|
||||
lib,
|
||||
fetchFromGitHub,
|
||||
nodejs_22,
|
||||
nodejs-slim_22,
|
||||
gitMinimal,
|
||||
gitSetupHook,
|
||||
pnpm_8,
|
||||
|
|
@ -11,7 +11,7 @@
|
|||
nix-update-script,
|
||||
}:
|
||||
let
|
||||
pnpm' = pnpm_8.override { nodejs = nodejs_22; };
|
||||
pnpm' = pnpm_8.override { nodejs-slim = nodejs-slim_22; };
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "vtsls";
|
||||
|
|
@ -26,7 +26,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
nodejs_22
|
||||
nodejs-slim_22
|
||||
# patches are applied with git during build
|
||||
gitMinimal
|
||||
gitSetupHook
|
||||
|
|
@ -34,7 +34,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
pnpm'
|
||||
];
|
||||
|
||||
buildInputs = [ nodejs_22 ];
|
||||
buildInputs = [ nodejs-slim_22 ];
|
||||
|
||||
pnpmWorkspaces = [ "@vtsls/language-server" ];
|
||||
|
||||
|
|
|
|||
|
|
@ -10,15 +10,15 @@
|
|||
|
||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
pname = "youtrack";
|
||||
version = "2026.1.13570";
|
||||
version = "2026.1.13757";
|
||||
|
||||
src = dockerTools.exportImage {
|
||||
diskSize = 8192;
|
||||
fromImage = dockerTools.pullImage {
|
||||
imageName = "jetbrains/youtrack";
|
||||
arch = "amd64";
|
||||
imageDigest = "sha256:2ea82348ed037f91f847dd99f196e632769dbd44a00d5659ee7a50cf9774149a";
|
||||
hash = "sha256-+GVDh4ptBQggtZDWI56pEvkPonL9QG9126amtwZS0T8=";
|
||||
imageDigest = "sha256:56c4d6b6cb3781e21a369857943a366931b69f22dee76c16b2173de0fd56a0a9";
|
||||
hash = "sha256-vWNe/1PTLX1rNR66iOZizubH2YVda8GTfXrQikWTML0=";
|
||||
};
|
||||
};
|
||||
unpackPhase = ''
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ let
|
|||
PRISMA_FMT_BINARY = lib.getExe' prisma-engines_6 "prisma-fmt";
|
||||
};
|
||||
|
||||
pnpm' = pnpm_10.override { nodejs = nodejs_24; };
|
||||
pnpm' = pnpm_10.override { nodejs-slim = nodejs_24; };
|
||||
in
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
|
|
|
|||
|
|
@ -28,9 +28,9 @@ let
|
|||
"21.1.8".officialRelease.sha256 = "sha256-pgd8g9Yfvp7abjCCKSmIn1smAROjqtfZaJkaUkBSKW0=";
|
||||
"22.1.5".officialRelease.sha256 = "sha256-eunfMOH+HVpefZJ+CG7hXDoM+pi6iYvHpD3DoSAsjoE=";
|
||||
"23.0.0-git".gitRelease = {
|
||||
rev = "625facd4375f6bfa5de501d0559bd262062e2dc3";
|
||||
rev-version = "23.0.0-unstable-2026-06-14";
|
||||
sha256 = "sha256-myNSe9+nBTd28BnEmq+Ysp0kiY6KtOJSmbnGjQgGxRI=";
|
||||
rev = "d1744cf76fbea0c407c5e793a380ffca4e5829be";
|
||||
rev-version = "23.0.0-unstable-2026-06-21";
|
||||
sha256 = "sha256-gtfU3pO3xiZtxz/iRmkWnaEx/DEomkOi9r6jsCbLOgQ=";
|
||||
};
|
||||
}
|
||||
// llvmVersions;
|
||||
|
|
|
|||
|
|
@ -5,14 +5,14 @@
|
|||
# nix build .#legacyPackages.x86_64-darwin.mesa .#legacyPackages.aarch64-darwin.mesa
|
||||
rec {
|
||||
pname = "mesa";
|
||||
version = "26.1.2";
|
||||
version = "26.1.3";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
domain = "gitlab.freedesktop.org";
|
||||
owner = "mesa";
|
||||
repo = "mesa";
|
||||
rev = "mesa-${version}";
|
||||
hash = "sha256-GqIU9BL57n+ihpeXug+K9kOtvHZ+LCUQg1wi/rrYWuc=";
|
||||
hash = "sha256-W2Ud9wmiIuDYMnFj8sK2SGAI1WayMCtdj7/7od/1Ql4=";
|
||||
};
|
||||
|
||||
meta = {
|
||||
|
|
|
|||
|
|
@ -10,11 +10,11 @@
|
|||
|
||||
buildOctavePackage rec {
|
||||
pname = "optim";
|
||||
version = "1.6.2";
|
||||
version = "1.6.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/octave/${pname}-${version}.tar.gz";
|
||||
sha256 = "sha256-VUqOGLtxla6GH1BZwU8aVXhEJlwa3bW/vzq5iFUkeH4=";
|
||||
sha256 = "sha256-Wfs3caLSojE0R1MsWaLgAKanu3pnfz74GD+6qrVJOhQ=";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
|
|
@ -34,9 +34,10 @@ buildOctavePackage rec {
|
|||
publicDomain
|
||||
];
|
||||
# Modified BSD code seems removed
|
||||
maintainers = with lib.maintainers; [ ravenjoad ];
|
||||
maintainers = with lib.maintainers; [
|
||||
ravenjoad
|
||||
lnk3
|
||||
];
|
||||
description = "Non-linear optimization toolkit";
|
||||
# Hasn't been updated since 2022, and fails to build with octave >= 10.1.0
|
||||
broken = true;
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
|
||||
# web assets
|
||||
zip,
|
||||
nodejs_24,
|
||||
nodejs-slim,
|
||||
pnpm_10,
|
||||
fetchPnpmDeps,
|
||||
pnpmConfigHook,
|
||||
|
|
@ -77,8 +77,7 @@
|
|||
writableTmpDirAsHomeHook,
|
||||
}:
|
||||
let
|
||||
nodejs = nodejs_24;
|
||||
pnpm = pnpm_10.override { inherit nodejs; };
|
||||
pnpm = pnpm_10;
|
||||
in
|
||||
buildPythonPackage (finalAttrs: {
|
||||
pname = "gradio";
|
||||
|
|
@ -109,7 +108,7 @@ buildPythonPackage (finalAttrs: {
|
|||
|
||||
nativeBuildInputs = [
|
||||
zip
|
||||
nodejs
|
||||
nodejs-slim
|
||||
pnpm
|
||||
pnpmConfigHook
|
||||
writableTmpDirAsHomeHook
|
||||
|
|
|
|||
|
|
@ -25,6 +25,11 @@ buildPythonPackage rec {
|
|||
hash = "sha256-R/Mr+Qv22AN7HCDGmAUVh4efU8z4gMIyhC0AuKmxgdE=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# https://github.com/laurentS/slowapi/pull/279
|
||||
./starlette-1.0-compat.patch
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ poetry-core ];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
|||
|
|
@ -0,0 +1,103 @@
|
|||
From 8c5f6165b7a66712f3e7e3ceab502069a5c5939a Mon Sep 17 00:00:00 2001
|
||||
From: Leonardo Rayner <raynercodes@gmail.com>
|
||||
Date: Wed, 10 Jun 2026 02:21:55 -0400
|
||||
Subject: [PATCH 1/3] fix: Replace deprecated @app.route with app.add_route for
|
||||
Starlette 1.0 compatibility
|
||||
|
||||
---
|
||||
tests/test_starlette_extension.py | 25 ++++++++++++++++---------
|
||||
2 files changed, 26 insertions(+), 15 deletions(-)
|
||||
|
||||
diff --git a/tests/test_starlette_extension.py b/tests/test_starlette_extension.py
|
||||
index 0e26baa..c086f75 100644
|
||||
--- a/tests/test_starlette_extension.py
|
||||
+++ b/tests/test_starlette_extension.py
|
||||
@@ -175,15 +175,17 @@ def test_headers_no_breach(self, build_starlette_app):
|
||||
headers_enabled=True, key_func=get_remote_address
|
||||
)
|
||||
|
||||
- @app.route("/t1")
|
||||
@limiter.limit("10/minute")
|
||||
def t1(request: Request):
|
||||
return PlainTextResponse("test")
|
||||
+
|
||||
+ app.add_route("/t1", t1)
|
||||
|
||||
- @app.route("/t2")
|
||||
@limiter.limit("2/second; 5 per minute; 10/hour")
|
||||
def t2(request: Request):
|
||||
return PlainTextResponse("test")
|
||||
+
|
||||
+ app.add_route("/t2", t2)
|
||||
|
||||
with hiro.Timeline().freeze():
|
||||
with TestClient(app) as cli:
|
||||
@@ -208,10 +210,11 @@ def test_headers_breach(self, build_starlette_app):
|
||||
headers_enabled=True, key_func=get_remote_address
|
||||
)
|
||||
|
||||
- @app.route("/t1")
|
||||
@limiter.limit("2/second; 10 per minute; 20/hour")
|
||||
def t(request: Request):
|
||||
return PlainTextResponse("test")
|
||||
+
|
||||
+ app.add_route("/t1", t)
|
||||
|
||||
with hiro.Timeline().freeze() as timeline:
|
||||
with TestClient(app) as cli:
|
||||
@@ -233,10 +236,11 @@ def test_retry_after(self, build_starlette_app):
|
||||
headers_enabled=True, key_func=get_remote_address
|
||||
)
|
||||
|
||||
- @app.route("/t1")
|
||||
@limiter.limit("1/minute")
|
||||
def t(request: Request):
|
||||
return PlainTextResponse("test")
|
||||
+
|
||||
+ app.add_route("/t1", t)
|
||||
|
||||
with hiro.Timeline().freeze() as timeline:
|
||||
with TestClient(app) as cli:
|
||||
@@ -254,9 +258,10 @@ def test_exempt_decorator(self, build_starlette_app):
|
||||
default_limits=["1/minute"],
|
||||
)
|
||||
|
||||
- @app.route("/t1")
|
||||
def t1(request: Request):
|
||||
return PlainTextResponse("test")
|
||||
+
|
||||
+ app.add_route("/t1", t1)
|
||||
|
||||
with TestClient(app) as cli:
|
||||
resp = cli.get("/t1", headers={"X_FORWARDED_FOR": "127.0.0.10"})
|
||||
@@ -264,11 +269,12 @@ def t1(request: Request):
|
||||
resp2 = cli.get("/t1", headers={"X_FORWARDED_FOR": "127.0.0.10"})
|
||||
assert resp2.status_code == 429
|
||||
|
||||
- @app.route("/t2")
|
||||
- @limiter.exempt
|
||||
def t2(request: Request):
|
||||
"""Exempt a sync route"""
|
||||
return PlainTextResponse("test")
|
||||
+
|
||||
+ limiter.exempt(t2)
|
||||
+ app.add_route("/t2", t2)
|
||||
|
||||
with TestClient(app) as cli:
|
||||
resp = cli.get("/t2", headers={"X_FORWARDED_FOR": "127.0.0.10"})
|
||||
@@ -276,11 +282,12 @@ def t2(request: Request):
|
||||
resp2 = cli.get("/t2", headers={"X_FORWARDED_FOR": "127.0.0.10"})
|
||||
assert resp2.status_code == 200
|
||||
|
||||
- @app.route("/t3")
|
||||
- @limiter.exempt
|
||||
async def t3(request: Request):
|
||||
"""Exempt an async route"""
|
||||
return PlainTextResponse("test")
|
||||
+
|
||||
+ limiter.exempt(t3)
|
||||
+ app.add_route("/t3", t3)
|
||||
|
||||
with TestClient(app) as cli:
|
||||
resp = cli.get("/t3", headers={"X_FORWARDED_FOR": "127.0.0.10"})
|
||||
|
||||
|
|
@ -31,7 +31,13 @@ let
|
|||
};
|
||||
};
|
||||
|
||||
callPnpm = variant: callPackage ./generic.nix { inherit (variant) version hash; };
|
||||
callPnpm =
|
||||
variant:
|
||||
callPackage ./generic.nix {
|
||||
inherit (variant) version hash;
|
||||
#FIXME: remove this hack in a future version.
|
||||
nodejs = null; # Passing null to detect out-of-tree overrides
|
||||
};
|
||||
|
||||
mkPnpm = versionSuffix: variant: nameValuePair "pnpm_${versionSuffix}" (callPnpm variant);
|
||||
in
|
||||
|
|
|
|||
|
|
@ -6,7 +6,9 @@
|
|||
pnpmConfigHook,
|
||||
fetchurl,
|
||||
installShellFiles,
|
||||
nodejs,
|
||||
#FIXME: remove this arg in a future version.
|
||||
nodejs, # Should be null, unless overridden.
|
||||
nodejs-slim,
|
||||
testers,
|
||||
buildPackages,
|
||||
bashNonInteractive,
|
||||
|
|
@ -18,6 +20,12 @@
|
|||
}:
|
||||
let
|
||||
majorVersion = lib.versions.major version;
|
||||
nodejs-slim' =
|
||||
#FIXME: remove this hack in a future version.
|
||||
if nodejs == null then
|
||||
nodejs-slim
|
||||
else
|
||||
lib.warn "pnpm: Override nodejs-slim instead of nodejs" nodejs;
|
||||
in
|
||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
pname = "pnpm";
|
||||
|
|
@ -30,13 +38,13 @@ stdenvNoCC.mkDerivation (finalAttrs: {
|
|||
|
||||
nativeBuildInputs = [
|
||||
installShellFiles
|
||||
nodejs
|
||||
nodejs-slim'
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
bashNonInteractive # needed for node-gyp wrapper script
|
||||
]
|
||||
++ lib.optionals withNode [ nodejs ];
|
||||
++ lib.optionals withNode [ nodejs-slim' ];
|
||||
|
||||
# Remove binary files from src, we don't need them, and this way we make sure
|
||||
# our distribution is free of binaryNativeCode
|
||||
|
|
@ -109,7 +117,10 @@ stdenvNoCC.mkDerivation (finalAttrs: {
|
|||
];
|
||||
})
|
||||
);
|
||||
inherit nodejs majorVersion;
|
||||
nodejs-slim = nodejs-slim';
|
||||
#FIXME: remove this in a future version.
|
||||
nodejs = lib.warn "pnpm.nodejs: Use pnpm.nodejs-slim instead of pnpm.nodejs" nodejs-slim';
|
||||
inherit majorVersion;
|
||||
|
||||
tests = {
|
||||
inherit (tests) pnpm;
|
||||
|
|
|
|||
|
|
@ -44,6 +44,10 @@
|
|||
"man"
|
||||
"out"
|
||||
"static"
|
||||
|
||||
# Filter out outputs that didn't exist on 25.11
|
||||
"npm"
|
||||
"corepack"
|
||||
])
|
||||
&& !(builtins.hasAttr name nodejs)
|
||||
) (builtins.attrNames nodejs-slim)
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
fetchPnpmDeps,
|
||||
lib,
|
||||
makeShellWrapper,
|
||||
nodejs,
|
||||
nodejs-slim,
|
||||
pnpmConfigHook,
|
||||
pnpm_11,
|
||||
stdenv,
|
||||
|
|
@ -26,7 +26,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
|
||||
nativeBuildInputs = [
|
||||
makeShellWrapper
|
||||
nodejs
|
||||
nodejs-slim
|
||||
pnpm
|
||||
pnpmConfigHook
|
||||
];
|
||||
|
|
@ -44,7 +44,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
|
||||
install -Dm644 -t $out/lib/pnpm-11-test dist/index.js
|
||||
|
||||
makeWrapper ${lib.getExe nodejs} $out/bin/pnpm-11-test \
|
||||
makeWrapper ${lib.getExe nodejs-slim} $out/bin/pnpm-11-test \
|
||||
--add-flags "$out/lib/pnpm-11-test"
|
||||
|
||||
runHook postInstall
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
fetchPnpmDeps,
|
||||
lib,
|
||||
makeShellWrapper,
|
||||
nodejs,
|
||||
nodejs-slim,
|
||||
pnpmConfigHook,
|
||||
pnpm_11,
|
||||
stdenv,
|
||||
|
|
@ -26,7 +26,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
|
||||
nativeBuildInputs = [
|
||||
makeShellWrapper
|
||||
nodejs
|
||||
nodejs-slim
|
||||
pnpm
|
||||
pnpmConfigHook
|
||||
];
|
||||
|
|
@ -44,7 +44,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
|
||||
install -Dm644 -t $out/lib/pnpm-11-test dist/index.js
|
||||
|
||||
makeWrapper ${lib.getExe nodejs} $out/bin/pnpm-11-test \
|
||||
makeWrapper ${lib.getExe nodejs-slim} $out/bin/pnpm-11-test \
|
||||
--add-flags "$out/lib/pnpm-11-test"
|
||||
|
||||
runHook postInstall
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue