From 37c745398e138559441de0deaef5f8199184cc83 Mon Sep 17 00:00:00 2001 From: awwpotato Date: Fri, 4 Apr 2025 11:20:19 -0700 Subject: [PATCH 01/36] industrializer: unbreak on gcc 14, modernize --- pkgs/by-name/in/industrializer/package.nix | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/pkgs/by-name/in/industrializer/package.nix b/pkgs/by-name/in/industrializer/package.nix index a17f3c448964..6c51086f6521 100644 --- a/pkgs/by-name/in/industrializer/package.nix +++ b/pkgs/by-name/in/industrializer/package.nix @@ -15,12 +15,13 @@ pkg-config, }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "industrializer"; version = "0.2.7"; + src = fetchurl { - url = "mirror://sourceforge/project/${pname}/ps${pname}-${version}.tar.xz"; - sha256 = "0k688k2wppam351by7cp9m7an09yligzd89padr8viqy63gkdk6v"; + url = "mirror://sourceforge/project/industrializer/psindustrializer-${finalAttrs.version}.tar.xz"; + hash = "sha256-28w23zAex41yUzeh9l+kPgGrTk2XHb9CGVXdy8VEyEw="; }; nativeBuildInputs = [ @@ -42,6 +43,9 @@ stdenv.mkDerivation rec { preConfigure = "./autogen.sh"; + # jack.c:190:5: error: initialization of 'const gchar * (*)(int)' {aka 'const char * (*)(int)'} from incompatible pointer type 'const char * (*)(int * (*)()) + env.NIX_CFLAGS_COMPILE = "-Wno-error=incompatible-pointer-types"; + meta = { description = "This program generates synthesized percussion sounds using physical modelling"; longDescription = '' @@ -54,4 +58,4 @@ stdenv.mkDerivation rec { platforms = lib.platforms.linux; mainProgram = "psindustrializer"; }; -} +}) From f5652d3cd2cd0d00d23e8e93a6bf93685a6b071b Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 9 Apr 2025 16:55:11 +0000 Subject: [PATCH 02/36] norminette: 3.3.55 -> 3.3.58 --- pkgs/by-name/no/norminette/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/no/norminette/package.nix b/pkgs/by-name/no/norminette/package.nix index 602297773727..bec1adc9d304 100644 --- a/pkgs/by-name/no/norminette/package.nix +++ b/pkgs/by-name/no/norminette/package.nix @@ -6,13 +6,13 @@ python3Packages.buildPythonApplication rec { pname = "norminette"; - version = "3.3.55"; + version = "3.3.58"; src = fetchFromGitHub { owner = "42School"; repo = pname; tag = version; - hash = "sha256-SaXOUpYEbc2QhZ8aKS+JeJ22MSXZ8HZuRmVQ9fWk7tM="; + hash = "sha256-6hBBbfW2PQFb8rcDihvtWK0df7WcvOk0il1E82GOxaU="; }; nativeCheckInputs = with python3Packages; [ From 79003a28d8841fab68859f324f927001cf6c9389 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 10 Apr 2025 12:44:17 +0000 Subject: [PATCH 03/36] slurm: 24.11.3.1 -> 24.11.4.1 --- pkgs/by-name/sl/slurm/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/sl/slurm/package.nix b/pkgs/by-name/sl/slurm/package.nix index a75e4751c22b..dc11b8962e49 100644 --- a/pkgs/by-name/sl/slurm/package.nix +++ b/pkgs/by-name/sl/slurm/package.nix @@ -41,7 +41,7 @@ stdenv.mkDerivation rec { pname = "slurm"; - version = "24.11.3.1"; + version = "24.11.4.1"; # N.B. We use github release tags instead of https://www.schedmd.com/downloads.php # because the latter does not keep older releases. @@ -50,7 +50,7 @@ stdenv.mkDerivation rec { repo = "slurm"; # The release tags use - instead of . rev = "${pname}-${builtins.replaceStrings [ "." ] [ "-" ] version}"; - hash = "sha256-DdGCPNmLCp1SgsYPVr7Gr4yqBrV2Ot3nJsWpcuYty5U="; + hash = "sha256-qfTkvORa03LxbLXWfUoTw1bV17w7geA9QA3i+fWSCqE="; }; outputs = [ From ffb41a6b19d3e5fcfc8713422096b4d4279371fb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Fri, 11 Apr 2025 02:59:40 +0200 Subject: [PATCH 04/36] python313Packages.channels-redis: 4.1.0 -> 4.2.1 Changelog: https://github.com/django/channels_redis/blob/HEAD/CHANGELOG.txt --- .../python-modules/channels-redis/default.nix | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/pkgs/development/python-modules/channels-redis/default.nix b/pkgs/development/python-modules/channels-redis/default.nix index 060c7e96d6fb..eb92f4272fa0 100644 --- a/pkgs/development/python-modules/channels-redis/default.nix +++ b/pkgs/development/python-modules/channels-redis/default.nix @@ -1,21 +1,20 @@ { lib, - aioredis, asgiref, buildPythonPackage, channels, cryptography, fetchFromGitHub, - hiredis, msgpack, pythonOlder, redis, + setuptools, }: buildPythonPackage rec { pname = "channels-redis"; - version = "4.1.0"; - format = "setuptools"; + version = "4.2.1"; + pyproject = true; disabled = pythonOlder "3.7"; @@ -23,16 +22,13 @@ buildPythonPackage rec { owner = "django"; repo = "channels_redis"; tag = version; - hash = "sha256-Eid9aWlLNnqr3WAnsLe+Pz9gsugCsdDKi0+nFNF02CI="; + hash = "sha256-jQkpuOQNU2KCWavXSE/n8gdpQhhAafQbZYfbX71Rcds="; }; - buildInputs = [ - hiredis - redis - ]; + build-system = [ setuptools ]; - propagatedBuildInputs = [ - aioredis + dependencies = [ + redis asgiref channels msgpack From e2d08a1f539204662dc6b9b49c0add0e6f6364c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Fri, 11 Apr 2025 03:01:01 +0200 Subject: [PATCH 05/36] python313Packages.drf-spectacular-sidecar: 2023.9.1 -> 2025.4.1 --- .../drf-spectacular-sidecar/default.nix | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/pkgs/development/python-modules/drf-spectacular-sidecar/default.nix b/pkgs/development/python-modules/drf-spectacular-sidecar/default.nix index 426a9e440013..bd8da61a4f6e 100644 --- a/pkgs/development/python-modules/drf-spectacular-sidecar/default.nix +++ b/pkgs/development/python-modules/drf-spectacular-sidecar/default.nix @@ -3,21 +3,24 @@ buildPythonPackage, fetchFromGitHub, django, + setuptools, }: buildPythonPackage rec { pname = "drf-spectacular-sidecar"; - version = "2023.9.1"; - format = "setuptools"; + version = "2025.4.1"; + pyproject = true; src = fetchFromGitHub { owner = "tfranzel"; repo = "drf-spectacular-sidecar"; rev = version; - hash = "sha256-EoQKbxzXEuKC50/W1/tBB2wASJZmNNwg9r1qhIB4Ws8="; + hash = "sha256-YzSUwShj7QGCVKlTRM2Gro38Y+jGYQsMGBMAH0radmA="; }; - propagatedBuildInputs = [ django ]; + build-system = [ setuptools ]; + + dependencies = [ django ]; # no tests doCheck = false; From 04b2657580d23f7c5025b78ad2bb5044b2515956 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Fri, 11 Apr 2025 03:01:23 +0200 Subject: [PATCH 06/36] python313Packages.whitenoise: 6.7.0 -> 6.9.0 Changelog: https://github.com/evansd/whitenoise/blob/main/docs/changelog.rst --- .../python-modules/whitenoise/default.nix | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/pkgs/development/python-modules/whitenoise/default.nix b/pkgs/development/python-modules/whitenoise/default.nix index b1553b1e409d..7f82b11c3600 100644 --- a/pkgs/development/python-modules/whitenoise/default.nix +++ b/pkgs/development/python-modules/whitenoise/default.nix @@ -5,30 +5,25 @@ django, fetchFromGitHub, pytestCheckHook, - pythonOlder, requests, setuptools, }: buildPythonPackage rec { pname = "whitenoise"; - version = "6.7.0"; + version = "6.9.0"; pyproject = true; - disabled = pythonOlder "3.8"; - - __darwinAllowLocalNetworking = true; - src = fetchFromGitHub { owner = "evansd"; - repo = pname; + repo = "whitenoise"; tag = version; - hash = "sha256-4SrTiTqBrfFuQ/8mqQL+YiehFWW+ZzKiAF0h2XyYuSs="; + hash = "sha256-UmM8Az22ql3uUpyY6jj7ky3LelmttFBqGMYlzlNRAHg="; }; - nativeBuildInputs = [ setuptools ]; + build-system = [ setuptools ]; - propagatedBuildInputs = [ brotli ]; + dependencies = [ brotli ]; nativeCheckInputs = [ django @@ -36,6 +31,8 @@ buildPythonPackage rec { requests ]; + __darwinAllowLocalNetworking = true; + disabledTestPaths = [ # Don't run Django tests "tests/test_django_whitenoise.py" From 3931447385ea03447ea9f327a42b96504e4be8c7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Fri, 11 Apr 2025 02:13:47 +0200 Subject: [PATCH 07/36] python313Packages.whoosh: fix build-system --- pkgs/development/python-modules/whoosh/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/whoosh/default.nix b/pkgs/development/python-modules/whoosh/default.nix index b56a590a3fa6..963e542f25cd 100644 --- a/pkgs/development/python-modules/whoosh/default.nix +++ b/pkgs/development/python-modules/whoosh/default.nix @@ -20,7 +20,7 @@ buildPythonPackage rec { hash = "sha256-fKVjPb+p4OD6QA0xUaigxL7FO9Ls7cCmdwWxdWXDGoM="; }; - nativeBuildInputs = [ setuptools ]; + build-system = [ setuptools ]; nativeCheckInputs = [ pytestCheckHook ]; From 4214cdd7ab47e6edb6860fb5e182cf401d296ddf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Fri, 11 Apr 2025 02:14:01 +0200 Subject: [PATCH 08/36] python313Packages.whoosh-reloaded: init at 2.7.5 --- .../whoosh-reloaded/default.nix | 40 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 42 insertions(+) create mode 100644 pkgs/development/python-modules/whoosh-reloaded/default.nix diff --git a/pkgs/development/python-modules/whoosh-reloaded/default.nix b/pkgs/development/python-modules/whoosh-reloaded/default.nix new file mode 100644 index 000000000000..9ab8054446a6 --- /dev/null +++ b/pkgs/development/python-modules/whoosh-reloaded/default.nix @@ -0,0 +1,40 @@ +{ + lib, + buildPythonPackage, + cached-property, + fetchFromGitHub, + loguru, + pytestCheckHook, + setuptools, +}: + +buildPythonPackage rec { + pname = "whoosh-reloaded"; + version = "2.7.5"; + pyproject = true; + + src = fetchFromGitHub { + owner = "Sygil-Dev"; + repo = "whoosh-reloaded"; + tag = "v${version}"; + hash = "sha256-frM8tw298Yz3u3rLK4CxWUXL6ymCSwYyYhXP/EdyjtQ="; + }; + + build-system = [ setuptools ]; + + dependencies = [ + cached-property + loguru + ]; + + nativeCheckInputs = [ pytestCheckHook ]; + + pythonImportsCheck = [ "whoosh" ]; + + meta = { + description = "Fast, featureful full-text indexing and searching library implemented in pure Python"; + homepage = "https://github.com/Sygil-Dev/whoosh-reloaded"; + license = lib.licenses.bsd2; + maintainers = with lib.maintainers; [ SuperSandro2000 ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 6c824cc22961..2b5750670737 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -18821,6 +18821,8 @@ self: super: with self; { whoosh = callPackage ../development/python-modules/whoosh { }; + whoosh-reloaded = callPackage ../development/python-modules/whoosh-reloaded { }; + widgetsnbextension = callPackage ../development/python-modules/widgetsnbextension { }; widlparser = callPackage ../development/python-modules/widlparser { }; From a5220c974843bbb1993d33d5794e4a9d8aa56311 Mon Sep 17 00:00:00 2001 From: Gaetan Lepage Date: Fri, 11 Apr 2025 14:45:06 +0200 Subject: [PATCH 09/36] singularity: 4.3.0 -> 4.3.1 Diff: https://github.com/sylabs/singularity/compare/v4.3.0...v4.3.1 Changelog: https://github.com/sylabs/singularity/releases/tag/v4.3.1 --- pkgs/applications/virtualization/singularity/packages.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/virtualization/singularity/packages.nix b/pkgs/applications/virtualization/singularity/packages.nix index 0866cce66a4b..13ec976d668c 100644 --- a/pkgs/applications/virtualization/singularity/packages.nix +++ b/pkgs/applications/virtualization/singularity/packages.nix @@ -46,19 +46,19 @@ let callPackage (import ./generic.nix rec { pname = "singularity-ce"; - version = "4.3.0"; + version = "4.3.1"; projectName = "singularity"; src = fetchFromGitHub { owner = "sylabs"; repo = "singularity"; tag = "v${version}"; - hash = "sha256-zmrwP5ZAsRz+1zR/VozjBiT+YGJrCnvD3Y7dUsqbQwk="; + hash = "sha256-hkUM9K0AweRpLa+LZ7XOI/oDk72EKWzVN5h4Kz2w2B0="; }; # Override vendorHash with overrideAttrs. # See https://nixos.org/manual/nixpkgs/unstable/#buildGoModule-vendorHash - vendorHash = "sha256-Ayp+V8M3PP53ZLEagsxBB/r8Ci0tNIiH9NtbHpX6NmM="; + vendorHash = "sha256-hAVynmVXPmQPo+Kd2ajBSU+UqBpvJ5TokOJXZwySr+w="; extraConfigureFlags = [ # Do not build squashfuse from the Git submodule sources, use Nixpkgs provided version From fd089b24cf6a459e3f8bd6268ce43d1886c9ec3f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Fri, 11 Apr 2025 15:09:17 +0200 Subject: [PATCH 10/36] tandoor-recipes: limit parallelism On as 96 core machine the tests failed left, right and center with all kinds of errors. This seems to be more stable. --- pkgs/by-name/ta/tandoor-recipes/package.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/by-name/ta/tandoor-recipes/package.nix b/pkgs/by-name/ta/tandoor-recipes/package.nix index 8e7e30985e83..ebc3e3fec08d 100644 --- a/pkgs/by-name/ta/tandoor-recipes/package.nix +++ b/pkgs/by-name/ta/tandoor-recipes/package.nix @@ -22,6 +22,11 @@ python.pkgs.buildPythonPackage { ]; postPatch = '' + # high parallelism let the tests easily fail with concurrent errors + if (( $NIX_BUILD_CORES > 4)); then + NIX_BUILD_CORES=4 + fi + substituteInPlace pytest.ini --subst-var NIX_BUILD_CORES ''; From accbad8695a31d6f51294d23be44c8dde6f1b6af Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Fri, 11 Apr 2025 15:09:40 +0200 Subject: [PATCH 11/36] tandoor-recipes: use stub pytest-cov --- pkgs/by-name/ta/tandoor-recipes/package.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/by-name/ta/tandoor-recipes/package.nix b/pkgs/by-name/ta/tandoor-recipes/package.nix index ebc3e3fec08d..19da7136ab1e 100644 --- a/pkgs/by-name/ta/tandoor-recipes/package.nix +++ b/pkgs/by-name/ta/tandoor-recipes/package.nix @@ -126,7 +126,7 @@ python.pkgs.buildPythonPackage { mock pytestCheckHook pytest-asyncio - pytest-cov + pytest-cov-stub pytest-django pytest-factoryboy pytest-html From bcb64d6806e03ca1d26611d17d20c0bec14b4851 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Fri, 11 Apr 2025 01:18:35 +0200 Subject: [PATCH 12/36] paperless-ngx: 2.14.7 -> 2.15.1 Changelog: https://github.com/paperless-ngx/paperless-ngx/releases/tag/v2.15.0 Changelog: https://github.com/paperless-ngx/paperless-ngx/releases/tag/v2.15.1 --- .../manual/release-notes/rl-2505.section.md | 2 + nixos/modules/services/misc/paperless.nix | 12 +- pkgs/by-name/pa/paperless-ngx/package.nix | 159 +++++++++--------- 3 files changed, 91 insertions(+), 82 deletions(-) diff --git a/nixos/doc/manual/release-notes/rl-2505.section.md b/nixos/doc/manual/release-notes/rl-2505.section.md index 4693f11f16b2..1eae82f140c5 100644 --- a/nixos/doc/manual/release-notes/rl-2505.section.md +++ b/nixos/doc/manual/release-notes/rl-2505.section.md @@ -259,6 +259,8 @@ - `linuxPackages.nvidiaPackages.stable` now defaults to the `production` variant instead of `latest`. +- `paperless-ngx` has been updated to minor version 2.15 which switched the web server from Gunicorn to Granian. If you set Gunicorn specific envs (usually contain GUNICORN) they must be updated. Also `services.paperless.address` no longer accepts a domain name and Granian also does not support listening on unix domain sockets. + - `timescaledb` requires manual upgrade steps. After you run ALTER EXTENSION, you must run [this SQL script](https://github.com/timescale/timescaledb-extras/blob/master/utils/2.15.X-fix_hypertable_foreign_keys.sql). For more details, see the following pull requests [#6797](https://github.com/timescale/timescaledb/pull/6797). PostgreSQL 13 is no longer supported in TimescaleDB v2.16. diff --git a/nixos/modules/services/misc/paperless.nix b/nixos/modules/services/misc/paperless.nix index c1f35526bd9b..b0b64c8e8d24 100644 --- a/nixos/modules/services/misc/paperless.nix +++ b/nixos/modules/services/misc/paperless.nix @@ -21,7 +21,8 @@ let PAPERLESS_MEDIA_ROOT = cfg.mediaDir; PAPERLESS_CONSUMPTION_DIR = cfg.consumptionDir; PAPERLESS_THUMBNAIL_FONT_NAME = defaultFont; - GUNICORN_CMD_ARGS = "--bind=${cfg.address}:${toString cfg.port}"; + GRANIAN_HOST = cfg.address; + GRANIAN_PORT = toString cfg.port; } // lib.optionalAttrs (config.time.timeZone != null) { PAPERLESS_TIME_ZONE = config.time.timeZone; @@ -196,7 +197,7 @@ in address = lib.mkOption { type = lib.types.str; - default = "localhost"; + default = "127.0.0.1"; description = "Web interface address."; }; @@ -539,16 +540,15 @@ in echo "PAPERLESS_SECRET_KEY is empty, refusing to start." exit 1 fi - exec ${cfg.package.python.pkgs.gunicorn}/bin/gunicorn \ - -c ${cfg.package}/lib/paperless-ngx/gunicorn.conf.py paperless.asgi:application + exec ${lib.getExe cfg.package.python.pkgs.granian} --interface asginl --ws "paperless.asgi:application" ''; serviceConfig = defaultServiceConfig // { User = cfg.user; Restart = "on-failure"; LimitNOFILE = 65536; - # gunicorn needs setuid, liblapack needs mbind - SystemCallFilter = defaultServiceConfig.SystemCallFilter ++ [ "@setuid mbind" ]; + # liblapack needs mbind + SystemCallFilter = defaultServiceConfig.SystemCallFilter ++ [ "mbind" ]; # Needs to serve web page PrivateNetwork = false; }; diff --git a/pkgs/by-name/pa/paperless-ngx/package.nix b/pkgs/by-name/pa/paperless-ngx/package.nix index 969e9c651d71..7cd092dadee2 100644 --- a/pkgs/by-name/pa/paperless-ngx/package.nix +++ b/pkgs/by-name/pa/paperless-ngx/package.nix @@ -2,8 +2,7 @@ lib, stdenv, fetchFromGitHub, - fetchpatch, - buildNpmPackage, + node-gyp, nodejs_20, nixosTests, gettext, @@ -18,6 +17,7 @@ qpdf, tesseract5, unpaper, + pnpm, poppler-utils, liberation_ttf, xcbuild, @@ -27,23 +27,15 @@ xorg, }: let - version = "2.14.7"; + version = "2.15.1"; src = fetchFromGitHub { owner = "paperless-ngx"; repo = "paperless-ngx"; tag = "v${version}"; - hash = "sha256-p3eUEb/ZPK11NbqE4LU+3TE1Xny9sjfYvVVmABkoAEQ="; + hash = "sha256-vICkRfVxzQlqhSBCieVNSGeXb6FCOx0qOnInKMy6Lhg="; }; - patches = [ - # Fix frontend tests in March (yes, it's date dependent) - (fetchpatch { - url = "https://github.com/paperless-ngx/paperless-ngx/commit/bc90ccc5551f184a683128def772652ad74c65e3.patch"; - hash = "sha256-KArPyKZLi5LfaTDTY3DxA3cdQYYadpQo052Xk9eH14c="; - }) - ]; - # subpath installation is broken with uvicorn >= 0.26 # https://github.com/NixOS/nixpkgs/issues/298719 # https://github.com/paperless-ngx/paperless-ngx/issues/5494 @@ -60,16 +52,6 @@ let # tesseract5 may be overwritten in the paperless module and we need to propagate that to make the closure reduction effective ocrmypdf = prev.ocrmypdf.override { tesseract = tesseract5; }; - - uvicorn = prev.uvicorn.overridePythonAttrs (_: { - version = "0.25.0"; - src = fetchFromGitHub { - owner = "encode"; - repo = "uvicorn"; - rev = "0.25.0"; - hash = "sha256-ng98DTw49zyFjrPnEwfnPfONyjKKZYuLl0qduxSppYk="; - }; - }); }; }; @@ -85,73 +67,91 @@ let poppler-utils ]; - frontend = buildNpmPackage { - pname = "paperless-ngx-frontend"; - inherit version src patches; + frontend = + let + frontendSrc = src + "/src-ui"; + in + stdenv.mkDerivation rec { + pname = "paperless-ngx-frontend"; + inherit version; - nodejs = nodejs_20; # does not build with 22 + src = frontendSrc; - postPatch = '' - cd src-ui - ''; + pnpmDeps = pnpm.fetchDeps { + inherit pname version src; + hash = "sha256-yoTXlxXLcWD2DMxqjb02ZORJ+E0xE1DbZm1VL7vXM4g="; + }; - npmDepsHash = "sha256-hK7Soop9gBZP4m2UzbEIAsLkPKpbQkLmVruY2So4CSs="; + nativeBuildInputs = + [ + node-gyp + nodejs_20 + pkg-config + pnpm.configHook + python3 + ] + ++ lib.optionals stdenv.hostPlatform.isDarwin [ + xcbuild + ]; - nativeBuildInputs = - [ - pkg-config - python3 - ] - ++ lib.optionals stdenv.hostPlatform.isDarwin [ - xcbuild - ]; + buildInputs = + [ + pango + ] + ++ lib.optionals stdenv.hostPlatform.isDarwin [ + giflib + darwin.apple_sdk.frameworks.CoreText + ]; - buildInputs = - [ - pango - ] - ++ lib.optionals stdenv.hostPlatform.isDarwin [ - giflib - darwin.apple_sdk.frameworks.CoreText - ]; + CYPRESS_INSTALL_BINARY = "0"; + NG_CLI_ANALYTICS = "false"; - CYPRESS_INSTALL_BINARY = "0"; - NG_CLI_ANALYTICS = "false"; + buildPhase = '' + runHook preBuild - npmBuildFlags = [ - "--" - "--configuration" - "production" - ]; + pushd node_modules/canvas + node-gyp rebuild + popd - doCheck = true; - checkPhase = '' - runHook preCheck - npm run test - runHook postCheck - ''; + pnpm run build --configuration production - installPhase = '' - runHook preInstall - mkdir -p $out/lib/paperless-ui - mv ../src/documents/static/frontend $out/lib/paperless-ui/ - runHook postInstall - ''; - }; + runHook postBuild + ''; + + doCheck = true; + checkPhase = '' + runHook preCheck + + pnpm run test + + runHook postCheck + ''; + + installPhase = '' + runHook preInstall + + mkdir -p $out/lib/paperless-ui + mv ../src/documents/static/frontend $out/lib/paperless-ui/ + + runHook postInstall + ''; + }; in python.pkgs.buildPythonApplication rec { pname = "paperless-ngx"; - pyproject = false; + pyproject = true; - inherit version src patches; + inherit version src; postPatch = '' # pytest-xdist with to many threads makes the tests flaky if (( $NIX_BUILD_CORES > 4)); then NIX_BUILD_CORES=4 fi - substituteInPlace src/setup.cfg \ - --replace-fail "--numprocesses auto --maxprocesses=16" "--numprocesses $NIX_BUILD_CORES" + substituteInPlace pyproject.toml \ + --replace-fail '"--numprocesses=auto",' "" \ + --replace-fail '--maxprocesses=16' "--numprocesses=$NIX_BUILD_CORES" \ + --replace-fail "djangorestframework-guardian~=0.3.0" "djangorestframework-guardian2" ''; nativeBuildInputs = [ @@ -159,6 +159,13 @@ python.pkgs.buildPythonApplication rec { xorg.lndir ]; + pythonRelaxDeps = [ + "django-allauth" + "drf-spectacular-sidecar" + # TODO: https://github.com/NixOS/nixpkgs/pull/373099 + "zxing-cpp" + ]; + dependencies = with python.pkgs; [ @@ -180,11 +187,13 @@ python.pkgs.buildPythonApplication rec { django-soft-delete djangorestframework djangorestframework-guardian2 + drf-spectacular + drf-spectacular-sidecar drf-writable-nested filelock flower gotenberg-client - gunicorn + granian httpx-oauth imap-tools inotifyrecursive @@ -208,16 +217,14 @@ python.pkgs.buildPythonApplication rec { setproctitle tika-client tqdm - uvicorn watchdog whitenoise - whoosh + whoosh-reloaded zxing-cpp ] ++ django-allauth.optional-dependencies.mfa ++ django-allauth.optional-dependencies.socialaccount - ++ redis.optional-dependencies.hiredis - ++ uvicorn.optional-dependencies.standard; + ++ redis.optional-dependencies.hiredis; postBuild = '' # Compile manually because `pythonRecompileBytecodeHook` only works @@ -239,7 +246,7 @@ python.pkgs.buildPythonApplication rec { runHook preInstall mkdir -p $out/lib/paperless-ngx/static/frontend - cp -r {src,static,LICENSE,gunicorn.conf.py} $out/lib/paperless-ngx + cp -r {src,static,LICENSE} $out/lib/paperless-ngx lndir -silent ${frontend}/lib/paperless-ui/frontend $out/lib/paperless-ngx/static/frontend chmod +x $out/lib/paperless-ngx/src/manage.py makeWrapper $out/lib/paperless-ngx/src/manage.py $out/bin/paperless-ngx \ From ef250bf7d6eec023038ce0d85c197c29cf2fb0ef Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Fri, 11 Apr 2025 19:05:32 +0000 Subject: [PATCH 13/36] rekor-cli: 1.3.9 -> 1.3.10 --- pkgs/tools/security/rekor/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/security/rekor/default.nix b/pkgs/tools/security/rekor/default.nix index 187306d44859..7f1df1a9aa6c 100644 --- a/pkgs/tools/security/rekor/default.nix +++ b/pkgs/tools/security/rekor/default.nix @@ -14,13 +14,13 @@ let }: buildGoModule rec { inherit pname; - version = "1.3.9"; + version = "1.3.10"; src = fetchFromGitHub { owner = "sigstore"; repo = "rekor"; rev = "v${version}"; - hash = "sha256-JJzLOu8UJbkLT+JywddKtgmDNxAiSV6n9eaQu1ihqSg="; + hash = "sha256-fxBLh7QrBBkUsVrONeFmrXtmRGNgkH7WnncMQ+E56Ok="; # populate values that require us to use git. By doing this in postFetch we # can delete .git afterwards and maintain better reproducibility of the src. leaveDotGit = true; @@ -33,7 +33,7 @@ let ''; }; - vendorHash = "sha256-/tB2Fvs+EJGaReluhYG/PgGSxmGGAv+MOZ2J4ln0mRw="; + vendorHash = "sha256-2ddpzKzVlmOgxsBtLB28fKZ2o4QvtrNZC+1wOny3Amk="; nativeBuildInputs = [ installShellFiles ]; From 955b436a0326ea9478015aec5f92876debae32ef Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Fri, 11 Apr 2025 19:47:14 +0000 Subject: [PATCH 14/36] fulcio: 1.6.6 -> 1.7.0 --- pkgs/by-name/fu/fulcio/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/fu/fulcio/package.nix b/pkgs/by-name/fu/fulcio/package.nix index 2b375496b83e..f8a732e9f38e 100644 --- a/pkgs/by-name/fu/fulcio/package.nix +++ b/pkgs/by-name/fu/fulcio/package.nix @@ -15,13 +15,13 @@ buildGoModule rec { pname = "fulcio"; - version = "1.6.6"; + version = "1.7.0"; src = fetchFromGitHub { owner = "sigstore"; repo = pname; rev = "v${version}"; - hash = "sha256-CfkHGHxeDUxHWX98FgmA4RNCVlgi9XA9eYkb+G5cZTA="; + hash = "sha256-ymPczybHADTz4uiY8aLLre+Q8bBq/5L5MXJ26eBhi+U="; # populate values that require us to use git. By doing this in postFetch we # can delete .git afterwards and maintain better reproducibility of the src. leaveDotGit = true; @@ -33,7 +33,7 @@ buildGoModule rec { find "$out" -name .git -print0 | xargs -0 rm -rf ''; }; - vendorHash = "sha256-qQsaX/xaqD1qb9wH6riohm+NU49cN3EkO012oz9n4tw="; + vendorHash = "sha256-lfJCPE8FRAX+juXQ7CiwItbnd0kAheaEdWG0Bwoyz/Y="; nativeBuildInputs = [ installShellFiles ]; From f747683dffca4c51d00efe108d52dddbdc8ad5f3 Mon Sep 17 00:00:00 2001 From: Peter3579 <170885528+Peter3579@users.noreply.github.com> Date: Sat, 12 Apr 2025 22:49:39 +0200 Subject: [PATCH 15/36] wxhexeditor: fix build dependency The program coredumps with message: `GLib-GIO-ERROR **: No GSettings schemas are installed on the system`. Since `wxGTK32` is nativeBuildInput, `wrapGAppsHook3` is also needed. --- pkgs/by-name/wx/wxhexeditor/package.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/by-name/wx/wxhexeditor/package.nix b/pkgs/by-name/wx/wxhexeditor/package.nix index e581b8c50ba8..22a01f1d7bef 100644 --- a/pkgs/by-name/wx/wxhexeditor/package.nix +++ b/pkgs/by-name/wx/wxhexeditor/package.nix @@ -9,6 +9,7 @@ libtool, python3, wxGTK32, + wrapGAppsHook3, llvmPackages, }: @@ -52,6 +53,7 @@ stdenv.mkDerivation rec { libtool python3 wxGTK32 + wrapGAppsHook3 ]; buildInputs = lib.optionals stdenv.cc.isClang [ From 844544c8dd12fc953236aecbf1a7e0fe33aa87d0 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 13 Apr 2025 00:53:34 +0000 Subject: [PATCH 16/36] sarasa-gothic: 1.0.29 -> 1.0.30 --- pkgs/by-name/sa/sarasa-gothic/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/sa/sarasa-gothic/package.nix b/pkgs/by-name/sa/sarasa-gothic/package.nix index 1fe6fd9bd791..12a14748d315 100644 --- a/pkgs/by-name/sa/sarasa-gothic/package.nix +++ b/pkgs/by-name/sa/sarasa-gothic/package.nix @@ -7,13 +7,13 @@ stdenvNoCC.mkDerivation (finalAttrs: { pname = "sarasa-gothic"; - version = "1.0.29"; + version = "1.0.30"; src = fetchurl { # Use the 'ttc' files here for a smaller closure size. # (Using 'ttf' files gives a closure size about 15x larger, as of November 2021.) url = "https://github.com/be5invis/Sarasa-Gothic/releases/download/v${finalAttrs.version}/Sarasa-TTC-${finalAttrs.version}.zip"; - hash = "sha256-KQ+ooPJZx/HnhR/EvemaEb5gqffRP2+BRhrHfI9FK/Q="; + hash = "sha256-or/XzPJhWe7F2sMsWxaIynXALnMhzKQeezTt16tzqoY="; }; sourceRoot = "."; From 2d40122e73e724d3880076c28ae6e7d43de955aa Mon Sep 17 00:00:00 2001 From: Seth Flynn Date: Mon, 31 Mar 2025 20:03:04 -0400 Subject: [PATCH 17/36] scotty: init at 0.4.1 --- pkgs/by-name/sc/scotty/package.nix | 54 ++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 pkgs/by-name/sc/scotty/package.nix diff --git a/pkgs/by-name/sc/scotty/package.nix b/pkgs/by-name/sc/scotty/package.nix new file mode 100644 index 000000000000..4b9fa3a0ac09 --- /dev/null +++ b/pkgs/by-name/sc/scotty/package.nix @@ -0,0 +1,54 @@ +{ + lib, + stdenv, + buildGoModule, + fetchFromSourcehut, + nix-update-script, + testers, +}: + +buildGoModule (finalAttrs: { + pname = "scotty"; + version = "0.4.1"; + + src = fetchFromSourcehut { + owner = "~phw"; + repo = "scotty"; + rev = "v${finalAttrs.version}"; + hash = "sha256-R9MgX5Am//9ULNKWqfH/JthMhqg4FFitOds7wU5iDSU="; + }; + + # Otherwise checks fail with `panic: open /etc/protocols: operation not permitted` when sandboxing is enabled on Darwin + # https://github.com/NixOS/nixpkgs/pull/381645#issuecomment-2656211797 + modPostBuild = '' + substituteInPlace vendor/modernc.org/libc/honnef.co/go/netdb/netdb.go \ + --replace-fail '!os.IsNotExist(err)' '!os.IsNotExist(err) && !os.IsPermission(err)' + ''; + + vendorHash = "sha256-DxtouPfysXsr436YwK9V88rff1hf9Ga7EYytZxxLd/g="; + + env = { + # *Some* locale is required to be set + # https://git.sr.ht/~phw/scotty/tree/04eddfda33cc6f0b87dc0fcea43d5c4f50923ddc/item/internal/i18n/i18n.go#L30 + LC_ALL = "C.UTF-8"; + }; + + passthru = { + tests.version = testers.testVersion { + # See above + command = "LC_ALL='C.UTF-8' scotty --version"; + package = finalAttrs.finalPackage; + }; + + updateScript = nix-update-script { }; + }; + + meta = { + description = "Transfers your listens between various music listen tracking and streaming services"; + homepage = "https://git.sr.ht/~phw/scotty"; + changelog = "https://git.sr.ht/~phw/scotty/refs/v${finalAttrs.version}"; + license = lib.licenses.gpl3Only; + maintainers = with lib.maintainers; [ getchoo ]; + mainProgram = "scotty"; + }; +}) From 43321f6d0faaf8701765940d131ed90f267fa533 Mon Sep 17 00:00:00 2001 From: Sizhe Zhao Date: Sun, 13 Apr 2025 09:57:26 +0800 Subject: [PATCH 18/36] limine: 9.2.2 -> 9.2.3 --- pkgs/by-name/li/limine/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/li/limine/package.nix b/pkgs/by-name/li/limine/package.nix index 6490d3ebb9d1..8816782d76d2 100644 --- a/pkgs/by-name/li/limine/package.nix +++ b/pkgs/by-name/li/limine/package.nix @@ -42,14 +42,14 @@ in # as bootloader for various platforms and corresponding binary and helper files. stdenv.mkDerivation (finalAttrs: { pname = "limine"; - version = "9.2.2"; + version = "9.2.3"; # We don't use the Git source but the release tarball, as the source has a # `./bootstrap` script performing network access to download resources. # Packaging that in Nix is very cumbersome. src = fetchurl { url = "https://github.com/limine-bootloader/limine/releases/download/v${finalAttrs.version}/limine-${finalAttrs.version}.tar.gz"; - hash = "sha256-uD3s117/uhAeRCex78gXSM9zIByFvjbjeVygkPXwgIM="; + hash = "sha256-KcA1zXynt5nqnQq32Y3/5TXUYbOx6LubJJ1+KT7Fo2Q="; }; enableParallelBuilding = true; From fcf0878fecf3dec07c267341edde9cf8c6a2c071 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 13 Apr 2025 15:36:09 +0000 Subject: [PATCH 19/36] tageditor: 3.9.4 -> 3.9.5 --- pkgs/applications/audio/tageditor/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/audio/tageditor/default.nix b/pkgs/applications/audio/tageditor/default.nix index 4c21e137aed1..a336c2bc4ecd 100644 --- a/pkgs/applications/audio/tageditor/default.nix +++ b/pkgs/applications/audio/tageditor/default.nix @@ -18,13 +18,13 @@ stdenv.mkDerivation rec { pname = "tageditor"; - version = "3.9.4"; + version = "3.9.5"; src = fetchFromGitHub { owner = "martchus"; repo = pname; rev = "v${version}"; - hash = "sha256-VRQV4bTPG4VFhRHFJamUnYd04ZCaNpaxU27Jcl6Chc4="; + hash = "sha256-Sia6Y/V81WQj4oWjZAAR4o3TngfWq7sWxxiKEuFjQ2M="; }; nativeBuildInputs = [ From b684962534baa626723185eda88a6681f395cf2a Mon Sep 17 00:00:00 2001 From: DontEatOreo <57304299+DontEatOreo@users.noreply.github.com> Date: Sun, 13 Apr 2025 21:32:17 +0300 Subject: [PATCH 20/36] vencord: 1.11.8 -> 1.11.9 Diff: https://github.com/Vendicated/Vencord/compare/599c33769ca97ecb18a78601fee98bb1287f1e5a...77bed92c575ced3228bf3e7ba8a1a6cd24362acf --- pkgs/by-name/ve/vencord/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/ve/vencord/package.nix b/pkgs/by-name/ve/vencord/package.nix index 63c97ea03c01..099f7996246a 100644 --- a/pkgs/by-name/ve/vencord/package.nix +++ b/pkgs/by-name/ve/vencord/package.nix @@ -15,13 +15,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "vencord"; - version = "1.11.8"; + version = "1.11.9"; src = fetchFromGitHub { owner = "Vendicated"; repo = "Vencord"; rev = "v${finalAttrs.version}"; - hash = "sha256-Ej04ONaeNt55mbQ5RTKM4MySYsw3UJky9ZK9h1gMEzo="; + hash = "sha256-/CJt4CZ9R1xB72Zwc76te51Fb3q4KHuzDxP3jWGzW8E="; }; pnpmDeps = pnpm_10.fetchDeps { From 19887532afdb8c5dcf8fd066542e9fcc1ecdce89 Mon Sep 17 00:00:00 2001 From: Nikolay Korotkiy Date: Mon, 14 Apr 2025 00:42:25 +0400 Subject: [PATCH 21/36] tageditor: enable on darwin --- pkgs/applications/audio/tageditor/default.nix | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/pkgs/applications/audio/tageditor/default.nix b/pkgs/applications/audio/tageditor/default.nix index a336c2bc4ecd..7ac0a227d261 100644 --- a/pkgs/applications/audio/tageditor/default.nix +++ b/pkgs/applications/audio/tageditor/default.nix @@ -45,12 +45,18 @@ stdenv.mkDerivation rec { tagparser ]; + postInstall = lib.optionalString stdenv.hostPlatform.isDarwin '' + mkdir -p $out/Applications + mv $out/bin/*.app $out/Applications + ln -s $out/Applications/tageditor.app/Contents/MacOS/tageditor $out/bin/tageditor + ''; + meta = with lib; { homepage = "https://github.com/Martchus/tageditor"; description = "Tag editor with Qt GUI and command-line interface supporting MP4/M4A/AAC (iTunes), ID3, Vorbis, Opus, FLAC and Matroska"; license = licenses.gpl2; maintainers = [ maintainers.matthiasbeyer ]; - platforms = platforms.linux; + platforms = platforms.unix; mainProgram = "tageditor"; }; } From 3a524b8e0ecf2d3100f065b9d424998cc8ab4f47 Mon Sep 17 00:00:00 2001 From: Nikolay Korotkiy Date: Mon, 14 Apr 2025 00:59:24 +0400 Subject: [PATCH 22/36] tageditor: migrate to by-name --- .../ta/tageditor/package.nix} | 32 ++++++++----------- pkgs/top-level/all-packages.nix | 2 -- 2 files changed, 14 insertions(+), 20 deletions(-) rename pkgs/{applications/audio/tageditor/default.nix => by-name/ta/tageditor/package.nix} (72%) diff --git a/pkgs/applications/audio/tageditor/default.nix b/pkgs/by-name/ta/tageditor/package.nix similarity index 72% rename from pkgs/applications/audio/tageditor/default.nix rename to pkgs/by-name/ta/tageditor/package.nix index 7ac0a227d261..f0babd818ed2 100644 --- a/pkgs/applications/audio/tageditor/default.nix +++ b/pkgs/by-name/ta/tageditor/package.nix @@ -5,15 +5,11 @@ pkg-config, cmake, cpp-utilities, - qtutilities, mp4v2, libid3tag, - qtbase, - qttools, - qtwebengine, - qtx11extras, + libsForQt5, + qt5, tagparser, - wrapQtAppsHook, }: stdenv.mkDerivation rec { @@ -22,26 +18,26 @@ stdenv.mkDerivation rec { src = fetchFromGitHub { owner = "martchus"; - repo = pname; - rev = "v${version}"; + repo = "tageditor"; + tag = "v${version}"; hash = "sha256-Sia6Y/V81WQj4oWjZAAR4o3TngfWq7sWxxiKEuFjQ2M="; }; nativeBuildInputs = [ pkg-config cmake - wrapQtAppsHook + qt5.wrapQtAppsHook ]; buildInputs = [ mp4v2 libid3tag - qtbase - qttools - qtx11extras - qtwebengine + qt5.qtbase + qt5.qttools + qt5.qtx11extras + qt5.qtwebengine cpp-utilities - qtutilities + libsForQt5.qtutilities tagparser ]; @@ -51,12 +47,12 @@ stdenv.mkDerivation rec { ln -s $out/Applications/tageditor.app/Contents/MacOS/tageditor $out/bin/tageditor ''; - meta = with lib; { + meta = { homepage = "https://github.com/Martchus/tageditor"; description = "Tag editor with Qt GUI and command-line interface supporting MP4/M4A/AAC (iTunes), ID3, Vorbis, Opus, FLAC and Matroska"; - license = licenses.gpl2; - maintainers = [ maintainers.matthiasbeyer ]; - platforms = platforms.unix; + license = lib.licenses.gpl2; + maintainers = [ lib.maintainers.matthiasbeyer ]; + platforms = lib.platforms.unix; mainProgram = "tageditor"; }; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index b4d7c6373129..f34e4e5937d6 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -11351,8 +11351,6 @@ with pkgs; inherit (darwin.apple_sdk.frameworks) Carbon; }; - tageditor = libsForQt5.callPackage ../applications/audio/tageditor { }; - tclap = tclap_1_2; tclap_1_2 = callPackage ../development/libraries/tclap/1.2.nix { }; From 67a3b4396a70d894b39da767b26f9a1707a8af4a Mon Sep 17 00:00:00 2001 From: TomaSajt <62384384+TomaSajt@users.noreply.github.com> Date: Wed, 2 Apr 2025 21:28:44 +0200 Subject: [PATCH 23/36] libloot: 0.24.5 -> 0.25.5 --- pkgs/by-name/li/libloot/package.nix | 30 +++++++++++++---------------- 1 file changed, 13 insertions(+), 17 deletions(-) diff --git a/pkgs/by-name/li/libloot/package.nix b/pkgs/by-name/li/libloot/package.nix index 00765b5bbaf0..1f1277715e67 100644 --- a/pkgs/by-name/li/libloot/package.nix +++ b/pkgs/by-name/li/libloot/package.nix @@ -24,7 +24,7 @@ stdenv.mkDerivation (finalAttrs: { pname = "libloot"; - version = "0.24.5"; + version = "0.25.5"; # Note: don't forget to also update the package versions in the passthru section outputs = [ @@ -36,7 +36,7 @@ stdenv.mkDerivation (finalAttrs: { owner = "loot"; repo = "libloot"; rev = "refs/tags/${finalAttrs.version}"; - hash = "sha256-SAnbp34DlGsq4nfaRHfCTGRSGQtv/rRgngvwma2tc7Q="; + hash = "sha256-l8AdqJ0lZH4rBcf4WV3ju+sIHYam6USXCXTqyRPzgeo="; }; patches = [ @@ -102,10 +102,6 @@ stdenv.mkDerivation (finalAttrs: { # Due to storage size concerns of `glibcLocales`, we skip this "CompareFilenames.shouldBeCaseInsensitiveAndLocaleInvariant" "NormalizeFilename.shouldCaseFoldStringsAndBeLocaleInvariant" - - # Some filesystem related test fail because they assume `std::filesystem::equivalent` works with non-existent paths - "Filesystem.equivalentShouldNotRequireThatBothPathsExist" - "Filesystem.equivalentShouldBeCaseSensitive" ]; in "-${builtins.concatStringsSep ":" disabledTests}"; @@ -116,7 +112,7 @@ stdenv.mkDerivation (finalAttrs: { testing-plugins = fetchFromGitHub { owner = "Ortham"; repo = "testing-plugins"; - rev = "refs/tags/1.6.2"; + tag = "1.6.2"; hash = "sha256-3Aa98EwqpuGA3YlsRF8luWzXVEFO/rs6JXisXdLyIK4="; }; @@ -141,17 +137,17 @@ stdenv.mkDerivation (finalAttrs: { libloadorder = finalAttrs.passthru.buildRustFFIPackage rec { pname = "libloadorder"; - version = "18.1.3"; + version = "18.3.0"; src = fetchFromGitHub { owner = "Ortham"; repo = "libloadorder"; - rev = "refs/tags/${version}"; - hash = "sha256-qJ7gC4BkrXJiVcyA1BqlJSRzgc/7VmNBHtDq0ouJoTU="; + tag = version; + hash = "sha256-/8WOEt9dxKFTTZbhf5nt81jo/yHuALPxh/IwAOehi9w="; }; useFetchCargoVendor = true; - cargoHash = "sha256-m3lyABr7tU0AeC6EZomBw1X722ezQg/cjSZh/ZhkiBw="; + cargoHash = "sha256-re/cKqf/CAD7feNIEuou4ZP8BNkArd5CvREx1610jig="; lang = "c++"; header = "libloadorder.hpp"; @@ -164,7 +160,7 @@ stdenv.mkDerivation (finalAttrs: { src = fetchFromGitHub { owner = "Ortham"; repo = "esplugin"; - rev = "refs/tags/${version}"; + tag = version; hash = "sha256-ygjSyixg+9HFFNV/G+w+TxGFTrjlWxlDt8phpCE8xyQ="; }; @@ -177,17 +173,17 @@ stdenv.mkDerivation (finalAttrs: { loot-condition-interpreter = finalAttrs.passthru.buildRustFFIPackage rec { pname = "loot-condition-interpreter"; - version = "4.0.2"; + version = "5.3.0"; src = fetchFromGitHub { owner = "loot"; repo = "loot-condition-interpreter"; - rev = "refs/tags/${version}"; - hash = "sha256-yXbe7ByYHvFpokRpV2pz2SX0986dpk5IpehwDUhoZKg="; + tag = version; + hash = "sha256-MvadQ4cWpzNgF/lUW5Jb758DvfRPGZ7s1W4MbO7nbIw="; }; useFetchCargoVendor = true; - cargoHash = "sha256-d3JBpYI4XMkDnufvdyZkgtp7H4amMzM0dBEO6t9efGE="; + cargoHash = "sha256-m/vRnAJyMQOosxnjSUgHIY1RCkdB5+HFVqqzYVEpgOI="; lang = "c"; header = "loot_condition_interpreter.h"; @@ -198,7 +194,7 @@ stdenv.mkDerivation (finalAttrs: { src = fetchFromGitHub { owner = "loot"; repo = "yaml-cpp"; - rev = "refs/tags/${version}"; + tag = version; hash = "sha256-whYorebrLiDeO75LC2SMUX/8OD528BR0+DEgnJxxpoQ="; }; }; From 3e0146a04aafe2329ea3f39142f61ed2b0207c78 Mon Sep 17 00:00:00 2001 From: TomaSajt <62384384+TomaSajt@users.noreply.github.com> Date: Sun, 13 Apr 2025 23:40:35 +0200 Subject: [PATCH 24/36] limo: 1.1 -> 1.2 --- pkgs/by-name/li/limo/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/li/limo/package.nix b/pkgs/by-name/li/limo/package.nix index b3fdb4e4ab1e..cb2724438713 100644 --- a/pkgs/by-name/li/limo/package.nix +++ b/pkgs/by-name/li/limo/package.nix @@ -21,13 +21,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "limo"; - version = "1.1"; + version = "1.2"; src = fetchFromGitHub { owner = "limo-app"; repo = "limo"; tag = "v${finalAttrs.version}"; - hash = "sha256-fzqIZ/BqOpPjo18qi4VidGg1ruhQLqfwoA/hidGPEao="; + hash = "sha256-hgtqpP1H9+TAuP5b/Wvx4mqeYRKyaluMlyzHEmIgSqo="; }; patches = lib.optionals (!withUnrar) [ From 3bad74b27f4d689054795b7425102a14b8c08dd3 Mon Sep 17 00:00:00 2001 From: Gaetan Lepage Date: Tue, 8 Apr 2025 15:30:12 +0200 Subject: [PATCH 25/36] restate: 1.1.6 -> 1.3.0 Diff: https://github.com/restatedev/restate/compare/refs/tags/v1.1.6...refs/tags/v1.3.0 Changelog: https://github.com/restatedev/restate/releases/tag/v1.3.0 --- pkgs/by-name/re/restate/package.nix | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/pkgs/by-name/re/restate/package.nix b/pkgs/by-name/re/restate/package.nix index 1b170c93ee76..aa13875f26f8 100644 --- a/pkgs/by-name/re/restate/package.nix +++ b/pkgs/by-name/re/restate/package.nix @@ -3,13 +3,13 @@ stdenv, rustPlatform, fetchFromGitHub, + protobuf, # nativeBuildInputs cmake, openssl, perl, pkg-config, - protobuf, # buildInputs rdkafka, @@ -25,17 +25,17 @@ }: rustPlatform.buildRustPackage (finalAttrs: { pname = "restate"; - version = "1.1.6"; + version = "1.3.0"; src = fetchFromGitHub { owner = "restatedev"; repo = "restate"; tag = "v${finalAttrs.version}"; - hash = "sha256-uDNPIL9Ox5rwWVzqWe74elHPGy6lSvWR1S7HsY6ATjc="; + hash = "sha256-i/It8VWfkEO3MBQvBF9jDhL8s3BdJyg4+grdxO+GoQs="; }; useFetchCargoVendor = true; - cargoHash = "sha256-z7VAKU4bi6pX2z4jCKWDfQt8FFLN7ugnW2LOy6IHz/w="; + cargoHash = "sha256-TNjxRFEAFY/6ZYCzPD5NcqMEwyM6HZnkfrt/hZkIHMY="; env = { PROTOC = lib.getExe protobuf; @@ -50,7 +50,6 @@ rustPlatform.buildRustPackage (finalAttrs: { targetFlags = lib.fix (self: { build = [ "-C force-unwind-tables" - "-C debug-assertions" "--cfg uuid_unstable" "--cfg tokio_unstable" ]; @@ -97,6 +96,17 @@ rustPlatform.buildRustPackage (finalAttrs: { # Feature resolution seems to be failing due to this https://github.com/rust-lang/cargo/issues/7754 auditable = false; + checkFlags = [ + # Error: deadline has elapsed + "--skip replicated_loglet" + + # TIMEOUT [ 180.006s] + "--skip fast_forward_over_trim_gap" + + # TIMEOUT (could be related to https://github.com/restatedev/restate/issues/3043) + "--skip restatectl_smoke_test" + ]; + __darwinAllowLocalNetworking = true; nativeInstallCheckInputs = [ @@ -122,7 +132,7 @@ rustPlatform.buildRustPackage (finalAttrs: { }; meta = { - description = "Restate is a platform for developing distributed fault-tolerant applications."; + description = "Platform for developing distributed fault-tolerant applications."; homepage = "https://restate.dev"; changelog = "https://github.com/restatedev/restate/releases/tag/v${finalAttrs.version}"; mainProgram = "restate"; From 13dfee0f881c1bbe509a2030e522d502580af3ae Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 14 Apr 2025 01:03:20 +0000 Subject: [PATCH 26/36] qspeakers: 1.7 -> 1.8 --- pkgs/by-name/qs/qspeakers/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/qs/qspeakers/package.nix b/pkgs/by-name/qs/qspeakers/package.nix index 8fd025250b38..a3418f38c414 100644 --- a/pkgs/by-name/qs/qspeakers/package.nix +++ b/pkgs/by-name/qs/qspeakers/package.nix @@ -7,13 +7,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "qspeakers"; - version = "1.7"; + version = "1.8"; src = fetchFromGitHub { owner = "be1"; repo = "qspeakers"; tag = finalAttrs.version; - hash = "sha256-CQzUeC2nbKMWG6/2715+bf4rFu9IytT+bdqkZYVrYGc="; + hash = "sha256-zN9Z2t7dKo7Ffe5J9ZOGCpNJUK2RkZfQzjzL5HCmJpg="; }; nativeBuildInputs = [ From 67385bf65a7d46bb2cc85b27e58be5d4d331a5c1 Mon Sep 17 00:00:00 2001 From: Gaetan Lepage Date: Mon, 14 Apr 2025 07:59:13 +0200 Subject: [PATCH 27/36] ankama-launcher: 3.12.38 -> 3.12.39 --- pkgs/by-name/an/ankama-launcher/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/an/ankama-launcher/package.nix b/pkgs/by-name/an/ankama-launcher/package.nix index 30df54b188ce..1d8e7cf9720a 100644 --- a/pkgs/by-name/an/ankama-launcher/package.nix +++ b/pkgs/by-name/an/ankama-launcher/package.nix @@ -5,15 +5,15 @@ }: let pname = "ankama-launcher"; - version = "3.12.38"; + version = "3.12.39"; # The original URL for the launcher is: # https://launcher.cdn.ankama.com/installers/production/Ankama%20Launcher-Setup-x86_64.AppImage # As it does not encode the version, we use the wayback machine (web.archive.org) to get a fixed URL. # To update the client, head to web.archive.org and create a new snapshot of the download page. src = fetchurl { - url = "https://web.archive.org/web/20250325223011/https://launcher.cdn.ankama.com/installers/production/Ankama%20Launcher-Setup-x86_64.AppImage"; - hash = "sha256-psN7aJQ19s4dYI1s/o6mma32g9++wKZyINDpNo3/q+U="; + url = "https://web.archive.org/web/20250413180128/https://launcher.cdn.ankama.com/installers/production/Ankama%20Launcher-Setup-x86_64.AppImage"; + hash = "sha256-25x+x5Y0pIxvJyjbctt9weCEiH0UlqGbGM7/RKkyHXA="; }; appimageContents = appimageTools.extract { inherit pname version src; }; From 7782e4e956ace399203f971547c4b30162a9aaf4 Mon Sep 17 00:00:00 2001 From: Vincent Laporte Date: Mon, 7 Apr 2025 07:20:51 +0200 Subject: [PATCH 28/36] =?UTF-8?q?ocamlPackages.sedlex:=203.3=20=E2=86=92?= =?UTF-8?q?=203.4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pkgs/development/ocaml-modules/sedlex/default.nix | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/pkgs/development/ocaml-modules/sedlex/default.nix b/pkgs/development/ocaml-modules/sedlex/default.nix index 6d4797ecf4ac..bd5eb9119d32 100644 --- a/pkgs/development/ocaml-modules/sedlex/default.nix +++ b/pkgs/development/ocaml-modules/sedlex/default.nix @@ -2,7 +2,6 @@ lib, fetchFromGitHub, fetchurl, - ocaml, buildDunePackage, gen, ppxlib, @@ -14,8 +13,8 @@ let param = if lib.versionAtLeast ppxlib.version "0.26.0" then { - version = "3.3"; - sha256 = "sha256-33eJKVdoR4mlWdPZUdjQ26w+kuQWoUN68+bxy2o+Pjs="; + version = "3.4"; + sha256 = "sha256-mJMv2zl1UfFJjYdwv68hi7TWP+/oZB9tKHXt13r1SlA="; } else { @@ -75,7 +74,7 @@ buildDunePackage rec { ppx_expect ]; - doCheck = !lib.versionAtLeast ocaml.version "5.3"; + doCheck = true; dontStrip = true; From ae2efd9a54afb0669c4e434846b74b3c9111acaa Mon Sep 17 00:00:00 2001 From: Pol Dellaiera Date: Sun, 13 Apr 2025 23:25:39 +0200 Subject: [PATCH 29/36] orthanc: 1.12.6 -> 1.12.7 --- pkgs/by-name/or/orthanc/add-missing-include.patch | 10 ---------- pkgs/by-name/or/orthanc/package.nix | 10 ++-------- 2 files changed, 2 insertions(+), 18 deletions(-) delete mode 100644 pkgs/by-name/or/orthanc/add-missing-include.patch diff --git a/pkgs/by-name/or/orthanc/add-missing-include.patch b/pkgs/by-name/or/orthanc/add-missing-include.patch deleted file mode 100644 index 48ada55a9ece..000000000000 --- a/pkgs/by-name/or/orthanc/add-missing-include.patch +++ /dev/null @@ -1,10 +0,0 @@ -diff -r cba3e8ca3a87 OrthancServer/Sources/OrthancInitialization.cpp ---- a/Sources/OrthancInitialization.cpp Tue Mar 11 10:46:15 2025 +0100 -+++ b/Sources/OrthancInitialization.cpp Thu Mar 13 18:20:00 2025 +0100 -@@ -59,6 +59,7 @@ - # undef __FILE__ - # define __FILE__ __ORTHANC_FILE__ - # endif -+# include - # include - #endif diff --git a/pkgs/by-name/or/orthanc/package.nix b/pkgs/by-name/or/orthanc/package.nix index 31ec189162b5..8b2099a10274 100644 --- a/pkgs/by-name/or/orthanc/package.nix +++ b/pkgs/by-name/or/orthanc/package.nix @@ -28,20 +28,14 @@ stdenv.mkDerivation (finalAttrs: { pname = "orthanc"; - version = "1.12.6"; + version = "1.12.7"; src = fetchhg { url = "https://orthanc.uclouvain.be/hg/orthanc/"; rev = "Orthanc-${finalAttrs.version}"; - hash = "sha256-1ztA95PiCGL1oD6zVfsEhwrwGNID13/NcyZDD3eHYv0="; + hash = "sha256-aWUA8cCnWff5Tl8PWGJJtERlGh4GX4a8hTG9E2ADG9k="; }; - patches = [ - # Without this patch, the build fails to find `GOOGLE_PROTOBUF_VERIFY_VERSION` - # The patch has been included upstream, it need to be removed in the next release. - ./add-missing-include.patch - ]; - outputs = [ "out" "dev" From aaed20ac46a30209b0321ce86ca4067a204c4347 Mon Sep 17 00:00:00 2001 From: Vincent Laporte Date: Thu, 10 Apr 2025 13:20:11 +0200 Subject: [PATCH 30/36] =?UTF-8?q?jasmin-compiler:=202025.02.0=20=E2=86=92?= =?UTF-8?q?=202025.02.1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pkgs/by-name/ja/jasmin-compiler/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/ja/jasmin-compiler/package.nix b/pkgs/by-name/ja/jasmin-compiler/package.nix index 00ad828a85f6..c9d3350ea293 100644 --- a/pkgs/by-name/ja/jasmin-compiler/package.nix +++ b/pkgs/by-name/ja/jasmin-compiler/package.nix @@ -9,11 +9,11 @@ stdenv.mkDerivation rec { pname = "jasmin-compiler"; - version = "2025.02.0"; + version = "2025.02.1"; src = fetchurl { url = "https://github.com/jasmin-lang/jasmin/releases/download/v${version}/jasmin-compiler-v${version}.tar.bz2"; - hash = "sha256-xLTMdyFyZGlnhuZ1iOg8Tgm7aLijg5lceJxgLdEHw+Q="; + hash = "sha256-7WGEtsTJ4/R+30gzFlYpCvZrZyziZ6gDCemWEFX+5hk="; }; nativeBuildInputs = with ocamlPackages; [ From 350fb687764018acadce5368749262237747eaac Mon Sep 17 00:00:00 2001 From: Weijia Wang <9713184+wegank@users.noreply.github.com> Date: Mon, 14 Apr 2025 10:43:55 +0200 Subject: [PATCH 31/36] utm: 4.6.4 -> 4.6.5 --- pkgs/by-name/ut/utm/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/ut/utm/package.nix b/pkgs/by-name/ut/utm/package.nix index 498c10387cfc..4e6c40ed5b2d 100644 --- a/pkgs/by-name/ut/utm/package.nix +++ b/pkgs/by-name/ut/utm/package.nix @@ -8,11 +8,11 @@ stdenvNoCC.mkDerivation rec { pname = "utm"; - version = "4.6.4"; + version = "4.6.5"; src = fetchurl { url = "https://github.com/utmapp/UTM/releases/download/v${version}/UTM.dmg"; - hash = "sha256-qthnJhUrFaPpY893igsN/Y6Bhzazga7SaZ2XShiEVCc="; + hash = "sha256-CzVgfgHi76BPRfF22HW0o4YTh4Bx7lU20qnMO2Sjwo0="; }; nativeBuildInputs = [ From 1a563db44834574f7646cfe43c7cd07d8d4640b6 Mon Sep 17 00:00:00 2001 From: Pol Dellaiera Date: Mon, 14 Apr 2025 10:55:42 +0200 Subject: [PATCH 32/36] php84Extensions.ctype: remove flaky test for `aarch64-darwin` --- pkgs/top-level/php-packages.nix | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/pkgs/top-level/php-packages.nix b/pkgs/top-level/php-packages.nix index c7672a23c0e9..ea7031d03df8 100644 --- a/pkgs/top-level/php-packages.nix +++ b/pkgs/top-level/php-packages.nix @@ -428,7 +428,13 @@ lib.makeScope pkgs.newScope ( configureFlags = [ "--with-bz2=${bzip2.dev}" ]; } { name = "calendar"; } - { name = "ctype"; } + { + name = "ctype"; + postPatch = lib.optionalString stdenv.hostPlatform.isDarwin '' + # Broken test on aarch64-darwin + rm ext/ctype/tests/lc_ctype_inheritance.phpt + ''; + } { name = "curl"; buildInputs = [ curl ]; From 9abf2a204d974a878c517ac135131c6d8f8b5492 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 14 Apr 2025 10:57:18 +0000 Subject: [PATCH 33/36] lunar-client: 3.3.6 -> 3.3.7 --- pkgs/by-name/lu/lunar-client/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/lu/lunar-client/package.nix b/pkgs/by-name/lu/lunar-client/package.nix index 121738051f9e..ef997de10d60 100644 --- a/pkgs/by-name/lu/lunar-client/package.nix +++ b/pkgs/by-name/lu/lunar-client/package.nix @@ -7,11 +7,11 @@ appimageTools.wrapType2 rec { pname = "lunarclient"; - version = "3.3.6"; + version = "3.3.7"; src = fetchurl { url = "https://launcherupdates.lunarclientcdn.com/Lunar%20Client-${version}.AppImage"; - hash = "sha512-OqgyEIjg72MDHu3mjWmmK2j7Mapk9Hd8TI7G6xXw8yMzT5w710Ny99ALy/k55p/3cknLI84i0GkQJpDy2HAJxQ=="; + hash = "sha512-YnNqFuRRaRnVqNlD1VaWbx1TaTpD851altu9YamXX0q2ZohtGzB7lzE2xhllbS61E71jSUDasLUlbyyVqGTrJw=="; }; nativeBuildInputs = [ makeWrapper ]; From 3bf4a7a2efd6d15e785777b31564b801113f252a Mon Sep 17 00:00:00 2001 From: h0nIg Date: Mon, 14 Apr 2025 13:42:40 +0200 Subject: [PATCH 34/36] pdm: fix AGPL issues (#390944) --- pkgs/by-name/pd/pdm/package.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pkgs/by-name/pd/pdm/package.nix b/pkgs/by-name/pd/pdm/package.nix index fdcaae9e1c2d..ebedb85b3f3f 100644 --- a/pkgs/by-name/pd/pdm/package.nix +++ b/pkgs/by-name/pd/pdm/package.nix @@ -19,6 +19,12 @@ let hash = "sha256-UBdgFN+fvbjz+rp8+rog8FW2jwO/jCfUPV7UehJKiV8="; }; }); + # pdm requires hishel and subsequentially pytest-regressions -> matplotlib -> ghostscript -> jbig2dec which is AGPL only + matplotlib = super.matplotlib.override ({ enableGhostscript = false; }); + # avoid many extra dependencies + moto = super.moto.overridePythonAttrs (old: rec { + doCheck = false; + }); }; }; in From ce43e48c86cff7cb70d78fb9e6691ef659f24bcf Mon Sep 17 00:00:00 2001 From: Gaetan Lepage Date: Mon, 14 Apr 2025 13:47:42 +0200 Subject: [PATCH 35/36] ferron: init at 1.0.0 --- pkgs/by-name/fe/ferron/package.nix | 54 ++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 pkgs/by-name/fe/ferron/package.nix diff --git a/pkgs/by-name/fe/ferron/package.nix b/pkgs/by-name/fe/ferron/package.nix new file mode 100644 index 000000000000..31e23a2d044f --- /dev/null +++ b/pkgs/by-name/fe/ferron/package.nix @@ -0,0 +1,54 @@ +{ + lib, + rustPlatform, + fetchFromGitHub, + pkg-config, + zstd, + versionCheckHook, + nix-update-script, +}: + +rustPlatform.buildRustPackage (finalAttrs: { + pname = "ferron"; + version = "1.0.0"; + + src = fetchFromGitHub { + owner = "ferronweb"; + repo = "ferron"; + tag = finalAttrs.version; + hash = "sha256-kw2Ffl5KB3urg5h/ejbW+WxYLpNrxIjPy0levZPgRoo="; + }; + + useFetchCargoVendor = true; + cargoHash = "sha256-uPzEz72/3huigY8moYX5ztRZ0Uaye+GN7V8vKKklPkY="; + + nativeBuildInputs = [ + pkg-config + ]; + + buildInputs = [ + zstd + ]; + + env = { + ZSTD_SYS_USE_PKG_CONFIG = true; + }; + + nativeInstallCheckInputs = [ + versionCheckHook + ]; + versionCheckProgramArg = "--version"; + doInstallCheck = true; + + passthru = { + updateScript = nix-update-script { }; + }; + + meta = { + description = "Fast, memory-safe web server written in Rust"; + homepage = "https://github.com/ferronweb/ferron"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ GaetanLepage ]; + mainProgram = "ferron"; + }; +}) From c75287f6885afef46193fbf715ef64591c019589 Mon Sep 17 00:00:00 2001 From: soyouzpanda <23421201+soyouzpanda@users.noreply.github.com> Date: Mon, 14 Apr 2025 13:59:11 +0200 Subject: [PATCH 36/36] python3Packages.python-ironicclient: 5.10.0 -> 5.10.1 (#397971) Co-authored-by: Sandro --- .../python-modules/python-ironicclient/default.nix | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/pkgs/development/python-modules/python-ironicclient/default.nix b/pkgs/development/python-modules/python-ironicclient/default.nix index 33a6f644051a..4f416fd3de68 100644 --- a/pkgs/development/python-modules/python-ironicclient/default.nix +++ b/pkgs/development/python-modules/python-ironicclient/default.nix @@ -1,7 +1,7 @@ { lib, buildPythonPackage, - fetchPypi, + fetchFromGitHub, cliff, dogpile-cache, jsonschema, @@ -25,12 +25,14 @@ buildPythonPackage rec { pname = "python-ironicclient"; - version = "5.10.0"; + version = "5.10.1"; pyproject = true; - src = fetchPypi { - inherit pname version; - hash = "sha256-Eg2eakri5+1hPuKyq9+f4dL33il6G4LYLZvoWYfU4LY="; + src = fetchFromGitHub { + owner = "openstack"; + repo = pname; + tag = version; + hash = "sha256-HqsOMvJ8SK8IEZgeClLd0TnQLBweBEru0Bw4WRSDG7s="; }; build-system = [ @@ -63,6 +65,8 @@ buildPythonPackage rec { oslotest ]; + env.PBR_VERSION = version; + checkPhase = '' runHook preCheck stestr run -e <(echo "