From f7a26fa27a9037ce2d8846715178ef1712a0f0b7 Mon Sep 17 00:00:00 2001 From: Daniel Woffinden Date: Thu, 19 Feb 2026 22:16:21 +0000 Subject: [PATCH 01/56] cropgui: init at 0.9 --- pkgs/by-name/cr/cropgui/package.nix | 63 +++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 pkgs/by-name/cr/cropgui/package.nix diff --git a/pkgs/by-name/cr/cropgui/package.nix b/pkgs/by-name/cr/cropgui/package.nix new file mode 100644 index 000000000000..faf9579e5749 --- /dev/null +++ b/pkgs/by-name/cr/cropgui/package.nix @@ -0,0 +1,63 @@ +{ + lib, + python3Packages, + fetchFromGitea, + makeWrapper, + libjpeg, + exiftool, +}: + +python3Packages.buildPythonApplication (finalAttrs: { + pname = "cropgui"; + version = "0.9"; + + src = fetchFromGitea { + domain = "codeberg.org"; + owner = "jepler"; + repo = "cropgui"; + tag = "v${finalAttrs.version}"; + hash = "sha256-pmo36mWTwDzqE5osXUsM3YzOAPXewLjfrDHIg6hCYjY="; + }; + + pyproject = false; + + nativeBuildInputs = [ + makeWrapper + ]; + + dependencies = with python3Packages; [ + pillow + tkinter + ]; + + installPhase = '' + runHook preInstall + + mkdir -p $out/${python3Packages.python.sitePackages} + cp *.py $out/${python3Packages.python.sitePackages} + + install -Dm755 cropgui.desktop $out/share/applications/cropgui.desktop + install -Dm644 cropgui.png $out/share/icons/hicolor/48x48/apps/cropgui.png + + mkdir -p $out/bin + makeWrapper $out/${python3Packages.python.sitePackages}/cropgui.py $out/bin/cropgui \ + --prefix PATH : ${ + lib.makeBinPath [ + libjpeg + exiftool + ] + } \ + --prefix PYTHONPATH : "$out/${python3Packages.python.sitePackages}:$PYTHONPATH" + + runHook postInstall + ''; + + meta = { + description = "Gtk frontend for lossless cropping of jpeg images"; + homepage = "https://codeberg.org/jepler/cropgui"; + license = lib.licenses.gpl2Only; + maintainers = [ lib.maintainers.dwoffinden ]; + mainProgram = "cropgui"; + platforms = lib.platforms.all; + }; +}) From 023b07bc3b1b34f486c28727d6ee8d1f34d9d38c Mon Sep 17 00:00:00 2001 From: Dan Xin Date: Sat, 28 Feb 2026 23:27:52 +0800 Subject: [PATCH 02/56] rsshub: add update script --- pkgs/by-name/rs/rsshub/package.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/by-name/rs/rsshub/package.nix b/pkgs/by-name/rs/rsshub/package.nix index cf622baec21a..e4b3d4a6a132 100644 --- a/pkgs/by-name/rs/rsshub/package.nix +++ b/pkgs/by-name/rs/rsshub/package.nix @@ -8,6 +8,7 @@ pnpmConfigHook, replaceVars, stdenv, + nix-update-script, }: stdenv.mkDerivation (finalAttrs: { pname = "rsshub"; @@ -64,6 +65,8 @@ stdenv.mkDerivation (finalAttrs: { --append-flags "$out/lib/rsshub/dist/index.mjs" ''; + passthru.updateScript = nix-update-script { extraArgs = [ "--version=branch=master" ]; }; + meta = { description = "RSS feed generator"; longDescription = '' From 71da30c5a572006655694e9cdcd77a631d9e59ef Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 9 Mar 2026 22:43:27 +0000 Subject: [PATCH 03/56] python3Packages.gerbonara: 1.6.1 -> 1.6.2 --- pkgs/development/python-modules/gerbonara/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/gerbonara/default.nix b/pkgs/development/python-modules/gerbonara/default.nix index 1faba0f4d8a8..f858980e5b76 100644 --- a/pkgs/development/python-modules/gerbonara/default.nix +++ b/pkgs/development/python-modules/gerbonara/default.nix @@ -11,14 +11,14 @@ buildPythonPackage rec { pname = "gerbonara"; - version = "1.6.1"; + version = "1.6.2"; pyproject = true; src = fetchFromGitHub { owner = "jaseg"; repo = "gerbonara"; tag = "v${version}"; - hash = "sha256-kzEjfM9QrT+izwyCnNdN6Bv6lk1rzqs7tfDvERzJzzI="; + hash = "sha256-fT13JMoOvKMxdHoagZAmIsGhU3M1S4bEmKUHae+EJcI="; }; build-system = [ uv-build ]; From e636ec423b2208aa7ac7c8ee002bd63e85f1a793 Mon Sep 17 00:00:00 2001 From: Dan Xin Date: Sat, 28 Feb 2026 23:28:19 +0800 Subject: [PATCH 04/56] rsshub: 0-unstable-2025-11-28 -> 0-unstable-2026-03-08 Signed-off-by: Dan Xin --- .../by-name/rs/rsshub/0001-fix-git-hash.patch | 10 +-- .../rs/rsshub/0002-fix-network-call.patch | 72 ++++++++----------- pkgs/by-name/rs/rsshub/package.nix | 30 ++++---- 3 files changed, 50 insertions(+), 62 deletions(-) diff --git a/pkgs/by-name/rs/rsshub/0001-fix-git-hash.patch b/pkgs/by-name/rs/rsshub/0001-fix-git-hash.patch index cec83ecd3802..3cfa677a428b 100644 --- a/pkgs/by-name/rs/rsshub/0001-fix-git-hash.patch +++ b/pkgs/by-name/rs/rsshub/0001-fix-git-hash.patch @@ -8,12 +8,12 @@ Subject: [PATCH] fix git hash 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/lib/utils/git-hash.ts b/lib/utils/git-hash.ts -index 9a8131696..f1f568fb4 100644 +index 458651a..795bb88 100644 --- a/lib/utils/git-hash.ts +++ b/lib/utils/git-hash.ts @@ -1,14 +1,6 @@ - import { execSync } from 'child_process'; - + import { execSync } from 'node:child_process'; + -let gitHash = process.env.HEROKU_SLUG_COMMIT?.slice(0, 8) || process.env.VERCEL_GIT_COMMIT_SHA?.slice(0, 8); -let gitDate: Date | undefined; -if (!gitHash) { @@ -26,5 +26,5 @@ index 9a8131696..f1f568fb4 100644 -} +let gitHash = '@GIT_HASH@'.slice(0, 8); +let gitDate = new Date('Thu Jan 1 00:00:00 1970 +0000'); - - export { gitHash, gitDate }; + + export { gitDate, gitHash }; diff --git a/pkgs/by-name/rs/rsshub/0002-fix-network-call.patch b/pkgs/by-name/rs/rsshub/0002-fix-network-call.patch index e14f44ef14f7..1e2fb6c90605 100644 --- a/pkgs/by-name/rs/rsshub/0002-fix-network-call.patch +++ b/pkgs/by-name/rs/rsshub/0002-fix-network-call.patch @@ -1,45 +1,31 @@ -diff --git a/scripts/workflow/build-routes.ts b/scripts/workflow/build-routes.ts -index 1bbb64cc5..941d86149 100644 ---- a/scripts/workflow/build-routes.ts -+++ b/scripts/workflow/build-routes.ts -@@ -1,5 +1,6 @@ - import fs from 'node:fs'; - import path from 'node:path'; -+import { exit } from 'node:process'; +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: RSSHub Nix packagers +Date: Mon, 10 Mar 2026 00:00:00 +0000 +Subject: [PATCH] support BUILD_ROUTES_MODE for offline builds + +Add BUILD_ROUTES_MODE environment variable support to lib/registry.ts +so that route metadata can be built using directoryImport without +executing module-level code that would trigger network requests. +This is required for building in the Nix sandbox (no network access). + +--- + lib/registry.ts | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/lib/registry.ts b/lib/registry.ts +--- a/lib/registry.ts ++++ b/lib/registry.ts +@@ -56,7 +56,12 @@ - import { parse } from 'tldts'; - import toSource from 'tosource'; -@@ -11,17 +12,7 @@ import { getCurrentPath } from '../../lib/utils/helpers'; + let namespaces: NamespacesType = {}; - const __dirname = getCurrentPath(import.meta.url); - --const foloAnalysis = await ( -- await fetch('https://raw.githubusercontent.com/RSSNext/rsshub-docs/refs/heads/main/rsshub-analytics.json', { -- headers: { -- 'user-agent': config.trueUA, -- }, -- }) --).json(); --const foloAnalysisResult = foloAnalysis.data as Record; --const foloAnalysisTop100 = Object.entries(foloAnalysisResult) -- .sort((a, b) => b[1].subscriptionCount - a[1].subscriptionCount) -- .slice(0, 150); -+const foloAnalysisTop100: any[] = []; - - const maintainers: Record = {}; - const radar: { -@@ -100,7 +91,7 @@ const uniquePaths = [...allRoutePaths].toSorted(); - const routePathsType = `// This file is auto-generated by scripts/workflow/build-routes.ts - // Do not edit manually - --export type RoutePath = -+export type RoutePath = - ${uniquePaths.map((path) => ` | \`${path}\``).join('\n')}; - `; - -@@ -110,3 +101,5 @@ fs.writeFileSync(path.join(__dirname, '../../assets/build/maintainers.json'), JS - fs.writeFileSync(path.join(__dirname, '../../assets/build/routes.json'), JSON.stringify(namespaces, null, 2)); - fs.writeFileSync(path.join(__dirname, '../../assets/build/routes.js'), `export default ${JSON.stringify(namespaces, null, 2)}`.replaceAll(/"module": "(.*)"\n/g, `"module": $1\n`)); - fs.writeFileSync(path.join(__dirname, '../../assets/build/route-paths.ts'), routePathsType); -+ -+exit(0); +-if (config.isPackage) { ++if (process.env.BUILD_ROUTES_MODE) { ++ modules = directoryImport({ ++ targetDirectoryPath: path.join(__dirname, './routes'), ++ importPattern: /\.tsx?$/, ++ }) as typeof modules; ++} else if (config.isPackage) { + namespaces = (await import('../assets/build/routes.js')).default; + } else { + switch (process.env.NODE_ENV || process.env.VERCEL_ENV) { diff --git a/pkgs/by-name/rs/rsshub/package.nix b/pkgs/by-name/rs/rsshub/package.nix index e4b3d4a6a132..bbcef4a9357b 100644 --- a/pkgs/by-name/rs/rsshub/package.nix +++ b/pkgs/by-name/rs/rsshub/package.nix @@ -2,49 +2,53 @@ lib, fetchFromGitHub, makeBinaryWrapper, + nix-update-script, nodejs, - pnpm_9, + pnpm_10, fetchPnpmDeps, pnpmConfigHook, replaceVars, stdenv, - nix-update-script, }: stdenv.mkDerivation (finalAttrs: { pname = "rsshub"; - version = "0-unstable-2025-11-28"; + version = "0-unstable-2026-03-08"; src = fetchFromGitHub { owner = "DIYgod"; repo = "RSSHub"; - rev = "b6dbafe33e0c3e3a4ba5a1edd2da29b70412389f"; - hash = "sha256-FsevO2nb6leuuRmzCLIy093FCafl3Y/CsSp1ydJOnKY="; + rev = "1ad606f40f512f24ec76462299c46066e495603f"; + hash = "sha256-hHCId59SazbR96fwAlY3De2hH5woklpALXGf9OzyY3A="; }; patches = [ (replaceVars ./0001-fix-git-hash.patch { - "GIT_HASH" = finalAttrs.src.rev; + GIT_HASH = finalAttrs.src.rev; }) ./0002-fix-network-call.patch ]; pnpmDeps = fetchPnpmDeps { inherit (finalAttrs) pname version src; - pnpm = pnpm_9; fetcherVersion = 3; - hash = "sha256-jV+MpdNeaVHut0eUP7F9SmJZuLDGQE8ULR8LsiOE7Ug="; + hash = "sha256-aJNc6gY6/OZZp577ZhblRIPBCFXV0rE7w8SbwslQM0k="; + pnpm = pnpm_10; }; nativeBuildInputs = [ makeBinaryWrapper nodejs pnpmConfigHook - pnpm_9 + pnpm_10 ]; buildPhase = '' runHook preBuild - pnpm build + # First build route metadata using directoryImport (avoids executing + # module-level code that would trigger network requests) + BUILD_ROUTES_MODE=1 pnpm run build:routes + # Then build the application + pnpm run build runHook postBuild ''; @@ -58,11 +62,9 @@ stdenv.mkDerivation (finalAttrs: { preFixup = '' makeWrapper ${lib.getExe nodejs} $out/bin/rsshub \ - --chdir "$out/lib/rsshub" \ --set "NODE_ENV" "production" \ --set "NO_LOGFILES" "true" \ - --set "TSX_TSCONFIG_PATH" "$out/lib/rsshub/tsconfig.json" \ - --append-flags "$out/lib/rsshub/dist/index.mjs" + --add-flags "$out/lib/rsshub/dist/index.mjs" ''; passthru.updateScript = nix-update-script { extraArgs = [ "--version=branch=master" ]; }; @@ -78,7 +80,7 @@ stdenv.mkDerivation (finalAttrs: { new features and bug fixes. ''; homepage = "https://docs.rsshub.app"; - license = lib.licenses.mit; + license = lib.licenses.agpl3Only; maintainers = with lib.maintainers; [ xinyangli ]; mainProgram = "rsshub"; platforms = lib.platforms.all; From fe82d2c75969a2f3decaa2ecc6bbd2ccebc9b52d Mon Sep 17 00:00:00 2001 From: kaynetik Date: Wed, 11 Mar 2026 08:56:40 +0100 Subject: [PATCH 05/56] maintainers: add kaynetik Signed-off-by: kaynetik --- maintainers/maintainer-list.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 00e0d4b59bbe..130feb4af4b8 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -13709,6 +13709,12 @@ githubId = 41012641; name = "Benjamin Kaylor"; }; + kaynetik = { + email = "aleksandar@nesovic.dev"; + github = "kaynetik"; + githubId = 48174247; + name = "Aleksandar Nesovic"; + }; kazcw = { email = "kaz@lambdaverse.org"; github = "kazcw"; From 7da3071e5b9ca72196e8a5d14e17cbe860278e87 Mon Sep 17 00:00:00 2001 From: kaynetik Date: Wed, 11 Mar 2026 08:57:12 +0100 Subject: [PATCH 06/56] chore: update sbarlua to lua 5.5 Signed-off-by: kaynetik --- pkgs/by-name/sb/sbarlua/package.nix | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/pkgs/by-name/sb/sbarlua/package.nix b/pkgs/by-name/sb/sbarlua/package.nix index 1d7bdfc4a870..5c43c7e88674 100644 --- a/pkgs/by-name/sb/sbarlua/package.nix +++ b/pkgs/by-name/sb/sbarlua/package.nix @@ -2,31 +2,34 @@ lib, fetchFromGitHub, gcc, - lua54Packages, + lua55Packages, readline, }: -lua54Packages.buildLuaPackage { +lua55Packages.buildLuaPackage { pname = "sbarLua"; - version = "0-unstable-2024-08-12"; + version = "0-unstable-2026-03-06"; src = fetchFromGitHub { owner = "FelixKratz"; repo = "SbarLua"; - rev = "437bd2031da38ccda75827cb7548e7baa4aa9978"; - hash = "sha256-F0UfNxHM389GhiPQ6/GFbeKQq5EvpiqQdvyf7ygzkPg="; + rev = "dba9cc421b868c918d5c23c408544a28aadf2f2f"; + hash = "sha256-lhLTrdufA3ALJ2S5HLdgNOr5seWIWEHkVhZNPObzbvI="; }; nativeBuildInputs = [ gcc ]; buildInputs = [ readline ]; - makeFlags = [ "INSTALL_DIR=$(out)/lib/lua/${lua54Packages.lua.luaversion}" ]; + makeFlags = [ "INSTALL_DIR=$(out)/lib/lua/${lua55Packages.lua.luaversion}" ]; meta = { description = "Lua API for SketchyBar"; homepage = "https://github.com/FelixKratz/SbarLua/"; license = lib.licenses.gpl3; - maintainers = [ lib.maintainers.khaneliman ]; + maintainers = [ + lib.maintainers.khaneliman + lib.maintainers.kaynetik + ]; platforms = lib.platforms.darwin; }; } From ebbfb683632eb0f965523520a621cf5f737d40c6 Mon Sep 17 00:00:00 2001 From: ccicnce113424 Date: Wed, 11 Mar 2026 18:53:15 +0800 Subject: [PATCH 07/56] wechat: 4.1.0.13 -> 4.1.1.4 on linux --- pkgs/by-name/we/wechat/package.nix | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/pkgs/by-name/we/wechat/package.nix b/pkgs/by-name/we/wechat/package.nix index 4fe5afe4f9d3..a265c5ae7384 100644 --- a/pkgs/by-name/we/wechat/package.nix +++ b/pkgs/by-name/we/wechat/package.nix @@ -44,18 +44,21 @@ let { aarch64-darwin = any-darwin; x86_64-darwin = any-darwin; + # use https://web.archive.org/save to archive the Linux versions + # add `if_` at the end of timestamps to avoid toolbar insertion + # for a more complicated guide, see https://en.wikipedia.org/wiki/Help:Using_the_Wayback_Machine aarch64-linux = { - version = "4.1.0.13"; + version = "4.1.1.4"; src = fetchurl { - url = "https://web.archive.org/web/20251209092116if_/https://dldir1v6.qq.com/weixin/Universal/Linux/WeChatLinux_arm64.AppImage"; - hash = "sha256-/d5crM6IGd0k0fSlBSQx4TpIVX/8iib+an0VMkWMNdw="; + url = "https://web.archive.org/web/20260311102559if_/https://dldir1v6.qq.com/weixin/Universal/Linux/WeChatLinux_arm64.AppImage"; + hash = "sha256-YlWJxT62tXDaNwYVpsPMC5elFH8fsbI1HjTQn6ePiPo="; }; }; x86_64-linux = { - version = "4.1.0.13"; + version = "4.1.1.4"; src = fetchurl { - url = "https://web.archive.org/web/20251219062558if_/https://dldir1v6.qq.com/weixin/Universal/Linux/WeChatLinux_x86_64.AppImage"; - hash = "sha256-+r5Ebu40GVGG2m2lmCFQ/JkiDsN/u7XEtnLrB98602w="; + url = "https://web.archive.org/web/20260311102439if_/https://dldir1v6.qq.com/weixin/Universal/Linux/WeChatLinux_x86_64.AppImage"; + hash = "sha256-XxAvFnlljqurGPDgRr+DnuCKbdVvgXBPh02DLHY3Oz8="; }; }; }; From 37f4d335679494a69f48282d86d9d07992d07143 Mon Sep 17 00:00:00 2001 From: GueLaKais Date: Mon, 11 Aug 2025 13:40:07 +0200 Subject: [PATCH 08/56] gz-cmake: 4.2.0 -> 5.0.0 --- pkgs/by-name/gz/gz-cmake/package.nix | 29 +++++++++++++++++++--------- 1 file changed, 20 insertions(+), 9 deletions(-) diff --git a/pkgs/by-name/gz/gz-cmake/package.nix b/pkgs/by-name/gz/gz-cmake/package.nix index c5995dae8250..34d9fefd9806 100644 --- a/pkgs/by-name/gz/gz-cmake/package.nix +++ b/pkgs/by-name/gz/gz-cmake/package.nix @@ -3,6 +3,7 @@ stdenv, fetchFromGitHub, cmake, + cppcheck, doxygen, graphviz, pkg-config, @@ -10,7 +11,7 @@ nix-update-script, }: let - version = "4.2.0"; + version = "5.0.0"; versionPrefix = "gz-cmake${lib.versions.major version}"; in stdenv.mkDerivation (finalAttrs: { @@ -21,33 +22,42 @@ stdenv.mkDerivation (finalAttrs: { owner = "gazebosim"; repo = "gz-cmake"; tag = "${versionPrefix}_${finalAttrs.version}"; - hash = "sha256-+bMOcGWfcwPhxR9CBp4iH02CZC4oplCjsTDpPDsDnSs="; + hash = "sha256-XF7oglj9Xr6F8a+6uowrY5a040yl4FZlFfW/Y0BJwOs="; }; postPatch = '' patchShebangs examples/test_c_child_requires_c_no_deps.bash - substituteInPlace examples/CMakeLists.txt --replace-fail \ - "$""{CMAKE_INSTALL_LIBDIR}" "${if stdenv.hostPlatform.isDarwin then "lib" else "lib64"}" + substituteInPlace examples/CMakeLists.txt \ + --replace-fail "$""{CMAKE_INSTALL_LIBDIR}" "${ + if stdenv.hostPlatform.isDarwin then "lib" else "lib64" + }" ''; nativeBuildInputs = [ cmake + cppcheck doxygen graphviz pkg-config + python3 ]; + doBuildExamples = false; + cmakeFlags = [ (lib.cmakeBool "BUILDSYSTEM_TESTING" finalAttrs.doCheck) + (lib.cmakeBool "BUILD_TESTING" finalAttrs.doCheck) + (lib.cmakeBool "BUILD_EXAMPLES" finalAttrs.doBuildExamples) ]; - nativeCheckInputs = [ python3 ]; - doCheck = true; - # Extract the version by matching the tag's prefix. - passthru.updateScript = nix-update-script { - extraArgs = [ "--version-regex=${versionPrefix}_([\\d\\.]+)" ]; + passthru = { + # bulk updater selects wrong tag + skipBulkUpdates = true; + updateScript = nix-update-script { + extraArgs = [ "--version-regex=gz-cmake(.*)" ]; + }; }; meta = { @@ -57,5 +67,6 @@ stdenv.mkDerivation (finalAttrs: { license = lib.licenses.asl20; platforms = lib.platforms.unix; maintainers = with lib.maintainers; [ guelakais ]; + badPlatforms = lib.platforms.darwin; # hard replicable building error }; }) From 800e1a3129201658cc6a49a0d3520b78b674130b Mon Sep 17 00:00:00 2001 From: GueLaKais Date: Thu, 4 Dec 2025 09:37:08 +0100 Subject: [PATCH 09/56] gz-utils: 3.1.1 -> 4.0.0 --- pkgs/by-name/gz/gz-utils/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/gz/gz-utils/package.nix b/pkgs/by-name/gz/gz-utils/package.nix index c41ec4ef71d7..6ce8d479f672 100644 --- a/pkgs/by-name/gz/gz-utils/package.nix +++ b/pkgs/by-name/gz/gz-utils/package.nix @@ -21,13 +21,13 @@ }: stdenv.mkDerivation (finalAttrs: { pname = "gz-utils"; - version = "3.1.1"; + version = "4.0.0"; src = fetchFromGitHub { owner = "gazebosim"; repo = "gz-utils"; tag = "gz-utils${lib.versions.major finalAttrs.version}_${finalAttrs.version}"; - hash = "sha256-fYzysdB608jfMb/EbqiGD4hXmPxcaVTUrt9Wx0dBlto="; + hash = "sha256-fZonC/o5CNHdK/R3IgEoo1llehy36MwvXPQCgFnP8Ls="; }; outputs = [ From 555f48435c336555b514e2fcfcabd7e2d2ba3475 Mon Sep 17 00:00:00 2001 From: Sizhe Zhao Date: Sat, 14 Mar 2026 17:52:13 +0800 Subject: [PATCH 10/56] slack: 4.47.72 -> 4.48.100 --- pkgs/by-name/sl/slack/sources.nix | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/pkgs/by-name/sl/slack/sources.nix b/pkgs/by-name/sl/slack/sources.nix index ec2f086eb4e0..bc0535e188c1 100644 --- a/pkgs/by-name/sl/slack/sources.nix +++ b/pkgs/by-name/sl/slack/sources.nix @@ -1,26 +1,26 @@ # Generated by ./update.sh - do not update manually! -# Last updated: 2025-12-15 +# Last updated: 2026-03-14 { fetchurl }: { aarch64-darwin = { - version = "4.47.72"; + version = "4.48.100"; src = fetchurl { - url = "https://downloads.slack-edge.com/desktop-releases/mac/arm64/4.47.72/Slack-4.47.72-macOS.dmg"; - hash = "sha256-AihMQAjMMRWJftQOp9gnIC/df8nnrKnkpRym8sdtUkA="; + url = "https://downloads.slack-edge.com/desktop-releases/mac/arm64/4.48.100/Slack-4.48.100-macOS.dmg"; + hash = "sha256-vzgxVBRncNQ4mchSgbe9vm3kEiPXHeMlhm3Xq4COi7A="; }; }; x86_64-darwin = { - version = "4.47.72"; + version = "4.48.100"; src = fetchurl { - url = "https://downloads.slack-edge.com/desktop-releases/mac/x64/4.47.72/Slack-4.47.72-macOS.dmg"; - hash = "sha256-H1Dqtlqz1FxDqq4iAZJsTkugLp+WVU9fKB+H19l+vug="; + url = "https://downloads.slack-edge.com/desktop-releases/mac/x64/4.48.100/Slack-4.48.100-macOS.dmg"; + hash = "sha256-5IEIgDxdE2Pnpy3gkJT3Cwzo3hRoTPziFAj30SnapVQ="; }; }; x86_64-linux = { - version = "4.47.72"; + version = "4.48.100"; src = fetchurl { - url = "https://downloads.slack-edge.com/desktop-releases/linux/x64/4.47.72/slack-desktop-4.47.72-amd64.deb"; - hash = "sha256-o1WOTBG5u4jL+NGbTEZq+afM2UwUJZ0gtsWKsnsOkvE="; + url = "https://downloads.slack-edge.com/desktop-releases/linux/x64/4.48.100/slack-desktop-4.48.100-amd64.deb"; + hash = "sha256-un+GE8zKDrag6YQMYN8+0ki7J3877FfMFqqucHhPBgk="; }; }; } From 6e9342b23d2bb6bc0c4a8e866c78ee26813628cd Mon Sep 17 00:00:00 2001 From: Pol Dellaiera Date: Tue, 10 Mar 2026 21:57:25 +0100 Subject: [PATCH 11/56] python313Packages.swh-core: disable tests on Darwin --- pkgs/development/python-modules/swh-core/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/development/python-modules/swh-core/default.nix b/pkgs/development/python-modules/swh-core/default.nix index 940cf4980cd8..a40256e4e6d1 100644 --- a/pkgs/development/python-modules/swh-core/default.nix +++ b/pkgs/development/python-modules/swh-core/default.nix @@ -81,6 +81,9 @@ buildPythonPackage rec { __darwinAllowLocalNetworking = true; + # Many broken tests on Darwin. Disabling them for now. + doCheck = !stdenv.hostPlatform.isDarwin; + nativeCheckInputs = [ aiohttp-utils flask From 82223c4e5c3ebed263a0ba7827567ec9c90a979b Mon Sep 17 00:00:00 2001 From: Pol Dellaiera Date: Tue, 10 Mar 2026 21:58:06 +0100 Subject: [PATCH 12/56] python313Packages.swh-storage: disable tests on Darwin --- pkgs/development/python-modules/swh-storage/default.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkgs/development/python-modules/swh-storage/default.nix b/pkgs/development/python-modules/swh-storage/default.nix index 52ed9dd19c50..d23668472e36 100644 --- a/pkgs/development/python-modules/swh-storage/default.nix +++ b/pkgs/development/python-modules/swh-storage/default.nix @@ -1,5 +1,6 @@ { lib, + stdenv, buildPythonPackage, fetchFromGitLab, setuptools, @@ -74,6 +75,9 @@ buildPythonPackage rec { pythonImportsCheck = [ "swh.storage" ]; + # Many broken tests on Darwin. Disabling them for now. + doCheck = !stdenv.hostPlatform.isDarwin; + nativeCheckInputs = [ postgresql postgresqlTestHook From 40e8e29a60407436af7b6533ed3a482c85ad22b5 Mon Sep 17 00:00:00 2001 From: Pol Dellaiera Date: Tue, 10 Mar 2026 21:58:30 +0100 Subject: [PATCH 13/56] python313Packages.swh-auth: disable tests on Darwin --- pkgs/development/python-modules/swh-auth/default.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkgs/development/python-modules/swh-auth/default.nix b/pkgs/development/python-modules/swh-auth/default.nix index 10980def4a73..3b4deea11320 100644 --- a/pkgs/development/python-modules/swh-auth/default.nix +++ b/pkgs/development/python-modules/swh-auth/default.nix @@ -1,5 +1,6 @@ { lib, + stdenv, buildPythonPackage, fetchFromGitLab, setuptools, @@ -47,6 +48,9 @@ buildPythonPackage rec { pythonImportsCheck = [ "swh.auth" ]; + # Many broken tests on Darwin. Disabling them for now. + doCheck = !stdenv.hostPlatform.isDarwin; + nativeCheckInputs = [ aiocache djangorestframework From 692d658f29ecbe686a19220a19fa1e31226b363a Mon Sep 17 00:00:00 2001 From: Pol Dellaiera Date: Tue, 10 Mar 2026 22:12:54 +0100 Subject: [PATCH 14/56] python313Packages.swh-objstorage: disable tests on Darwin --- pkgs/development/python-modules/swh-objstorage/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/development/python-modules/swh-objstorage/default.nix b/pkgs/development/python-modules/swh-objstorage/default.nix index c8ca0dc87afd..6f127367c293 100644 --- a/pkgs/development/python-modules/swh-objstorage/default.nix +++ b/pkgs/development/python-modules/swh-objstorage/default.nix @@ -81,6 +81,9 @@ buildPythonPackage rec { pythonImportsCheck = [ "swh.objstorage" ]; + # Many broken tests on Darwin. Disabling them for now. + doCheck = !stdenv.hostPlatform.isDarwin; + enabledTestPaths = [ "swh/objstorage/tests" ]; nativeCheckInputs = [ From 0b13868660a9bcea7661b4ffda92fc5fc0e0aed7 Mon Sep 17 00:00:00 2001 From: Pol Dellaiera Date: Tue, 10 Mar 2026 22:15:39 +0100 Subject: [PATCH 15/56] python313Packages.swh-scheduler: disable tests on Darwin --- pkgs/development/python-modules/swh-scheduler/default.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkgs/development/python-modules/swh-scheduler/default.nix b/pkgs/development/python-modules/swh-scheduler/default.nix index 7bb37313ed3c..629fee607808 100644 --- a/pkgs/development/python-modules/swh-scheduler/default.nix +++ b/pkgs/development/python-modules/swh-scheduler/default.nix @@ -1,5 +1,6 @@ { lib, + stdenv, buildPythonPackage, fetchFromGitLab, setuptools, @@ -65,6 +66,9 @@ buildPythonPackage rec { pythonImportsCheck = [ "swh.scheduler" ]; + # Many broken tests on Darwin. Disabling them for now. + doCheck = !stdenv.hostPlatform.isDarwin; + nativeCheckInputs = [ plotille postgresql From d307b913e5166d4c48a2e5a09372da4279824796 Mon Sep 17 00:00:00 2001 From: Pol Dellaiera Date: Tue, 10 Mar 2026 22:16:23 +0100 Subject: [PATCH 16/56] python313Packages.swh-scanner: disable some tests on Darwin only --- pkgs/development/python-modules/swh-scanner/default.nix | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/pkgs/development/python-modules/swh-scanner/default.nix b/pkgs/development/python-modules/swh-scanner/default.nix index 5dca94bb53d2..7dcfb97929e8 100644 --- a/pkgs/development/python-modules/swh-scanner/default.nix +++ b/pkgs/development/python-modules/swh-scanner/default.nix @@ -1,5 +1,6 @@ { lib, + stdenv, buildPythonPackage, fetchFromGitLab, setuptools, @@ -65,6 +66,13 @@ buildPythonPackage rec { types-requests ]; + disabledTests = lib.optionals (stdenv.hostPlatform.isDarwin) [ + # Failed: Failed to start the server after 5 seconds. + "test_add_provenance_with_release" + "test_add_provenance_with_revision" + "test_scanner_result" + ]; + disabledTestPaths = [ # pytestRemoveBytecodePhase fails with: "error (ignored): error: opening directory "/tmp/nix-build-python3.12-swh-scanner-0.8.3.drv-5/build/pytest-of-nixbld/pytest-0/test_randomdir_policy_info_cal0/big-directory/dir/dir/dir/ ......" "swh/scanner/tests/test_policy.py" From fe905bbdb75eb72473d6f1d4473a7661c833c8ef Mon Sep 17 00:00:00 2001 From: Pol Dellaiera Date: Wed, 11 Mar 2026 14:53:34 +0100 Subject: [PATCH 17/56] python313Packages.swh-shard: disable some tests on Darwin --- .../python-modules/swh-shard/default.nix | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/pkgs/development/python-modules/swh-shard/default.nix b/pkgs/development/python-modules/swh-shard/default.nix index a07c344b04a2..37e67ce539c9 100644 --- a/pkgs/development/python-modules/swh-shard/default.nix +++ b/pkgs/development/python-modules/swh-shard/default.nix @@ -1,4 +1,5 @@ { + stdenv, buildPythonPackage, click, cmake, @@ -62,6 +63,18 @@ buildPythonPackage rec { rm src/swh/shard/*.py ''; + disabledTests = [ + "test_setup_log_handler_with_env_configuration" + ] + ++ lib.optionals (stdenv.hostPlatform.isDarwin) [ + # assert (51675136 - 51396608) < (100 * 1024) + "test_memleak" + # ValueError: Cannot convert negative int + "test_write_above_rlimit_fsize" + # ValueError: Cannot convert negative int + "test_finalize_above_rlimit_fsize" + ]; + meta = { changelog = "https://gitlab.softwareheritage.org/swh/devel/swh-shard/-/tags/v2.2.0"; description = "Shard File Format for the Software Heritage Object Storage"; From eb14b8a8968a119674d9d790d08dd09dd53e2f50 Mon Sep 17 00:00:00 2001 From: Pol Dellaiera Date: Wed, 11 Mar 2026 16:33:25 +0100 Subject: [PATCH 18/56] python313Packages.swh-journal: disable some failing tests --- .../python-modules/swh-journal/default.nix | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/pkgs/development/python-modules/swh-journal/default.nix b/pkgs/development/python-modules/swh-journal/default.nix index e06e021615b9..a08459559606 100644 --- a/pkgs/development/python-modules/swh-journal/default.nix +++ b/pkgs/development/python-modules/swh-journal/default.nix @@ -1,5 +1,6 @@ { lib, + stdenv, buildPythonPackage, fetchFromGitLab, setuptools, @@ -45,6 +46,16 @@ buildPythonPackage rec { pytest-mock ]; + disabledTestPaths = [ + # AssertionError: assert {'author': {'email': b'', 'fullname': b'foo', 'name': b'foo'}, 'date': {'offset_bytes': b'+0200', 'timestamp': {'micro...': 1234567890}}, 'id': b'\x80Y\xdcN\x17\xfc\xd0\xe5\x1c\xa3\xbc\xd6\xb8\x0fEw\xd2\x81\xfd\x08', 'message': b'foo', ...} is None + "swh/journal/tests/test_kafka_writer.py" + ] + ++ lib.optionals stdenv.hostPlatform.isDarwin [ + #Fatal Python error: Segmentation fault" + "swh/journal/tests/test_client.py" + "swh/journal/tests/test_pytest_plugin.py" + ]; + meta = { description = "Persistent logger of changes to the archive, with publish-subscribe support"; homepage = "https://gitlab.softwareheritage.org/swh/devel/swh-journal"; From b15b8bf922bbd1ce4d6f9f2beb49af13e9f087f2 Mon Sep 17 00:00:00 2001 From: Nikolay Korotkiy Date: Sun, 15 Mar 2026 14:15:06 +0400 Subject: [PATCH 19/56] =?UTF-8?q?miniflux:=202.2.17=20=E2=86=92=202.2.18?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pkgs/by-name/mi/miniflux/package.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/by-name/mi/miniflux/package.nix b/pkgs/by-name/mi/miniflux/package.nix index 8b082e746322..83a8b819e5f5 100644 --- a/pkgs/by-name/mi/miniflux/package.nix +++ b/pkgs/by-name/mi/miniflux/package.nix @@ -1,24 +1,24 @@ { lib, - buildGoModule, + buildGo126Module, fetchFromGitHub, installShellFiles, nixosTests, nix-update-script, }: -buildGoModule (finalAttrs: { +buildGo126Module (finalAttrs: { pname = "miniflux"; - version = "2.2.17"; + version = "2.2.18"; src = fetchFromGitHub { owner = "miniflux"; repo = "v2"; tag = finalAttrs.version; - hash = "sha256-Ru9yhI7EhLEdxmB3umOyub/SjmRY+tYxGsh2tEdZGCQ="; + hash = "sha256-r5MFYdWV17u2ogxN01w9FpP/ErgqQmTEl5Nizg9FzCY="; }; - vendorHash = "sha256-BRgS58D8G6TGo7+jGjlmHrNUvVLgBE5Mm7/A/PekoI8="; + vendorHash = "sha256-F1FbenWzokNnF6xiZeqpu5HWs1PZo0WtlZX/ePTvBTE="; nativeBuildInputs = [ installShellFiles ]; From 95d8b401883c8e720e24539f83dfab63050542ce Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 15 Mar 2026 19:25:50 +0000 Subject: [PATCH 20/56] vscode-extensions.yoavbls.pretty-ts-errors: 0.8.3 -> 0.8.4 --- pkgs/applications/editors/vscode/extensions/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/editors/vscode/extensions/default.nix b/pkgs/applications/editors/vscode/extensions/default.nix index ee5195fe46d2..dce9d2d6d795 100644 --- a/pkgs/applications/editors/vscode/extensions/default.nix +++ b/pkgs/applications/editors/vscode/extensions/default.nix @@ -5360,8 +5360,8 @@ let mktplcRef = { name = "pretty-ts-errors"; publisher = "yoavbls"; - version = "0.8.3"; - hash = "sha256-YhYHtn0/en0hOts+s/Imln9WzwSrUhwBJPH1qdISUrM="; + version = "0.8.4"; + hash = "sha256-FyoT9S58aBkq9Q95fC8NaaHlCoUOpCBcOO8+/I33V70="; }; meta = { description = "Make TypeScript errors prettier and human-readable in VSCode"; From 5efb111c9e14aa3d631c07cd9cef3c7d9961540b Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 15 Mar 2026 20:12:45 +0000 Subject: [PATCH 21/56] python3Packages.peakrdl-rust: 0.5.1 -> 0.6.2 --- pkgs/development/python-modules/peakrdl-rust/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/peakrdl-rust/default.nix b/pkgs/development/python-modules/peakrdl-rust/default.nix index fdca6b390897..b8857bd053df 100644 --- a/pkgs/development/python-modules/peakrdl-rust/default.nix +++ b/pkgs/development/python-modules/peakrdl-rust/default.nix @@ -11,7 +11,7 @@ buildPythonPackage rec { pname = "peakrdl-rust"; - version = "0.5.1"; + version = "0.6.2"; pyproject = true; @@ -19,7 +19,7 @@ buildPythonPackage rec { owner = "darsor"; repo = "PeakRDL-rust"; tag = "v${version}"; - hash = "sha256-rcVM7ljFWlEXLxG7ASXE2iZ+WYazeMFE0sgTzkviOP0="; + hash = "sha256-YU2JZGC8AF3mhzwozItgqtWsrs4YEltZiP1rNkPfZ7M="; }; build-system = [ uv-build ]; From b32a3ccd5b9765ca8527d160600384f513d06c14 Mon Sep 17 00:00:00 2001 From: Sigmanificient Date: Sun, 15 Mar 2026 22:42:59 +0100 Subject: [PATCH 22/56] pynputfix: init at 1.8.2 --- .../python-modules/pynputfix/default.nix | 69 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 71 insertions(+) create mode 100644 pkgs/development/python-modules/pynputfix/default.nix diff --git a/pkgs/development/python-modules/pynputfix/default.nix b/pkgs/development/python-modules/pynputfix/default.nix new file mode 100644 index 000000000000..90fc331e5aa8 --- /dev/null +++ b/pkgs/development/python-modules/pynputfix/default.nix @@ -0,0 +1,69 @@ +{ + lib, + stdenv, + buildPythonPackage, + fetchFromGitHub, + gitUpdater, + + # build-system + setuptools, + setuptools-lint, + sphinx, + + # dependencies + xlib, + evdev, + six, + + # tests + unittestCheckHook, +}: + +buildPythonPackage { + pname = "pynputfix"; + version = "1.8.2"; + pyproject = true; + + src = fetchFromGitHub { + owner = "AuroraWright"; + repo = "pynputfix"; + tag = "1.8.2"; + hash = "sha256-SKw745hh0G2NoWgUUjShyjiG2NYPd4iJlWx7IeGpW/4="; + }; + + passthru.updateScript = gitUpdater { + rev-prefix = "v"; + }; + + postPatch = '' + substituteInPlace setup.py \ + --replace-fail "'sphinx >=1.3.1'," "" \ + --replace-fail "'twine >=4.0']" "]" + ''; + + nativeBuildInputs = [ + setuptools + setuptools-lint + sphinx + ]; + + propagatedBuildInputs = [ + six + ] + ++ lib.optionals stdenv.hostPlatform.isLinux [ + evdev + xlib + ]; + + doCheck = false; # requires running X server + + nativeCheckInputs = [ unittestCheckHook ]; + + meta = { + broken = stdenv.hostPlatform.isDarwin; + description = "Library to control and monitor input devices"; + homepage = "https://github.com/moses-palmer/pynput"; + license = lib.licenses.lgpl3; + maintainers = with lib.maintainers; [ sigmanificient ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index ef4b99013cf6..f35eef96a8ce 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -14360,6 +14360,8 @@ self: super: with self; { pynput = callPackage ../development/python-modules/pynput { }; + pynputfix = callPackage ../development/python-modules/pynputfix { }; + pynrrd = callPackage ../development/python-modules/pynrrd { }; pynslookup = callPackage ../development/python-modules/pynslookup { }; From 870085d1f7605d7ecf4b5304e27b866094c79ede Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 15 Mar 2026 22:15:38 +0000 Subject: [PATCH 23/56] copilot-language-server: 1.448.0 -> 1.453.0 --- pkgs/by-name/co/copilot-language-server/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/co/copilot-language-server/package.nix b/pkgs/by-name/co/copilot-language-server/package.nix index 604195389af5..6ee21ab29367 100644 --- a/pkgs/by-name/co/copilot-language-server/package.nix +++ b/pkgs/by-name/co/copilot-language-server/package.nix @@ -10,11 +10,11 @@ }: stdenvNoCC.mkDerivation (finalAttrs: { pname = "copilot-language-server"; - version = "1.448.0"; + version = "1.453.0"; src = fetchzip { url = "https://github.com/github/copilot-language-server-release/releases/download/${finalAttrs.version}/copilot-language-server-js-${finalAttrs.version}.zip"; - hash = "sha256-0baWiU6fwJFprJG05YpsXFWXj17ff920sL7hCGV83GI="; + hash = "sha256-TOzJhXCogARHgljy6DDG0AbsboAAwwReWEVVlAXzMss="; stripRoot = false; }; From 1fc562a3b73217ec642b6cc6a14356d64e8365d2 Mon Sep 17 00:00:00 2001 From: Gabriel Santos Date: Sun, 15 Mar 2026 19:30:20 -0300 Subject: [PATCH 24/56] maintainers: add gs-101 --- maintainers/maintainer-list.nix | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index bb37e0498980..3be50ebdfbef 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -10078,6 +10078,13 @@ githubId = 11212268; name = "gruve-p"; }; + gs-101 = { + email = "gabrielsantosdesouza@disroot.org"; + github = "gs-101"; + githubId = 172639817; + keys = [ { fingerprint = "D1D3 37F6 CB32 02DC B9BA 337B F9D8 EABC F57E ED58"; } ]; + name = "Gabriel Santos"; + }; gschwartz = { email = "gsch@pennmedicine.upenn.edu"; github = "GregorySchwartz"; From 2692ba53dd91e0a2cd0527205ffa54299a150545 Mon Sep 17 00:00:00 2001 From: Dvd-Znf Date: Sun, 15 Mar 2026 23:57:09 +0100 Subject: [PATCH 25/56] visual-paradigm-ce: 17.3.20260101 -> 18.0.20260303 --- pkgs/by-name/vi/visual-paradigm-ce/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/vi/visual-paradigm-ce/package.nix b/pkgs/by-name/vi/visual-paradigm-ce/package.nix index 3d06bf435ded..c69d660051e0 100644 --- a/pkgs/by-name/vi/visual-paradigm-ce/package.nix +++ b/pkgs/by-name/vi/visual-paradigm-ce/package.nix @@ -9,7 +9,7 @@ stdenv.mkDerivation (finalAttrs: { pname = "visual-paradigm-ce"; - version = "17.3.20260101"; + version = "18.0.20260303"; src = let @@ -21,7 +21,7 @@ stdenv.mkDerivation (finalAttrs: { url = "https://eu10-dl.visual-paradigm.com/visual-paradigm/vpce${majorMinor}/${suffix}/Visual_Paradigm_CE_${ builtins.replaceStrings [ "." ] [ "_" ] majorMinor }_${suffix}_Linux64_InstallFree.tar.gz"; - hash = "sha256-RAujr6tws3HTyoZc6/MTbc5HEqyX9XmSl4IPJNayjQA="; + hash = "sha256-n6cijv9ndliqcvcbIOnMB/mwIjkOzWe1AcJZB+HdHBg="; }; nativeBuildInputs = [ From bca3cad4ad7be73935b4d74e39f0eadf1dde8543 Mon Sep 17 00:00:00 2001 From: Sigmanificient Date: Tue, 20 Jan 2026 02:07:01 +0100 Subject: [PATCH 26/56] owocr: 1.7.5-unstable-2024-06-26 -> 1.22.8 --- pkgs/by-name/ow/owocr/package.nix | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/pkgs/by-name/ow/owocr/package.nix b/pkgs/by-name/ow/owocr/package.nix index 8071dccc5e44..8b57199c3ab5 100644 --- a/pkgs/by-name/ow/owocr/package.nix +++ b/pkgs/by-name/ow/owocr/package.nix @@ -3,17 +3,16 @@ python3Packages, fetchFromGitHub, }: - python3Packages.buildPythonApplication { pname = "owocr"; - version = "1.7.5-unstable-2024-06-26"; + version = "1.22.8"; pyproject = true; src = fetchFromGitHub { owner = "AuroraWright"; repo = "owocr"; - rev = "743c64aa16a760f87bf5ea1f54364d828eb3eddb"; # no tags - hash = "sha256-TXQwJRgRp7fZBN0r4XGVtlb+iOMRqEUf+LbfBG/vsr8="; + rev = "9b9c8b1b4f12a592877a66d727eb25a30462c177"; # no tags + hash = "sha256-N9XbuoUbb1qxp/dFacpuDErh01oWmKRdTon3OvLaMfc="; }; build-system = [ python3Packages.setuptools ]; @@ -41,6 +40,11 @@ python3Packages.buildPythonApplication { manga-ocr rapidocr requests # winRT OCR + python3Packages.pynputfix + curl-cffi + pygobject3 + dbus-python + pywayland ]; doCheck = false; # no tests From 813d15c9a5869273aaaeb62690fcebde26a9188b Mon Sep 17 00:00:00 2001 From: Sigmanificient Date: Sun, 15 Mar 2026 23:03:19 +0100 Subject: [PATCH 27/56] python3Packages.obsws-python: init at 5.5 --- .../python-modules/obsws-python/default.nix | 36 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 2 files changed, 38 insertions(+) create mode 100644 pkgs/development/python-modules/obsws-python/default.nix diff --git a/pkgs/development/python-modules/obsws-python/default.nix b/pkgs/development/python-modules/obsws-python/default.nix new file mode 100644 index 000000000000..f5beeab35a55 --- /dev/null +++ b/pkgs/development/python-modules/obsws-python/default.nix @@ -0,0 +1,36 @@ +{ + lib, + fetchFromGitHub, + buildPythonPackage, + hatchling, + tomli, + websocket-client, +}: +buildPythonPackage (finalAttrs: { + pname = "obsws-python"; + version = "5.5"; + pyproject = true; + + src = fetchFromGitHub { + owner = "aatikturk"; + repo = "obsws-python"; + rev = "f70583d7ca250c1f3a0df768d3cfd41663a6023b"; # no tags + hash = "sha256-krIiSmn/56Ao4fH6Y7JSQ11Euqt0tIq4JJjxqrt8MZc="; + }; + + build-system = [ hatchling ]; + + dependencies = [ + tomli + websocket-client + ]; + + doCheck = false; # attempts to connect to OBS + + meta = { + description = "Python SDK for OBS Studio WebSocket v5.0"; + homepage = "https://github.com/aatikturk/obsws-python"; + license = lib.licenses.gpl3Only; + maintainers = with lib.maintainers; [ sigmanificient ]; + }; +}) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index f35eef96a8ce..d1d597dc0282 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -11332,6 +11332,8 @@ self: super: with self; { obstore = callPackage ../development/python-modules/obstore { }; + obsws-python = callPackage ../development/python-modules/obsws-python { }; + oca-port = callPackage ../development/python-modules/oca-port { }; ochre = callPackage ../development/python-modules/ochre { }; From 4aa3945583345508737dbcce3dbf37def3263c83 Mon Sep 17 00:00:00 2001 From: Sigmanificient Date: Sun, 15 Mar 2026 23:04:28 +0100 Subject: [PATCH 28/56] owocr: 1.22.8 -> 1.26.3 --- pkgs/by-name/ow/owocr/package.nix | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/pkgs/by-name/ow/owocr/package.nix b/pkgs/by-name/ow/owocr/package.nix index 8b57199c3ab5..c05a5605c9ca 100644 --- a/pkgs/by-name/ow/owocr/package.nix +++ b/pkgs/by-name/ow/owocr/package.nix @@ -3,18 +3,26 @@ python3Packages, fetchFromGitHub, }: -python3Packages.buildPythonApplication { +python3Packages.buildPythonApplication (finalAttrs: { pname = "owocr"; - version = "1.22.8"; + version = "1.26.3"; pyproject = true; src = fetchFromGitHub { owner = "AuroraWright"; repo = "owocr"; - rev = "9b9c8b1b4f12a592877a66d727eb25a30462c177"; # no tags - hash = "sha256-N9XbuoUbb1qxp/dFacpuDErh01oWmKRdTon3OvLaMfc="; + tag = finalAttrs.version; + hash = "sha256-/eee0uOWZgjHKhN3Ie75qxXqlSH1Fm3ipDYkvyIK5LM="; }; + # we use pystray directly to avoid making a new package + # that only carries a single patch for windows double click support. + # pythonRelaxDeps was not successful in patching + postPatch = '' + substituteInPlace pyproject.toml \ + --replace-fail "pystrayfix>=0.19.8" "pystray" + ''; + build-system = [ python3Packages.setuptools ]; dependencies = with python3Packages; [ @@ -40,6 +48,8 @@ python3Packages.buildPythonApplication { manga-ocr rapidocr requests # winRT OCR + python3Packages.obsws-python + python3Packages.pystray python3Packages.pynputfix curl-cffi pygobject3 @@ -55,4 +65,4 @@ python3Packages.buildPythonApplication { license = lib.licenses.asl20; maintainers = with lib.maintainers; [ sigmanificient ]; }; -} +}) From 7082a72f59ba963832e8b2b070c12c485c537c15 Mon Sep 17 00:00:00 2001 From: Gabriel Santos Date: Sun, 15 Mar 2026 19:31:05 -0300 Subject: [PATCH 29/56] alcarin-tengwar: init at 0.83 --- pkgs/by-name/al/alcarin-tengwar/package.nix | 28 +++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 pkgs/by-name/al/alcarin-tengwar/package.nix diff --git a/pkgs/by-name/al/alcarin-tengwar/package.nix b/pkgs/by-name/al/alcarin-tengwar/package.nix new file mode 100644 index 000000000000..d792aaf678a4 --- /dev/null +++ b/pkgs/by-name/al/alcarin-tengwar/package.nix @@ -0,0 +1,28 @@ +{ + lib, + stdenvNoCC, + fetchFromGitHub, + installFonts, +}: + +stdenvNoCC.mkDerivation (finalAttrs: { + pname = "alcarin-tengwar"; + version = "0.83"; + + src = fetchFromGitHub { + owner = "Tosche"; + repo = "Alcarin-Tengwar"; + rev = "a4530d430ea01871b0b0a54d1de218d2ffde0ea5"; + hash = "sha256-W1PJ2ABjtGUhWp6XBUq6Zox7uG81tMEs13GidfwgD6Q="; + }; + + nativeBuildInputs = [ installFonts ]; + + meta = { + description = "Typeface designed to provide Tengwar symbols"; + homepage = "https://github.com/Tosche/Alcarin-Tengwar"; + license = lib.licenses.ofl; + maintainers = with lib.maintainers; [ gs-101 ]; + platforms = lib.platforms.all; + }; +}) From b3479f562b06698a85e4ede4467b6f3954e8ba83 Mon Sep 17 00:00:00 2001 From: Dvd-Znf Date: Mon, 16 Mar 2026 01:27:14 +0100 Subject: [PATCH 30/56] visual-paradigm-ce: added passthru.updateScript --- pkgs/by-name/vi/visual-paradigm-ce/package.nix | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/pkgs/by-name/vi/visual-paradigm-ce/package.nix b/pkgs/by-name/vi/visual-paradigm-ce/package.nix index c69d660051e0..04e0d38884b6 100644 --- a/pkgs/by-name/vi/visual-paradigm-ce/package.nix +++ b/pkgs/by-name/vi/visual-paradigm-ce/package.nix @@ -5,6 +5,7 @@ copyDesktopItems, makeDesktopItem, openjdk, + writeScript, }: stdenv.mkDerivation (finalAttrs: { @@ -24,6 +25,17 @@ stdenv.mkDerivation (finalAttrs: { hash = "sha256-n6cijv9ndliqcvcbIOnMB/mwIjkOzWe1AcJZB+HdHBg="; }; + passthru.updateScript = writeScript "update-visual-paradigm-ce" '' + #!/usr/bin/env nix-shell + #!nix-shell -i bash -p curl gnused common-updater-scripts + + set -eu -o pipefail + + version = "$(curl -Ls -o /dev/null -w %{url_effective} https://www.visual-paradigm.com/downloads/vpce/checksum.html | sed -E 's#.*/vpce([0-9]+\.[0-9]+)/([0-9]+)/.*#\1.\2#')" + + update-source-version visual-paradigm-ce "$version" + ''; + nativeBuildInputs = [ copyDesktopItems ]; From 57eaa21b348293a1a1cff6a5597528ffa9091d57 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 16 Mar 2026 00:28:51 +0000 Subject: [PATCH 31/56] runn: 1.3.0 -> 1.6.0 --- pkgs/by-name/ru/runn/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ru/runn/package.nix b/pkgs/by-name/ru/runn/package.nix index ddba8128ee62..9576971be311 100644 --- a/pkgs/by-name/ru/runn/package.nix +++ b/pkgs/by-name/ru/runn/package.nix @@ -7,16 +7,16 @@ buildGoModule (finalAttrs: { pname = "runn"; - version = "1.3.0"; + version = "1.6.0"; src = fetchFromGitHub { owner = "k1LoW"; repo = "runn"; tag = "v${finalAttrs.version}"; - hash = "sha256-hDPXYGKDTvVFyMU08OeIxp70w9gimgY9qp9j38Ea5bc="; + hash = "sha256-zxlPm27RwSXBSq/k7gxY/d4oozU/bpD7AIKZHzGxwh8="; }; - vendorHash = "sha256-gLemeaNAmFVm9Ld2b3QTjdlKMye0TpKVSuQHj0ToMN4="; + vendorHash = "sha256-RHJkMKCz39M4LEEyicO4SQDL7thcCr93Cj2NrkrkM0c="; subPackages = [ "cmd/runn" ]; From 39c57f5a0c7c4e5d0fd3acc693c96c8289991cf9 Mon Sep 17 00:00:00 2001 From: Ryan Omasta Date: Mon, 13 Oct 2025 05:13:11 -0600 Subject: [PATCH 32/56] ddhx: init at 0.9.1 --- pkgs/by-name/dd/ddhx/dub-lock.json | 3 +++ pkgs/by-name/dd/ddhx/package.nix | 35 ++++++++++++++++++++++++++++++ 2 files changed, 38 insertions(+) create mode 100644 pkgs/by-name/dd/ddhx/dub-lock.json create mode 100644 pkgs/by-name/dd/ddhx/package.nix diff --git a/pkgs/by-name/dd/ddhx/dub-lock.json b/pkgs/by-name/dd/ddhx/dub-lock.json new file mode 100644 index 000000000000..18a1e415e562 --- /dev/null +++ b/pkgs/by-name/dd/ddhx/dub-lock.json @@ -0,0 +1,3 @@ +{ + "dependencies": {} +} diff --git a/pkgs/by-name/dd/ddhx/package.nix b/pkgs/by-name/dd/ddhx/package.nix new file mode 100644 index 000000000000..fbc156530902 --- /dev/null +++ b/pkgs/by-name/dd/ddhx/package.nix @@ -0,0 +1,35 @@ +{ + lib, + buildDubPackage, + fetchFromGitHub, +}: +buildDubPackage (finalAttrs: { + pname = "ddhx"; + version = "0.9.1"; + + src = fetchFromGitHub { + owner = "dd86k"; + repo = "ddhx"; + tag = "v${finalAttrs.version}"; + hash = "sha256-AFhxrYncqVnHfro4sUgCT1ZBeL3CUwcwhnGXVuFQ9ak="; + }; + + dubLock = ./dub-lock.json; + + installPhase = '' + runHook preInstall + install -Dm755 ddhx -t $out/bin + runHook postInstall + ''; + + doCheck = true; + + meta = { + description = "Console text-mode hex editor, inspired by GNU nano and vim"; + homepage = "https://github.com/dd86k/ddhx"; + changelog = "https://github.com/dd86k/ddhx/releases/tag/v${finalAttrs.version}"; + license = lib.licenses.mit; + maintainers = [ lib.maintainers.ryand56 ]; + platforms = lib.platforms.unix; + }; +}) From 49c887ed164d54439217c5bd5068155061760fff Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 16 Mar 2026 02:43:17 +0000 Subject: [PATCH 33/56] schemesh: 0.9.3 -> 1.0.0 --- pkgs/by-name/sc/schemesh/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/sc/schemesh/package.nix b/pkgs/by-name/sc/schemesh/package.nix index 783033bea528..6d7b5f8344ba 100644 --- a/pkgs/by-name/sc/schemesh/package.nix +++ b/pkgs/by-name/sc/schemesh/package.nix @@ -11,13 +11,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "schemesh"; - version = "0.9.3"; + version = "1.0.0"; src = fetchFromGitHub { owner = "cosmos72"; repo = "schemesh"; tag = "v${finalAttrs.version}"; - hash = "sha256-OhQpXFg3eroVpw4zkENM4zwqHqGNolstlq9oLhQ2cbY="; + hash = "sha256-Tt3pxzti/Vv5JiP0kiplv6gOPiFU75tKoKyvpEPPztw="; }; buildInputs = [ From 74f6c2b7072f6e599869453959e21ade3bebf887 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 16 Mar 2026 03:36:13 +0000 Subject: [PATCH 34/56] tombi: 0.9.2 -> 0.9.6 --- pkgs/by-name/to/tombi/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/to/tombi/package.nix b/pkgs/by-name/to/tombi/package.nix index 55ba0f243555..39ed70a74b5c 100644 --- a/pkgs/by-name/to/tombi/package.nix +++ b/pkgs/by-name/to/tombi/package.nix @@ -9,19 +9,19 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "tombi"; - version = "0.9.2"; + version = "0.9.6"; src = fetchFromGitHub { owner = "tombi-toml"; repo = "tombi"; tag = "v${finalAttrs.version}"; - hash = "sha256-K3kdIGOUADliz0X2UMwFpzOnQ9/q0HnmHCz45A2Zi8w="; + hash = "sha256-sqzdZqs8qMCA3VSXPsBTVZ4fgZUogVl7mQKnbateV/Y="; }; # Tests relies on the presence of network doCheck = false; cargoBuildFlags = [ "--package tombi-cli" ]; - cargoHash = "sha256-+MKyDJIbPyfnQPJV3pM+USdMrxIgloTGbSwpi1R+eTg="; + cargoHash = "sha256-bW7VfL/3XIGVhQOPNDXURsolGG3gBHAsTEC7FO2P0bI="; postPatch = '' substituteInPlace Cargo.toml \ From cadea95f7534c83b863c5a71cbe1cba7f8e1a9f8 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 16 Mar 2026 04:06:14 +0000 Subject: [PATCH 35/56] crush: 0.47.2 -> 0.49.0 --- pkgs/by-name/cr/crush/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/cr/crush/package.nix b/pkgs/by-name/cr/crush/package.nix index 1ffea7aff27f..0f6156f36741 100644 --- a/pkgs/by-name/cr/crush/package.nix +++ b/pkgs/by-name/cr/crush/package.nix @@ -9,16 +9,16 @@ buildGo126Module (finalAttrs: { pname = "crush"; - version = "0.47.2"; + version = "0.49.0"; src = fetchFromGitHub { owner = "charmbracelet"; repo = "crush"; tag = "v${finalAttrs.version}"; - hash = "sha256-Lmp2DYrlzxVnll9x1jcnw/QgYjhA9RHpciQZ7mAUK5Y="; + hash = "sha256-/1Z5S28yJCxjpQwM5hLTmgKU7OxAcxjmBROktQSstTE="; }; - vendorHash = "sha256-pBZdmQRnPfvhz66+DGQx/ZMMiYeKBfWThybw4RXsjno="; + vendorHash = "sha256-xakV5Alm3EwDk5VkSINxJM1C3uF492QzA+BQkqZ6qB4="; ldflags = [ "-s" From 4951512d4c84b7a223a498ea362808249f2db943 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 15 Mar 2026 20:57:58 -0700 Subject: [PATCH 36/56] inventree: drop The package neither follows our guidelines nor satifies our quality standards. It also uses Python 3.12 which we are phasing out in Nixpkgs. --- nixos/modules/module-list.nix | 1 - nixos/modules/services/misc/inventree.nix | 446 ---------------------- nixos/tests/all-tests.nix | 1 - nixos/tests/inventree.nix | 33 -- pkgs/by-name/in/inventree/package.nix | 291 -------------- 5 files changed, 772 deletions(-) delete mode 100644 nixos/modules/services/misc/inventree.nix delete mode 100644 nixos/tests/inventree.nix delete mode 100644 pkgs/by-name/in/inventree/package.nix diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index fb2e7e186093..9201540632cb 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -880,7 +880,6 @@ ./services/misc/ihaskell.nix ./services/misc/iio-niri.nix ./services/misc/input-remapper.nix - ./services/misc/inventree.nix ./services/misc/invidious-router.nix ./services/misc/irkerd.nix ./services/misc/jackett.nix diff --git a/nixos/modules/services/misc/inventree.nix b/nixos/modules/services/misc/inventree.nix deleted file mode 100644 index 15476e20b167..000000000000 --- a/nixos/modules/services/misc/inventree.nix +++ /dev/null @@ -1,446 +0,0 @@ -{ - config, - pkgs, - lib, - ... -}: -let - cfg = config.services.inventree; - pkg = cfg.package; - - mysqlLocal = cfg.database.createLocally && cfg.database.dbtype == "mysql"; - pgsqlLocal = cfg.database.createLocally && cfg.database.dbtype == "postgresql"; - - manage = pkgs.writeShellScriptBin "inventree-manage" '' - set -a - ${lib.toShellVars cfg.settings} - ${lib.optionalString ( - cfg.database.passwordFile != null - ) ''INVENTREE_DB_PASSWORD="$(<"${cfg.database.passwordFile}")"''} - set +a - - pushd "${cfg.dataDir}" - sudo=exec - if [[ "$USER" != ${cfg.user} ]]; then - ${ - if config.security.sudo.enable then - "sudo='exec ${config.security.wrapperDir}/sudo -u ${cfg.user} -E'" - else - ">&2 echo 'Aborting, inventree-manage must be run as user `${cfg.user}`!'; exit 2" - } - fi - $sudo ${cfg.package}/bin/inventree "$@" - popd - ''; - -in -{ - meta.buildDocsInSandbox = false; - meta.maintainers = with lib.maintainers; [ - kurogeek - ]; - - options.services.inventree = with lib; { - enable = lib.mkEnableOption "inventree"; - - dataDir = mkOption { - type = types.str; - default = "/var/lib/inventree"; - description = "Inventree's data storage path. Will be `/var/lib/inventree` by default."; - }; - - package = mkOption { - type = types.package; - description = "Which package to use for the InvenTree instance."; - default = pkgs.inventree; - defaultText = literalExpression "pkgs.inventree"; - }; - - adminPasswordFile = mkOption { - type = types.nullOr lib.types.path; - default = null; - example = "/run/keys/inventree-password"; - description = "Path to a file containing admin password"; - }; - - secretKeyFile = mkOption { - type = types.path; - default = "${cfg.dataDir}/secret_key.txt"; - defaultText = lib.literalExpression ''"''${cfg.dataDir}/secret_key.txt"''; - example = "/run/keys/inventree-secret-key"; - description = '' - Path to a file containing the secret key - ''; - }; - - database = { - dbtype = mkOption { - type = lib.types.nullOr ( - lib.types.enum [ - "postgresql" - "mysql" - ] - ); - default = "postgresql"; - description = "Database type."; - }; - dbhost = lib.mkOption { - type = lib.types.nullOr lib.types.str; - default = - if pgsqlLocal then - "/run/postgresql" - else if mysqlLocal then - "/run/mysqld/mysqld.sock" - else - "localhost"; - defaultText = "localhost"; - example = "localhost"; - description = '' - Database host or socket path. - If [](#opt-services.inventree.database.createLocally) is true and - [](#opt-services.inventree.database.dbtype) is either `postgresql` or `mysql`, - defaults to the correct Unix socket instead. - ''; - }; - dbport = mkOption { - type = types.port; - default = 5432; - description = "Database host port."; - }; - dbname = mkOption { - type = types.str; - default = "inventree"; - description = "Database name."; - }; - dbuser = mkOption { - type = types.str; - default = "inventree"; - description = "Database username."; - }; - passwordFile = mkOption { - type = with types; nullOr path; - default = null; - example = "/run/keys/inventree-dbpassword"; - description = '' - A file containing the password corresponding to - . - ''; - }; - createLocally = mkOption { - type = types.bool; - default = true; - description = "Create the database and database user locally."; - }; - }; - - domain = mkOption { - type = types.str; - default = "localhost"; - example = "inventree.example.com"; - description = '' - The INVENTREE_SITE_URL option defines the base URL for the - InvenTree server. This is a critical setting, and it is required - for correct operation of the server. If not specified, the - server will attempt to determine the site URL automatically - - but this may not always be correct! - - The site URL is the URL that users will use to access the - InvenTree server. For example, if the server is accessible at - `https://inventree.example.com`, the site URL should be set to - `https://inventree.example.com`. Note that this is not - necessarily the same as the internal URL that the server is - running on - the internal URL will depend entirely on your - server configuration and may be obscured by a reverse proxy or - other such setup. - ''; - }; - - user = mkOption { - type = types.str; - default = "inventree"; - description = "User under which InvenTree runs."; - }; - - group = mkOption { - type = types.str; - default = "inventree"; - description = "Group under which InvenTree runs."; - }; - - settings = mkOption { - type = - with lib.types; - attrsOf ( - nullOr (oneOf [ - path - str - ]) - ); - default = { }; - description = '' - InvenTree config options. - - See [the documentation](https://docs.inventree.org/en/stable/start/config/) for available options. - ''; - example = { - INVENTREE_CACHE_ENABLED = true; - INVENTREE_CACHE_HOST = "localhost"; - - INVENTREE_EMAIL_HOST = "smtp.example.com"; - INVENTREE_EMAIL_PORT = 25; - }; - }; - - }; - - config = lib.mkIf cfg.enable ( - lib.mkMerge [ - { - services.inventree.settings = { - INVENTREE_DB_ENGINE = cfg.database.dbtype; - INVENTREE_DB_NAME = cfg.database.dbname; - INVENTREE_DB_HOST = cfg.database.dbhost; - INVENTREE_DB_USER = cfg.database.dbuser; - INVENTREE_DB_PORT = toString cfg.database.dbport; - - INVENTREE_CONFIG_FILE = lib.mkDefault "${cfg.dataDir}/config/config.yaml"; - INVENTREE_OIDC_PRIVATE_KEY_FILE = lib.mkDefault "${cfg.dataDir}/config/oidc_private_key.txt"; - INVENTREE_STATIC_ROOT = lib.mkDefault "${cfg.dataDir}/data/static_root"; - INVENTREE_MEDIA_ROOT = lib.mkDefault "${cfg.dataDir}/data/media"; - INVENTREE_BACKUP_DIR = lib.mkDefault "${cfg.dataDir}/data/backups"; - INVENTREE_SITE_URL = lib.mkDefault "http://${cfg.domain}"; - INVENTREE_PLUGIN_FILE = lib.mkDefault "${cfg.dataDir}/data/plugins/plugins.txt"; - INVENTREE_PLUGIN_DIR = lib.mkDefault "${cfg.dataDir}/data/plugins"; - INVENTREE_ADMIN_PASSWORD_FILE = lib.mkDefault cfg.adminPasswordFile; - INVENTREE_SECRET_KEY_FILE = lib.mkDefault cfg.secretKeyFile; - INVENTREE_AUTO_UPDATE = lib.mkDefault "false"; - }; - environment.systemPackages = [ manage ]; - systemd.tmpfiles.rules = ( - map (dir: "d ${dir} 0755 inventree inventree") [ - "${cfg.dataDir}" - "${cfg.dataDir}/config" - "${cfg.dataDir}/data" - "${cfg.dataDir}/data/static_root" - "${cfg.dataDir}/data/media" - "${cfg.dataDir}/data/backups" - "${cfg.dataDir}/data/plugins" - ] - ); - - services.postgresql = lib.mkIf pgsqlLocal { - enable = true; - ensureDatabases = [ cfg.database.dbname ]; - ensureUsers = [ - { - name = cfg.database.dbuser; - ensureDBOwnership = true; - } - ]; - }; - - services.mysql = lib.mkIf mysqlLocal { - enable = true; - package = lib.mkDefault pkgs.mariadb; - ensureDatabases = [ cfg.database.dbname ]; - ensureUsers = [ - { - name = cfg.database.dbuser; - ensurePermissions = { - "${cfg.database.dbname}.*" = "ALL PRIVILEGES"; - }; - } - ]; - }; - - services.nginx.enable = true; - services.nginx.virtualHosts.${cfg.domain} = { - locations = - let - unixPath = config.systemd.sockets.inventree-server.socketConfig.ListenStream; - in - { - "/" = { - extraConfig = '' - proxy_set_header Host $host; - proxy_set_header X-Forwarded-By $server_addr:$server_port; - proxy_set_header X-Forwarded-For $remote_addr; - proxy_set_header X-Forwarded-Proto $scheme; - proxy_set_header X-Real-IP $remote_addr; - proxy_set_header CLIENT_IP $remote_addr; - - proxy_pass_request_headers on; - - proxy_redirect off; - - client_max_body_size 100M; - - proxy_buffering off; - proxy_request_buffering off; - ''; - proxyPass = "http://unix:${unixPath}"; - }; - "/auth" = { - extraConfig = '' - internal; - proxy_pass_request_body off; - proxy_set_header Content-Length ""; - proxy_set_header X-Original-URI $request_uri; - ''; - proxyPass = "http://unix:${unixPath}:/auth/"; - }; - "/static/" = { - alias = "${cfg.settings.INVENTREE_STATIC_ROOT}/"; - extraConfig = '' - autoindex on; - - # Caching settings - expires 30d; - add_header Pragma public; - add_header Cache-Control "public"; - ''; - }; - "/media/" = { - alias = "${cfg.settings.INVENTREE_MEDIA_ROOT}/"; - extraConfig = '' - auth_request /auth; - add_header Content-disposition "attachment"; - ''; - }; - }; - }; - - systemd.services.inventree-setup = { - description = "Inventree setup"; - wantedBy = [ "inventree.target" ]; - partOf = [ "inventree.target" ]; - after = lib.optional mysqlLocal "mysql.service" ++ lib.optional pgsqlLocal "postgresql.target"; - requires = lib.optional mysqlLocal "mysql.service" ++ lib.optional pgsqlLocal "postgresql.target"; - before = [ - "inventree-static.service" - "inventree-server.service" - "inventree-qcluster.service" - ]; - serviceConfig = { - Type = "oneshot"; - User = cfg.user; - Group = cfg.group; - RemainAfterExit = true; - PrivateTmp = true; - } - // lib.optionalAttrs (cfg.database.passwordFile != null) { - LoadCredential = "db_password:${cfg.database.passwordFile}"; - }; - environment = cfg.settings; - script = '' - set -euo pipefail - umask u=rwx,g=,o= - - ${ - lib.optionalString (cfg.database.passwordFile != null) '' - INVENTREE_DB_PASSWORD=$(<"$CREDENTIALS_DIRECTORY/db_password") - '' - } \ - exec ${pkg}/bin/inventree migrate - ''; - }; - - systemd.services.inventree-static = { - description = "Inventree static migration"; - wantedBy = [ "inventree.target" ]; - partOf = [ "inventree.target" ]; - before = [ "inventree-server.service" ]; - environment = cfg.settings; - serviceConfig = { - User = cfg.user; - Group = cfg.group; - StateDirectory = "inventree"; - PrivateTmp = true; - } - // lib.optionalAttrs (cfg.database.passwordFile != null) { - LoadCredential = "db_password:${cfg.database.passwordFile}"; - }; - script = '' - ${ - lib.optionalString (cfg.database.passwordFile != null) '' - INVENTREE_DB_PASSWORD=$(<"$CREDENTIALS_DIRECTORY/db_password") - '' - } \ - exec ${pkg}/bin/inventree collectstatic --no-input - ''; - }; - - systemd.services.inventree-server = { - description = "Inventree Gunicorn service"; - requiredBy = [ "inventree.target" ]; - partOf = [ "inventree.target" ]; - environment = cfg.settings; - serviceConfig = { - User = cfg.user; - Group = cfg.group; - StateDirectory = "inventree"; - PrivateTmp = true; - } - // lib.optionalAttrs (cfg.database.passwordFile != null) { - LoadCredential = "db_password:${cfg.database.passwordFile}"; - }; - script = '' - ${ - lib.optionalString (cfg.database.passwordFile != null) '' - INVENTREE_DB_PASSWORD=$(<"$CREDENTIALS_DIRECTORY/db_password") - '' - } \ - exec ${pkg}/bin/gunicorn InvenTree.wsgi - ''; - }; - - systemd.sockets.inventree-server = { - wantedBy = [ "sockets.target" ]; - partOf = [ "inventree.target" ]; - socketConfig.ListenStream = "/run/inventree/gunicorn.socket"; - }; - - systemd.services.inventree-qcluster = { - description = "InvenTree qcluster server"; - requiredBy = [ "inventree.target" ]; - wantedBy = [ "inventree.target" ]; - partOf = [ "inventree.target" ]; - environment = cfg.settings; - serviceConfig = { - User = cfg.user; - Group = cfg.group; - StateDirectory = "inventree"; - PrivateTmp = true; - } - // lib.optionalAttrs (cfg.database.passwordFile != null) { - LoadCredential = "db_password:${cfg.database.passwordFile}"; - }; - script = '' - ${ - lib.optionalString (cfg.database.passwordFile != null) '' - INVENTREE_DB_PASSWORD=$(<"$CREDENTIALS_DIRECTORY/db_password") - '' - } \ - exec ${pkg}/bin/inventree qcluster - ''; - }; - - systemd.targets.inventree = { - description = "Target for all InvenTree services"; - wantedBy = [ "multi-user.target" ]; - wants = [ "network-online.target" ]; - after = [ "network-online.target" ]; - }; - - users = lib.optionalAttrs (cfg.user == cfg.user) { - users.${cfg.user} = { - group = cfg.group; - isSystemUser = true; - home = cfg.dataDir; - }; - groups.${cfg.group}.members = [ cfg.user ]; - }; - } - ] - ); -} diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index d7863112185c..cd7d3b61325c 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -797,7 +797,6 @@ in installer = handleTest ./installer.nix { }; installer-systemd-stage-1 = handleTest ./installer-systemd-stage-1.nix { }; intune = runTest ./intune.nix; - inventree = runTest ./inventree.nix; invidious = runTest ./invidious.nix; invoiceplane = runTest ./invoiceplane.nix; iodine = runTest ./iodine.nix; diff --git a/nixos/tests/inventree.nix b/nixos/tests/inventree.nix deleted file mode 100644 index 34fe8730ae67..000000000000 --- a/nixos/tests/inventree.nix +++ /dev/null @@ -1,33 +0,0 @@ -{ lib, ... }: -{ - name = "inventree"; - meta.maintainers = with lib.maintainers; [ - kurogeek - ]; - - nodes = { - psqlTest = { - services.inventree = { - enable = true; - }; - }; - mysqlTest = { - services.inventree = { - enable = true; - database.dbtype = "mysql"; - }; - }; - }; - testScript = '' - start_all() - psqlTest.wait_for_unit("inventree.target") - psqlTest.wait_for_unit("inventree-server.service") - psqlTest.wait_for_open_unix_socket("/run/inventree/gunicorn.socket") - psqlTest.wait_until_succeeds("curl -sf http://localhost/web") - - mysqlTest.wait_for_unit("inventree.target") - mysqlTest.wait_for_unit("inventree-server.service") - mysqlTest.wait_for_open_unix_socket("/run/inventree/gunicorn.socket") - mysqlTest.wait_until_succeeds("curl -sf http://localhost/web") - ''; -} diff --git a/pkgs/by-name/in/inventree/package.nix b/pkgs/by-name/in/inventree/package.nix deleted file mode 100644 index 81b09762966a..000000000000 --- a/pkgs/by-name/in/inventree/package.nix +++ /dev/null @@ -1,291 +0,0 @@ -{ - fetchFromGitHub, - fetchYarnDeps, - lib, - nodejs, - python312, - stdenv, - yarnBuildHook, - yarnConfigHook, - yarnInstallHook, -}: -let - python3 = python312.override { - self = python3; - packageOverrides = self: super: { - django = super.django_4; - }; - }; - - version = "1.1.10"; - src = fetchFromGitHub { - owner = "inventree"; - repo = "inventree"; - tag = "${version}"; - hash = "sha256-TPB/3pFIU+ui4c+CbqIKTyAfJ/Xepm/RIhZeYhTrgI4="; - }; - - frontend = - let - frontendSource = src + "/src/frontend"; - in - stdenv.mkDerivation (finalAttrs: { - - pname = "inventree-frontend"; - inherit version; - - src = frontendSource; - - yarnOfflineCache = fetchYarnDeps { - yarnLock = finalAttrs.src + "/yarn.lock"; - hash = "sha256-Ijbkx+INZgsvMhkzo8h/FUY75W3UHnKAdUjQRD8kJZw="; - }; - - nativeBuildInputs = [ - nodejs - yarnConfigHook - yarnBuildHook - yarnInstallHook - ]; - - buildPhase = '' - mkdir -p $out - - export PATH=$PATH:$TMP/frontend/node_modules/.bin - substituteInPlace $TMP/frontend/vite.config.ts --replace-warn "../../src/backend/InvenTree/web/static/web" "$out/static/web" - - npm run extract - npm run compile - npm run build - ''; - }); -in -python3.pkgs.buildPythonApplication rec { - pname = "inventree"; - pyproject = true; - inherit version src; - - dependencies = - with python3.pkgs; - [ - django - dj-rest-auth - django-allauth - django-cleanup - django-cors-headers - django-crispy-forms - django-dbbackup - django-error-report-2 - django-filter - django-flags - django-formtools - django-ical - django-import-export - django-maintenance-mode - django-markdownify - django-money - django-mptt - django-mailbox - django-anymail - django-q2 - django-redis - django-sesame - django-sql-utils - django-sslserver - django-stdimage - django-storages - django-structlog - django-taggit - django-oauth-toolkit - django-otp - django-user-sessions - django-weasyprint - standard-imghdr - django-xforwardedfor-middleware - djangorestframework-simplejwt - djangorestframework - drf-spectacular - - bleach - cryptography - distutils - dulwich - feedparser - gunicorn - jinja2 - pdf2image - pillow - pint - python-barcode - python-dotenv - qrcode - pytz - pyyaml - rapidfuzz - sentry-sdk - structlog - tablib - tinycss2 - weasyprint - whitenoise - pypdf - ppf-datamatrix - psycopg2 - mysqlclient - requests-mock - - opentelemetry-api - opentelemetry-sdk - opentelemetry-exporter-otlp - opentelemetry-instrumentation-django - opentelemetry-instrumentation-requests - opentelemetry-instrumentation-redis - opentelemetry-instrumentation-sqlite3 - opentelemetry-instrumentation-system-metrics - opentelemetry-instrumentation-wsgi - ] - ++ tablib.optional-dependencies.all - ++ tablib.optional-dependencies.xls - ++ tablib.optional-dependencies.xlsx - ++ djangorestframework-simplejwt.optional-dependencies.crypto - ++ django-anymail.optional-dependencies.amazon-ses - ++ django-allauth.optional-dependencies.socialaccount - ++ django-allauth.optional-dependencies.saml - ++ django-allauth.optional-dependencies.openid - ++ django-allauth.optional-dependencies.mfa; - - build-system = [ python3.pkgs.setuptools ]; - - prePatch = - let - skippedCheckFunctions = [ - "test_task_check_for_updates" - "test_download_image" - "test_commit_info" - "test_rates" - "test_download_build_orders" - "test_valid_url" - "test_refresh_endpoint" - "test_download_csv" - "test_download_line_items" - "test_export" - "test_download_xlsx" - "test_download_csv" - "test_export" - "test_part_label_translation" - "test_part_download" - "test_date_filters" - "test_bom_export" - "test_hash" - "test_date" - "test_api_call" - "test_function_errors" - "test_stocktake_exporter" - "test_return" - "test_plugin_install" - "test_full_process" - "test_package_loading" - "test_export" - "test_users_exist" - "test_import_part" - "test_model_names" - ]; - skippedFuncScripts = builtins.map (funcName: '' - grep -rlZ ${funcName} . | while IFS= read -r -d "" file; do - substituteInPlace "$file" --replace-fail "${funcName}" "skip_${funcName}" - done - '') skippedCheckFunctions; - in - '' - ${lib.concatStringsSep "\n" skippedFuncScripts} - ''; - - installPhase = - let - pythonPath = python3.pkgs.makePythonPath dependencies; - in - '' - runHook preInstall - - # Don't need to bother with a non-maintained library from ages ago - substituteInPlace src/backend/InvenTree/InvenTree/settings.py --replace-fail "django_slowtests.testrunner.DiscoverSlowestTestsRunner" "django.test.runner.DiscoverRunner" - - mkdir -p $out/lib/${pname}/src/backend/InvenTree/web/ - cp -r src $out/lib/${pname} - ln -s ${frontend}/static $out/lib/${pname}/src/backend/InvenTree/web - # cp -r ${frontend}/static $out/lib/${pname}/src/backend/InvenTree/web - - chmod +x $out/lib/${pname}/src/backend/InvenTree/manage.py - - makeWrapper $out/lib/${pname}/src/backend/InvenTree/manage.py $out/bin/${pname} \ - --prefix PYTHONPATH : "${pythonPath}:$out/lib/${pname}/src/backend/InvenTree" - - makeWrapper ${lib.getExe python3.pkgs.gunicorn} $out/bin/gunicorn \ - --prefix PYTHONPATH : "${pythonPath}:$out/${python3.sitePackages}":"${pythonPath}:$out/lib/${pname}/src/backend/InvenTree" - - runHook postInstall - ''; - doCheck = true; - env = { - DJANGO_SETTINGS_MODULE = "InvenTree.settings"; - }; - - checkPhase = '' - runHook preCheck - - tmpDir=$(mktemp -d) - mkdir -p $tmpDir/media - mkdir -p $tmpDir/.cache/fontconfig - export HOME=$tmpDir - export INVENTREE_STATIC_ROOT=$tmpDir - export INVENTREE_MEDIA_ROOT=$tmpDir/media - export INVENTREE_BACKUP_DIR=$tmpDir - export INVENTREE_DB_ENGINE=django.db.backends.sqlite3 - export INVENTREE_DB_NAME=inventree.db - export INVENTREE_SITE_URL="http://localhost:8000" - - export INVENTREE_PLUGINS_ENABLED=true - export INVENTREE_PLUGIN_TESTING=true - export INVENTREE_PLUGIN_TESTING_SETUP=true - - pushd src/backend/InvenTree - ${python3.interpreter} ./manage.py check - ${python3.interpreter} ./manage.py migrate - - ${python3.interpreter} ./manage.py test --failfast - popd - - runHook postCheck - ''; - - nativeCheckInputs = with python3.pkgs; [ - django-test-migrations - pytest-django - pytest-env - pytestCheckHook - invoke - coverage - pytest-cov - pdfminer-six - ]; - passthru = - let - pythonPath = python3.pkgs.makePythonPath dependencies; - in - { - inherit frontend; - pythonPath = pythonPath; - }; - - meta = { - description = "Open Source Inventory Management System"; - homepage = "https://inventree.org/"; - changelog = "https://github.com/paperless-ngx/paperless-ngx/releases/tag/${src.tag}"; - license = lib.licenses.mit; - platforms = lib.platforms.linux; - mainProgram = "inventree"; - maintainers = with lib.maintainers; [ - kurogeek - ]; - }; -} From 760db6bcb880aa2ab7b12b3eeb478e410452c7e6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 15 Mar 2026 21:01:13 -0700 Subject: [PATCH 37/56] python3Packages.django-dbbackup: drop --- .../django-dbbackup/default.nix | 80 ------------------- pkgs/top-level/python-packages.nix | 2 - 2 files changed, 82 deletions(-) delete mode 100644 pkgs/development/python-modules/django-dbbackup/default.nix diff --git a/pkgs/development/python-modules/django-dbbackup/default.nix b/pkgs/development/python-modules/django-dbbackup/default.nix deleted file mode 100644 index 3e9fe5a9a379..000000000000 --- a/pkgs/development/python-modules/django-dbbackup/default.nix +++ /dev/null @@ -1,80 +0,0 @@ -{ - buildPythonPackage, - coverage, - django, - django-storages, - fetchFromGitHub, - flake8, - gnupg, - lib, - pep8, - psycopg2, - pylint, - pytest-django, - pytestCheckHook, - python-dotenv, - python-gnupg, - pytz, - setuptools, - testfixtures, - tox, - pythonOlder, -}: -buildPythonPackage rec { - pname = "django-dbbackup"; - version = "4.3.0"; - pyproject = true; - - src = fetchFromGitHub { - owner = "django-dbbackup"; - repo = "django-dbbackup"; - tag = version; - hash = "sha256-w+LfU5I7swnCJpwqBqoCTRUCZjKoIxK3OC+8CrihLEI="; - }; - - disabled = pythonOlder "3.9"; - - dependencies = [ - django - python-gnupg - pytz - ]; - - build-system = [ setuptools ]; - doCheck = true; - preCheck = '' - tempDir=$(mktemp -d) - export HOME=$tempDir - export DJANGO_SETTINGS_MODULE=dbbackup.tests.settings - ''; - pythonImportsCheck = [ "dbbackup" ]; - disabledTestPaths = [ - # Specific gnupg version required, which aren't provided in upstream - "dbbackup/tests/commands/test_dbrestore.py::DbrestoreCommandRestoreBackupTest::test_decrypt" - "dbbackup/tests/test_connectors/test_base.py::BaseCommandDBConnectorTest::test_run_command_with_parent_env" - "dbbackup/tests/test_utils.py::Encrypt_FileTest::test_func" - "dbbackup/tests/test_utils.py::Compress_FileTest::test_func" - ]; - nativeCheckInputs = [ - coverage - django-storages - flake8 - gnupg - pep8 - psycopg2 - pylint - pytest-django - pytestCheckHook - python-dotenv - testfixtures - tox - ]; - - meta = with lib; { - description = "Management commands to help backup and restore your project database and media files"; - homepage = "https://github.com/Archmonger/django-dbbackup"; - changelog = "https://github.com/Archmonger/django-dbbackup/releases/tag/${version}"; - license = licenses.bsd3; - maintainers = with maintainers; [ kurogeek ]; - }; -} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index d1d597dc0282..e91916b918c2 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4160,8 +4160,6 @@ self: super: with self; { django-currentuser = callPackage ../development/python-modules/django-currentuser { }; - django-dbbackup = callPackage ../development/python-modules/django-dbbackup { }; - django-debug-toolbar = callPackage ../development/python-modules/django-debug-toolbar { }; django-dynamic-preferences = From 91fbb32e1d0737cfb417f2840d9592e7de3efaf3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 15 Mar 2026 21:01:42 -0700 Subject: [PATCH 38/56] python3Packages.django-error-report-2: drop --- .../django-error-report-2/default.nix | 39 ------------------- pkgs/top-level/python-packages.nix | 2 - 2 files changed, 41 deletions(-) delete mode 100644 pkgs/development/python-modules/django-error-report-2/default.nix diff --git a/pkgs/development/python-modules/django-error-report-2/default.nix b/pkgs/development/python-modules/django-error-report-2/default.nix deleted file mode 100644 index be1803e3a798..000000000000 --- a/pkgs/development/python-modules/django-error-report-2/default.nix +++ /dev/null @@ -1,39 +0,0 @@ -{ - buildPythonPackage, - django, - fetchFromGitHub, - lib, - setuptools, - pythonOlder, -}: -buildPythonPackage rec { - pname = "django-error-report-2"; - version = "0.4.2"; - pyproject = true; - - src = fetchFromGitHub { - owner = "matmair"; - repo = "django-error-report-2"; - tag = version; - hash = "sha256-ZCaslqgruJxM8345/jSlZGruM+27H9hvwL0wtPkUzc0="; - }; - - disabled = pythonOlder "3.6"; - - dependencies = [ - django - ]; - - build-system = [ setuptools ]; - # There is no tests on upstream - doCheck = false; - pythonImportsCheck = [ "error_report" ]; - - meta = with lib; { - description = "Log/View Django server errors."; - homepage = "https://github.com/matmair/django-error-report-2"; - changelog = "https://github.com/matmair/django-error-report-2/releases/tag/${version}"; - license = licenses.mit; - maintainers = with maintainers; [ kurogeek ]; - }; -} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index e91916b918c2..2943e192c0d8 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4174,8 +4174,6 @@ self: super: with self; { django-environ = callPackage ../development/python-modules/django-environ { }; - django-error-report-2 = callPackage ../development/python-modules/django-error-report-2 { }; - django-extensions = callPackage ../development/python-modules/django-extensions { }; django-filer = callPackage ../development/python-modules/django-filer { }; From 45489e1c32f36744bd4fa6013af822ef38e77391 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 15 Mar 2026 21:02:05 -0700 Subject: [PATCH 39/56] python3Packages.django-flags: drop --- .../python-modules/django-flags/default.nix | 60 ------------------- pkgs/top-level/python-packages.nix | 2 - 2 files changed, 62 deletions(-) delete mode 100644 pkgs/development/python-modules/django-flags/default.nix diff --git a/pkgs/development/python-modules/django-flags/default.nix b/pkgs/development/python-modules/django-flags/default.nix deleted file mode 100644 index a239a4aa7988..000000000000 --- a/pkgs/development/python-modules/django-flags/default.nix +++ /dev/null @@ -1,60 +0,0 @@ -{ - buildPythonPackage, - coverage, - django, - django-debug-toolbar, - fetchFromGitHub, - jinja2, - lib, - pytest-django, - pytestCheckHook, - setuptools-scm, - setuptools, -}: -buildPythonPackage rec { - pname = "django-flags"; - version = "5.2.0"; - pyproject = true; - - src = fetchFromGitHub { - owner = "cfpb"; - repo = "django-flags"; - tag = version; - hash = "sha256-4UOueNXfDouTqpLpG391zcGHTTJ8GfznYmEl33YKdv8="; - }; - - dependencies = [ - django - ]; - - build-system = [ - setuptools - setuptools-scm - ]; - doCheck = true; - preCheck = '' - export DJANGO_SETTINGS_MODULE=flags.tests.settings - ''; - pythonImportsCheck = [ "flags" ]; - nativeCheckInputs = [ - coverage - (django-debug-toolbar.overrideAttrs (old: rec { - version = "5.2.0"; - src = old.src.override { - tag = version; - hash = "sha256-/oWirfJaiHVRI1m3N1QveutX2sag8fjYqJYCZ8BnMa0="; - }; - })) - jinja2 - pytest-django - pytestCheckHook - ]; - - meta = with lib; { - description = "Feature flags for Django projects"; - homepage = "https://github.com/cfpb/django-flags"; - changelog = "https://github.com/cfpb/django-flags/releases/tag/${version}"; - license = licenses.cc0; - maintainers = with maintainers; [ kurogeek ]; - }; -} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 2943e192c0d8..230e3cf6ec68 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4182,8 +4182,6 @@ self: super: with self; { django-filter = callPackage ../development/python-modules/django-filter { }; - django-flags = callPackage ../development/python-modules/django-flags { }; - django-formset-js-improved = callPackage ../development/python-modules/django-formset-js-improved { }; From 03a66bad30083a8d106943a34cf7859c6a02d20e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 15 Mar 2026 21:02:19 -0700 Subject: [PATCH 40/56] python3Packages.django-ical: drop --- .../python-modules/django-ical/default.nix | 61 ------------------- pkgs/top-level/python-packages.nix | 2 - 2 files changed, 63 deletions(-) delete mode 100644 pkgs/development/python-modules/django-ical/default.nix diff --git a/pkgs/development/python-modules/django-ical/default.nix b/pkgs/development/python-modules/django-ical/default.nix deleted file mode 100644 index 78a74319752d..000000000000 --- a/pkgs/development/python-modules/django-ical/default.nix +++ /dev/null @@ -1,61 +0,0 @@ -{ - buildPythonPackage, - django, - fetchFromGitHub, - lib, - pytest-django, - pytestCheckHook, - setuptools-scm, - icalendar, - django-recurrence, - pythonOlder, -}: -buildPythonPackage rec { - pname = "django-ical"; - version = "1.9.2"; - pyproject = true; - - src = fetchFromGitHub { - owner = "jazzband"; - repo = "django-ical"; - tag = version; - hash = "sha256-DUe0loayGcUS7MTyLn+g0KBxbIY7VsaoQNHGSMbMI3U="; - }; - - disabled = pythonOlder "3.7"; - - dependencies = [ - django - django-recurrence - # Latest version didn't pass the test - (icalendar.overrideAttrs (old: rec { - version = "6.0.0"; - src = old.src.override { - tag = "v${version}"; - hash = "sha256-eWFDY/pNVfcUk3PfB0vXqh9swuSGtflUw44IMDJI+yI="; - }; - })) - ]; - - build-system = [ setuptools-scm ]; - doCheck = true; - preCheck = '' - export DJANGO_SETTINGS_MODULE=test_settings - ''; - pythonImportsCheck = [ - "icalendar" - "django_ical" - ]; - nativeCheckInputs = [ - pytest-django - pytestCheckHook - ]; - - meta = with lib; { - description = "iCal feeds for Django based on Django's syndication feed framework."; - homepage = "https://github.com/jazzband/django-ical"; - changelog = "https://github.com/jazzband/django-ical/releases/tag/${version}"; - license = licenses.mit; - maintainers = with maintainers; [ kurogeek ]; - }; -} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 230e3cf6ec68..7b98674ff23f 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4216,8 +4216,6 @@ self: super: with self; { django-i18nfield = callPackage ../development/python-modules/django-i18nfield { }; - django-ical = callPackage ../development/python-modules/django-ical { }; - django-import-export = callPackage ../development/python-modules/django-import-export { }; django-ipware = callPackage ../development/python-modules/django-ipware { }; From e2f0b38c1b9722a5587333db6df4c382808ad1ba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 15 Mar 2026 21:02:46 -0700 Subject: [PATCH 41/56] python3Packages.django-mailbox: drop --- .../python-modules/django-mailbox/default.nix | 50 ------------------- pkgs/top-level/python-packages.nix | 2 - 2 files changed, 52 deletions(-) delete mode 100644 pkgs/development/python-modules/django-mailbox/default.nix diff --git a/pkgs/development/python-modules/django-mailbox/default.nix b/pkgs/development/python-modules/django-mailbox/default.nix deleted file mode 100644 index a6f397145474..000000000000 --- a/pkgs/development/python-modules/django-mailbox/default.nix +++ /dev/null @@ -1,50 +0,0 @@ -{ - buildPythonPackage, - django, - fetchFromGitHub, - lib, - pytest-django, - pytestCheckHook, - setuptools, - six, - pythonOlder, -}: -buildPythonPackage rec { - pname = "django-mailbox"; - version = "4.10.1"; - pyproject = true; - - src = fetchFromGitHub { - owner = "coddingtonbear"; - repo = "django-mailbox"; - tag = version; - hash = "sha256-7CBUnqveTSfdc+8x8sZUqvwYW3vKjZKfOPVWFSo4es0="; - }; - - disabled = pythonOlder "3.8"; - - dependencies = [ - django - six - ]; - - build-system = [ setuptools ]; - doCheck = true; - preCheck = '' - substituteInPlace setup.cfg --replace-fail "pytest" "tool:pytest" - export DJANGO_SETTINGS_MODULE=django_mailbox.tests.settings - ''; - pythonImportsCheck = [ "django_mailbox" ]; - nativeCheckInputs = [ - pytest-django - pytestCheckHook - ]; - - meta = with lib; { - description = "Import mail from POP3, IMAP, local email mailboxes or directly from Postfix or Exim4 into your Django application automatically."; - homepage = "https://github.com/coddingtonbear/django-mailbox"; - changelog = "https://github.com/coddingtonbear/django-mailbox/releases/tag/${version}"; - license = licenses.mit; - maintainers = with maintainers; [ kurogeek ]; - }; -} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 7b98674ff23f..023e3bc066a8 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4244,8 +4244,6 @@ self: super: with self; { callPackage ../development/python-modules/django-login-required-middleware { }; - django-mailbox = callPackage ../development/python-modules/django-mailbox { }; - django-mailman3 = callPackage ../development/python-modules/django-mailman3 { }; django-maintenance-mode = callPackage ../development/python-modules/django-maintenance-mode { }; From fe5521b728b415e911d315e1454a61348a7d948c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 15 Mar 2026 21:03:16 -0700 Subject: [PATCH 42/56] python3Packages.django-markdownify: drop --- .../django-markdownify/default.nix | 53 ------------------- pkgs/top-level/python-packages.nix | 2 - 2 files changed, 55 deletions(-) delete mode 100644 pkgs/development/python-modules/django-markdownify/default.nix diff --git a/pkgs/development/python-modules/django-markdownify/default.nix b/pkgs/development/python-modules/django-markdownify/default.nix deleted file mode 100644 index 5adb99e29c1f..000000000000 --- a/pkgs/development/python-modules/django-markdownify/default.nix +++ /dev/null @@ -1,53 +0,0 @@ -{ - buildPythonPackage, - django, - fetchFromGitHub, - lib, - pytest-django, - pytestCheckHook, - setuptools, - markdown, - bleach, - tinycss2, -}: -buildPythonPackage rec { - pname = "django-markdownify"; - version = "0.9.6"; - pyproject = true; - - src = fetchFromGitHub { - owner = "erwinmatijsen"; - repo = "django-markdownify"; - tag = version; - hash = "sha256-L/N0jjxBz7aQletOg+qairgq4utifPz4oqjT9AcljLI="; - }; - - dependencies = [ - django - markdown - bleach - ]; - - build-system = [ setuptools ]; - doCheck = true; - preCheck = '' - export DJANGO_SETTINGS_MODULE=markdownify.checks - ''; - nativeCheckInputs = [ - tinycss2 - pytest-django - pytestCheckHook - ]; - pythonImportsCheck = [ "markdownify" ]; - disabledTests = [ - # Test settings didn't setup DjangoTemplates - "test_markdownify_nodelist" - ]; - - meta = with lib; { - description = "Markdown template filter for Django"; - homepage = "https://github.com/erwinmatijsen/django-markdownify"; - license = licenses.mit; - maintainers = with maintainers; [ kurogeek ]; - }; -} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 023e3bc066a8..893d2b7551f1 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4248,8 +4248,6 @@ self: super: with self; { django-maintenance-mode = callPackage ../development/python-modules/django-maintenance-mode { }; - django-markdownify = callPackage ../development/python-modules/django-markdownify { }; - django-markdownx = callPackage ../development/python-modules/django-markdownx { }; django-markup = callPackage ../development/python-modules/django-markup { }; From 0810d732fefb2b94a00cf86be8008d5e9d2e1c3b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 15 Mar 2026 21:03:37 -0700 Subject: [PATCH 43/56] python3Packages.django-money: drop --- .../python-modules/django-money/default.nix | 52 ------------------- pkgs/top-level/python-packages.nix | 2 - 2 files changed, 54 deletions(-) delete mode 100644 pkgs/development/python-modules/django-money/default.nix diff --git a/pkgs/development/python-modules/django-money/default.nix b/pkgs/development/python-modules/django-money/default.nix deleted file mode 100644 index 698cab66fe54..000000000000 --- a/pkgs/development/python-modules/django-money/default.nix +++ /dev/null @@ -1,52 +0,0 @@ -{ - fetchFromGitHub, - buildPythonPackage, - setuptools, - lib, - django, - py-moneyed, - certifi, - pytestCheckHook, - pytest-django, - pytest-cov, -}: -buildPythonPackage rec { - pname = "django-money"; - version = "3.6.0"; - pyproject = true; - - src = fetchFromGitHub { - owner = "django-money"; - repo = "django-money"; - tag = version; - hash = "sha256-VxAKTtrbDMRhiLxqjVYt7pLGl0sy9F1iwswP/hxQ01k="; - }; - - dependencies = [ - django - certifi - py-moneyed - ]; - - build-system = [ setuptools ]; - doCheck = true; - nativeCheckInputs = [ - pytestCheckHook - pytest-django - pytest-cov - ]; - pythonImportsCheck = [ "djmoney" ]; - - # avoid tests which import mixer, an abandoned library - disabledTests = [ - "test_mixer_blend" - ]; - - meta = with lib; { - description = "Money fields for Django forms and models."; - homepage = "https://github.com/django-money/django-money"; - changelog = "https://github.com/django-money/django-money/releases/tag/${version}"; - license = licenses.bsd3; - maintainers = with maintainers; [ kurogeek ]; - }; -} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 893d2b7551f1..92ae7c81f55a 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4266,8 +4266,6 @@ self: super: with self; { django-modeltranslation = callPackage ../development/python-modules/django-modeltranslation { }; - django-money = callPackage ../development/python-modules/django-money { }; - django-mptt = callPackage ../development/python-modules/django-mptt { }; django-multiselectfield = callPackage ../development/python-modules/django-multiselectfield { }; From 2dcca3c2d07322d91e0555c2a70187813ba13eb3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 15 Mar 2026 21:04:27 -0700 Subject: [PATCH 44/56] python3Packages.django-recurrence: drop --- .../django-recurrence/default.nix | 50 ------------------- pkgs/top-level/python-packages.nix | 2 - 2 files changed, 52 deletions(-) delete mode 100644 pkgs/development/python-modules/django-recurrence/default.nix diff --git a/pkgs/development/python-modules/django-recurrence/default.nix b/pkgs/development/python-modules/django-recurrence/default.nix deleted file mode 100644 index 507f70aa6ac9..000000000000 --- a/pkgs/development/python-modules/django-recurrence/default.nix +++ /dev/null @@ -1,50 +0,0 @@ -{ - buildPythonPackage, - django, - fetchFromGitHub, - lib, - python-dateutil, - pytest-django, - pytestCheckHook, - pytest-cov, - pytest-sugar, - setuptools-scm, - pythonOlder, -}: -buildPythonPackage rec { - pname = "django-recurrence"; - version = "1.11.1"; - pyproject = true; - - src = fetchFromGitHub { - owner = "jazzband"; - repo = "django-recurrence"; - tag = version; - hash = "sha256-Ytf4fFTVFIQ+6IBhwRMtCkonP0POivv4TrYok37nghA="; - }; - - disabled = pythonOlder "3.7"; - - dependencies = [ - django - python-dateutil - ]; - - build-system = [ setuptools-scm ]; - doCheck = true; - pythonImportsCheck = [ "recurrence" ]; - nativeCheckInputs = [ - pytest-django - pytest-cov - pytest-sugar - pytestCheckHook - ]; - - meta = with lib; { - description = "Utility for working with recurring dates in Django."; - homepage = "https://github.com/jazzband/django-recurrence"; - changelog = "https://github.com/jazzband/django-recurrence/releases/tag/${version}"; - license = licenses.bsd3; - maintainers = with maintainers; [ kurogeek ]; - }; -} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 92ae7c81f55a..b9797654ede5 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4334,8 +4334,6 @@ self: super: with self; { django-ratelimit = callPackage ../development/python-modules/django-ratelimit { }; - django-recurrence = callPackage ../development/python-modules/django-recurrence { }; - django-redis = callPackage ../development/python-modules/django-redis { }; django-registration = callPackage ../development/python-modules/django-registration { }; From 8c6605430fe5eda87b803f475ba3ae61aadade06 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 15 Mar 2026 21:04:53 -0700 Subject: [PATCH 45/56] python3Packages.django-sslserver: drop --- .../django-sslserver/default.nix | 34 ------------------- pkgs/top-level/python-packages.nix | 2 -- 2 files changed, 36 deletions(-) delete mode 100644 pkgs/development/python-modules/django-sslserver/default.nix diff --git a/pkgs/development/python-modules/django-sslserver/default.nix b/pkgs/development/python-modules/django-sslserver/default.nix deleted file mode 100644 index 0077fafee8ab..000000000000 --- a/pkgs/development/python-modules/django-sslserver/default.nix +++ /dev/null @@ -1,34 +0,0 @@ -{ - buildPythonPackage, - django, - lib, - fetchurl, - setuptools-scm, - pythonOlder, -}: -buildPythonPackage { - pname = "django-sslserver"; - version = "0.22"; - format = "wheel"; - - src = fetchurl { - url = "https://files.pythonhosted.org/packages/6f/97/e4011f3944f83a7d2aaaf893c3689ad70e8d2ae46fb6e14fd0e3b0c6ce0b/django_sslserver-0.22-py3-none-any.whl"; - hash = "sha256-xZijY9LM3CQhwI3bPYsJc/gOjkejpbdOSiiW8hwpR8U="; - }; - - disabled = pythonOlder "3.4"; - - dependencies = [ - django - ]; - - build-system = [ setuptools-scm ]; - doCheck = true; - - meta = with lib; { - description = "A SSL-enabled development server for Django"; - homepage = "https://github.com/teddziuba/django-sslserver"; - license = licenses.mit; - maintainers = with maintainers; [ kurogeek ]; - }; -} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index b9797654ede5..9c5e7da2bb30 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4376,8 +4376,6 @@ self: super: with self; { django-sql-utils = callPackage ../development/python-modules/django-sql-utils { }; - django-sslserver = callPackage ../development/python-modules/django-sslserver { }; - django-statici18n = callPackage ../development/python-modules/django-statici18n { }; django-stdimage = callPackage ../development/python-modules/django-stdimage { From 064446a5931de3c65ecd0950f33db36e53391e1d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 15 Mar 2026 21:05:15 -0700 Subject: [PATCH 46/56] python3Packages.django-stdimage: drop --- .../django-stdimage/default.nix | 63 ------------------- pkgs/top-level/python-packages.nix | 5 -- 2 files changed, 68 deletions(-) delete mode 100644 pkgs/development/python-modules/django-stdimage/default.nix diff --git a/pkgs/development/python-modules/django-stdimage/default.nix b/pkgs/development/python-modules/django-stdimage/default.nix deleted file mode 100644 index b3fed998628d..000000000000 --- a/pkgs/development/python-modules/django-stdimage/default.nix +++ /dev/null @@ -1,63 +0,0 @@ -{ - buildPythonPackage, - django, - fetchFromGitHub, - lib, - pytest-django, - pytestCheckHook, - setuptools-scm, - pillow, - pytest-cov, - gettext, - pythonOlder, - pythonAtLeast, -}: -buildPythonPackage rec { - pname = "django-stdimage"; - version = "6.0.2"; - pyproject = true; - - src = fetchFromGitHub { - owner = "codingjoe"; - repo = "django-stdimage"; - tag = version; - hash = "sha256-uwVU3Huc5fitAweShJjcMW//GBeIpJcxqKKLGo/EdIs="; - }; - - disabled = pythonOlder "3.8" || pythonAtLeast "3.13"; - - dependencies = [ - django - pillow - ]; - - build-system = [ setuptools-scm ]; - nativeBuildInputs = [ gettext ]; - - doCheck = true; - preCheck = '' - export DJANGO_SETTINGS_MODULE=tests.settings - ''; - disabledTests = [ - # SuspiciousFileOperation: Detected path traversal attempt (Even appear in upstream) - "test_variations_override" - ]; - pythonImportsCheck = [ - "stdimage" - "stdimage.validators" - "stdimage.models" - ]; - nativeCheckInputs = [ - pytest-django - pytest-cov - pytestCheckHook - ]; - - meta = with lib; { - description = "Django Standardized Image Field"; - homepage = "https://github.com/codingjoe/django-stdimage"; - changelog = "https://github.com/codingjoe/django-stdimage/releases/tag/${version}"; - license = licenses.mit; - maintainers = with maintainers; [ kurogeek ]; - }; -} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 9c5e7da2bb30..6201e135d0ca 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4378,11 +4378,6 @@ self: super: with self; { django-statici18n = callPackage ../development/python-modules/django-statici18n { }; - django-stdimage = callPackage ../development/python-modules/django-stdimage { - django = django_4; - pytest-django = pytest-django.override { django = django_4; }; - }; - django-storages = callPackage ../development/python-modules/django-storages { }; django-structlog = callPackage ../development/python-modules/django-structlog { }; From 1817eb9ba7a79a5dbae8d50dce16a817b56c9f5d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 15 Mar 2026 21:06:25 -0700 Subject: [PATCH 47/56] python3Packages.django-structlog: drop --- .../django-structlog/default.nix | 81 ------------------- pkgs/top-level/python-packages.nix | 2 - 2 files changed, 83 deletions(-) delete mode 100644 pkgs/development/python-modules/django-structlog/default.nix diff --git a/pkgs/development/python-modules/django-structlog/default.nix b/pkgs/development/python-modules/django-structlog/default.nix deleted file mode 100644 index 55f207871db1..000000000000 --- a/pkgs/development/python-modules/django-structlog/default.nix +++ /dev/null @@ -1,81 +0,0 @@ -{ - buildPythonPackage, - fetchFromGitHub, - lib, - setuptools, - python, - pkgs, -}: -buildPythonPackage rec { - pname = "django-structlog"; - version = "10.0.0"; - pyproject = true; - - src = fetchFromGitHub { - owner = "jrobichaud"; - repo = "django-structlog"; - tag = version; - hash = "sha256-BNZ+nk2NK5x2YsTDZjH5BVizXAyLZhKp8zRvkWi068k="; - }; - - dependencies = with python.pkgs; [ - colorama - django - django-allauth - crispy-bootstrap5 - django-crispy-forms - django-environ - django-extensions - django-ipware - django-model-utils - django-ninja - django-redis - djangorestframework - structlog - ]; - - optional-dependencies.celery = with python.pkgs; [ celery ]; - - build-system = [ setuptools ]; - doCheck = true; - preCheck = '' - export DJANGO_SETTINGS_MODULE=config.settings.test_demo_app - - ${pkgs.valkey}/bin/redis-server & - REDIS_PID=$! - ''; - postCheck = '' - kill $REDIS_PID - ''; - - pytestFlags = [ - "-x" - "--cov=./django_structlog_demo_project" - "--cov-append django_structlog_demo_project" - ]; - pythonImportsCheck = [ - "structlog" - "django_structlog" - ]; - - nativeCheckInputs = with python.pkgs; [ - celery - factory-boy - pytest-asyncio - pytest-cov - pytest-django - pytest-mock - pytest-sugar - pytestCheckHook - ]; - - __darwinAllowLocalNetworking = true; - - meta = with lib; { - description = "Structured Logging for Django"; - homepage = "https://github.com/jrobichaud/django-structlog"; - changelog = "https://github.com/jrobichaud/django-structlog/releases/tag/${version}"; - license = licenses.mit; - maintainers = with maintainers; [ kurogeek ]; - }; -} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 6201e135d0ca..9980a978f563 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4380,8 +4380,6 @@ self: super: with self; { django-storages = callPackage ../development/python-modules/django-storages { }; - django-structlog = callPackage ../development/python-modules/django-structlog { }; - django-stubs = callPackage ../development/python-modules/django-stubs { }; django-stubs-ext = callPackage ../development/python-modules/django-stubs-ext { }; From 04472c9d261e5e2bcf3280fc3e9d9800ff67ebd3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 15 Mar 2026 21:06:52 -0700 Subject: [PATCH 48/56] python3Packages.django-user-sessions: drop --- .../django-user-sessions/default.nix | 32 ------------------- pkgs/top-level/python-packages.nix | 2 -- 2 files changed, 34 deletions(-) delete mode 100644 pkgs/development/python-modules/django-user-sessions/default.nix diff --git a/pkgs/development/python-modules/django-user-sessions/default.nix b/pkgs/development/python-modules/django-user-sessions/default.nix deleted file mode 100644 index 3c679e54c725..000000000000 --- a/pkgs/development/python-modules/django-user-sessions/default.nix +++ /dev/null @@ -1,32 +0,0 @@ -{ - fetchFromGitHub, - buildPythonPackage, - setuptools-scm, - lib, - django, -}: -buildPythonPackage rec { - pname = "django-user-sessions"; - version = "3.0.3"; - pyproject = true; - - src = fetchFromGitHub { - owner = "jazzband"; - repo = "django-user-sessions"; - tag = version; - hash = "sha256-vHLeEmlVil1iJi+YkxL5c04Vq/b5b43tjC2ZcjH4/Ys="; - }; - - dependencies = [ - django - ]; - - build-system = [ setuptools-scm ]; - - meta = with lib; { - description = "Extend Django sessions with a foreign key back to the user, allowing enumerating all user's sessions."; - homepage = "https://github.com/jazzband/django-user-sessions"; - license = licenses.mit; - maintainers = with maintainers; [ kurogeek ]; - }; -} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 9980a978f563..4b0f0802a567 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4412,8 +4412,6 @@ self: super: with self; { django-types = callPackage ../development/python-modules/django-types { }; - django-user-sessions = callPackage ../development/python-modules/django-user-sessions { }; - django-valkey = callPackage ../development/python-modules/django-valkey { }; django-versatileimagefield = From 79caf2a06c6d42019340e908369a28be238b6dda Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 15 Mar 2026 21:07:37 -0700 Subject: [PATCH 49/56] python3Packages.django-xforwardedfor-middleware: drop --- .../default.nix | 33 ------------------- pkgs/top-level/python-packages.nix | 4 --- 2 files changed, 37 deletions(-) delete mode 100644 pkgs/development/python-modules/django-xforwardedfor-middleware/default.nix diff --git a/pkgs/development/python-modules/django-xforwardedfor-middleware/default.nix b/pkgs/development/python-modules/django-xforwardedfor-middleware/default.nix deleted file mode 100644 index e6806a4d28f2..000000000000 --- a/pkgs/development/python-modules/django-xforwardedfor-middleware/default.nix +++ /dev/null @@ -1,33 +0,0 @@ -{ - buildPythonPackage, - django, - fetchFromGitHub, - lib, - setuptools, -}: -buildPythonPackage rec { - pname = "django-xforwardedfor-middleware"; - version = "2.0"; - pyproject = true; - - src = fetchFromGitHub { - owner = "allo-"; - repo = "django-xforwardedfor-middleware"; - tag = "v${version}"; - hash = "sha256-dDXSb17kXOSeIgY6wid1QFHhUjrapasWgCEb/El51eA="; - }; - - dependencies = [ - django - ]; - - build-system = [ setuptools ]; - doCheck = true; - - meta = with lib; { - description = "Use the X-Forwarded-For header to get the real ip of a request"; - homepage = "https://github.com/allo-/django-xforwardedfor-middleware"; - license = licenses.publicDomain; - maintainers = with maintainers; [ kurogeek ]; - }; -} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 4b0f0802a567..923ab072c4db 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4428,10 +4428,6 @@ self: super: with self; { django-widget-tweaks = callPackage ../development/python-modules/django-widget-tweaks { }; - django-xforwardedfor-middleware = - callPackage ../development/python-modules/django-xforwardedfor-middleware - { }; - # LTS in extended support phase django_4 = callPackage ../development/python-modules/django/4.nix { }; From 0fd0fe1f9793ce3199252bb078a6143e7a1c8c41 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 15 Mar 2026 21:08:29 -0700 Subject: [PATCH 50/56] python3Packages.opentelemetry-instrumentation-sqlite3: remove superfluous pythonOlder --- .../opentelemetry-instrumentation-sqlite3/default.nix | 3 --- 1 file changed, 3 deletions(-) diff --git a/pkgs/development/python-modules/opentelemetry-instrumentation-sqlite3/default.nix b/pkgs/development/python-modules/opentelemetry-instrumentation-sqlite3/default.nix index 5e4901083006..d4513da1f0e4 100644 --- a/pkgs/development/python-modules/opentelemetry-instrumentation-sqlite3/default.nix +++ b/pkgs/development/python-modules/opentelemetry-instrumentation-sqlite3/default.nix @@ -1,6 +1,5 @@ { buildPythonPackage, - pythonOlder, hatchling, opentelemetry-instrumentation, opentelemetry-instrumentation-dbapi, @@ -13,8 +12,6 @@ buildPythonPackage { pname = "opentelemetry-instrumentation-sqlite3"; pyproject = true; - disabled = pythonOlder "3.8"; - sourceRoot = "${opentelemetry-instrumentation.src.name}/instrumentation/opentelemetry-instrumentation-sqlite3"; build-system = [ hatchling ]; From 7ab4a7a90adf6dd4db0032f649c04570b18f7687 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 15 Mar 2026 21:09:14 -0700 Subject: [PATCH 51/56] python3Packages.opentelemetry-instrumentation-system-metrics: remove superfluous pythonOlder --- .../opentelemetry-instrumentation-system-metrics/default.nix | 2 -- 1 file changed, 2 deletions(-) diff --git a/pkgs/development/python-modules/opentelemetry-instrumentation-system-metrics/default.nix b/pkgs/development/python-modules/opentelemetry-instrumentation-system-metrics/default.nix index 3f2ec8350c26..0c6a391b8af1 100644 --- a/pkgs/development/python-modules/opentelemetry-instrumentation-system-metrics/default.nix +++ b/pkgs/development/python-modules/opentelemetry-instrumentation-system-metrics/default.nix @@ -14,8 +14,6 @@ buildPythonPackage { pname = "opentelemetry-instrumentation-system-metrics"; pyproject = true; - disabled = pythonOlder "3.8"; - sourceRoot = "${opentelemetry-instrumentation.src.name}/instrumentation/opentelemetry-instrumentation-system-metrics"; build-system = [ hatchling ]; From ee52241de20800ac85cf62d53cf8d45aec97c86d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 15 Mar 2026 21:09:36 -0700 Subject: [PATCH 52/56] python3Packages.opentelemetry-instrumentation-system-metrics: fix meta.description --- .../opentelemetry-instrumentation-system-metrics/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/opentelemetry-instrumentation-system-metrics/default.nix b/pkgs/development/python-modules/opentelemetry-instrumentation-system-metrics/default.nix index 0c6a391b8af1..1dbb8482f801 100644 --- a/pkgs/development/python-modules/opentelemetry-instrumentation-system-metrics/default.nix +++ b/pkgs/development/python-modules/opentelemetry-instrumentation-system-metrics/default.nix @@ -33,6 +33,6 @@ buildPythonPackage { meta = opentelemetry-instrumentation.meta // { homepage = "https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/instrumentation/opentelemetry-instrumentation-system-metrics"; - description = "OpenTelemetry Instrumentation for Django"; + description = "OpenTelemetry System Metrics Instrumentation"; }; } From 434598158f2505adf1d93d91dbb219edb0c21361 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 15 Mar 2026 21:10:08 -0700 Subject: [PATCH 53/56] python3Packages.opentelemetry-instrumentation-sqlite3: fix meta.description --- .../opentelemetry-instrumentation-sqlite3/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/opentelemetry-instrumentation-sqlite3/default.nix b/pkgs/development/python-modules/opentelemetry-instrumentation-sqlite3/default.nix index d4513da1f0e4..5fdbdb75e7cf 100644 --- a/pkgs/development/python-modules/opentelemetry-instrumentation-sqlite3/default.nix +++ b/pkgs/development/python-modules/opentelemetry-instrumentation-sqlite3/default.nix @@ -30,6 +30,6 @@ buildPythonPackage { meta = opentelemetry-instrumentation.meta // { homepage = "https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/instrumentation/opentelemetry-instrumentation-sqlite3"; - description = "OpenTelemetry Instrumentation for Django"; + description = "OpenTelemetry SQLite3 instrumentation"; }; } From d0d0d59acddae6d591aaf196978ce45ec7e8f5d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 15 Mar 2026 21:11:15 -0700 Subject: [PATCH 54/56] python3Packages.ppf-datamatrix: drop --- .../python-modules/ppf-datamatrix/default.nix | 34 ------------------- pkgs/top-level/python-packages.nix | 2 -- 2 files changed, 36 deletions(-) delete mode 100644 pkgs/development/python-modules/ppf-datamatrix/default.nix diff --git a/pkgs/development/python-modules/ppf-datamatrix/default.nix b/pkgs/development/python-modules/ppf-datamatrix/default.nix deleted file mode 100644 index b4942912fbe4..000000000000 --- a/pkgs/development/python-modules/ppf-datamatrix/default.nix +++ /dev/null @@ -1,34 +0,0 @@ -{ - lib, - buildPythonPackage, - setuptools-scm, - pythonOlder, - fetchPypi, - pytestCheckHook, -}: - -buildPythonPackage rec { - pname = "ppf-datamatrix"; - version = "0.2"; - format = "pyproject"; - - disabled = pythonOlder "3.6"; - - src = fetchPypi { - inherit pname version; - hash = "sha256-jwNNnJDkCPYPixCic7qrgQFMmoHJg9wevcMdTKWsVYI="; - }; - - doCheck = true; - pythonImportsCheck = [ "ppf.datamatrix" ]; - nativeCheckInputs = [ pytestCheckHook ]; - - build-system = [ setuptools-scm ]; - - meta = { - description = "Pure-python package to generate data matrix codes."; - homepage = "https://github.com/adrianschlatter/ppf.datamatrix"; - license = lib.licenses.mit; - maintainers = with lib.maintainers; [ kurogeek ]; - }; -} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 923ab072c4db..a3a8802df20f 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -12727,8 +12727,6 @@ self: super: with self; { ppdeep = callPackage ../development/python-modules/ppdeep { }; - ppf-datamatrix = callPackage ../development/python-modules/ppf-datamatrix { }; - ppft = callPackage ../development/python-modules/ppft { }; ppk2-api = callPackage ../development/python-modules/ppk2-api { }; From 3603c9914c43443042ed4331a33d56e4e665218c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 15 Mar 2026 21:11:46 -0700 Subject: [PATCH 55/56] python3Packages.py-moneyed: drop --- .../python-modules/py-moneyed/default.nix | 38 ------------------- pkgs/top-level/python-packages.nix | 2 - 2 files changed, 40 deletions(-) delete mode 100644 pkgs/development/python-modules/py-moneyed/default.nix diff --git a/pkgs/development/python-modules/py-moneyed/default.nix b/pkgs/development/python-modules/py-moneyed/default.nix deleted file mode 100644 index e839d6ec1958..000000000000 --- a/pkgs/development/python-modules/py-moneyed/default.nix +++ /dev/null @@ -1,38 +0,0 @@ -{ - lib, - buildPythonPackage, - fetchPypi, - setuptools, - babel, - pythonOlder, - typing-extensions, -}: - -buildPythonPackage rec { - pname = "py-moneyed"; - version = "3.0"; - format = "pyproject"; - - disabled = pythonOlder "3.7"; - - src = fetchPypi { - inherit pname version; - hash = "sha256-SQbw8CzyuR7bouFW8tTpp48iQFmrjI+i/yYjDHXYlOg="; - }; - - dependencies = [ - babel - typing-extensions - ]; - - pythonImportsCheck = [ "moneyed" ]; - - build-system = [ setuptools ]; - - meta = { - description = "Provides Currency and Money classes for use in your Python code."; - homepage = "https://github.com/py-moneyed/py-moneyed"; - license = lib.licenses.bsd3; - maintainers = with lib.maintainers; [ kurogeek ]; - }; -} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index a3a8802df20f..cd681c56e654 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -13090,8 +13090,6 @@ self: super: with self; { py-melissa-climate = callPackage ../development/python-modules/py-melissa-climate { }; - py-moneyed = callPackage ../development/python-modules/py-moneyed { }; - py-multiaddr = callPackage ../development/python-modules/py-multiaddr { }; py-multibase = callPackage ../development/python-modules/py-multibase { }; From 914f352cc860a70161cbe7d24b019368a713c382 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 16 Mar 2026 05:06:47 +0000 Subject: [PATCH 56/56] python3Packages.wolf-comm: 0.0.47 -> 0.0.48 --- pkgs/development/python-modules/wolf-comm/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/wolf-comm/default.nix b/pkgs/development/python-modules/wolf-comm/default.nix index 1cfb1bf01ad6..59bf238c2c11 100644 --- a/pkgs/development/python-modules/wolf-comm/default.nix +++ b/pkgs/development/python-modules/wolf-comm/default.nix @@ -12,14 +12,14 @@ buildPythonPackage rec { pname = "wolf-comm"; - version = "0.0.47"; + version = "0.0.48"; pyproject = true; src = fetchFromGitHub { owner = "janrothkegel"; repo = "wolf-comm"; tag = version; - hash = "sha256-/34smUrsWKNEd5OPPIsDnW3zfq6nhKX3Yp+UBk+Nibw="; + hash = "sha256-w+7Z7A7q9RP+9ORYgvcqWDjV/XOUuXvE67LlOyzhSDY="; }; build-system = [ setuptools ];