diff --git a/doc/release-notes/rl-2605.section.md b/doc/release-notes/rl-2605.section.md index 2e7efbd71690..fb6d78e1046c 100644 --- a/doc/release-notes/rl-2605.section.md +++ b/doc/release-notes/rl-2605.section.md @@ -29,6 +29,8 @@ - `iroh` has been removed and split up into `iroh-dns-server` and `iroh-relay`. +- `python3Packages.pygame` has been been renamed to `python3Packages.pygame-original`, the attribute `python3Packages.pygame` will from python 3.14 default to the more actively maintained `python3Packages.pygame-ce` + - `python3Packages.gradio` has been updated to version 6. See upstream's migration guide at https://www.gradio.app/main/guides/gradio-6-migration-guide. - `vicinae` has been updated to v0.17. Version 0.17 contains a complete overhaul of the configuration system. For update instructions, see the [release notes for v0.17.0](https://github.com/vicinaehq/vicinae/releases/tag/v0.17.0) and the [upstream configuration documentation](https://docs.vicinae.com/config). diff --git a/nixos/modules/services/audio/icecast.nix b/nixos/modules/services/audio/icecast.nix index 930b6af004a2..feb78ca8fc5c 100644 --- a/nixos/modules/services/audio/icecast.nix +++ b/nixos/modules/services/audio/icecast.nix @@ -5,8 +5,14 @@ ... }: let + inherit (lib) + mkRemovedOptionModule + mkRenamedOptionModule + ; + cfg = config.services.icecast; configFile = pkgs.writeText "icecast.xml" '' + ${cfg.hostname} @@ -16,7 +22,7 @@ let - ${cfg.logDir} + /var/log/icecast ${pkgs.icecast}/share/icecast/admin ${pkgs.icecast}/share/icecast/web @@ -29,18 +35,27 @@ let 0 - - ${cfg.user} - ${cfg.group} - - ${cfg.extraConf} + ${cfg.extraConfig} ''; in { + imports = [ + (mkRemovedOptionModule [ "services" "icecast" "logDir" ] '' + The log directory is now managed by systemd's LogsDirectory= directive. + '') + (mkRemovedOptionModule [ "services" "icecast" "user" ] '' + The service now runs under the dynamically allocated `icecast` user. + '') + (mkRemovedOptionModule [ "services" "icecast" "group" ] '' + The service now runs under the dynamically allocated `icecast` group. + '') + (mkRenamedOptionModule [ "services" "icecast" "extraConf" ] [ "services" "icecast" "extraConfig" ]) + ]; + ###### interface options = { @@ -69,12 +84,6 @@ in }; }; - logDir = lib.mkOption { - type = lib.types.path; - description = "Base directory used for logging."; - default = "/var/log/icecast"; - }; - listen = { port = lib.mkOption { type = lib.types.port; @@ -89,22 +98,12 @@ in }; }; - user = lib.mkOption { - type = lib.types.str; - description = "User privileges for the server."; - default = "nobody"; - }; - - group = lib.mkOption { - type = lib.types.str; - description = "Group privileges for the server."; - default = "nogroup"; - }; - - extraConf = lib.mkOption { + extraConfig = lib.mkOption { type = lib.types.lines; - description = "icecast.xml content."; default = ""; + description = '' + Extra configuration added to {file}`icecast.xml` inside the `` element. + ''; }; }; @@ -120,11 +119,20 @@ in description = "Icecast Network Audio Streaming Server"; wantedBy = [ "multi-user.target" ]; - preStart = "mkdir -p ${cfg.logDir} && chown ${cfg.user}:${cfg.group} ${cfg.logDir}"; serviceConfig = { Type = "simple"; - ExecStart = "${pkgs.icecast}/bin/icecast -c ${configFile}"; - ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID"; + DynamicUser = true; + ExecStart = toString [ + (lib.getExe pkgs.icecast) + "-c" + configFile + ]; + ExecReload = toString [ + (lib.getExe' pkgs.coreutils "kill") + "-HUP" + "$MAINPID" + ]; + LogsDirectory = "icecast"; }; }; diff --git a/nixos/modules/services/security/kanidm.nix b/nixos/modules/services/security/kanidm.nix index f0c6e836194d..0abf864a8fc7 100644 --- a/nixos/modules/services/security/kanidm.nix +++ b/nixos/modules/services/security/kanidm.nix @@ -394,7 +394,7 @@ in instanceUrl = mkOption { description = "The instance url to which the provisioning tool should connect."; default = "https://localhost:${serverPort}"; - defaultText = ''"https://localhost:"''; + defaultText = "https://localhost:"; type = types.str; }; diff --git a/nixos/modules/system/activation/activatable-system.nix b/nixos/modules/system/activation/activatable-system.nix index c3739f627a16..6513706b2769 100644 --- a/nixos/modules/system/activation/activatable-system.nix +++ b/nixos/modules/system/activation/activatable-system.nix @@ -74,7 +74,7 @@ in '' cp ${activationScript} $out/activate cp ${dryActivationScript} $out/dry-activate - ${lib.getExe pkgs.gnused} --in-place --expression "s|@out@|''${!toplevelVar}|g" $out/activate $out/dry-activate + ${lib.getExe pkgs.buildPackages.gnused} --in-place --expression "s|@out@|''${!toplevelVar}|g" $out/activate $out/dry-activate ''; system.systemBuilderCommands = lib.mkIf config.system.activatable config.system.activatableSystemBuilderCommands; diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index 4edc8777cf16..be7df9027bb4 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -748,6 +748,7 @@ in hydra = runTest ./hydra; i18n = runTest ./i18n.nix; i3wm = runTest ./i3wm.nix; + icecast = runTest ./icecast.nix; icingaweb2 = runTest ./icingaweb2.nix; ifm = runTest ./ifm.nix; ifstate = import ./ifstate { inherit runTest; }; diff --git a/nixos/tests/icecast.nix b/nixos/tests/icecast.nix new file mode 100644 index 000000000000..bb6652e8ecf8 --- /dev/null +++ b/nixos/tests/icecast.nix @@ -0,0 +1,25 @@ +{ + pkgs, + ... +}: + +{ + name = "icecast"; + meta = { + inherit (pkgs.icecast.meta) maintainers; + }; + + nodes.machine = { + services.icecast = { + enable = true; + hostname = "nixos.test"; + admin.password = "test"; + }; + }; + + testScript = '' + machine.wait_for_unit("icecast.service") + machine.wait_for_open_port(8000) + machine.succeed("curl -fail http://localhost:8000 | grep -q 'DO NOT ATTEMPT TO PARSE ICECAST HTML OUTPUT'") + ''; +} diff --git a/pkgs/by-name/br/brutalmaze/package.nix b/pkgs/by-name/br/brutalmaze/package.nix index fd7341aae392..1266b4cce2a5 100644 --- a/pkgs/by-name/br/brutalmaze/package.nix +++ b/pkgs/by-name/br/brutalmaze/package.nix @@ -1,14 +1,14 @@ { lib, fetchFromSourcehut, - python3Packages, + python312Packages, }: -python3Packages.buildPythonApplication rec { +python312Packages.buildPythonApplication rec { pname = "brutalmaze"; version = "1.1.1"; format = "pyproject"; - disabled = python3Packages.pythonOlder "3.7"; + disabled = python312Packages.pythonOlder "3.7"; src = fetchFromSourcehut { owner = "~cnx"; @@ -17,14 +17,19 @@ python3Packages.buildPythonApplication rec { sha256 = "1m105iq378mypj64syw59aldbm6bj4ma4ynhc50gafl656fabg4y"; }; - nativeBuildInputs = with python3Packages; [ + postPatch = '' + substituteInPlace pyproject.toml \ + --replace-fail "pygame" "pygame-ce" + ''; + + nativeBuildInputs = with python312Packages; [ flit-core ]; - propagatedBuildInputs = with python3Packages; [ + propagatedBuildInputs = with python312Packages; [ loca palace - pygame + pygame-ce ]; doCheck = false; # there's no test diff --git a/pkgs/by-name/cl/claude-code-router/package.nix b/pkgs/by-name/cl/claude-code-router/package.nix index 736842ad94cd..4cf6bfcffe0e 100644 --- a/pkgs/by-name/cl/claude-code-router/package.nix +++ b/pkgs/by-name/cl/claude-code-router/package.nix @@ -4,30 +4,31 @@ fetchFromGitHub, lib, makeBinaryWrapper, - nodejs_24, - pnpm_9, + nodejs_20, + pnpm_10, fetchPnpmDeps, pnpmConfigHook, versionCheckHook, }: let - buildNpmPackage' = buildNpmPackage.override { nodejs = nodejs_24; }; - pnpm' = pnpm_9.override { nodejs = nodejs_24; }; + nodejs = nodejs_20; + buildNpmPackage' = buildNpmPackage.override { inherit nodejs; }; + pnpm' = pnpm_10.override { inherit nodejs; }; in buildNpmPackage' (finalAttrs: { pname = "claude-code-router"; - version = "1.0.64"; + version = "1.0.73"; src = fetchFromGitHub { owner = "musistudio"; repo = "claude-code-router"; - rev = "1a4462a92362e8c41d4539dc1a79fb85fccf9559"; - hash = "sha256-q818e8PcKjdBqYk6WfGLKQ8pybXWVxmNV8KX7GjEQq0="; + rev = "a7e20325dbb2a8827db0c9ee12924bdecfa19fd9"; + hash = "sha256-E5m5DiuCaZy8ac4bejpnyooaJ+YKc0ZqMIOhI2aOclk="; }; postPatch = '' substituteInPlace src/cli.ts \ - --replace-fail '"node"' '"${lib.getExe nodejs_24}"' + --replace-fail '"node"' '"${lib.getExe nodejs}"' ''; npmDeps = null; @@ -35,7 +36,7 @@ buildNpmPackage' (finalAttrs: { inherit (finalAttrs) pname src; pnpm = pnpm'; fetcherVersion = 2; - hash = "sha256-BLPGTbDvvI40kuXfE/p3+s9hkE0reXr7OJA6UGXN4ys="; + hash = "sha256-xvbw0+w6LxiQj2CpF+diVTsoKrxT8HXub1ASrGrlXR4="; }; nativeBuildInputs = [ @@ -63,7 +64,7 @@ buildNpmPackage' (finalAttrs: { cp ${finalAttrs.passthru.ui}/index.html $out/lib/claude-code-router/dist/ mkdir -p $out/bin - makeBinaryWrapper ${lib.getExe nodejs_24} $out/bin/ccr \ + makeBinaryWrapper ${lib.getExe nodejs} $out/bin/ccr \ --add-flags "$out/lib/claude-code-router/dist/cli.js" runHook postInstall @@ -84,7 +85,7 @@ buildNpmPackage' (finalAttrs: { inherit (finalAttrs') pname src sourceRoot; pnpm = pnpm'; fetcherVersion = 2; - hash = "sha256-ZjYLUec9EADQmKfju8hMbq0y4f1TDVwjbe3yw8Gh4Ac="; + hash = "sha256-YtOcuqhJLJYg0C8J0/THA7UfKMVHE8oN5BcJQ2zSpWQ="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/de/deterministic-uname/package.nix b/pkgs/by-name/de/deterministic-uname/package.nix index 2297a6341507..771803f6b9b5 100644 --- a/pkgs/by-name/de/deterministic-uname/package.nix +++ b/pkgs/by-name/de/deterministic-uname/package.nix @@ -35,6 +35,8 @@ replaceVarsWith { "Darwin" # darwin isn't in host-os.m4 so where does this come from? else if forPlatform.isFreeBSD then "FreeBSD" + else if forPlatform.isCygwin then + "Cygwin" else "unknown"; diff --git a/pkgs/by-name/do/doggo/package.nix b/pkgs/by-name/do/doggo/package.nix index 8049d7da93b1..c37472e0f550 100644 --- a/pkgs/by-name/do/doggo/package.nix +++ b/pkgs/by-name/do/doggo/package.nix @@ -9,16 +9,16 @@ buildGoModule rec { pname = "doggo"; - version = "1.1.2"; + version = "1.1.3"; src = fetchFromGitHub { owner = "mr-karan"; repo = "doggo"; rev = "v${version}"; - hash = "sha256-OKzsxYQYgMhTfdFebETHC+3Fm6A8bIOkYN5F9OZk1pc="; + hash = "sha256-wraqaztGZHkldWL3tesclqQzOy4B7T/Vg18A1guFvOc="; }; - vendorHash = "sha256-T6fNOX4XzUuD9eYqC9jCeAE7+8KMyg0UVbsmy9u+BP0="; + vendorHash = "sha256-+tuMDQnbW3kjpVhck3aSMw1+Rv8aCzdOqD4KD7KX3G8="; nativeBuildInputs = [ installShellFiles ]; subPackages = [ "cmd/doggo" ]; diff --git a/pkgs/by-name/do/dolphin-emu/package.nix b/pkgs/by-name/do/dolphin-emu/package.nix index 2d5a906d5d68..3edb8c1be552 100644 --- a/pkgs/by-name/do/dolphin-emu/package.nix +++ b/pkgs/by-name/do/dolphin-emu/package.nix @@ -2,7 +2,6 @@ lib, stdenv, fetchFromGitHub, - fetchpatch2, # nativeBuildInputs cmake, @@ -19,6 +18,7 @@ enet, ffmpeg, fmt, + glslang, gtest, hidapi, libXdmcp, @@ -27,7 +27,6 @@ libusb1, lz4, lzo, - mbedtls, miniupnpc, minizip-ng, openal, @@ -36,6 +35,7 @@ sfml, xxHash, xz, + zlib-ng, # linux-only alsa-lib, bluez, @@ -55,13 +55,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "dolphin-emu"; - version = "2509"; + version = "2512"; src = fetchFromGitHub { owner = "dolphin-emu"; repo = "dolphin"; tag = finalAttrs.version; - hash = "sha256-ZTNg8DRgtC1jS3MoYK1wwzjJbMkLNdkRub+KOg3NmYM="; + hash = "sha256-VmDhYZfYyzf08FXZTeBYmdEp9P8AugUpiOxNj8aEJqw="; fetchSubmodules = true; leaveDotGit = true; postFetch = '' @@ -72,13 +72,6 @@ stdenv.mkDerivation (finalAttrs: { ''; }; - patches = [ - (fetchpatch2 { - url = "https://github.com/dolphin-emu/dolphin/commit/8edef722ce1aae65d5a39faf58753044de48b6e0.patch?full_index=1"; - hash = "sha256-QEG0p+AzrExWrOxL0qRPa+60GlL0DlLyVBrbG6pGuog="; - }) - ]; - strictDeps = true; nativeBuildInputs = [ @@ -98,6 +91,7 @@ stdenv.mkDerivation (finalAttrs: { enet ffmpeg fmt + glslang gtest hidapi libXdmcp @@ -106,7 +100,7 @@ stdenv.mkDerivation (finalAttrs: { libusb1 lz4 lzo - mbedtls + #mbedtls_2 # Use vendored, as using nixpkgs' would mark the package unsafe miniupnpc minizip-ng openal @@ -117,8 +111,7 @@ stdenv.mkDerivation (finalAttrs: { sfml xxHash xz - # Causes linker errors with minizip-ng, prefer vendored. Possible reason why: https://github.com/dolphin-emu/dolphin/pull/12070#issuecomment-1677311838 - #zlib-ng + zlib-ng ] ++ lib.optionals stdenv.hostPlatform.isLinux [ alsa-lib diff --git a/pkgs/by-name/du/duplicati/package.nix b/pkgs/by-name/du/duplicati/package.nix index 692c1a658872..c67c7239ced2 100644 --- a/pkgs/by-name/du/duplicati/package.nix +++ b/pkgs/by-name/du/duplicati/package.nix @@ -1,15 +1,61 @@ { lib, stdenv, + buildNpmPackage, buildDotnetModule, fetchFromGitHub, autoPatchelfHook, dotnetCorePackages, + bun, icu, openssl, krb5, }: +let + # for update.sh easy to handle + ngclientVersion = "0.0.163"; + ngclientRev = "2546891ad116cb0a7a8df1c2bcf8a11fc17d58a4"; + ngclientHash = "sha256-MQOJHr3JBceO7qZRQvCcR4NNxpc77oRRjBQkmMv9RUA="; + + # from Duplicati/Server/webroot/ngclient/package.json + ngclient = buildNpmPackage { + pname = "ngclient"; + version = ngclientVersion; + + src = fetchFromGitHub { + owner = "duplicati"; + repo = "ngclient"; + rev = ngclientRev; + hash = ngclientHash; + }; + + npmDepsHash = "sha256-HYKzf7JaoOYvYlVZgMZ0jvYHf96be6abTZNtefgy59Y="; + + nativeBuildInputs = [ bun ]; + + npmBuildScript = "build:prod"; + + env = { + NG_CLI_ANALYTICS = "false"; + CI = "true"; + }; + + installPhase = '' + runHook preInstall + + mkdir -p $out + cp -r dist/ngclient/* $out/ + + runHook postInstall + ''; + + postInstall = '' + substituteInPlace $out/browser/index.html \ + --replace-fail '' '' + ''; + }; +in buildDotnetModule rec { pname = "duplicati"; version = "2.2.0.1"; @@ -66,6 +112,11 @@ buildDotnetModule rec { "Duplicati.Service" ]; + postPatch = '' + rm -rf Duplicati/Server/webroot/ngclient + ln -s ${ngclient}/browser Duplicati/Server/webroot/ngclient + ''; + postFixup = '' mv $out/bin/Duplicati.Agent $out/bin/duplicati-agent mv $out/bin/Duplicati.GUI.TrayIcon $out/bin/duplicati diff --git a/pkgs/by-name/du/duplicati/update.sh b/pkgs/by-name/du/duplicati/update.sh index 5b80ca9926df..99540f90487b 100755 --- a/pkgs/by-name/du/duplicati/update.sh +++ b/pkgs/by-name/du/duplicati/update.sh @@ -9,6 +9,9 @@ REPO="duplicati" SCRIPT_DIR=$(dirname "$(readlink -f "$0")") TARGET="$SCRIPT_DIR/package.nix" +TMP=$(mktemp -d) +trap 'rm -rf "$TMP"' EXIT + TAG=$(curl ${GITHUB_TOKEN:+" -u \":$GITHUB_TOKEN\""} -s "https://api.github.com/repos/$OWNNER/$REPO/tags" | jq -r '.[].name' | grep -E '^v[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+_stable_' | @@ -22,7 +25,35 @@ DATE=$(echo "$TAG" | cut -d_ -f3) HASH=$(nix-prefetch-github $OWNNER $REPO --rev "$TAG" | jq -r '.hash') +curl -sL "https://raw.githubusercontent.com/$OWNNER/$REPO/$TAG/Duplicati/Server/webroot/ngclient/package.json" \ + -o "$TMP/package.json" + +NGCLIENT_VERSION=$( + jq -r '.dependencies["@duplicati/ngclient"]' \ + "$TMP/package.json" | + sed 's/^[^0-9]*//' +) + +git clone --no-tags https://github.com/duplicati/ngclient.git "$TMP/ngclient" +NGCLIENT_REV=$(cd "$TMP/ngclient" && git log --format="%H %s" | grep "$NGCLIENT_VERSION" | awk '{print $1}') + +NGCLIENT_HASH=$( + nix-prefetch-github $OWNNER ngclient --rev "$NGCLIENT_REV" | + jq -r .hash +) + +echo "version=$VERSION" +echo "channel=$CHANNEL" +echo "date=$DATE" + +echo "ngclientVersion=$NGCLIENT_VERSION" +echo "ngclientRev=$NGCLIENT_REV" +echo "ngclientHash=$NGCLIENT_HASH" + sed -i \ + -e "/ngclientVersion = /c\ ngclientVersion = \"$NGCLIENT_VERSION\";" \ + -e "/ngclientRev = /c\ ngclientRev = \"$NGCLIENT_REV\";" \ + -e "/ngclientHash = /c\ ngclientHash = \"$NGCLIENT_HASH\";" \ -e "/version = \"/c\ version = \"$VERSION\";" \ -e "/channel = \"/c\ channel = \"$CHANNEL\";" \ -e "/buildDate = \"/c\ buildDate = \"$DATE\";" \ diff --git a/pkgs/by-name/el/elementary-xfce-icon-theme/package.nix b/pkgs/by-name/el/elementary-xfce-icon-theme/package.nix index 9388005ba874..f5188c0adb7f 100644 --- a/pkgs/by-name/el/elementary-xfce-icon-theme/package.nix +++ b/pkgs/by-name/el/elementary-xfce-icon-theme/package.nix @@ -15,13 +15,13 @@ stdenv.mkDerivation rec { pname = "elementary-xfce-icon-theme"; - version = "0.21"; + version = "0.22"; src = fetchFromGitHub { owner = "shimmerproject"; repo = "elementary-xfce"; rev = "v${version}"; - hash = "sha256-ncPL76HCC9n4wTciGeqb+YAUcCE9EeOpWGM5DRYUCYg="; + hash = "sha256-snNh6883YUmzU1OG8jLf41/0NrEzfwFikyVtX1JeNdw="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/en/endgame-singularity/package.nix b/pkgs/by-name/en/endgame-singularity/package.nix index 21fd5c4faff5..daa9143f5051 100644 --- a/pkgs/by-name/en/endgame-singularity/package.nix +++ b/pkgs/by-name/en/endgame-singularity/package.nix @@ -31,6 +31,11 @@ python3.pkgs.buildPythonApplication { srcs = [ main_src ] ++ lib.optional enableDefaultMusicPack music_src; sourceRoot = main_src.name; + postPatch = '' + substituteInPlace setup.py \ + --replace-fail "pygame>=2.5.2" "pygame-ce" + ''; + nativeBuildInputs = [ unzip ]; # The music is zipped build-system = with python3.pkgs; [ @@ -38,7 +43,7 @@ python3.pkgs.buildPythonApplication { ]; dependencies = with python3.pkgs; [ - pygame + pygame-ce numpy polib ]; diff --git a/pkgs/by-name/fa/falcon/bump-minimum-cmake-required-version.patch b/pkgs/by-name/fa/falcon/bump-minimum-cmake-required-version.patch new file mode 100644 index 000000000000..5f72338cc57e --- /dev/null +++ b/pkgs/by-name/fa/falcon/bump-minimum-cmake-required-version.patch @@ -0,0 +1,250 @@ +From a1f4fa1607249b0356c2cd2c54134cb3dc2dc231 Mon Sep 17 00:00:00 2001 +From: Stanislas Marquis +Date: Fri, 3 Mar 2023 12:44:09 +0100 +Subject: [PATCH] Update cmake minimum version >= 3.16.3 (ubuntu FF) + +--- + CMakeLists.txt | 2 +- + apps/faldoc/CMakeLists.txt | 2 +- + clt/falcon/editline/CMakeLists.txt | 4 ++-- + dist/nsis/CMakeLists.txt | 2 +- + modules/native/MP/CMakeLists.txt | 2 +- + modules/native/conio/CMakeLists.txt | 2 +- + modules/native/curl/CMakeLists.txt | 2 +- + modules/native/dbi/CMakeLists.txt | 2 +- + modules/native/dbus/CMakeLists.txt | 2 +- + modules/native/dynlib/CMakeLists.txt | 2 +- + modules/native/feathers/CMakeLists.txt | 2 +- + modules/native/gd2/CMakeLists.txt | 2 +- + modules/native/gtk/CMakeLists.txt | 2 +- + modules/native/hpdf/CMakeLists.txt | 2 +- + modules/native/sdl/CMakeLists.txt | 2 +- + modules/native/wopi/CMakeLists.txt | 2 +- + tests/native/dynlib/CMakeLists.txt | 2 +- + 17 files changed, 18 insertions(+), 18 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 81c404677..de2125e3d 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -34,7 +34,7 @@ + # List of available modules: CURL DBI DBUS DYNLIB GD2 GTK PDF SDL + # + +-cmake_minimum_required(VERSION 2.6.2) ++cmake_minimum_required(VERSION 3.16.3) + project(Falcon) + + +diff --git a/apps/faldoc/CMakeLists.txt b/apps/faldoc/CMakeLists.txt +index 3e0867f63..7ef40d7b3 100644 +--- a/apps/faldoc/CMakeLists.txt ++++ b/apps/faldoc/CMakeLists.txt +@@ -4,7 +4,7 @@ + # CMake configuration file for Feather modules + #################################################################### + +-cmake_minimum_required(VERSION 2.6.2) ++cmake_minimum_required(VERSION 3.16.3) + project(falcon-app-faldoc) + + set(FALDOC_DIR "${FALCON_APP_DIR}/faldoc" ) +diff --git a/clt/falcon/editline/CMakeLists.txt b/clt/falcon/editline/CMakeLists.txt +index 8b51862ad..933ef0a13 100644 +--- a/clt/falcon/editline/CMakeLists.txt ++++ b/clt/falcon/editline/CMakeLists.txt +@@ -1,4 +1,4 @@ +-cmake_minimum_required(VERSION 2.6) ++cmake_minimum_required(VERSION 3.16.3) + project(Editline) + + find_package(Curses REQUIRED) +@@ -23,4 +23,4 @@ configure_file( + ${CMAKE_CURRENT_SOURCE_DIR}/config.h.cmake + ${CMAKE_CURRENT_BINARY_DIR}/config.h + ) +- +\ No newline at end of file ++ +diff --git a/dist/nsis/CMakeLists.txt b/dist/nsis/CMakeLists.txt +index c6e0110bb..996ce5436 100644 +--- a/dist/nsis/CMakeLists.txt ++++ b/dist/nsis/CMakeLists.txt +@@ -1,7 +1,7 @@ + # + # Configurator for NSIS installer + # +-cmake_minimum_required(VERSION 2.6) ++cmake_minimum_required(VERSION 3.16.3) + + # + # Files to be configured +diff --git a/modules/native/MP/CMakeLists.txt b/modules/native/MP/CMakeLists.txt +index 2b86107e0..f8eba5c40 100644 +--- a/modules/native/MP/CMakeLists.txt ++++ b/modules/native/MP/CMakeLists.txt +@@ -5,7 +5,7 @@ + #################################################################### + + PROJECT(MP) +-cmake_minimum_required(VERSION 2.6) ++cmake_minimum_required(VERSION 3.16.3) + list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules) + # Set here project-wide options + # OPTION( WITH_OPT "An poption" OFF) +diff --git a/modules/native/conio/CMakeLists.txt b/modules/native/conio/CMakeLists.txt +index 104c9bcec..d828d7e09 100644 +--- a/modules/native/conio/CMakeLists.txt ++++ b/modules/native/conio/CMakeLists.txt +@@ -4,7 +4,7 @@ + # CMake configuration file for @PROJECT_NAME@ + #################################################################### + +-cmake_minimum_required(VERSION 2.6) ++cmake_minimum_required(VERSION 3.16.3) + project(conio) + + # find the falcon installation. Set CMAKE_INSTALL_PREFIX to the falcon root +diff --git a/modules/native/curl/CMakeLists.txt b/modules/native/curl/CMakeLists.txt +index 2f1e908e7..7d7a2377c 100644 +--- a/modules/native/curl/CMakeLists.txt ++++ b/modules/native/curl/CMakeLists.txt +@@ -4,7 +4,7 @@ + # CMake configuration file for curl + #################################################################### + +-cmake_minimum_required(VERSION 2.6) ++cmake_minimum_required(VERSION 3.16.3) + project(Falcon_curl) + list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake) + +diff --git a/modules/native/dbi/CMakeLists.txt b/modules/native/dbi/CMakeLists.txt +index 3a3f72c5f..20dbee902 100644 +--- a/modules/native/dbi/CMakeLists.txt ++++ b/modules/native/dbi/CMakeLists.txt +@@ -3,7 +3,7 @@ + # + # CMake configuration file for DBI + #################################################################### +-cmake_minimum_required(VERSION 2.6.2) ++cmake_minimum_required(VERSION 3.16.3) + project(Falcon_DBI) + + list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake) +diff --git a/modules/native/dbus/CMakeLists.txt b/modules/native/dbus/CMakeLists.txt +index 4bd76ce38..09f575fa7 100644 +--- a/modules/native/dbus/CMakeLists.txt ++++ b/modules/native/dbus/CMakeLists.txt +@@ -5,7 +5,7 @@ + #################################################################### + + PROJECT(dbus) +-cmake_minimum_required(VERSION 2.6) ++cmake_minimum_required(VERSION 3.16.3) + + INCLUDE( ${CMAKE_ROOT}/Modules/FindPkgConfig.cmake) + +diff --git a/modules/native/dynlib/CMakeLists.txt b/modules/native/dynlib/CMakeLists.txt +index 92bc09e59..6e1f31ec9 100644 +--- a/modules/native/dynlib/CMakeLists.txt ++++ b/modules/native/dynlib/CMakeLists.txt +@@ -4,7 +4,7 @@ + # CMake configuration file for dynlib + #################################################################### + +-cmake_minimum_required(VERSION 2.6) ++cmake_minimum_required(VERSION 3.16.3) + project(Falcon_dynlib) + + find_package(Falcon REQUIRED) +diff --git a/modules/native/feathers/CMakeLists.txt b/modules/native/feathers/CMakeLists.txt +index 7be6dca12..3591a4b9a 100644 +--- a/modules/native/feathers/CMakeLists.txt ++++ b/modules/native/feathers/CMakeLists.txt +@@ -3,7 +3,7 @@ + # + # CMake configuration file for Feather modules + #################################################################### +-cmake_minimum_required(VERSION 2.6.2) ++cmake_minimum_required(VERSION 3.16.3) + PROJECT(Falcon_Feathers) + + # Find our Find*.cmake files +diff --git a/modules/native/gd2/CMakeLists.txt b/modules/native/gd2/CMakeLists.txt +index 7d775d1e7..73692d4fd 100644 +--- a/modules/native/gd2/CMakeLists.txt ++++ b/modules/native/gd2/CMakeLists.txt +@@ -5,7 +5,7 @@ + #################################################################### + + PROJECT(gd2) +-cmake_minimum_required(VERSION 2.6) ++cmake_minimum_required(VERSION 3.16.3) + MESSAGE(STATUS "Building GD2 module" ) + + +diff --git a/modules/native/gtk/CMakeLists.txt b/modules/native/gtk/CMakeLists.txt +index 0f08e4bb3..f1bc647e9 100644 +--- a/modules/native/gtk/CMakeLists.txt ++++ b/modules/native/gtk/CMakeLists.txt +@@ -3,7 +3,7 @@ + # + project( gtk ) + +-cmake_minimum_required( VERSION 2.6.3 ) ++cmake_minimum_required( VERSION 3.16.3 ) + + list( APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake ) + +diff --git a/modules/native/hpdf/CMakeLists.txt b/modules/native/hpdf/CMakeLists.txt +index 679444146..cf86e9392 100644 +--- a/modules/native/hpdf/CMakeLists.txt ++++ b/modules/native/hpdf/CMakeLists.txt +@@ -4,7 +4,7 @@ + # CMake configuration file for Feather modules + #################################################################### + +-cmake_minimum_required(VERSION 2.6) ++cmake_minimum_required(VERSION 3.16.3) + project(falcon-module-hpdf) + + list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules") +diff --git a/modules/native/sdl/CMakeLists.txt b/modules/native/sdl/CMakeLists.txt +index 32a07dfd5..7d46ae513 100644 +--- a/modules/native/sdl/CMakeLists.txt ++++ b/modules/native/sdl/CMakeLists.txt +@@ -6,7 +6,7 @@ + if(COMMAND cmake_policy) + cmake_policy(SET CMP0003 OLD) + endif(COMMAND cmake_policy) +-cmake_minimum_required(VERSION 2.6) ++cmake_minimum_required(VERSION 3.16.3) + PROJECT(Falcon_SDL) + + +diff --git a/modules/native/wopi/CMakeLists.txt b/modules/native/wopi/CMakeLists.txt +index 3f711cd6d..56e6c539b 100644 +--- a/modules/native/wopi/CMakeLists.txt ++++ b/modules/native/wopi/CMakeLists.txt +@@ -3,7 +3,7 @@ + # Falcon Web Oriented Programming Interface + # + +-cmake_minimum_required(VERSION 2.6.2) ++cmake_minimum_required(VERSION 3.16.3) + project( falcon_wopi ) + + ###################################################################### +diff --git a/tests/native/dynlib/CMakeLists.txt b/tests/native/dynlib/CMakeLists.txt +index 1781380d9..ed3f1e99f 100644 +--- a/tests/native/dynlib/CMakeLists.txt ++++ b/tests/native/dynlib/CMakeLists.txt +@@ -3,7 +3,7 @@ + # + # CMake configuration file for dynlib - TESTS + #################################################################### +-cmake_minimum_required(VERSION 2.6) ++cmake_minimum_required(VERSION 3.16.3) + + include_directories( + ${CMAKE_CURRENT_SOURCE_DIR} diff --git a/pkgs/by-name/fa/falcon/package.nix b/pkgs/by-name/fa/falcon/package.nix index f511b92ae385..1f6835a67ab9 100644 --- a/pkgs/by-name/fa/falcon/package.nix +++ b/pkgs/by-name/fa/falcon/package.nix @@ -2,7 +2,6 @@ lib, stdenv, fetchFromGitHub, - fetchpatch, cmake, pkg-config, pcre, @@ -22,12 +21,8 @@ stdenv.mkDerivation { }; patches = [ - # part of https://github.com/falconpl/falcon/pull/11 - (fetchpatch { - name = "bump-minimum-cmake-required-version.patch"; - url = "https://github.com/falconpl/falcon/commit/a1f4fa1607249b0356c2cd2c54134cb3dc2dc231.patch"; - hash = "sha256-oYLB+71/oan2MOyHTr/IpgDwik+T8ToP1q7AroaBq1g="; - }) + # https://github.com/falconpl/falcon/pull/11 + ./bump-minimum-cmake-required-version.patch ]; nativeBuildInputs = [ diff --git a/pkgs/by-name/gf/gfxreconstruct/package.nix b/pkgs/by-name/gf/gfxreconstruct/package.nix index 18b0fbc2b54c..b04642602e79 100644 --- a/pkgs/by-name/gf/gfxreconstruct/package.nix +++ b/pkgs/by-name/gf/gfxreconstruct/package.nix @@ -28,6 +28,14 @@ stdenv.mkDerivation rec { fetchSubmodules = true; }; + cmakeFlags = [ + # The CMakeLists.txt is actually 3.10 compatible, but it specifies 3.5 as `CMAKE_VERSION_MINIMUM` + "-DCMAKE_POLICY_VERSION_MINIMUM=3.10" + ]; + + # Workaround for "error: ... class std::__cxx11::wstring_convert' is deprecated [-Werror=deprecated-declarations]" + env.NIX_CFLAGS_COMPILE = "-Wno-error=deprecated-declarations"; + buildInputs = [ libX11 libxcb diff --git a/pkgs/by-name/gm/gmobile/package.nix b/pkgs/by-name/gm/gmobile/package.nix index b1ee83de0f93..c312466132d1 100644 --- a/pkgs/by-name/gm/gmobile/package.nix +++ b/pkgs/by-name/gm/gmobile/package.nix @@ -17,7 +17,7 @@ stdenv.mkDerivation (finalAttrs: { pname = "gmobile"; - version = "0.5.0"; + version = "0.6.0"; src = fetchFromGitLab { domain = "gitlab.gnome.org"; @@ -25,7 +25,7 @@ stdenv.mkDerivation (finalAttrs: { owner = "Phosh"; repo = "gmobile"; tag = "v${finalAttrs.version}"; - hash = "sha256-VBtZU3AM+Off8bHYyW50y3+PY9u7D+xzChlnBlae+ns="; + hash = "sha256-+IRKGkqDgSRAWbK30R2eGA3mI393ARdzYNKBA75AyyY="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/go/gollama/package.nix b/pkgs/by-name/go/gollama/package.nix index d09e99eea157..2e4ec0582eb3 100644 --- a/pkgs/by-name/go/gollama/package.nix +++ b/pkgs/by-name/go/gollama/package.nix @@ -7,16 +7,16 @@ buildGoModule rec { pname = "gollama"; - version = "v2.0.1"; + version = "v2.0.4"; src = fetchFromGitHub { owner = "sammcj"; repo = "gollama"; tag = "v${version}"; - hash = "sha256-6r0mAimyFxQ/cJyB9vMJeP6S5cEdzzfb5axXfeOE1nU="; + hash = "sha256-unvnFKkEWJnyzuNz8zekB8ZSXP/dUqv24qgyhkP3kkY="; }; - vendorHash = "sha256-eOxEq+4JQCCWpnVy7aKM9GiZ29bzvfsrqXD4Op8+/K4="; + vendorHash = "sha256-t7Kl6WnS8vvLyvKzkDswv0yOaeTE3IgZCNAC3dD8euU="; doCheck = false; diff --git a/pkgs/by-name/gt/gtuber/package.nix b/pkgs/by-name/gt/gtuber/package.nix deleted file mode 100644 index 750c7acdd7ff..000000000000 --- a/pkgs/by-name/gt/gtuber/package.nix +++ /dev/null @@ -1,56 +0,0 @@ -{ - lib, - stdenv, - fetchFromGitHub, - meson, - ninja, - pkg-config, - gobject-introspection, - vala, - glib, - libsoup_3, - json-glib, - libxml2, - gst_all_1, - unstableGitUpdater, -}: - -stdenv.mkDerivation { - pname = "gtuber"; - version = "0-unstable-2025-01-19"; - - src = fetchFromGitHub { - owner = "Rafostar"; - repo = "gtuber"; - rev = "446e26668a4e01fc2ca9c261a7f1c281577e566d"; - hash = "sha256-5Z6sID7Alm4FWl1qCQV1w5DmGsmor2vbnZUJi3Is650="; - }; - - nativeBuildInputs = [ - meson - ninja - pkg-config - gobject-introspection # For g-ir-scanner - vala # For vapigen - ]; - buildInputs = [ - glib - libsoup_3 - json-glib - libxml2 - gst_all_1.gstreamer - gst_all_1.gst-plugins-base - ]; - - passthru = { - updateScript = unstableGitUpdater { }; - }; - - meta = { - description = "GStreamer plugin for streaming videos from websites"; - homepage = "https://rafostar.github.io/gtuber/"; - license = lib.licenses.lgpl21Plus; - maintainers = with lib.maintainers; [ chuangzhu ]; - platforms = lib.platforms.unix; - }; -} diff --git a/pkgs/by-name/gy/gyroflow/package.nix b/pkgs/by-name/gy/gyroflow/package.nix index 0b858f385e33..f3db838c18c9 100644 --- a/pkgs/by-name/gy/gyroflow/package.nix +++ b/pkgs/by-name/gy/gyroflow/package.nix @@ -19,8 +19,8 @@ let lens-profiles = fetchFromGitHub { owner = "gyroflow"; repo = "lens_profiles"; - tag = "v19"; - hash = "sha256-8R2mMqKxzoa5Sfqxs8pcfwUfo1PQKSrnM+60Ri3wiXY="; + tag = "v36"; + hash = "sha256-JjH7cGT9hzB9pv0W6FUPaejkiUj357IM2siJNrSHiYY="; }; in rustPlatform.buildRustPackage rec { diff --git a/pkgs/by-name/hi/highscore-blastem/package.nix b/pkgs/by-name/hi/highscore-blastem/package.nix new file mode 100644 index 000000000000..a8a60f13a6ad --- /dev/null +++ b/pkgs/by-name/hi/highscore-blastem/package.nix @@ -0,0 +1,54 @@ +{ + lib, + stdenv, + fetchFromGitHub, + meson, + ninja, + pkg-config, + libhighscore, + unstableGitUpdater, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "highscore-blastem"; + version = "0-unstable-2025-06-28"; + + src = fetchFromGitHub { + owner = "highscore-emu"; + repo = "blastem-highscore"; + rev = "d19e9a8ddd0accf017f44dcc81bdd2661f63f25f"; + hash = "sha256-KetitwqL4S0T4GayeTdwR5hG/LVUF+mJ8oGIN6XPLfU="; + }; + + sourceRoot = "${finalAttrs.src.name}/highscore"; + + postPatch = '' + patchShebangs gen-db.sh + + substituteInPlace meson.build \ + --replace-fail "run_command('git', 'describe', '--always', '--dirty').stdout().strip()" \ + "'${finalAttrs.src.rev}'" + ''; + + nativeBuildInputs = [ + meson + ninja + pkg-config + ]; + + buildInputs = [ + libhighscore + ]; + + passthru.updateScript = unstableGitUpdater { + hardcodeZeroVersion = true; + }; + + meta = { + description = "Port of BlastEm to Highscore"; + homepage = "https://github.com/highscore-emu/blastem-highscore"; + license = lib.licenses.gpl3Plus; + inherit (libhighscore.meta) maintainers platforms; + badPlatforms = lib.platforms.aarch64; + }; +}) diff --git a/pkgs/by-name/hi/highscore-bsnes/package.nix b/pkgs/by-name/hi/highscore-bsnes/package.nix new file mode 100644 index 000000000000..de023330065e --- /dev/null +++ b/pkgs/by-name/hi/highscore-bsnes/package.nix @@ -0,0 +1,58 @@ +{ + lib, + stdenv, + fetchFromGitHub, + pkg-config, + libhighscore, + unstableGitUpdater, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "highscore-bsnes"; + version = "0-unstable-2025-12-23"; + + src = fetchFromGitHub { + owner = "highscore-emu"; + repo = "bsnes"; + rev = "df88234e314f97a2ca124df1982e4bd39f6fcea0"; + hash = "sha256-QI9mRvcsPkVBhUZlhchgGVPROj7HAqgtHHnbHVzIIBI="; + }; + + sourceRoot = "${finalAttrs.src.name}/bsnes"; + + nativeBuildInputs = [ + pkg-config + ]; + + buildInputs = [ + libhighscore + ]; + + makeFlags = [ + "target=highscore" + "binary=library" + "build=performance" + "local=false" + "platform=linux" + ]; + + installFlags = [ + "libdir=${placeholder "out"}/lib" + ]; + + enableParallelBuilding = true; + + passthru.updateScript = unstableGitUpdater { + url = finalAttrs.src.gitRepoUrl; + }; + + meta = { + description = "Port of bsnes to Highscore"; + homepage = "https://github.com/highscore-emu/bsnes"; + license = with lib.licenses; [ + gpl2Plus + mit + ]; + inherit (libhighscore.meta) maintainers platforms; + }; +}) diff --git a/pkgs/by-name/hi/highscore-desmume/package.nix b/pkgs/by-name/hi/highscore-desmume/package.nix new file mode 100644 index 000000000000..1ab7b2d51d1b --- /dev/null +++ b/pkgs/by-name/hi/highscore-desmume/package.nix @@ -0,0 +1,62 @@ +{ + lib, + stdenv, + fetchFromGitHub, + meson, + ninja, + pkg-config, + libhighscore, + libGL, + libX11, + SDL2, + libpcap, + unstableGitUpdater, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "highscore-desmume"; + version = "0-unstable-2025-09-21"; + + src = fetchFromGitHub { + owner = "highscore-emu"; + repo = "desmume"; + rev = "7d80d2a70850a5595ac8160e6dee5dea8b2fe293"; + hash = "sha256-wpW8Y68qzuu6J51snw2slbD6cnceFzONG4kutBOeB8I="; + }; + + sourceRoot = "${finalAttrs.src.name}/desmume/src/frontend/highscore"; + + postPatch = '' + substituteInPlace meson.build \ + --replace-fail "run_command('git', 'describe', '--always', '--dirty').stdout().strip()" \ + "'${finalAttrs.src.rev}'" + ''; + + nativeBuildInputs = [ + meson + ninja + pkg-config + ]; + + buildInputs = [ + libhighscore + libGL + libX11 + SDL2 + libpcap + ]; + + # cc1plus: error: '-Wformat-security' ignored without '-Wformat' [-Werror=format-security] + hardeningDisable = [ "format" ]; + + passthru.updateScript = unstableGitUpdater { + hardcodeZeroVersion = true; + }; + + meta = { + description = "Port of DeSmuME to Highscore"; + homepage = "https://github.com/highscore-emu/desmume"; + license = lib.licenses.gpl2Plus; + inherit (libhighscore.meta) platforms maintainers; + }; +}) diff --git a/pkgs/by-name/hi/highscore-gearsystem/package.nix b/pkgs/by-name/hi/highscore-gearsystem/package.nix new file mode 100644 index 000000000000..94d65f62e6b4 --- /dev/null +++ b/pkgs/by-name/hi/highscore-gearsystem/package.nix @@ -0,0 +1,51 @@ +{ + lib, + stdenv, + fetchFromGitHub, + meson, + ninja, + pkg-config, + libhighscore, + unstableGitUpdater, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "highscore-gearsystem"; + version = "0-unstable-2026-01-02"; + + src = fetchFromGitHub { + owner = "highscore-emu"; + repo = "gearsystem"; + rev = "7a2cd21c54f1487ec255b71eaf629d1e48d4bbf1"; + hash = "sha256-y4ZSw2yXBNg49X4aB1TE79ydu3EVqvtb73eB2QBKLEk="; + }; + + postPatch = '' + substituteInPlace meson.build \ + --replace-fail "run_command('git', 'describe', '--always', '--dirty', '--match', ''', check: false).stdout().strip()" \ + "'${finalAttrs.src.rev}'" + ''; + + sourceRoot = "${finalAttrs.src.name}/platforms/highscore"; + + nativeBuildInputs = [ + meson + ninja + pkg-config + ]; + + buildInputs = [ + libhighscore + ]; + + passthru.updateScript = unstableGitUpdater { + hardcodeZeroVersion = true; + }; + + meta = { + description = "Port of Gearsystem to Highscore"; + homepage = "https://github.com/highscore-emu/Gearsystem"; + license = lib.licenses.gpl3Plus; + inherit (libhighscore.meta) maintainers platforms; + }; +}) diff --git a/pkgs/by-name/hi/highscore-mednafen/package.nix b/pkgs/by-name/hi/highscore-mednafen/package.nix new file mode 100644 index 000000000000..27283551044a --- /dev/null +++ b/pkgs/by-name/hi/highscore-mednafen/package.nix @@ -0,0 +1,57 @@ +{ + lib, + stdenv, + fetchFromGitHub, + meson, + ninja, + pkg-config, + libhighscore, + zstd, + libchdr, + libvorbis, + unstableGitUpdater, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "highscore-mednafen"; + version = "0-unstable-2025-12-28"; + + src = fetchFromGitHub { + owner = "highscore-emu"; + repo = "mednafen-highscore"; + rev = "58404782e3f69186c7be821a880cf1442b240f2f"; + hash = "sha256-FXSfBAPpi+Ch9vuPQf6nqLMKxvrbXG+6F5HHaU9fs2s="; + }; + + sourceRoot = "${finalAttrs.src.name}/highscore"; + + postPatch = '' + substituteInPlace meson.build \ + --replace-fail "run_command('git', 'describe', '--always', '--dirty', check: false).stdout().strip()" \ + "'${finalAttrs.src.rev}'" + ''; + + nativeBuildInputs = [ + meson + ninja + pkg-config + ]; + + buildInputs = [ + libhighscore + zstd + libchdr + libvorbis + ]; + + passthru.updateScript = unstableGitUpdater { + hardcodeZeroVersion = true; + }; + + meta = { + description = "Port of Mednafen to Highscore"; + homepage = "https://github.com/highscore-emu/mednafen-highscore"; + license = lib.licenses.gpl2Plus; + inherit (libhighscore.meta) maintainers platforms; + }; +}) diff --git a/pkgs/by-name/hi/highscore-mgba/package.nix b/pkgs/by-name/hi/highscore-mgba/package.nix new file mode 100644 index 000000000000..d573f8aeb19a --- /dev/null +++ b/pkgs/by-name/hi/highscore-mgba/package.nix @@ -0,0 +1,68 @@ +{ + lib, + stdenv, + fetchFromGitHub, + cmake, + pkg-config, + libhighscore, + unstableGitUpdater, +}: + +stdenv.mkDerivation { + pname = "highscore-mgba"; + version = "0-unstable-2026-01-02"; + + src = fetchFromGitHub { + owner = "highscore-emu"; + repo = "mgba"; + rev = "a6d684ff03b91d219b861b85791f4069df698562"; + hash = "sha256-Ur7BG+AJ6KQ+XX2qKoj13w556VNnHtxULXd1d+gHUig="; + }; + + outputs = [ + "out" + "dev" + "doc" + ]; + + nativeBuildInputs = [ + cmake + pkg-config + ]; + + buildInputs = [ + libhighscore + ]; + + cmakeFlags = [ + (lib.cmakeBool "ENABLE_DEBUGGERS" false) + (lib.cmakeBool "USE_EDITLINE" false) + (lib.cmakeBool "ENABLE_GDB_STUB" false) + (lib.cmakeBool "USE_ZLIB" false) + (lib.cmakeBool "USE_MINIZIP" false) + (lib.cmakeBool "USE_PNG" false) + (lib.cmakeBool "USE_LIBZIP" false) + (lib.cmakeBool "USE_SQLITE3" false) + (lib.cmakeBool "USE_ELF" false) + (lib.cmakeBool "USE_LUA" false) + (lib.cmakeBool "USE_JSON_C" false) + (lib.cmakeBool "USE_LZMA" false) + (lib.cmakeBool "USE_DISCORD_RPC" false) + (lib.cmakeBool "ENABLE_SCRIPTING" false) + (lib.cmakeBool "BUILD_QT" false) + (lib.cmakeBool "BUILD_SDL" false) + (lib.cmakeBool "BUILD_HIGHSCORE" true) + (lib.cmakeBool "SKIP_LIBRARY" true) + ]; + + passthru.updateScript = unstableGitUpdater { + hardcodeZeroVersion = true; + }; + + meta = { + description = "Port of mGBA to Highscore"; + homepage = "https://github.com/highscore-emu/mednafen-highscore"; + license = lib.licenses.mpl20; + inherit (libhighscore.meta) maintainers platforms; + }; +} diff --git a/pkgs/by-name/hi/highscore-mupen64plus/package.nix b/pkgs/by-name/hi/highscore-mupen64plus/package.nix new file mode 100644 index 000000000000..c681af6bd9ee --- /dev/null +++ b/pkgs/by-name/hi/highscore-mupen64plus/package.nix @@ -0,0 +1,52 @@ +{ + lib, + stdenv, + fetchFromGitHub, + meson, + ninja, + pkg-config, + libhighscore, + mupen64plus, + unstableGitUpdater, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "highscore-mupen64plus"; + version = "0-unstable-2025-12-28"; + + src = fetchFromGitHub { + owner = "highscore-emu"; + repo = "mupen64plus-highscore"; + rev = "94ab5644e5363cf359b334ac057f3f36d24910be"; + hash = "sha256-Q+6iL7DGr62C2fVEP0EWCgm7S7AYAW1C2X1GPKbI7aY="; + }; + + postPatch = '' + substituteInPlace meson.build \ + --replace-fail "run_command('git', 'describe', '--always', '--dirty', check: false).stdout().strip()" \ + "'${finalAttrs.src.rev}'" + ''; + + nativeBuildInputs = [ + meson + ninja + pkg-config + ]; + + buildInputs = [ + libhighscore + mupen64plus + ]; + + passthru.updateScript = unstableGitUpdater { + hardcodeZeroVersion = true; + }; + + meta = { + description = "Port of Mupen64Plus to Highscore"; + homepage = "https://github.com/highscore-emu/mupen64plus-highscore"; + license = lib.licenses.gpl2Plus; + inherit (libhighscore.meta) maintainers; + inherit (mupen64plus.meta) platforms broken; + }; +}) diff --git a/pkgs/by-name/hi/highscore-nestopia/package.nix b/pkgs/by-name/hi/highscore-nestopia/package.nix new file mode 100644 index 000000000000..ca8046c548af --- /dev/null +++ b/pkgs/by-name/hi/highscore-nestopia/package.nix @@ -0,0 +1,51 @@ +{ + lib, + stdenv, + fetchFromGitLab, + meson, + ninja, + pkg-config, + libhighscore, + unstableGitUpdater, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "highscore-nestopia"; + version = "0-unstable-2025-12-30"; + + src = fetchFromGitLab { + owner = "highscore-emu"; + repo = "nestopia"; + rev = "529e69b6e577f42a246c8fa44ef7f3095647adaf"; + hash = "sha256-2aBEtut6AShP1Nz0BqNTFD3/gN2cj5PY8JL8WbLE7XE="; + }; + + sourceRoot = "${finalAttrs.src.name}/highscore"; + + postPatch = '' + substituteInPlace meson.build \ + --replace-fail "run_command('git', 'describe', '--always', '--dirty', '--match', ''', check: false).stdout().strip()" \ + "'${finalAttrs.src.rev}'" + ''; + + nativeBuildInputs = [ + meson + ninja + pkg-config + ]; + + buildInputs = [ + libhighscore + ]; + + passthru.updateScript = unstableGitUpdater { + hardcodeZeroVersion = true; + }; + + meta = { + description = "Port of Nestopia to Highscore"; + homepage = "https://gitlab.com/highscore-emu/nestopia"; + license = lib.licenses.gpl2Plus; + inherit (libhighscore.meta) maintainers platforms; + }; +}) diff --git a/pkgs/by-name/hi/highscore-prosystem/package.nix b/pkgs/by-name/hi/highscore-prosystem/package.nix new file mode 100644 index 000000000000..278d6b4d670e --- /dev/null +++ b/pkgs/by-name/hi/highscore-prosystem/package.nix @@ -0,0 +1,51 @@ +{ + lib, + stdenv, + fetchFromGitLab, + meson, + ninja, + pkg-config, + libhighscore, + unstableGitUpdater, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "highscore-prosystem"; + version = "0-unstable-2025-12-27"; + + src = fetchFromGitLab { + owner = "highscore-emu"; + repo = "prosystem"; + rev = "44d86957d9377fdc1650c8cdaafbf7e2e2671827"; + hash = "sha256-vxgh819XwI6rjoI7WwUEPx0PVpb58+MIOhCINQKom0Q="; + }; + + sourceRoot = "${finalAttrs.src.name}/highscore"; + + postPatch = '' + substituteInPlace meson.build \ + --replace-fail "run_command('git', 'describe', '--always', '--dirty', '--match', ''', check: false).stdout().strip()" \ + "'${finalAttrs.src.rev}'" + ''; + + nativeBuildInputs = [ + meson + ninja + pkg-config + ]; + + buildInputs = [ + libhighscore + ]; + + passthru.updateScript = unstableGitUpdater { + hardcodeZeroVersion = true; + }; + + meta = { + description = "Port of ProSystem to Highscore"; + homepage = "https://gitlab.com/highscore-emu/prosystem"; + license = lib.licenses.gpl2Plus; + inherit (libhighscore.meta) maintainers platforms; + }; +}) diff --git a/pkgs/by-name/hi/highscore-sameboy/package.nix b/pkgs/by-name/hi/highscore-sameboy/package.nix new file mode 100644 index 000000000000..037aa861820b --- /dev/null +++ b/pkgs/by-name/hi/highscore-sameboy/package.nix @@ -0,0 +1,53 @@ +{ + lib, + stdenv, + fetchFromGitHub, + meson, + ninja, + pkg-config, + rgbds, + libhighscore, + unstableGitUpdater, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "highscore-sameboy"; + version = "0-unstable-2025-12-31"; + + src = fetchFromGitHub { + owner = "highscore-emu"; + repo = "SameBoy"; + rev = "80e1d0b5aef4098539979a4670882d590ac9a1ca"; + hash = "sha256-Fp9GODDu0170NoCHCfX5+vs8hQccS/P1N4jM+L784+o="; + }; + + sourceRoot = "${finalAttrs.src.name}/highscore"; + + postPatch = '' + substituteInPlace meson.build \ + --replace-fail "run_command('git', 'describe', '--always', '--dirty', '--match', ''', check: false).stdout().strip()" \ + "'${finalAttrs.src.rev}'" + ''; + + nativeBuildInputs = [ + meson + ninja + pkg-config + rgbds + ]; + + buildInputs = [ + libhighscore + ]; + + passthru.updateScript = unstableGitUpdater { + hardcodeZeroVersion = true; + }; + + meta = { + description = "Port of SameBoy to Highscore"; + homepage = "https://github.com/highscore-emu/SameBoy"; + license = lib.licenses.mit; + inherit (libhighscore.meta) maintainers platforms; + }; +}) diff --git a/pkgs/by-name/hi/highscore-stella/package.nix b/pkgs/by-name/hi/highscore-stella/package.nix new file mode 100644 index 000000000000..eeb0c9bc4d89 --- /dev/null +++ b/pkgs/by-name/hi/highscore-stella/package.nix @@ -0,0 +1,51 @@ +{ + lib, + stdenv, + fetchFromGitHub, + meson, + ninja, + pkg-config, + libhighscore, + unstableGitUpdater, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "highscore-stella"; + version = "0-unstable-2026-01-02"; + + src = fetchFromGitHub { + owner = "highscore-emu"; + repo = "stella"; + rev = "a8d92c100e83ae2249c5b30afcaa4b4ed31fcc46"; + hash = "sha256-QfKtAIMCqniF15vCuWKz/pwb0FuE6xDp6/rfeUWpMgQ="; + }; + + sourceRoot = "${finalAttrs.src.name}/src/os/highscore"; + + postPatch = '' + substituteInPlace meson.build \ + --replace-fail "run_command('git', 'describe', '--always', '--dirty', check: false).stdout().strip()" \ + "'${finalAttrs.src.rev}'" + ''; + + nativeBuildInputs = [ + meson + ninja + pkg-config + ]; + + buildInputs = [ + libhighscore + ]; + + passthru.updateScript = unstableGitUpdater { + hardcodeZeroVersion = true; + }; + + meta = { + description = "Port of Stella to Highscore"; + homepage = "https://github.com/highscore-emu/stella"; + license = lib.licenses.gpl2Only; + inherit (libhighscore.meta) maintainers platforms; + }; +}) diff --git a/pkgs/by-name/hi/highscore-unwrapped/cores-dir-from-envvar.patch b/pkgs/by-name/hi/highscore-unwrapped/cores-dir-from-envvar.patch new file mode 100644 index 000000000000..5c728842924c --- /dev/null +++ b/pkgs/by-name/hi/highscore-unwrapped/cores-dir-from-envvar.patch @@ -0,0 +1,25 @@ +diff --git a/shared/config.vapi b/shared/config.vapi +index 1b0d8d7..e25bfbc 100644 +--- a/shared/config.vapi ++++ b/shared/config.vapi +@@ -9,7 +9,6 @@ namespace Config { + public const string VERSION_SUFFIX; + public const string VCS_TAG; + public const string PROFILE; +- public const string CORES_DIR; + public const string DATA_DIR; + public const string RUNNER_PATH; + } +diff --git a/src/core-register.vala b/src/core-register.vala +index 892aca7..2485cc7 100644 +--- a/src/core-register.vala ++++ b/src/core-register.vala +@@ -15,7 +15,7 @@ public class Highscore.CoreRegister : Object { + suggested_cores = new HashTable (str_hash, str_equal); + + try { +- scan_directory (File.new_for_path (Config.CORES_DIR)); ++ scan_directory (File.new_for_path (Environment.get_variable ("HIGHSCORE_CORES_DIR"))); + } catch (Error e) { + critical ("Failed to scan cores: %s", e.message); + } diff --git a/pkgs/by-name/hi/highscore-unwrapped/package.nix b/pkgs/by-name/hi/highscore-unwrapped/package.nix new file mode 100644 index 000000000000..1a309c758d21 --- /dev/null +++ b/pkgs/by-name/hi/highscore-unwrapped/package.nix @@ -0,0 +1,117 @@ +{ + lib, + stdenv, + fetchFromGitLab, + blueprint-compiler, + meson, + ninja, + pkg-config, + vala, + glib, + gtk4, + desktop-file-utils, + itstool, + python3, + json-glib, + libgee, + libadwaita, + libarchive, + libglycin, + libhighscore, + libmanette, + sqlite, + libGL, + libepoxy, + libpulseaudio, + SDL2, + librsvg, + libmirage, + feedbackd, + unstableGitUpdater, +}: + +let + libmanette-1-alpha = libmanette.overrideAttrs (prev: { + version = "0.2.13-unstable-2025-10-10"; + src = fetchFromGitLab { + domain = "gitlab.gnome.org"; + owner = "GNOME"; + repo = "libmanette"; + rev = "9b1b45e2aa3221938cd23e5f87a79b69e1996f64"; + hash = "sha256-4Vinc3sBU2PJmOZUOrod6AJbRq6W2nNLcC//FVHGuhg="; + }; + + buildInputs = prev.buildInputs ++ [ libadwaita ]; + }); +in +stdenv.mkDerivation (finalAttrs: { + pname = "highscore-unwrapped"; + version = "0-unstable-2026-01-01"; + + src = fetchFromGitLab { + domain = "gitlab.gnome.org"; + owner = "World"; + repo = "highscore"; + rev = "c9f537e06414a32632e9f9d7a73d9028b788f275"; + hash = "sha256-6sBfjVFIFg0w3apzJBYMYEIjTavnOAE0YK3ayzoyDks="; + }; + + patches = [ + # Highscore finds cores under $out/lib/highscore/cores/ + # Allow the wrapper to override it with $HIGHSCORE_CORES_DIR + ./cores-dir-from-envvar.patch + ]; + + postPatch = '' + substituteInPlace meson.build --replace-fail \ + "run_command('git', 'rev-parse', '--short', 'HEAD').stdout().strip()" \ + "'${finalAttrs.src.rev}'" + ''; + + nativeBuildInputs = [ + blueprint-compiler + meson + ninja + pkg-config + vala + glib # For glib-compile-resources + gtk4 # For gtk4-update-icon-cache + desktop-file-utils + itstool + # Used in build time, detected by meson + (python3.withPackages (ps: [ ps.pygobject3 ])) + # To prevent double wrapping, not wrapping it here + # wrapGAppsHook4 + ]; + + buildInputs = [ + glib + libgee + gtk4 + json-glib + libadwaita + libarchive + libglycin + libhighscore + libmanette-1-alpha + sqlite + libGL + libepoxy + libpulseaudio + SDL2 + librsvg + libmirage + feedbackd + ]; + + passthru.updateScript = unstableGitUpdater { + hardcodeZeroVersion = true; + }; + + meta = { + description = "Rewrite of Highscore, formerly gnome-games"; + homepage = "https://gitlab.gnome.org/World/highscore/"; + license = lib.licenses.gpl3Plus; + inherit (libhighscore.meta) maintainers platforms; + }; +}) diff --git a/pkgs/by-name/hi/highscore/package.nix b/pkgs/by-name/hi/highscore/package.nix new file mode 100644 index 000000000000..9ca252e1ff23 --- /dev/null +++ b/pkgs/by-name/hi/highscore/package.nix @@ -0,0 +1,73 @@ +{ + symlinkJoin, + wrapGAppsHook4, + gtk4, + feedbackd, + librsvg, + glycin-loaders, + highscore-unwrapped, + highscore-blastem, + highscore-bsnes, + highscore-desmume, + highscore-gearsystem, + highscore-mednafen, + highscore-mgba, + highscore-mupen64plus, + highscore-nestopia, + highscore-prosystem, + highscore-sameboy, + highscore-stella, + + # Allow users to override + cores ? builtins.filter (p: p.meta.available) [ + highscore-blastem + highscore-bsnes + highscore-desmume + highscore-gearsystem + highscore-mednafen + highscore-mgba + highscore-mupen64plus + highscore-nestopia + highscore-prosystem + highscore-sameboy + highscore-stella + ], +}: + +symlinkJoin { + pname = "highscore"; + inherit (highscore-unwrapped) version meta; + + paths = [ highscore-unwrapped ] ++ cores; + + nativeBuildInputs = [ + wrapGAppsHook4 + ]; + + buildInputs = [ + # For gsettings-schemas + highscore-unwrapped + gtk4 + feedbackd + # For GDK_PIXBUF_MODULE_FILE + librsvg + ]; + + dontWrapGApps = true; + + # symlinkJoin doesn't run other build phases + postBuild = '' + rm $out/share/dbus-1/services/app.drey.Highscore{,.SearchProvider}.service + cp {${highscore-unwrapped},$out}/share/dbus-1/services/app.drey.Highscore.service + cp {${highscore-unwrapped},$out}/share/dbus-1/services/app.drey.Highscore.SearchProvider.service + substituteInPlace $out/share/dbus-1/services/app.drey.Highscore{,.SearchProvider}.service \ + --replace-fail "${highscore-unwrapped}" "$out" + + gappsWrapperArgsHook + + makeWrapper ${highscore-unwrapped}/bin/highscore $out/bin/highscore \ + "''${gappsWrapperArgs[@]}" \ + --prefix XDG_DATA_DIRS : "${glycin-loaders}/share" \ + --set HIGHSCORE_CORES_DIR $out/lib/highscore/cores + ''; +} diff --git a/pkgs/by-name/ic/icecast/package.nix b/pkgs/by-name/ic/icecast/package.nix index 7200b2e25c90..770ce90b5f8c 100644 --- a/pkgs/by-name/ic/icecast/package.nix +++ b/pkgs/by-name/ic/icecast/package.nix @@ -2,36 +2,48 @@ lib, stdenv, fetchurl, - libxml2, - libxslt, + pkg-config, curl, - libvorbis, - libtheora, - speex, + libigloo, libkate, libopus, + libtheora, + libvorbis, + libxml2, + libxslt, + rhash, + speex, + nixosTests, }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "icecast"; - version = "2.4.4"; + version = "2.5.0"; src = fetchurl { - url = "http://downloads.xiph.org/releases/icecast/icecast-${version}.tar.gz"; - sha256 = "0i2d9rhav0x6js2qhjf5iy6j2a7f0d11ail0lfv40hb1kygrgda9"; + url = "http://downloads.xiph.org/releases/icecast/icecast-${finalAttrs.version}.tar.gz"; + hash = "sha256-2aoHx0Ka7BnZUP9v1CXDcfdxWM00/yIPwZGywYbGfHo="; }; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ - libxml2 - libxslt curl - libvorbis - libtheora - speex + libigloo libkate libopus + libtheora + libvorbis + libxml2 + libxslt + rhash + speex ]; + passthru.tests = { + inherit (nixosTests) icecast; + }; + meta = { description = "Server software for streaming multimedia"; mainProgram = "icecast"; @@ -50,4 +62,4 @@ stdenv.mkDerivation rec { maintainers = with lib.maintainers; [ jcumming ]; platforms = with lib.platforms; unix; }; -} +}) diff --git a/pkgs/by-name/ki/kicad/versions.nix b/pkgs/by-name/ki/kicad/versions.nix index 1d76961809bf..cba6c1d4dbcc 100644 --- a/pkgs/by-name/ki/kicad/versions.nix +++ b/pkgs/by-name/ki/kicad/versions.nix @@ -3,23 +3,23 @@ { "kicad" = { kicadVersion = { - version = "9.0.6"; + version = "9.0.7"; src = { - rev = "878335d000462f1498adc4267854bb594a21bd36"; - sha256 = "0mfnlx0dlpk3jz1b8pard6b7ax1ycyv069k4vg89ph2bia1a9d98"; + rev = "45f01a94961af4dfa9a179d25bcf642cd8c80b92"; + sha256 = "0glsdq5c54d2sif0jmpym79i6vham5w3kzcvcr0yq5nimqig7h0q"; }; }; libVersion = { - version = "9.0.6"; + version = "9.0.7"; libSources = { - symbols.rev = "e92aabf81dc1af151fa452a33679dcb42b93fcbd"; - symbols.sha256 = "03k3y86mgc10ir5l1gdzc0r7w1gg7iavb1zl31kgfh9hnfmgv06w"; - templates.rev = "710c895e2f3be0ec366139bf33c9ca711c990630"; + symbols.rev = "65d897cc92950ff2af888eb67e527ba7a2b99fe8"; + symbols.sha256 = "08qb4rqxsyhrcvj1k200m2c06jjy7jwjmf9n1qkcm0biqqc5dba4"; + templates.rev = "cdf507d0373b5bfd8161b45f6fb86a49b56c4694"; templates.sha256 = "0zs29zn8qjgxv0w1vyr8yxmj02m8752zagn4vcraqgik46dwg2id"; - footprints.rev = "0836ca140b415055e373de97c466961088d8972a"; - footprints.sha256 = "0jzkrmzkxv3kqqmkpq5dpp3shy9ajfg1b1yzhk4ddzvy8l05qym4"; - packages3d.rev = "1e24671163ce0f44bf57b46445c7e7be1a95977d"; - packages3d.sha256 = "04hw6b4hyl2plfgynin3dv7siqml4341264wz2wngddszq8z32ki"; + footprints.rev = "084757e0326f98c10943b8ffe5be284fe912a160"; + footprints.sha256 = "1w7dkb93s84ymi1syxpzacbmkxlnlh0k4z1c62nabspb901nn524"; + packages3d.rev = "123ddef066ce40e20443e678c5baf6a7d4a04399"; + packages3d.sha256 = "1bv1k8i01x7gyayrlkzl3d2nsf7mcdmzx8gjwx1i2va9557rgli9"; }; }; }; diff --git a/pkgs/by-name/ko/koodo-reader/bump-abi-compat.patch b/pkgs/by-name/ko/koodo-reader/bump-abi-compat.patch new file mode 100644 index 000000000000..c9e2ba143fd4 --- /dev/null +++ b/pkgs/by-name/ko/koodo-reader/bump-abi-compat.patch @@ -0,0 +1,78 @@ +diff --git a/package.json b/package.json +index 3a001b5..c6ba849 100644 +--- a/package.json ++++ b/package.json +@@ -14,6 +14,8 @@ + "repository": "https://github.com/koodo-reader/koodo-reader", + "private": false, + "resolutions": { ++ "nan": "2.24.0", ++ "node-abi": "3.85.0", + "//": "See https://github.com/facebook/create-react-app/issues/11773", + "react-error-overlay": "6.0.9" + }, +@@ -22,7 +24,7 @@ + "adm-zip": "^0.5.2", + "axios": "^0.19.2", + "basic-ftp": "^5.0.5", +- "better-sqlite3": "^11.6.0", ++ "better-sqlite3": "^12.4.5", + "buffer": "^6.0.3", + "chardet": "^2.0.0", + "copy-text-to-clipboard": "^2.2.0", +diff --git a/yarn.lock b/yarn.lock +index 83cf080..0dda6d2 100644 +--- a/yarn.lock ++++ b/yarn.lock +@@ -5358,10 +5358,10 @@ bcrypt-pbkdf@^1.0.0, bcrypt-pbkdf@^1.0.2: + dependencies: + tweetnacl "^0.14.3" + +-better-sqlite3@^11.6.0: +- version "11.6.0" +- resolved "https://registry.yarnpkg.com/better-sqlite3/-/better-sqlite3-11.6.0.tgz#e50736956e6fe1c30dc94f1bc94a9c15d63b7b6b" +- integrity sha512-2J6k/eVxcFYY2SsTxsXrj6XylzHWPxveCn4fKPKZFv/Vqn/Cd7lOuX4d7rGQXT5zL+97MkNL3nSbCrIoe3LkgA== ++better-sqlite3@^12.4.5: ++ version "12.5.0" ++ resolved "https://registry.yarnpkg.com/better-sqlite3/-/better-sqlite3-12.5.0.tgz#c570873d9635b5d56baa52f7e72634c2c589f35f" ++ integrity sha512-WwCZ/5Diz7rsF29o27o0Gcc1Du+l7Zsv7SYtVPG0X3G/uUI1LqdxrQI7c9Hs2FWpqXXERjW9hp6g3/tH7DlVKg== + dependencies: + bindings "^1.5.0" + prebuild-install "^7.1.1" +@@ -10853,10 +10853,10 @@ mz@^2.7.0: + object-assign "^4.0.1" + thenify-all "^1.0.0" + +-nan@^2.19.0, nan@^2.20.0: +- version "2.22.0" +- resolved "https://registry.yarnpkg.com/nan/-/nan-2.22.0.tgz#31bc433fc33213c97bad36404bb68063de604de3" +- integrity sha512-nbajikzWTMwsW+eSsNm3QwlOs7het9gGJU5dDZzRTQGk03vyBOauxgI4VakDzE0PtsGTmXPsXTbbjVhRwR5mpw== ++nan@2.24.0, nan@^2.19.0, nan@^2.20.0: ++ version "2.24.0" ++ resolved "https://registry.yarnpkg.com/nan/-/nan-2.24.0.tgz#a8919b36e692aa5b260831910e4f81419fc0a283" ++ integrity sha512-Vpf9qnVW1RaDkoNKFUvfxqAbtI8ncb8OJlqZ9wwpXzWPEsvsB1nvdUi6oYrHIkQ1Y/tMDnr1h4nczS0VB9Xykg== + + nanoid@^3.3.6: + version "3.3.6" +@@ -10906,17 +10906,10 @@ no-case@^3.0.4: + lower-case "^2.0.2" + tslib "^2.0.3" + +-node-abi@^3.0.0, node-abi@^3.3.0: +- version "3.71.0" +- resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-3.71.0.tgz#52d84bbcd8575efb71468fbaa1f9a49b2c242038" +- integrity sha512-SZ40vRiy/+wRTf21hxkkEjPJZpARzUMVcJoQse2EF8qkUWbbO2z7vd5oA/H6bVH6SZQ5STGcu0KRDS7biNRfxw== +- dependencies: +- semver "^7.3.5" +- +-node-abi@^3.45.0: +- version "3.74.0" +- resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-3.74.0.tgz#5bfb4424264eaeb91432d2adb9da23c63a301ed0" +- integrity sha512-c5XK0MjkGBrQPGYG24GBADZud0NCbznxNx0ZkS+ebUTrmV1qTDxPxSL8zEAPURXSbLRWVexxmP4986BziahL5w== ++node-abi@3.85.0, node-abi@^3.0.0, node-abi@^3.3.0, node-abi@^3.45.0: ++ version "3.85.0" ++ resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-3.85.0.tgz#b115d575e52b2495ef08372b058e13d202875a7d" ++ integrity sha512-zsFhmbkAzwhTft6nd3VxcG0cvJsT70rL+BIGHWVq5fi6MwGrHwzqKaxXE+Hl2GmnGItnDKPPkO5/LQqjVkIdFg== + dependencies: + semver "^7.3.5" + diff --git a/pkgs/by-name/ko/koodo-reader/bump-node-abi.patch b/pkgs/by-name/ko/koodo-reader/bump-node-abi.patch deleted file mode 100644 index ca73761e30f9..000000000000 --- a/pkgs/by-name/ko/koodo-reader/bump-node-abi.patch +++ /dev/null @@ -1,17 +0,0 @@ -diff --git a/yarn.lock b/yarn.lock -index 83cf080..8bee81e 100644 ---- a/yarn.lock -+++ b/yarn.lock -@@ -10914,9 +10914,9 @@ node-abi@^3.0.0, node-abi@^3.3.0: - semver "^7.3.5" - - node-abi@^3.45.0: -- version "3.74.0" -- resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-3.74.0.tgz#5bfb4424264eaeb91432d2adb9da23c63a301ed0" -- integrity sha512-c5XK0MjkGBrQPGYG24GBADZud0NCbznxNx0ZkS+ebUTrmV1qTDxPxSL8zEAPURXSbLRWVexxmP4986BziahL5w== -+ version "3.77.0" -+ resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-3.77.0.tgz#3ad90d5c9d45663420e5aa4ff58dbf4e3625419a" -+ integrity sha512-DSmt0OEcLoK4i3NuscSbGjOf3bqiDEutejqENSplMSFA/gmB8mkED9G4pKWnPl7MDU4rSHebKPHeitpDfyH0cQ== - dependencies: - semver "^7.3.5" - diff --git a/pkgs/by-name/ko/koodo-reader/package.nix b/pkgs/by-name/ko/koodo-reader/package.nix index 8ce9ba71e4b9..c1013d200b71 100644 --- a/pkgs/by-name/ko/koodo-reader/package.nix +++ b/pkgs/by-name/ko/koodo-reader/package.nix @@ -14,32 +14,32 @@ wrapGAppsHook3, xcbuild, - electron_37, + electron_39, nix-update-script, }: let - electron = electron_37; # don't use latest electron to avoid going over the supported abi numbers + electron = electron_39; # don't use latest electron to avoid going over the supported abi numbers in stdenv.mkDerivation (finalAttrs: { pname = "koodo-reader"; - version = "2.2.3"; + version = "2.2.4"; src = fetchFromGitHub { owner = "troyeguo"; repo = "koodo-reader"; tag = "v${finalAttrs.version}"; - hash = "sha256-VQC1xvFw6TDw6P3UcQ4Y++UpjSgEGiRh0M+i1Z8O+N4="; + hash = "sha256-KUcI+0+ICMdwAF30CLM3QdS+X8UnYiHhcYkvEQ6WgS8="; }; patches = [ - ./bump-node-abi.patch + ./bump-abi-compat.patch ]; - offlineCache = fetchYarnDeps { + yarnOfflineCache = fetchYarnDeps { inherit (finalAttrs) src patches; - hash = "sha256-gRaHVWSTBwjVcswy6DVk5yLympudbDcKkvWDry4rsvI="; + hash = "sha256-XyFcY0XeNdNzLuqfv9Z2/41875Nl5OrAT/QVyI/+OQc="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/li/libchdr/package.nix b/pkgs/by-name/li/libchdr/package.nix new file mode 100644 index 000000000000..453c20d9382c --- /dev/null +++ b/pkgs/by-name/li/libchdr/package.nix @@ -0,0 +1,48 @@ +{ + lib, + stdenv, + fetchFromGitHub, + cmake, + pkg-config, + zlib, + zstd, +}: + +stdenv.mkDerivation { + pname = "libchdr"; + version = "0-unstable-2025-12-27"; + + src = fetchFromGitHub { + owner = "rtissera"; + repo = "libchdr"; + rev = "07a7dad23378b001f4ab174ef51bd6553f883edd"; + hash = "sha256-FCZ442mDF/pO5sNHNcPtWxSOB8o3I0YwwNXzu1B2vVQ="; + }; + + nativeBuildInputs = [ + cmake + pkg-config + ]; + + buildInputs = [ + zlib + zstd + ]; + + cmakeFlags = [ + (lib.cmakeBool "BUILD_SHARED_LIBS" (!stdenv.hostPlatform.isStatic)) + (lib.cmakeBool "INSTALL_STATIC_LIBS" stdenv.hostPlatform.isStatic) + (lib.cmakeBool "WITH_SYSTEM_ZLIB" true) + (lib.cmakeBool "WITH_SYSTEM_ZSTD" true) + (lib.cmakeFeature "CMAKE_INSTALL_LIBDIR" "lib") + (lib.cmakeFeature "CMAKE_INSTALL_INCLUDEDIR" "include") + ]; + + meta = { + description = "Standalone library for reading MAME's CHDv1-v5 formats"; + homepage = "https://github.com/rtissera/libchdr"; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ aleksana ]; + platforms = lib.platforms.all; + }; +} diff --git a/pkgs/by-name/li/libhighscore/package.nix b/pkgs/by-name/li/libhighscore/package.nix new file mode 100644 index 000000000000..47a8c87eeb4a --- /dev/null +++ b/pkgs/by-name/li/libhighscore/package.nix @@ -0,0 +1,54 @@ +{ + lib, + stdenv, + fetchFromGitLab, + meson, + ninja, + pkg-config, + glib, + vala, + gobject-introspection, + unstableGitUpdater, +}: + +stdenv.mkDerivation { + pname = "libhighscore"; + version = "0-unstable-2025-12-06"; + + src = fetchFromGitLab { + domain = "gitlab.gnome.org"; + owner = "alicem"; + repo = "libhighscore"; + rev = "6920d96b440ccfc070fc87c39c51beab8ac053bd"; + hash = "sha256-JXfPLPHA3HwXRG6sT/5TSMbtU+BqBh/+ZVrzJxW0xLg="; + }; + + nativeBuildInputs = [ + meson + ninja + pkg-config + glib # For glib-mkenums + gobject-introspection # For g-ir-scanner + vala # For vapigen + ]; + + # In highscore-1.pc + propagatedBuildInputs = [ + glib + ]; + + passthru.updateScript = unstableGitUpdater { + hardcodeZeroVersion = true; + }; + + meta = { + description = "Interface for porting emulators to Highscore"; + homepage = "https://gitlab.gnome.org/alicem/libhighscore"; + license = lib.licenses.lgpl21Plus; + maintainers = with lib.maintainers; [ + chuangzhu + aleksana + ]; + platforms = lib.platforms.linux; + }; +} diff --git a/pkgs/by-name/li/libigloo/package.nix b/pkgs/by-name/li/libigloo/package.nix new file mode 100644 index 000000000000..89dc3a318127 --- /dev/null +++ b/pkgs/by-name/li/libigloo/package.nix @@ -0,0 +1,27 @@ +{ + lib, + stdenv, + fetchurl, + rhash, + icecast, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "libigloo"; + version = "0.9.5"; + + src = fetchurl { + url = "https://downloads.xiph.org/releases/igloo/libigloo-${finalAttrs.version}.tar.gz"; + hash = "sha256-6iLpEZ96IYiBD5kQDFFVxnYtRZWuITuawp5ptPC4cok="; + }; + + buildInputs = [ rhash ]; + + doCheck = true; + + meta = { + description = "Generic C framework used and developed by the Icecast project"; + license = lib.licenses.gpl2Only; + inherit (icecast.meta) maintainers; + }; +}) diff --git a/pkgs/by-name/li/libiodbc/package.nix b/pkgs/by-name/li/libiodbc/package.nix index 5a699674b787..93c3ac3b9fc5 100644 --- a/pkgs/by-name/li/libiodbc/package.nix +++ b/pkgs/by-name/li/libiodbc/package.nix @@ -24,6 +24,10 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ pkg-config ]; buildInputs = lib.optionals useGTK [ gtk2 ]; + # temporary workaround for compile error with GCC 15 + # https://github.com/openlink/iODBC/issues/113 + env.NIX_CFLAGS_COMPILE = "-std=gnu17"; + preBuild = '' export NIX_LDFLAGS_BEFORE="-rpath $out/lib" ''; diff --git a/pkgs/by-name/li/librewolf-bin-unwrapped/package.nix b/pkgs/by-name/li/librewolf-bin-unwrapped/package.nix index 03ce92adf84a..5e89f53f019c 100644 --- a/pkgs/by-name/li/librewolf-bin-unwrapped/package.nix +++ b/pkgs/by-name/li/librewolf-bin-unwrapped/package.nix @@ -37,7 +37,7 @@ let pname = "librewolf-bin-unwrapped"; - version = "143.0.4-1"; + version = "146.0.1-1"; in stdenv.mkDerivation { @@ -47,9 +47,9 @@ stdenv.mkDerivation { url = "https://gitlab.com/api/v4/projects/44042130/packages/generic/librewolf/${version}/librewolf-${version}-${arch}-package.tar.xz"; hash = { - i686-linux = "sha256-GKdnsh7nkXlZh8QYBUhmB003IqfPI1+KxogZCxmyiUY="; - x86_64-linux = "sha256-1ZwXfE13K8X/fhBs0ibFaM7A/bRDNbU4hpEGdZIjIRk="; - aarch64-linux = "sha256-ICxN/7gqFlqH910DTo+cbrM1AoioY2Jbp2U8AfNxGUg="; + i686-linux = "sha256-Z8dQhYH3PuKI2vXQ2nQ4CmyNyDxtAirX0YVxI0r5n3w="; + x86_64-linux = "sha256-pRpSHAkLQpg80pOfUBvGBujr4fDDg4wpltVIw9wrlBE="; + aarch64-linux = "sha256-BTqzBAohy+kcWou2WKStoAykcqV1DYfLRNbjUF/TTIY="; } .${stdenv.hostPlatform.system} or throwSystem; }; diff --git a/pkgs/by-name/lt/ltspice/package.nix b/pkgs/by-name/lt/ltspice/package.nix index 88440254f8b6..5bec10da633d 100644 --- a/pkgs/by-name/lt/ltspice/package.nix +++ b/pkgs/by-name/lt/ltspice/package.nix @@ -46,7 +46,7 @@ stdenvNoCC.mkDerivation (finalAttrs: { installPhase = '' runHook preInstall mkdir -p $out - install -Dm644 ltspice.png $out/share/pixmaps/ltspice.png + install -Dm644 ltspice.png $out/share/icons/hicolor/256x256/apps/ltspice.png install -m755 -d $out/libexec/ltspice install -m755 *.exe $out/libexec/ltspice diff --git a/pkgs/by-name/mu/music-assistant/package.nix b/pkgs/by-name/mu/music-assistant/package.nix index 3133cb4026f8..3877924bfac4 100644 --- a/pkgs/by-name/mu/music-assistant/package.nix +++ b/pkgs/by-name/mu/music-assistant/package.nix @@ -47,14 +47,14 @@ assert python.pkgs.buildPythonApplication rec { pname = "music-assistant"; - version = "2.7.2"; + version = "2.7.3"; pyproject = true; src = fetchFromGitHub { owner = "music-assistant"; repo = "server"; tag = version; - hash = "sha256-JOS7t4vXkxHXvcI0tCAw3KfcrohUD4NV4w6oYIncQv4="; + hash = "sha256-6D3B88wjfVHvNhNrTDOu77eAkherOqdBVafUhht7okA="; }; patches = [ diff --git a/pkgs/by-name/mu/music-assistant/providers.nix b/pkgs/by-name/mu/music-assistant/providers.nix index 5768277224ed..a40106dec226 100644 --- a/pkgs/by-name/mu/music-assistant/providers.nix +++ b/pkgs/by-name/mu/music-assistant/providers.nix @@ -1,7 +1,7 @@ # Do not edit manually, run ./update-providers.py { - version = "2.7.2"; + version = "2.7.3"; providers = { airplay = ps: [ ]; diff --git a/pkgs/by-name/ne/newlisp/package.nix b/pkgs/by-name/ne/newlisp/package.nix index a1d4f0682593..d6cda77945ba 100644 --- a/pkgs/by-name/ne/newlisp/package.nix +++ b/pkgs/by-name/ne/newlisp/package.nix @@ -20,6 +20,9 @@ stdenv.mkDerivation (finalAttrs: { readline ]; + # Build fails with C standard newer than C17 + env.NIX_CFLAGS_COMPILE = "-std=gnu17"; + configureScript = "./configure-alt"; doCheck = true; diff --git a/pkgs/by-name/pi/pipeline/package.nix b/pkgs/by-name/pi/pipeline/package.nix index a1ef37c6b805..53e4c5898a60 100644 --- a/pkgs/by-name/pi/pipeline/package.nix +++ b/pkgs/by-name/pi/pipeline/package.nix @@ -13,16 +13,18 @@ pkg-config, wrapGAppsHook4, glib, - appstream-glib, + appstream, desktop-file-utils, blueprint-compiler, sqlite, clapper-unwrapped, + clapper-enhancers, gettext, gst_all_1, - gtuber, glib-networking, gnome, + libjxl, + libheif, webp-pixbuf-loader, librsvg, nix-update-script, @@ -35,12 +37,12 @@ stdenv.mkDerivation (finalAttrs: { src = fetchFromGitLab { owner = "schmiddi-on-mobile"; repo = "pipeline"; - rev = finalAttrs.version; + tag = finalAttrs.version; hash = "sha256-iMBdyjN6fMDOSE110tA9i6+D4UaNGG2aBoq+4s0YyJI="; }; cargoDeps = rustPlatform.fetchCargoVendor { - inherit (finalAttrs) src; + inherit (finalAttrs) src pname version; hash = "sha256-w+q90i6FQRPFceniUfwouU2p673O4sVnsRfowCu2fWY="; }; @@ -48,12 +50,13 @@ stdenv.mkDerivation (finalAttrs: { meson ninja cargo + gettext rustPlatform.cargoSetupHook rustc pkg-config wrapGAppsHook4 glib - appstream-glib + appstream desktop-file-utils blueprint-compiler ]; @@ -64,38 +67,46 @@ stdenv.mkDerivation (finalAttrs: { openssl sqlite clapper-unwrapped - + clapper-enhancers gst_all_1.gstreamer gst_all_1.gst-libav gst_all_1.gst-plugins-base - (gst_all_1.gst-plugins-good.override { gtkSupport = true; }) + gst_all_1.gst-plugins-good gst_all_1.gst-plugins-bad - gettext - gtuber + gst_all_1.gst-plugins-ugly + gst_all_1.gst-vaapi glib-networking # For GIO_EXTRA_MODULES. Fixes "TLS support is not available" ]; - # Pull in WebP support for YouTube avatars. - # In postInstall to run before gappsWrapperArgsHook. - postInstall = '' - export GDK_PIXBUF_MODULE_FILE="${ - gnome._gdkPixbufCacheBuilder_DO_NOT_USE { - extraLoaders = [ - webp-pixbuf-loader - librsvg - ]; - } - }" + preFixup = '' + gappsWrapperArgs+=( + --set GDK_PIXBUF_MODULE_FILE ${ + gnome._gdkPixbufCacheBuilder_DO_NOT_USE { + extraLoaders = [ + libjxl + librsvg + webp-pixbuf-loader + libheif.lib + ]; + } + } + --set CLAPPER_ENHANCERS_PATH ${clapper-enhancers}/${clapper-enhancers.passthru.pluginPath} + ) ''; - passthru.updateScript = nix-update-script { attrPath = finalAttrs.pname; }; + passthru = { + updateScript = nix-update-script { }; + }; meta = { description = "Watch YouTube and PeerTube videos in one place"; homepage = "https://mobile.schmidhuberj.de/pipeline"; mainProgram = "tubefeeder"; license = lib.licenses.gpl3Plus; - maintainers = with lib.maintainers; [ chuangzhu ]; + maintainers = with lib.maintainers; [ + chuangzhu + normalcea + ]; platforms = lib.platforms.linux; }; }) diff --git a/pkgs/by-name/qu/quick-lint-js/package.nix b/pkgs/by-name/qu/quick-lint-js/package.nix index bbdcb9dfeae9..8dbf16b71b7e 100644 --- a/pkgs/by-name/qu/quick-lint-js/package.nix +++ b/pkgs/by-name/qu/quick-lint-js/package.nix @@ -2,10 +2,12 @@ buildPackages, cmake, fetchFromGitHub, + fetchpatch2, lib, ninja, stdenv, versionCheckHook, + }: let @@ -53,6 +55,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "quick-lint-js"; inherit version src; + patches = [ + (fetchpatch2 { + url = "https://github.com/quick-lint/quick-lint-js/commit/a2798b35021f34bc798e2b70ec703075dd5eb7f6.patch"; + hash = "sha256-jEzFFntk94HQPNYLqU1XlwCnhaqt95Kk3TXmfqBGxBc="; + }) + ]; + nativeBuildInputs = [ cmake ninja diff --git a/pkgs/by-name/re/renameutils/package.nix b/pkgs/by-name/re/renameutils/package.nix index 77180071f168..8dfafc645538 100644 --- a/pkgs/by-name/re/renameutils/package.nix +++ b/pkgs/by-name/re/renameutils/package.nix @@ -28,6 +28,9 @@ stdenv.mkDerivation rec { --replace "ls_program = xstrdup(\"ls\")" "ls_program = xstrdup(\"${coreutils}/bin/ls\")" ''; + # Fix build with gcc 15 + env.NIX_CFLAGS_COMPILE = "-std=gnu17"; + nativeBuildInputs = [ readline ]; preConfigure = lib.optionalString (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) '' diff --git a/pkgs/by-name/re/reproxy/package.nix b/pkgs/by-name/re/reproxy/package.nix index 87c292e75d74..c911263de1c9 100644 --- a/pkgs/by-name/re/reproxy/package.nix +++ b/pkgs/by-name/re/reproxy/package.nix @@ -6,13 +6,13 @@ buildGoModule rec { pname = "reproxy"; - version = "1.3.0"; + version = "1.4.0"; src = fetchFromGitHub { owner = "umputun"; repo = "reproxy"; tag = "v${version}"; - hash = "sha256-zpfgwlGYXe7I3yO8Cc53ZrPDpXn8hk6cOcXwWyxub+A="; + hash = "sha256-pnmm/JEMcQ5UQUwUqGdzC/BphrH4tBz79Bq3c13GqbA="; }; vendorHash = null; diff --git a/pkgs/by-name/sa/safeeyes/package.nix b/pkgs/by-name/sa/safeeyes/package.nix index f3170d96e093..4f79a7a4adeb 100644 --- a/pkgs/by-name/sa/safeeyes/package.nix +++ b/pkgs/by-name/sa/safeeyes/package.nix @@ -19,12 +19,12 @@ python3Packages.buildPythonApplication rec { pname = "safeeyes"; - version = "3.2.0"; + version = "3.3.0"; pyproject = true; src = fetchPypi { inherit pname version; - hash = "sha256-t8PMQxQjfyW3t0bamo8kAlminAMfUe0ThtzrgUc33Xo="; + hash = "sha256-11nw13AAqupSIZRrhmDaViO3V/yYK8/xsVF8ylS49Rw="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/se/searxng/package.nix b/pkgs/by-name/se/searxng/package.nix index 22a2e45f124b..59dbb4e24f26 100644 --- a/pkgs/by-name/se/searxng/package.nix +++ b/pkgs/by-name/se/searxng/package.nix @@ -85,6 +85,7 @@ python.pkgs.toPythonModule ( whitenoise ] ++ httpx.optional-dependencies.http2 + ++ httpx.optional-dependencies.socks ++ httpx-socks.optional-dependencies.asyncio; # tests try to connect to network diff --git a/pkgs/by-name/st/stellarium/package.nix b/pkgs/by-name/st/stellarium/package.nix index 0e693f0bbcfb..9ba7325f883b 100644 --- a/pkgs/by-name/st/stellarium/package.nix +++ b/pkgs/by-name/st/stellarium/package.nix @@ -22,13 +22,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "stellarium"; - version = "25.3"; + version = "25.4"; src = fetchFromGitHub { owner = "Stellarium"; repo = "stellarium"; rev = "v${finalAttrs.version}"; - hash = "sha256-9uQ6u1+dSszmKG8eY6kSXhqsCPRGw6tulCTCrLByIxc="; + hash = "sha256-DA4VuVTVGTTzZA9ml+sh6R2qUU+QhHD9k1qOb8C5sSA="; }; patches = [ diff --git a/pkgs/by-name/tr/trayer/package.nix b/pkgs/by-name/tr/trayer/package.nix index e1e3ce54a3a4..7110e480abb6 100644 --- a/pkgs/by-name/tr/trayer/package.nix +++ b/pkgs/by-name/tr/trayer/package.nix @@ -5,6 +5,7 @@ pkg-config, gdk-pixbuf, gtk2, + fetchpatch, }: stdenv.mkDerivation rec { @@ -22,6 +23,15 @@ stdenv.mkDerivation rec { patchShebangs configure ''; + patches = [ + # Adding missing arg in function decleration + (fetchpatch { + name = "fix_function_dec.patch"; + url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/x11-misc/trayer-srg/files/trayer-srg-1.1.8-fix-define.patch?id=94ae89d1b044c24138d5c8903df68e9654a5462f"; + hash = "sha256-LighVaBDePheBO+dWG6JHhm/Y6sxdtvTrBar8VrPRH4="; + }) + ]; + nativeBuildInputs = [ pkg-config ]; buildInputs = [ diff --git a/pkgs/by-name/ug/uget/fix-match-ugtk_setting_dialog_new-declaration-with-d.patch b/pkgs/by-name/ug/uget/fix-match-ugtk_setting_dialog_new-declaration-with-d.patch new file mode 100644 index 000000000000..27e819a5205b --- /dev/null +++ b/pkgs/by-name/ug/uget/fix-match-ugtk_setting_dialog_new-declaration-with-d.patch @@ -0,0 +1,26 @@ +From 3a63063a5722947e8089d33ebdaf3ef6b293e2b3 Mon Sep 17 00:00:00 2001 +From: Moraxyc +Date: Sat, 3 Jan 2026 13:24:27 +0800 +Subject: [PATCH] fix: match ugtk_setting_dialog_new declaration with + definition + +--- + ui-gtk/UgtkSettingDialog.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/ui-gtk/UgtkSettingDialog.h b/ui-gtk/UgtkSettingDialog.h +index 750949e..0e82638 100644 +--- a/ui-gtk/UgtkSettingDialog.h ++++ b/ui-gtk/UgtkSettingDialog.h +@@ -75,7 +75,7 @@ struct UgtkSettingDialog + struct UgtkMediaWebsiteForm media_website; + }; + +-UgtkSettingDialog* ugtk_setting_dialog_new (); ++UgtkSettingDialog* ugtk_setting_dialog_new (const gchar* title, GtkWindow* parent); + void ugtk_setting_dialog_free (UgtkSettingDialog* sdialog); + + void ugtk_setting_dialog_run (UgtkSettingDialog* dialog, UgtkApp* app); +-- +2.52.0 + diff --git a/pkgs/by-name/ug/uget/package.nix b/pkgs/by-name/ug/uget/package.nix index d78dfbfe13f9..386081d06732 100644 --- a/pkgs/by-name/ug/uget/package.nix +++ b/pkgs/by-name/ug/uget/package.nix @@ -26,6 +26,13 @@ stdenv.mkDerivation rec { sha256 = "0jchvgkkphhwp2z7vd4axxr9ns8b6vqc22b2z8a906qm8916wd8i"; }; + patches = [ + # Fix build with gcc15 + # UgtkMenubar.c:188:19: error: too many arguments to function 'ugtk_setting_dialog_new'; expected 0, have 2 + # UgtkSettingDialog.c:50:21: error: conflicting types for 'ugtk_setting_dialog_new'; have 'UgtkSettingDialog *(const gchar *, GtkWindow *)' {aka 'UgtkSettingDialog *(const char *, struct _GtkWindow *)'} + ./fix-match-ugtk_setting_dialog_new-declaration-with-d.patch + ]; + # Apply upstream fix for -fno-common toolchains. postPatch = '' # TODO: remove the replace once upstream fix is released: diff --git a/pkgs/by-name/ve/vesktop/package.nix b/pkgs/by-name/ve/vesktop/package.nix index f6c9f3c1c639..5c370f7da788 100644 --- a/pkgs/by-name/ve/vesktop/package.nix +++ b/pkgs/by-name/ve/vesktop/package.nix @@ -88,11 +88,16 @@ stdenv.mkDerivation (finalAttrs: { export CSC_IDENTITY_AUTO_DISCOVERY=false ''; - # electron builds must be writable on darwin - preBuild = lib.optionalString stdenv.hostPlatform.isDarwin '' - cp -r ${electron.dist}/Electron.app . - chmod -R u+w Electron.app - ''; + # electron builds must be writable + preBuild = + lib.optionalString stdenv.hostPlatform.isDarwin '' + cp -r ${electron.dist}/Electron.app . + chmod -R u+w Electron.app + '' + + lib.optionalString stdenv.hostPlatform.isLinux '' + cp -r ${electron.dist} electron-dist + chmod -R u+w electron-dist + ''; buildPhase = '' runHook preBuild @@ -101,7 +106,7 @@ stdenv.mkDerivation (finalAttrs: { pnpm exec electron-builder \ --dir \ -c.asarUnpack="**/*.node" \ - -c.electronDist=${if stdenv.hostPlatform.isDarwin then "." else electron.dist} \ + -c.electronDist=${if stdenv.hostPlatform.isDarwin then "." else "electron-dist"} \ -c.electronVersion=${electron.version} runHook postBuild diff --git a/pkgs/by-name/xf/xfig/package.nix b/pkgs/by-name/xf/xfig/package.nix index f88b70103928..fd2e3ca1b263 100644 --- a/pkgs/by-name/xf/xfig/package.nix +++ b/pkgs/by-name/xf/xfig/package.nix @@ -2,6 +2,7 @@ lib, stdenv, fetchurl, + fetchpatch, makeWrapper, imagemagick, libXpm, @@ -38,6 +39,18 @@ stdenv.mkDerivation rec { libXft ]; + # Upstream-accepted patches for C23 compatibility from Gentoo and Debian + patches = [ + (fetchpatch { + url = "https://www-user.tu-chemnitz.de/~hamari/distfiles/xfig-3.2.9a-modern-c.patch"; + hash = "sha256-brUonsrWP97QnIkHnAHa2PSAiV9JUVOzmu0kvuLNFGw="; + }) + (fetchpatch { + url = "https://sources.debian.org/data/main/x/xfig/1%3A3.2.9a-4/debian/patches/19_boolean.patch"; + hash = "sha256-cMUyp/93bCva4gT349IThhuYmOGZBd0EZ38Y4JrxZn8="; + }) + ]; + postPatch = '' substituteInPlace src/main.c --replace-fail '"fig2dev"' '"${fig2dev}/bin/fig2dev"' ''; diff --git a/pkgs/by-name/ze/zeroc-ice/fix-mb_init.patch b/pkgs/by-name/ze/zeroc-ice/fix-mb_init.patch new file mode 100644 index 000000000000..bac289fc81f6 --- /dev/null +++ b/pkgs/by-name/ze/zeroc-ice/fix-mb_init.patch @@ -0,0 +1,34 @@ +From faa694a7171a06f83034fd869adc4cffa2ae0c18 Mon Sep 17 00:00:00 2001 +From: laurensmiers +Date: Wed, 22 Oct 2025 14:50:23 +0200 +Subject: [PATCH] fix: mb_init does not accept any parameter + +Defined in mbchar.c:114 : +```c +void mb_init() +/* + * Initialize multi-byte character settings. + * First called prior to setting the 'mcpp_mode'. + * Will be called again each time the multibyte character encoding is changed. + */ +{ +``` + +It does not expect any parameters. +--- + mcpp_main.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/mcpp_main.c b/mcpp_main.c +index 54a62b2..44265ad 100644 +--- a/mcpp_main.c ++++ b/mcpp_main.c +@@ -302,7 +302,7 @@ int mcpp_lib_main + inc_dirp = &null; /* Initialize to current (null) directory */ + cur_fname = cur_fullname = "(predefined)"; /* For predefined macros */ + init_defines(); /* Predefine macros */ +- mb_init(TRUE); /* Should be initialized prior to get options */ ++ mb_init(); /* Should be initialized prior to get options */ + do_options( argc, argv, &in_file, &out_file); /* Command line options */ + + /* Open input file, "-" means stdin. */ diff --git a/pkgs/by-name/ze/zeroc-ice/fix-reserved-keywords.patch b/pkgs/by-name/ze/zeroc-ice/fix-reserved-keywords.patch new file mode 100644 index 000000000000..90b409f322c8 --- /dev/null +++ b/pkgs/by-name/ze/zeroc-ice/fix-reserved-keywords.patch @@ -0,0 +1,55 @@ +From bd5ddbde9e4ed24101cdc86007f26e95f38dd5b1 Mon Sep 17 00:00:00 2001 +From: laurensmiers +Date: Wed, 22 Oct 2025 14:52:30 +0200 +Subject: [PATCH] fix: don't use reserved keyword for goto statement + +Rename: +- 'true' to 'exit_success' +- 'false' to 'exit_fail' + +Chose not to change the flow of the code by removing the goto's to +avoid regressions. +--- + system.c | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git a/system.c b/system.c +index 646caf6..0a15aec 100644 +--- a/system.c ++++ b/system.c +@@ -1738,7 +1738,7 @@ static int open_file( + if (! fullname) /* Non-existent or directory */ + return FALSE; + if (included( fullname)) /* Once included */ +- goto true; ++ goto exit_success; + + if ((max_open != 0 && max_open <= include_nest) + /* Exceed the known limit of open files */ +@@ -1765,12 +1765,12 @@ static int open_file( + if ((fp = mcpp_fopen( fullname, "r")) == NULL) { + file->fp = mcpp_fopen( cur_fullname, "r"); + fseek( file->fp, file->pos, SEEK_SET); +- goto false; ++ goto exit_fail; + } + if (max_open == 0) /* Remember the limit of the system */ + max_open = include_nest; + } else if (fp == NULL) /* No read permission */ +- goto false; ++ goto exit_fail; + /* Truncate buffer of the includer to save memory */ + len = (int) (file->bptr - file->buffer); + if (len) { +@@ -1802,9 +1802,9 @@ static int open_file( + if (mkdep && ((mkdep & MD_SYSHEADER) || ! infile->sys_header)) + put_depend( fullname); /* Output dependency line */ + +-true: ++exit_success: + return TRUE; +-false: ++exit_fail: + free( fullname); + return FALSE; + } diff --git a/pkgs/by-name/ze/zeroc-ice/package.nix b/pkgs/by-name/ze/zeroc-ice/package.nix index 9331ac1502a6..6832f757beb7 100644 --- a/pkgs/by-name/ze/zeroc-ice/package.nix +++ b/pkgs/by-name/ze/zeroc-ice/package.nix @@ -6,6 +6,7 @@ expat, libedit, lmdb, + mcpp, openssl, libxcrypt, python3, # for tests only @@ -13,21 +14,26 @@ }: let - zeroc_mcpp = stdenv.mkDerivation rec { - pname = "zeroc-mcpp"; - version = "2.7.2.14"; + mcpp' = mcpp.overrideAttrs (prevAttrs: rec { + pname = "mcpp-zeroc-ice"; + version = "2.7.3"; src = fetchFromGitHub { owner = "zeroc-ice"; repo = "mcpp"; rev = "v${version}"; - sha256 = "1psryc2ql1cp91xd3f8jz84mdaqvwzkdq2pr96nwn03ds4cd88wh"; + hash = "sha256-hZGU5mqMRTTHV2bR9uzM6ALj1sypjPxO5Ajg8aKzLxc="; }; - configureFlags = [ "--enable-mcpplib" ]; - installFlags = [ "PREFIX=$(out)" ]; - }; + # zeroc-ice's fork diverges quite a bit from upstream mcpp, so prevAttrs.patches is not used here + patches = [ + # See https://github.com/zeroc-ice/mcpp/pull/12 + ./fix-mb_init.patch + ./fix-reserved-keywords.patch + ]; + installFlags = prevAttrs.installFlags or [ ] ++ [ "PREFIX=$(out)" ]; + }); in stdenv.mkDerivation rec { pname = "zeroc-ice"; @@ -41,7 +47,7 @@ stdenv.mkDerivation rec { }; buildInputs = [ - zeroc_mcpp + mcpp' bzip2 expat libedit diff --git a/pkgs/development/compilers/ecl/default.nix b/pkgs/development/compilers/ecl/default.nix index 9d42368f724d..9f7394d52ab6 100644 --- a/pkgs/development/compilers/ecl/default.nix +++ b/pkgs/development/compilers/ecl/default.nix @@ -56,6 +56,8 @@ stdenv.mkDerivation rec { url = "https://raw.githubusercontent.com/sagemath/sage/9.2/build/pkgs/ecl/patches/write_error.patch"; sha256 = "0hfxacpgn4919hg0mn4wf4m8r7y592r4gw7aqfnva7sckxi6w089"; }) + ] + ++ lib.optionals stdenv.cc.isGNU [ # Fix gcc15 compat for downstream packages e.g. sage # error: ‘bool’ cannot be defined via ‘typedef’ (fetchpatch { diff --git a/pkgs/development/python-modules/aioslimproto/default.nix b/pkgs/development/python-modules/aioslimproto/default.nix index 7ea0fb920fee..9c91609aeacd 100644 --- a/pkgs/development/python-modules/aioslimproto/default.nix +++ b/pkgs/development/python-modules/aioslimproto/default.nix @@ -11,7 +11,7 @@ buildPythonPackage rec { pname = "aioslimproto"; - version = "3.1.2"; + version = "3.1.4"; pyproject = true; disabled = pythonOlder "3.11"; @@ -20,7 +20,7 @@ buildPythonPackage rec { owner = "home-assistant-libs"; repo = "aioslimproto"; tag = version; - hash = "sha256-NrMcM3pIzTw9FkfVDptIIdIya7jHtwwzT7RRJTmB40c="; + hash = "sha256-9WPlVAj/Bo7k/oWHI3xDkn07OrQdvNruou2s/zxB61Q="; }; postPatch = '' diff --git a/pkgs/development/python-modules/pulumi-aws/default.nix b/pkgs/development/python-modules/pulumi-aws/default.nix index 8eb788b87961..81329bad9500 100644 --- a/pkgs/development/python-modules/pulumi-aws/default.nix +++ b/pkgs/development/python-modules/pulumi-aws/default.nix @@ -26,6 +26,14 @@ buildPythonPackage rec { sourceRoot = "${src.name}/sdk/python"; + postPatch = '' + # We need the version of pulumi-aws in its package metadata to be accurate + # as this seems to be used to determine which version of the + # pulumi-resource-aws plugin to be dynamically downloaded by the pulumi CLI + substituteInPlace pyproject.toml \ + --replace-fail "7.0.0a0+dev" "${version}" + ''; + build-system = [ setuptools ]; dependencies = [ diff --git a/pkgs/development/python-modules/pygame/0001-Use-SDL_AllocFormat-instead-of-creating-it-manually.patch b/pkgs/development/python-modules/pygame-original/0001-Use-SDL_AllocFormat-instead-of-creating-it-manually.patch similarity index 100% rename from pkgs/development/python-modules/pygame/0001-Use-SDL_AllocFormat-instead-of-creating-it-manually.patch rename to pkgs/development/python-modules/pygame-original/0001-Use-SDL_AllocFormat-instead-of-creating-it-manually.patch diff --git a/pkgs/development/python-modules/pygame/0001-Use-SDL_HasSurfaceRLE-when-available.patch b/pkgs/development/python-modules/pygame-original/0001-Use-SDL_HasSurfaceRLE-when-available.patch similarity index 100% rename from pkgs/development/python-modules/pygame/0001-Use-SDL_HasSurfaceRLE-when-available.patch rename to pkgs/development/python-modules/pygame-original/0001-Use-SDL_HasSurfaceRLE-when-available.patch diff --git a/pkgs/development/python-modules/pygame/0002-Don-t-assume-that-touch-devices-support-get_num_fing.patch b/pkgs/development/python-modules/pygame-original/0002-Don-t-assume-that-touch-devices-support-get_num_fing.patch similarity index 100% rename from pkgs/development/python-modules/pygame/0002-Don-t-assume-that-touch-devices-support-get_num_fing.patch rename to pkgs/development/python-modules/pygame-original/0002-Don-t-assume-that-touch-devices-support-get_num_fing.patch diff --git a/pkgs/development/python-modules/pygame/default.nix b/pkgs/development/python-modules/pygame-original/default.nix similarity index 94% rename from pkgs/development/python-modules/pygame/default.nix rename to pkgs/development/python-modules/pygame-original/default.nix index d4a4c92f89c8..58e869518086 100644 --- a/pkgs/development/python-modules/pygame/default.nix +++ b/pkgs/development/python-modules/pygame-original/default.nix @@ -6,6 +6,7 @@ replaceVars, fontconfig, python, + pythonAtLeast, # build-system cython, @@ -128,11 +129,13 @@ buildPythonPackage rec { pythonImportsCheck = [ "pygame" ]; meta = { - description = "Python library for games"; + description = "Python library for games (original distribution)"; homepage = "https://www.pygame.org/"; changelog = "https://github.com/pygame/pygame/releases/tag/${src.tag}"; license = lib.licenses.lgpl21Plus; maintainers = with lib.maintainers; [ emilytrau ]; platforms = lib.platforms.unix; + # https://github.com/pygame/pygame/issues/4706 + broken = pythonAtLeast "3.14"; }; } diff --git a/pkgs/development/python-modules/pygame/fix-dependency-finding.patch b/pkgs/development/python-modules/pygame-original/fix-dependency-finding.patch similarity index 100% rename from pkgs/development/python-modules/pygame/fix-dependency-finding.patch rename to pkgs/development/python-modules/pygame-original/fix-dependency-finding.patch diff --git a/pkgs/development/python-modules/pygame/skip-mixer-test.patch b/pkgs/development/python-modules/pygame-original/skip-mixer-test.patch similarity index 100% rename from pkgs/development/python-modules/pygame/skip-mixer-test.patch rename to pkgs/development/python-modules/pygame-original/skip-mixer-test.patch diff --git a/pkgs/development/python-modules/pygame/skip-rle-tests.patch b/pkgs/development/python-modules/pygame-original/skip-rle-tests.patch similarity index 100% rename from pkgs/development/python-modules/pygame/skip-rle-tests.patch rename to pkgs/development/python-modules/pygame-original/skip-rle-tests.patch diff --git a/pkgs/development/python-modules/sphinx-autodoc2/default.nix b/pkgs/development/python-modules/sphinx-autodoc2/default.nix index d50c265dab7c..edcddd2b3462 100644 --- a/pkgs/development/python-modules/sphinx-autodoc2/default.nix +++ b/pkgs/development/python-modules/sphinx-autodoc2/default.nix @@ -2,6 +2,7 @@ lib, buildPythonPackage, fetchFromGitHub, + fetchDebianPatch, pythonOlder, flit-core, @@ -30,6 +31,17 @@ buildPythonPackage rec { hash = "sha256-Wu079THK1mHVilD2Fx9dIzuIOOYOXpo/EMxVczNutCI="; }; + patches = [ + # compatibility with astroid 4, see: https://github.com/sphinx-extensions2/sphinx-autodoc2/pull/93 + (fetchDebianPatch { + pname = "python-sphinx-autodoc2"; + inherit version; + debianRevision = "9"; + patch = "astroid-4.patch"; + hash = "sha256-tRWDee30GSQ+AobCAHdtw65B6YyRpzn7kW5rzK7/QOk="; + }) + ]; + build-system = [ flit-core ]; dependencies = [ diff --git a/pkgs/development/tools/godot/common.nix b/pkgs/development/tools/godot/common.nix index a50cf1bb6c1a..2064cb098b52 100644 --- a/pkgs/development/tools/godot/common.nix +++ b/pkgs/development/tools/godot/common.nix @@ -423,6 +423,11 @@ let url = "https://github.com/godotengine/godot/commit/6ce71f0fb0a091cffb6adb4af8ab3f716ad8930b.patch"; hash = "sha256-hgAtAtCghF5InyGLdE9M+9PjPS1BWXWGKgIAyeuqkoU="; }) + (fetchpatch { + name = "thorvg-header-fix.patch"; + url = "https://github.com/godotengine/godot/commit/1823460787a6c1bb8e4eaf21ac2a3f90d24d5ee0.patch"; + hash = "sha256-PcHEMXd0v2c3j6Eitxt5uWi6cD+OmsBAn3TNMNRNPog="; + }) # Fix a crash in the mono test project build. It no longer seems to # happen in 4.4, but an existing fix couldn't be identified. ./CSharpLanguage-fix-crash-in-reload_assemblies-after-.patch diff --git a/pkgs/development/tools/misc/binutils/default.nix b/pkgs/development/tools/misc/binutils/default.nix index 3642e3c24a53..d632b1ade6ea 100644 --- a/pkgs/development/tools/misc/binutils/default.nix +++ b/pkgs/development/tools/misc/binutils/default.nix @@ -19,7 +19,9 @@ in enableGold ? withGold stdenv.targetPlatform, enableGoldDefault ? false, - enableShared ? !stdenv.hostPlatform.isStatic, + # shared lib linking fails on cygwin due to multiple definitions + # https://cygwin.com/cgit/cygwin-packages/binutils/blame/binutils.cygport + enableShared ? (!stdenv.hostPlatform.isStatic && !stdenv.hostPlatform.isCygwin), # WARN: Enabling all targets increases output size to a multiple. withAllTargets ? false, }: diff --git a/pkgs/servers/home-assistant/custom-lovelace-modules/plotly-chart-card/package.nix b/pkgs/servers/home-assistant/custom-lovelace-modules/plotly-chart-card/package.nix index d868f674497c..8388b37d3b01 100644 --- a/pkgs/servers/home-assistant/custom-lovelace-modules/plotly-chart-card/package.nix +++ b/pkgs/servers/home-assistant/custom-lovelace-modules/plotly-chart-card/package.nix @@ -1,5 +1,6 @@ { lib, + nodejs_22, buildNpmPackage, buildGoModule, fetchFromGitHub, @@ -24,7 +25,7 @@ let }; in -buildNpmPackage rec { +buildNpmPackage.override { nodejs = nodejs_22; } rec { pname = "plotly-graph-card"; version = "3.3.5"; diff --git a/pkgs/servers/http/nginx/modules.nix b/pkgs/servers/http/nginx/modules.nix index 8b558dcb85e8..33622bd1bd99 100644 --- a/pkgs/servers/http/nginx/modules.nix +++ b/pkgs/servers/http/nginx/modules.nix @@ -529,8 +529,8 @@ let src = fetchFromGitHub { owner = "nginx"; repo = "njs"; - rev = "0.8.9"; - hash = "sha256-TalS9EJP+vB1o3BKaTvXXnudjKhNOcob3kDAyeKej3c="; + tag = "0.9.4"; + hash = "sha256-Ee55QKaeZ0mYGKUroKr/AYGoOCakEonU483qkhmZdzU="; }; # njs module sources have to be writable during nginx build, so we copy them diff --git a/pkgs/servers/klipper/default.nix b/pkgs/servers/klipper/default.nix index 440e8b1e729f..2caacc492dde 100644 --- a/pkgs/servers/klipper/default.nix +++ b/pkgs/servers/klipper/default.nix @@ -11,13 +11,13 @@ stdenv.mkDerivation rec { pname = "klipper"; - version = "0.13.0-unstable-2025-11-17"; + version = "0.13.0-unstable-2026-01-02"; src = fetchFromGitHub { owner = "KevinOConnor"; repo = "klipper"; - rev = "b4c7cf4a3365a7bdc05b1ac146f8f48b5666ce8d"; - sha256 = "sha256-R4WHzRGz+0Tv/bGlTplARuIOlajrIlJjP6wmPMonDEY="; + rev = "e60fe3d99b545d7e42ff2f5278efa5822668a57c"; + sha256 = "sha256-ab3Z+J3wR/j5j6GS7vwcH42isn7xVPm+eH1pWQ2J8D0="; }; sourceRoot = "${src.name}/klippy"; diff --git a/pkgs/servers/varnish/default.nix b/pkgs/servers/varnish/default.nix index c96b9b11df59..368e2ddf9b56 100644 --- a/pkgs/servers/varnish/default.nix +++ b/pkgs/servers/varnish/default.nix @@ -3,6 +3,7 @@ stdenv, fetchurl, fetchpatch2, + buildPackages, pcre, pcre2, jemalloc, @@ -24,7 +25,6 @@ let { version, hash, - extraNativeBuildInputs ? [ ], }: stdenv.mkDerivation rec { pname = "varnish"; @@ -35,12 +35,15 @@ let inherit hash; }; + strictDeps = true; + nativeBuildInputs = with python3.pkgs; [ pkg-config docutils sphinx makeWrapper ]; + buildInputs = [ libxslt groff @@ -54,6 +57,14 @@ let ++ lib.optional stdenv.hostPlatform.isDarwin libunwind ++ lib.optional stdenv.hostPlatform.isLinux jemalloc; + configureFlags = [ + # the checks behind those to not work when doing cross but for simplicity we always define them + "ac_cv_have_tcp_fastopen=yes" + "ac_cv_have_tcp_keep=yes" + "ac_cv_have_working_close_range=yes" + "PYTHON=${buildPackages.python3.interpreter}" + ]; + buildFlags = [ "localstatedir=/var/run" ]; patches = @@ -75,11 +86,32 @@ let ]; postPatch = '' - substituteInPlace bin/varnishtest/vtc_main.c --replace /bin/rm "${coreutils}/bin/rm" + substituteInPlace bin/varnishtest/vtc_main.c --replace-fail /bin/rm "${coreutils}/bin/rm" + ''; + + postConfigure = lib.optionalString (!stdenv.buildPlatform.canExecute stdenv.hostPlatform) '' + # prevent cache invalidation + substituteInPlace bin/varnishd/Makefile \ + --replace-fail "vhp_hufdec.h: vhp_gen_hufdec" "vhp_hufdec.h:" + + ln -s "${buildPackages.varnish.vhp_hufdec_h}" bin/varnishd/vhp_hufdec.h + + substituteInPlace bin/varnishstat/Makefile \ + --replace-fail "varnishstat_curses_help.c: varnishstat_help_gen" "varnishstat_curses_help.c:" \ + --replace-fail "./varnishstat_help_gen" "${buildPackages.varnish}/bin/varnishstat_help_gen" + + # the docs execute lots of commands to gather options and flags + substituteInPlace doc/Makefile \ + --replace-fail "SUBDIRS = graphviz sphinx" "SUBDIRS = graphviz" + substituteInPlace Makefile \ + --replace-fail "include lib bin vmod etc doc man contrib" "include lib bin vmod etc doc contrib" ''; postInstall = '' wrapProgram "$out/sbin/varnishd" --prefix PATH : "${lib.makeBinPath [ stdenv.cc ]}" + '' + + lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) '' + cp bin/varnishd/vhp_hufdec.h $vhp_hufdec_h ''; # https://github.com/varnishcache/varnish-cache/issues/1875 @@ -88,7 +120,10 @@ let outputs = [ "out" "dev" + ] + ++ lib.optionals (stdenv.buildPlatform.canExecute stdenv.hostPlatform) [ "man" + "vhp_hufdec_h" # only used for cross compilation ]; passthru = { diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 7dfe86967e25..894042f7d9ab 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -734,6 +734,7 @@ mapAliases { gsettings-qt = lomiri.gsettings-qt; # Added 2025-12-06 gtkcord4 = throw "'gtkcord4' has been renamed to/replaced by 'dissent'"; # Converted to throw 2025-10-27 gtkextra = throw "'gtkextra' has been removed due to lack of maintenance upstream."; # Added 2025-06-10 + gtuber = throw "'gtuber' has been removed due to being discontinued by upstream."; # Added 2025-12-12 guile-disarchive = throw "'guile-disarchive' has been renamed to/replaced by 'disarchive'"; # Converted to throw 2025-10-27 guile-sdl = throw "guile-sdl has been removed, as it was broken"; # Added 2025-08-25 gutenprintBin = gutenprint-bin; # Added 2025-08-21 diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index fcb0a5310058..b9f0fc43bfae 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -13443,12 +13443,15 @@ self: super: with self; { pygal = callPackage ../development/python-modules/pygal { }; - pygame = callPackage ../development/python-modules/pygame { }; + # pygame-ce is better maintained upstream, the breaking point was https://github.com/NixOS/nixpkgs/pull/475917#issuecomment-3706940043 + pygame = if pythonAtLeast "3.14" then pygame-ce else pygame-original; pygame-ce = callPackage ../development/python-modules/pygame-ce { }; pygame-gui = callPackage ../development/python-modules/pygame-gui { }; + pygame-original = callPackage ../development/python-modules/pygame-original { }; + pygame-sdl2 = callPackage ../development/python-modules/pygame-sdl2 { }; pygatt = callPackage ../development/python-modules/pygatt { };