diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 398e5b508c75..5ad86c2b1db6 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -14365,6 +14365,12 @@ githubId = 659440; name = "Kornelijus"; }; + korny666 = { + email = "korny@publicgrave.de"; + github = "korny666"; + githubId = 12656521; + name = "Korny"; + }; koschi13 = { email = "maximilian.konter@protonmail.com"; github = "koschi13"; diff --git a/pkgs/applications/emulators/libretro/cores/beetle-psx.nix b/pkgs/applications/emulators/libretro/cores/beetle-psx.nix index 64db3e9b820f..b4237015355d 100644 --- a/pkgs/applications/emulators/libretro/cores/beetle-psx.nix +++ b/pkgs/applications/emulators/libretro/cores/beetle-psx.nix @@ -8,13 +8,13 @@ }: mkLibretroCore { core = "mednafen-psx" + lib.optionalString withHw "-hw"; - version = "0-unstable-2026-03-20"; + version = "0-unstable-2026-03-28"; src = fetchFromGitHub { owner = "libretro"; repo = "beetle-psx-libretro"; - rev = "8b5dea564b687dd07d91cea48615fab213d1e2c9"; - hash = "sha256-vIEjwhE86TsXbAPk6IbMlWWFWE2Nn6R/+gBe9mMmio4="; + rev = "8fcb04d617b55c00f3255287c530242acf3855dc"; + hash = "sha256-ihS0F/mbHkhrrEiI3bERQxwIgupBiZo2irpzSSWtexE="; }; extraBuildInputs = lib.optionals withHw [ diff --git a/pkgs/by-name/_1/_1password-gui/sources.json b/pkgs/by-name/_1/_1password-gui/sources.json index 71ad2494231e..2b5b9184a60e 100644 --- a/pkgs/by-name/_1/_1password-gui/sources.json +++ b/pkgs/by-name/_1/_1password-gui/sources.json @@ -1,28 +1,28 @@ { "stable": { "linux": { - "version": "8.12.6", + "version": "8.12.8", "sources": { "x86_64": { - "url": "https://downloads.1password.com/linux/tar/stable/x86_64/1password-8.12.6.x64.tar.gz", - "hash": "sha256-OLAPOgt5xgHudTUbu+XjpiN1lACWHZ86rYPZeX2idaw=" + "url": "https://downloads.1password.com/linux/tar/stable/x86_64/1password-8.12.8.x64.tar.gz", + "hash": "sha256-WMApavYGR4TX1/gx8yjzaI0SHf1CEC+Ay9nAyxCOLs0=" }, "aarch64": { - "url": "https://downloads.1password.com/linux/tar/stable/aarch64/1password-8.12.6.arm64.tar.gz", - "hash": "sha256-dhSn/wPzny7eO2/5huEqBfus/TIkVAei7eqJVY0HdPI=" + "url": "https://downloads.1password.com/linux/tar/stable/aarch64/1password-8.12.8.arm64.tar.gz", + "hash": "sha256-Uqt44otc40/v7/f90r2BS0yK1TuctOO0VUcWGhjv0pI=" } } }, "darwin": { - "version": "8.12.6", + "version": "8.12.8", "sources": { "x86_64": { - "url": "https://downloads.1password.com/mac/1Password-8.12.6-x86_64.zip", - "hash": "sha256-fL0KXi4+4fZfLX0sChWz7T//AdW9SCQF3mZvd92brIE=" + "url": "https://downloads.1password.com/mac/1Password-8.12.8-x86_64.zip", + "hash": "sha256-w4gfs8Ctpe73TNaXebwUoa0cEOuZfiBUWN+qngSNcj4=" }, "aarch64": { - "url": "https://downloads.1password.com/mac/1Password-8.12.6-aarch64.zip", - "hash": "sha256-1N5bKMFSuyZ5KHXhmLevewsCLZvjunWTObBw5QMfbcY=" + "url": "https://downloads.1password.com/mac/1Password-8.12.8-aarch64.zip", + "hash": "sha256-tT7VG6KlIv4Q+UtG9pzkyBRnISzvAdrqOeO8zdlZPb4=" } } } diff --git a/pkgs/by-name/b4/b4/package.nix b/pkgs/by-name/b4/b4/package.nix index dbad85ab21a3..fcc090b9d289 100644 --- a/pkgs/by-name/b4/b4/package.nix +++ b/pkgs/by-name/b4/b4/package.nix @@ -7,12 +7,12 @@ python3Packages.buildPythonApplication (finalAttrs: { pname = "b4"; - version = "0.15.0"; + version = "0.15.1"; pyproject = true; src = fetchPypi { inherit (finalAttrs) pname version; - hash = "sha256-TP2Zonr5yr4xn+Ibogr2lfaMZZBMY3McT8WjDqONp8g="; + hash = "sha256-5IxEu1efraux/D8Vvxh0r9chvBpj+6EMlvVovB9HzLM="; }; # tests make dns requests and fails diff --git a/pkgs/by-name/bl/blockbench/dont-assume-opening-app-asar.patch b/pkgs/by-name/bl/blockbench/dont-assume-opening-app-asar.patch new file mode 100644 index 000000000000..bb663d2dde2b --- /dev/null +++ b/pkgs/by-name/bl/blockbench/dont-assume-opening-app-asar.patch @@ -0,0 +1,15 @@ +diff --git a/js/desktop.js b/js/desktop.js +index f3fcb25..a92a884 100644 +--- a/js/desktop.js ++++ b/js/desktop.js +@@ -123,7 +123,9 @@ export function loadOpenWithBlockbenchFile() { + }) + if (electron.process.argv.length >= 2) { + let path = electron.process.argv.last(); +- load(path); ++ if (!path.endsWith("app.asar")) { ++ load(path); ++ } + } + } + console.log('Electron '+process.versions.electron+', Node '+process.versions.node) diff --git a/pkgs/by-name/bl/blockbench/package.nix b/pkgs/by-name/bl/blockbench/package.nix index 41a5d0589a5d..3d3227b43822 100644 --- a/pkgs/by-name/bl/blockbench/package.nix +++ b/pkgs/by-name/bl/blockbench/package.nix @@ -3,7 +3,6 @@ stdenv, buildNpmPackage, fetchFromGitHub, - fetchpatch, makeWrapper, imagemagick, copyDesktopItems, @@ -13,15 +12,22 @@ buildNpmPackage rec { pname = "blockbench"; - version = "5.0.7"; + version = "5.1.1"; src = fetchFromGitHub { owner = "JannisX11"; repo = "blockbench"; tag = "v${version}"; - hash = "sha256-JXOO2+UPMOGSuvez8ektbD5waPKatMggKn+MuH9Qkrs="; + hash = "sha256-bvstexoBQylLmTMzAhId+1HvC3iiL3tPahGhwZ5Yroo="; }; + patches = [ + # On linux we're running Blockbench by giving the path to the app.asar file to the electron executable, + # but Blockbench assumes paths at the and og the argv are files to be opened + # This patch disables trying to open the app.asar file + ./dont-assume-opening-app-asar.patch + ]; + nativeBuildInputs = [ makeWrapper ] @@ -30,16 +36,7 @@ buildNpmPackage rec { copyDesktopItems ]; - patches = [ - (fetchpatch { - # fixes https://github.com/JannisX11/blockbench/issues/3237 - name = "bump-electron-builder.patch"; - url = "https://github.com/JannisX11/blockbench/commit/dee9ae271f252d4bb3f98c13c4a1abaaeedd1feb.patch"; - hash = "sha256-XpdqeCKoWsUieOMWhxVsEQ2r0qR+iiXKnVRfNYERDQs="; - }) - ]; - - npmDepsHash = "sha256-T3yenZCkOrGOWJBxqe0RG39jWYfpsXStblf5Jx4dtF0="; + npmDepsHash = "sha256-1CCYk3cKFdLhx8oC5XreFCf5sL/7eKjOfXCmHt7hZrM="; makeCacheWritable = true; env.ELECTRON_SKIP_BINARY_DOWNLOAD = 1; diff --git a/pkgs/by-name/ce/celluloid/package.nix b/pkgs/by-name/ce/celluloid/package.nix index 6d2cfc7b4274..6d35b6d78f48 100644 --- a/pkgs/by-name/ce/celluloid/package.nix +++ b/pkgs/by-name/ce/celluloid/package.nix @@ -22,13 +22,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "celluloid"; - version = "0.29"; + version = "0.30"; src = fetchFromGitHub { owner = "celluloid-player"; repo = "celluloid"; tag = "v${finalAttrs.version}"; - hash = "sha256-p4jMEM+ikcyVIi7cHm7u0wk9PKD8YJyhRXABgsh/SJc="; + hash = "sha256-UIjbEVV1VHySaJ0QIbCcdVyXd96XeE5ks5Z0NVMJ5hU="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/fl/flutter_rust_bridge_codegen/package.nix b/pkgs/by-name/fl/flutter_rust_bridge_codegen/package.nix index 9c16b3639e51..b4355c78e50a 100644 --- a/pkgs/by-name/fl/flutter_rust_bridge_codegen/package.nix +++ b/pkgs/by-name/fl/flutter_rust_bridge_codegen/package.nix @@ -7,17 +7,17 @@ }: rustPlatform.buildRustPackage (finalAttrs: { pname = "flutter_rust_bridge_codegen"; - version = "2.11.1"; + version = "2.12.0"; src = fetchFromGitHub { owner = "fzyzcjy"; repo = "flutter_rust_bridge"; tag = "v${finalAttrs.version}"; - hash = "sha256-Us+LwT6tjBcTl2xclVsiLauSlIO8w+PiokpiDB+h1fI="; + hash = "sha256-8lLHnJ3IWDZHsj444Gvl0BN+wRlc5JeQfdOQi0QG1Wg="; fetchSubmodules = true; }; - cargoHash = "sha256-pxEwcLiRB95UBfXb+JgS8duEXiZUApH/C8Exus5TkfU="; + cargoHash = "sha256-R6Brxb8OGkInAH/+GPoxc2f/bSWcsWP3aUMh1VrKBuc="; cargoBuildFlags = [ "--package" "flutter_rust_bridge_codegen" diff --git a/pkgs/by-name/ge/gerrit/package.nix b/pkgs/by-name/ge/gerrit/package.nix index 80213907006f..756095f202e3 100644 --- a/pkgs/by-name/ge/gerrit/package.nix +++ b/pkgs/by-name/ge/gerrit/package.nix @@ -8,11 +8,11 @@ stdenvNoCC.mkDerivation (finalAttrs: { pname = "gerrit"; - version = "3.13.4"; + version = "3.13.5"; src = fetchurl { url = "https://gerrit-releases.storage.googleapis.com/gerrit-${finalAttrs.version}.war"; - hash = "sha256-2CswgkpKe8XRx24497dTagfy+kWiLluac+q9l+UlA4k="; + hash = "sha256-Imhi9mZsLmjbwpUipQEdQLBbyBvMJw2THXkfxaikNkA="; }; buildCommand = '' diff --git a/pkgs/by-name/gh/ghostfolio/package.nix b/pkgs/by-name/gh/ghostfolio/package.nix index ee5f2467fd8f..02907acd2364 100644 --- a/pkgs/by-name/gh/ghostfolio/package.nix +++ b/pkgs/by-name/gh/ghostfolio/package.nix @@ -11,13 +11,13 @@ buildNpmPackage rec { pname = "ghostfolio"; - version = "2.250.0"; + version = "2.251.0"; src = fetchFromGitHub { owner = "ghostfolio"; repo = "ghostfolio"; tag = version; - hash = "sha256-7urvJb2X18XM+ZbdHKuda82IU/ZYBpRAxJhHAAdw3oc="; + hash = "sha256-wH4gX/0/MKgo6PX+PbwWss3FvdJN/tf8jFuFpfZIQ8s="; # populate values that require us to use git. By doing this in postFetch we # can delete .git afterwards and maintain better reproducibility of the src. leaveDotGit = true; @@ -27,7 +27,7 @@ buildNpmPackage rec { ''; }; - npmDepsHash = "sha256-ALmyzbWogE+6Yma6Ul9ATuF7QaG1NwZoVCh5pH01vns="; + npmDepsHash = "sha256-Ml7vk1RtJKtE+QTEvKC/ZosIsCxgER5xN2IdSV/8yHg="; nativeBuildInputs = [ prisma_6 diff --git a/pkgs/by-name/gp/gpupad/glslang-use-combined-lib.patch b/pkgs/by-name/gp/gpupad/glslang-use-combined-lib.patch deleted file mode 100644 index 6a1f7f6cb5d0..000000000000 --- a/pkgs/by-name/gp/gpupad/glslang-use-combined-lib.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index a05c447..20a5c98 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -276,8 +276,8 @@ endif() - - # link glslang - find_package(glslang CONFIG REQUIRED) --target_link_libraries(${PROJECT_NAME} PRIVATE glslang::OSDependent glslang::glslang -- glslang::MachineIndependent glslang::GenericCodeGen glslang::glslang-default-resource-limits -+target_link_libraries(${PROJECT_NAME} PRIVATE glslang::glslang -+ glslang::glslang-default-resource-limits -- glslang::SPVRemapper glslang::SPIRV) -+ glslang::SPIRV) - - # link SPIRV-Cross diff --git a/pkgs/by-name/gp/gpupad/package.nix b/pkgs/by-name/gp/gpupad/package.nix index 69ec7e4756b7..7a4def555547 100644 --- a/pkgs/by-name/gp/gpupad/package.nix +++ b/pkgs/by-name/gp/gpupad/package.nix @@ -2,7 +2,6 @@ lib, stdenv, fetchFromGitHub, - fetchpatch, cmake, glslang, @@ -17,27 +16,16 @@ stdenv.mkDerivation (finalAttrs: { pname = "gpupad"; - version = "2.7.0"; + version = "3.1.0"; src = fetchFromGitHub { owner = "houmain"; repo = "gpupad"; tag = finalAttrs.version; - hash = "sha256-Y0LNz8qHNfYhkh+ukJFi56zdaNIy5Gfvena+gSo0oOo="; + hash = "sha256-eZ9RhFPk7eV5xmp112E71xOc55GFkI0G8WTvyjxqGsM="; fetchSubmodules = true; }; - patches = [ - # the current version of glslang no longer separates its libs into sublibs - ./glslang-use-combined-lib.patch - - (fetchpatch { - name = "add-missing-inline.patch"; - url = "https://github.com/houmain/gpupad/commit/52fcb3619e5e2698a8c11a97668670a5cd0531a8.patch"; - hash = "sha256-FnC5uKickZVPVr+y1Thvtk+Xi38V0AHBYGU+x64EXrA="; - }) - ]; - strictDeps = true; nativeBuildInputs = [ diff --git a/pkgs/by-name/gr/grimblast/package.nix b/pkgs/by-name/gr/grimblast/package.nix index e86df57b0703..37cb9323a0a6 100644 --- a/pkgs/by-name/gr/grimblast/package.nix +++ b/pkgs/by-name/gr/grimblast/package.nix @@ -20,13 +20,13 @@ stdenvNoCC.mkDerivation (finalAttrs: { pname = "grimblast"; - version = "0.1-unstable-2026-02-19"; + version = "0.1-unstable-2026-03-28"; src = fetchFromGitHub { owner = "hyprwm"; repo = "contrib"; - rev = "918f266dddae39fa4184a1b8bf51ec5381cf29f7"; - hash = "sha256-aH8h5ZOiyEGtHmEyuE/eFxx8TN7a+NGDnl4V+dbzJ6E="; + rev = "b3c2a094163cad4aac7af09333fddf2c9838c348"; + hash = "sha256-xr3Ih1HrAIlO9GGrmnVrmRh50GSPMWI4QWmbEwlbYq8="; }; strictDeps = true; diff --git a/pkgs/by-name/hy/hyprland/info.json b/pkgs/by-name/hy/hyprland/info.json index 03459cad5614..a20324489ca8 100644 --- a/pkgs/by-name/hy/hyprland/info.json +++ b/pkgs/by-name/hy/hyprland/info.json @@ -1,7 +1,7 @@ { - "branch": "v0.54.2-b", - "commit_hash": "59f9f2688ac508a0584d1462151195a6c4992f99", - "commit_message": "version: bump to 0.54.2", - "date": "2026-03-10", - "tag": "v0.54.2" + "branch": "v0.54.3-b", + "commit_hash": "521ece463c4a9d3d128670688a34756805a4328f", + "commit_message": "version: bump to 0.54.3", + "date": "2026-03-27", + "tag": "v0.54.3" } diff --git a/pkgs/by-name/hy/hyprland/package.nix b/pkgs/by-name/hy/hyprland/package.nix index 6a2a3c42932b..2af08df87af1 100644 --- a/pkgs/by-name/hy/hyprland/package.nix +++ b/pkgs/by-name/hy/hyprland/package.nix @@ -80,14 +80,14 @@ let in customStdenv.mkDerivation (finalAttrs: { pname = "hyprland" + optionalString debug "-debug"; - version = "0.54.2"; + version = "0.54.3"; src = fetchFromGitHub { owner = "hyprwm"; repo = "hyprland"; fetchSubmodules = true; tag = "v${finalAttrs.version}"; - hash = "sha256-YF31zdrg7ctjD2CR+8rzKNsR0luYgoq8lhRkzd6myL8="; + hash = "sha256-e+mVjQL3V+xoaH1c3YqAzRq9wwiuEYQTOgZlK0LwfYA="; }; postPatch = '' diff --git a/pkgs/by-name/hy/hyprutils/package.nix b/pkgs/by-name/hy/hyprutils/package.nix index 94e10427677f..bbc238dbc4e4 100644 --- a/pkgs/by-name/hy/hyprutils/package.nix +++ b/pkgs/by-name/hy/hyprutils/package.nix @@ -10,13 +10,13 @@ gcc15Stdenv.mkDerivation (finalAttrs: { pname = "hyprutils"; - version = "0.11.0"; + version = "0.11.1"; src = fetchFromGitHub { owner = "hyprwm"; repo = "hyprutils"; tag = "v${finalAttrs.version}"; - hash = "sha256-rGbEMhTTyTzw4iyz45lch5kXseqnqcEpmrHdy+zHsfo="; + hash = "sha256-S76omfIVQ1TpGiXFbqih6o6XcH3sA5+5QI+SXB4HvlY="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/kn/knossosnet/package.nix b/pkgs/by-name/kn/knossosnet/package.nix index 24f4255bb985..926d6ccb0c10 100644 --- a/pkgs/by-name/kn/knossosnet/package.nix +++ b/pkgs/by-name/kn/knossosnet/package.nix @@ -11,13 +11,13 @@ buildDotnetModule rec { pname = "knossosnet"; - version = "1.3.2"; + version = "1.3.3"; src = fetchFromGitHub { owner = "KnossosNET"; repo = "Knossos.NET"; tag = "v${version}"; - hash = "sha256-Ss9xk7HiWBy6Ku8cMvhsxxCCkE8PbWmpSv7Rqk/l3bI="; + hash = "sha256-uu6sSWDKb6qyXvS0k7prMsZSQmMzVy+twsfCoH5GAJ8="; }; patches = [ ./dotnet-8-upgrade.patch ]; diff --git a/pkgs/by-name/ko/komac/package.nix b/pkgs/by-name/ko/komac/package.nix index 0d695c77a6b7..33cd33eb900c 100644 --- a/pkgs/by-name/ko/komac/package.nix +++ b/pkgs/by-name/ko/komac/package.nix @@ -16,16 +16,16 @@ }: rustPlatform.buildRustPackage (finalAttrs: { pname = "komac"; - version = "2.15.0"; + version = "2.16.0"; src = fetchFromGitHub { owner = "russellbanks"; repo = "Komac"; tag = "v${finalAttrs.version}"; - hash = "sha256-yNUHtYH8gVLjznDaQMuvcTFvK3smuuSLg3uKVVgcUfs="; + hash = "sha256-joPF92qeK+L+JfPcILbfQQXXOL11hiPDt4JNXouPCK0="; }; - cargoHash = "sha256-W3CL8lObRHkbTwNKZjbN0ErpXGn5KADCGfFTJDw1vfo="; + cargoHash = "sha256-bmesjvXX++Kn47E+KpHKYF/lpIcNXtVzH4s/AMHDmhc="; nativeBuildInputs = [ pkg-config diff --git a/pkgs/by-name/mi/mixing-station/package.nix b/pkgs/by-name/mi/mixing-station/package.nix new file mode 100644 index 000000000000..e705ba39d310 --- /dev/null +++ b/pkgs/by-name/mi/mixing-station/package.nix @@ -0,0 +1,87 @@ +{ + lib, + stdenv, + fetchzip, + makeWrapper, + unzip, + jre, + libGL, + libglvnd, + libx11, + libxext, + libxcursor, + libxrandr, + libxi, + libxxf86vm, + libxinerama, + libpulseaudio, + udev, + zenity, + yad, + which, +}: +stdenv.mkDerivation (finalAttrs: { + pname = "mixing-station"; + version = "2.8.0"; + + src = fetchzip { + url = "https://mixingstation.app/backend/api/web/download/archive/mixing-station-pc/update/${finalAttrs.version}"; + name = "mixing-station-${finalAttrs.version}.zip"; + extension = "zip"; + hash = "sha256-AGmBCkaYt3kZv/XuR9fkeEVryFw6t/p1CHVirNp+81s="; + stripRoot = false; + }; + + nativeBuildInputs = [ + makeWrapper + ]; + + dontBuild = true; + + installPhase = + let + runtimeLibs = lib.makeLibraryPath [ + libGL + libglvnd + libx11 + libxext + libxcursor + libxrandr + libxi + libxxf86vm + libxinerama + libpulseaudio + udev + ]; + dialogTools = [ + zenity + yad + which + ]; + in + '' + runHook preInstall + install -Dm644 mixing-station-desktop.jar \ + "$out/share/mixing-station/mixing-station-desktop.jar" + makeWrapper "${jre}/bin/java" "$out/bin/mixing-station" \ + --add-flags "-Dawt.useSystemAAFontSettings=gasp" \ + --add-flags "-jar $out/share/mixing-station/mixing-station-desktop.jar" \ + --prefix LD_LIBRARY_PATH : "${runtimeLibs}" \ + --prefix LD_LIBRARY_PATH : "/run/opengl-driver/lib" \ + --suffix PATH : "${lib.makeBinPath dialogTools}" + runHook postInstall + ''; + + meta = { + description = "Remote control app for digital audio mixers (XAir, X32, dLive, etc.)"; + homepage = "https://mixingstation.app"; + sourceProvenance = [ lib.sourceTypes.binaryBytecode ]; + platforms = [ + "x86_64-linux" + "aarch64-linux" + ]; + mainProgram = "mixing-station"; + license = lib.licenses.unfree; + maintainers = with lib.maintainers; [ korny666 ]; + }; +}) diff --git a/pkgs/by-name/ne/newsboat/package.nix b/pkgs/by-name/ne/newsboat/package.nix index bd821281dcfe..b7e329e7f6ed 100644 --- a/pkgs/by-name/ne/newsboat/package.nix +++ b/pkgs/by-name/ne/newsboat/package.nix @@ -17,22 +17,30 @@ libiconv, makeWrapper, nix-update-script, + fetchpatch, }: stdenv.mkDerivation (finalAttrs: { pname = "newsboat"; - version = "2.42"; + version = "2.43"; src = fetchFromGitHub { owner = "newsboat"; repo = "newsboat"; tag = "r${finalAttrs.version}"; - hash = "sha256-ZBqYxAX2jPaRycdw7BbhySt2uviICadT/5Z5WZqsqJM="; + hash = "sha256-XnA20uylHoly1P5qpM2JmkkV6C5//Xu5M+CjWwCiI7c="; }; + patches = [ + (fetchpatch { + url = "https://github.com/newsboat/newsboat/commit/f7936d13013d33946b28b2ac51f1266423d66b23.patch"; + hash = "sha256-MnL/ylTIJJV1+3I1OxzNWedLUEZ4viuzxXNM63qk1aM="; + }) + ]; + cargoDeps = rustPlatform.fetchCargoVendor { inherit (finalAttrs) pname version src; - hash = "sha256-T6zBr3LoOkPLVkBvfhUdqs7iF2I6fRTZo+uMsrnv+5g="; + hash = "sha256-+QyN0YDQmSGVZ2ckLd5SDYRw/wZYFY6GNteeTRrNDcU="; }; # allow other ncurses versions on Darwin diff --git a/pkgs/by-name/ni/nixtamal/package.nix b/pkgs/by-name/ni/nixtamal/package.nix index 66c33c129a7a..30548ba467d0 100644 --- a/pkgs/by-name/ni/nixtamal/package.nix +++ b/pkgs/by-name/ni/nixtamal/package.nix @@ -18,7 +18,7 @@ ocamlPackages.buildDunePackage (finalAttrs: { pname = "nixtamal"; - version = "1.2.0"; + version = "1.3.0"; release_year = 2026; minimalOCamlVersion = "5.3"; @@ -27,7 +27,7 @@ ocamlPackages.buildDunePackage (finalAttrs: { url = "https://darcs.toastal.in.th/nixtamal/stable/"; mirrors = [ "https://smeder.ee/~toastal/nixtamal.darcs" ]; rev = finalAttrs.version; - hash = "sha256-e3d+OuKJ6iaS2w9Icnqc0scdaYTPoei53QZz0pwbyyk="; + hash = "sha256-fB7Rl3AGCMAwLfSegV2au9IvTZ7yNRjyS4YBBHU1pBQ="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/nu/nufmt/package.nix b/pkgs/by-name/nu/nufmt/package.nix index c195c54be827..a67d8406714a 100644 --- a/pkgs/by-name/nu/nufmt/package.nix +++ b/pkgs/by-name/nu/nufmt/package.nix @@ -7,29 +7,29 @@ }: rustPlatform.buildRustPackage { pname = "nufmt"; - version = "0-unstable-2025-12-29"; + version = "0-unstable-2026-03-26"; src = fetchFromGitHub { owner = "nushell"; repo = "nufmt"; - rev = "c03e166babe7b77f1a80a7916ab1e8e2437bba06"; - hash = "sha256-VZiRmo9/jxAFCSr2bHrf89qb6o1Obwt2+O3NrIrokZo="; + rev = "074930a23bc89a5f720a0d46ac2853f3153817c2"; + hash = "sha256-XqiUPAVM6OuyNo9HbBKW+OKQrE7QbSjDRtyfmIYQRxs="; }; nativeBuildInputs = [ rustPlatform.bindgenHook ]; - cargoHash = "sha256-BpKhgF3LUQRL1mNCR5Iq4/Q+eRaOf+JgQCuUfloRhzk="; + cargoHash = "sha256-heHFiW1/2qV6BJH7Y0ObSV1sPfVaU0m2KLbASdzca8s="; - # NOTE: Patch follows similar intention upstream https://github.com/nushell/nufmt/commit/35962223fbd4c1a924b4ccfb8c7ad81fe2863b86 + # NOTE: Patch follows similar intention upstream https://github.com/nushell/nufmt/commit/074930a23bc89a5f720a0d46ac2853f3153817c2 postPatch = '' - substituteInPlace tests/main.rs --replace-fail \ - 'const TEST_BINARY: &str = "target/debug/nufmt";' \ - 'const TEST_BINARY: &str = "target/${stdenv.hostPlatform.rust.rustcTarget}/release/nufmt";' substituteInPlace tests/ground_truth.rs --replace-fail \ - 'const TEST_BINARY: &str = "target/debug/nufmt";' \ - 'const TEST_BINARY: &str = "target/${stdenv.hostPlatform.rust.rustcTarget}/release/nufmt";' + ' let path = PathBuf::from(target_dir).join("debug").join(exe_name);' \ + ' let path = PathBuf::from(target_dir).join("${stdenv.hostPlatform.rust.rustcTarget}/release").join(exe_name);' + substituteInPlace tests/ground_truth.rs --replace-fail \ + ' let default_path = PathBuf::from("target").join("debug").join(exe_name);' \ + ' let default_path = PathBuf::from("target").join("${stdenv.hostPlatform.rust.rustcTarget}/release").join(exe_name);' ''; passthru.updateScript = nix-update-script { extraArgs = [ "--version=branch" ]; }; diff --git a/pkgs/by-name/op/opnborg/package.nix b/pkgs/by-name/op/opnborg/package.nix index 53307d64d9e2..d6235fa0ad52 100644 --- a/pkgs/by-name/op/opnborg/package.nix +++ b/pkgs/by-name/op/opnborg/package.nix @@ -8,16 +8,16 @@ buildGoModule (finalAttrs: { pname = "opnborg"; - version = "0.1.78"; + version = "0.1.80"; src = fetchFromGitHub { owner = "paepckehh"; repo = "opnborg"; tag = "v${finalAttrs.version}"; - hash = "sha256-Vw3ZFVoev/ubS3/eAaCKk2NOKjRFsyMSsXXH1L7Ligg="; + hash = "sha256-DpGwCcBbm3tfKOlxb7qiPJhRTLo36wMXS0QabqWEfes="; }; - vendorHash = "sha256-ATq225/8diieVdjetkWCnBrL/dW4TijchRJdeZ8f0zg="; + vendorHash = "sha256-uSdMb4uTF9YV77bAz4sRJT3ApIeYtlxa4ba7X+Lg7pw="; ldflags = [ "-s" diff --git a/pkgs/by-name/pa/panoply/package.nix b/pkgs/by-name/pa/panoply/package.nix index e970a3db3958..78e9e8030c27 100644 --- a/pkgs/by-name/pa/panoply/package.nix +++ b/pkgs/by-name/pa/panoply/package.nix @@ -8,11 +8,11 @@ stdenvNoCC.mkDerivation rec { pname = "panoply"; - version = "5.9.1"; + version = "5.9.2"; src = fetchurl { url = "https://www.giss.nasa.gov/tools/panoply/download/PanoplyJ-${version}.tgz"; - hash = "sha256-PwGbN/J4zXelzV1nSUqOtOyb7anh+aht46Ihza5aLCc="; + hash = "sha256-fPaPd/ZFblZXOwM2yHeXPIUv/bxGAHki9jbeG2HTckI="; }; nativeBuildInputs = [ makeWrapper ]; diff --git a/pkgs/by-name/pd/pdfposter/package.nix b/pkgs/by-name/pd/pdfposter/package.nix index 98162fdc054d..d710f848c068 100644 --- a/pkgs/by-name/pd/pdfposter/package.nix +++ b/pkgs/by-name/pd/pdfposter/package.nix @@ -1,44 +1,26 @@ { lib, - python3, + python3Packages, fetchPypi, }: -let - localPython = python3.override { - self = localPython; - packageOverrides = self: super: { - # Can be removed once this is merged - # https://gitlab.com/pdftools/pdfposter/-/merge_requests/7 - pypdf2 = super.pypdf2.overridePythonAttrs (oldAttrs: rec { - version = "2.11.1"; - format = "setuptools"; - pyproject = null; - src = fetchPypi { - pname = "PyPDF2"; - inherit version; - hash = "sha256-PHut1RLCFxHrF4nC6tv5YnkonA+URS7lSoZHO/vv1zI="; - }; - }); - }; - }; -in -with localPython.pkgs; -buildPythonApplication rec { +python3Packages.buildPythonApplication rec { pname = "pdfposter"; - version = "0.8.1"; - format = "setuptools"; + version = "0.9.1"; + pyproject = true; - propagatedBuildInputs = [ pypdf2 ]; + build-system = with python3Packages; [ setuptools ]; + + dependencies = with python3Packages; [ pypdf ]; src = fetchPypi { - pname = "pdftools.pdfposter"; + pname = "pdfposter"; inherit version; - hash = "sha256-yWFtHgVKAWs4dRlSk8t8cB2KBJeBOa0Frh3BLR9txS0="; + hash = "sha256-Y5gUrHI470vsORETxkpf3WH5YXgdIeTZvSb3v/UgD24="; }; pythonImportsCheck = [ - "pdftools.pdfposter" - "pdftools.pdfposter.cmd" + "pdfposter" + "pdfposter.cmd" ]; meta = { diff --git a/pkgs/by-name/pd/pdfslicer/package.nix b/pkgs/by-name/pd/pdfslicer/package.nix deleted file mode 100644 index de9635d0b3bb..000000000000 --- a/pkgs/by-name/pd/pdfslicer/package.nix +++ /dev/null @@ -1,70 +0,0 @@ -{ - lib, - stdenv, - fetchFromGitHub, - cmake, - gettext, - intltool, - pkg-config, - wrapGAppsHook3, - gtkmm3, - libuuid, - poppler, - qpdf, -}: - -stdenv.mkDerivation (finalAttrs: { - pname = "pdfslicer"; - version = "1.8.8"; - - src = fetchFromGitHub { - owner = "junrrein"; - repo = "pdfslicer"; - tag = "v${finalAttrs.version}"; - fetchSubmodules = true; - sha256 = "0sja0ddd9c8wjjpzk2ag8q1lxpj09adgmhd7wnsylincqnj2jyls"; - }; - - postPatch = '' - # Don't build tests, vendored catch doesn't build with latest glibc. - substituteInPlace CMakeLists.txt \ - --replace "add_subdirectory (tests)" "" - - # Replace deprecated and now unsupported old cmake version - # https://github.com/NixOS/nixpkgs/issues/445447 - - substituteInPlace third-party/fmtlib/CMakeLists.txt \ - --replace-fail "cmake_minimum_required(VERSION 3.1.0)" \ - "cmake_minimum_required(VERSION 3.10)" - substituteInPlace third-party/GSL/CMakeLists.txt \ - --replace-fail "cmake_minimum_required(VERSION 3.1.3)" \ - "cmake_minimum_required(VERSION 3.10)" - ''; - - nativeBuildInputs = [ - cmake - gettext - intltool - pkg-config - wrapGAppsHook3 - ]; - - buildInputs = [ - gtkmm3 - libuuid - poppler - qpdf - ]; - - env = lib.optionalAttrs (stdenv.cc.isGNU && lib.versionAtLeast stdenv.cc.version "13") { - # Pending upstream compatibility with GCC 13 - CXXFLAGS = "-Wno-changes-meaning"; - }; - - meta = { - description = "Simple application to extract, merge, rotate and reorder pages of PDF documents"; - homepage = "https://junrrein.github.io/pdfslicer/"; - license = lib.licenses.gpl3Plus; - maintainers = with lib.maintainers; [ dotlambda ]; - }; -}) diff --git a/pkgs/by-name/qp/qpdf/package.nix b/pkgs/by-name/qp/qpdf/package.nix index a3dbe20104b6..d24e78fb7e35 100644 --- a/pkgs/by-name/qp/qpdf/package.nix +++ b/pkgs/by-name/qp/qpdf/package.nix @@ -11,7 +11,6 @@ # for passthru.tests cups-filters, pdfmixtool, - pdfslicer, python3, testers, versionCheckHook, @@ -80,7 +79,6 @@ stdenv.mkDerivation (finalAttrs: { inherit cups-filters pdfmixtool - pdfslicer ; }; diff --git a/pkgs/by-name/sa/saw-tools/package.nix b/pkgs/by-name/sa/saw-tools/package.nix index 1136ccef30d7..c08c9abc222c 100644 --- a/pkgs/by-name/sa/saw-tools/package.nix +++ b/pkgs/by-name/sa/saw-tools/package.nix @@ -11,16 +11,17 @@ testers, }: +let + sources = import ./sources.nix; +in + stdenv.mkDerivation (finalAttrs: { pname = "saw-tools"; - version = "1.4"; + version = "1.5"; - src = fetchurl { - url = "https://github.com/GaloisInc/saw-script/releases/download/v${finalAttrs.version}/saw-${finalAttrs.version}-ubuntu-22.04-X64-with-solvers.tar.gz"; - hash = "sha256-AjMGOi0Nzl0cjVltjgbqhzBiPpIZbDtS3+SqergeulE="; - }; + src = fetchurl sources.${stdenv.hostPlatform.system}; - buildInputs = [ + buildInputs = lib.optionals stdenv.hostPlatform.isLinux [ gmp ncurses readline @@ -28,10 +29,13 @@ stdenv.mkDerivation (finalAttrs: { zlib ]; - nativeBuildInputs = [ - autoPatchelfHook - makeWrapper - ]; + nativeBuildInputs = + lib.optionals stdenv.hostPlatform.isLinux [ + autoPatchelfHook + ] + ++ [ + makeWrapper + ]; installPhase = '' mkdir -p $out/lib $out/share @@ -49,10 +53,14 @@ stdenv.mkDerivation (finalAttrs: { meta = { description = "Tools for software verification and analysis"; - homepage = "https://saw.galois.com"; + homepage = "https://tools.galois.com/saw"; sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ]; license = lib.licenses.bsd3; - platforms = [ "x86_64-linux" ]; - maintainers = [ lib.maintainers.thoughtpolice ]; + platforms = lib.attrNames sources; + maintainers = with lib.maintainers; [ + thoughtpolice + thelissimus + ]; + mainProgram = "saw"; }; }) diff --git a/pkgs/by-name/sa/saw-tools/sources.nix b/pkgs/by-name/sa/saw-tools/sources.nix new file mode 100644 index 000000000000..5f17154d628c --- /dev/null +++ b/pkgs/by-name/sa/saw-tools/sources.nix @@ -0,0 +1,16 @@ +# Generated by ./update.sh - do not update manually! +# Last updated: 2026-03-28 +{ + aarch64-darwin = { + url = "https://github.com/GaloisInc/saw-script/releases/download/v1.5/saw-1.5-macos-15-ARM64-with-solvers.tar.gz"; + hash = "sha256-1mURJfcnIRhuLrG1Gf4SRXmTzLbztBBRQGcXFFiAWWU="; + }; + x86_64-darwin = { + url = "https://github.com/GaloisInc/saw-script/releases/download/v1.5/saw-1.5-macos-15-intel-X64-with-solvers.tar.gz"; + hash = "sha256-f3NofLPR6tarcZg/EjtCv1mSxz5O4nTKeOEoTPeGgf8="; + }; + x86_64-linux = { + url = "https://github.com/GaloisInc/saw-script/releases/download/v1.5/saw-1.5-ubuntu-22.04-X64-with-solvers.tar.gz"; + hash = "sha256-k9Qo93d0IXBRe7P+wU20LjFjM+LdHf6Z2S0Nybmh/4E="; + }; +} diff --git a/pkgs/by-name/sa/saw-tools/update.sh b/pkgs/by-name/sa/saw-tools/update.sh new file mode 100755 index 000000000000..0baf5021543f --- /dev/null +++ b/pkgs/by-name/sa/saw-tools/update.sh @@ -0,0 +1,41 @@ +#!/usr/bin/env nix-shell +#! nix-shell -i bash --pure -p nix + +set -euo pipefail + +cd "$(readlink -e "$(dirname "${BASH_SOURCE[0]}")")" + +version="1.5" + +aarch64_darwin_url="https://github.com/GaloisInc/saw-script/releases/download/v${version}/saw-${version}-macos-15-ARM64-with-solvers.tar.gz" +x86_64_darwin_url="https://github.com/GaloisInc/saw-script/releases/download/v${version}/saw-${version}-macos-15-intel-X64-with-solvers.tar.gz" +x86_64_linux_url="https://github.com/GaloisInc/saw-script/releases/download/v${version}/saw-${version}-ubuntu-22.04-X64-with-solvers.tar.gz" + +aarch64_darwin_hash=$(nix-prefetch-url "$aarch64_darwin_url") +x86_64_darwin_hash=$(nix-prefetch-url "$x86_64_darwin_url") +x86_64_linux_hash=$(nix-prefetch-url "$x86_64_linux_url") + +aarch64_darwin_hash=$(nix --extra-experimental-features nix-command hash convert --to sri --hash-algo sha256 "$aarch64_darwin_hash") +x86_64_darwin_hash=$(nix --extra-experimental-features nix-command hash convert --to sri --hash-algo sha256 "$x86_64_darwin_hash") +x86_64_linux_hash=$(nix --extra-experimental-features nix-command hash convert --to sri --hash-algo sha256 "$x86_64_linux_hash") + +sed -i "s/version = \".*\"/version = \"${version}\"/" package.nix + +cat >sources.nix <=6.0.0, <14.0). + # TODO: remove at the next release + (fetchpatch { + name = "allow-gcc-14-with-cuda-12.8-9"; + url = "https://github.com/pytorch/pytorch/commit/39565a7dcf8f93ea22cedeaa20088b24ff6d2634.patch"; + hash = "sha256-Au5fVbs7i33d9c4Xj8koiBP7lGnsTGTaX4VlE2gAfy8="; + }) ] ++ lib.optionals cudaSupport [ ./fix-cmake-cuda-toolkit.patch @@ -741,7 +754,9 @@ buildPythonPackage.override { inherit stdenv; } (finalAttrs: { blasProvider = blas.provider; # To help debug when a package is broken due to CUDA support inherit brokenConditions; - tests = callPackage ../tests { }; + tests = callPackage ../tests { + inherit rocmSupport cudaSupport; + }; }; meta = { diff --git a/pkgs/development/python-modules/torch/tests/default.nix b/pkgs/development/python-modules/torch/tests/default.nix index 90fb21d018d7..28e6081b792a 100644 --- a/pkgs/development/python-modules/torch/tests/default.nix +++ b/pkgs/development/python-modules/torch/tests/default.nix @@ -1,33 +1,58 @@ -{ callPackage }: +{ + lib, + stdenv, + callPackage, + torchvision, + torchcodec, + torchaudio, -rec { - # To perform the runtime check use either - # `nix run .#python3Packages.torch.tests.tester-cudaAvailable` (outside the sandbox), or - # `nix build .#python3Packages.torch.tests.tester-cudaAvailable.gpuCheck` (in a relaxed sandbox) - tester-cudaAvailable = callPackage ./mk-runtime-check.nix { - feature = "cuda"; - versionAttr = "cuda"; - libraries = ps: [ ps.torchWithCuda ]; - }; - tester-rocmAvailable = callPackage ./mk-runtime-check.nix { - feature = "rocm"; - versionAttr = "hip"; - libraries = ps: [ ps.torchWithRocm ]; + rocmSupport, + cudaSupport, +}: + +let + cudaOnly = { + # To perform the runtime check use either + # `nix run .#python3Packages.torch.tests.tester-cudaAvailable` (outside the sandbox), or + # `nix build .#python3Packages.torch.tests.tester-cudaAvailable.gpuCheck` (in a relaxed sandbox) + tester-cudaAvailable = callPackage ./mk-runtime-check.nix { + feature = "cuda"; + versionAttr = "cuda"; + libraries = ps: [ ps.torchWithCuda ]; + }; + + tester-compileCuda = callPackage ./mk-torch-compile-check.nix { + feature = "cuda"; + libraries = ps: [ ps.torchWithCuda ]; + }; }; - compileCpu = tester-compileCpu.gpuCheck; + rocmOnly = { + tester-rocmAvailable = callPackage ./mk-runtime-check.nix { + feature = "rocm"; + versionAttr = "hip"; + libraries = ps: [ ps.torchWithRocm ]; + }; + tester-compileRocm = callPackage ./mk-torch-compile-check.nix { + feature = "rocm"; + libraries = ps: [ ps.torchWithRocm ]; + }; + }; +in +let tester-compileCpu = callPackage ./mk-torch-compile-check.nix { feature = null; libraries = ps: [ ps.torch ]; }; - tester-compileCuda = callPackage ./mk-torch-compile-check.nix { - feature = "cuda"; - libraries = ps: [ ps.torchWithCuda ]; - }; - tester-compileRocm = callPackage ./mk-torch-compile-check.nix { - feature = "rocm"; - libraries = ps: [ ps.torchWithRocm ]; - }; +in +{ + inherit tester-compileCpu; + compileCpu = tester-compileCpu.gpuCheck; mnist-example = callPackage ./mnist-example { }; + + # Core packages from the torch ecosystem + inherit torchvision torchaudio torchcodec; } +// lib.optionalAttrs cudaSupport cudaOnly +// lib.optionalAttrs rocmSupport rocmOnly diff --git a/pkgs/development/python-modules/torchaudio/default.nix b/pkgs/development/python-modules/torchaudio/default.nix index 4e967e98cd50..3ccc529f35a5 100644 --- a/pkgs/development/python-modules/torchaudio/default.nix +++ b/pkgs/development/python-modules/torchaudio/default.nix @@ -1,5 +1,6 @@ { lib, + stdenv, buildPythonPackage, fetchFromGitHub, @@ -53,18 +54,6 @@ buildPythonPackage.override { inherit (torch) stdenv; } (finalAttrs: { TORCHAUDIO_TEST_ALLOW_SKIP_IF_NO_CUDA = 1; TORCHAUDIO_TEST_ALLOW_SKIP_IF_NO_MULTIGPU_CUDA = 1; - # At of 2026-03-27, the default `cudaPackages` version is 12.9.1 - # According to Nvidia, it should support GCC versions up to 14.x: - # -> https://docs.nvidia.com/cuda/archive/12.9.1/cuda-installation-guide-linux/index.html#host-compiler-support-policy - # However, PyTorch's *strict* upper bound is 14.0: - # -> https://github.com/pytorch/pytorch/blob/v2.11.0/torch/utils/cpp_extension.py#L75 - # Hence, the build fails with: - # RuntimeError: The current installed version of g++ (14.3.0) is greater than the maximum - # required version by CUDA 12.9. Please make sure to use an adequate version of g++ - # (>=6.0.0, <14.0). - # Hence, we disable the version check to silence the error: - TORCH_DONT_CHECK_COMPILER_ABI = cudaSupport; - # ROCM USE_ROCM = rocmSupport; PYTORCH_ROCM_ARCH = lib.optionalString rocmSupport torch.gpuTargetString; @@ -80,6 +69,11 @@ buildPythonPackage.override { inherit (torch) stdenv; } (finalAttrs: { # RuntimeError: Test is known to fail for Python 3.10, disabling for now # See: https://github.com/pytorch/audio/pull/2224#issuecomment-1048329450 TORCHAUDIO_TEST_ALLOW_SKIP_IF_ON_PYTHON_310 = true; + + # Fails on aarch64-linux with: + # RuntimeError: `fbgemm` is not available + TORCHAUDIO_TEST_ALLOW_SKIP_IF_NO_QUANTIZATION = + stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isAarch64; }; build-system = [ @@ -128,9 +122,17 @@ buildPythonPackage.override { inherit (torch) stdenv; } (finalAttrs: { # Very long to run "AutogradCPUTest" + ] + ++ lib.optionals (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isAarch64) [ + # AssertionError: Tensor-likes are not close! + "test_batch_inverse_spectrogram" + "test_batch_pitch_shift" + "test_batch_spectrogram" + "test_griffinlim_0_99" ]; passthru.gpuCheck = torchaudio.overridePythonAttrs (old: { + pname = "${finalAttrs.pname}-gpuCheck"; requiredSystemFeatures = [ "cuda" ]; env = (old.env or { }) // { diff --git a/pkgs/development/python-modules/torchvision/default.nix b/pkgs/development/python-modules/torchvision/default.nix index e57eadd789ec..945875ce3220 100644 --- a/pkgs/development/python-modules/torchvision/default.nix +++ b/pkgs/development/python-modules/torchvision/default.nix @@ -63,18 +63,6 @@ buildPythonPackage.override { inherit (torch) stdenv; } (finalAttrs: { TORCHVISION_LIBRARY = "${libjpeg_turbo}/lib/"; } // lib.optionalAttrs cudaSupport { - # At of 2026-03-27, the default `cudaPackages` version is 12.9.1 - # According to Nvidia, it should support GCC versions up to 14.x: - # -> https://docs.nvidia.com/cuda/archive/12.9.1/cuda-installation-guide-linux/index.html#host-compiler-support-policy - # However, PyTorch's *strict* upper bound is 14.0: - # -> https://github.com/pytorch/pytorch/blob/v2.11.0/torch/utils/cpp_extension.py#L75 - # Hence, the build fails with: - # RuntimeError: The current installed version of g++ (14.3.0) is greater than the maximum - # required version by CUDA 12.9. Please make sure to use an adequate version of g++ - # (>=6.0.0, <14.0). - # Hence, we disable the version check to silence the error: - TORCH_DONT_CHECK_COMPILER_ABI = 1; - TORCH_CUDA_ARCH_LIST = "${lib.concatStringsSep ";" cudaCapabilities}"; FORCE_CUDA = 1; }; diff --git a/pkgs/development/python-modules/victron-mqtt/default.nix b/pkgs/development/python-modules/victron-mqtt/default.nix index 65a85288beb9..50ae49f00e90 100644 --- a/pkgs/development/python-modules/victron-mqtt/default.nix +++ b/pkgs/development/python-modules/victron-mqtt/default.nix @@ -12,14 +12,14 @@ buildPythonPackage (finalAttrs: { pname = "victron-mqtt"; - version = "2026.3.10"; + version = "2026.3.12"; pyproject = true; src = fetchFromGitHub { owner = "tomer-w"; repo = "victron_mqtt"; tag = "v${finalAttrs.version}"; - hash = "sha256-qVMgBeRdBCc2ykNP1W2XQ2fL9wYgjJ6V4h9qvO5d8EY="; + hash = "sha256-LfU75pOXFUck56okddlcABj0wM1SI/Os3lkfrQ37bjQ="; }; build-system = [ diff --git a/pkgs/development/python-modules/wikitextprocessor/default.nix b/pkgs/development/python-modules/wikitextprocessor/default.nix new file mode 100644 index 000000000000..339a140c7026 --- /dev/null +++ b/pkgs/development/python-modules/wikitextprocessor/default.nix @@ -0,0 +1,68 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + setuptools, + dateparser, + lupa, + lxml, + mediawiki-langcodes, + psutil, + requests, + pytestCheckHook, + unstableGitUpdater, +}: + +buildPythonPackage { + pname = "wikitextprocessor"; + version = "0.4.96-unstable-2026-03-06"; + pyproject = true; + + src = fetchFromGitHub { + owner = "tatuylonen"; + repo = "wikitextprocessor"; + fetchSubmodules = true; + rev = "9d9a410c45c06d30239bcc0d8c1a57718a3f7a2c"; + hash = "sha256-qhl9yRF2MUQvKXgcuxu20h6cEQofN1xMMb4JJZcFHS0="; + }; + + build-system = [ setuptools ]; + + pythonRelaxDeps = [ "dateparser" ]; + + dependencies = [ + dateparser + lupa + lxml + mediawiki-langcodes + psutil + requests + ]; + + pythonImportsCheck = [ "wikitextprocessor" ]; + + nativeCheckInputs = [ + pytestCheckHook + ]; + + disabledTests = [ + # It requires Internet + "test_process_dump" + # It attempts to write a readonly database + "test_fetchlanguage" + "test_language_parser_function" + ]; + + passthru.updateScript = unstableGitUpdater { }; + + meta = { + description = "Parser and expander for Wikipedia, Wiktionary etc. dump files, with Lua execution support"; + homepage = "https://github.com/tatuylonen/wikitextprocessor"; + license = with lib.licenses; [ + mit + cc-by-sa-40 # Needed for certain test files under Wiktionary licence + gpl2Plus # Needed for certain files in lua/mediawiki-extensions-Scribunto/ + ]; + maintainers = with lib.maintainers; [ theobori ]; + }; +} diff --git a/pkgs/development/python-modules/wiktextract/default.nix b/pkgs/development/python-modules/wiktextract/default.nix new file mode 100644 index 000000000000..a1e5f04d75f0 --- /dev/null +++ b/pkgs/development/python-modules/wiktextract/default.nix @@ -0,0 +1,51 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + setuptools, + levenshtein, + nltk, + pydantic, + wikitextprocessor, + unstableGitUpdater, +}: + +buildPythonPackage { + pname = "wiktextract"; + version = "1.99.7-unstable-2026-03-26"; + pyproject = true; + + src = fetchFromGitHub { + owner = "tatuylonen"; + repo = "wiktextract"; + rev = "f47b8fc87a0e17f4dcca68f534e73f4c6fa8e8e7"; + hash = "sha256-U9Xm3vRAvONN/DwyhEEM54eiBnv7JKAEXPolK9HfJU8="; + }; + + build-system = [ setuptools ]; + + dependencies = [ + levenshtein + nltk + pydantic + wikitextprocessor + ]; + + # It requires Internet + doCheck = false; + + pythonImportsCheck = [ "wiktextract" ]; + + passthru.updateScript = unstableGitUpdater { }; + + meta = { + description = "Wiktionary dump file parser and multilingual data extractor"; + homepage = "https://github.com/tatuylonen/wiktextract"; + license = with lib.licenses; [ + mit + cc-by-sa-40 # Needed for certain test files under Wiktionary licence + ]; + maintainers = with lib.maintainers; [ theobori ]; + mainProgram = "wiktwords"; + }; +} diff --git a/pkgs/development/python-modules/withings-sync/default.nix b/pkgs/development/python-modules/withings-sync/default.nix index 210033536aeb..9a55b19272d7 100644 --- a/pkgs/development/python-modules/withings-sync/default.nix +++ b/pkgs/development/python-modules/withings-sync/default.nix @@ -10,21 +10,21 @@ requests, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "withings-sync"; - version = "5.3.0"; + version = "5.3.2"; pyproject = true; src = fetchFromGitHub { owner = "jaroslawhartman"; repo = "withings-sync"; - tag = "v${version}"; - hash = "sha256-Q9zOXQIdl4jpCK6a5Xp4kZK67MqudX0thDAkRmdL3AQ="; + tag = "v${finalAttrs.version}"; + hash = "sha256-1pDM5paSXPQCOG5LRFxnp19K1iHcsfrGC9e7SEyxUDs="; }; postPatch = '' substituteInPlace pyproject.toml \ - --replace-fail "1.0.0.dev1" "${version}" + --replace-fail "1.0.0.dev1" "${finalAttrs.version}" ''; build-system = [ poetry-core ]; @@ -42,9 +42,9 @@ buildPythonPackage rec { meta = { description = "Synchronisation of Withings weight"; homepage = "https://github.com/jaroslawhartman/withings-sync"; - changelog = "https://github.com/jaroslawhartman/withings-sync/releases/tag/${src.tag}"; + changelog = "https://github.com/jaroslawhartman/withings-sync/releases/tag/${finalAttrs.src.tag}"; license = lib.licenses.mit; maintainers = with lib.maintainers; [ fab ]; mainProgram = "withings-sync"; }; -} +}) diff --git a/pkgs/os-specific/linux/amneziawg/default.nix b/pkgs/os-specific/linux/amneziawg/default.nix index b3fb2bb4a566..e291e91d77d5 100644 --- a/pkgs/os-specific/linux/amneziawg/default.nix +++ b/pkgs/os-specific/linux/amneziawg/default.nix @@ -9,21 +9,15 @@ stdenv.mkDerivation (finalAttrs: { pname = "amneziawg"; - version = "1.0.20260322"; + version = "1.0.20260329-2"; src = fetchFromGitHub { owner = "amnezia-vpn"; repo = "amneziawg-linux-kernel-module"; tag = "v${finalAttrs.version}"; - hash = "sha256-Y6TETOo5oAr3ZtqsJX909zm38rXq+1fAXiRFSt+g2Gw="; + hash = "sha256-BlWnncTzVKDpCVvtLp8L+bABs81YH/Ce+9JGCoCm1LI="; }; - patches = [ - # fix aarch64-linux builds with NEON - # upstream PR: https://github.com/amnezia-vpn/amneziawg-linux-kernel-module/pull/159 - ./neon-619.patch - ]; - sourceRoot = "${finalAttrs.src.name}/src"; hardeningDisable = [ "pic" ]; nativeBuildInputs = kernel.moduleBuildDependencies; diff --git a/pkgs/os-specific/linux/amneziawg/neon-619.patch b/pkgs/os-specific/linux/amneziawg/neon-619.patch deleted file mode 100644 index 7daac1ecd873..000000000000 --- a/pkgs/os-specific/linux/amneziawg/neon-619.patch +++ /dev/null @@ -1,74 +0,0 @@ ---- a/compat/simd/include/linux/simd.h -+++ b/compat/simd/include/linux/simd.h -@@ -18,31 +18,42 @@ typedef enum { - HAVE_NO_SIMD = 1 << 0, - HAVE_FULL_SIMD = 1 << 1, - HAVE_SIMD_IN_USE = 1 << 31 -+} simd_state_t; -+ -+typedef struct { -+ simd_state_t state; -+#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 19, 0) && defined(CONFIG_KERNEL_MODE_NEON) -+ struct user_fpsimd_state kstate; -+#endif - } simd_context_t; - - #define DONT_USE_SIMD ((simd_context_t []){ HAVE_NO_SIMD }) - - static inline void simd_get(simd_context_t *ctx) - { -- *ctx = !IS_ENABLED(CONFIG_PREEMPT_RT) && !IS_ENABLED(CONFIG_PREEMPT_RT_BASE) && may_use_simd() ? HAVE_FULL_SIMD : HAVE_NO_SIMD; -+ ctx->state = !IS_ENABLED(CONFIG_PREEMPT_RT) && !IS_ENABLED(CONFIG_PREEMPT_RT_BASE) && may_use_simd() ? HAVE_FULL_SIMD : HAVE_NO_SIMD; - } - - static inline void simd_put(simd_context_t *ctx) - { - #if defined(CONFIG_X86_64) -- if (*ctx & HAVE_SIMD_IN_USE) -+ if (ctx->state & HAVE_SIMD_IN_USE) - kernel_fpu_end(); - #elif defined(CONFIG_KERNEL_MODE_NEON) -- if (*ctx & HAVE_SIMD_IN_USE) -+ if (ctx->state & HAVE_SIMD_IN_USE) -+#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 19, 0) -+ kernel_neon_end(&ctx->kstate); -+#else - kernel_neon_end(); - #endif -- *ctx = HAVE_NO_SIMD; -+#endif -+ ctx->state = HAVE_NO_SIMD; - } - - static inline bool simd_relax(simd_context_t *ctx) - { - #ifdef CONFIG_PREEMPT -- if ((*ctx & HAVE_SIMD_IN_USE) && need_resched()) { -+ if ((ctx->state & HAVE_SIMD_IN_USE) && need_resched()) { - simd_put(ctx); - simd_get(ctx); - return true; -@@ -53,16 +64,20 @@ static inline bool simd_relax(simd_context_t *ctx) - - static __must_check inline bool simd_use(simd_context_t *ctx) - { -- if (!(*ctx & HAVE_FULL_SIMD)) -+ if (!(ctx->state & HAVE_FULL_SIMD)) - return false; -- if (*ctx & HAVE_SIMD_IN_USE) -+ if (ctx->state & HAVE_SIMD_IN_USE) - return true; - #if defined(CONFIG_X86_64) - kernel_fpu_begin(); - #elif defined(CONFIG_KERNEL_MODE_NEON) -+#if LINUX_VERSION_CODE > KERNEL_VERSION(6, 19, 0) -+ kernel_neon_begin(&ctx->kstate); -+#else - kernel_neon_begin(); - #endif -- *ctx |= HAVE_SIMD_IN_USE; -+#endif -+ ctx->state |= HAVE_SIMD_IN_USE; - return true; - } - diff --git a/pkgs/servers/home-assistant/custom-lovelace-modules/universal-remote-card/package.nix b/pkgs/servers/home-assistant/custom-lovelace-modules/universal-remote-card/package.nix index 6d0dd5f42982..32786a78a71b 100644 --- a/pkgs/servers/home-assistant/custom-lovelace-modules/universal-remote-card/package.nix +++ b/pkgs/servers/home-assistant/custom-lovelace-modules/universal-remote-card/package.nix @@ -6,16 +6,16 @@ buildNpmPackage rec { pname = "universal-remote-card"; - version = "4.10.7"; + version = "4.10.8"; src = fetchFromGitHub { owner = "Nerwyn"; repo = "android-tv-card"; rev = version; - hash = "sha256-75GLAKIRYsX4phoiZYQ4njht2mHGYwJfZednXj8AoA4="; + hash = "sha256-VeLAvCdVFO0LsO/vvaHZVYy0F1DHjD82jHay+Au9kPU="; }; - npmDepsHash = "sha256-kYHv2epYw9UZsBQTGI9r902CTheixGZeww+hQi0+Q/w="; + npmDepsHash = "sha256-c/ZqmMZECRUjQW88eJqdOowPynAdOcve8qtHZhuEBak="; installPhase = '' runHook preInstall diff --git a/pkgs/tools/package-management/lix/common-lix.nix b/pkgs/tools/package-management/lix/common-lix.nix index 68fa730097d7..9e400afd6b06 100644 --- a/pkgs/tools/package-management/lix/common-lix.nix +++ b/pkgs/tools/package-management/lix/common-lix.nix @@ -24,6 +24,7 @@ assert lib.assertMsg ( closureInfo, runCommand, meson, + bash, bison, boehmgc, boost, @@ -35,6 +36,7 @@ assert lib.assertMsg ( cargo, curl, cmake, + darwin, doxygen, editline, flex, @@ -375,6 +377,19 @@ stdenv.mkDerivation (finalAttrs: { )) (lib.mesonOption "build-test-shell" "${pkgsStatic.bash}/bin") ] + ++ + lib.optionals + (stdenv.hostPlatform.isDarwin && finalAttrs.doInstallCheck && lib.versionAtLeast version "2.95") + [ + (lib.mesonOption "build-test-env" ( + lib.makeBinPath [ + darwin.file_cmds + darwin.shell_cmds + darwin.text_cmds + ] + )) + (lib.mesonOption "build-test-shell" "${bash}/bin") + ] ++ lib.optionals (lib.versionAtLeast version "2.95") [ "--${ if stdenv.hostPlatform != stdenv.buildPlatform then "cross" else "native" diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 88c5ee8d483b..2e6645f44f9e 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -1546,6 +1546,7 @@ mapAliases { pcsctools = throw "'pcsctools' has been renamed to/replaced by 'pcsc-tools'"; # Converted to throw 2025-10-27 pdf2djvu = throw "pdf2djvu has been removed because it was broken and archived upstream"; # added 2025-12-06 pdf4tcl = throw "'pdf4tcl' has been renamed to/replaced by 'tclPackages.pdf4tcl'"; # Converted to throw 2025-10-27 + pdfslicer = throw "'pdfslicer' has been removed because it was broken and abandoned upstream"; # added 2026-03-26 pds = warnAlias "'pds' has been renamed to 'bluesky-pds'" bluesky-pds; # Added 2025-08-20 pdsadmin = warnAlias "'pdsadmin' has been renamed to 'bluesky-pdsadmin'" bluesky-pdsadmin; # Added 2025-08-20 peach = throw "'peach' has been renamed to/replaced by 'asouldocs'"; # Converted to throw 2025-10-27 diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 8377b61ef6b6..036e5dada01e 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -9666,6 +9666,8 @@ self: super: with self; { mediapy = callPackage ../development/python-modules/mediapy { }; + mediawiki-langcodes = callPackage ../development/python-modules/mediawiki-langcodes { }; + medpy = callPackage ../development/python-modules/medpy { }; medvol = callPackage ../development/python-modules/medvol { }; @@ -21091,6 +21093,10 @@ self: super: with self; { wikitextparser = callPackage ../development/python-modules/wikitextparser { }; + wikitextprocessor = callPackage ../development/python-modules/wikitextprocessor { }; + + wiktextract = callPackage ../development/python-modules/wiktextract { }; + willow = callPackage ../development/python-modules/willow { }; winacl = callPackage ../development/python-modules/winacl { };