Merge master into staging-next

This commit is contained in:
nixpkgs-ci[bot]
2026-05-17 21:24:48 +00:00
committed by GitHub
12 changed files with 186 additions and 95 deletions
+3 -1
View File
@@ -85,7 +85,9 @@ jobs:
- name: Build NixOS manual
if: |
contains(matrix.builds, 'manual-nixos') && !cancelled() &&
contains(fromJSON(inputs.baseBranch).type, 'primary')
(contains(fromJSON(inputs.baseBranch).type, 'primary')
|| startsWith(fromJSON(inputs.baseBranch).branch, 'staging-nixos')
)
run: nix-build-uncached nixpkgs/untrusted/ci --arg nixpkgs ./nixpkgs/untrusted-pinned -A manual-nixos --out-link nixos-manual
- name: Build Nixpkgs manual
@@ -7,13 +7,13 @@
buildGoModule {
pname = "ldk-node-go";
version = "0-unstable-2026-02-10";
version = "0-unstable-2026-04-24";
src = fetchFromGitHub {
owner = "getAlby";
repo = "ldk-node-go";
rev = "f4fc565783308dd4835ba1473a17f25162db9c36";
hash = "sha256-jemAzRuZU9aQpENwWtvyGAh9EJUgeb1f1SCx/FpOOPc=";
rev = "3690cdb3031c75f0ee0a67222c2db3c69fea8f2c";
hash = "sha256-OlJGHhal5fkR0r0FtsVbG1aILZSTLsSRcqrZ84pIRLU=";
};
vendorHash = null;
+3 -3
View File
@@ -8,13 +8,13 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "ldk-node";
version = "0-unstable-2026-02-10";
version = "0-unstable-2026-04-24";
src = fetchFromGitHub {
owner = "getAlby";
repo = "ldk-node";
rev = "3996cf18b10545f54c377212e155bb6bd664888e";
hash = "sha256-mjIs7CeTRQ7Xuk9V/6LeXMDRZsd/wljeFHZ2vgEe1hg=";
rev = "6d5546ec5fff10d4e560188cfcff6f294944c16e";
hash = "sha256-k3AZ1k/hV4Bh+RfOqmpo22wRQ5sdDaFR4bcnw58iwNI=";
};
buildFeatures = [ "uniffi" ];
+4 -4
View File
@@ -21,16 +21,16 @@ in
buildGoModule (finalAttrs: {
pname = "albyhub";
version = "1.21.6";
version = "1.22.2";
src = fetchFromGitHub {
owner = "getAlby";
repo = "hub";
tag = "v${finalAttrs.version}";
hash = "sha256-xjFEou+mDtEf7079en5ypoU5P0tf+looeHZS4j1jKzg=";
hash = "sha256-xP/J9zdh4sZ1x+JUpOf12ft8f2II2Mn1Q7/gnMuFzy8=";
};
vendorHash = "sha256-NJeIEFc8oc5rMWAuvrgsnOi3j779mhwMKSALswRy+nE=";
vendorHash = "sha256-nzdHXY14o4D8NrcXu2JvDagvIfemfVAaGU3IDifhyW0=";
proxyVendor = true; # needed for secp256k1-zkp CGO bindings
nativeBuildInputs = [
@@ -47,7 +47,7 @@ buildGoModule (finalAttrs: {
frontendYarnOfflineCache = fetchYarnDeps {
yarnLock = finalAttrs.src + "/frontend/yarn.lock";
hash = "sha256-wdKm8Zk2iAPvH+EbQxvznctkqHgx8xl/Im37vHmHnoA=";
hash = "sha256-BeuTBLJ/Iakd4jhIkI2+oHc4MFy6DSn8QcygTHEMmQo=";
};
preBuild = ''
+36
View File
@@ -0,0 +1,36 @@
{
lib,
rustPlatform,
fetchFromGitHub,
versionCheckHook,
nix-update-script,
}:
rustPlatform.buildRustPackage (finalAttrs: {
pname = "cell";
version = "0.5.0";
__structuredAttrs = true;
src = fetchFromGitHub {
owner = "garritfra";
repo = "cell";
tag = "v${finalAttrs.version}";
hash = "sha256-J13D46ttG7KlePyFZYxqjaMF7ZR5m3nTJ8/GLm4VH5o=";
};
cargoHash = "sha256-ZQXyt/hL6wamGrFvmrShoUCTSGAo8V5CuejAzO5oCuU=";
doInstallCheck = true;
nativeInstallCheckInputs = [ versionCheckHook ];
passthru.updateScript = nix-update-script { };
meta = {
description = "Fast terminal spreadsheet editor with Vim keybindings";
homepage = "https://github.com/garritfra/cell";
changelog = "https://github.com/garritfra/cell/blob/${finalAttrs.src.rev}/CHANGELOG.md";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ airrnot ];
mainProgram = "cell";
};
})
+104 -68
View File
@@ -1,9 +1,13 @@
{
lib,
stdenv,
fetchurl,
fetchFromGitHub,
flutter335,
copyDesktopItems,
makeDesktopItem,
undmg,
makeBinaryWrapper,
alsa-lib,
libdisplay-info,
@@ -18,82 +22,114 @@
let
flutter = flutter335;
in
sourceBuild = flutter.buildFlutterApplication (finalAttrs: {
pname = "fladder";
version = "0.10.3";
flutter.buildFlutterApplication (finalAttrs: {
pname = "fladder";
version = "0.10.3";
src = fetchFromGitHub {
owner = "DonutWare";
repo = "Fladder";
tag = "v${finalAttrs.version}";
hash = "sha256-0eFHylRi2UVaKRG7K3tDZVscgoiL5xFrtFhZiJxj4Mk=";
};
src = fetchFromGitHub {
owner = "DonutWare";
repo = "Fladder";
tag = "v${finalAttrs.version}";
hash = "sha256-0eFHylRi2UVaKRG7K3tDZVscgoiL5xFrtFhZiJxj4Mk=";
};
inherit targetFlutterPlatform;
inherit targetFlutterPlatform;
pubspecLock = lib.importJSON ./pubspec.lock.json;
pubspecLock = lib.importJSON ./pubspec.lock.json;
gitHashes = lib.importJSON ./git-hashes.json;
gitHashes = lib.importJSON ./git-hashes.json;
nativeBuildInputs = lib.optionals (targetFlutterPlatform == "linux") [
copyDesktopItems
];
nativeBuildInputs = lib.optionals (targetFlutterPlatform == "linux") [
copyDesktopItems
];
buildInputs = [
alsa-lib
libdisplay-info
mpv-unwrapped
libxpresent
libxscrnsaver
]
++ lib.optionals (targetFlutterPlatform == "linux") [
libepoxy
];
buildInputs = [
alsa-lib
libdisplay-info
mpv-unwrapped
libxpresent
libxscrnsaver
]
++ lib.optionals (targetFlutterPlatform == "linux") [
libepoxy
];
postInstall =
lib.optionalString (targetFlutterPlatform == "web") (
''
sed -i 's;base href="/";base href="$out";' $out/index.html
''
+ lib.optionalString (baseUrl != null) ''
echo '{"baseUrl": "${baseUrl}"}' > $out/assets/config/config.json
''
)
+ lib.optionalString (targetFlutterPlatform == "linux") ''
# Install SVG icon
install -Dm644 icons/fladder_icon.svg \
$out/share/icons/hicolor/scalable/apps/fladder.svg
'';
postInstall =
lib.optionalString (targetFlutterPlatform == "web") (
''
sed -i 's;base href="/";base href="$out";' $out/index.html
''
+ lib.optionalString (baseUrl != null) ''
echo '{"baseUrl": "${baseUrl}"}' > $out/assets/config/config.json
''
)
+ lib.optionalString (targetFlutterPlatform == "linux") ''
# Install SVG icon
install -Dm644 icons/fladder_icon.svg \
$out/share/icons/hicolor/scalable/apps/fladder.svg
desktopItems = lib.optionals (targetFlutterPlatform == "linux") [
(makeDesktopItem {
name = "fladder";
desktopName = "Fladder";
genericName = "Jellyfin Client";
exec = "Fladder";
icon = "fladder";
comment = "Simple Jellyfin Frontend built on top of Flutter";
categories = [
"AudioVideo"
"Video"
"Player"
];
})
];
passthru.updateScript = ./update.sh;
meta = {
description = "Simple Jellyfin Frontend built on top of Flutter";
homepage = "https://github.com/DonutWare/Fladder";
downloadPage = "https://github.com/DonutWare/Fladder/releases";
license = lib.licenses.gpl3Only;
maintainers = with lib.maintainers; [
ratcornu
schembriaiden
];
mainProgram = "Fladder";
};
});
darwin = stdenv.mkDerivation {
pname = sourceBuild.pname;
inherit (sourceBuild) version;
src = fetchurl {
url = "https://github.com/DonutWare/Fladder/releases/download/v${sourceBuild.version}/Fladder-macOS-${sourceBuild.version}.dmg";
hash = "sha256-Vnz0jtmDptcrehE7DrgyTzFJJopirsLaO+lu1V/Xd+o=";
};
nativeBuildInputs = [
undmg
makeBinaryWrapper
];
sourceRoot = ".";
installPhase = ''
runHook preInstall
mkdir -p $out/Applications
cp -r Fladder.app $out/Applications
makeBinaryWrapper $out/Applications/Fladder.app/Contents/MacOS/Fladder $out/bin/Fladder
runHook postInstall
'';
desktopItems = lib.optionals (targetFlutterPlatform == "linux") [
(makeDesktopItem {
name = "fladder";
desktopName = "Fladder";
genericName = "Jellyfin Client";
exec = "Fladder";
icon = "fladder";
comment = "Simple Jellyfin Frontend built on top of Flutter";
categories = [
"AudioVideo"
"Video"
"Player"
];
})
];
passthru.updateScript = ./update.sh;
meta = {
description = "Simple Jellyfin Frontend built on top of Flutter";
homepage = "https://github.com/DonutWare/Fladder";
downloadPage = "https://github.com/DonutWare/Fladder/releases";
license = lib.licenses.gpl3Only;
maintainers = with lib.maintainers; [
ratcornu
schembriaiden
];
mainProgram = "Fladder";
meta = sourceBuild.meta // {
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
platforms = lib.platforms.darwin;
};
};
})
in
if stdenv.hostPlatform.isDarwin then darwin else sourceBuild
+2 -2
View File
@@ -14,7 +14,7 @@
stdenv.mkDerivation (finalAttrs: {
pname = "lcevcdec";
version = "4.0.5";
version = "4.1.0";
outputs = [
"out"
@@ -26,7 +26,7 @@ stdenv.mkDerivation (finalAttrs: {
owner = "v-novaltd";
repo = "LCEVCdec";
tag = finalAttrs.version;
hash = "sha256-Ib+2B9o9XUbiEqlP43jKYzvY2pzsFRaS/ZjMn1YgvHE=";
hash = "sha256-QzejWq0XGPLu+YVNetfbzczNuZ6Gp5QJP5G2RZUan6M=";
};
postPatch = ''
@@ -79,7 +79,6 @@
"@rollup/rollup-win32-x64-gnu@npm:4.60.0": "1400b3aace00dc90638bfd39d68275bb5f16143d240b9c36eb70f242ed2080c26fe14192fd3375120308ff94a7da1e169a8e0e56efbe41483f59731602d3be84",
"@rollup/rollup-win32-x64-msvc@npm:4.60.0": "c948b3a8ed6e73f2382dc41ffab3e9928f95c4a0e3481272b26ad04a5f73084ca13fd5c253887f9077c37cb1c91bd8494b4a45a7764c874aa105684e8424289a",
"dmg-license@npm:1.0.11": "feef35cfb45270a72daadcca9584be5cb840f924448b9d4e543fcd61f1b6d471151049f277c91de1d8b003fad6203d0176066a5f427a01df5fb073402cb8c8b7",
"electron-installer-flatpak@npm:0.8.0": "aeaadb5f8f3de96640d3616544700e2c458262f61c7923afd96686223450ed9dbf6d284c1fc6943a6e995957be65cdd140bc4b1c00dd28bf1015fd81ae1e155d",
"iconv-corefoundation@npm:1.1.7": "bc6f08ac421e5e92ed20f3825f123fd705e036612b2b6aa687958de753c06f32e54f0203ef55540869e3ee189eaea15e43a2757f3a90e555c4dd512c9422da43",
"lightningcss-android-arm64@npm:1.32.0": "1cb326ad39dcb02cf9f45025c167b6900e3a04b08f5149d3c5ee26054b00d08db3736fb69183a6c3ed1cb32dddd148608c784b6631b4777623f7dd0c032c392d",
"lightningcss-darwin-arm64@npm:1.32.0": "da954d0c215d0e95f15a92c8717f871017586e1332b98fd40e96196571d2fd3d51a727dc530768afee9f6a04da210510740574dd0c8dbf2ecced79e5996f1a06",
+4 -4
View File
@@ -13,19 +13,19 @@
stdenv.mkDerivation (finalAttrs: {
pname = "r2modman";
version = "3.2.15";
version = "3.2.16";
src = fetchFromGitHub {
owner = "ebkr";
repo = "r2modmanPlus";
tag = "v${finalAttrs.version}";
hash = "sha256-AU2fswh2gNJr1JWTHjtxJh/vVwvDqFXjaaF+QaLprFo=";
hash = "sha256-ya7VPb+bmOvtXNex9R80N6rZLSCVoyntqCzaHXIwb1M=";
};
missingHashes = ./missing-hashes.json;
offlineCache = yarn-berry.fetchYarnBerryDeps {
inherit (finalAttrs) src patches missingHashes;
hash = "sha256-6WfpOAt9XRw4fC+Ix9OoDPvg7oIxcdKRX5ttIywG14E=";
hash = "sha256-RAQgaxcQl15JqZsLA9ISfOiGgob4yYuc4bhjZFzW8xk=";
};
patches = [
@@ -33,7 +33,7 @@ stdenv.mkDerivation (finalAttrs: {
./steam-launch-fix.patch
# Remove after upstream updates to Yarn 4.14
# https://github.com/ebkr/r2modmanPlus/blob/develop/package.json#L117
# https://github.com/ebkr/r2modmanPlus/blob/develop/package.json#L118
./yarn-4.14-support.patch
];
+3 -3
View File
@@ -7,16 +7,16 @@
buildGoModule (finalAttrs: {
pname = "vacuum-go";
version = "0.26.4";
version = "0.26.5";
src = fetchFromGitHub {
owner = "daveshanley";
repo = "vacuum";
tag = "v${finalAttrs.version}";
hash = "sha256-shJblJz5+DhVUju8L/KJ3rFixq3CpvV5o0fC9hx7ivk=";
hash = "sha256-Em+wmDt2kI4mfqS9u/Jq499tQiLh3w/CiZlrkixZjg4=";
};
vendorHash = "sha256-kyKPWbDFPWmIJmn3Np8Geogen3+OxePcSulWBeJFrD4=";
vendorHash = "sha256-AWn/J/BAPIFKXpTdUej1uMBkwh3r5v8DpZHh4D7GRKg=";
env.CGO_ENABLED = 0;
ldflags = [
+22 -4
View File
@@ -4,6 +4,9 @@
python3Packages,
atomicparsley,
deno,
# Override jsRuntime with `nodejs`, `bun`, `quickjs`, or `quickjs-ng` if you want to use another default JS runtime.
# You still need to enable them in your yt-dlp config with `--js-runtimes [runtime]`.
jsRuntime ? deno,
fetchFromGitHub,
ffmpeg-headless,
installShellFiles,
@@ -16,6 +19,12 @@
withAlias ? false, # Provides bin/youtube-dl for backcompat
withSecretStorage ? !stdenvNoCC.hostPlatform.isDarwin,
nix-update-script,
# required for tests
yt-dlp,
nodejs,
bun,
quickjs,
quickjs-ng,
}:
python3Packages.buildPythonApplication rec {
@@ -37,11 +46,11 @@ python3Packages.buildPythonApplication rec {
substituteInPlace yt_dlp/version.py \
--replace-fail "UPDATE_HINT = None" 'UPDATE_HINT = "Nixpkgs/NixOS likely already contain an updated version.\n To get it run nix-channel --update or nix flake update in your config directory."'
${lib.optionalString javascriptSupport ''
# deno is required for full YouTube support (since 2025.11.12).
# This makes yt-dlp find deno even if it is used as a python dependency, i.e. in kodiPackages.sendtokodi.
# Crafted so people can replace deno with one of the other JS runtimes.
# A JavaScript runtime is required for full YouTube support (since 2025.11.12).
# This makes yt-dlp find `jsRuntime` even if it is used as a python dependency, i.e. in kodiPackages.sendtokodi.
# Crafted so people can replace the default deno with one of the other JS runtimes.
substituteInPlace yt_dlp/utils/_jsruntime.py \
--replace-fail "path = _determine_runtime_path(self._path, '${deno.meta.mainProgram}')" "path = '${lib.getExe deno}'"
--replace-fail "path = _determine_runtime_path(self._path, '${jsRuntime.meta.mainProgram}')" "path = '${lib.getExe jsRuntime}'"
''}
'';
@@ -136,6 +145,15 @@ python3Packages.buildPythonApplication rec {
passthru = {
updateScript = nix-update-script { };
# Try to build with each of the supported JS runtimes
tests = lib.genAttrs' [ nodejs bun quickjs quickjs-ng ] (
runtime:
lib.nameValuePair runtime.pname (
yt-dlp.override {
jsRuntime = runtime;
}
)
);
};
meta = {
@@ -10,11 +10,11 @@
stdenv.mkDerivation (finalAttrs: {
pname = "sbt";
version = "1.12.4";
version = "1.12.11";
src = fetchurl {
url = "https://github.com/sbt/sbt/releases/download/v${finalAttrs.version}/sbt-${finalAttrs.version}.tgz";
hash = "sha256-OgLUzZhn/OJZgvmxaMJF/05HjddpQV21QuW+65+fuHo=";
hash = "sha256-X5cqedKlv48pFBp0w15oa7CGCmtuxneviS+Uz5sSRkU=";
};
postPatch = ''