Merge branch 'staging-next' into staging

This commit is contained in:
Michael Daniels
2026-07-15 19:38:45 -04:00
1677 changed files with 4323 additions and 3314 deletions

View File

@@ -2007,6 +2007,12 @@
githubId = 14838767;
name = "Jacopo Scannella";
};
antoineco = {
email = "hello@acotten.com";
github = "antoineco";
githubId = 3299086;
name = "Antoine Cotten";
};
anton-4 = {
name = "Anton";
github = "Anton-4";
@@ -6797,6 +6803,13 @@
githubId = 77843198;
name = "Vasilis Manetas";
};
Deric-W = {
email = "robo-eric@gmx.de";
github = "Deric-W";
githubId = 42873573;
name = "Eric Wolf";
keys = [ { fingerprint = "ADAA B6F3 A955 5589 D66C CE61 80D2 DA42 8A4A 537F"; } ];
};
DerickEddington = {
email = "derick.eddington@pm.me";
github = "DerickEddington";

View File

@@ -307,7 +307,7 @@ async def commit_changes(
commit_message = "{attrPath}: {oldVersion} -> {newVersion}".format(**change)
if "commitMessage" in change:
commit_message = change["commitMessage"]
elif "commitBody" in change:
if "commitBody" in change:
commit_message = commit_message + "\n\n" + change["commitBody"]
await check_subprocess_output(
"git",

View File

@@ -40,7 +40,6 @@ in
config = lib.mkIf cfg.enable {
environment.systemPackages = with pkgs; [
seatd
sdnotify-wrapper
];
users.groups.seat = lib.mkIf (cfg.group == "seat") { };
@@ -55,7 +54,7 @@ in
Type = "notify";
NotifyAccess = "all";
SyslogIdentifier = "seatd";
ExecStart = "${pkgs.sdnotify-wrapper}/bin/sdnotify-wrapper ${pkgs.seatd.bin}/bin/seatd -n 1 -u ${cfg.user} -g ${cfg.group} -l ${cfg.logLevel}";
ExecStart = "${lib.getExe' pkgs.s6 "s6-notify-socket-from-fd"} ${pkgs.seatd.bin}/bin/seatd -n 1 -u ${cfg.user} -g ${cfg.group} -l ${cfg.logLevel}";
RestartSec = 1;
Restart = "always";
};

View File

@@ -22,17 +22,23 @@ in
config = lib.mkIf cfg.enable {
environment = {
# localectl looks into 00-keyboard.conf
etc."X11/xorg.conf.d/00-keyboard.conf".text = ''
Section "InputClass"
Identifier "Keyboard catchall"
MatchIsKeyboard "on"
Option "XkbModel" "${xcfg.xkb.model}"
Option "XkbLayout" "${xcfg.xkb.layout}"
Option "XkbOptions" "${xcfg.xkb.options}"
Option "XkbVariant" "${xcfg.xkb.variant}"
EndSection
'';
# systemd-localed looks into 00-keyboard.conf
# systemd-localed does not like if Option values are ""
etc."X11/xorg.conf.d/00-keyboard.conf".text =
let
optionLine =
name: value: lib.optionalString (value != null && value != "") ''Option "${name}" "${value}"'';
in
''
Section "InputClass"
Identifier "Keyboard catchall"
MatchIsKeyboard "on"
${optionLine "XkbModel" xcfg.xkb.model}
${optionLine "XkbLayout" xcfg.xkb.layout}
${optionLine "XkbOptions" xcfg.xkb.options}
${optionLine "XkbVariant" xcfg.xkb.variant}
EndSection
'';
systemPackages = with pkgs; [
nixos-icons # needed for gnome and pantheon about dialog, nixos-manual and maybe more
xdg-utils

View File

@@ -149,13 +149,6 @@ in
protocol.encryption.set = allow_incoming,try_outgoing,enable_retry
# Limits for file handle resources, this is optimized for
# an `ulimit` of 1024 (a common default). You MUST leave
# a ceiling of handles reserved for rTorrent's internal needs!
network.http.max_open.set = 50
network.max_open_files.set = 600
network.max_open_sockets.set = 3000
# Memory resource usage (increase if you have a large number of items loaded,
# and/or the available resources to spend)
pieces.memory.max.set = 1800M
@@ -169,15 +162,14 @@ in
execute.nothrow = sh, -c, (cat, "echo >", (session.path), "rtorrent.pid", " ", (system.pid))
# Other operational settings (check & adapt)
encoding.add = utf8
system.umask.set = 0027
system.cwd.set = (cfg.basedir)
network.http.dns_cache_timeout.set = 25
schedule2 = monitor_diskspace, 15, 60, ((close_low_diskspace, 1000M))
schedule = monitor_diskspace, 15, 60, ((close_low_diskspace, 1000M))
# Watch directories (add more as you like, but use unique schedule names)
#schedule2 = watch_start, 10, 10, ((load.start, (cat, (cfg.watch), "start/*.torrent")))
#schedule2 = watch_load, 11, 10, ((load.normal, (cat, (cfg.watch), "load/*.torrent")))
#schedule = watch_start, 10, 10, ((load.start, (cat, (cfg.watch), "start/*.torrent")))
#schedule = watch_load, 11, 10, ((load.normal, (cat, (cfg.watch), "load/*.torrent")))
# Logging:
# Levels = critical error warn notice info debug
@@ -218,6 +210,10 @@ in
RuntimeDirectory = "rtorrent";
RuntimeDirectoryMode = 750;
# rtorrent derives socket limits from this value since 0.16.15; see table in
# https://github.com/rakshasa/rtorrent/wiki/Socket-Manager-and-Resource-Allocation
LimitNOFILE = lib.mkDefault 16384;
CapabilityBoundingSet = [ "" ];
LockPersonality = true;
NoNewPrivileges = true;

View File

@@ -1539,7 +1539,7 @@ in
sftpgo = runTest ./sftpgo.nix;
sfxr-qt = runTest ./sfxr-qt.nix;
sgt-puzzles = runTest ./sgt-puzzles.nix;
shadow = runTest ./shadow.nix;
shadow = import ./shadow { inherit runTest; };
shadowsocks = handleTest ./shadowsocks { };
shadps4 = runTest ./shadps4.nix;
sharkey = runTest ./web-apps/sharkey.nix;
@@ -1684,6 +1684,7 @@ in
systemd-journal = runTest ./systemd-journal.nix;
systemd-journal-gateway = runTest ./systemd-journal-gateway.nix;
systemd-journal-upload = runTest ./systemd-journal-upload.nix;
systemd-localed = runTest ./systemd-localed.nix;
systemd-lock-handler = runTestOn [ "aarch64-linux" "x86_64-linux" ] ./systemd-lock-handler.nix;
systemd-machinectl = runTest ./systemd-machinectl.nix;
systemd-misc = runTest ./systemd-misc.nix;

View File

@@ -0,0 +1,5 @@
{ runTest }:
{
login = runTest ./login.nix;
system = runTest ./system.nix;
}

View File

@@ -0,0 +1,147 @@
{ pkgs, ... }:
let
# Create a Python environment for the controller with all necessary test framework dependencies
controllerPython = pkgs.python3.withPackages (ps: [
ps.flaky
ps.jc
ps.pytest
ps.pytest-mh
ps.pytest-ticket
]);
shadowHostName = "shadowhost";
in
{
name = "shadow-system-tests";
meta.maintainers = with pkgs.lib.maintainers; [ joaosreis ];
nodes = {
# The target host: runs sshd, has shadow and other test dependencies installed, mutable users, and some specific settings to match the expectations of the test suite
shadowhost =
{ pkgs, ... }:
{
networking.hostName = shadowHostName;
services.openssh = {
enable = true;
settings = {
PermitRootLogin = "yes";
PasswordAuthentication = false;
};
};
users.mutableUsers = true;
environment.systemPackages = with pkgs; [
shadow
expect
];
users.defaultUserShell = "/bin/sh";
security.loginDefs.settings = {
PASS_MAX_DAYS = 99999;
PASS_MIN_DAYS = 0;
PASS_WARN_AGE = 7;
USERGROUPS_ENAB = "yes";
CREATE_HOME = "yes";
UID_MIN = 1001;
GID_MIN = 1001;
};
security.pam.services = {
newusers.text = ''
auth required pam_permit.so
account required pam_permit.so
password required pam_permit.so
session required pam_permit.so
'';
};
services.envfs.enable = true;
};
# The controller: runs pytest-mh against the shadow host
controller =
{ pkgs, ... }:
{
environment.systemPackages = [
controllerPython
pkgs.openssh
];
};
};
testScript = ''
import textwrap
start_all()
# ------------------------------------------------------------------
# 1. Generate an SSH keypair on the controller and authorise it
# on the shadow host
# ------------------------------------------------------------------
controller.succeed("mkdir -p /root/.ssh && chmod 700 /root/.ssh")
controller.succeed(
"ssh-keygen -t ed25519 -N \'\' -f /root/.ssh/id_ed25519 2>&1"
)
pub_key = controller.succeed("cat /root/.ssh/id_ed25519.pub").strip()
# Inject the generated public key into the shadow host at runtime
shadowhost.succeed("mkdir -p /root/.ssh && chmod 700 /root/.ssh")
shadowhost.succeed(
f"echo '{pub_key}' >> /root/.ssh/authorized_keys && "
"chmod 600 /root/.ssh/authorized_keys"
)
# ------------------------------------------------------------------
# 2. Make sure the shadow host has a writable /etc/login.defs,
# since the test framework expects to be able to write to it.
# ------------------------------------------------------------------
shadowhost.succeed(
"cp --remove-destination $(readlink -f /etc/login.defs) /etc/login.defs && "
"chmod 644 /etc/login.defs"
)
# ------------------------------------------------------------------
# 3. Copy the upstream test suite onto the controller
# ------------------------------------------------------------------
controller.succeed(
"cp -r ${pkgs.shadow.passthru.testFramework} /root/shadow-tests && "
"chmod -R u+w /root/shadow-tests"
)
# ------------------------------------------------------------------
# 4. Write the mhc.yaml topology config
# This tells pytest-mh where the shadow host is and which role
# it plays. The hostname must match the NixOS node name.
# ------------------------------------------------------------------
controller.succeed(textwrap.dedent("""
cat > /root/shadow-tests/mhc.yaml << 'EOF'
domains:
- id: shadow
hosts:
- hostname: ${shadowHostName}
role: shadow
ssh:
user: root
private_key: /root/.ssh/id_ed25519
EOF
"""))
# ------------------------------------------------------------------
# 5. Run the upstream pytest-mh test suite from the controller
# ------------------------------------------------------------------
shadowhost.wait_for_unit("sshd.service")
# gpasswd tests are disabled, since they rely on specific behavior of the gpasswd command that is not applicable to NixOS
controller.succeed(
"cd /root/shadow-tests && "
"${controllerPython}/bin/pytest "
"--mh-config=mhc.yaml "
"--deselect=tests/test_gpasswd.py "
"-v tests/"
)
'';
}

View File

@@ -0,0 +1,23 @@
{ lib, ... }:
{
name = "systemd-localed";
meta.maintainers = [ lib.maintainers.haansn08 ];
nodes.machine = { ... }: {
# we don't use services.xserver.enable because some window managers like
# niri rely on systemd-localed for the keyboard layout:
# https://niri-wm.github.io/niri/Configuration%3A-Input.html#layout
services.graphical-desktop.enable = true;
services.xserver.xkb.layout = "jp";
};
testScript = ''
machine.start()
machine.wait_for_unit("default.target")
machine.wait_for_unit("dbus.socket")
status, stdout = machine.execute("localectl")
t.assertIn("X11 Layout: jp", stdout)
'';
}

View File

@@ -13,7 +13,7 @@
# nix run --impure --expr 'with import <nixpkgs> {}; jupyter-console.withSingleKernel clojupyter.definition'
# Jupyter notebook:
# nix run --impure --expr 'with import <nixpkgs> {}; jupyter.override { definitions.clojure = clojupyter.definition; }'
# nix shell --impure --expr 'with import <nixpkgs> {}; [ (jupyter.override { definitions.clojure = clojupyter.definition; }) ]' -c jupyter-notebook
let
cljdeps = import ./deps.nix { inherit pkgs; };

View File

@@ -12,7 +12,7 @@
# nix run --impure --expr 'with import <nixpkgs> {}; jupyter-console.withSingleKernel octave-kernel.definition'
# Jupyter notebook:
# nix run --impure --expr 'with import <nixpkgs> {}; jupyter.override { definitions.octave = octave-kernel.definition; }'
# nix shell --impure --expr 'with import <nixpkgs> {}; [ (jupyter.override { definitions.octave = octave-kernel.definition; }) ]' -c jupyter-notebook
let
kernel = callPackage ./kernel.nix {

View File

@@ -7,7 +7,7 @@
# nix run --impure --expr 'with import <nixpkgs> {}; jupyter-console.withSingleKernel wolfram-for-jupyter-kernel.definition'
# Jupyter notebook:
# nix run --impure --expr 'with import <nixpkgs> {}; jupyter.override { definitions.wolfram = wolfram-for-jupyter-kernel.definition; }'
# nix shell --impure --expr 'with import <nixpkgs> {}; [ (jupyter.override { definitions.wolfram = wolfram-for-jupyter-kernel.definition; }) ]' -c jupyter-notebook
let
kernel = callPackage ./kernel.nix { };

View File

@@ -21,22 +21,22 @@ vscode-utils.buildVscodeMarketplaceExtension (finalAttrs: {
sources = {
"x86_64-linux" = {
arch = "linux-x64";
hash = "sha256-YVomTY/KpBcR4dZr0EN4egkuzvQXUCj7RvwgMo88z9Q=";
hash = "sha256-uWghjE/Ue+i2kUD4KedN4NDTllgiZPMFFXbT0RQnGrE=";
};
"aarch64-linux" = {
arch = "linux-arm64";
hash = "sha256-jbTFmXqtdt6+1SdhfOLcnhOhtSESYM9th8k5EJ4Nex4=";
hash = "sha256-pIwEx6+1Wc+MazqJQYA4h9oOqNOOA8MyJcJOd9Bx2ZM=";
};
"aarch64-darwin" = {
arch = "darwin-arm64";
hash = "sha256-YFLVhDckeXIItc+AvHlJ/B45c43Ubi3BKr8gy3Ui68w=";
hash = "sha256-Iq5C55YrV5ud74a218pTPIyq1oJisbDRNNefkzjpGs4=";
};
};
in
{
name = "claude-code";
publisher = "anthropic";
version = "2.1.209";
version = "2.1.210";
}
// sources.${stdenvNoCC.hostPlatform.system}
or (throw "Unsupported system ${stdenvNoCC.hostPlatform.system}");

View File

@@ -2015,8 +2015,8 @@ let
mktplcRef = {
name = "gitlab-workflow";
publisher = "gitlab";
version = "6.84.2";
hash = "sha256-UBoZ6DxT5d7zeTycgmuLomzoVcB7iAnflfxAup6QslI=";
version = "6.85.3";
hash = "sha256-EsQ+95Wo/5F9mEMQ7X36vBgUWlsz5BCOm+7QrGHuepc=";
};
meta = {
description = "GitLab extension for Visual Studio Code";
@@ -5113,8 +5113,8 @@ let
mktplcRef = {
name = "vscode-gradle";
publisher = "vscjava";
version = "3.17.3";
hash = "sha256-heFcGOe10r7y23xyFc/nFKk/nsrX4wc5fT9e4GKGhW0=";
version = "3.18.0";
hash = "sha256-ybMejIJER9HHVh1z+tazgvQ0UIa8eKoJBb7JOLU1Kpw=";
};
meta = {

View File

@@ -4,8 +4,8 @@ vscode-utils.buildVscodeMarketplaceExtension {
mktplcRef = {
name = "mongodb-vscode";
publisher = "mongodb";
version = "1.16.0";
hash = "sha256-cnKYDrExL3yDJkEofWPglzMa50KDMgKQxsM5zK1RaBs=";
version = "1.16.1";
hash = "sha256-UIxXrJpH/Ix4Ev6veumcT/9h1SgZgEXHjnwkOH9ch44=";
};
meta = {

View File

@@ -180,7 +180,7 @@ stdenv.mkDerivation {
meta = {
description = "Native debugger extension for VSCode based on LLDB";
homepage = "https://github.com/vadimcn/vscode-lldb";
license = [ lib.licenses.mit ];
license = lib.licenses.mit;
maintainers = [ ];
platforms = lib.platforms.all;
};

View File

@@ -26,7 +26,7 @@ stdenv.mkDerivation (finalAttrs: {
description = "Small and simple terminal editor core that is meant to be extended through a powerful plugin architecture";
homepage = "https://your-editor.org/";
changelog = "https://github.com/your-editor/yed/blob/${finalAttrs.version}/CHANGELOG.md";
license = with lib.licenses; [ mit ];
license = lib.licenses.mit;
platforms = lib.platforms.unix;
mainProgram = "yed";
};

View File

@@ -365,7 +365,7 @@ stdenv.mkDerivation (
meta = {
inherit version;
homepage = "https://www.winehq.org/";
license = with lib.licenses; [ lgpl21Plus ];
license = lib.licenses.lgpl21Plus;
sourceProvenance = with lib.sourceTypes; [
fromSource
binaryNativeCode # mono, gecko

View File

@@ -21,7 +21,7 @@ stdenv.mkDerivation {
meta = {
description = "Microsoft replacement fonts by the Wine project";
homepage = "https://wiki.winehq.org/Create_Fonts";
license = with lib.licenses; [ lgpl21Plus ];
license = lib.licenses.lgpl21Plus;
platforms = lib.platforms.all;
maintainers = with lib.maintainers; [
avnik

View File

@@ -209,7 +209,7 @@ lib.makeScope pkgs.newScope (
broken = gimp.apiVersion != "2.0";
description = "GIMP plug-in to do the fourier transform";
homepage = "https://people.via.ecp.fr/~remi/soft/gimp/gimp_plugin_en.php3#fourier";
license = with lib.licenses; [ gpl3Plus ];
license = lib.licenses.gpl3Plus;
};
};
@@ -243,7 +243,7 @@ lib.makeScope pkgs.newScope (
broken = lib.versionOlder gimp.version "3";
description = "Suite of gimp plugins for texture synthesis";
homepage = "https://github.com/bootchk/resynthesizer";
license = [ lib.licenses.gpl3Plus ];
license = lib.licenses.gpl3Plus;
};
};

View File

@@ -101,7 +101,7 @@ python3.pkgs.buildPythonApplication {
meta = {
description = "Inkscape extension for machine embroidery design";
homepage = "https://inkstitch.org/";
license = with lib.licenses; [ gpl3Plus ];
license = lib.licenses.gpl3Plus;
maintainers = with lib.maintainers; [
tropf
pluiedev

View File

@@ -838,7 +838,7 @@
}
},
"ungoogled-chromium": {
"version": "150.0.7871.114",
"version": "150.0.7871.124",
"deps": {
"depot_tools": {
"rev": "f4fadaf6a5ba1bced9d3d9021060667b563bf583",
@@ -850,16 +850,16 @@
"hash": "sha256-/1A+DkzAQj2zGPe/A/G0Z3VrYJXUxq4Hd/+d/o5p3G8="
},
"ungoogled-patches": {
"rev": "150.0.7871.114-1",
"hash": "sha256-qvAtrj013U44vU+U3JLuItAPbgtHwm9Kq7hU2NLYDaE="
"rev": "150.0.7871.124-1",
"hash": "sha256-3dwDG3YuX/l5bOLcC3lICM2qmGnwVAPPJraDRaHZSe8="
},
"npmHash": "sha256-pF0JtwFpPC4/fodbhSJnQKkczA9WlDg4VqEAy9aDVLg="
},
"DEPS": {
"src": {
"url": "https://chromium.googlesource.com/chromium/src.git",
"rev": "f405107495a07cb1bfcf687d4af8d91117098db6",
"hash": "sha256-VdDnFbE+/leFzR/PqR3ColKKqwkvuY/LsFje0nrwiXU=",
"rev": "9261fd0a595ac4964ea84e6bd4a025c1173a2ffa",
"hash": "sha256-YKkZfxFZ7mitD6YqJZW+NQByq71UVb0jCFIBXj0SyzU=",
"recompress": true
},
"src/third_party/clang-format/script": {
@@ -929,8 +929,8 @@
},
"src/third_party/angle": {
"url": "https://chromium.googlesource.com/angle/angle.git",
"rev": "8d3c5a8caebd836b99fa32062951a401910eba33",
"hash": "sha256-7X8FSWCA+BpAXbUPvjPyiGagmVXsadRGAY5haAEzRL8="
"rev": "13e691adf3d4d3ebee2f7239731a07d3b9704956",
"hash": "sha256-fbjREn3D+quRRADGwR7V65BZt5b+1DgnsG4ZMhwGq6o="
},
"src/third_party/angle/third_party/glmark2/src": {
"url": "https://chromium.googlesource.com/external/github.com/glmark2/glmark2",
@@ -1389,8 +1389,8 @@
},
"src/third_party/libyuv": {
"url": "https://chromium.googlesource.com/libyuv/libyuv.git",
"rev": "3c5fa6ef272f6077d76816ee3d6a697ef1d6d272",
"hash": "sha256-FXFSC9dRb/KhSQdhJUqKEUpZbzU8ZpVnoSXtF/HPiJI="
"rev": "8aeb3a9ca36341a640528e59b34b5d641080dca8",
"hash": "sha256-FGl0xK7ooaRFzFBxuV6oOu3h1x2b/myLLO2En3xgVCk="
},
"src/third_party/lss": {
"url": "https://chromium.googlesource.com/linux-syscall-support.git",
@@ -1494,8 +1494,8 @@
},
"src/third_party/skia": {
"url": "https://skia.googlesource.com/skia.git",
"rev": "14d05ec761901b6e9e9193af8b347ab3a7f6fed0",
"hash": "sha256-KZGrztOKaT368KSCxiJAqnsgINpNODUlaXnH/maQNIA="
"rev": "bee4c917220040e147f14964635ff92ce6c5a3f6",
"hash": "sha256-SWmoX+sNaw4KnlTBPt63uBSYfQavJejB3+Vlw/gtWX8="
},
"src/third_party/smhasher/src": {
"url": "https://chromium.googlesource.com/external/smhasher.git",
@@ -1664,8 +1664,8 @@
},
"src/v8": {
"url": "https://chromium.googlesource.com/v8/v8.git",
"rev": "ce0af5c0d181678bcda077c68d4beaec2854ad16",
"hash": "sha256-gjuH2HQAC0poQileS8JLusocBDoShuaQ9pbaAXmFj4g="
"rev": "209c9cea0db17d8caf23e9d2c7de08c351609744",
"hash": "sha256-3jUyRERu1r+Fl2uSAaRchV2L99XLp8XO9DHctk0lMjY="
},
"src/agents/shared": {
"url": "https://chromium.googlesource.com/chromium/agents.git",

View File

@@ -39,7 +39,6 @@ let
i686-linux = "linux-i686";
x86_64-linux = "linux-x86_64";
aarch64-linux = "linux-aarch64";
# bundles are universal and can be re-used for both darwin architectures
aarch64-darwin = "mac";
};

View File

@@ -32,7 +32,7 @@ buildGoModule rec {
meta = {
description = "Helm plugin which maps deprecated or removed Kubernetes APIs in a release to supported APIs";
homepage = "https://github.com/helm/helm-mapkubeapis";
license = with lib.licenses; [ asl20 ];
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ aos ];
};
}

View File

@@ -40,8 +40,8 @@ stdenv.mkDerivation rec {
runHook preInstall
install -dm755 $out/helm-secrets $out/helm-secrets/scripts
install -m644 -Dt $out/helm-secrets plugin.yaml
cp -r scripts/* $out/helm-secrets/scripts
install -m644 -Dt $out/helm-secrets plugins/helm-secrets-cli/plugin.yaml
cp -r plugins/helm-secrets-cli/scripts/* $out/helm-secrets/scripts
wrapProgram $out/helm-secrets/scripts/run.sh \
--prefix PATH : ${
lib.makeBinPath [

View File

@@ -45,13 +45,13 @@
"vendorHash": "sha256-031RZo1EqWrt79NvdrrZ9FW/E+mfwkGmr7wyMYX4SHg="
},
"aliyun_alicloud": {
"hash": "sha256-PF/mGGoO8voHyUiUN3qTOsBEJ0r6TBWa+p1P4vgliDs=",
"hash": "sha256-G52l+5WlcxSNflx0ioD0jEKI1GBWe5D4qW8VH8k6uTA=",
"homepage": "https://registry.terraform.io/providers/aliyun/alicloud",
"owner": "aliyun",
"repo": "terraform-provider-alicloud",
"rev": "v1.284.0",
"rev": "v1.285.0",
"spdx": "MPL-2.0",
"vendorHash": "sha256-sESuNlWNyjjGYb7z+tQF7RGBgicnPISuwXRzB+QJ7E4="
"vendorHash": "sha256-sZeXHTrMUUPllPzvpbFjwA5FjFJXnO1k5h9B5i8U+vs="
},
"aminueza_minio": {
"hash": "sha256-4b5K2Hyy26euJct1/0dxC39DMM41W6+jdJS68/d4yCw=",
@@ -427,13 +427,13 @@
"vendorHash": "sha256-ZbU2z7qUHPR7vDSflesSjgK7x3LYXVe/gnVsy19q6Bs="
},
"fortinetdev_fortios": {
"hash": "sha256-w7LxnOEAoeJKyicI8Bfd2yH+3oTz3ZVBnskbSEgZBO4=",
"hash": "sha256-etGi9KDbmET8Eh4DPJkNA/HbjR+1VUBADlf3MKWbqkc=",
"homepage": "https://registry.terraform.io/providers/fortinetdev/fortios",
"owner": "fortinetdev",
"repo": "terraform-provider-fortios",
"rev": "1.24.1",
"rev": "1.25.0",
"spdx": "MPL-2.0",
"vendorHash": "sha256-V+D/D+i1xbPp9IAfrAds2rNv5t/aXQxPwH9vY09DsMo="
"vendorHash": "sha256-ZU05thGO6uUsAxEi/aMQFxlQZ57okGfDEHx/+wNe+x8="
},
"gavinbunney_kubectl": {
"hash": "sha256-UQ/xvhs7II+EGH5bKdrVC47hp5dhLqQZeqSBz06ho1s=",

View File

@@ -1,38 +0,0 @@
{
stdenvNoCC,
lib,
fetchzip,
}:
stdenvNoCC.mkDerivation rec {
pname = "ripcord";
version = "0.4.29";
src = fetchzip {
url = "https://cancel.fm/dl/Ripcord_Mac_${version}.zip";
sha256 = "sha256-v8iydjLBjFN5LuctpcBpEkhSICxPhLKzLjSASWtsQok=";
stripRoot = false;
};
dontBuild = true;
dontFixup = true; # modification is not allowed by the license https://cancel.fm/ripcord/shareware-redistribution/
installPhase = ''
runHook preInstall
mkdir -p $out/Applications
cp -r $src/Ripcord.app $out/Applications/
runHook postInstall
'';
meta = {
description = "Desktop chat client for Slack and Discord";
homepage = "https://cancel.fm/ripcord/";
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
# See: https://cancel.fm/ripcord/shareware-redistribution/
license = lib.licenses.unfreeRedistributable;
maintainers = with lib.maintainers; [ mikroskeem ];
platforms = [ ];
};
}

View File

@@ -39,7 +39,6 @@ let
mozillaPlatforms = {
x86_64-linux = "linux-x86_64";
# bundles are universal and can be re-used for both darwin architectures
aarch64-darwin = "mac";
};

View File

@@ -35,7 +35,7 @@ let
meta = {
homepage = "https://github.com/kodi-game/controller-topology-project";
description = "Models how controllers connect to and map to each other for all gaming history";
license = with lib.licenses; [ odbl ];
license = lib.licenses.odbl;
teams = [ lib.teams.kodi ];
};
};

View File

@@ -36,13 +36,13 @@ let
in
stdenv.mkDerivation rec {
pname = "advanced-scene-switcher";
version = "1.34.2";
version = "1.35.1";
src = fetchFromGitHub {
owner = "WarmUpTill";
repo = "SceneSwitcher";
rev = version;
hash = "sha256-BZYJ5ZZbla4nnpKdZAQPrqd+g1aeLMcsnAvyXfmm4yU=";
hash = "sha256-gfJtkX6OGqy+hUXvLXaOETvfIX+TRNEj0IwZnE9t81E=";
};
nativeBuildInputs = [

View File

@@ -54,7 +54,7 @@ stdenv.mkDerivation rec {
meta = {
description = "Network A/V plugin for OBS Studio (formerly obs-ndi)";
homepage = "https://github.com/DistroAV/DistroAV";
license = with lib.licenses; [ gpl2 ];
license = lib.licenses.gpl2;
maintainers = with lib.maintainers; [ globule655 ];
platforms = lib.platforms.linux;
};

View File

@@ -413,14 +413,6 @@ in
assert includeFortifyHeaders' -> fortify-headers != null;
# Ensure bintools matches
assert libc_bin == bintools.libc_bin;
assert libc_dev == bintools.libc_dev;
assert libc_lib == bintools.libc_lib;
assert nativeTools == bintools.nativeTools;
assert nativeLibc == bintools.nativeLibc;
assert nativePrefix == bintools.nativePrefix;
stdenvNoCC.mkDerivation {
pname = targetPrefix + (if name != "" then name else "${ccName}-wrapper");
version = optionalString (cc != null) ccVersion;
@@ -490,9 +482,21 @@ stdenvNoCC.mkDerivation {
# This is a quick fix unblock builds broken by https://github.com/NixOS/nixpkgs/pull/370750.
dontCheckForBrokenSymlinks = true;
unpackPhase = ''
src=$PWD
'';
# Ensure bintools matches. This is done here rather than at top level
# so that evaluating the derivation's metadata (such as `name`)
# doesn't force the comparisons, which cause the outPaths of the
# compared derivations to be computed and thus .drv files to be
# written to the store.
unpackPhase =
assert libc_bin == bintools.libc_bin;
assert libc_dev == bintools.libc_dev;
assert libc_lib == bintools.libc_lib;
assert nativeTools == bintools.nativeTools;
assert nativeLibc == bintools.nativeLibc;
assert nativePrefix == bintools.nativePrefix;
''
src=$PWD
'';
wrapper = ./cc-wrapper.sh;

View File

@@ -1196,15 +1196,12 @@ rec {
])
// {
interpreter =
if pythonPackages != pkgs.pypy2Packages || pythonPackages != pkgs.pypy3Packages then
if libraries == [ ] then
python.interpreter
else if (lib.isFunction libraries) then
(python.withPackages libraries).interpreter
else
(python.withPackages (ps: libraries)).interpreter
if libraries == [ ] then
python.interpreter
else if (lib.isFunction libraries) then
(python.withPackages libraries).interpreter
else
python.interpreter;
(python.withPackages (ps: libraries)).interpreter;
check = optionalString (python.isPy3k && doCheck) (
writeDash "pythoncheck.sh" ''
exec ${buildPythonPackages.flake8}/bin/flake8 --show-source ${ignoreAttribute} "$1"

View File

@@ -78,15 +78,6 @@ index da6428c..682842d 100644
argv[1] = "-s";
argv[2] = shell;
argv[3] = "--";
@@ -3163,7 +3163,7 @@ user_change_icon_file_classic_authorized_cb (Daemon *daemon,
return;
}
- argv[0] = "/bin/cat";
+ argv[0] = "@coreutils@/bin/cat";
argv[1] = filename;
argv[2] = NULL;
@@ -3279,7 +3279,7 @@ user_change_locked_authorized_cb (Daemon *daemon,
} else {
const gchar *argv[5];

View File

@@ -9,7 +9,6 @@
gobject-introspection,
polkit,
systemdLibs,
coreutils,
meson,
mesonEmulatorHook,
dbus,
@@ -24,7 +23,7 @@
stdenv.mkDerivation (finalAttrs: {
pname = "accountsservice";
version = "26.13.3";
version = "26.27.3";
outputs = [
"out"
@@ -36,13 +35,13 @@ stdenv.mkDerivation (finalAttrs: {
owner = "accountsservice";
repo = "accountsservice";
tag = finalAttrs.version;
hash = "sha256-ZIfkBlEaITX2rDcV5al4e2IFP238MXOlWeGoh+3+DoQ=";
hash = "sha256-/n0YCPZaf1SsTScidFUZcxfJkpv/+Bnb6Z7oKL+clgE=";
};
patches = [
# Hardcode dependency paths.
(replaceVars ./fix-paths.patch {
inherit shadow coreutils;
inherit shadow;
})
# Do not try to create directories in /var, that will not work in Nix sandbox.

View File

@@ -20,7 +20,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
meta = {
description = "Apple's actool reimplementation";
homepage = "https://github.com/viraptor/actool";
license = [ lib.licenses.mit ];
license = lib.licenses.mit;
mainProgram = "actool";
maintainers = [ lib.maintainers.viraptor ];
};

View File

@@ -17,7 +17,7 @@ buildGoModule (finalAttrs: {
description = "TUI-based file manager for the Android Debug Bridge";
homepage = "https://github.com/darkhz/adbtuifm";
changelog = "https://github.com/darkhz/adbtuifm/releases/tag/v${finalAttrs.version}";
license = with lib.licenses; [ mit ];
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ daru-san ];
mainProgram = "adbtuifm";
platforms = lib.platforms.linux ++ lib.platforms.darwin;

View File

@@ -46,7 +46,7 @@ python3.pkgs.buildPythonApplication {
description = "Tool to find misconfiguration through LDAP";
mainProgram = "adenum";
homepage = "https://github.com/SecuProject/ADenum";
license = with lib.licenses; [ gpl3Only ];
license = lib.licenses.gpl3Only;
maintainers = with lib.maintainers; [ fab ];
};
}

View File

@@ -28,7 +28,7 @@ buildGoModule (finalAttrs: {
changelog = "https://github.com/m0n1x90/ADReaper/releases/tag/ADReaperv${finalAttrs.version}";
# Upstream doesn't have a license yet
# https://github.com/AidenPearce369/ADReaper/issues/2
license = with lib.licenses; [ unfree ];
license = lib.licenses.unfree;
maintainers = with lib.maintainers; [ fab ];
mainProgram = "ADReaper";
};

View File

@@ -43,7 +43,6 @@ stdenvNoCC.mkDerivation (
license = lib.licenses.mit;
maintainers = with lib.maintainers; [
richar
redyf
xiaoxiangmoe
];
platforms = [

View File

@@ -2,18 +2,19 @@
lib,
stdenvNoCC,
fetchFromGitHub,
versionCheckHook,
nix-update-script,
}:
stdenvNoCC.mkDerivation rec {
pname = "safehouse";
version = "0.10.1";
version = "0.11.0";
src = fetchFromGitHub {
owner = "eugene1g";
repo = "agent-safehouse";
rev = "v" + version;
hash = "sha256-Nm04UnyQ2mVLkIIEspDd2vbdcJxZ17MH07fW6PvokJI=";
hash = "sha256-2GWxh5J9qqudc2QM/CACXpqJLcNULKSfTAHBzR++UAE=";
};
postPatch = "patchShebangs scripts bin";
@@ -37,12 +38,18 @@ stdenvNoCC.mkDerivation rec {
runHook postInstall
'';
doInstallCheck = true;
nativeInstallCheckInputs = [ versionCheckHook ];
meta = {
description = "Sandbox your local AI agents so they can read/write only what they need";
homepage = "https://github.com/eugene1g/agent-safehouse";
mainProgram = "safehouse";
license = lib.licenses.asl20;
platforms = lib.platforms.darwin;
maintainers = with lib.maintainers; [ myzel394 ];
maintainers = with lib.maintainers; [
myzel394
Br1ght0ne
];
};
}

View File

@@ -39,7 +39,7 @@ python3.pkgs.buildPythonApplication (finalAttrs: {
mainProgram = "aiodnsbrute";
homepage = "https://github.com/blark/aiodnsbrute";
changelog = "https://github.com/blark/aiodnsbrute/releases/tag/v${finalAttrs.version}";
license = with lib.licenses; [ gpl3Only ];
license = lib.licenses.gpl3Only;
maintainers = with lib.maintainers; [ fab ];
};
})

View File

@@ -42,7 +42,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
'';
homepage = "https://v2.airbuddy.app";
changelog = "https://support.airbuddy.app/articles/airbuddy-2-changelog";
license = with lib.licenses; [ unfree ];
license = lib.licenses.unfree;
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
maintainers = with lib.maintainers; [ stepbrobd ];
platforms = [

View File

@@ -100,7 +100,7 @@ stdenv.mkDerivation (finalAttrs: {
description = "Aleph One is the open source continuation of Bungies Marathon 2 game engine";
mainProgram = "alephone";
homepage = "https://alephone.lhowon.org/";
license = [ lib.licenses.gpl3 ];
license = lib.licenses.gpl3;
platforms = lib.platforms.linux;
};

View File

@@ -8,16 +8,16 @@
buildGoModule (finalAttrs: {
pname = "aliae";
version = "0.26.6";
version = "1.1.1";
src = fetchFromGitHub {
owner = "jandedobbeleer";
repo = "aliae";
tag = "v${finalAttrs.version}";
hash = "sha256-W/jj2YQc6M0ro4groCynly2stjv2FLAMvIopnQYCngY=";
hash = "sha256-/n20oNQGcfji2whdl/DaUUf2kgiVZMB73veUfOr9EqU=";
};
vendorHash = "sha256-8YTyhjF0p2l76sowq92ts5TjjcARToOfJN9nlFu19L4=";
vendorHash = "sha256-qY12bkwa8lyHtS7AdvkKuAmwDRyn5am2aU6wy8GE4Wk=";
sourceRoot = "${finalAttrs.src.name}/src";

View File

@@ -7,16 +7,16 @@
buildNpmPackage rec {
pname = "all-the-package-names";
version = "2.0.2495";
version = "2.0.2503";
src = fetchFromGitHub {
owner = "nice-registry";
repo = "all-the-package-names";
tag = "v${version}";
hash = "sha256-65UbcJXOUZVDEtjDy0PkRLPIlhk8/WxItDeyiULLpNY=";
hash = "sha256-UtwbQXhX8dmmA6dVuVFcMQkM98kOt/U//OAVMGBImDU=";
};
npmDepsHash = "sha256-Vv3rJBDRSwWnbYFO01M0rLJM3b2gP0z8wAi9T2nRwxQ=";
npmDepsHash = "sha256-V7MWSEJT2RtYE1iYJHj2ltrfzke+GO1PfT/wo+MqlZk=";
passthru.updateScript = nix-update-script { };

View File

@@ -1,38 +0,0 @@
From efdbecaf721ccb217ece34a5105eaac68e27aa51 Mon Sep 17 00:00:00 2001
From: Max Karou <maxkarou@protonmail.com>
Date: Sun, 4 Jan 2026 01:47:51 +0100
Subject: [PATCH] sed_version: remove word boundary assertions
Word boundary assertions (\b) are GNU regex extensions that may fail
on systems using non-glibc C libraries (e.g., musl, macOS).
This was previously fixed in replace_regex() via NixOS/nixpkgs#388412,
which was subsequently upstreamed in amber-lang/amber#686.
Changes in amber-lang/amber#717 reintroduced the same portability issue.
---
src/std/text.ab | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/std/text.ab b/src/std/text.ab
index 5f2d935..a5dac3f 100644
--- a/src/std/text.ab
+++ b/src/std/text.ab
@@ -51,12 +51,12 @@ const SED_VERSION_BUSYBOX = 2
fun sed_version(): Int {
// We can't match against a word "GNU" because
// alpine's busybox sed returns "This is not GNU sed version"
- trust $ re='\bCopyright\b.+\bFree Software Foundation\b'; [[ \$(sed --version 2>/dev/null) =~ \$re ]] $
+ trust $ re='Copyright.+Free Software Foundation'; [[ \$(sed --version 2>/dev/null) =~ \$re ]] $
if status == 0 {
return SED_VERSION_GNU
}
// On BSD single `sed` waits for stdin. We must use `sed --help` to avoid this.
- trust $ re='\bBusyBox\b'; [[ \$(sed --help 2>&1) =~ \$re ]] $
+ trust $ re='BusyBox'; [[ \$(sed --help 2>&1) =~ \$re ]] $
if status == 0 {
return SED_VERSION_BUSYBOX
}
--
2.51.2

View File

@@ -4,38 +4,30 @@
rustPlatform,
bc,
util-linux,
gnused,
makeWrapper,
installShellFiles,
versionCheckHook,
stdenv,
runCommand,
amber-lang,
nix-update-script,
bash,
ksh,
zsh,
}:
rustPlatform.buildRustPackage rec {
pname = "amber-lang";
version = "0.5.1-alpha";
version = "0.6.0-alpha";
src = fetchFromGitHub {
owner = "amber-lang";
repo = "amber";
tag = version;
hash = "sha256-v1uJe3vVGKXaZcQzdoYzu/bJKMQnS4IYET4QLPW+J8Y=";
hash = "sha256-pyMsxb9XPtseroH2MORhMOg9+iaLyoxmgpUTCej+i+Y=";
};
patches = [
# Upstreamed in #995, can be removed in >= 0.5.2
# github.com/amber-lang/amber/pull/995
./fix_word_boundaries.patch
];
cargoHash = "sha256-aXcxlmmDYLFbyRJYyGE1gbQMbdysHx4iWXsrUj10Eco=";
preConfigure = ''
substituteInPlace src/compiler.rs \
--replace-fail 'Command::new("/usr/bin/env")' 'Command::new("env")'
'';
cargoHash = "sha256-7TZIRg4NK2uOivUUg09T5mbxrNlRmmVyec2xhmzSNvY=";
nativeBuildInputs = [
makeWrapper
@@ -43,15 +35,23 @@ rustPlatform.buildRustPackage rec {
];
nativeCheckInputs = [
bash
bc
# 'rev' in generated bash script of test
# tests::validity::variable_ref_function_invocation
util-linux
];
preCheck = ''
substituteInPlace src/tests/cli.rs \
--replace-fail 'Command::new(amber_bin())' "Command::new(\"target/${stdenv.targetPlatform.rust.cargoShortTarget}/$cargoBuildType/amber\")"
substituteInPlace src/tests/cli.rs \
--replace-fail 'cmd.env("AMBER_SHELL", "/bin/bash")' 'cmd.env("AMBER_SHELL", "bash")'
'';
checkFlags = [
"--skip=tests::extra::download"
"--skip=tests::formatter::all_exist"
"--skip=tests::stdlib::test_stdlib_src_tests_stdlib_http_fetch_ab"
];
postInstall = ''
@@ -62,23 +62,46 @@ rustPlatform.buildRustPackage rec {
--bash <($out/bin/amber completion)
'';
nativeInstallCheckInputs = [
versionCheckHook
];
doInstallCheck = true;
passthru = {
updateScript = nix-update-script { };
tests.run = runCommand "amber-lang-eval-test" { nativeBuildInputs = [ amber-lang ]; } ''
diff -U3 --color=auto <(amber eval 'echo "Hello, World"') <(echo 'Hello, World')
touch $out
'';
updateScript = nix-update-script { extraArgs = [ "--version=unstable" ]; };
tests =
let
testHelloWorld =
type: pkg:
runCommand "amber-lang-test-eval-hello-world-${type}"
{
nativeBuildInputs = [
amber-lang
pkg
];
}
''
diff -U3 --color=auto <(amber eval --target ${type} 'echo("Hello, World")') <(echo 'Hello, World')
touch $out
'';
in
{
eval-hello-world-bash = testHelloWorld "bash" bash;
eval-hello-world-bash-3_2 = testHelloWorld "bash-3.2" bash;
eval-hello-world-ksh = testHelloWorld "ksh" ksh;
eval-hello-world-zsh = testHelloWorld "zsh" zsh;
};
};
meta = {
description = "Programming language compiled to bash";
homepage = "https://amber-lang.com";
license = lib.licenses.gpl3Plus;
license = lib.licenses.lgpl3Only;
mainProgram = "amber";
maintainers = with lib.maintainers; [
cafkafk
aleksana
ilai-deutel
];
platforms = lib.platforms.unix;
};
}

View File

@@ -26,7 +26,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
meta = {
description = "Code search-and-replace tool";
homepage = "https://github.com/dalance/amber";
license = with lib.licenses; [ mit ];
license = lib.licenses.mit;
maintainers = [ lib.maintainers.bdesham ];
};
})

View File

@@ -9,13 +9,13 @@
python3Packages.buildPythonApplication (finalAttrs: {
pname = "amd-debug-tools";
version = "0.2.18";
version = "0.2.20";
pyproject = true;
src = fetchgit {
url = "https://git.kernel.org/pub/scm/linux/kernel/git/superm1/amd-debug-tools.git";
tag = finalAttrs.version;
hash = "sha256-qBgQFjiWFRKVTsIx0aLZC9AQWsVzgbJGOPGG6ojKoDE=";
hash = "sha256-JDacCakZC+4N4IDAODWLSuensAtFArl052I4weK/zJQ=";
};
build-system = with python3Packages; [

View File

@@ -27,7 +27,7 @@ buildGoModule (finalAttrs: {
description = "Fancy terminal browser for the Gemini protocol";
mainProgram = "amfora";
homepage = "https://github.com/makew0rld/amfora";
license = with lib.licenses; [ gpl3 ];
license = lib.licenses.gpl3;
maintainers = with lib.maintainers; [ deifactor ];
changelog = "https://github.com/makew0rld/amfora/blob/v${finalAttrs.version}/CHANGELOG.md";
};

View File

@@ -1,8 +1,8 @@
{
lib,
stdenv,
rustPlatform,
fetchFromGitHub,
fetchpatch,
}:
rustPlatform.buildRustPackage (finalAttrs: {
@@ -19,6 +19,17 @@ rustPlatform.buildRustPackage (finalAttrs: {
cargoHash = "sha256-oEgWfklxjP8+TxrhDKJgcTsanpqJpEiHXJyir8neYj8=";
# Upstream patch to fix cargo metadata discovery on macOS Nix sandboxes.
# Replaces fragile subprocess-cwd approach with in-process manifest path
# resolution. Remove on next version bump (included in v1.1.3+).
# See: https://github.com/otter-sec/anchor/pull/4757
patches = [
(fetchpatch {
url = "https://github.com/otter-sec/anchor/commit/25bf2112b67d84e5bc406d7eac2919c90d8e54ed.patch";
hash = "sha256-q5OGNoUGPuCNHgaZNo9fmUxqQnFH2MhRW4ZefX+Of0Y=";
})
];
# Only build the anchor-cli package
cargoBuildFlags = [
"-p"
@@ -31,16 +42,6 @@ rustPlatform.buildRustPackage (finalAttrs: {
"anchor-cli"
];
# These tests use tempdir + cargo metadata subprocess which fails on Darwin
# sandboxes due to getcwd() differences (XNU vs Linux). Tracked upstream at
# https://github.com/otter-sec/anchor/issues/4751
checkFlags = map (t: "--skip=${t}") (
lib.optionals stdenv.hostPlatform.isDarwin [
"program::tests::discover_solana_programs_finds_sibling_programs_from_nested_member"
"program::tests::discover_solana_programs_lists_all_members_from_nested_member"
]
);
meta = {
description = "Solana Sealevel Framework";
homepage = "https://github.com/otter-sec/anchor";

View File

@@ -55,7 +55,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
meta = {
description = "Auto Nix GC Root Retention";
homepage = "https://github.com/linyinfeng/angrr";
license = [ lib.licenses.mit ];
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ yinfeng ];
platforms = with lib.platforms; linux ++ darwin;
mainProgram = "angrr";

View File

@@ -44,7 +44,7 @@ stdenv.mkDerivation (finalAttrs: {
homepage = "https://gitlab.com/HolyPangolin/animatch/";
description = "Cute match three game for the Librem 5 smartphone";
mainProgram = "animatch";
license = with lib.licenses; [ gpl3Plus ];
license = lib.licenses.gpl3Plus;
maintainers = with lib.maintainers; [ colinsane ];
};
})

View File

@@ -44,7 +44,7 @@ rustPlatform.buildRustPackage {
meta = {
description = "Standalone official anki sync server";
homepage = "https://apps.ankiweb.net";
license = with lib.licenses; [ agpl3Plus ];
license = lib.licenses.agpl3Plus;
maintainers = with lib.maintainers; [ martinetd ];
mainProgram = "anki-sync-server";
};

View File

@@ -22,7 +22,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
the colors and styles, such as bold or italic.
'';
homepage = "https://github.com/phip1611/ansi-escape-sequences-cli";
license = with lib.licenses; [ mit ];
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ phip1611 ];
mainProgram = "ansi";
};

View File

@@ -70,7 +70,7 @@ rustPlatform.buildRustPackage {
homepage = "https://antelang.org/";
description = "Low-level functional language for exploring refinement types, lifetime inference, and algebraic effects";
mainProgram = "ante";
license = with lib.licenses; [ mit ];
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ ehllie ];
};
}

View File

@@ -32,7 +32,7 @@ stdenv.mkDerivation (finalAttrs: {
meta = {
homepage = "https://www.antiprism.com";
description = "Collection of programs for generating, manipulating, transforming and viewing polyhedra";
license = with lib.licenses; [ mit ];
license = lib.licenses.mit;
maintainers = [ ];
};
})

View File

@@ -57,7 +57,7 @@ stdenv.mkDerivation (finalAttrs: {
meta = {
description = "Flex SDK for Adobe Flash / ActionScript";
homepage = "https://flex.apache.org/";
license = with lib.licenses; [ asl20 ];
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ dywedir ];
};
})

View File

@@ -76,7 +76,7 @@ python3.pkgs.buildPythonApplication rec {
* compare two APKs with different signatures (requires apksigner)
'';
homepage = "https://github.com/obfusk/apksigcopier";
license = with lib.licenses; [ gpl3Plus ];
license = lib.licenses.gpl3Plus;
maintainers = with lib.maintainers; [ obfusk ];
};
}

View File

@@ -11,7 +11,7 @@
buildPackages,
# apparmor deps
apparmor-parser,
apparmor-init,
}:
let
inherit (python3Packages) libapparmor;
@@ -25,7 +25,7 @@ python3Packages.buildPythonApplication {
cd utils
substituteInPlace aa-remove-unknown \
--replace-fail "/lib/apparmor/rc.apparmor.functions" "${apparmor-parser}/lib/apparmor/rc.apparmor.functions"
--replace-fail "/lib/apparmor/rc.apparmor.functions" "${apparmor-init}/lib/apparmor/rc.apparmor.functions"
substituteInPlace Makefile \
--replace-fail "/usr/include/linux/capability.h" "${linuxHeaders}/include/linux/capability.h"
sed -i -E 's/^(DESTDIR|BINDIR|PYPREFIX)=.*//g' Makefile

View File

@@ -55,7 +55,7 @@ python3Packages.buildPythonApplication {
meta = {
homepage = "https://github.com/rickysarraf/apt-offline";
description = "Offline APT package manager";
license = with lib.licenses; [ gpl3Plus ];
license = lib.licenses.gpl3Plus;
mainProgram = "apt-offline";
maintainers = [ ];
};

View File

@@ -22,7 +22,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
homepage = "https://github.com/kpcyrd/apt-swarm";
changelog = "https://github.com/kpcyrd/apt-swarm/releases/tag/v${finalAttrs.version}";
mainProgram = "apt-swarm";
license = with lib.licenses; [ gpl3Plus ];
license = lib.licenses.gpl3Plus;
maintainers = with lib.maintainers; [ kpcyrd ];
platforms = lib.platforms.all;
};

View File

@@ -108,7 +108,7 @@ stdenv.mkDerivation (finalAttrs: {
homepage = "https://salsa.debian.org/apt-team/apt";
description = "Command-line package management tools used on Debian-based systems";
changelog = "https://salsa.debian.org/apt-team/apt/-/raw/${finalAttrs.version}/debian/changelog";
license = with lib.licenses; [ gpl2Plus ];
license = lib.licenses.gpl2Plus;
mainProgram = "apt";
maintainers = with lib.maintainers; [ VZstless ];
platforms = lib.platforms.linux;

View File

@@ -52,7 +52,7 @@ stdenv.mkDerivation (finalAttrs: {
and direct access to various host resources including sound, disk drives,
optical storage devices (CD/DVD-ROMs), parallel port and more.
'';
license = with lib.licenses; [ gpl2Plus ];
license = lib.licenses.gpl2Plus;
mainProgram = "aranym";
maintainers = [ ];
platforms = lib.platforms.unix;

View File

@@ -156,29 +156,6 @@
};
}
// optionalAttrs (system == "x86_64-darwin") {
"build/arduino-builder-macosx-1.6.1-signed.tar.bz2" = fetchurl {
url = "https://downloads.arduino.cc/tools/arduino-builder-macosx-1.6.1-signed.tar.bz2";
sha256 = "sha256-icMXwovzT2UQAKry9sWyRvcNxPXaFdltAPyW/DDVEFA=";
};
"build/macosx/avr-gcc-7.3.0-atmel3.6.1-arduino5-x86_64-apple-darwin14-signed.tar.bz2" = fetchurl {
url = "https://downloads.arduino.cc/tools/avr-gcc-7.3.0-atmel3.6.1-arduino5-x86_64-apple-darwin14-signed.tar.bz2";
sha256 = "0lcnp525glnc2chcynnz2nllm4q6ar4n9nrjqd1jbj4m706zbv67";
};
"build/macosx/avrdude-6.3.0-arduino17-x86_64-apple-darwin12-signed.tar.bz2" = fetchurl {
url = "https://downloads.arduino.cc/tools/avrdude-6.3.0-arduino17-x86_64-apple-darwin12-signed.tar.bz2";
sha256 = "1m24dci8mjf70yrf033mp1834pbp870m8sns2jxs3iy2i4qviiki";
};
"build/linux/arduinoOTA-1.3.0-darwin_amd64-signed.tar.bz2" = fetchurl {
url = "https://downloads.arduino.cc/tools/arduinoOTA-1.3.0-darwin_amd64-signed.tar.bz2";
sha256 = "12pwfnikq3z3ji5wgjhzx1mfyaha5cym7mr63r8kfl5a85fhk8nz";
};
"build/macosx/appbundler/appbundler-1.0ea-arduino5.jar.zip" = fetchurl {
url = "https://downloads.arduino.cc/appbundler-1.0ea-arduino5.jar.zip";
sha256 = "1ims951z7ajprqms7yd8ll83c79n7krhd9ljw30yn61f6jk46x82";
};
}
// optionalAttrs (system == "aarch64-linux") {
"build/arduino-builder-linuxaarch64-1.6.1.tar.bz2" = fetchurl {
url = "https://downloads.arduino.cc/tools/arduino-builder-linuxaarch64-1.6.1.tar.bz2";

View File

@@ -14,7 +14,7 @@
stdenv.mkDerivation {
pname = "arftracksat";
version = "unstable-2025-09-15";
version = "1.0-unstable-2025-09-15";
src = fetchFromGitHub {
owner = "arf20";

View File

@@ -6,7 +6,7 @@
stdenvNoCC.mkDerivation {
pname = "aritim-dark";
version = "unstable-2021-12-29";
version = "0.7-unstable-2021-12-29";
src = fetchFromGitHub {
owner = "Mrcuve0";
@@ -32,7 +32,7 @@ stdenvNoCC.mkDerivation {
meta = {
description = "Dark theme deeply inspired by the Ayu Dark color palette";
homepage = "https://github.com/Mrcuve0/Aritim-Dark";
license = with lib.licenses; [ gpl3Only ];
license = lib.licenses.gpl3Only;
platforms = lib.platforms.unix;
maintainers = [ lib.maintainers.pasqui23 ];
};

View File

@@ -15,7 +15,7 @@
let
pname = "armitage";
version = "unstable-2022-12-05";
version = "1.0-unstable-2022-12-05";
src = fetchFromGitHub {
owner = "r00t0v3rr1d3";

View File

@@ -60,7 +60,7 @@ python3Packages.buildPythonPackage rec {
mainProgram = "arouteserver";
homepage = "https://github.com/pierky/arouteserver";
changelog = "https://github.com/pierky/arouteserver/blob/v${version}/CHANGES.rst";
license = with lib.licenses; [ gpl3Only ];
license = lib.licenses.gpl3Only;
maintainers = with lib.maintainers; [
marcel
johannwagner

View File

@@ -28,7 +28,7 @@ stdenv.mkDerivation (finalAttrs: {
meta = {
description = "UNIX arp cache update utility";
homepage = "http://www.arpoison.net/";
license = with lib.licenses; [ gpl2Only ];
license = lib.licenses.gpl2Only;
maintainers = [ lib.maintainers.michalrus ];
platforms = lib.platforms.unix;
mainProgram = "arpoison";

View File

@@ -38,7 +38,7 @@ python3.pkgs.buildPythonApplication (finalAttrs: {
meta = {
description = "Tool to generate commands for security and network tools";
homepage = "https://github.com/Orange-Cyberdefense/arsenal";
license = with lib.licenses; [ gpl3Only ];
license = lib.licenses.gpl3Only;
maintainers = with lib.maintainers; [ fab ];
mainProgram = "arsenal";
};

View File

@@ -20,7 +20,7 @@ rustPlatform.buildRustPackage {
meta = {
description = "Print a list of paths as a tree of paths";
homepage = "https://github.com/jez/as-tree";
license = with lib.licenses; [ blueOak100 ];
license = lib.licenses.blueOak100;
maintainers = with lib.maintainers; [ jshholland ];
mainProgram = "as-tree";
};

View File

@@ -18,7 +18,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
meta = {
description = "Create asciinema videos from a text file";
homepage = "https://github.com/garbas/asciinema-scenario/";
license = with lib.licenses; [ mit ];
license = lib.licenses.mit;
mainProgram = "asciinema-scenario";
};
})

View File

@@ -52,7 +52,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
computer users working with the command-line, such as developers or
system administrators.
'';
license = with lib.licenses; [ gpl3Plus ];
license = lib.licenses.gpl3Plus;
mainProgram = "asciinema";
maintainers = with lib.maintainers; [
jiriks74

View File

@@ -57,7 +57,7 @@ stdenv.mkDerivation (finalAttrs: {
'';
homepage = "https://github.com/nitefood/asn";
changelog = "https://github.com/nitefood/asn/releases/tag/v${finalAttrs.version}";
license = with lib.licenses; [ mit ];
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ devhell ];
mainProgram = "asn";
};

View File

@@ -31,6 +31,6 @@ buildGoModule (finalAttrs: {
fromSource
binaryNativeCode
];
license = with lib.licenses; [ mit ];
license = lib.licenses.mit;
};
})

View File

@@ -54,7 +54,7 @@ stdenv.mkDerivation (finalAttrs: {
WinCE, Sega Dreamcast, Android and other systems supported by the SDL
library.
'';
license = with lib.licenses; [ gpl2Plus ];
license = lib.licenses.gpl2Plus;
maintainers = [ ];
platforms = lib.platforms.linux;
};

View File

@@ -47,7 +47,7 @@ stdenv.mkDerivation (finalAttrs: {
will compile on a variety of systems (Linux, Solaris, Irix).
'';
maintainers = [ ];
license = with lib.licenses; [ gpl2Plus ];
license = lib.licenses.gpl2Plus;
platforms = lib.platforms.unix;
};
})

View File

@@ -41,7 +41,7 @@ buildGoModule (finalAttrs: {
homepage = "https://github.com/AthanorLabs/atomic-swap";
changelog = "https://github.com/AthanorLabs/atomic-swap/releases/tag/v${finalAttrs.version}";
description = "ETH-XMR atomic swap implementation";
license = with lib.licenses; [ lgpl3Only ];
license = lib.licenses.lgpl3Only;
maintainers = with lib.maintainers; [
happysalada
lord-valen

View File

@@ -0,0 +1,54 @@
{
lib,
stdenv,
fetchurl,
versionCheckHook,
nix-update-script,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "auge";
version = "1.9.0";
__structuredAttrs = true;
strictDeps = true;
# Building from source requires swift 6.3.0 while nixpkgs only has 5.10.1
src = fetchurl {
url = "https://github.com/Arthur-Ficial/auge/releases/download/v${finalAttrs.version}/auge-${finalAttrs.version}-arm64-macos.tar.gz";
hash = "sha256-hL3kq1/hFo4rlq2nz4iaRLqoErLiF032ovqwl5Rwqso=";
};
sourceRoot = ".";
dontBuild = true;
dontConfigure = true;
installPhase = ''
runHook preInstall
mkdir -p $out/bin
cp auge $out/bin/
chmod +x $out/bin/auge
runHook postInstall
'';
nativeInstallCheckInputs = [ versionCheckHook ];
doInstallCheck = true;
passthru.updateScript = nix-update-script { };
meta = {
description = "On-device Apple Vision framework CLI";
homepage = "https://github.com/Arthur-Ficial/auge";
changelog = "https://github.com/Arthur-Ficial/auge/releases/tag/v${finalAttrs.version}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ Br1ght0ne ];
platforms = [ "aarch64-darwin" ];
mainProgram = "auge";
sourceProvenance = [
lib.sourceTypes.binaryNativeCode
];
};
})

View File

@@ -63,7 +63,7 @@ python3Packages.buildPythonApplication (finalAttrs: {
homepage = "https://github.com/CleoMenezesJr/Aurea";
mainProgram = "aurea";
platforms = lib.platforms.linux;
license = with lib.licenses; [ gpl3Plus ];
license = lib.licenses.gpl3Plus;
maintainers = [ ];
};
})

View File

@@ -96,7 +96,7 @@ python3Packages.buildPythonApplication (finalAttrs: {
description = "Desktop automation utility for Linux and X11";
homepage = "https://github.com/autokey/autokey";
changelog = "https://github.com/autokey/autokey/releases/tag/${finalAttrs.src.tag}";
license = with lib.licenses; [ gpl3Plus ];
license = lib.licenses.gpl3Plus;
maintainers = with lib.maintainers; [ iamanaws ];
platforms = lib.platforms.linux;
};

View File

@@ -11,13 +11,13 @@
}:
stdenv.mkDerivation (finalAttrs: {
pname = "autoprefixer";
version = "10.5.0";
version = "10.5.3";
src = fetchFromGitHub {
owner = "postcss";
repo = "autoprefixer";
tag = finalAttrs.version;
hash = "sha256-s152v9sIuQLvhfPsZvQa+O9UhoASgm/e8dnz0t4pP3A=";
hash = "sha256-hjckcgWojItp2gseQI18zzxizjw/HxQPiTb/JegSCcs=";
};
nativeBuildInputs = [
@@ -30,7 +30,7 @@ stdenv.mkDerivation (finalAttrs: {
inherit (finalAttrs) pname version src;
pnpm = pnpm_10;
fetcherVersion = 4;
hash = "sha256-Sxt4vtdlMdXxXqt22hfZJskj8mkB5t85IZ5BsbCoDF4=";
hash = "sha256-diOgX9lXKOwCx9V737mmmtrhqDg5beXJH/PjlJHFpto=";
};
installPhase = ''

View File

@@ -203,7 +203,7 @@ stdenvNoCC.mkDerivation (
meta = {
homepage = "https://avaloniaui.net/";
license = [ lib.licenses.mit ];
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ corngood ];
description = "Cross-platform UI framework for dotnet";
sourceProvenance = with lib.sourceTypes; [

View File

@@ -10,17 +10,17 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "aver";
version = "0.26.0";
version = "0.27.0";
__structuredAttrs = true;
src = fetchFromGitHub {
owner = "jasisz";
repo = "aver";
tag = "v${finalAttrs.version}";
hash = "sha256-LeI6qy+z8azrrgoskRq/hsk5t0PDydQ/yJNxYIB7I68=";
hash = "sha256-jVXkHdTSTvHVKHe1jIYqISvm2oUolBWNLBxHt3KDpWk=";
};
cargoHash = "sha256-Zqu56tBbKjWZmpRpPuK9JMexcajRcDzBW4AfTRAkPbs=";
cargoHash = "sha256-3ekeWs2o2TVe2SZgMKTGANTucSiR3aXaqOzJIaoAuK4=";
cargoBuildFlags = [
"--workspace"

View File

@@ -16,23 +16,15 @@
let
versions = lib.importJSON ./versions.json;
flavor = lib.head (lib.filter (x: x.version == versionFlavor) versions);
fetchBinary =
runtimeId:
fetchurl {
url = flavor.files.${runtimeId}.url;
sha256 = flavor.files.${runtimeId}.sha;
};
sources = {
"x86_64-linux" = fetchBinary "linux-x64";
};
in
stdenv.mkDerivation {
pname = "StaticSitesClient-${versionFlavor}";
version = flavor.buildId;
src =
sources.${stdenv.hostPlatform.system}
or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
src = fetchurl {
url = flavor.files.linux-x64.url;
sha256 = flavor.files.linux-x64.sha;
};
nativeBuildInputs = [
autoPatchelfHook

View File

@@ -23,7 +23,7 @@ flutter338.buildFlutterApplication {
meta = {
description = "Badge Magic with LEDs - mobile and desktop app";
homepage = "https://github.com/fossasia/badgemagic-app";
license = with lib.licenses; [ asl20 ];
license = lib.licenses.asl20;
maintainers = [ lib.maintainers.matthewcroughan ];
platforms = [
"aarch64-linux"

View File

@@ -46,7 +46,7 @@ buildGoModule (finalAttrs: {
likelihood that a compromised Operator would be able to obtain full
cluster permissions.
'';
license = with lib.licenses; [ asl20 ];
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [
jk
];

View File

@@ -30,7 +30,7 @@ stdenv.mkDerivation (finalAttrs: {
meta = {
homepage = "https://lgames.sourceforge.io/Barrage/";
description = "Destructive action game";
license = with lib.licenses; [ gpl2Plus ];
license = lib.licenses.gpl2Plus;
mainProgram = "barrage";
maintainers = [ ];
inherit (SDL.meta) platforms;

View File

@@ -62,7 +62,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
changelog = "https://downloads.macbartender.com/B2/updates/${
builtins.replaceStrings [ "." ] [ "-" ] finalAttrs.version
}/rnotes.html";
license = [ lib.licenses.unfree ];
license = lib.licenses.unfree;
sourceProvenance = [ lib.sourceTypes.binaryNativeCode ];
maintainers = with lib.maintainers; [
stepbrobd

View File

@@ -41,7 +41,7 @@ python3Packages.buildPythonApplication rec {
description = "Style enforcement for bash programs";
mainProgram = "bashate";
homepage = "https://opendev.org/openstack/bashate";
license = with lib.licenses; [ asl20 ];
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ fab ];
teams = [ lib.teams.openstack ];
};

View File

@@ -26,7 +26,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
description = "Language Server Protocol (LSP) for beancount files";
mainProgram = "beancount-language-server";
homepage = "https://github.com/polarmutex/beancount-language-server";
license = with lib.licenses; [ mit ];
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ polarmutex ];
};
})

View File

@@ -51,7 +51,7 @@ buildGoModule (finalAttrs: {
Bee is a Swarm node implementation, written in Go.
'';
license = with lib.licenses; [ bsd3 ];
license = lib.licenses.bsd3;
maintainers = [ ];
};
})

View File

@@ -163,7 +163,7 @@ stdenv.mkDerivation (finalAttrs: {
meta = {
description = "Software modular synth with controllers support, scripting and VST";
homepage = "https://www.bespokesynth.com/";
license = [ lib.licenses.gpl3Plus ];
license = lib.licenses.gpl3Plus;
maintainers = with lib.maintainers; [
astro
tobiasBora

View File

@@ -43,7 +43,7 @@ buildGoModule (finalAttrs: {
in realtime, sniff for credentials and much more.
'';
homepage = "https://www.bettercap.org/";
license = with lib.licenses; [ gpl3Only ];
license = lib.licenses.gpl3Only;
mainProgram = "bettercap";
# Broken on darwin for Go toolchain > 1.22, with error:
# 'link: golang.org/x/net/internal/socket: invalid reference to syscall.recvmsg'

View File

@@ -50,7 +50,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
description = "Unlock your displays on your Mac! Flexible HiDPI scaling, XDR/HDR extra brightness, virtual screens, DDC control, extra dimming, PIP/streaming, EDID override and lots more";
homepage = "https://betterdisplay.pro/";
changelog = "https://github.com/waydabber/BetterDisplay/releases/tag/v${finalAttrs.version}";
license = [ lib.licenses.unfree ];
license = lib.licenses.unfree;
sourceProvenance = [ lib.sourceTypes.binaryNativeCode ];
maintainers = with lib.maintainers; [ DimitarNestorov ];
platforms = lib.platforms.darwin;

View File

@@ -54,7 +54,7 @@ stdenv.mkDerivation {
bic This a project that allows developers to explore and test C-APIs using a
read eval print loop, also known as a REPL.
'';
license = with lib.licenses; [ gpl2Plus ];
license = lib.licenses.gpl2Plus;
homepage = "https://github.com/hexagonal-sun/bic";
platforms = lib.platforms.unix;
maintainers = with lib.maintainers; [ hexagonal-sun ];

View File

@@ -5,8 +5,9 @@
nix-update-script,
stdenv,
pkg-config,
makeWrapper,
makeBinaryWrapper,
openssl,
cacert,
mpv-unwrapped,
yt-dlp-light,
@@ -14,23 +15,28 @@
}:
rustPlatform.buildRustPackage (finalAttrs: {
pname = "bilibili-tui";
version = "1.0.9";
version = "1.0.12";
src = fetchFromGitHub {
owner = "MareDevi";
repo = "bilibili-tui";
tag = "v${finalAttrs.version}";
hash = "sha256-LACNDpVhlYEgT3fN+Ff2MVipblUqPlqwOUpTLaXSCbk=";
hash = "sha256-G2aoPw8SMu3ytHbxcQrf1iH6i+b9viM+/EYorv6j5bg=";
};
cargoHash = "sha256-q3jRjmzQA64sZjVShoEmu1x2CFOAgBGgZYyTq7Lg4is=";
cargoHash = "sha256-ojAN98of7vZp/F1n0a/88e6k4nBPG9HPKyTO1xc8o4Q=";
nativeBuildInputs = [ makeWrapper ] ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [ pkg-config ];
nativeBuildInputs = [
makeBinaryWrapper
]
++ lib.optional (!stdenv.hostPlatform.isDarwin) pkg-config;
buildInputs = lib.optionals (!stdenv.hostPlatform.isDarwin) [ openssl ];
buildInputs = lib.optional (!stdenv.hostPlatform.isDarwin) openssl;
env.OPENSSL_NO_VENDOR = true;
nativeCheckInputs = [ cacert ];
# Wrap mpv as fallback; users should prefer their system's mpv in PATH
postInstall = lib.optionalString withMpv ''
wrapProgram $out/bin/bilibili-tui \

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