Merge branch 'master' into staging-next

This commit is contained in:
Randy Eckenrode
2026-04-07 21:13:06 -04:00
228 changed files with 3853 additions and 1694 deletions
+1 -1
View File
@@ -485,7 +485,7 @@ pkgs/by-name/lx/lxc* @adamcstephens
# Darwin
/pkgs/by-name/ap/apple-sdk @NixOS/darwin-core
/pkgs/os-specific/darwin/apple-source-releases @NixOS/darwin-core
/pkgs/os-specific/darwin @NixOS/darwin-core
/pkgs/stdenv/darwin @NixOS/darwin-core
# BEAM
+27 -6
View File
@@ -842,17 +842,38 @@ general. A number of other parameters can be overridden:
(hello { }).override { extraRustcOpts = "-Z debuginfo=2"; }
```
- The lint level cap passed to `rustc` (`allow` by default, which
silences all lints). Because `rustc` only honours the first
`--cap-lints` it receives, this cannot be changed via
`extraRustcOpts`; use this attribute instead. Useful when overriding
the `rust` attribute to point at `clippy-driver`, since clippy lints
are also capped by this flag:
- The lint level cap passed to `rustc`. Defaults to `null`, which
auto-resolves to `"allow"` (silences all lints) when `lints` is
empty, or `"forbid"` (no cap) when `lints` is set. Because `rustc`
only honours the first `--cap-lints` it receives, this cannot be
changed via `extraRustcOpts`; use this attribute instead. Useful
when overriding the `rust` attribute to point at `clippy-driver`,
since clippy lints are also capped by this flag:
```nix
(hello { }).override { capLints = "warn"; }
```
- Lint configuration mirroring Cargo.toml's `[lints]` table. Keys are
tool names (`rust`, `clippy`, `rustdoc`); values map lint names to
either a level string (`"allow"`, `"warn"`, `"deny"`, `"forbid"`) or
`{ level = "..."; priority = <int>; }`. Lower priorities are emitted
first so that more specific lints can override them. Setting a
non-empty `lints` raises the default `capLints` to `"forbid"` so the
lints actually apply:
```nix
(hello { }).override {
lints.rust = {
unsafe_code = "forbid";
unused = {
level = "deny";
priority = -1;
};
};
}
```
- Phases, just like in any other derivation, can be specified using
the following attributes: `preUnpack`, `postUnpack`, `prePatch`,
`patches`, `postPatch`, `preConfigure` (in the case of a Rust crate,
@@ -149,6 +149,8 @@
- `services.uptime` has been removed because the package it relies on does not exist anymore in nixpkgs.
- `post-resume.target` has been removed. See {manpage}`systemd.special(7)` about `sleep.target` for instructions on ordering a process after resume with `ExecStop=`.
- `services.kubernetes.addons.dns.coredns` has been renamed to `services.kubernetes.addons.dns.corednsImage` and now expects a
package instead of attrs. Now, by default, nixpkgs.coredns in conjunction with dockerTools.buildImage is used, instead
of pulling the upstream container image from Docker Hub. If you want the old behavior, you can set:
+15 -42
View File
@@ -90,68 +90,35 @@ in
https://www.freedesktop.org/software/systemd/man/latest/systemd.special.html#sleep.target
'';
systemd.targets.post-resume = {
description = "Post-Resume Actions";
requires = [ "post-resume.service" ];
after = [ "post-resume.service" ];
wantedBy = [ "sleep.target" ];
unitConfig.StopWhenUnneeded = true;
};
systemd.services = {
# Service executed before suspending/hibernating.
pre-sleep = {
description = "Pre-Sleep Actions";
sleep-actions = {
description = "Sleep Actions";
wantedBy = [ "sleep.target" ];
before = [ "sleep.target" ];
unitConfig.StopWhenUnneeded = true;
script = ''
# NixOS pre-sleep script
# config.powerManagement.powerDownCommands
${cfg.powerDownCommands}
'';
serviceConfig.Type = "oneshot";
};
# Service executed after resuming from suspend/hibernate
post-resume = {
description = "Post-Resume Actions";
# Pulled in by post-resume.service above
after = [ "sleep.target" ];
script = ''
preStop = ''
# NixOS pre-resume script
/run/current-system/systemd/bin/systemctl try-restart --no-block post-resume.target
# config.powerManagement.resumeCommands
${cfg.resumeCommands}
# config.powerManagement.powerUpCommands
${cfg.powerUpCommands}
'';
serviceConfig.Type = "oneshot";
serviceConfig = {
Type = "oneshot";
RemainAfterExit = true;
};
};
# Service executed before shutdown
pre-shutdown = {
description = "Pre-Shutdown Actions";
wantedBy = [
"shutdown.target"
];
before = [
"shutdown.target"
];
script = ''
# NixOS pre-shutdown script
# config.powerManagement.powerDownCommands
${cfg.powerDownCommands}
'';
serviceConfig.Type = "oneshot";
unitConfig.DefaultDependencies = false;
};
# Service executed after boot
# Service executed after boot, and stopped during shutdown
post-boot = {
description = "Post-Boot Actions";
# It's not well defined at what point in the bootup sequence this should run
@@ -167,6 +134,12 @@ in
# config.powerManagement.powerUpCommands
${cfg.powerUpCommands}
'';
preStop = ''
# NixOS pre-shutdown script
# config.powerManagement.powerDownCommands
${cfg.powerDownCommands}
'';
serviceConfig = {
Type = "oneshot";
RemainAfterExit = true;
+44 -14
View File
@@ -54,19 +54,49 @@ in
};
# Provide the NixOS/Nixpkgs sources in /etc/nixos. This is required
# for nixos-install.
boot.postBootCommands = lib.mkAfter ''
if ! [ -e /var/lib/nixos/did-channel-init ]; then
echo "unpacking the NixOS/Nixpkgs sources..."
mkdir -p /nix/var/nix/profiles/per-user/root
${config.nix.package.out}/bin/nix-env -p /nix/var/nix/profiles/per-user/root/channels \
-i ${channelSources} --quiet --option build-use-substitutes false \
${lib.optionalString config.boot.initrd.systemd.enable "--option sandbox false"} # There's an issue with pivot_root
mkdir -m 0700 -p /root/.nix-defexpr
ln -s /nix/var/nix/profiles/per-user/root/channels /root/.nix-defexpr/channels
mkdir -m 0755 -p /var/lib/nixos
touch /var/lib/nixos/did-channel-init
fi
'';
# for nixos-install. We use a systemd service rather than
# boot.postBootCommands so that ordering relative to other
# early-boot services (e.g. register-nix-paths in QEMU VMs) is
# explicit.
systemd.services.nix-channel-init = {
description = "Initialize NixOS Channel";
# Run early so the channel is available before regular services.
# nix-env is invoked before nix-daemon.socket is up, so it
# accesses the store directly (we are root).
unitConfig.DefaultDependencies = false;
wantedBy = [ "sysinit.target" ];
before = [
"sysinit.target"
"shutdown.target"
"nix-daemon.socket"
"nix-daemon.service"
];
after = [
"local-fs.target"
# In QEMU VMs the store DB is populated by register-nix-paths.
# On real hardware this unit does not exist and the dependency
# is silently ignored by systemd.
"register-nix-paths.service"
];
conflicts = [ "shutdown.target" ];
restartIfChanged = false;
serviceConfig = {
Type = "oneshot";
RemainAfterExit = true;
};
script = ''
if ! [ -e /var/lib/nixos/did-channel-init ]; then
echo "unpacking the NixOS/Nixpkgs sources..."
mkdir -p /nix/var/nix/profiles/per-user/root
${lib.getExe' config.nix.package.out "nix-env"} -p /nix/var/nix/profiles/per-user/root/channels \
-i ${channelSources} --quiet --option build-use-substitutes false \
${lib.optionalString config.boot.initrd.systemd.enable "--option sandbox false"} # There's an issue with pivot_root
mkdir -m 0700 -p /root/.nix-defexpr
ln -s /nix/var/nix/profiles/per-user/root/channels /root/.nix-defexpr/channels
mkdir -m 0755 -p /var/lib/nixos
touch /var/lib/nixos/did-channel-init
fi
'';
};
};
}
+26 -9
View File
@@ -1055,16 +1055,33 @@ in
}
);
boot.postBootCommands = ''
# After booting, register the contents of the Nix store on the
# CD in the Nix database in the tmpfs.
${config.nix.package.out}/bin/nix-store --load-db < /nix/store/nix-path-registration
systemd.services.register-nix-paths = {
description = "Register Nix Store Paths";
unitConfig.DefaultDependencies = false;
wantedBy = [ "sysinit.target" ];
before = [
"sysinit.target"
"shutdown.target"
"nix-daemon.socket"
"nix-daemon.service"
];
after = [ "local-fs.target" ];
conflicts = [ "shutdown.target" ];
restartIfChanged = false;
serviceConfig = {
Type = "oneshot";
RemainAfterExit = true;
};
script = ''
# After booting, register the contents of the Nix store on the
# CD in the Nix database in the tmpfs.
${lib.getExe' config.nix.package.out "nix-store"} --load-db < /nix/store/nix-path-registration
# nixos-rebuild also requires a "system" profile and an
# /etc/NIXOS tag.
touch /etc/NIXOS
${config.nix.package.out}/bin/nix-env -p /nix/var/nix/profiles/system --set /run/current-system
'';
# nixos-rebuild also requires a "system" profile and an /etc/NIXOS tag.
touch /etc/NIXOS
${lib.getExe' config.nix.package.out "nix-env"} -p /nix/var/nix/profiles/system --set /run/current-system
'';
};
# Add vfat support to the initrd to enable people to copy the
# contents of the CD to a bootable USB stick.
+30 -11
View File
@@ -166,27 +166,46 @@ with lib;
boot.loader.timeout = 10;
systemd.services.register-nix-paths = {
description = "Register Nix Store Paths";
unitConfig.DefaultDependencies = false;
wantedBy = [ "sysinit.target" ];
before = [
"sysinit.target"
"shutdown.target"
"nix-daemon.socket"
"nix-daemon.service"
];
after = [ "local-fs.target" ];
conflicts = [ "shutdown.target" ];
restartIfChanged = false;
serviceConfig = {
Type = "oneshot";
RemainAfterExit = true;
};
script = ''
# After booting, register the contents of the Nix store
# in the Nix database in the tmpfs.
${lib.getExe' config.nix.package "nix-store"} --load-db < /nix/store/nix-path-registration
# nixos-rebuild also requires a "system" profile and an /etc/NIXOS tag.
touch /etc/NIXOS
${lib.getExe' config.nix.package "nix-env"} -p /nix/var/nix/profiles/system --set /run/current-system
'';
};
boot.postBootCommands = ''
# After booting, register the contents of the Nix store
# in the Nix database in the tmpfs.
${config.nix.package}/bin/nix-store --load-db < /nix/store/nix-path-registration
# nixos-rebuild also requires a "system" profile and an
# /etc/NIXOS tag.
touch /etc/NIXOS
${config.nix.package}/bin/nix-env -p /nix/var/nix/profiles/system --set /run/current-system
# Set password for user nixos if specified on cmdline
# Allows using nixos-anywhere in headless environments
for o in $(</proc/cmdline); do
case "$o" in
live.nixos.passwordHash=*)
set -- $(IFS==; echo $o)
${pkgs.gnugrep}/bin/grep -q "root::" /etc/shadow && ${pkgs.shadow}/bin/usermod -p "$2" root
${lib.getExe pkgs.gnugrep} -q "root::" /etc/shadow && ${lib.getExe' pkgs.shadow "usermod"} -p "$2" root
;;
live.nixos.password=*)
set -- $(IFS==; echo $o)
${pkgs.gnugrep}/bin/grep -q "root::" /etc/shadow && echo "root:$2" | ${pkgs.shadow}/bin/chpasswd
${lib.getExe pkgs.gnugrep} -q "root::" /etc/shadow && echo "root:$2" | ${lib.getExe' pkgs.shadow "chpasswd"}
;;
esac
done
+59 -26
View File
@@ -377,39 +377,72 @@ in
}
) { };
boot.postBootCommands =
systemd.services.expand-root-partition = lib.mkIf config.sdImage.expandOnBoot {
description = "Grow the root partition and filesystem to fill the SD card";
unitConfig = {
DefaultDependencies = false;
ConditionPathExists = config.sdImage.nixPathRegistrationFile;
};
wantedBy = [ "sysinit.target" ];
before = [
"sysinit.target"
"shutdown.target"
"register-nix-paths.service"
];
after = [ "local-fs.target" ];
conflicts = [ "shutdown.target" ];
restartIfChanged = false;
serviceConfig = {
Type = "oneshot";
RemainAfterExit = true;
};
script = ''
# Figure out device names for the boot device and root filesystem.
rootPart=$(${lib.getExe' pkgs.util-linux "findmnt"} -n -o SOURCE /)
bootDevice=$(${lib.getExe' pkgs.util-linux "lsblk"} -npo PKNAME $rootPart)
partNum=$(${lib.getExe' pkgs.util-linux "lsblk"} -npo MAJ:MIN $rootPart | ${lib.getExe pkgs.gawk} -F: '{print $2}')
# Resize the root partition and the filesystem to fit the disk
echo ",+," | ${lib.getExe' pkgs.util-linux "sfdisk"} -N$partNum --no-reread $bootDevice
${lib.getExe' pkgs.parted "partprobe"}
${lib.getExe' pkgs.e2fsprogs "resize2fs"} $rootPart
'';
};
systemd.services.register-nix-paths =
let
expandOnBoot = lib.optionalString config.sdImage.expandOnBoot ''
# Figure out device names for the boot device and root filesystem.
rootPart=$(${pkgs.util-linux}/bin/findmnt -n -o SOURCE /)
bootDevice=$(lsblk -npo PKNAME $rootPart)
partNum=$(lsblk -npo MAJ:MIN $rootPart | ${pkgs.gawk}/bin/awk -F: '{print $2}')
# Resize the root partition and the filesystem to fit the disk
echo ",+," | sfdisk -N$partNum --no-reread $bootDevice
${pkgs.parted}/bin/partprobe
${pkgs.e2fsprogs}/bin/resize2fs $rootPart
'';
nixPathRegistrationFile = config.sdImage.nixPathRegistrationFile;
inherit (config.sdImage) nixPathRegistrationFile;
in
''
# On the first boot do some maintenance tasks
if [ -f ${nixPathRegistrationFile} ]; then
set -euo pipefail
set -x
${expandOnBoot}
# Register the contents of the initial Nix store
${config.nix.package.out}/bin/nix-store --load-db < ${nixPathRegistrationFile}
{
description = "Register Nix Store Paths";
unitConfig = {
DefaultDependencies = false;
ConditionPathExists = nixPathRegistrationFile;
};
wantedBy = [ "sysinit.target" ];
before = [
"sysinit.target"
"shutdown.target"
"nix-daemon.socket"
"nix-daemon.service"
];
after = [ "local-fs.target" ];
conflicts = [ "shutdown.target" ];
restartIfChanged = false;
serviceConfig = {
Type = "oneshot";
RemainAfterExit = true;
};
script = ''
${lib.getExe' config.nix.package.out "nix-store"} --load-db < ${nixPathRegistrationFile}
# nixos-rebuild also requires a "system" profile and an /etc/NIXOS tag.
touch /etc/NIXOS
${config.nix.package.out}/bin/nix-env -p /nix/var/nix/profiles/system --set /run/current-system
${lib.getExe' config.nix.package.out "nix-env"} -p /nix/var/nix/profiles/system --set /run/current-system
# Prevents this from running on later boots.
rm -f ${nixPathRegistrationFile}
fi
'';
'';
};
};
}
@@ -1,8 +1,8 @@
{
x86_64-linux = "/nix/store/mxn3vxpvk2b42kgd08aw4bn27qhf434w-nix-2.31.3";
i686-linux = "/nix/store/b7d35ifww9683l74ydkb0qhrq6lqcisi-nix-2.31.3";
aarch64-linux = "/nix/store/ysz7dwmy4zd1zm3wzx5dh9g999xv7pbm-nix-2.31.3";
riscv64-linux = "/nix/store/avfv2lqbnphj2ap8y5ihg1l0sqhpjll7-nix-riscv64-unknown-linux-gnu-2.31.3";
x86_64-darwin = "/nix/store/s8lcl6nrd5ia7nr4zx9mg720i9f8qm37-nix-2.31.3";
aarch64-darwin = "/nix/store/vfjzbcl3kf9jjwh0g2x03cvz2x5hg8py-nix-2.31.3";
x86_64-linux = "/nix/store/vals1fs2rl6yn5f8gbqj9mvly4r27shs-nix-2.31.4";
i686-linux = "/nix/store/fyrlz8cdzvf5csdh5885wifpxc8ywdii-nix-2.31.4";
aarch64-linux = "/nix/store/19p3nc892m7idfg2ngd1614660xqbhnm-nix-2.31.4";
riscv64-linux = "/nix/store/x1isvq0xnyrg0l29qk2xlp929cgjsmqy-nix-riscv64-unknown-linux-gnu-2.31.4";
x86_64-darwin = "/nix/store/4gqxzd5zkxcq271wi5saml4zd92rdkws-nix-2.31.4";
aarch64-darwin = "/nix/store/r3gz609kdqchxcmil7dhbravbq8kwm93-nix-2.31.4";
}
@@ -211,7 +211,6 @@ sub pciCheck {
($device eq "0xfd3e" || $device eq "0x7d1d" || $device eq "0xad1d" ||
$device eq "0x643e" || $device eq "0xb03e"))
{
push @imports, "(modulesPath + \"/hardware/cpu/intel-npu.nix\")";
push @attrs, "hardware.cpu.intel.npu.enable = true;";
}
+2
View File
@@ -61,6 +61,7 @@
./hardware/cpu/amd-ryzen-smu.nix
./hardware/cpu/amd-sev.nix
./hardware/cpu/intel-microcode.nix
./hardware/cpu/intel-npu.nix
./hardware/cpu/intel-sgx.nix
./hardware/cpu/x86-msr.nix
./hardware/decklink.nix
@@ -1587,6 +1588,7 @@
./services/video/go2rtc/default.nix
./services/video/mediamtx.nix
./services/video/mirakurun.nix
./services/video/motioneye.nix
./services/video/photonvision.nix
./services/video/ustreamer.nix
./services/video/v4l2-relayd.nix
+32 -10
View File
@@ -1,4 +1,9 @@
{ config, pkgs, ... }:
{
config,
lib,
pkgs,
...
}:
let
inherit (pkgs) writeScript;
@@ -45,17 +50,34 @@ in
};
boot.isContainer = true;
boot.postBootCommands = ''
# After booting, register the contents of the Nix store in the Nix
# database.
if [ -f /nix-path-registration ]; then
${config.nix.package.out}/bin/nix-store --load-db < /nix-path-registration &&
systemd.services.register-nix-paths = {
description = "Register Nix Store Paths";
unitConfig = {
DefaultDependencies = false;
ConditionPathExists = "/nix-path-registration";
};
wantedBy = [ "sysinit.target" ];
before = [
"sysinit.target"
"shutdown.target"
"nix-daemon.socket"
"nix-daemon.service"
];
after = [ "local-fs.target" ];
conflicts = [ "shutdown.target" ];
restartIfChanged = false;
serviceConfig = {
Type = "oneshot";
RemainAfterExit = true;
};
script = ''
${lib.getExe' config.nix.package.out "nix-store"} --load-db < /nix-path-registration
rm /nix-path-registration
fi
# nixos-rebuild also requires a "system" profile
${config.nix.package.out}/bin/nix-env -p /nix/var/nix/profiles/system --set /run/current-system
'';
# nixos-rebuild also requires a "system" profile
${lib.getExe' config.nix.package.out "nix-env"} -p /nix/var/nix/profiles/system --set /run/current-system
'';
};
# Install new init script
system.activationScripts.installInitScript = ''
+16 -6
View File
@@ -194,12 +194,7 @@ in
systemd.services.undervolt = {
description = "Intel Undervolting Service";
# Apply undervolt on boot, nixos generation switch and resume
wantedBy = [
"multi-user.target"
"post-resume.target"
];
after = [ "post-resume.target" ]; # Not sure why but it won't work without this
wantedBy = [ "multi-user.target" ];
serviceConfig = {
Type = "oneshot";
@@ -208,6 +203,21 @@ in
};
};
systemd.services.undervolt-sleep = {
description = "Preserve Intel Undervolting After Sleep";
wantedBy = [ "sleep.target" ];
before = [ "sleep.target" ];
unitConfig.StopWhenUnneeded = true;
serviceConfig = {
Type = "oneshot";
Restart = "no";
RemainAfterExit = true;
ExecStop = "${cfg.package}/bin/undervolt ${toString cliArgs}";
};
};
systemd.timers.undervolt = lib.mkIf cfg.useTimer {
description = "Undervolt timer to ensure voltage settings are always applied";
partOf = [ "undervolt.service" ];
@@ -989,7 +989,6 @@ in
"AF_INET6"
"AF_UNIX"
];
TemporaryFileSystem = "/:ro";
}
];
};
@@ -1031,7 +1030,6 @@ in
"AF_INET6"
"AF_UNIX"
];
TemporaryFileSystem = "/:ro";
}
];
environment.RUST_LOG = "info";
@@ -1083,7 +1081,6 @@ in
# Need access to home directories
ProtectHome = false;
RestrictAddressFamilies = [ "AF_UNIX" ];
TemporaryFileSystem = "/:ro";
Restart = "on-failure";
};
environment.RUST_LOG = "info";
+122
View File
@@ -0,0 +1,122 @@
{
config,
pkgs,
lib,
...
}:
let
cfg = config.services.motioneye;
in
{
options.services.motioneye = {
enable = lib.mkEnableOption "motionEye";
packages = {
motioneye = lib.mkPackageOption pkgs "motioneye" { };
motion = lib.mkPackageOption pkgs "motion" { };
ffmpeg = lib.mkPackageOption pkgs "ffmpeg" { };
};
user = lib.mkOption {
type = lib.types.str;
default = "motioneye";
description = "User to run motionEye under.";
};
group = lib.mkOption {
type = lib.types.str;
default = "motioneye";
description = "Group to run motionEye under.";
};
settings = lib.mkOption {
type = lib.types.attrsOf lib.types.str;
default = { };
defaultText = lib.literalExpression /* nix */ ''
{
conf_path = lib.mkDefault "/var/lib/motioneye/conf";
run_path = lib.mkDefault "/run/motioneye";
log_path = lib.mkDefault "/var/log/motioneye";
media_path = lib.mkDefault "/var/lib/motioneye/media";
}
'';
description = ''
Configuration to put in motioneye.conf.
See <https://github.com/motioneye-project/motioneye/wiki/Configuration-File> for more details.
'';
};
};
config = lib.mkIf cfg.enable {
services.motioneye.settings = {
conf_path = lib.mkDefault "/var/lib/motioneye/conf";
run_path = lib.mkDefault "/run/motioneye";
log_path = lib.mkDefault "/var/log/motioneye";
media_path = lib.mkDefault "/var/lib/motioneye/media";
};
users = {
groups.${cfg.group} = { };
users.${cfg.user} = {
inherit (cfg) group;
isSystemUser = true;
# allow v4l access
extraGroups = [ "video" ];
};
};
systemd.tmpfiles.settings.motioneye =
let
config = {
d = {
inherit (cfg) user group;
mode = "0750";
};
};
in
{
"${cfg.settings.conf_path}" = config;
"${cfg.settings.run_path}" = config;
"${cfg.settings.log_path}" = config;
"${cfg.settings.media_path}" = config;
};
environment.etc."motioneye/motioneye.conf".text = lib.concatMapAttrsStringSep "\n" (
key: value: "${key} ${lib.escapeShellArg value}"
) cfg.settings;
# https://github.com/motioneye-project/motioneye/blob/main/motioneye/extra/motioneye.systemd
systemd.services.motioneye = {
description = "motionEye Server";
after = [
"network.target"
"local-fs.target"
"remote-fs.target"
];
wantedBy = [ "multi-user.target" ];
path =
(with pkgs; [
which
v4l-utils
])
++ [
cfg.packages.motion
cfg.packages.ffmpeg
];
restartTriggers = [
config.environment.etc."motioneye/motioneye.conf".source
];
serviceConfig = {
User = cfg.user;
Group = cfg.group;
RuntimeDirectory = "motioneye";
LogsDirectory = "motioneye";
StateDirectory = "motioneye";
ExecStart = "${lib.getExe' cfg.packages.motioneye "meyectl"} startserver -c /etc/motioneye/motioneye.conf";
Restart = "on-abort";
};
};
};
}
+26 -9
View File
@@ -31,17 +31,34 @@
{
boot.isContainer = true;
boot.postBootCommands = ''
# After booting, register the contents of the Nix store in the Nix
# database.
if [ -f /nix-path-registration ]; then
${config.nix.package.out}/bin/nix-store --load-db < /nix-path-registration &&
systemd.services.register-nix-paths = {
description = "Register Nix Store Paths";
unitConfig = {
DefaultDependencies = false;
ConditionPathExists = "/nix-path-registration";
};
wantedBy = [ "sysinit.target" ];
before = [
"sysinit.target"
"shutdown.target"
"nix-daemon.socket"
"nix-daemon.service"
];
after = [ "local-fs.target" ];
conflicts = [ "shutdown.target" ];
restartIfChanged = false;
serviceConfig = {
Type = "oneshot";
RemainAfterExit = true;
};
script = ''
${lib.getExe' config.nix.package.out "nix-store"} --load-db < /nix-path-registration
rm /nix-path-registration
fi
# nixos-rebuild also requires a "system" profile
${config.nix.package.out}/bin/nix-env -p /nix/var/nix/profiles/system --set /run/current-system
'';
# nixos-rebuild also requires a "system" profile
${lib.getExe' config.nix.package.out "nix-env"} -p /nix/var/nix/profiles/system --set /run/current-system
'';
};
# supplement 99-ethernet-default-dhcp which excludes veth
systemd.network = lib.mkIf config.networking.useDHCP {
+29 -12
View File
@@ -76,18 +76,6 @@ with lib;
extraCommands = "mkdir -p root etc/systemd/network";
};
boot.postBootCommands = ''
# After booting, register the contents of the Nix store in the Nix
# database.
if [ -f /nix-path-registration ]; then
${config.nix.package.out}/bin/nix-store --load-db < /nix-path-registration &&
rm /nix-path-registration
fi
# nixos-rebuild also requires a "system" profile
${config.nix.package.out}/bin/nix-env -p /nix/var/nix/profiles/system --set /run/current-system
'';
boot = {
isContainer = true;
loader.initScript.enable = true;
@@ -117,6 +105,35 @@ with lib;
};
systemd = {
services.register-nix-paths = {
description = "Register Nix Store Paths";
unitConfig = {
DefaultDependencies = false;
ConditionPathExists = "/nix-path-registration";
};
wantedBy = [ "sysinit.target" ];
before = [
"sysinit.target"
"shutdown.target"
"nix-daemon.socket"
"nix-daemon.service"
];
after = [ "local-fs.target" ];
conflicts = [ "shutdown.target" ];
restartIfChanged = false;
serviceConfig = {
Type = "oneshot";
RemainAfterExit = true;
};
script = ''
${lib.getExe' config.nix.package.out "nix-store"} --load-db < /nix-path-registration
rm /nix-path-registration
# nixos-rebuild also requires a "system" profile
${lib.getExe' config.nix.package.out "nix-env"} -p /nix/var/nix/profiles/system --set /run/current-system
'';
};
mounts = mkIf (!cfg.privileged) [
{
enable = false;
+32 -5
View File
@@ -1236,11 +1236,38 @@ in
# allow `system.build.toplevel' to be included. (If we had a direct
# reference to ${regInfo} here, then we would get a cyclic
# dependency.)
boot.postBootCommands = lib.mkIf config.nix.enable ''
if [[ "$(cat /proc/cmdline)" =~ regInfo=([^ ]*) ]]; then
${config.nix.package.out}/bin/nix-store --load-db < ''${BASH_REMATCH[1]}
fi
'';
systemd.services.register-nix-paths = lib.mkIf config.nix.enable {
# Run early during boot so the nix store DB is populated before any
# service (or test backdoor) tries to use nix commands.
# nix-store --load-db writes to the SQLite DB directly, so it does not
# need the nix-daemon.
unitConfig.DefaultDependencies = false;
wantedBy = [
"sysinit.target"
];
before = [
"sysinit.target"
"shutdown.target"
"nix-daemon.socket"
"nix-daemon.service"
];
after = [
"local-fs.target"
];
conflicts = [
"shutdown.target"
];
restartIfChanged = false;
serviceConfig = {
Type = "oneshot";
RemainAfterExit = true;
};
script = ''
if [[ "$(cat /proc/cmdline)" =~ regInfo=([^ ]*) ]]; then
${lib.getExe' config.nix.package.out "nix-store"} --load-db < "''${BASH_REMATCH[1]}"
fi
'';
};
boot.initrd.availableKernelModules =
optional (cfg.qemu.diskInterface == "scsi") "sym53c8xx" ++ optional (cfg.tpm.enable) "tpm_tis";
+1
View File
@@ -16,6 +16,7 @@ let
];
hardware.graphics.enable = true;
virtualisation.memorySize = 384;
virtualisation.qemu.options = [ "-vga none -device virtio-gpu-pci" ];
environment = {
systemPackages = [ pkgs.armagetronad ];
variables.XAUTHORITY = "/home/${user}/.Xauthority";
+7 -3
View File
@@ -77,6 +77,8 @@ in
networking.hosts."${nodes.server.networking.primaryIPAddress}" = [ serverDomain ];
programs.fish.enable = true;
security.pki.certificateFiles = [ certs.ca.cert ];
};
@@ -126,7 +128,7 @@ in
client.wait_for_unit("getty@tty1.service")
client.wait_until_succeeds("pgrep -f 'agetty.*tty1'")
client.succeed("kanidm person create testuser TestUser")
client.succeed("kanidm person posix set --shell \"$SHELL\" testuser")
client.succeed("kanidm person posix set --shell \"/run/current-system/sw/bin/fish\" testuser")
client.send_chars("kanidm person posix set-password testuser\n")
client.wait_until_tty_matches("1", "Enter new")
client.send_chars("${testCredentials.password}\n")
@@ -150,8 +152,10 @@ in
client.wait_until_tty_matches("2", "Password: ")
client.send_chars("${testCredentials.password}\n")
client.wait_until_succeeds("systemctl is-active user@$(id -u testuser).service")
client.send_chars("touch done\n")
client.wait_for_file("/home/testuser@${serverDomain}/done")
client.send_chars("echo -n $SHELL > shell\n")
client.wait_for_file("/home/testuser@${serverDomain}/shell")
user_shell = client.succeed("cat /home/testuser@${serverDomain}/shell").strip()
assert user_shell == "/run/current-system/sw/bin/fish", f"Invalid user shell, expected /run/current-system/sw/bin/fish, got {user_shell}"
server.shutdown()
client.shutdown()
@@ -1902,8 +1902,8 @@ let
mktplcRef = {
publisher = "github";
name = "codespaces";
version = "1.18.11";
hash = "sha256-Jd0J7/8amQ1pLjvk+YXp6GbSrRgWhyKBw1TKr+h4OrI=";
version = "1.18.12";
hash = "sha256-A/ORfMybSCm90SFg8hRx/N0Vq9XMtTjMPVzCIoG938g=";
};
meta = {
@@ -10,8 +10,8 @@ vscode-utils.buildVscodeMarketplaceExtension {
mktplcRef = {
publisher = "ms-azuretools";
name = "vscode-bicep";
version = "0.41.2";
hash = "sha256-8k2de208t/ZAVJzxkjd0qcqgVx523hEWWe5d1uvthFU=";
version = "0.42.1";
hash = "sha256-rlLR/95DcxwkLxvyJgt3ptBvelL5VCIQvDl72eqk63s=";
};
buildInputs = [
@@ -5,13 +5,13 @@
}:
mkLibretroCore rec {
core = "atari800";
version = "0-unstable-2026-01-30";
version = "0-unstable-2026-03-31";
src = fetchFromGitHub {
owner = "libretro";
repo = "libretro-atari800";
rev = "d1d0d425458e6b5a2e51ad5f1507bdf97e857c95";
hash = "sha256-gu1S4pNVq0MCK/77oGI6ekP1Nten72R6Y1n64oK/IFc=";
rev = "a9b9c433d8cb6c8e8eb08d14d3e95b430549723a";
hash = "sha256-vPv6D+y+n9gMgC78cLBVeNLg3nGEAsTeBGFv+SWgH0A=";
};
makefile = "Makefile";
@@ -5,13 +5,13 @@
}:
mkLibretroCore {
core = "bsnes";
version = "0-unstable-2026-01-16";
version = "0-unstable-2026-03-31";
src = fetchFromGitHub {
owner = "libretro";
repo = "bsnes-libretro";
rev = "d0a61b2c679bc73286be5471b222b1f1ebfb67b9";
hash = "sha256-1C+c0cQqFSRDGBhNr4s4xD/THbyDP/iVUJpAmHFQfiE=";
rev = "399bdedb20f6e847e75e8425ca240560ea0940a6";
hash = "sha256-T3pmZ6WJOXyubiTzOIDipMdRDpB+RiNRnd76XbOIl84=";
};
makefile = "Makefile";
@@ -8,13 +8,13 @@
}:
mkLibretroCore {
core = "flycast";
version = "0-unstable-2026-03-20";
version = "0-unstable-2026-04-07";
src = fetchFromGitHub {
owner = "flyinghead";
repo = "flycast";
rev = "05b270f05cecfcd675bb0530cf18d0a9b81269a1";
hash = "sha256-sXoxuDiMnArXxYtIKmU6LBQ1r8KpEr/0hHliLN3KQWw=";
rev = "ad03e10c16a70b289f29bb10112857961125b4e6";
hash = "sha256-XSCI+94PXJXnU6/6lqA+1p05A3p2r8W0XPwbaDPSsaM=";
fetchSubmodules = true;
};
@@ -101,11 +101,11 @@
"vendorHash": "sha256-quoFrJbB1vjz+MdV+jnr7FPACHuUe5Gx9POLubD2IaM="
},
"baidubce_baiducloud": {
"hash": "sha256-LEGtcyDWGcTj9A1NKH80E4BkCoze2ktUqVr1GIIoNHc=",
"hash": "sha256-zYWTDk905FpGvN2tsScXAH162TwTacU88G8aoZii83I=",
"homepage": "https://registry.terraform.io/providers/baidubce/baiducloud",
"owner": "baidubce",
"repo": "terraform-provider-baiducloud",
"rev": "v1.22.21",
"rev": "v1.22.22",
"spdx": "MPL-2.0",
"vendorHash": null
},
@@ -373,11 +373,11 @@
"vendorHash": "sha256-/kTRJnHbr9crrzdKsDz0q7svYTmiuDbSW/6kBfGgyZY="
},
"equinix_equinix": {
"hash": "sha256-92GuIkgzCbH3A/oRsjblE7Efk95FBjEaTaIBBm2BZdg=",
"hash": "sha256-Tn8CnLx2ibkj7qlzpYCX7Cm+yoTcZujVELMJSbG+/ec=",
"homepage": "https://registry.terraform.io/providers/equinix/equinix",
"owner": "equinix",
"repo": "terraform-provider-equinix",
"rev": "v4.13.0",
"rev": "v4.15.0",
"spdx": "MIT",
"vendorHash": "sha256-WFlKj1IO9ylXn5frdnLcctQawjUXBTqcoMhQUQTU06A="
},
@@ -571,11 +571,11 @@
"vendorHash": "sha256-xIagZvWtlNpz5SQfxbA7r9ojAeS3CW2pwV337ObKOwU="
},
"hashicorp_google": {
"hash": "sha256-MAdeRuAHphIpvaEQhH38zMtw5F9Rbik82tzsJFgz14Y=",
"hash": "sha256-g9O6ypO6e9KR2V/85vISHhZpjSdmk/y+FSFGMPlmEdY=",
"homepage": "https://registry.terraform.io/providers/hashicorp/google",
"owner": "hashicorp",
"repo": "terraform-provider-google",
"rev": "v7.25.0",
"rev": "v7.26.0",
"spdx": "MPL-2.0",
"vendorHash": "sha256-znm43JcwFf/NpGIaayyiOazAa7yCStrbuSNnGkyxzFA="
},
@@ -27,17 +27,17 @@ let
in
rustPlatform.buildRustPackage rec {
pname = "mullvad";
version = "2025.14";
version = "2026.1";
src = fetchFromGitHub {
owner = "mullvad";
repo = "mullvadvpn-app";
tag = version;
fetchSubmodules = true;
hash = "sha256-9HPOhhtbo7BocycuO7IgjyfWHXBh/5YQDNJ/VwKnKG0=";
hash = "sha256-gQpeCcSHxvdyWpzHESHHRkYaGlJxl1UwYawX+1rfHlI=";
};
cargoHash = "sha256-PzUVwx72qkUDKCZ8hfpVT0bqnuakaitPedInn/EfW3o=";
cargoHash = "sha256-L07dNs9OBFFpwo3uOKoACqRIHY/MZv2ESYrequJGD3U=";
cargoBuildFlags = [
"-p mullvad-daemon --bin mullvad-daemon"
@@ -88,6 +88,24 @@ stdenv.mkDerivation rec {
--replace-fail \
"LIBSAM3_MAKE_PARAMS =" \
"LIBSAM3_MAKE_PARAMS = CC=$CC AR=$AR"
# openpgpsdk uses 'bool' as a variable name, which became a C23 keyword.
# Rename it to avoid compile errors with GCC 14+ which defaults to c23.
substituteInPlace openpgpsdk/src/openpgpsdk/packet-print.c \
--replace-fail \
"static void print_boolean(const char *name, unsigned char bool)" \
"static void print_boolean(const char *name, unsigned char bool_val)" \
--replace-fail " if(bool)" " if(bool_val)"
# The C source inconsistently uses 'limited_read (bool,' (with a space) on line 1600
substituteInPlace openpgpsdk/src/openpgpsdk/packet-parse.c \
--replace-fail "unsigned char bool[1]=" 'unsigned char bool_val[1]=' \
--replace-fail "limited_read(bool," "limited_read(bool_val," \
--replace-fail "limited_read (bool," "limited_read (bool_val," \
--replace-fail "!!bool[0]" "!!bool_val[0]"
# Update cmake version for supportlibs to fix build with newer cmake
substituteInPlace supportlibs/udp-discovery-cpp/CMakeLists.txt \
--replace-fail "cmake_minimum_required(VERSION 2.8)" "cmake_minimum_required(VERSION 3.10)"
'';
postInstall = ''
@@ -70,6 +70,25 @@ let
binRustcOpts = lib.concatStringsSep " " baseRustcOpts;
build_bin = if buildTests then "build_bin_test" else "build_bin";
# Shell snippet that builds a binary target to target/cargo-bin-exe/
# so integration tests can exec it via CARGO_BIN_EXE_<name>.
buildBinForTests = bin: ''
mkdir -p target/cargo-bin-exe
BIN_NAME='${bin.name or crateName}'
${
if !bin ? path then
''
BIN_PATH=""
search_for_bin_path "$BIN_NAME"
''
else
''
BIN_PATH='${bin.path}'
''
}
build_bin "$BIN_NAME" "$BIN_PATH" target/cargo-bin-exe
'';
in
''
runHook preBuild
@@ -88,13 +107,60 @@ in
if [[ -e "$LIB_PATH" ]]; then
build_lib "$LIB_PATH"
${lib.optionalString buildTests ''build_lib_test "$LIB_PATH"''}
elif [[ -e src/lib.rs ]]; then
build_lib src/lib.rs
${lib.optionalString buildTests "build_lib_test src/lib.rs"}
fi
${
# When building tests, first build the real (non-test) binaries so
# integration tests can exec them via CARGO_BIN_EXE_<name>. They go
# to target/cargo-bin-exe/ to avoid colliding with the --test
# harnesses written to target/bin/. After building, populate the
# CARGO_BIN_EXE_ENV array so subsequent rustc invocations see the
# env vars (via `env` prefix in lib.sh, which unlike bash `export`
# accepts hyphenated names).
lib.optionalString buildTests (
lib.concatMapStringsSep "\n" (
bin:
let
haveRequiredFeature =
if bin ? requiredFeatures then
lib.intersectLists bin.requiredFeatures crateFeatures == bin.requiredFeatures
else
true;
in
lib.optionalString haveRequiredFeature (buildBinForTests bin)
) crateBin
+ lib.optionalString (lib.length crateBin == 0 && !hasCrateBin) ''
if [[ -e src/main.rs ]]; then
mkdir -p target/cargo-bin-exe
build_bin ${crateName} src/main.rs target/cargo-bin-exe
fi
for i in src/bin/*.rs; do
[ -e "$i" ] || continue
mkdir -p target/cargo-bin-exe
build_bin "$(basename $i .rs)" "$i" target/cargo-bin-exe
done
''
+ ''
if [ -d target/cargo-bin-exe ]; then
for b in target/cargo-bin-exe/*; do
[ -x "$b" ] || continue
name=$(basename "$b")
CARGO_BIN_EXE_ENV+=("CARGO_BIN_EXE_$name=$out/bin/$name")
done
fi
''
)
}
${lib.optionalString buildTests ''
if [[ -e "$LIB_PATH" ]]; then
build_lib_test "$LIB_PATH"
elif [[ -e src/lib.rs ]]; then
build_lib_test src/lib.rs
fi
''}
${lib.optionalString (lib.length crateBin > 0) (
lib.concatMapStringsSep "\n" (
@@ -62,6 +62,65 @@ let
# Create feature arguments for rustc.
mkRustcFeatureArgs = lib.concatMapStringsSep " " (f: ''--cfg feature=\"${f}\"'');
# Translate a Cargo.toml `[lints]` table into rustc flags.
#
# See <https://doc.rust-lang.org/cargo/reference/manifest.html#the-lints-section>.
#
# Cargo normally translates `[lints.<tool>]` entries into `-A`/`-W`/`-D`/`-F`
# flags when invoking rustc. Since buildRustCrate calls rustc directly we
# must perform that translation ourselves.
#
# Example:
#
# lintsToRustcFlags {
# rust = {
# unsafe_code = "forbid";
# unused = { level = "deny"; priority = -1; };
# };
# clippy.all = "warn";
# }
# => [ "-D unused" "-W clippy::all" "-F unsafe_code" ]
#
# Entries are sorted by ascending priority (default 0) so that lower-priority
# groups are emitted first and can be overridden by higher-priority specific
# lints — matching cargo's behaviour where later rustc flags win.
lintsToRustcFlags =
lints:
let
levelFlag = {
allow = "-A";
warn = "-W";
force-warn = "--force-warn";
deny = "-D";
forbid = "-F";
};
toolPrefix = tool: if tool == "rust" then "" else "${tool}::";
normalize =
val:
if builtins.isString val then
{
level = val;
priority = 0;
}
else
{ priority = 0; } // val;
entries = lib.concatMap (
tool:
lib.mapAttrsToList (
name: val:
let
e = normalize val;
in
{
inherit (e) priority;
flag = "${levelFlag.${e.level}} ${toolPrefix tool}${name}";
}
) lints.${tool}
) (builtins.attrNames lints);
sorted = lib.sort (a: b: a.priority < b.priority) entries;
in
map (e: e.flag) sorted;
# Whether we need to use unstable command line flags
#
# Currently just needed for standard library dependencies, which have a
@@ -203,9 +262,35 @@ lib.makeOverridable
# second one via `extraRustcOpts` has no effect. Use this parameter
# instead if you need lints to fire (e.g. when running clippy).
#
# When left at `null`, resolves to `"allow"` if `lints` is empty (the
# usual case for third-party dependencies), or `"forbid"` if `lints`
# is set (so your own crate's lint policy actually applies).
#
# Example: "warn"
# Default: "allow"
# Default: null (auto: "allow" or "forbid" depending on `lints`)
capLints,
# Lint configuration mirroring Cargo.toml's `[lints]` table.
# See <https://doc.rust-lang.org/cargo/reference/manifest.html#the-lints-section>.
#
# Keys are tool names (`rust`, `clippy`, `rustdoc`); values are attrsets
# mapping lint names to either a level string (`"allow"`, `"warn"`,
# `"force-warn"`, `"deny"`, `"forbid"`) or an attrset
# `{ level = "..."; priority = <int>; }`. Lower priorities are emitted
# first so that higher-priority (more specific) lints can override them.
#
# Setting a non-empty `lints` raises the default `capLints` from
# `"allow"` to `"forbid"` so the lints actually fire.
#
# Example:
# {
# rust = {
# unsafe_code = "forbid";
# unused = { level = "deny"; priority = -1; };
# };
# clippy.all = "warn";
# }
# Default: {}
lints,
# Whether to enable building tests.
# Use true to enable.
# Default: false
@@ -260,14 +345,26 @@ lib.makeOverridable
"codegenUnits"
"links"
"capLints"
"lints"
];
extraDerivationAttrs = removeAttrs crate processedAttrs;
nativeBuildInputs_ = nativeBuildInputs;
buildInputs_ = buildInputs;
extraRustcOpts_ = extraRustcOpts;
extraRustcOptsForBuildRs_ = extraRustcOptsForBuildRs;
capLints_ = capLints;
buildTests_ = buildTests;
resolvedLints = crate.lints or lints;
lintFlags = lintsToRustcFlags resolvedLints;
resolvedCapLints =
let
requested = crate.capLints or capLints;
in
if requested != null then
requested
else if resolvedLints != { } then
"forbid"
else
"allow";
# crate2nix has a hack for the old bash based build script that did split
# entries at `,`. No we have to work around that hack.
@@ -390,12 +487,14 @@ lib.makeOverridable
extraRustcOpts =
lib.optionals (crate ? extraRustcOpts) crate.extraRustcOpts
++ extraRustcOpts_
++ lintFlags
++ (lib.optional (edition != null) "--edition ${edition}");
extraRustcOptsForBuildRs =
lib.optionals (crate ? extraRustcOptsForBuildRs) crate.extraRustcOptsForBuildRs
++ extraRustcOptsForBuildRs_
++ lintFlags
++ (lib.optional (edition != null) "--edition ${edition}");
capLints = crate.capLints or capLints_;
capLints = resolvedCapLints;
configurePhase = configureCrate {
inherit
@@ -487,7 +586,8 @@ lib.makeOverridable
verbose = crate_.verbose or true;
extraRustcOpts = [ ];
extraRustcOptsForBuildRs = [ ];
capLints = "allow";
capLints = null;
lints = { };
features = [ ];
nativeBuildInputs = [ ];
buildInputs = [ ];
@@ -48,6 +48,12 @@ else
-executable \
-print0 | xargs --no-run-if-empty --null install --target $out/tests;
fi
# Real (non-test) binaries that integration tests may exec via
# CARGO_BIN_EXE_<name>.
if [ -d target/cargo-bin-exe ]; then
mkdir -p $out/bin
cp -rP target/cargo-bin-exe/* $out/bin
fi
runHook postInstall
''
@@ -10,7 +10,7 @@ build_lib() {
lib_src=$1
echo_build_heading $lib_src ${libName}
noisily rustc \
noisily env "${CARGO_BIN_EXE_ENV[@]}" rustc \
--crate-name $CRATE_NAME \
$lib_src \
--out-dir target/lib \
@@ -36,17 +36,18 @@ build_bin() {
local crate_name=$1
local crate_name_=$(echo $crate_name | tr '-' '_')
local main_file=""
local out_dir="${3:-target/bin}"
if [[ ! -z $2 ]]; then
main_file=$2
fi
echo_build_heading $@
noisily rustc \
echo_build_heading $crate_name $main_file
noisily env "${CARGO_BIN_EXE_ENV[@]}" rustc \
--crate-name $crate_name_ \
$main_file \
--crate-type bin \
$BIN_RUSTC_OPTS \
--out-dir target/bin \
--out-dir "$out_dir" \
-L dependency=target/deps \
$LINK \
$EXTRA_LINK_ARGS \
@@ -60,10 +61,10 @@ build_bin() {
--color ${colors} \
if [ "$crate_name_" != "$crate_name" ]; then
if [ -f "target/bin/$crate_name_.wasm" ]; then
mv target/bin/$crate_name_.wasm target/bin/$crate_name.wasm
if [ -f "$out_dir/$crate_name_.wasm" ]; then
mv "$out_dir/$crate_name_.wasm" "$out_dir/$crate_name.wasm"
else
mv target/bin/$crate_name_ target/bin/$crate_name
mv "$out_dir/$crate_name_" "$out_dir/$crate_name"
fi
fi
}
@@ -8,6 +8,7 @@
runCommandCC,
stdenv,
symlinkJoin,
testers,
writeTextFile,
pkgsCross,
}:
@@ -457,6 +458,74 @@ rec {
"test flat_test ... ok"
];
};
rustBinTestsCargoBinExe = {
# Integration tests locate the crate's own binary via
# `env!("CARGO_BIN_EXE_<name>")`, which cargo sets automatically.
crateName = "my-crate";
src = symlinkJoin {
name = "rust-bin-tests-cargo-bin-exe";
paths = [
(mkFile "src/main.rs" ''
fn main() { println!("hello from my-crate"); }
'')
(mkFile "tests/run_bin.rs" ''
#[test]
fn runs_binary() {
let bin = env!("CARGO_BIN_EXE_my-crate");
let out = std::process::Command::new(bin)
.output()
.expect("spawn");
assert!(out.status.success());
assert_eq!(
String::from_utf8_lossy(&out.stdout).trim(),
"hello from my-crate"
);
}
'')
];
};
buildTests = true;
expectedTestOutputs = [
"test runs_binary ... ok"
];
};
rustBinTestsCargoBinExeAutoDetect = {
# Verify CARGO_BIN_EXE_<name> is also set for auto-detected
# src/bin/*.rs binaries, not just src/main.rs or explicit
# crateBin entries.
crateName = "multi-bin";
src = symlinkJoin {
name = "rust-bin-tests-cargo-bin-exe-auto";
paths = [
(mkFile "src/lib.rs" "")
(mkFile "src/bin/tool-a.rs" ''
fn main() { println!("tool-a ran"); }
'')
(mkFile "src/bin/tool-b.rs" ''
fn main() { println!("tool-b ran"); }
'')
(mkFile "tests/run_tools.rs" ''
#[test]
fn runs_both() {
for (bin, want) in [
(env!("CARGO_BIN_EXE_tool-a"), "tool-a ran"),
(env!("CARGO_BIN_EXE_tool-b"), "tool-b ran"),
] {
let out = std::process::Command::new(bin)
.output()
.expect("spawn");
assert!(out.status.success());
assert_eq!(String::from_utf8_lossy(&out.stdout).trim(), want);
}
}
'')
];
};
buildTests = true;
expectedTestOutputs = [
"test runs_both ... ok"
];
};
linkAgainstRlibCrate = {
crateName = "foo";
src = mkFile "src/main.rs" ''
@@ -767,6 +836,26 @@ rec {
];
};
};
# The `lints` attr mirrors Cargo.toml's `[lints]` table and is
# translated to rustc `-A`/`-W`/`-D`/`-F` flags. Lower-priority
# entries are emitted first so that higher-priority specific lints
# can override them. Here `-D unused` (priority -1) is followed by
# `-A dead_code` (default priority 0); the build only succeeds if
# both flags reach rustc in that order.
lintsPriority = {
lints.rust = {
unused = {
level = "deny";
priority = -1;
};
dead_code = "allow";
};
src = mkFile "src/lib.rs" ''
#![allow(nonstandard_style)]
fn dead() {}
pub fn alive() {}
'';
};
};
brotliCrates = (callPackage ./brotli-crates.nix { });
rcgenCrates = callPackage ./rcgen-crates.nix {
@@ -934,6 +1023,25 @@ rec {
test -e ${pkg}/bin/brotli-decompressor && touch $out
'';
# A `deny` lint from the lints table should actually fail the build.
lintsDenyFails =
let
crate = mkHostCrate {
crateName = "lintsDenyFails";
lints.rust.dead_code = "deny";
src = mkFile "src/lib.rs" ''
fn dead() {}
pub fn alive() {}
'';
};
failed = testers.testBuildFailure crate;
in
runCommand "assert-lintsDenyFails" { inherit failed; } ''
grep -q 'function .dead. is never used' "$failed/testBuildFailure.log"
grep -q '\-D dead.code' "$failed/testBuildFailure.log"
touch $out
'';
rcgenTest =
let
pkg = rcgenCrates.rootCrate.build;
+2 -2
View File
@@ -9,9 +9,9 @@
}:
let
beamPackages = beam_minimal.packages.erlang_26.extend (
beamPackages = beam_minimal.packages.erlang_27.extend (
self: super: {
elixir = self.elixir_1_16;
elixir = self.elixir_1_17;
rebar3 = self.rebar3WithPlugins {
plugins = with self; [ pc ];
};
+2 -2
View File
@@ -27,13 +27,13 @@ in
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "ani-cli";
version = "4.10";
version = "4.11";
src = fetchFromGitHub {
owner = "pystardust";
repo = "ani-cli";
tag = "v${finalAttrs.version}";
hash = "sha256-R/YQ02ctTcAEzrVyWlaCHi1YW82iPrMBbbMNP21r0p8=";
hash = "sha256-gQprGtKXXpDm66dFWsrriL4G0NPav+nqm8T6wkdbgk8=";
};
nativeBuildInputs = [ makeWrapper ];
@@ -8,13 +8,13 @@
anki-utils.buildAnkiAddon (finalAttrs: {
pname = "fsrs4anki-helper";
version = "24.06.3-unstable-2026-03-27";
version = "24.06.3-unstable-2026-03-30";
src = fetchFromGitHub {
owner = "open-spaced-repetition";
repo = "fsrs4anki-helper";
rev = "de3adb6e4dd15f38e2d2e9ffc5217a86987cda87";
hash = "sha256-oW3mWjKno/dTWTurBgiYtTKWdNK4aymmGt+qnNAIh9Y=";
rev = "9823596b25e08e41dac06b3a24537dce6538f018";
hash = "sha256-Lcl2uNnjw83ShMQaYEniYGi8hyOl3J7H+YR0jaLb5xY=";
};
postFixup = ''
+154 -144
View File
@@ -11,268 +11,268 @@
},
{
"pname": "Humanizer",
"version": "3.0.1",
"hash": "sha256-eOZrpj3KmJ0XpfoJMTv0Fritbm2xzw4wQtN0QOl7IKI="
"version": "3.0.10",
"hash": "sha256-oNSXK5LLMNiK8iA/0H+zQeoDcbrDuTp/+zw0LGTECNA="
},
{
"pname": "Humanizer.Core",
"version": "3.0.1",
"hash": "sha256-Wxqf1FRXtsQulLFtbfsfYu4oZmrCuOZAikMcY2i6Dww="
"version": "3.0.10",
"hash": "sha256-mflSENjDof1Av9M9RLGEQcl4V4keVfH3qIxy/uxJ6FE="
},
{
"pname": "Humanizer.Core.af",
"version": "3.0.1",
"hash": "sha256-+kSKJGbalrzonEgrpOmZ+crY0zUbdQujx/phxT2eGYA="
"version": "3.0.10",
"hash": "sha256-xGTmr9yqMZ1kjwffnodCE8Km/tflzOUmmw5XPcq865w="
},
{
"pname": "Humanizer.Core.ar",
"version": "3.0.1",
"hash": "sha256-NAeMsvW7X5RWfPKQqBj76VhzgddGsth5KH7fFeqnzpk="
"version": "3.0.10",
"hash": "sha256-1H3wZwppgyt3Q9wXdDvig/wSTYgQVtlT45d4gU5UpEM="
},
{
"pname": "Humanizer.Core.az",
"version": "3.0.1",
"hash": "sha256-WYD9EFaqyIRwRrMsf8uTu7Mfg3F+F4RukN5tNIeU2rQ="
"version": "3.0.10",
"hash": "sha256-JCWEMrspXiE0zfvUtZHxHuLzo461mtXZmct3EhgoHHE="
},
{
"pname": "Humanizer.Core.bg",
"version": "3.0.1",
"hash": "sha256-9oMA+uYovUtbrlOV54LfoIJhEJOd9UrdYdvvUrCRhWs="
"version": "3.0.10",
"hash": "sha256-vSzpVvSGXKdmsVv7457WsDFEW0N0vVM430dhHRnsz7M="
},
{
"pname": "Humanizer.Core.bn",
"version": "3.0.1",
"hash": "sha256-HSMAEjv/TMckJSKl/5YIR1dmFz/7bf1sDs8bAMsNbfA="
"version": "3.0.10",
"hash": "sha256-vJkiXSfOHXR9iW11Glk6vRcSied+tRExMcgl3/6dRDo="
},
{
"pname": "Humanizer.Core.ca",
"version": "3.0.1",
"hash": "sha256-vCxGyB2GnH5MicydzjwXmtt7389YlN7cA3vwnDlYB88="
"version": "3.0.10",
"hash": "sha256-Se/BAQJ2ZiEqGX6Mjlu8BwfHMdYyOGwEnTyGjq5+2vA="
},
{
"pname": "Humanizer.Core.cs",
"version": "3.0.1",
"hash": "sha256-/Qdyktl/Nh33CmuCK6wDyjZfGc5MmIHxMJTwU+3MSyY="
"version": "3.0.10",
"hash": "sha256-jaXEgeXdewcc6+Tc03dDK23TcmxIjTx2ECdp7rsgyOc="
},
{
"pname": "Humanizer.Core.da",
"version": "3.0.1",
"hash": "sha256-u0QiFgEg3ezPgTjQTAxqaNEnuNikg+zsJ7A0wu85dTE="
"version": "3.0.10",
"hash": "sha256-htjzVIzEn7v86zt/ZrV4D1kC5Xcm4TjQobbiOCBqNjE="
},
{
"pname": "Humanizer.Core.de",
"version": "3.0.1",
"hash": "sha256-b1BYLeOmy4Wg1DgNSWdZpEdsMCPrIfI3LC+xCnSd4aw="
"version": "3.0.10",
"hash": "sha256-sOjZBlr18olsdH1dWOrVSzNBhopqXBvF7DAUS3aQSeo="
},
{
"pname": "Humanizer.Core.el",
"version": "3.0.1",
"hash": "sha256-dH0OOK3tGMDF/wt+SdzmJvOE/6TrmXCe4Srq8PW44W4="
"version": "3.0.10",
"hash": "sha256-UfVCjRvsWrwoN4RAJXVx+5Ik0vlh3UqZ1a8lNG0MQmo="
},
{
"pname": "Humanizer.Core.es",
"version": "3.0.1",
"hash": "sha256-AXSfMmXKEmQeZ1IPtGGSSroIE6CVuC6sW8pl355dbRs="
"version": "3.0.10",
"hash": "sha256-oWmtwMXZopmLkfbP4A8Kdlh5R20f3jXRsU4RWN8pSUs="
},
{
"pname": "Humanizer.Core.fa",
"version": "3.0.1",
"hash": "sha256-F0VtmKADyVNztOZIkCbt6s5N5+N+7aFWP+t2n8pEL70="
"version": "3.0.10",
"hash": "sha256-g4xRBGmv2VFhBzQGiVRdg9OnpQbAEYt9sEYA2E4pCjo="
},
{
"pname": "Humanizer.Core.fi",
"version": "3.0.1",
"hash": "sha256-3ufuXJCy/m7wQs+xDfPWjqoWXvzjSLqdxb8PmS01BTM="
"version": "3.0.10",
"hash": "sha256-EdtSXsL0tL7cRhy1vW+ZPQkEBDEih1NXxOU5jlYuJnU="
},
{
"pname": "Humanizer.Core.fil",
"version": "3.0.1",
"hash": "sha256-Fsesly0CWMzn46k6LBzMlJgkced618aliVJ1zWxjaR0="
"version": "3.0.10",
"hash": "sha256-xpis1kNQQBmh84/b0owiznL9bMdubzzctkiUxpwWKAo="
},
{
"pname": "Humanizer.Core.fr",
"version": "3.0.1",
"hash": "sha256-eaW4Lqjg7lwkCvKu7bThZGLUHdhtaU34ZFzz/fQtJ98="
"version": "3.0.10",
"hash": "sha256-4+JXuvCoRV1lAK+621QJ2tNWRZ0drUU8Ph+hQDm4468="
},
{
"pname": "Humanizer.Core.he",
"version": "3.0.1",
"hash": "sha256-3nsZrfHqPaZ8U2OuqPaejHpRmjjorBRtstxqWWgJ0kc="
"version": "3.0.10",
"hash": "sha256-s5OlsY9+UpjfbRWRZzXsV2NTHjSuhZaLUI01QciC0Mc="
},
{
"pname": "Humanizer.Core.hr",
"version": "3.0.1",
"hash": "sha256-q2Plb4DewyQnMy6RwXmTQil9LigzKmcI6q7hhbXxM4Y="
"version": "3.0.10",
"hash": "sha256-UJTrsiLTEz0Vod9KV9VoJE3aq8XkiwOwScbfxkuvmsI="
},
{
"pname": "Humanizer.Core.hu",
"version": "3.0.1",
"hash": "sha256-VCFS7nZ+Bj+boofum2mGX1CoN4aBekO9uLSzDQX0hsQ="
"version": "3.0.10",
"hash": "sha256-k7cdsRyX1pJx2LuUuaxGmQWbLkhIWEAIVDt/j7vVlG0="
},
{
"pname": "Humanizer.Core.hy",
"version": "3.0.1",
"hash": "sha256-A+t0PDY5yUHy9qkwwcbJrisdgulpjaSkFxA0Xfvj5Cs="
"version": "3.0.10",
"hash": "sha256-8reWvHEbigIRePV1gwo4cYzqf9VHhLbXirGGu78zCe0="
},
{
"pname": "Humanizer.Core.id",
"version": "3.0.1",
"hash": "sha256-XF71+XxuhaVCrnhLh0RJWGzdQ3Y0EEDVUec2aqdk1II="
"version": "3.0.10",
"hash": "sha256-W1Iy56CaNhMqYflVVauWZ9bP8l0jaAuNYu3z0Qovz8E="
},
{
"pname": "Humanizer.Core.is",
"version": "3.0.1",
"hash": "sha256-drGjtmT8FCcgKYTiwXOIdtCr1oHDzveWlPmqSCiltkU="
"version": "3.0.10",
"hash": "sha256-UZr0sAftzuUvoBtS8oJp/g0Z51JyYBGlKP/JpZOpUno="
},
{
"pname": "Humanizer.Core.it",
"version": "3.0.1",
"hash": "sha256-tFSl2sFocpt5pj2kIBjkQLB+1CH3wVwe9ggSXEcCRSc="
"version": "3.0.10",
"hash": "sha256-CO6fEacSaT9RUuKSUybDMU3lkPFa+BHxNWG/qiKQp6E="
},
{
"pname": "Humanizer.Core.ja",
"version": "3.0.1",
"hash": "sha256-OnAyLlJLYJP0fpvtdjfmEhOCUsfFMvbUpzbqpkyFbfU="
"version": "3.0.10",
"hash": "sha256-fZuZW2mU6bWyKCe7hc3HCSjz+zjPABFcFEj6OADzflY="
},
{
"pname": "Humanizer.Core.ko",
"version": "3.0.1",
"hash": "sha256-zudrcq9bEYzY/MNbLh8dIiDScejgudL7HqpMiEKTTAU="
"version": "3.0.10",
"hash": "sha256-ZNhEvvSuy0WRHGftIhr62+pAKkmzsDT26SkLj9mxYxU="
},
{
"pname": "Humanizer.Core.ku",
"version": "3.0.1",
"hash": "sha256-5pWSOFGYX1lsydFracLvG1Hc0W8+MhZsGDh617bR/wA="
"version": "3.0.10",
"hash": "sha256-m1AZja0G0SEJiurLTJkfYvi5pSQtmbvpCG7SfdmuU84="
},
{
"pname": "Humanizer.Core.lb",
"version": "3.0.1",
"hash": "sha256-dUOsH6kVeogOQRQSVOs/qKAmQchh/HUJ5fhIUMIh7w4="
"version": "3.0.10",
"hash": "sha256-6KYZJrDQUjHZYyn5/WUtfyG8/qlnIooqbHoQ9kGDyYA="
},
{
"pname": "Humanizer.Core.lt",
"version": "3.0.1",
"hash": "sha256-5cI1ProlMg9Bqt8iP33swY96zF1yta1v/yvMJVRqVaM="
"version": "3.0.10",
"hash": "sha256-BjDh3EjfEgYFFIRLPMvpC08s8gHsHYVMVkUfzG0cVqI="
},
{
"pname": "Humanizer.Core.lv",
"version": "3.0.1",
"hash": "sha256-n+BaNRjdCU1n9ZPcB8O4gKpDHAY5ro78Ci3oLt7OiDY="
"version": "3.0.10",
"hash": "sha256-o/AMiJus7vU46p1YzasRpeeYx1fPw6isUpd3ELOUXNk="
},
{
"pname": "Humanizer.Core.ms",
"version": "3.0.1",
"hash": "sha256-wMYZ3+DlCvjFl5rfVHDZQoi7HDnycQzLmB2mjjzIpSQ="
"version": "3.0.10",
"hash": "sha256-CXCnfUDG0Q0ntYB/eZgc8sOdGlSGFrysvoUKTrQmBLw="
},
{
"pname": "Humanizer.Core.mt",
"version": "3.0.1",
"hash": "sha256-VKgjavQDh5MloLLxpmwO9J750fmegOrV3JHsITGHdOs="
"version": "3.0.10",
"hash": "sha256-2L7c25OD7qWoNWdr2le7fzhC87i0+Y2Tzwv+yH4fHZA="
},
{
"pname": "Humanizer.Core.nb",
"version": "3.0.1",
"hash": "sha256-oxBpG5g8I82TQLmJa2C4Zaj4uKjoKSc9uAMF0YB/EeM="
"version": "3.0.10",
"hash": "sha256-ynaCWJiu5y3B5LeiLQrvsnQrmEVavYvfeKKMpzWZ6fw="
},
{
"pname": "Humanizer.Core.nl",
"version": "3.0.1",
"hash": "sha256-5rJ02zcUC4Tpr71amzuwPkK3k+ayIFo6MZAza2tPUtc="
"version": "3.0.10",
"hash": "sha256-y/ZVEsDzz9EMCXuJSZn0MVolf6TqIU4Wky6bydN2i+U="
},
{
"pname": "Humanizer.Core.pl",
"version": "3.0.1",
"hash": "sha256-JJwLF8QXpBPoOJMVJ+cZutckom8wFbROqFJyw0XZbJM="
"version": "3.0.10",
"hash": "sha256-r3Din3MXaoCFj431eV+WAOZURvu6D4X0td5HBaMWTGg="
},
{
"pname": "Humanizer.Core.pt",
"version": "3.0.1",
"hash": "sha256-JFQQa2jMZwdS0hndgTN6ZkUg54frgL3Rk1WiWyeNEfI="
"version": "3.0.10",
"hash": "sha256-7Qroz0YH8Xeev69pSVwoIBHAwPxH0J09z56anZyo1zE="
},
{
"pname": "Humanizer.Core.pt-BR",
"version": "3.0.1",
"hash": "sha256-fEnvb7a/tyF9YOqaUD42yqqDmtSe89VNzWOb5gorlQo="
"version": "3.0.10",
"hash": "sha256-PruVTpqXRfkVlOm2pp7rPK8L89S99qH+GOXS0Yf+upA="
},
{
"pname": "Humanizer.Core.ro",
"version": "3.0.1",
"hash": "sha256-JepamwRjFhFeCKFPm4teJJeD4qgq90RJP3ng59AD6dA="
"version": "3.0.10",
"hash": "sha256-kP7za7JYDjtZY6Kp5oJjsLsTEj0MAM4qeK46ZqhRFtQ="
},
{
"pname": "Humanizer.Core.ru",
"version": "3.0.1",
"hash": "sha256-t923GhCciZOMi8jlGlgZTIb7P0MxxmluKF0UQbH63Ow="
"version": "3.0.10",
"hash": "sha256-J0PK+pu6o+YroXE0e20O9G4lEIgGBDdJII692FxLZk0="
},
{
"pname": "Humanizer.Core.sk",
"version": "3.0.1",
"hash": "sha256-7oXYgZUTmWOGMgca0mpTsTYls9kkYoVfGB+Vomic/ZE="
"version": "3.0.10",
"hash": "sha256-NRcAyFu6risHg48Q9fUuskPaFD6UmXY2EgYNgsikqdo="
},
{
"pname": "Humanizer.Core.sl",
"version": "3.0.1",
"hash": "sha256-ABkYADMAcR1BtxD9YNV3Xt98ESQLkh64O3xP2ZjjKZ0="
"version": "3.0.10",
"hash": "sha256-+ORKUxuQ0MV4DpVjTQjT9uKSJ/DyDu6b43G3rnSiehw="
},
{
"pname": "Humanizer.Core.sr",
"version": "3.0.1",
"hash": "sha256-JdMqnjISHXPRtlf9uXEXK57AaRtlAiqM01n8I/im18Y="
"version": "3.0.10",
"hash": "sha256-f+0uX2h8pwWjLvu4R0QO18pq7GqVQfWMasrPKcDE0bs="
},
{
"pname": "Humanizer.Core.sr-Latn",
"version": "3.0.1",
"hash": "sha256-7GTzSVTMm+0IzJfpW3aRhEQAX9XeVtSEO7qUtRMTflM="
"version": "3.0.10",
"hash": "sha256-7bnQYxRimOhiQyDnzfYir4VYhOVZtONR93JFQblPgZc="
},
{
"pname": "Humanizer.Core.sv",
"version": "3.0.1",
"hash": "sha256-n4pksskdlvSuMwJJKFSsEsJEzgJ4FF4pVxgBaqlGdKc="
"version": "3.0.10",
"hash": "sha256-ylHxvW1IEyJdBJLpyyPy9VD791DmO37d3j6owbTVSQ8="
},
{
"pname": "Humanizer.Core.th",
"version": "3.0.1",
"hash": "sha256-hS3hzhvP3fYp6ThWma+kQ5kCrci4Fs+PIp0ZrCdznyI="
"version": "3.0.10",
"hash": "sha256-wJbLhDyBsSxc8hll7Lo4p+1/6QIFIFlrputMX2GsJK8="
},
{
"pname": "Humanizer.Core.tr",
"version": "3.0.1",
"hash": "sha256-gULMcnt+tcKNo0+TAmHM7nqGCPS6aiNhkFzqbsTSZ+Q="
"version": "3.0.10",
"hash": "sha256-dzkulsKQ+TuyfekNdBqen3hQCrHKjF/m/8RzFUJv8so="
},
{
"pname": "Humanizer.Core.uk",
"version": "3.0.1",
"hash": "sha256-DWOmYJJFO80jtvinzlD7AyrjuZHlmC7ziN7yyG1zSaI="
"version": "3.0.10",
"hash": "sha256-gbRduE17zU1VpcG/HVeovmNX4u/7q+wsU2Jl55GZ7ec="
},
{
"pname": "Humanizer.Core.uz-Cyrl-UZ",
"version": "3.0.1",
"hash": "sha256-QG2yPPoD9FQ+YAW77h+nA7sWZS8p0e2VbXu314km3bs="
"version": "3.0.10",
"hash": "sha256-gakls/P9MWDjzlti+VpOEBiBDIxDQI7bsj1H5jIyyoI="
},
{
"pname": "Humanizer.Core.uz-Latn-UZ",
"version": "3.0.1",
"hash": "sha256-l/UK9ZZUGjWUneIWPKkItxNwJxirtrk+mGWDInwRSW4="
"version": "3.0.10",
"hash": "sha256-FVLNW7mB0FrrqNB2EwR/bhky1SajxoIMQfrDRI3wj/E="
},
{
"pname": "Humanizer.Core.vi",
"version": "3.0.1",
"hash": "sha256-Tul4p5C4Ym9lJ2AmbVJ7g+aWudyFGnTLl1bm5IMlzyk="
"version": "3.0.10",
"hash": "sha256-qDsr6x2uUnFbprY6TPeY2UAAZQ9OFGrjkdeUQXyGH/U="
},
{
"pname": "Humanizer.Core.zh-CN",
"version": "3.0.1",
"hash": "sha256-ZrQa03KHViiug9n2koymN+jNqGnN0w3XXwL/Q7A5CEU="
"version": "3.0.10",
"hash": "sha256-aX/xEks4b0+GAuFXtGsipr+PbpMdl3Mxh307EHFzujU="
},
{
"pname": "Humanizer.Core.zh-Hans",
"version": "3.0.1",
"hash": "sha256-vBbeK4jW1NgyY07SLy5P768R5Iiyn1VRotyefb4lU3I="
"version": "3.0.10",
"hash": "sha256-+sK8itdEx7wzJbgKHZYLOwbh+qPY79Jur+TbROKbp3A="
},
{
"pname": "Humanizer.Core.zh-Hant",
"version": "3.0.1",
"hash": "sha256-mU6FrpqLSMgmyqH4BxBQRDu/J7lOYkZbxHN4EXvHYnQ="
"version": "3.0.10",
"hash": "sha256-Zg0Lthx9LtUZgQCybl5R3qKtSluRdrQdrVlQkRUczKE="
},
{
"pname": "JetBrains.Annotations.Sources",
@@ -281,8 +281,8 @@
},
{
"pname": "Markdig.Signed",
"version": "1.0.0",
"hash": "sha256-wheTLXU+IO6TSvI/ab4MZIZ24vX6jQ2et19heytvr/8="
"version": "1.1.2",
"hash": "sha256-I2d1n2NTV0xr+qasoTt7FdUArCPrinvLVqR4ZB5uWtI="
},
{
"pname": "Microsoft.ApplicationInsights",
@@ -291,8 +291,8 @@
},
{
"pname": "Microsoft.AspNetCore.OpenApi",
"version": "10.0.3",
"hash": "sha256-j7lAYuz2585j/j24XkptImH7WHx9rBp+tY8ZXqpC77k="
"version": "10.0.5",
"hash": "sha256-CQXAu6Tm8nOy/rrZksIKGaLW7USEP/N1kwKBMLoh7js="
},
{
"pname": "Microsoft.CodeAnalysis.ResxSourceGenerator",
@@ -334,6 +334,11 @@
"version": "10.0.0",
"hash": "sha256-9iodXP39YqgxomnOPOxd/mzbG0JfOSXzFoNU3omT2Ps="
},
{
"pname": "Microsoft.Extensions.DependencyInjection.Abstractions",
"version": "8.0.0",
"hash": "sha256-75KzEGWjbRELczJpCiJub+ltNUMMbz5A/1KQU+5dgP8="
},
{
"pname": "Microsoft.Extensions.DependencyModel",
"version": "8.0.2",
@@ -364,6 +369,11 @@
"version": "10.0.0",
"hash": "sha256-BnhgGZc01HwTSxogavq7Ueq4V7iMA3wPnbfRwQ4RhGk="
},
{
"pname": "Microsoft.Extensions.Logging.Abstractions",
"version": "8.0.0",
"hash": "sha256-Jmddjeg8U5S+iBTwRlVAVLeIHxc4yrrNgqVMOB7EjM4="
},
{
"pname": "Microsoft.Extensions.Logging.Configuration",
"version": "10.0.0",
@@ -386,23 +396,23 @@
},
{
"pname": "Microsoft.IdentityModel.Abstractions",
"version": "8.16.0",
"hash": "sha256-OpTFQpTtg1A8I1bBIOqv/n9pwYXTqzMI8ZLXLZDti5w="
"version": "8.17.0",
"hash": "sha256-AU+EMOZArc3rTdsnKYzAufFAtspuYQM3XYi8/VsQAio="
},
{
"pname": "Microsoft.IdentityModel.JsonWebTokens",
"version": "8.16.0",
"hash": "sha256-Cctf2iuIXLMklTuCvzWv721v2mHs0HEBA47BqAKhp9I="
"version": "8.17.0",
"hash": "sha256-MH7vdhCNAae32p6UTvaDtmyvFDxa/W71qTsEQ6yC9xM="
},
{
"pname": "Microsoft.IdentityModel.Logging",
"version": "8.16.0",
"hash": "sha256-355u+3LIn/QfiCHFMXD+3ipdRTnbXLAQNzC4sWEFapQ="
"version": "8.17.0",
"hash": "sha256-IM6jsPMz+l9JA0cye/v2ke51xlfP0u5HtWBqc2aKDYM="
},
{
"pname": "Microsoft.IdentityModel.Tokens",
"version": "8.16.0",
"hash": "sha256-6s8ZLnKw32W6+KbnahCVe1v9YzpoemnpHNQ3VbFSV4M="
"version": "8.17.0",
"hash": "sha256-XcA0KXJbqMWt0I5LuHHMRLpgVQ18KcBej1BoySHeA1A="
},
{
"pname": "Microsoft.NET.Test.Sdk",
@@ -511,18 +521,18 @@
},
{
"pname": "NLog",
"version": "6.1.0",
"hash": "sha256-VetdjDZIr6JseO6VXXqvfO25Nl5ux/TyRqLnqaafmoI="
"version": "6.1.1",
"hash": "sha256-4pxy5z5FyRxBmZNBw+n32SjgEQzMsgSHTuSSn+vxLzk="
},
{
"pname": "NLog.Extensions.Logging",
"version": "6.1.1",
"hash": "sha256-v2KIBN+hSKbx19+ku2ckEQdpOlM6Y0X6i9jTfHh9pGA="
"version": "6.1.2",
"hash": "sha256-H8Wu5NlzMrbQ3IlTD0hutb9ZAg73YBynnjjtTp9NMqk="
},
{
"pname": "NLog.Web.AspNetCore",
"version": "6.1.1",
"hash": "sha256-zFJPxSJP/8CX4POLZlELo6GWrhtq+qoox5v8zxgI+IM="
"version": "6.1.2",
"hash": "sha256-m/MF3dljgRIeGdYdh5m20lKMaQkMadUgXBBp2k5OtaQ="
},
{
"pname": "OpenTelemetry",
@@ -551,8 +561,8 @@
},
{
"pname": "OpenTelemetry.Instrumentation.AspNetCore",
"version": "1.15.0",
"hash": "sha256-mjjHxz5Dzo1ybzfkH2FYnVtAjVTuMaIZ9ZhmPPmjcSI="
"version": "1.15.1",
"hash": "sha256-72oILNRkqztOpRTNC/SjIrqe63ihs33ZwTvgKeP7rws="
},
{
"pname": "OpenTelemetry.Instrumentation.Http",
@@ -576,8 +586,8 @@
},
{
"pname": "Scalar.AspNetCore",
"version": "2.12.47",
"hash": "sha256-qkZ6+Ewo0Iz4lC3j55/iOmR2qrBzwZBIO/uTyy2QAbI="
"version": "2.13.15",
"hash": "sha256-kT5XPl+ZuqMByeH3gLe3EKd3G3yzXViCnehC0fag0lM="
},
{
"pname": "SteamKit2",
@@ -586,33 +596,33 @@
},
{
"pname": "System.Composition",
"version": "10.0.3",
"hash": "sha256-81CJpH6NkGt7WhvKc8KD8ou7cH9BQu7NLZix/pWkPEQ="
"version": "10.0.5",
"hash": "sha256-+Vi5vhZm+McB1aYmUtvPiJDgylwB06PNiFMyCXz435g="
},
{
"pname": "System.Composition.AttributedModel",
"version": "10.0.3",
"hash": "sha256-FhZN6OSjc4tNeNjkifqxkfMvPiQEcAG+T7NRhTpXWuw="
"version": "10.0.5",
"hash": "sha256-z81DulJ1fL+UBve882LNCyz/+/vaI4ZIN2FnGWuDTDk="
},
{
"pname": "System.Composition.Convention",
"version": "10.0.3",
"hash": "sha256-whirt1+xCPnBS3Sj1fZL7/RIJIuS58qox3GleD98ac8="
"version": "10.0.5",
"hash": "sha256-bG/OoFHQ2Uq3Ez+G6UKZrDCAoY+5kgeEBNAIIf7ClGc="
},
{
"pname": "System.Composition.Hosting",
"version": "10.0.3",
"hash": "sha256-V0PMVPXrUUE1veGa9V4qanVs689hOm7DGoAuzw0yaQg="
"version": "10.0.5",
"hash": "sha256-lWMeuR0MrTf/lahN/Sk7g0bppJ3VZvYAmbBFE3Zd73Y="
},
{
"pname": "System.Composition.Runtime",
"version": "10.0.3",
"hash": "sha256-IWDg2bHhwrKxHyDWbWtFdhCgVo8bOE1nK6HceOyHo2E="
"version": "10.0.5",
"hash": "sha256-uzEeZ4NA4b9O2hVVUuR3haRYGUt/OROelrwis+spu94="
},
{
"pname": "System.Composition.TypedParts",
"version": "10.0.3",
"hash": "sha256-JZFr57s6U4bIsblK+G1fUVDMns8j7jHz06trXEJQDvU="
"version": "10.0.5",
"hash": "sha256-nIWGm5I+eR5kx+VL+1PsOFXYgvKd2vwB7s/gPYOxKfI="
},
{
"pname": "System.IO.Hashing",
@@ -621,13 +631,13 @@
},
{
"pname": "System.Security.Cryptography.ProtectedData",
"version": "10.0.3",
"hash": "sha256-JF/WTKv00v/C4ml4g/VL3j4JMPpZa1HBmVMvUnphHr4="
"version": "10.0.5",
"hash": "sha256-Zyqq70EacxdKIx78p49cZ2rveGLxzU9VZxJsPtB2bK0="
},
{
"pname": "Tmds.DBus.Protocol",
"version": "0.90.3",
"hash": "sha256-jK/98C0WrkVqPPNMx+xkdGK7vhcFmDsMqX7hUmALAWM="
"version": "0.91.1",
"hash": "sha256-L7L4zp8NtS+VvLVjgqgBkVzCxElxfGSCTJwC5gWbq9A="
},
{
"pname": "ZstdSharp.Port",
+2 -2
View File
@@ -21,13 +21,13 @@ in
buildDotnetModule rec {
pname = "archisteamfarm";
# nixpkgs-update: no auto update
version = "6.3.3.3";
version = "6.3.4.2";
src = fetchFromGitHub {
owner = "JustArchiNET";
repo = "ArchiSteamFarm";
rev = version;
hash = "sha256-xLS9YUDY54nzt3MjOQv5TvT6TCNpiFo+goKMtiv+jjs=";
hash = "sha256-h9wvMT7BIzIMSnHoinBiZLYbWYPELT3dO+ao+gwTfbw=";
};
dotnet-runtime = dotnetCorePackages.aspnetcore_10_0;
+8
View File
@@ -93,6 +93,12 @@ let
SDL2_mixer
];
extraNativeBuildInputs = [ bison ];
# `label()` was removed in protobuf 34
# <https://github.com/protocolbuffers/protobuf/commit/b76faa921fdd244f374c7be0bddd4050fc42c292>
postPatch = ''
substituteInPlace src/network/nProtoBuf.cpp \
--replace-fail 'field->label() == FieldDescriptor::LABEL_REPEATED' 'field->is_repeated()'
'';
};
# https://gitlab.com/armagetronad/armagetronad/-/commits/hack-0.2.8-sty+ct+ap/?ref_type=heads
@@ -145,6 +151,8 @@ let
pname = mainProgram;
inherit (resolvedParams) version src;
postPatch = resolvedParams.postPatch or "";
# Build works fine; install has a race.
enableParallelBuilding = true;
enableParallelInstalling = false;
+75
View File
@@ -0,0 +1,75 @@
{
lib,
stdenv,
rustPlatform,
fetchFromGitHub,
cargo-tauri,
wrapGAppsHook4,
webkitgtk_4_1,
pkg-config,
versionCheckHook,
nix-update-script,
}:
rustPlatform.buildRustPackage (finalAttrs: {
pname = "arnis";
version = "2.6.0";
src = fetchFromGitHub {
owner = "louis-e";
repo = "arnis";
tag = "v${finalAttrs.version}";
hash = "sha256-FO/8cQkw6CZWMjWgjx0/2KbfnYgIbHHWdgc4c5t4AEk=";
};
cargoHash = "sha256-R7dW2/7UInK3yLz5YHb6UYhLukPrv8NZ8lRYhQwsiMw=";
nativeBuildInputs = [
cargo-tauri.hook
pkg-config
]
++ lib.optionals stdenv.hostPlatform.isLinux [
wrapGAppsHook4
];
buildInputs = lib.optionals stdenv.hostPlatform.isLinux [
webkitgtk_4_1
];
checkFlags = [
# Fail to run in sandbox environment
"--skip=map_transformation::translate::translator::tests::test_translate_by_vector"
];
nativeInstallCheckInputs = [
versionCheckHook
];
versionCheckProgram =
let
binSubdirectory =
if stdenv.hostPlatform.isLinux then
"bin"
else if stdenv.hostPlatform.isDarwin then
"Applications/Arnis.app/Contents/MacOS"
else
throw "Unsuported system";
in
"${placeholder "out"}/${binSubdirectory}/arnis";
doInstallCheck = true;
passthru.updateScript = nix-update-script { };
meta = {
description = "Real world location generator for Minecraft Java Edition";
longDescription = ''
Open source project written in Rust generates any chosen location from
the real world in Minecraft Java Edition with a high level of detail.
'';
homepage = "https://github.com/louis-e/arnis";
changelog = "https://github.com/louis-e/arnis/releases/tag/${finalAttrs.src.tag}";
license = lib.licenses.asl20;
inherit (cargo-tauri.hook.meta) platforms;
maintainers = with lib.maintainers; [ nartsiss ];
mainProgram = "arnis";
};
})
+2 -2
View File
@@ -29,11 +29,11 @@
stdenv.mkDerivation (finalAttrs: {
pname = "bind";
version = "9.20.21";
version = "9.20.22";
src = fetchurl {
url = "https://downloads.isc.org/isc/bind9/${finalAttrs.version}/bind-${finalAttrs.version}.tar.xz";
hash = "sha256-FeG1oifSiQ98ToI6bqAY3nDuLzoOhZy/89gqrYWQ3gM=";
hash = "sha256-y6kv9jG5SWVfR1/ktUKQ9oYP0AcNOZ8iefZDfA04PsY=";
};
outputs = [
-3
View File
@@ -14,9 +14,6 @@
withBlas ? true,
}:
# gflags is required to run tests
assert runTests -> gflags != null;
stdenv.mkDerivation (finalAttrs: {
pname = "ceres-solver";
version = "2.1.0";
+4 -4
View File
@@ -5,7 +5,7 @@
"packages": {
"": {
"dependencies": {
"codebuff": "^1.0.635"
"codebuff": "^1.0.638"
}
},
"node_modules/@isaacs/fs-minipass": {
@@ -30,9 +30,9 @@
}
},
"node_modules/codebuff": {
"version": "1.0.635",
"resolved": "https://registry.npmjs.org/codebuff/-/codebuff-1.0.635.tgz",
"integrity": "sha512-WjryNPaDPLKZ22vspoib6B5q9S9AIIxqJjbrB3kBj5e7vLx+BDlxMqwbvw4ywzzO/7+P62vOyJ99WFA7l86SNw==",
"version": "1.0.638",
"resolved": "https://registry.npmjs.org/codebuff/-/codebuff-1.0.638.tgz",
"integrity": "sha512-AVjN8qPQ+7gZ30Y1NpdtycatSKg/K4FPRrgAr1Lc/tYQ7kmfTKopYpPiawF2Q+v3pO9K2jFNoVihvcLzEv+ewA==",
"cpu": [
"x64",
"arm64"
+8 -6
View File
@@ -4,16 +4,18 @@
fetchzip,
}:
buildNpmPackage rec {
buildNpmPackage (finalAttrs: {
pname = "codebuff";
version = "1.0.635";
version = "1.0.638";
src = fetchzip {
url = "https://registry.npmjs.org/codebuff/-/codebuff-${version}.tgz";
hash = "sha256-IKo/00XmqRvKq3OHc3Fu0/r3fvecKB+E2syuA5jw3Cc=";
url = "https://registry.npmjs.org/codebuff/-/codebuff-${finalAttrs.version}.tgz";
hash = "sha256-Fyu2T3HGwKfECiw0zyRMH29iDAlrtpzvkoqswJiPl6Y=";
};
npmDepsHash = "sha256-u1xkAQjSeVg6M/1hyDAl0LGjUdu91O9gk95svipy7pw=";
strictDeps = true;
npmDepsHash = "sha256-Wb0FbeuzkKg3ljirUFX2ZHx1WS1K2lyuha9qWUncsiI=";
postPatch = ''
cp ${./package-lock.json} package-lock.json
@@ -31,4 +33,4 @@ buildNpmPackage rec {
maintainers = [ lib.maintainers.malo ];
mainProgram = "codebuff";
};
}
})
+60
View File
@@ -0,0 +1,60 @@
{
lib,
fetchFromGitHub,
rustPlatform,
pkg-config,
openssl,
vulkan-loader,
makeWrapper,
stdenv,
}:
rustPlatform.buildRustPackage (finalAttrs: {
pname = "demucs-rs";
version = "0.3.4";
src = fetchFromGitHub {
owner = "nikhilunni";
repo = "demucs-rs";
tag = "v${finalAttrs.version}";
hash = "sha256-IidfPS+/T8aJoW30gdnKhhsgluMt+h9RllAXH9Yrq1g=";
};
cargoHash = "sha256-xngHyenlB3sMqzJHNk9utk4TNhdt+awutDuP1JzhhBA=";
# Only build the CLI crate, not the DAW plugin or WASM targets
buildAndTestSubdir = "demucs-cli";
nativeBuildInputs = [
pkg-config
makeWrapper
];
buildInputs = [
openssl
];
# wgpu dlopen()s libvulkan at runtime, so LD_LIBRARY_PATH is needed (RPATH has no effect).
# this is Linux-only: on Darwin wgpu uses Metal and should need no runtime patching.
postInstall = lib.optionalString stdenv.hostPlatform.isLinux ''
wrapProgram $out/bin/demucs \
--prefix LD_LIBRARY_PATH : "${vulkan-loader}/lib"
'';
meta = {
description = "Native Rust implementation of HTDemucs v4 music source separation CLI";
longDescription = ''
A native Rust implementation of HTDemucs v4 state-of-the-art music
source separation. Splits any song into individual stems (drums, bass,
vocals, etc.) using GPU-accelerated inference via Burn.
Model weights are downloaded automatically from Hugging Face on first
use and cached for future runs.
'';
homepage = "https://github.com/nikhilunni/demucs-rs";
license = lib.licenses.asl20;
mainProgram = "demucs";
maintainers = with lib.maintainers; [ eymeric ];
platforms = lib.platforms.unix;
};
})
+2 -2
View File
@@ -15,13 +15,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "dhcpcd";
version = "10.3.0";
version = "10.3.1";
src = fetchFromGitHub {
owner = "NetworkConfiguration";
repo = "dhcpcd";
rev = "v${finalAttrs.version}";
sha256 = "sha256-XbXZkws1eHvN7OEq7clq2kziwwdk04lNrWbJ9RdHExU=";
sha256 = "sha256-L2rR6/qMHWVth2GR3VAoBZmhA6lmCLddbi0VvEG5r70=";
};
nativeBuildInputs = [ pkg-config ];
+3 -3
View File
@@ -16,15 +16,15 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "dioxus-cli";
version = "0.7.4";
version = "0.7.5";
src = fetchCrate {
pname = "dioxus-cli";
version = finalAttrs.version;
hash = "sha256-6ZKVnLMq2eB6kj2Ly3z0/dWpZ+x9bJwPtyxE8Ef6haI=";
hash = "sha256-iAwR43SwmOBvuHa9qZBJLCjyhQSj/XgDx0jkWR+lgrE=";
};
cargoHash = "sha256-VrJuT3ori25joRe7kjSr6j8xfbKn5udETviV3id2mG4=";
cargoHash = "sha256-JS5/7hQhgN2gbMmLY2zD2GE/Ony8AAHAzj7Ituj6l90=";
buildFeatures = [
"no-downloads"
]
+1 -1
View File
@@ -15,7 +15,7 @@ stdenv.mkDerivation (finalAttrs: {
owner = "Youda008";
repo = "DoomRunner";
tag = "v${finalAttrs.version}";
hash = "sha256-YkLW3og51e2sydWUiMDr2DOr1uHxzv4Z3rr/WRys5bY=";
hash = "sha256-jEXY0RoSKLE3fpdAygyUahaLRlz4X8Xnq+talZwrSRM=";
};
buildInputs = [
+12 -14
View File
@@ -3,18 +3,18 @@
stdenv,
fetchFromGitHub,
buildPackages,
unstableGitUpdater,
nix-update-script,
}:
stdenv.mkDerivation {
stdenv.mkDerivation (finalAttrs: {
pname = "eigenmath";
version = "340-unstable-2025-05-05";
version = "350";
src = fetchFromGitHub {
owner = "georgeweigt";
repo = "eigenmath";
rev = "94fee6b02ebd4cd718dd9ea45583a6af2129dd28";
hash = "sha256-2bdO0nRXhDZlEmGRfNf6g9zwc65Ih9Ymlo6PxlpAxes=";
tag = finalAttrs.version;
hash = "sha256-Depc6mzPK6FEGTUo2BmXoWlyzjQDU8Hiodp5UjxKlQE=";
};
checkPhase =
@@ -23,14 +23,14 @@ stdenv.mkDerivation {
in
''
runHook preCheck
for testcase in selftest1 selftest2; do
${emulator} ./eigenmath "test/$testcase"
done
echo -e "clear\nstatus\nexit" >> test/selftest
${emulator} ./eigenmath "test/selftest"
runHook postCheck
'';
# https://github.com/georgeweigt/eigenmath/issues/32
env.NIX_CFLAGS_COMPILE = "-std=gnu17";
installPhase = ''
runHook preInstall
install -Dm555 eigenmath "$out/bin/eigenmath"
@@ -39,9 +39,7 @@ stdenv.mkDerivation {
doCheck = true;
passthru = {
updateScript = unstableGitUpdater { };
};
passthru.updateScript = nix-update-script { };
meta = {
description = "Computer algebra system written in C";
@@ -51,4 +49,4 @@ stdenv.mkDerivation {
maintainers = with lib.maintainers; [ nickcao ];
platforms = lib.platforms.unix;
};
}
})
+2 -2
View File
@@ -6,13 +6,13 @@
}:
stdenv.mkDerivation (finalAttrs: {
pname = "exploitdb";
version = "2026-03-04";
version = "2026-04-07";
src = fetchFromGitLab {
owner = "exploit-database";
repo = "exploitdb";
tag = finalAttrs.version;
hash = "sha256-vAIQnjdlBWAP7dFeFGkW7F48tCH3sj9Ew5tjfRcQCmo=";
hash = "sha256-tq0E5Kzp4T+eYfA4Q4kR5kbpWrtnyKoNEpJNJCDcEKc=";
};
nativeBuildInputs = [ makeWrapper ];
+3 -3
View File
@@ -14,16 +14,16 @@
buildGoModule (finalAttrs: {
pname = "fence";
version = "0.1.32";
version = "0.1.42";
src = fetchFromGitHub {
owner = "Use-Tusk";
repo = "fence";
tag = "v${finalAttrs.version}";
hash = "sha256-D+mAwmeOGSuKqO72atjvlhg2ez4MXtrjlnHEXPX34jI=";
hash = "sha256-TxSUgU32Y+IScFtAgWnB32OgyLaC7kWRVmYiM986nVo=";
};
vendorHash = "sha256-8v6B39TCwzu6DgFr1nuaGBEQ9s06rbBCENiGUIVw9Rk=";
vendorHash = "sha256-P30NCXYX27R7F/dNhWSwiLg8T2f6J0/hlu6G3wlENFI=";
ldflags = [
"-s"
+2 -2
View File
@@ -9,14 +9,14 @@
python3.pkgs.buildPythonApplication (finalAttrs: {
pname = "git-machete";
version = "3.39.2";
version = "3.40.0";
pyproject = true;
src = fetchFromGitHub {
owner = "virtuslab";
repo = "git-machete";
tag = "v${finalAttrs.version}";
hash = "sha256-uu2HFrXcJl4jSl8nHBrTIxC0arn3FZQ2SvZIMyKqlaU=";
hash = "sha256-RR+DNCqopTzGVy2bwr6qer4l9TVrBtOMtjGS9vfziAs=";
};
build-system = with python3.pkgs; [ setuptools ];
+5 -5
View File
@@ -184,11 +184,11 @@ let
linux = stdenvNoCC.mkDerivation (finalAttrs: {
inherit pname meta passthru;
version = "146.0.7680.177";
version = "147.0.7727.55";
src = fetchurl {
url = "https://dl.google.com/linux/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_${finalAttrs.version}-1_amd64.deb";
hash = "sha256-Tb142IoeaaYDa6jorbmfyoCHkOI7LqkthhBJStf1cyg=";
hash = "sha256-N3uXLBQ+kMttTKMaWijtE5hHXUdnDo97FeS6EaQsuyg=";
};
# With strictDeps on, some shebangs were not being patched correctly
@@ -302,11 +302,11 @@ let
darwin = stdenvNoCC.mkDerivation (finalAttrs: {
inherit pname meta passthru;
version = "146.0.7680.178";
version = "147.0.7727.56";
src = fetchurl {
url = "http://dl.google.com/release2/chrome/aco4gwkxcefkxklazdyhgwkrndkq_146.0.7680.178/GoogleChrome-146.0.7680.178.dmg";
hash = "sha256-aGqEFAzQZLy85hbsjhgYr5eFYgCaMhOiUG00wSlANHk=";
url = "http://dl.google.com/release2/chrome/nrtg4j5s3af3rvfw2czxfvmywu_147.0.7727.56/GoogleChrome-147.0.7727.56.dmg";
hash = "sha256-IPeukB7JCeHOWr0Ma7YFfHWO58Py2/x/o2Ajz0Rc4oM=";
};
dontPatch = true;
+3 -3
View File
@@ -10,16 +10,16 @@
}:
buildGo126Module (finalAttrs: {
pname = "goreleaser";
version = "2.15.0";
version = "2.15.2";
src = fetchFromGitHub {
owner = "goreleaser";
repo = "goreleaser";
rev = "v${finalAttrs.version}";
hash = "sha256-IoNa4D3OM0B+/6KNS/n0T1uQwDK34aFE/I6tsavKhVQ=";
hash = "sha256-oRKOgqj5TKoD+BygDNjEc4vEN88WoTLAPJVxDfjWMPs=";
};
vendorHash = "sha256-Yx0K3/6WuWRpP3sLoo+xnMDoJN+OtVZGtBbNaroMRy8=";
vendorHash = "sha256-u0xZpajnTlGi8i/LfJ9JVHOKFs2SUA6RSrR4MlRhZv4=";
ldflags = [
"-s"
+5 -5
View File
@@ -31,13 +31,13 @@
}:
let
version = "0-unstable-2026-03-13";
rev = "eb30ee78bcf8971dc0098f07bdef1fef9d4a7e19";
version = "0-unstable-2026-03-29";
rev = "203910a92f20b9bc4127eac4c5bb4a5492c8c293";
srcHash = "sha256-cQ6dLoFoNyiFFD/JVZ+U9kHrk2ZTcBxBCf8c3sMjCfQ=";
srcHash = "sha256-WBPRI5FQ17ZioSHzOZf0ChuxVtyniuez1OaSo66KqGg=";
shaderHash = "sha256-uc6FU0df5Xqp6YXEwODULhgUjSQvjRFGvdk+uFB7II0=";
cargoHash = "sha256-GvKUZrrLYR2J4CnAbMs4TS6eOxSCq4AMecPGp6+008s=";
npmHash = "sha256-r9jfk/fs6mL9L/7heelamOKzlCEu23UWId0kX35mOgE=";
cargoHash = "sha256-h6FtvgzAPCtdRaFoGZBVcXGDLOt12IFk1CSW8nwZB94=";
npmHash = "sha256-WF6MuiCIW/vWpTN9Jj5srClUNJTVIgxfqna6/y1N9kE=";
brandingRev = "8ae15dc9c51a3855475d8cab1d0f29d9d9bc622c";
brandingHash = "sha256-mHdwHK2lEeFQWNrjbusvRULEmm03dP+0JM5bnUgHcF8=";
+4 -4
View File
@@ -8,22 +8,22 @@
let
pname = "hoppscotch";
version = "26.2.1-0";
version = "26.3.0-0";
src =
fetchurl
{
aarch64-darwin = {
url = "https://github.com/hoppscotch/releases/releases/download/v${version}/Hoppscotch_mac_aarch64.dmg";
hash = "sha256-F9kEa1trZKm2sUs5JMQY8lwkM+Vs0SFGd5NGbrmythQ=";
hash = "sha256-nfXk6N4cVp9NCE/kKZsVeEIQ+zYssw8XlBQgcKMHJ2A=";
};
x86_64-darwin = {
url = "https://github.com/hoppscotch/releases/releases/download/v${version}/Hoppscotch_mac_x64.dmg";
hash = "sha256-jxqYV3OsfJljfFi5PeMD/rOnpuuEJ0+08lozjCTZlOc=";
hash = "sha256-emnwjmBPL/eKAVPmgnpDK/N9hiwTenCCa123fJfXLE4=";
};
x86_64-linux = {
url = "https://github.com/hoppscotch/releases/releases/download/v${version}/Hoppscotch_linux_x64.AppImage";
hash = "sha256-PiFcLAAXvR1GlIAeKlK066NE/bCCpLqJ32tVEY/VZ1s=";
hash = "sha256-V7CI0j1C3UZuhyY6KeL1CAILfpc8N0cJxyI4M5lnRPg=";
};
}
.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
@@ -8,14 +8,14 @@
python3Packages.buildPythonApplication (finalAttrs: {
pname = "interactive-html-bom";
version = "2.11.0";
version = "2.11.1";
pyproject = true;
src = fetchFromGitHub {
owner = "openscopeproject";
repo = "InteractiveHtmlBom";
tag = "v${finalAttrs.version}";
hash = "sha256-8uLHSMliz8bQ8aV+XWap8DwKKqroOPph1l9cgKXps+U=";
hash = "sha256-j8ORSHMZ3aWtWNA5UaHeL+OXh4D1wdek5JjinmqpOfI=";
};
build-system = [ python3Packages.hatchling ];
+2 -2
View File
@@ -9,13 +9,13 @@
buildGoModule (finalAttrs: {
pname = "kapp";
version = "0.65.1";
version = "0.66.0";
src = fetchFromGitHub {
owner = "carvel-dev";
repo = "kapp";
rev = "v${finalAttrs.version}";
hash = "sha256-P40pkjL7j/hHELZxT4CqsrKE18oENhCSO0tgvpb2xZc=";
hash = "sha256-Fs15mvxg3MxQpis1f9eOGOE516THazTIKs0ZiqV15Xk=";
};
vendorHash = null;
+3 -3
View File
@@ -8,17 +8,17 @@
}:
rustPlatform.buildRustPackage (finalAttrs: {
version = "0.2.2";
version = "0.2.3";
pname = "kdotool";
src = fetchFromGitHub {
owner = "jinliu";
repo = "kdotool";
rev = "v${finalAttrs.version}";
hash = "sha256-aJRqFcKyu4/aqI3WtH9NjzjNgiI6lq0VgCXNGaNdyvE=";
hash = "sha256-8lN85DPw3FUPS1k0Ktcp8Xf1DAdj6Hd6PqlKmhFCP+o=";
};
cargoHash = "sha256-QrJVN2O/pDCIpD1ioFPZyj7au3DQtU3l/I440WsyYWo=";
cargoHash = "sha256-8WkLgTg+ndMtAh0W0efvRCDEgvhmKBcN0e0Jxn4hgH8=";
nativeBuildInputs = [ pkg-config ];
buildInputs = [ dbus ];
@@ -16,19 +16,19 @@ assert lib.asserts.assertMsg (
) "The baseUrl parameter is deprecated, please use .withConfig instead";
stdenv.mkDerivation (finalAttrs: {
pname = "synapse-admin-etkecc";
version = "0.11.4-etke54";
pname = "ketesa";
version = "1.1.0";
src = fetchFromGitHub {
owner = "etkecc";
repo = "synapse-admin";
repo = "ketesa";
tag = "v${finalAttrs.version}";
hash = "sha256-/BH77wv9wWUIMcrDW5l8e+nQMHuJRtdKGqVfYl5XQzc=";
hash = "sha256-+MzoYREPLKEHT5fXAddYBVELDmmP7+aXQlm4s04kWy0=";
};
yarnOfflineCache = fetchYarnDeps {
yarnLock = finalAttrs.src + "/yarn.lock";
hash = "sha256-neKBMw0iDYLQG4GeoXlnU1SVwKADw0ATAHG1s1inH3U=";
hash = "sha256-+q4Y0BNK1BggNyRw2gJ3swAe+ZK6A3N+oceBrx0a2uE=";
};
nativeBuildInputs = [
@@ -39,7 +39,7 @@ stdenv.mkDerivation (finalAttrs: {
env = {
NODE_ENV = "production";
SYNAPSE_ADMIN_VERSION = finalAttrs.version;
KETESA_VERSION = finalAttrs.version;
};
installPhase = ''
@@ -48,15 +48,17 @@ stdenv.mkDerivation (finalAttrs: {
runHook postInstall
'';
__darwinAllowLocalNetworking = true;
passthru = {
# https://github.com/etkecc/synapse-admin/blob/main/docs/config.md
# https://github.com/etkecc/ketesa/blob/main/docs/config.md
withConfig =
config:
stdenv.mkDerivation {
inherit (finalAttrs) version meta;
pname = "synapse-admin-etkecc-with-config";
pname = "ketesa-with-config";
dontUnpack = true;
configFile = writers.writeJSON "synapse-admin-config" config;
configFile = writers.writeJSON "ketesa-config" config;
installPhase = ''
runHook preInstall
cp -r ${finalAttrs.finalPackage} $out
@@ -70,9 +72,9 @@ stdenv.mkDerivation (finalAttrs: {
};
meta = {
description = "Maintained fork of the admin console for (Matrix) Synapse homeservers, including additional features";
homepage = "https://github.com/etkecc/synapse-admin";
changelog = "https://github.com/etkecc/synapse-admin/releases/tag/v${finalAttrs.version}";
description = "Admin UI for Matrix servers, formerly Synapse Admin. Drop-in replacement with extended features, multi-backend support, and visual customization";
homepage = "https://github.com/etkecc/ketesa";
changelog = "https://github.com/etkecc/ketesa/releases/tag/v${finalAttrs.version}";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ defelo ];
};
+3 -3
View File
@@ -7,13 +7,13 @@
stdenvNoCC.mkDerivation {
pname = "kitty-themes";
version = "0-unstable-2026-03-25";
version = "0-unstable-2026-03-31";
src = fetchFromGitHub {
owner = "kovidgoyal";
repo = "kitty-themes";
rev = "d28a70284e15871108ba45295ce555e893f42f0a";
hash = "sha256-Qc5DBupW0FJVuBf0+Jhq55XkgWpNiSu3TO8jb/cVx1I=";
rev = "c467f3ef3fd44f3fa3c16599e0d1663be027dea0";
hash = "sha256-oNMf6hGcNj9IS7m+lo6xRsBAPQw40w7MlEPZCTv3Ggg=";
};
dontConfigure = true;
+3 -3
View File
@@ -6,16 +6,16 @@
buildGoModule (finalAttrs: {
pname = "kubectl-gadget";
version = "0.50.1";
version = "0.51.0";
src = fetchFromGitHub {
owner = "inspektor-gadget";
repo = "inspektor-gadget";
tag = "v${finalAttrs.version}";
hash = "sha256-o8Ckpa1UCit8/FTeXwWjRzvOGtRvp4BqL0K6829P7AY=";
hash = "sha256-14X+NCxsmyBhWOJMczZUBFJO1DiVQxDO46RwHGJsUVg=";
};
vendorHash = "sha256-UzttScIgwy5pN1bDr6vfYn8V6ipaIp0Cw1xIgCmJIbY=";
vendorHash = "sha256-wau7qCtVwAVfNI/Dpon2b8gkepCODLXQMZsYiYU2tSM=";
env.CGO_ENABLED = 0;
+2 -2
View File
@@ -10,7 +10,7 @@
stdenv.mkDerivation (finalAttrs: {
pname = "libblake3";
version = "1.8.3";
version = "1.8.4";
outputs = [
"out"
@@ -21,7 +21,7 @@ stdenv.mkDerivation (finalAttrs: {
owner = "BLAKE3-team";
repo = "BLAKE3";
tag = finalAttrs.version;
hash = "sha256-aj+fru2saqWxDDiV3mNCZZeZIGTxSgta/X50R87hoko=";
hash = "sha256-Xz0LH0YpUjDishvXsW6VNK8msFlPXg08wFoSfbgws0g=";
};
sourceRoot = finalAttrs.src.name + "/c";
+3 -3
View File
@@ -18,18 +18,18 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "lux-cli";
version = "0.26.4";
version = "0.27.0";
src = fetchFromGitHub {
owner = "lumen-oss";
repo = "lux";
tag = "v${finalAttrs.version}";
hash = "sha256-kNmOapcZJr/xk7tNpM+tqDfinpaYClXv2UbymvbV5OE=";
hash = "sha256-EuAVD+gBd1k8huufgbjdFJC/aGXqlc/66kIIaC7td2Q=";
};
buildAndTestSubdir = "lux-cli";
cargoHash = "sha256-jftyGo+Xjxi3G1q8kQCCnlDcJX12x9mmw/S2MmHxhB4=";
cargoHash = "sha256-Xvvw4NbSYdMmihsu1bWNfHzI9oItGlhY/KLNiRUHj+k=";
nativeInstallCheckInputs = [
versionCheckHook
+57
View File
@@ -0,0 +1,57 @@
{
lib,
python3Packages,
fetchFromGitHub,
fetchpatch,
}:
python3Packages.buildPythonApplication rec {
pname = "motioneye";
version = "0.43.1";
pyproject = true;
src = fetchFromGitHub {
owner = "motioneye-project";
repo = "motioneye";
tag = version;
hash = "sha256-ckOgYmOP5irjNutcC3FMZPBexn/CldG0UtFZ+tPYNJ4=";
};
patches = [
# fix pytest
# https://github.com/motioneye-project/motioneye/pull/3271
(fetchpatch {
url = "https://github.com/motioneye-project/motioneye/commit/41c0727e2872af1b758743c41b529e76dcac6f84.patch";
hash = "sha256-0zDveoAN1T0SuCob0U/9GEGTh7pj2CXH/j4YrjO0VE0=";
includes = [ "conftest.py" ];
})
];
build-system = with python3Packages; [
setuptools
];
dependencies = with python3Packages; [
babel
boto3
jinja2
pillow
pycurl
tornado
];
nativeCheckInputs = with python3Packages; [
pytestCheckHook
];
pythonImportsCheck = [
"motioneye"
];
meta = {
description = "Web frontend for the motion daemon";
homepage = "https://github.com/motioneye-project/motioneye";
license = lib.licenses.gpl3Only;
maintainers = with lib.maintainers; [ marcel ];
};
}
+2 -2
View File
@@ -26,14 +26,14 @@ in
py.pkgs.buildPythonApplication (finalAttrs: {
pname = "oci-cli";
version = "3.76.0";
version = "3.77.0";
pyproject = true;
src = fetchFromGitHub {
owner = "oracle";
repo = "oci-cli";
tag = "v${finalAttrs.version}";
hash = "sha256-3fmehq8jM9S2ICxD+4+bEEJqtn/bgV5UW3mveJl+Z7A=";
hash = "sha256-2NIgOJejsRcXGEYqPdZZcZuIe/EF98GDN/JvKivAslI=";
};
nativeBuildInputs = [ installShellFiles ];
+2 -2
View File
@@ -55,14 +55,14 @@ in
stdenv.mkDerivation (finalAttrs: {
pname = "openvino";
version = "2026.0.0";
version = "2026.1.0";
src = fetchFromGitHub {
owner = "openvinotoolkit";
repo = "openvino";
tag = finalAttrs.version;
fetchSubmodules = true;
hash = "sha256-CGlcFqv2KZKZD35BIOCRntDaDoT6Nv4VmPXE8mTeiDg=";
hash = "sha256-ss6U4D1QyJM9hbauRBgNIrU09k6xMX0SUeleOXIDU6U=";
};
outputs = [
+13 -2
View File
@@ -1,6 +1,5 @@
{
beam,
elixir_1_17,
lib,
fetchFromGitHub,
fetchFromGitLab,
@@ -16,7 +15,7 @@
}:
let
beamPackages = beam.packages.erlang_26.extend (self: super: { elixir = elixir_1_17; });
beamPackages = beam.packages.erlang_27.extend (self: super: { elixir = self.elixir_1_18; });
in
beamPackages.mixRelease rec {
pname = "pleroma";
@@ -206,6 +205,18 @@ beamPackages.mixRelease rec {
cp ${cfgFile} config/config.exs
'';
};
# mochiweb is unused by still in mix.lock
# work around OTP 27+ incompat by forcing our build to use a newer version
mochiweb = prev.mochiweb.override rec {
version = "3.3.0";
src = fetchHex {
pkg = "mochiweb";
version = "${version}";
sha256 = "sha256-qoW3d/sj6ZcuvEJOQLXTUQbxm8mYhz4Cbe3Ydt+O5Qw=";
};
};
};
};
+2 -2
View File
@@ -17,13 +17,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "proj";
version = "9.7.1";
version = "9.8.0";
src = fetchFromGitHub {
owner = "OSGeo";
repo = "PROJ";
tag = finalAttrs.version;
hash = "sha256-xXtqbLPS2Hu9gC06b72HDjnNRh4m0ism97hP8FFYOMo=";
hash = "sha256-LvzQ2sW+h5uHJg+6z8/Nf99EVIPUQfWoaNr0iFUpD/0=";
};
patches = [
@@ -8,16 +8,16 @@
buildGoModule rec {
pname = "mongodb_exporter";
version = "0.49.0";
version = "0.50.0";
src = fetchFromGitHub {
owner = "percona";
repo = "mongodb_exporter";
rev = "v${version}";
hash = "sha256-KgfJ/o+LsEF4NAlUbNdhg8of/qfaPxnd8+rHlp+URHc=";
hash = "sha256-vUvm9YvcO3XgQR4GcY1SgP05KGnVZ5c7Z5fZtLvSiFo=";
};
vendorHash = "sha256-1yTSQ3ktAtUfy2nKm98hFX+A7eR0z5FoKbM2vAJQWbU=";
vendorHash = "sha256-FS6g2VupTk5oa40gjqFJGA/6Ek1ItCpHHyrnG43tSrw=";
buildInputs = lib.optionals withGssapi [ krb5 ];
@@ -7,16 +7,16 @@
buildGoModule rec {
pname = "prometheus-nextcloud-exporter";
version = "0.9.0";
version = "0.9.1";
src = fetchFromGitHub {
owner = "xperimental";
repo = "nextcloud-exporter";
rev = "v${version}";
sha256 = "sha256-S8r9WXWKneik+r6gdwWdDOWXpNkqr9aVem76Jmdligg=";
sha256 = "sha256-inUdo7LVx5EreYnw/5UKGu1frIeK2fHnNPAAXowRCn4=";
};
vendorHash = "sha256-isT/ntUnixB76WxnMm/5TUd9JeaCy7vkCwVtkc95o2M=";
vendorHash = "sha256-3HrJ1HtovA/GJJw96eQQTRnwzMUE4E24lVHc8rhZqzY=";
passthru.tests = { inherit (nixosTests.prometheus-exporters) nextcloud; };
+145 -145
View File
@@ -1,36 +1,36 @@
# DO NOT EDIT! This file is generated automatically by update.sh
{ }:
{
version = "3.228.0";
version = "3.229.0";
pulumiPkgs = {
x86_64-linux = [
{
url = "https://get.pulumi.com/releases/sdk/pulumi-v3.228.0-linux-x64.tar.gz";
sha256 = "0wg1ciq0q56yb19s7q6i2qsl8jr9mr4ajqgkakjyvigs4pqmdf2h";
url = "https://get.pulumi.com/releases/sdk/pulumi-v3.229.0-linux-x64.tar.gz";
sha256 = "1wc8ci70vnxfgw0b1zf6nl40ji58f6yyi1wwx5pd8vsksbspggbj";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aiven-v6.51.0-linux-amd64.tar.gz";
sha256 = "1f5pvflvcd9xr86ys1n46ywyakl30l2xrrwqhbhkb117gp17a9lx";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-akamai-v10.3.0-linux-amd64.tar.gz";
sha256 = "1c8bd6m2kk6nzbmq3csb5babmbma83cxsvqxv7z0s59b2p6jc9r5";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-akamai-v11.1.0-linux-amd64.tar.gz";
sha256 = "139h210ixh4s46sa90p9ga9nl1bqb1m36hbr1ylcr80nx5hjh42p";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-alicloud-v3.97.0-linux-amd64.tar.gz";
sha256 = "0wqrvrvdn9wy2hk4n27lndrk8jp1lihyzdwapbvj4xrypy24ghs2";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-alicloud-v3.98.0-linux-amd64.tar.gz";
sha256 = "12lpvryc1iw90d2mbyx0kixw99w1adibmqh6svnpiiip0ijkdbfy";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-artifactory-v8.10.3-linux-amd64.tar.gz";
sha256 = "1zwi4h5kj4ncxzphdsbh5yg48wq4m65kjmyhrkv0jii99nfqn3l7";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-auth0-v3.38.0-linux-amd64.tar.gz";
sha256 = "13jsxvjzhhx7zrnx93drh7sych1sh173fl5wa05hxzc18vl29g81";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-auth0-v3.39.0-linux-amd64.tar.gz";
sha256 = "1hfxg058jcbxfigl8a5sbapfm09hcyjrm2h63ksaw0gn7ny26y46";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v7.23.0-linux-amd64.tar.gz";
sha256 = "0k3v1s41vv6bj798vydjx6al1rxp4bhssxi3q2h13kxs5caqbigm";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v7.24.0-linux-amd64.tar.gz";
sha256 = "032zcfzdx8f9k6lsz3kqwqy9vyap6h0vqyg0gx83lbc3b6j17dkk";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azuread-v6.9.0-linux-amd64.tar.gz";
@@ -41,40 +41,40 @@
sha256 = "14i18v6z68szdf1y1bg3m51kqn4i1fdv6jbi282f7rxr0fbzzmpl";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v6.33.0-linux-amd64.tar.gz";
sha256 = "0jzkb6f0hwhxg0wf7i2walg160z1rd3wlid7922nmkq4hwrh19sb";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v6.34.0-linux-amd64.tar.gz";
sha256 = "0sv0d2srgzn2psaip3zgfnqr9d209vivqrnaxd06xjrjqg2ivfh5";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-cloudflare-v6.13.0-linux-amd64.tar.gz";
sha256 = "0mv4gmpxprvrmjbj062khwpsdwwscw3kpiryjmxg740q4mdqi6fz";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-cloudflare-v6.14.0-linux-amd64.tar.gz";
sha256 = "0rx73m3mw0lkafcm6b82vdypzj4xfpff28i1n55z24pgn2s2vyli";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-consul-v3.14.0-linux-amd64.tar.gz";
sha256 = "10gb3f4j76vf01ng6bpvvhcs78z5bajil7bgqv2hgh6x834gdwpm";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-consul-v3.14.1-linux-amd64.tar.gz";
sha256 = "184rpv0sa2qaxm1ng729x5vrw1rjv6bbskc1m7sjpj5ls9sgacw0";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-datadog-v4.68.0-linux-amd64.tar.gz";
sha256 = "0azr8k0c3nj0r9lihwwaxz9081xgrqnagnpmanxvmjvkjp88j4q8";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-datadog-v5.1.0-linux-amd64.tar.gz";
sha256 = "1af9y48rchnpryyy3j228d94iyvfrhphjw6m94r92y6carkpggg5";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-digitalocean-v4.63.0-linux-amd64.tar.gz";
sha256 = "0ysmly93yls8cq6y9kb5ksavfhlpddqdgx187a1mjl61j8iq80r0";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-docker-v4.11.1-linux-amd64.tar.gz";
sha256 = "1l4nn0nbrv514rmgs8zz89z30fzd6jfnbqh4751malx89ach2rqy";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-docker-v4.11.2-linux-amd64.tar.gz";
sha256 = "187qg3cdbd194qs1nqv51zxddvg0hvac3kkgqjd6hcfrg0wy70bs";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-equinix-metal-v3.2.1-linux-amd64.tar.gz";
sha256 = "0hnardid0kbzy65dmn7vz8ddy5hq78nf2871zz6srf2hfyiv7qa4";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-fastly-v11.4.1-linux-amd64.tar.gz";
sha256 = "09x25vfq2fbxcmkcjaj0yr2xhcplyj0w2z4c0lwcl368fnk9z9zy";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-fastly-v11.5.0-linux-amd64.tar.gz";
sha256 = "08mwfxjmmdka6ka1qx9p09zigkj6lw4vjb4b3zm6599rgzzxgcs1";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v9.16.0-linux-amd64.tar.gz";
sha256 = "0jfbhy16z988y9afma5dccvqf7xq0lbmkl2dgnizpyr5klwg60nb";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v9.18.0-linux-amd64.tar.gz";
sha256 = "1yab8zgxccvmv44pixax8iy27ggmd3r19957ivaw9lckccnx9sav";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v6.12.1-linux-amd64.tar.gz";
@@ -97,12 +97,12 @@
sha256 = "0saa0i1id3lgdlw8wi2wbwymd1vnxdzmrqqr876gk9hcs9fj7bar";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-linode-v5.9.0-linux-amd64.tar.gz";
sha256 = "0gh9xxawgnmkr6rc3cn7vv9svl03cgv15bx5agvfa1amgaajixc4";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-linode-v5.10.0-linux-amd64.tar.gz";
sha256 = "082qaqpjl0m3ng30nmvmwibn9yfrbh47kpyx9jdzmwg0k3d60sam";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mailgun-v3.7.0-linux-amd64.tar.gz";
sha256 = "1nk7lrsc39fxlbwkbnwg9yycmckgvrzdg51zpgys0chk1186kiib";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mailgun-v3.7.1-linux-amd64.tar.gz";
sha256 = "1fl4pm2zlh0s2zv89b6m0qhphan9n0rcbaxid8gh24912h82xa5v";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mysql-v3.2.14-linux-amd64.tar.gz";
@@ -117,16 +117,16 @@
sha256 = "08j0wnd2yzf5qj3n56kl0lbs7jhhy3s0xcg73vz5zfr98nj64mrf";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.19.1-linux-amd64.tar.gz";
sha256 = "127bwpfwkcq9ab0v190m3nr9zjwxbp8wfabm211jfccia2fx00zi";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.19.2-linux-amd64.tar.gz";
sha256 = "12jjgcnjkmyyl09zr3wlc0acp2xnsv1pwz51dhh3v9hfjm4541l9";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-snowflake-v2.13.1-linux-amd64.tar.gz";
sha256 = "02kj74nmwn4axd8jhs8fr4fk71nn2b83byfqdx037cpz2crb8wdq";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-spotinst-v3.128.4-linux-amd64.tar.gz";
sha256 = "0bimhh8c20cpkrv0dfv1w7k54k4gzcmykayx6f9jahc1m0ff8bbr";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-spotinst-v3.129.0-linux-amd64.tar.gz";
sha256 = "1wvvi5s3rkw78b4lv76a60vibwj3hxwn8az0axwnq4qjxcy9v495";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-sumologic-v1.0.11-linux-amd64.tar.gz";
@@ -137,12 +137,12 @@
sha256 = "1xjmxigqak7f31g7hi9ljjw047ymgrkaap4nvi5lzkk37fmj8lk1";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tls-v5.3.0-linux-amd64.tar.gz";
sha256 = "01hdnnhn3hfhx774aimqbmh6fslga2sr5gaj2r2w0sf3nzkg8h0g";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tls-v5.3.1-linux-amd64.tar.gz";
sha256 = "06c90pyq2jb2xx81qcpqjviz3x3f1z5skrxwdjfg68z5330b5vdx";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vault-v7.7.0-linux-amd64.tar.gz";
sha256 = "1i7mnaavps1cqvrvvh4mqp1zp2k817f50sf4wz14yarj8m2id2w2";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vault-v7.8.0-linux-amd64.tar.gz";
sha256 = "03pwdk0yjrnvr5hzd9fz4hvxa7cqfczd5148jvv5064vj214dk0w";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-venafi-v1.12.3-linux-amd64.tar.gz";
@@ -163,32 +163,32 @@
];
x86_64-darwin = [
{
url = "https://get.pulumi.com/releases/sdk/pulumi-v3.228.0-darwin-x64.tar.gz";
sha256 = "0k7q396lvxxcab6hwwl8y47xz9b21hzy2jdjzhql0x69jz6w5qlz";
url = "https://get.pulumi.com/releases/sdk/pulumi-v3.229.0-darwin-x64.tar.gz";
sha256 = "0fvfyy3fnki9vsvaf7c3vsz9q9r1118iqc7g7882cl2j3pqn2yfn";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aiven-v6.51.0-darwin-amd64.tar.gz";
sha256 = "19q09p7kqygdm1j2rvxbzzivyf983pi4frkfak3n63ybkbnxsp43";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-akamai-v10.3.0-darwin-amd64.tar.gz";
sha256 = "08i28x0fp4pxb14klgjdqi05hyw4ilj0iz5ri53mpmviyl1mrmaq";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-akamai-v11.1.0-darwin-amd64.tar.gz";
sha256 = "1r1j115bii4hv22z5pwp1yvcbi41j4mdcvwbn04xjridvrpsp63b";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-alicloud-v3.97.0-darwin-amd64.tar.gz";
sha256 = "0jbz6k9pv9d366q0xj39sg9zxlgl5vv0lb69hbxrm061qldkxnhf";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-alicloud-v3.98.0-darwin-amd64.tar.gz";
sha256 = "0a0j0m8n7smwzapsa7y49fj4qkbr1h5djfd2g6dvzdi66x2w8s1k";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-artifactory-v8.10.3-darwin-amd64.tar.gz";
sha256 = "09yv8i5hlivgm3fm3a8s0xaapwz2pxayfj20vbjv1bpf4ckgin7a";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-auth0-v3.38.0-darwin-amd64.tar.gz";
sha256 = "06yyr3zaj29mhvfsf4fgwip53mk28hrh73va32vkxvry6hn2hmjr";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-auth0-v3.39.0-darwin-amd64.tar.gz";
sha256 = "0f2z8iwma6xlnwdi126sixbf0cd4fni3c0r18x6jczbpxhci8j9m";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v7.23.0-darwin-amd64.tar.gz";
sha256 = "047fvz5j988lxdzf4wnaj36zcj7sj5kwj4flvgp2dbgp0ccz51a1";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v7.24.0-darwin-amd64.tar.gz";
sha256 = "1c4wkmqjd8mfgrn2gr5l2jjfvwq4ailifq532fjrcqfwj740qmhk";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azuread-v6.9.0-darwin-amd64.tar.gz";
@@ -199,40 +199,40 @@
sha256 = "1pvliacpzv58kfi3sq1xa8b16aa14gs23wh1gm12kb8lyrh9cvwf";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v6.33.0-darwin-amd64.tar.gz";
sha256 = "1j7ld0p9bzx9km1fqcs6nqvg62ik1aslfsdcxcri101gvmlvb3m0";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v6.34.0-darwin-amd64.tar.gz";
sha256 = "1siccb0vis674gkjgv55rnww5z4xvcfrhl96gcv9bazbcb5w4ik0";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-cloudflare-v6.13.0-darwin-amd64.tar.gz";
sha256 = "0lhs509pfgh6vmawah7bfwcim0r9qmhjjihk6dxascav86dxd5y7";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-cloudflare-v6.14.0-darwin-amd64.tar.gz";
sha256 = "0f7xci6gkqx6j8xw4kmp6kj41c1xm04cj5vpwzdqi92k2bqm61v2";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-consul-v3.14.0-darwin-amd64.tar.gz";
sha256 = "1h6f2wk1jp7m5xrw0imcpih4awlx82qifl1ih4w6636rzz89q64f";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-consul-v3.14.1-darwin-amd64.tar.gz";
sha256 = "10aazr97qg5k9xdjcbi8gnfg9x6b6df1844dq997pydza88hgw55";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-datadog-v4.68.0-darwin-amd64.tar.gz";
sha256 = "1vi0pry8si8qv44i1dr4756grpmd4l0wrcdysam1y2rcfszy6597";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-datadog-v5.1.0-darwin-amd64.tar.gz";
sha256 = "1rc9pj5p4w9fszxdh8vs8lbajbmjljx08j8nlblm5dxiypm5w5bs";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-digitalocean-v4.63.0-darwin-amd64.tar.gz";
sha256 = "0b1in0w946irmml5n1zm2c5yhjwwbpbrcrpqpk6i6iam1yiwh1l1";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-docker-v4.11.1-darwin-amd64.tar.gz";
sha256 = "1vnsvd74m5ysfhygs56s928hmap4cqy7pwbcclynw4qbwvyznay5";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-docker-v4.11.2-darwin-amd64.tar.gz";
sha256 = "14q83v6nr61gjap1044kglqw99f8injvdqk1b0367jbzcqkgni3g";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-equinix-metal-v3.2.1-darwin-amd64.tar.gz";
sha256 = "1m5lh59h7nck1flzxs9m4n0ag0klk3jmnpf7hc509vffxs89xnjq";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-fastly-v11.4.1-darwin-amd64.tar.gz";
sha256 = "1jyi9mp8dc5hkb493kz4mkhcn9rvz1whj42vfbml5zdnywhq346f";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-fastly-v11.5.0-darwin-amd64.tar.gz";
sha256 = "0ydbgr1p0bxh19qjvayzcw46sw21s7nj0g3r2bh7jgcanbf599vi";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v9.16.0-darwin-amd64.tar.gz";
sha256 = "0qz08sa43ih47j2hxbrkchynf4i6095w704krgg51ghqjljj7rda";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v9.18.0-darwin-amd64.tar.gz";
sha256 = "0im4zkcdchxd3qa129d8bg6j6kli3n2d6z6djg2j51bxba0x91j4";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v6.12.1-darwin-amd64.tar.gz";
@@ -255,12 +255,12 @@
sha256 = "1vzdp5nqz6c24qz1l2m8hgr1xa8jn4v4x29i4gkd688bvf6266dz";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-linode-v5.9.0-darwin-amd64.tar.gz";
sha256 = "100kjik7qvpxc46wckps5w3h07w0gshs5v3i1dh2fzf6inbil5ip";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-linode-v5.10.0-darwin-amd64.tar.gz";
sha256 = "1v17x7mzx2nas9zfbqkz9h49n8j52gw7cz6hci5rzrxxj98fnsh0";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mailgun-v3.7.0-darwin-amd64.tar.gz";
sha256 = "12d3cvbnyc0316w8ghxi14mq7agqp4dd532dkhaly0z1b722phj1";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mailgun-v3.7.1-darwin-amd64.tar.gz";
sha256 = "1ii8mgdiljh9xhk7c8dzzx24s9khdf5n3gwsglrkaf5m2hx24pvn";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mysql-v3.2.14-darwin-amd64.tar.gz";
@@ -275,16 +275,16 @@
sha256 = "1x7ba78w0rq990d6fc9flnzac4l0j0lkwf1lqn3v9i2m42a42pgn";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.19.1-darwin-amd64.tar.gz";
sha256 = "0qqzq2p451znbkjj2zfx2rpj3y5iqk8yvhw74fj7ni6fzbhkdqih";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.19.2-darwin-amd64.tar.gz";
sha256 = "0qglyxagy5djccykcyp75b32vaf8mxswfjxk5wqq1p6wlgdb0mm5";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-snowflake-v2.13.1-darwin-amd64.tar.gz";
sha256 = "1l5x01pv3q9pxg4qrbd0vrh0ssn4an9jabbb7yyjg67gndpz7ns4";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-spotinst-v3.128.4-darwin-amd64.tar.gz";
sha256 = "1jx7v93lnpiva60sc4yq6z8xwc3fg9f8f5y1v8jxcmiyska6r6sl";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-spotinst-v3.129.0-darwin-amd64.tar.gz";
sha256 = "1g7vyqfbfiqzryxyqc651wd8c562j3hg03yvfnw8dbraz9dnz636";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-sumologic-v1.0.11-darwin-amd64.tar.gz";
@@ -295,12 +295,12 @@
sha256 = "1ia6nvcgcwm2263yyyka65f0ja741z1bw6xvf6a0f6fkwkavkbk5";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tls-v5.3.0-darwin-amd64.tar.gz";
sha256 = "0dangd4lw51lyxay2838hwd4jvl8fppfkmgbq67ilmnwcwgrr2p0";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tls-v5.3.1-darwin-amd64.tar.gz";
sha256 = "0v4abvn40j8im1jn598shyxbkknhdcm41li7hz62ky6pglfw59lg";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vault-v7.7.0-darwin-amd64.tar.gz";
sha256 = "0cnafiak99s3sacmxm9psvq19q6aaavlf9bp9skyjx1n3lkqb9jn";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vault-v7.8.0-darwin-amd64.tar.gz";
sha256 = "1xirrbn9zh990j8vxrm8ggld79lbnrg26rw8xzlcypxvb0mkrv9k";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-venafi-v1.12.3-darwin-amd64.tar.gz";
@@ -321,32 +321,32 @@
];
aarch64-linux = [
{
url = "https://get.pulumi.com/releases/sdk/pulumi-v3.228.0-linux-arm64.tar.gz";
sha256 = "104dmcvimrp43mlhjalgah62kpplwx9fr8gb8ncwrsq0ddavdk65";
url = "https://get.pulumi.com/releases/sdk/pulumi-v3.229.0-linux-arm64.tar.gz";
sha256 = "1vd9grcw1wl4b687nknkjnkf5spbxfs6fv7377xkxn0fwz3z4yi5";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aiven-v6.51.0-linux-arm64.tar.gz";
sha256 = "0vnnvb6lyv0xpc3rzc3wr658l3d8w596mpfr5jlbbqpk0hw1dslx";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-akamai-v10.3.0-linux-arm64.tar.gz";
sha256 = "0l3sgb5l0rjxj9msff6ywkvygn3pq96nbif3b85xssq7a0qsvh3c";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-akamai-v11.1.0-linux-arm64.tar.gz";
sha256 = "0v84z83y56lnvrgsmla4qnig8cs57ynilib4ah29wb0dwkxvzamf";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-alicloud-v3.97.0-linux-arm64.tar.gz";
sha256 = "01gyw9rw4qymljprxzjrf7jzxg576zghpb174c85k6dik02bw6bf";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-alicloud-v3.98.0-linux-arm64.tar.gz";
sha256 = "1l7yikjh34ll1jyqx8bhqmh27nf7253yy6sknhnyd5mv8ajkv8cv";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-artifactory-v8.10.3-linux-arm64.tar.gz";
sha256 = "0bnai1xlbf465ilhnl7pgjh3gyqh34f96z4nw5m0g04913dij05j";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-auth0-v3.38.0-linux-arm64.tar.gz";
sha256 = "1qinsdjkiy80x8mssg5crlzz0vqgpyl3mr286048y8q0a2jifkkv";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-auth0-v3.39.0-linux-arm64.tar.gz";
sha256 = "1gaa61y3wflz5g2i0k0iv8k0rvxc22zm6c4w2pj4139yj174ysll";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v7.23.0-linux-arm64.tar.gz";
sha256 = "14j50dr2b4qkaixwcgkhz7a2g7wxndsfjzcfvlbych77ia6hy1y6";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v7.24.0-linux-arm64.tar.gz";
sha256 = "0z6qaw3icdbclmld9nzmvbb1qm55vn2iwjdbs9r95h57jh5hazar";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azuread-v6.9.0-linux-arm64.tar.gz";
@@ -357,40 +357,40 @@
sha256 = "027nbrks3n634nsmlwis1qwklj615ixknr6k5jg0q4wd1mwxhsjm";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v6.33.0-linux-arm64.tar.gz";
sha256 = "1yw7gf2rv729xdcj4r6d50hq5ncj7mvdil6xdizd69vnq1chalwx";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v6.34.0-linux-arm64.tar.gz";
sha256 = "1p59zhn0yjxrl0cw9bh2pym4jg7q3f05jd5bqcsmy17d9vrhj5m0";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-cloudflare-v6.13.0-linux-arm64.tar.gz";
sha256 = "1byamyj38smi0bba1riqd52dpf7z2ghpnqbrc5lqx7ifw70c3csg";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-cloudflare-v6.14.0-linux-arm64.tar.gz";
sha256 = "1x7az4dgd3mw2wi4f6c3pq8k0wbcajjwx927wlg7r5j6scwmcmr3";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-consul-v3.14.0-linux-arm64.tar.gz";
sha256 = "1nzm06sqwkcvi3rsb1f6bmm2fargnz6jcak5h23mc3qazbn3wd00";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-consul-v3.14.1-linux-arm64.tar.gz";
sha256 = "1qbscdfkjbk651hsj954n8b2wcdlmj5rfsq6ybaj3wslmpnzmiqv";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-datadog-v4.68.0-linux-arm64.tar.gz";
sha256 = "05gd0awsw0f6agz4i6nv17lssp4q3p97bwlqnzrcbmlrcg4v2v8v";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-datadog-v5.1.0-linux-arm64.tar.gz";
sha256 = "0fah19z4iiq76pyam7m0gzfhlpd6cl4sbb6gz2gn51vnklgs5blz";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-digitalocean-v4.63.0-linux-arm64.tar.gz";
sha256 = "0k3hcwgshfbfg0jh6qrp0v3nv4w9473sf03dj1llcqmyvrbs9p45";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-docker-v4.11.1-linux-arm64.tar.gz";
sha256 = "18svy29yvd2p1fjhc2f9f0hr0mbvf371lcr58ym7f7xim3hx0bdq";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-docker-v4.11.2-linux-arm64.tar.gz";
sha256 = "1cpz86gqsi6azjj4xc3z16ggyrim0ww5x0w5hl98b9qvn4agxgar";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-equinix-metal-v3.2.1-linux-arm64.tar.gz";
sha256 = "111pia2f5xwkwaqs6p90ri29l5b3ivmahsa1bji4fwyyjyp22h4r";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-fastly-v11.4.1-linux-arm64.tar.gz";
sha256 = "1a9fwnf15l3ld0a17v2p66jxqav4rawhixy6rgs5065nbrf29vys";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-fastly-v11.5.0-linux-arm64.tar.gz";
sha256 = "0lqr69v6wvqbsmy2xgr4nz6dqcpirwzqasdz831hg5xdg37mbhjh";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v9.16.0-linux-arm64.tar.gz";
sha256 = "04gp3pngf5sg8s936sadj1agqbvd8n94cwsj4357wnqnk2di6jds";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v9.18.0-linux-arm64.tar.gz";
sha256 = "1cijwc3zxivz6s7cj15c28nqlvl6k3liqplrcpx21csfw8f8xxid";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v6.12.1-linux-arm64.tar.gz";
@@ -413,12 +413,12 @@
sha256 = "0k32hifaim24rz0ir5nljy58pdk3v9h8qb7vz97k15gq1blyq4l7";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-linode-v5.9.0-linux-arm64.tar.gz";
sha256 = "1hc3fvsiwxnm6jqvbxq29bn1y2iq7q10vrwmkj0kz66iy5h923jh";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-linode-v5.10.0-linux-arm64.tar.gz";
sha256 = "0i43jyxz8g138iky5ik5wmm8zaijx469ck185wiswihcaw6m7wf0";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mailgun-v3.7.0-linux-arm64.tar.gz";
sha256 = "0jsbjp0j4rr6m3qwl8q3jq0rw6r2pfq648h5fza2v031sc5ds216";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mailgun-v3.7.1-linux-arm64.tar.gz";
sha256 = "1k6hl98i33w0cfcr7jxjlah3ssmxk9w8319p2ycwrpmcmjnmra7z";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mysql-v3.2.14-linux-arm64.tar.gz";
@@ -433,16 +433,16 @@
sha256 = "1d23jy8987sm0vxyx74kljs5a5jj4lizi1qssa4729inn7z5293w";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.19.1-linux-arm64.tar.gz";
sha256 = "0ik976ygv03axshcrwr3k3s1zvz90zywzqs6pmk2zs1z3n1vznag";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.19.2-linux-arm64.tar.gz";
sha256 = "035czawc26f09ihcnvcqfjkwrm5zr502yhs3wdqmh4c7kba7f8a6";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-snowflake-v2.13.1-linux-arm64.tar.gz";
sha256 = "1nwkbj76hr23i3s76fxkqnb7hx1d48mzyxmaizgisas6w93r73h7";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-spotinst-v3.128.4-linux-arm64.tar.gz";
sha256 = "1viimvll23ah7wgb9h7whlw0cmqd4azlxcrz3zvjj9ja2da8895n";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-spotinst-v3.129.0-linux-arm64.tar.gz";
sha256 = "1x7sbjh711nwflg5ncphqcl7wc9lfpzw47lbk7391jc5s7ihn00y";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-sumologic-v1.0.11-linux-arm64.tar.gz";
@@ -453,12 +453,12 @@
sha256 = "0y9jwwwr28j28da1lxq7p39csnab7g2b97vpfzgaxi327xbgs2zz";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tls-v5.3.0-linux-arm64.tar.gz";
sha256 = "032nxayggb1bb78nrj5cry91wpd4j2zra0nil1xv5n1dpmmxs5kp";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tls-v5.3.1-linux-arm64.tar.gz";
sha256 = "11l570naqss0wmip7jvs83sxbscimj1nxh40wzfp7rmfmwrhlk64";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vault-v7.7.0-linux-arm64.tar.gz";
sha256 = "0f8jh6clyabcm03531sqnw56npg34f3l8yrpsl23kvrhzgm5zjgr";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vault-v7.8.0-linux-arm64.tar.gz";
sha256 = "1fraas5hwplzfll5ck2q3vq4jqrxl06q04namjy4rbb195159s0l";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-venafi-v1.12.3-linux-arm64.tar.gz";
@@ -479,32 +479,32 @@
];
aarch64-darwin = [
{
url = "https://get.pulumi.com/releases/sdk/pulumi-v3.228.0-darwin-arm64.tar.gz";
sha256 = "1gx7hymc5m1qfyxfddpdxq9jp05ss979qz4nb3ac0y0d5kakcvl9";
url = "https://get.pulumi.com/releases/sdk/pulumi-v3.229.0-darwin-arm64.tar.gz";
sha256 = "0n1kcpgvrj3b0bm207ylf99yy7ixcx5frhcarwz19s3ssbfsynxh";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aiven-v6.51.0-darwin-arm64.tar.gz";
sha256 = "0icxa3m8fm5fprwi24clnq2112r4cjaz5yg898qws71vivx77720";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-akamai-v10.3.0-darwin-arm64.tar.gz";
sha256 = "0hbrmmgh3pbsqcm20lz3kimxwls4s10cqssp19m344f9jwp33chq";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-akamai-v11.1.0-darwin-arm64.tar.gz";
sha256 = "0zsa46x3fqmbicfm6lg10k9ghj40pjq0v889ksqpws2d4jlhbwp7";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-alicloud-v3.97.0-darwin-arm64.tar.gz";
sha256 = "0w3vlxvqnhvzcxdp39mng8cj4ij6gvfhxjnlz6ihagby6i7f370r";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-alicloud-v3.98.0-darwin-arm64.tar.gz";
sha256 = "05n74cdhvl0rm3kmvdrbwx1mr350hcrp8ic21986wlfk23axd53y";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-artifactory-v8.10.3-darwin-arm64.tar.gz";
sha256 = "0f173h5sw4q9w3wswy7p7h2g692fds9m9zzrmim02riqshwgqwwm";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-auth0-v3.38.0-darwin-arm64.tar.gz";
sha256 = "0vgb5zvg5gpv3pfl6nz5wpzhiyy550s99qj80qs83gzlr5gl9xab";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-auth0-v3.39.0-darwin-arm64.tar.gz";
sha256 = "0l7ipd0fha3qdi4454hizs91s7cwwhk6irq0rg0xhfvnsg4mkyd8";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v7.23.0-darwin-arm64.tar.gz";
sha256 = "0sqmk67ba1686dixpdkaq0v1bnplbcj2my9sc5chaa4bbbr8rmks";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v7.24.0-darwin-arm64.tar.gz";
sha256 = "0235p54p2vbb1mdshiqxi20bq5pcdjg58nmy38khagyd60bbj3g5";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azuread-v6.9.0-darwin-arm64.tar.gz";
@@ -515,40 +515,40 @@
sha256 = "0bgv7zbszr2x175x6qm124giplb6a182kabd34kxlp3rddikcyl1";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v6.33.0-darwin-arm64.tar.gz";
sha256 = "1k2qawkqks3r65z5vg3z9nf149lydbvsgwii64ly6gdgipydkf52";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v6.34.0-darwin-arm64.tar.gz";
sha256 = "0kq8zvhsni19rari53rl24ixds7hi1mn0wcams8wxavff43x1xjz";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-cloudflare-v6.13.0-darwin-arm64.tar.gz";
sha256 = "14xbrn320z1zlkpipjxk06fsz6fs5izgfrxrsp8z6r46pkm6mvy1";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-cloudflare-v6.14.0-darwin-arm64.tar.gz";
sha256 = "092pls9brh7sx8jxs14dkw1djnvk7kpn0skj09bdh7m6rg004h53";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-consul-v3.14.0-darwin-arm64.tar.gz";
sha256 = "1mcl4lky4g12pp4y227mxjz6wdffmpwz2n5c7jx84xpjq0ww6hvr";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-consul-v3.14.1-darwin-arm64.tar.gz";
sha256 = "0albxlwafzkyv6z9iab6kcx06a7rv6fjvf1vlr1j3a24dzkmlb25";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-datadog-v4.68.0-darwin-arm64.tar.gz";
sha256 = "06gmag24my89yi995akp45hrhlqv8jj16g9mlzn1mznl1p0qmm74";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-datadog-v5.1.0-darwin-arm64.tar.gz";
sha256 = "1rnp6l80fbgc1dzc643y4xrgcgj6niaq0hrnb4zq257ksjcm6wmx";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-digitalocean-v4.63.0-darwin-arm64.tar.gz";
sha256 = "1a5y2lq6bn4qaqkdbbjjjl8vb3w0nmwrmrxx9rkyyhh1dmf1nd8s";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-docker-v4.11.1-darwin-arm64.tar.gz";
sha256 = "1dp65liavgnakahl8kmzk5hlvg4k0nfks535sdl68f5bkyg2m2m6";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-docker-v4.11.2-darwin-arm64.tar.gz";
sha256 = "0sz3nvjjwy9ryjhbj7c02dz1qlqybcj3kwd8w2a2jlg0ajbkvwmk";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-equinix-metal-v3.2.1-darwin-arm64.tar.gz";
sha256 = "12bzicm43l7yvh02v5fx3z8v46l9i7a9f677735xi5rjbmd2an4c";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-fastly-v11.4.1-darwin-arm64.tar.gz";
sha256 = "1msppdp4navjhkp7lzngmp056y6x3fqb30r6wq5a53kyvi43x0ik";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-fastly-v11.5.0-darwin-arm64.tar.gz";
sha256 = "03ps0dfznmw918mi89v8zflq5fzwv716sax8wka32j4b9nwlmg5v";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v9.16.0-darwin-arm64.tar.gz";
sha256 = "0da15hm5qsh3kk7c37fg4sk1196ra7cz8ksng7cbh150qqq4zmxv";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v9.18.0-darwin-arm64.tar.gz";
sha256 = "0jvd148w3inbzb4l695nwp2ygagr62y2j3izgq2lf3ikaiwvddvx";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v6.12.1-darwin-arm64.tar.gz";
@@ -571,12 +571,12 @@
sha256 = "0w7j7br44f4fdfcpqj2jairf9z65ga5i88yqkxrwliqf605i0b0a";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-linode-v5.9.0-darwin-arm64.tar.gz";
sha256 = "0vvgk7c35fbdldpk2snq4y400g0cz8y9p43s2lar36b9asyq011n";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-linode-v5.10.0-darwin-arm64.tar.gz";
sha256 = "04m3xcxm19kianxmpf9hdw5ay6mkfg251qln8albfzslhlikx054";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mailgun-v3.7.0-darwin-arm64.tar.gz";
sha256 = "09jmkig2k7dg2c9l28z8g2gznbibs2kp12013vvfila6njqvigyi";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mailgun-v3.7.1-darwin-arm64.tar.gz";
sha256 = "0pni3rikp7vai89jix54mc1k1niawxb0kajwwqis9k34f1nf8yir";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mysql-v3.2.14-darwin-arm64.tar.gz";
@@ -591,16 +591,16 @@
sha256 = "16sfcji3ynn02bm6rlyqwdsd61cfrzc9cmdn22wx5rzf9yvs19s3";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.19.1-darwin-arm64.tar.gz";
sha256 = "0ix35xf0l6jn5x9k0ic2jlk5jzyb8a7s34wvwsi24n1aw4cccdaa";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.19.2-darwin-arm64.tar.gz";
sha256 = "1bzw8zl11n9kqn8lz7m42rx3yahagi2r3l153146yi080ndvpsbq";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-snowflake-v2.13.1-darwin-arm64.tar.gz";
sha256 = "05d8pl6yd0vs7hl2af1pnrp8kim7m8fy15iw4xjffj93lwb6a1sc";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-spotinst-v3.128.4-darwin-arm64.tar.gz";
sha256 = "1cjc8zdw57vhhm3fp489whk7sk2hcc0nv7p188w65zwmis5qrdkh";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-spotinst-v3.129.0-darwin-arm64.tar.gz";
sha256 = "1f8m2bczgbmilny71vp9k6vmcz3x2aicafz3nrc6q1lsjadcmbx8";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-sumologic-v1.0.11-darwin-arm64.tar.gz";
@@ -611,12 +611,12 @@
sha256 = "0wmpsw8lm83vlkxk2wyg0dj895yn9zi52qzjam0svcnz5xdhd31x";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tls-v5.3.0-darwin-arm64.tar.gz";
sha256 = "1ym0m3s9zlb66262x8arm3hzk10f3jgdrx3x4v2125xksfh9xmwf";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tls-v5.3.1-darwin-arm64.tar.gz";
sha256 = "1sac633vvm25n2r1hbgk85d4br281i9bqs3r4kd6gqd5qqq3dy9b";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vault-v7.7.0-darwin-arm64.tar.gz";
sha256 = "1l7lf959p5k5cp1c48wximcwwn4mxrsih078bng2r3b8pf906asw";
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vault-v7.8.0-darwin-arm64.tar.gz";
sha256 = "1cdz7s9hij9xmpkmlzszj78b9wand55sivwnk49halbwdrfrjd8x";
}
{
url = "https://api.pulumi.com/releases/plugins/pulumi-resource-venafi-v1.12.3-darwin-arm64.tar.gz";
+2 -2
View File
@@ -18,13 +18,13 @@ in
stdenv.mkDerivation (finalAttrs: {
pname = "qdmr";
version = "0.14.0";
version = "0.14.1";
src = fetchFromGitHub {
owner = "hmatuschek";
repo = "qdmr";
rev = "v${finalAttrs.version}";
hash = "sha256-9YYMU64AWBp3YAyWEQiER0lH8OeI7AczEztw6UHqmOE=";
hash = "sha256-epttTJbqOtkacIu7IfBCAG1aGk02+0Ncalo7wRz+44k=";
};
nativeBuildInputs = [
+4 -18
View File
@@ -1,7 +1,6 @@
{
lib,
fetchFromGitHub,
fetchpatch,
fetchFromCodeberg,
libpulseaudio,
libconfig,
pkg-config,
@@ -28,28 +27,15 @@
gnuradio.pkgs.mkDerivation rec {
pname = "qradiolink";
version = "0.9.1-3";
version = "0.10.2-1";
src = fetchFromGitHub {
src = fetchFromCodeberg {
owner = "qradiolink";
repo = "qradiolink";
tag = version;
hash = "sha256-0inXfeOSVmJYtNhD6WBExjT43STfBjePomKILxoHO6Q=";
hash = "sha256-pouOFi0w5QW3Wn6C5k+JB5wO+tX79rD+SshH+OitsDw=";
};
patches = [
# dmr: add explicit cstdint import
(fetchpatch {
url = "https://github.com/qradiolink/qradiolink/pull/131/commits/bdd3b47708edf42b281fb9e5507d356d475f3df9.patch";
hash = "sha256-Uoi8/IK8yBmfPL7RAkCGuyHdcdJZ+YMxccviY7Z+hXs=";
})
# qmake: find protobuf via pkg-config
(fetchpatch {
url = "https://github.com/qradiolink/qradiolink/pull/132/commits/cd3e4bc188a60bc85693fe3de4540c48f325deb4.patch";
hash = "sha256-ufSStm0pyDkCUIx0SjVVHZhA4gW7Ip6PiexPg34DsCo=";
})
];
preBuild = ''
cd src/ext
protoc --cpp_out=. Mumble.proto
+3 -3
View File
@@ -19,14 +19,14 @@
python3Packages.buildPythonApplication {
pname = "ranger";
version = "1.9.4-unstable-2026-02-25";
version = "1.9.4-unstable-2026-04-02";
pyproject = true;
src = fetchFromGitHub {
owner = "ranger";
repo = "ranger";
rev = "126d3ee487b5c291c49d5ef25176fbe8207d71e3";
hash = "sha256-SRr+vABEm6J+YT0ALw6F0dPrJ0RJQQGRTCbzPhgjB0A=";
rev = "15f607130149540841a0e7700cc4193e80408987";
hash = "sha256-QVTkVMlzeYwOmki7K8iUyHI1NsQkCRhupmw6hzPDhL0=";
};
build-system = with python3Packages; [
+3 -2
View File
@@ -6,14 +6,14 @@
}:
python3Packages.buildPythonApplication (finalAttrs: {
pname = "rclip";
version = "2.0.11";
version = "2.1.6";
pyproject = true;
src = fetchFromGitHub {
owner = "yurijmikhalevich";
repo = "rclip";
tag = "v${finalAttrs.version}";
hash = "sha256-TXJpaMCSKCeOiWPVb9//czux+JV8VlJsiWH8fUb1tkw=";
hash = "sha256-95OiG3I9S9eJHMYkRd9Y52XnCROFV98fvmUs4SRBF4s=";
};
build-system = with python3Packages; [
@@ -24,6 +24,7 @@ python3Packages.buildPythonApplication (finalAttrs: {
numpy
open-clip-torch
pillow
pillow-heif
requests
torch
torchvision
+3 -3
View File
@@ -9,16 +9,16 @@
buildGoModule (finalAttrs: {
pname = "tbls";
version = "1.94.0";
version = "1.94.2";
src = fetchFromGitHub {
owner = "k1LoW";
repo = "tbls";
tag = "v${finalAttrs.version}";
hash = "sha256-XVx2QN6jgtHJwbuwntd9Dr4fwTmaiBUv9JW+b/Wvpxw=";
hash = "sha256-jsMNPtcdrfKO3O2sy+pyFVU4H/HLWVmI3OS43Q6j7AE=";
};
vendorHash = "sha256-hR1YDdhF/YBaJdKioFLqQH7lqkEOPPwdPD6/GLl8hKc=";
vendorHash = "sha256-ShhztdAKbEhooIGgxHig7RptDLCSG64G9ajmXr9hmL8=";
excludedPackages = [ "scripts/jsonschema" ];
+3 -3
View File
@@ -8,16 +8,16 @@
}:
buildGoModule (finalAttrs: {
pname = "treefmt";
version = "2.4.1";
version = "2.5.0";
src = fetchFromGitHub {
owner = "numtide";
repo = "treefmt";
rev = "v${finalAttrs.version}";
hash = "sha256-OhzmgeSTlbChglTAEk7lefVwH1zrfJTc9eroihpPveg=";
hash = "sha256-aZzbw5dQGLNqvfENNX6dtkxgjjMeL53l4mIeVpQpprA=";
};
vendorHash = "sha256-mpUFtc7LBRXevid9KzhCj9RxTUSeNO1XIPVWWvqPS9s=";
vendorHash = "sha256-FoXzUsioqTcdtNNKL9X9MhCXysH+bxabITqOUd+bmHE=";
subPackages = [ "." ];
+2 -2
View File
@@ -8,13 +8,13 @@
buildGo126Module (finalAttrs: {
pname = "tsgolint";
version = "0.19.0";
version = "0.20.0";
src = fetchFromGitHub {
owner = "oxc-project";
repo = "tsgolint";
tag = "v${finalAttrs.version}";
hash = "sha256-f7X/aOaINVLJslOowHoqIL4AmSZjaO7feCGs4df7Kfg=";
hash = "sha256-b89t4tyh9eupl0k47VbPTlP8XdbaKwovBGpUsRZBa28=";
fetchSubmodules = true;
};
+3 -3
View File
@@ -7,16 +7,16 @@
buildGoModule (finalAttrs: {
pname = "vacuum-go";
version = "0.25.2";
version = "0.25.5";
src = fetchFromGitHub {
owner = "daveshanley";
repo = "vacuum";
tag = "v${finalAttrs.version}";
hash = "sha256-SJYOnd9wTIUwK/X8LeXH+Pn09+H8EFzjkkSTINRXdsE=";
hash = "sha256-WvAgKJBVLZbFZ0VDG2a9cq0tZXZcaDZ5ECy9zyS2BXY=";
};
vendorHash = "sha256-RLa63ZvnXJ1bNHrwP9oLznsaSlz7tY7ROtHIML+7Egw=";
vendorHash = "sha256-V09ZrfPnRVNuGhutvn/WhNYTumZbDj+wKviz53Q27dE=";
env.CGO_ENABLED = 0;
ldflags = [
+3 -3
View File
@@ -9,16 +9,16 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "watchexec";
version = "2.5.0";
version = "2.5.1";
src = fetchFromGitHub {
owner = "watchexec";
repo = "watchexec";
tag = "v${finalAttrs.version}";
hash = "sha256-QXoqRJl4eLBE2rmOBvAhlBRE4OavvEWpGMKlBrxwbaU=";
hash = "sha256-Dobb+l24nL01od+KET3PGgDzFaYr1LPhkPrbpA3G6y4=";
};
cargoHash = "sha256-svDmGwI7YYbGdI5/TMJGPo0wVgBF6aDec9C3fYsHxYQ=";
cargoHash = "sha256-ZwF5nNI2ESwgaH129MhcJPlhtmxqwhhQ9W49u9bilRk=";
nativeBuildInputs = [ installShellFiles ];
+2 -2
View File
@@ -14,13 +14,13 @@
}:
buildDotnetModule rec {
pname = "wheelwizard";
version = "2.4.2";
version = "2.4.3";
src = fetchFromGitHub {
owner = "TeamWheelWizard";
repo = "WheelWizard";
tag = version;
hash = "sha256-ayik04mn11NbD4R09O99Yqij6aIjz6DUhpgqKQoGRP4=";
hash = "sha256-WJVEofU41ZoOYLgD2TMPy50KQ44SPuLKS2piRmI9wV8=";
};
postPatch = ''
rm .config/dotnet-tools.json
-10
View File
@@ -71,16 +71,6 @@ let
debugInfo = true;
};
elixir_1_16 = callPackage ../interpreters/elixir/1.16.nix {
inherit erlang;
debugInfo = true;
};
elixir_1_15 = callPackage ../interpreters/elixir/1.15.nix {
inherit erlang;
debugInfo = true;
};
# Remove old versions of elixir, when the supports fades out:
# https://hexdocs.pm/elixir/compatibility-and-deprecations.html
@@ -1,7 +0,0 @@
import ./generic-builder.nix {
version = "1.15.7";
hash = "sha256-6GfZycylh+sHIuiQk/GQr1pRQRY1uBycSQdsVJ0J13k=";
# https://hexdocs.pm/elixir/1.15.0/compatibility-and-deprecations.html#compatibility-between-elixir-and-erlang-otp
minimumOTPVersion = "24";
maximumOTPVersion = "26";
}
@@ -1,7 +0,0 @@
import ./generic-builder.nix {
version = "1.16.3";
hash = "sha256-WUBqoz3aQvBlSG3pTxGBpWySY7I0NUcDajQBgq5xYTU=";
# https://hexdocs.pm/elixir/1.16.0/compatibility-and-deprecations.html#compatibility-between-elixir-and-erlang-otp
minimumOTPVersion = "24";
maximumOTPVersion = "26";
}
@@ -1,6 +0,0 @@
genericBuilder:
genericBuilder {
version = "26.2.5.18";
hash = "sha256-mCkJeRf6PsMsVJXBIpPoHMff5JyVXLSzPzCyLiJtgJo=";
}
+2 -2
View File
@@ -1,6 +1,6 @@
genericBuilder:
genericBuilder {
version = "27.3.4.9";
hash = "sha256-PISjGuGdmlAL9SD58G9nZEFQ6+mL/FpTnJA5bw0Gi0g=";
version = "27.3.4.10";
hash = "sha256-x1f9r1t5Ckk+AVn2P372aWLoDtgqZzNIeOuzjI6hm+g=";
}
+2 -2
View File
@@ -1,6 +1,6 @@
genericBuilder:
genericBuilder {
version = "28.4.1";
hash = "sha256-0J4bNyLwZdP4ac/TzPIQUch0NeNGbcDKaRSnH83C5Lk=";
version = "28.4.2";
hash = "sha256-Xf7FN+LmoVHAfW1tO9XkBcBPsuLb7R7yrSLmiFTsXe8=";
}
@@ -298,7 +298,8 @@ let
# Returns true if the given version exists.
hasVersion =
packages: package: version:
lib.hasAttrByPath [ package (toString version) ] packages;
lib.hasAttrByPath [ package (toString version) ] packages
|| lib.hasAttrByPath [ package "${(toString version)}.0" ] packages;
# Displays a nice error message that includes the available options if a version doesn't exist.
# Note that allPackages can be a list of package sets, or a single package set. Pass a list if
@@ -322,7 +323,7 @@ let
}.
''
else
packageSet.${package}.${toString version};
packageSet.${package}.${toString version} or packageSet.${package}."${toString version}.0";
# Returns true if we should link the specified plugins.
shouldLink =
@@ -546,12 +547,25 @@ lib.recurseIntoAttrs rec {
}
) platformVersions';
sources = map (
version:
deployAndroidPackage {
package = checkVersion allArchives.packages "sources" version;
}
) platformVersions';
# Google is not including sources for API 37+. If the user requests them, don't fail.
sources = lib.filter (source: source != null) (
map (
version:
let
package =
let
version' = builtins.tryEval (checkVersion allArchives.packages "sources" version);
in
if version'.success then version'.value else null;
in
if package == null then
null
else
deployAndroidPackage {
inherit package;
}
) platformVersions'
);
system-images = lib.flatten (
map (
@@ -37,6 +37,7 @@ deployAndroidPackage {
nspr
alsa-lib
waylandpp.lib
libgbm
]
)
++ (with pkgs; [
@@ -128,7 +128,7 @@ pkgs.mkShell rec {
packages=(
"build-tools" "cmdline-tools" \
"platform-tools" "platforms;android-${toString latestSdkVersion}" \
"system-images;android-${toString latestSdkVersion};google_apis;x86_64"
"system-images;android-${toString latestSdkVersion};google_apis_ps16k;x86_64"
)
${lib.optionalString emulatorSupported ''packages+=("emulator")''}
@@ -158,7 +158,6 @@ pkgs.mkShell rec {
for x in $(seq 1 ${lib.versions.major (toString latestSdkVersion)}); do
excluded_packages+=(
"platforms;android-$x"
"sources;android-$x"
"system-images;android-$x"
)
done
@@ -188,7 +187,7 @@ pkgs.mkShell rec {
mkdir -p $ANDROID_USER_HOME
avdmanager delete avd -n testAVD || true
echo "" | avdmanager create avd --force --name testAVD --package 'system-images;android-${toString latestSdkVersion};google_apis;x86_64'
{ echo "" | avdmanager create avd --force --name testAVD --package 'system-images;android-${toString latestSdkVersion};google_apis_ps16k;x86_64'; }
result=$(avdmanager list avd)
if [[ ! $result =~ "Name: testAVD" ]]; then
@@ -187,10 +187,6 @@ pkgs.mkShell rec {
"extras;google;gcm"
)
for x in $(seq ${toString firstSdkVersion} ${toString latestSdkVersion}); do
packages+=("sources;android-$x")
done
${lib.optionalString includeAuto ''packages+=("extras;google;auto")''}
for package in "''${packages[@]}"; do
File diff suppressed because it is too large Load Diff
@@ -10,14 +10,14 @@
buildPythonPackage rec {
pname = "bk7231tools";
version = "2.1.0";
version = "2.1.2";
pyproject = true;
src = fetchFromGitHub {
owner = "tuya-cloudcutter";
repo = "bk7231tools";
tag = "v${version}";
hash = "sha256-+gjcXSkPb6BI3rSZekGWgQcFtAN23tyvZLEKQvtUlFU=";
hash = "sha256-CXX4BcdlUQHPtZYggCn0LaqqEDCWXI7LRZnCWsja+SY=";
};
pythonRelaxDeps = [
@@ -9,12 +9,12 @@
buildPythonPackage rec {
pname = "cloup";
version = "3.0.8";
version = "3.0.9";
pyproject = true;
src = fetchPypi {
inherit pname version;
hash = "sha256-+RwICnJRlt33T+q9YlAmb0Zul/wW3+Iadiz2vGvrPss=";
hash = "sha256-UZ9STTxkBA5JoIZrX8C/1q8+rA09aksrULM6sCR9stc=";
};
nativeBuildInputs = [ setuptools-scm ];
@@ -14,14 +14,14 @@
buildPythonPackage (finalAttrs: {
pname = "ddgs";
version = "9.12.0";
version = "9.13.0";
pyproject = true;
src = fetchFromGitHub {
owner = "deedy5";
repo = "ddgs";
tag = "v${finalAttrs.version}";
hash = "sha256-z6IFwQwtyqKW0mn+z3K1aoFkFoPH0OOofukmTIk5gVs=";
hash = "sha256-AUfPAHRrhO/n6hFyXEfG+X4ukCqIMCJbXSss0jYUYiY=";
};
build-system = [ setuptools ];
@@ -35,9 +35,11 @@ buildPythonPackage (finalAttrs: {
optional-dependencies = {
api = [
fastapi
mcp
uvicorn
];
mcp = [
mcp
];
};
nativeCheckInputs = [ versionCheckHook ];
@@ -16,14 +16,14 @@
buildPythonPackage (finalAttrs: {
pname = "django-rq";
version = "4.0.1";
version = "4.1";
pyproject = true;
src = fetchFromGitHub {
owner = "rq";
repo = "django-rq";
tag = "v${finalAttrs.version}";
hash = "sha256-7V3kZVK9YsJDYrME4LHc1+U2lk1qBJU8Vza7o3JzuU0=";
hash = "sha256-c/elbEi+m3WVGl8137ct1PsxRM397uZNPy9X54b8fmg=";
};
build-system = [ hatchling ];
@@ -15,14 +15,14 @@
}:
buildPythonPackage rec {
pname = "llm-gemini";
version = "0.29";
version = "0.30";
pyproject = true;
src = fetchFromGitHub {
owner = "simonw";
repo = "llm-gemini";
tag = version;
hash = "sha256-6UqQJDPJIprxpZCrPT/pGpghvCWQpseodrJfcKgRtaA=";
hash = "sha256-7WGcpDwxaBr0NkQRSz0pY2GcnNluC2gp6hpomHJ8SPs=";
};
build-system = [ setuptools ];
@@ -8,7 +8,7 @@
buildPythonPackage (finalAttrs: {
pname = "mediawiki-langcodes";
version = "0.2.19";
version = "0.2.20";
pyproject = true;
# Using fetchPypi instead of fetching from source for technical reason.
@@ -16,7 +16,7 @@ buildPythonPackage (finalAttrs: {
src = fetchPypi {
pname = "mediawiki_langcodes";
inherit (finalAttrs) version;
hash = "sha256-NjLtryaAtIgoturRub1FDYQljJN2ZpmpXz0FkiOIxW8=";
hash = "sha256-a6zztQVAUf61XWJ1AUmQYGinK86hSBzVMU9sn0A4DDY=";
};
build-system = [ setuptools ];

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