diff --git a/nixos/doc/manual/release-notes/rl-2605.section.md b/nixos/doc/manual/release-notes/rl-2605.section.md index 16a6dd7103ef..f76d36d33ae2 100644 --- a/nixos/doc/manual/release-notes/rl-2605.section.md +++ b/nixos/doc/manual/release-notes/rl-2605.section.md @@ -101,6 +101,8 @@ of pulling the upstream container image from Docker Hub. If you want the old beh - `services.frp` now supports multiple instances through `services.frp.instances` to make it possible to run multiple frp clients or servers at the same time. +- [services.resolved](#opt-services.resolved.enable) module was converted to RFC42-style settings. The moved options have also been renamed to match the upstream names. Aliases mean current configs will continue to function, but users should move to the new options as convenient. + - `services.openssh` now supports generating host SSH keys by setting `services.openssh.generateHostKeys = true` while leaving `services.openssh.enable` disabled. This is particularly useful for systems that have no need of an SSH daemon but want SSH host keys for other purposes such as using agenix or sops-nix. - `services.slurm` now supports slurmrestd usage through the `services.slurm.rest` NixOS options. diff --git a/nixos/modules/system/boot/resolved.nix b/nixos/modules/system/boot/resolved.nix index f11f76ef8f64..b86e28f81a0a 100644 --- a/nixos/modules/system/boot/resolved.nix +++ b/nixos/modules/system/boot/resolved.nix @@ -2,160 +2,82 @@ config, lib, pkgs, + utils, ... }: - -with lib; let + inherit (utils.systemdUtils.lib) settingsToSections; + inherit (utils.systemdUtils.unitOptions) unitOption; + + inherit (lib) + literalExpression + mkIf + mkMerge + mkOption + mkOptionDefault + mkOrder + mkRenamedOptionModule + mkRemovedOptionModule + optionalAttrs + types + ; + cfg = config.services.resolved; dnsmasqResolve = config.services.dnsmasq.enable && config.services.dnsmasq.resolveLocalQueries; - resolvedConf = '' - [Resolve] - ${optionalString ( - config.networking.nameservers != [ ] - ) "DNS=${concatStringsSep " " config.networking.nameservers}"} - ${optionalString (cfg.fallbackDns != null) "FallbackDNS=${concatStringsSep " " cfg.fallbackDns}"} - ${optionalString (cfg.domains != [ ]) "Domains=${concatStringsSep " " cfg.domains}"} - LLMNR=${cfg.llmnr} - DNSSEC=${cfg.dnssec} - DNSOverTLS=${cfg.dnsovertls} - ${config.services.resolved.extraConfig} - ''; - + resolvedConf = settingsToSections cfg.settings; in { + imports = [ + (mkRenamedOptionModule + [ "services" "resolved" "fallbackDns" ] + [ "services" "resolved" "settings" "Resolve" "FallbackDNS" ] + ) + (mkRenamedOptionModule + [ "services" "resolved" "domains" ] + [ "services" "resolved" "settings" "Resolve" "Domains" ] + ) + (mkRenamedOptionModule + [ "services" "resolved" "llmnr" ] + [ "services" "resolved" "settings" "Resolve" "LLMNR" ] + ) + (mkRenamedOptionModule + [ "services" "resolved" "dnssec" ] + [ "services" "resolved" "settings" "Resolve" "DNSSEC" ] + ) + (mkRenamedOptionModule + [ "services" "resolved" "dnsovertls" ] + [ "services" "resolved" "settings" "Resolve" "DNSOverTLS" ] + ) + (mkRemovedOptionModule [ + "services" + "resolved" + "extraConfig" + ] "Use services.resolved.settings instead") + ]; options = { + services.resolved = { + enable = lib.mkEnableOption "the Systemd DNS resolver daemon (systemd-resolved)"; + settings.Resolve = mkOption { + description = '' + Settings option for systemd-resolved. + See {manpage}`resolved.conf(5)` for all available options. + ''; + # Remember to keep this in sync to the actual settings at the bottom of the page. + defaultText = literalExpression '' + { + DNS = config.networking.nameservers; + DNSOverTLS = false; + DNSSEC = false; + Domains = config.networking.search; + LLMNR = true; + } + ''; + type = types.attrsOf unitOption; + }; - services.resolved.enable = mkOption { - default = false; - type = types.bool; - description = '' - Whether to enable the systemd DNS resolver daemon, `systemd-resolved`. - - Search for `services.resolved` to see all options. - ''; - }; - - services.resolved.fallbackDns = mkOption { - default = null; - example = [ - "8.8.8.8" - "2001:4860:4860::8844" - ]; - type = types.nullOr (types.listOf types.str); - description = '' - A list of IPv4 and IPv6 addresses to use as the fallback DNS servers. - If this option is null, a compiled-in list of DNS servers is used instead. - Setting this option to an empty list will override the built-in list to an empty list, disabling fallback. - ''; - }; - - services.resolved.domains = mkOption { - default = config.networking.search; - defaultText = literalExpression "config.networking.search"; - example = [ "example.com" ]; - type = types.listOf types.str; - description = '' - A list of domains. These domains are used as search suffixes - when resolving single-label host names (domain names which - contain no dot), in order to qualify them into fully-qualified - domain names (FQDNs). - - For compatibility reasons, if this setting is not specified, - the search domains listed in - {file}`/etc/resolv.conf` are used instead, if - that file exists and any domains are configured in it. - ''; - }; - - services.resolved.llmnr = mkOption { - default = "true"; - example = "false"; - type = types.enum [ - "true" - "resolve" - "false" - ]; - description = '' - Controls Link-Local Multicast Name Resolution support - (RFC 4795) on the local host. - - If set to - - `"true"`: Enables full LLMNR responder and resolver support. - - `"false"`: Disables both. - - `"resolve"`: Only resolution support is enabled, but responding is disabled. - ''; - }; - - services.resolved.dnssec = mkOption { - default = "false"; - example = "true"; - type = types.enum [ - "true" - "allow-downgrade" - "false" - ]; - description = '' - If set to - - `"true"`: - all DNS lookups are DNSSEC-validated locally (excluding - LLMNR and Multicast DNS). Note that this mode requires a - DNS server that supports DNSSEC. If the DNS server does - not properly support DNSSEC all validations will fail. - - `"allow-downgrade"`: - DNSSEC validation is attempted, but if the server does not - support DNSSEC properly, DNSSEC mode is automatically - disabled. Note that this mode makes DNSSEC validation - vulnerable to "downgrade" attacks, where an attacker might - be able to trigger a downgrade to non-DNSSEC mode by - synthesizing a DNS response that suggests DNSSEC was not - supported. - - `"false"`: DNS lookups are not DNSSEC validated. - - At the time of September 2023, systemd upstream advise - to disable DNSSEC by default as the current code - is not robust enough to deal with "in the wild" non-compliant - servers, which will usually give you a broken bad experience - in addition of insecure. - ''; - }; - - services.resolved.dnsovertls = mkOption { - default = "false"; - example = "true"; - type = types.enum [ - "true" - "opportunistic" - "false" - ]; - description = '' - If set to - - `"true"`: - all DNS lookups will be encrypted. This requires - that the DNS server supports DNS-over-TLS and - has a valid certificate. If the hostname was specified - via the `address#hostname` format in {option}`services.resolved.domains` - then the specified hostname is used to validate its certificate. - - `"opportunistic"`: - all DNS lookups will attempt to be encrypted, but will fallback - to unecrypted requests if the server does not support DNS-over-TLS. - Note that this mode does allow for a malicious party to conduct a - downgrade attack by immitating the DNS server and pretending to not - support encryption. - - `"false"`: - all DNS lookups are done unencrypted. - ''; - }; - - services.resolved.extraConfig = mkOption { - default = ""; - type = types.lines; - description = '' - Extra config to append to resolved.conf. - ''; }; boot.initrd.services.resolved.enable = mkOption { @@ -179,6 +101,15 @@ in } ]; + # If updating any of these attrs, also update the defaultText above. + services.resolved.settings.Resolve = { + DNS = config.networking.nameservers; + DNSOverTLS = mkOptionDefault false; + DNSSEC = mkOptionDefault false; + Domains = mkOptionDefault config.networking.search; + LLMNR = mkOptionDefault true; + }; + users.users.systemd-resolve.group = "systemd-resolve"; # add resolve to nss hosts database if enabled and nscd enabled @@ -186,9 +117,7 @@ in # added with order 501 to allow modules to go before with mkBefore system.nssDatabases.hosts = (mkOrder 501 [ "resolve [!UNAVAIL=return]" ]); - systemd.additionalUpstreamSystemUnits = [ - "systemd-resolved.service" - ]; + systemd.additionalUpstreamSystemUnits = [ "systemd-resolved.service" ]; systemd.services.systemd-resolved = { wantedBy = [ "sysinit.target" ]; diff --git a/nixos/tests/clatd.nix b/nixos/tests/clatd.nix index d5241eb646ab..1294909cb9ed 100644 --- a/nixos/tests/clatd.nix +++ b/nixos/tests/clatd.nix @@ -128,9 +128,7 @@ }; }; - services.resolved.extraConfig = '' - DNSStubListener=no - ''; + services.resolved.settings.Resolve.DNSStubListener = false; networking.extraHosts = '' 192.0.0.171 ipv4only.arpa diff --git a/nixos/tests/systemd-resolved.nix b/nixos/tests/systemd-resolved.nix index 25b926c75fdc..5d526d46a4db 100644 --- a/nixos/tests/systemd-resolved.nix +++ b/nixos/tests/systemd-resolved.nix @@ -50,7 +50,7 @@ } ]; services.resolved.enable = true; - services.resolved.fallbackDns = [ ]; + services.resolved.settings.Resolve.FallbackDNS = [ ]; networking.useNetworkd = true; networking.useDHCP = false; systemd.network.networks."40-eth0".enable = false; diff --git a/nixos/tests/systemd-timesyncd-nscd-dnssec.nix b/nixos/tests/systemd-timesyncd-nscd-dnssec.nix index d68b324858c0..a57cd4802dec 100644 --- a/nixos/tests/systemd-timesyncd-nscd-dnssec.nix +++ b/nixos/tests/systemd-timesyncd-nscd-dnssec.nix @@ -44,7 +44,7 @@ in # Enable systemd-resolved with DNSSEC and use the local DNS as a name server services.resolved.enable = true; - services.resolved.dnssec = "true"; + services.resolved.settings.Resolve.DNSSEC = true; networking.nameservers = [ eth1IP ]; # Configure systemd-timesyncd to use our NTP hostname diff --git a/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix b/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix index dfc8e06d2972..137e29086a37 100644 --- a/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix +++ b/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix @@ -8,8 +8,8 @@ vscode-utils.buildVscodeMarketplaceExtension { mktplcRef = { name = "claude-code"; publisher = "anthropic"; - version = "2.1.6"; - hash = "sha256-xN87LR64kikBu0M5pST0PbV7+YwB1ncTzmfGk4PEwNs="; + version = "2.1.7"; + hash = "sha256-Bj9VNhwgM0nO3b/Iptb70hkO2TjKxbEpxdYGyzFt3iA="; }; postInstall = '' diff --git a/pkgs/applications/networking/cluster/terraform-providers/providers.json b/pkgs/applications/networking/cluster/terraform-providers/providers.json index 238f16174ca9..7f7452aa53af 100644 --- a/pkgs/applications/networking/cluster/terraform-providers/providers.json +++ b/pkgs/applications/networking/cluster/terraform-providers/providers.json @@ -1148,13 +1148,13 @@ "vendorHash": null }, "sacloud_sakuracloud": { - "hash": "sha256-ROHs74PqYJMXJBp8jqOGUm0QqzkGgi07GT0RMkW5zp0=", + "hash": "sha256-34UK1KyGOB4ryl71iW6FIpbU9eNwj/7LQq8cQnL0qWs=", "homepage": "https://registry.terraform.io/providers/sacloud/sakuracloud", "owner": "sacloud", "repo": "terraform-provider-sakuracloud", - "rev": "v2.33.0", + "rev": "v2.34.0", "spdx": "Apache-2.0", - "vendorHash": "sha256-K2zPe5wrUsIj1LocudoYWSJ11FPrQ87XLnLeGdNpWAg=" + "vendorHash": "sha256-VJ5P2dlEBvQhTYZZG4G3QgIoHuqxLwa6w4h8W5n2knU=" }, "sap-cloud-infrastructure_sci": { "hash": "sha256-m3degJZruqRkA/lSnNQrLfJIlpl5k8qCpbyIcsyV5/U=", diff --git a/pkgs/applications/networking/instant-messengers/ferdium/default.nix b/pkgs/applications/networking/instant-messengers/ferdium/default.nix index 527a8be60df5..04270c82c848 100644 --- a/pkgs/applications/networking/instant-messengers/ferdium/default.nix +++ b/pkgs/applications/networking/instant-messengers/ferdium/default.nix @@ -15,15 +15,15 @@ let ."${stdenv.hostPlatform.system}" or (throw "Unsupported system: ${stdenv.hostPlatform.system}"); hash = { - amd64-linux_hash = "sha256-84W40++U+5/kTI84vGEqAVb93TCgFPduBkhMQG0yDRo="; - arm64-linux_hash = "sha256-lOQW559aXXBIDuindVj8YBB8pzNAJPoTSJ70y1YnZQ4="; + amd64-linux_hash = "sha256-1jXo8MMk2EEkLo0n4ICmGJteKProLYKkMF//g63frHs="; + arm64-linux_hash = "sha256-jYDGVZhL0bswowm1H/4aa35lNJalil6ymV34NQM5Gfc="; } ."${arch}-linux_hash"; in mkFranzDerivation rec { pname = "ferdium"; name = "Ferdium"; - version = "7.1.0"; + version = "7.1.1"; src = fetchurl { url = "https://github.com/ferdium/ferdium-app/releases/download/v${version}/Ferdium-linux-${version}-${arch}.deb"; inherit hash; diff --git a/pkgs/by-name/as/assetripper/deps.json b/pkgs/by-name/as/assetripper/deps.json index 09fcf35dc972..961c7e4f691e 100644 --- a/pkgs/by-name/as/assetripper/deps.json +++ b/pkgs/by-name/as/assetripper/deps.json @@ -1,38 +1,53 @@ [ { "pname": "AsmResolver", - "version": "6.0.0-beta.3", - "hash": "sha256-hZfhHUMesxRo7Ek0kwKBOQ7+2+WkkFhavEk4stK4Ku0=" + "version": "6.0.0-beta.5", + "hash": "sha256-Cpea7s/yefJggJ41GZGAE20j6RqooXNRSEFeiYknb74=" }, { "pname": "AsmResolver.DotNet", - "version": "6.0.0-beta.3", - "hash": "sha256-x9BE2dfeACzOUtwrrzFJARMbt6yYREtSQYmdeqJIdJo=" + "version": "6.0.0-beta.5", + "hash": "sha256-xFzIB9vtfuUUVQm6ZFV86sVjyys4OyaoTbT02mLt5z4=" }, { "pname": "AsmResolver.PE", - "version": "6.0.0-beta.3", - "hash": "sha256-//cJkU4+PCAlBcSDeLjwWVkPJBQT1XzHx65uzrEPJR8=" + "version": "6.0.0-beta.5", + "hash": "sha256-k/LX44btBB4ixKILD2zHuvIpPhGqdAG2d+zXGv+anrc=" }, { "pname": "AsmResolver.PE.File", - "version": "6.0.0-beta.3", - "hash": "sha256-YzOcIBeILNSn8XATTC9j+0vgFXi6j4t/CQngOK/ZrnA=" + "version": "6.0.0-beta.5", + "hash": "sha256-BPxgoa3CymXWDxds1m8t5j9r/RrJ8ZRwF+DRh4djAq8=" }, { "pname": "AssetRipper.Checksum", - "version": "1.0.0", - "hash": "sha256-/RUgkXYya3tpl7NAEbfMoTpw8UJQodSEs0j3l4iO5t4=" + "version": "1.1.0", + "hash": "sha256-kE+UElTAzj+HtwF3i+CE0phXuxfIv45iB/loJuuy+2A=" }, { "pname": "AssetRipper.CIL", - "version": "1.1.6", - "hash": "sha256-dDiXWd3AtOWlaxFC1+xdw1MkmIGat2/CuH1oTZBF/RA=" + "version": "1.2.2", + "hash": "sha256-B0lUX8pgUnMD5QufZ8BWQo+1wDJs3GgqUkAMKh7Cbdk=" + }, + { + "pname": "AssetRipper.Conversions.Crunch", + "version": "1.0.3", + "hash": "sha256-RXfQGzC9hwQbIAfPW/J0LTNHx5SIEZCoeKqCoQrl7zw=" }, { "pname": "AssetRipper.Conversions.FastPng", + "version": "1.1.0", + "hash": "sha256-SdI+OKyeJ/Lz+Yj4298jAZYggjkxp7A3oLo29J8/4gE=" + }, + { + "pname": "AssetRipper.Conversions.UnityCrunch", + "version": "1.0.3", + "hash": "sha256-gH+YUNvW7cvRfIceF/ipqqIZytda7J3D0D+NqP7dl8A=" + }, + { + "pname": "AssetRipper.Cpp2IL.Core", "version": "1.0.0", - "hash": "sha256-tcMBR4jo61eqEQSiZSFjtsfIku9KOTEgkZnVXD5WX7s=" + "hash": "sha256-qS58t3OD2l/a1PJmfmKnHd9JXQEciMIgCnoVW70p5Dk=" }, { "pname": "AssetRipper.Gee.External.Capstone", @@ -51,14 +66,19 @@ }, { "pname": "AssetRipper.ICSharpCode.Decompiler", - "version": "9.1.0.8017", - "hash": "sha256-2OC9esZJ2hbeEcWJte0aAYdvykxwzGVF2IB1hV0BcMg=" + "version": "10.0.0.8273-preview2", + "hash": "sha256-FI+I2MZfFG6iHVW7ykNIO6WOSxTqmRSEtWx3CQNlRBY=" }, { "pname": "AssetRipper.IO.Endian", "version": "2.0.2", "hash": "sha256-/oxfkQpCaERReRha+2fkPQaW9JNAyJdiujp1326Pcmw=" }, + { + "pname": "AssetRipper.LibCpp2IL", + "version": "1.0.0", + "hash": "sha256-yZxcQSP5252fNeRUVUVfILXTxU54QrPb8G8GRKKS3bQ=" + }, { "pname": "AssetRipper.Mining.PredefinedAssets", "version": "1.5.0", @@ -66,8 +86,8 @@ }, { "pname": "AssetRipper.NativeDialogs", - "version": "1.0.0", - "hash": "sha256-RwrdAQpmZZII5jugbfCDd/sNqy3ozJ6dqWunuHApkuo=" + "version": "1.0.1", + "hash": "sha256-fLUIHFnyurjuM5YhV9G4KbwIY0oooSNY/OLglG038Cs=" }, { "pname": "AssetRipper.Primitives", @@ -101,8 +121,8 @@ }, { "pname": "AssetRipper.SourceGenerated", - "version": "1.2.5", - "hash": "sha256-sYOnCL+63F8LVLONtxC9Wcu5erFqkms95FM2QwphEck=" + "version": "1.3.9", + "hash": "sha256-YjaQJNyRY+HM4qzlGYPFxjQstibVY5IB94DJoks1upo=" }, { "pname": "AssetRipper.Text.Html", @@ -116,60 +136,25 @@ }, { "pname": "AssetRipper.TextureDecoder", - "version": "2.3.0", - "hash": "sha256-P+McipTHztjmibwO4kOsqGs5u6o+15k52r35tq80oNQ=" + "version": "2.5.0", + "hash": "sha256-Jxy6sjAnB0fVzlZ7TeKb8H45aNftiZe8gMTNQyefouU=" }, { "pname": "AssetRipper.Tpk", "version": "1.1.0", "hash": "sha256-1FJI8HbeJsXc77+uQngG3LJJQt7LshTKoYwtnQ+gyoc=" }, - { - "pname": "AtkSharp", - "version": "3.24.24.117-develop", - "hash": "sha256-ubAzPecV3tV9h2OUUqiJw8OqPzg+iHQ1LBMZ7sU/mJo=" - }, - { - "pname": "CairoSharp", - "version": "3.24.24.117-develop", - "hash": "sha256-3dTmn3TpcDxEqTsvPdA8ueMYzK0IR5Z/vUR6xPCEnYE=" - }, { "pname": "Disarm", "version": "2022.1.0-master.57", "hash": "sha256-KtLpcS+n+HVkHc/CKBoyx+PWKpxkkVvtsqf002KSbPI=", "url": "https://nuget.samboy.dev/v3/package/disarm/2022.1.0-master.57/disarm.2022.1.0-master.57.nupkg" }, - { - "pname": "DXDecompiler-ly", - "version": "0.0.1", - "hash": "sha256-R8Nyy60qOPru3SH5mPGNL1/tUKwqbxNq2QqbveoYznc=" - }, { "pname": "Fmod5Sharp", "version": "3.0.1", "hash": "sha256-Od9D7s20ONwuD1V6ZUCKkCyLR57pX8GRDuDs5oZzc+I=" }, - { - "pname": "GdkSharp", - "version": "3.24.24.117-develop", - "hash": "sha256-6pW0Pj5jJXiyQfqPKIu0klrViMqKf+pRk++a4chIaxA=" - }, - { - "pname": "GioSharp", - "version": "3.24.24.117-develop", - "hash": "sha256-CLW912aVbiFjcWS8g36fEx+4HfOB7nAlhK1sVaPZSCM=" - }, - { - "pname": "GLibSharp", - "version": "3.24.24.117-develop", - "hash": "sha256-aJC9OOXB6qV/vjCarQn4DC/jxAuyV2cTclFjB3oguMk=" - }, - { - "pname": "GtkSharp", - "version": "3.24.24.117-develop", - "hash": "sha256-CgNVKW81n8MdVy481nYVY6KApDzlhEzxILSKkNLe5pg=" - }, { "pname": "Iced", "version": "1.21.0", @@ -185,35 +170,15 @@ "version": "1.3.8", "hash": "sha256-OmT3JwO4qpkZDL7XqiFqZCyxySj64s9t+mXcN1T+IyA=" }, - { - "pname": "Kyaru.Texture2DDecoder", - "version": "0.17.0", - "hash": "sha256-8eHFAZ8Y00C9g4ZmUTxYrgqIr4gxMwTM7vtxER8w29g=" - }, - { - "pname": "Kyaru.Texture2DDecoder.Linux", - "version": "0.1.0", - "hash": "sha256-Wrk4NnAGx3E/3zRn03822Zzfcuyx7U4+54NbAe7Mc58=" - }, - { - "pname": "Kyaru.Texture2DDecoder.macOS", - "version": "0.1.0", - "hash": "sha256-BjioRXZSKONx5A1v7HAQtYzhVpMHCzfsi6XvyxLdO0s=" - }, - { - "pname": "Kyaru.Texture2DDecoder.Windows", - "version": "0.1.0", - "hash": "sha256-I4Huq7yZFFVX+9lAebuKf88LVj+oKQB5AetnwalEhlA=" - }, { "pname": "Microsoft.AspNetCore.OpenApi", - "version": "9.0.6", - "hash": "sha256-Kk1WNf1BS+9LjjXjBrYb1YCr+23W9PJ+B9Kv2OBv2Oc=" + "version": "10.0.1", + "hash": "sha256-O31K6+++fM7XWd0JGrzmzLrtydYGiI4efzv+WqAdnQA=" }, { "pname": "Microsoft.Bcl.AsyncInterfaces", - "version": "9.0.6", - "hash": "sha256-+7YVB4UIGrvWzDkW5boLTC+6l2s96Jh1p0NeT95bb9Y=" + "version": "10.0.1", + "hash": "sha256-aHoslRGmAot/z1GCCqSzjAxT/hltxOOIZ1/oti4WbGY=" }, { "pname": "Microsoft.CodeAnalysis.Analyzers", @@ -222,18 +187,18 @@ }, { "pname": "Microsoft.CodeAnalysis.Common", - "version": "4.14.0", - "hash": "sha256-ne/zxH3GqoGB4OemnE8oJElG5mai+/67ASaKqwmL2BE=" + "version": "5.0.0", + "hash": "sha256-g4ALvBSNyHEmSb1l5TFtWW7zEkiRmhqLx4XWZu9sr2U=" }, { "pname": "Microsoft.CodeAnalysis.CSharp", - "version": "4.14.0", - "hash": "sha256-5Mzj3XkYYLkwDWh17r1NEXSbXwwWYQPiOmkSMlgo1JY=" + "version": "5.0.0", + "hash": "sha256-ctBCkQGFpH/xT5rRE3xibu9YxPD108RuC4a4Z25koG8=" }, { "pname": "Microsoft.Extensions.ApiDescription.Server", - "version": "8.0.0", - "hash": "sha256-GceEAtCVtm8xUHjR6obQ6bBJMOf+9d9OQ1iVr48sQbg=" + "version": "10.0.0", + "hash": "sha256-fgJ4g1gRX2W+TmNWxboxATYnZQxAGIpvl0EZD3BMVM0=" }, { "pname": "Microsoft.NETCore.Platforms", @@ -242,18 +207,18 @@ }, { "pname": "Microsoft.OpenApi", - "version": "1.6.17", - "hash": "sha256-Wx9PwlEJPNMq1kp59nJJnLHQ+yNhqCTudcokmlP+tSk=" + "version": "2.0.0", + "hash": "sha256-8eiM3Mx4Hx1etx52RlczoHG2z9XIpWgu2LQtWSt086k=" }, { "pname": "Microsoft.OpenApi", - "version": "1.6.23", - "hash": "sha256-YD2oxM/tlNpK5xUeHF85xdqcpBzHioUSyRjpN2A7KcY=" + "version": "2.3.0", + "hash": "sha256-nfg+g85wy5q1dnRnCYXrINogyspNNTKr9Jd6bj7tXXM=" }, { "pname": "Microsoft.OpenApi", - "version": "1.6.24", - "hash": "sha256-26sypyWk/38Xz6nlFQ1eYQeLM/k4kGyNiLazgyPyuJQ=" + "version": "2.4.1", + "hash": "sha256-DXdbXq5Gpg3MJVBM0C8uF6mcLczVJAUFp6LAdFojgPs=" }, { "pname": "NAudio.Core", @@ -305,34 +270,11 @@ "version": "1.4.3", "hash": "sha256-KiOTY0s0J4K9hbQ7pSvgNeb9j6h0lbI9sHQxlNSMIqY=" }, - { - "pname": "PangoSharp", - "version": "3.24.24.117-develop", - "hash": "sha256-G+UgcJKurjnR3kGfHB6SFZ7ujz1+5/+yN8jUYQ7jpgM=" - }, { "pname": "PolySharp", "version": "1.15.0", "hash": "sha256-nH/UOZW4X93FUELaDteMvEEWofX4vii4e59jOqx9JTg=" }, - { - "pname": "Samboy063.Cpp2IL.Core", - "version": "2022.1.0-development.1356", - "hash": "sha256-fGf4BItKAA5wxqnHeipLAc9Tezsb6m0dtGcnXMcnYdM=", - "url": "https://nuget.samboy.dev/v3/package/samboy063.cpp2il.core/2022.1.0-development.1356/samboy063.cpp2il.core.2022.1.0-development.1356.nupkg" - }, - { - "pname": "Samboy063.LibCpp2IL", - "version": "2022.1.0-development.1356", - "hash": "sha256-F8SN2ooYcE+rAya645I166xqZeC5XsqGo8OiYnAkBH8=", - "url": "https://nuget.samboy.dev/v3/package/samboy063.libcpp2il/2022.1.0-development.1356/samboy063.libcpp2il.2022.1.0-development.1356.nupkg" - }, - { - "pname": "Samboy063.WasmDisassembler", - "version": "2022.1.0-development.1356", - "hash": "sha256-w2fMnjPYikPEveS9lPwiTHlOazN2w3IlP5EnLyp+Ln0=", - "url": "https://nuget.samboy.dev/v3/package/samboy063.wasmdisassembler/2022.1.0-development.1356/samboy063.wasmdisassembler.2022.1.0-development.1356.nupkg" - }, { "pname": "SharpCompress", "version": "0.38.0", @@ -340,24 +282,13 @@ }, { "pname": "SharpCompress", - "version": "0.40.0", - "hash": "sha256-pxz5ef//xOUClwuyflO0eLAfUItFcwfq74Cf0Hj5c1E=" - }, - { - "pname": "SharpZipLib", - "version": "1.4.2", - "hash": "sha256-/giVqikworG2XKqfN9uLyjUSXr35zBuZ2FX2r8X/WUY=" + "version": "0.42.1", + "hash": "sha256-cHQM/AKOZtH0dgWQaoNlLQobq4/1f/+MpXAAKHHuOxU=" }, { "pname": "SourceGenerator.Foundations", - "version": "2.0.13", - "hash": "sha256-duI1IaumXBKE7xY/YoNqJWXLF96OznZT5IF79ox1s64=" - }, - { - "pname": "StableNameDotNet", - "version": "0.1.0-development.1356", - "hash": "sha256-BsH+CwpStediIOeM+b79PZzZWJQnqKi5ofgTHorcXUU=", - "url": "https://nuget.samboy.dev/v3/package/stablenamedotnet/0.1.0-development.1356/stablenamedotnet.0.1.0-development.1356.nupkg" + "version": "2.0.14", + "hash": "sha256-pZE20186wQ1eFGg6036Xm1hE3/09FIboEDkqLcCvqhw=" }, { "pname": "StbImageWriteSharp", @@ -366,28 +297,23 @@ }, { "pname": "Swashbuckle.AspNetCore", - "version": "9.0.1", - "hash": "sha256-rJFeYQgpQ6O3nK0I0ovzh5k8NA/Hzp6kIxKRBryBBBw=" + "version": "10.1.0", + "hash": "sha256-28kzcCMc9Ypv/g0z8mexB2bKMS7vRw3ZU61p3QKMnlk=" }, { "pname": "Swashbuckle.AspNetCore.Swagger", - "version": "9.0.1", - "hash": "sha256-MgjUvPjRdrSVALtJL+kQZsL0siNVPUhVKzsc6VMKsLM=" + "version": "10.1.0", + "hash": "sha256-UTNuin8H71zlm1RGqyV2Spk/K+2UeAt6nM3QPyXJSk4=" }, { "pname": "Swashbuckle.AspNetCore.SwaggerGen", - "version": "9.0.1", - "hash": "sha256-yRYM43099u0sH9uozOWAHSj0uLBOSEAp1zzR4RJCYEU=" + "version": "10.1.0", + "hash": "sha256-lDWEOYrgJWskM45+XvDmaxSZRU/ZFfGEr2bTh7eZsqE=" }, { "pname": "Swashbuckle.AspNetCore.SwaggerUI", - "version": "9.0.1", - "hash": "sha256-R1c/a5mMqstqSwm/PIj6FYa0fimE7ry4KibY6PUAuZQ=" - }, - { - "pname": "System.Buffers", - "version": "4.5.1", - "hash": "sha256-wws90sfi9M7kuCPWkv1CEYMJtCqx9QB/kj0ymlsNaxI=" + "version": "10.1.0", + "hash": "sha256-qxIhoxk9dfzRo4lX5I5J5WWFagVYqgjbjY4Q/yJr6dA=" }, { "pname": "System.Buffers", @@ -395,9 +321,9 @@ "hash": "sha256-c2QlgFB16IlfBms5YLsTCFQ/QeKoS6ph1a9mdRkq/Jc=" }, { - "pname": "System.Collections.Immutable", - "version": "6.0.0", - "hash": "sha256-DKEbpFqXCIEfqp9p3ezqadn5b/S1YTk32/EQK+tEScs=" + "pname": "System.Buffers", + "version": "4.6.1", + "hash": "sha256-sARR6R0Bb77Aka0eNh86cBXh2R1AR/fkinRFWypnPXk=" }, { "pname": "System.Collections.Immutable", @@ -406,59 +332,54 @@ }, { "pname": "System.IO.Hashing", - "version": "8.0.0", - "hash": "sha256-szOGt0TNBo6dEdC3gf6H+e9YW3Nw0woa6UnCGGGK5cE=" + "version": "9.0.7", + "hash": "sha256-2iuS+SBvM+t4Wzi40lqSXrb8iVxYWmQ4ljHvDvDt5ns=" }, { "pname": "System.IO.Pipelines", - "version": "9.0.6", - "hash": "sha256-bOZgOtovt6tNf1IVV8ndHVvdqpMDlHN6Zwfl0KnsE0M=" - }, - { - "pname": "System.Memory", - "version": "4.5.3", - "hash": "sha256-Cvl7RbRbRu9qKzeRBWjavUkseT2jhZBUWV1SPipUWFk=" - }, - { - "pname": "System.Memory", - "version": "4.5.4", - "hash": "sha256-3sCEfzO4gj5CYGctl9ZXQRRhwAraMQfse7yzKoRe65E=" + "version": "10.0.1", + "hash": "sha256-3NHQjvO1mSPo8Hq9vMM5QeKJeS9/y3UpznideAf5pJA=" }, { "pname": "System.Memory", "version": "4.5.5", "hash": "sha256-EPQ9o1Kin7KzGI5O3U3PUQAZTItSbk9h/i4rViN3WiI=" }, + { + "pname": "System.Memory", + "version": "4.6.0", + "hash": "sha256-OhAEKzUM6eEaH99DcGaMz2pFLG/q/N4KVWqqiBYUOFo=" + }, + { + "pname": "System.Memory", + "version": "4.6.3", + "hash": "sha256-JgeK63WMmumF6L+FH5cwJgYdpqXrSDcgTQwtIgTHKVU=" + }, { "pname": "System.Numerics.Tensors", "version": "10.0.0-preview.5.25277.114", "hash": "sha256-zXbNpujiQO8JcKNvJTMdOtokqvBpD6LeWpeurJDFmts=" }, { - "pname": "System.Numerics.Vectors", - "version": "4.4.0", - "hash": "sha256-auXQK2flL/JpnB/rEcAcUm4vYMCYMEMiWOCAlIaqu2U=" + "pname": "System.Numerics.Tensors", + "version": "10.0.0-rc.1.25451.107", + "hash": "sha256-rrKU6WIkn5ZIg5oWUjhRDVvmDsATYaNrOg1FUEfSva8=" }, { "pname": "System.Numerics.Vectors", - "version": "4.5.0", - "hash": "sha256-qdSTIFgf2htPS+YhLGjAGiLN8igCYJnCCo6r78+Q+c8=" + "version": "4.6.0", + "hash": "sha256-fKS3uWQ2HmR69vNhDHqPLYNOt3qpjiWQOXZDHvRE1HU=" }, { - "pname": "System.Reflection.Metadata", - "version": "6.0.0", - "hash": "sha256-VJHXPjP05w6RE/Swu8wa2hilEWuji3g9bl/6lBMSC/Q=" + "pname": "System.Numerics.Vectors", + "version": "4.6.1", + "hash": "sha256-K8UAqG3LAvIDLW2Hf54tbp5KeQgOVyObQZhnnUAx8sc=" }, { "pname": "System.Reflection.Metadata", "version": "9.0.0", "hash": "sha256-avEWbcCh7XgpsSesnR3/SgxWi/6C5OxjR89Jf/SfRjQ=" }, - { - "pname": "System.Runtime.CompilerServices.Unsafe", - "version": "4.5.3", - "hash": "sha256-lnZMUqRO4RYRUeSO8HSJ9yBHqFHLVbmenwHWkIU20ak=" - }, { "pname": "System.Runtime.CompilerServices.Unsafe", "version": "6.0.0", @@ -466,48 +387,38 @@ }, { "pname": "System.Runtime.CompilerServices.Unsafe", - "version": "6.1.1", - "hash": "sha256-FeUStJ8EDvosTT651WiWE0X19rE9QqNQpLmhkb/n+rM=" + "version": "6.1.0", + "hash": "sha256-NyqqpRcHumzSxpsgRDguD5SGwdUNHBbo0OOdzLTIzCU=" + }, + { + "pname": "System.Runtime.CompilerServices.Unsafe", + "version": "6.1.2", + "hash": "sha256-X2p/U680Zfkr622oc+vg5JYgbDEzE7mLre5DVaayWTc=" }, { "pname": "System.Text.Encoding.CodePages", - "version": "7.0.0", - "hash": "sha256-eCKTVwumD051ZEcoJcDVRGnIGAsEvKpfH3ydKluHxmo=" + "version": "8.0.0", + "hash": "sha256-fjCLQc1PRW0Ix5IZldg0XKv+J1DqPSfu9pjMyNBp7dE=" }, { "pname": "System.Text.Encodings.Web", - "version": "6.0.0", - "hash": "sha256-UemDHGFoQIG7ObQwRluhVf6AgtQikfHEoPLC6gbFyRo=" - }, - { - "pname": "System.Text.Encodings.Web", - "version": "9.0.6", - "hash": "sha256-HHifM7LW0+JhFLHMbPx3954t70IjdTPoBE8mWEiJxcI=" + "version": "10.0.1", + "hash": "sha256-dBN9Rpe+J1F8/cdzwNxLHYiqvzgSX1r9128YXyb2DKM=" }, { "pname": "System.Text.Json", - "version": "6.0.5", - "hash": "sha256-NKWNrCcKy8S5ldsJzm6+udU53fWzmPGZZG/gpk0Kz4k=" - }, - { - "pname": "System.Text.Json", - "version": "9.0.4", - "hash": "sha256-oIOqfOIIUXXVkfFiTCI9wwIJBETQqF7ZcOJv2iYuq1s=" - }, - { - "pname": "System.Text.Json", - "version": "9.0.6", - "hash": "sha256-WC/QbZhTaoZ3PbDKcFvJwMIA4xLUdnMrAXGlOW87VNY=" + "version": "10.0.1", + "hash": "sha256-WfSgOpRL4DKfIry/H+eHxJHHrj6ENZ3+P6Q2ol3R2XM=" }, { "pname": "System.Threading.Tasks.Extensions", - "version": "4.5.4", - "hash": "sha256-owSpY8wHlsUXn5xrfYAiu847L6fAKethlvYx97Ri1ng=" + "version": "4.6.0", + "hash": "sha256-OwIB0dpcdnyfvTUUj6gQfKW2XF2pWsQhykwM1HNCHqY=" }, { - "pname": "System.ValueTuple", - "version": "4.5.0", - "hash": "sha256-niH6l2fU52vAzuBlwdQMw0OEoRS/7E1w5smBFoqSaAI=" + "pname": "System.Threading.Tasks.Extensions", + "version": "4.6.3", + "hash": "sha256-GrySx1F6Ah6tfnnQt/PHC+dbzg+sfP47OOFX0yJF/xo=" }, { "pname": "TerraFX.Interop.Windows", @@ -521,7 +432,7 @@ }, { "pname": "ZstdSharp.Port", - "version": "0.8.5", - "hash": "sha256-+UQFeU64md0LlSf9nMXif6hHnfYEKm+WRyYd0Vo2QvI=" + "version": "0.8.6", + "hash": "sha256-rc3YWP80fykqujDsD72SXOA1tBDoy2KrvVETOC8eTx8=" } ] diff --git a/pkgs/by-name/as/assetripper/package.nix b/pkgs/by-name/as/assetripper/package.nix index ca442e9496bb..583231463211 100644 --- a/pkgs/by-name/as/assetripper/package.nix +++ b/pkgs/by-name/as/assetripper/package.nix @@ -10,20 +10,15 @@ buildDotnetModule (finalAttrs: { pname = "assetripper"; - version = "1.3.0"; + version = "1.3.9"; src = fetchFromGitHub { owner = "AssetRipper"; repo = "AssetRipper"; tag = finalAttrs.version; - hash = "sha256-ixXWbygFhvOjld+YRLIhkO3cgDNkQsbivri2pjU4rgM="; + hash = "sha256-cQt0udU2IjsKPwTpBZLFmw1kGv2DfRt7ecdh2ilQtN8="; }; - postPatch = '' - sed 's@Path.Join(ExecutingDirectory, "temp",@Path.Join(Path.GetTempPath(), "AssetRipper",@' \ - -i Source/AssetRipper.IO.Files/Utils/TemporaryFileStorage.cs - ''; - buildInputs = [ dbus (lib.getLib stdenv.cc.cc) @@ -69,7 +64,7 @@ buildDotnetModule (finalAttrs: { executables = [ "AssetRipper.GUI.Free" ]; - dotnet-sdk = dotnetCorePackages.sdk_9_0; + dotnet-sdk = dotnetCorePackages.sdk_10_0; dotnet-runtime = finalAttrs.dotnet-sdk.aspnetcore; meta = { @@ -77,7 +72,10 @@ buildDotnetModule (finalAttrs: { homepage = "https://github.com/AssetRipper/AssetRipper"; license = lib.licenses.gpl3Only; mainProgram = "AssetRipper"; - maintainers = with lib.maintainers; [ YoshiRulz ]; + maintainers = with lib.maintainers; [ + YoshiRulz + toasteruwu + ]; platforms = lib.platforms.unix; sourceProvenance = with lib.sourceTypes; [ fromSource diff --git a/pkgs/by-name/cl/claude-code-router/package.nix b/pkgs/by-name/cl/claude-code-router/package.nix index 565ec094d4d4..1fd4c1903c31 100644 --- a/pkgs/by-name/cl/claude-code-router/package.nix +++ b/pkgs/by-name/cl/claude-code-router/package.nix @@ -3,18 +3,14 @@ fetchFromGitHub, lib, makeBinaryWrapper, - nodejs_20, - pnpm_10, + nodejs, + pnpm, fetchPnpmDeps, pnpmConfigHook, versionCheckHook, }: -let - nodejs = nodejs_20; - buildNpmPackage' = buildNpmPackage.override { inherit nodejs; }; - pnpm' = pnpm_10.override { inherit nodejs; }; -in -buildNpmPackage' (finalAttrs: { + +buildNpmPackage (finalAttrs: { pname = "claude-code-router"; version = "2.0.0"; @@ -32,15 +28,15 @@ buildNpmPackage' (finalAttrs: { npmDeps = null; pnpmDeps = fetchPnpmDeps { + inherit pnpm; inherit (finalAttrs) pname src; - pnpm = pnpm'; fetcherVersion = 3; hash = "sha256-8184F3ShoC6j7nov35CSZWz2dzPFQC7Bty1iTNs1qzc="; }; nativeBuildInputs = [ makeBinaryWrapper - pnpm' + pnpm ]; npmConfigHook = pnpmConfigHook; diff --git a/pkgs/by-name/cl/claude-code/package-lock.json b/pkgs/by-name/cl/claude-code/package-lock.json index b224d6552142..e681227b1d7e 100644 --- a/pkgs/by-name/cl/claude-code/package-lock.json +++ b/pkgs/by-name/cl/claude-code/package-lock.json @@ -1,12 +1,12 @@ { "name": "@anthropic-ai/claude-code", - "version": "2.1.6", + "version": "2.1.7", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@anthropic-ai/claude-code", - "version": "2.1.6", + "version": "2.1.7", "license": "SEE LICENSE IN README.md", "bin": { "claude": "cli.js" diff --git a/pkgs/by-name/cl/claude-code/package.nix b/pkgs/by-name/cl/claude-code/package.nix index 3746a549b1d0..63e1482f669e 100644 --- a/pkgs/by-name/cl/claude-code/package.nix +++ b/pkgs/by-name/cl/claude-code/package.nix @@ -12,14 +12,14 @@ }: buildNpmPackage (finalAttrs: { pname = "claude-code"; - version = "2.1.6"; + version = "2.1.7"; src = fetchzip { url = "https://registry.npmjs.org/@anthropic-ai/claude-code/-/claude-code-${finalAttrs.version}.tgz"; - hash = "sha256-M2ZLGnrvNki7B2jOh4Uq2SfSxkICh76uRIFogq+kKZ8="; + hash = "sha256-s/XPemwJYPUNFBgWo00VQ6W6eFIy44y9lFoRN0Duk9I="; }; - npmDepsHash = "sha256-Y+4ZcfEJJg4/XYc3vNLw4R5OJz3FlYvgQpkB739jKAQ="; + npmDepsHash = "sha256-BW3mW3fRXrv+TgW3q+Rc43o0q3t1ra/XUqlUSiA0hTU="; strictDeps = true; diff --git a/pkgs/by-name/cl/clouddrive2/package.nix b/pkgs/by-name/cl/clouddrive2/package.nix index 07c244cab04d..8250f96302a2 100644 --- a/pkgs/by-name/cl/clouddrive2/package.nix +++ b/pkgs/by-name/cl/clouddrive2/package.nix @@ -11,16 +11,16 @@ let in stdenv.mkDerivation (finalAttrs: { pname = "clouddrive2"; - version = "0.9.21"; + version = "0.9.22"; src = fetchurl { url = "https://github.com/cloud-fs/cloud-fs.github.io/releases/download/v${finalAttrs.version}/clouddrive-2-${os}-${arch}-${finalAttrs.version}.tgz"; hash = { - x86_64-linux = "sha256-Hvu6+5bDrq1qnxc3bCWnERd4CTzaGk8NlO4F75AKNR8="; - aarch64-linux = "sha256-2JAGvpwkEzmcElwojZpcujzTpoo+watUR1Xxog6mZRs="; - x86_64-darwin = "sha256-9/2x2zen361UxX1yw7c5xlRmLLdwao0yt0j9/By6aJc="; - aarch64-darwin = "sha256-lk6QpXPo7bZo4VoVjMxfo4ePZaFww2SJmLp2cIQiJk0="; + x86_64-linux = "sha256-bkispptxOoCKon0ZjW+U5M+kjpPDWErr3TpZKPtQxNY="; + aarch64-linux = "sha256-9yRd3982L8fRowpb+Id63CUywe1l5s8/07WmlAGt0Ig="; + x86_64-darwin = "sha256-athL8VXhj/g0FwSV2gt7DdAnrKvQ3hIp3fwxTs3Ucw0="; + aarch64-darwin = "sha256-xcW56Y4WoT86vyA+XG4vZ0HDYGIdMmQ9PYz4b7X7Q/c="; } .${stdenv.hostPlatform.system} or (throw "unsupported system ${stdenv.hostPlatform.system}"); }; diff --git a/pkgs/by-name/co/codecov-cli/package.nix b/pkgs/by-name/co/codecov-cli/package.nix index 9359c5f8734c..fe59d237e9d5 100644 --- a/pkgs/by-name/co/codecov-cli/package.nix +++ b/pkgs/by-name/co/codecov-cli/package.nix @@ -18,9 +18,11 @@ python3Packages.buildPythonApplication rec { fetchSubmodules = true; }).overrideAttrs (_: { - GIT_CONFIG_COUNT = 1; - GIT_CONFIG_KEY_0 = "url.https://github.com/.insteadOf"; - GIT_CONFIG_VALUE_0 = "git@github.com:"; + env = { + GIT_CONFIG_COUNT = 1; + GIT_CONFIG_KEY_0 = "url.https://github.com/.insteadOf"; + GIT_CONFIG_VALUE_0 = "git@github.com:"; + }; }); build-system = with python3Packages; [ setuptools ]; diff --git a/pkgs/by-name/dp/dprint/plugins/dprint-plugin-biome.nix b/pkgs/by-name/dp/dprint/plugins/dprint-plugin-biome.nix index cd93655d879b..4ae0088d3625 100644 --- a/pkgs/by-name/dp/dprint/plugins/dprint-plugin-biome.nix +++ b/pkgs/by-name/dp/dprint/plugins/dprint-plugin-biome.nix @@ -1,6 +1,6 @@ { mkDprintPlugin }: mkDprintPlugin { - description = "Biome (JS/TS) wrapper plugin"; + description = "Biome (JS/TS/JSON) wrapper plugin"; hash = "sha256-P5mAFdr+vw6ogju0Qg6E9sbuTASaZD1Wr4BHt70lCy8="; initConfig = { configExcludes = [ "**/node_modules" ]; @@ -12,6 +12,7 @@ mkDprintPlugin { "jsx" "cjs" "mjs" + "json" ]; }; pname = "dprint-plugin-biome"; diff --git a/pkgs/by-name/dp/dprint/plugins/dprint-plugin-jupyter.nix b/pkgs/by-name/dp/dprint/plugins/dprint-plugin-jupyter.nix index 3d9ddd97834b..cf6756614afc 100644 --- a/pkgs/by-name/dp/dprint/plugins/dprint-plugin-jupyter.nix +++ b/pkgs/by-name/dp/dprint/plugins/dprint-plugin-jupyter.nix @@ -1,7 +1,7 @@ { mkDprintPlugin }: mkDprintPlugin { description = "Jupyter notebook code block formatter"; - hash = "sha256-IlGwt2TnKeH9NwmUmU1keaTInXgYQVLIPNnr30A9lsM="; + hash = "sha256-7qM9MTTvvuPfx3WScO3jR0GEb8L0kHg24BJLsJYBiZg="; initConfig = { configExcludes = [ ]; configKey = "jupyter"; @@ -9,6 +9,6 @@ mkDprintPlugin { }; pname = "dprint-plugin-jupyter"; updateUrl = "https://plugins.dprint.dev/dprint/jupyter/latest.json"; - url = "https://plugins.dprint.dev/jupyter-0.2.0.wasm"; - version = "0.2.0"; + url = "https://plugins.dprint.dev/jupyter-0.2.1.wasm"; + version = "0.2.1"; } diff --git a/pkgs/by-name/dp/dprint/plugins/dprint-plugin-mago.nix b/pkgs/by-name/dp/dprint/plugins/dprint-plugin-mago.nix new file mode 100644 index 000000000000..4618fe01e116 --- /dev/null +++ b/pkgs/by-name/dp/dprint/plugins/dprint-plugin-mago.nix @@ -0,0 +1,14 @@ +{ mkDprintPlugin }: +mkDprintPlugin { + description = "Mago (PHP) wrapper plugin"; + hash = "sha256-QnQ82e+AGqVCJQiMqYOxGl9vDwnqTCu6aFRwOK39QTM="; + initConfig = { + configExcludes = [ ]; + configKey = "mago"; + fileExtensions = [ "php" ]; + }; + pname = "dprint-plugin-mago"; + updateUrl = "https://plugins.dprint.dev/dprint/mago/latest.json"; + url = "https://plugins.dprint.dev/mago-0.0.1.wasm"; + version = "0.0.1"; +} diff --git a/pkgs/by-name/dp/dprint/plugins/dprint-plugin-oxc.nix b/pkgs/by-name/dp/dprint/plugins/dprint-plugin-oxc.nix new file mode 100644 index 000000000000..847cd6fc487c --- /dev/null +++ b/pkgs/by-name/dp/dprint/plugins/dprint-plugin-oxc.nix @@ -0,0 +1,21 @@ +{ mkDprintPlugin }: +mkDprintPlugin { + description = "Oxc (JS/TS) wrapper plugin"; + hash = "sha256-BctJI87x82s3gpCovPSbGp+PfdBuYRZnXeCWWyFHpRs="; + initConfig = { + configExcludes = [ "**/node_modules" ]; + configKey = "oxc"; + fileExtensions = [ + "ts" + "tsx" + "js" + "jsx" + "cjs" + "mjs" + ]; + }; + pname = "dprint-plugin-oxc"; + updateUrl = "https://plugins.dprint.dev/dprint/oxc/latest.json"; + url = "https://plugins.dprint.dev/oxc-0.2.0.wasm"; + version = "0.2.0"; +} diff --git a/pkgs/by-name/dp/dprint/plugins/dprint-plugin-ruff.nix b/pkgs/by-name/dp/dprint/plugins/dprint-plugin-ruff.nix index d83c0588a4ff..03aa8313ac7e 100644 --- a/pkgs/by-name/dp/dprint/plugins/dprint-plugin-ruff.nix +++ b/pkgs/by-name/dp/dprint/plugins/dprint-plugin-ruff.nix @@ -1,7 +1,7 @@ { mkDprintPlugin }: mkDprintPlugin { description = "Ruff (Python) wrapper plugin"; - hash = "sha256-qT+6zPbX3KrONXshwzLoGTWRXM93VKO0lN9ycJujEDM="; + hash = "sha256-kKdkIV4QbJZ8njBd8jVhwQsi7I3+PqWT/e3ORqWV7yQ="; initConfig = { configExcludes = [ ]; configKey = "ruff"; @@ -12,6 +12,6 @@ mkDprintPlugin { }; pname = "dprint-plugin-ruff"; updateUrl = "https://plugins.dprint.dev/dprint/ruff/latest.json"; - url = "https://plugins.dprint.dev/ruff-0.6.1.wasm"; - version = "0.6.1"; + url = "https://plugins.dprint.dev/ruff-0.6.12.wasm"; + version = "0.6.12"; } diff --git a/pkgs/by-name/dp/dprint/plugins/g-plane-malva.nix b/pkgs/by-name/dp/dprint/plugins/g-plane-malva.nix index 89a3b44c0e48..e884633d88aa 100644 --- a/pkgs/by-name/dp/dprint/plugins/g-plane-malva.nix +++ b/pkgs/by-name/dp/dprint/plugins/g-plane-malva.nix @@ -1,7 +1,7 @@ { mkDprintPlugin }: mkDprintPlugin { description = "CSS, SCSS, Sass and Less formatter"; - hash = "sha256-IAIix6c9/GNDZsRk95T/rpvMh7HqFgBoq5KDVYHHOjU="; + hash = "sha256-6ioZNF6j8y0ObHbPdNrjz3eH+WMQdry4s624eTDLnX8="; initConfig = { configExcludes = [ "**/node_modules" ]; configKey = "malva"; @@ -14,6 +14,6 @@ mkDprintPlugin { }; pname = "g-plane-malva"; updateUrl = "https://plugins.dprint.dev/g-plane/malva/latest.json"; - url = "https://plugins.dprint.dev/g-plane/malva-v0.14.3.wasm"; - version = "0.14.3"; + url = "https://plugins.dprint.dev/g-plane/malva-v0.15.1.wasm"; + version = "0.15.1"; } diff --git a/pkgs/by-name/dp/dprint/plugins/g-plane-markup_fmt.nix b/pkgs/by-name/dp/dprint/plugins/g-plane-markup_fmt.nix index 633820b9ce32..79aa406a1423 100644 --- a/pkgs/by-name/dp/dprint/plugins/g-plane-markup_fmt.nix +++ b/pkgs/by-name/dp/dprint/plugins/g-plane-markup_fmt.nix @@ -1,7 +1,7 @@ { mkDprintPlugin }: mkDprintPlugin { description = "HTML, Vue, Svelte, Astro, Angular, Jinja, Twig, Nunjucks, and Vento formatter"; - hash = "sha256-TQxHIw5IXZwFA/WzIJ33ZckJNkHwW67lnh0cCGkgmrs="; + hash = "sha256-bw7cMRYmqzWYqkp7RjT+HtL5jO6+GW9h/yOGQmw+bbU="; initConfig = { configExcludes = [ ]; configKey = "markup"; @@ -19,6 +19,6 @@ mkDprintPlugin { }; pname = "g-plane-markup_fmt"; updateUrl = "https://plugins.dprint.dev/g-plane/markup_fmt/latest.json"; - url = "https://plugins.dprint.dev/g-plane/markup_fmt-v0.24.0.wasm"; - version = "0.24.0"; + url = "https://plugins.dprint.dev/g-plane/markup_fmt-v0.25.3.wasm"; + version = "0.25.3"; } diff --git a/pkgs/by-name/dp/dprint/plugins/g-plane-pretty_yaml.nix b/pkgs/by-name/dp/dprint/plugins/g-plane-pretty_yaml.nix index 7667e46621f3..3e48919f84fe 100644 --- a/pkgs/by-name/dp/dprint/plugins/g-plane-pretty_yaml.nix +++ b/pkgs/by-name/dp/dprint/plugins/g-plane-pretty_yaml.nix @@ -1,7 +1,7 @@ { mkDprintPlugin }: mkDprintPlugin { description = "YAML formatter"; - hash = "sha256-iSh5SRrjQB1hJoKkkup7R+Durcu+cxePa7GDVjwnexU="; + hash = "sha256-QKL92nBAMX6xsjUg86AHaaVXHu2wScTKkXXBue66Aa4="; initConfig = { configExcludes = [ ]; configKey = "yaml"; @@ -12,6 +12,6 @@ mkDprintPlugin { }; pname = "g-plane-pretty_yaml"; updateUrl = "https://plugins.dprint.dev/g-plane/pretty_yaml/latest.json"; - url = "https://plugins.dprint.dev/g-plane/pretty_yaml-v0.5.1.wasm"; - version = "0.5.1"; + url = "https://plugins.dprint.dev/g-plane/pretty_yaml-v0.6.0.wasm"; + version = "0.6.0"; } diff --git a/pkgs/by-name/dy/dylib/package.nix b/pkgs/by-name/dy/dylib/package.nix new file mode 100644 index 000000000000..c53697d7712c --- /dev/null +++ b/pkgs/by-name/dy/dylib/package.nix @@ -0,0 +1,36 @@ +{ + lib, + stdenv, + fetchFromGitHub, + cmake, + nix-update-script, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "dylib"; + version = "3.0.1"; + + src = fetchFromGitHub { + owner = "martin-olivier"; + repo = "dylib"; + tag = "v${finalAttrs.version}"; + hash = "sha256-Ub45d7KDcN0d/3CXgvyZoLQfHM72m1p4ggvF9ibR9No="; + }; + + nativeBuildInputs = [ cmake ]; + + cmakeFlags = [ + "-DDYLIB_BUILD_TESTS=OFF" + ]; + + passthru.updateScript = nix-update-script { }; + + meta = { + description = "C++ cross-platform wrapper around dynamic loading of shared libraries"; + homepage = "https://github.com/martin-olivier/dylib"; + changelog = "https://github.com/martin-olivier/dylib/releases/tag/v${finalAttrs.version}"; + license = lib.licenses.mit; + platforms = lib.platforms.unix ++ lib.platforms.windows; + maintainers = with lib.maintainers; [ ZZBaron ]; + }; +}) diff --git a/pkgs/by-name/fl/fleet/package.nix b/pkgs/by-name/fl/fleet/package.nix index 1b3feb13c58c..06758d436709 100644 --- a/pkgs/by-name/fl/fleet/package.nix +++ b/pkgs/by-name/fl/fleet/package.nix @@ -12,12 +12,12 @@ }: let pname = "fleet"; - version = "4.78.1"; + version = "4.78.3"; src = fetchFromGitHub { owner = "fleetdm"; repo = "fleet"; tag = "fleet-v${version}"; - hash = "sha256-3F9vzY1JAw2DMzUhMl7j9I8RGjVXulQH2JcYCFuAwDY="; + hash = "sha256-aNd1oZ1xRt91xUvHUjjja6USdr0KKNa4MKuB/STK4nI="; }; frontend = stdenvNoCC.mkDerivation { @@ -54,7 +54,7 @@ in buildGoModule (finalAttrs: { inherit pname version src; - vendorHash = "sha256-EwPbZLcqJV5J7ieoQwAJLIn4wwMlwZoTtWaXgvY3pR0="; + vendorHash = "sha256-iNEIYKsF6dgZLL1iXy9a+U0BrB18CwfLaEZyNEVchFU="; subPackages = [ "cmd/fleet" diff --git a/pkgs/by-name/gh/ghost/package.nix b/pkgs/by-name/gh/ghost/package.nix index 1ee042d1cd63..459194c3816b 100644 --- a/pkgs/by-name/gh/ghost/package.nix +++ b/pkgs/by-name/gh/ghost/package.nix @@ -4,26 +4,25 @@ python3, }: -python3.pkgs.buildPythonApplication rec { +python3.pkgs.buildPythonApplication (finalAttrs: { pname = "ghost"; - version = "8.0.0"; + version = "8.0.0-unstable-2025-11-01"; pyproject = true; - disabled = python3.pythonOlder "3.7"; - src = fetchFromGitHub { owner = "EntySec"; repo = "Ghost"; - rev = version; - sha256 = "13p3inw7v55na8438awr692v9vb7zgf5ggxpha9r3m8vfm3sb4iz"; + rev = "bf38c7e62e510caa1229e797ca3276e426235b03"; + hash = "sha256-c1mcx5mG45Rm/oJ+XFCo5uJqcqPQGgZnxRs7OcU8q+0="; }; - build-system = with python3.pkgs; [ - setuptools - ]; + build-system = with python3.pkgs; [ setuptools ]; dependencies = with python3.pkgs; [ adb-shell + badges + colorscript + pex-entysec ]; # Project has no tests @@ -33,9 +32,9 @@ python3.pkgs.buildPythonApplication rec { meta = { description = "Android post-exploitation framework"; - mainProgram = "ghost"; homepage = "https://github.com/EntySec/ghost"; - license = with lib.licenses; [ mit ]; + license = lib.licenses.mit; maintainers = with lib.maintainers; [ fab ]; + mainProgram = "ghost"; }; -} +}) diff --git a/pkgs/by-name/go/goconvey/package.nix b/pkgs/by-name/go/goconvey/package.nix index f30afb956c40..8b2d69f3bbf4 100644 --- a/pkgs/by-name/go/goconvey/package.nix +++ b/pkgs/by-name/go/goconvey/package.nix @@ -1,10 +1,13 @@ { lib, - buildGoModule, fetchFromGitHub, + # Build fails with Go 1.25, with the following error: + # 'vendor/golang.org/x/tools/internal/tokeninternal/tokeninternal.go:64:9: invalid array length -delta * delta (constant -256 of type int64)' + # Wait for upstream to update their vendored dependencies before unpinning. + buildGo124Module, }: -buildGoModule { +buildGo124Module { pname = "goconvey"; version = "1.8.1-unstable-2024-03-06"; diff --git a/pkgs/by-name/gr/grap/package.nix b/pkgs/by-name/gr/grap/package.nix index b51ce8452a0c..3115c362ac7f 100644 --- a/pkgs/by-name/gr/grap/package.nix +++ b/pkgs/by-name/gr/grap/package.nix @@ -50,6 +50,9 @@ python3Packages.buildPythonApplication rec { ]; postPatch = '' + substituteInPlace src/CMakeLists.txt \ + --replace-fail "cmake_minimum_required(VERSION 2.8)" "cmake_minimum_required(VERSION 3.10)" + substituteInPlace src/tools/grap-match/CMakeLists.txt --replace-fail "/usr/local/bin" "$out/bin" substituteInPlace src/tools/grap/CMakeLists.txt --replace-fail "/usr/local/bin" "$out/bin" @@ -61,7 +64,7 @@ python3Packages.buildPythonApplication rec { postInstall = '' cd $out/${python3Packages.python.sitePackages} - mv pygrap.so _pygrap.so + substituteInPlace pygrap.py \ --replace-fail "import imp" "import importlib" \ --replace-fail "imp." "importlib." diff --git a/pkgs/by-name/la/lasuite-meet-frontend/package.nix b/pkgs/by-name/la/lasuite-meet-frontend/package.nix index 128ff921c6de..1c9f662e4be4 100644 --- a/pkgs/by-name/la/lasuite-meet-frontend/package.nix +++ b/pkgs/by-name/la/lasuite-meet-frontend/package.nix @@ -7,13 +7,13 @@ buildNpmPackage rec { pname = "lasuite-meet-frontend"; - version = "1.1.0"; + version = "1.3.0"; src = fetchFromGitHub { owner = "suitenumerique"; repo = "meet"; tag = "v${version}"; - hash = "sha256-wa0KhS/UeFbw9fJVuFLIPtsLaC5+7Euaew8n6p2jC5Q="; + hash = "sha256-YjGceElLsbq6aCs3iC69xVj85WTHVqs9AC5lHpi2SJY="; }; sourceRoot = "source/src/frontend"; @@ -21,7 +21,7 @@ buildNpmPackage rec { npmDeps = fetchNpmDeps { inherit version src; sourceRoot = "source/src/frontend"; - hash = "sha256-aAIsdEmPbRhKFyN3O/zmO5hkhAXWbEMnr6i/r2sLrjU="; + hash = "sha256-2Lbq7fBfs8szAh+0ylLRRDuGpIXuOaDDO/Q/ziwaG6k="; }; buildPhase = '' diff --git a/pkgs/by-name/la/lasuite-meet/package.nix b/pkgs/by-name/la/lasuite-meet/package.nix index f723057b35c2..4498801eb593 100644 --- a/pkgs/by-name/la/lasuite-meet/package.nix +++ b/pkgs/by-name/la/lasuite-meet/package.nix @@ -13,14 +13,14 @@ in python.pkgs.buildPythonApplication rec { pname = "lasuite-meet"; - version = "1.1.0"; + version = "1.3.0"; pyproject = true; src = fetchFromGitHub { owner = "suitenumerique"; repo = "meet"; tag = "v${version}"; - hash = "sha256-wa0KhS/UeFbw9fJVuFLIPtsLaC5+7Euaew8n6p2jC5Q="; + hash = "sha256-YjGceElLsbq6aCs3iC69xVj85WTHVqs9AC5lHpi2SJY="; }; sourceRoot = "source/src/backend"; diff --git a/pkgs/by-name/li/librttopo/package.nix b/pkgs/by-name/li/librttopo/package.nix index 030b3f17ab8c..4a62d6d9e24e 100644 --- a/pkgs/by-name/li/librttopo/package.nix +++ b/pkgs/by-name/li/librttopo/package.nix @@ -17,11 +17,11 @@ stdenv.mkDerivation rec { ]; src = fetchFromGitea { - domain = "git.osgeo.org/gitea"; + domain = "git.osgeo.org"; owner = "rttopo"; repo = "librttopo"; rev = "librttopo-${version}"; - sha256 = "0h7lzlkn9g4xky6h81ndy0aa6dxz8wb6rnl8v3987jy1i6pr072p"; + hash = "sha256-VxyQr4nBy4PS2IjabBZHvzejFPDNBgSNn528ZCf99EA="; }; nativeBuildInputs = [ @@ -39,7 +39,7 @@ stdenv.mkDerivation rec { meta = { description = "RT Topology Library"; - homepage = "https://git.osgeo.org/gitea/rttopo/librttopo"; + homepage = "https://git.osgeo.org/rttopo/librttopo"; license = lib.licenses.gpl2Plus; maintainers = with lib.maintainers; [ dotlambda ]; teams = [ lib.teams.geospatial ]; diff --git a/pkgs/by-name/mi/mise/package.nix b/pkgs/by-name/mi/mise/package.nix index 22fae8337576..d7f84db6bf1f 100644 --- a/pkgs/by-name/mi/mise/package.nix +++ b/pkgs/by-name/mi/mise/package.nix @@ -22,16 +22,16 @@ rustPlatform.buildRustPackage rec { pname = "mise"; - version = "2026.1.1"; + version = "2026.1.2"; src = fetchFromGitHub { owner = "jdx"; repo = "mise"; rev = "v${version}"; - hash = "sha256-z2sk7g0XleaV83udcxqvlyqit3NPcqbcttN6Zo9asdI="; + hash = "sha256-CMDspsChrfGcraITzjoBbtMYy9MrGgLL62JtM46s0no="; }; - cargoHash = "sha256-zau4N7TsgcKmG5AUdUm1WL3AKqT7d8CqTnjnUgqYDvU="; + cargoHash = "sha256-HJ/tm3FPtuPkUzvkureXVFhUWc5qPqq1BAPtOCl7R5E="; nativeBuildInputs = [ installShellFiles diff --git a/pkgs/by-name/na/nakama/package.nix b/pkgs/by-name/na/nakama/package.nix index 4158e19de7a9..58ef33c0152c 100644 --- a/pkgs/by-name/na/nakama/package.nix +++ b/pkgs/by-name/na/nakama/package.nix @@ -6,13 +6,13 @@ buildGoModule rec { pname = "nakama"; - version = "3.35.1"; + version = "3.36.0"; src = fetchFromGitHub { owner = "heroiclabs"; repo = "nakama"; tag = "v${version}"; - hash = "sha256-CntKCWfhK6UjM7NWdzhHfpbll693vmFxgsyoaxyyCQs="; + hash = "sha256-QPp9VnPh4pP9k7Ee7ydl67wpA13lIVSjkTT3r2qqp14="; }; vendorHash = null; diff --git a/pkgs/by-name/na/nauty/package.nix b/pkgs/by-name/na/nauty/package.nix index 06566a3de0f6..90b9995cd802 100644 --- a/pkgs/by-name/na/nauty/package.nix +++ b/pkgs/by-name/na/nauty/package.nix @@ -5,13 +5,13 @@ }: stdenv.mkDerivation rec { pname = "nauty"; - version = "2.9.1"; + version = "2.9.3"; src = fetchurl { url = "https://pallini.di.uniroma1.it/nauty${ builtins.replaceStrings [ "." ] [ "_" ] version }.tar.gz"; - sha256 = "sha256-SI+pBtEKNyxy0jZMXe5I4PcwcAT75SwrzlDFLejNhz4="; + sha256 = "sha256-n8TtrgT4ig9Yg5hb47Oc9/iY/WzJbpa57iVFJ0PMG1s="; }; outputs = [ @@ -19,10 +19,8 @@ stdenv.mkDerivation rec { "dev" ]; - # HACK: starting from 2.8.9, the makefile tries to copy .libs/*.a files unconditionally - dontDisableStatic = true; - configureFlags = [ + "--libdir=${placeholder "dev"}/lib" # Prevent nauty from sniffing some cpu features. While those are very # widely available, it can lead to nasty bugs when they are not available: # https://groups.google.com/forum/#!topic/sage-packaging/Pe4SRDNYlhA @@ -31,20 +29,12 @@ stdenv.mkDerivation rec { "--${if stdenv.hostPlatform.sse4_aSupport then "enable" else "disable"}-clz" ]; - installPhase = '' - mkdir -p "$out"/{bin,share/doc/nauty} "$dev"/{lib,include/nauty} - - find . -type f -perm -111 \! -name '*.*' \! -name configure -exec cp '{}' "$out/bin" \; + postInstall = '' + mkdir -p "$out/share/doc/nauty" "$dev/include/nauty" cp [Rr][Ee][Aa][Dd]* COPYRIGHT This* [Cc]hange* "$out/share/doc/nauty" - cp *.h "$dev/include/nauty" - for i in *.a; do - cp "$i" "$dev/lib/lib$i"; - done ''; - checkTarget = "checks"; - meta = { description = "Programs for computing automorphism groups of graphs and digraphs"; license = lib.licenses.asl20; diff --git a/pkgs/by-name/nt/ntfy-sh/package.nix b/pkgs/by-name/nt/ntfy-sh/package.nix index 0a437fd65e31..084dd0497bc0 100644 --- a/pkgs/by-name/nt/ntfy-sh/package.nix +++ b/pkgs/by-name/nt/ntfy-sh/package.nix @@ -17,7 +17,7 @@ buildGoModule ( ui = buildNpmPackage { inherit (finalAttrs) src version; pname = "ntfy-sh-ui"; - npmDepsHash = "sha256-LmEJ7JuaAdjB816VspVXAQC+I46lpNAjwfLTxeNeLPc="; + npmDepsHash = "sha256-VxGNZgAp+w3vl6XaqUmkew2JYOgwiymInUwiyZ6/Gvs="; prePatch = '' cd web/ @@ -37,16 +37,16 @@ buildGoModule ( in { pname = "ntfy-sh"; - version = "2.14.0"; + version = "2.15.0"; src = fetchFromGitHub { owner = "binwiederhier"; repo = "ntfy"; tag = "v${finalAttrs.version}"; - hash = "sha256-8BqJ2/u+g5P68ekYu/ztzjdQ91c8dIazeNdLRFpqVy0="; + hash = "sha256-vQ6cugoPLtuYqpZRj9gOR0x3+vOTRAkcBnkUyA6qmMw="; }; - vendorHash = "sha256-3adQNZ2G0wKW3aV+gsGo/il6NsrIhGPbI7P4elWrKZQ="; + vendorHash = "sha256-7oFBD3FblGXZRyfvd2t9s3sKbmCB1L+IkeN83IjnGUk="; doCheck = false; diff --git a/pkgs/by-name/nu/numr/package.nix b/pkgs/by-name/nu/numr/package.nix index b805bdb4aeee..c077b0507361 100644 --- a/pkgs/by-name/nu/numr/package.nix +++ b/pkgs/by-name/nu/numr/package.nix @@ -11,16 +11,16 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "numr"; - version = "0.4.0"; + version = "0.4.1"; src = fetchFromGitHub { owner = "nasedkinpv"; repo = "numr"; rev = "v${finalAttrs.version}"; - hash = "sha256-S/0xpxJAOHAZu3bLk3fzBWlfhmvxSmJcHOPnQqFj7Ww="; + hash = "sha256-ULe9jrfQaHnW3o7qf+WfKS5/dxL5lWQlXvYuPnZkPbY="; }; - cargoHash = "sha256-e2o2HFnXgFG+aprl/PLMAd2KskMsOGwhjEdoHWgBuAE="; + cargoHash = "sha256-4YwGwjin13tr1t1YEmsBSOZdFAtrppy0ZxqVrbNCoJk="; nativeBuildInputs = [ pkg-config diff --git a/pkgs/by-name/pd/pdns-recursor/package.nix b/pkgs/by-name/pd/pdns-recursor/package.nix index 30bdb7190cad..7ea8528413d4 100644 --- a/pkgs/by-name/pd/pdns-recursor/package.nix +++ b/pkgs/by-name/pd/pdns-recursor/package.nix @@ -20,11 +20,11 @@ stdenv.mkDerivation (finalAttrs: { pname = "pdns-recursor"; - version = "5.2.6"; + version = "5.2.7"; src = fetchurl { url = "https://downloads.powerdns.com/releases/pdns-recursor-${finalAttrs.version}.tar.bz2"; - hash = "sha256-INt/KcULGvsensXF6LIZ0RKtrPK4rPPaQW/yR+JaxAc="; + hash = "sha256-s7/I2M5uL94I71fMYLKl+JcOPn0TnVn74oaIKnYmObE="; }; cargoDeps = rustPlatform.fetchCargoVendor { diff --git a/pkgs/by-name/pl/pleroma/package.nix b/pkgs/by-name/pl/pleroma/package.nix index e9d07ffe1355..0a05709893d2 100644 --- a/pkgs/by-name/pl/pleroma/package.nix +++ b/pkgs/by-name/pl/pleroma/package.nix @@ -126,6 +126,14 @@ beamPackages.mixRelease rec { syslog = prev.syslog.override { buildPlugins = with beamPackages; [ pc ]; }; vix = prev.vix.override { + # TOREMOVE override when upstream bumps the dependency. See + # https://git.pleroma.social/pleroma/pleroma/-/issues/3393 + src = fetchFromGitHub { + owner = "akash-akya"; + repo = "vix"; + tag = "v0.36.0"; + hash = "sha256-14gqzu5TBbgrqCU4+qz0jWCK6Ar5JvmKKLcfgz5BHtw="; + }; nativeBuildInputs = [ pkg-config ]; buildInputs = [ vips diff --git a/pkgs/by-name/pr/primecount/package.nix b/pkgs/by-name/pr/primecount/package.nix index d60d18637160..e5381b4e5ad6 100644 --- a/pkgs/by-name/pr/primecount/package.nix +++ b/pkgs/by-name/pr/primecount/package.nix @@ -9,13 +9,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "primecount"; - version = "7.20"; + version = "8.0"; src = fetchFromGitHub { owner = "kimwalisch"; repo = "primecount"; rev = "v${finalAttrs.version}"; - hash = "sha256-rM+c1CDD75bRqvUMI8Ej02nSqkweR8+E4Wpag7mJcM4="; + hash = "sha256-EogWQWbAlLlhaIMZck9fzqv9XPJRbSe2zUtKU6xCZvU="; }; outputs = [ diff --git a/pkgs/by-name/pr/procyon/package.nix b/pkgs/by-name/pr/procyon/package.nix index f143df9d3f23..51e70d41c56f 100644 --- a/pkgs/by-name/pr/procyon/package.nix +++ b/pkgs/by-name/pr/procyon/package.nix @@ -1,39 +1,73 @@ { lib, stdenv, - fetchurl, - runtimeShell, - jre_headless, + fetchFromGitHub, + makeShellWrapper, + jdk_headless, + jre_minimal, + gradle, }: +let + jre = jre_minimal.override { + modules = [ + "java.base" + "java.compiler" + "java.logging" + ]; + }; + jcommander-src = fetchFromGitHub { + owner = "cbeust"; + repo = "jcommander"; + tag = "1.78"; + hash = "sha256-zoPymohdU8HhVmw7ACoPbgNGgzdsIDVD3bl7Fh3qf2g="; + }; +in + stdenv.mkDerivation rec { pname = "procyon"; version = "0.6.0"; - src = fetchurl { - url = "https://github.com/mstrobel/procyon/releases/download/v${version}/procyon-decompiler-${version}.jar"; - sha256 = "sha256-gh2pYBL8aSRPoeopjJBFXuTgIUNLx5bTuVRqskYBt3k="; + src = fetchFromGitHub { + owner = "mstrobel"; + repo = "procyon"; + tag = "v${version}"; + hash = "sha256-l8+eEdJtneZY1s6rvh9h87XwL7ioU3Y9T64CH7LdjXo="; }; - dontUnpack = true; + postPatch = '' + sed -i build.gradle \ + -e '/subprojects {/,/^}/d' \ + -e '/uploadArchives/d' \ + -e "/'maven'/d" \ + -e '/sourceCompatibility/d' + sed -i -e 's/compile /implementation /' -e 's/testCompile/testImplementation/' {.,*}/build.gradle + sed -i Procyon.Decompiler/build.gradle \ + -e '/uploadArchives/d' \ + -e 's/configurations.compile/configurations.runtimeClasspath/' \ + -e "/jcommander/d" + cp -a ${jcommander-src}/src Procyon.Decompiler + ''; + + nativeBuildInputs = [ + jdk_headless + gradle + makeShellWrapper + ]; installPhase = '' mkdir -p $out/bin $out/share/procyon - cp $src $out/share/procyon/procyon-decompiler.jar + mv build/Procyon.Decompiler/libs/Procyon.Decompiler-${version}.jar $out/share/procyon/procyon-decompiler.jar - cat << EOF > $out/bin/procyon - #!${runtimeShell} - exec ${jre_headless}/bin/java -jar $out/share/procyon/procyon-decompiler.jar "\$@" - EOF - chmod +x $out/bin/procyon + makeWrapper ${jre}/bin/java $out/bin/procyon \ + --add-flags "-jar $out/share/procyon/procyon-decompiler.jar" ''; meta = { description = "Suite of Java metaprogramming tools including a Java decompiler"; - sourceProvenance = with lib.sourceTypes; [ binaryBytecode ]; homepage = "https://github.com/mstrobel/procyon/"; license = lib.licenses.asl20; - maintainers = [ ]; + maintainers = with lib.maintainers; [ linsui ]; mainProgram = "procyon"; }; } diff --git a/pkgs/by-name/py/pylode/package.nix b/pkgs/by-name/py/pylode/package.nix index 099007f6a661..9fb7c9c8cdf5 100644 --- a/pkgs/by-name/py/pylode/package.nix +++ b/pkgs/by-name/py/pylode/package.nix @@ -4,45 +4,42 @@ fetchFromGitHub, }: -python3.pkgs.buildPythonApplication rec { +python3.pkgs.buildPythonApplication (finalAttrs: { pname = "pylode"; - version = "2.13.3"; + version = "3.2.1"; pyproject = true; src = fetchFromGitHub { owner = "RDFLib"; repo = "pylode"; - tag = version; - sha256 = "sha256-AtqkxnpEL+580S/iKCaRcsQO6LLYhkJxyNx6fi3atbE="; + tag = finalAttrs.version; + hash = "sha256-X12rcXvFvMB5tZ3WtfCE+yb8mhed9FnscjiTmMcSyV4="; }; - build-system = with python3.pkgs; [ setuptools ]; + pythonRelaxDeps = [ "rdflib" ]; + + build-system = with python3.pkgs; [ poetry-core ]; dependencies = with python3.pkgs; [ beautifulsoup4 - falcon - jinja2 + dominate + html5lib + httpx markdown - python-dateutil rdflib - requests ]; - pythonRelaxDeps = [ "rdflib" ]; - # Path issues with the tests doCheck = false; - pythonImportsCheck = [ - "pylode" - ]; + pythonImportsCheck = [ "pylode" ]; meta = { description = "OWL ontology documentation tool using Python and templating, based on LODE"; homepage = "https://github.com/RDFLib/pyLODE"; - # Next release will move to BSD3 - license = lib.licenses.gpl3Only; + changelog = "https://github.com/RDFLib/pyLODE/releases/tag/${finalAttrs.src.tag}"; + license = lib.licenses.bsd3; maintainers = with lib.maintainers; [ koslambrou ]; mainProgram = "pylode"; }; -} +}) diff --git a/pkgs/by-name/qd/qdelay/package.nix b/pkgs/by-name/qd/qdelay/package.nix index a3fb8ba2f499..a7f27131a3a9 100644 --- a/pkgs/by-name/qd/qdelay/package.nix +++ b/pkgs/by-name/qd/qdelay/package.nix @@ -20,14 +20,14 @@ stdenv.mkDerivation (finalAttrs: { pname = "qdelay"; - version = "1.0.5"; + version = "1.0.6"; src = fetchFromGitHub { owner = "tiagolr"; repo = "qdelay"; tag = "v${finalAttrs.version}"; fetchSubmodules = true; - hash = "sha256-aPWGqr87ymZSofXa4YKGC7GOE5eB7qSuy9+6OPJl1vE="; + hash = "sha256-2fu2eF1SjM1qSwKx/oEAx6EWNbNZ8VeJrtnmvxm/0yU="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/re/renode-dts2repl/package.nix b/pkgs/by-name/re/renode-dts2repl/package.nix index 0b637b6de1e7..84bbf1aab535 100644 --- a/pkgs/by-name/re/renode-dts2repl/package.nix +++ b/pkgs/by-name/re/renode-dts2repl/package.nix @@ -7,14 +7,14 @@ python3.pkgs.buildPythonApplication { pname = "renode-dts2repl"; - version = "0-unstable-2026-01-07"; + version = "0-unstable-2026-01-12"; pyproject = true; src = fetchFromGitHub { owner = "antmicro"; repo = "dts2repl"; - rev = "1b072467e75464dc6171825e0ca44a2ffdb791a7"; - hash = "sha256-ctPp1B4pZSMBWjqtfOq6hqLvisrXyppvTiKXPrI94No="; + rev = "b47b972dff8a835be2999cab8cd167d8778ce53a"; + hash = "sha256-34BEX7WaFZJVNeXxfPr6V6MGiqrIJ/Wdal8iwQkr4tQ="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/sc/sccache/package.nix b/pkgs/by-name/sc/sccache/package.nix index 342987717c17..392f5743d1c5 100644 --- a/pkgs/by-name/sc/sccache/package.nix +++ b/pkgs/by-name/sc/sccache/package.nix @@ -8,17 +8,17 @@ }: rustPlatform.buildRustPackage (finalAttrs: { - version = "0.12.0"; + version = "0.13.0"; pname = "sccache"; src = fetchFromGitHub { owner = "mozilla"; repo = "sccache"; rev = "v${finalAttrs.version}"; - sha256 = "sha256-QNLcA31SJf7XmxYvzDC5LCKVu5ZWiw7U249KjUAGIZw="; + sha256 = "sha256-3NdqnK1/vs2Z3SnLDzJBP69E+okqVZaI6dZHEylgcPU="; }; - cargoHash = "sha256-tJGGS6Zpsz9nye2VKdZRuFeeqJ71MsXn3C9ytqeEW5I="; + cargoHash = "sha256-aC1FXjE6aj1YUIyXoTIjFHJfTtK40ZaXOl4uV/IgqMs="; buildFeatures = lib.optionals distributed [ "dist-client" diff --git a/pkgs/by-name/se/seanime/default-disable-update-check.patch b/pkgs/by-name/se/seanime/default-disable-update-check.patch new file mode 100644 index 000000000000..a7dbad448dd2 --- /dev/null +++ b/pkgs/by-name/se/seanime/default-disable-update-check.patch @@ -0,0 +1,13 @@ +diff --git a/src/lib/server/settings.ts b/src/lib/server/settings.ts +index c28f466..4555e90 100644 +--- a/src/lib/server/settings.ts ++++ b/src/lib/server/settings.ts +@@ -65,7 +65,7 @@ export const settingsSchema = z.object({ + transmissionPassword: z.string().optional().default(""), + hideAudienceScore: z.boolean().optional().default(false), + autoUpdateProgress: z.boolean().optional().default(false), +- disableUpdateCheck: z.boolean().optional().default(false), ++ disableUpdateCheck: z.boolean().optional().default(true), + enableOnlinestream: z.boolean().optional().default(false), + includeOnlineStreamingInLibrary: z.boolean().optional().default(false), + disableAnimeCardTrailers: z.boolean().optional().default(false), diff --git a/pkgs/by-name/se/seanime/package.nix b/pkgs/by-name/se/seanime/package.nix new file mode 100644 index 000000000000..08cfac41dc4f --- /dev/null +++ b/pkgs/by-name/se/seanime/package.nix @@ -0,0 +1,91 @@ +{ + lib, + fetchFromGitHub, + buildGoModule, + buildNpmPackage, + inter, + ffmpeg, +}: +let + version = "3.3.0"; + src = fetchFromGitHub { + owner = "5rahim"; + repo = "seanime"; + rev = "v${version}"; + hash = "sha256-AsRbT4P4B8uWyCtoET14pqqXjkZraoPPih6waiuHVso="; + }; + + seanime-web = buildNpmPackage { + pname = "seanime-web"; + + inherit src version; + + sourceRoot = "${src.name}/seanime-web"; + + patches = [ ./default-disable-update-check.patch ]; + + npmDepsHash = "sha256-rRgp8nXuRvCSOLo040i4ZL+0GCYkEEnkxpgwqDBt/EY="; + + # nextjs seems to require relative paths + postPatch = '' + cp "${inter}/share/fonts/truetype/InterVariable.ttf" src/app/Inter.ttf + + substituteInPlace ./src/app/layout.tsx \ + --replace-fail 'import { Inter } from "next/font/google"' 'import localFont from "next/font/local"' \ + --replace-fail 'const inter = Inter({ subsets: ["latin"] })' 'const inter = localFont({ src: "./Inter.ttf" })' + + substituteInPlace './src/app/(main)/entry/_containers/torrent-stream/torrent-stream-overlay.tsx' \ + --replace-fail 'import { Inter } from "next/font/google"' 'import localFont from "next/font/local"' \ + --replace-fail 'const inter = Inter({ subsets: ["latin"] })' 'const inter = localFont({ src: "../../../../Inter.ttf" })' + ''; + + installPhase = '' + runHook preInstall + + mkdir -p $out + cp -r out $out/web + + runHook postInstall + ''; + }; +in +buildGoModule { + pname = "seanime"; + + inherit src version; + + vendorHash = "sha256-6KM3fGpK78wRnP+PKSY/NKexzz/3WxBDRkhnQzoE5KY="; + + preBuild = '' + cp -r ${seanime-web}/web . + + # .github scripts redeclare main + rm -rf .github + ''; + + subPackages = [ "." ]; + + doCheck = false; # broken in clean environments + + ldflags = [ + "-s" + "-w" + ]; + + makeWrapperArgs = [ + "--prefix PATH : ${ + lib.makeBinPath [ + ffmpeg + ] + }" + ]; + + meta = { + description = "Open-source media server for anime and manga"; + homepage = "https://seanime.app"; + changelog = "https://github.com/5rahim/seanime/blob/main/CHANGELOG.md"; + mainProgram = "seanime"; + license = lib.licenses.gpl3; + maintainers = with lib.maintainers; [ thegu5 ]; + }; +} diff --git a/pkgs/by-name/sh/shot-scraper/package.nix b/pkgs/by-name/sh/shot-scraper/package.nix index 4818f015a263..d8be38b4bca6 100644 --- a/pkgs/by-name/sh/shot-scraper/package.nix +++ b/pkgs/by-name/sh/shot-scraper/package.nix @@ -4,19 +4,24 @@ fetchFromGitHub, }: -python3.pkgs.buildPythonApplication rec { +python3.pkgs.buildPythonApplication (finalAttrs: { pname = "shot-scraper"; - version = "1.8"; + version = "1.9"; pyproject = true; src = fetchFromGitHub { owner = "simonw"; repo = "shot-scraper"; - tag = version; - hash = "sha256-CSV9HOqVMHI/L+jyMTdaDyc6ACyGIkG/mmcyRza6EjQ="; + tag = finalAttrs.version; + hash = "sha256-HIiUZZz2/EqTdaCtiaqVaJfbRwkoYL8H6XHaIYP0R6M="; }; - build-system = with python3.pkgs; [ setuptools ]; + postPatch = '' + substituteInPlace pyproject.toml \ + --replace-fail "uv_build>=0.9.18,<0.10.0" "uv_build" + ''; + + build-system = with python3.pkgs; [ uv-build ]; dependencies = with python3.pkgs; [ click @@ -28,16 +33,14 @@ python3.pkgs.buildPythonApplication rec { # skip tests due to network access doCheck = false; - pythonImportsCheck = [ - "shot_scraper" - ]; + pythonImportsCheck = [ "shot_scraper" ]; meta = { description = "Command-line utility for taking automated screenshots of websites"; homepage = "https://github.com/simonw/shot-scraper"; - changelog = "https://github.com/simonw/shot-scraper/releases/tag/${src.tag}"; + changelog = "https://github.com/simonw/shot-scraper/releases/tag/${finalAttrs.src.tag}"; license = lib.licenses.asl20; maintainers = with lib.maintainers; [ techknowlogick ]; mainProgram = "shot-scraper"; }; -} +}) diff --git a/pkgs/by-name/sp/spotify-player/package.nix b/pkgs/by-name/sp/spotify-player/package.nix index db28c6ec4100..5de78739039b 100644 --- a/pkgs/by-name/sp/spotify-player/package.nix +++ b/pkgs/by-name/sp/spotify-player/package.nix @@ -49,16 +49,16 @@ assert lib.assertOneOf "withAudioBackend" withAudioBackend [ rustPlatform.buildRustPackage rec { pname = "spotify-player"; - version = "0.21.2"; + version = "0.21.3"; src = fetchFromGitHub { owner = "aome510"; repo = "spotify-player"; tag = "v${version}"; - hash = "sha256-2LOsFcFZRdgH4TqtmVDqf8dxsPwZVQKsQbjyuDHwP/4="; + hash = "sha256-0kc7OIno0BQ2Kcvi0keelKr1R7+vlAWYBjsYVD3jTf8="; }; - cargoHash = "sha256-JgPf68KpRE8z+2webU99cR0+6xmaplcVwgFcgvHiwrs="; + cargoHash = "sha256-KPo2VY7sdOhBiKKvfQVfbTtah5F0Sc6of4Y2xfJ1frU="; nativeBuildInputs = [ pkg-config @@ -139,6 +139,7 @@ rustPlatform.buildRustPackage rec { xyven1 _71zenith caperren + mattkang ]; }; } diff --git a/pkgs/by-name/tu/turbo-unwrapped/package.nix b/pkgs/by-name/tu/turbo-unwrapped/package.nix index 4f42e006eece..f710d42d58e8 100644 --- a/pkgs/by-name/tu/turbo-unwrapped/package.nix +++ b/pkgs/by-name/tu/turbo-unwrapped/package.nix @@ -18,16 +18,16 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "turbo-unwrapped"; - version = "2.6.1"; + version = "2.7.3"; src = fetchFromGitHub { owner = "vercel"; repo = "turborepo"; tag = "v${finalAttrs.version}"; - hash = "sha256-NQjN3u+xTQkU9cenBTHRwGyMsy8Sm1xbHckaq/DYHJk="; + hash = "sha256-DLe3gCMSSB8464DAKnzDk6iJVVL2yL02+1sUOGbdGxI="; }; - cargoHash = "sha256-ear1NoKgOOiC0wvbzrhxh0t23m0Bl5AtcKi0DmVw3f8="; + cargoHash = "sha256-1M0EGZIiYkQcEByKZFRVEfWDp9Yb/kHr/VijRFNronk="; nativeBuildInputs = [ capnproto diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix index edc6421159f9..e9c4be1d03b3 100644 --- a/pkgs/development/haskell-modules/configuration-common.nix +++ b/pkgs/development/haskell-modules/configuration-common.nix @@ -3777,13 +3777,13 @@ with haskellLib; # Manually maintained // ( let - version = "1.9.1"; + version = "1.10.1"; src = pkgs.fetchFromGitHub { owner = "cachix"; repo = "cachix"; tag = "v${version}"; - hash = "sha256-IwnNtbNVrlZIHh7h4Wz6VP0Furxg9Hh0ycighvL5cZc="; + hash = "sha256-kNwoplCrqAymyFIzoR1rpEj0I1Ass+wuP8YsVS61630="; }; in { diff --git a/pkgs/development/python-modules/badges/default.nix b/pkgs/development/python-modules/badges/default.nix new file mode 100644 index 000000000000..9b2214ac826d --- /dev/null +++ b/pkgs/development/python-modules/badges/default.nix @@ -0,0 +1,43 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + setuptools, + colorscript, + getch, + prompt-toolkit, +}: + +buildPythonPackage (finalAttrs: { + pname = "badges"; + version = "1.0.0-unstable-2026-01-05"; + pyproject = true; + + src = fetchFromGitHub { + owner = "EntySec"; + repo = "Badges"; + # https://github.com/EntySec/Badges/issues/6 + rev = "5fdc197864ee9488281cd8d9a64170671ec88dba"; + hash = "sha256-oiG2nx3hZqwMDjCUQYFu6SH9C1ocrZrjOIn2hC8gsVQ="; + }; + + build-system = [ setuptools ]; + + dependencies = [ + colorscript + getch + prompt-toolkit + ]; + + pythonImportsCheck = [ "badges" ]; + + # Module has no tests + doCheck = false; + + meta = { + description = "Helpers for terminal output, interactive prompts, structured tables and ASCII world map"; + homepage = "https://github.com/EntySec/Badges"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ fab ]; + }; +}) diff --git a/pkgs/development/python-modules/causal-conv1d/default.nix b/pkgs/development/python-modules/causal-conv1d/default.nix index ec6a888cc9ea..8902d04fc0e9 100644 --- a/pkgs/development/python-modules/causal-conv1d/default.nix +++ b/pkgs/development/python-modules/causal-conv1d/default.nix @@ -9,19 +9,21 @@ rocmPackages, config, cudaSupport ? config.cudaSupport, + rocmSupport ? config.rocmSupport, + rocmGpuTargets ? rocmPackages.clr.localGpuTargets or rocmPackages.clr.gpuTargets, which, }: buildPythonPackage rec { pname = "causal-conv1d"; - version = "1.5.2"; + version = "1.5.4"; pyproject = true; src = fetchFromGitHub { owner = "Dao-AILab"; repo = "causal-conv1d"; tag = "v${version}"; - hash = "sha256-B2I5QiJl0p5d1BeQcMbJBAYUb10HzqFd88QMM8Rerm0="; + hash = "sha256-ELuvnKP2g1I2SuaWWiibXh/oDzp4n0vXkm4oeNPOdIw="; }; build-system = [ @@ -30,9 +32,9 @@ buildPythonPackage rec { torch ]; - nativeBuildInputs = [ which ]; + nativeBuildInputs = [ which ] ++ lib.optionals rocmSupport [ rocmPackages.clr ]; - buildInputs = ( + buildInputs = lib.optionals cudaSupport ( with cudaPackages; [ @@ -44,26 +46,47 @@ buildPythonPackage rec { libcublas ] ) - ); + ++ lib.optionals rocmSupport ( + with rocmPackages; + [ + rocm-core + rocm-device-libs + rocm-runtime + rocm-comgr + hipblas + rocblas + hipcub + rocprim + ] + ); dependencies = [ torch ]; - # pytest tests not enabled due to nvidia GPU dependency + # pytest tests not enabled due to GPU dependency pythonImportsCheck = [ "causal_conv1d" ]; env = { CAUSAL_CONV1D_FORCE_BUILD = "TRUE"; } - // lib.optionalAttrs cudaSupport { CUDA_HOME = "${lib.getDev cudaPackages.cuda_nvcc}"; }; + // lib.optionalAttrs cudaSupport { CUDA_HOME = "${lib.getDev cudaPackages.cuda_nvcc}"; } + // lib.optionalAttrs rocmSupport { + ROCM_PATH = "${rocmPackages.clr}"; + HIP_ARCHITECTURES = builtins.concatStringsSep "," rocmGpuTargets; + CPLUS_INCLUDE_PATH = lib.makeSearchPath "include" [ + rocmPackages.hipcub + rocmPackages.rocprim + ]; + }; meta = { description = "Causal depthwise conv1d in CUDA with a PyTorch interface"; homepage = "https://github.com/Dao-AILab/causal-conv1d"; license = lib.licenses.bsd3; - # The package requires CUDA or ROCm, the ROCm build hasn't - # been completed or tested, so broken if not using cuda. - broken = !cudaSupport; + + # The package requires either CUDA or ROCm. + # It doesn't work without either, nor with both. + broken = cudaSupport != rocmSupport; }; } diff --git a/pkgs/development/python-modules/coiled/default.nix b/pkgs/development/python-modules/coiled/default.nix index 473fb1805490..6a397353df1c 100644 --- a/pkgs/development/python-modules/coiled/default.nix +++ b/pkgs/development/python-modules/coiled/default.nix @@ -37,14 +37,14 @@ versionCheckHook, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "coiled"; - version = "1.130.0"; + version = "1.130.1"; pyproject = true; src = fetchPypi { - inherit pname version; - hash = "sha256-Ue+iXpLpQwend/RAxJ0Xn9csXHrtCm0IaNexuFjT0s0="; + inherit (finalAttrs) pname version; + hash = "sha256-v9tPbuxGyBmxx8V9MQfOTAlP5mXxJW7005plgCP/Szw="; }; build-system = [ @@ -92,4 +92,4 @@ buildPythonPackage rec { maintainers = with lib.maintainers; [ daspk04 ]; mainProgram = "coiled"; }; -} +}) diff --git a/pkgs/development/python-modules/colorscript/default.nix b/pkgs/development/python-modules/colorscript/default.nix new file mode 100644 index 000000000000..826e54480b0a --- /dev/null +++ b/pkgs/development/python-modules/colorscript/default.nix @@ -0,0 +1,34 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + setuptools, +}: + +buildPythonPackage (finalAttrs: { + pname = "colorscript"; + version = "1.0.0-unstable-2024-09-20"; + pyproject = true; + + src = fetchFromGitHub { + owner = "EntySec"; + repo = "ColorScript"; + # https://github.com/EntySec/ColorScript/issues/4 + rev = "b98ec077fd2faa700ac5c6dafa0cdd17f649ffbc"; + hash = "sha256-xiN9wln0HU/gs6+L8QN4rmp72KUCAPWO/l2A7te64L0="; + }; + + build-system = [ setuptools ]; + + pythonImportsCheck = [ "colorscript" ]; + + # Module has no tests + doCheck = false; + + meta = { + description = "Module for functionality with text, escape codes, octal and hexadecimal codes, and other data"; + homepage = "https://github.com/EntySec/ColorScript"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ fab ]; + }; +}) diff --git a/pkgs/development/python-modules/consul/default.nix b/pkgs/development/python-modules/consul/default.nix index 400cfb30bef0..bac1c1db892c 100644 --- a/pkgs/development/python-modules/consul/default.nix +++ b/pkgs/development/python-modules/consul/default.nix @@ -10,19 +10,18 @@ pytest-asyncio, pytest-cov-stub, python, - docker, }: buildPythonPackage rec { pname = "py-consul"; - version = "1.6.0"; + version = "1.7.1"; pyproject = true; src = fetchFromGitHub { owner = "criteo"; repo = "py-consul"; tag = "v${version}"; - hash = "sha256-kNIFpY8rXdfGmaW2GAq7SvjK+4ahgaFnyXEqcUrXoEs="; + hash = "sha256-DpGSiwpxAF1kCraRFl6XPJ1eSzvR6Rdq8PkK30J/vA0="; }; patches = [ @@ -30,6 +29,9 @@ buildPythonPackage rec { url = "https://salsa.debian.org/python-team/packages/python-consul/-/raw/master/debian/patches/avoir-usr-requirements.txt.patch"; hash = "sha256-lB9Irzuc2IpbQOIP/C3JQ4iYqugf1U6CVlAEXrrFUfI="; }) + + # conftest.py always imports docker, even if related tests are disabled + ./disable-docker-tests.patch ]; build-system = [ @@ -50,7 +52,6 @@ buildPythonPackage rec { pytestCheckHook pytest-asyncio pytest-cov-stub - docker ]; # Most tests want to run a consul docker container ("hashicorp/consul:{version}" in conftest.py) @@ -104,6 +105,12 @@ buildPythonPackage rec { "test_transaction" "test_consul_ctor" "test_acl_token_delete" + "test_acl_templated_policy_list" + "test_acl_templated_policy_preview" + "test_acl_templated_policy_read" + "test_acl_templated_policy_wrote" + "test_agent_service_tagged_addresses" + "test_agent_service_connect" ]; pythonImportsCheck = [ "consul" ]; diff --git a/pkgs/development/python-modules/consul/disable-docker-tests.patch b/pkgs/development/python-modules/consul/disable-docker-tests.patch new file mode 100644 index 000000000000..a837a3c64c63 --- /dev/null +++ b/pkgs/development/python-modules/consul/disable-docker-tests.patch @@ -0,0 +1,19 @@ +diff --git a/conftest.py b/conftest.py +index 533d99c..c57afd8 100644 +--- a/conftest.py ++++ b/conftest.py +@@ -7,11 +7,11 @@ import socket + import time + import uuid + +-import docker ++#import docker + import pytest + import requests +-from docker import DockerClient +-from docker.errors import APIError, NotFound ++#from docker import DockerClient ++#from docker.errors import APIError, NotFound + from requests import RequestException + + CONSUL_VERSIONS = ["1.17.3", "1.19.2", "1.20.2"] diff --git a/pkgs/development/python-modules/datalad-gooey/default.nix b/pkgs/development/python-modules/datalad-gooey/default.nix index aa3fbd19957e..df045bd99945 100644 --- a/pkgs/development/python-modules/datalad-gooey/default.nix +++ b/pkgs/development/python-modules/datalad-gooey/default.nix @@ -3,6 +3,7 @@ lib, git, fetchFromGitHub, + pythonAtLeast, setuptools, git-annex, pyside6, @@ -55,6 +56,10 @@ buildPythonPackage { git-annex ]; + disabledTests = lib.optionals (pythonAtLeast "3.14") [ + "test_lsfiles" + ]; + pythonImportsCheck = [ "datalad_gooey" ]; meta = { diff --git a/pkgs/development/python-modules/datalad/default.nix b/pkgs/development/python-modules/datalad/default.nix index 75fce24de6c3..c6fdcc61b5f8 100644 --- a/pkgs/development/python-modules/datalad/default.nix +++ b/pkgs/development/python-modules/datalad/default.nix @@ -4,9 +4,9 @@ setuptools, stdenv, fetchFromGitHub, + pythonAtLeast, installShellFiles, git, - coreutils, versioneer, # core platformdirs, @@ -218,6 +218,17 @@ buildPythonPackage rec { # CommandError: 'git -c diff.ignoreSubmodules=none -c core.quotepath=false ls-files -z -m -d' failed with exitcode 128 "test_subsuperdataset_save" + ] + ++ lib.optionals (pythonAtLeast "3.14") [ + # For all: https://github.com/datalad/datalad/issues/7781 + # AssertionError: `assert 1 == 0` (refcount error) + "test_GitRepo_flyweight" + "test_Dataset_flyweight" + "test_AnnexRepo_flyweight" + # TypeError: cannot pickle '_thread.lock' object + "test_popen_invocation" + # datalad.runner.exception.CommandError: '/python3.14 -i -u -q -']' timed out after 0.5 seconds + "test_asyncio_loop_noninterference1" ]; nativeCheckInputs = [ diff --git a/pkgs/development/python-modules/getch/default.nix b/pkgs/development/python-modules/getch/default.nix new file mode 100644 index 000000000000..09bc33523fd1 --- /dev/null +++ b/pkgs/development/python-modules/getch/default.nix @@ -0,0 +1,31 @@ +{ + lib, + buildPythonPackage, + fetchPypi, + setuptools, +}: + +buildPythonPackage (finalAttrs: { + pname = "getch"; + version = "1.0"; + pyproject = true; + + src = fetchPypi { + inherit (finalAttrs) pname version; + hash = "sha256-psInF8EAUc5luPt73bFxr3BbEXXmlKc76VaZD2CJ2LE="; + }; + + build-system = [ setuptools ]; + + pythonImportsCheck = [ "getch" ]; + + # Module has no tests + doCheck = false; + + meta = { + description = "Does single char input, like C getch/getche"; + homepage = "https://pypi.org/project/getch/"; + license = lib.licenses.publicDomain; + maintainers = with lib.maintainers; [ fab ]; + }; +}) diff --git a/pkgs/development/python-modules/gilknocker/default.nix b/pkgs/development/python-modules/gilknocker/default.nix index 29cf43a96c69..425fd25c40ef 100644 --- a/pkgs/development/python-modules/gilknocker/default.nix +++ b/pkgs/development/python-modules/gilknocker/default.nix @@ -1,7 +1,9 @@ { lib, + stdenv, buildPythonPackage, fetchFromGitHub, + pythonAtLeast, # build-system pkg-config, @@ -54,6 +56,24 @@ buildPythonPackage rec { pytest-rerunfailures ]; + enabledTestPaths = [ + # skip the benchmarks as they can segfault + # https://github.com/milesgranger/gilknocker/issues/35 + "tests" + ]; + + disabledTestPaths = lib.optionals (pythonAtLeast "3.14") [ + # segfaults + # https://github.com/milesgranger/gilknocker/issues/35 + "benchmarks" + ]; + + disabledTests = lib.optionals stdenv.hostPlatform.isDarwin [ + # depends on an empirically-derived threshold that fails on fast and slow machines. + # https://github.com/milesgranger/gilknocker/issues/36 + "test_knockknock_some_gil" + ]; + pytestFlags = [ "--benchmark-disable" ]; meta = { diff --git a/pkgs/development/python-modules/hatasm/default.nix b/pkgs/development/python-modules/hatasm/default.nix new file mode 100644 index 000000000000..105328a91cd4 --- /dev/null +++ b/pkgs/development/python-modules/hatasm/default.nix @@ -0,0 +1,47 @@ +{ + lib, + badges, + buildPythonPackage, + capstone, + fetchFromGitHub, + keystone-engine, + lief, + pyelftools, + setuptools, +}: + +buildPythonPackage (finalAttrs: { + pname = "hatasm"; + version = "1.0.0-unstable-2026-01-05"; + pyproject = true; + + src = fetchFromGitHub { + owner = "EntySec"; + repo = "HatAsm"; + # https://github.com/EntySec/HatAsm/issues/2 + rev = "c8ec79e533a2dd489de86cefc168fce576f21f1a"; + hash = "sha256-PqQRe01cZMEOBjkbBqnb9jXcdSQ3LSSJtwwaP0ITgKg="; + }; + + build-system = [ setuptools ]; + + dependencies = [ + badges + capstone + keystone-engine + lief + pyelftools + ]; + + pythonImportsCheck = [ "hatasm" ]; + + # Module has no tests + doCheck = false; + + meta = { + description = "Assembler and disassembler that provides support for all common architectures"; + homepage = "https://github.com/EntySec/HatAsm"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ fab ]; + }; +}) diff --git a/pkgs/development/python-modules/ibis-framework/default.nix b/pkgs/development/python-modules/ibis-framework/default.nix index 7718bea82669..c91d339074be 100644 --- a/pkgs/development/python-modules/ibis-framework/default.nix +++ b/pkgs/development/python-modules/ibis-framework/default.nix @@ -97,7 +97,7 @@ let }; in -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "ibis-framework"; version = "11.0.0"; pyproject = true; @@ -105,7 +105,7 @@ buildPythonPackage rec { src = fetchFromGitHub { owner = "ibis-project"; repo = "ibis"; - tag = version; + tag = finalAttrs.version; hash = "sha256-hf5guWeX9WQbKaNrs7ALwwDxV1Rgeb5Z0PedTQ4P7S0="; }; @@ -139,7 +139,7 @@ buildPythonPackage rec { pytest-xdist writableTmpDirAsHomeHook ] - ++ lib.concatMap (name: optional-dependencies.${name}) testBackends; + ++ lib.concatMap (name: finalAttrs.passthru.optional-dependencies.${name}) testBackends; pytestFlags = [ "--benchmark-disable" @@ -186,6 +186,7 @@ buildPythonPackage rec { ] ++ lib.optionals (pythonAtLeast "3.14") [ # ExceptionGroup: multiple unraisable exception warnings (4 sub-exceptions) + "test_non_roundtripable_str_type" "test_parse_dtype_roundtrip" # AssertionError: value does not match the expected value in snapshot ... @@ -372,11 +373,11 @@ buildPythonPackage rec { meta = { description = "Productivity-centric Python Big Data Framework"; homepage = "https://github.com/ibis-project/ibis"; - changelog = "https://github.com/ibis-project/ibis/blob/${src.tag}/docs/release_notes.md"; + changelog = "https://github.com/ibis-project/ibis/blob/${finalAttrs.src.tag}/docs/release_notes.md"; license = lib.licenses.asl20; maintainers = with lib.maintainers; [ cpcloud sarahec ]; }; -} +}) diff --git a/pkgs/development/python-modules/nibabel/default.nix b/pkgs/development/python-modules/nibabel/default.nix index 6cabbb013d1d..478e69bcd5c8 100644 --- a/pkgs/development/python-modules/nibabel/default.nix +++ b/pkgs/development/python-modules/nibabel/default.nix @@ -1,8 +1,9 @@ { lib, buildPythonPackage, - fetchPypi, + fetchFromGitHub, fetchpatch2, + pythonAtLeast, pythonOlder, hatchling, hatch-vcs, @@ -21,14 +22,16 @@ pytest7CheckHook, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "nibabel"; version = "5.3.3"; pyproject = true; - src = fetchPypi { - inherit pname version; - hash = "sha256-jSAGtw1yf9CnmKiK5f1kM5dB9Db8/IPW6jJWzbxRxbc="; + src = fetchFromGitHub { + owner = "nipy"; + repo = "nibabel"; + tag = finalAttrs.version; + hash = "sha256-Kdz7kCY5QnA9OiV/FPW1RerjP1GGLn+YaTwFpA0dJAM="; }; patches = [ @@ -68,7 +71,12 @@ buildPythonPackage rec { pytest-xdist pytest7CheckHook ] - ++ optional-dependencies.all; + ++ finalAttrs.passthru.optional-dependencies.all; + + disabledTests = lib.optionals (pythonAtLeast "3.14") [ + # https://github.com/nipy/nibabel/issues/1390 + "test_deprecator_maker" + ]; preCheck = '' export PATH=$out/bin:$PATH @@ -76,9 +84,9 @@ buildPythonPackage rec { meta = { homepage = "https://nipy.org/nibabel"; - changelog = "https://github.com/nipy/nibabel/blob/${version}/Changelog"; + changelog = "https://github.com/nipy/nibabel/blob/${finalAttrs.version}/Changelog"; description = "Access a multitude of neuroimaging data formats"; license = lib.licenses.mit; maintainers = with lib.maintainers; [ ashgillman ]; }; -} +}) diff --git a/pkgs/development/python-modules/pex-entysec/default.nix b/pkgs/development/python-modules/pex-entysec/default.nix new file mode 100644 index 000000000000..be99de21a735 --- /dev/null +++ b/pkgs/development/python-modules/pex-entysec/default.nix @@ -0,0 +1,67 @@ +{ + lib, + adb-shell, + alive-progress, + buildPythonPackage, + fetchFromGitHub, + hatasm, + manuf, + netaddr, + netifaces, + paramiko, + pefile, + pyasyncore, + pychromecast, + pydantic, + pyopenssl, + pysnmp, + requests, + scapy, + setuptools, +}: + +buildPythonPackage (finalAttrs: { + pname = "pex-entysec"; + version = "1.0.0-unstable-2024-10-13"; + pyproject = true; + + src = fetchFromGitHub { + owner = "EntySec"; + repo = "Pex"; + # https://github.com/EntySec/Pex/issues/11 + rev = "0a776da9afc1a88fcb74fac96648666748b3d965"; + hash = "sha256-37NoQL/BieMoZbaRiIu9QVAO2SEt7QQFPZ+KHzv3dRk="; + }; + + build-system = [ setuptools ]; + + dependencies = [ + adb-shell + alive-progress + hatasm + manuf + netaddr + netifaces + paramiko + pefile + pyasyncore + pychromecast + pydantic + pyopenssl + pysnmp + requests + scapy + ]; + + pythonImportsCheck = [ "pex" ]; + + # Module has no tests + doCheck = false; + + meta = { + description = "Collection of special tools for providing high quality penetration testing using pure python programming language"; + homepage = "https://github.com/EntySec/Pex"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ fab ]; + }; +}) diff --git a/pkgs/development/python-modules/primecountpy/default.nix b/pkgs/development/python-modules/primecountpy/default.nix index 5c50b43b7352..08b2269fdf02 100644 --- a/pkgs/development/python-modules/primecountpy/default.nix +++ b/pkgs/development/python-modules/primecountpy/default.nix @@ -2,8 +2,10 @@ lib, fetchPypi, buildPythonPackage, - primecount, + meson-python, cython, + pkg-config, + primecount, cysignals, # Reverse dependency @@ -12,18 +14,24 @@ buildPythonPackage rec { pname = "primecountpy"; - version = "0.1.1"; - format = "setuptools"; + version = "0.2.1"; + pyproject = true; src = fetchPypi { inherit pname version; - sha256 = "sha256-yFYYF8C+hu7/xBuXtu9hfXlfcs895Z2SNNHIPX5CQDA="; + sha256 = "sha256-iIcGq2XMCJ+5g95GOTYN3ccouqTZh3p62LEW9kVlCzk="; }; + build-system = [ + meson-python + cython + ]; + + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ primecount ]; propagatedBuildInputs = [ - cython cysignals ]; diff --git a/pkgs/servers/sql/postgresql/ext/postgis.nix b/pkgs/servers/sql/postgresql/ext/postgis.nix index 00020e77f0b5..69f78ce536fb 100644 --- a/pkgs/servers/sql/postgresql/ext/postgis.nix +++ b/pkgs/servers/sql/postgresql/ext/postgis.nix @@ -168,7 +168,7 @@ postgresqlBuildExtension (finalAttrs: { meta = { description = "Geographic Objects for PostgreSQL"; homepage = "https://postgis.net/"; - changelog = "https://git.osgeo.org/gitea/postgis/postgis/raw/tag/${finalAttrs.version}/NEWS"; + changelog = "https://git.osgeo.org/postgis/postgis/raw/tag/${finalAttrs.version}/NEWS"; license = lib.licenses.gpl2Plus; maintainers = with lib.maintainers; [ marcweber ]; teams = [ lib.teams.geospatial ]; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 0577d750f7fa..56376101a6cb 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -1750,6 +1750,8 @@ self: super: with self; { badauth = callPackage ../development/python-modules/badauth { }; + badges = callPackage ../development/python-modules/badges { }; + badldap = callPackage ../development/python-modules/badldap { }; badsecrets = callPackage ../development/python-modules/badsecrets { }; @@ -2994,6 +2996,8 @@ self: super: with self; { colormath2 = callPackage ../development/python-modules/colormath2 { }; + colorscript = callPackage ../development/python-modules/colorscript { }; + colorspacious = callPackage ../development/python-modules/colorspacious { }; colorthief = callPackage ../development/python-modules/colorthief { }; @@ -6077,6 +6081,8 @@ self: super: with self; { get-video-properties = callPackage ../development/python-modules/get-video-properties { }; + getch = callPackage ../development/python-modules/getch { }; + getjump = callPackage ../development/python-modules/getjump { }; getkey = callPackage ../development/python-modules/getkey { }; @@ -6753,6 +6759,8 @@ self: super: with self; { hassil = callPackage ../development/python-modules/hassil { }; + hatasm = callPackage ../development/python-modules/hatasm { }; + hatasmota = callPackage ../development/python-modules/hatasmota { }; hatch-autorun = callPackage ../development/python-modules/hatch-autorun { }; @@ -12053,6 +12061,8 @@ self: super: with self; { pex = callPackage ../development/python-modules/pex { }; + pex-entysec = callPackage ../development/python-modules/pex-entysec { }; + pexif = callPackage ../development/python-modules/pexif { }; pexpect = callPackage ../development/python-modules/pexpect { };