Merge master into staging-next

This commit is contained in:
nixpkgs-ci[bot]
2025-04-14 12:06:33 +00:00
committed by GitHub
39 changed files with 425 additions and 254 deletions
@@ -262,6 +262,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.
+6 -6
View File
@@ -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;
};
@@ -1,56 +0,0 @@
{
stdenv,
lib,
fetchFromGitHub,
pkg-config,
cmake,
cpp-utilities,
qtutilities,
mp4v2,
libid3tag,
qtbase,
qttools,
qtwebengine,
qtx11extras,
tagparser,
wrapQtAppsHook,
}:
stdenv.mkDerivation rec {
pname = "tageditor";
version = "3.9.4";
src = fetchFromGitHub {
owner = "martchus";
repo = pname;
rev = "v${version}";
hash = "sha256-VRQV4bTPG4VFhRHFJamUnYd04ZCaNpaxU27Jcl6Chc4=";
};
nativeBuildInputs = [
pkg-config
cmake
wrapQtAppsHook
];
buildInputs = [
mp4v2
libid3tag
qtbase
qttools
qtx11extras
qtwebengine
cpp-utilities
qtutilities
tagparser
];
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;
mainProgram = "tageditor";
};
}
@@ -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
+3 -3
View File
@@ -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; };
+54
View File
@@ -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";
};
})
+3 -3
View File
@@ -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 ];
+8 -4
View File
@@ -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";
};
}
})
+2 -2
View File
@@ -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; [
+13 -17
View File
@@ -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=";
};
};
+2 -2
View File
@@ -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;
+2 -2
View File
@@ -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) [
+2 -2
View File
@@ -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 ];
+2 -2
View File
@@ -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; [
@@ -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 <google/protobuf/stubs/common.h>
# include <google/protobuf/any.h>
#endif
+2 -8
View File
@@ -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"
+83 -76
View File
@@ -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 \
+6
View File
@@ -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
+2 -2
View File
@@ -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 = [
+16 -6
View File
@@ -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";
+2 -2
View File
@@ -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 = ".";
+54
View File
@@ -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";
};
})
+2 -2
View File
@@ -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 = [
+58
View File
@@ -0,0 +1,58 @@
{
stdenv,
lib,
fetchFromGitHub,
pkg-config,
cmake,
cpp-utilities,
mp4v2,
libid3tag,
libsForQt5,
qt5,
tagparser,
}:
stdenv.mkDerivation rec {
pname = "tageditor";
version = "3.9.5";
src = fetchFromGitHub {
owner = "martchus";
repo = "tageditor";
tag = "v${version}";
hash = "sha256-Sia6Y/V81WQj4oWjZAAR4o3TngfWq7sWxxiKEuFjQ2M=";
};
nativeBuildInputs = [
pkg-config
cmake
qt5.wrapQtAppsHook
];
buildInputs = [
mp4v2
libid3tag
qt5.qtbase
qt5.qttools
qt5.qtx11extras
qt5.qtwebengine
cpp-utilities
libsForQt5.qtutilities
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 = {
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 = lib.licenses.gpl2;
maintainers = [ lib.maintainers.matthiasbeyer ];
platforms = lib.platforms.unix;
mainProgram = "tageditor";
};
}
+6 -1
View File
@@ -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
'';
@@ -121,7 +126,7 @@ python.pkgs.buildPythonPackage {
mock
pytestCheckHook
pytest-asyncio
pytest-cov
pytest-cov-stub
pytest-django
pytest-factoryboy
pytest-html
+2 -2
View File
@@ -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 = [
+2 -2
View File
@@ -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 {
+2
View File
@@ -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 [
@@ -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;
@@ -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
@@ -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;
@@ -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 "
@@ -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"
@@ -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 ];
};
}
@@ -20,7 +20,7 @@ buildPythonPackage rec {
hash = "sha256-fKVjPb+p4OD6QA0xUaigxL7FO9Ls7cCmdwWxdWXDGoM=";
};
nativeBuildInputs = [ setuptools ];
build-system = [ setuptools ];
nativeCheckInputs = [ pytestCheckHook ];
+3 -3
View File
@@ -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 ];
-2
View File
@@ -11355,8 +11355,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 { };
+7 -1
View File
@@ -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 ];
+2
View File
@@ -18863,6 +18863,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 { };