Merge staging-next into staging

Changed files
+1133 -172
doc
release-notes
nixos
modules
programs
security
system
boot
loader
pkgs
applications
audio
qpwgraph
editors
vscode
extensions
by-name
am
bu
bufisk
ca
caido
du
dump1090-fa
he
hello
li
libmikmod
lo
louvre
ma
maestro
mu
mullvad-browser
ne
netbird
nu
op
ph
re
reddit-tui
sp
sr
srm-cuarzo
sy
systemd-bootchart
to
tor-browser
tp
tpm2-pkcs11
ty
typstyle
wr
wrangler
xm
xmedcon
ya
yazi
plugins
projects
development
interpreters
elixir
python-modules
django
django-lasuite
scheduler
sqlalchemy-cockroachdb
supervisor
web
nodejs
kde
misc
kirigami-addons
servers
sql
percona-server
top-level
+2
doc/release-notes/rl-2505.section.md
···
- `dwarf-fortress-packages` now only contains one minor version for each major version since version 0.44. Saves should still be compatible, but you may have to change which minor version you were using if it was one other than the newest.
+
- `tpm2-pkcs11` now is compiled without abrmd (Access Broker and Resource Manager Daemon) support by default, preferring the kernel resource manager. Use `tpm2-pkcs11.abrmd` if you would like a version with abrmd support. Note that the NixOS module picks the correct one automatically based on `security.tpm2.abrmd`.
+
- `zig_0_9` and `zig_0_10` have been removed, you should upgrade to `zig_0_13` (also available as just `zig`), `zig_0_12` or `zig_0_11` instead.
- `webpack-cli` was updated to major version 6, which has breaking changes from the previous version 5.1.4. See the [upstream release notes](https://github.com/webpack/webpack-cli/releases/tag/webpack-cli%406.0.0) for details on these changes.
+27 -20
nixos/modules/programs/direnv.nix
···
package = lib.mkPackageOption pkgs "direnv" { };
+
finalPackage = lib.mkOption {
+
type = lib.types.package;
+
readOnly = true;
+
description = "The wrapped direnv package.";
+
};
+
enableBashIntegration = enabledOption ''
Bash integration
'';
···
};
config = lib.mkIf cfg.enable {
-
programs = {
-
direnv.settings = lib.mkIf cfg.silent {
-
global = {
-
log_format = lib.mkDefault "-";
-
log_filter = lib.mkDefault "^$";
+
direnv = {
+
finalPackage = pkgs.symlinkJoin {
+
inherit (cfg.package) name;
+
paths = [ cfg.package ];
+
# direnv has a fish library which automatically sources direnv for some reason
+
postBuild = ''
+
rm -rf "$out/share/fish"
+
'';
+
meta.mainProgram = "direnv";
+
};
+
settings = lib.mkIf cfg.silent {
+
global = {
+
log_format = lib.mkDefault "-";
+
log_filter = lib.mkDefault "^$";
+
};
};
};
zsh.interactiveShellInit = lib.mkIf cfg.enableZshIntegration ''
if ${lib.boolToString cfg.loadInNixShell} || printenv PATH | grep -vqc '/nix/store'; then
-
eval "$(${lib.getExe cfg.package} hook zsh)"
+
eval "$(${lib.getExe cfg.finalPackage} hook zsh)"
fi
'';
···
#$IN_NIX_SHELL for "nix-shell"
bash.interactiveShellInit = lib.mkIf cfg.enableBashIntegration ''
if ${lib.boolToString cfg.loadInNixShell} || [ -z "$IN_NIX_SHELL$NIX_GCROOT$(printenv PATH | grep '/nix/store')" ] ; then
-
eval "$(${lib.getExe cfg.package} hook bash)"
+
eval "$(${lib.getExe cfg.finalPackage} hook bash)"
fi
'';
fish.interactiveShellInit = lib.mkIf cfg.enableFishIntegration ''
if ${lib.boolToString cfg.loadInNixShell};
or printenv PATH | grep -vqc '/nix/store';
-
${lib.getExe cfg.package} hook fish | source
+
${lib.getExe cfg.finalPackage} hook fish | source
end
'';
···
environment = {
systemPackages = [
-
# direnv has a fish library which automatically sources direnv for some reason
-
# I don't see any harm in doing this if we're sourcing it with fish.interactiveShellInit
-
(pkgs.symlinkJoin {
-
inherit (cfg.package) name;
-
paths = [ cfg.package ];
-
nativeBuildInputs = [ pkgs.makeBinaryWrapper ];
-
postBuild = ''
-
wrapProgram "$out/bin/direnv" \
-
--set-default 'DIRENV_CONFIG' '/etc/direnv'
-
rm -rf "$out/share/fish"
-
'';
-
})
+
cfg.finalPackage
];
+
+
variables.DIRENV_CONFIG = "/etc/direnv";
etc = {
"direnv/direnv.toml" = lib.mkIf (cfg.settings != { }) {
+2 -2
nixos/modules/security/tpm2.nix
···
package = lib.mkOption {
description = "tpm2-pkcs11 package to use";
type = lib.types.package;
-
default = pkgs.tpm2-pkcs11;
-
defaultText = lib.literalExpression "pkgs.tpm2-pkcs11";
+
default = if cfg.abrmd.enable then pkgs.tpm2-pkcs11.abrmd else pkgs.tpm2-pkcs11;
+
defaultText = lib.literalExpression "if config.security.tpm2.abrmd.enable then pkgs.tpm2-pkcs11.abrmd else pkgs.tpm2-pkcs11";
};
};
+1 -1
nixos/modules/system/boot/loader/systemd-boot/systemd-boot-builder.py
···
available_match = re.search(r"^\((.*)\)$", available_out)
if installed_match is None:
-
raise Exception("could not find any previously installed systemd-boot")
+
raise Exception("Could not find any previously installed systemd-boot. If you are switching to systemd-boot from a different bootloader, you need to run `nixos-rebuild switch --install-bootloader`")
if available_match is None:
raise Exception("could not determine systemd-boot version")
+2 -2
pkgs/applications/audio/qpwgraph/default.nix
···
stdenv.mkDerivation (finalAttrs: {
pname = "qpwgraph";
-
version = "0.9.0";
+
version = "0.9.2";
src = fetchFromGitLab {
domain = "gitlab.freedesktop.org";
owner = "rncbc";
repo = "qpwgraph";
rev = "v${finalAttrs.version}";
-
sha256 = "sha256-KNYP/290UdgjuduOnRfI71VSHIuO+7kTeCJo+Qs8Nks=";
+
sha256 = "sha256-SCco66Czu8dW7iSSX/exhIlOXS+ayCwGUuCfJuUCRjM=";
};
nativeBuildInputs = [
+2 -2
pkgs/applications/editors/vscode/extensions/default.nix
···
mktplcRef = {
name = "vim";
publisher = "vscodevim";
-
version = "1.29.0";
-
hash = "sha256-J3V8SZJZ2LSL8QfdoOtHI1ZDmGDVerTRYP4NZU17SeQ=";
+
version = "1.29.2";
+
hash = "sha256-RBh4yQxOoUpwNKedFjEeu6hO0tU9AAPlDrt2LhgZT50=";
};
meta = {
license = lib.licenses.mit;
+77 -34
pkgs/by-name/am/amp-cli/package-lock.json
···
"packages": {
"": {
"dependencies": {
-
"@sourcegraph/amp": "^0.0.1747195318-g6d7769"
+
"@sourcegraph/amp": "^0.0.1747483284-g8cf01d"
}
},
"node_modules/@colors/colors": {
···
}
},
"node_modules/@sourcegraph/amp": {
-
"version": "0.0.1747195318-g6d7769",
-
"resolved": "https://registry.npmjs.org/@sourcegraph/amp/-/amp-0.0.1747195318-g6d7769.tgz",
-
"integrity": "sha512-L1GqHpgYhagR9WG5XOwWcUCJJV41n1DIwuz0hCUNrl+UJMhcvjLL5PG8fnA4TiFZiNEOTR8yWztfYKYeE7+U3g==",
+
"version": "0.0.1747483284-g8cf01d",
+
"resolved": "https://registry.npmjs.org/@sourcegraph/amp/-/amp-0.0.1747483284-g8cf01d.tgz",
+
"integrity": "sha512-LTlMR3cs5ax9EGIuyu92g85SJdsXV7fvADsEnYmBOd/no7r1CIxeEtOzLFY1FPDCxLHjN74BivwHs0piMiLktg==",
"dependencies": {
+
"@types/runes": "^0.4.3",
"@vscode/ripgrep": "1.15.11",
-
"wcwidth": "^1.0.1",
+
"runes": "^0.4.3",
+
"string-width": "^6.1.0",
"winston": "^3.17.0",
"xdg-basedir": "^5.1.0"
},
···
"node": ">=18"
}
},
+
"node_modules/@types/runes": {
+
"version": "0.4.3",
+
"resolved": "https://registry.npmjs.org/@types/runes/-/runes-0.4.3.tgz",
+
"integrity": "sha512-kncnfKlRj4FM0+9IRBlZ/06b1BNVDya3d5hN5kFfuzCNAgZFZuApz/XBqe0+d6Y5cV/f86UD8q2ehnaSVdtBrw==",
+
"license": "MIT"
+
},
"node_modules/@types/triple-beam": {
"version": "1.3.5",
"resolved": "https://registry.npmjs.org/@types/triple-beam/-/triple-beam-1.3.5.tgz",
···
"node": ">= 14"
}
},
+
"node_modules/ansi-regex": {
+
"version": "6.1.0",
+
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz",
+
"integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==",
+
"license": "MIT",
+
"engines": {
+
"node": ">=12"
+
},
+
"funding": {
+
"url": "https://github.com/chalk/ansi-regex?sponsor=1"
+
}
+
},
"node_modules/async": {
"version": "3.2.6",
"resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz",
···
"license": "MIT",
"engines": {
"node": "*"
-
}
-
},
-
"node_modules/clone": {
-
"version": "1.0.4",
-
"resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz",
-
"integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==",
-
"license": "MIT",
-
"engines": {
-
"node": ">=0.8"
}
},
"node_modules/color": {
···
}
}
},
-
"node_modules/defaults": {
-
"version": "1.0.4",
-
"resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz",
-
"integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==",
-
"license": "MIT",
-
"dependencies": {
-
"clone": "^1.0.2"
-
},
-
"funding": {
-
"url": "https://github.com/sponsors/sindresorhus"
-
}
+
"node_modules/eastasianwidth": {
+
"version": "0.2.0",
+
"resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz",
+
"integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==",
+
"license": "MIT"
+
},
+
"node_modules/emoji-regex": {
+
"version": "10.4.0",
+
"resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.4.0.tgz",
+
"integrity": "sha512-EC+0oUMY1Rqm4O6LLrgjtYDvcVYTy7chDnM4Q7030tP4Kwj3u/pR6gP9ygnp2CJMK5Gq+9Q2oqmrFJAz01DXjw==",
+
"license": "MIT"
},
"node_modules/enabled": {
"version": "2.0.0",
···
"node": ">= 6"
}
},
+
"node_modules/runes": {
+
"version": "0.4.3",
+
"resolved": "https://registry.npmjs.org/runes/-/runes-0.4.3.tgz",
+
"integrity": "sha512-K6p9y4ZyL9wPzA+PMDloNQPfoDGTiFYDvdlXznyGKgD10BJpcAosvATKrExRKOrNLgD8E7Um7WGW0lxsnOuNLg==",
+
"license": "MIT",
+
"engines": {
+
"node": ">=4.0.0"
+
}
+
},
"node_modules/safe-buffer": {
"version": "5.2.1",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
···
"safe-buffer": "~5.2.0"
}
},
+
"node_modules/string-width": {
+
"version": "6.1.0",
+
"resolved": "https://registry.npmjs.org/string-width/-/string-width-6.1.0.tgz",
+
"integrity": "sha512-k01swCJAgQmuADB0YIc+7TuatfNvTBVOoaUWJjTB9R4VJzR5vNWzf5t42ESVZFPS8xTySF7CAdV4t/aaIm3UnQ==",
+
"license": "MIT",
+
"dependencies": {
+
"eastasianwidth": "^0.2.0",
+
"emoji-regex": "^10.2.1",
+
"strip-ansi": "^7.0.1"
+
},
+
"engines": {
+
"node": ">=16"
+
},
+
"funding": {
+
"url": "https://github.com/sponsors/sindresorhus"
+
}
+
},
+
"node_modules/strip-ansi": {
+
"version": "7.1.0",
+
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz",
+
"integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==",
+
"license": "MIT",
+
"dependencies": {
+
"ansi-regex": "^6.0.1"
+
},
+
"engines": {
+
"node": ">=12"
+
},
+
"funding": {
+
"url": "https://github.com/chalk/strip-ansi?sponsor=1"
+
}
+
},
"node_modules/text-hex": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/text-hex/-/text-hex-1.0.0.tgz",
···
"resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
"integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==",
"license": "MIT"
-
},
-
"node_modules/wcwidth": {
-
"version": "1.0.1",
-
"resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz",
-
"integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==",
-
"license": "MIT",
-
"dependencies": {
-
"defaults": "^1.0.3"
-
}
},
"node_modules/winston": {
"version": "3.17.0",
+3 -3
pkgs/by-name/am/amp-cli/package.nix
···
buildNpmPackage rec {
pname = "amp-cli";
-
version = "0.0.1747195318-g6d7769";
+
version = "0.0.1747483284-g8cf01d";
src = fetchzip {
url = "https://registry.npmjs.org/@sourcegraph/amp/-/amp-${version}.tgz";
-
hash = "sha256-YoyuZX41l21eTGi9t0rYb4vEE3rSqiue2kIf0PDbaKc=";
+
hash = "sha256-8mPYdr0t/5kEGK/0nG0GyxviAU9EhjA1bAQXggvuF6k=";
};
postPatch = ''
···
chmod +x bin/amp-wrapper.js
'';
-
npmDepsHash = "sha256-NxccnQxATtDBipRKhQWJn0s3PPXPeldrz9DLVq/ftpM=";
+
npmDepsHash = "sha256-aFB9EuWp7skmY5uzNRBBs8/UcFgtrQpBqciO2UK1fwY=";
propagatedBuildInputs = [
ripgrep
+3 -3
pkgs/by-name/bu/bufisk/package.nix
···
fetchFromGitHub,
}:
-
buildGoModule rec {
+
buildGoModule (finalAttrs: {
pname = "bufisk";
version = "0.1.0";
src = fetchFromGitHub {
owner = "bufbuild";
repo = "bufisk";
-
rev = "v${version}";
+
tag = "v${finalAttrs.version}";
hash = "sha256-pVnqvQn7jwpx6T3sS4eA29JeJdh0GrPVm0J8n2UjJTw=";
};
···
maintainers = with lib.maintainers; [ aaronjheng ];
mainProgram = "bufisk";
};
-
}
+
})
+3 -3
pkgs/by-name/ca/caido/package.nix
···
"cli"
"desktop"
];
-
version = "0.48.0";
+
version = "0.48.1";
cli = fetchurl {
url = "https://caido.download/releases/v${version}/caido-cli-v${version}-linux-x86_64.tar.gz";
-
hash = "sha256-9481W8AsgxCCvdTkCy2kXH6CG72xP5S3kejjxcXLVkg=";
+
hash = "sha256-UdeC3BZmQVUdWmwQTC27ptF0+lZgCXpF8yXaf8Bjpbo=";
};
desktop = fetchurl {
url = "https://caido.download/releases/v${version}/caido-desktop-v${version}-linux-x86_64.AppImage";
-
hash = "sha256-XIRjuvBxmfdHnizbVOh7kWKHm4OkUDwuSSNYzjJW/dA=";
+
hash = "sha256-4KQpgO8Cb+TkKuDOK+bAE0nOhlwjkSUVXLHJmHaj6NQ=";
};
appimageContents = appimageTools.extractType2 {
inherit pname version;
+2 -2
pkgs/by-name/du/dump1090-fa/package.nix
···
stdenv.mkDerivation (finalAttrs: {
pname = "dump1090";
-
version = "10.0.1";
+
version = "10.1";
src = fetchFromGitHub {
owner = "flightaware";
repo = "dump1090";
tag = "v${finalAttrs.version}";
-
hash = "sha256-un2AK5RNkdQSWNbgbrn5K4eZXQdDOgUEzkcoLUVZ+sY=";
+
hash = "sha256-8J17fqNrn5Mqqv4lFHEp4zjc/zeyMUb+fWdk+ssPBwU=";
};
nativeBuildInputs = [ pkg-config ];
+2 -2
pkgs/by-name/he/hello/package.nix
···
stdenv.mkDerivation (finalAttrs: {
pname = "hello";
-
version = "2.12.1";
+
version = "2.12.2";
src = fetchurl {
url = "mirror://gnu/hello/hello-${finalAttrs.version}.tar.gz";
-
hash = "sha256-jZkUKv2SV28wsM18tCqNxoCZmLxdYH2Idh9RLibH2yA=";
+
hash = "sha256-WpqZbcKSzCTc9BHO6H6S9qrluNE72caBm0x6nc4IGKs=";
};
# The GNU Hello `configure` script detects how to link libiconv but fails to actually make use of that.
+2
pkgs/by-name/li/libmikmod/package.nix
···
NIX_LDFLAGS = optionalString stdenv.hostPlatform.isLinux "-lasound";
+
enableParallelBuilding = true;
+
postInstall = ''
moveToOutput bin/libmikmod-config "$dev"
'';
+1 -1
pkgs/by-name/lo/louvre/package.nix
···
description = "C++ library for building Wayland compositors";
homepage = "https://github.com/CuarzoSoftware/Louvre";
mainProgram = "louvre-views";
-
maintainers = [ lib.maintainers.dblsaiko ];
+
maintainers = [ ];
platforms = lib.platforms.linux;
};
})
+2 -2
pkgs/by-name/ma/maestro/package.nix
···
stdenv.mkDerivation (finalAttrs: {
pname = "maestro";
-
version = "1.40.0";
+
version = "1.40.3";
src = fetchurl {
url = "https://github.com/mobile-dev-inc/maestro/releases/download/cli-${finalAttrs.version}/maestro.zip";
-
hash = "sha256-K0KSlSA2Jyeqck0CXZw3kh0qexIvL6vDn3EhAtIzCJc=";
+
hash = "sha256-gLdT1Mcllnsysb4N2JYck9OxQi9m63leH9zb5newotU=";
};
dontUnpack = true;
+2 -2
pkgs/by-name/mu/mullvad-browser/package.nix
···
++ lib.optionals mediaSupport [ ffmpeg ]
);
-
version = "14.5.1";
+
version = "14.5.2";
sources = {
x86_64-linux = fetchurl {
···
"https://tor.eff.org/dist/mullvadbrowser/${version}/mullvad-browser-linux-x86_64-${version}.tar.xz"
"https://tor.calyxinstitute.org/dist/mullvadbrowser/${version}/mullvad-browser-linux-x86_64-${version}.tar.xz"
];
-
hash = "sha256-FQdPdCkdxh+wieC12lT90qaSvu56o4BDgUkaDOm5xSE=";
+
hash = "sha256-LyvrlsL/dLgoa94+JEuzbxeEl0n61ry2BcD5BlGV0sE=";
};
};
+3 -3
pkgs/by-name/ne/netbird/package.nix
···
in
buildGoModule (finalAttrs: {
pname = "netbird";
-
version = "0.43.3";
+
version = "0.44.0";
src = fetchFromGitHub {
owner = "netbirdio";
repo = "netbird";
tag = "v${finalAttrs.version}";
-
hash = "sha256-+WEAUM+BrckRCUycCaYr7tveZBZ2kStnMPxyDVixAsA=";
+
hash = "sha256-+tiQx692GSAI5AoDaKY5x3Z3WrX6QU+WFV96paM9ayw=";
};
-
vendorHash = "sha256-/STnSegRtpdMhh9RaCqwc6dSXvt7UO5GVz7/M9JzamM=";
+
vendorHash = "sha256-EVhtxYDinmid5C/3N8UGmCzWw1qIE3m0rXes4uFpcOM=";
nativeBuildInputs = [ installShellFiles ] ++ lib.optional ui pkg-config;
+10 -8
pkgs/by-name/nu/numcpp/package.nix
···
}:
stdenv.mkDerivation (finalAttrs: {
pname = "numcpp";
-
version = "2.13.0";
+
version = "2.14.1";
src = fetchFromGitHub {
owner = "dpilger26";
repo = "NumCpp";
-
rev = "Version_${finalAttrs.version}";
-
hash = "sha256-+2xd8GNMSKPz801lfMAcHIkmidKd+xM8YblkdFj3HZk=";
+
tag = "Version_${finalAttrs.version}";
+
hash = "sha256-8ghHTRneLeiFgzF9zHFjFu46qopc3l2Svku1H06XQTw=";
};
+
+
patches = [ ./pytest-CMakeLists.patch ];
nativeCheckInputs = [
gtest
···
postInstall = ''
substituteInPlace $out/share/NumCpp/cmake/NumCppConfig.cmake \
-
--replace "\''${PACKAGE_PREFIX_DIR}/" ""
+
--replace-fail "\''${PACKAGE_PREFIX_DIR}/" ""
'';
NIX_CFLAGS_COMPILE = "-Wno-error";
-
meta = with lib; {
+
meta = {
description = "Templatized Header Only C++ Implementation of the Python NumPy Library";
homepage = "https://github.com/dpilger26/NumCpp";
-
license = licenses.mit;
-
maintainers = with maintainers; [ spalf ];
-
platforms = platforms.unix;
+
license = lib.licenses.mit;
+
maintainers = with lib.maintainers; [ spalf ];
+
platforms = lib.platforms.unix;
};
})
+18
pkgs/by-name/nu/numcpp/pytest-CMakeLists.patch
···
+
add --embed to $PYTHON_LD_FLAGS and strip a preceding whitespace to conform to CMP0004
+
+
--- a/test/pytest/src/CMakeLists.txt
+
+++ b/test/pytest/src/CMakeLists.txt
+
@@ -56,11 +56,12 @@ find_package(Python 3.11 REQUIRED
+
if(UNIX)
+
execute_process(
+
COMMAND
+
- python3-config --ldflags
+
+ python3-config --embed --ldflags
+
OUTPUT_VARIABLE
+
PYTHON_LD_FLAGS
+
OUTPUT_STRIP_TRAILING_WHITESPACE
+
)
+
+ string(STRIP ${PYTHON_LD_FLAGS} PYTHON_LD_FLAGS)
+
endif()
+
+
target_link_libraries(${TARGET_NAME} PRIVATE
+1 -1
pkgs/by-name/op/opencloud/idp-web.nix
···
meta = {
description = "OpenCloud - IDP Web UI";
homepage = "https://github.com/opencloud-eu/opencloud";
-
changelog = "https://github.com/opencloud-eu/opencloud/blob/v${finalAttrs.src.rev}/CHANGELOG.md";
+
changelog = "https://github.com/opencloud-eu/opencloud/blob/v${finalAttrs.src.tag}/CHANGELOG.md";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [
christoph-heiss
+1 -1
pkgs/by-name/op/opencloud/package.nix
···
meta = {
description = "OpenCloud gives you a secure and private way to store, access, and share your files.";
homepage = "https://github.com/opencloud-eu/opencloud";
-
changelog = "https://github.com/opencloud-eu/opencloud/blob/v${version}/CHANGELOG.md";
+
changelog = "https://github.com/opencloud-eu/opencloud/blob/${src.tag}/CHANGELOG.md";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [
christoph-heiss
+1 -1
pkgs/by-name/op/opencloud/web.nix
···
meta = {
description = "Web UI for OpenCloud built with Vue.js and TypeScript";
homepage = "https://github.com/opencloud-eu/web";
-
changelog = "https://github.com/opencloud-eu/web/blob/${finalAttrs.version}/CHANGELOG.md";
+
changelog = "https://github.com/opencloud-eu/web/blob/${finalAttrs.src.tag}/CHANGELOG.md";
license = lib.licenses.agpl3Only;
maintainers = with lib.maintainers; [
christoph-heiss
+40 -30
pkgs/by-name/ph/phoenixd/package.nix
···
{
-
stdenv,
lib,
+
stdenv,
fetchurl,
unzip,
autoPatchelfHook,
···
zlib,
}:
-
stdenv.mkDerivation rec {
+
stdenv.mkDerivation (finalAttrs: {
pname = "phoenixd";
-
version = "0.5.0";
+
version = "0.6.0";
-
suffix =
-
{
-
aarch64-darwin = "macos-arm64";
-
x86_64-darwin = "macos-x64";
-
x86_64-linux = "linux-x64";
-
}
-
.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
-
-
src = fetchurl {
-
url = "https://github.com/ACINQ/phoenixd/releases/download/v${version}/phoenix-${version}-${suffix}.zip";
-
hash =
-
{
-
aarch64-darwin = "sha256-hfg/gca27t8psG1+7u5DvHCuQDQJou6Fp3+ySaz+MXc=";
-
x86_64-darwin = "sha256-qpwkt2rbilpQVmAkl6Q4XyecSzayzYb1k5H5ur7SItk=";
-
x86_64-linux = "sha256-lshsJQ9km8C+KDtp1nQiK8h7LJN3A8GlGN6Yhb3VPtk=";
-
}
-
.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
-
};
+
src =
+
let
+
selectSystem =
+
attrs:
+
attrs.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
+
suffix = selectSystem {
+
aarch64-darwin = "macos-arm64";
+
x86_64-darwin = "macos-x64";
+
x86_64-linux = "linux-x64";
+
aarch64-linux = "linux-arm64";
+
};
+
in
+
fetchurl {
+
url = "https://github.com/ACINQ/phoenixd/releases/download/v${finalAttrs.version}/phoenixd-${finalAttrs.version}-${suffix}.zip";
+
hash = selectSystem {
+
aarch64-darwin = "sha256-CJCGVL6az02Yxdj7RpXMScSdx+yKvMfBMKE0SaBYTow=";
+
x86_64-darwin = "sha256-ClSyQ8Ir13wVBBpYivv2W+s5ZlYrx+6drUbUp5EhlBo=";
+
x86_64-linux = "sha256-z+gfiFor8nDHl2vjGCA0RYKrUXmdiRX6ztucXOOxLoI=";
+
aarch64-linux = "sha256-YkGJJS3dSHtxB891urGdL3f5F5TYIKBHKRrREAk5NkM=";
+
};
+
};
-
nativeBuildInputs = [ unzip ] ++ lib.optionals stdenv.isLinux [ autoPatchelfHook ];
+
nativeBuildInputs = [ unzip ] ++ lib.optionals stdenv.hostPlatform.isLinux [ autoPatchelfHook ];
-
buildInputs = lib.optionals stdenv.isLinux [
+
buildInputs = lib.optionals stdenv.hostPlatform.isLinux [
libgcc # provides libgcc_s.so.1
libxcrypt-legacy # provides libcrypt.so.1
zlib # provides libz.so.1
···
installPhase = ''
runHook preInstall
-
mkdir -p $out/bin
-
cp phoenix{-cli,d} $out/bin/
+
install -Dm0755 phoenix-cli $out/bin/phoenix-cli
+
install -Dm0755 phoenixd $out/bin/phoenixd
runHook postInstall
'';
-
meta = with lib; {
+
passthru.updateScript = ./update.sh;
+
+
meta = {
description = "Server equivalent of the popular Phoenix wallet for mobile";
homepage = "https://phoenix.acinq.co/server";
-
license = licenses.asl20;
-
maintainers = with maintainers; [ prusnak ];
-
platforms = platforms.linux ++ platforms.darwin;
+
license = lib.licenses.asl20;
+
maintainers = with lib.maintainers; [ prusnak ];
+
platforms = [
+
"aarch64-linux"
+
"aarch64-darwin"
+
"x86_64-linux"
+
"x86_64-darwin"
+
];
};
-
}
+
})
+24
pkgs/by-name/ph/phoenixd/update.sh
···
+
#!/usr/bin/env nix-shell
+
#!nix-shell -i bash -p bash nix curl coreutils common-updater-scripts nix-update
+
+
set -eou pipefail
+
+
currentVersion=$(nix-instantiate --eval -E "with import ./. {}; phoenixd.version or (lib.getVersion phoenixd)" | tr -d '"')
+
nix-update phoenixd --system x86_64-linux
+
latestVersion=$(nix-instantiate --eval -E "with import ./. {}; phoenixd.version or (lib.getVersion phoenixd)" | tr -d '"')
+
+
echo "latest version: $latestVersion"
+
echo "current version: $currentVersion"
+
+
if [[ "$latestVersion" == "$currentVersion" ]]; then
+
echo "package is up-to-date"
+
exit 0
+
fi
+
+
for system in \
+
aarch64-linux \
+
x86_64-darwin \
+
aarch64-darwin; do
+
hash=$(nix hash convert --to sri --hash-algo sha256 $(nix-prefetch-url $(nix-instantiate --eval -E "with import ./. {}; phoenixd.src.url" --system "$system" | tr -d '"')))
+
update-source-version phoenixd $latestVersion $hash --system=$system --ignore-same-version
+
done
+2 -2
pkgs/by-name/re/reddit-tui/package.nix
···
}:
buildGoModule (finalAttrs: {
pname = "reddit-tui";
-
version = "0.3.6";
+
version = "0.3.8";
src = fetchFromGitHub {
owner = "tonymajestro";
repo = "reddit-tui";
tag = "v${finalAttrs.version}";
-
hash = "sha256-5S5wEPoVqYxIIEBXlrP5a+0xF66n6FMWkH0iTdIxioo=";
+
hash = "sha256-RorH4O4SKZOGb9UmEr1vsKu2w21Fx9IcZbSlGPX8Kms=";
};
vendorHash = "sha256-Yqo80adzA9gtSD3qzM+fObzRt3WbcMATQef0g7/z2Dw=";
doCheck = false;
+25
pkgs/by-name/sp/spoolman/common.nix
···
+
{ lib, fetchFromGitHub }:
+
let
+
version = "0.22.1";
+
in
+
{
+
inherit version;
+
+
src = fetchFromGitHub {
+
owner = "Donkie";
+
repo = "Spoolman";
+
rev = "v${version}";
+
hash = "sha256-EVGpwcjEh4u8Vtgu2LypqMqArYLZe7oh1qYhGZpgjh0=";
+
};
+
+
meta = with lib; {
+
description = "Keep track of your inventory of 3D-printer filament spools";
+
homepage = "https://github.com/Donkie/Spoolman";
+
license = licenses.mit;
+
maintainers = with maintainers; [
+
MayNiklas
+
pinpox
+
];
+
mainProgram = "spoolman";
+
};
+
}
+23
pkgs/by-name/sp/spoolman/frontend.nix
···
+
{ buildNpmPackage, callPackage }:
+
let
+
common = callPackage ./common.nix { };
+
in
+
+
buildNpmPackage {
+
pname = "spoolman-frontend";
+
+
inherit (common) version;
+
+
src = "${common.src}/client";
+
+
npmDepsHash = "sha256-E4DvEOSHfwwM0C+vTRMDQbCNv2IDyFOFwfqszrI+uOA=";
+
+
VITE_APIURL = "/api/v1";
+
+
installPhase = "cp -r dist $out";
+
+
meta = common.meta // {
+
description = "Spoolman frontend";
+
mainProgram = "spoolman-frontend";
+
};
+
}
+79
pkgs/by-name/sp/spoolman/package.nix
···
+
{
+
python312,
+
lib,
+
callPackage,
+
writeShellScript,
+
makeWrapper,
+
}:
+
+
let
+
common = callPackage ./common.nix { };
+
frontend = callPackage ./frontend.nix { };
+
python = python312;
+
in
+
+
python.pkgs.buildPythonPackage rec {
+
+
pname = "spoolman";
+
inherit (common) version src;
+
+
pyproject = true;
+
+
nativeBuildInputs = [
+
makeWrapper
+
python.pkgs.pdm-backend
+
python.pkgs.pythonRelaxDepsHook
+
];
+
+
pythonRelaxDeps = [ "setuptools" ];
+
+
postPatch = ''
+
substituteInPlace pyproject.toml --replace-fail psycopg2-binary psycopg2
+
'';
+
+
propagatedBuildInputs = with python.pkgs; [
+
uvloop
+
alembic
+
asyncpg
+
fastapi
+
hishel
+
httptools
+
httpx
+
aiosqlite
+
platformdirs
+
prometheus-client
+
psycopg2
+
pydantic
+
scheduler
+
setuptools
+
sqlalchemy
+
sqlalchemy-cockroachdb
+
uvicorn
+
websockets
+
];
+
+
pythonImportsCheck = [ "spoolman" ];
+
+
postInstall =
+
let
+
start_script = writeShellScript "start-spoolman" ''
+
${lib.getExe python.pkgs.uvicorn} "$@" spoolman.main:app;
+
'';
+
in
+
''
+
mkdir -p $out/runpath/client/dist $out/bin
+
cp -r $src/* $out/runpath
+
cp -r ${frontend}/* $out/runpath/client/dist
+
+
makeWrapper ${start_script} $out/bin/spoolman \
+
--chdir $out/runpath \
+
--prefix PYTHONPATH : "$out/${python.sitePackages}" \
+
--prefix PYTHONPATH : "${python.pkgs.makePythonPath propagatedBuildInputs}" \
+
--prefix PATH : "${python.pkgs.alembic}/bin"
+
'';
+
+
meta = common.meta // {
+
description = "Spoolman server";
+
mainProgram = "spoolman";
+
};
+
}
+1 -1
pkgs/by-name/sr/srm-cuarzo/package.nix
···
meta = {
description = "Simple Rendering Manager";
homepage = "https://github.com/CuarzoSoftware/SRM";
-
maintainers = [ lib.maintainers.dblsaiko ];
+
maintainers = [ ];
platforms = lib.platforms.linux;
};
})
+49
pkgs/by-name/sy/systemd-bootchart/package.nix
···
+
{
+
lib,
+
stdenv,
+
fetchFromGitHub,
+
autoreconfHook,
+
pkg-config,
+
systemd,
+
libxslt,
+
docbook_xsl,
+
docbook_xml_dtd_45,
+
}:
+
+
stdenv.mkDerivation (finalAttrs: {
+
pname = "systemd-bootchart";
+
version = "235";
+
+
src = fetchFromGitHub {
+
owner = "systemd";
+
repo = "systemd-bootchart";
+
tag = "v${finalAttrs.version}";
+
hash = "sha256-1h6/Q6ShfJbu/DXENIe5GAQiZp4jlOAg6SAR36cmg2I=";
+
};
+
+
strictDeps = true;
+
+
nativeBuildInputs = [
+
autoreconfHook
+
pkg-config
+
libxslt
+
docbook_xsl
+
docbook_xml_dtd_45
+
];
+
+
buildInputs = [
+
systemd
+
];
+
+
configureFlags = [
+
"--with-rootprefix=$(out)"
+
];
+
+
meta = {
+
description = "Boot performance graphing tool from systemd";
+
homepage = "https://github.com/systemd/systemd-bootchart";
+
license = lib.licenses.lgpl21Plus;
+
maintainers = [ lib.maintainers.brianmcgillion ];
+
platforms = lib.platforms.linux;
+
};
+
})
+3 -3
pkgs/by-name/to/tor-browser/package.nix
···
++ lib.optionals mediaSupport [ ffmpeg ]
);
-
version = "14.5.1";
+
version = "14.5.2";
sources = {
x86_64-linux = fetchurl {
···
"https://tor.eff.org/dist/torbrowser/${version}/tor-browser-linux-x86_64-${version}.tar.xz"
"https://tor.calyxinstitute.org/dist/torbrowser/${version}/tor-browser-linux-x86_64-${version}.tar.xz"
];
-
hash = "sha256-XmJsHPnzu7Sk1LeOQG2KN+s8YGeTI/Z7pa+OrkEIaIQ=";
+
hash = "sha256-ZvNje6LtrjS8gURyp38eLzPD7ji2DlOkkphW4KBmus0=";
};
i686-linux = fetchurl {
···
"https://tor.eff.org/dist/torbrowser/${version}/tor-browser-linux-i686-${version}.tar.xz"
"https://tor.calyxinstitute.org/dist/torbrowser/${version}/tor-browser-linux-i686-${version}.tar.xz"
];
-
hash = "sha256-68kqhHAwCBAxFnXW1MbMdG//AB3TI/luomVH3v26DkM=";
+
hash = "sha256-+Dt1uDZeUV65jbJ5pYv8v/P8UxTy37cHjIqmPd8SuGg=";
};
};
+19 -11
pkgs/by-name/tp/tpm2-pkcs11/package.nix
···
$out/lib/libtpm2_pkcs11.so.0.0.0
'';
-
passthru = {
+
passthru = rec {
+
esapi = tpm2-pkcs11-esapi;
+
fapi = tpm2-pkcs11-fapi;
+
abrmd = tpm2-pkcs11.override {
+
abrmdSupport = true;
+
};
+
esapi-abrmd = tpm2-pkcs11-esapi.override {
+
abrmdSupport = true;
+
};
+
fapi-abrmd = tpm2-pkcs11-fapi.override {
+
abrmdSupport = true;
+
};
tests = {
-
inherit tpm2-pkcs11-esapi tpm2-pkcs11-fapi;
-
tpm2-pkcs11-abrmd = tpm2-pkcs11.override {
-
abrmdSupport = true;
-
};
-
tpm2-pkcs11-esapi-abrmd = tpm2-pkcs11-esapi.override {
-
abrmdSupport = true;
-
};
-
tpm2-pkcs11-fapi-abrmd = tpm2-pkcs11-fapi.override {
-
abrmdSupport = true;
-
};
+
inherit
+
esapi
+
fapi
+
abrmd
+
esapi-abrmd
+
fapi-abrmd
+
;
};
};
+4 -4
pkgs/by-name/ty/typstyle/package.nix
···
rustPlatform.buildRustPackage (finalAttrs: {
pname = "typstyle";
-
version = "0.13.7";
+
version = "0.13.8";
src = fetchFromGitHub {
owner = "Enter-tainer";
repo = "typstyle";
tag = "v${finalAttrs.version}";
-
hash = "sha256-vk/u5Q1MN6JlZuY4PnDEw52SSVYCciJUAbBduf2JiZQ=";
+
hash = "sha256-6gR235YZrGfm0OtXTXY6NN/Yqxj9xlIasxdAYuO6z64=";
};
useFetchCargoVendor = true;
-
cargoHash = "sha256-XYBkfyomZiTjZccux72dc4Ku4Zec4ms6m5U2xwFgjEY=";
+
cargoHash = "sha256-0aRVabVuzxRSw4bDfKryPYYbkPp9CYQafZ50kHjZ8pM=";
# Disabling tests requiring network access
checkFlags = [
···
};
meta = {
-
changelog = "https://github.com/Enter-tainer/typstyle/blob/v${finalAttrs.version}/CHANGELOG.md";
+
changelog = "https://github.com/Enter-tainer/typstyle/blob/${finalAttrs.src.tag}/CHANGELOG.md";
description = "Format your typst source code";
homepage = "https://github.com/Enter-tainer/typstyle";
license = lib.licenses.asl20;
+30 -14
pkgs/by-name/wr/wrangler/package.nix
···
llvmPackages,
musl,
xorg,
+
jq,
+
moreutils,
gitUpdater,
+
versionCheckHook,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "wrangler";
-
version = "3.80.1";
+
version = "4.16.0";
src = fetchFromGitHub {
owner = "cloudflare";
repo = "workers-sdk";
rev = "wrangler@${finalAttrs.version}";
-
hash = "sha256-9ClosoDIT+yP2dvNenHW2RSxLimOT3znXD+Pq+N6cQA=";
+
hash = "sha256-H/ds5NfOjyTZ4AcsCAP0wbalgOljOUtLSjkjEn+atVk=";
};
pnpmDeps = pnpm_9.fetchDeps {
-
inherit (finalAttrs) pname version src;
-
hash = "sha256-8EItfBV2n2rnXPCTYjDZlr/tdlEn8YOdIzOsj35w5gQ=";
+
inherit (finalAttrs)
+
pname
+
version
+
src
+
postPatch
+
;
+
hash = "sha256-msIXeN8t8Dm3RUkw4woZIMn7wXxw/0jVl8oFmkPJbrA=";
};
+
# pnpm packageManager version in workers-sdk root package.json may not match nixpkgs
+
postPatch = ''
+
jq 'del(.packageManager)' package.json | sponge package.json
+
'';
passthru.updateScript = gitUpdater { rev-prefix = "wrangler@"; };
···
makeWrapper
nodejs
pnpm_9.configHook
+
jq
+
moreutils
]
++ lib.optionals (stdenv.hostPlatform.isLinux) [
autoPatchelfHook
···
# @cloudflare/vitest-pool-workers wanted to run a server as part of the build process
# so I simply removed it
postBuild = ''
-
rm -fr packages/vitest-pool-workers
+
mv packages/vitest-pool-workers packages/~vitest-pool-workers
NODE_ENV="production" pnpm --filter workers-shared run build
NODE_ENV="production" pnpm --filter miniflare run build
NODE_ENV="production" pnpm --filter wrangler run build
···
# - the build process builds a version of miniflare which is used by wrangler; for this reason, the miniflare package is copied also
# - pnpm stores all content in the top-level node_modules directory, but it is linked to from a node_modules directory inside wrangler
# - as they are linked via symlinks, the relative location of them on the filesystem should be maintained
+
# - Update: Now we're copying everything over due to broken symlink errors
installPhase = ''
runHook preInstall
mkdir -p $out/bin $out/lib $out/lib/packages/wrangler
-
rm -rf node_modules/typescript node_modules/eslint node_modules/prettier node_modules/bin node_modules/.bin node_modules/**/bin node_modules/**/.bin
+
mv packages/~vitest-pool-workers packages/vitest-pool-workers
+
cp -r fixtures $out/lib
+
cp -r packages $out/lib
cp -r node_modules $out/lib
-
cp -r packages/miniflare $out/lib/packages
-
cp -r packages/workers-tsconfig $out/lib/packages
-
cp -r packages/workers-shared $out/lib/packages
-
cp -r packages/wrangler/node_modules $out/lib/packages/wrangler
-
cp -r packages/wrangler/templates $out/lib/packages/wrangler
-
cp -r packages/wrangler/wrangler-dist $out/lib/packages/wrangler
+
cp -r tools $out/lib/tools
+
rm -rf node_modules/typescript node_modules/eslint node_modules/prettier node_modules/bin node_modules/.bin node_modules/**/bin node_modules/**/.bin
rm -rf $out/lib/**/bin $out/lib/**/.bin
-
cp -r packages/wrangler/bin $out/lib/packages/wrangler
NODE_PATH_ARRAY=( "$out/lib/node_modules" "$out/lib/packages/wrangler/node_modules" )
makeWrapper ${lib.getExe nodejs} $out/bin/wrangler \
--inherit-argv0 \
···
--set-default SSL_CERT_FILE "${cacert}/etc/ssl/certs/ca-bundle.crt" # https://github.com/cloudflare/workers-sdk/issues/3264
runHook postInstall
'';
-
+
doInstallCheck = true;
+
nativeInstallCheckInputs = [
+
versionCheckHook
+
];
meta = {
description = "Command-line interface for all things Cloudflare Workers";
homepage = "https://github.com/cloudflare/workers-sdk#readme";
···
seanrmurphy
dezren39
ryand56
+
ezrizhu
];
mainProgram = "wrangler";
# Tunneling and other parts of wrangler, which require workerd won't run on
+2 -2
pkgs/by-name/xm/xmedcon/package.nix
···
stdenv.mkDerivation rec {
pname = "xmedcon";
-
version = "0.25.1";
+
version = "0.25.2";
src = fetchurl {
url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.bz2";
-
sha256 = "sha256-WKyX65LQe/UbaE6jQi36kTgi4IXjgY1ZkE1aPQ+o0Tk=";
+
sha256 = "sha256-vg14IRLukAOBtAE32AIyXTRzLzwKCGsvIFYRas/hyNs=";
};
buildInputs = [
+3 -3
pkgs/by-name/ya/yazi/plugins/projects/default.nix
···
}:
mkYaziPlugin {
pname = "projects.yazi";
-
version = "0-unstable-2025-03-03";
+
version = "0-unstable-2025-05-17";
src = fetchFromGitHub {
owner = "MasouShizuka";
repo = "projects.yazi";
-
rev = "4f11eccf835556600a37730b383ee12f00d4fc59";
-
hash = "sha256-XHGlQn0Nsxh/WScz4v2I+IWvzGJ9QTXbB7zgSCPQ+E0=";
+
rev = "df44165610faa66f623a3e2085e05085cba23d66";
+
hash = "sha256-XVN605TujmA4f1gCjJRnBBrCjmfoTdtNwhRBEqTBnLM=";
};
meta = {
+2 -2
pkgs/development/interpreters/elixir/1.18.nix
···
{ mkDerivation }:
mkDerivation {
-
version = "1.18.3";
-
sha256 = "sha256-jH+1+IBWHSTyqakGClkP1Q4O2FWbHx7kd7zn6YGCog0=";
+
version = "1.18.4";
+
sha256 = "sha256-PwogI+HfRXy5M7Xn/KyDjm5vUquTBoGxliSV0A2AwSA=";
# https://hexdocs.pm/elixir/1.18.0/compatibility-and-deprecations.html#between-elixir-and-erlang-otp
minimumOTPVersion = "25";
escriptPath = "lib/elixir/scripts/generate_app.escript";
+71
pkgs/development/python-modules/django-lasuite/default.nix
···
+
{
+
lib,
+
buildPythonPackage,
+
fetchFromGitHub,
+
hatchling,
+
django,
+
django-configurations,
+
djangorestframework,
+
joserfc,
+
mozilla-django-oidc,
+
pyjwt,
+
requests,
+
requests-toolbelt,
+
factory-boy,
+
pytest-django,
+
responses,
+
celery,
+
pytestCheckHook,
+
}:
+
+
buildPythonPackage rec {
+
pname = "django-lasuite";
+
version = "0.0.9";
+
pyproject = true;
+
+
src = fetchFromGitHub {
+
owner = "suitenumerique";
+
repo = "django-lasuite";
+
tag = "v${version}";
+
hash = "sha256-vUtWBR9uRc99jTe0Gg7k4EZZAkqHct5+GCOHp1mTIkA=";
+
};
+
+
build-system = [ hatchling ];
+
+
dependencies = [
+
django
+
django-configurations
+
djangorestframework
+
joserfc
+
mozilla-django-oidc
+
pyjwt
+
requests
+
requests-toolbelt
+
];
+
+
pythonRelaxDeps = true;
+
+
nativeCheckInputs = [
+
celery
+
pytestCheckHook
+
pytest-django
+
factory-boy
+
responses
+
];
+
+
preCheck = ''
+
export PYTHONPATH=tests:$PYTHONPATH
+
export DJANGO_SETTINGS_MODULE=test_project.settings
+
'';
+
+
pythonImportsCheck = [ "lasuite" ];
+
+
meta = {
+
description = "The common library for La Suite Django projects and Proconnected Django projects";
+
homepage = "https://github.com/suitenumerique/django-lasuite";
+
changelog = "https://github.com/suitenumerique/django-lasuite/blob/${src.tag}/CHANGELOG.md";
+
license = lib.licenses.mit;
+
maintainers = with lib.maintainers; [ soyouzpanda ];
+
broken = lib.versionOlder django.version "5.2";
+
};
+
}
pkgs/development/python-modules/django/5.nix pkgs/development/python-modules/django/5_1.nix
+150
pkgs/development/python-modules/django/5_2.nix
···
+
{
+
lib,
+
stdenv,
+
buildPythonPackage,
+
fetchFromGitHub,
+
fetchpatch,
+
pythonOlder,
+
replaceVars,
+
+
# build-system
+
setuptools,
+
+
# patched in
+
geos,
+
gdal,
+
withGdal ? false,
+
+
# dependencies
+
asgiref,
+
sqlparse,
+
+
# optional-dependencies
+
argon2-cffi,
+
bcrypt,
+
+
# tests
+
aiosmtpd,
+
docutils,
+
geoip2,
+
jinja2,
+
numpy,
+
pillow,
+
pylibmc,
+
pymemcache,
+
python,
+
pywatchman,
+
pyyaml,
+
pytz,
+
redis,
+
selenium,
+
tblib,
+
tzdata,
+
}:
+
+
buildPythonPackage rec {
+
pname = "django";
+
version = "5.2.1";
+
pyproject = true;
+
+
disabled = pythonOlder "3.10";
+
+
src = fetchFromGitHub {
+
owner = "django";
+
repo = "django";
+
rev = "refs/tags/${version}";
+
hash = "sha256-JmO2IEWrpA7/FXOwESLvIIuHmi2HQgvg28LVNmBXgLA=";
+
};
+
+
patches =
+
[
+
(replaceVars ./django_5_set_zoneinfo_dir.patch {
+
zoneinfo = tzdata + "/share/zoneinfo";
+
})
+
# prevent tests from messing with our pythonpath
+
./django_5_tests_pythonpath.patch
+
# disable test that expects timezone issues
+
./django_5_disable_failing_tests.patch
+
]
+
++ lib.optionals withGdal [
+
(replaceVars ./django_5_set_geos_gdal_lib.patch {
+
geos = geos;
+
gdal = gdal;
+
extension = stdenv.hostPlatform.extensions.sharedLibrary;
+
})
+
];
+
+
postPatch = ''
+
substituteInPlace tests/utils_tests/test_autoreload.py \
+
--replace-fail "/usr/bin/python" "${python.interpreter}"
+
'';
+
+
build-system = [ setuptools ];
+
+
dependencies = [
+
asgiref
+
sqlparse
+
];
+
+
optional-dependencies = {
+
argon2 = [ argon2-cffi ];
+
bcrypt = [ bcrypt ];
+
};
+
+
nativeCheckInputs = [
+
# tests/requirements/py3.txt
+
aiosmtpd
+
docutils
+
geoip2
+
jinja2
+
numpy
+
pillow
+
pylibmc
+
pymemcache
+
pywatchman
+
pyyaml
+
pytz
+
redis
+
selenium
+
tblib
+
tzdata
+
] ++ lib.flatten (lib.attrValues optional-dependencies);
+
+
doCheck =
+
!stdenv.hostPlatform.isDarwin
+
# pywatchman depends on folly which does not support 32bits
+
&& !stdenv.hostPlatform.is32bit;
+
+
preCheck = ''
+
# make sure the installed library gets imported
+
rm -rf django
+
+
# fails to import github_links from docs/_ext/github_links.py
+
rm tests/sphinx/test_github_links.py
+
+
# provide timezone data, works only on linux
+
export TZDIR=${tzdata}/${python.sitePackages}/tzdata/zoneinfo
+
+
export PYTHONPATH=$PWD/docs/_ext:$PYTHONPATH
+
'';
+
+
checkPhase = ''
+
runHook preCheck
+
+
pushd tests
+
${python.interpreter} runtests.py --settings=test_sqlite
+
popd
+
+
runHook postCheck
+
'';
+
+
__darwinAllowLocalNetworking = true;
+
+
meta = with lib; {
+
changelog = "https://docs.djangoproject.com/en/${lib.versions.majorMinor version}/releases/${version}/";
+
description = "High-level Python Web framework that encourages rapid development and clean, pragmatic design";
+
homepage = "https://www.djangoproject.com";
+
license = licenses.bsd3;
+
maintainers = with maintainers; [ hexa ];
+
};
+
}
+37
pkgs/development/python-modules/scheduler/default.nix
···
+
{
+
lib,
+
buildPythonPackage,
+
fetchPypi,
+
setuptools,
+
wheel,
+
typeguard,
+
}:
+
+
buildPythonPackage rec {
+
pname = "scheduler";
+
version = "0.8.5";
+
pyproject = true;
+
+
src = fetchPypi {
+
inherit pname version;
+
hash = "sha256-8t1AUbD6cpETSoqoY88bSZmj7FuaF6c+7kJDJX2Lp4k=";
+
};
+
+
nativeBuildInputs = [
+
setuptools
+
wheel
+
];
+
+
propagatedBuildInputs = [
+
typeguard
+
];
+
+
pythonImportsCheck = [ "scheduler" ];
+
+
meta = with lib; {
+
description = "A simple in-process python scheduler library with asyncio, threading and timezone support. Use datetime standard library objects for planning of Jobs depending on time cycles, fixed times, weekdays, dates, weights, offsets and execution counts";
+
homepage = "https://pypi.org/project/scheduler/";
+
license = licenses.lgpl3;
+
maintainers = with maintainers; [ pinpox ];
+
};
+
}
+37
pkgs/development/python-modules/sqlalchemy-cockroachdb/default.nix
···
+
{
+
lib,
+
buildPythonPackage,
+
fetchPypi,
+
setuptools,
+
wheel,
+
sqlalchemy,
+
}:
+
+
buildPythonPackage rec {
+
pname = "sqlalchemy-cockroachdb";
+
version = "2.0.2";
+
pyproject = true;
+
+
src = fetchPypi {
+
inherit pname version;
+
hash = "sha256-EZdW65BYVdahE0W5nP6FMDGj/lmKnEvzWo3ayfif6Mw=";
+
};
+
+
nativeBuildInputs = [
+
setuptools
+
wheel
+
];
+
+
propagatedBuildInputs = [
+
sqlalchemy
+
];
+
+
pythonImportsCheck = [ "sqlalchemy_cockroachdb" ];
+
+
meta = with lib; {
+
description = "CockroachDB dialect for SQLAlchemy";
+
homepage = "https://pypi.org/project/sqlalchemy-cockroachdb";
+
license = licenses.asl20;
+
maintainers = with maintainers; [ pinpox ];
+
};
+
}
+11
pkgs/development/python-modules/supervisor/default.nix
···
stdenv,
buildPythonPackage,
fetchPypi,
+
fetchpatch,
mock,
pytestCheckHook,
pythonOlder,
···
inherit pname version;
hash = "sha256-NHYbrhojxYGSKBpRFfsH+/IsmwEzwIFmvv/HD+0+vBI=";
};
+
+
patches = [
+
# adapted from 49b74cafb6e72e0e620e321711c1b81a0823be12
+
./fix-python313-unittest.patch
+
# Fix SubprocessTests.test_getProcessStateDescription on python 3.13
+
(fetchpatch {
+
url = "https://github.com/Supervisor/supervisor/commit/27efcd59b454e4f3a81e5e1b02ab0d8d0ff2f45f.patch";
+
hash = "sha256-9KNcdRJwnZJA00dDy/mAS7RJuBei60YzVhWkeQgmJ8c=";
+
})
+
];
propagatedBuildInputs = [ setuptools ];
+337
pkgs/development/python-modules/supervisor/fix-python313-unittest.patch
···
+
From e18f91d4ddbc30920c828e782ce40fbe844fcab9 Mon Sep 17 00:00:00 2001
+
From: Mike Naberezny <mike@naberezny.com>
+
Date: Sun, 25 Dec 2022 10:58:24 -0800
+
Subject: [PATCH] Remove unused test_suite() that now causes unittest and
+
pytest warnings
+
+
supervisor/tests/test_confecho.py::test_suite
+
/home/runner/work/supervisor/supervisor/supervisor/tests/test_confecho.py:18: DeprecationWarning: unittest.findTestCases() is deprecated and will be removed in Python 3.13. Please use unittest.TestLoader.loadTestsFromModule() instead.
+
return unittest.findTestCases(sys.modules[__name__])
+
+
supervisor/tests/test_confecho.py::test_suite
+
/home/runner/work/supervisor/supervisor/.tox/py311/lib/python3.11/site-packages/_pytest/python.py:199: PytestReturnNotNoneWarning: Expected None, but supervisor/tests/test_confecho.py::test_suite returned <unittest.suite.TestSuite tests=[<unittest.suite.TestSuite tests=[<supervisor.tests.test_confecho.TopLevelFunctionTests testMethod=test_main_writes_data_out_that_looks_like_a_config_file>]>]>, which will be an error in a future version of pytest. Did you mean to use `assert` instead of `return`?
+
---
+
supervisor/tests/test_childutils.py | 7 -------
+
supervisor/tests/test_confecho.py | 7 -------
+
supervisor/tests/test_dispatchers.py | 6 ------
+
supervisor/tests/test_end_to_end.py | 6 ------
+
supervisor/tests/test_events.py | 7 -------
+
supervisor/tests/test_http.py | 6 ------
+
supervisor/tests/test_loggers.py | 6 ------
+
supervisor/tests/test_options.py | 7 -------
+
supervisor/tests/test_poller.py | 7 -------
+
supervisor/tests/test_rpcinterfaces.py | 8 --------
+
supervisor/tests/test_socket_manager.py | 20 --------------------
+
supervisor/tests/test_states.py | 7 -------
+
supervisor/tests/test_supervisorctl.py | 7 -------
+
supervisor/tests/test_supervisord.py | 7 -------
+
supervisor/tests/test_templating.py | 9 ---------
+
supervisor/tests/test_web.py | 6 ------
+
supervisor/tests/test_xmlrpc.py | 1 -
+
17 files changed, 124 deletions(-)
+
+
diff --git a/supervisor/tests/test_childutils.py b/supervisor/tests/test_childutils.py
+
index f2b39d8..94193fc 100644
+
--- a/supervisor/tests/test_childutils.py
+
+++ b/supervisor/tests/test_childutils.py
+
@@ -132,10 +132,3 @@ class TestEventListenerProtocol(unittest.TestCase):
+
listener.send(msg, stdout)
+
expected = '%s%s\n%s' % (begin, len(msg), msg)
+
self.assertEqual(stdout.getvalue(), expected)
+
-
+
-
+
-def test_suite():
+
- return unittest.findTestCases(sys.modules[__name__])
+
-
+
-if __name__ == '__main__':
+
- unittest.main(defaultTest='test_suite')
+
diff --git a/supervisor/tests/test_confecho.py b/supervisor/tests/test_confecho.py
+
index 6ae5108..f35f845 100644
+
--- a/supervisor/tests/test_confecho.py
+
+++ b/supervisor/tests/test_confecho.py
+
@@ -12,10 +12,3 @@ class TopLevelFunctionTests(unittest.TestCase):
+
+
output = sio.getvalue()
+
self.assertTrue("[supervisord]" in output)
+
-
+
-
+
-def test_suite():
+
- return unittest.findTestCases(sys.modules[__name__])
+
-
+
-if __name__ == '__main__':
+
- unittest.main(defaultTest='test_suite')
+
diff --git a/supervisor/tests/test_dispatchers.py b/supervisor/tests/test_dispatchers.py
+
index 87692e2..ee6e44a 100644
+
--- a/supervisor/tests/test_dispatchers.py
+
+++ b/supervisor/tests/test_dispatchers.py
+
@@ -1227,9 +1227,3 @@ class stripEscapeTests(unittest.TestCase):
+
def test_noansi(self):
+
noansi = b'Hello world... this is longer than a token!'
+
self.assertEqual(self._callFUT(noansi), noansi)
+
-
+
-def test_suite():
+
- return unittest.findTestCases(sys.modules[__name__])
+
-
+
-if __name__ == '__main__':
+
- unittest.main(defaultTest='test_suite')
+
diff --git a/supervisor/tests/test_end_to_end.py b/supervisor/tests/test_end_to_end.py
+
index dd5c977..763da48 100644
+
--- a/supervisor/tests/test_end_to_end.py
+
+++ b/supervisor/tests/test_end_to_end.py
+
@@ -419,9 +419,3 @@ class EndToEndTests(BaseTestCase):
+
finally:
+
transport.close()
+
self.assertEqual(ident, "from_command_line")
+
-
+
-def test_suite():
+
- return unittest.findTestCases(sys.modules[__name__])
+
-
+
-if __name__ == '__main__':
+
- unittest.main(defaultTest='test_suite')
+
diff --git a/supervisor/tests/test_events.py b/supervisor/tests/test_events.py
+
index bd33a0c..a432da8 100644
+
--- a/supervisor/tests/test_events.py
+
+++ b/supervisor/tests/test_events.py
+
@@ -508,10 +508,3 @@ class TestUtilityFunctions(unittest.TestCase):
+
self.assertTrue(events.EventTypes.FOO is FooEvent)
+
finally:
+
del events.EventTypes.FOO
+
-
+
-def test_suite():
+
- return unittest.findTestCases(sys.modules[__name__])
+
-
+
-if __name__ == '__main__':
+
- unittest.main(defaultTest='test_suite')
+
-
+
diff --git a/supervisor/tests/test_http.py b/supervisor/tests/test_http.py
+
index 1198597..f4c4496 100644
+
--- a/supervisor/tests/test_http.py
+
+++ b/supervisor/tests/test_http.py
+
@@ -684,9 +684,3 @@ class DummyProducer:
+
return self.data.pop(0)
+
else:
+
return b''
+
-
+
-def test_suite():
+
- return unittest.findTestCases(sys.modules[__name__])
+
-
+
-if __name__ == '__main__':
+
- unittest.main(defaultTest='test_suite')
+
diff --git a/supervisor/tests/test_loggers.py b/supervisor/tests/test_loggers.py
+
index 0742c17..a9ae297 100644
+
--- a/supervisor/tests/test_loggers.py
+
+++ b/supervisor/tests/test_loggers.py
+
@@ -599,9 +599,3 @@ class DummyHandler:
+
self.records.append(record)
+
def close(self):
+
self.closed = True
+
-
+
-def test_suite():
+
- return unittest.findTestCases(sys.modules[__name__])
+
-
+
-if __name__ == '__main__':
+
- unittest.main(defaultTest='test_suite')
+
diff --git a/supervisor/tests/test_options.py b/supervisor/tests/test_options.py
+
index f43537a..18e7399 100644
+
--- a/supervisor/tests/test_options.py
+
+++ b/supervisor/tests/test_options.py
+
@@ -3804,10 +3804,3 @@ class UtilFunctionsTests(unittest.TestCase):
+
self.assertEqual(s('process'), ('process', 'process'))
+
self.assertEqual(s('group:'), ('group', None))
+
self.assertEqual(s('group:*'), ('group', None))
+
-
+
-def test_suite():
+
- return unittest.findTestCases(sys.modules[__name__])
+
-
+
-if __name__ == '__main__':
+
- unittest.main(defaultTest='test_suite')
+
-
+
diff --git a/supervisor/tests/test_poller.py b/supervisor/tests/test_poller.py
+
index 1b12a8e..fb5bf81 100644
+
--- a/supervisor/tests/test_poller.py
+
+++ b/supervisor/tests/test_poller.py
+
@@ -437,10 +437,3 @@ class FakeKEvent(object):
+
def __init__(self, ident, filter):
+
self.ident = ident
+
self.filter = filter
+
-
+
-
+
-def test_suite():
+
- return unittest.findTestCases(sys.modules[__name__])
+
-
+
-if __name__ == '__main__':
+
- unittest.main(defaultTest='test_suite')
+
diff --git a/supervisor/tests/test_rpcinterfaces.py b/supervisor/tests/test_rpcinterfaces.py
+
index 0827adf..ec88a90 100644
+
--- a/supervisor/tests/test_rpcinterfaces.py
+
+++ b/supervisor/tests/test_rpcinterfaces.py
+
@@ -2392,14 +2392,6 @@ class Test_make_main_rpcinterface(unittest.TestCase):
+
)
+
+
+
-
+
class DummyRPCInterface:
+
def hello(self):
+
return 'Hello!'
+
-
+
-def test_suite():
+
- return unittest.findTestCases(sys.modules[__name__])
+
-
+
-if __name__ == '__main__':
+
- unittest.main(defaultTest='test_suite')
+
-
+
diff --git a/supervisor/tests/test_socket_manager.py b/supervisor/tests/test_socket_manager.py
+
index 626d786..8eaafaa 100644
+
--- a/supervisor/tests/test_socket_manager.py
+
+++ b/supervisor/tests/test_socket_manager.py
+
@@ -51,7 +51,6 @@ class ProxyTest(unittest.TestCase):
+
proxy = self._makeOne(Subject(), on_delete=self.setOnDeleteCalled)
+
self.assertEqual(5, proxy.getValue())
+
proxy = None
+
- gc_collect()
+
self.assertTrue(self.on_deleteCalled)
+
+
class ReferenceCounterTest(unittest.TestCase):
+
@@ -94,9 +93,6 @@ class ReferenceCounterTest(unittest.TestCase):
+
+
class SocketManagerTest(unittest.TestCase):
+
+
- def tearDown(self):
+
- gc_collect()
+
-
+
def _getTargetClass(self):
+
from supervisor.socket_manager import SocketManager
+
return SocketManager
+
@@ -160,12 +156,10 @@ class SocketManagerTest(unittest.TestCase):
+
self.assertTrue(sock_manager.is_prepared())
+
self.assertFalse(sock_manager.socket.close_called)
+
sock = None
+
- gc_collect()
+
# Socket not actually closed yet b/c ref ct is 1
+
self.assertTrue(sock_manager.is_prepared())
+
self.assertFalse(sock_manager.socket.close_called)
+
sock2 = None
+
- gc_collect()
+
# Socket closed
+
self.assertFalse(sock_manager.is_prepared())
+
self.assertTrue(sock_manager.socket.close_called)
+
@@ -178,7 +172,6 @@ class SocketManagerTest(unittest.TestCase):
+
self.assertNotEqual(sock_id, sock3_id)
+
# Drop ref ct to zero
+
del sock3
+
- gc_collect()
+
# Now assert that socket is closed
+
self.assertFalse(sock_manager.is_prepared())
+
self.assertTrue(sock_manager.socket.close_called)
+
@@ -193,7 +186,6 @@ class SocketManagerTest(unittest.TestCase):
+
self.assertEqual('Creating socket %s' % repr(conf), logger.data[0])
+
# socket close
+
del sock
+
- gc_collect()
+
self.assertEqual(len(logger.data), 2)
+
self.assertEqual('Closing socket %s' % repr(conf), logger.data[1])
+
+
@@ -242,15 +234,3 @@ class SocketManagerTest(unittest.TestCase):
+
self.fail()
+
except Exception as e:
+
self.assertEqual(e.args[0], 'Socket has not been prepared')
+
-
+
-def gc_collect():
+
- if __pypy__ is not None:
+
- gc.collect()
+
- gc.collect()
+
- gc.collect()
+
-
+
-def test_suite():
+
- return unittest.findTestCases(sys.modules[__name__])
+
-
+
-if __name__ == '__main__':
+
- unittest.main(defaultTest='test_suite')
+
diff --git a/supervisor/tests/test_states.py b/supervisor/tests/test_states.py
+
index ba8e58f..41fed7b 100644
+
--- a/supervisor/tests/test_states.py
+
+++ b/supervisor/tests/test_states.py
+
@@ -50,10 +50,3 @@ class TopLevelEventListenerStateTests(unittest.TestCase):
+
def test_getEventListenerStateDescription_returns_None_when_not_found(self):
+
self.assertEqual(states.getEventListenerStateDescription(3.14159),
+
None)
+
-
+
-
+
-def test_suite():
+
- return unittest.findTestCases(sys.modules[__name__])
+
-
+
-if __name__ == '__main__':
+
- unittest.main(defaultTest='test_suite')
+
diff --git a/supervisor/tests/test_supervisorctl.py b/supervisor/tests/test_supervisorctl.py
+
index 3c0e097..af2149b 100644
+
--- a/supervisor/tests/test_supervisorctl.py
+
+++ b/supervisor/tests/test_supervisorctl.py
+
@@ -2067,10 +2067,3 @@ class DummyPlugin:
+
+
def do_help(self, arg):
+
self.helped = True
+
-
+
-def test_suite():
+
- return unittest.findTestCases(sys.modules[__name__])
+
-
+
-if __name__ == '__main__':
+
- unittest.main(defaultTest='test_suite')
+
-
+
diff --git a/supervisor/tests/test_supervisord.py b/supervisor/tests/test_supervisord.py
+
index 3d7b4ff..4099bba 100644
+
--- a/supervisor/tests/test_supervisord.py
+
+++ b/supervisor/tests/test_supervisord.py
+
@@ -834,10 +834,3 @@ class SupervisordTests(unittest.TestCase):
+
self.assertEqual(supervisord.ticks[3600], 3600)
+
self.assertEqual(len(L), 6)
+
self.assertEqual(L[-1].__class__, events.Tick3600Event)
+
-
+
-def test_suite():
+
- return unittest.findTestCases(sys.modules[__name__])
+
-
+
-if __name__ == '__main__':
+
- unittest.main(defaultTest='test_suite')
+
-
+
diff --git a/supervisor/tests/test_templating.py b/supervisor/tests/test_templating.py
+
index 29311a7..8970c4f 100644
+
--- a/supervisor/tests/test_templating.py
+
+++ b/supervisor/tests/test_templating.py
+
@@ -1785,12 +1785,3 @@ def normalize_xml(s):
+
s = re.sub(r"(?s)\s+<", "<", s)
+
s = re.sub(r"(?s)>\s+", ">", s)
+
return s
+
-
+
-def test_suite():
+
- return unittest.findTestCases(sys.modules[__name__])
+
-
+
-def main():
+
- unittest.main(defaultTest='test_suite')
+
-
+
-if __name__ == '__main__':
+
- main()
+
diff --git a/supervisor/tests/test_web.py b/supervisor/tests/test_web.py
+
index 8bae3ed..f31972d 100644
+
--- a/supervisor/tests/test_web.py
+
+++ b/supervisor/tests/test_web.py
+
@@ -177,9 +177,3 @@ class StatusViewTests(unittest.TestCase):
+
+
class DummyContext:
+
pass
+
-
+
-def test_suite():
+
- return unittest.findTestCases(sys.modules[__name__])
+
-
+
-if __name__ == '__main__':
+
- unittest.main(defaultTest='test_suite')
+
diff --git a/supervisor/tests/test_xmlrpc.py b/supervisor/tests/test_xmlrpc.py
+
index 3d49ce0..8cee058 100644
+
--- a/supervisor/tests/test_xmlrpc.py
+
+++ b/supervisor/tests/test_xmlrpc.py
+
@@ -917,4 +917,3 @@ class DummyConnection:
+
+
def close(self):
+
self.closed = True
+
-
+
--
+
2.49.0
+
+2 -2
pkgs/development/web/nodejs/v24.nix
···
in
buildNodejs {
inherit enableNpm;
-
version = "24.0.2";
-
sha256 = "1597075afc06e5c6145d0bfbd77e2072c2ec0ab71ac4950cf008b2641374cd71";
+
version = "24.1.0";
+
sha256 = "c8171b2aeccb28c8c5347f273a25adae172fb2a65bc8c975bc22ec58949d0eaf";
patches =
(
if (stdenv.hostPlatform.emulatorAvailable buildPackages) then
+2 -2
pkgs/kde/misc/kirigami-addons/default.nix
···
}:
mkKdeDerivation rec {
pname = "kirigami-addons";
-
version = "1.8.0";
+
version = "1.8.1";
src = fetchurl {
url = "mirror://kde/stable/kirigami-addons/kirigami-addons-${version}.tar.xz";
-
hash = "sha256-USAIVeTyhVCfcbHPkjmjRQYx+Aj109CETroBAfW00es=";
+
hash = "sha256-AAKK5N+Z4lBRg0XqKNnN9J1wDprKxIJzS7UThNoR+UU=";
};
extraNativeBuildInputs = [ (qttools.override { withClang = true; }) ];
+2 -2
pkgs/servers/sql/percona-server/8_0.nix
···
stdenv.mkDerivation (finalAttrs: {
pname = "percona-server";
-
version = "8.0.41-32";
+
version = "8.0.42-33";
src = fetchurl {
url = "https://www.percona.com/downloads/Percona-Server-8.0/Percona-Server-${finalAttrs.version}/source/tarball/percona-server-${finalAttrs.version}.tar.gz";
-
hash = "sha256-3ua/8X0vzbBzjRNhmMjdz3Wfk7ECs67bPoCYBBNXywc=";
+
hash = "sha256-UDdmBz1RVjX/kRivvk69GPdtjLjWTglKxteiLxXKQGc=";
};
nativeBuildInputs = [
+11 -1
pkgs/top-level/python-packages.nix
···
django-json-widget = callPackage ../development/python-modules/django-json-widget { };
+
django-lasuite = callPackage ../development/python-modules/django-lasuite { };
+
django-leaflet = callPackage ../development/python-modules/django-leaflet { };
django-libsass = callPackage ../development/python-modules/django-libsass { };
···
django_4 = callPackage ../development/python-modules/django/4.nix { };
# Pre-release
-
django_5 = callPackage ../development/python-modules/django/5.nix { };
+
django_5 = self.django_5_1;
+
+
django_5_1 = callPackage ../development/python-modules/django/5_1.nix { };
+
+
django_5_2 = callPackage ../development/python-modules/django/5_2.nix { };
djangocms-admin-style = callPackage ../development/python-modules/djangocms-admin-style { };
···
schedule = callPackage ../development/python-modules/schedule { };
+
scheduler = callPackage ../development/python-modules/scheduler { };
+
schema = callPackage ../development/python-modules/schema { };
schema-salad = callPackage ../development/python-modules/schema-salad { };
···
sqlalchemy = callPackage ../development/python-modules/sqlalchemy { };
sqlalchemy-citext = callPackage ../development/python-modules/sqlalchemy-citext { };
+
+
sqlalchemy-cockroachdb = callPackage ../development/python-modules/sqlalchemy-cockroachdb { };
sqlalchemy-continuum = callPackage ../development/python-modules/sqlalchemy-continuum { };