diff --git a/doc/release-notes/rl-2505.section.md b/doc/release-notes/rl-2505.section.md index fb46f6ac04d6..8ae1797aaf1a 100644 --- a/doc/release-notes/rl-2505.section.md +++ b/doc/release-notes/rl-2505.section.md @@ -232,6 +232,8 @@ - `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. diff --git a/nixos/modules/programs/direnv.nix b/nixos/modules/programs/direnv.nix index 2558985a822e..51f2c795433f 100644 --- a/nixos/modules/programs/direnv.nix +++ b/nixos/modules/programs/direnv.nix @@ -26,6 +26,12 @@ in package = lib.mkPackageOption pkgs "direnv" { }; + finalPackage = lib.mkOption { + type = lib.types.package; + readOnly = true; + description = "The wrapped direnv package."; + }; + enableBashIntegration = enabledOption '' Bash integration ''; @@ -92,18 +98,28 @@ in }; 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 ''; @@ -111,14 +127,14 @@ in #$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 ''; @@ -138,20 +154,11 @@ in 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 != { }) { source = format.generate "direnv.toml" cfg.settings; diff --git a/nixos/modules/security/tpm2.nix b/nixos/modules/security/tpm2.nix index f60adb24cdbe..bb947cb32a56 100644 --- a/nixos/modules/security/tpm2.nix +++ b/nixos/modules/security/tpm2.nix @@ -75,8 +75,8 @@ in 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"; }; }; diff --git a/nixos/modules/system/boot/loader/systemd-boot/systemd-boot-builder.py b/nixos/modules/system/boot/loader/systemd-boot/systemd-boot-builder.py index 380ac69bdf7e..bd2a6d43301d 100644 --- a/nixos/modules/system/boot/loader/systemd-boot/systemd-boot-builder.py +++ b/nixos/modules/system/boot/loader/systemd-boot/systemd-boot-builder.py @@ -335,7 +335,7 @@ def install_bootloader(args: argparse.Namespace) -> None: 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") diff --git a/pkgs/applications/audio/qpwgraph/default.nix b/pkgs/applications/audio/qpwgraph/default.nix index fa379dbd53a0..d221a81617ac 100644 --- a/pkgs/applications/audio/qpwgraph/default.nix +++ b/pkgs/applications/audio/qpwgraph/default.nix @@ -14,14 +14,14 @@ 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 = [ diff --git a/pkgs/applications/editors/vscode/extensions/default.nix b/pkgs/applications/editors/vscode/extensions/default.nix index e7fc7615bf23..62eed5b9ce84 100644 --- a/pkgs/applications/editors/vscode/extensions/default.nix +++ b/pkgs/applications/editors/vscode/extensions/default.nix @@ -5322,8 +5322,8 @@ let mktplcRef = { name = "vim"; publisher = "vscodevim"; - version = "1.29.0"; - hash = "sha256-J3V8SZJZ2LSL8QfdoOtHI1ZDmGDVerTRYP4NZU17SeQ="; + version = "1.29.2"; + hash = "sha256-RBh4yQxOoUpwNKedFjEeu6hO0tU9AAPlDrt2LhgZT50="; }; meta = { license = lib.licenses.mit; diff --git a/pkgs/by-name/am/amp-cli/package-lock.json b/pkgs/by-name/am/amp-cli/package-lock.json index 2184e2f8f605..0e79a7f7113c 100644 --- a/pkgs/by-name/am/amp-cli/package-lock.json +++ b/pkgs/by-name/am/amp-cli/package-lock.json @@ -5,7 +5,7 @@ "packages": { "": { "dependencies": { - "@sourcegraph/amp": "^0.0.1747195318-g6d7769" + "@sourcegraph/amp": "^0.0.1747483284-g8cf01d" } }, "node_modules/@colors/colors": { @@ -29,12 +29,14 @@ } }, "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" }, @@ -45,6 +47,12 @@ "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", @@ -72,6 +80,18 @@ "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", @@ -87,15 +107,6 @@ "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": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/color/-/color-3.2.1.tgz", @@ -158,17 +169,17 @@ } } }, - "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", @@ -298,6 +309,15 @@ "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", @@ -354,6 +374,38 @@ "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", @@ -375,15 +427,6 @@ "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", "resolved": "https://registry.npmjs.org/winston/-/winston-3.17.0.tgz", diff --git a/pkgs/by-name/am/amp-cli/package.nix b/pkgs/by-name/am/amp-cli/package.nix index a8bb089dc506..0774eaddc0c4 100644 --- a/pkgs/by-name/am/amp-cli/package.nix +++ b/pkgs/by-name/am/amp-cli/package.nix @@ -8,11 +8,11 @@ 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 = '' @@ -44,7 +44,7 @@ buildNpmPackage rec { chmod +x bin/amp-wrapper.js ''; - npmDepsHash = "sha256-NxccnQxATtDBipRKhQWJn0s3PPXPeldrz9DLVq/ftpM="; + npmDepsHash = "sha256-aFB9EuWp7skmY5uzNRBBs8/UcFgtrQpBqciO2UK1fwY="; propagatedBuildInputs = [ ripgrep diff --git a/pkgs/by-name/bu/bufisk/package.nix b/pkgs/by-name/bu/bufisk/package.nix index 05ec70526546..d04834079f62 100644 --- a/pkgs/by-name/bu/bufisk/package.nix +++ b/pkgs/by-name/bu/bufisk/package.nix @@ -4,14 +4,14 @@ 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="; }; @@ -29,4 +29,4 @@ buildGoModule rec { maintainers = with lib.maintainers; [ aaronjheng ]; mainProgram = "bufisk"; }; -} +}) diff --git a/pkgs/by-name/ca/caido/package.nix b/pkgs/by-name/ca/caido/package.nix index b33624ff8661..c9953ffc5013 100644 --- a/pkgs/by-name/ca/caido/package.nix +++ b/pkgs/by-name/ca/caido/package.nix @@ -15,14 +15,14 @@ let "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; diff --git a/pkgs/by-name/du/dump1090-fa/package.nix b/pkgs/by-name/du/dump1090-fa/package.nix index f3a946a9a034..b668d1ce4639 100644 --- a/pkgs/by-name/du/dump1090-fa/package.nix +++ b/pkgs/by-name/du/dump1090-fa/package.nix @@ -15,13 +15,13 @@ 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 ]; diff --git a/pkgs/by-name/he/hello/package.nix b/pkgs/by-name/he/hello/package.nix index 0590131913f4..4e12ff39093e 100644 --- a/pkgs/by-name/he/hello/package.nix +++ b/pkgs/by-name/he/hello/package.nix @@ -11,11 +11,11 @@ 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. diff --git a/pkgs/by-name/li/libmikmod/package.nix b/pkgs/by-name/li/libmikmod/package.nix index f6b5bb8bcc6b..1294d5d8107e 100644 --- a/pkgs/by-name/li/libmikmod/package.nix +++ b/pkgs/by-name/li/libmikmod/package.nix @@ -31,6 +31,8 @@ stdenv.mkDerivation rec { NIX_LDFLAGS = optionalString stdenv.hostPlatform.isLinux "-lasound"; + enableParallelBuilding = true; + postInstall = '' moveToOutput bin/libmikmod-config "$dev" ''; diff --git a/pkgs/by-name/lo/louvre/package.nix b/pkgs/by-name/lo/louvre/package.nix index 41304b7038da..53393017ddd2 100644 --- a/pkgs/by-name/lo/louvre/package.nix +++ b/pkgs/by-name/lo/louvre/package.nix @@ -77,7 +77,7 @@ stdenv.mkDerivation (finalAttrs: { 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; }; }) diff --git a/pkgs/by-name/ma/maestro/package.nix b/pkgs/by-name/ma/maestro/package.nix index 0ca564799a9b..3afc444d0ebe 100644 --- a/pkgs/by-name/ma/maestro/package.nix +++ b/pkgs/by-name/ma/maestro/package.nix @@ -10,11 +10,11 @@ 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; diff --git a/pkgs/by-name/mu/mullvad-browser/package.nix b/pkgs/by-name/mu/mullvad-browser/package.nix index 8d685dee0803..5fd46fbf8d97 100644 --- a/pkgs/by-name/mu/mullvad-browser/package.nix +++ b/pkgs/by-name/mu/mullvad-browser/package.nix @@ -97,7 +97,7 @@ let ++ lib.optionals mediaSupport [ ffmpeg ] ); - version = "14.5.1"; + version = "14.5.2"; sources = { x86_64-linux = fetchurl { @@ -109,7 +109,7 @@ let "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="; }; }; diff --git a/pkgs/by-name/ne/netbird/package.nix b/pkgs/by-name/ne/netbird/package.nix index 9ec81aa17401..1dd55b19c9cb 100644 --- a/pkgs/by-name/ne/netbird/package.nix +++ b/pkgs/by-name/ne/netbird/package.nix @@ -31,16 +31,16 @@ let 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; diff --git a/pkgs/by-name/nu/numcpp/package.nix b/pkgs/by-name/nu/numcpp/package.nix index d0a495e4d6e3..c5972f050cc0 100644 --- a/pkgs/by-name/nu/numcpp/package.nix +++ b/pkgs/by-name/nu/numcpp/package.nix @@ -9,15 +9,17 @@ }: 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 python3 @@ -36,16 +38,16 @@ stdenv.mkDerivation (finalAttrs: { 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; }; }) diff --git a/pkgs/by-name/nu/numcpp/pytest-CMakeLists.patch b/pkgs/by-name/nu/numcpp/pytest-CMakeLists.patch new file mode 100644 index 000000000000..33bdb11e106a --- /dev/null +++ b/pkgs/by-name/nu/numcpp/pytest-CMakeLists.patch @@ -0,0 +1,18 @@ +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 diff --git a/pkgs/by-name/op/opencloud/idp-web.nix b/pkgs/by-name/op/opencloud/idp-web.nix index 914915399118..ea8e181ed03e 100644 --- a/pkgs/by-name/op/opencloud/idp-web.nix +++ b/pkgs/by-name/op/opencloud/idp-web.nix @@ -44,7 +44,7 @@ stdenvNoCC.mkDerivation (finalAttrs: { 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 diff --git a/pkgs/by-name/op/opencloud/package.nix b/pkgs/by-name/op/opencloud/package.nix index a3736dacbf12..0f3dd11ef6f1 100644 --- a/pkgs/by-name/op/opencloud/package.nix +++ b/pkgs/by-name/op/opencloud/package.nix @@ -108,7 +108,7 @@ buildGoModule rec { 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 diff --git a/pkgs/by-name/op/opencloud/web.nix b/pkgs/by-name/op/opencloud/web.nix index 665ca2fd8586..7513839ab0e6 100644 --- a/pkgs/by-name/op/opencloud/web.nix +++ b/pkgs/by-name/op/opencloud/web.nix @@ -46,7 +46,7 @@ stdenvNoCC.mkDerivation (finalAttrs: { 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 diff --git a/pkgs/by-name/ph/phoenixd/package.nix b/pkgs/by-name/ph/phoenixd/package.nix index 0fadbdf22b63..e48baa57c262 100644 --- a/pkgs/by-name/ph/phoenixd/package.nix +++ b/pkgs/by-name/ph/phoenixd/package.nix @@ -1,6 +1,6 @@ { - stdenv, lib, + stdenv, fetchurl, unzip, autoPatchelfHook, @@ -9,32 +9,35 @@ 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 = + 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="; + }; + }; - 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}"); - }; + nativeBuildInputs = [ unzip ] ++ lib.optionals stdenv.hostPlatform.isLinux [ autoPatchelfHook ]; - nativeBuildInputs = [ unzip ] ++ lib.optionals stdenv.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 @@ -43,17 +46,24 @@ stdenv.mkDerivation rec { 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" + ]; }; -} +}) diff --git a/pkgs/by-name/ph/phoenixd/update.sh b/pkgs/by-name/ph/phoenixd/update.sh new file mode 100755 index 000000000000..3b43d0443740 --- /dev/null +++ b/pkgs/by-name/ph/phoenixd/update.sh @@ -0,0 +1,24 @@ +#!/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 diff --git a/pkgs/by-name/re/reddit-tui/package.nix b/pkgs/by-name/re/reddit-tui/package.nix index fa006713799d..57c5c8a7f09f 100644 --- a/pkgs/by-name/re/reddit-tui/package.nix +++ b/pkgs/by-name/re/reddit-tui/package.nix @@ -7,12 +7,12 @@ }: 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; diff --git a/pkgs/by-name/sp/spoolman/common.nix b/pkgs/by-name/sp/spoolman/common.nix new file mode 100644 index 000000000000..2985fb71551b --- /dev/null +++ b/pkgs/by-name/sp/spoolman/common.nix @@ -0,0 +1,25 @@ +{ 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"; + }; +} diff --git a/pkgs/by-name/sp/spoolman/frontend.nix b/pkgs/by-name/sp/spoolman/frontend.nix new file mode 100644 index 000000000000..9386853458e0 --- /dev/null +++ b/pkgs/by-name/sp/spoolman/frontend.nix @@ -0,0 +1,23 @@ +{ 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"; + }; +} diff --git a/pkgs/by-name/sp/spoolman/package.nix b/pkgs/by-name/sp/spoolman/package.nix new file mode 100644 index 000000000000..f31ed152bb19 --- /dev/null +++ b/pkgs/by-name/sp/spoolman/package.nix @@ -0,0 +1,79 @@ +{ + 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"; + }; +} diff --git a/pkgs/by-name/sr/srm-cuarzo/package.nix b/pkgs/by-name/sr/srm-cuarzo/package.nix index a699c8cceb51..2905986dba9d 100644 --- a/pkgs/by-name/sr/srm-cuarzo/package.nix +++ b/pkgs/by-name/sr/srm-cuarzo/package.nix @@ -54,7 +54,7 @@ stdenv.mkDerivation (self: { meta = { description = "Simple Rendering Manager"; homepage = "https://github.com/CuarzoSoftware/SRM"; - maintainers = [ lib.maintainers.dblsaiko ]; + maintainers = [ ]; platforms = lib.platforms.linux; }; }) diff --git a/pkgs/by-name/sy/systemd-bootchart/package.nix b/pkgs/by-name/sy/systemd-bootchart/package.nix new file mode 100644 index 000000000000..5f3a88573858 --- /dev/null +++ b/pkgs/by-name/sy/systemd-bootchart/package.nix @@ -0,0 +1,49 @@ +{ + 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; + }; +}) diff --git a/pkgs/by-name/to/tor-browser/package.nix b/pkgs/by-name/to/tor-browser/package.nix index b2ba58b54f47..90ae73bf531e 100644 --- a/pkgs/by-name/to/tor-browser/package.nix +++ b/pkgs/by-name/to/tor-browser/package.nix @@ -109,7 +109,7 @@ lib.warnIf (useHardenedMalloc != null) ++ lib.optionals mediaSupport [ ffmpeg ] ); - version = "14.5.1"; + version = "14.5.2"; sources = { x86_64-linux = fetchurl { @@ -119,7 +119,7 @@ lib.warnIf (useHardenedMalloc != null) "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 { @@ -129,7 +129,7 @@ lib.warnIf (useHardenedMalloc != null) "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="; }; }; diff --git a/pkgs/by-name/tp/tpm2-pkcs11/package.nix b/pkgs/by-name/tp/tpm2-pkcs11/package.nix index ac79ea43d0cf..17d53d293bbf 100644 --- a/pkgs/by-name/tp/tpm2-pkcs11/package.nix +++ b/pkgs/by-name/tp/tpm2-pkcs11/package.nix @@ -222,18 +222,26 @@ chosenStdenv.mkDerivation (finalAttrs: { $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 + ; }; }; diff --git a/pkgs/by-name/ty/typstyle/package.nix b/pkgs/by-name/ty/typstyle/package.nix index 9636a77351c0..05cd6c655b3a 100644 --- a/pkgs/by-name/ty/typstyle/package.nix +++ b/pkgs/by-name/ty/typstyle/package.nix @@ -8,17 +8,17 @@ 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 = [ @@ -36,7 +36,7 @@ rustPlatform.buildRustPackage (finalAttrs: { }; 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; diff --git a/pkgs/by-name/wr/wrangler/package.nix b/pkgs/by-name/wr/wrangler/package.nix index 6654ee0f063d..17dc8f28a85e 100644 --- a/pkgs/by-name/wr/wrangler/package.nix +++ b/pkgs/by-name/wr/wrangler/package.nix @@ -10,23 +10,35 @@ 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@"; }; @@ -45,6 +57,8 @@ stdenv.mkDerivation (finalAttrs: { makeWrapper nodejs pnpm_9.configHook + jq + moreutils ] ++ lib.optionals (stdenv.hostPlatform.isLinux) [ autoPatchelfHook @@ -53,7 +67,7 @@ stdenv.mkDerivation (finalAttrs: { # @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 @@ -65,19 +79,17 @@ stdenv.mkDerivation (finalAttrs: { # - 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 \ @@ -86,7 +98,10 @@ stdenv.mkDerivation (finalAttrs: { --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"; @@ -98,6 +113,7 @@ stdenv.mkDerivation (finalAttrs: { seanrmurphy dezren39 ryand56 + ezrizhu ]; mainProgram = "wrangler"; # Tunneling and other parts of wrangler, which require workerd won't run on diff --git a/pkgs/by-name/xm/xmedcon/package.nix b/pkgs/by-name/xm/xmedcon/package.nix index 73fef5dbaea2..18cc7aa471fe 100644 --- a/pkgs/by-name/xm/xmedcon/package.nix +++ b/pkgs/by-name/xm/xmedcon/package.nix @@ -12,11 +12,11 @@ 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 = [ diff --git a/pkgs/by-name/ya/yazi/plugins/projects/default.nix b/pkgs/by-name/ya/yazi/plugins/projects/default.nix index f0a9cf929391..0246c5cb5fc4 100644 --- a/pkgs/by-name/ya/yazi/plugins/projects/default.nix +++ b/pkgs/by-name/ya/yazi/plugins/projects/default.nix @@ -5,13 +5,13 @@ }: 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 = { diff --git a/pkgs/development/interpreters/elixir/1.18.nix b/pkgs/development/interpreters/elixir/1.18.nix index d53955b82d32..8e4269c4d7a1 100644 --- a/pkgs/development/interpreters/elixir/1.18.nix +++ b/pkgs/development/interpreters/elixir/1.18.nix @@ -1,7 +1,7 @@ { 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"; diff --git a/pkgs/development/python-modules/django-lasuite/default.nix b/pkgs/development/python-modules/django-lasuite/default.nix new file mode 100644 index 000000000000..ec0f593ef088 --- /dev/null +++ b/pkgs/development/python-modules/django-lasuite/default.nix @@ -0,0 +1,71 @@ +{ + 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"; + }; +} diff --git a/pkgs/development/python-modules/django/5.nix b/pkgs/development/python-modules/django/5_1.nix similarity index 100% rename from pkgs/development/python-modules/django/5.nix rename to pkgs/development/python-modules/django/5_1.nix diff --git a/pkgs/development/python-modules/django/5_2.nix b/pkgs/development/python-modules/django/5_2.nix new file mode 100644 index 000000000000..384a7040ea95 --- /dev/null +++ b/pkgs/development/python-modules/django/5_2.nix @@ -0,0 +1,150 @@ +{ + 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 ]; + }; +} diff --git a/pkgs/development/python-modules/scheduler/default.nix b/pkgs/development/python-modules/scheduler/default.nix new file mode 100644 index 000000000000..9a4c6f6d36ae --- /dev/null +++ b/pkgs/development/python-modules/scheduler/default.nix @@ -0,0 +1,37 @@ +{ + 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 ]; + }; +} diff --git a/pkgs/development/python-modules/sqlalchemy-cockroachdb/default.nix b/pkgs/development/python-modules/sqlalchemy-cockroachdb/default.nix new file mode 100644 index 000000000000..0cbdb6651a97 --- /dev/null +++ b/pkgs/development/python-modules/sqlalchemy-cockroachdb/default.nix @@ -0,0 +1,37 @@ +{ + 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 ]; + }; +} diff --git a/pkgs/development/python-modules/supervisor/default.nix b/pkgs/development/python-modules/supervisor/default.nix index 8a6bb95f3c3c..f6c58350610b 100644 --- a/pkgs/development/python-modules/supervisor/default.nix +++ b/pkgs/development/python-modules/supervisor/default.nix @@ -3,6 +3,7 @@ stdenv, buildPythonPackage, fetchPypi, + fetchpatch, mock, pytestCheckHook, pythonOlder, @@ -21,6 +22,16 @@ buildPythonPackage rec { 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 ]; # wants to write to /tmp/foo which is likely already owned by another diff --git a/pkgs/development/python-modules/supervisor/fix-python313-unittest.patch b/pkgs/development/python-modules/supervisor/fix-python313-unittest.patch new file mode 100644 index 000000000000..323d3f7f18fe --- /dev/null +++ b/pkgs/development/python-modules/supervisor/fix-python313-unittest.patch @@ -0,0 +1,337 @@ +From e18f91d4ddbc30920c828e782ce40fbe844fcab9 Mon Sep 17 00:00:00 2001 +From: Mike Naberezny +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 ]>]>, 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 + diff --git a/pkgs/development/web/nodejs/v24.nix b/pkgs/development/web/nodejs/v24.nix index 8c45cad0e626..253b764824ff 100644 --- a/pkgs/development/web/nodejs/v24.nix +++ b/pkgs/development/web/nodejs/v24.nix @@ -17,8 +17,8 @@ let in buildNodejs { inherit enableNpm; - version = "24.0.2"; - sha256 = "1597075afc06e5c6145d0bfbd77e2072c2ec0ab71ac4950cf008b2641374cd71"; + version = "24.1.0"; + sha256 = "c8171b2aeccb28c8c5347f273a25adae172fb2a65bc8c975bc22ec58949d0eaf"; patches = ( if (stdenv.hostPlatform.emulatorAvailable buildPackages) then diff --git a/pkgs/kde/misc/kirigami-addons/default.nix b/pkgs/kde/misc/kirigami-addons/default.nix index 7c847683888f..96c5a4b7b204 100644 --- a/pkgs/kde/misc/kirigami-addons/default.nix +++ b/pkgs/kde/misc/kirigami-addons/default.nix @@ -8,11 +8,11 @@ }: 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; }) ]; diff --git a/pkgs/servers/sql/percona-server/8_0.nix b/pkgs/servers/sql/percona-server/8_0.nix index e75cf362d260..626dca351a70 100644 --- a/pkgs/servers/sql/percona-server/8_0.nix +++ b/pkgs/servers/sql/percona-server/8_0.nix @@ -42,11 +42,11 @@ 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 = [ diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 91f1fb0c6de2..f43159224541 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -3793,6 +3793,8 @@ self: super: with self; { 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 { }; @@ -3965,7 +3967,11 @@ self: super: with self; { 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 { }; @@ -15539,6 +15545,8 @@ self: super: with self; { 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 { }; @@ -16568,6 +16576,8 @@ self: super: with self; { sqlalchemy-citext = callPackage ../development/python-modules/sqlalchemy-citext { }; + sqlalchemy-cockroachdb = callPackage ../development/python-modules/sqlalchemy-cockroachdb { }; + sqlalchemy-continuum = callPackage ../development/python-modules/sqlalchemy-continuum { }; sqlalchemy-file = callPackage ../development/python-modules/sqlalchemy-file { };