diff --git a/README.md b/README.md index 0b026a107c88..c232c534ef36 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ Open Collective supporters

-[Nixpkgs](https://github.com/nixos/nixpkgs) is a collection of over 120,000 software packages that can be installed with the [Nix](https://nixos.org/nix/) package manager. +[Nixpkgs](https://github.com/nixos/nixpkgs) is a collection of over 140,000 software packages that can be installed with the [Nix](https://nixos.org/nix/) package manager. It also implements [NixOS](https://nixos.org/nixos/), a purely-functional Linux distribution. # Manuals diff --git a/ci/OWNERS b/ci/OWNERS index 21863a95841b..0b7d71bc4293 100644 --- a/ci/OWNERS +++ b/ci/OWNERS @@ -445,6 +445,7 @@ nixos/tests/forgejo.nix @adamcstephens @bendlas @christoph-heiss @ /doc/languages-frameworks/javascript.section.md @winterqt /pkgs/development/tools/pnpm @Scrumplex @gepbird /pkgs/build-support/node/fetch-pnpm-deps @Scrumplex @gepbird +/pkgs/test/pnpm @Scrumplex @gepbird # OCaml /pkgs/build-support/ocaml @ulrikstrid diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 236e5638263b..432d30001b6e 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -1882,7 +1882,10 @@ github = "ap-1"; githubId = 67872951; name = "Anish Pallati"; - keys = [ { fingerprint = "2A0A 16F5 E026 BE3B A47F B7A6 841A FB68 9A5B ACCB"; } ]; + keys = [ + { fingerprint = "2A0A 16F5 E026 BE3B A47F B7A6 841A FB68 9A5B ACCB"; } + { fingerprint = "B89E A3F3 16A7 411C B5B2 8A14 B1CA 8321 35A8 C503"; } + ]; }; ankhers = { email = "me@ankhers.dev"; @@ -18306,13 +18309,6 @@ githubId = 52108954; name = "Matias Zwinger"; }; - mkf = { - email = "m@mikf.pl"; - github = "mkf"; - githubId = 7753506; - name = "MichaƂ Krzysztof Feiler"; - keys = [ { fingerprint = "1E36 9940 CC7E 01C4 CFE8 F20A E35C 2D7C 2C6A C724"; } ]; - }; mkg = { email = "mkg@vt.edu"; github = "mkgvt"; diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index 3ba8703f8555..e54775639040 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -887,6 +887,7 @@ ./services/misc/ihaskell.nix ./services/misc/iio-niri.nix ./services/misc/input-remapper.nix + ./services/misc/inventree.nix ./services/misc/invidious-router.nix ./services/misc/irkerd.nix ./services/misc/jackett.nix diff --git a/nixos/modules/services/misc/inventree.nix b/nixos/modules/services/misc/inventree.nix new file mode 100644 index 000000000000..2c4b1df16621 --- /dev/null +++ b/nixos/modules/services/misc/inventree.nix @@ -0,0 +1,411 @@ +{ + config, + pkgs, + lib, + ... +}: +let + cfg = config.services.inventree; + pkg = cfg.package; + + mysqlLocal = cfg.database.createLocally && cfg.database.dbtype == "mysql"; + pgsqlLocal = cfg.database.createLocally && cfg.database.dbtype == "postgresql"; + + manage = pkgs.writeShellScriptBin "inventree-manage" '' + set -a + ${lib.toShellVars cfg.settings} + ${lib.optionalString ( + cfg.database.passwordFile != null + ) ''INVENTREE_DB_PASSWORD="$(<${lib.escapeShellArg cfg.database.passwordFile})"''} + set +a + + pushd ${lib.escapeShellArg cfg.dataDir} + expectedUser=${lib.escapeShellArg cfg.user} + sudo=() + if [[ "$USER" != "$expectedUser" ]]; then + ${ + if config.security.sudo.enable then + ''sudo+=(${config.security.wrapperDir}/sudo -u "$expectedUser" -E)'' + else + ''printf 'Aborting, inventree-manage must be run as user %s\n!' "$expectedUser" >&2; exit 2'' + } + fi + exec "''${sudo[@]}" ${cfg.package}/bin/inventree "$@" + ''; + +in +{ + meta.buildDocsInSandbox = false; + + meta.maintainers = with lib.maintainers; [ + kurogeek + ]; + + options.services.inventree = { + enable = lib.mkEnableOption "inventree"; + + dataDir = lib.mkOption { + type = lib.types.str; + default = "/var/lib/inventree"; + description = "Inventree's data storage path. Will be `/var/lib/inventree` by default."; + }; + + package = lib.mkOption { + type = lib.types.package; + description = "Which package to use for the InvenTree instance."; + default = pkgs.inventree; + defaultText = lib.literalExpression "pkgs.inventree"; + }; + + adminPasswordFile = lib.mkOption { + type = lib.types.nullOr lib.types.path; + default = null; + example = "/run/keys/inventree-password"; + description = "Path to a file containing admin password"; + }; + + secretKeyFile = lib.mkOption { + type = lib.types.path; + default = "${cfg.dataDir}/secret_key.txt"; + defaultText = lib.literalExpression ''"''${cfg.dataDir}/secret_key.txt"''; + example = "/run/keys/inventree-secret-key"; + description = '' + Path to a file containing the secret key + ''; + }; + + database = { + dbtype = lib.mkOption { + type = lib.types.nullOr ( + lib.types.enum [ + "postgresql" + "mysql" + ] + ); + default = "postgresql"; + description = "Database type."; + }; + dbhost = lib.mkOption { + type = lib.types.nullOr lib.types.str; + default = null; + example = "localhost"; + description = "Database host or socket path."; + }; + dbport = lib.mkOption { + type = lib.types.nullOr lib.types.port; + default = null; + example = 5432; + description = "Database host port."; + }; + dbname = lib.mkOption { + type = lib.types.str; + default = "inventree"; + description = "Database name."; + }; + dbuser = lib.mkOption { + type = lib.types.str; + default = "inventree"; + description = "Database username."; + }; + passwordFile = lib.mkOption { + type = with lib.types; nullOr path; + default = null; + example = "/run/keys/inventree-dbpassword"; + description = '' + A file containing the password corresponding to + . + ''; + }; + createLocally = lib.mkOption { + type = lib.types.bool; + default = true; + description = "Create the database and database user locally."; + }; + }; + + domain = lib.mkOption { + type = lib.types.str; + default = "localhost"; + example = "inventree.example.com"; + description = '' + The INVENTREE_SITE_URL option defines the base URL for the + InvenTree server. This is a critical setting, and it is required + for correct operation of the server. If not specified, the + server will attempt to determine the site URL automatically - + but this may not always be correct! + + The site URL is the URL that users will use to access the + InvenTree server. For example, if the server is accessible at + `https://inventree.example.com`, the site URL should be set to + `https://inventree.example.com`. Note that this is not + necessarily the same as the internal URL that the server is + running on - the internal URL will depend entirely on your + server configuration and may be obscured by a reverse proxy or + other such setup. + ''; + }; + + user = lib.mkOption { + type = lib.types.str; + default = "inventree"; + description = "User under which InvenTree runs."; + }; + + group = lib.mkOption { + type = lib.types.str; + default = "inventree"; + description = "Group under which InvenTree runs."; + }; + + settings = lib.mkOption { + type = + with lib.types; + attrsOf ( + nullOr (oneOf [ + path + str + ]) + ); + default = { }; + description = '' + InvenTree config options. + + See [the documentation](https://docs.inventree.org/en/stable/start/config/) for available options. + ''; + example = { + INVENTREE_CACHE_ENABLED = true; + INVENTREE_CACHE_HOST = "localhost"; + + INVENTREE_EMAIL_HOST = "smtp.example.com"; + INVENTREE_EMAIL_PORT = 25; + }; + }; + + }; + + config = lib.mkIf cfg.enable ( + lib.mkMerge [ + { + services.inventree.settings = { + INVENTREE_DB_ENGINE = cfg.database.dbtype; + INVENTREE_DB_NAME = cfg.database.dbname; + INVENTREE_DB_HOST = cfg.database.dbhost; + INVENTREE_DB_USER = cfg.database.dbuser; + INVENTREE_DB_PORT = if cfg.database.dbport != null then toString cfg.database.dbport else null; + + INVENTREE_CONFIG_FILE = lib.mkDefault "${cfg.dataDir}/config/config.yaml"; + INVENTREE_OIDC_PRIVATE_KEY_FILE = lib.mkDefault "${cfg.dataDir}/config/oidc_private_key.txt"; + INVENTREE_STATIC_ROOT = lib.mkDefault "${cfg.package}/lib/inventree/static"; + INVENTREE_MEDIA_ROOT = lib.mkDefault "${cfg.dataDir}/data/media"; + INVENTREE_BACKUP_DIR = lib.mkDefault "${cfg.dataDir}/data/backups"; + INVENTREE_SITE_URL = lib.mkDefault "http://${cfg.domain}"; + INVENTREE_PLUGIN_FILE = lib.mkDefault "${cfg.dataDir}/data/plugins/plugins.txt"; + INVENTREE_PLUGIN_DIR = lib.mkDefault "${cfg.dataDir}/data/plugins"; + INVENTREE_ADMIN_USER = lib.mkDefault "admin"; + INVENTREE_ADMIN_EMAIL = lib.mkDefault "admin@${cfg.domain}"; + INVENTREE_ADMIN_PASSWORD_FILE = lib.mkDefault cfg.adminPasswordFile; + INVENTREE_SECRET_KEY_FILE = lib.mkDefault cfg.secretKeyFile; + INVENTREE_AUTO_UPDATE = lib.mkDefault "false"; + }; + environment.systemPackages = [ manage ]; + systemd.tmpfiles.rules = ( + map (dir: "d ${dir} 0755 inventree inventree") [ + "${cfg.dataDir}" + "${cfg.dataDir}/config" + "${cfg.dataDir}/data" + "${cfg.dataDir}/data/media" + "${cfg.dataDir}/data/backups" + "${cfg.dataDir}/data/plugins" + ] + ); + + services.postgresql = lib.mkIf pgsqlLocal { + enable = true; + ensureDatabases = [ cfg.database.dbname ]; + ensureUsers = [ + { + name = cfg.database.dbuser; + ensureDBOwnership = true; + } + ]; + }; + + services.mysql = lib.mkIf mysqlLocal { + enable = true; + package = lib.mkDefault pkgs.mariadb; + ensureDatabases = [ cfg.database.dbname ]; + ensureUsers = [ + { + name = cfg.database.dbuser; + ensurePermissions = { + "${cfg.database.dbname}.*" = "ALL PRIVILEGES"; + }; + } + ]; + }; + + services.nginx.enable = true; + services.nginx.virtualHosts.${cfg.domain} = { + locations = + let + unixPath = config.systemd.sockets.inventree-server.socketConfig.ListenStream; + in + { + "/" = { + extraConfig = '' + proxy_set_header Host $host; + proxy_set_header X-Forwarded-By $server_addr:$server_port; + proxy_set_header X-Forwarded-For $remote_addr; + proxy_set_header X-Forwarded-Proto $scheme; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header CLIENT_IP $remote_addr; + + proxy_pass_request_headers on; + + proxy_redirect off; + + client_max_body_size 100M; + + proxy_buffering off; + proxy_request_buffering off; + ''; + proxyPass = "http://unix:${unixPath}"; + }; + "/auth" = { + extraConfig = '' + internal; + proxy_pass_request_body off; + proxy_set_header Content-Length ""; + proxy_set_header X-Original-URI $request_uri; + ''; + proxyPass = "http://unix:${unixPath}:/auth/"; + }; + "/static/" = { + alias = "${cfg.settings.INVENTREE_STATIC_ROOT}/"; + extraConfig = '' + autoindex on; + + # Caching settings + expires 30d; + add_header Pragma public; + add_header Cache-Control "public"; + ''; + }; + "/media/" = { + alias = "${cfg.settings.INVENTREE_MEDIA_ROOT}/"; + extraConfig = '' + auth_request /auth; + add_header Content-disposition "attachment"; + ''; + }; + }; + }; + + systemd.services.inventree-setup = { + description = "Inventree setup"; + wantedBy = [ "inventree.target" ]; + partOf = [ "inventree.target" ]; + after = lib.optional mysqlLocal "mysql.service" ++ lib.optional pgsqlLocal "postgresql.target"; + requires = lib.optional mysqlLocal "mysql.service" ++ lib.optional pgsqlLocal "postgresql.target"; + before = [ + "inventree-server.service" + "inventree-qcluster.service" + ]; + serviceConfig = { + Type = "oneshot"; + User = cfg.user; + Group = cfg.group; + RemainAfterExit = true; + PrivateTmp = true; + } + // lib.optionalAttrs (cfg.database.passwordFile != null) { + LoadCredential = "db_password:${cfg.database.passwordFile}"; + }; + environment = cfg.settings; + script = '' + set -euo pipefail + umask u=rwx,g=,o= + + ${ + lib.optionalString (cfg.database.passwordFile != null) '' + INVENTREE_DB_PASSWORD=$(<"$CREDENTIALS_DIRECTORY/db_password") + '' + } \ + exec ${pkg}/bin/inventree migrate + ''; + }; + + systemd.services.inventree-server = { + description = "Inventree Gunicorn service"; + requiredBy = [ "inventree.target" ]; + partOf = [ "inventree.target" ]; + environment = cfg.settings; + serviceConfig = { + User = cfg.user; + Group = cfg.group; + StateDirectory = "inventree"; + PrivateTmp = true; + } + // lib.optionalAttrs (cfg.database.passwordFile != null) { + LoadCredential = "db_password:${cfg.database.passwordFile}"; + }; + script = '' + ${ + lib.optionalString (cfg.database.passwordFile != null) '' + INVENTREE_DB_PASSWORD=$(<"$CREDENTIALS_DIRECTORY/db_password") + '' + } \ + exec ${pkg}/bin/gunicorn InvenTree.wsgi + ''; + }; + + systemd.sockets.inventree-server = { + wantedBy = [ "sockets.target" ]; + partOf = [ "inventree.target" ]; + socketConfig.ListenStream = "/run/inventree/gunicorn.socket"; + }; + + systemd.services.inventree-qcluster = { + description = "InvenTree qcluster server"; + requiredBy = [ "inventree.target" ]; + wantedBy = [ "inventree.target" ]; + partOf = [ "inventree.target" ]; + environment = cfg.settings; + serviceConfig = { + User = cfg.user; + Group = cfg.group; + StateDirectory = "inventree"; + PrivateTmp = true; + } + // lib.optionalAttrs (cfg.database.passwordFile != null) { + LoadCredential = "db_password:${cfg.database.passwordFile}"; + }; + script = '' + ${ + lib.optionalString (cfg.database.passwordFile != null) '' + INVENTREE_DB_PASSWORD=$(<"$CREDENTIALS_DIRECTORY/db_password") + '' + } \ + exec ${pkg}/bin/inventree qcluster + ''; + }; + + systemd.targets.inventree = { + description = "Target for all InvenTree services"; + wantedBy = [ "multi-user.target" ]; + wants = [ "network-online.target" ]; + after = [ "network-online.target" ]; + }; + + users = lib.optionalAttrs (cfg.user == cfg.user) { + users.${cfg.user} = { + group = cfg.group; + isSystemUser = true; + home = cfg.dataDir; + }; + groups.${cfg.group}.members = [ cfg.user ]; + }; + } + ] + ); +} diff --git a/nixos/modules/services/networking/wpa_supplicant.nix b/nixos/modules/services/networking/wpa_supplicant.nix index 0e092de5e609..2c3c0a62b18d 100644 --- a/nixos/modules/services/networking/wpa_supplicant.nix +++ b/nixos/modules/services/networking/wpa_supplicant.nix @@ -123,7 +123,8 @@ let # set up imperative config file "+${pkgs.coreutils}/bin/touch /etc/wpa_supplicant/imperative.conf" "+${pkgs.coreutils}/bin/chmod 664 /etc/wpa_supplicant/imperative.conf" - "+${pkgs.coreutils}/bin/chown -R wpa_supplicant:wpa_supplicant /etc/wpa_supplicant" + "+${pkgs.coreutils}/bin/chown wpa_supplicant:wpa_supplicant /etc/wpa_supplicant" + "+${pkgs.coreutils}/bin/chown wpa_supplicant:wpa_supplicant /etc/wpa_supplicant/imperative.conf" ] ++ lib.optionals cfg.userControlled [ # set up client sockets directory diff --git a/nixos/modules/system/activation/pre-switch-check.nix b/nixos/modules/system/activation/pre-switch-check.nix index 2b53e390b19d..e80bec9eee9a 100644 --- a/nixos/modules/system/activation/pre-switch-check.nix +++ b/nixos/modules/system/activation/pre-switch-check.nix @@ -8,9 +8,18 @@ let preSwitchCheckScript = lib.concatLines ( lib.mapAttrsToList (name: text: '' # pre-switch check ${name} - if ! ( + # + # Run with errexit in a subshell that is not part of an `if`/`||` + # condition, so that `set -e` is actually honoured inside the + # check body. + set +e + ( + set -e ${text} - ) >&2 ; then + ) >&2 + _rc=$? + set -e + if [ "$_rc" -ne 0 ]; then echo "Pre-switch check '${name}' failed" >&2 exit 1 fi diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index fa2faafc5054..c2c42468f727 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -802,6 +802,7 @@ in installer = handleTest ./installer.nix { systemdStage1 = false; }; installer-systemd-stage-1 = handleTest ./installer.nix { systemdStage1 = true; }; intune = runTest ./intune.nix; + inventree = runTest ./inventree.nix; invidious = runTest ./invidious.nix; invoiceplane = runTest ./invoiceplane.nix; iodine = runTest ./iodine.nix; diff --git a/nixos/tests/caddy.nix b/nixos/tests/caddy.nix index 0c5da462c021..c719a1b233b1 100644 --- a/nixos/tests/caddy.nix +++ b/nixos/tests/caddy.nix @@ -73,7 +73,7 @@ services.caddy = { package = pkgs.caddy.withPlugins { plugins = [ "github.com/caddyserver/replace-response@v0.0.0-20250618171559-80962887e4c6" ]; - hash = "sha256-kKWXpxEAn23yud8tcgw7FFOaxLjoodZ/cuM1239TRoY="; + hash = "sha256-0N/bQAM5yT6g9UAteWsfxofGcelmU/NDTroS2oL43Gs="; }; configFile = pkgs.writeText "Caddyfile" '' { diff --git a/nixos/tests/inventree.nix b/nixos/tests/inventree.nix new file mode 100644 index 000000000000..34fe8730ae67 --- /dev/null +++ b/nixos/tests/inventree.nix @@ -0,0 +1,33 @@ +{ lib, ... }: +{ + name = "inventree"; + meta.maintainers = with lib.maintainers; [ + kurogeek + ]; + + nodes = { + psqlTest = { + services.inventree = { + enable = true; + }; + }; + mysqlTest = { + services.inventree = { + enable = true; + database.dbtype = "mysql"; + }; + }; + }; + testScript = '' + start_all() + psqlTest.wait_for_unit("inventree.target") + psqlTest.wait_for_unit("inventree-server.service") + psqlTest.wait_for_open_unix_socket("/run/inventree/gunicorn.socket") + psqlTest.wait_until_succeeds("curl -sf http://localhost/web") + + mysqlTest.wait_for_unit("inventree.target") + mysqlTest.wait_for_unit("inventree-server.service") + mysqlTest.wait_for_open_unix_socket("/run/inventree/gunicorn.socket") + mysqlTest.wait_until_succeeds("curl -sf http://localhost/web") + ''; +} diff --git a/nixos/tests/switch-test.nix b/nixos/tests/switch-test.nix index 256c25108593..2dbc9386f8ae 100644 --- a/nixos/tests/switch-test.nix +++ b/nixos/tests/switch-test.nix @@ -788,6 +788,11 @@ in echo this will fail false ''; + specialisation.failingMidCheck.configuration.system.preSwitchChecks.failsInTheMiddle = '' + echo before + nonexistent-command + echo after + ''; }; }; @@ -888,6 +893,11 @@ in machine.succeed("${stderrRunner} ${otherSystem}/bin/switch-to-configuration check") out = switch_to_specialisation("${otherSystem}", "failingCheck", action="check", fail=True) assert_contains(out, "this will fail") + # errexit must be honoured inside the check body + out = switch_to_specialisation("${otherSystem}", "failingMidCheck", action="check", fail=True) + assert_contains(out, "before") + assert_contains(out, "Pre-switch check 'failsInTheMiddle' failed") + assert_lacks(out, "after") with subtest("switch inhibitors"): # Start without any inhibitors diff --git a/pkgs/applications/editors/android-studio/default.nix b/pkgs/applications/editors/android-studio/default.nix index b7e6474653e3..8c1f000c845d 100644 --- a/pkgs/applications/editors/android-studio/default.nix +++ b/pkgs/applications/editors/android-studio/default.nix @@ -21,9 +21,9 @@ let url = "https://edgedl.me.gvt1.com/android/studio/ide-zips/2025.3.4.7/android-studio-panda4-patch1-linux.tar.gz"; }; betaVersion = { - version = "2026.1.1.6"; # "Android Studio Quail 1 | 2026.1.1 RC 1" - sha256Hash = "sha256-b6PVgBTTjIgm6BI171RL7T6GJD9ApnTWGOTqvt703PQ="; - url = "https://edgedl.me.gvt1.com/android/studio/ide-zips/2026.1.1.6/android-studio-quail1-rc1-linux.tar.gz"; + version = "2026.1.1.7"; # "Android Studio Quail 1 | 2026.1.1 RC 2" + sha256Hash = "sha256-TB9hPynvVq1axv6oAw8un6WHVHakZPvEBjfPCs+Dwj0="; + url = "https://edgedl.me.gvt1.com/android/studio/ide-zips/2026.1.1.7/android-studio-quail1-rc2-linux.tar.gz"; }; latestVersion = { version = "2026.1.2.4"; # "Android Studio Quail 2 | 2026.1.2 Canary 4" diff --git a/pkgs/applications/editors/vim/plugins/non-generated/avante-nvim/default.nix b/pkgs/applications/editors/vim/plugins/non-generated/avante-nvim/default.nix index 14eff28bd760..5b65f729acc2 100644 --- a/pkgs/applications/editors/vim/plugins/non-generated/avante-nvim/default.nix +++ b/pkgs/applications/editors/vim/plugins/non-generated/avante-nvim/default.nix @@ -92,7 +92,6 @@ vimUtils.buildVimPlugin { "avante.providers.azure" "avante.providers.copilot" "avante.providers.gemini" - "avante.providers.ollama" "avante.providers.vertex" "avante.providers.vertex_claude" ]; diff --git a/pkgs/applications/editors/vim/plugins/nvim-treesitter/overrides.nix b/pkgs/applications/editors/vim/plugins/nvim-treesitter/overrides.nix index 6f1fb384f9af..84051feecadc 100644 --- a/pkgs/applications/editors/vim/plugins/nvim-treesitter/overrides.nix +++ b/pkgs/applications/editors/vim/plugins/nvim-treesitter/overrides.nix @@ -144,8 +144,6 @@ let grammarPlugins = lib.mapAttrs (_: grammarToPlugin) parsersWithMeta; in { - nvimSkipModules = [ "nvim-treesitter._meta.parsers" ]; - passthru = super.nvim-treesitter.passthru or { } // { inherit buildQueries diff --git a/pkgs/applications/editors/vim/plugins/overrides.nix b/pkgs/applications/editors/vim/plugins/overrides.nix index 99b1a62768ca..119b42ef93c7 100644 --- a/pkgs/applications/editors/vim/plugins/overrides.nix +++ b/pkgs/applications/editors/vim/plugins/overrides.nix @@ -229,14 +229,6 @@ assertNoAdditions { ]; }; - artio-nvim = super.artio-nvim.overrideAttrs { - # Requires extui enabled - nvimSkipModules = [ - "artio.view" - "artio.picker" - ]; - }; - astrocore = super.astrocore.overrideAttrs { dependencies = [ self.lazy-nvim ]; }; @@ -305,9 +297,6 @@ assertNoAdditions { "bamboo.colors" "bamboo.terminal" "bamboo.highlights" - "bamboo-light" - "bamboo-vulgaris" - "bamboo-multiplex" "barbecue.theme.bamboo" ]; meta = old.meta // { @@ -350,15 +339,6 @@ assertNoAdditions { base46 = super.base46.overrideAttrs (old: { dependencies = [ self.nvchad-ui ]; - # Requires global config setup - nvimSkipModules = [ - "nvchad.configs.cmp" - "nvchad.configs.gitsigns" - "nvchad.configs.luasnip" - "nvchad.configs.mason" - "nvchad.configs.nvimtree" - "nvchad.configs.telescope" - ]; meta = old.meta // { license = lib.licenses.mit; }; @@ -411,12 +391,6 @@ assertNoAdditions { blink-cmp-npm-nvim = super.blink-cmp-npm-nvim.overrideAttrs { nvimSkipModules = [ - # Test files - "blink-cmp-npm.utils.compute_meta_spec" - "blink-cmp-npm.utils.generate_doc_spec" - "blink-cmp-npm.utils.ignore_version_spec" - "blink-cmp-npm.utils.is_cursor_in_dependencies_node_spec" - "blink-cmp-npm.utils.semantic_sort_spec" "minit" ]; }; @@ -483,8 +457,6 @@ assertNoAdditions { catppuccin-nvim = super.catppuccin-nvim.overrideAttrs { nvimSkipModules = [ "catppuccin.groups.integrations.noice" - "catppuccin.groups.integrations.feline" - "catppuccin.lib.vim.init" # TODO(@mrcjkb): re-enable when https://github.com/catppuccin/nvim/pull/995 # has been merged and released. @@ -709,13 +681,6 @@ assertNoAdditions { cmp-dictionary = super.cmp-dictionary.overrideAttrs { checkInputs = [ self.nvim-cmp ]; - nvimSkipModules = [ - # Test files - "cmp_dictionary.dict.external_spec" - "cmp_dictionary.dict.trie_spec" - "cmp_dictionary.lib.trie_spec" - "cmp_dictionary.lib.unknown_spec" - ]; }; cmp-digraphs = super.cmp-digraphs.overrideAttrs { @@ -947,12 +912,6 @@ assertNoAdditions { ]; dependencies = [ self.plenary-nvim ]; nvimSkipModules = [ - # Requires setup call - "codecompanion.actions.static" - "codecompanion.actions.init" - # Address in use error from fzf-lua on darwin - # https://github.com/NixOS/nixpkgs/issues/431458 - "codecompanion.providers.actions.fzf_lua" # Test "minimal" ]; @@ -1033,13 +992,6 @@ assertNoAdditions { conjure = super.conjure.overrideAttrs { dependencies = [ self.plenary-nvim ]; nvimSkipModules = [ - # Test mismatch of directory because of nix generated path - "conjure-spec.client.clojure.nrepl.server_spec" - "conjure-spec.client.common-lisp.swank_spec" - "conjure-spec.client.fennel.nfnl_spec" - "conjure-spec.client.guile.socket_spec" - "conjure-spec.client.scheme.stdio_spec" - "conjure-spec.process_spec" # No parser for fennel "conjure.client.fennel.def-str-util" ]; @@ -1206,8 +1158,6 @@ assertNoAdditions { darkearth-nvim = super.darkearth-nvim.overrideAttrs { dependencies = [ self.lush-nvim ]; - # Lua module used to build theme - nvimSkipModules = [ "shipwright_build" ]; }; ddc-filter-matcher_head = super.ddc-filter-matcher_head.overrideAttrs { @@ -1363,12 +1313,6 @@ assertNoAdditions { dependencies = [ self.image-nvim ]; }; - diffs-nvim = super.diffs-nvim.overrideAttrs { - nvimSkipModules = [ - "minimal_init" - ]; - }; - diffview-nvim = super.diffview-nvim.overrideAttrs (old: { dependencies = [ self.plenary-nvim ]; @@ -1571,17 +1515,6 @@ assertNoAdditions { ]; }; - fyler-nvim = super.fyler-nvim.overrideAttrs { - nvimSkipModules = [ - # Requires setup call - "fyler.views.explorer.init" - "fyler.views.explorer.actions" - "fyler.views.explorer.ui" - "fyler.explorer.ui" - "fyler.explorer" - ]; - }; - fzf-checkout-vim = super.fzf-checkout-vim.overrideAttrs { # The plugin has a makefile which tries to run tests in a docker container. # This prevents it. @@ -1611,7 +1544,6 @@ assertNoAdditions { fzf-lua = super.fzf-lua.overrideAttrs { runtimeDeps = [ fzf ]; nvimSkipModules = [ - "fzf-lua.shell_helper" "fzf-lua.spawn" "fzf-lua.rpc" "fzf-lua.types" @@ -1696,16 +1628,8 @@ assertNoAdditions { "go.ai.init" "go.comment" "go.format" - "go.ginkgo" - "go.gotest" "go.gotests" - "go.inlay" "go.project" - "go.snips" - "go.tags" - "go.ts.go" - "go.ts.nodes" - "snips.go" ]; }; @@ -1807,10 +1731,6 @@ assertNoAdditions { harpoon2 = super.harpoon2.overrideAttrs { dependencies = [ self.plenary-nvim ]; - nvimSkipModules = [ - # Access harpoon data file - "harpoon.scratch.toggle" - ]; }; haskell-scope-highlighting-nvim = super.haskell-scope-highlighting-nvim.overrideAttrs { @@ -1832,10 +1752,6 @@ assertNoAdditions { ]; }; - helpview-nvim = super.helpview-nvim.overrideAttrs { - nvimSkipModules = [ "definitions.__vimdoc" ]; - }; - hex-nvim = super.hex-nvim.overrideAttrs { runtimeDeps = [ xxd ]; }; @@ -1871,12 +1787,6 @@ assertNoAdditions { doCheck = false; }; - hover-nvim = super.hover-nvim.overrideAttrs { - # Single provider issue with reading from config - # /lua/hover/providers/fold_preview.lua:27: attempt to index local 'config' (a nil value) - nvimSkipModules = "hover.providers.fold_preview"; - }; - html5-vim = super.html5-vim.overrideAttrs (old: { meta = old.meta // { # README contains the MIT license text. @@ -2055,14 +1965,6 @@ assertNoAdditions { ]; }; - kanagawa-paper-nvim = super.kanagawa-paper-nvim.overrideAttrs { - nvimSkipModules = [ - # skipping wezterm theme switcher since it relies on a wezterm module - # that does not seem to be available, tried to build setting wezterm-nvim as a dep - "wezterm.theme_switcher" - ]; - }; - kulala-nvim = super.kulala-nvim.overrideAttrs ( old: let @@ -2143,7 +2045,6 @@ assertNoAdditions { "lazyvim.plugins.extras.ai.copilot-native" "lazyvim.plugins.extras.ai.sidekick" "lazyvim.plugins.extras.ai.tabnine" - "lazyvim.plugins.extras.coding.blink" "lazyvim.plugins.extras.coding.luasnip" "lazyvim.plugins.extras.coding.neogen" "lazyvim.plugins.extras.editor.fzf" @@ -2152,10 +2053,6 @@ assertNoAdditions { "lazyvim.plugins.extras.formatting.prettier" "lazyvim.plugins.extras.lang.dotnet" "lazyvim.plugins.extras.lang.markdown" - "lazyvim.plugins.extras.lang.omnisharp" - "lazyvim.plugins.extras.lang.python" - "lazyvim.plugins.extras.lang.svelte" - "lazyvim.plugins.extras.lang.typescript" "lazyvim.plugins.extras.lang.typescript.init" "lazyvim.plugins.extras.lang.typescript.vtsls" "lazyvim.plugins.init" @@ -2331,12 +2228,6 @@ assertNoAdditions { telescope-nvim plenary-nvim ]; - nvimSkipModules = [ - # Attempt to connect to sqlitedb - "lispdocs.db" - "lispdocs.finder" - "lispdocs" - ]; }; litee-calltree-nvim = super.litee-calltree-nvim.overrideAttrs (old: { @@ -2374,26 +2265,11 @@ assertNoAdditions { telescope-nvim ]; - nvimSkipModules = [ - # Ignore livepreview._spec as it fails nvimRequireCheck. - # This file runs tests on require which unfortunately fails as it attempts to require the base plugin. See https://github.com/brianhuster/live-preview.nvim/blob/5890c4f7cb81a432fd5f3b960167757f1b4d4702/lua/livepreview/_spec.lua#L25 - "livepreview._spec" - ]; meta = old.meta // { license = lib.licenses.gpl3Only; }; }); - live-share-nvim = super.live-share-nvim.overrideAttrs (old: { - nvimSkipModules = (old.nvimSkipModules or [ ]) ++ [ - # These modules unconditionally load OpenSSL via LuaJIT FFI and abort in - # the headless require check on Darwin. - "live-share.host" - "live-share.guest" - "live-share.collab.crypto" - ]; - }); - lsp-format-modifications-nvim = super.lsp-format-modifications-nvim.overrideAttrs { dependencies = [ self.plenary-nvim ]; }; @@ -2626,7 +2502,6 @@ assertNoAdditions { "minuet.backends.claude" "minuet.backends.codestral" "minuet.backends.gemini" - "minuet.backends.huggingface" "minuet.backends.openai" "minuet.backends.openai_compatible" "minuet.backends.openai_fim_compatible" @@ -2770,8 +2645,6 @@ assertNoAdditions { # E5108: Error executing lua ...vim-2024-06-13/lua/diffview/api/views/diff/diff_view.lua:13: attempt to index global 'DiffviewGlobal' (a nil value) # Requires diffview-nvim's plugin script to be sourced. "neogit.integrations.diffview" - "neogit.popups.diff.actions" - "neogit.popups.diff.init" ]; }; @@ -2931,18 +2804,6 @@ assertNoAdditions { plenary-nvim nvim-treesitter-parsers.cpp ]; - nvimSkipModules = [ - # lua/plenary/path.lua:511: FileNotFoundError from mkdir because of stdpath parent path missing - "neotest-gtest.executables.global_registry" - "neotest-gtest.executables.init" - "neotest-gtest.executables.registry" - "neotest-gtest.executables.ui" - "neotest-gtest" - "neotest-gtest.neotest_adapter" - "neotest-gtest.report" - "neotest-gtest.storage" - "neotest-gtest.utils" - ]; }; neotest-haskell = super.neotest-haskell.overrideAttrs { @@ -3190,7 +3051,6 @@ assertNoAdditions { # Requires global config setup "nvchad.configs.cmp" "nvchad.configs.gitsigns" - "nvchad.configs.luasnip" "nvchad.configs.mason" "nvchad.configs.nvimtree" "nvchad.configs.telescope" @@ -3201,7 +3061,6 @@ assertNoAdditions { dependencies = [ self.nvzone-volt ]; nvimSkipModules = [ # Requires global config setup - "nvchad.tabufline.modules" "nvchad.term.init" "nvchad.themes.init" "nvchad.themes.mappings" @@ -3328,17 +3187,6 @@ assertNoAdditions { doInstallCheck = true; }; - nvim-highlight-colors = super.nvim-highlight-colors.overrideAttrs { - # Test module - nvimSkipModules = [ - "nvim-highlight-colors.utils_spec" - "nvim-highlight-colors.buffer_utils_spec" - "nvim-highlight-colors.color.converters_spec" - "nvim-highlight-colors.color.patterns_spec" - "nvim-highlight-colors.color.utils_spec" - ]; - }; - nvim-highlite = super.nvim-highlite.overrideAttrs (old: { meta = old.meta // { license = lib.licenses.gpl3Plus; @@ -3540,12 +3388,6 @@ assertNoAdditions { nvim-treesitter-parsers.typescript nvim-treesitter-parsers.zig ]; - nvimSkipModules = [ - # Broken runners - "nvim-test.runners.zig" - "nvim-test.runners.hspec" - "nvim-test.runners.stack" - ]; }; nvim-tinygit = super.nvim-tinygit.overrideAttrs { @@ -3557,35 +3399,6 @@ assertNoAdditions { }; nvim-tree-lua = super.nvim-tree-lua.overrideAttrs (old: { - nvimSkipModules = [ - # Meta can't be required - "nvim-tree._meta.api" - "nvim-tree._meta.api_decorator" - "nvim-tree._meta.api.decorator_example" - "nvim-tree._meta.classes" - "nvim-tree._meta.config.filters" - "nvim-tree._meta.config.actions" - "nvim-tree._meta.config.git" - "nvim-tree._meta.config.renderer" - "nvim-tree._meta.config.experimental" - "nvim-tree._meta.config.tab" - "nvim-tree._meta.config.modified" - "nvim-tree._meta.config.help" - "nvim-tree._meta.config.notify" - "nvim-tree._meta.config.sort" - "nvim-tree._meta.config.view" - "nvim-tree._meta.config.update_focused_file" - "nvim-tree._meta.config.diagnostics" - "nvim-tree._meta.config.log" - "nvim-tree._meta.config.system_open" - "nvim-tree._meta.config.ui" - "nvim-tree._meta.config.hijack_directories" - "nvim-tree._meta.config.trash" - "nvim-tree._meta.config.filesystem_watchers" - "nvim-tree._meta.config.live_filter" - "nvim-tree._meta.config.bookmarks" - "nvim-tree._meta.config" - ]; meta = old.meta // { license = lib.licenses.gpl3Plus; }; @@ -3595,11 +3408,6 @@ assertNoAdditions { callPackage ./nvim-treesitter/overrides.nix { } self super ); - nvim-treesitter-context = super.nvim-treesitter-context.overrideAttrs { - # Meant for CI installing parsers - nvimSkipModules = [ "install_parsers" ]; - }; - # TODO: raise warning at 26.05; drop at 26.11 nvim-treesitter-legacy = let @@ -3815,7 +3623,6 @@ assertNoAdditions { # FIXME: can't find plugin root dir nvimSkipModules = [ "openscad" - "openscad.snippets.openscad" "openscad.utilities" ]; }; @@ -3837,13 +3644,6 @@ assertNoAdditions { otter-nvim = super.otter-nvim.overrideAttrs { dependencies = [ self.nvim-lspconfig ]; - nvimSkipModules = [ - # requires config setup - "otter.keeper" - "otter.lsp.handlers" - "otter.lsp.init" - "otter.diagnostics" - ]; }; outline-nvim = super.outline-nvim.overrideAttrs { @@ -3920,21 +3720,6 @@ assertNoAdditions { checkInputs = with self; [ fzf-lua ]; - nvimSkipModules = [ - # Address in use error from fzf-lua on darwin - # https://github.com/NixOS/nixpkgs/issues/431458 - "perfanno.fzf_lua" - ]; - }; - - persisted-nvim = super.persisted-nvim.overrideAttrs { - nvimSkipModules = [ - # /lua/persisted/init.lua:44: attempt to index upvalue 'config' (a nil value) - # https://github.com/olimorris/persisted.nvim/issues/146 - "persisted" - "persisted.config" - "persisted.utils" - ]; }; persistent-breakpoints-nvim = super.persistent-breakpoints-nvim.overrideAttrs { @@ -4027,16 +3812,6 @@ assertNoAdditions { qmk-nvim = super.qmk-nvim.overrideAttrs { dependencies = [ self.plenary-nvim ]; - nvimSkipModules = [ - # Test assertions - "qmk.config.init_spec" - "qmk.format.keymap_spec" - "qmk.format.qmk_spec" - "qmk.format.zmk_spec" - "qmk.parse.qmk.init_spec" - "qmk.parse.zmk.init_spec" - "qmk_spec" - ]; }; quarto-nvim = super.quarto-nvim.overrideAttrs (old: { @@ -4048,9 +3823,6 @@ assertNoAdditions { nvim-lspconfig otter-nvim ]; - nvimSkipModules = [ - "quarto.runner.init" - ]; meta = old.meta // { # LICENSE says GPL-2.0-or-later. license = lib.licenses.gpl2Plus; @@ -4271,7 +4043,6 @@ assertNoAdditions { smart-splits-nvim = super.smart-splits-nvim.overrideAttrs { nvimSkipModules = [ "vimdoc-gen" - "vimdocrc" ]; }; @@ -4285,37 +4056,6 @@ assertNoAdditions { # Optional trouble integration checkInputs = [ self.trouble-nvim ]; nvimSkipModules = [ - # Requires setup call first - # attempt to index global 'Snacks' (a nil value) - "snacks.dashboard" - "snacks.debug" - "snacks.dim" - "snacks.explorer.init" - "snacks.gh.actions" - "snacks.gh.buf" - "snacks.gh.init" - "snacks.gh.render" - "snacks.gh.render.init" - "snacks.git" - "snacks.image.convert" - "snacks.image.image" - "snacks.image.init" - "snacks.image.placement" - "snacks.indent" - "snacks.input" - "snacks.lazygit" - "snacks.notifier" - "snacks.picker.actions" - "snacks.picker.config.highlights" - "snacks.picker.core.list" - "snacks.picker.source.gh" - "snacks.picker.util.diff" - "snacks.scratch" - "snacks.scroll" - "snacks.terminal" - "snacks.win" - "snacks.words" - "snacks.zen" # TODO: Plugin requires libsqlite available, create a test for it "snacks.picker.util.db" ]; @@ -4330,9 +4070,6 @@ assertNoAdditions { "snap.consumer.fzy.score" # circular import "snap.producer.create" - # https://github.com/camspiers/snap/pull/97 - "snap.preview.help" - "snap.producer.vim.help" ]; }; @@ -4377,8 +4114,6 @@ assertNoAdditions { nvimSkipModules = [ # Require "sql.utils" ? "sqlite.tbl.cache" - # attempt to write to read only database - "sqlite.examples.bookmarks" ]; } ); @@ -4772,8 +4507,6 @@ assertNoAdditions { nvimSkipModules = [ # Meta file "tokyonight.docs" - # Optional integration - "tokyonight.extra.fzf" ]; }; @@ -5539,11 +5272,6 @@ assertNoAdditions { }; }); - vim-matchup = super.vim-matchup.overrideAttrs { - # Optional treesitter integration - nvimSkipModules = "treesitter-matchup.third-party.query"; - }; - vim-mediawiki-editor = super.vim-mediawiki-editor.overrideAttrs { passthru.python3Dependencies = [ python3.pkgs.mwclient ]; }; diff --git a/pkgs/applications/editors/vscode/extensions/visualjj.visualjj/default.nix b/pkgs/applications/editors/vscode/extensions/visualjj.visualjj/default.nix index 2bc95480f3ff..1951f191bd20 100644 --- a/pkgs/applications/editors/vscode/extensions/visualjj.visualjj/default.nix +++ b/pkgs/applications/editors/vscode/extensions/visualjj.visualjj/default.nix @@ -3,6 +3,8 @@ lib, vscode-utils, vscode-extension-update-script, + stdenv, + autoPatchelfHook, }: vscode-utils.buildVscodeMarketplaceExtension { @@ -35,6 +37,10 @@ vscode-utils.buildVscodeMarketplaceExtension { // sources.${stdenvNoCC.hostPlatform.system} or (throw "Unsupported system ${stdenvNoCC.hostPlatform.system}"); + nativeBuildInputs = lib.optionals stdenv.hostPlatform.isLinux [ + autoPatchelfHook + ]; + passthru.updateScript = vscode-extension-update-script { }; meta = { @@ -48,6 +54,6 @@ vscode-utils.buildVscodeMarketplaceExtension { "x86_64-linux" "x86_64-darwin" ]; - maintainers = [ ]; + maintainers = with lib.maintainers; [ sandarukasa ]; }; } diff --git a/pkgs/applications/networking/cluster/terraform-providers/providers.json b/pkgs/applications/networking/cluster/terraform-providers/providers.json index 1016fd471801..0fc27d0807fd 100644 --- a/pkgs/applications/networking/cluster/terraform-providers/providers.json +++ b/pkgs/applications/networking/cluster/terraform-providers/providers.json @@ -73,13 +73,13 @@ "vendorHash": "sha256-FHBpTYSmVivoqz+Eaa/r5y1f/saIx4l6mjOtZhxZVRw=" }, "auth0_auth0": { - "hash": "sha256-XCptfoE1VI+Vn8Mls86KOYo1XwLEemi4NXzm5MhsNF4=", + "hash": "sha256-v0EPS8sVHZRDkc8zJtVGL6pDFbHhxyW3D+iLYe0kSVI=", "homepage": "https://registry.terraform.io/providers/auth0/auth0", "owner": "auth0", "repo": "terraform-provider-auth0", - "rev": "v1.47.0", + "rev": "v1.48.0", "spdx": "MPL-2.0", - "vendorHash": "sha256-U9pfdnh7jAJvdUcKzV5qD3ex5vprhN2k+f+jqLyKJqM=" + "vendorHash": "sha256-xf2c6wjpBxEmWm2t3/fFvekGfi2XbruV/kWeBLcTN4g=" }, "aviatrixsystems_aviatrix": { "hash": "sha256-46djOfAj/5kfeoKLQHbeKefzdGbmlBATR+uN/IaAn8I=", diff --git a/pkgs/by-name/ac/acli/sources.json b/pkgs/by-name/ac/acli/sources.json index d166f3b4524c..0a8aa45e4ab9 100644 --- a/pkgs/by-name/ac/acli/sources.json +++ b/pkgs/by-name/ac/acli/sources.json @@ -1,21 +1,21 @@ { - "version": "1.3.18-stable", + "version": "1.3.19-stable", "sources": { "aarch64-darwin": { - "url": "https://acli.atlassian.com/darwin/1.3.18-stable/acli_1.3.18-stable_darwin_arm64.tar.gz", - "sha256": "9e4890e441e2762adbb6bd94451fdea554177806a6044469ece7b14e603d2040" + "url": "https://acli.atlassian.com/darwin/1.3.19-stable/acli_1.3.19-stable_darwin_arm64.tar.gz", + "sha256": "c5f1b1f6db63972d126a2f8ac9aca9a199739c7b51ac9e352e8ae3ed2b27131c" }, "aarch64-linux": { - "url": "https://acli.atlassian.com/linux/1.3.18-stable/acli_1.3.18-stable_linux_arm64.tar.gz", - "sha256": "ac71711da43649854689ad0f74e44f18b0da3fd0ee776ceb4307ae7eb1e5da85" + "url": "https://acli.atlassian.com/linux/1.3.19-stable/acli_1.3.19-stable_linux_arm64.tar.gz", + "sha256": "72972e74fa9036c5b40175570234a2e79559776c06a3aa29f632a39c7d3674da" }, "x86_64-darwin": { - "url": "https://acli.atlassian.com/darwin/1.3.18-stable/acli_1.3.18-stable_darwin_amd64.tar.gz", - "sha256": "4078846601b2e222ecbbc6b314a1c58ca6c41c18d1b118833814c942be00befe" + "url": "https://acli.atlassian.com/darwin/1.3.19-stable/acli_1.3.19-stable_darwin_amd64.tar.gz", + "sha256": "394096ecd5a6082cbbbc8b2f3e1f1fbe694cdb340e25a4014eeb78461b869beb" }, "x86_64-linux": { - "url": "https://acli.atlassian.com/linux/1.3.18-stable/acli_1.3.18-stable_linux_amd64.tar.gz", - "sha256": "4ad4badc481ac1eff452f531c405a20422eb57513cc898d2a1f8ea945d6c24f6" + "url": "https://acli.atlassian.com/linux/1.3.19-stable/acli_1.3.19-stable_linux_amd64.tar.gz", + "sha256": "f29fa8b7f01710053c2f4e07723501ebfe448672b669d32d83e961686d383a6d" } } } diff --git a/pkgs/by-name/ad/adbtuifm/package.nix b/pkgs/by-name/ad/adbtuifm/package.nix index 29f4e8e31f63..233bb5a818d3 100644 --- a/pkgs/by-name/ad/adbtuifm/package.nix +++ b/pkgs/by-name/ad/adbtuifm/package.nix @@ -20,6 +20,6 @@ buildGoModule (finalAttrs: { license = with lib.licenses; [ mit ]; maintainers = with lib.maintainers; [ daru-san ]; mainProgram = "adbtuifm"; - platforms = lib.platforms.linux; + platforms = lib.platforms.linux ++ lib.platforms.darwin; }; }) diff --git a/pkgs/by-name/ad/adguardhome/package.nix b/pkgs/by-name/ad/adguardhome/package.nix index 8380edda58cf..b5a8ed558ab8 100644 --- a/pkgs/by-name/ad/adguardhome/package.nix +++ b/pkgs/by-name/ad/adguardhome/package.nix @@ -9,15 +9,15 @@ buildGoModule (finalAttrs: { pname = "adguardhome"; - version = "0.107.76"; + version = "0.107.77"; src = fetchFromGitHub { owner = "AdguardTeam"; repo = "AdGuardHome"; tag = "v${finalAttrs.version}"; - hash = "sha256-CF1Ieu7oCnzvXwoHzX5126gQGcgXL+giMtUciKBZ2ZU="; + hash = "sha256-CwM8Zi5FXNwb+5gdESoP31Ja1O6PrnOgFfJaT8Yc890="; }; - vendorHash = "sha256-tHabP5I7PZtDkVucF95StRyXGEsfbuc6Z3AhQZ/g2f8="; + vendorHash = "sha256-D91mHBG78LOG1O5oVlaA3T8HWIISPeKMB06VpWuxxqo="; dashboard = buildNpmPackage { inherit (finalAttrs) src version; diff --git a/pkgs/by-name/ag/agkozak-zsh-prompt/package.nix b/pkgs/by-name/ag/agkozak-zsh-prompt/package.nix index af3e98c50e15..6b8e6ea0904e 100644 --- a/pkgs/by-name/ag/agkozak-zsh-prompt/package.nix +++ b/pkgs/by-name/ag/agkozak-zsh-prompt/package.nix @@ -4,15 +4,15 @@ fetchFromGitHub, }: -stdenvNoCC.mkDerivation rec { +stdenvNoCC.mkDerivation (finalAttrs: { pname = "agkozak-zsh-prompt"; version = "3.11.5"; src = fetchFromGitHub { owner = "agkozak"; repo = "agkozak-zsh-prompt"; - tag = "v${version}"; - sha256 = "sha256-C9lyOm2+RVLOUSO5Vz013uTobnN+SBE1Jm8GuJZ7T7U="; + tag = "v${finalAttrs.version}"; + hash = "sha256-C9lyOm2+RVLOUSO5Vz013uTobnN+SBE1Jm8GuJZ7T7U="; }; strictDeps = true; @@ -33,4 +33,4 @@ stdenvNoCC.mkDerivation rec { platforms = lib.platforms.all; maintainers = with lib.maintainers; [ ambroisie ]; }; -} +}) diff --git a/pkgs/by-name/am/amp-cli/package.nix b/pkgs/by-name/am/amp-cli/package.nix index a3cfa1920ef1..1e95356b3f79 100644 --- a/pkgs/by-name/am/amp-cli/package.nix +++ b/pkgs/by-name/am/amp-cli/package.nix @@ -27,7 +27,7 @@ let in stdenvNoCC.mkDerivation (finalAttrs: { pname = "amp-cli"; - version = "0.0.1779772576-g751b94"; + version = "0.0.1780564400-g2007df"; src = finalAttrs.passthru.sources.${stdenvNoCC.hostPlatform.system}; @@ -78,10 +78,10 @@ stdenvNoCC.mkDerivation (finalAttrs: { url = "https://static.ampcode.com/cli/${finalAttrs.version}/amp-${platform}.gz"; hash = { - x86_64-linux = "sha256-y3o+GOeyH8daz+CdPNs6nWYJ3Ss+x/KtQ6FaIvBviCc="; - aarch64-linux = "sha256-FviFU+T1pTmQLFliV/xl/ihdoSx8EnxM7QW8l7igVYI="; - x86_64-darwin = "sha256-9fJ/p6v/TLxIs2TIwwT+c3yio16tpoEYWR+B60sKFcU="; - aarch64-darwin = "sha256-EDksMRB1odiv6+t7ZH+76dnjq7t+5i0UQ6m2h8qt0y4="; + x86_64-linux = "sha256-7hUa1Qs1pNH2+31rrc9T99eDQ9Vq+CSwxROISyPqogY="; + aarch64-linux = "sha256-ThT2J1YBoZM5+YanRbL40GyxYQtK/xyDqac8fv0gfZs="; + x86_64-darwin = "sha256-VnuMqXVzqge5jgduxB+woYLVZkFtu92MEsEsrh4tJgE="; + aarch64-darwin = "sha256-gYAI+eQitglQTBtuilHkHKd8rsYsJ7s2QKoFQR85l6o="; } .${system'}; } diff --git a/pkgs/by-name/be/beeper/package.nix b/pkgs/by-name/be/beeper/package.nix index 506909de7980..099714c8de11 100644 --- a/pkgs/by-name/be/beeper/package.nix +++ b/pkgs/by-name/be/beeper/package.nix @@ -3,33 +3,39 @@ fetchurl, appimageTools, makeWrapper, + asar, writeShellApplication, curl, common-updater-scripts, }: let pname = "beeper"; - version = "4.2.808"; + version = "4.2.892"; src = fetchurl { url = "https://beeper-desktop.download.beeper.com/builds/Beeper-${version}-x86_64.AppImage"; - hash = "sha256-ql5WkKVgQiKIHkNKd805xFezsvoW+8dqXx6MzfsxceM="; + hash = "sha256-kTX0VrfJb7UnQ6JVfRIgjLlIsDgzDVgTnx7twlYMf9k="; }; appimageContents = appimageTools.extract { inherit pname version src; postExtract = '' + appRoot="$out/resources/app" + ${lib.getExe asar} extract "$out/resources/app.asar" "$appRoot" + rm "$out/resources/app.asar" + # disable creating a desktop file and icon in the home folder during runtime - linuxConfigFilename=$out/resources/app/build/main/linux-*.mjs + linuxConfigFilename=$appRoot/build/main/linux-*.mjs echo "export function registerLinuxConfig() {}" > $linuxConfigFilename # disable auto update - sed -i 's/auto_update_disabled:[^,}]*/auto_update_disabled:true/g' $out/resources/app/build/main/main-entry-*.mjs + sed -i 's/c=d??{},p=c.hw_acceleration??!0/c={...(d??{}),auto_update_disabled:true},p=c.hw_acceleration??!0/g' $appRoot/build/main/index-*.mjs # prevent updates - sed -i -E 's/executeDownload\([^)]+\)\{/executeDownload(){return;/g' $out/resources/app/build/main/main-entry-*.mjs + sed -i -E 's/executeDownload\([^)]+\)\{/executeDownload(){return;/g' $appRoot/build/main/main-entry-*.mjs + + # hide version status element on about page otherwise an error message is shown + sed -i '$ a\.subview-prefs-about > div:nth-child(2) {display: none;}' $appRoot/build-browser/*.css - # hide version status element on about page otherwise a error message is shown - sed -i '$ a\.subview-prefs-about > div:nth-child(2) {display: none;}' $out/resources/app/build/renderer/*.css ''; }; in diff --git a/pkgs/by-name/bl/bleachbit/package.nix b/pkgs/by-name/bl/bleachbit/package.nix index c22b04f02d16..c135d334675c 100644 --- a/pkgs/by-name/bl/bleachbit/package.nix +++ b/pkgs/by-name/bl/bleachbit/package.nix @@ -12,13 +12,13 @@ python3Packages.buildPythonApplication (finalAttrs: { pname = "bleachbit"; - version = "5.0.2"; + version = "6.0.0"; pyproject = false; src = fetchurl { url = "mirror://sourceforge/bleachbit/bleachbit-${finalAttrs.version}.tar.bz2"; - sha256 = "sha256-q3iRdrqsR7U+O2LUaf5qDv4DVNsTOcnf9Po+pewzwMs="; + sha256 = "sha256-ixQQirPj2zPEt6wBtFGlok60BsQlHJy8yp1QMonWX/c="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/ca/caddy/package.nix b/pkgs/by-name/ca/caddy/package.nix index 25fe6c7df909..029ace9f9d28 100644 --- a/pkgs/by-name/ca/caddy/package.nix +++ b/pkgs/by-name/ca/caddy/package.nix @@ -11,12 +11,12 @@ versionCheckHook, }: let - version = "2.11.3"; + version = "2.11.4"; dist = fetchFromGitHub { owner = "caddyserver"; repo = "dist"; tag = "v${version}"; - hash = "sha256-D1qI7TDJpSvtgpo1FsPZk6mpqRvRharFZ8soI7Mn3RE="; + hash = "sha256-oRQfQH1GKjAjVMj+dZo1f1+HOaOdJIyEfod0iGLYcc8="; }; in buildGoModule (finalAttrs: { @@ -27,10 +27,10 @@ buildGoModule (finalAttrs: { owner = "caddyserver"; repo = "caddy"; tag = "v${finalAttrs.version}"; - hash = "sha256-7Hgmo7ldDtbwl/acEY/4RNhSGnK/NNcXn+eIm1I8HKg="; + hash = "sha256-wzk8KRZfDCbbjRlBwkoKAoMjOhV4xF3yuXUueqtl1xM="; }; - vendorHash = "sha256-QiZZxYsYFUneZ52TfFKQWJ42lmBofvUTZrHmDBuN2O4="; + vendorHash = "sha256-2GwSM7EKN9GwN6kte7CekpXIJ0vzHhhsnrs3TC6vTW4="; ldflags = [ "-s" diff --git a/pkgs/by-name/ca/capa/package.nix b/pkgs/by-name/ca/capa/package.nix new file mode 100644 index 000000000000..fad27bfb2801 --- /dev/null +++ b/pkgs/by-name/ca/capa/package.nix @@ -0,0 +1 @@ +{ python3Packages }: with python3Packages; toPythonApplication capa diff --git a/pkgs/by-name/ca/cargo-deny/package.nix b/pkgs/by-name/ca/cargo-deny/package.nix index d464fc1b2972..556eda676e08 100644 --- a/pkgs/by-name/ca/cargo-deny/package.nix +++ b/pkgs/by-name/ca/cargo-deny/package.nix @@ -8,16 +8,16 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "cargo-deny"; - version = "0.19.7"; + version = "0.19.8"; src = fetchFromGitHub { owner = "EmbarkStudios"; repo = "cargo-deny"; tag = finalAttrs.version; - hash = "sha256-hdC8SagsZzdJ4FbBBPOt6/iAq3pHtNcS4xuYccJX56Y="; + hash = "sha256-pcF/SYtlydu09ZXQ5/1Wm2gwttFBulEt27SCEY1+kNU="; }; - cargoHash = "sha256-2f+RWVTiz0ZBdBKBQfYTojssEHlyVl1mMhfHeulOgXE="; + cargoHash = "sha256-I2BHVcpULObHtsqBxzTvEPevZa/CkhlC/gj0ldofDwA="; nativeBuildInputs = [ pkg-config diff --git a/pkgs/by-name/ci/circup/package.nix b/pkgs/by-name/ci/circup/package.nix index c4e68297787e..f4b0917e23ec 100644 --- a/pkgs/by-name/ci/circup/package.nix +++ b/pkgs/by-name/ci/circup/package.nix @@ -6,14 +6,14 @@ python3.pkgs.buildPythonApplication (finalAttrs: { pname = "circup"; - version = "3.0.3"; + version = "3.0.4"; pyproject = true; src = fetchFromGitHub { owner = "adafruit"; repo = "circup"; tag = finalAttrs.version; - hash = "sha256-ycQdeAw/7R+yNn+2IMHprNI9JTml/uT6tEPk5R2Bl38="; + hash = "sha256-sv+ixo5S9JRuVu8JkKt29Kpn1ioRIwGW4Ss/A77YiFU="; }; pythonRelaxDeps = [ "semver" ]; diff --git a/pkgs/by-name/co/codebook/package.nix b/pkgs/by-name/co/codebook/package.nix index 346076c192ca..dd5412d834d3 100644 --- a/pkgs/by-name/co/codebook/package.nix +++ b/pkgs/by-name/co/codebook/package.nix @@ -8,17 +8,17 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "codebook"; - version = "0.3.40"; + version = "0.3.41"; src = fetchFromGitHub { owner = "blopker"; repo = "codebook"; tag = "v${finalAttrs.version}"; - hash = "sha256-+tjUqo5NO1cVMW2x7eKBw8PpPVvCtURCX/+pHKWT9Z4="; + hash = "sha256-QmvkN0e4iwf3gwi/wMnGXlbr9CpG9JvWEuAjlFm50Sk="; }; buildAndTestSubdir = "crates/codebook-lsp"; - cargoHash = "sha256-IQdKVZLdXO9zQYDliPbvS7LrVT0h4zOKghJO/E5Zvus="; + cargoHash = "sha256-vh4ObFy3pq6e3+DQhYiWNTeaITm+ci/r4CwfAvO3JqU="; env = { CARGO_PROFILE_RELEASE_LTO = "fat"; diff --git a/pkgs/by-name/cw/cwm/package.nix b/pkgs/by-name/cw/cwm/package.nix index 588fe324b6fa..58c5da37a0fe 100644 --- a/pkgs/by-name/cw/cwm/package.nix +++ b/pkgs/by-name/cw/cwm/package.nix @@ -40,10 +40,7 @@ stdenv.mkDerivation (finalAttrs: { meta = { description = "Lightweight and efficient window manager for X11"; homepage = "https://github.com/leahneukirchen/cwm"; - maintainers = with lib.maintainers; [ - _0x4A6F - mkf - ]; + maintainers = with lib.maintainers; [ _0x4A6F ]; license = lib.licenses.isc; platforms = lib.platforms.linux; mainProgram = "cwm"; diff --git a/pkgs/by-name/es/esptool/package.nix b/pkgs/by-name/es/esptool/package.nix index d34418f9f0d3..6480217bb0a1 100644 --- a/pkgs/by-name/es/esptool/package.nix +++ b/pkgs/by-name/es/esptool/package.nix @@ -8,14 +8,14 @@ python3Packages.buildPythonApplication rec { pname = "esptool"; - version = "5.2.0"; + version = "5.3.0"; pyproject = true; src = fetchFromGitHub { owner = "espressif"; repo = "esptool"; tag = "v${version}"; - hash = "sha256-jXH1T/ey61eFcev4cuLQEVynO+/+BIqRndz+GutR/GU="; + hash = "sha256-NRfXLf8u35/9RD1QxEuV06K3h030qXj5GM+QjvLC6FM="; }; postPatch = '' diff --git a/pkgs/by-name/ex/exploitdb/package.nix b/pkgs/by-name/ex/exploitdb/package.nix index 4ed7894bc131..ba8278723719 100644 --- a/pkgs/by-name/ex/exploitdb/package.nix +++ b/pkgs/by-name/ex/exploitdb/package.nix @@ -6,13 +6,13 @@ }: stdenv.mkDerivation (finalAttrs: { pname = "exploitdb"; - version = "2026-05-27"; + version = "2026-06-02"; src = fetchFromGitLab { owner = "exploit-database"; repo = "exploitdb"; tag = finalAttrs.version; - hash = "sha256-nLn9QpHEF5TCMP0wKBSemQV9VA/viwYzjNlsGSpQf4Q="; + hash = "sha256-vqdK4/AuBpanZooM/PHQLZzOfR0z44BGq1vmyiFwV/I="; }; nativeBuildInputs = [ makeWrapper ]; diff --git a/pkgs/by-name/ga/gallia/package.nix b/pkgs/by-name/ga/gallia/package.nix index 88a4187535e7..f1b0264ed767 100644 --- a/pkgs/by-name/ga/gallia/package.nix +++ b/pkgs/by-name/ga/gallia/package.nix @@ -8,14 +8,14 @@ python3.pkgs.buildPythonApplication (finalAttrs: { pname = "gallia"; - version = "2.0.2"; + version = "2.1.1"; pyproject = true; src = fetchFromGitHub { owner = "Fraunhofer-AISEC"; repo = "gallia"; tag = "v${finalAttrs.version}"; - hash = "sha256-2jiD2ZZGinfTT+35TYl3+okWkkTrY1IdfSYbjC+/cvs="; + hash = "sha256-vM19d5alD9xhFgR4are0pDhJyNiUY320nJmjEF2BvxM="; }; postPatch = '' @@ -35,6 +35,7 @@ python3.pkgs.buildPythonApplication (finalAttrs: { platformdirs pydantic tabulate + wcwidth zstandard ]; diff --git a/pkgs/by-name/gc/gcx/package.nix b/pkgs/by-name/gc/gcx/package.nix index 945f3a4ae6ae..a5bcefec7be5 100644 --- a/pkgs/by-name/gc/gcx/package.nix +++ b/pkgs/by-name/gc/gcx/package.nix @@ -9,16 +9,16 @@ buildGoModule (finalAttrs: { pname = "gcx"; - version = "0.2.16"; + version = "0.4.0"; src = fetchFromGitHub { owner = "grafana"; repo = "gcx"; tag = "v${finalAttrs.version}"; - hash = "sha256-IQbtTEhHttJ/i8VOf6g+bulIzjltZDC6+VPjI+YdZjs="; + hash = "sha256-6ZKlNLtP3dwPAIXGnupIk0wuXs+qMy2d2OreKfKJlxM="; }; - vendorHash = "sha256-DJmInygabXTK6mnDlugjAAz86HEBpfCm1HQOIsg3Q/Y="; + vendorHash = "sha256-FzhQfooCApBsnNH/cZYFfy3m4cDSBVX9ueaWfhTgx1k="; subPackages = [ "cmd/gcx" ]; diff --git a/pkgs/by-name/gg/ggml/package.nix b/pkgs/by-name/gg/ggml/package.nix index ccd69b10c520..8d4693174847 100644 --- a/pkgs/by-name/gg/ggml/package.nix +++ b/pkgs/by-name/gg/ggml/package.nix @@ -7,7 +7,7 @@ stdenv.mkDerivation (finalAttrs: { pname = "ggml"; - version = "0.13.0"; + version = "0.13.1"; __structuredAttrs = true; strictDeps = true; @@ -16,7 +16,7 @@ stdenv.mkDerivation (finalAttrs: { owner = "ggml-org"; repo = "ggml"; tag = "v${finalAttrs.version}"; - hash = "sha256-yUd/9uk9utNqkM2V/IIkcNuEojBJQwAOEEUbBPDsNCE="; + hash = "sha256-OZjuLdQI312UTn4LLW13C7xMqrM0L/2pVl7cAOlbS6M="; }; # The cmake package does not handle absolute CMAKE_INSTALL_LIBDIR and CMAKE_INSTALL_INCLUDEDIR diff --git a/pkgs/by-name/gi/gir-rs/package.nix b/pkgs/by-name/gi/gir-rs/package.nix index aee506772c33..5bb5ce06c398 100644 --- a/pkgs/by-name/gi/gir-rs/package.nix +++ b/pkgs/by-name/gi/gir-rs/package.nix @@ -5,7 +5,7 @@ }: let - version = "0.21.0"; + version = "0.22.1"; in rustPlatform.buildRustPackage { pname = "gir"; @@ -15,10 +15,10 @@ rustPlatform.buildRustPackage { owner = "gtk-rs"; repo = "gir"; rev = version; - sha256 = "sha256-fjfTB621DwnCRXTsoGxISk+4XblMbjX5dzY+M8uDZ80="; + sha256 = "sha256-bR6tOKHJk6tG/Q41F4ZaqCo/LjCigRXpFQn1o+AlTbM="; }; - cargoHash = "sha256-wT09qXGx4+oJ9MhZqpG9jZ1yMYT/JJ2bJ6z1CT7wqUQ="; + cargoHash = "sha256-5FXw78dQJRkBVCn4hhU7+0kZ4pIYDsMAHwH5WrVwxuI="; postPatch = '' rm build.rs @@ -30,6 +30,7 @@ rustPlatform.buildRustPackage { description = "Tool to generate rust bindings and user API for glib-based libraries"; homepage = "https://github.com/gtk-rs/gir/"; license = with lib.licenses; [ mit ]; + maintainers = with lib.maintainers; [ anish ]; mainProgram = "gir"; }; } diff --git a/pkgs/by-name/gi/git-wt/package.nix b/pkgs/by-name/gi/git-wt/package.nix index 61aafed622ff..380901785d6a 100644 --- a/pkgs/by-name/gi/git-wt/package.nix +++ b/pkgs/by-name/gi/git-wt/package.nix @@ -7,16 +7,16 @@ buildGoModule (finalAttrs: { pname = "git-wt"; - version = "0.28.0"; + version = "0.29.0"; src = fetchFromGitHub { owner = "k1LoW"; repo = "git-wt"; tag = "v${finalAttrs.version}"; - hash = "sha256-JXPJlPAsbXXXN86ZB7PQNv31QZMiAn5DaYfHlnGWknc="; + hash = "sha256-1u0GDC1Sc4Xy4URuM6TnR/ENsdIWa94Ixu3mL6WrmFg="; }; - vendorHash = "sha256-KYE9v+aSWprovDXXhWWmftLQCrH7QtjUYjnGK5m9s9Y="; + vendorHash = "sha256-ppbY3ZJo2L/FbWlOiywqk6W4kVDQKkwf5VjRHucb78A="; nativeCheckInputs = [ git ]; diff --git a/pkgs/by-name/go/goshs/package.nix b/pkgs/by-name/go/goshs/package.nix index a08f48cb856c..08816a6aacbd 100644 --- a/pkgs/by-name/go/goshs/package.nix +++ b/pkgs/by-name/go/goshs/package.nix @@ -8,13 +8,13 @@ buildGoModule (finalAttrs: { pname = "goshs"; - version = "2.0.9"; + version = "2.1.0"; src = fetchFromGitHub { owner = "patrickhener"; repo = "goshs"; tag = "v${finalAttrs.version}"; - hash = "sha256-NAq3fBjhiGIP9zA/s6wYaQ0nDju6hZu/g2RPIIEO41g="; + hash = "sha256-pS/Dx3C2c8Rpr2ugcxrElFice6Eildt28zdIfrL/5yk="; }; vendorHash = "sha256-nVg+ALvvZYG+9JFiNGaT/EQO8IdZK3EO8UQoAp29KNQ="; diff --git a/pkgs/by-name/gr/grype/package.nix b/pkgs/by-name/gr/grype/package.nix index 018a7c67c470..9b679cffe312 100644 --- a/pkgs/by-name/gr/grype/package.nix +++ b/pkgs/by-name/gr/grype/package.nix @@ -12,7 +12,7 @@ buildGoModule (finalAttrs: { pname = "grype"; - version = "0.112.0"; + version = "0.113.0"; # required for tests __darwinAllowLocalNetworking = true; @@ -21,7 +21,7 @@ buildGoModule (finalAttrs: { owner = "anchore"; repo = "grype"; tag = "v${finalAttrs.version}"; - hash = "sha256-8gCJ+hCClpYbDOTierJJfH5JP1imuQ3ZV2xDoeE0TtM="; + hash = "sha256-wNInrYI7cxn/WsPLZp01rEzQm4gUG0xUgvSLlv27WUM="; # populate values that require us to use git. By doing this in postFetch we # can delete .git afterwards and maintain better reproducibility of the src. leaveDotGit = true; @@ -36,7 +36,7 @@ buildGoModule (finalAttrs: { proxyVendor = true; - vendorHash = "sha256-VDhKMg+3rovhpSFgDUqeLOrf56jtT9c0e090FvY87Yo="; + vendorHash = "sha256-VZutEOKZK0aYiS5e9WWXCBOw7epr3xfYJo0xrpSecdk="; patches = [ # several test golden files have unstable paths based on the platform @@ -82,6 +82,13 @@ buildGoModule (finalAttrs: { # patch utility script patchShebangs grype/db/v5/distribution/testdata/tls/generate-x509-cert-pair.sh + + # test build fingerprinting expects a git repository + git init + git config user.email "test@example.com" + git config user.name "Test User" + git add . + git commit -m "initial commit" ''; checkFlags = diff --git a/pkgs/by-name/gu/gui-for-clash/package.nix b/pkgs/by-name/gu/gui-for-clash/package.nix deleted file mode 100644 index c70cabde976a..000000000000 --- a/pkgs/by-name/gu/gui-for-clash/package.nix +++ /dev/null @@ -1,148 +0,0 @@ -{ - lib, - stdenv, - buildGoModule, - fetchFromGitHub, - autoPatchelfHook, - copyDesktopItems, - nodejs, - pkg-config, - pnpm_10, - fetchPnpmDeps, - pnpmConfigHook, - wails, - webkitgtk_4_1, - makeDesktopItem, - nix-update-script, -}: - -let - pname = "gui-for-clash"; - version = "1.21.1"; - - src = fetchFromGitHub { - owner = "GUI-for-Cores"; - repo = "GUI.for.Clash"; - tag = "v${version}"; - hash = "sha256-eIJYtXa0JdP7hLvBRnWyh0KkdMWvOd2GRXPaqCvP8yE="; - }; - - metaCommon = { - homepage = "https://github.com/GUI-for-Cores/GUI.for.Clash"; - hydraPlatforms = [ ]; # https://gui-for-cores.github.io/guide/#note - license = with lib.licenses; [ gpl3Plus ]; - maintainers = [ ]; - }; - - frontend = stdenv.mkDerivation (finalAttrs: { - inherit pname version src; - - sourceRoot = "${finalAttrs.src.name}/frontend"; - - nativeBuildInputs = [ - nodejs - pnpmConfigHook - pnpm_10 - ]; - - pnpmDeps = fetchPnpmDeps { - inherit (finalAttrs) - pname - version - src - sourceRoot - ; - pnpm = pnpm_10; - fetcherVersion = 3; - hash = "sha256-gr6XIhLKWSOJ4LWiliOvMoA9QbPiohrCPmvObz49/pw="; - }; - - buildPhase = '' - runHook preBuild - - pnpm run build-only - - runHook postBuild - ''; - - installPhase = '' - runHook preInstall - - cp -r dist $out - - runHook postInstall - ''; - - meta = metaCommon // { - description = "GUI program developed by vue3"; - platforms = lib.platforms.all; - }; - }); -in -buildGoModule { - inherit pname version src; - - patches = [ ./xdg-path-and-restart-patch.patch ]; - - vendorHash = "sha256-EeIxt0BzSaZh1F38btUXN9kAvj12nlqEerVgWVGkiuk="; - - nativeBuildInputs = [ - autoPatchelfHook - copyDesktopItems - pkg-config - wails - ]; - - buildInputs = [ webkitgtk_4_1 ]; - - preBuild = '' - cp -r ${frontend} frontend/dist - ''; - - buildPhase = '' - runHook preBuild - - wails build -m -s -trimpath -skipbindings -devtools -tags webkit2_41 -o GUI.for.Clash - - runHook postBuild - ''; - - desktopItems = [ - (makeDesktopItem { - name = "gui-for-clash"; - exec = "GUI.for.Clash"; - icon = "gui-for-clash"; - genericName = "GUI.for.Clash"; - desktopName = "GUI.for.Clash"; - categories = [ "Network" ]; - keywords = [ "Proxy" ]; - }) - ]; - - installPhase = '' - runHook preInstall - - install -Dm 0755 build/bin/GUI.for.Clash $out/bin/GUI.for.Clash - install -Dm 0644 build/appicon.png $out/share/icons/hicolor/256x256/apps/gui-for-clash.png - - runHook postInstall - ''; - - passthru = { - inherit frontend; - updateScript = nix-update-script { - extraArgs = [ - "--version-regex" - "^v([0-9.]+)$" - "--subpackage" - "frontend" - ]; - }; - }; - - meta = metaCommon // { - description = "Clash GUI program developed by vue3 + wails"; - mainProgram = "GUI.for.Clash"; - platforms = lib.platforms.linux; - }; -} diff --git a/pkgs/by-name/gu/gui-for-clash/xdg-path-and-restart-patch.patch b/pkgs/by-name/gu/gui-for-clash/xdg-path-and-restart-patch.patch deleted file mode 100644 index b5d9ed7175c1..000000000000 --- a/pkgs/by-name/gu/gui-for-clash/xdg-path-and-restart-patch.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- a/bridge/bridge.go -+++ b/bridge/bridge.go -@@ -93,7 +93,10 @@ - - func (a *App) RestartApp() FlagResult { - log.Printf("RestartApp") -- exePath := Env.BasePath + "/" + Env.AppName -+ exePath, err := os.Executable() -+ if err != nil { -+ exePath = filepath.Join(Env.BasePath, Env.AppName) -+ } - - cmd := exec.Command(exePath) - SetCmdWindowHidden(cmd) diff --git a/pkgs/by-name/ha/halloy/package.nix b/pkgs/by-name/ha/halloy/package.nix index 927927ab0bb8..3ac327c34c34 100644 --- a/pkgs/by-name/ha/halloy/package.nix +++ b/pkgs/by-name/ha/halloy/package.nix @@ -21,13 +21,13 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "halloy"; - version = "2026.7"; + version = "2026.7.1"; src = fetchFromGitHub { owner = "squidowl"; repo = "halloy"; tag = finalAttrs.version; - hash = "sha256-kmz5m8k0vdqnK2NZTmPxYJ5GqB1O4aRaVjPyNZTWnrQ="; + hash = "sha256-AFDx4gmYWUMcvpJi+/2xd0s4gAygwss2XrmCFsd6uKs="; }; cargoHash = "sha256-hrYWF5WNhLqKMFJJlir7tumxNZqgGm+gK+RI1iDPatM="; diff --git a/pkgs/by-name/hc/hcli/package.nix b/pkgs/by-name/hc/hcli/package.nix new file mode 100644 index 000000000000..58d31dd89d98 --- /dev/null +++ b/pkgs/by-name/hc/hcli/package.nix @@ -0,0 +1 @@ +{ python3Packages }: with python3Packages; toPythonApplication ida-hcli diff --git a/pkgs/by-name/he/heimer/package.nix b/pkgs/by-name/he/heimer/package.nix index 93c1718fbe49..3524b6bc75f8 100644 --- a/pkgs/by-name/he/heimer/package.nix +++ b/pkgs/by-name/he/heimer/package.nix @@ -49,6 +49,6 @@ stdenv.mkDerivation rec { changelog = "https://github.com/juzzlin/Heimer/blob/${version}/CHANGELOG"; license = lib.licenses.gpl3Plus; maintainers = [ ]; - platforms = lib.platforms.linux; + platforms = lib.platforms.linux ++ lib.platforms.darwin; }; } diff --git a/pkgs/by-name/hi/highscore-nestopia/package.nix b/pkgs/by-name/hi/highscore-nestopia/package.nix index 7bf2dfc936a6..6b7723cc68f9 100644 --- a/pkgs/by-name/hi/highscore-nestopia/package.nix +++ b/pkgs/by-name/hi/highscore-nestopia/package.nix @@ -11,13 +11,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "highscore-nestopia"; - version = "0-unstable-2026-03-03"; + version = "0-unstable-2026-05-31"; src = fetchFromGitLab { owner = "highscore-emu"; repo = "nestopia"; - rev = "0ef62709df9ff3af8729c9d7dc257d8fbc2cd48c"; - hash = "sha256-DRA1l5wV/jZhbFni5ZXD6agObt+XZYrPIbgkzSgUGEo="; + rev = "ef344470ab045b3ab94c91b287ecc647df0e60f7"; + hash = "sha256-70aaHudrB72k87jOtIt+mJ27cUOqcrYIJ9PFT57xPdw="; }; sourceRoot = "${finalAttrs.src.name}/highscore"; diff --git a/pkgs/by-name/hi/highscore-prosystem/package.nix b/pkgs/by-name/hi/highscore-prosystem/package.nix index 278d6b4d670e..103cfb5760d9 100644 --- a/pkgs/by-name/hi/highscore-prosystem/package.nix +++ b/pkgs/by-name/hi/highscore-prosystem/package.nix @@ -11,13 +11,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "highscore-prosystem"; - version = "0-unstable-2025-12-27"; + version = "0-unstable-2026-05-16"; src = fetchFromGitLab { owner = "highscore-emu"; repo = "prosystem"; - rev = "44d86957d9377fdc1650c8cdaafbf7e2e2671827"; - hash = "sha256-vxgh819XwI6rjoI7WwUEPx0PVpb58+MIOhCINQKom0Q="; + rev = "c371e250cc01b8be99955671b93d4e3769535e05"; + hash = "sha256-XTOOfcJo5/T6JtirG0wH7LTdjBoNzdaxNKqFkhc9RO8="; }; sourceRoot = "${finalAttrs.src.name}/highscore"; diff --git a/pkgs/by-name/hi/highscore-stella/package.nix b/pkgs/by-name/hi/highscore-stella/package.nix index 2b924bb6b63a..7a11fe7c7ef2 100644 --- a/pkgs/by-name/hi/highscore-stella/package.nix +++ b/pkgs/by-name/hi/highscore-stella/package.nix @@ -11,13 +11,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "highscore-stella"; - version = "0-unstable-2026-04-02"; + version = "0-unstable-2026-06-01"; src = fetchFromGitHub { owner = "highscore-emu"; repo = "stella"; - rev = "d4e5a1f26fd62766e2ff9eb070f59efa89d68ed6"; - hash = "sha256-/TbINGmvsDFxTwdaewg1Hv/fDQMk4ELz6j1TDLaffUQ="; + rev = "f1572c44150d1e772e4d1f4e6ff4284ac8609905"; + hash = "sha256-ly5jkz6LewoZXon2z77EdPnnGqnp4cbTQQuJsRffuxg="; }; sourceRoot = "${finalAttrs.src.name}/src/os/highscore"; diff --git a/pkgs/by-name/hu/hut/package.nix b/pkgs/by-name/hu/hut/package.nix index fe32cf221f19..bfcfdb1eedda 100644 --- a/pkgs/by-name/hu/hut/package.nix +++ b/pkgs/by-name/hu/hut/package.nix @@ -3,6 +3,7 @@ buildGoModule, fetchFromSourcehut, scdoc, + versionCheckHook, }: buildGoModule (finalAttrs: { @@ -18,6 +19,14 @@ buildGoModule (finalAttrs: { vendorHash = "sha256-7N+Zn7tzEG3dGeqNWmY98XUUKV7Y6g8wFZcQP9wea/8="; + nativeInstallCheckInputs = [ + versionCheckHook + ]; + + versionCheckProgramArg = "version"; + + doInstallCheck = true; + nativeBuildInputs = [ scdoc ]; @@ -25,8 +34,8 @@ buildGoModule (finalAttrs: { makeFlags = [ "PREFIX=$(out)" ]; ldflags = [ - # Recommended in 0.8.0 release notes https://git.sr.ht/~xenrox/hut/refs/v0.8.0 - "-X main.version=v${finalAttrs.version}" + # Recommended in 0.7.0 release notes https://git.sr.ht/~xenrox/hut/refs/v0.7.0 + "-X main.version=${finalAttrs.version}" ]; postBuild = '' diff --git a/pkgs/by-name/hy/hyprspace/config_generated.go b/pkgs/by-name/hy/hyprspace/config_generated.go index 8da04a859018..0a95013aa012 100644 --- a/pkgs/by-name/hy/hyprspace/config_generated.go +++ b/pkgs/by-name/hy/hyprspace/config_generated.go @@ -6,6 +6,11 @@ import "encoding/json" import "fmt" type Config struct { + // Whether to enable filtering of private/link-local addresses from peer + // discovery. When enabled, the node will not attempt to connect to RFC1918, + // link-local, or loopback addresses advertised by other peers. + FilterPrivateAddresses bool `json:"filterPrivateAddresses,omitempty"` + // List of addresses to listen on for libp2p traffic. ListenAddresses []string `json:"listenAddresses,omitempty"` @@ -135,6 +140,9 @@ func (j *Config) UnmarshalJSON(value []byte) error { if err := json.Unmarshal(value, &plain); err != nil { return err } + if v, ok := raw["filterPrivateAddresses"]; !ok || v == nil { + plain.FilterPrivateAddresses = false + } if v, ok := raw["listenAddresses"]; !ok || v == nil { plain.ListenAddresses = []string{ "/ip4/0.0.0.0/tcp/8001", diff --git a/pkgs/by-name/hy/hyprspace/package.nix b/pkgs/by-name/hy/hyprspace/package.nix index efefaeb3bc27..012a79ddd00d 100644 --- a/pkgs/by-name/hy/hyprspace/package.nix +++ b/pkgs/by-name/hy/hyprspace/package.nix @@ -9,18 +9,18 @@ buildGoModule (finalAttrs: { pname = "hyprspace"; - version = "0.13.1"; + version = "0.14.0"; src = fetchFromGitHub { owner = "hyprspace"; repo = "hyprspace"; tag = "v${finalAttrs.version}"; - hash = "sha256-AsOgnnYZRoB/t2XwrTMD8XIHoy/bl6bqUvIT5e02uNo="; + hash = "sha256-d8sCs81Va/RQL8k+6GIMp9z0C0AmWEhvZSijRKyVBC0="; }; env.CGO_ENABLED = "0"; - vendorHash = "sha256-m7asItMMFm/lHNl4nemvuMU0mn69kTrC1XK4rUCOor4="; + vendorHash = "sha256-O604bzvz6QjDdM9hK4gya3vOjlki4ZaohY363mi3Of4="; ldflags = [ "-s" diff --git a/pkgs/by-name/la/lacy/package.nix b/pkgs/by-name/la/lacy/package.nix index b7ad8f50d379..cda43f337c9c 100644 --- a/pkgs/by-name/la/lacy/package.nix +++ b/pkgs/by-name/la/lacy/package.nix @@ -6,18 +6,18 @@ }: rustPlatform.buildRustPackage (finalAttrs: { pname = "lacy"; - version = "0.7.0"; + version = "0.7.1"; src = fetchFromGitHub { owner = "timothebot"; repo = "lacy"; tag = "v${finalAttrs.version}"; - hash = "sha256-YX/iXlQ3uhmxNr4fpPtxIPhFwXGUJZF8rYe9mU+9Hos="; + hash = "sha256-yPq9iW/Qm28frvpCByE5sM8+VBtM1k/GBeHVAhb6XOc="; }; passthru.updateScript = nix-update-script { }; - cargoHash = "sha256-3K8g/AGpSXFUhgEBg/AzUYsH3vOvsRzAYnrOAZNVS4g="; + cargoHash = "sha256-EPoVN3S+vQ1hwxWHUbYy1XSpEkswLDbl29lXV8IVCxA="; meta = { description = "Fast magical cd alternative for lacy terminal navigators"; diff --git a/pkgs/by-name/lh/lha/package.nix b/pkgs/by-name/lh/lha/package.nix index 9fea6e1beefe..072da499622d 100644 --- a/pkgs/by-name/lh/lha/package.nix +++ b/pkgs/by-name/lh/lha/package.nix @@ -3,21 +3,28 @@ lib, fetchFromGitHub, autoreconfHook, + testers, }: -stdenv.mkDerivation { +stdenv.mkDerivation (finalAttrs: { pname = "lha"; - version = "1.14i-unstable-2024-11-27"; + version = "1.14i-unstable-2026-01-01"; src = fetchFromGitHub { owner = "jca02266"; repo = "lha"; - rev = "26b71be85a762098bdeb95f4533045c7dad86f31"; - hash = "sha256-jiYTBqDXvxTdrvHYaK+1eo4xIpl+B9ZljhBBYD0BGzQ="; + rev = "86094cb56aba34de45668f39f74fcfb61e9d7fb6"; + hash = "sha256-ckzcCvt5v6rBcp9n8XXzgS2XkURbO8bsqTURGLRzpAU="; }; nativeBuildInputs = [ autoreconfHook ]; + passthru.tests.version = testers.testVersion { + package = finalAttrs.finalPackage; + command = "lha --help"; + version = "1.14i"; + }; + meta = { description = "Archiver and compressor using the LZSS and Huffman encoding compression algorithms"; homepage = "https://github.com/jca02266/lha"; @@ -33,4 +40,4 @@ stdenv.mkDerivation { license = lib.licenses.unfree; mainProgram = "lha"; }; -} +}) diff --git a/pkgs/development/libraries/medfile/default.nix b/pkgs/by-name/me/medfile/package.nix similarity index 96% rename from pkgs/development/libraries/medfile/default.nix rename to pkgs/by-name/me/medfile/package.nix index b3624f93dd3c..a817b94053e8 100644 --- a/pkgs/development/libraries/medfile/default.nix +++ b/pkgs/by-name/me/medfile/package.nix @@ -44,7 +44,7 @@ stdenv.mkDerivation (finalAttrs: { nativeBuildInputs = [ cmake ]; - buildInputs = [ hdf5 ]; + buildInputs = [ (hdf5.override { apiVersion = "v110"; }) ]; checkPhase = "make test"; diff --git a/pkgs/by-name/me/metacubexd/package.nix b/pkgs/by-name/me/metacubexd/package.nix index b4aba2cc0975..a950cf562241 100644 --- a/pkgs/by-name/me/metacubexd/package.nix +++ b/pkgs/by-name/me/metacubexd/package.nix @@ -10,13 +10,13 @@ }: stdenv.mkDerivation (finalAttrs: { pname = "metacubexd"; - version = "1.245.1"; + version = "1.249.2"; src = fetchFromGitHub { owner = "MetaCubeX"; repo = "metacubexd"; rev = "v${finalAttrs.version}"; - hash = "sha256-h+WaeDAdJ2ucIrtiQ3Sef7UjhG6LLwa/CUCnNJgo6lE="; + hash = "sha256-JfCvQZHf/+H3iD/MNDmu/MBxrbdv0iNaSh4LyAL52Pc="; }; nativeBuildInputs = [ @@ -29,7 +29,7 @@ stdenv.mkDerivation (finalAttrs: { inherit (finalAttrs) pname version src; pnpm = pnpm_10; fetcherVersion = 3; - hash = "sha256-FRTjHQvy4zoeh4BBhpUv6wEnlYL1bRqGKbbT6IlK5Gg="; + hash = "sha256-RcpRYowlEzvnPkEG8hsTvvb9RntfMzgk6+PFBRXIepI="; }; buildPhase = '' diff --git a/pkgs/by-name/no/noriskclient-launcher-unwrapped/package.nix b/pkgs/by-name/no/noriskclient-launcher-unwrapped/package.nix index 2c7352df28df..1e785d9f1660 100644 --- a/pkgs/by-name/no/noriskclient-launcher-unwrapped/package.nix +++ b/pkgs/by-name/no/noriskclient-launcher-unwrapped/package.nix @@ -18,13 +18,13 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "noriskclient-launcher-unwrapped"; - version = "0.6.21"; + version = "0.6.22"; src = fetchFromGitHub { owner = "NoRiskClient"; repo = "noriskclient-launcher"; tag = "v${finalAttrs.version}"; - hash = "sha256-RiKFSKHnyeiIcSaOltr4qv0pEBX5wctfztZ+8yrHjnE="; + hash = "sha256-X6oc6DTwIseNvWHhHoHv1Ur2zoaaGCdxYVe4+5+zjvA="; }; yarnOfflineCache = fetchYarnDeps { @@ -45,7 +45,7 @@ rustPlatform.buildRustPackage (finalAttrs: { --replace-fail "libayatana-appindicator3.so.1" "${libayatana-appindicator}/lib/libayatana-appindicator3.so.1" ''; - cargoHash = "sha256-FiM1FuWeGmfZlnKiIImGOsJnKt3qsLqvY6oRUvOSBWM="; + cargoHash = "sha256-dwGJKLO+3i5FUgv+Huu1ZD/hFg/KdyWofApwkIDFD1I="; cargoRoot = "src-tauri"; buildAndTestSubdir = finalAttrs.cargoRoot; diff --git a/pkgs/by-name/pf/pferd/package.nix b/pkgs/by-name/pf/pferd/package.nix index 64ca2bea4dae..2965c9e5ef98 100644 --- a/pkgs/by-name/pf/pferd/package.nix +++ b/pkgs/by-name/pf/pferd/package.nix @@ -5,14 +5,14 @@ }: python3Packages.buildPythonApplication (finalAttrs: { pname = "pferd"; - version = "3.9.0"; + version = "3.9.2"; pyproject = true; src = fetchFromGitHub { owner = "Garmelon"; repo = "PFERD"; tag = "v${finalAttrs.version}"; - sha256 = "sha256-bJU7LytxWTb/CRODniDySXRrVyli9FI/yxQqEs/Ar2k="; + sha256 = "sha256-q1IyuANj47M3KR8qQXASf3WOpFgjNGD/gFZn1l6grTk="; }; nativeBuildInputs = with python3Packages; [ diff --git a/pkgs/by-name/pi/picom-pijulius/package.nix b/pkgs/by-name/pi/picom-pijulius/package.nix index ad9848c4f6ef..1a02d5c13aaa 100644 --- a/pkgs/by-name/pi/picom-pijulius/package.nix +++ b/pkgs/by-name/pi/picom-pijulius/package.nix @@ -8,13 +8,13 @@ picom.overrideAttrs (previousAttrs: { pname = "picom-pijulius"; - version = "8.2-unstable-2026-02-08"; + version = "8.2-unstable-2026-06-03"; src = fetchFromGitHub { owner = "pijulius"; repo = "picom"; - rev = "6a97dddc348a753ecf8e34d68a5e43541186b1ee"; - hash = "sha256-AaZ4xddlLjq3SoS0KrDA6AOHSB6sz4DWFzBMgXZ5LXE="; + rev = "8f83eb54a690b1c52f1e4dbeb5ab5a42d66cc167"; + hash = "sha256-CpQ8x/HrNx4IR+Qj+aBEQeKNRKNvXUPaUyNyj6ljBFg="; }; dontVersionCheck = true; diff --git a/pkgs/by-name/pr/prismlauncher/package.nix b/pkgs/by-name/pr/prismlauncher/package.nix index 16790a473abb..785832d4e178 100644 --- a/pkgs/by-name/pr/prismlauncher/package.nix +++ b/pkgs/by-name/pr/prismlauncher/package.nix @@ -27,6 +27,7 @@ symlinkJoin, udev, vulkan-loader, + wrapGAppsHook3, xrandr, additionalLibs ? [ ], @@ -61,7 +62,10 @@ symlinkJoin { paths = [ prismlauncher' ]; - nativeBuildInputs = [ kdePackages.wrapQtAppsHook ]; + nativeBuildInputs = [ + kdePackages.wrapQtAppsHook + wrapGAppsHook3 + ]; buildInputs = [ kdePackages.qtbase @@ -71,6 +75,10 @@ symlinkJoin { ++ lib.optional stdenv.hostPlatform.isLinux kdePackages.qtwayland; postBuild = '' + # Required for org.gtk.Settings.FileChooser + gappsWrapperArgsHook + qtWrapperArgs+=("''${gappsWrapperArgs[@]}") + wrapQtAppsHook ''; diff --git a/pkgs/by-name/pr/prometheus-bird-exporter/package.nix b/pkgs/by-name/pr/prometheus-bird-exporter/package.nix index 2659ec8fdb34..ec9b490e199b 100644 --- a/pkgs/by-name/pr/prometheus-bird-exporter/package.nix +++ b/pkgs/by-name/pr/prometheus-bird-exporter/package.nix @@ -7,7 +7,7 @@ buildGoModule (finalAttrs: { pname = "bird-exporter"; - version = "1.4.5"; + version = "1.5.0"; __structuredAttrs = true; @@ -15,10 +15,10 @@ buildGoModule (finalAttrs: { owner = "czerwonk"; repo = "bird_exporter"; tag = "v${finalAttrs.version}"; - hash = "sha256-uR3/2ktVxzEZOy57eFopLFsAuiw03e9WZn2QC4/GNVc="; + hash = "sha256-rSZFSIg17t1gcWYVHLEW54dSnqx889TC0R4UAZoBHMQ="; }; - vendorHash = "sha256-seTykqpdYQiWp8CoTAJ62rzxDaLFqjWe8y5YMu8Ypm8="; + vendorHash = "sha256-anmrvgKfcuzky3tnniVvqdJs8SuJcJJStusVY3q9ago="; passthru.tests = { inherit (nixosTests.prometheus-exporters) bird; }; diff --git a/pkgs/by-name/qt/qtractor/package.nix b/pkgs/by-name/qt/qtractor/package.nix index 76508f722544..581e845d6d8c 100644 --- a/pkgs/by-name/qt/qtractor/package.nix +++ b/pkgs/by-name/qt/qtractor/package.nix @@ -30,11 +30,11 @@ stdenv.mkDerivation (finalAttrs: { pname = "qtractor"; - version = "1.5.12"; + version = "1.6.0"; src = fetchurl { url = "mirror://sourceforge/qtractor/qtractor-${finalAttrs.version}.tar.gz"; - hash = "sha256-9UO7LsKa+w/q33Of9F/e5Y9z67fzWPlvLygqSK7mp4M="; + hash = "sha256-0iMVdWljRWwypzYTQ+tk+y6QC68uYgIdBf+IujGlt5Q="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/ri/rime-wanxiang/package.nix b/pkgs/by-name/ri/rime-wanxiang/package.nix index e05011220826..171a5703c48a 100644 --- a/pkgs/by-name/ri/rime-wanxiang/package.nix +++ b/pkgs/by-name/ri/rime-wanxiang/package.nix @@ -7,13 +7,13 @@ stdenvNoCC.mkDerivation (finalAttrs: { pname = "rime-wanxiang"; - version = "15.9.12"; + version = "15.12.3"; src = fetchFromGitHub { owner = "amzxyz"; repo = "rime_wanxiang"; tag = "v" + finalAttrs.version; - hash = "sha256-qg6QyI2RHKkCfjj41IXfL2cIXt82NR9oh52A/V0O67g="; + hash = "sha256-2mT8n1FOACavkT83b95il1k8P2c8uJx9DBw+ZPGtY7A="; }; installPhase = '' diff --git a/pkgs/by-name/rs/rshim-user-space/fix-console-handling.patch b/pkgs/by-name/rs/rshim-user-space/fix-console-handling.patch new file mode 100644 index 000000000000..5cbe7425658b --- /dev/null +++ b/pkgs/by-name/rs/rshim-user-space/fix-console-handling.patch @@ -0,0 +1,218 @@ +From 28f4fb2781058fdc271986e91e0996fcce3aaaef Mon Sep 17 00:00:00 2001 +From: Markus Theil +Date: Thu, 19 Feb 2026 15:15:51 +0100 +Subject: [PATCH] linux: fix console handling + +Since using glibc 2.42 struct termio was no longer exposed +from glibc. + +An earlier fix was to provide the definition of struct termio +if not given in glibc. But it mixed up the ioctls for struct +termios with an internal struct termio. + +This commit fixes this by providing definitions from kernel +headers instead of glibc and translating between all relevant +ioctl sets necessary to use screen, minicom or stty with different +glibc versions. + +Signed-off-by: Markus Theil +--- + src/rshim.c | 4 ++ + src/rshim.h | 7 +++- + src/rshim_fuse.c | 98 +++++++++++++++++++++++++++++++++++++----------- + 3 files changed, 86 insertions(+), 23 deletions(-) + +diff --git a/src/rshim.c b/src/rshim.c +index 78018f5d..d3004508 100644 +--- a/src/rshim.c ++++ b/src/rshim.c +@@ -191,7 +191,11 @@ const char *magic_to_str(uint64_t magic) + + /* Terminal characteristics for newly created consoles. */ + #define INIT_C_CC "\003\034\177\025\004\0\1\0\021\023\032\0\022\017\027\026\0" ++#ifdef __linux__ ++static struct termios2 init_console_termios = { ++#else + static struct termios init_console_termios = { ++#endif + .c_iflag = INLCR | ICRNL, + .c_oflag = OPOST | ONLCR, + .c_cflag = B115200 | HUPCL | CLOCAL | CREAD | CS8, +diff --git a/src/rshim.h b/src/rshim.h +index 412e709d..e58b9181 100644 +--- a/src/rshim.h ++++ b/src/rshim.h +@@ -16,7 +16,9 @@ + #include + #ifdef __linux__ + #include ++#include + #else ++#include + #define VIRTIO_ID_NET 1 + #define VIRTIO_ID_CONSOLE 3 + #endif +@@ -26,7 +28,6 @@ + #include + #include + #include +-#include + #include + #ifdef HAVE_CONFIG_H + #include +@@ -408,7 +409,11 @@ struct rshim_backend { + pthread_cond_t ctrl_wait_cond; + + /* Current termios settings for the console. */ ++#ifdef __linux__ ++ struct termios2 cons_termios; ++#else + struct termios cons_termios; ++#endif + + /* Pending boot & fifo request for the worker. */ + uint8_t *boot_work_buf; +diff --git a/src/rshim_fuse.c b/src/rshim_fuse.c +index ac423657..ebd214a6 100644 +--- a/src/rshim_fuse.c ++++ b/src/rshim_fuse.c +@@ -26,27 +26,9 @@ + #include + #include + #endif ++#include + #include + #include +-/* +- * glibc 2.42+ no longer pulls in struct termio; provide a minimal definition so +- * we can keep using the legacy layout expected by existing userspace tools. +- */ +-#if !__GLIBC_PREREQ(2, 42) // if glibc is before 2.42 +-#include +-#else +-#ifndef NCC +-#define NCC 8 +-#endif +-struct termio { +- unsigned short c_iflag; +- unsigned short c_oflag; +- unsigned short c_cflag; +- unsigned short c_lflag; +- unsigned char c_line; +- unsigned char c_cc[NCC]; +-}; +-#endif + #elif defined(__FreeBSD__) + #include + #include +@@ -398,6 +380,13 @@ static void rshim_fuse_console_ioctl(fuse_req_t req, int cmd, void *arg, + size_t in_bufsz, size_t out_bufsz) + { + rshim_backend_t *bd = fuse_req_userdata(req); ++ /* dummy data, needed for stty to work */ ++ static const struct winsize ws = { ++ .ws_row = 24, ++ .ws_col = 80, ++ .ws_xpixel = 0, ++ .ws_ypixel = 0, ++ }; + + if (!bd) { + fuse_reply_err(req, ENODEV); +@@ -407,21 +396,71 @@ static void rshim_fuse_console_ioctl(fuse_req_t req, int cmd, void *arg, + pthread_mutex_lock(&bd->mutex); + + switch (cmd) { +- case TCGETS: ++ /* ------ */ ++ /* TERMIO */ ++ /* -------*/ ++ case TCGETA: + if (!out_bufsz) { + struct iovec iov = { arg, sizeof(struct termio) }; + + fuse_reply_ioctl_retry(req, NULL, 0, &iov, 1); + } else { +- fuse_reply_ioctl(req, 0, &bd->cons_termios, sizeof(struct termio)); ++ struct termio cons_termio = { ++ .c_iflag = bd->cons_termios.c_iflag & 0xffff, ++ .c_oflag = bd->cons_termios.c_oflag & 0xffff, ++ .c_cflag = bd->cons_termios.c_cflag & 0xffff, ++ .c_lflag = bd->cons_termios.c_lflag & 0xffff, ++ .c_line = bd->cons_termios.c_line, ++ }; ++ ++ memcpy(&cons_termio.c_cc, &bd->cons_termios.c_cc, sizeof(cons_termio.c_cc)); ++ fuse_reply_ioctl(req, 0, &bd->cons_termios, sizeof(bd->cons_termios)); ++ } ++ break; ++ ++ case TCSETA: ++ case TCSETAW: ++ case TCSETAF: ++ if (!in_bufsz) { ++ struct iovec iov = { arg, sizeof(struct termio)}; ++ ++ fuse_reply_ioctl_retry(req, &iov, 1, NULL, 0); ++ } else { ++ struct termio cons_termio = { 0 }; ++ ++ memcpy(&cons_termio, in_buf, sizeof(struct termio)); ++ bd->cons_termios.c_iflag = cons_termio.c_iflag; ++ bd->cons_termios.c_oflag = cons_termio.c_oflag; ++ bd->cons_termios.c_cflag = cons_termio.c_cflag; ++ bd->cons_termios.c_lflag = cons_termio.c_lflag; ++ memset(&bd->cons_termios.c_cc, 0, sizeof(bd->cons_termios.c_cc)); ++ memcpy(&bd->cons_termios.c_cc, &cons_termio.c_cc, sizeof(cons_termio.c_cc)); ++ fuse_reply_ioctl(req, 0, NULL, 0); ++ } ++ break; ++ ++ /* ---------------- */ ++ /* TERMIOS/TERMIOS2 */ ++ /* ---------------- */ ++ case TCGETS: ++ case TCGETS2: ++ if (!out_bufsz) { ++ struct iovec iov = { arg, sizeof(bd->cons_termios) }; ++ ++ fuse_reply_ioctl_retry(req, NULL, 0, &iov, 1); ++ } else { ++ fuse_reply_ioctl(req, 0, &bd->cons_termios, sizeof(bd->cons_termios)); + } + break; + + case TCSETS: ++ case TCSETS2: + case TCSETSW: ++ case TCSETSW2: + case TCSETSF: ++ case TCSETSF2: + if (!in_bufsz) { +- struct iovec iov = {arg, sizeof(bd->cons_termios)}; ++ struct iovec iov = { arg, sizeof(bd->cons_termios)}; + + fuse_reply_ioctl_retry(req, &iov, 1, NULL, 0); + } else { +@@ -430,6 +469,21 @@ static void rshim_fuse_console_ioctl(fuse_req_t req, int cmd, void *arg, + } + break; + ++ /* ---------- */ ++ /* BSD IOCTLs */ ++ /* ---------- */ ++ case TIOCGWINSZ: ++ if (out_bufsz == 0) { ++ struct iovec iov = { arg, sizeof(struct winsize) }; ++ fuse_reply_ioctl_retry(req, NULL, 0, &iov, 1); ++ } else { ++ fuse_reply_ioctl(req, 0, &ws, sizeof(ws)); ++ } ++ break; ++ ++ /* ------- */ ++ /* Default */ ++ /* ------- */ + default: + fuse_reply_err(req, ENOSYS); + break; diff --git a/pkgs/by-name/rs/rshim-user-space/fix-fuse-3-support.patch b/pkgs/by-name/rs/rshim-user-space/fix-fuse-3-support.patch new file mode 100644 index 000000000000..042f53ed5a2c --- /dev/null +++ b/pkgs/by-name/rs/rshim-user-space/fix-fuse-3-support.patch @@ -0,0 +1,28 @@ +From 8f739318029105415da01bf8723d2f89d3188860 Mon Sep 17 00:00:00 2001 +From: Markus Theil +Date: Mon, 1 Jun 2026 10:45:47 +0200 +Subject: [PATCH] configure: fix fuse cflags override for fuse 3 + +Signed-off-by: Markus Theil +--- + configure.ac | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index 72fa487..6a934d7 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -85,7 +85,12 @@ AS_IF([test "x$build_fuse" = "xyes"], [ + if test $backend = freebsd; then + AC_CHECK_LIB(cuse, cuse_dev_create) + else +- PKG_CHECK_MODULES(fuse, fuse, [], PKG_CHECK_MODULES(fuse, fuse3, [use_fuse3=yes], [AC_MSG_ERROR([Can't find fuse])])) ++ PKG_CHECK_EXISTS([fuse], [ ++ PKG_CHECK_MODULES(fuse, fuse) ++ ], [PKG_CHECK_EXISTS([fuse3], [ ++ PKG_CHECK_MODULES(fuse, fuse3) ++ use_fuse3=yes ++ ], [AC_MSG_ERROR([Can't find fuse])])]) + fi + if test "x$use_fuse3" = "xyes"; then + AC_SUBST(CPPFLAGS, "$CPPFLAGS -DFUSE_USE_VERSION=30") diff --git a/pkgs/by-name/rs/rshim-user-space/package.nix b/pkgs/by-name/rs/rshim-user-space/package.nix index 8a9dc794b8ab..a418316db3e0 100644 --- a/pkgs/by-name/rs/rshim-user-space/package.nix +++ b/pkgs/by-name/rs/rshim-user-space/package.nix @@ -4,8 +4,7 @@ bashNonInteractive, coreutils, fetchFromGitHub, - fetchpatch2, - fuse, + fuse3, gawk, gnugrep, gnused, @@ -13,6 +12,7 @@ libusb1, makeBinaryWrapper, pciutils, + perl, pkg-config, procps, pv, @@ -25,13 +25,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "rshim-user-space"; - version = "2.6.6"; + version = "2.7.3"; src = fetchFromGitHub { owner = "Mellanox"; repo = "rshim-user-space"; rev = "rshim-${finalAttrs.version}"; - hash = "sha256-OdrJnOm0QegQ2ex1hFSWPfwYuBnXpGeMJ2YfvNyIwTU="; + hash = "sha256-2Hu5ysjh38dBaGeZirke+qMb6jw+6sTh8qd4LPei5ms="; }; nativeBuildInputs = [ @@ -42,14 +42,27 @@ stdenv.mkDerivation (finalAttrs: { ++ lib.optionals withBfbInstall [ makeBinaryWrapper ]; buildInputs = [ - fuse + fuse3 libusb1 pciutils systemd ]; + patches = [ + # https://github.com/Mellanox/rshim-user-space/pull/391 + # Avoid nested PKG_CHECK_MODULES which leaks help text into ./configure + # as bare shell, producing "fuse_CFLAGS: command not found" noise. + ./fix-fuse-3-support.patch + # https://github.com/Mellanox/rshim-user-space/pull/363 + # Fix console handling under glibc >= 2.42 where struct termio was removed. + ./fix-console-handling.patch + ]; + prePatch = '' patchShebangs scripts/bfb-install + patchShebangs scripts/bf-reg + substituteInPlace scripts/bfb-install \ + --replace-fail 'bf-reg' "${placeholder "out"}/bin/bf-reg" ''; strictDeps = true; @@ -62,6 +75,7 @@ stdenv.mkDerivation (finalAttrs: { '' + lib.optionalString withBfbInstall '' cp -a scripts/bfb-install "$out"/bin/ + cp -a scripts/bf-reg "$out"/bin/ ''; postFixup = lib.optionalString withBfbInstall '' @@ -74,6 +88,7 @@ stdenv.mkDerivation (finalAttrs: { gnugrep gnused pciutils + perl procps pv systemd diff --git a/pkgs/by-name/si/sigil/package.nix b/pkgs/by-name/si/sigil/package.nix index a5193e073d88..f21990b4af44 100644 --- a/pkgs/by-name/si/sigil/package.nix +++ b/pkgs/by-name/si/sigil/package.nix @@ -12,13 +12,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "sigil"; - version = "2.7.0"; + version = "2.7.6"; src = fetchFromGitHub { repo = "Sigil"; owner = "Sigil-Ebook"; tag = finalAttrs.version; - hash = "sha256-cKnWAVLScPZYNAFOiXaoHSXMl3YNOh6zmEryILaOR4w="; + hash = "sha256-GbOTXyxj8HxEE833jUADzKbWpkzXHwjyoj9haIWB9Xk="; }; pythonPath = with python3Packages; [ diff --git a/pkgs/by-name/th/theharvester/package.nix b/pkgs/by-name/th/theharvester/package.nix index a692c3770690..c50813526ff3 100644 --- a/pkgs/by-name/th/theharvester/package.nix +++ b/pkgs/by-name/th/theharvester/package.nix @@ -6,14 +6,14 @@ python3.pkgs.buildPythonApplication (finalAttrs: { pname = "theharvester"; - version = "4.11.0"; + version = "4.11.1"; pyproject = true; src = fetchFromGitHub { owner = "laramies"; repo = "theharvester"; tag = finalAttrs.version; - hash = "sha256-BA3YDnd4Wdzwe32dVuazEA9gcFthTBa7ao6jjata5/I="; + hash = "sha256-/tXRqlM4m46R+iy5Dfmwn0ulJbgmpYTTRHRzyoUKa9A="; }; pythonRelaxDeps = true; diff --git a/pkgs/by-name/to/torrent7z/package.nix b/pkgs/by-name/to/torrent7z/package.nix deleted file mode 100644 index 45177f77f1f0..000000000000 --- a/pkgs/by-name/to/torrent7z/package.nix +++ /dev/null @@ -1,58 +0,0 @@ -{ - lib, - stdenv, - fetchFromGitHub, - fetchpatch, - ncurses, -}: - -stdenv.mkDerivation (finalAttrs: { - pname = "torrent7z"; - version = "1.3"; - - src = fetchFromGitHub { - owner = "BubblesInTheTub"; - repo = "torrent7z"; - rev = finalAttrs.version; - sha256 = "Y2tr0+z9uij4Ifi6FfWRN24BwcDXUZKVLkLtKUiVjU4="; - }; - - patches = [ - (fetchpatch { - name = "fix-gcc10-compilation.patch"; # Fix compilation on GCC 10. This patch is included on the latest commit - url = "https://github.com/paulyc/torrent7z/commit/5958f42a364c430b3ed4ac68911bbbea1f967fc4.patch"; - sha256 = "vJOv1sG9XwTvvxQiWew0H5ALoUb9wIAouzTsTvKHuPI="; - }) - ]; - - buildInputs = [ ncurses ]; - - hardeningDisable = [ "format" ]; - - postPatch = '' - # Remove non-free RAR source code - # (see DOC/License.txt, https://fedoraproject.org/wiki/Licensing:Unrar) - rm -r linux_src/p7zip_4.65/CPP/7zip/Compress/Rar* - find . -name makefile'*' -exec sed -i '/Rar/d' {} + - ''; - - preConfigure = '' - mkdir linux_src/p7zip_4.65/bin - cd linux_src/p7zip_4.65/CPP/7zip/Bundles/Alone - ''; - - installPhase = '' - mkdir -p $out/bin - cp ../../../../bin/t7z $out/bin - ''; - - meta = { - homepage = "https://github.com/BubblesInTheTub/torrent7z"; - description = "Fork of torrent7z, viz a derivative of 7zip that produces invariant .7z archives for torrenting"; - platforms = lib.platforms.linux; - maintainers = with lib.maintainers; [ cirno-999 ]; - mainProgram = "t7z"; - # RAR code is under non-free UnRAR license, but we remove it - license = lib.licenses.gpl3Only; - }; -}) diff --git a/pkgs/by-name/un/unciv/package.nix b/pkgs/by-name/un/unciv/package.nix index cadb846734c9..814622c58420 100644 --- a/pkgs/by-name/un/unciv/package.nix +++ b/pkgs/by-name/un/unciv/package.nix @@ -12,7 +12,7 @@ nix-update-script, }: let - version = "4.19.15"; + version = "4.20.10"; desktopItem = makeDesktopItem { name = "unciv"; @@ -42,7 +42,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "https://github.com/yairm210/Unciv/releases/download/${version}/Unciv.jar"; - hash = "sha256-RlKoiSxW0MPPFTDq72k6CvYTHIEZ0hR8/PhW0j8ERs8="; + hash = "sha256-amAdOVNENwx7E62qBHUnHLC7a6nUMLdzcyxEPnRSsI0="; }; dontUnpack = true; diff --git a/pkgs/by-name/vi/vi-mongo/package.nix b/pkgs/by-name/vi/vi-mongo/package.nix index 3a5dd2ab3cdb..97a6202e5e12 100644 --- a/pkgs/by-name/vi/vi-mongo/package.nix +++ b/pkgs/by-name/vi/vi-mongo/package.nix @@ -2,29 +2,30 @@ lib, fetchFromGitHub, buildGoModule, + writableTmpDirAsHomeHook, versionCheckHook, nix-update-script, }: buildGoModule (finalAttrs: { pname = "vi-mongo"; - version = "0.1.30"; + version = "0.2.2"; src = fetchFromGitHub { owner = "kopecmaciej"; repo = "vi-mongo"; tag = "v${finalAttrs.version}"; - hash = "sha256-gNOKWgGRuWUNqBAu5gWx/HFiNfx+HOdi5tYVyXP3dcI="; + hash = "sha256-0TMrQ1dbAP7HOjrVVcnoHPchf7e14Qzcl5lAD0rHTDs="; }; - vendorHash = "sha256-QoYjNzWWNrEDS4Xq1NF77iqX5WTNxnVV1UJiYq2slhw="; + vendorHash = "sha256-CuFoH6crS6BOsSj2hNGw7loi4RixHbyJGySfxglUUmg="; ldflags = [ "-s" - "-w" - "-X=github.com/kopecmaciej/vi-mongo/cmd.version=${finalAttrs.version}" + "-X=github.com/kopecmaciej/vi-mongo/internal/build.Version=${finalAttrs.version}" ]; + nativeCheckInputs = [ writableTmpDirAsHomeHook ]; nativeInstallCheckInputs = [ versionCheckHook ]; doInstallCheck = true; diff --git a/pkgs/by-name/vu/vunnel/package.nix b/pkgs/by-name/vu/vunnel/package.nix index a97fb6503978..6fe7970d6090 100644 --- a/pkgs/by-name/vu/vunnel/package.nix +++ b/pkgs/by-name/vu/vunnel/package.nix @@ -7,14 +7,14 @@ python3.pkgs.buildPythonApplication (finalAttrs: { pname = "vunnel"; - version = "0.58.0"; + version = "0.60.0"; pyproject = true; src = fetchFromGitHub { owner = "anchore"; repo = "vunnel"; tag = "v${finalAttrs.version}"; - hash = "sha256-9rxQ96PVbU5GCSpp3BDW1p/1jBnZzkmPkwblERv9CCc="; + hash = "sha256-CnWD021r5I9xH1YRp5RO520hq8eIHPJcPomq/UiJ9gA="; leaveDotGit = true; }; diff --git a/pkgs/by-name/wa/wasm3/package.nix b/pkgs/by-name/wa/wasm3/package.nix deleted file mode 100644 index 7342011a21aa..000000000000 --- a/pkgs/by-name/wa/wasm3/package.nix +++ /dev/null @@ -1,51 +0,0 @@ -{ - lib, - stdenv, - cmake, - fetchFromGitHub, -}: - -stdenv.mkDerivation rec { - pname = "wasm3"; - version = "0.5.0"; - - src = fetchFromGitHub { - owner = "wasm3"; - repo = "wasm3"; - rev = "v${version}"; - sha256 = "07zzmk776j8ydyxhrnnjiscbhhmz182a62r6aix6kfk5kq2cwia2"; - }; - - nativeBuildInputs = [ cmake ]; - - cmakeFlags = [ - "-DBUILD_WASI=simple" - ]; - - installPhase = '' - runHook preInstall - install -Dm755 wasm3 -t $out/bin - runHook postInstall - ''; - - meta = { - homepage = "https://github.com/wasm3/wasm3"; - description = "Fastest WebAssembly interpreter, and the most universal runtime"; - platforms = lib.platforms.all; - maintainers = with lib.maintainers; [ malbarbo ]; - license = lib.licenses.mit; - knownVulnerabilities = [ - # wasm3 expects all wasm code to be pre-validated, any users - # should be aware that running unvalidated wasm will potentially - # lead to RCE until upstream have added a builtin validator - "CVE-2022-39974" - "CVE-2022-34529" - "CVE-2022-28990" - "CVE-2022-28966" - "CVE-2021-45947" - "CVE-2021-45946" - "CVE-2021-45929" - "CVE-2021-38592" - ]; - }; -} diff --git a/pkgs/by-name/wa/waves/package.nix b/pkgs/by-name/wa/waves/package.nix index 1788bbb284be..b066aa43203c 100644 --- a/pkgs/by-name/wa/waves/package.nix +++ b/pkgs/by-name/wa/waves/package.nix @@ -10,13 +10,13 @@ }: buildGoModule (finalAttrs: { pname = "waves"; - version = "0.1.44"; + version = "0.1.45"; src = fetchFromGitHub { owner = "llehouerou"; repo = "waves"; tag = "v${finalAttrs.version}"; - hash = "sha256-uyTstoF3rhqMmhG5hwyyq1fGBa6mJjw3/NEjTIMYxi4="; + hash = "sha256-dIewVRPw4ZR9bG+z0v1Vim1Mhi+Buoy0pMzF5THNccU="; }; vendorHash = "sha256-lps0OdY8KoILJh/roY78iC+bYHPeENioQoIsL6v/N0A="; diff --git a/pkgs/by-name/zs/zsh/fix-sigsuspend-probe-c23.patch b/pkgs/by-name/zs/zsh/fix-sigsuspend-probe-c23.patch deleted file mode 100644 index 46c060b235d2..000000000000 --- a/pkgs/by-name/zs/zsh/fix-sigsuspend-probe-c23.patch +++ /dev/null @@ -1,17 +0,0 @@ -Prototype the K&R handler so the probe still compiles under -std=gnu23 -(selected by autoconf 2.73). Upstream removed the probe in 8dd271fdec52, -which does not apply against 5.9 with the PCRE backports. - -https://github.com/NixOS/nixpkgs/issues/513543 ---- a/configure.ac -+++ b/configure.ac -@@ -2334,8 +2334,7 @@ if test x$signals_style = xPOSIX_SIGNALS; then - #include - #include - int child=0; --void handler(sig) -- int sig; -+void handler(int sig) - {if(sig==SIGCHLD) child=1;} - int main() { - struct sigaction act; diff --git a/pkgs/by-name/zs/zsh/package.nix b/pkgs/by-name/zs/zsh/package.nix index 1ec13496c599..d8d86ba0399f 100644 --- a/pkgs/by-name/zs/zsh/package.nix +++ b/pkgs/by-name/zs/zsh/package.nix @@ -2,7 +2,6 @@ lib, stdenv, fetchurl, - fetchpatch, autoreconfHook, yodl, perl, @@ -18,7 +17,7 @@ stdenv.mkDerivation (finalAttrs: { pname = "zsh"; - version = "5.9"; + version = "5.9.1"; outputs = [ "out" "doc" @@ -28,52 +27,12 @@ stdenv.mkDerivation (finalAttrs: { src = fetchurl { url = "mirror://sourceforge/zsh/zsh-${finalAttrs.version}.tar.xz"; - sha256 = "sha256-m40ezt1bXoH78ZGOh2dSp92UjgXBoNuhCrhjhC1FrNU="; + sha256 = "sha256-XSC+wD+YHcTpoJ7CRedBU4j/ZB95xcXEFrUELljYKA0="; }; patches = [ # fix location of timezone data for TZ= completion ./tz_completion.patch - # Fixes configure misdetection when using clang 16, resulting in broken subshells on Darwin. - # This patch can be dropped with the next release of zsh. - (fetchpatch { - url = "https://github.com/zsh-users/zsh/commit/ab4d62eb975a4c4c51dd35822665050e2ddc6918.patch"; - hash = "sha256-nXB4w7qqjZJC7/+CDxnNy6wu9qNwmS3ezjj/xK7JfeU="; - excludes = [ "ChangeLog" ]; - }) - # Fixes compatibility with texinfo 7.1. This patch can be dropped with the next release of zsh. - (fetchpatch { - url = "https://github.com/zsh-users/zsh/commit/ecd3f9c9506c7720dc6c0833dc5d5eb00e4459c4.patch"; - hash = "sha256-oA8GC8LmuqNKGuPqGfiQVhL5nWb7ArLWGUI6wjpsIW8="; - excludes = [ "ChangeLog" ]; - }) - # PCRE 2.x support - (fetchpatch { - url = "https://github.com/zsh-users/zsh/commit/1b421e4978440234fb73117c8505dad1ccc68d46.patch"; - hash = "sha256-jqTXnz56L3X21e3kXtzrT1jKEq+K7ittFjL7GdHVq94="; - excludes = [ "ChangeLog" ]; - }) - (fetchpatch { - url = "https://github.com/zsh-users/zsh/commit/b62e911341c8ec7446378b477c47da4256053dc0.patch"; - hash = "sha256-MfyiLucaSNNfdCLutgv/kL/oi/EVoxZVUd1KjGzN9XI="; - excludes = [ "ChangeLog" ]; - }) - (fetchpatch { - url = "https://github.com/zsh-users/zsh/commit/10bdbd8b5b0b43445aff23dcd412f25cf6aa328a.patch"; - hash = "sha256-bl1PG9Zk1wK+2mfbCBhD3OEpP8HQboqEO8sLFqX8DmA="; - excludes = [ "ChangeLog" ]; - }) - # autoconf 2.73 picks -std=gnu23, breaking the K&R sigsuspend probe and - # causing $(...) hangs. Drop with the next zsh release. - ./fix-sigsuspend-probe-c23.patch - ] - ++ lib.optionals stdenv.cc.isGNU [ - # Fixes compilation with gcc >= 14. - (fetchpatch { - url = "https://github.com/zsh-users/zsh/commit/4c89849c98172c951a9def3690e8647dae76308f.patch"; - hash = "sha256-l5IHQuIXo0N6ynLlZoQA7wJd/C7KrW3G7nMzfjQINkw="; - excludes = [ "ChangeLog" ]; - }) ]; strictDeps = true; diff --git a/pkgs/desktops/gnome/extensions/pop-shell/default.nix b/pkgs/desktops/gnome/extensions/pop-shell/default.nix index 900395223d06..3e2ccf9b692e 100644 --- a/pkgs/desktops/gnome/extensions/pop-shell/default.nix +++ b/pkgs/desktops/gnome/extensions/pop-shell/default.nix @@ -10,13 +10,13 @@ stdenv.mkDerivation { pname = "gnome-shell-extension-pop-shell"; - version = "1.2.0-unstable-2025-10-01"; + version = "1.2.0-unstable-2026-03-31"; src = fetchFromGitHub { owner = "pop-os"; repo = "shell"; - rev = "3cb093b8e6a36c48dd5e84533dc874ea74cd8a9e"; - hash = "sha256-FNNc3RY+x6y4bRU9BCUcQdzkG6iM8kKeRGkziQrTUM0="; + rev = "7898b65c20735057faf0797f8ed056704ca55f0d"; + hash = "sha256-MmHoOxymo0QSRbRcSbFiv82+QWAwIwXwg/wyGQGVYiI="; }; nativeBuildInputs = [ diff --git a/pkgs/development/compilers/factor-lang/mk-factor-application.nix b/pkgs/development/compilers/factor-lang/mk-factor-application.nix index eb2fad57c70a..2b694d68ecdd 100644 --- a/pkgs/development/compilers/factor-lang/mk-factor-application.nix +++ b/pkgs/development/compilers/factor-lang/mk-factor-application.nix @@ -2,7 +2,7 @@ stdenv, lib, writeText, - makeWrapper, + makeBinaryWrapper, factor-lang, factor-no-gui, librsvg, @@ -83,7 +83,7 @@ in wrapped-factor ; nativeBuildInputs = [ - makeWrapper + makeBinaryWrapper (lib.hiPrio finalAttrs.wrapped-factor) ] ++ attrs.nativeBuildInputs or [ ]; diff --git a/pkgs/development/lua-modules/overrides.nix b/pkgs/development/lua-modules/overrides.nix index aa47a9ec9a49..b5616ef99519 100644 --- a/pkgs/development/lua-modules/overrides.nix +++ b/pkgs/development/lua-modules/overrides.nix @@ -1089,10 +1089,6 @@ in # TODO: figure out darwin failure doCheck = lua.luaversion == "5.1" && stdenv.hostPlatform.isLinux; - nvimSkipModules = [ - "bootstrap" # tries to install luarocks from network - ]; - bustedFlags = [ "--run=offline" ]; diff --git a/pkgs/development/python-modules/boto3-stubs/default.nix b/pkgs/development/python-modules/boto3-stubs/default.nix index 9fa05c9295b2..9de532cd85aa 100644 --- a/pkgs/development/python-modules/boto3-stubs/default.nix +++ b/pkgs/development/python-modules/boto3-stubs/default.nix @@ -358,13 +358,13 @@ buildPythonPackage (finalAttrs: { pname = "boto3-stubs"; - version = "1.43.21"; + version = "1.43.22"; pyproject = true; src = fetchPypi { pname = "boto3_stubs"; inherit (finalAttrs) version; - hash = "sha256-PRmr3e6APfH3tDC2f2T80Llloe7reupzpzakya8ZqBw="; + hash = "sha256-eDiZ0br4cPabtd0o3rgBiqkUOM9sQHaRzFl6f2dTu6w="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/capa/default.nix b/pkgs/development/python-modules/capa/default.nix new file mode 100644 index 000000000000..4aeb280f6ad1 --- /dev/null +++ b/pkgs/development/python-modules/capa/default.nix @@ -0,0 +1,131 @@ +{ + lib, + buildPythonPackage, + colorama, + deptry, + dncil, + dnfile, + fetchFromGitHub, + humanize, + ida-netnode, + ida-settings, + jschema-to-python, + msgspec, + mypy-protobuf, + mypy, + networkx, + pefile, + protobuf, + psutil, + pydantic, + pyelftools, + pyghidra, + pygithub, + pytest-instafail, + pytest-sugar, + pytestCheckHook, + python-flirt, + pyyaml, + requests, + rich, + ruamel-yaml, + sarif-om, + setuptools-scm, + setuptools, + stix2, + types-colorama, + types-protobuf, + types-psutil, + types-pyyaml, + types-requests, + viv-utils, + vivisect, + writableTmpDirAsHomeHook, + xmltodict, +}: + +buildPythonPackage (finalAttrs: { + pname = "capa"; + version = "9.4.0"; + pyproject = true; + + __structuredAttrs = true; + + src = fetchFromGitHub { + owner = "mandiant"; + repo = "capa"; + tag = "v${finalAttrs.version}"; + hash = "sha256-h9ML+TJe9NprBEy4W7XKahmUTM0d4vY0zIFs6MxYzZ8="; + fetchSubmodules = true; + }; + + build-system = [ + setuptools + setuptools-scm + ]; + + dependencies = [ + colorama + dncil + dnfile + humanize + ida-netnode + ida-settings + msgspec + networkx + pefile + protobuf + pydantic + pyelftools + python-flirt + pyyaml + rich + ruamel-yaml + viv-utils + vivisect + xmltodict + ]; + + optional-dependencies = { + ghidra = [ pyghidra ]; + scripts = [ + jschema-to-python + psutil + requests + sarif-om + stix2 + ]; + }; + + nativeCheckInputs = [ + pygithub + pytestCheckHook + pytest-instafail + pytest-sugar + types-colorama + types-protobuf + types-psutil + types-pyyaml + types-requests + writableTmpDirAsHomeHook + ]; + + pythonImportsCheck = [ "capa" ]; + + disabledTests = [ + # AssertionError + "test_is_dev_environment" + "test_rule_cache_dev_environment" + "test_scripts" + "test_binexport_scripts" + ]; + + meta = { + description = "Tool to identify capabilities in executable files"; + homepage = "https://github.com/mandiant/capa"; + changelog = "https://github.com/mandiant/capa/blob/${finalAttrs.src.tag}/CHANGELOG.md"; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ fab ]; + mainProgram = "capa"; + }; +}) diff --git a/pkgs/development/python-modules/garminconnect/default.nix b/pkgs/development/python-modules/garminconnect/default.nix index f8505523d217..495c12457311 100644 --- a/pkgs/development/python-modules/garminconnect/default.nix +++ b/pkgs/development/python-modules/garminconnect/default.nix @@ -1,22 +1,24 @@ { lib, buildPythonPackage, + curl-cffi, fetchFromGitHub, garth, pdm-backend, requests, + ua-generator, }: buildPythonPackage (finalAttrs: { pname = "garminconnect"; - version = "0.2.40"; + version = "0.3.5"; pyproject = true; src = fetchFromGitHub { owner = "cyberjunky"; repo = "python-garminconnect"; tag = finalAttrs.version; - hash = "sha256-EAmKrOmnJFn+vTfmAprd5onqW/uyOe/shSB1u0HVrIE="; + hash = "sha256-ncQuZq9W94SGoxoLHhyuEW8qMOPqvCCTIi+56k7vOG8="; }; pythonRelaxDeps = [ "garth" ]; @@ -24,8 +26,10 @@ buildPythonPackage (finalAttrs: { build-system = [ pdm-backend ]; dependencies = [ + curl-cffi garth requests + ua-generator ]; # Tests require a token diff --git a/pkgs/development/python-modules/gehomesdk/default.nix b/pkgs/development/python-modules/gehomesdk/default.nix index 093f71d6f24f..0dbf70b29378 100644 --- a/pkgs/development/python-modules/gehomesdk/default.nix +++ b/pkgs/development/python-modules/gehomesdk/default.nix @@ -15,12 +15,12 @@ buildPythonPackage (finalAttrs: { pname = "gehomesdk"; - version = "2026.5.1"; + version = "2026.5.4"; pyproject = true; src = fetchPypi { inherit (finalAttrs) pname version; - hash = "sha256-Q5YvefLDLvZAicBMaD6M7sASIfXllpf1kVlwWEd59zg="; + hash = "sha256-zKYe7vIXSFbtTqaCLEAHQvuDRGGXqorqfFqVVpBWuJs="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/google-cloud-shell/default.nix b/pkgs/development/python-modules/google-cloud-shell/default.nix index 6e4bbff2f88a..4cfe560016dc 100644 --- a/pkgs/development/python-modules/google-cloud-shell/default.nix +++ b/pkgs/development/python-modules/google-cloud-shell/default.nix @@ -14,13 +14,13 @@ buildPythonPackage (finalAttrs: { pname = "google-cloud-shell"; - version = "1.15.0"; + version = "1.16.0"; pyproject = true; src = fetchPypi { pname = "google_cloud_shell"; inherit (finalAttrs) version; - hash = "sha256-FSnxSR937S5mUz7uxACWB3NRD5bFNaxTKiTWCzt/VAg="; + hash = "sha256-e0RMNqR4jxA+hwlNM2Lyspsh9WKfQRWndZ1oZJMRZoI="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/holidays/default.nix b/pkgs/development/python-modules/holidays/default.nix index 8e5698898da4..55e9bf3a4c6b 100644 --- a/pkgs/development/python-modules/holidays/default.nix +++ b/pkgs/development/python-modules/holidays/default.nix @@ -16,14 +16,14 @@ buildPythonPackage (finalAttrs: { pname = "holidays"; - version = "0.97"; + version = "0.98"; pyproject = true; src = fetchFromGitHub { owner = "vacanza"; repo = "python-holidays"; tag = "v${finalAttrs.version}"; - hash = "sha256-d543A/A/W4PqWZSwHPRwv7V65EEpzPfugrwlWhHd/mI="; + hash = "sha256-miXThSQLiWrw0IfJC5ozJQJmQnNuf1szpNVKBG86LZA="; }; build-system = [ diff --git a/pkgs/development/python-modules/ida-domain/default.nix b/pkgs/development/python-modules/ida-domain/default.nix new file mode 100644 index 000000000000..3574a4ee0c93 --- /dev/null +++ b/pkgs/development/python-modules/ida-domain/default.nix @@ -0,0 +1,59 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + graphviz, + idapro, + nix-update-script, + packaging, + pytest-cov-stub, + pytestCheckHook, + setuptools, + typing-extensions, + writableTmpDirAsHomeHook, +}: + +buildPythonPackage (finalAttrs: { + pname = "ida-domain"; + version = "0.5.0"; + pyproject = true; + + __structuredAttrs = true; + + src = fetchFromGitHub { + owner = "HexRaysSA"; + repo = "ida-domain"; + tag = "v${finalAttrs.version}"; + hash = "sha256-oa3VQgWDEr4tPQ166EugfS7QrW1DlRb/hwypwKP+Xv4="; + }; + + build-system = [ setuptools ]; + + dependencies = [ + idapro + packaging + typing-extensions + ]; + + nativeCheckInputs = [ + graphviz + pytest-cov-stub + pytestCheckHook + writableTmpDirAsHomeHook + ]; + + # Requires IDE to be installed + doCheck = false; + + # pythonImportsCheck = [ "ida_domain" ]; + + passthru.updateScript = nix-update-script { }; + + meta = { + description = "Python interface for IDA Pro reverse engineering platform"; + homepage = "https://github.com/HexRaysSA/ida-domain"; + changelog = "https://github.com/HexRaysSA/ida-domain/releases/tag/${finalAttrs.src.tag}"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ fab ]; + }; +}) diff --git a/pkgs/development/python-modules/ida-hcli/default.nix b/pkgs/development/python-modules/ida-hcli/default.nix new file mode 100644 index 000000000000..5e43200e5e5e --- /dev/null +++ b/pkgs/development/python-modules/ida-hcli/default.nix @@ -0,0 +1,93 @@ +{ + lib, + buildPythonPackage, + click, + fetchFromGitHub, + httpx, + idapro, + nix-update-script, + packaging, + pexpect, + pip, + platformdirs, + pydantic, + pytest-asyncio, + pytest-httpx, + pytest-mock, + pytestCheckHook, + questionary, + rich-click, + rich, + semantic-version, + setuptools, + tenacity, + tomli, + writableTmpDirAsHomeHook, +}: + +buildPythonPackage (finalAttrs: { + pname = "ida-hcli"; + version = "0.18.1"; + pyproject = true; + + __structuredAttrs = true; + + src = fetchFromGitHub { + owner = "HexRaysSA"; + repo = "ida-hcli"; + tag = "v${finalAttrs.version}"; + hash = "sha256-p7nmibfasnkfvCDHp+luh3VYq7oZ843TfudN1Ce8mLY="; + }; + + build-system = [ setuptools ]; + + dependencies = [ + click + httpx + idapro + packaging + pip + platformdirs + pydantic + questionary + rich + rich-click + semantic-version + tenacity + tomli + ]; + + nativeCheckInputs = [ + pexpect + pytest-asyncio + pytest-httpx + pytest-mock + pytestCheckHook + writableTmpDirAsHomeHook + ]; + + pythonImportsCheck = [ "hcli" ]; + + disabledTestPaths = [ + # Tests require IDA to be installed and configured + "tests/integration/" + "tests/lib/test_ida_python.py" + "tests/lib/test_ida.py" + "tests/lib/test_plugin_bundle_install.py" + "tests/lib/test_plugin_collisions.py" + "tests/lib/test_plugin_install.py" + "tests/lib/test_plugin_records.py" + "tests/lib/test_plugin_settings.py" + ]; + + passthru.updateScript = nix-update-script { }; + + meta = { + description = "CLI for IDA plugin management and configuration"; + homepage = "https://github.com/HexRaysSA/ida-hcli"; + changelog = "https://github.com/HexRaysSA/ida-hcli/blob/${finalAttrs.src.rev}/CHANGELOG.md"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ fab ]; + mainProgram = "hcli"; + }; +}) diff --git a/pkgs/development/python-modules/ida-netnode/default.nix b/pkgs/development/python-modules/ida-netnode/default.nix new file mode 100644 index 000000000000..42d75c4068c1 --- /dev/null +++ b/pkgs/development/python-modules/ida-netnode/default.nix @@ -0,0 +1,42 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + nix-update-script, + setuptools, + six, +}: + +buildPythonPackage (finalAttrs: { + pname = "ida-netnode"; + version = "3.0.0"; + pyproject = true; + + __structuredAttrs = true; + + src = fetchFromGitHub { + owner = "williballenthin"; + repo = "ida-netnode"; + tag = "v${finalAttrs.version}"; + hash = "sha256-hXApNeeDYHX41zuYDpSNqSXdM/c8DoVXuB6NMqYf7iU="; + }; + + build-system = [ setuptools ]; + + dependencies = [ six ]; + + # Module has no test and requires IDA to be installed + doCheck = false; + + # pythonImportsCheck = [ "netnode"]; + + passthru.updateScript = nix-update-script { }; + + meta = { + description = "Humane API for storing and accessing persistent data in IDA Pro databases"; + homepage = "https://github.com/williballenthin/ida-netnode"; + changelog = "https://github.com/williballenthin/ida-netnode/releases/tag/${finalAttrs.src.tag}"; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ fab ]; + }; +}) diff --git a/pkgs/development/python-modules/ida-settings/default.nix b/pkgs/development/python-modules/ida-settings/default.nix new file mode 100644 index 000000000000..609090e45e7e --- /dev/null +++ b/pkgs/development/python-modules/ida-settings/default.nix @@ -0,0 +1,47 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + uv-build, + ida-hcli, + nix-update-script, +}: + +buildPythonPackage (finalAttrs: { + pname = "ida-settings"; + version = "3.4.1"; + pyproject = true; + + __structuredAttrs = true; + + src = fetchFromGitHub { + owner = "williballenthin"; + repo = "ida-settings"; + tag = "v${finalAttrs.version}"; + hash = "sha256-YPkJ/yn7ZmEYZJART6oFLO7zIqzgPl2XCq5RfXasFV0="; + }; + + postPatch = '' + substituteInPlace pyproject.toml \ + --replace-fail "uv_build>=0.8.6,<0.9.0" "uv_build" + ''; + + build-system = [ uv-build ]; + + dependencies = [ ida-hcli ]; + + pythonImportsCheck = [ "ida_settings" ]; + + # Module has no tests + doCheck = false; + + passthru.updateScript = nix-update-script { }; + + meta = { + description = "Fetch and set configuration values for IDA Plugins"; + homepage = "https://github.com/williballenthin/ida-settings"; + changelog = "https://github.com/williballenthin/ida-settings/releases/tag/${finalAttrs.src.tag}"; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ fab ]; + }; +}) diff --git a/pkgs/development/python-modules/idapro/default.nix b/pkgs/development/python-modules/idapro/default.nix new file mode 100644 index 000000000000..76f5c11b1004 --- /dev/null +++ b/pkgs/development/python-modules/idapro/default.nix @@ -0,0 +1,40 @@ +{ + lib, + buildPythonPackage, + fetchPypi, + nix-update-script, + setuptools, + writableTmpDirAsHomeHook, +}: + +buildPythonPackage (finalAttrs: { + pname = "idapro"; + version = "0.0.9"; + pyproject = true; + + __structuredAttrs = true; + + src = fetchPypi { + inherit (finalAttrs) pname version; + hash = "sha256-igQ6ic5QdTPlAuj2WBpPtYut4l6PpgSVRbeexjZ5LjU="; + }; + + build-system = [ setuptools ]; + + nativeBuildInputs = [ writableTmpDirAsHomeHook ]; + + # Module has no tests + doCheck = false; + + # Requires IDE to be installed + # pythonImportsCheck = [ "idapro" ]; + + passthru.updateScript = nix-update-script { }; + + meta = { + description = "IDA Library Python module"; + homepage = "https://pypi.org/project/idapro"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ fab ]; + }; +}) diff --git a/pkgs/development/python-modules/microsoft-kiota-http/default.nix b/pkgs/development/python-modules/microsoft-kiota-http/default.nix index f56933afa011..95d4a2e8bcc9 100644 --- a/pkgs/development/python-modules/microsoft-kiota-http/default.nix +++ b/pkgs/development/python-modules/microsoft-kiota-http/default.nix @@ -14,19 +14,19 @@ gitUpdater, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "microsoft-kiota-http"; - version = "1.10.1"; + version = "1.10.2"; pyproject = true; src = fetchFromGitHub { owner = "microsoft"; repo = "kiota-python"; - tag = "microsoft-kiota-http-v${version}"; - hash = "sha256-KBCjVNZDPMh0wxWm8UVLsrfl2AYp3rKMjAT5c8F7+64="; + tag = "microsoft-kiota-http-v${finalAttrs.version}"; + hash = "sha256-rj0NpuXvqS5rB6TrD3FyuMWb7Dl8/SIBcW/Lzj4cY6I="; }; - sourceRoot = "${src.name}/packages/http/httpx/"; + sourceRoot = "${finalAttrs.src.name}/packages/http/httpx/"; build-system = [ poetry-core ]; @@ -54,8 +54,8 @@ buildPythonPackage rec { meta = { description = "HTTP request adapter implementation for Kiota clients for Python"; homepage = "https://github.com/microsoft/kiota-python/tree/main/packages/http/httpx"; - changelog = "https://github.com/microsoft/kiota-python/releases/tag/${src.tag}"; + changelog = "https://github.com/microsoft/kiota-python/releases/tag/${finalAttrs.src.tag}"; license = lib.licenses.mit; maintainers = with lib.maintainers; [ fab ]; }; -} +}) diff --git a/pkgs/development/python-modules/microsoft-kiota-serialization-form/default.nix b/pkgs/development/python-modules/microsoft-kiota-serialization-form/default.nix index 885d3b268bab..a2841bf86364 100644 --- a/pkgs/development/python-modules/microsoft-kiota-serialization-form/default.nix +++ b/pkgs/development/python-modules/microsoft-kiota-serialization-form/default.nix @@ -13,14 +13,14 @@ buildPythonPackage rec { pname = "microsoft-kiota-serialization-form"; - version = "1.9.8"; + version = "1.10.2"; pyproject = true; src = fetchFromGitHub { owner = "microsoft"; repo = "kiota-python"; tag = "microsoft-kiota-serialization-form-v${version}"; - hash = "sha256-05/I06p3zBc/Kb7H8dMEbUxFr0dOXSSBuIyEGZ4twhA="; + hash = "sha256-rj0NpuXvqS5rB6TrD3FyuMWb7Dl8/SIBcW/Lzj4cY6I="; }; sourceRoot = "${src.name}/packages/serialization/form/"; diff --git a/pkgs/development/python-modules/mitogen/default.nix b/pkgs/development/python-modules/mitogen/default.nix index ab83fcc49e04..b4e6017096f6 100644 --- a/pkgs/development/python-modules/mitogen/default.nix +++ b/pkgs/development/python-modules/mitogen/default.nix @@ -7,14 +7,14 @@ buildPythonPackage (finalAttrs: { pname = "mitogen"; - version = "0.3.48"; + version = "0.3.49"; pyproject = true; src = fetchFromGitHub { owner = "mitogen-hq"; repo = "mitogen"; tag = "v${finalAttrs.version}"; - hash = "sha256-RptIeE2XvVOzeYaRGiggesfZGJ+flkcFSDz1l23JxdE="; + hash = "sha256-gOb4W9EO5YRNoTJlsTTNybJF9FvDDTNdYFrGjyFbXzY="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/mypy-boto3/default.nix b/pkgs/development/python-modules/mypy-boto3/default.nix index 76018fe511bd..e9a2631c66fe 100644 --- a/pkgs/development/python-modules/mypy-boto3/default.nix +++ b/pkgs/development/python-modules/mypy-boto3/default.nix @@ -179,8 +179,8 @@ in "sha256-7xusmV+Ub1MkH3mGGYNQFlI1pfg9v69OzN2FUN3+DzY="; mypy-boto3-ce = - buildMypyBoto3Package "ce" "1.43.0" - "sha256-RsvQvkie+k0OMjgs30ZlwiRygo0LhZk0V7vMAXU6gQ8="; + buildMypyBoto3Package "ce" "1.43.22" + "sha256-1CgG2p0ddlGj4jttaV9ejP+DA7cRtAE56rJwMNPCgYw="; mypy-boto3-chime = buildMypyBoto3Package "chime" "1.43.0" @@ -327,16 +327,16 @@ in "sha256-sXIPfVu+Ss+UHCZ7W1qof+rbEb266dqrSU3V6/j5PzY="; mypy-boto3-compute-optimizer = - buildMypyBoto3Package "compute-optimizer" "1.43.0" - "sha256-6fPO+EuWQP7JbsVfMzpCr502G0ewx/pvubEqEnhhln0="; + buildMypyBoto3Package "compute-optimizer" "1.43.22" + "sha256-TYrnhgzhH6+o+cTpBBpiEO6MPkz4xbLOqiOJf/IAvto="; mypy-boto3-config = buildMypyBoto3Package "config" "1.43.0" "sha256-kPG0jzeHlRm8dNKCrxJY2Jw/N06PL+C/34gB9qhz2BY="; mypy-boto3-connect = - buildMypyBoto3Package "connect" "1.43.10" - "sha256-SuUSGDyoWoz8Ddr1+LTuVQ350HFrW4pXe7zR4Ye5aiw="; + buildMypyBoto3Package "connect" "1.43.22" + "sha256-XGey9ie/uGSXFaB5NfoQXeQ+LQUnqKPUOtMpq2y7aZk="; mypy-boto3-connect-contact-lens = buildMypyBoto3Package "connect-contact-lens" "1.43.0" @@ -622,8 +622,8 @@ in "sha256-9P8m5QYikdsimepaivrYcb/tP1iThyPZWFMkyo24+bo="; mypy-boto3-inspector2 = - buildMypyBoto3Package "inspector2" "1.43.0" - "sha256-ddF5Z3B3NMKoM1RUWFQzUQTnBL75IwlVevM/R2bO9OI="; + buildMypyBoto3Package "inspector2" "1.43.22" + "sha256-iA/ajBvGRV+L3/PZoauWDrkd/FVvtOv49O88xtlQBk4="; mypy-boto3-internetmonitor = buildMypyBoto3Package "internetmonitor" "1.43.0" diff --git a/pkgs/development/python-modules/nicegui/default.nix b/pkgs/development/python-modules/nicegui/default.nix index 0fb6736f00b7..8cfd2af16cd3 100644 --- a/pkgs/development/python-modules/nicegui/default.nix +++ b/pkgs/development/python-modules/nicegui/default.nix @@ -12,6 +12,8 @@ itsdangerous, jinja2, libsass, + lxml-html-clean, + lxml, markdown2, matplotlib, orjson, @@ -26,12 +28,14 @@ pytest-asyncio, pytest-selenium, pytestCheckHook, + python-dotenv, python-multipart, python-socketio, pywebview, redis, requests, setuptools, + tinycss2, typing-extensions, urllib3, uvicorn, @@ -43,18 +47,21 @@ buildPythonPackage (finalAttrs: { pname = "nicegui"; - version = "3.8.0"; + version = "3.12.1"; pyproject = true; src = fetchFromGitHub { owner = "zauberzeug"; repo = "nicegui"; tag = "v${finalAttrs.version}"; - hash = "sha256-YSt4BoJZZwncPewk46VNHq0RR5sUpW0j055ryPYAdn4="; + hash = "sha256-pm8jUDdpRvPDVwHXHGwuqPogpE/HMS19uJ5beWch7TE="; }; pythonRelaxDeps = [ + "idna" + "lxml" "orjson" + "python-multipart" "requests" ]; @@ -74,12 +81,16 @@ buildPythonPackage (finalAttrs: { ifaddr itsdangerous jinja2 + lxml + lxml-html-clean markdown2 orjson pygments + python-dotenv python-multipart python-socketio requests + tinycss2 typing-extensions urllib3 uvicorn diff --git a/pkgs/development/python-modules/plopp/default.nix b/pkgs/development/python-modules/plopp/default.nix index eb02676fa1b6..3227e939b4a2 100644 --- a/pkgs/development/python-modules/plopp/default.nix +++ b/pkgs/development/python-modules/plopp/default.nix @@ -43,7 +43,7 @@ buildPythonPackage (finalAttrs: { owner = "scipp"; repo = "plopp"; tag = finalAttrs.version; - hash = "sha256-UYEbJtWSTwF4z8Ga+IsCk+yQVT5xMvEENqT+hrbxPEc="; + hash = "sha256-8rwF40aeJMyIcmMsSyea42B6poXHxHQlPIlw0ROeyzY="; }; build-system = [ diff --git a/pkgs/development/python-modules/python-flirt/default.nix b/pkgs/development/python-modules/python-flirt/default.nix index 36578c6aa841..dc553a334dea 100644 --- a/pkgs/development/python-modules/python-flirt/default.nix +++ b/pkgs/development/python-modules/python-flirt/default.nix @@ -7,7 +7,7 @@ libiconv, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "python-flirt"; version = "0.9.10"; pyproject = true; @@ -15,7 +15,7 @@ buildPythonPackage rec { src = fetchFromGitHub { owner = "williballenthin"; repo = "lancelot"; - rev = "v${version}"; + rev = "v${finalAttrs.version}"; hash = "sha256-fZZTEBkpCE5L4efcNGzAuxCWgOSqc2r77F5U6kpMU6M="; }; @@ -47,4 +47,4 @@ buildPythonPackage rec { license = lib.licenses.asl20; maintainers = [ ]; }; -} +}) diff --git a/pkgs/development/python-modules/steamship/default.nix b/pkgs/development/python-modules/steamship/default.nix deleted file mode 100644 index a6b07af78e99..000000000000 --- a/pkgs/development/python-modules/steamship/default.nix +++ /dev/null @@ -1,59 +0,0 @@ -{ - lib, - buildPythonPackage, - fetchPypi, - setuptools-scm, - requests, - pydantic, - aiohttp, - inflection, - fluent-logger, - toml, - click, - semver, - tiktoken, -}: - -buildPythonPackage rec { - pname = "steamship"; - version = "2.17.34"; - pyproject = true; - - src = fetchPypi { - inherit pname version; - hash = "sha256-U9SA2Dvepl9BjrvhH+8bVBNjby8IWu5UE+/oor7YWzI="; - }; - - pythonRelaxDeps = [ "requests" ]; - - nativeBuildInputs = [ - setuptools-scm - ]; - - propagatedBuildInputs = [ - requests - pydantic - aiohttp - inflection - fluent-logger - toml - click - semver - tiktoken - ]; - - # almost all tests require "steamship api key" - doCheck = false; - - pythonImportsCheck = [ "steamship" ]; - - meta = { - description = "Fastest way to add language AI to your product"; - homepage = "https://www.steamship.com/"; - changelog = "https://github.com/steamship-core/python-client/releases/tag/${version}"; - license = lib.licenses.mit; - maintainers = with lib.maintainers; [ natsukium ]; - # https://github.com/steamship-core/python-client/issues/503 - broken = lib.versionAtLeast pydantic.version "2"; - }; -} diff --git a/pkgs/development/python-modules/tencentcloud-sdk-python/default.nix b/pkgs/development/python-modules/tencentcloud-sdk-python/default.nix index caeee15b8b85..ea24816ccad9 100644 --- a/pkgs/development/python-modules/tencentcloud-sdk-python/default.nix +++ b/pkgs/development/python-modules/tencentcloud-sdk-python/default.nix @@ -9,14 +9,14 @@ buildPythonPackage (finalAttrs: { pname = "tencentcloud-sdk-python"; - version = "3.1.107"; + version = "3.1.109"; pyproject = true; src = fetchFromGitHub { owner = "TencentCloud"; repo = "tencentcloud-sdk-python"; tag = finalAttrs.version; - hash = "sha256-6hXJx3VSXQlUs6h4gYP+Yqy6uoMKplKX1CfiwFIbZ70="; + hash = "sha256-UG4ZPNrqjSy9IQEPZa7hqN63TnrsJy/GDr9A3CP5ah4="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/ua-generator/default.nix b/pkgs/development/python-modules/ua-generator/default.nix new file mode 100644 index 000000000000..7584a46f49a9 --- /dev/null +++ b/pkgs/development/python-modules/ua-generator/default.nix @@ -0,0 +1,50 @@ +{ + lib, + buildPythonPackage, + certifi, + charset-normalizer, + fetchFromGitHub, + idna, + nix-update-script, + pytestCheckHook, + setuptools, + urllib3, +}: + +buildPythonPackage (finalAttrs: { + pname = "ua-generator"; + version = "2.1.1"; + pyproject = true; + + __structuredAttrs = true; + + src = fetchFromGitHub { + owner = "iamdual"; + repo = "ua-generator"; + tag = finalAttrs.version; + hash = "sha256-3NWVJciaaCx+YtZ+oFCMFLXfEE9A2CoErFfSi5Hf0hM="; + }; + + build-system = [ setuptools ]; + + dependencies = [ + certifi + charset-normalizer + idna + urllib3 + ]; + + nativeCheckInputs = [ pytestCheckHook ]; + + pythonImportsCheck = [ "ua_generator" ]; + + passthru.updateScript = nix-update-script { }; + + meta = { + description = "Random user-agent generator"; + homepage = "https://github.com/iamdual/ua-generator"; + changelog = "https://github.com/iamdual/ua-generator/releases/tag/${finalAttrs.src.tag}"; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ fab ]; + }; +}) diff --git a/pkgs/development/python-modules/xiaomi-ble/default.nix b/pkgs/development/python-modules/xiaomi-ble/default.nix index 51199e478c91..1658cf4401be 100644 --- a/pkgs/development/python-modules/xiaomi-ble/default.nix +++ b/pkgs/development/python-modules/xiaomi-ble/default.nix @@ -18,14 +18,14 @@ buildPythonPackage (finalAttrs: { pname = "xiaomi-ble"; - version = "1.12.2"; + version = "1.12.3"; pyproject = true; src = fetchFromGitHub { owner = "Bluetooth-Devices"; repo = "xiaomi-ble"; tag = "v${finalAttrs.version}"; - hash = "sha256-iixyZm/PjWBsaxNCZZa5TJA4eNVVhr42OV4MHHzWt7g="; + hash = "sha256-FjLrwEfhHVypF8XH7yvFjmG5oZL7VI/DOWPLbNZ50ng="; }; build-system = [ poetry-core ]; diff --git a/pkgs/development/tools/pnpm/default.nix b/pkgs/development/tools/pnpm/default.nix index fa7c4bd0e3a3..7735d0d17f4f 100644 --- a/pkgs/development/tools/pnpm/default.nix +++ b/pkgs/development/tools/pnpm/default.nix @@ -22,12 +22,12 @@ let hash = "sha256-hAL2daH0zJ1PJ7v6s1wtSi4dfrATHfA9rQlhnoZnTQw="; }; "10" = { - version = "10.33.4"; - hash = "sha256-jnDdxmSbGLw9iVzzqQjAKR6kw4A5rYcixH4Bja8enPw="; + version = "10.34.0"; + hash = "sha256-WOFDJYhx31FYm2UcBiBdq+xIdmpdu6PCWZm2m1C+WY4="; }; "11" = { - version = "11.4.0"; - hash = "sha256-50EGpaDrJWn0WDUEQg6tX8HCY+QXoyFsqxy+DM3LTq4="; + version = "11.5.1"; + hash = "sha256-3npcG+2DAYBRg6h5l/4XIM1crvtXvoOFNaS/xKFZaVk="; }; }; diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index cc7501f1f5bb..1749b21f0fb5 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -942,6 +942,7 @@ mapAliases { gtkextra = throw "'gtkextra' has been removed due to lack of maintenance upstream."; # Added 2025-06-10 gtkgnutella = gtk-gnutella; # Added 2026-05-21 gtuber = throw "'gtuber' has been removed due to being discontinued by upstream."; # Added 2025-12-12 + gui-for-clash = throw "'gui-for-clash' has been removed, as it is unmaintained"; # Added 2026-05-28 guile-disarchive = throw "'guile-disarchive' has been renamed to/replaced by 'disarchive'"; # Converted to throw 2025-10-27 guile-sdl = throw "guile-sdl has been removed, as it was broken"; # Added 2025-08-25 gutenprintBin = gutenprint-bin; # Added 2025-08-21 @@ -2153,6 +2154,7 @@ mapAliases { tooling-language-server = deputy; # Added 2025-06-22 tor-browser-bundle-bin = throw "'tor-browser-bundle-bin' has been renamed to/replaced by 'tor-browser'"; # Converted to throw 2025-10-27 tora = throw "'tora' has been removed due to outdated KF5 dependencies."; # Added 2026-05-01 + torrent7z = throw "torrent7z is unmaintained and used a p7zip version from 2009. Consider using p7zip with the arguments to remove entropy instead"; # added 2026-05-09 tracker = throw "'tracker' has been renamed to/replaced by 'tinysparql'"; # Converted to throw 2025-10-27 tracker-miners = throw "'tracker-miners' has been renamed to/replaced by 'localsearch'"; # Converted to throw 2025-10-27 transfig = throw "'transfig' has been renamed to/replaced by 'fig2dev'"; # Converted to throw 2025-10-27 @@ -2250,6 +2252,7 @@ mapAliases { warsow = throw "'warsow' has been removed as it is unmaintained and is broken"; # Added 2025-10-09 warsow-engine = throw "'warsow-engine' has been removed as it is unmaintained and is broken"; # Added 2025-10-09 wasistlos = throw "'wasistlos' has been removed because it was unmaintained and archived upstream. Consider using 'karere' instead"; # Added 2026-04-13 + wasm3 = throw "'wasm3' has been removed as it is unmaintained upstream and has many known vulnerabilities"; # Added 2026-06-03 wasm-bindgen-cli = wasm-bindgen-cli_0_2_121; wasm-strip = throw "'wasm-strip' has been removed due to upstream deprecation. Use 'wabt' instead."; # Added 2025-11-06 wavebox = throw "'wavebox' has been removed due to lack of maintenance in nixpkgs"; # Added 2025-06-24 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 0123c7deb142..83d919288d1d 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2571,10 +2571,6 @@ with pkgs; inherit (python3Packages) ansi2html; }; - medfile = callPackage ../development/libraries/medfile { - hdf5 = hdf5.override { apiVersion = "v110"; }; - }; - mhonarc = perlPackages.MHonArc; nanoemoji = with python3Packages; toPythonApplication nanoemoji; diff --git a/pkgs/top-level/python-aliases.nix b/pkgs/top-level/python-aliases.nix index 00e471065732..956e0c98dd1c 100644 --- a/pkgs/top-level/python-aliases.nix +++ b/pkgs/top-level/python-aliases.nix @@ -585,6 +585,7 @@ mapAliases { sqlalchemy-utc = throw "'sqlalchemy-utc' has been removed as it was unmaintained upstream"; # Added 2026-03-19 sqlalchemy-views = throw "'sqlalchemy-views' has been removed as it was broken and unmaintained upstream"; # Added 2025-11-09 sqlalchemy_migrate = throw "'sqlalchemy_migrate' has been renamed to/replaced by 'sqlalchemy-migrate'"; # Converted to throw 2025-10-29 + steamship = throw "'steamship' has been removed because it is broken and unmaintained upstream"; # Added 2026-05-06 subunit2sql = throw "subunit2sql has been removed because it has been marked as broken since at least November 2024."; # Added 2025-10-04 supafunc = throw "'supafunc' has been replaced by 'supabase-functions'"; # Added 2026-03-08 supervise_api = throw "'supervise_api' has been renamed to/replaced by 'supervise-api'"; # Converted to throw 2025-10-29 diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index edeaf390c28d..0d1e6d97a265 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2508,6 +2508,8 @@ self: super: with self; { cantools = callPackage ../development/python-modules/cantools { }; + capa = callPackage ../development/python-modules/capa { }; + capstone = callPackage ../development/python-modules/capstone { inherit (pkgs) capstone; }; capstone_4 = callPackage ../development/python-modules/capstone/4.nix { @@ -7493,6 +7495,16 @@ self: super: with self; { id = callPackage ../development/python-modules/id { }; + ida-domain = callPackage ../development/python-modules/ida-domain { }; + + ida-hcli = callPackage ../development/python-modules/ida-hcli { }; + + ida-netnode = callPackage ../development/python-modules/ida-netnode { }; + + ida-settings = callPackage ../development/python-modules/ida-settings { }; + + idapro = callPackage ../development/python-modules/idapro { }; + idasen = callPackage ../development/python-modules/idasen { }; idasen-ha = callPackage ../development/python-modules/idasen-ha { }; @@ -18939,8 +18951,6 @@ self: super: with self; { steampy = callPackage ../development/python-modules/steampy { }; - steamship = callPackage ../development/python-modules/steamship { }; - steamworkspy = callPackage ../development/python-modules/steamworkspy { }; stem = callPackage ../development/python-modules/stem { }; @@ -20758,6 +20768,8 @@ self: super: with self; { u-msgpack-python = callPackage ../development/python-modules/u-msgpack-python { }; + ua-generator = callPackage ../development/python-modules/ua-generator { }; + ua-parser = callPackage ../development/python-modules/ua-parser { }; ua-parser-builtins = callPackage ../development/python-modules/ua-parser-builtins { };