diff --git a/ci/default.nix b/ci/default.nix index 32e067133422..42eeadc67def 100644 --- a/ci/default.nix +++ b/ci/default.nix @@ -18,7 +18,9 @@ let pkgs = import nixpkgs' { inherit system; - config = { }; + config = { + permittedInsecurePackages = [ "nix-2.3.18" ]; + }; overlays = [ ]; }; diff --git a/doc/release-notes/rl-2511.section.md b/doc/release-notes/rl-2511.section.md index 13a690ad5eb7..bc3a9ec10910 100644 --- a/doc/release-notes/rl-2511.section.md +++ b/doc/release-notes/rl-2511.section.md @@ -24,6 +24,8 @@ - `gnome-keyring` no longer ships with an SSH agent anymore because it has been deprecated upstream. You should use `gcr_4` instead, which provides the same features. More information on why this was done can be found on [the relevant GCR upstream PR](https://gitlab.gnome.org/GNOME/gcr/-/merge_requests/67). +- `tooling-language-server` has been renamed to `deputy` (both the package and binary), following the rename of the upstream project. + - `lima` package now only includes the guest agent for the host's architecture by default. If your guest VM's architecture differs from your Lima host's, you'll need to enable the `lima-additional-guestagents` package by setting `withAdditionalGuestAgents = true` when overriding lima with this input. - `telegram-desktop` packages now uses `Telegram` for its binary. The previous name was `telegram-desktop`. This is due to [an upstream decision](https://github.com/telegramdesktop/tdesktop/commit/56ff5808a3d766f892bc3c3305afb106b629ef6f) to make the name consistent with other platforms. diff --git a/lib/tests/release.nix b/lib/tests/release.nix index 51260ea0300b..5a1752010745 100644 --- a/lib/tests/release.nix +++ b/lib/tests/release.nix @@ -2,9 +2,16 @@ # The pkgs used for dependencies for the testing itself # Don't test properties of pkgs.lib, but rather the lib in the parent directory system ? builtins.currentSystem, - pkgs ? import ../.. { inherit system; } // { - lib = throw "pkgs.lib accessed, but the lib tests should use nixpkgs' lib path directly!"; - }, + pkgs ? + import ../.. { + inherit system; + config = { + permittedInsecurePackages = [ "nix-2.3.18" ]; + }; + } + // { + lib = throw "pkgs.lib accessed, but the lib tests should use nixpkgs' lib path directly!"; + }, # For testing someone may edit impure.nix to return cross pkgs, use `pkgsBuildBuild` directly so everything here works. pkgsBB ? pkgs.pkgsBuildBuild, nix ? pkgs-nixVersions.stable, diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index a610d9337460..0948ed79fad0 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -703,7 +703,7 @@ github = "aduh95"; githubId = 14309773; name = "Antoine du Hamel"; - keys = [ { fingerprint = "C0D6 2484 39F1 D560 4AAF FB40 21D9 00FF DB23 3756"; } ]; + keys = [ { fingerprint = "5BE8 A3F6 C8A5 C01D 106C 0AD8 20B1 A390 B168 D356"; } ]; }; aerialx = { email = "aaron+nixos@aaronlindsay.com"; @@ -9308,6 +9308,12 @@ githubId = 1447245; name = "Robin Gloster"; }; + globule655 = { + email = "globule655@gmail.com"; + github = "globule655"; + githubId = 47015416; + name = "globule655"; + }; gm6k = { email = "nix@quidecco.pl"; name = "Isidor Zeuner"; @@ -22911,7 +22917,10 @@ github = "ShadowRZ"; githubId = 23130178; name = "夜坂雅"; - keys = [ { fingerprint = "3237 D49E 8F81 5A45 2133 64EA 4FF3 5790 F405 53A9"; } ]; + keys = [ + { fingerprint = "3237 D49E 8F81 5A45 2133 64EA 4FF3 5790 F405 53A9"; } + { fingerprint = "AC59 7AD3 89D1 CC56 18AD 1ED9 B712 3A2B 6B0A E434"; } + ]; }; shadows_withal = { email = "shadows@with.al"; diff --git a/nixos/doc/manual/default.nix b/nixos/doc/manual/default.nix index 965653d0dd77..cd452d761b9c 100644 --- a/nixos/doc/manual/default.nix +++ b/nixos/doc/manual/default.nix @@ -245,6 +245,7 @@ rec { --revision ${escapeShellArg revision} \ ${optionsJSON}/${common.outputPath}/options.json \ $out/share/man/man5/configuration.nix.5 + compressManPages $out ''; } diff --git a/nixos/doc/manual/redirects.json b/nixos/doc/manual/redirects.json index 3cabffb61df8..922d806b4e16 100644 --- a/nixos/doc/manual/redirects.json +++ b/nixos/doc/manual/redirects.json @@ -1085,18 +1085,6 @@ "module-services-taskserver-manual-ca-management": [ "index.html#module-services-taskserver-manual-ca-management" ], - "module-services-sourcehut": [ - "index.html#module-services-sourcehut" - ], - "module-services-sourcehut-basic-usage": [ - "index.html#module-services-sourcehut-basic-usage" - ], - "module-services-sourcehut-configuration": [ - "index.html#module-services-sourcehut-configuration" - ], - "module-services-sourcehut-httpd": [ - "index.html#module-services-sourcehut-httpd" - ], "module-services-gitlab": [ "index.html#module-services-gitlab" ], @@ -2049,6 +2037,13 @@ "sec-release-25.11-incompatibilities": [ "release-notes.html#sec-release-25.11-incompatibilities" ], + "sec-release-25.11-incompatibilities-sourcehut-removed": [ + "release-notes.html#sec-release-25.11-incompatibilities-sourcehut-removed", + "index.html#module-services-sourcehut", + "index.html#module-services-sourcehut-basic-usage", + "index.html#module-services-sourcehut-configuration", + "index.html#module-services-sourcehut-httpd" + ], "sec-release-25.11-notable-changes": [ "release-notes.html#sec-release-25.11-notable-changes" ], diff --git a/nixos/doc/manual/release-notes/rl-2505.section.md b/nixos/doc/manual/release-notes/rl-2505.section.md index 7a3982c95795..44e8e6b84364 100644 --- a/nixos/doc/manual/release-notes/rl-2505.section.md +++ b/nixos/doc/manual/release-notes/rl-2505.section.md @@ -88,6 +88,8 @@ Alongside many enhancements to NixOS modules and general system improvements, th - [Readeck](https://readeck.org/), a read-it later web-application. Available as [services.readeck](#opt-services.readeck.enable). +- [EasyTier](https://github.com/EasyTier/EasyTier), a decentralized VPN solution. Available as [services.easytier](#opt-services.easytier.enable). + - [Traccar](https://www.traccar.org/), a modern GPS Tracking Platform. Available as [services.traccar](#opt-services.traccar.enable). - [Schroot](https://codeberg.org/shelter/reschroot), a lightweight virtualisation tool. Securely enter a chroot and run a command or login shell. Available as [programs.schroot](#opt-programs.schroot.enable). diff --git a/nixos/doc/manual/release-notes/rl-2511.section.md b/nixos/doc/manual/release-notes/rl-2511.section.md index 1d3c230e682d..983537f73ede 100644 --- a/nixos/doc/manual/release-notes/rl-2511.section.md +++ b/nixos/doc/manual/release-notes/rl-2511.section.md @@ -62,6 +62,8 @@ - The Pocket ID module ([`services.pocket-id`][#opt-services.pocket-id.enable]) and package (`pocket-id`) has been updated to 1.0.0. Some environment variables have been changed or removed, see the [migration guide](https://pocket-id.org/docs/setup/migrate-to-v1/). +- []{#sec-release-25.11-incompatibilities-sourcehut-removed} The `services.sourcehut` module and corresponding `sourcehut` packages were removed due to being broken and unmaintained. + - The `yeahwm` package and `services.xserver.windowManager.yeahwm` module were removed due to the package being broken and unmaintained upstream. - The `services.postgresql` module now sets up a systemd unit `postgresql.target`. Depending on `postgresql.target` guarantees that postgres is in read-write mode and initial/ensure scripts were executed. Depending on `postgresql.service` only guarantees a read-only connection. @@ -100,6 +102,8 @@ - `services.gitea` supports sending notifications with sendmail again. To do this, activate the parameter `services.gitea.mailerUseSendmail` and configure SMTP server. +- `services.ntpd-rs` now performs configuration validation. + - `amdgpu` kernel driver overdrive mode can now be enabled by setting [hardware.amdgpu.overdrive.enable](#opt-hardware.amdgpu.overdrive.enable) and customized through [hardware.amdgpu.overdrive.ppfeaturemask](#opt-hardware.amdgpu.overdrive.ppfeaturemask). This allows for fine-grained control over the GPU's performance and maybe required by overclocking softwares like Corectrl and Lact. These new options replace old options such as {option}`programs.corectrl.gpuOverclock.enable` and {option}`programs.tuxclocker.enableAMD`. diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index 9e22b7f5f32b..5eb40adc5647 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -915,7 +915,6 @@ ./services/misc/sickbeard.nix ./services/misc/snapper.nix ./services/misc/soft-serve.nix - ./services/misc/sourcehut ./services/misc/spice-autorandr.nix ./services/misc/spice-vdagentd.nix ./services/misc/spice-webdavd.nix @@ -1116,6 +1115,7 @@ ./services/networking/dnsproxy.nix ./services/networking/doh-proxy-rust.nix ./services/networking/doh-server.nix + ./services/networking/easytier.nix ./services/networking/ejabberd.nix ./services/networking/envoy.nix ./services/networking/epmd.nix diff --git a/nixos/modules/programs/wayland/sway.nix b/nixos/modules/programs/wayland/sway.nix index 6e282ce6b672..8eaacad1ad68 100644 --- a/nixos/modules/programs/wayland/sway.nix +++ b/nixos/modules/programs/wayland/sway.nix @@ -207,6 +207,5 @@ in meta.maintainers = with lib.maintainers; [ primeos - colemickens ]; } diff --git a/nixos/modules/rename.nix b/nixos/modules/rename.nix index 965510d4a526..4956940c8349 100644 --- a/nixos/modules/rename.nix +++ b/nixos/modules/rename.nix @@ -236,6 +236,9 @@ in the program being unmaintained. The options `programs.msmtp.*` can be used instead. '') + (mkRemovedOptionModule [ "services" "sourcehut" ] '' + The sourcehut packages and the corresponding module have been removed due to being broken and unmaintained. + '') (mkRemovedOptionModule [ "services" "tvheadend" ] "The tvheadend package and the corresponding module have been removed as nobody was willing to maintain them and they were stuck on an unmaintained version that required FFmpeg 4; please see https://github.com/NixOS/nixpkgs/pull/332259 if you are interested in maintaining a newer version." ) diff --git a/nixos/modules/services/backup/duplicati.nix b/nixos/modules/services/backup/duplicati.nix index bb205d2ac0dd..b69510f0aecb 100644 --- a/nixos/modules/services/backup/duplicati.nix +++ b/nixos/modules/services/backup/duplicati.nix @@ -6,6 +6,12 @@ }: let cfg = config.services.duplicati; + + parametersFile = + if cfg.parametersFile != null then + cfg.parametersFile + else + pkgs.writeText "duplicati-parameters" cfg.parameters; in { options = { @@ -53,12 +59,48 @@ in Run as root with special care. ''; }; + + parameters = lib.mkOption { + default = ""; + type = lib.types.lines; + example = '' + --webservice-allowedhostnames=* + ''; + description = '' + This option can be used to store some or all of the options given to the + commandline client. + Each line in this option should be of the format --option=value. + The options in this file take precedence over the options provided + through command line arguments. + Duplicati docs: parameters-file + ''; + }; + + parametersFile = lib.mkOption { + default = null; + type = lib.types.nullOr lib.types.path; + description = '' + This file can be used to store some or all of the options given to the + commandline client. + Each line in the file option should be of the format --option=value. + The options in this file take precedence over the options provided + through command line arguments. + Duplicati docs: parameters-file + ''; + }; }; }; config = lib.mkIf cfg.enable { environment.systemPackages = [ cfg.package ]; + assertions = [ + { + assertion = !(cfg.parametersFile != null && cfg.parameters != ""); + message = "cannot set both services.duplicati.parameters and services.duplicati.parametersFile at the same time"; + } + ]; + systemd.services.duplicati = { description = "Duplicati backup"; after = [ "network.target" ]; @@ -67,7 +109,7 @@ in { User = cfg.user; Group = "duplicati"; - ExecStart = "${cfg.package}/bin/duplicati-server --webservice-interface=${cfg.interface} --webservice-port=${toString cfg.port} --server-datafolder=${cfg.dataDir}"; + ExecStart = "${cfg.package}/bin/duplicati-server --webservice-interface=${cfg.interface} --webservice-port=${toString cfg.port} --server-datafolder=${cfg.dataDir} --parameters-file=${parametersFile}"; Restart = "on-failure"; } (lib.mkIf (cfg.dataDir == "/var/lib/duplicati") { diff --git a/nixos/modules/services/home-automation/govee2mqtt.nix b/nixos/modules/services/home-automation/govee2mqtt.nix index fe4063935adc..afdff7b8e047 100644 --- a/nixos/modules/services/home-automation/govee2mqtt.nix +++ b/nixos/modules/services/home-automation/govee2mqtt.nix @@ -52,7 +52,11 @@ in systemd.services.govee2mqtt = { description = "Govee2MQTT Service"; wantedBy = [ "multi-user.target" ]; - after = [ "networking.target" ]; + after = [ + "networking.target" + "network-online.target" + ]; + requires = [ "network-online.target" ]; serviceConfig = { CacheDirectory = "govee2mqtt"; Environment = [ diff --git a/nixos/modules/services/misc/gitea.nix b/nixos/modules/services/misc/gitea.nix index d3b7e3b2e766..160e777f1f80 100644 --- a/nixos/modules/services/misc/gitea.nix +++ b/nixos/modules/services/misc/gitea.nix @@ -464,7 +464,7 @@ in }; SENDMAIL_PATH = lib.mkOption { - type = lib.types.path; + type = lib.types.str; # somewhat duplicated with useSendmail but cannot be deduped because of infinite recursion default = if config.mailer.ENABLED && config.mailer.PROTOCOL == "sendmail" then diff --git a/nixos/modules/services/misc/sourcehut/default.md b/nixos/modules/services/misc/sourcehut/default.md deleted file mode 100644 index f965c395038a..000000000000 --- a/nixos/modules/services/misc/sourcehut/default.md +++ /dev/null @@ -1,93 +0,0 @@ -# Sourcehut {#module-services-sourcehut} - -[Sourcehut](https://sr.ht.com/) is an open-source, -self-hostable software development platform. The server setup can be automated using -[services.sourcehut](#opt-services.sourcehut.enable). - -## Basic usage {#module-services-sourcehut-basic-usage} - -Sourcehut is a Python and Go based set of applications. -This NixOS module also provides basic configuration integrating Sourcehut into locally running -`services.nginx`, `services.redis.servers.sourcehut`, `services.postfix` -and `services.postgresql` services. - -A very basic configuration may look like this: -```nix -{ pkgs, ... }: -let - fqdn = - let - join = hostName: domain: hostName + optionalString (domain != null) ".${domain}"; - in join config.networking.hostName config.networking.domain; -in { - - networking = { - hostName = "srht"; - domain = "tld"; - firewall.allowedTCPPorts = [ 22 80 443 ]; - }; - - services.sourcehut = { - enable = true; - git.enable = true; - man.enable = true; - meta.enable = true; - nginx.enable = true; - postfix.enable = true; - postgresql.enable = true; - redis.enable = true; - settings = { - "sr.ht" = { - environment = "production"; - global-domain = fqdn; - origin = "https://${fqdn}"; - # Produce keys with srht-keygen from sourcehut.coresrht. - network-key = "/run/keys/path/to/network-key"; - service-key = "/run/keys/path/to/service-key"; - }; - webhooks.private-key= "/run/keys/path/to/webhook-key"; - }; - }; - - security.acme.certs."${fqdn}".extraDomainNames = [ - "meta.${fqdn}" - "man.${fqdn}" - "git.${fqdn}" - ]; - - services.nginx = { - enable = true; - # only recommendedProxySettings are strictly required, but the rest make sense as well. - recommendedTlsSettings = true; - recommendedOptimisation = true; - recommendedGzipSettings = true; - recommendedProxySettings = true; - - # Settings to setup what certificates are used for which endpoint. - virtualHosts = { - "${fqdn}".enableACME = true; - "meta.${fqdn}".useACMEHost = fqdn; - "man.${fqdn}".useACMEHost = fqdn; - "git.${fqdn}".useACMEHost = fqdn; - }; - }; -} -``` - - The `hostName` option is used internally to configure the nginx -reverse-proxy. The `settings` attribute set is -used by the configuration generator and the result is placed in `/etc/sr.ht/config.ini`. - -## Configuration {#module-services-sourcehut-configuration} - -All configuration parameters are also stored in -`/etc/sr.ht/config.ini` which is generated by -the module and linked from the store to ensure that all values from `config.ini` -can be modified by the module. - -## Using an alternative webserver as reverse-proxy (e.g. `httpd`) {#module-services-sourcehut-httpd} - -By default, `nginx` is used as reverse-proxy for `sourcehut`. -However, it's possible to use e.g. `httpd` by explicitly disabling -`nginx` using [](#opt-services.nginx.enable) and fixing the -`settings`. diff --git a/nixos/modules/services/misc/sourcehut/default.nix b/nixos/modules/services/misc/sourcehut/default.nix deleted file mode 100644 index b6e785802206..000000000000 --- a/nixos/modules/services/misc/sourcehut/default.nix +++ /dev/null @@ -1,1568 +0,0 @@ -{ - config, - pkgs, - lib, - ... -}: - -let - inherit (builtins) head tail; - inherit (lib) generators maintainers types; - inherit (lib.attrsets) - attrValues - filterAttrs - mapAttrs - mapAttrsToList - recursiveUpdate - ; - inherit (lib.lists) flatten optional optionals; - inherit (lib.options) - literalExpression - mkEnableOption - mkOption - mkPackageOption - ; - inherit (lib.strings) - concatMapStringsSep - concatStringsSep - optionalString - versionOlder - ; - inherit (lib.trivial) mapNullable; - inherit (lib.modules) - mkBefore - mkDefault - mkForce - mkIf - mkMerge - mkRemovedOptionModule - mkRenamedOptionModule - ; - inherit (config.services) - nginx - postfix - postgresql - redis - ; - inherit (config.users) users groups; - cfg = config.services.sourcehut; - domain = cfg.settings."sr.ht".global-domain; - settingsFormat = pkgs.formats.ini { - listToValue = concatMapStringsSep "," (generators.mkValueStringDefault { }); - mkKeyValue = - k: v: - optionalString (v != null) ( - generators.mkKeyValueDefault { - mkValueString = - v: - if v == true then - "yes" - else if v == false then - "no" - else - generators.mkValueStringDefault { } v; - } "=" k v - ); - }; - configIniOfService = - srv: - settingsFormat.generate "sourcehut-${srv}-config.ini" - # Each service needs access to only a subset of sections (and secrets). - ( - filterAttrs (k: v: v != null) ( - mapAttrs - ( - section: v: - let - srvMatch = builtins.match "^([a-z]*)\\.sr\\.ht(::.*)?$" section; - in - if - srvMatch == null # Include sections shared by all services - || head srvMatch == srv # Include sections for the service being configured - then - v - # Enable Web links and integrations between services. - else if tail srvMatch == [ null ] && cfg.${head srvMatch}.enable then - { - inherit (v) origin; - # mansrht crashes without it - oauth-client-id = v.oauth-client-id or null; - } - # Drop sub-sections of other services - else - null - ) - ( - recursiveUpdate cfg.settings { - # Those paths are mounted using BindPaths= or BindReadOnlyPaths= - # for services needing access to them. - "builds.sr.ht::worker".buildlogs = "/var/log/sourcehut/buildsrht-worker"; - "git.sr.ht".post-update-script = "/usr/bin/git.sr.ht-update-hook"; - "git.sr.ht".repos = cfg.settings."git.sr.ht".repos; - "hg.sr.ht".changegroup-script = "/usr/bin/hg.sr.ht-hook-changegroup"; - "hg.sr.ht".repos = cfg.settings."hg.sr.ht".repos; - # Making this a per service option despite being in a global section, - # so that it uses the redis-server used by the service. - "sr.ht".redis-host = cfg.${srv}.redis.host; - "sr.ht".assets = "${cfg.${srv}.package}/share/sourcehut"; - } - ) - ) - ); - commonServiceSettings = srv: { - origin = mkOption { - description = "URL ${srv}.sr.ht is being served at (protocol://domain)"; - type = types.str; - default = "https://${srv}.${domain}"; - defaultText = "https://${srv}.example.com"; - }; - debug-host = mkOption { - description = "Address to bind the debug server to."; - type = with types; nullOr str; - default = null; - }; - debug-port = mkOption { - description = "Port to bind the debug server to."; - type = with types; nullOr str; - default = null; - }; - connection-string = mkOption { - description = "SQLAlchemy connection string for the database."; - type = types.str; - default = "postgresql:///localhost?user=${srv}srht&host=/run/postgresql"; - }; - migrate-on-upgrade = mkEnableOption "automatic migrations on package upgrade" // { - default = true; - }; - oauth-client-id = mkOption { - description = "${srv}.sr.ht's OAuth client id for meta.sr.ht."; - type = types.str; - }; - oauth-client-secret = mkOption { - description = "${srv}.sr.ht's OAuth client secret for meta.sr.ht."; - type = types.path; - apply = s: "<" + toString s; - }; - api-origin = mkOption { - description = "Origin URL for the API"; - type = types.str; - default = "http://${cfg.listenAddress}:${toString (cfg.${srv}.port + 100)}"; - defaultText = lib.literalMD '' - `"http://''${`[](#opt-services.sourcehut.listenAddress)`}:''${toString (`[](#opt-services.sourcehut.${srv}.port)` + 100)}"` - ''; - }; - }; - - # Specialized python containing all the modules - python = pkgs.sourcehut.python.withPackages ( - ps: with ps; [ - gunicorn - eventlet - # For monitoring Celery: sudo -u listssrht celery --app listssrht.process -b redis+socket:///run/redis-sourcehut/redis.sock?virtual_host=1 flower - flower - # Sourcehut services - srht - buildsrht - gitsrht - hgsrht - hubsrht - listssrht - mansrht - metasrht - # Not a python package - #pagessrht - pastesrht - todosrht - ] - ); - mkOptionNullOrStr = - description: - mkOption { - description = description; - type = with types; nullOr str; - default = null; - }; -in -{ - options.services.sourcehut = { - enable = mkEnableOption '' - sourcehut - git hosting, continuous integration, mailing list, ticket tracking, wiki - and account management services - ''; - - listenAddress = mkOption { - type = types.str; - default = "localhost"; - description = "Address to bind to."; - }; - - python = mkOption { - internal = true; - type = types.package; - default = python; - description = '' - The python package to use. It should contain references to the *srht modules and also - gunicorn. - ''; - }; - - minio = { - enable = mkEnableOption ''local minio integration''; - }; - - nginx = { - enable = mkEnableOption ''local nginx integration''; - virtualHost = mkOption { - type = types.attrs; - default = { }; - description = "Virtual-host configuration merged with all Sourcehut's virtual-hosts."; - }; - }; - - postfix = { - enable = mkEnableOption ''local postfix integration''; - }; - - postgresql = { - enable = mkEnableOption ''local postgresql integration''; - }; - - redis = { - enable = mkEnableOption ''local redis integration in a dedicated redis-server''; - }; - - settings = mkOption { - type = lib.types.submodule { - freeformType = settingsFormat.type; - options."sr.ht" = { - global-domain = mkOption { - description = "Global domain name."; - type = types.str; - example = "example.com"; - }; - environment = mkOption { - description = "Values other than \"production\" adds a banner to each page."; - type = types.enum [ - "development" - "production" - ]; - default = "development"; - }; - network-key = mkOption { - description = '' - An absolute file path (which should be outside the Nix-store) - to a secret key to encrypt internal messages with. Use `srht-keygen network` to - generate this key. It must be consistent between all services and nodes. - ''; - type = types.path; - apply = s: "<" + toString s; - }; - owner-email = mkOption { - description = "Owner's email."; - type = types.str; - default = "contact@example.com"; - }; - owner-name = mkOption { - description = "Owner's name."; - type = types.str; - default = "John Doe"; - }; - site-blurb = mkOption { - description = "Blurb for your site."; - type = types.str; - default = "the hacker's forge"; - }; - site-info = mkOption { - description = "The top-level info page for your site."; - type = types.str; - default = "https://sourcehut.org"; - }; - service-key = mkOption { - description = '' - An absolute file path (which should be outside the Nix-store) - to a key used for encrypting session cookies. Use `srht-keygen service` to - generate the service key. This must be shared between each node of the same - service (e.g. git1.sr.ht and git2.sr.ht), but different services may use - different keys. If you configure all of your services with the same - config.ini, you may use the same service-key for all of them. - ''; - type = types.path; - apply = s: "<" + toString s; - }; - site-name = mkOption { - description = "The name of your network of sr.ht-based sites."; - type = types.str; - default = "sourcehut"; - }; - source-url = mkOption { - description = "The source code for your fork of sr.ht."; - type = types.str; - default = "https://git.sr.ht/~sircmpwn/srht"; - }; - }; - options.mail = { - smtp-host = mkOptionNullOrStr "Outgoing SMTP host."; - smtp-port = mkOption { - description = "Outgoing SMTP port."; - type = with types; nullOr port; - default = null; - }; - smtp-user = mkOptionNullOrStr "Outgoing SMTP user."; - smtp-password = mkOptionNullOrStr "Outgoing SMTP password."; - smtp-from = mkOption { - type = types.str; - description = "Outgoing SMTP FROM."; - }; - error-to = mkOptionNullOrStr "Address receiving application exceptions"; - error-from = mkOptionNullOrStr "Address sending application exceptions"; - pgp-privkey = mkOption { - type = types.str; - description = '' - An absolute file path (which should be outside the Nix-store) - to an OpenPGP private key. - - Your PGP key information (DO NOT mix up pub and priv here) - You must remove the password from your secret key, if present. - You can do this with `gpg --edit-key [key-id]`, - then use the `passwd` command and do not enter a new password. - ''; - }; - pgp-pubkey = mkOption { - type = with types; either path str; - description = "OpenPGP public key."; - }; - pgp-key-id = mkOption { - type = types.str; - description = "OpenPGP key identifier."; - }; - }; - options.objects = { - s3-upstream = mkOption { - description = "Configure the S3-compatible object storage service."; - type = with types; nullOr str; - default = null; - }; - s3-access-key = mkOption { - description = "Access key to the S3-compatible object storage service"; - type = with types; nullOr str; - default = null; - }; - s3-secret-key = mkOption { - description = '' - An absolute file path (which should be outside the Nix-store) - to the secret key of the S3-compatible object storage service. - ''; - type = with types; nullOr path; - default = null; - apply = mapNullable (s: "<" + toString s); - }; - }; - options.webhooks = { - private-key = mkOption { - description = '' - An absolute file path (which should be outside the Nix-store) - to a base64-encoded Ed25519 key for signing webhook payloads. - This should be consistent for all *.sr.ht sites, - as this key will be used to verify signatures - from other sites in your network. - Use the `srht-keygen webhook` command to generate a key. - ''; - type = types.path; - apply = s: "<" + toString s; - }; - }; - - options."builds.sr.ht" = commonServiceSettings "builds" // { - allow-free = mkEnableOption "nonpaying users to submit builds"; - redis = mkOption { - description = "The Redis connection used for the Celery worker."; - type = types.str; - default = "redis+socket:///run/redis-sourcehut-builds.sr.ht/redis.sock?virtual_host=2"; - }; - shell = mkOption { - description = '' - Scripts used to launch on SSH connection. - `/usr/bin/master-shell` on master, - `/usr/bin/runner-shell` on runner. - If master and worker are on the same system - set to `/usr/bin/runner-shell`. - ''; - type = types.enum [ - "/usr/bin/master-shell" - "/usr/bin/runner-shell" - ]; - default = "/usr/bin/master-shell"; - }; - }; - options."builds.sr.ht::worker" = { - bind-address = mkOption { - description = '' - HTTP bind address for serving local build information/monitoring. - ''; - type = types.str; - default = "localhost:8080"; - }; - buildlogs = mkOption { - description = "Path to write build logs."; - type = types.str; - default = "/var/log/sourcehut/buildsrht-worker"; - }; - name = mkOption { - description = '' - Listening address and listening port - of the build runner (with HTTP port if not 80). - ''; - type = types.str; - default = "localhost:5020"; - }; - timeout = mkOption { - description = '' - Max build duration. - See . - ''; - type = types.str; - default = "3m"; - }; - }; - - options."git.sr.ht" = commonServiceSettings "git" // { - outgoing-domain = mkOption { - description = "Outgoing domain."; - type = types.str; - default = "https://git.localhost.localdomain"; - }; - post-update-script = mkOption { - description = '' - A post-update script which is installed in every git repo. - This setting is propagated to newer and existing repositories. - ''; - type = types.path; - default = "${cfg.git.package}/bin/git.sr.ht-update-hook"; - defaultText = "\${pkgs.sourcehut.gitsrht}/bin/git.sr.ht-update-hook"; - }; - repos = mkOption { - description = '' - Path to git repositories on disk. - If changing the default, you must ensure that - the gitsrht's user as read and write access to it. - ''; - type = types.str; - default = "/var/lib/sourcehut/git.sr.ht/repos"; - }; - webhooks = mkOption { - description = "The Redis connection used for the webhooks worker."; - type = types.str; - default = "redis+socket:///run/redis-sourcehut-git.sr.ht/redis.sock?virtual_host=1"; - }; - }; - options."git.sr.ht::api" = { - internal-ipnet = mkOption { - description = '' - Set of IP subnets which are permitted to utilize internal API - authentication. This should be limited to the subnets - from which your *.sr.ht services are running. - See [](#opt-services.sourcehut.listenAddress). - ''; - type = with types; listOf str; - default = [ - "127.0.0.0/8" - "::1/128" - ]; - }; - }; - - options."hg.sr.ht" = commonServiceSettings "hg" // { - changegroup-script = mkOption { - description = '' - A changegroup script which is installed in every mercurial repo. - This setting is propagated to newer and existing repositories. - ''; - type = types.str; - default = "${cfg.hg.package}/bin/hg.sr.ht-hook-changegroup"; - defaultText = "\${pkgs.sourcehut.hgsrht}/bin/hg.sr.ht-hook-changegroup"; - }; - repos = mkOption { - description = '' - Path to mercurial repositories on disk. - If changing the default, you must ensure that - the hgsrht's user as read and write access to it. - ''; - type = types.str; - default = "/var/lib/sourcehut/hg.sr.ht/repos"; - }; - srhtext = mkOptionNullOrStr '' - Path to the srht mercurial extension - (defaults to where the hgsrht code is) - ''; - clone_bundle_threshold = mkOption { - description = ".hg/store size (in MB) past which the nightly job generates clone bundles."; - type = types.ints.unsigned; - default = 50; - }; - hg_ssh = mkOption { - description = "Path to hg-ssh (if not in $PATH)."; - type = types.str; - default = "${pkgs.mercurial}/bin/hg-ssh"; - defaultText = "\${pkgs.mercurial}/bin/hg-ssh"; - }; - webhooks = mkOption { - description = "The Redis connection used for the webhooks worker."; - type = types.str; - default = "redis+socket:///run/redis-sourcehut-hg.sr.ht/redis.sock?virtual_host=1"; - }; - }; - - options."hub.sr.ht" = commonServiceSettings "hub" // { - }; - - options."lists.sr.ht" = commonServiceSettings "lists" // { - allow-new-lists = mkEnableOption "creation of new lists"; - notify-from = mkOption { - description = "Outgoing email for notifications generated by users."; - type = types.str; - default = "lists-notify@localhost.localdomain"; - }; - posting-domain = mkOption { - description = "Posting domain."; - type = types.str; - default = "lists.localhost.localdomain"; - }; - redis = mkOption { - description = "The Redis connection used for the Celery worker."; - type = types.str; - default = "redis+socket:///run/redis-sourcehut-lists.sr.ht/redis.sock?virtual_host=2"; - }; - webhooks = mkOption { - description = "The Redis connection used for the webhooks worker."; - type = types.str; - default = "redis+socket:///run/redis-sourcehut-lists.sr.ht/redis.sock?virtual_host=1"; - }; - }; - options."lists.sr.ht::worker" = { - reject-mimetypes = mkOption { - description = '' - Comma-delimited list of Content-Types to reject. Messages with Content-Types - included in this list are rejected. Multipart messages are always supported, - and each part is checked against this list. - - Uses fnmatch for wildcard expansion. - ''; - type = with types; listOf str; - default = [ "text/html" ]; - }; - reject-url = mkOption { - description = "Reject URL."; - type = types.str; - default = "https://man.sr.ht/lists.sr.ht/etiquette.md"; - }; - sock = mkOption { - description = '' - Path for the lmtp daemon's unix socket. Direct incoming mail to this socket. - Alternatively, specify IP:PORT and an SMTP server will be run instead. - ''; - type = types.str; - default = "/tmp/lists.sr.ht-lmtp.sock"; - }; - sock-group = mkOption { - description = '' - The lmtp daemon will make the unix socket group-read/write - for users in this group. - ''; - type = types.str; - default = "postfix"; - }; - }; - - options."man.sr.ht" = commonServiceSettings "man" // { - }; - - options."meta.sr.ht" = - removeAttrs (commonServiceSettings "meta") [ - "oauth-client-id" - "oauth-client-secret" - ] - // { - webhooks = mkOption { - description = "The Redis connection used for the webhooks worker."; - type = types.str; - default = "redis+socket:///run/redis-sourcehut-meta.sr.ht/redis.sock?virtual_host=1"; - }; - welcome-emails = mkEnableOption "sending stock sourcehut welcome emails after signup"; - }; - options."meta.sr.ht::api" = { - internal-ipnet = mkOption { - description = '' - Set of IP subnets which are permitted to utilize internal API - authentication. This should be limited to the subnets - from which your *.sr.ht services are running. - See [](#opt-services.sourcehut.listenAddress). - ''; - type = with types; listOf str; - default = [ - "127.0.0.0/8" - "::1/128" - ]; - }; - }; - options."meta.sr.ht::aliases" = mkOption { - description = "Aliases for the client IDs of commonly used OAuth clients."; - type = with types; attrsOf int; - default = { }; - example = { - "git.sr.ht" = 12345; - }; - }; - options."meta.sr.ht::billing" = { - enabled = mkEnableOption "the billing system"; - stripe-public-key = mkOptionNullOrStr "Public key for Stripe. Get your keys at "; - stripe-secret-key = - mkOptionNullOrStr '' - An absolute file path (which should be outside the Nix-store) - to a secret key for Stripe. Get your keys at - '' - // { - apply = mapNullable (s: "<" + toString s); - }; - }; - options."meta.sr.ht::settings" = { - registration = mkEnableOption "public registration"; - onboarding-redirect = mkOption { - description = "Where to redirect new users upon registration."; - type = types.str; - default = "https://meta.localhost.localdomain"; - }; - user-invites = mkOption { - description = '' - How many invites each user is issued upon registration - (only applicable if open registration is disabled). - ''; - type = types.ints.unsigned; - default = 5; - }; - }; - - options."pages.sr.ht" = commonServiceSettings "pages" // { - gemini-certs = mkOption { - description = '' - An absolute file path (which should be outside the Nix-store) - to Gemini certificates. - ''; - type = with types; nullOr path; - default = null; - }; - max-site-size = mkOption { - description = "Maximum size of any given site (post-gunzip), in MiB."; - type = types.int; - default = 1024; - }; - user-domain = mkOption { - description = '' - Configures the user domain, if enabled. - All users are given \.this.domain. - ''; - type = with types; nullOr str; - default = null; - }; - }; - options."pages.sr.ht::api" = { - internal-ipnet = mkOption { - description = '' - Set of IP subnets which are permitted to utilize internal API - authentication. This should be limited to the subnets - from which your *.sr.ht services are running. - See [](#opt-services.sourcehut.listenAddress). - ''; - type = with types; listOf str; - default = [ - "127.0.0.0/8" - "::1/128" - ]; - }; - }; - - options."paste.sr.ht" = commonServiceSettings "paste" // { - }; - - options."todo.sr.ht" = commonServiceSettings "todo" // { - notify-from = mkOption { - description = "Outgoing email for notifications generated by users."; - type = types.str; - default = "todo-notify@localhost.localdomain"; - }; - webhooks = mkOption { - description = "The Redis connection used for the webhooks worker."; - type = types.str; - default = "redis+socket:///run/redis-sourcehut-todo.sr.ht/redis.sock?virtual_host=1"; - }; - }; - options."todo.sr.ht::mail" = { - posting-domain = mkOption { - description = "Posting domain."; - type = types.str; - default = "todo.localhost.localdomain"; - }; - sock = mkOption { - description = '' - Path for the lmtp daemon's unix socket. Direct incoming mail to this socket. - Alternatively, specify IP:PORT and an SMTP server will be run instead. - ''; - type = types.str; - default = "/tmp/todo.sr.ht-lmtp.sock"; - }; - sock-group = mkOption { - description = '' - The lmtp daemon will make the unix socket group-read/write - for users in this group. - ''; - type = types.str; - default = "postfix"; - }; - }; - }; - default = { }; - description = '' - The configuration for the sourcehut network. - ''; - }; - - builds = { - enableWorker = mkEnableOption '' - worker for builds.sr.ht - - ::: {.warning} - For smaller deployments, job runners can be installed alongside the master server - but even if you only build your own software, integration with other services - may cause you to run untrusted builds - (e.g. automatic testing of patches via listssrht). - See . - ::: - ''; - - images = mkOption { - type = with types; attrsOf (attrsOf (attrsOf package)); - default = { }; - example = lib.literalExpression '' - (let - # Pinning unstable to allow usage with flakes and limit rebuilds. - pkgs_unstable = builtins.fetchGit { - url = "https://github.com/NixOS/nixpkgs"; - rev = "ff96a0fa5635770390b184ae74debea75c3fd534"; - ref = "nixos-unstable"; - }; - image_from_nixpkgs = (import ("''${pkgs.sourcehut.buildsrht}/lib/images/nixos/image.nix") { - pkgs = (import pkgs_unstable {}); - }); - in - { - nixos.unstable.x86_64 = image_from_nixpkgs; - } - )''; - description = '' - Images for builds.sr.ht. Each package should be distro.release.arch and point to a /nix/store/package/root.img.qcow2. - ''; - }; - }; - - git = { - gitPackage = mkPackageOption pkgs "git" { - example = "gitFull"; - }; - fcgiwrap.preforkProcess = mkOption { - description = "Number of fcgiwrap processes to prefork."; - type = types.int; - default = 4; - }; - }; - - hg = { - mercurialPackage = mkPackageOption pkgs "mercurial" { }; - cloneBundles = mkOption { - type = types.bool; - default = false; - description = '' - Generate clonebundles (which require more disk space but dramatically speed up cloning large repositories). - ''; - }; - }; - - lists = { - process = { - extraArgs = mkOption { - type = with types; listOf str; - default = [ - "--loglevel DEBUG" - "--pool eventlet" - "--without-heartbeat" - ]; - description = "Extra arguments passed to the Celery responsible for processing mails."; - }; - celeryConfig = mkOption { - type = types.lines; - default = ""; - description = "Content of the `celeryconfig.py` used by the Celery of `listssrht-process`."; - }; - }; - }; - }; - - config = mkIf cfg.enable (mkMerge [ - { - # TODO: make configurable - environment.systemPackages = [ pkgs.sourcehut.coresrht ]; - - services.sourcehut.settings = { - "git.sr.ht".outgoing-domain = mkDefault "https://git.${domain}"; - "lists.sr.ht".notify-from = mkDefault "lists-notify@${domain}"; - "lists.sr.ht".posting-domain = mkDefault "lists.${domain}"; - "meta.sr.ht::settings".onboarding-redirect = mkDefault "https://meta.${domain}"; - "todo.sr.ht".notify-from = mkDefault "todo-notify@${domain}"; - "todo.sr.ht::mail".posting-domain = mkDefault "todo.${domain}"; - }; - } - (mkIf cfg.postgresql.enable { - assertions = [ - { - assertion = postgresql.enable; - message = "postgresql must be enabled and configured"; - } - ]; - }) - (mkIf cfg.postfix.enable { - assertions = [ - { - assertion = postfix.enable; - message = "postfix must be enabled and configured"; - } - ]; - # Needed for sharing the LMTP sockets with JoinsNamespaceOf= - systemd.services.postfix.serviceConfig.PrivateTmp = true; - }) - (mkIf cfg.redis.enable { - services.redis.vmOverCommit = mkDefault true; - }) - (mkIf cfg.nginx.enable { - assertions = [ - { - assertion = nginx.enable; - message = "nginx must be enabled and configured"; - } - ]; - # For proxyPass= in virtual-hosts for Sourcehut services. - services.nginx.recommendedProxySettings = mkDefault true; - }) - (mkIf (cfg.builds.enable || cfg.git.enable || cfg.hg.enable) { - services.openssh = { - # Note that sshd will continue to honor AuthorizedKeysFile. - # Note that you may want automatically rotate - # or link to /dev/null the following log files: - # - /var/log/gitsrht-dispatch - # - /var/log/{build,git,hg}srht-keys - # - /var/log/{git,hg}srht-shell - # - /var/log/gitsrht-update-hook - authorizedKeysCommand = ''/etc/ssh/sourcehut/subdir/srht-dispatch "%u" "%h" "%t" "%k"''; - # srht-dispatch will setuid/setgid according to [git.sr.ht::dispatch] - authorizedKeysCommandUser = "root"; - extraConfig = '' - PermitUserEnvironment SRHT_* - ''; - startWhenNeeded = false; - }; - environment.etc."ssh/sourcehut/config.ini".source = - settingsFormat.generate "sourcehut-dispatch-config.ini" - (filterAttrs (k: v: k == "git.sr.ht::dispatch") cfg.settings); - environment.etc."ssh/sourcehut/subdir/srht-dispatch" = { - # sshd_config(5): The program must be owned by root, not writable by group or others - mode = "0755"; - source = pkgs.writeShellScript "srht-dispatch-wrapper" '' - set -e - set -x - cd /etc/ssh/sourcehut/subdir - ${cfg.git.package}/bin/git.sr.ht-dispatch "$@" - ''; - }; - systemd.tmpfiles.settings."10-sourcehut-gitsrht" = mkIf cfg.git.enable (mkMerge [ - (builtins.listToAttrs ( - map - (name: { - name = "/var/log/sourcehut/git.sr.ht-${name}"; - value.f = { - inherit (cfg.git) user group; - mode = "0644"; - }; - }) - [ - "keys" - "shell" - "update-hook" - ] - )) - { - ${cfg.settings."git.sr.ht".repos}.d = { - inherit (cfg.git) user group; - mode = "0644"; - }; - } - ]); - systemd.services.sshd = { - preStart = mkIf cfg.hg.enable '' - chown ${cfg.hg.user}:${cfg.hg.group} /var/log/sourcehut/hg.sr.ht-keys - ''; - serviceConfig = { - LogsDirectory = "sourcehut"; - BindReadOnlyPaths = - # Note that those /usr/bin/* paths are hardcoded in multiple places in *.sr.ht, - # for instance to get the user from the [git.sr.ht::dispatch] settings. - # *srht-keys needs to: - # - access a redis-server in [sr.ht] redis-host, - # - access the PostgreSQL server in [*.sr.ht] connection-string, - # - query metasrht-api (through the HTTP API). - # Using this has the side effect of creating empty files in /usr/bin/ - optionals cfg.builds.enable [ - "${pkgs.writeShellScript "buildsrht-keys-wrapper" '' - set -e - cd /run/sourcehut/buildsrht/subdir - exec -a "$0" ${cfg.builds.package}/bin/builds.sr.ht-keys "$@" - ''}:/usr/bin/buildsrht-keys" - "${cfg.builds.package}/bin/master-shell:/usr/bin/master-shell" - "${cfg.builds.package}/bin/runner-shell:/usr/bin/runner-shell" - ] - ++ optionals cfg.git.enable [ - # /path/to/gitsrht-keys calls /path/to/gitsrht-shell, - # or [git.sr.ht] shell= if set. - "${pkgs.writeShellScript "gitsrht-keys-wrapper" '' - set -e - cd /run/sourcehut/git.sr.ht/subdir - exec -a "$0" ${cfg.git.package}/bin/git.sr.ht-keys "$@" - ''}:/usr/bin/git.sr.ht-keys" - "${pkgs.writeShellScript "gitsrht-shell-wrapper" '' - set -e - cd /run/sourcehut/git.sr.ht/subdir - export PATH="${cfg.git.gitPackage}/bin:$PATH" - export SRHT_CONFIG=/run/sourcehut/git.sr.ht/config.ini - exec -a "$0" ${cfg.git.package}/bin/git.sr.ht-shell "$@" - ''}:/usr/bin/git.sr.ht-shell" - "${pkgs.writeShellScript "gitsrht-update-hook" '' - set -e - export SRHT_CONFIG=/run/sourcehut/git.sr.ht/config.ini - # hooks/post-update calls /usr/bin/gitsrht-update-hook as hooks/stage-3 - # but this wrapper being a bash script, it overrides $0 with /usr/bin/gitsrht-update-hook - # hence this hack to put hooks/stage-3 back into gitsrht-update-hook's $0 - if test "''${STAGE3:+set}" - then - exec -a hooks/stage-3 ${cfg.git.package}/bin/git.sr.ht-update-hook "$@" - else - export STAGE3=set - exec -a "$0" ${cfg.git.package}/bin/git.sr.ht-update-hook "$@" - fi - ''}:/usr/bin/git.sr.ht-update-hook" - ] - ++ optionals cfg.hg.enable [ - # /path/to/hgsrht-keys calls /path/to/hgsrht-shell, - # or [hg.sr.ht] shell= if set. - "${pkgs.writeShellScript "hgsrht-keys-wrapper" '' - set -e - cd /run/sourcehut/hg.sr.ht/subdir - exec -a "$0" ${cfg.hg.package}/bin/hg.sr.ht-keys "$@" - ''}:/usr/bin/hg.sr.ht-keys" - "${pkgs.writeShellScript "hg.sr.ht-shell-wrapper" '' - set -e - cd /run/sourcehut/hg.sr.ht/subdir - exec -a "$0" ${cfg.hg.package}/bin/hg.sr.ht-shell "$@" - ''}:/usr/bin/hg.sr.ht-shell" - # Mercurial's changegroup hooks are run relative to their repository's directory, - # but hgsrht-hook-changegroup looks up ./config.ini - "${pkgs.writeShellScript "hgsrht-hook-changegroup" '' - set -e - test -e "''$PWD"/config.ini || - ln -s /run/sourcehut/hg.sr.ht/config.ini "''$PWD"/config.ini - exec -a "$0" ${cfg.hg.package}/bin/hg.sr.ht-hook-changegroup "$@" - ''}:/usr/bin/hg.sr.ht-hook-changegroup" - ]; - }; - }; - }) - ]); - - imports = [ - - (import ./service.nix "builds" { - inherit configIniOfService; - pkgname = "buildsrht"; - port = 5002; - extraServices."build.sr.ht-api" = { - serviceConfig.Restart = "always"; - serviceConfig.RestartSec = "5s"; - serviceConfig.ExecStart = "${cfg.builds.package}/bin/builds.sr.ht-api -b ${cfg.listenAddress}:${ - toString (cfg.builds.port + 100) - }"; - }; - # TODO: a celery worker on the master and worker are apparently needed - extraServices."build.sr.ht-worker" = - let - qemuPackage = pkgs.qemu_kvm; - serviceName = "buildsrht-worker"; - statePath = "/var/lib/sourcehut/${serviceName}"; - in - mkIf cfg.builds.enableWorker { - path = [ - pkgs.openssh - pkgs.docker - ]; - preStart = '' - set -x - if test -z "$(docker images -q qemu:latest 2>/dev/null)" \ - || test "$(cat ${statePath}/docker-image-qemu)" != "${qemuPackage.version}" - then - # Create and import qemu:latest image for docker - ${ - pkgs.dockerTools.streamLayeredImage { - name = "qemu"; - tag = "latest"; - contents = [ qemuPackage ]; - } - } | docker load - # Mark down current package version - echo '${qemuPackage.version}' >${statePath}/docker-image-qemu - fi - ''; - serviceConfig = { - ExecStart = "${cfg.builds.package}/bin/builds.sr.ht-worker"; - BindPaths = [ cfg.settings."builds.sr.ht::worker".buildlogs ]; - LogsDirectory = [ "sourcehut/${serviceName}" ]; - RuntimeDirectory = [ "sourcehut/${serviceName}/subdir" ]; - StateDirectory = [ "sourcehut/${serviceName}" ]; - TimeoutStartSec = "1800s"; - # buildsrht-worker looks up ../config.ini - WorkingDirectory = "-" + "/run/sourcehut/${serviceName}/subdir"; - }; - }; - extraConfig = - let - image_dirs = flatten ( - mapAttrsToList ( - distro: revs: - mapAttrsToList ( - rev: archs: - mapAttrsToList ( - arch: image: - pkgs.runCommand "buildsrht-images" { } '' - mkdir -p $out/${distro}/${rev}/${arch} - ln -s ${image}/*.qcow2 $out/${distro}/${rev}/${arch}/root.img.qcow2 - '' - ) archs - ) revs - ) cfg.builds.images - ); - image_dir_pre = pkgs.symlinkJoin { - name = "buildsrht-worker-images-pre"; - paths = image_dirs; - # FIXME: not working, apparently because ubuntu/latest is a broken link - # ++ [ "${cfg.builds.package}/lib/images" ]; - }; - image_dir = pkgs.runCommand "buildsrht-worker-images" { } '' - mkdir -p $out/images - cp -Lr ${image_dir_pre}/* $out/images - ''; - in - mkMerge [ - { - users.users.${cfg.builds.user}.shell = pkgs.bash; - - virtualisation.docker.enable = true; - - services.sourcehut.settings = mkMerge [ - { - # Note that git.sr.ht::dispatch is not a typo, - # gitsrht-dispatch always use this section - "git.sr.ht::dispatch"."/usr/bin/builds.sr.ht-keys" = - mkDefault "${cfg.builds.user}:${cfg.builds.group}"; - } - (mkIf cfg.builds.enableWorker { - "builds.sr.ht::worker".shell = "/usr/bin/runner-shell"; - "builds.sr.ht::worker".images = mkDefault "${image_dir}/images"; - "builds.sr.ht::worker".controlcmd = mkDefault "${image_dir}/images/control"; - }) - ]; - } - (mkIf cfg.builds.enableWorker { - users.groups = { - docker.members = [ cfg.builds.user ]; - }; - }) - (mkIf (cfg.builds.enableWorker && cfg.nginx.enable) { - # Allow nginx access to buildlogs - users.users.${nginx.user}.extraGroups = [ cfg.builds.group ]; - systemd.services.nginx = { - serviceConfig.BindReadOnlyPaths = [ cfg.settings."builds.sr.ht::worker".buildlogs ]; - }; - services.nginx.virtualHosts."logs.${domain}" = mkMerge [ - { - /* - FIXME: is a listen needed? - listen = with builtins; - # FIXME: not compatible with IPv6 - let address = split ":" cfg.settings."builds.sr.ht::worker".name; in - [{ addr = elemAt address 0; port = lib.toInt (elemAt address 2); }]; - */ - locations."/logs/".alias = cfg.settings."builds.sr.ht::worker".buildlogs + "/"; - } - cfg.nginx.virtualHost - ]; - }) - ]; - }) - - (import ./service.nix "git" ( - let - baseService = { - path = [ cfg.git.gitPackage ]; - serviceConfig.BindPaths = [ - "${cfg.settings."git.sr.ht".repos}:/var/lib/sourcehut/git.sr.ht/repos" - ]; - }; - in - { - inherit configIniOfService; - mainService = mkMerge [ - baseService - { - serviceConfig.StateDirectory = [ - "sourcehut/git.sr.ht" - "sourcehut/git.sr.ht/repos" - ]; - preStart = mkIf (versionOlder config.system.stateVersion "22.05") (mkBefore '' - # Fix Git hooks of repositories pre-dating https://github.com/NixOS/nixpkgs/pull/133984 - ( - set +f - shopt -s nullglob - for h in /var/lib/sourcehut/git.sr.ht/repos/~*/*/hooks/{pre-receive,update,post-update} - do ln -fnsv /usr/bin/git.sr.ht-update-hook "$h"; done - ) - ''); - } - ]; - port = 5001; - webhooks = true; - extraTimers."git.sr.ht-periodic" = { - service = baseService; - timerConfig.OnCalendar = [ "*:0/20" ]; - }; - extraConfig = mkMerge [ - { - # https://stackoverflow.com/questions/22314298/git-push-results-in-fatal-protocol-error-bad-line-length-character-this - # Probably could use gitsrht-shell if output is restricted to just parameters... - users.users.${cfg.git.user}.shell = pkgs.bash; - services.sourcehut.settings = { - "git.sr.ht::dispatch"."/usr/bin/git.sr.ht-keys" = mkDefault "${cfg.git.user}:${cfg.git.group}"; - }; - systemd.services.sshd = baseService; - } - (mkIf cfg.nginx.enable { - services.nginx.virtualHosts."git.${domain}" = { - locations."/authorize" = { - proxyPass = "http://${cfg.listenAddress}:${toString cfg.git.port}"; - extraConfig = '' - proxy_pass_request_body off; - proxy_set_header Content-Length ""; - proxy_set_header X-Original-URI $request_uri; - ''; - }; - locations."~ ^/([^/]+)/([^/]+)/(HEAD|info/refs|objects/info/.*|git-upload-pack).*$" = { - root = "/var/lib/sourcehut/git.sr.ht/repos"; - fastcgiParams = { - GIT_HTTP_EXPORT_ALL = ""; - GIT_PROJECT_ROOT = "$document_root"; - PATH_INFO = "$uri"; - SCRIPT_FILENAME = "${cfg.git.gitPackage}/bin/git-http-backend"; - }; - extraConfig = '' - auth_request /authorize; - fastcgi_read_timeout 500s; - fastcgi_pass unix:/run/git.sr.ht-fcgiwrap.sock; - gzip off; - ''; - }; - }; - systemd.sockets."git.sr.ht-fcgiwrap" = { - before = [ "nginx.service" ]; - wantedBy = [ - "sockets.target" - "git.sr.ht.service" - ]; - # This path remains accessible to nginx.service, which has no RootDirectory= - socketConfig.ListenStream = "/run/git.sr.ht-fcgiwrap.sock"; - socketConfig.SocketUser = nginx.user; - socketConfig.SocketMode = "600"; - }; - }) - ]; - extraServices."git.sr.ht-api".serviceConfig = { - Restart = "always"; - RestartSec = "5s"; - ExecStart = "${cfg.git.package}/bin/git.sr.ht-api -b ${cfg.listenAddress}:${toString (cfg.git.port + 100)}"; - BindPaths = [ "${cfg.settings."git.sr.ht".repos}:/var/lib/sourcehut/git.sr.ht/repos" ]; - }; - extraServices."git.sr.ht-fcgiwrap" = mkIf cfg.nginx.enable { - serviceConfig = { - # Socket is passed by gitsrht-fcgiwrap.socket - ExecStart = "${pkgs.fcgiwrap}/bin/fcgiwrap -c ${toString cfg.git.fcgiwrap.preforkProcess}"; - # No need for config.ini - ExecStartPre = mkForce [ ]; - # FIXME: Fails to start with dynamic user - # User = null; - # DynamicUser = true; - BindReadOnlyPaths = [ "${cfg.settings."git.sr.ht".repos}:/var/lib/sourcehut/git.sr.ht/repos" ]; - IPAddressDeny = "any"; - InaccessiblePaths = [ - "-+/run/postgresql" - "-+/run/redis-sourcehut" - ]; - PrivateNetwork = true; - RestrictAddressFamilies = mkForce [ "none" ]; - SystemCallFilter = mkForce [ - "@system-service" - "~@aio" - "~@keyring" - "~@memlock" - "~@privileged" - "~@resources" - "~@setuid" - # @timer is needed for alarm() - ]; - }; - }; - } - )) - - (import ./service.nix "hg" ( - let - baseService = { - path = [ cfg.hg.mercurialPackage ]; - serviceConfig.BindPaths = [ "${cfg.settings."hg.sr.ht".repos}:/var/lib/sourcehut/hg.sr.ht/repos" ]; - }; - in - { - inherit configIniOfService; - mainService = mkMerge [ - baseService - { - serviceConfig.StateDirectory = [ - "sourcehut/hg.sr.ht" - "sourcehut/hg.sr.ht/repos" - ]; - } - ]; - port = 5010; - webhooks = true; - extraTimers."hg.sr.ht-periodic" = { - service = baseService; - timerConfig.OnCalendar = [ "*:0/20" ]; - }; - extraTimers."hg.sr.ht-clonebundles" = mkIf cfg.hg.cloneBundles { - service = baseService; - timerConfig.OnCalendar = [ "daily" ]; - timerConfig.AccuracySec = "1h"; - }; - extraServices."hg.sr.ht-api" = { - serviceConfig.Restart = "always"; - serviceConfig.RestartSec = "5s"; - serviceConfig.ExecStart = "${cfg.hgsrht.package}/bin/hg.sr.ht-api -b ${cfg.listenAddress}:${toString (cfg.hg.port + 100)}"; - }; - extraConfig = mkMerge [ - { - users.users.${cfg.hg.user}.shell = pkgs.bash; - services.sourcehut.settings = { - # Note that git.sr.ht::dispatch is not a typo, - # gitsrht-dispatch always uses this section. - "git.sr.ht::dispatch"."/usr/bin/hg.sr.ht-keys" = mkDefault "${cfg.hg.user}:${cfg.hg.group}"; - }; - systemd.services.sshd = baseService; - } - (mkIf cfg.nginx.enable { - # Allow nginx access to repositories - users.users.${nginx.user}.extraGroups = [ cfg.hg.group ]; - services.nginx.virtualHosts."hg.${domain}" = { - locations."/authorize" = { - proxyPass = "http://${cfg.listenAddress}:${toString cfg.hg.port}"; - extraConfig = '' - proxy_pass_request_body off; - proxy_set_header Content-Length ""; - proxy_set_header X-Original-URI $request_uri; - ''; - }; - # Let clients reach pull bundles. We don't really need to lock this down even for - # private repos because the bundles are named after the revision hashes... - # so someone would need to know or guess a SHA value to download anything. - # TODO: proxyPass to an hg serve service? - locations."~ ^/[~^][a-z0-9_]+/[a-zA-Z0-9_.-]+/\\.hg/bundles/.*$" = { - root = "/var/lib/nginx/hg.sr.ht/repos"; - extraConfig = '' - auth_request /authorize; - gzip off; - ''; - }; - }; - systemd.services.nginx = { - serviceConfig.BindReadOnlyPaths = [ - "${cfg.settings."hg.sr.ht".repos}:/var/lib/nginx/hg.sr.ht/repos" - ]; - }; - }) - ]; - } - )) - - (import ./service.nix "hub" { - inherit configIniOfService; - port = 5014; - extraConfig = { - services.nginx = mkIf cfg.nginx.enable { - virtualHosts."hub.${domain}" = mkMerge [ - { - serverAliases = [ domain ]; - } - cfg.nginx.virtualHost - ]; - }; - }; - }) - - (import ./service.nix "lists" ( - let - srvsrht = "listssrht"; - in - { - inherit configIniOfService; - port = 5006; - webhooks = true; - extraServices."lists.sr.ht-api" = { - serviceConfig.Restart = "always"; - serviceConfig.RestartSec = "5s"; - serviceConfig.ExecStart = "${cfg.lists.package}/bin/lists.sr.ht-api -b ${cfg.listenAddress}:${ - toString (cfg.lists.port + 100) - }"; - }; - # Receive the mail from Postfix and enqueue them into Redis and PostgreSQL - extraServices."lists.sr.ht-lmtp" = { - wants = [ "postfix.service" ]; - unitConfig.JoinsNamespaceOf = optional cfg.postfix.enable "postfix.service"; - serviceConfig.ExecStart = "${cfg.lists.package}/bin/lists.sr.ht-lmtp"; - # Avoid crashing: os.chown(sock, os.getuid(), sock_gid) - serviceConfig.PrivateUsers = mkForce false; - }; - # Dequeue the mails from Redis and dispatch them - extraServices."lists.sr.ht-process" = { - serviceConfig = { - preStart = '' - cp ${pkgs.writeText "${srvsrht}-webhooks-celeryconfig.py" cfg.lists.process.celeryConfig} \ - /run/sourcehut/${srvsrht}-webhooks/celeryconfig.py - ''; - ExecStart = - "${cfg.python}/bin/celery --app listssrht.process worker --hostname listssrht-process@%%h " - + concatStringsSep " " cfg.lists.process.extraArgs; - # Avoid crashing: os.getloadavg() - ProcSubset = mkForce "all"; - }; - }; - extraConfig = mkIf cfg.postfix.enable { - users.groups.${postfix.group}.members = [ cfg.lists.user ]; - services.sourcehut.settings."lists.sr.ht::mail".sock-group = postfix.group; - services.postfix = { - destination = [ "lists.${domain}" ]; - # FIXME: an accurate recipient list should be queried - # from the lists.sr.ht PostgreSQL database to avoid backscattering. - # But usernames are unfortunately not in that database but in meta.sr.ht. - # Note that two syntaxes are allowed: - # - ~username/list-name@lists.${domain} - # - u.username.list-name@lists.${domain} - localRecipients = [ "@lists.${domain}" ]; - transport = '' - lists.${domain} lmtp:unix:${cfg.settings."lists.sr.ht::worker".sock} - ''; - }; - }; - } - )) - - (import ./service.nix "man" { - inherit configIniOfService; - port = 5004; - }) - - (import ./service.nix "meta" { - inherit configIniOfService; - port = 5000; - webhooks = true; - extraTimers.metasrht-daily.timerConfig = { - OnCalendar = [ "daily" ]; - AccuracySec = "1h"; - }; - extraServices."meta.sr.ht-api" = { - serviceConfig.Restart = "always"; - serviceConfig.RestartSec = "5s"; - preStart = - "set -x\n" - + concatStringsSep "\n\n" ( - attrValues ( - mapAttrs ( - k: s: - let - srvMatch = builtins.match "^([a-z]*)\\.sr\\.ht$" k; - srv = head srvMatch; - in - # Configure client(s) as "preauthorized" - optionalString (srvMatch != null && cfg.${srv}.enable && ((s.oauth-client-id or null) != null)) '' - # Configure ${srv}'s OAuth client as "preauthorized" - ${postgresql.package}/bin/psql '${cfg.settings."meta.sr.ht".connection-string}' \ - -c "UPDATE oauthclient SET preauthorized = true WHERE client_id = '${s.oauth-client-id}'" - '' - ) cfg.settings - ) - ); - serviceConfig.ExecStart = "${cfg.meta.package}/bin/meta.sr.ht-api -b ${cfg.listenAddress}:${toString (cfg.meta.port + 100)}"; - }; - extraConfig = { - assertions = [ - { - assertion = - let - s = cfg.settings."meta.sr.ht::billing"; - in - s.enabled == "yes" -> (s.stripe-public-key != null && s.stripe-secret-key != null); - message = "If meta.sr.ht::billing is enabled, the keys must be defined."; - } - ]; - environment.systemPackages = optional cfg.meta.enable ( - pkgs.writeShellScriptBin "meta.sr.ht-manageuser" '' - set -eux - if test "$(${pkgs.coreutils}/bin/id -n -u)" != '${cfg.meta.user}' - then exec sudo -u '${cfg.meta.user}' "$0" "$@" - else - # In order to load config.ini - if cd /run/sourcehut/meta.sr.ht - then exec ${cfg.meta.package}/bin/meta.sr.ht-manageuser "$@" - else cat <${stateDir}/db - fi - - ${optionalString cfg.settings.${iniKey}.migrate-on-upgrade '' - # Just try all the migrations because they're not linked to the version - for sql in ${package}/share/sql/migrations/*.sql; do - ${postgresql.package}/bin/psql '${cfg.settings.${iniKey}.connection-string}' -f "$sql" || true - done - ''} - - # Disable webhook - touch ${stateDir}/webhook - ''; - serviceConfig = { - ExecStart = mkForce "${cfg.pages.package}/bin/pages.sr.ht -b ${cfg.listenAddress}:${toString cfg.pages.port}"; - }; - }; - }) - - (import ./service.nix "paste" { - inherit configIniOfService; - port = 5011; - extraServices."paste.sr.ht-api" = { - serviceConfig.Restart = "always"; - serviceConfig.RestartSec = "5s"; - serviceConfig.ExecStart = "${cfg.paste.package}/bin/paste.sr.ht-api -b ${cfg.listenAddress}:${ - toString (cfg.paste.port + 100) - }"; - }; - }) - - (import ./service.nix "todo" { - inherit configIniOfService; - port = 5003; - webhooks = true; - extraServices."todo.sr.ht-api" = { - serviceConfig.Restart = "always"; - serviceConfig.RestartSec = "5s"; - serviceConfig.ExecStart = "${cfg.todo.package}/bin/todo.sr.ht-api -b ${cfg.listenAddress}:${toString (cfg.todo.port + 100)}"; - }; - extraServices."todo.sr.ht-lmtp" = { - wants = [ "postfix.service" ]; - unitConfig.JoinsNamespaceOf = optional cfg.postfix.enable "postfix.service"; - serviceConfig.ExecStart = "${cfg.todo.package}/bin/todo.sr.ht-lmtp"; - # Avoid crashing: os.chown(sock, os.getuid(), sock_gid) - serviceConfig.PrivateUsers = mkForce false; - }; - extraConfig = mkIf cfg.postfix.enable { - users.groups.${postfix.group}.members = [ cfg.todo.user ]; - services.sourcehut.settings."todo.sr.ht::mail".sock-group = postfix.group; - services.postfix = { - destination = [ "todo.${domain}" ]; - # FIXME: an accurate recipient list should be queried - # from the todo.sr.ht PostgreSQL database to avoid backscattering. - # But usernames are unfortunately not in that database but in meta.sr.ht. - # Note that two syntaxes are allowed: - # - ~username/tracker-name@todo.${domain} - # - u.username.tracker-name@todo.${domain} - localRecipients = [ "@todo.${domain}" ]; - transport = '' - todo.${domain} lmtp:unix:${cfg.settings."todo.sr.ht::mail".sock} - ''; - }; - }; - }) - - (mkRenamedOptionModule - [ "services" "sourcehut" "originBase" ] - [ "services" "sourcehut" "settings" "sr.ht" "global-domain" ] - ) - (mkRenamedOptionModule - [ "services" "sourcehut" "address" ] - [ "services" "sourcehut" "listenAddress" ] - ) - - (mkRemovedOptionModule [ "services" "sourcehut" "dispatch" ] '' - dispatch is deprecated. See https://sourcehut.org/blog/2022-08-01-dispatch-deprecation-plans/ - for more information. - '') - - (mkRemovedOptionModule [ "services" "sourcehut" "services" ] '' - This option was removed in favor of individual .enable flags. - '') - ]; - - meta.doc = ./default.md; - meta.maintainers = with maintainers; [ - tomberek - nessdoor - christoph-heiss - ]; -} diff --git a/nixos/modules/services/misc/sourcehut/service.nix b/nixos/modules/services/misc/sourcehut/service.nix deleted file mode 100644 index 65df1a05b86e..000000000000 --- a/nixos/modules/services/misc/sourcehut/service.nix +++ /dev/null @@ -1,499 +0,0 @@ -srv: -{ - configIniOfService, - pkgname ? "${srv}srht", # Because "buildsrht" does not follow that pattern (missing an "s"). - srvsrht ? "${srv}.sr.ht", - iniKey ? "${srv}.sr.ht", - webhooks ? false, - extraTimers ? { }, - mainService ? { }, - extraServices ? { }, - extraConfig ? { }, - port, -}: -{ - config, - lib, - pkgs, - ... -}: - -let - inherit (lib) types; - inherit (lib.attrsets) mapAttrs optionalAttrs; - inherit (lib.lists) optional; - inherit (lib.modules) - mkBefore - mkDefault - mkForce - mkIf - mkMerge - ; - inherit (lib.options) mkEnableOption mkOption mkPackageOption; - inherit (lib.strings) concatStringsSep hasSuffix optionalString; - inherit (config.services) postgresql; - redis = config.services.redis.servers."sourcehut-${srvsrht}"; - inherit (config.users) users; - cfg = config.services.sourcehut; - configIni = configIniOfService srv; - srvCfg = cfg.${srv}; - baseService = - serviceName: - { - allowStripe ? false, - }: - extraService: - let - runDir = "/run/sourcehut/${serviceName}"; - rootDir = "/run/sourcehut/chroots/${serviceName}"; - in - mkMerge [ - extraService - { - after = - [ "network.target" ] - ++ optional cfg.postgresql.enable "postgresql.target" - ++ optional cfg.redis.enable "redis-sourcehut-${srvsrht}.service"; - requires = - optional cfg.postgresql.enable "postgresql.target" - ++ optional cfg.redis.enable "redis-sourcehut-${srvsrht}.service"; - path = [ pkgs.gawk ]; - environment.HOME = runDir; - serviceConfig = { - User = mkDefault srvCfg.user; - Group = mkDefault srvCfg.group; - RuntimeDirectory = [ - "sourcehut/${serviceName}" - # Used by *srht-keys which reads ../config.ini - "sourcehut/${serviceName}/subdir" - "sourcehut/chroots/${serviceName}" - ]; - RuntimeDirectoryMode = "2750"; - # No need for the chroot path once inside the chroot - InaccessiblePaths = [ "-+${rootDir}" ]; - # g+rx is for group members (eg. fcgiwrap or nginx) - # to read Git/Mercurial repositories, buildlogs, etc. - # o+x is for intermediate directories created by BindPaths= and like, - # as they're owned by root:root. - UMask = "0026"; - RootDirectory = rootDir; - RootDirectoryStartOnly = true; - PrivateTmp = true; - MountAPIVFS = true; - # config.ini is looked up in there, before /etc/srht/config.ini - # Note that it fails to be set in ExecStartPre= - WorkingDirectory = mkDefault ("-" + runDir); - BindReadOnlyPaths = - [ - builtins.storeDir - "/etc" - "/run/booted-system" - "/run/current-system" - "/run/systemd" - ] - ++ optional cfg.postgresql.enable "/run/postgresql" - ++ optional cfg.redis.enable "/run/redis-sourcehut-${srvsrht}"; - # LoadCredential= are unfortunately not available in ExecStartPre= - # Hence this one is run as root (the +) with RootDirectoryStartOnly= - # to reach credentials wherever they are. - # Note that each systemd service gets its own ${runDir}/config.ini file. - ExecStartPre = mkBefore [ - ( - "+" - + pkgs.writeShellScript "${serviceName}-credentials" '' - set -x - # Replace values beginning with a '<' by the content of the file whose name is after. - gawk '{ if (match($0,/^([^=]+=)<(.+)/,m)) { getline f < m[2]; print m[1] f } else print $0 }' ${configIni} | - ${optionalString (!allowStripe) "gawk '!/^stripe-secret-key=/' |"} - install -o ${srvCfg.user} -g root -m 400 /dev/stdin ${runDir}/config.ini - '' - ) - ]; - # The following options are only for optimizing: - # systemd-analyze security - AmbientCapabilities = ""; - CapabilityBoundingSet = ""; - # ProtectClock= adds DeviceAllow=char-rtc r - DeviceAllow = ""; - LockPersonality = true; - MemoryDenyWriteExecute = true; - NoNewPrivileges = true; - PrivateDevices = true; - PrivateMounts = true; - PrivateNetwork = mkDefault false; - PrivateUsers = true; - ProcSubset = "pid"; - ProtectClock = true; - ProtectControlGroups = true; - ProtectHome = true; - ProtectHostname = true; - ProtectKernelLogs = true; - ProtectKernelModules = true; - ProtectKernelTunables = true; - ProtectProc = "invisible"; - ProtectSystem = "strict"; - RemoveIPC = true; - RestrictAddressFamilies = [ - "AF_UNIX" - "AF_INET" - "AF_INET6" - ]; - RestrictNamespaces = true; - RestrictRealtime = true; - RestrictSUIDSGID = true; - #SocketBindAllow = [ "tcp:${toString srvCfg.port}" "tcp:${toString srvCfg.prometheusPort}" ]; - #SocketBindDeny = "any"; - SystemCallFilter = [ - "@system-service" - "~@aio" - "~@keyring" - "~@memlock" - "~@privileged" - "~@timer" - "@chown" - "@setuid" - ]; - SystemCallArchitectures = "native"; - }; - } - ]; -in -{ - options.services.sourcehut.${srv} = - { - enable = mkEnableOption "${srv} service"; - - package = mkPackageOption pkgs [ "sourcehut" pkgname ] { }; - - user = mkOption { - type = types.str; - default = srvsrht; - description = '' - User for ${srv}.sr.ht. - ''; - }; - - group = mkOption { - type = types.str; - default = srvsrht; - description = '' - Group for ${srv}.sr.ht. - Membership grants access to the Git/Mercurial repositories by default, - but not to the config.ini file (where secrets are). - ''; - }; - - port = mkOption { - type = types.port; - default = port; - description = '' - Port on which the "${srv}" backend should listen. - ''; - }; - - redis = { - host = mkOption { - type = types.str; - default = "unix:///run/redis-sourcehut-${srvsrht}/redis.sock?db=0"; - example = "redis://shared.wireguard:6379/0"; - description = '' - The redis host URL. This is used for caching and temporary storage, and must - be shared between nodes (e.g. git1.sr.ht and git2.sr.ht), but need not be - shared between services. It may be shared between services, however, with no - ill effect, if this better suits your infrastructure. - ''; - }; - }; - - postgresql = { - database = mkOption { - type = types.str; - default = "${srv}.sr.ht"; - description = '' - PostgreSQL database name for the ${srv}.sr.ht service, - used if [](#opt-services.sourcehut.postgresql.enable) is `true`. - ''; - }; - }; - - gunicorn = { - extraArgs = mkOption { - type = with types; listOf str; - default = [ - "--timeout 120" - "--workers 1" - "--log-level=info" - ]; - description = "Extra arguments passed to Gunicorn."; - }; - }; - } - // optionalAttrs webhooks { - webhooks = { - extraArgs = mkOption { - type = with types; listOf str; - default = [ - "--loglevel DEBUG" - "--pool eventlet" - "--without-heartbeat" - ]; - description = "Extra arguments passed to the Celery responsible for webhooks."; - }; - celeryConfig = mkOption { - type = types.lines; - default = ""; - description = "Content of the `celeryconfig.py` used by the Celery responsible for webhooks."; - }; - }; - }; - - config = lib.mkIf (cfg.enable && srvCfg.enable) (mkMerge [ - extraConfig - { - users = { - users = { - "${srvCfg.user}" = { - isSystemUser = true; - group = mkDefault srvCfg.group; - description = mkDefault "sourcehut user for ${srv}.sr.ht"; - }; - }; - groups = - { - "${srvCfg.group}" = { }; - } - // - optionalAttrs - (cfg.postgresql.enable && hasSuffix "0" (postgresql.settings.unix_socket_permissions or "")) - { - "postgres".members = [ srvCfg.user ]; - } - // optionalAttrs (cfg.redis.enable && hasSuffix "0" (redis.settings.unixsocketperm or "")) { - "redis-sourcehut-${srvsrht}".members = [ srvCfg.user ]; - }; - }; - - services.nginx = mkIf cfg.nginx.enable { - virtualHosts."${srv}.${cfg.settings."sr.ht".global-domain}" = mkMerge [ - { - forceSSL = mkDefault true; - locations."/".proxyPass = "http://${cfg.listenAddress}:${toString srvCfg.port}"; - locations."/static" = { - root = "${srvCfg.package}/${pkgs.sourcehut.python.sitePackages}/${srvsrht}"; - extraConfig = mkDefault '' - expires 30d; - ''; - }; - locations."/query" = mkIf (cfg.settings.${iniKey} ? api-origin) { - proxyPass = cfg.settings.${iniKey}.api-origin; - extraConfig = '' - add_header 'Access-Control-Allow-Origin' '*'; - add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS'; - add_header 'Access-Control-Allow-Headers' 'User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range'; - - if ($request_method = 'OPTIONS') { - add_header 'Access-Control-Max-Age' 1728000; - add_header 'Content-Type' 'text/plain; charset=utf-8'; - add_header 'Content-Length' 0; - return 204; - } - - add_header 'Access-Control-Expose-Headers' 'Content-Length,Content-Range'; - ''; - }; - } - cfg.nginx.virtualHost - ]; - }; - - services.postgresql = mkIf cfg.postgresql.enable { - authentication = '' - local ${srvCfg.postgresql.database} ${srvCfg.user} trust - ''; - ensureDatabases = [ srvCfg.postgresql.database ]; - ensureUsers = map (name: { - inherit name; - # We don't use it because we have a special default database name with dots. - # TODO(for maintainers of sourcehut): migrate away from custom preStart script. - ensureDBOwnership = false; - }) [ srvCfg.user ]; - }; - - services.sourcehut.settings = mkMerge [ - { - "${srv}.sr.ht".origin = mkDefault "https://${srv}.${cfg.settings."sr.ht".global-domain}"; - } - - (mkIf cfg.postgresql.enable { - "${srv}.sr.ht".connection-string = - mkDefault "postgresql:///${srvCfg.postgresql.database}?user=${srvCfg.user}&host=/run/postgresql"; - }) - ]; - - services.redis.servers."sourcehut-${srvsrht}" = mkIf cfg.redis.enable { - enable = true; - databases = 3; - syslog = true; - # TODO: set a more informed value - save = mkDefault [ - [ - 1800 - 10 - ] - [ - 300 - 100 - ] - ]; - settings = { - # TODO: set a more informed value - maxmemory = "128MB"; - maxmemory-policy = "volatile-ttl"; - }; - }; - - systemd.services = mkMerge [ - { - "${srvsrht}" = baseService srvsrht { allowStripe = srv == "meta"; } (mkMerge [ - { - description = "sourcehut ${srv}.sr.ht website service"; - before = optional cfg.nginx.enable "nginx.service"; - wants = optional cfg.nginx.enable "nginx.service"; - wantedBy = [ "multi-user.target" ]; - path = optional cfg.postgresql.enable postgresql.package; - # Beware: change in credentials' content will not trigger restart. - restartTriggers = [ configIni ]; - serviceConfig = { - Type = "simple"; - Restart = mkDefault "always"; - #RestartSec = mkDefault "2min"; - StateDirectory = [ "sourcehut/${srvsrht}" ]; - StateDirectoryMode = "2750"; - ExecStart = - "${cfg.python}/bin/gunicorn ${pkgname}.app:app --name ${srvsrht} --bind ${cfg.listenAddress}:${toString srvCfg.port} " - + concatStringsSep " " srvCfg.gunicorn.extraArgs; - }; - preStart = - let - package = srvCfg.package; - version = package.version; - stateDir = "/var/lib/sourcehut/${srvsrht}"; - in - mkBefore '' - set -x - # Use the /run/sourcehut/${srvsrht}/config.ini - # installed by a previous ExecStartPre= in baseService - cd /run/sourcehut/${srvsrht} - - if test ! -e ${stateDir}/db; then - # Setup the initial database. - # Note that it stamps the alembic head afterward - ${postgresql.package}/bin/psql -d ${srvsrht} -f ${package}/share/sourcehut/${srvsrht}-schema.sql - echo ${version} >${stateDir}/db - fi - - ${optionalString cfg.settings.${iniKey}.migrate-on-upgrade '' - if [ "$(cat ${stateDir}/db)" != "${version}" ]; then - # Manage schema migrations using alembic - ${package}/bin/${srvsrht}-migrate -a upgrade head - echo ${version} >${stateDir}/db - fi - ''} - - # Update copy of each users' profile to the latest - # See https://lists.sr.ht/~sircmpwn/sr.ht-admins/<20190302181207.GA13778%40cirno.my.domain> - if test ! -e ${stateDir}/webhook; then - # Update ${iniKey}'s users' profile copy to the latest - ${cfg.python}/bin/sr.ht-update-profiles ${iniKey} - touch ${stateDir}/webhook - fi - ''; - } - mainService - ]); - } - - (mkIf webhooks { - "${srvsrht}-webhooks" = baseService "${srvsrht}-webhooks" { } { - description = "sourcehut ${srv}.sr.ht webhooks service"; - after = [ "${srvsrht}.service" ]; - wantedBy = [ "${srvsrht}.service" ]; - partOf = [ "${srvsrht}.service" ]; - preStart = '' - cp ${pkgs.writeText "${srvsrht}-webhooks-celeryconfig.py" srvCfg.webhooks.celeryConfig} \ - /run/sourcehut/${srvsrht}-webhooks/celeryconfig.py - ''; - serviceConfig = { - Type = "simple"; - Restart = "always"; - ExecStart = - "${cfg.python}/bin/celery --app ${pkgname}.webhooks worker --hostname ${srvsrht}-webhooks@%%h " - + concatStringsSep " " srvCfg.webhooks.extraArgs; - # Avoid crashing: os.getloadavg() - ProcSubset = mkForce "all"; - }; - }; - }) - - (mapAttrs ( - timerName: timer: - (baseService timerName { } (mkMerge [ - { - description = "sourcehut ${timerName} service"; - after = [ - "network.target" - "${srvsrht}.service" - ]; - serviceConfig = { - Type = "oneshot"; - ExecStart = "${srvCfg.package}/bin/${timerName}"; - }; - } - (timer.service or { }) - ])) - ) extraTimers) - - (mapAttrs ( - serviceName: extraService: - baseService serviceName { } (mkMerge [ - { - description = "sourcehut ${serviceName} service"; - # So that extraServices have the PostgreSQL database initialized. - after = [ "${srvsrht}.service" ]; - wantedBy = [ "${srvsrht}.service" ]; - partOf = [ "${srvsrht}.service" ]; - serviceConfig = { - Type = "simple"; - Restart = mkDefault "always"; - }; - } - extraService - ]) - ) extraServices) - - # Work around 'pq: permission denied for schema public' with postgres v15. - # See https://github.com/NixOS/nixpkgs/issues/216989 - # Workaround taken from nixos/forgejo: https://github.com/NixOS/nixpkgs/pull/262741 - # TODO(to maintainers of sourcehut): please migrate away from this workaround - # by migrating away from database name defaults with dots. - (lib.mkIf - ( - cfg.postgresql.enable - && lib.strings.versionAtLeast config.services.postgresql.package.version "15.0" - ) - { - postgresql-setup.postStart = '' - psql -tAc 'ALTER DATABASE "${srvCfg.postgresql.database}" OWNER TO "${srvCfg.user}";' - ''; - } - ) - ]; - - systemd.timers = mapAttrs (timerName: timer: { - description = "sourcehut timer for ${timerName}"; - wantedBy = [ "timers.target" ]; - inherit (timer) timerConfig; - }) extraTimers; - } - ]); -} diff --git a/nixos/modules/services/monitoring/librenms.nix b/nixos/modules/services/monitoring/librenms.nix index 06ee43f2a26d..042c43fd7b65 100644 --- a/nixos/modules/services/monitoring/librenms.nix +++ b/nixos/modules/services/monitoring/librenms.nix @@ -354,7 +354,7 @@ in description = '' Attrset of the LibreNMS configuration. See for reference. - All possible options are listed [here](https://github.com/librenms/librenms/blob/master/misc/config_definitions.json). + All possible options are listed [here](https://github.com/librenms/librenms/blob/master/resources/definitions/config_definitions.json). See for setting other authentication methods. ''; default = { }; diff --git a/nixos/modules/services/monitoring/prometheus/alertmanager-irc-relay.nix b/nixos/modules/services/monitoring/prometheus/alertmanager-irc-relay.nix index c0268941dde7..a5659c3bfbd9 100644 --- a/nixos/modules/services/monitoring/prometheus/alertmanager-irc-relay.nix +++ b/nixos/modules/services/monitoring/prometheus/alertmanager-irc-relay.nix @@ -58,6 +58,7 @@ in wantedBy = [ "multi-user.target" ]; after = [ "network-online.target" ]; + wants = [ "network-online.target" ]; serviceConfig = { ExecStart = '' diff --git a/nixos/modules/services/monitoring/prometheus/exporters/wireguard.nix b/nixos/modules/services/monitoring/prometheus/exporters/wireguard.nix index 4c9269f34cfd..f091aac2347d 100644 --- a/nixos/modules/services/monitoring/prometheus/exporters/wireguard.nix +++ b/nixos/modules/services/monitoring/prometheus/exporters/wireguard.nix @@ -62,6 +62,14 @@ in Whether or not the remote IP of a WireGuard peer should be exposed via prometheus. ''; }; + + latestHandshakeDelay = mkOption { + type = types.bool; + default = false; + description = '' + Adds the `wireguard_latest_handshake_delay_seconds` metric that automatically calculates the seconds passed since the last handshake. + ''; + }; }; serviceOpts = { path = [ pkgs.wireguard-tools ]; @@ -76,6 +84,7 @@ in ${optionalString cfg.verbose "-v true"} \ ${optionalString cfg.singleSubnetPerField "-s true"} \ ${optionalString cfg.withRemoteIp "-r true"} \ + ${optionalString cfg.latestHandshakeDelay "-d true"} \ ${optionalString (cfg.wireguardConfig != null) "-n ${escapeShellArg cfg.wireguardConfig}"} ''; RestrictAddressFamilies = [ diff --git a/nixos/modules/services/networking/easytier.nix b/nixos/modules/services/networking/easytier.nix new file mode 100644 index 000000000000..127c72063fac --- /dev/null +++ b/nixos/modules/services/networking/easytier.nix @@ -0,0 +1,292 @@ +{ + config, + lib, + pkgs, + ... +}: + +with lib; +let + cfg = config.services.easytier; + settingsFormat = pkgs.formats.toml { }; + + genFinalSettings = + inst: + attrsets.filterAttrsRecursive (_: v: v != { }) ( + attrsets.filterAttrsRecursive (_: v: v != null) ( + { + inherit (inst.settings) + instance_name + hostname + ipv4 + dhcp + listeners + ; + network_identity = { + inherit (inst.settings) network_name network_secret; + }; + peer = map (p: { uri = p; }) inst.settings.peers; + } + // inst.extraSettings + ) + ); + + genConfigFile = + name: inst: + if inst.configFile == null then + settingsFormat.generate "easytier-${name}.toml" (genFinalSettings inst) + else + inst.configFile; + + activeInsts = filterAttrs (_: inst: inst.enable) cfg.instances; + + settingsModule = name: { + options = { + instance_name = mkOption { + type = types.str; + default = name; + description = "Identify different instances on same host"; + }; + + hostname = mkOption { + type = with types; nullOr str; + default = null; + description = "Hostname shown in peer list and web console."; + }; + + network_name = mkOption { + type = with types; nullOr str; + default = null; + description = "EasyTier network name."; + }; + + network_secret = mkOption { + type = with types; nullOr str; + default = null; + description = '' + EasyTier network credential used for verification and + encryption. It can also be set in environmentFile. + ''; + }; + + ipv4 = mkOption { + type = with types; nullOr str; + default = null; + description = '' + IPv4 cidr address of this peer in the virtual network. If + empty, this peer will only forward packets and no TUN device + will be created. + ''; + example = "10.144.144.1/24"; + }; + + dhcp = mkOption { + type = types.bool; + default = false; + description = '' + Automatically determine the IPv4 address of this peer based on + existing peers on network. + ''; + }; + + listeners = mkOption { + type = with types; listOf str; + default = [ + "tcp://0.0.0.0:11010" + "udp://0.0.0.0:11010" + ]; + description = '' + Listener addresses to accept connections from other peers. + Valid format is: `://:`, where the protocol + can be `tcp`, `udp`, `ring`, `wg`, `ws`, `wss`. + ''; + }; + + peers = mkOption { + type = with types; listOf str; + default = [ ]; + description = '' + Peers to connect initially. Valid format is: `://:`. + ''; + example = [ + "tcp://example.com:11010" + ]; + }; + }; + }; + + instanceModule = + { name, ... }: + { + options = { + enable = mkOption { + type = types.bool; + default = true; + description = "Enable the instance."; + }; + + configServer = mkOption { + type = with types; nullOr str; + default = null; + description = '' + Configure the instance from config server. When this option + set, any other settings for configuring the instance manually + except `hostname` will be ignored. Valid formats are: + + - full uri for custom server: `udp://example.com:22020/` + - username only for official server: `` + ''; + example = "udp://example.com:22020/myusername"; + }; + + configFile = mkOption { + type = with types; nullOr path; + default = null; + description = '' + Path to easytier config file. Setting this option will + override `settings` and `extraSettings` of this instance. + ''; + }; + + environmentFiles = mkOption { + type = with types; listOf path; + default = [ ]; + description = '' + Environment files for this instance. All command-line args + have corresponding environment variables. + ''; + example = literalExpression '' + [ + /path/to/.env + /path/to/.env.secret + ] + ''; + }; + + settings = mkOption { + type = types.submodule (settingsModule name); + default = { }; + description = '' + Settings to generate {file}`easytier-${name}.toml` + ''; + }; + + extraSettings = mkOption { + type = settingsFormat.type; + default = { }; + description = '' + Extra settings to add to {file}`easytier-${name}.toml`. + ''; + }; + + extraArgs = mkOption { + type = with types; listOf str; + default = [ ]; + description = '' + Extra args append to the easytier command-line. + ''; + }; + }; + }; + +in +{ + options.services.easytier = { + enable = mkEnableOption "EasyTier daemon"; + + package = mkPackageOption pkgs "easytier" { }; + + allowSystemForward = mkEnableOption '' + Allow the system to forward packets from easytier. Useful when + `proxy_forward_by_system` enabled. + ''; + + instances = mkOption { + description = '' + EasyTier instances. + ''; + type = types.attrsOf (types.submodule instanceModule); + default = { }; + example = { + settings = { + network_name = "easytier"; + network_secret = "easytier"; + ipv4 = "10.144.144.1/24"; + peers = [ + "tcp://public.easytier.cn:11010" + "wss://example.com:443" + ]; + }; + extraSettings = { + flags.dev_name = "tun1"; + }; + }; + }; + }; + + config = mkIf cfg.enable { + environment.systemPackages = [ cfg.package ]; + + systemd.services = mapAttrs' ( + name: inst: + let + configFile = genConfigFile name inst; + in + nameValuePair "easytier-${name}" { + description = "EasyTier Daemon - ${name}"; + wants = [ + "network-online.target" + "nss-lookup.target" + ]; + after = [ + "network-online.target" + "nss-lookup.target" + ]; + wantedBy = [ "multi-user.target" ]; + path = with pkgs; [ + cfg.package + iproute2 + bash + ]; + restartTriggers = inst.environmentFiles ++ (optionals (inst.configServer == null) [ configFile ]); + serviceConfig = { + Type = "simple"; + Restart = "on-failure"; + EnvironmentFile = inst.environmentFiles; + StateDirectory = "easytier/easytier-${name}"; + StateDirectoryMode = "0700"; + WorkingDirectory = "/var/lib/easytier/easytier-${name}"; + ExecStart = escapeShellArgs ( + [ + "${cfg.package}/bin/easytier-core" + ] + ++ optionals (inst.configServer != null) ( + [ + "-w" + "${inst.configServer}" + ] + ++ (optionals (inst.settings.hostname != null) [ + "--hostname" + "${inst.settings.hostname}" + ]) + ) + ++ optionals (inst.configServer == null) [ + "-c" + "${configFile}" + ] + ++ inst.extraArgs + ); + }; + } + ) activeInsts; + + boot.kernel.sysctl = mkIf cfg.allowSystemForward { + "net.ipv4.conf.all.forwarding" = mkOverride 97 true; + "net.ipv6.conf.all.forwarding" = mkOverride 97 true; + }; + }; + + meta.maintainers = with maintainers; [ + ltrump + ]; +} diff --git a/nixos/modules/services/networking/ntp/ntpd-rs.nix b/nixos/modules/services/networking/ntp/ntpd-rs.nix index 14287ded9abf..f80ffa2d82cb 100644 --- a/nixos/modules/services/networking/ntp/ntpd-rs.nix +++ b/nixos/modules/services/networking/ntp/ntpd-rs.nix @@ -9,6 +9,17 @@ let cfg = config.services.ntpd-rs; format = pkgs.formats.toml { }; configFile = format.generate "ntpd-rs.toml" cfg.settings; + + validateConfig = + file: + pkgs.runCommand "validate-ntpd-rs.toml" + { + nativeBuildInputs = [ cfg.package ]; + } + '' + ntp-ctl validate -c ${file} + ln -s "${file}" "$out" + ''; in { options.services.ntpd-rs = { @@ -77,7 +88,7 @@ in DynamicUser = true; ExecStart = [ "" - "${lib.makeBinPath [ cfg.package ]}/ntp-daemon --config=${configFile}" + "${lib.makeBinPath [ cfg.package ]}/ntp-daemon --config=${validateConfig configFile}" ]; }; }; @@ -90,7 +101,7 @@ in DynamicUser = true; ExecStart = [ "" - "${lib.makeBinPath [ cfg.package ]}/ntp-metrics-exporter --config=${configFile}" + "${lib.makeBinPath [ cfg.package ]}/ntp-metrics-exporter --config=${validateConfig configFile}" ]; }; }; diff --git a/nixos/modules/system/boot/systemd/initrd.nix b/nixos/modules/system/boot/systemd/initrd.nix index c6a0dbccd8d3..eed6be0765ef 100644 --- a/nixos/modules/system/boot/systemd/initrd.nix +++ b/nixos/modules/system/boot/systemd/initrd.nix @@ -532,7 +532,7 @@ in # required for services generated with writeShellScript and friends pkgs.runtimeShell # some tools like xfs still want the sh symlink - "${pkgs.bash}/bin" + "${pkgs.bashNonInteractive}/bin" # so NSS can look up usernames "${pkgs.glibc}/lib/libnss_files.so.2" diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index 25375b9bffbf..b92e76ed60af 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -433,6 +433,7 @@ in fscrypt = runTest ./fscrypt.nix; fastnetmon-advanced = runTest ./fastnetmon-advanced.nix; lauti = runTest ./lauti.nix; + easytier = handleTest ./easytier.nix { }; ejabberd = runTest ./xmpp/ejabberd.nix; elk = handleTestOn [ "x86_64-linux" ] ./elk.nix { }; emacs-daemon = runTest ./emacs-daemon.nix; @@ -1272,7 +1273,6 @@ in solanum = runTest ./solanum.nix; sonarr = runTest ./sonarr.nix; sonic-server = runTest ./sonic-server.nix; - sourcehut = handleTest ./sourcehut { }; spacecookie = runTest ./spacecookie.nix; spark = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./spark { }; spiped = runTest ./spiped.nix; diff --git a/nixos/tests/easytier.nix b/nixos/tests/easytier.nix new file mode 100644 index 000000000000..e5366fb5ce98 --- /dev/null +++ b/nixos/tests/easytier.nix @@ -0,0 +1,121 @@ +import ./make-test-python.nix ( + { lib, ... }: + { + name = "easytier"; + meta.maintainers = with lib.maintainers; [ ltrump ]; + + nodes = + let + genPeer = + hostConfig: settings: + lib.mkMerge [ + { + services.easytier = { + enable = true; + instances.default = { + settings = { + network_name = "easytier_test"; + network_secret = "easytier_test_secret"; + } // settings; + }; + }; + + networking.useDHCP = false; + networking.firewall.allowedTCPPorts = [ + 11010 + 11011 + ]; + networking.firewall.allowedUDPPorts = [ + 11010 + 11011 + ]; + } + hostConfig + ]; + in + { + relay = + genPeer + { + virtualisation.vlans = [ + 1 + 2 + ]; + + networking.interfaces.eth1.ipv4.addresses = [ + { + address = "192.168.1.11"; + prefixLength = 24; + } + ]; + + networking.interfaces.eth2.ipv4.addresses = [ + { + address = "192.168.2.11"; + prefixLength = 24; + } + ]; + } + { + ipv4 = "10.144.144.1"; + listeners = [ + "tcp://0.0.0.0:11010" + "wss://0.0.0.0:11011" + ]; + }; + + peer1 = + genPeer + { + virtualisation.vlans = [ 1 ]; + } + { + ipv4 = "10.144.144.2"; + peers = [ "tcp://192.168.1.11:11010" ]; + }; + + peer2 = + genPeer + { + virtualisation.vlans = [ 2 ]; + } + { + ipv4 = "10.144.144.3"; + peers = [ "wss://192.168.2.11:11011" ]; + }; + }; + + testScript = '' + start_all() + + relay.wait_for_unit("easytier-default.service") + peer1.wait_for_unit("easytier-default.service") + peer2.wait_for_unit("easytier-default.service") + + # relay is accessible by the other hosts + peer1.succeed("ping -c5 192.168.1.11") + peer2.succeed("ping -c5 192.168.2.11") + + # The other hosts are in separate vlans + peer1.fail("ping -c5 192.168.2.11") + peer2.fail("ping -c5 192.168.1.11") + + # Each host can ping themselves through EasyTier + relay.succeed("ping -c5 10.144.144.1") + peer1.succeed("ping -c5 10.144.144.2") + peer2.succeed("ping -c5 10.144.144.3") + + # Relay is accessible by the other hosts through EasyTier + peer1.succeed("ping -c5 10.144.144.1") + peer2.succeed("ping -c5 10.144.144.1") + + # Relay can access the other hosts through EasyTier + relay.succeed("ping -c5 10.144.144.2") + relay.succeed("ping -c5 10.144.144.3") + + # The other hosts in separate vlans can access each other through EasyTier + peer1.succeed("ping -c5 10.144.144.3") + peer2.succeed("ping -c5 10.144.144.2") + ''; + } +) diff --git a/nixos/tests/prowlarr.nix b/nixos/tests/prowlarr.nix index c03475df0423..b7cd320480c1 100644 --- a/nixos/tests/prowlarr.nix +++ b/nixos/tests/prowlarr.nix @@ -28,10 +28,10 @@ with subtest("Prowlarr data directory migration works"): machine.systemctl("stop prowlarr.service") machine.succeed("mkdir -p /tmp/prowlarr-migration") - machine.succeed("mv /var/lib/prowlarr/* /tmp/prowlarr-migration") + machine.succeed("rsync -a -delete /var/lib/prowlarr/ /tmp/prowlarr-migration") machine.succeed("${config.nodes.machine.system.build.toplevel}/specialisation/customDataDir/bin/switch-to-configuration test") machine.wait_for_unit("var-lib-private-prowlarr.mount") - machine.succeed("mv /tmp/prowlarr-migration/* /var/lib/prowlarr") + machine.succeed("rsync -a -delete /tmp/prowlarr-migration/ /var/lib/prowlarr") machine.systemctl("restart prowlarr.service") # Check that we're using a bind mount when using a non-default dataDir machine.succeed("findmnt /var/lib/private/prowlarr | grep /srv/prowlarr") diff --git a/nixos/tests/sourcehut/builds.nix b/nixos/tests/sourcehut/builds.nix deleted file mode 100644 index 1add972cc13f..000000000000 --- a/nixos/tests/sourcehut/builds.nix +++ /dev/null @@ -1,66 +0,0 @@ -import ../make-test-python.nix ( - { pkgs, lib, ... }: - let - domain = "sourcehut.localdomain"; - in - { - name = "sourcehut"; - - meta.maintainers = with pkgs.lib.maintainers; [ - tomberek - nessdoor - ]; - - nodes.machine = - { - config, - pkgs, - nodes, - ... - }: - { - imports = [ - ./nodes/common.nix - ]; - - networking.domain = domain; - networking.extraHosts = '' - ${config.networking.primaryIPAddress} builds.${domain} - ${config.networking.primaryIPAddress} meta.${domain} - ''; - - services.sourcehut = { - builds = { - enable = true; - # FIXME: see why it does not seem to activate fully. - #enableWorker = true; - images = { }; - }; - - settings."builds.sr.ht" = { - oauth-client-secret = pkgs.writeText "buildsrht-oauth-client-secret" "2260e9c4d9b8dcedcef642860e0504bc"; - oauth-client-id = "299db9f9c2013170"; - }; - }; - }; - - testScript = '' - start_all() - machine.wait_for_unit("multi-user.target") - - with subtest("Check whether meta comes up"): - machine.wait_for_unit("meta.sr.ht-api.service") - machine.wait_for_unit("meta.sr.ht.service") - machine.wait_for_unit("meta.sr.ht-webhooks.service") - machine.wait_for_open_port(5000) - machine.succeed("curl -sL http://localhost:5000 | grep meta.${domain}") - machine.succeed("curl -sL http://meta.${domain} | grep meta.${domain}") - - with subtest("Check whether builds comes up"): - machine.wait_for_unit("builds.sr.ht.service") - machine.wait_for_open_port(5002) - machine.succeed("curl -sL http://localhost:5002 | grep builds.${domain}") - #machine.wait_for_unit("buildsrht-worker.service") - ''; - } -) diff --git a/nixos/tests/sourcehut/default.nix b/nixos/tests/sourcehut/default.nix deleted file mode 100644 index 04f1551d70d9..000000000000 --- a/nixos/tests/sourcehut/default.nix +++ /dev/null @@ -1,6 +0,0 @@ -{ system, pkgs, ... }: - -{ - git = import ./git.nix { inherit system pkgs; }; - builds = import ./builds.nix { inherit system pkgs; }; -} diff --git a/nixos/tests/sourcehut/git.nix b/nixos/tests/sourcehut/git.nix deleted file mode 100644 index a06281aafbb4..000000000000 --- a/nixos/tests/sourcehut/git.nix +++ /dev/null @@ -1,109 +0,0 @@ -import ../make-test-python.nix ( - { pkgs, lib, ... }: - let - domain = "sourcehut.localdomain"; - in - { - name = "sourcehut"; - - meta.maintainers = with pkgs.lib.maintainers; [ - tomberek - nessdoor - ]; - - nodes.machine = - { - config, - pkgs, - nodes, - ... - }: - { - imports = [ - ./nodes/common.nix - ]; - - networking.domain = domain; - networking.extraHosts = '' - ${config.networking.primaryIPAddress} git.${domain} - ${config.networking.primaryIPAddress} meta.${domain} - ''; - - services.sourcehut = { - git.enable = true; - settings."git.sr.ht" = { - oauth-client-secret = pkgs.writeText "gitsrht-oauth-client-secret" "3597288dc2c716e567db5384f493b09d"; - oauth-client-id = "d07cb713d920702e"; - }; - }; - - environment.systemPackages = with pkgs; [ - git - ]; - }; - - testScript = - let - userName = "nixos-test"; - userPass = "AutoNixosTestPwd"; - hutConfig = pkgs.writeText "hut-config" '' - instance "${domain}" { - # Will be replaced at runtime with the generated token - access-token "OAUTH-TOKEN" - } - ''; - sshConfig = pkgs.writeText "ssh-config" '' - Host git.${domain} - IdentityFile = ~/.ssh/id_rsa - ''; - in - '' - start_all() - machine.wait_for_unit("multi-user.target") - machine.wait_for_unit("sshd.service") - - with subtest("Check whether meta comes up"): - machine.wait_for_unit("meta.sr.ht-api.service") - machine.wait_for_unit("meta.sr.ht.service") - machine.wait_for_unit("meta.sr.ht-webhooks.service") - machine.wait_for_open_port(5000) - machine.succeed("curl -sL http://localhost:5000 | grep meta.${domain}") - machine.succeed("curl -sL http://meta.${domain} | grep meta.${domain}") - - with subtest("Create a new user account and OAuth access key"): - machine.succeed("echo ${userPass} | meta.sr.ht-manageuser -ps -e ${userName}@${domain}\ - -t USER ${userName}"); - cmd = "srht-gen-oauth-tok -i ${domain} -q ${userName} ${userPass}" - (_, token) = machine.execute("srht-gen-oauth-tok -i ${domain} -q ${userName} ${userPass}") - token = token.strip().replace("/", r"\\/") # Escape slashes in token before passing it to sed - machine.execute("mkdir -p ~/.config/hut/") - machine.execute("sed s/OAUTH-TOKEN/" + token + "/ ${hutConfig} > ~/.config/hut/config") - - with subtest("Check whether git comes up"): - machine.wait_for_unit("git.sr.ht-api.service") - machine.wait_for_unit("git.sr.ht.service") - machine.wait_for_unit("git.sr.ht-webhooks.service") - machine.succeed("curl -sL http://git.${domain} | grep git.${domain}") - - with subtest("Add an SSH key for Git access"): - machine.execute("ssh-keygen -q -N \"\" -t rsa -f ~/.ssh/id_rsa") - machine.execute("cat ${sshConfig} > ~/.ssh/config") - machine.succeed("hut meta ssh-key create ~/.ssh/id_rsa.pub") - - with subtest("Create a new repo and push contents to it"): - machine.execute("git init test") - machine.execute("echo \"Hello world!\" > test/hello.txt") - machine.execute("cd test && git add .") - machine.execute("cd test && git commit -m \"Initial commit\"") - machine.execute("cd test && git tag v0.1") - machine.succeed("cd test && git remote add origin git.sr.ht@git.${domain}:~${userName}/test") - machine.execute("( echo -n 'git.${domain} '; cat /etc/ssh/ssh_host_ed25519_key.pub ) > ~/.ssh/known_hosts") - machine.succeed("hut git create test") - machine.succeed("cd test && git push --tags --set-upstream origin master") - - with subtest("Verify that the repo is downloadable and its contents match the original"): - machine.succeed("curl https://git.${domain}/~${userName}/test/archive/v0.1.tar.gz | tar -xz") - machine.succeed("diff test-v0.1/hello.txt test/hello.txt") - ''; - } -) diff --git a/nixos/tests/sourcehut/nodes/common.nix b/nixos/tests/sourcehut/nodes/common.nix deleted file mode 100644 index 54660a4dade5..000000000000 --- a/nixos/tests/sourcehut/nodes/common.nix +++ /dev/null @@ -1,117 +0,0 @@ -{ - config, - pkgs, - nodes, - ... -}: -let - domain = config.networking.domain; - - # Note that wildcard certificates just under the TLD (eg. *.com) - # would be rejected by clients like curl. - tls-cert = pkgs.runCommand "selfSignedCerts" { buildInputs = [ pkgs.openssl ]; } '' - openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -nodes -days 36500 \ - -subj '/CN=${domain}' -extensions v3_req \ - -addext 'subjectAltName = DNS:*.${domain}' - install -D -t $out key.pem cert.pem - ''; -in -{ - # buildsrht needs space - virtualisation.diskSize = 4 * 1024; - virtualisation.memorySize = 2 * 1024; - networking.enableIPv6 = false; - - services.sourcehut = { - enable = true; - nginx.enable = true; - nginx.virtualHost = { - forceSSL = true; - sslCertificate = "${tls-cert}/cert.pem"; - sslCertificateKey = "${tls-cert}/key.pem"; - }; - postgresql.enable = true; - redis.enable = true; - - meta.enable = true; - - settings."sr.ht" = { - environment = "production"; - global-domain = config.networking.domain; - service-key = pkgs.writeText "service-key" "8b327279b77e32a3620e2fc9aabce491cc46e7d821fd6713b2a2e650ce114d01"; - network-key = pkgs.writeText "network-key" "cEEmc30BRBGkgQZcHFksiG7hjc6_dK1XR2Oo5Jb9_nQ="; - }; - settings.webhooks.private-key = pkgs.writeText "webhook-key" "Ra3IjxgFiwG9jxgp4WALQIZw/BMYt30xWiOsqD0J7EA="; - settings.mail = { - smtp-from = "root+hut@${domain}"; - # WARNING: take care to keep pgp-privkey outside the Nix store in production, - # or use LoadCredentialEncrypted= - pgp-privkey = toString ( - pkgs.writeText "sourcehut.pgp-privkey" '' - -----BEGIN PGP PRIVATE KEY BLOCK----- - - lFgEZrFBKRYJKwYBBAHaRw8BAQdAS1Ffiytk0h0z0jfaT3qyiDUV/plVIUwOg1Yr - AXP2YmsAAP0W6QMC3G2G41rzCGLeSHeGibor1+XuxvcwUpVdW7ge+BH/tDZuaXhv - cy90ZXN0cy9zb3VyY2VodXQgPHJvb3QraHV0QHNvdXJjZWh1dC5sb2NhbGRvbWFp - bj6IkwQTFgoAOxYhBMISh2Z08FCi969cq9R2wSP9QF2bBQJmsUEpAhsDBQsJCAcC - AiICBhUKCQgLAgQWAgMBAh4HAheAAAoJENR2wSP9QF2b4JMA+wQLdxVcod/ppyvH - QguGqqhkpk8KquCddOuFnQVAfHFWAQCK5putVk4mGzsoLTbOJCSGRC4pjEktZawQ - MTqJmnOuC5xdBGaxQSkSCisGAQQBl1UBBQEBB0Aed6UYJyighTY+KuPNQ439st3x - x04T1j58sx3AnKgYewMBCAcAAP9WLB79HO1zFRqTCnk7GIEWWogMFKVpazeBUNu9 - h9rzCA2+iHgEGBYKACAWIQTCEodmdPBQovevXKvUdsEj/UBdmwUCZrFBKQIbDAAK - CRDUdsEj/UBdmwgJAQDVk/px/pSzqreSeDLzxlb6dOo+N1KcicsJ0akhSJUcvwD9 - EPhpEDZu/UBKchAutOhWwz+y6pyoF4Vt7XG+jbJQtA4= - =KaQc - -----END PGP PRIVATE KEY BLOCK----- - '' - ); - pgp-pubkey = pkgs.writeText "sourcehut.pgp-pubkey" '' - -----BEGIN PGP PUBLIC KEY BLOCK----- - - mDMEZrFBKRYJKwYBBAHaRw8BAQdAS1Ffiytk0h0z0jfaT3qyiDUV/plVIUwOg1Yr - AXP2Ymu0Nm5peG9zL3Rlc3RzL3NvdXJjZWh1dCA8cm9vdCtodXRAc291cmNlaHV0 - LmxvY2FsZG9tYWluPoiTBBMWCgA7FiEEwhKHZnTwUKL3r1yr1HbBI/1AXZsFAmax - QSkCGwMFCwkIBwICIgIGFQoJCAsCBBYCAwECHgcCF4AACgkQ1HbBI/1AXZvgkwD7 - BAt3FVyh3+mnK8dCC4aqqGSmTwqq4J1064WdBUB8cVYBAIrmm61WTiYbOygtNs4k - JIZELimMSS1lrBAxOomac64LuDgEZrFBKRIKKwYBBAGXVQEFAQEHQB53pRgnKKCF - Nj4q481Djf2y3fHHThPWPnyzHcCcqBh7AwEIB4h4BBgWCgAgFiEEwhKHZnTwUKL3 - r1yr1HbBI/1AXZsFAmaxQSkCGwwACgkQ1HbBI/1AXZsICQEA1ZP6cf6Us6q3kngy - 88ZW+nTqPjdSnInLCdGpIUiVHL8A/RD4aRA2bv1ASnIQLrToVsM/suqcqBeFbe1x - vo2yULQO - =luxZ - -----END PGP PUBLIC KEY BLOCK----- - ''; - pgp-key-id = "0xC212876674F050A2F7AF5CABD476C123FD405D9B"; - }; - }; - - networking.firewall.allowedTCPPorts = [ - 80 - 443 - ]; - security.pki.certificateFiles = [ "${tls-cert}/cert.pem" ]; - services.nginx = { - enable = true; - recommendedGzipSettings = true; - recommendedOptimisation = true; - recommendedTlsSettings = true; - recommendedProxySettings = true; - }; - - services.postgresql = { - enable = true; - enableTCPIP = false; - settings.unix_socket_permissions = "0770"; - }; - - services.openssh = { - enable = true; - settings.PasswordAuthentication = false; - settings.PermitRootLogin = "no"; - }; - - environment.systemPackages = with pkgs; [ - hut # For interacting with the Sourcehut APIs via CLI - srht-gen-oauth-tok # To automatically generate user OAuth tokens - ]; -} diff --git a/pkgs/applications/emulators/libretro/cores/puae.nix b/pkgs/applications/emulators/libretro/cores/puae.nix index d40f824f5017..e8d1f4bec8dd 100644 --- a/pkgs/applications/emulators/libretro/cores/puae.nix +++ b/pkgs/applications/emulators/libretro/cores/puae.nix @@ -5,13 +5,13 @@ }: mkLibretroCore { core = "puae"; - version = "0-unstable-2025-05-24"; + version = "0-unstable-2025-06-14"; src = fetchFromGitHub { owner = "libretro"; repo = "libretro-uae"; - rev = "f1c248602abb58e7c570feec3f59f4677407b252"; - hash = "sha256-CmdMeAntu+uFp1HowBz3UgMiqFbRrNuMyevTlKxga/M="; + rev = "3eece7a5447fde5ddf12be11bb5cb421d8fd8f97"; + hash = "sha256-NpCbeHcziBMw5IQ/8hD9cYq9zIAMd4H0OCpK8TydieA="; }; makefile = "Makefile"; diff --git a/pkgs/applications/networking/browsers/netsurf/buildsystem.nix b/pkgs/applications/networking/browsers/netsurf/buildsystem.nix index 3aa6ed08e41c..aae1857ba079 100644 --- a/pkgs/applications/networking/browsers/netsurf/buildsystem.nix +++ b/pkgs/applications/networking/browsers/netsurf/buildsystem.nix @@ -21,7 +21,7 @@ stdenv.mkDerivation (finalAttrs: { homepage = "https://www.netsurf-browser.org/"; description = "NetSurf browser shared build system"; license = lib.licenses.mit; - maintainers = with lib.maintainers; [ ]; + maintainers = with lib.maintainers; [ fgaz ]; platforms = lib.platforms.unix; }; }) diff --git a/pkgs/applications/networking/cluster/calico/default.nix b/pkgs/applications/networking/cluster/calico/default.nix index c4f5415c4cb9..7f88ab6e6dd4 100644 --- a/pkgs/applications/networking/cluster/calico/default.nix +++ b/pkgs/applications/networking/cluster/calico/default.nix @@ -14,16 +14,16 @@ builtins.mapAttrs }: buildGoModule rec { inherit pname; - version = "3.30.1"; + version = "3.30.2"; src = fetchFromGitHub { owner = "projectcalico"; repo = "calico"; rev = "v${version}"; - hash = "sha256-MtUoVLF46Z+wnxahZqTAfZwbLOC9gfHAUtIAwAJGUn0="; + hash = "sha256-UvHrCA/1n9dklcMY1AfNNW5/TtxVdmwmQb2DHEBFZhA="; }; - vendorHash = "sha256-5VFjiKFBZIXorc0yd9Vafyaj5ZInkhAD1GIdAw4yaEs="; + vendorHash = "sha256-Cp1Eo8Xa4c0o5l6/p+pyHa/t3jMUpgUDDXEAKwS6aCE="; inherit doCheck subPackages; diff --git a/pkgs/applications/version-management/sourcehut/builds.nix b/pkgs/applications/version-management/sourcehut/builds.nix deleted file mode 100644 index 5896f6b68149..000000000000 --- a/pkgs/applications/version-management/sourcehut/builds.nix +++ /dev/null @@ -1,111 +0,0 @@ -{ - lib, - fetchFromSourcehut, - buildGoModule, - buildPythonPackage, - srht, - redis, - celery, - pyyaml, - markdown, - ansi2html, - lxml, - python, - unzip, - pip, - pythonOlder, - setuptools-scm, -}: -let - version = "0.95.1"; - gqlgen = import ./fix-gqlgen-trimpath.nix { - inherit unzip; - gqlgenVersion = "0.17.64"; - }; - - patches = [ ./patches/core-go-update/builds/patch-deps.patch ]; - - src = fetchFromSourcehut { - owner = "~sircmpwn"; - repo = "builds.sr.ht"; - rev = version; - hash = "sha256-On/dKqIuqsCLAgYkJQOeYL7Ne983JzEYKhuLpD5vNu4="; - }; - - buildsrht-api = buildGoModule ( - { - inherit src version patches; - pname = "buildsrht-api"; - modRoot = "api"; - vendorHash = "sha256-GOM7fmJvfPJW3+XzvlwQZ9hBknlXwBKjGSmtIiapleY="; - } - // gqlgen - ); - - buildsrht-worker = buildGoModule ( - { - inherit src version patches; - pname = "buildsrht-worker"; - modRoot = "worker"; - vendorHash = "sha256-nEXnCeUxlUMNUqhe82MKREXcaC9pvqZqyqhyQW+jQjQ="; - } - // gqlgen - ); -in -buildPythonPackage rec { - inherit src version patches; - pname = "buildsrht"; - pyproject = true; - - disabled = pythonOlder "3.7"; - - nativeBuildInputs = [ - pip - setuptools-scm - ]; - - propagatedBuildInputs = [ - srht - redis - celery - pyyaml - markdown - # Unofficial dependencies - ansi2html - lxml - ]; - - env = { - PKGVER = version; - SRHT_PATH = "${srht}/${python.sitePackages}/srht"; - PREFIX = placeholder "out"; - }; - - postBuild = '' - make SASSC_INCLUDE=-I${srht}/share/sourcehut/scss/ all-share - ''; - - postInstall = '' - mkdir -p $out/lib - mkdir -p $out/bin/builds.sr.ht - - cp -r images $out/lib - cp contrib/submit_image_build $out/bin/builds.sr.ht - ln -s ${buildsrht-api}/bin/api $out/bin/builds.sr.ht-api - ln -s ${buildsrht-worker}/bin/worker $out/bin/builds.sr.ht-worker - install -Dm644 schema.sql $out/share/sourcehut/builds.sr.ht-schema.sql - make install-share - ''; - - pythonImportsCheck = [ "buildsrht" ]; - - meta = with lib; { - homepage = "https://git.sr.ht/~sircmpwn/builds.sr.ht"; - description = "Continuous integration service for the sr.ht network"; - license = licenses.agpl3Only; - maintainers = with maintainers; [ - eadwu - christoph-heiss - ]; - }; -} diff --git a/pkgs/applications/version-management/sourcehut/core.nix b/pkgs/applications/version-management/sourcehut/core.nix deleted file mode 100644 index d600117e225f..000000000000 --- a/pkgs/applications/version-management/sourcehut/core.nix +++ /dev/null @@ -1,104 +0,0 @@ -{ - lib, - fetchFromSourcehut, - buildPythonPackage, - flask, - humanize, - sqlalchemy, - sqlalchemy-utils, - psycopg2, - markdown, - mistletoe, - bleach, - requests, - beautifulsoup4, - pygments, - cryptography, - prometheus-client, - alembic, - redis, - celery, - html5lib, - importlib-metadata, - tinycss2, - sassc, - pythonOlder, - minify, - setuptools-scm, -}: - -buildPythonPackage rec { - pname = "srht"; - version = "0.76.1"; - pyproject = true; - - disabled = pythonOlder "3.7"; - - src = fetchFromSourcehut { - owner = "~sircmpwn"; - repo = "core.sr.ht"; - rev = version; - hash = "sha256-lAN1JZXQuN2zxi/BdBtbNj52LPj9iYn0WB2OpyQcyuU="; - fetchSubmodules = true; - }; - - patches = [ - # Fix Unix socket support in RedisQueueCollector - patches/redis-socket/core/0001-Fix-Unix-socket-support-in-RedisQueueCollector.patch - ]; - - nativeBuildInputs = [ - setuptools-scm - ]; - - propagatedNativeBuildInputs = [ - sassc - minify - ]; - - propagatedBuildInputs = [ - flask - humanize - sqlalchemy - sqlalchemy-utils - psycopg2 - markdown - mistletoe - bleach - requests - beautifulsoup4 - pygments - cryptography - prometheus-client - alembic - redis - celery - # Used transitively through beautifulsoup4 - html5lib - # Used transitively trough bleach.css_sanitizer - tinycss2 - # Used by srht.debug - importlib-metadata - ]; - - env = { - PREFIX = placeholder "out"; - PKGVER = version; - }; - - postInstall = '' - make install - ''; - - pythonImportsCheck = [ "srht" ]; - - meta = with lib; { - homepage = "https://git.sr.ht/~sircmpwn/core.sr.ht"; - description = "Core modules for sr.ht"; - license = licenses.bsd3; - maintainers = with maintainers; [ - eadwu - christoph-heiss - ]; - }; -} diff --git a/pkgs/applications/version-management/sourcehut/default.nix b/pkgs/applications/version-management/sourcehut/default.nix deleted file mode 100644 index ede187a215fc..000000000000 --- a/pkgs/applications/version-management/sourcehut/default.nix +++ /dev/null @@ -1,56 +0,0 @@ -{ - lib, - python3, - callPackage, - recurseIntoAttrs, - nixosTests, - config, -}: - -# To expose the *srht modules, they have to be a python module so we use `buildPythonModule` -# Then we expose them through all-packages.nix as an application through `toPythonApplication` -# https://github.com/NixOS/nixpkgs/pull/54425#discussion_r250688781 -let - python = python3.override { - self = python; - packageOverrides = self: super: { - srht = self.callPackage ./core.nix { }; - - buildsrht = self.callPackage ./builds.nix { }; - gitsrht = self.callPackage ./git.nix { }; - hgsrht = self.callPackage ./hg.nix { }; - hubsrht = self.callPackage ./hub.nix { }; - listssrht = self.callPackage ./lists.nix { }; - mansrht = self.callPackage ./man.nix { }; - metasrht = self.callPackage ./meta.nix { }; - pastesrht = self.callPackage ./paste.nix { }; - todosrht = self.callPackage ./todo.nix { }; - - scmsrht = self.callPackage ./scm.nix { }; - }; - }; -in -with python.pkgs; -recurseIntoAttrs ( - { - inherit python; - coresrht = toPythonApplication srht; - buildsrht = toPythonApplication buildsrht; - gitsrht = toPythonApplication gitsrht; - hgsrht = toPythonApplication hgsrht; - hubsrht = toPythonApplication hubsrht; - listssrht = toPythonApplication listssrht; - mansrht = toPythonApplication mansrht; - metasrht = toPythonApplication metasrht; - pagessrht = callPackage ./pages.nix { }; - pastesrht = toPythonApplication pastesrht; - todosrht = toPythonApplication todosrht; - passthru.tests = { - nixos-sourcehut = nixosTests.sourcehut; - }; - } - // lib.optionalAttrs config.allowAliases { - # Added 2022-10-29 - dispatchsrht = throw "dispatch is deprecated. See https://sourcehut.org/blog/2022-08-01-dispatch-deprecation-plans/ for more information."; - } -) diff --git a/pkgs/applications/version-management/sourcehut/fix-gqlgen-trimpath.nix b/pkgs/applications/version-management/sourcehut/fix-gqlgen-trimpath.nix deleted file mode 100644 index 562ce6e445d3..000000000000 --- a/pkgs/applications/version-management/sourcehut/fix-gqlgen-trimpath.nix +++ /dev/null @@ -1,35 +0,0 @@ -{ - unzip, - gqlgenVersion, -}: -{ - overrideModAttrs = ( - _: { - # No need to workaround -trimpath: it's not used in goModules, - # but do download `go generate`'s dependencies nonetheless. - preBuild = '' - if [ -d ./loaders ]; then go generate ./loaders; fi - if [ -d ./graph ]; then go generate ./graph; fi - ''; - } - ); - - # Workaround this error: - # go: git.sr.ht/~emersion/go-emailthreads@v0.0.0-20220412093310-4fd792e343ba: module lookup disabled by GOPROXY=off - # tidy failed: go mod tidy failed: exit status 1 - # graph/generate.go:10: running "go": exit status 1 - proxyVendor = true; - - nativeBuildInputs = [ unzip ]; - - # Workaround -trimpath in the package derivation: - # https://github.com/99designs/gqlgen/issues/1537 - # This is to give `go generate ./graph` access to gqlgen's *.gotpl files - # If it fails, the gqlgenVersion may have to be updated. - preBuild = '' - unzip ''${GOPROXY#"file://"}/github.com/99designs/gqlgen/@v/v${gqlgenVersion}.zip - if [ -d ./loaders ]; then go generate ./loaders; fi - if [ -d ./graph ]; then go generate ./graph; fi - rm -rf github.com - ''; -} diff --git a/pkgs/applications/version-management/sourcehut/git.nix b/pkgs/applications/version-management/sourcehut/git.nix deleted file mode 100644 index cf58b41994e5..000000000000 --- a/pkgs/applications/version-management/sourcehut/git.nix +++ /dev/null @@ -1,153 +0,0 @@ -{ - lib, - fetchFromSourcehut, - buildGoModule, - buildPythonPackage, - python, - srht, - scmsrht, - pygit2, - minio, - pythonOlder, - unzip, - pip, - setuptools-scm, -}: -let - version = "0.88.10"; - gqlgen = import ./fix-gqlgen-trimpath.nix { - inherit unzip; - gqlgenVersion = "0.17.64"; - }; - - src = fetchFromSourcehut { - owner = "~sircmpwn"; - repo = "git.sr.ht"; - rev = version; - hash = "sha256-o7d2EIx9oJAQSIrMMG/TYjAo7PJwT6rE8kcVMKoYenY="; - }; - - patches = [ ./patches/core-go-update/git/patch-deps.patch ]; - - gitApi = buildGoModule ( - { - inherit src version patches; - pname = "gitsrht-api"; - modRoot = "api"; - vendorHash = "sha256-20SxOZrvj41L8A5nuOro9DYiK6FyhwJK5cNAvxPB7qw="; - } - // gqlgen - ); - - gitDispatch = buildGoModule ( - { - inherit src version patches; - pname = "gitsrht-dispatch"; - modRoot = "dispatch"; - vendorHash = "sha256-MXLF7vO8SmUkU1nOxhObuzjT2ZRQQluIX7TRrxL7/3Y="; - - postPatch = '' - substituteInPlace dispatch/main.go \ - --replace-fail /var/log/git.sr.ht-dispatch /var/log/sourcehut/git.sr.ht-dispatch - ''; - } - // gqlgen - ); - - gitKeys = buildGoModule ( - { - inherit src version patches; - pname = "gitsrht-keys"; - modRoot = "keys"; - vendorHash = "sha256-MXLF7vO8SmUkU1nOxhObuzjT2ZRQQluIX7TRrxL7/3Y="; - - postPatch = '' - substituteInPlace keys/main.go \ - --replace-fail /var/log/git.sr.ht-keys /var/log/sourcehut/git.sr.ht-keys - ''; - } - // gqlgen - ); - - gitShell = buildGoModule ( - { - inherit src version patches; - pname = "gitsrht-shell"; - modRoot = "shell"; - vendorHash = "sha256-MXLF7vO8SmUkU1nOxhObuzjT2ZRQQluIX7TRrxL7/3Y="; - - postPatch = '' - substituteInPlace shell/main.go \ - --replace-fail /var/log/git.sr.ht-shell /var/log/sourcehut/git.sr.ht-shell - ''; - } - // gqlgen - ); - - gitUpdateHook = buildGoModule ( - { - inherit src version patches; - pname = "gitsrht-update-hook"; - modRoot = "update-hook"; - vendorHash = "sha256-MXLF7vO8SmUkU1nOxhObuzjT2ZRQQluIX7TRrxL7/3Y="; - - postPatch = '' - substituteInPlace update-hook/main.go \ - --replace-fail /var/log/git.sr.ht-update-hook /var/log/sourcehut/git.sr.ht-update-hook - ''; - } - // gqlgen - ); -in -buildPythonPackage rec { - inherit src version patches; - pname = "gitsrht"; - pyproject = true; - - disabled = pythonOlder "3.7"; - - nativeBuildInputs = [ - pip - setuptools-scm - ]; - - propagatedBuildInputs = [ - srht - scmsrht - pygit2 - minio - ]; - - env = { - PKGVER = version; - SRHT_PATH = "${srht}/${python.sitePackages}/srht"; - PREFIX = placeholder "out"; - }; - - postBuild = '' - make SASSC_INCLUDE=-I${srht}/share/sourcehut/scss/ all-share - ''; - - postInstall = '' - mkdir -p $out/bin - ln -s ${gitApi}/bin/api $out/bin/git.sr.ht-api - ln -s ${gitDispatch}/bin/dispatch $out/bin/git.sr.ht-dispatch - ln -s ${gitKeys}/bin/keys $out/bin/git.sr.ht-keys - ln -s ${gitShell}/bin/shell $out/bin/git.sr.ht-shell - ln -s ${gitUpdateHook}/bin/update-hook $out/bin/git.sr.ht-update-hook - install -Dm644 schema.sql $out/share/sourcehut/git.sr.ht-schema.sql - make PREFIX=$out install-share - ''; - - pythonImportsCheck = [ "gitsrht" ]; - - meta = with lib; { - homepage = "https://git.sr.ht/~sircmpwn/git.sr.ht"; - description = "Git repository hosting service for the sr.ht network"; - license = licenses.agpl3Only; - maintainers = with maintainers; [ - eadwu - christoph-heiss - ]; - }; -} diff --git a/pkgs/applications/version-management/sourcehut/hg.nix b/pkgs/applications/version-management/sourcehut/hg.nix deleted file mode 100644 index 59642035e236..000000000000 --- a/pkgs/applications/version-management/sourcehut/hg.nix +++ /dev/null @@ -1,117 +0,0 @@ -{ - lib, - fetchFromSourcehut, - fetchpatch, - buildGoModule, - buildPythonPackage, - srht, - python-hglib, - scmsrht, - unidiff, - python, - unzip, - pip, - pythonOlder, - setuptools-scm, -}: - -let - version = "0.36.1"; - gqlgen = import ./fix-gqlgen-trimpath.nix { - inherit unzip; - gqlgenVersion = "0.17.64"; - }; - - patches = [ - (fetchpatch { - name = "update-core-go-and-gqlgen.patch"; - url = "https://hg.sr.ht/~sircmpwn/hg.sr.ht/rev/2765f086c3a67e00219cabe9a1dd01b2012c5c12.patch"; - hash = "sha256-MLZG07tD7vrfvx2GDRUvFd/7VxxZLrAa/C3bB/IvQpI="; - }) - ./patches/core-go-update/hg/patch-deps.patch - ]; - - src = fetchFromSourcehut { - owner = "~sircmpwn"; - repo = "hg.sr.ht"; - rev = version; - hash = "sha256-EeWRUb/BZ+KJXNqmzCFYHkvWUaPvF/F7ZaOYM0IEYwk="; - vc = "hg"; - }; - - hgsrht-api = buildGoModule ( - { - inherit src version patches; - pname = "hgsrht-api"; - modRoot = "api"; - vendorHash = "sha256-elaVmyaO5IbzsnBYRjJvmoOFR8gx1xCfzd3z01KNXVA="; - } - // gqlgen - ); - - hgsrht-keys = buildGoModule { - inherit src version patches; - pname = "hgsrht-keys"; - modRoot = "keys"; - vendorHash = "sha256-U5NtgyUgVqI25XBg51U7glNRpR5MZBCcsuuR6f+gZc8="; - - postPatch = '' - substituteInPlace keys/main.go \ - --replace-fail /var/log/hg.sr.ht-keys /var/log/sourcehut/hg.sr.ht-keys - ''; - }; -in -buildPythonPackage rec { - inherit src version patches; - pname = "hgsrht"; - - pyproject = true; - - disabled = pythonOlder "3.7"; - - postPatch = '' - substituteInPlace hg.sr.ht-shell \ - --replace-fail /var/log/hg.sr.ht-shell /var/log/sourcehut/hg.sr.ht-shell - ''; - - nativeBuildInputs = [ - pip - setuptools-scm - ]; - - propagatedBuildInputs = [ - python-hglib - scmsrht - srht - unidiff - ]; - - env = { - PKGVER = version; - SRHT_PATH = "${srht}/${python.sitePackages}/srht"; - PREFIX = placeholder "out"; - }; - - postBuild = '' - make SASSC_INCLUDE=-I${srht}/share/sourcehut/scss/ all-share - ''; - - postInstall = '' - ln -s ${hgsrht-api}/bin/api $out/bin/hg.sr.ht-api - ln -s ${hgsrht-keys}/bin/hgsrht-keys $out/bin/hg.sr.ht-keys - install -Dm644 schema.sql $out/share/sourcehut/hg.sr.ht-schema.sql - make install-share - ''; - - pythonImportsCheck = [ "hgsrht" ]; - - meta = with lib; { - homepage = "https://hg.sr.ht/~sircmpwn/hg.sr.ht"; - description = "Mercurial repository hosting service for the sr.ht network"; - license = licenses.agpl3Only; - maintainers = with maintainers; [ - eadwu - christoph-heiss - ]; - }; -} diff --git a/pkgs/applications/version-management/sourcehut/hub.nix b/pkgs/applications/version-management/sourcehut/hub.nix deleted file mode 100644 index 52b30b793ab6..000000000000 --- a/pkgs/applications/version-management/sourcehut/hub.nix +++ /dev/null @@ -1,90 +0,0 @@ -{ - lib, - fetchFromSourcehut, - buildGoModule, - buildPythonPackage, - python, - srht, - setuptools-scm, - pip, - pyyaml, - pythonOlder, - unzip, -}: - -let - version = "0.20.2"; - gqlgen = import ./fix-gqlgen-trimpath.nix { - inherit unzip; - gqlgenVersion = "0.17.64"; - }; - - patches = [ ./patches/core-go-update/hub/patch-deps.patch ]; - - src = fetchFromSourcehut { - owner = "~sircmpwn"; - repo = "hub.sr.ht"; - rev = version; - hash = "sha256-blaaJ7kQBkswmSpEVEsDm6vaxuMuCcW2wmeN+fbwzjg="; - }; - - hubsrht-api = buildGoModule ( - { - inherit src version patches; - pname = "hubsrht-api"; - modRoot = "api"; - vendorHash = "sha256-jKNHZrFydp3+cD8MR2izzE8bi4H2uT/7+x/wmPkEIIc="; - } - // gqlgen - ); -in -buildPythonPackage rec { - inherit src version patches; - pname = "hubsrht"; - pyproject = true; - - disabled = pythonOlder "3.7"; - - nativeBuildInputs = [ - pip - setuptools-scm - ]; - - propagatedBuildInputs = [ - srht - pyyaml - ]; - - env = { - PKGVER = version; - SRHT_PATH = "${srht}/${python.sitePackages}/srht"; - PREFIX = placeholder "out"; - }; - - postBuild = '' - make SASSC_INCLUDE=-I${srht}/share/sourcehut/scss/ all-share - ''; - - postInstall = '' - ln -s ${hubsrht-api}/bin/api $out/bin/hub.sr.ht-api - install -Dm644 schema.sql $out/share/sourcehut/hub.sr.ht-schema.sql - make install-share - ''; - - # Module has no tests - doCheck = false; - - pythonImportsCheck = [ - "hubsrht" - ]; - - meta = with lib; { - homepage = "https://git.sr.ht/~sircmpwn/hub.sr.ht"; - description = "Project hub service for the sr.ht network"; - license = licenses.agpl3Only; - maintainers = with maintainers; [ - eadwu - christoph-heiss - ]; - }; -} diff --git a/pkgs/applications/version-management/sourcehut/lists.nix b/pkgs/applications/version-management/sourcehut/lists.nix deleted file mode 100644 index f36515a55b7b..000000000000 --- a/pkgs/applications/version-management/sourcehut/lists.nix +++ /dev/null @@ -1,92 +0,0 @@ -{ - lib, - fetchFromSourcehut, - buildGoModule, - buildPythonPackage, - srht, - aiosmtpd, - asyncpg, - pygit2, - emailthreads, - python, - unzip, - pip, - pythonOlder, - setuptools-scm, -}: - -let - version = "0.62.3"; - gqlgen = import ./fix-gqlgen-trimpath.nix { - inherit unzip; - gqlgenVersion = "0.17.64"; - }; - - patches = [ ./patches/core-go-update/lists/patch-deps.patch ]; - - src = fetchFromSourcehut { - owner = "~sircmpwn"; - repo = "lists.sr.ht"; - rev = version; - hash = "sha256-HU3hnKdIoseCo1/lt3GIOQ5d3joykN11/Bzvk4xvH4Y="; - }; - - listssrht-api = buildGoModule ( - { - inherit src version patches; - pname = "listssrht-api"; - modRoot = "api"; - vendorHash = "sha256-XKDEr8ESs9oBh7DKu2jgPEMDY99nN25inkNwU/rrza8="; - } - // gqlgen - ); -in -buildPythonPackage rec { - inherit src version patches; - pname = "listssrht"; - pyproject = true; - - disabled = pythonOlder "3.7"; - - nativeBuildInputs = [ - pip - setuptools-scm - ]; - - propagatedBuildInputs = [ - srht - aiosmtpd - asyncpg - pygit2 - # Unofficial dependency - emailthreads - ]; - - env = { - PKGVER = version; - SRHT_PATH = "${srht}/${python.sitePackages}/srht"; - PREFIX = placeholder "out"; - }; - - postBuild = '' - make SASSC_INCLUDE=-I${srht}/share/sourcehut/scss/ all-share - ''; - - postInstall = '' - ln -s ${listssrht-api}/bin/api $out/bin/lists.sr.ht-api - install -Dm644 schema.sql $out/share/sourcehut/lists.sr.ht-schema.sql - make install-share - ''; - - pythonImportsCheck = [ "listssrht" ]; - - meta = with lib; { - homepage = "https://git.sr.ht/~sircmpwn/lists.sr.ht"; - description = "Mailing list service for the sr.ht network"; - license = licenses.agpl3Only; - maintainers = with maintainers; [ - eadwu - christoph-heiss - ]; - }; -} diff --git a/pkgs/applications/version-management/sourcehut/man.nix b/pkgs/applications/version-management/sourcehut/man.nix deleted file mode 100644 index 8b9e0525a926..000000000000 --- a/pkgs/applications/version-management/sourcehut/man.nix +++ /dev/null @@ -1,85 +0,0 @@ -{ - lib, - fetchFromSourcehut, - buildGoModule, - buildPythonPackage, - srht, - pygit2, - python, - unzip, - pip, - pythonOlder, - setuptools-scm, -}: - -let - version = "0.18.1"; - gqlgen = import ./fix-gqlgen-trimpath.nix { - inherit unzip; - gqlgenVersion = "0.17.64"; - }; - - patches = [ ./patches/core-go-update/man/patch-deps.patch ]; - - src = fetchFromSourcehut { - owner = "~sircmpwn"; - repo = "man.sr.ht"; - rev = version; - hash = "sha256-c2xFC1pmOSGGMP4RVOmgFogj7CY2kHrADsWsm7M5ZK4="; - }; - - mansrht-api = buildGoModule ( - { - inherit src version patches; - pname = "mansrht-api"; - modRoot = "api"; - vendorHash = "sha256-jKNHZrFydp3+cD8MR2izzE8bi4H2uT/7+x/wmPkEIIc="; - } - // gqlgen - ); -in -buildPythonPackage rec { - inherit src version patches; - pname = "mansrht"; - pyproject = true; - - disabled = pythonOlder "3.7"; - - nativeBuildInputs = [ - pip - setuptools-scm - ]; - - propagatedBuildInputs = [ - srht - pygit2 - ]; - - env = { - PKGVER = version; - SRHT_PATH = "${srht}/${python.sitePackages}/srht"; - PREFIX = placeholder "out"; - }; - - postBuild = '' - make SASSC_INCLUDE=-I${srht}/share/sourcehut/scss/ all-share - ''; - - postInstall = '' - ln -s ${mansrht-api}/bin/api $out/bin/man.sr.ht-api - install -Dm644 schema.sql $out/share/sourcehut/man.sr.ht-schema.sql - make install-share - ''; - - pythonImportsCheck = [ "mansrht" ]; - - meta = with lib; { - homepage = "https://git.sr.ht/~sircmpwn/man.sr.ht"; - description = "Wiki service for the sr.ht network"; - license = licenses.agpl3Only; - maintainers = with maintainers; [ - eadwu - christoph-heiss - ]; - }; -} diff --git a/pkgs/applications/version-management/sourcehut/meta.nix b/pkgs/applications/version-management/sourcehut/meta.nix deleted file mode 100644 index 356812b643d8..000000000000 --- a/pkgs/applications/version-management/sourcehut/meta.nix +++ /dev/null @@ -1,99 +0,0 @@ -{ - lib, - fetchFromSourcehut, - buildPythonPackage, - buildGoModule, - alembic, - bcrypt, - dnspython, - qrcode, - redis, - srht, - stripe, - prometheus-client, - zxcvbn, - python, - unzip, - pip, - pythonOlder, - setuptools-scm, -}: -let - version = "0.72.11"; - gqlgen = import ./fix-gqlgen-trimpath.nix { - inherit unzip; - gqlgenVersion = "0.17.64"; - }; - - patches = [ ./patches/core-go-update/meta/patch-deps.patch ]; - - src = fetchFromSourcehut { - owner = "~sircmpwn"; - repo = "meta.sr.ht"; - rev = version; - hash = "sha256-dh+9wSQLL69xZ2Elmkyb9vEwpE7U7szz62VVS/0IM7Q="; - }; - - metasrht-api = buildGoModule ( - { - inherit src version patches; - pname = "metasrht-api"; - modRoot = "api"; - vendorHash = "sha256-z4gRqI05t3m7ANyDJHmBcOCW476IG/eTfLetPRPbqtg="; - } - // gqlgen - ); -in -buildPythonPackage rec { - pname = "metasrht"; - inherit version src patches; - pyproject = true; - - disabled = pythonOlder "3.7"; - - nativeBuildInputs = [ - pip - setuptools-scm - ]; - - propagatedBuildInputs = [ - alembic - bcrypt - dnspython - qrcode - redis - srht - stripe - prometheus-client - zxcvbn - ]; - - env = { - PKGVER = version; - SRHT_PATH = "${srht}/${python.sitePackages}/srht"; - PREFIX = placeholder "out"; - }; - - postBuild = '' - make SASSC_INCLUDE=-I${srht}/share/sourcehut/scss/ all-share - ''; - - postInstall = '' - mkdir -p $out/bin - ln -s ${metasrht-api}/bin/api $out/bin/meta.sr.ht-api - install -Dm644 schema.sql $out/share/sourcehut/meta.sr.ht-schema.sql - make install-share - ''; - - pythonImportsCheck = [ "metasrht" ]; - - meta = with lib; { - homepage = "https://git.sr.ht/~sircmpwn/meta.sr.ht"; - description = "Account management service for the sr.ht network"; - license = licenses.agpl3Only; - maintainers = with maintainers; [ - eadwu - christoph-heiss - ]; - }; -} diff --git a/pkgs/applications/version-management/sourcehut/pages.nix b/pkgs/applications/version-management/sourcehut/pages.nix deleted file mode 100644 index cd3aa0db0ce7..000000000000 --- a/pkgs/applications/version-management/sourcehut/pages.nix +++ /dev/null @@ -1,51 +0,0 @@ -{ - lib, - fetchFromSourcehut, - buildGoModule, - unzip, -}: - -buildGoModule ( - rec { - pname = "pagessrht"; - version = "0.16.0"; - - src = fetchFromSourcehut { - owner = "~sircmpwn"; - repo = "pages.sr.ht"; - rev = version; - hash = "sha256-XnKNXYzg9wuL4U2twkAspaQJZy2HWLQQQl9AITtipVU="; - }; - - patches = ./patches/core-go-update/pages/patch-deps.patch; - - postPatch = '' - substituteInPlace Makefile \ - --replace-fail "all: server daily" "" - ''; - - vendorHash = "sha256-klDROxNvR7lk79ptckulImVVwsAfcnKtJJAaevlZSWU="; - - postInstall = '' - mkdir -p $out/share/sql/ - cp -r -t $out/share/sql/ schema.sql migrations - ''; - - meta = with lib; { - homepage = "https://git.sr.ht/~sircmpwn/pages.sr.ht"; - description = "Web hosting service for the sr.ht network"; - mainProgram = "pages.sr.ht"; - license = licenses.agpl3Only; - maintainers = with maintainers; [ - eadwu - christoph-heiss - ]; - }; - # There is no ./loaders but this does not cause troubles - # to go generate - } - // import ./fix-gqlgen-trimpath.nix { - inherit unzip; - gqlgenVersion = "0.17.64"; - } -) diff --git a/pkgs/applications/version-management/sourcehut/paste.nix b/pkgs/applications/version-management/sourcehut/paste.nix deleted file mode 100644 index e4208de8cd08..000000000000 --- a/pkgs/applications/version-management/sourcehut/paste.nix +++ /dev/null @@ -1,86 +0,0 @@ -{ - lib, - fetchFromSourcehut, - buildGoModule, - buildPythonPackage, - srht, - pip, - pyyaml, - python, - pythonOlder, - setuptools-scm, - unzip, -}: - -let - version = "0.16.1"; - gqlgen = import ./fix-gqlgen-trimpath.nix { - inherit unzip; - gqlgenVersion = "0.17.64"; - }; - - patches = [ ./patches/core-go-update/paste/patch-deps.patch ]; - - src = fetchFromSourcehut { - owner = "~sircmpwn"; - repo = "paste.sr.ht"; - rev = version; - hash = "sha256-SWtkE2/sTTJo0zAVFRfsA7fVF359OvgiHOT+yRaiads="; - }; - - pastesrht-api = buildGoModule ( - { - inherit src version patches; - pname = "pastesrht-api"; - modRoot = "api"; - vendorHash = "sha256-uVqxPa1YggPgdSzGzXxVNdf4dM2DPGDXajkSXz4NhFM="; - } - // gqlgen - ); -in -buildPythonPackage rec { - inherit src version patches; - pname = "pastesrht"; - pyproject = true; - - disabled = pythonOlder "3.7"; - - nativeBuildInputs = [ - pip - setuptools-scm - ]; - - propagatedBuildInputs = [ - srht - pyyaml - ]; - - env = { - PKGVER = version; - SRHT_PATH = "${srht}/${python.sitePackages}/srht"; - PREFIX = placeholder "out"; - }; - - postBuild = '' - make SASSC_INCLUDE=-I${srht}/share/sourcehut/scss/ all-share - ''; - - postInstall = '' - mkdir -p $out/bin - ln -s ${pastesrht-api}/bin/api $out/bin/paste.sr.ht-api - make install-share - ''; - - pythonImportsCheck = [ "pastesrht" ]; - - meta = with lib; { - homepage = "https://git.sr.ht/~sircmpwn/paste.sr.ht"; - description = "Ad-hoc text file hosting service for the sr.ht network"; - license = licenses.agpl3Only; - maintainers = with maintainers; [ - eadwu - nessdoor - christoph-heiss - ]; - }; -} diff --git a/pkgs/applications/version-management/sourcehut/patches/core-go-update/builds/patch-deps.patch b/pkgs/applications/version-management/sourcehut/patches/core-go-update/builds/patch-deps.patch deleted file mode 100644 index 27017b57ed8c..000000000000 --- a/pkgs/applications/version-management/sourcehut/patches/core-go-update/builds/patch-deps.patch +++ /dev/null @@ -1,25 +0,0 @@ -diff --git a/go.mod b/go.mod -index 07f7c64..972b258 100644 ---- a/go.mod -+++ b/go.mod -@@ -5,7 +5,7 @@ go 1.22.5 - toolchain go1.24.0 - - require ( -- git.sr.ht/~sircmpwn/core-go v0.0.0-20250304085405-cbf919e45b5b -+ git.sr.ht/~sircmpwn/core-go v0.0.0-20250311210855-6ba248d8be1b - git.sr.ht/~sircmpwn/dowork v0.0.0-20241216125407-2b00aa42322c - github.com/99designs/gqlgen v0.17.64 - github.com/Masterminds/squirrel v1.5.4 -diff --git a/go.sum b/go.sum -index aaccf89..73bfe7c 100644 ---- a/go.sum -+++ b/go.sum -@@ -1,5 +1,7 @@ - git.sr.ht/~sircmpwn/core-go v0.0.0-20250304085405-cbf919e45b5b h1:d76irAQODAtl5G1zmKfwf60544fyGz74YT9k+7yYVxc= - git.sr.ht/~sircmpwn/core-go v0.0.0-20250304085405-cbf919e45b5b/go.mod h1:UHi3kXwgfZ/DIbMu5LeqZb3KrY/jsdUDefc8+3YWC3c= -+git.sr.ht/~sircmpwn/core-go v0.0.0-20250311210855-6ba248d8be1b h1:UuQxEJrh/NNdmaVcK34opEz7ypXnPyxeRcT7Aigz+7E= -+git.sr.ht/~sircmpwn/core-go v0.0.0-20250311210855-6ba248d8be1b/go.mod h1:UHi3kXwgfZ/DIbMu5LeqZb3KrY/jsdUDefc8+3YWC3c= - git.sr.ht/~sircmpwn/dowork v0.0.0-20241216125407-2b00aa42322c h1:v2opuaN0C5ZpuCifRNR9ZQ8V9IG+Ja80otK1MFj5RnI= - git.sr.ht/~sircmpwn/dowork v0.0.0-20241216125407-2b00aa42322c/go.mod h1:8neHEO3503w/rNtttnR0JFpQgM/GFhaafVwvkPsFIDw= - git.sr.ht/~sircmpwn/getopt v0.0.0-20191230200459-23622cc906b3/go.mod h1:wMEGFFFNuPos7vHmWXfszqImLppbc0wEhh6JBfJIUgw= diff --git a/pkgs/applications/version-management/sourcehut/patches/core-go-update/git/patch-deps.patch b/pkgs/applications/version-management/sourcehut/patches/core-go-update/git/patch-deps.patch deleted file mode 100644 index f6e1d18e3c5c..000000000000 --- a/pkgs/applications/version-management/sourcehut/patches/core-go-update/git/patch-deps.patch +++ /dev/null @@ -1,26 +0,0 @@ -diff --git a/go.mod b/go.mod -index b1e0834..8299f9b 100644 ---- a/go.mod -+++ b/go.mod -@@ -5,7 +5,7 @@ go 1.22.5 - toolchain go1.24.0 - - require ( -- git.sr.ht/~sircmpwn/core-go v0.0.0-20250304085405-cbf919e45b5b -+ git.sr.ht/~sircmpwn/core-go v0.0.0-20250311210855-6ba248d8be1b - git.sr.ht/~sircmpwn/dowork v0.0.0-20241216125407-2b00aa42322c - git.sr.ht/~sircmpwn/scm.sr.ht/srht-keys v0.0.0-20241202093706-8da5ec7e6b94 - git.sr.ht/~turminal/go-fnmatch v0.0.0-20211021204744-1a55764af6de -diff --git a/go.sum b/go.sum -index 193cce9..9b0bda4 100644 ---- a/go.sum -+++ b/go.sum -@@ -35,6 +35,8 @@ dmitri.shuralyov.com/gpu/mtl v0.0.0-20190408044501-666a987793e9/go.mod h1:H6x//7 - git.sr.ht/~sircmpwn/core-go v0.0.0-20240124105042-864816cfbc0c/go.mod h1:OovCpg5LsbYJjmDTpk5wUgHM4tUor736Pmxekm9BUcQ= - git.sr.ht/~sircmpwn/core-go v0.0.0-20250304085405-cbf919e45b5b h1:d76irAQODAtl5G1zmKfwf60544fyGz74YT9k+7yYVxc= - git.sr.ht/~sircmpwn/core-go v0.0.0-20250304085405-cbf919e45b5b/go.mod h1:UHi3kXwgfZ/DIbMu5LeqZb3KrY/jsdUDefc8+3YWC3c= -+git.sr.ht/~sircmpwn/core-go v0.0.0-20250311210855-6ba248d8be1b h1:UuQxEJrh/NNdmaVcK34opEz7ypXnPyxeRcT7Aigz+7E= -+git.sr.ht/~sircmpwn/core-go v0.0.0-20250311210855-6ba248d8be1b/go.mod h1:UHi3kXwgfZ/DIbMu5LeqZb3KrY/jsdUDefc8+3YWC3c= - git.sr.ht/~sircmpwn/dowork v0.0.0-20221010085743-46c4299d76a1/go.mod h1:8neHEO3503w/rNtttnR0JFpQgM/GFhaafVwvkPsFIDw= - git.sr.ht/~sircmpwn/dowork v0.0.0-20241216125407-2b00aa42322c h1:v2opuaN0C5ZpuCifRNR9ZQ8V9IG+Ja80otK1MFj5RnI= - git.sr.ht/~sircmpwn/dowork v0.0.0-20241216125407-2b00aa42322c/go.mod h1:8neHEO3503w/rNtttnR0JFpQgM/GFhaafVwvkPsFIDw= diff --git a/pkgs/applications/version-management/sourcehut/patches/core-go-update/hg/patch-deps.patch b/pkgs/applications/version-management/sourcehut/patches/core-go-update/hg/patch-deps.patch deleted file mode 100644 index 6ab931be71e9..000000000000 --- a/pkgs/applications/version-management/sourcehut/patches/core-go-update/hg/patch-deps.patch +++ /dev/null @@ -1,25 +0,0 @@ -diff --git a/go.mod b/go.mod -index ba49458..3a31083 100644 ---- a/go.mod -+++ b/go.mod -@@ -5,7 +5,7 @@ go 1.22.5 - toolchain go1.24.0 - - require ( -- git.sr.ht/~sircmpwn/core-go v0.0.0-20250304085405-cbf919e45b5b -+ git.sr.ht/~sircmpwn/core-go v0.0.0-20250311210855-6ba248d8be1b - git.sr.ht/~sircmpwn/dowork v0.0.0-20241216125407-2b00aa42322c - github.com/99designs/gqlgen v0.17.64 - github.com/Masterminds/squirrel v1.5.4 -diff --git a/go.sum b/go.sum -index 61766aa..e01c045 100644 ---- a/go.sum -+++ b/go.sum -@@ -1,5 +1,7 @@ - git.sr.ht/~sircmpwn/core-go v0.0.0-20250304085405-cbf919e45b5b h1:d76irAQODAtl5G1zmKfwf60544fyGz74YT9k+7yYVxc= - git.sr.ht/~sircmpwn/core-go v0.0.0-20250304085405-cbf919e45b5b/go.mod h1:UHi3kXwgfZ/DIbMu5LeqZb3KrY/jsdUDefc8+3YWC3c= -+git.sr.ht/~sircmpwn/core-go v0.0.0-20250311210855-6ba248d8be1b h1:UuQxEJrh/NNdmaVcK34opEz7ypXnPyxeRcT7Aigz+7E= -+git.sr.ht/~sircmpwn/core-go v0.0.0-20250311210855-6ba248d8be1b/go.mod h1:UHi3kXwgfZ/DIbMu5LeqZb3KrY/jsdUDefc8+3YWC3c= - git.sr.ht/~sircmpwn/dowork v0.0.0-20241216125407-2b00aa42322c h1:v2opuaN0C5ZpuCifRNR9ZQ8V9IG+Ja80otK1MFj5RnI= - git.sr.ht/~sircmpwn/dowork v0.0.0-20241216125407-2b00aa42322c/go.mod h1:8neHEO3503w/rNtttnR0JFpQgM/GFhaafVwvkPsFIDw= - git.sr.ht/~sircmpwn/getopt v0.0.0-20191230200459-23622cc906b3/go.mod h1:wMEGFFFNuPos7vHmWXfszqImLppbc0wEhh6JBfJIUgw= diff --git a/pkgs/applications/version-management/sourcehut/patches/core-go-update/hub/patch-deps.patch b/pkgs/applications/version-management/sourcehut/patches/core-go-update/hub/patch-deps.patch deleted file mode 100644 index 495783f16b21..000000000000 --- a/pkgs/applications/version-management/sourcehut/patches/core-go-update/hub/patch-deps.patch +++ /dev/null @@ -1,25 +0,0 @@ -diff --git a/go.mod b/go.mod -index ea624d5..3674152 100644 ---- a/go.mod -+++ b/go.mod -@@ -5,7 +5,7 @@ go 1.22.5 - toolchain go1.24.0 - - require ( -- git.sr.ht/~sircmpwn/core-go v0.0.0-20250304085405-cbf919e45b5b -+ git.sr.ht/~sircmpwn/core-go v0.0.0-20250311210855-6ba248d8be1b - git.sr.ht/~sircmpwn/dowork v0.0.0-20241216125407-2b00aa42322c - github.com/99designs/gqlgen v0.17.64 - github.com/vektah/gqlparser/v2 v2.5.23 -diff --git a/go.sum b/go.sum -index f67a555..a366a60 100644 ---- a/go.sum -+++ b/go.sum -@@ -1,5 +1,7 @@ - git.sr.ht/~sircmpwn/core-go v0.0.0-20250304085405-cbf919e45b5b h1:d76irAQODAtl5G1zmKfwf60544fyGz74YT9k+7yYVxc= - git.sr.ht/~sircmpwn/core-go v0.0.0-20250304085405-cbf919e45b5b/go.mod h1:UHi3kXwgfZ/DIbMu5LeqZb3KrY/jsdUDefc8+3YWC3c= -+git.sr.ht/~sircmpwn/core-go v0.0.0-20250311210855-6ba248d8be1b h1:UuQxEJrh/NNdmaVcK34opEz7ypXnPyxeRcT7Aigz+7E= -+git.sr.ht/~sircmpwn/core-go v0.0.0-20250311210855-6ba248d8be1b/go.mod h1:UHi3kXwgfZ/DIbMu5LeqZb3KrY/jsdUDefc8+3YWC3c= - git.sr.ht/~sircmpwn/dowork v0.0.0-20241216125407-2b00aa42322c h1:v2opuaN0C5ZpuCifRNR9ZQ8V9IG+Ja80otK1MFj5RnI= - git.sr.ht/~sircmpwn/dowork v0.0.0-20241216125407-2b00aa42322c/go.mod h1:8neHEO3503w/rNtttnR0JFpQgM/GFhaafVwvkPsFIDw= - git.sr.ht/~sircmpwn/getopt v0.0.0-20191230200459-23622cc906b3/go.mod h1:wMEGFFFNuPos7vHmWXfszqImLppbc0wEhh6JBfJIUgw= diff --git a/pkgs/applications/version-management/sourcehut/patches/core-go-update/lists/patch-deps.patch b/pkgs/applications/version-management/sourcehut/patches/core-go-update/lists/patch-deps.patch deleted file mode 100644 index cd6054d9408c..000000000000 --- a/pkgs/applications/version-management/sourcehut/patches/core-go-update/lists/patch-deps.patch +++ /dev/null @@ -1,26 +0,0 @@ -diff --git a/go.mod b/go.mod -index da34484..24757a0 100644 ---- a/go.mod -+++ b/go.mod -@@ -6,7 +6,7 @@ toolchain go1.24.0 - - require ( - git.sr.ht/~emersion/go-emailthreads v0.0.0-20230220165133-75c43015b6c2 -- git.sr.ht/~sircmpwn/core-go v0.0.0-20250304085405-cbf919e45b5b -+ git.sr.ht/~sircmpwn/core-go v0.0.0-20250311210855-6ba248d8be1b - git.sr.ht/~sircmpwn/dowork v0.0.0-20241216125407-2b00aa42322c - github.com/99designs/gqlgen v0.17.64 - github.com/Masterminds/squirrel v1.5.4 -diff --git a/go.sum b/go.sum -index 4590dd5..0c49985 100644 ---- a/go.sum -+++ b/go.sum -@@ -2,6 +2,8 @@ git.sr.ht/~emersion/go-emailthreads v0.0.0-20230220165133-75c43015b6c2 h1:5CkkRD - git.sr.ht/~emersion/go-emailthreads v0.0.0-20230220165133-75c43015b6c2/go.mod h1:CQUF7XpyupxjwxlNX3PHRCYL+N2COXTRRRS4MgM49R4= - git.sr.ht/~sircmpwn/core-go v0.0.0-20250304085405-cbf919e45b5b h1:d76irAQODAtl5G1zmKfwf60544fyGz74YT9k+7yYVxc= - git.sr.ht/~sircmpwn/core-go v0.0.0-20250304085405-cbf919e45b5b/go.mod h1:UHi3kXwgfZ/DIbMu5LeqZb3KrY/jsdUDefc8+3YWC3c= -+git.sr.ht/~sircmpwn/core-go v0.0.0-20250311210855-6ba248d8be1b h1:UuQxEJrh/NNdmaVcK34opEz7ypXnPyxeRcT7Aigz+7E= -+git.sr.ht/~sircmpwn/core-go v0.0.0-20250311210855-6ba248d8be1b/go.mod h1:UHi3kXwgfZ/DIbMu5LeqZb3KrY/jsdUDefc8+3YWC3c= - git.sr.ht/~sircmpwn/dowork v0.0.0-20241216125407-2b00aa42322c h1:v2opuaN0C5ZpuCifRNR9ZQ8V9IG+Ja80otK1MFj5RnI= - git.sr.ht/~sircmpwn/dowork v0.0.0-20241216125407-2b00aa42322c/go.mod h1:8neHEO3503w/rNtttnR0JFpQgM/GFhaafVwvkPsFIDw= - git.sr.ht/~sircmpwn/getopt v0.0.0-20191230200459-23622cc906b3/go.mod h1:wMEGFFFNuPos7vHmWXfszqImLppbc0wEhh6JBfJIUgw= diff --git a/pkgs/applications/version-management/sourcehut/patches/core-go-update/man/patch-deps.patch b/pkgs/applications/version-management/sourcehut/patches/core-go-update/man/patch-deps.patch deleted file mode 100644 index 581f42528f51..000000000000 --- a/pkgs/applications/version-management/sourcehut/patches/core-go-update/man/patch-deps.patch +++ /dev/null @@ -1,25 +0,0 @@ -diff --git a/go.mod b/go.mod -index 21c7713..8f158a2 100644 ---- a/go.mod -+++ b/go.mod -@@ -5,7 +5,7 @@ go 1.22.5 - toolchain go1.24.0 - - require ( -- git.sr.ht/~sircmpwn/core-go v0.0.0-20250304085405-cbf919e45b5b -+ git.sr.ht/~sircmpwn/core-go v0.0.0-20250311210855-6ba248d8be1b - git.sr.ht/~sircmpwn/dowork v0.0.0-20241216125407-2b00aa42322c - github.com/99designs/gqlgen v0.17.64 - github.com/vektah/gqlparser/v2 v2.5.23 -diff --git a/go.sum b/go.sum -index f67a555..a366a60 100644 ---- a/go.sum -+++ b/go.sum -@@ -1,5 +1,7 @@ - git.sr.ht/~sircmpwn/core-go v0.0.0-20250304085405-cbf919e45b5b h1:d76irAQODAtl5G1zmKfwf60544fyGz74YT9k+7yYVxc= - git.sr.ht/~sircmpwn/core-go v0.0.0-20250304085405-cbf919e45b5b/go.mod h1:UHi3kXwgfZ/DIbMu5LeqZb3KrY/jsdUDefc8+3YWC3c= -+git.sr.ht/~sircmpwn/core-go v0.0.0-20250311210855-6ba248d8be1b h1:UuQxEJrh/NNdmaVcK34opEz7ypXnPyxeRcT7Aigz+7E= -+git.sr.ht/~sircmpwn/core-go v0.0.0-20250311210855-6ba248d8be1b/go.mod h1:UHi3kXwgfZ/DIbMu5LeqZb3KrY/jsdUDefc8+3YWC3c= - git.sr.ht/~sircmpwn/dowork v0.0.0-20241216125407-2b00aa42322c h1:v2opuaN0C5ZpuCifRNR9ZQ8V9IG+Ja80otK1MFj5RnI= - git.sr.ht/~sircmpwn/dowork v0.0.0-20241216125407-2b00aa42322c/go.mod h1:8neHEO3503w/rNtttnR0JFpQgM/GFhaafVwvkPsFIDw= - git.sr.ht/~sircmpwn/getopt v0.0.0-20191230200459-23622cc906b3/go.mod h1:wMEGFFFNuPos7vHmWXfszqImLppbc0wEhh6JBfJIUgw= diff --git a/pkgs/applications/version-management/sourcehut/patches/core-go-update/meta/patch-deps.patch b/pkgs/applications/version-management/sourcehut/patches/core-go-update/meta/patch-deps.patch deleted file mode 100644 index 7163246928a9..000000000000 --- a/pkgs/applications/version-management/sourcehut/patches/core-go-update/meta/patch-deps.patch +++ /dev/null @@ -1,26 +0,0 @@ -diff --git a/go.mod b/go.mod -index 463f022..a7dc400 100644 ---- a/go.mod -+++ b/go.mod -@@ -8,7 +8,7 @@ require ( - git.sr.ht/~emersion/go-oauth2 v0.0.0-20240217160856-2e0d6e20b088 - git.sr.ht/~emersion/gqlclient v0.0.0-20230820050442-8873fe0204b9 - git.sr.ht/~sircmpwn/abused v0.0.0-20240216134550-21e8606c6f89 -- git.sr.ht/~sircmpwn/core-go v0.0.0-20250311090327-1e3cd785af1e -+ git.sr.ht/~sircmpwn/core-go v0.0.0-20250311210855-6ba248d8be1b - git.sr.ht/~sircmpwn/dowork v0.0.0-20241216125407-2b00aa42322c - github.com/99designs/gqlgen v0.17.64 - github.com/Masterminds/squirrel v1.5.4 -diff --git a/go.sum b/go.sum -index 9c08b1a..abf1a58 100644 ---- a/go.sum -+++ b/go.sum -@@ -6,6 +6,8 @@ git.sr.ht/~sircmpwn/abused v0.0.0-20240216134550-21e8606c6f89 h1:usW1i77LjfTfNzX - git.sr.ht/~sircmpwn/abused v0.0.0-20240216134550-21e8606c6f89/go.mod h1:A+FTCDOSRA0naGMcM9OenO7kMhBxj+Kbd+4nBpg6NO4= - git.sr.ht/~sircmpwn/core-go v0.0.0-20250311090327-1e3cd785af1e h1:epi/OdTKtazVbHHn1Qunx+nSHt96+xBBiNgs+SgRGwo= - git.sr.ht/~sircmpwn/core-go v0.0.0-20250311090327-1e3cd785af1e/go.mod h1:UHi3kXwgfZ/DIbMu5LeqZb3KrY/jsdUDefc8+3YWC3c= -+git.sr.ht/~sircmpwn/core-go v0.0.0-20250311210855-6ba248d8be1b h1:UuQxEJrh/NNdmaVcK34opEz7ypXnPyxeRcT7Aigz+7E= -+git.sr.ht/~sircmpwn/core-go v0.0.0-20250311210855-6ba248d8be1b/go.mod h1:UHi3kXwgfZ/DIbMu5LeqZb3KrY/jsdUDefc8+3YWC3c= - git.sr.ht/~sircmpwn/dowork v0.0.0-20241216125407-2b00aa42322c h1:v2opuaN0C5ZpuCifRNR9ZQ8V9IG+Ja80otK1MFj5RnI= - git.sr.ht/~sircmpwn/dowork v0.0.0-20241216125407-2b00aa42322c/go.mod h1:8neHEO3503w/rNtttnR0JFpQgM/GFhaafVwvkPsFIDw= - git.sr.ht/~sircmpwn/getopt v0.0.0-20191230200459-23622cc906b3/go.mod h1:wMEGFFFNuPos7vHmWXfszqImLppbc0wEhh6JBfJIUgw= diff --git a/pkgs/applications/version-management/sourcehut/patches/core-go-update/pages/patch-deps.patch b/pkgs/applications/version-management/sourcehut/patches/core-go-update/pages/patch-deps.patch deleted file mode 100644 index fad46f85377b..000000000000 --- a/pkgs/applications/version-management/sourcehut/patches/core-go-update/pages/patch-deps.patch +++ /dev/null @@ -1,25 +0,0 @@ -diff --git a/go.mod b/go.mod -index 67aa15c..baffe8e 100644 ---- a/go.mod -+++ b/go.mod -@@ -6,7 +6,7 @@ toolchain go1.24.0 - - require ( - git.sr.ht/~adnano/go-gemini v0.2.3 -- git.sr.ht/~sircmpwn/core-go v0.0.0-20250326085317-29a3ebfee9d0 -+ git.sr.ht/~sircmpwn/core-go v0.0.0-20250311210855-6ba248d8be1b - git.sr.ht/~sircmpwn/dowork v0.0.0-20241216125407-2b00aa42322c - github.com/99designs/gqlgen v0.17.64 - github.com/CAFxX/httpcompression v0.0.9 -diff --git a/go.sum b/go.sum -index ccd1f94..0945505 100644 ---- a/go.sum -+++ b/go.sum -@@ -1,5 +1,7 @@ - git.sr.ht/~adnano/go-gemini v0.2.3 h1:oJ+Y0/mheZ4Vg0ABjtf5dlmvq1yoONStiaQvmWWkofc= - git.sr.ht/~adnano/go-gemini v0.2.3/go.mod h1:hQ75Y0i5jSFL+FQ7AzWVAYr5LQsaFC7v3ZviNyj46dY= -+git.sr.ht/~sircmpwn/core-go v0.0.0-20250311210855-6ba248d8be1b h1:UuQxEJrh/NNdmaVcK34opEz7ypXnPyxeRcT7Aigz+7E= -+git.sr.ht/~sircmpwn/core-go v0.0.0-20250311210855-6ba248d8be1b/go.mod h1:UHi3kXwgfZ/DIbMu5LeqZb3KrY/jsdUDefc8+3YWC3c= - git.sr.ht/~sircmpwn/core-go v0.0.0-20250326085317-29a3ebfee9d0 h1:jFSTrW57GbcDoW850vw95zg0pLS1pe+cD5JtAQJ54ho= - git.sr.ht/~sircmpwn/core-go v0.0.0-20250326085317-29a3ebfee9d0/go.mod h1:UHi3kXwgfZ/DIbMu5LeqZb3KrY/jsdUDefc8+3YWC3c= - git.sr.ht/~sircmpwn/dowork v0.0.0-20241216125407-2b00aa42322c h1:v2opuaN0C5ZpuCifRNR9ZQ8V9IG+Ja80otK1MFj5RnI= diff --git a/pkgs/applications/version-management/sourcehut/patches/core-go-update/paste/patch-deps.patch b/pkgs/applications/version-management/sourcehut/patches/core-go-update/paste/patch-deps.patch deleted file mode 100644 index f381b0f186d2..000000000000 --- a/pkgs/applications/version-management/sourcehut/patches/core-go-update/paste/patch-deps.patch +++ /dev/null @@ -1,25 +0,0 @@ -diff --git a/go.mod b/go.mod -index bc39fc4..bd01e53 100644 ---- a/go.mod -+++ b/go.mod -@@ -5,7 +5,7 @@ go 1.22.5 - toolchain go1.24.0 - - require ( -- git.sr.ht/~sircmpwn/core-go v0.0.0-20250304085405-cbf919e45b5b -+ git.sr.ht/~sircmpwn/core-go v0.0.0-20250311210855-6ba248d8be1b - git.sr.ht/~sircmpwn/dowork v0.0.0-20241216125407-2b00aa42322c - github.com/99designs/gqlgen v0.17.64 - github.com/Masterminds/squirrel v1.5.4 -diff --git a/go.sum b/go.sum -index 61766aa..e01c045 100644 ---- a/go.sum -+++ b/go.sum -@@ -1,5 +1,7 @@ - git.sr.ht/~sircmpwn/core-go v0.0.0-20250304085405-cbf919e45b5b h1:d76irAQODAtl5G1zmKfwf60544fyGz74YT9k+7yYVxc= - git.sr.ht/~sircmpwn/core-go v0.0.0-20250304085405-cbf919e45b5b/go.mod h1:UHi3kXwgfZ/DIbMu5LeqZb3KrY/jsdUDefc8+3YWC3c= -+git.sr.ht/~sircmpwn/core-go v0.0.0-20250311210855-6ba248d8be1b h1:UuQxEJrh/NNdmaVcK34opEz7ypXnPyxeRcT7Aigz+7E= -+git.sr.ht/~sircmpwn/core-go v0.0.0-20250311210855-6ba248d8be1b/go.mod h1:UHi3kXwgfZ/DIbMu5LeqZb3KrY/jsdUDefc8+3YWC3c= - git.sr.ht/~sircmpwn/dowork v0.0.0-20241216125407-2b00aa42322c h1:v2opuaN0C5ZpuCifRNR9ZQ8V9IG+Ja80otK1MFj5RnI= - git.sr.ht/~sircmpwn/dowork v0.0.0-20241216125407-2b00aa42322c/go.mod h1:8neHEO3503w/rNtttnR0JFpQgM/GFhaafVwvkPsFIDw= - git.sr.ht/~sircmpwn/getopt v0.0.0-20191230200459-23622cc906b3/go.mod h1:wMEGFFFNuPos7vHmWXfszqImLppbc0wEhh6JBfJIUgw= diff --git a/pkgs/applications/version-management/sourcehut/patches/core-go-update/todo/patch-deps.patch b/pkgs/applications/version-management/sourcehut/patches/core-go-update/todo/patch-deps.patch deleted file mode 100644 index b54e77147ed8..000000000000 --- a/pkgs/applications/version-management/sourcehut/patches/core-go-update/todo/patch-deps.patch +++ /dev/null @@ -1,25 +0,0 @@ -diff --git a/go.mod b/go.mod -index a352cfd..ab4beae 100644 ---- a/go.mod -+++ b/go.mod -@@ -5,7 +5,7 @@ go 1.22.5 - toolchain go1.24.0 - - require ( -- git.sr.ht/~sircmpwn/core-go v0.0.0-20250306104433-8e729e7539f4 -+ git.sr.ht/~sircmpwn/core-go v0.0.0-20250311210855-6ba248d8be1b - git.sr.ht/~sircmpwn/dowork v0.0.0-20241216125407-2b00aa42322c - github.com/99designs/gqlgen v0.17.64 - github.com/Masterminds/squirrel v1.5.4 -diff --git a/go.sum b/go.sum -index 5342a85..50c87f1 100644 ---- a/go.sum -+++ b/go.sum -@@ -1,5 +1,7 @@ - git.sr.ht/~sircmpwn/core-go v0.0.0-20250306104433-8e729e7539f4 h1:LvEcAyN0YDwqsa7QkFXne0bQEWAod6jAI2VIc+kk5sk= - git.sr.ht/~sircmpwn/core-go v0.0.0-20250306104433-8e729e7539f4/go.mod h1:UHi3kXwgfZ/DIbMu5LeqZb3KrY/jsdUDefc8+3YWC3c= -+git.sr.ht/~sircmpwn/core-go v0.0.0-20250311210855-6ba248d8be1b h1:UuQxEJrh/NNdmaVcK34opEz7ypXnPyxeRcT7Aigz+7E= -+git.sr.ht/~sircmpwn/core-go v0.0.0-20250311210855-6ba248d8be1b/go.mod h1:UHi3kXwgfZ/DIbMu5LeqZb3KrY/jsdUDefc8+3YWC3c= - git.sr.ht/~sircmpwn/dowork v0.0.0-20241216125407-2b00aa42322c h1:v2opuaN0C5ZpuCifRNR9ZQ8V9IG+Ja80otK1MFj5RnI= - git.sr.ht/~sircmpwn/dowork v0.0.0-20241216125407-2b00aa42322c/go.mod h1:8neHEO3503w/rNtttnR0JFpQgM/GFhaafVwvkPsFIDw= - git.sr.ht/~sircmpwn/getopt v0.0.0-20191230200459-23622cc906b3/go.mod h1:wMEGFFFNuPos7vHmWXfszqImLppbc0wEhh6JBfJIUgw= diff --git a/pkgs/applications/version-management/sourcehut/patches/redis-socket/core/0001-Fix-Unix-socket-support-in-RedisQueueCollector.patch b/pkgs/applications/version-management/sourcehut/patches/redis-socket/core/0001-Fix-Unix-socket-support-in-RedisQueueCollector.patch deleted file mode 100644 index fb2c32033128..000000000000 --- a/pkgs/applications/version-management/sourcehut/patches/redis-socket/core/0001-Fix-Unix-socket-support-in-RedisQueueCollector.patch +++ /dev/null @@ -1,43 +0,0 @@ -From 76dd636151735671be74ba9d55f773e190e22827 Mon Sep 17 00:00:00 2001 -From: Julien Moutinho -Date: Fri, 13 May 2022 22:40:46 +0200 -Subject: [PATCH core.sr.ht] Fix Unix socket support in RedisQueueCollector - -The broker URL is not necessarily in the format expected by Redis.from_url - -Especially, Redis.from_url supports this format for Unix sockets: - unix:///run/redis-sourcehut-metasrht/redis.sock?db=0 -See https://redis-py.readthedocs.io/en/stable/#redis.ConnectionPool.from_url - -Whereas Celery+Kombu support Redis but also other transports -and thus expect another scheme: - redis+socket:///run/redis-sourcehut-metasrht/redis.sock?virtual_host=1 -See https://docs.celeryproject.org/en/stable/userguide/configuration.html#redis-backend-settings -and https://github.com/celery/celery/blob/e5d99801e4b56a02af4a2e183879c767228d2817/celery/backends/redis.py#L299-L352 -and https://github.com/celery/kombu/blob/master/kombu/utils/url.py ---- - srht/metrics.py | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/srht/metrics.py b/srht/metrics.py -index 68caf8e..2df5777 100644 ---- a/srht/metrics.py -+++ b/srht/metrics.py -@@ -1,12 +1,12 @@ - import time -+from celery import Celery - from prometheus_client.metrics_core import GaugeMetricFamily - from redis import ResponseError --from srht.redis import from_url - - - class RedisQueueCollector: - def __init__(self, broker, name, documentation, queue_name="celery"): -- self.redis = from_url(broker) -+ self.redis = Celery("collector", broker=broker).connection_for_read().channel().client - self.queue_name = queue_name - self.name = name - self.documentation = documentation --- -2.35.1 - diff --git a/pkgs/applications/version-management/sourcehut/scm.nix b/pkgs/applications/version-management/sourcehut/scm.nix deleted file mode 100644 index 0a9bf574620f..000000000000 --- a/pkgs/applications/version-management/sourcehut/scm.nix +++ /dev/null @@ -1,49 +0,0 @@ -{ - lib, - fetchFromSourcehut, - buildPythonPackage, - srht, - pyyaml, - buildsrht, - pythonOlder, - setuptools-scm, -}: - -buildPythonPackage rec { - pname = "scmsrht"; - version = "0.22.28"; - pyproject = true; - - disabled = pythonOlder "3.7"; - - src = fetchFromSourcehut { - owner = "~sircmpwn"; - repo = "scm.sr.ht"; - rev = version; - hash = "sha256-+zxqiz5yPpgTwAw7w8GqJFb3OCcJEH/UhS5u2Xs7pzo="; - }; - - nativeBuildInputs = [ - setuptools-scm - ]; - - propagatedBuildInputs = [ - srht - pyyaml - buildsrht - ]; - - env.PKGVER = version; - - pythonImportsCheck = [ "scmsrht" ]; - - meta = with lib; { - homepage = "https://git.sr.ht/~sircmpwn/scm.sr.ht"; - description = "Shared support code for sr.ht source control services"; - license = licenses.agpl3Only; - maintainers = with maintainers; [ - eadwu - christoph-heiss - ]; - }; -} diff --git a/pkgs/applications/version-management/sourcehut/todo.nix b/pkgs/applications/version-management/sourcehut/todo.nix deleted file mode 100644 index 3d9374185563..000000000000 --- a/pkgs/applications/version-management/sourcehut/todo.nix +++ /dev/null @@ -1,90 +0,0 @@ -{ - lib, - fetchFromSourcehut, - buildGoModule, - buildPythonPackage, - srht, - alembic, - pytest, - factory-boy, - python, - unzip, - pythonOlder, - setuptools-scm, -}: - -let - version = "0.77.5"; - gqlgen = import ./fix-gqlgen-trimpath.nix { - inherit unzip; - gqlgenVersion = "0.17.64"; - }; - - src = fetchFromSourcehut { - owner = "~sircmpwn"; - repo = "todo.sr.ht"; - rev = version; - hash = "sha256-P+ypiW3GHoMClBmW5lUNAG6/sydHHnFGyGajmC3WARg="; - }; - - patches = [ ./patches/core-go-update/todo/patch-deps.patch ]; - - todosrht-api = buildGoModule ( - { - inherit src version patches; - pname = "todosrht-api"; - modRoot = "api"; - vendorHash = "sha256-ny6cyUIgmupeU8SFP8+RSQU7DD3Lk+j+mZQBoXKv63I="; - } - // gqlgen - ); -in -buildPythonPackage rec { - inherit src version patches; - pname = "todosrht"; - pyproject = true; - - disabled = pythonOlder "3.7"; - - nativeBuildInputs = [ - setuptools-scm - ]; - - propagatedBuildInputs = [ - srht - alembic - ]; - - env = { - PKGVER = version; - SRHT_PATH = "${srht}/${python.sitePackages}/srht"; - PREFIX = placeholder "out"; - }; - - postBuild = '' - make SASSC_INCLUDE=-I${srht}/share/sourcehut/scss/ all-share - ''; - - postInstall = '' - ln -s ${todosrht-api}/bin/api $out/bin/todo.sr.ht-api - install -Dm644 schema.sql $out/share/sourcehut/todo.sr.ht-schema.sql - make install-share - ''; - - # pytest tests fail - nativeCheckInputs = [ - pytest - factory-boy - ]; - pythonImportsCheck = [ "todosrht" ]; - - meta = with lib; { - homepage = "https://todo.sr.ht/~sircmpwn/todo.sr.ht"; - description = "Ticket tracking service for the sr.ht network"; - license = licenses.agpl3Only; - maintainers = with maintainers; [ - eadwu - christoph-heiss - ]; - }; -} diff --git a/pkgs/applications/version-management/sourcehut/update.sh b/pkgs/applications/version-management/sourcehut/update.sh deleted file mode 100755 index e5dd0b5baed0..000000000000 --- a/pkgs/applications/version-management/sourcehut/update.sh +++ /dev/null @@ -1,95 +0,0 @@ -#! /usr/bin/env nix-shell -#! nix-shell -i bash -p gnused git mercurial common-updater-scripts -set -eux -o pipefail - -cd "$(dirname "${BASH_SOURCE[0]}")" || exit 1 -root=../../../.. -tmp=$(mktemp -d) -trap 'rm -rf "$tmp"' EXIT - -attr_path() { - case "$1" in - pagessrht) printf "sourcehut.$1";; - *) printf "sourcehut.python.pkgs.$1";; - esac -} - -default() { - local p="$(attr_path "$1")" - (cd "$root" && nix-instantiate --eval --strict -A $p.meta.position | sed -re 's/^"(.*):[0-9]+"$/\1/') -} - -version() { - local p="$(attr_path "$1")" - (cd "$root" && nix-instantiate --eval --strict -A $p.version | tr -d '"') -} - -src_url() { - local p="$(attr_path "$1")" - nix-instantiate --eval --strict --expr " with import $root {}; let src = $p.drvAttrs.src; in src.meta.homepage" | tr -d '"' -} - -get_latest_version() { - src="$(src_url "$1")" - rm -rf "$tmp" - if [ "$1" = "hgsrht" ]; then - hg clone "$src" "$tmp" >/dev/null - printf "%s %s\n" \ - "$(cd "$tmp" && hg log --limit 1 --template '{latesttag}')" \ - "$(cd "$tmp" && sed -ne 's/^\s*github\.com\/99designs\/gqlgen v\(.*\)$/\1/p' go.mod)" - else - git clone "$src" "$tmp" >/dev/null - printf "%s %s\n" \ - "$(cd "$tmp" && git describe "$(git rev-list --tags --max-count=1)")" \ - "$(cd "$tmp" && sed -ne 's/^\s*github\.com\/99designs\/gqlgen v\(.*\)$/\1/p' go.mod)" - fi -} - -update_version() { - default_nix="$(default "$1")" - oldVersion="$(version "$1")" - read -r version gqlgen_ver < <(get_latest_version "$1") - local p="$(attr_path "$1")" - - (cd "$root" && update-source-version "$p" "$version") - - # update `gqlgenVersion` if necessary - old_gqlgen_ver="$(sed -ne 's/^.*gqlgenVersion = "\(.*\)".*$/\1/p' "$default_nix")" - sed -ri "s|gqlgenVersion = \"$old_gqlgen_ver\";|gqlgenVersion = \"$gqlgen_ver\";|w /dev/stdout" "$default_nix" - - # Update vendorHash of Go modules - retry=true - while "$retry"; do - retry=false; - exec < <(exec nix -L build -f "$root" sourcehut.python.pkgs."$1" 2>&1) - while IFS=' :' read -r origin hash; do - case "$origin" in - (expected|specified) oldHash="$hash";; - (got) sed -i "s|$oldHash|$hash|" "$default_nix"; retry=true; break;; - (*) printf >&2 "%s\n" "$origin${hash:+:$hash}" - esac - done - done - - if [ "$oldVersion" != "$version" ] || [ "$old_gqlgen_ver" != "$gqlgen_ver" ]; then - git add "$default_nix" - git commit -m "sourcehut.$1: $oldVersion -> $version" - fi -} - -if [ $# -gt 0 ]; then - services=("$@") -else - # Beware that some packages must be updated before others, - # eg. buildsrht must be updated before gitsrht, - # otherwise this script would enter an infinite loop - # because the reported $oldHash to be changed - # may not actually be in $default_nix - # but in the file of one of its dependencies. - services=( "srht" "scmsrht" "buildsrht" "gitsrht" "hgsrht" "hubsrht" "listssrht" "mansrht" - "metasrht" "pagessrht" "pastesrht" "todosrht" ) -fi - -for service in "${services[@]}"; do - update_version "$service" -done diff --git a/pkgs/applications/video/obs-studio/default.nix b/pkgs/applications/video/obs-studio/default.nix index 85619d66e647..c9e07022bcd0 100644 --- a/pkgs/applications/video/obs-studio/default.nix +++ b/pkgs/applications/video/obs-studio/default.nix @@ -81,13 +81,13 @@ let in stdenv.mkDerivation (finalAttrs: { pname = "obs-studio"; - version = "31.0.3"; + version = "31.0.4"; src = fetchFromGitHub { owner = "obsproject"; repo = "obs-studio"; rev = finalAttrs.version; - hash = "sha256-i1wkGlafPvfMTsQr5Ww5iwmUu+23cr0YmN10llJfohA="; + hash = "sha256-YxBPVXin8oJlo++oJogY1WMamIJmRqtSmKZDBsIZPU4="; fetchSubmodules = true; }; diff --git a/pkgs/applications/video/obs-studio/plugins/default.nix b/pkgs/applications/video/obs-studio/plugins/default.nix index 07e02c9c45d4..2131744b0a54 100644 --- a/pkgs/applications/video/obs-studio/plugins/default.nix +++ b/pkgs/applications/video/obs-studio/plugins/default.nix @@ -14,6 +14,8 @@ droidcam-obs = callPackage ./droidcam-obs { }; + distroav = qt6Packages.callPackage ./distroav { }; + input-overlay = qt6Packages.callPackage ./input-overlay.nix { }; looking-glass-obs = callPackage ./looking-glass-obs.nix { }; @@ -26,6 +28,8 @@ obs-backgroundremoval = callPackage ./obs-backgroundremoval { }; + obs-browser-transition = callPackage ./obs-browser-transition.nix { }; + obs-color-monitor = qt6Packages.callPackage ./obs-color-monitor.nix { }; obs-command-source = callPackage ./obs-command-source.nix { }; @@ -106,6 +110,8 @@ obs-vkcapture32 = pkgsi686Linux.obs-studio-plugins.obs-vkcapture; }; + obs-vnc = callPackage ./obs-vnc.nix { }; + obs-websocket = qt6Packages.callPackage ./obs-websocket.nix { }; # Websocket 4.x compatibility for OBS Studio 28+ obs-webkitgtk = callPackage ./obs-webkitgtk.nix { }; diff --git a/pkgs/applications/video/obs-studio/plugins/distroav/default.nix b/pkgs/applications/video/obs-studio/plugins/distroav/default.nix new file mode 100644 index 000000000000..6654cb08ac40 --- /dev/null +++ b/pkgs/applications/video/obs-studio/plugins/distroav/default.nix @@ -0,0 +1,61 @@ +{ + lib, + stdenv, + fetchFromGitHub, + obs-studio, + cmake, + qtbase, + ndi-6, + curl, +}: + +stdenv.mkDerivation rec { + pname = "distroav"; + version = "6.0.0"; + + nativeBuildInputs = [ + cmake + qtbase + ]; + + buildInputs = [ + obs-studio + qtbase + ndi-6 + curl + ]; + + src = fetchFromGitHub { + owner = "DistroAV"; + repo = "DistroAV"; + tag = version; + hash = "sha256-pr/5XCLo5fzergIQrYFC9o9K+KuP4leDk5/oRe5ct9Q="; + }; + + # Modify plugin-main.cpp file to fix ndi libs path + patches = [ ./hardcode-ndi-path.patch ]; + + postPatch = '' + # Add path (variable added in hardcode-ndi-path.patch + substituteInPlace src/plugin-main.cpp --replace-fail "@NDI@" "${ndi-6}" + + # Replace bundled NDI SDK with the upstream version + # (This fixes soname issues) + rm -rf lib/ndi + ln -s ${ndi-6}/include lib/ndi + ''; + + cmakeFlags = [ "-DENABLE_QT=ON" ]; + + env.NIX_CFLAGS_COMPILE = "-Wno-deprecated-declarations"; + + dontWrapQtApps = true; + + meta = { + description = "Network A/V plugin for OBS Studio (formerly obs-ndi)"; + homepage = "https://github.com/DistroAV/DistroAV"; + license = with lib.licenses; [ gpl2 ]; + maintainers = with lib.maintainers; [ globule655 ]; + platforms = lib.platforms.linux; + }; +} diff --git a/pkgs/applications/video/obs-studio/plugins/distroav/hardcode-ndi-path.patch b/pkgs/applications/video/obs-studio/plugins/distroav/hardcode-ndi-path.patch new file mode 100644 index 000000000000..567d5c4fbcb7 --- /dev/null +++ b/pkgs/applications/video/obs-studio/plugins/distroav/hardcode-ndi-path.patch @@ -0,0 +1,18 @@ +diff --git a/src/plugin-main.cpp b/src/plugin-main.cpp +index 0d94add..617af73 100644 +--- a/src/plugin-main.cpp ++++ b/src/plugin-main.cpp +@@ -369,14 +369,7 @@ const NDIlib_v5 *load_ndilib() + if (!temp_path.isEmpty()) { + locations << temp_path; + } +-#if defined(Q_OS_LINUX) || defined(Q_OS_MACOS) +- // Linux, MacOS +- // https://github.com/DistroAV/DistroAV/blob/master/lib/ndi/NDI%20SDK%20Documentation.pdf +- // "6.1 LOCATING THE LIBRARY +- // ... the redistributable on MacOS is installed within `/usr/local/lib` ..." +- locations << "/usr/lib"; +- locations << "/usr/local/lib"; +-#endif ++ locations << "@NDI@/lib"; + auto lib_path = QString(); diff --git a/pkgs/applications/video/obs-studio/plugins/obs-browser-transition.nix b/pkgs/applications/video/obs-studio/plugins/obs-browser-transition.nix new file mode 100644 index 000000000000..63b5a7d1b2f2 --- /dev/null +++ b/pkgs/applications/video/obs-studio/plugins/obs-browser-transition.nix @@ -0,0 +1,37 @@ +{ + lib, + stdenv, + fetchFromGitHub, + nix-update-script, + cmake, + obs-studio, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "obs-browser-transition"; + version = "0.1.3"; + + src = fetchFromGitHub { + owner = "exeldro"; + repo = "obs-browser-transition"; + tag = finalAttrs.version; + hash = "sha256-m5UDqnqipkybXAZqS7c2Sj/mJKrDBkXElyc0I+c1BmE="; + }; + + nativeBuildInputs = [ cmake ]; + buildInputs = [ obs-studio ]; + + postInstall = '' + rm -rf $out/obs-plugins $out/data + ''; + + passthru.updateScript = nix-update-script { }; + + meta = { + description = "Plugin for OBS Studio to show a browser source during scene transition"; + homepage = "https://github.com/exeldro/obs-browser-transition"; + maintainers = with lib.maintainers; [ flexiondotorg ]; + license = lib.licenses.gpl2Only; + platforms = lib.platforms.linux; + }; +}) diff --git a/pkgs/applications/video/obs-studio/plugins/obs-vnc.nix b/pkgs/applications/video/obs-studio/plugins/obs-vnc.nix new file mode 100644 index 000000000000..b502735cf32f --- /dev/null +++ b/pkgs/applications/video/obs-studio/plugins/obs-vnc.nix @@ -0,0 +1,45 @@ +{ + lib, + stdenv, + fetchFromGitHub, + cmake, + obs-studio, + pkg-config, + libvncserver, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "obs-vnc"; + version = "0.6.1"; + + src = fetchFromGitHub { + owner = "norihiro"; + repo = "obs-vnc"; + tag = "${finalAttrs.version}"; + hash = "sha256-eTvKACeVFFw6DOFAiWaG/m14jYyzZc61e79S8oVWrCs="; + }; + + nativeBuildInputs = [ + cmake + pkg-config + ]; + buildInputs = [ + libvncserver + obs-studio + ]; + + postInstall = '' + mkdir $out/lib $out/share + mv $out/obs-plugins/64bit $out/lib/obs-plugins + rm -rf $out/obs-plugins + mv $out/data $out/share/obs + ''; + + meta = { + description = "VNC viewer integrated into OBS Studio as a source plugin"; + homepage = "https://github.com/norihiro/obs-vnc"; + maintainers = with lib.maintainers; [ flexiondotorg ]; + license = lib.licenses.gpl2Only; + platforms = lib.platforms.linux; + }; +}) diff --git a/pkgs/applications/video/obs-studio/plugins/wlrobs.nix b/pkgs/applications/video/obs-studio/plugins/wlrobs.nix index 48c6f588308b..2d169399a8fd 100644 --- a/pkgs/applications/video/obs-studio/plugins/wlrobs.nix +++ b/pkgs/applications/video/obs-studio/plugins/wlrobs.nix @@ -38,6 +38,6 @@ stdenv.mkDerivation { homepage = "https://hg.sr.ht/~scoopta/wlrobs"; maintainers = with maintainers; [ grahamc ]; license = licenses.gpl3Plus; - platforms = [ "x86_64-linux" ]; + platforms = platforms.linux; }; } diff --git a/pkgs/applications/virtualization/docker/buildx.nix b/pkgs/applications/virtualization/docker/buildx.nix index 250d862ba56e..f864697c6bad 100644 --- a/pkgs/applications/virtualization/docker/buildx.nix +++ b/pkgs/applications/virtualization/docker/buildx.nix @@ -6,13 +6,13 @@ buildGoModule rec { pname = "docker-buildx"; - version = "0.23.0"; + version = "0.25.0"; src = fetchFromGitHub { owner = "docker"; repo = "buildx"; rev = "v${version}"; - hash = "sha256-KU9B6ygK6PwMvXDL+SBB79TCBScJDgVMs4m92zgibdE="; + hash = "sha256-DdG2z0raDHcbBMDl7C0WORKhG0ZB9Gvie8u4/isE8ow="; }; doCheck = false; diff --git a/pkgs/by-name/ad/adrgen/package.nix b/pkgs/by-name/ad/adrgen/package.nix index 9a67a6bd6c68..81b2b1581fcb 100644 --- a/pkgs/by-name/ad/adrgen/package.nix +++ b/pkgs/by-name/ad/adrgen/package.nix @@ -2,31 +2,21 @@ lib, buildGoModule, fetchFromGitHub, - fetchpatch, testers, adrgen, }: buildGoModule rec { pname = "adrgen"; - version = "0.4.0-beta"; + version = "0.4.1-beta"; src = fetchFromGitHub { owner = "asiermarques"; repo = "adrgen"; tag = "v${version}"; - hash = "sha256-2ZE/orsfwL59Io09c4yfXt2enVmpSM/QHlUMgyd9RYQ="; + hash = "sha256-9EiJe5shhwbjLIvUQMUTSGTgCA+r3RdkLkPRPoWvZ3g="; }; - patches = [ - # https://github.com/asiermarques/adrgen/pull/14 - (fetchpatch { - name = "update-x-sys-for-go-1.18-on-aarch64-darwin.patch"; - url = "https://github.com/asiermarques/adrgen/commit/485dc383106467d1029ee6d92c9bcbc3c2281626.patch"; - hash = "sha256-38ktHrRgW5ysQmafvFthNtkZ6nnM61z4yEA7wUGmWb4="; - }) - ]; - vendorHash = "sha256-RXwwv3Q/kQ6FondpiUm5XZogAVK2aaVmKu4hfr+AnAM="; passthru.tests.version = testers.testVersion { diff --git a/pkgs/by-name/ai/airwindows/package.nix b/pkgs/by-name/ai/airwindows/package.nix index 50e52d4b2179..066638533e39 100644 --- a/pkgs/by-name/ai/airwindows/package.nix +++ b/pkgs/by-name/ai/airwindows/package.nix @@ -8,13 +8,13 @@ }: stdenv.mkDerivation { pname = "airwindows"; - version = "0-unstable-2025-06-08"; + version = "0-unstable-2025-06-22"; src = fetchFromGitHub { owner = "airwindows"; repo = "airwindows"; - rev = "a88ee4caa6e874efec86a1e8c62853dbc1caa514"; - hash = "sha256-fTVDpDxPMrRxHGUJh8/qGYGkziPdjKj9Q/q3LCd1brE="; + rev = "fd36e62f00ce73d371d528ed1f63d0617e445caa"; + hash = "sha256-XDIXDDkb88Kdf3XQsMB0ee0F8QTyoz82LOLrQcezK1I="; }; # we patch helpers because honestly im spooked out by where those variables diff --git a/pkgs/by-name/ap/appium-inspector/package.nix b/pkgs/by-name/ap/appium-inspector/package.nix index ad157375150f..c8df903297b5 100644 --- a/pkgs/by-name/ap/appium-inspector/package.nix +++ b/pkgs/by-name/ap/appium-inspector/package.nix @@ -2,7 +2,7 @@ lib, buildNpmPackage, copyDesktopItems, - electron_34, + electron_36, fetchFromGitHub, makeDesktopItem, makeWrapper, @@ -10,7 +10,7 @@ }: let - electron = electron_34; + electron = electron_36; version = "2025.3.1"; in diff --git a/pkgs/by-name/ar/armadillo/package.nix b/pkgs/by-name/ar/armadillo/package.nix index 76fd8c93cf3a..e028b918071f 100644 --- a/pkgs/by-name/ar/armadillo/package.nix +++ b/pkgs/by-name/ar/armadillo/package.nix @@ -11,11 +11,11 @@ stdenv.mkDerivation rec { pname = "armadillo"; - version = "14.4.2"; + version = "14.4.3"; src = fetchurl { url = "mirror://sourceforge/arma/armadillo-${version}.tar.xz"; - hash = "sha256-bf3c+9kecGedfBHpSlljp+/aAC/sNR5vSHWsjiRcURc="; + hash = "sha256-w6rdWb2w6kM5sFbymXL5LuGf3FL2jreNMtLkyvTYDDo="; }; nativeBuildInputs = [ cmake ]; diff --git a/pkgs/by-name/at/atlas/package.nix b/pkgs/by-name/at/atlas/package.nix index 9f8751f82522..5572cb5167d8 100644 --- a/pkgs/by-name/at/atlas/package.nix +++ b/pkgs/by-name/at/atlas/package.nix @@ -8,19 +8,19 @@ buildGoModule (finalAttrs: { pname = "atlas"; - version = "0.34.0"; + version = "0.35.0"; src = fetchFromGitHub { owner = "ariga"; repo = "atlas"; - rev = "v${finalAttrs.version}"; - hash = "sha256-7s03YrZw7J2LRCHibMqzBBtVUBSPVEf+TMqtKoWSkkM="; + tag = "v${finalAttrs.version}"; + hash = "sha256-USA3PiZcOF39LK45Xu0Oq/GJi3URMxJpBrUXxIsEkCY="; }; modRoot = "cmd/atlas"; proxyVendor = true; - vendorHash = "sha256-K94zOisolCplE/cFrWmv4/MWl5DD27lRekPTl+o4Jwk="; + vendorHash = "sha256-G78KpERRAP4lVsy3ur2ejT6jA6K5T257FHLb7afC/7c="; nativeBuildInputs = [ installShellFiles ]; @@ -46,7 +46,7 @@ buildGoModule (finalAttrs: { }; meta = { - description = "Modern tool for managing database schemas"; + description = "Manage your database schema as code"; homepage = "https://atlasgo.io/"; changelog = "https://github.com/ariga/atlas/releases/tag/v${finalAttrs.version}"; license = lib.licenses.asl20; diff --git a/pkgs/by-name/au/autocorrect/Cargo.lock b/pkgs/by-name/au/autocorrect/Cargo.lock deleted file mode 100644 index cb1d52bb7ce9..000000000000 --- a/pkgs/by-name/au/autocorrect/Cargo.lock +++ /dev/null @@ -1,2940 +0,0 @@ -# This file is automatically @generated by Cargo. -# It is not intended for manual editing. -version = 4 - -[[package]] -name = "addr2line" -version = "0.24.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfbe277e56a376000877090da837660b4427aad530e3028d44e0bffe4f89a1c1" -dependencies = [ - "gimli", -] - -[[package]] -name = "adler2" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627" - -[[package]] -name = "aho-corasick" -version = "1.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" -dependencies = [ - "memchr", -] - -[[package]] -name = "anes" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299" - -[[package]] -name = "anstream" -version = "0.6.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8acc5369981196006228e28809f761875c0327210a891e941f4c683b3a99529b" -dependencies = [ - "anstyle", - "anstyle-parse", - "anstyle-query", - "anstyle-wincon", - "colorchoice", - "is_terminal_polyfill", - "utf8parse", -] - -[[package]] -name = "anstyle" -version = "1.0.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55cc3b69f167a1ef2e161439aa98aed94e6028e5f9a59be9a6ffb47aef1651f9" - -[[package]] -name = "anstyle-parse" -version = "0.2.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b2d16507662817a6a20a9ea92df6652ee4f94f914589377d69f3b21bc5798a9" -dependencies = [ - "utf8parse", -] - -[[package]] -name = "anstyle-query" -version = "1.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79947af37f4177cfead1110013d678905c37501914fba0efea834c3fe9a8d60c" -dependencies = [ - "windows-sys 0.59.0", -] - -[[package]] -name = "anstyle-wincon" -version = "3.0.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca3534e77181a9cc07539ad51f2141fe32f6c3ffd4df76db8ad92346b003ae4e" -dependencies = [ - "anstyle", - "once_cell", - "windows-sys 0.59.0", -] - -[[package]] -name = "async-trait" -version = "0.1.88" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e539d3fca749fcee5236ab05e93a52867dd549cc157c8cb7f99595f3cedffdb5" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", -] - -[[package]] -name = "auto_impl" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffdcb70bdbc4d478427380519163274ac86e52916e10f0a8889adf0f96d3fee7" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", -] - -[[package]] -name = "autocfg" -version = "1.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" - -[[package]] -name = "autocorrect" -version = "2.14.0" -dependencies = [ - "autocorrect-derive 0.3.0", - "criterion", - "diff", - "ignore", - "indoc 2.0.6", - "lazy_static", - "owo-colors", - "pest", - "pest_derive", - "pretty_assertions", - "regex", - "serde", - "serde_json", - "serde_repr", - "serde_yaml", -] - -[[package]] -name = "autocorrect" -version = "2.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "099d51844c065a26792dc4b994e80eaa9105aadfac55ed8ccd6db58d59b749fc" -dependencies = [ - "autocorrect-derive 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "diff", - "ignore", - "lazy_static", - "owo-colors", - "pest", - "pest_derive", - "regex", - "serde", - "serde_json", - "serde_repr", - "serde_yaml", -] - -[[package]] -name = "autocorrect-cli" -version = "2.14.0" -dependencies = [ - "autocorrect 2.14.0", - "autocorrect-lsp", - "clap", - "ignore", - "log", - "num_cpus", - "owo-colors", - "reqwest", - "self_update", - "sudo", - "threadpool", - "tokio", -] - -[[package]] -name = "autocorrect-derive" -version = "0.3.0" -dependencies = [ - "quote", - "syn 1.0.109", -] - -[[package]] -name = "autocorrect-derive" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b80889323facc446add06be71b9c4c000acd083b12563d9c914b86424bf2f17a" -dependencies = [ - "quote", - "syn 1.0.109", -] - -[[package]] -name = "autocorrect-java" -version = "2.14.0" -dependencies = [ - "autocorrect 2.14.0", - "jni", -] - -[[package]] -name = "autocorrect-lsp" -version = "2.9.4" -dependencies = [ - "autocorrect 2.14.0", - "tokio", - "tower-lsp", -] - -[[package]] -name = "autocorrect-node" -version = "2.14.0" -dependencies = [ - "autocorrect 2.14.0", - "autocorrect-cli", - "napi", - "napi-build", - "napi-derive", -] - -[[package]] -name = "autocorrect-py" -version = "2.14.0" -dependencies = [ - "autocorrect 2.14.0", - "pyo3", -] - -[[package]] -name = "autocorrect-rb" -version = "2.14.0" -dependencies = [ - "autocorrect 2.14.0 (registry+https://github.com/rust-lang/crates.io-index)", - "magnus", -] - -[[package]] -name = "autocorrect-wasm" -version = "2.14.0" -dependencies = [ - "autocorrect 2.14.0", - "serde_json", - "wasm-bindgen", -] - -[[package]] -name = "backtrace" -version = "0.3.74" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d82cb332cdfaed17ae235a638438ac4d4839913cc2af585c3c6746e8f8bee1a" -dependencies = [ - "addr2line", - "cfg-if", - "libc", - "miniz_oxide", - "object", - "rustc-demangle", - "windows-targets 0.52.6", -] - -[[package]] -name = "base64" -version = "0.21.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" - -[[package]] -name = "bindgen" -version = "0.69.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "271383c67ccabffb7381723dea0672a673f292304fcb45c01cc648c7a8d58088" -dependencies = [ - "bitflags 2.9.0", - "cexpr", - "clang-sys", - "itertools 0.12.1", - "lazy_static", - "lazycell", - "proc-macro2", - "quote", - "regex", - "rustc-hash", - "shlex", - "syn 2.0.101", -] - -[[package]] -name = "bitflags" -version = "1.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" - -[[package]] -name = "bitflags" -version = "2.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c8214115b7bf84099f1309324e63141d4c5d7cc26862f97a0a857dbefe165bd" - -[[package]] -name = "block-buffer" -version = "0.10.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" -dependencies = [ - "generic-array", -] - -[[package]] -name = "bstr" -version = "1.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "234113d19d0d7d613b40e86fb654acf958910802bcceab913a4f9e7cda03b1a4" -dependencies = [ - "memchr", - "serde", -] - -[[package]] -name = "bumpalo" -version = "3.17.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1628fb46dfa0b37568d12e5edd512553eccf6a22a78e8bde00bb4aed84d5bdbf" - -[[package]] -name = "bytes" -version = "1.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d71b6127be86fdcfddb610f7182ac57211d4b18a3e9c82eb2d17662f2227ad6a" - -[[package]] -name = "cast" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5" - -[[package]] -name = "cc" -version = "1.2.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8691782945451c1c383942c4874dbe63814f61cb57ef773cda2972682b7bb3c0" -dependencies = [ - "shlex", -] - -[[package]] -name = "cesu8" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" - -[[package]] -name = "cexpr" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766" -dependencies = [ - "nom", -] - -[[package]] -name = "cfg-if" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" - -[[package]] -name = "ciborium" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42e69ffd6f0917f5c029256a24d0161db17cea3997d185db0d35926308770f0e" -dependencies = [ - "ciborium-io", - "ciborium-ll", - "serde", -] - -[[package]] -name = "ciborium-io" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05afea1e0a06c9be33d539b876f1ce3692f4afea2cb41f740e7743225ed1c757" - -[[package]] -name = "ciborium-ll" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57663b653d948a338bfb3eeba9bb2fd5fcfaecb9e199e87e1eda4d9e8b240fd9" -dependencies = [ - "ciborium-io", - "half", -] - -[[package]] -name = "clang-sys" -version = "1.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b023947811758c97c59bf9d1c188fd619ad4718dcaa767947df1cadb14f39f4" -dependencies = [ - "glob", - "libc", - "libloading", -] - -[[package]] -name = "clap" -version = "4.5.37" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eccb054f56cbd38340b380d4a8e69ef1f02f1af43db2f0cc817a4774d80ae071" -dependencies = [ - "clap_builder", - "clap_derive", -] - -[[package]] -name = "clap_builder" -version = "4.5.37" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "efd9466fac8543255d3b1fcad4762c5e116ffe808c8a3043d4263cd4fd4862a2" -dependencies = [ - "anstream", - "anstyle", - "clap_lex", - "strsim", -] - -[[package]] -name = "clap_derive" -version = "4.5.32" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09176aae279615badda0765c0c0b3f6ed53f4709118af73cf4655d85d1530cd7" -dependencies = [ - "heck", - "proc-macro2", - "quote", - "syn 2.0.101", -] - -[[package]] -name = "clap_lex" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f46ad14479a25103f283c0f10005961cf086d8dc42205bb44c46ac563475dca6" - -[[package]] -name = "colorchoice" -version = "1.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990" - -[[package]] -name = "combine" -version = "4.6.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd" -dependencies = [ - "bytes", - "memchr", -] - -[[package]] -name = "console" -version = "0.15.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "054ccb5b10f9f2cbf51eb355ca1d05c2d279ce1804688d0db74b4733a5aeafd8" -dependencies = [ - "encode_unicode", - "libc", - "once_cell", - "windows-sys 0.59.0", -] - -[[package]] -name = "convert_case" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec182b0ca2f35d8fc196cf3404988fd8b8c739a4d270ff118a398feb0cbec1ca" -dependencies = [ - "unicode-segmentation", -] - -[[package]] -name = "core-foundation" -version = "0.9.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" -dependencies = [ - "core-foundation-sys", - "libc", -] - -[[package]] -name = "core-foundation-sys" -version = "0.8.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" - -[[package]] -name = "cpufeatures" -version = "0.2.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59ed5838eebb26a2bb2e58f6d5b5316989ae9d08bab10e0e6d103e656d1b0280" -dependencies = [ - "libc", -] - -[[package]] -name = "crc32fast" -version = "1.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3" -dependencies = [ - "cfg-if", -] - -[[package]] -name = "criterion" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2b12d017a929603d80db1831cd3a24082f8137ce19c69e6447f54f5fc8d692f" -dependencies = [ - "anes", - "cast", - "ciborium", - "clap", - "criterion-plot", - "is-terminal", - "itertools 0.10.5", - "num-traits", - "once_cell", - "oorandom", - "plotters", - "rayon", - "regex", - "serde", - "serde_derive", - "serde_json", - "tinytemplate", - "walkdir", -] - -[[package]] -name = "criterion-plot" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b50826342786a51a89e2da3a28f1c32b06e387201bc2d19791f622c673706b1" -dependencies = [ - "cast", - "itertools 0.10.5", -] - -[[package]] -name = "crossbeam-deque" -version = "0.8.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9dd111b7b7f7d55b72c0a6ae361660ee5853c9af73f70c3c2ef6858b950e2e51" -dependencies = [ - "crossbeam-epoch", - "crossbeam-utils", -] - -[[package]] -name = "crossbeam-epoch" -version = "0.9.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" -dependencies = [ - "crossbeam-utils", -] - -[[package]] -name = "crossbeam-utils" -version = "0.8.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28" - -[[package]] -name = "crunchy" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43da5946c66ffcc7745f48db692ffbb10a83bfe0afd96235c5c2a4fb23994929" - -[[package]] -name = "crypto-common" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" -dependencies = [ - "generic-array", - "typenum", -] - -[[package]] -name = "ctor" -version = "0.2.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32a2785755761f3ddc1492979ce1e48d2c00d09311c39e4466429188f3dd6501" -dependencies = [ - "quote", - "syn 2.0.101", -] - -[[package]] -name = "dashmap" -version = "5.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856" -dependencies = [ - "cfg-if", - "hashbrown 0.14.5", - "lock_api", - "once_cell", - "parking_lot_core", -] - -[[package]] -name = "diff" -version = "0.1.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56254986775e3233ffa9c4d7d3faaf6d36a2c09d30b20687e9f88bc8bafc16c8" - -[[package]] -name = "digest" -version = "0.10.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" -dependencies = [ - "block-buffer", - "crypto-common", -] - -[[package]] -name = "displaydoc" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", -] - -[[package]] -name = "either" -version = "1.15.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719" - -[[package]] -name = "encode_unicode" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34aa73646ffb006b8f5147f3dc182bd4bcb190227ce861fc4a4844bf8e3cb2c0" - -[[package]] -name = "encoding_rs" -version = "0.8.35" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75030f3c4f45dafd7586dd6780965a8c7e8e285a5ecb86713e63a79c5b2766f3" -dependencies = [ - "cfg-if", -] - -[[package]] -name = "equivalent" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" - -[[package]] -name = "errno" -version = "0.3.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "976dd42dc7e85965fe702eb8164f21f450704bdde31faefd6471dba214cb594e" -dependencies = [ - "libc", - "windows-sys 0.59.0", -] - -[[package]] -name = "fastrand" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be" - -[[package]] -name = "filetime" -version = "0.2.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35c0522e981e68cbfa8c3f978441a5f34b30b96e146b33cd3359176b50fe8586" -dependencies = [ - "cfg-if", - "libc", - "libredox", - "windows-sys 0.59.0", -] - -[[package]] -name = "flate2" -version = "1.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ced92e76e966ca2fd84c8f7aa01a4aea65b0eb6648d72f7c8f3e2764a67fece" -dependencies = [ - "crc32fast", - "miniz_oxide", -] - -[[package]] -name = "fnv" -version = "1.0.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" - -[[package]] -name = "form_urlencoded" -version = "1.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456" -dependencies = [ - "percent-encoding", -] - -[[package]] -name = "futures" -version = "0.3.31" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65bc07b1a8bc7c85c5f2e110c476c7389b4554ba72af57d8445ea63a576b0876" -dependencies = [ - "futures-channel", - "futures-core", - "futures-io", - "futures-sink", - "futures-task", - "futures-util", -] - -[[package]] -name = "futures-channel" -version = "0.3.31" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2dff15bf788c671c1934e366d07e30c1814a8ef514e1af724a602e8a2fbe1b10" -dependencies = [ - "futures-core", - "futures-sink", -] - -[[package]] -name = "futures-core" -version = "0.3.31" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05f29059c0c2090612e8d742178b0580d2dc940c837851ad723096f87af6663e" - -[[package]] -name = "futures-io" -version = "0.3.31" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e5c1b78ca4aae1ac06c48a526a655760685149f0d465d21f37abfe57ce075c6" - -[[package]] -name = "futures-macro" -version = "0.3.31" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", -] - -[[package]] -name = "futures-sink" -version = "0.3.31" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e575fab7d1e0dcb8d0c7bcf9a63ee213816ab51902e6d244a95819acacf1d4f7" - -[[package]] -name = "futures-task" -version = "0.3.31" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f90f7dce0722e95104fcb095585910c0977252f286e354b5e3bd38902cd99988" - -[[package]] -name = "futures-util" -version = "0.3.31" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fa08315bb612088cc391249efdc3bc77536f16c91f6cf495e6fbe85b20a4a81" -dependencies = [ - "futures-channel", - "futures-core", - "futures-io", - "futures-macro", - "futures-sink", - "futures-task", - "memchr", - "pin-project-lite", - "pin-utils", - "slab", -] - -[[package]] -name = "generic-array" -version = "0.14.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" -dependencies = [ - "typenum", - "version_check", -] - -[[package]] -name = "getrandom" -version = "0.2.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "335ff9f135e4384c8150d6f27c6daed433577f86b4750418338c01a1a2528592" -dependencies = [ - "cfg-if", - "libc", - "wasi 0.11.0+wasi-snapshot-preview1", -] - -[[package]] -name = "getrandom" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73fea8450eea4bac3940448fb7ae50d91f034f941199fcd9d909a5a07aa455f0" -dependencies = [ - "cfg-if", - "libc", - "r-efi", - "wasi 0.14.2+wasi-0.2.4", -] - -[[package]] -name = "gimli" -version = "0.31.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f" - -[[package]] -name = "glob" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8d1add55171497b4705a648c6b583acafb01d58050a51727785f0b2c8e0a2b2" - -[[package]] -name = "globset" -version = "0.4.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54a1028dfc5f5df5da8a56a73e6c153c9a9708ec57232470703592a3f18e49f5" -dependencies = [ - "aho-corasick", - "bstr", - "log", - "regex-automata", - "regex-syntax", -] - -[[package]] -name = "h2" -version = "0.3.26" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81fe527a889e1532da5c525686d96d4c2e74cdd345badf8dfef9f6b39dd5f5e8" -dependencies = [ - "bytes", - "fnv", - "futures-core", - "futures-sink", - "futures-util", - "http", - "indexmap", - "slab", - "tokio", - "tokio-util", - "tracing", -] - -[[package]] -name = "half" -version = "2.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "459196ed295495a68f7d7fe1d84f6c4b7ff0e21fe3017b2f283c6fac3ad803c9" -dependencies = [ - "cfg-if", - "crunchy", -] - -[[package]] -name = "hashbrown" -version = "0.14.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" - -[[package]] -name = "hashbrown" -version = "0.15.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84b26c544d002229e640969970a2e74021aadf6e2f96372b9c58eff97de08eb3" - -[[package]] -name = "heck" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" - -[[package]] -name = "hermit-abi" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024" - -[[package]] -name = "hermit-abi" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbd780fe5cc30f81464441920d82ac8740e2e46b29a6fad543ddd075229ce37e" - -[[package]] -name = "http" -version = "0.2.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1" -dependencies = [ - "bytes", - "fnv", - "itoa", -] - -[[package]] -name = "http-body" -version = "0.4.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2" -dependencies = [ - "bytes", - "http", - "pin-project-lite", -] - -[[package]] -name = "httparse" -version = "1.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6dbf3de79e51f3d586ab4cb9d5c3e2c14aa28ed23d180cf89b4df0454a69cc87" - -[[package]] -name = "httpdate" -version = "1.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" - -[[package]] -name = "hyper" -version = "0.14.32" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41dfc780fdec9373c01bae43289ea34c972e40ee3c9f6b3c8801a35f35586ce7" -dependencies = [ - "bytes", - "futures-channel", - "futures-core", - "futures-util", - "h2", - "http", - "http-body", - "httparse", - "httpdate", - "itoa", - "pin-project-lite", - "socket2", - "tokio", - "tower-service", - "tracing", - "want", -] - -[[package]] -name = "hyper-rustls" -version = "0.24.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590" -dependencies = [ - "futures-util", - "http", - "hyper", - "rustls", - "tokio", - "tokio-rustls", -] - -[[package]] -name = "icu_collections" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db2fa452206ebee18c4b5c2274dbf1de17008e874b4dc4f0aea9d01ca79e4526" -dependencies = [ - "displaydoc", - "yoke", - "zerofrom", - "zerovec", -] - -[[package]] -name = "icu_locid" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13acbb8371917fc971be86fc8057c41a64b521c184808a698c02acc242dbf637" -dependencies = [ - "displaydoc", - "litemap", - "tinystr", - "writeable", - "zerovec", -] - -[[package]] -name = "icu_locid_transform" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01d11ac35de8e40fdeda00d9e1e9d92525f3f9d887cdd7aa81d727596788b54e" -dependencies = [ - "displaydoc", - "icu_locid", - "icu_locid_transform_data", - "icu_provider", - "tinystr", - "zerovec", -] - -[[package]] -name = "icu_locid_transform_data" -version = "1.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7515e6d781098bf9f7205ab3fc7e9709d34554ae0b21ddbcb5febfa4bc7df11d" - -[[package]] -name = "icu_normalizer" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19ce3e0da2ec68599d193c93d088142efd7f9c5d6fc9b803774855747dc6a84f" -dependencies = [ - "displaydoc", - "icu_collections", - "icu_normalizer_data", - "icu_properties", - "icu_provider", - "smallvec", - "utf16_iter", - "utf8_iter", - "write16", - "zerovec", -] - -[[package]] -name = "icu_normalizer_data" -version = "1.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c5e8338228bdc8ab83303f16b797e177953730f601a96c25d10cb3ab0daa0cb7" - -[[package]] -name = "icu_properties" -version = "1.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93d6020766cfc6302c15dbbc9c8778c37e62c14427cb7f6e601d849e092aeef5" -dependencies = [ - "displaydoc", - "icu_collections", - "icu_locid_transform", - "icu_properties_data", - "icu_provider", - "tinystr", - "zerovec", -] - -[[package]] -name = "icu_properties_data" -version = "1.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85fb8799753b75aee8d2a21d7c14d9f38921b54b3dbda10f5a3c7a7b82dba5e2" - -[[package]] -name = "icu_provider" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ed421c8a8ef78d3e2dbc98a973be2f3770cb42b606e3ab18d6237c4dfde68d9" -dependencies = [ - "displaydoc", - "icu_locid", - "icu_provider_macros", - "stable_deref_trait", - "tinystr", - "writeable", - "yoke", - "zerofrom", - "zerovec", -] - -[[package]] -name = "icu_provider_macros" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", -] - -[[package]] -name = "idna" -version = "1.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "686f825264d630750a544639377bae737628043f20d38bbc029e8f29ea968a7e" -dependencies = [ - "idna_adapter", - "smallvec", - "utf8_iter", -] - -[[package]] -name = "idna_adapter" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "daca1df1c957320b2cf139ac61e7bd64fed304c5040df000a745aa1de3b4ef71" -dependencies = [ - "icu_normalizer", - "icu_properties", -] - -[[package]] -name = "ignore" -version = "0.4.23" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d89fd380afde86567dfba715db065673989d6253f42b88179abd3eae47bda4b" -dependencies = [ - "crossbeam-deque", - "globset", - "log", - "memchr", - "regex-automata", - "same-file", - "walkdir", - "winapi-util", -] - -[[package]] -name = "indexmap" -version = "2.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cea70ddb795996207ad57735b50c5982d8844f38ba9ee5f1aedcfb708a2aa11e" -dependencies = [ - "equivalent", - "hashbrown 0.15.3", -] - -[[package]] -name = "indicatif" -version = "0.16.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d207dc617c7a380ab07ff572a6e52fa202a2a8f355860ac9c38e23f8196be1b" -dependencies = [ - "console", - "lazy_static", - "number_prefix", - "regex", -] - -[[package]] -name = "indoc" -version = "1.0.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfa799dd5ed20a7e349f3b4639aa80d74549c81716d9ec4f994c9b5815598306" - -[[package]] -name = "indoc" -version = "2.0.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4c7245a08504955605670dbf141fceab975f15ca21570696aebe9d2e71576bd" - -[[package]] -name = "ipnet" -version = "2.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "469fb0b9cefa57e3ef31275ee7cacb78f2fdca44e4765491884a2b119d4eb130" - -[[package]] -name = "is-terminal" -version = "0.4.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e04d7f318608d35d4b61ddd75cbdaee86b023ebe2bd5a66ee0915f0bf93095a9" -dependencies = [ - "hermit-abi 0.5.0", - "libc", - "windows-sys 0.59.0", -] - -[[package]] -name = "is_terminal_polyfill" -version = "1.70.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf" - -[[package]] -name = "itertools" -version = "0.10.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473" -dependencies = [ - "either", -] - -[[package]] -name = "itertools" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569" -dependencies = [ - "either", -] - -[[package]] -name = "itoa" -version = "1.0.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" - -[[package]] -name = "jni" -version = "0.20.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "039022cdf4d7b1cf548d31f60ae783138e5fd42013f6271049d7df7afadef96c" -dependencies = [ - "cesu8", - "combine", - "jni-sys", - "log", - "thiserror 1.0.69", - "walkdir", -] - -[[package]] -name = "jni-sys" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130" - -[[package]] -name = "js-sys" -version = "0.3.77" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1cfaf33c695fc6e08064efbc1f72ec937429614f25eef83af942d0e227c3a28f" -dependencies = [ - "once_cell", - "wasm-bindgen", -] - -[[package]] -name = "lazy_static" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" - -[[package]] -name = "lazycell" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" - -[[package]] -name = "libc" -version = "0.2.172" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d750af042f7ef4f724306de029d18836c26c1765a54a6a3f094cbd23a7267ffa" - -[[package]] -name = "libloading" -version = "0.8.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc2f4eb4bc735547cfed7c0a4922cbd04a4655978c09b54f1f7b228750664c34" -dependencies = [ - "cfg-if", - "windows-targets 0.52.6", -] - -[[package]] -name = "libredox" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" -dependencies = [ - "bitflags 2.9.0", - "libc", - "redox_syscall", -] - -[[package]] -name = "linux-raw-sys" -version = "0.9.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd945864f07fe9f5371a27ad7b52a172b4b499999f1d97574c9fa68373937e12" - -[[package]] -name = "litemap" -version = "0.7.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23fb14cb19457329c82206317a5663005a4d404783dc74f4252769b0d5f42856" - -[[package]] -name = "lock_api" -version = "0.4.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17" -dependencies = [ - "autocfg", - "scopeguard", -] - -[[package]] -name = "log" -version = "0.4.27" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94" - -[[package]] -name = "lsp-types" -version = "0.94.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c66bfd44a06ae10647fe3f8214762e9369fd4248df1350924b4ef9e770a85ea1" -dependencies = [ - "bitflags 1.3.2", - "serde", - "serde_json", - "serde_repr", - "url", -] - -[[package]] -name = "magnus" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d87ae53030f3a22e83879e666cb94e58a7bdf31706878a0ba48752994146dab" -dependencies = [ - "magnus-macros", - "rb-sys", - "rb-sys-env", - "seq-macro", -] - -[[package]] -name = "magnus-macros" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5968c820e2960565f647819f5928a42d6e874551cab9d88d75e3e0660d7f71e3" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", -] - -[[package]] -name = "memchr" -version = "2.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" - -[[package]] -name = "memoffset" -version = "0.6.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce" -dependencies = [ - "autocfg", -] - -[[package]] -name = "mime" -version = "0.3.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" - -[[package]] -name = "minimal-lexical" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" - -[[package]] -name = "miniz_oxide" -version = "0.8.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3be647b768db090acb35d5ec5db2b0e1f1de11133ca123b9eacf5137868f892a" -dependencies = [ - "adler2", -] - -[[package]] -name = "mio" -version = "1.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2886843bf800fba2e3377cff24abf6379b4c4d5c6681eaf9ea5b0d15090450bd" -dependencies = [ - "libc", - "wasi 0.11.0+wasi-snapshot-preview1", - "windows-sys 0.52.0", -] - -[[package]] -name = "napi" -version = "2.16.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55740c4ae1d8696773c78fdafd5d0e5fe9bc9f1b071c7ba493ba5c413a9184f3" -dependencies = [ - "bitflags 2.9.0", - "ctor", - "napi-derive", - "napi-sys", - "once_cell", - "tokio", -] - -[[package]] -name = "napi-build" -version = "2.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e28acfa557c083f6e254a786e01ba253fc56f18ee000afcd4f79af735f73a6da" - -[[package]] -name = "napi-derive" -version = "2.16.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7cbe2585d8ac223f7d34f13701434b9d5f4eb9c332cccce8dee57ea18ab8ab0c" -dependencies = [ - "cfg-if", - "convert_case", - "napi-derive-backend", - "proc-macro2", - "quote", - "syn 2.0.101", -] - -[[package]] -name = "napi-derive-backend" -version = "1.0.75" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1639aaa9eeb76e91c6ae66da8ce3e89e921cd3885e99ec85f4abacae72fc91bf" -dependencies = [ - "convert_case", - "once_cell", - "proc-macro2", - "quote", - "regex", - "semver", - "syn 2.0.101", -] - -[[package]] -name = "napi-sys" -version = "2.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "427802e8ec3a734331fec1035594a210ce1ff4dc5bc1950530920ab717964ea3" -dependencies = [ - "libloading", -] - -[[package]] -name = "nom" -version = "7.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" -dependencies = [ - "memchr", - "minimal-lexical", -] - -[[package]] -name = "num-traits" -version = "0.2.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" -dependencies = [ - "autocfg", -] - -[[package]] -name = "num_cpus" -version = "1.16.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" -dependencies = [ - "hermit-abi 0.3.9", - "libc", -] - -[[package]] -name = "number_prefix" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3" - -[[package]] -name = "object" -version = "0.36.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62948e14d923ea95ea2c7c86c71013138b66525b86bdc08d2dcc262bdb497b87" -dependencies = [ - "memchr", -] - -[[package]] -name = "once_cell" -version = "1.21.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d" - -[[package]] -name = "oorandom" -version = "11.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6790f58c7ff633d8771f42965289203411a5e5c68388703c06e14f24770b41e" - -[[package]] -name = "owo-colors" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1036865bb9422d3300cf723f657c2851d0e9ab12567854b1f4eba3d77decf564" - -[[package]] -name = "parking_lot" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27" -dependencies = [ - "lock_api", - "parking_lot_core", -] - -[[package]] -name = "parking_lot_core" -version = "0.9.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8" -dependencies = [ - "cfg-if", - "libc", - "redox_syscall", - "smallvec", - "windows-targets 0.52.6", -] - -[[package]] -name = "percent-encoding" -version = "2.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" - -[[package]] -name = "pest" -version = "2.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "198db74531d58c70a361c42201efde7e2591e976d518caf7662a47dc5720e7b6" -dependencies = [ - "memchr", - "thiserror 2.0.12", - "ucd-trie", -] - -[[package]] -name = "pest_derive" -version = "2.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d725d9cfd79e87dccc9341a2ef39d1b6f6353d68c4b33c177febbe1a402c97c5" -dependencies = [ - "pest", - "pest_generator", -] - -[[package]] -name = "pest_generator" -version = "2.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db7d01726be8ab66ab32f9df467ae8b1148906685bbe75c82d1e65d7f5b3f841" -dependencies = [ - "pest", - "pest_meta", - "proc-macro2", - "quote", - "syn 2.0.101", -] - -[[package]] -name = "pest_meta" -version = "2.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f9f832470494906d1fca5329f8ab5791cc60beb230c74815dff541cbd2b5ca0" -dependencies = [ - "once_cell", - "pest", - "sha2", -] - -[[package]] -name = "pin-project" -version = "1.1.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "677f1add503faace112b9f1373e43e9e054bfdd22ff1a63c1bc485eaec6a6a8a" -dependencies = [ - "pin-project-internal", -] - -[[package]] -name = "pin-project-internal" -version = "1.1.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e918e4ff8c4549eb882f14b3a4bc8c8bc93de829416eacf579f1207a8fbf861" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", -] - -[[package]] -name = "pin-project-lite" -version = "0.2.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b3cff922bd51709b605d9ead9aa71031d81447142d828eb4a6eba76fe619f9b" - -[[package]] -name = "pin-utils" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" - -[[package]] -name = "plotters" -version = "0.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5aeb6f403d7a4911efb1e33402027fc44f29b5bf6def3effcc22d7bb75f2b747" -dependencies = [ - "num-traits", - "plotters-backend", - "plotters-svg", - "wasm-bindgen", - "web-sys", -] - -[[package]] -name = "plotters-backend" -version = "0.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df42e13c12958a16b3f7f4386b9ab1f3e7933914ecea48da7139435263a4172a" - -[[package]] -name = "plotters-svg" -version = "0.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51bae2ac328883f7acdfea3d66a7c35751187f870bc81f94563733a154d7a670" -dependencies = [ - "plotters-backend", -] - -[[package]] -name = "pretty_assertions" -version = "1.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ae130e2f271fbc2ac3a40fb1d07180839cdbbe443c7a27e1e3c13c5cac0116d" -dependencies = [ - "diff", - "yansi", -] - -[[package]] -name = "proc-macro2" -version = "1.0.95" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02b3e5e68a3a1a02aad3ec490a98007cbc13c37cbe84a3cd7b8e406d76e7f778" -dependencies = [ - "unicode-ident", -] - -[[package]] -name = "pyo3" -version = "0.17.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "268be0c73583c183f2b14052337465768c07726936a260f480f0857cb95ba543" -dependencies = [ - "cfg-if", - "indoc 1.0.9", - "libc", - "memoffset", - "parking_lot", - "pyo3-build-config", - "pyo3-ffi", - "pyo3-macros", - "unindent", -] - -[[package]] -name = "pyo3-build-config" -version = "0.17.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28fcd1e73f06ec85bf3280c48c67e731d8290ad3d730f8be9dc07946923005c8" -dependencies = [ - "once_cell", - "target-lexicon", -] - -[[package]] -name = "pyo3-ffi" -version = "0.17.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f6cb136e222e49115b3c51c32792886defbfb0adead26a688142b346a0b9ffc" -dependencies = [ - "libc", - "pyo3-build-config", -] - -[[package]] -name = "pyo3-macros" -version = "0.17.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94144a1266e236b1c932682136dc35a9dee8d3589728f68130c7c3861ef96b28" -dependencies = [ - "proc-macro2", - "pyo3-macros-backend", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "pyo3-macros-backend" -version = "0.17.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8df9be978a2d2f0cdebabb03206ed73b11314701a5bfe71b0d753b81997777f" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "quick-xml" -version = "0.22.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8533f14c8382aaad0d592c812ac3b826162128b65662331e1127b45c3d18536b" -dependencies = [ - "memchr", -] - -[[package]] -name = "quote" -version = "1.0.40" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d" -dependencies = [ - "proc-macro2", -] - -[[package]] -name = "r-efi" -version = "5.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74765f6d916ee2faa39bc8e68e4f3ed8949b48cccdac59983d287a7cb71ce9c5" - -[[package]] -name = "rayon" -version = "1.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa" -dependencies = [ - "either", - "rayon-core", -] - -[[package]] -name = "rayon-core" -version = "1.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" -dependencies = [ - "crossbeam-deque", - "crossbeam-utils", -] - -[[package]] -name = "rb-sys" -version = "0.9.111" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "becea799ce051c16fb140be80f5e7cf781070f99ca099332383c2b17861249af" -dependencies = [ - "rb-sys-build", -] - -[[package]] -name = "rb-sys-build" -version = "0.9.111" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64691175abc704862f60a9ca8ef06174080cc50615f2bf1d4759f46db18b4d29" -dependencies = [ - "bindgen", - "lazy_static", - "proc-macro2", - "quote", - "regex", - "shell-words", - "syn 2.0.101", -] - -[[package]] -name = "rb-sys-env" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a35802679f07360454b418a5d1735c89716bde01d35b1560fc953c1415a0b3bb" - -[[package]] -name = "redox_syscall" -version = "0.5.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "928fca9cf2aa042393a8325b9ead81d2f0df4cb12e1e24cef072922ccd99c5af" -dependencies = [ - "bitflags 2.9.0", -] - -[[package]] -name = "regex" -version = "1.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191" -dependencies = [ - "aho-corasick", - "memchr", - "regex-automata", - "regex-syntax", -] - -[[package]] -name = "regex-automata" -version = "0.4.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "809e8dc61f6de73b46c85f4c96486310fe304c434cfa43669d7b40f711150908" -dependencies = [ - "aho-corasick", - "memchr", - "regex-syntax", -] - -[[package]] -name = "regex-syntax" -version = "0.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" - -[[package]] -name = "reqwest" -version = "0.11.27" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd67538700a17451e7cba03ac727fb961abb7607553461627b97de0b89cf4a62" -dependencies = [ - "base64", - "bytes", - "encoding_rs", - "futures-core", - "futures-util", - "h2", - "http", - "http-body", - "hyper", - "hyper-rustls", - "ipnet", - "js-sys", - "log", - "mime", - "once_cell", - "percent-encoding", - "pin-project-lite", - "rustls", - "rustls-pemfile", - "serde", - "serde_json", - "serde_urlencoded", - "sync_wrapper", - "system-configuration", - "tokio", - "tokio-rustls", - "tower-service", - "url", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", - "webpki-roots", - "winreg", -] - -[[package]] -name = "ring" -version = "0.17.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4689e6c2294d81e88dc6261c768b63bc4fcdb852be6d1352498b114f61383b7" -dependencies = [ - "cc", - "cfg-if", - "getrandom 0.2.16", - "libc", - "untrusted", - "windows-sys 0.52.0", -] - -[[package]] -name = "rustc-demangle" -version = "0.1.24" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f" - -[[package]] -name = "rustc-hash" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" - -[[package]] -name = "rustix" -version = "1.0.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c71e83d6afe7ff64890ec6b71d6a69bb8a610ab78ce364b3352876bb4c801266" -dependencies = [ - "bitflags 2.9.0", - "errno", - "libc", - "linux-raw-sys", - "windows-sys 0.59.0", -] - -[[package]] -name = "rustls" -version = "0.21.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f56a14d1f48b391359b22f731fd4bd7e43c97f3c50eee276f3aa09c94784d3e" -dependencies = [ - "log", - "ring", - "rustls-webpki", - "sct", -] - -[[package]] -name = "rustls-pemfile" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c" -dependencies = [ - "base64", -] - -[[package]] -name = "rustls-webpki" -version = "0.101.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765" -dependencies = [ - "ring", - "untrusted", -] - -[[package]] -name = "rustversion" -version = "1.0.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eded382c5f5f786b989652c49544c4877d9f015cc22e145a5ea8ea66c2921cd2" - -[[package]] -name = "ryu" -version = "1.0.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f" - -[[package]] -name = "same-file" -version = "1.0.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" -dependencies = [ - "winapi-util", -] - -[[package]] -name = "scopeguard" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" - -[[package]] -name = "sct" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414" -dependencies = [ - "ring", - "untrusted", -] - -[[package]] -name = "self_update" -version = "0.30.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88c865d17fb512577be02a09fd2fd96c31c7e46fe649205d84feefd8b2a332da" -dependencies = [ - "either", - "flate2", - "hyper", - "indicatif", - "log", - "quick-xml", - "regex", - "reqwest", - "semver", - "serde_json", - "tar", - "tempfile", -] - -[[package]] -name = "semver" -version = "1.0.26" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56e6fa9c48d24d85fb3de5ad847117517440f6beceb7798af16b4a87d616b8d0" - -[[package]] -name = "seq-macro" -version = "0.3.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bc711410fbe7399f390ca1c3b60ad0f53f80e95c5eb935e52268a0e2cd49acc" - -[[package]] -name = "serde" -version = "1.0.219" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6" -dependencies = [ - "serde_derive", -] - -[[package]] -name = "serde_derive" -version = "1.0.219" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", -] - -[[package]] -name = "serde_json" -version = "1.0.140" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "20068b6e96dc6c9bd23e01df8827e6c7e1f2fddd43c21810382803c136b99373" -dependencies = [ - "itoa", - "memchr", - "ryu", - "serde", -] - -[[package]] -name = "serde_repr" -version = "0.1.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "175ee3e80ae9982737ca543e96133087cbd9a485eecc3bc4de9c1a37b47ea59c" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", -] - -[[package]] -name = "serde_urlencoded" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" -dependencies = [ - "form_urlencoded", - "itoa", - "ryu", - "serde", -] - -[[package]] -name = "serde_yaml" -version = "0.9.34+deprecated" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47" -dependencies = [ - "indexmap", - "itoa", - "ryu", - "serde", - "unsafe-libyaml", -] - -[[package]] -name = "sha2" -version = "0.10.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7507d819769d01a365ab707794a4084392c824f54a7a6a7862f8c3d0892b283" -dependencies = [ - "cfg-if", - "cpufeatures", - "digest", -] - -[[package]] -name = "shell-words" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24188a676b6ae68c3b2cb3a01be17fbf7240ce009799bb56d5b1409051e78fde" - -[[package]] -name = "shlex" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" - -[[package]] -name = "slab" -version = "0.4.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" -dependencies = [ - "autocfg", -] - -[[package]] -name = "smallvec" -version = "1.15.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8917285742e9f3e1683f0a9c4e6b57960b7314d0b08d30d1ecd426713ee2eee9" - -[[package]] -name = "socket2" -version = "0.5.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f5fd57c80058a56cf5c777ab8a126398ece8e442983605d280a44ce79d0edef" -dependencies = [ - "libc", - "windows-sys 0.52.0", -] - -[[package]] -name = "stable_deref_trait" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" - -[[package]] -name = "strsim" -version = "0.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" - -[[package]] -name = "sudo" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a88e74edf206f281aff2820aa2066c781331044c770626dcafe19491f214e05" -dependencies = [ - "libc", - "log", -] - -[[package]] -name = "syn" -version = "1.0.109" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" -dependencies = [ - "proc-macro2", - "quote", - "unicode-ident", -] - -[[package]] -name = "syn" -version = "2.0.101" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ce2b7fc941b3a24138a0a7cf8e858bfc6a992e7978a068a5c760deb0ed43caf" -dependencies = [ - "proc-macro2", - "quote", - "unicode-ident", -] - -[[package]] -name = "sync_wrapper" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" - -[[package]] -name = "synstructure" -version = "0.13.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", -] - -[[package]] -name = "system-configuration" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7" -dependencies = [ - "bitflags 1.3.2", - "core-foundation", - "system-configuration-sys", -] - -[[package]] -name = "system-configuration-sys" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9" -dependencies = [ - "core-foundation-sys", - "libc", -] - -[[package]] -name = "tar" -version = "0.4.44" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d863878d212c87a19c1a610eb53bb01fe12951c0501cf5a0d65f724914a667a" -dependencies = [ - "filetime", - "libc", - "xattr", -] - -[[package]] -name = "target-lexicon" -version = "0.12.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61c41af27dd6d1e27b1b16b489db798443478cef1f06a660c96db617ba5de3b1" - -[[package]] -name = "tempfile" -version = "3.19.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7437ac7763b9b123ccf33c338a5cc1bac6f69b45a136c19bdd8a65e3916435bf" -dependencies = [ - "fastrand", - "getrandom 0.3.2", - "once_cell", - "rustix", - "windows-sys 0.59.0", -] - -[[package]] -name = "thiserror" -version = "1.0.69" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52" -dependencies = [ - "thiserror-impl 1.0.69", -] - -[[package]] -name = "thiserror" -version = "2.0.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "567b8a2dae586314f7be2a752ec7474332959c6460e02bde30d702a66d488708" -dependencies = [ - "thiserror-impl 2.0.12", -] - -[[package]] -name = "thiserror-impl" -version = "1.0.69" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", -] - -[[package]] -name = "thiserror-impl" -version = "2.0.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f7cf42b4507d8ea322120659672cf1b9dbb93f8f2d4ecfd6e51350ff5b17a1d" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", -] - -[[package]] -name = "threadpool" -version = "1.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d050e60b33d41c19108b32cea32164033a9013fe3b46cbd4457559bfbf77afaa" -dependencies = [ - "num_cpus", -] - -[[package]] -name = "tinystr" -version = "0.7.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9117f5d4db391c1cf6927e7bea3db74b9a1c1add8f7eda9ffd5364f40f57b82f" -dependencies = [ - "displaydoc", - "zerovec", -] - -[[package]] -name = "tinytemplate" -version = "1.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be4d6b5f19ff7664e8c98d03e2139cb510db9b0a60b55f8e8709b689d939b6bc" -dependencies = [ - "serde", - "serde_json", -] - -[[package]] -name = "tokio" -version = "1.44.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6b88822cbe49de4185e3a4cbf8321dd487cf5fe0c5c65695fef6346371e9c48" -dependencies = [ - "backtrace", - "bytes", - "libc", - "mio", - "pin-project-lite", - "socket2", - "tokio-macros", - "windows-sys 0.52.0", -] - -[[package]] -name = "tokio-macros" -version = "2.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", -] - -[[package]] -name = "tokio-rustls" -version = "0.24.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081" -dependencies = [ - "rustls", - "tokio", -] - -[[package]] -name = "tokio-util" -version = "0.7.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66a539a9ad6d5d281510d5bd368c973d636c02dbf8a67300bfb6b950696ad7df" -dependencies = [ - "bytes", - "futures-core", - "futures-sink", - "pin-project-lite", - "tokio", -] - -[[package]] -name = "tower" -version = "0.4.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c" -dependencies = [ - "futures-core", - "futures-util", - "pin-project", - "pin-project-lite", - "tower-layer", - "tower-service", -] - -[[package]] -name = "tower-layer" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "121c2a6cda46980bb0fcd1647ffaf6cd3fc79a013de288782836f6df9c48780e" - -[[package]] -name = "tower-lsp" -version = "0.20.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4ba052b54a6627628d9b3c34c176e7eda8359b7da9acd497b9f20998d118508" -dependencies = [ - "async-trait", - "auto_impl", - "bytes", - "dashmap", - "futures", - "httparse", - "lsp-types", - "memchr", - "serde", - "serde_json", - "tokio", - "tokio-util", - "tower", - "tower-lsp-macros", - "tracing", -] - -[[package]] -name = "tower-lsp-macros" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84fd902d4e0b9a4b27f2f440108dc034e1758628a9b702f8ec61ad66355422fa" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", -] - -[[package]] -name = "tower-service" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3" - -[[package]] -name = "tracing" -version = "0.1.41" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "784e0ac535deb450455cbfa28a6f0df145ea1bb7ae51b821cf5e7927fdcfbdd0" -dependencies = [ - "pin-project-lite", - "tracing-attributes", - "tracing-core", -] - -[[package]] -name = "tracing-attributes" -version = "0.1.28" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", -] - -[[package]] -name = "tracing-core" -version = "0.1.33" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e672c95779cf947c5311f83787af4fa8fffd12fb27e4993211a84bdfd9610f9c" -dependencies = [ - "once_cell", -] - -[[package]] -name = "try-lock" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" - -[[package]] -name = "typenum" -version = "1.18.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1dccffe3ce07af9386bfd29e80c0ab1a8205a2fc34e4bcd40364df902cfa8f3f" - -[[package]] -name = "ucd-trie" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2896d95c02a80c6d6a5d6e953d479f5ddf2dfdb6a244441010e373ac0fb88971" - -[[package]] -name = "unicode-ident" -version = "1.0.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512" - -[[package]] -name = "unicode-segmentation" -version = "1.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493" - -[[package]] -name = "unindent" -version = "0.1.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1766d682d402817b5ac4490b3c3002d91dfa0d22812f341609f97b08757359c" - -[[package]] -name = "unsafe-libyaml" -version = "0.2.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "673aac59facbab8a9007c7f6108d11f63b603f7cabff99fabf650fea5c32b861" - -[[package]] -name = "untrusted" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" - -[[package]] -name = "url" -version = "2.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32f8b686cadd1473f4bd0117a5d28d36b1ade384ea9b5069a1c40aefed7fda60" -dependencies = [ - "form_urlencoded", - "idna", - "percent-encoding", - "serde", -] - -[[package]] -name = "utf16_iter" -version = "1.0.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8232dd3cdaed5356e0f716d285e4b40b932ac434100fe9b7e0e8e935b9e6246" - -[[package]] -name = "utf8_iter" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be" - -[[package]] -name = "utf8parse" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" - -[[package]] -name = "version_check" -version = "0.9.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" - -[[package]] -name = "walkdir" -version = "2.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b" -dependencies = [ - "same-file", - "winapi-util", -] - -[[package]] -name = "want" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e" -dependencies = [ - "try-lock", -] - -[[package]] -name = "wasi" -version = "0.11.0+wasi-snapshot-preview1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" - -[[package]] -name = "wasi" -version = "0.14.2+wasi-0.2.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9683f9a5a998d873c0d21fcbe3c083009670149a8fab228644b8bd36b2c48cb3" -dependencies = [ - "wit-bindgen-rt", -] - -[[package]] -name = "wasm-bindgen" -version = "0.2.100" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1edc8929d7499fc4e8f0be2262a241556cfc54a0bea223790e71446f2aab1ef5" -dependencies = [ - "cfg-if", - "once_cell", - "rustversion", - "serde", - "serde_json", - "wasm-bindgen-macro", -] - -[[package]] -name = "wasm-bindgen-backend" -version = "0.2.100" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f0a0651a5c2bc21487bde11ee802ccaf4c51935d0d3d42a6101f98161700bc6" -dependencies = [ - "bumpalo", - "log", - "proc-macro2", - "quote", - "syn 2.0.101", - "wasm-bindgen-shared", -] - -[[package]] -name = "wasm-bindgen-futures" -version = "0.4.50" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "555d470ec0bc3bb57890405e5d4322cc9ea83cebb085523ced7be4144dac1e61" -dependencies = [ - "cfg-if", - "js-sys", - "once_cell", - "wasm-bindgen", - "web-sys", -] - -[[package]] -name = "wasm-bindgen-macro" -version = "0.2.100" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fe63fc6d09ed3792bd0897b314f53de8e16568c2b3f7982f468c0bf9bd0b407" -dependencies = [ - "quote", - "wasm-bindgen-macro-support", -] - -[[package]] -name = "wasm-bindgen-macro-support" -version = "0.2.100" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", - "wasm-bindgen-backend", - "wasm-bindgen-shared", -] - -[[package]] -name = "wasm-bindgen-shared" -version = "0.2.100" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a05d73b933a847d6cccdda8f838a22ff101ad9bf93e33684f39c1f5f0eece3d" -dependencies = [ - "unicode-ident", -] - -[[package]] -name = "web-sys" -version = "0.3.77" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33b6dd2ef9186f1f2072e409e99cd22a975331a6b3591b12c764e0e55c60d5d2" -dependencies = [ - "js-sys", - "wasm-bindgen", -] - -[[package]] -name = "webpki-roots" -version = "0.25.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f20c57d8d7db6d3b86154206ae5d8fba62dd39573114de97c2cb0578251f8e1" - -[[package]] -name = "winapi-util" -version = "0.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" -dependencies = [ - "windows-sys 0.59.0", -] - -[[package]] -name = "windows-sys" -version = "0.48.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" -dependencies = [ - "windows-targets 0.48.5", -] - -[[package]] -name = "windows-sys" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" -dependencies = [ - "windows-targets 0.52.6", -] - -[[package]] -name = "windows-sys" -version = "0.59.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" -dependencies = [ - "windows-targets 0.52.6", -] - -[[package]] -name = "windows-targets" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" -dependencies = [ - "windows_aarch64_gnullvm 0.48.5", - "windows_aarch64_msvc 0.48.5", - "windows_i686_gnu 0.48.5", - "windows_i686_msvc 0.48.5", - "windows_x86_64_gnu 0.48.5", - "windows_x86_64_gnullvm 0.48.5", - "windows_x86_64_msvc 0.48.5", -] - -[[package]] -name = "windows-targets" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" -dependencies = [ - "windows_aarch64_gnullvm 0.52.6", - "windows_aarch64_msvc 0.52.6", - "windows_i686_gnu 0.52.6", - "windows_i686_gnullvm", - "windows_i686_msvc 0.52.6", - "windows_x86_64_gnu 0.52.6", - "windows_x86_64_gnullvm 0.52.6", - "windows_x86_64_msvc 0.52.6", -] - -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" - -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" - -[[package]] -name = "windows_aarch64_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" - -[[package]] -name = "windows_aarch64_msvc" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" - -[[package]] -name = "windows_i686_gnu" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" - -[[package]] -name = "windows_i686_gnu" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" - -[[package]] -name = "windows_i686_gnullvm" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" - -[[package]] -name = "windows_i686_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" - -[[package]] -name = "windows_i686_msvc" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" - -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" - -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" - -[[package]] -name = "windows_x86_64_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" - -[[package]] -name = "windows_x86_64_msvc" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" - -[[package]] -name = "winreg" -version = "0.50.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1" -dependencies = [ - "cfg-if", - "windows-sys 0.48.0", -] - -[[package]] -name = "wit-bindgen-rt" -version = "0.39.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f42320e61fe2cfd34354ecb597f86f413484a798ba44a8ca1165c58d42da6c1" -dependencies = [ - "bitflags 2.9.0", -] - -[[package]] -name = "write16" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d1890f4022759daae28ed4fe62859b1236caebfc61ede2f63ed4e695f3f6d936" - -[[package]] -name = "writeable" -version = "0.5.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e9df38ee2d2c3c5948ea468a8406ff0db0b29ae1ffde1bcf20ef305bcc95c51" - -[[package]] -name = "xattr" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d65cbf2f12c15564212d48f4e3dfb87923d25d611f2aed18f4cb23f0413d89e" -dependencies = [ - "libc", - "rustix", -] - -[[package]] -name = "yansi" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cfe53a6657fd280eaa890a3bc59152892ffa3e30101319d168b781ed6529b049" - -[[package]] -name = "yoke" -version = "0.7.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "120e6aef9aa629e3d4f52dc8cc43a015c7724194c97dfaf45180d2daf2b77f40" -dependencies = [ - "serde", - "stable_deref_trait", - "yoke-derive", - "zerofrom", -] - -[[package]] -name = "yoke-derive" -version = "0.7.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2380878cad4ac9aac1e2435f3eb4020e8374b5f13c296cb75b4620ff8e229154" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", - "synstructure", -] - -[[package]] -name = "zerofrom" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50cc42e0333e05660c3587f3bf9d0478688e15d870fab3346451ce7f8c9fbea5" -dependencies = [ - "zerofrom-derive", -] - -[[package]] -name = "zerofrom-derive" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", - "synstructure", -] - -[[package]] -name = "zerovec" -version = "0.10.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa2b893d79df23bfb12d5461018d408ea19dfafe76c2c7ef6d4eba614f8ff079" -dependencies = [ - "yoke", - "zerofrom", - "zerovec-derive", -] - -[[package]] -name = "zerovec-derive" -version = "0.10.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", -] diff --git a/pkgs/by-name/au/autocorrect/package.nix b/pkgs/by-name/au/autocorrect/package.nix index 13c8c0c6c78a..fc254c673ada 100644 --- a/pkgs/by-name/au/autocorrect/package.nix +++ b/pkgs/by-name/au/autocorrect/package.nix @@ -4,24 +4,19 @@ fetchFromGitHub, }: -rustPlatform.buildRustPackage rec { +rustPlatform.buildRustPackage (finalAttrs: { pname = "autocorrect"; - version = "2.14.0"; + version = "2.14.1"; src = fetchFromGitHub { owner = "huacnlee"; repo = "autocorrect"; - rev = "v${version}"; - sha256 = "sha256-Tqg0awxRtzqAVTTVrmN0RDTQvYJllejx8V94jTreZyI="; + rev = "5af1bc295d48b0fd04f7dbc35ea99d479f682e78"; + hash = "sha256-tbN+48a8NnwirJqUci0LgxsvJI0KzuG/aDvV/Yr8Xu8="; }; - cargoLock = { - lockFile = ./Cargo.lock; - }; - - postPatch = '' - cp ${./Cargo.lock} Cargo.lock - ''; + useFetchCargoVendor = true; + cargoHash = "sha256-cEiIs7wvfjP5/tkRtYb2XEZfssw09zkbOrqZsOX9ajQ="; cargoBuildFlags = [ "-p" @@ -32,14 +27,12 @@ rustPlatform.buildRustPackage rec { "autocorrect-cli" ]; - passthru.updateScript = ./update.sh; - meta = { description = "Linter and formatter for help you improve copywriting, to correct spaces, punctuations between CJK (Chinese, Japanese, Korean)"; mainProgram = "autocorrect"; homepage = "https://huacnlee.github.io/autocorrect"; - changelog = "https://github.com/huacnlee/autocorrect/releases/tag/v${version}"; + changelog = "https://github.com/huacnlee/autocorrect/releases/tag/v${finalAttrs.version}"; license = lib.licenses.mit; - maintainers = with lib.maintainers; [ ]; + maintainers = with lib.maintainers; [ definfo ]; }; -} +}) diff --git a/pkgs/by-name/au/autocorrect/update.sh b/pkgs/by-name/au/autocorrect/update.sh deleted file mode 100755 index 64af26872631..000000000000 --- a/pkgs/by-name/au/autocorrect/update.sh +++ /dev/null @@ -1,15 +0,0 @@ -#! /usr/bin/env nix-shell -#! nix-shell -i bash -p coreutils curl jq common-updater-scripts cargo -# shellcheck shell=bash - -set -euo pipefail - -version=$(curl -s https://api.github.com/repos/huacnlee/autocorrect/releases/latest | jq -r .tag_name) -update-source-version autocorrect "${version#v}" - -tmp=$(mktemp -d) -trap 'rm -rf -- "${tmp}"' EXIT - -git clone --depth 1 --branch "${version}" https://github.com/huacnlee/autocorrect.git "${tmp}/autocorrect" -cargo generate-lockfile --manifest-path "${tmp}/autocorrect/Cargo.toml" -cp "${tmp}/autocorrect/Cargo.lock" "$(dirname "$0")/Cargo.lock" diff --git a/pkgs/by-name/ba/bazel-buildtools/package.nix b/pkgs/by-name/ba/bazel-buildtools/package.nix index 825ad6987643..b75df275c641 100644 --- a/pkgs/by-name/ba/bazel-buildtools/package.nix +++ b/pkgs/by-name/ba/bazel-buildtools/package.nix @@ -6,13 +6,13 @@ buildGoModule rec { pname = "bazel-buildtools"; - version = "8.2.0"; + version = "8.2.1"; src = fetchFromGitHub { owner = "bazelbuild"; repo = "buildtools"; rev = "v${version}"; - hash = "sha256-7O82TE6NgJSrYOz1gO+t9nWgrTshyK8EIemI7SM2DuM="; + hash = "sha256-YkxEc+hcfOH2zzdHngoJmuCqGD4FWSkFd2cVqIrpHD4="; }; vendorHash = "sha256-sYZ7ogQY0dWOwJMvLljOjaKeYGYdLrF5AnetregdlYY="; diff --git a/pkgs/by-name/ba/bazel-gazelle/package.nix b/pkgs/by-name/ba/bazel-gazelle/package.nix index 3cebe0fa394f..1112340c0981 100644 --- a/pkgs/by-name/ba/bazel-gazelle/package.nix +++ b/pkgs/by-name/ba/bazel-gazelle/package.nix @@ -6,13 +6,13 @@ buildGoModule rec { pname = "bazel-gazelle"; - version = "0.43.0"; + version = "0.44.0"; src = fetchFromGitHub { owner = "bazelbuild"; repo = "bazel-gazelle"; rev = "v${version}"; - hash = "sha256-jj2mAGzz5BOim008LNRH0tVLbJy/mNodsTENMVbjUbk="; + hash = "sha256-vkGLzrseERxl0LygFm1zCC7kK7j+pHpTbG2fy4fLztw="; }; vendorHash = null; diff --git a/pkgs/by-name/bi/bibiman/package.nix b/pkgs/by-name/bi/bibiman/package.nix index 405b26b18b10..afd2f9aebf34 100644 --- a/pkgs/by-name/bi/bibiman/package.nix +++ b/pkgs/by-name/bi/bibiman/package.nix @@ -8,18 +8,18 @@ rustPlatform.buildRustPackage rec { pname = "bibiman"; - version = "0.12.3"; + version = "0.12.4"; src = fetchFromGitea { domain = "codeberg.org"; owner = "lukeflo"; repo = "bibiman"; tag = "v${version}"; - hash = "sha256-gjVfJyedZZhSavarBXmpG3jj7mb3706NPKB9oEVhol0="; + hash = "sha256-6duqLBPm6GlBHm3Kr4foHF1MKodYOYKKDITk/BiX6mA="; }; useFetchCargoVendor = true; - cargoHash = "sha256-YtpnKgTIAsDXK6pl/TvU54euOdkbUcyCH4RADYWXkls="; + cargoHash = "sha256-tbgzjTsK88+G4Wxex4Tl0K5Ii99tPNud3UEDzAHaI0M="; nativeInstallCheckInputs = [ versionCheckHook diff --git a/pkgs/by-name/bi/bitrise/package.nix b/pkgs/by-name/bi/bitrise/package.nix index a33600825b4d..955cd6348d56 100644 --- a/pkgs/by-name/bi/bitrise/package.nix +++ b/pkgs/by-name/bi/bitrise/package.nix @@ -6,13 +6,13 @@ }: buildGoModule rec { pname = "bitrise"; - version = "2.31.2"; + version = "2.31.3"; src = fetchFromGitHub { owner = "bitrise-io"; repo = "bitrise"; rev = "v${version}"; - hash = "sha256-WMvk5VEXc0cEWVdop50mSlAJKP8RhRijCia0fgBG79M="; + hash = "sha256-uy2B2tjtg6/ufMWy9sPoheSw2hxIsl2gUdAKVfixpoM="; }; # many tests rely on writable $HOME/.bitrise and require network access diff --git a/pkgs/by-name/bu/buf/package.nix b/pkgs/by-name/bu/buf/package.nix index eb93cae6c90d..b5bf7fd05713 100644 --- a/pkgs/by-name/bu/buf/package.nix +++ b/pkgs/by-name/bu/buf/package.nix @@ -5,18 +5,17 @@ protobuf, git, testers, - buf, installShellFiles, }: -buildGoModule rec { +buildGoModule (finalAttrs: { pname = "buf"; version = "1.55.1"; src = fetchFromGitHub { owner = "bufbuild"; repo = "buf"; - rev = "v${version}"; + tag = "v${finalAttrs.version}"; hash = "sha256-41IY2P2s9kCV6aQh5vg7xVmu4Ovl9gakGmgcI/QSwfw="; }; @@ -81,11 +80,11 @@ buildGoModule rec { runHook postInstall ''; - passthru.tests.version = testers.testVersion { package = buf; }; + passthru.tests.version = testers.testVersion { package = finalAttrs.finalPackage; }; meta = { homepage = "https://buf.build"; - changelog = "https://github.com/bufbuild/buf/releases/tag/v${version}"; + changelog = "https://github.com/bufbuild/buf/releases/tag/v${finalAttrs.version}"; description = "Create consistent Protobuf APIs that preserve compatibility and comply with design best-practices"; license = lib.licenses.asl20; maintainers = with lib.maintainers; [ @@ -95,4 +94,4 @@ buildGoModule rec { ]; mainProgram = "buf"; }; -} +}) diff --git a/pkgs/by-name/ch/chez-mit/package.nix b/pkgs/by-name/ch/chez-mit/package.nix index a12f7a7a06d8..00e5e9d2f81d 100644 --- a/pkgs/by-name/ch/chez-mit/package.nix +++ b/pkgs/by-name/ch/chez-mit/package.nix @@ -35,6 +35,7 @@ stdenv.mkDerivation rec { homepage = "https://github.com/fedeinthemix/chez-mit/"; maintainers = [ maintainers.jitwit ]; license = licenses.gpl3Plus; + broken = stdenv.hostPlatform.isDarwin; }; } diff --git a/pkgs/by-name/ci/cimg/package.nix b/pkgs/by-name/ci/cimg/package.nix index 9b1da3fea236..2d3d6d963c98 100644 --- a/pkgs/by-name/ci/cimg/package.nix +++ b/pkgs/by-name/ci/cimg/package.nix @@ -8,13 +8,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "cimg"; - version = "3.5.4"; + version = "3.5.5"; src = fetchFromGitHub { owner = "GreycLab"; repo = "CImg"; tag = "v.${finalAttrs.version}"; - hash = "sha256-VCgMSIaQAcPH7DWUEfoJahCQDr49lzO7pUw1+NXHA60="; + hash = "sha256-vVRdSjrSCprhxraLzZ531zIYXsqbnnxOcoawJddwvgY="; }; outputs = [ diff --git a/pkgs/by-name/ci/cirrus-cli/package.nix b/pkgs/by-name/ci/cirrus-cli/package.nix index 7929e98226af..94f2e3e1067e 100644 --- a/pkgs/by-name/ci/cirrus-cli/package.nix +++ b/pkgs/by-name/ci/cirrus-cli/package.nix @@ -7,16 +7,16 @@ buildGoModule rec { pname = "cirrus-cli"; - version = "0.144.3"; + version = "0.145.1"; src = fetchFromGitHub { owner = "cirruslabs"; repo = "cirrus-cli"; rev = "v${version}"; - hash = "sha256-aqsPh6pZ2v5ysYoD9rG/ATAPBKUslxlif1uKMPGY6gU="; + hash = "sha256-RyT0pR/hcqkvavI4HkWjCG5AS4H5hBbjOChHrUoq2GI="; }; - vendorHash = "sha256-fcaOMSOLcl1rzp4zn6KiojC0ewJMFbyG4+1uod+/6yc="; + vendorHash = "sha256-CvypJVRLdMr38Qn8E67IZ33cSq5fYhM3i5HyifXGYNE="; ldflags = [ "-X github.com/cirruslabs/cirrus-cli/internal/version.Version=v${version}" diff --git a/pkgs/by-name/cl/cloudlog/package.nix b/pkgs/by-name/cl/cloudlog/package.nix index cc96ec53b7f0..287ebeb2b4fa 100644 --- a/pkgs/by-name/cl/cloudlog/package.nix +++ b/pkgs/by-name/cl/cloudlog/package.nix @@ -9,13 +9,13 @@ stdenvNoCC.mkDerivation rec { pname = "cloudlog"; - version = "2.6.18"; + version = "2.6.19"; src = fetchFromGitHub { owner = "magicbug"; repo = "Cloudlog"; rev = version; - hash = "sha256-GH6vGZRWM2q6ExpZzRRmJf+7VGs4Ymg2S/6TIJgfJEg="; + hash = "sha256-nSozkRj4aeZZJ/H0zfzzlH4rWGVThC03ByA4FF6IgT4="; }; postPatch = '' diff --git a/pkgs/by-name/cy/cyrus-imapd/package.nix b/pkgs/by-name/cy/cyrus-imapd/package.nix index 8bc78f051514..c390f82234dc 100644 --- a/pkgs/by-name/cy/cyrus-imapd/package.nix +++ b/pkgs/by-name/cy/cyrus-imapd/package.nix @@ -66,13 +66,13 @@ }: stdenv.mkDerivation (finalAttrs: { pname = "cyrus-imapd"; - version = "3.12.0"; + version = "3.12.1"; src = fetchFromGitHub { owner = "cyrusimap"; repo = "cyrus-imapd"; tag = "cyrus-imapd-${finalAttrs.version}"; - hash = "sha256-sdHAxlrxQHzcSt2buOGfRv/OR8BYFHrNoo+r/ePVFsg="; + hash = "sha256-fwt8ierxM4bMp+ZfYINXUIcKNMnkTIWJTNWyv8GyX0c="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/db/dbeaver-bin/package.nix b/pkgs/by-name/db/dbeaver-bin/package.nix index c60136a1eaec..56ac135ba770 100644 --- a/pkgs/by-name/db/dbeaver-bin/package.nix +++ b/pkgs/by-name/db/dbeaver-bin/package.nix @@ -4,7 +4,7 @@ fetchurl, undmg, makeWrapper, - openjdk17, + openjdk21, gnused, autoPatchelfHook, wrapGAppsHook3, @@ -76,8 +76,8 @@ stdenvNoCC.mkDerivation (finalAttrs: { mkdir -p $out/opt/dbeaver $out/bin cp -r * $out/opt/dbeaver makeWrapper $out/opt/dbeaver/dbeaver $out/bin/dbeaver \ - --prefix PATH : "${openjdk17}/bin" \ - --set JAVA_HOME "${openjdk17.home}" \ + --prefix PATH : "${openjdk21}/bin" \ + --set JAVA_HOME "${openjdk21.home}" \ --prefix GIO_EXTRA_MODULES : "${glib-networking}/lib/gio/modules" \ --prefix LD_LIBRARY_PATH : "$out/lib:${ lib.makeLibraryPath [ @@ -109,8 +109,8 @@ stdenvNoCC.mkDerivation (finalAttrs: { mkdir -p $out/{Applications/dbeaver.app,bin} cp -R . $out/Applications/dbeaver.app makeWrapper $out/{Applications/dbeaver.app/Contents/MacOS,bin}/dbeaver \ - --prefix PATH : "${openjdk17}/bin" \ - --set JAVA_HOME "${openjdk17.home}" + --prefix PATH : "${openjdk21}/bin" \ + --set JAVA_HOME "${openjdk21.home}" runHook postInstall ''; diff --git a/pkgs/by-name/de/delve/disable-fortify.diff b/pkgs/by-name/de/delve/disable-fortify.diff new file mode 100644 index 000000000000..5ba22e8bc043 --- /dev/null +++ b/pkgs/by-name/de/delve/disable-fortify.diff @@ -0,0 +1,13 @@ +diff --git a/cmd/dlv/main.go b/cmd/dlv/main.go +index 2207708e..a7e8a3c2 100644 +--- a/cmd/dlv/main.go ++++ b/cmd/dlv/main.go +@@ -21,6 +21,8 @@ func main() { + version.DelveVersion.Build = Build + } + ++ os.Setenv("disableHardening", "fortify "+os.Getenv("disableHardening")) ++ + const cgoCflagsEnv = "CGO_CFLAGS" + if os.Getenv(cgoCflagsEnv) == "" { + os.Setenv(cgoCflagsEnv, "-O0 -g") diff --git a/pkgs/by-name/de/delve/package.nix b/pkgs/by-name/de/delve/package.nix index 098d4a5e4a46..7cbef6ba718b 100644 --- a/pkgs/by-name/de/delve/package.nix +++ b/pkgs/by-name/de/delve/package.nix @@ -2,7 +2,6 @@ lib, buildGoModule, fetchFromGitHub, - makeWrapper, stdenv, }: @@ -17,12 +16,14 @@ buildGoModule rec { hash = "sha256-bp8pYWS3Vpg0R2Xfe5agDTENzLGu9r43BgORa8VrP+Y="; }; + patches = [ + ./disable-fortify.diff + ]; + vendorHash = null; subPackages = [ "cmd/dlv" ]; - nativeBuildInputs = [ makeWrapper ]; - hardeningDisable = [ "fortify" ]; preCheck = '' @@ -38,10 +39,6 @@ buildGoModule rec { doCheck = !stdenv.hostPlatform.isDarwin; postInstall = '' - # fortify source breaks build since delve compiles with -O0 - wrapProgram $out/bin/dlv \ - --prefix disableHardening " " fortify - # add symlink for vscode golang extension # https://github.com/golang/vscode-go/blob/master/docs/debugging.md#manually-installing-dlv-dap ln $out/bin/dlv $out/bin/dlv-dap diff --git a/pkgs/by-name/de/dependabot-cli/package.nix b/pkgs/by-name/de/dependabot-cli/package.nix index fef777d03e45..693fb1178422 100644 --- a/pkgs/by-name/de/dependabot-cli/package.nix +++ b/pkgs/by-name/de/dependabot-cli/package.nix @@ -12,20 +12,20 @@ }: let pname = "dependabot-cli"; - version = "1.66.0"; + version = "1.67.1"; # `tag` is what `dependabot` uses to find the relevant docker images. tag = "nixpkgs-dependabot-cli-${version}"; # Get these hashes from # nix run nixpkgs#nix-prefetch-docker -- --image-name ghcr.io/github/dependabot-update-job-proxy/dependabot-update-job-proxy --image-tag latest --final-image-name dependabot-update-job-proxy --final-image-tag ${tag} - updateJobProxy.imageDigest = "sha256:0b0d8c67cad11fa0885fcc3fe0add06638c29c19f05a83f80077d5dbb70c2037"; - updateJobProxy.hash = "sha256-7O/1NYdhtmO+MAwfu8BSaJQ1RVkXrFPBpfRy0N7p1lQ="; + updateJobProxy.imageDigest = "sha256:0a7207bc265d7daaae61f2f105659d7c5947dc7e70395d6604cf114695d23578"; + updateJobProxy.hash = "sha256-tQFkP260Vl2j19vTk7kz6/UmbKVg0CtjLuZYe7wHKSA="; # Get these hashes from # nix run nixpkgs#nix-prefetch-docker -- --image-name ghcr.io/dependabot/dependabot-updater-github-actions --image-tag latest --final-image-name dependabot-updater-github-actions --final-image-tag ${tag} - updaterGitHubActions.imageDigest = "sha256:11de6594db1c23e7ed4a6b621e8584b4a3b34484d51f2f8aa850c21fbce9094f"; - updaterGitHubActions.hash = "sha256-cImOCW7tggBWEPlmE55b4OFMxf/+VGLoqx0tRualowo="; + updaterGitHubActions.imageDigest = "sha256:d0b91fa5fcfe306614f3c4307b4571cabe25405e06f3ce737a2b7b225530a71c"; + updaterGitHubActions.hash = "sha256-yisnwxqFOUUBSq0YPX0C89dNOYYJ/mfNFhyrQCV6yoc="; in buildGoModule { inherit pname version; @@ -34,10 +34,10 @@ buildGoModule { owner = "dependabot"; repo = "cli"; rev = "v${version}"; - hash = "sha256-9VgcQgiNv1v6+jnaWK10yccC1ILSxiIj9ZCIhHY57jk="; + hash = "sha256-K3ZHLauAtG1pSZsiLwWj9sMWL1epPILLUvc22/+oj+g="; }; - vendorHash = "sha256-gENlo1EPzsML+HkDBg4a2VGTUhyKY8AhlpHVszYWBno="; + vendorHash = "sha256-4737CHJCeq7qn8dGz3bYsauCLipKqItltpI5u6uBvuo="; ldflags = [ "-s" diff --git a/pkgs/by-name/to/tooling-language-server/package.nix b/pkgs/by-name/de/deputy/package.nix similarity index 50% rename from pkgs/by-name/to/tooling-language-server/package.nix rename to pkgs/by-name/de/deputy/package.nix index dc7d529230f3..c9ceffdff9b5 100644 --- a/pkgs/by-name/to/tooling-language-server/package.nix +++ b/pkgs/by-name/de/deputy/package.nix @@ -6,19 +6,19 @@ nix-update-script, }: -rustPlatform.buildRustPackage rec { - pname = "tooling-language-server"; - version = "0.5.0"; +rustPlatform.buildRustPackage (finalAttrs: { + pname = "deputy"; + version = "0.6.0"; src = fetchFromGitHub { owner = "filiptibell"; - repo = "tooling-language-server"; - tag = "v${version}"; - hash = "sha256-0FF9p3Z8C3C/fcTvu66ozCs/G3UAJ/Kf2v+4IZU4eCA="; + repo = "deputy"; + tag = "v${finalAttrs.version}"; + hash = "sha256-dTCikfHqfSVb1F6LYrLqFAEufD6dPgAi6F65yPlCO18="; }; useFetchCargoVendor = true; - cargoHash = "sha256-DxQMAnlE8oWtigU1gUEdTdBIvEtbL8xhaPLx6kt8T2c="; + cargoHash = "sha256-nGheg/HnkYsvfrsd/dPNbFQEHXFtjB5so436nrbKRqo="; nativeInstallCheckInputs = [ versionCheckHook ]; versionCheckProgramArg = "--version"; @@ -28,10 +28,10 @@ rustPlatform.buildRustPackage rec { meta = { description = "Language server for tools and package managers"; - homepage = "https://github.com/filiptibell/tooling-language-server"; - changelog = "https://github.com/filiptibell/tooling-language-server/blob/${src.tag}/CHANGELOG.md"; + homepage = "https://github.com/filiptibell/deputy"; + changelog = "https://github.com/filiptibell/deputy/blob/${finalAttrs.src.tag}/CHANGELOG.md"; license = lib.licenses.mpl20; maintainers = with lib.maintainers; [ niklaskorz ]; - mainProgram = "tooling-language-server"; + mainProgram = "deputy"; }; -} +}) diff --git a/pkgs/by-name/di/dillo/package.nix b/pkgs/by-name/di/dillo/package.nix index e32387f02ca2..53b234f354ca 100644 --- a/pkgs/by-name/di/dillo/package.nix +++ b/pkgs/by-name/di/dillo/package.nix @@ -78,7 +78,7 @@ stdenv.mkDerivation (finalAttrs: { - Helps authors to comply with web standards by using the bug meter. ''; mainProgram = "dillo"; - maintainers = with lib.maintainers; [ ]; + maintainers = with lib.maintainers; [ fgaz ]; license = lib.licenses.gpl3Plus; platforms = lib.platforms.all; }; diff --git a/pkgs/by-name/dm/dmlive/package.nix b/pkgs/by-name/dm/dmlive/package.nix index c3fbc6542b78..0db9295a7a29 100644 --- a/pkgs/by-name/dm/dmlive/package.nix +++ b/pkgs/by-name/dm/dmlive/package.nix @@ -20,17 +20,17 @@ in rustPlatform.buildRustPackage { pname = "dmlive"; - version = "5.5.8-unstable-2025-04-06"; + version = "5.6.0-unstable-2025-06-21"; src = fetchFromGitHub { owner = "THMonster"; repo = "dmlive"; - rev = "b066a637093871de9962e08d4f0ae0b77bd8f1f4"; # no tag - hash = "sha256-pAsxr6zGCDZ0qysGT1+2+5+WKI2QopGxnZWpfnxk/fI="; + rev = "485eae06737530360c0e6f6415c62791767d595b"; # no tag + hash = "sha256-0JjPZPtAtbxdh0HDycWHEonZggBcoqv5SJUnhKzXNIk="; }; useFetchCargoVendor = true; - cargoHash = "sha256-GVko8GK5Muha4uqDMgk7VkFoFCVcmk0vM1GUELvSzgM="; + cargoHash = "sha256-B1v9m4Nn5wXMbNBlh7+A8zBejJ0tHdqvSXVpRz+wC5g="; nativeBuildInputs = [ pkg-config diff --git a/pkgs/by-name/du/duplicati/package.nix b/pkgs/by-name/du/duplicati/package.nix index aaef3d602b0d..803bada022dd 100644 --- a/pkgs/by-name/du/duplicati/package.nix +++ b/pkgs/by-name/du/duplicati/package.nix @@ -2,44 +2,70 @@ lib, stdenv, fetchzip, - mono, - sqlite, - makeWrapper, + autoPatchelfHook, + gcc-unwrapped, + zlib, + lttng-ust_2_12, + icu, + openssl, + makeBinaryWrapper, }: +let + _supportedPlatforms = { + "armv7l-linux" = "linux-arm7"; + "x86_64-linux" = "linux-x64"; + "aarch64-linux" = "linux-arm64"; + }; + _platform = _supportedPlatforms."${stdenv.hostPlatform.system}"; + # nix hash convert --to sri "sha256:`nix-prefetch-url --unpack https://updates.duplicati.com/stable/duplicati-2.1.0.5_stable_2025-03-04-linux-arm64-cli.zip`" + _fileHashForSystem = { + "armv7l-linux" = "sha256-FQQ07M0rwvxNkHPW6iK5WBTKgFrZ4LOP4vgINfmtq4k="; + "x86_64-linux" = "sha256-1QspF/A3hOtqd8bVbSqClJIHUN9gBrd18J5qvZJLkQE="; + "aarch64-linux" = "sha256-mSNInaCkNf1MBZK2M42SjJnYRtB5SyGMvSGSn5oH1Cs="; + }; +in stdenv.mkDerivation (finalAttrs: { + # TODO build duplicati from source https://github.com/duplicati/duplicati/blob/master/.github/workflows/build-packages.yml pname = "duplicati"; - version = "2.1.0.2"; - channel = "beta"; - build_date = "2024-11-29"; + version = "2.1.0.5"; + channel = "stable"; + buildDate = "2025-03-04"; src = fetchzip { url = with finalAttrs; - "https://github.com/duplicati/duplicati/releases/download/v${version}-${version}_${channel}_${build_date}/duplicati-${version}_${channel}_${build_date}.zip"; - hash = "sha256-LmW6yGutxP33ghFqyOLKrGDNCQdr8DDFn/IHigsLpzA="; - stripRoot = false; + "https://updates.duplicati.com/stable/duplicati-${version}_${channel}_${buildDate}-${_platform}-cli.zip"; + hash = _fileHashForSystem."${stdenv.hostPlatform.system}"; + stripRoot = true; }; - nativeBuildInputs = [ makeWrapper ]; + nativeBuildInputs = [ + autoPatchelfHook + makeBinaryWrapper + ]; + buildInputs = [ + gcc-unwrapped + zlib + lttng-ust_2_12 + ]; installPhase = '' - mkdir -p $out/{bin,share/duplicati-${finalAttrs.version}} - cp -r * $out/share/duplicati-${finalAttrs.version} - makeWrapper "${lib.getExe mono}" $out/bin/duplicati-cli \ - --add-flags "$out/share/duplicati-${finalAttrs.version}/Duplicati.CommandLine.exe" \ + runHook preInstall + + mkdir -p $out/{bin,share} + cp -r * "$out/share/" + for file in $out/share/duplicati-*; do + makeBinaryWrapper "$file" "$out/bin/$(basename $file)" \ --prefix LD_LIBRARY_PATH : ${ lib.makeLibraryPath [ - sqlite - ] - } - makeWrapper "${lib.getExe mono}" $out/bin/duplicati-server \ - --add-flags "$out/share/duplicati-${finalAttrs.version}/Duplicati.Server.exe" \ - --prefix LD_LIBRARY_PATH : ${ - lib.makeLibraryPath [ - sqlite + icu + openssl ] } + done + + runHook postInstall ''; meta = { @@ -51,6 +77,6 @@ stdenv.mkDerivation (finalAttrs: { bot-wxt1221 ]; sourceProvenance = with lib.sourceTypes; [ binaryBytecode ]; - platforms = lib.platforms.all; + platforms = builtins.attrNames _supportedPlatforms; }; }) diff --git a/pkgs/by-name/ea/easytier/package.nix b/pkgs/by-name/ea/easytier/package.nix index dd0d55fad1f9..62c0422bd422 100644 --- a/pkgs/by-name/ea/easytier/package.nix +++ b/pkgs/by-name/ea/easytier/package.nix @@ -4,6 +4,7 @@ fetchFromGitHub, rustPlatform, protobuf, + nixosTests, nix-update-script, withQuic ? false, # with QUIC protocol support }: @@ -33,7 +34,10 @@ rustPlatform.buildRustPackage rec { doCheck = false; # tests failed due to heavy rely on network - passthru.updateScript = nix-update-script { }; + passthru = { + tests = { inherit (nixosTests) easytier; }; + updateScript = nix-update-script { }; + }; meta = { homepage = "https://github.com/EasyTier/EasyTier"; diff --git a/pkgs/by-name/el/elfutils/cxx-header-collision.patch b/pkgs/by-name/el/elfutils/cxx-header-collision.patch deleted file mode 100644 index 3e123b1a62ba..000000000000 --- a/pkgs/by-name/el/elfutils/cxx-header-collision.patch +++ /dev/null @@ -1,338 +0,0 @@ -From: Tristan Ross -Date: Wed, 31 Jul 2024 04:03:03 +0000 (-0700) -Subject: Prevent binaries in src from colliding with libc++ headers -X-Git-Url: https://sourceware.org/git/?p=elfutils.git;a=commitdiff_plain;h=232b9ede92cbecabbd61291c2fc9aaf3fc61061f;hp=87a60d22299c4ba7b94cbce04a32c2abf015f98a - -Prevent binaries in src from colliding with libc++ headers - -Discovered with Nix and LLVM 17. Headers inside of libc++ can easily -collide with binaries being linked in src. This results in clang trying -to include a binary as a header. - -Fix this by removing '-I.' and '-I$(srcdir)' from AM_CPPFLAGS and -DEFAULT_INCLUDES in src/Makefile.am. - -To facilitate this config/eu.am has been refactored. New file -config/eu-common.am contains all of the old eu.am but with the -AM_CPPFLAGS definition removed. eu.am now includes eu-common.am and -contains the old AM_CPPFLAGS definition. - -eu.am functionality does not change, but src/Makefile.am can instead -include eu-common.am and define its own AM_CPPFLAGS without causing a -"multiply defined" warning during autoreconf. - -Signed-off-by: Tristan Ross ---- - -diff --git a/config/eu-common.am b/config/eu-common.am -new file mode 100644 -index 00000000..9cc7f696 ---- /dev/null -+++ b/config/eu-common.am -@@ -0,0 +1,148 @@ -+## Common automake fragments for elfutils subdirectory makefiles. -+## -+## Copyright (C) 2010, 2014, 2016 Red Hat, Inc. -+## Copyright (C) 2023, Mark J. Wielaard -+## -+## This file is part of elfutils. -+## -+## This file is free software; you can redistribute it and/or modify -+## it under the terms of either -+## -+## * the GNU Lesser General Public License as published by the Free -+## Software Foundation; either version 3 of the License, or (at -+## your option) any later version -+## -+## or -+## -+## * the GNU General Public License as published by the Free -+## Software Foundation; either version 2 of the License, or (at -+## your option) any later version -+## -+## or both in parallel, as here. -+## -+## elfutils is distributed in the hope that it will be useful, but -+## WITHOUT ANY WARRANTY; without even the implied warranty of -+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+## General Public License for more details. -+## -+## You should have received copies of the GNU General Public License and -+## the GNU Lesser General Public License along with this program. If -+## not, see . -+## -+ -+DEFS = -D_GNU_SOURCE -DHAVE_CONFIG_H -DLOCALEDIR='"${localedir}"' -+ -+# Drop the 'u' flag that automake adds by default. It is incompatible -+# with deterministic archives. -+ARFLAGS = cr -+ -+# Warn about stack usage of more than 256K = 262144 bytes. -+if ADD_STACK_USAGE_WARNING -+STACK_USAGE_WARNING=-Wstack-usage=262144 -+STACK_USAGE_NO_ERROR=-Wno-error=stack-usage= -+else -+STACK_USAGE_WARNING= -+STACK_USAGE_NO_ERROR= -+endif -+ -+if SANE_LOGICAL_OP_WARNING -+LOGICAL_OP_WARNING=-Wlogical-op -+else -+LOGICAL_OP_WARNING= -+endif -+ -+if HAVE_DUPLICATED_COND_WARNING -+DUPLICATED_COND_WARNING=-Wduplicated-cond -+else -+DUPLICATED_COND_WARNING= -+endif -+ -+if HAVE_NULL_DEREFERENCE_WARNING -+NULL_DEREFERENCE_WARNING=-Wnull-dereference -+else -+NULL_DEREFERENCE_WARNING= -+endif -+ -+if HAVE_IMPLICIT_FALLTHROUGH_WARNING -+# Use strict fallthrough. Only __attribute__((fallthrough)) will prevent the -+# warning -+if HAVE_IMPLICIT_FALLTHROUGH_5_WARNING -+IMPLICIT_FALLTHROUGH_WARNING=-Wimplicit-fallthrough=5 -+else -+IMPLICIT_FALLTHROUGH_WARNING=-Wimplicit-fallthrough -+endif -+else -+IMPLICIT_FALLTHROUGH_WARNING= -+endif -+ -+if HAVE_TRAMPOLINES_WARNING -+TRAMPOLINES_WARNING=-Wtrampolines -+else -+TRAMPOLINES_WARNING= -+endif -+ -+if HAVE_NO_PACKED_NOT_ALIGNED_WARNING -+NO_PACKED_NOT_ALIGNED_WARNING=-Wno-packed-not-aligned -+else -+NO_PACKED_NOT_ALIGNED_WARNING= -+endif -+ -+if HAVE_USE_AFTER_FREE3_WARNING -+USE_AFTER_FREE3_WARNING=-Wuse-after-free=3 -+else -+USE_AFTER_FREE3_WARNING= -+endif -+ -+AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \ -+ -Wold-style-definition -Wstrict-prototypes $(TRAMPOLINES_WARNING) \ -+ $(LOGICAL_OP_WARNING) $(DUPLICATED_COND_WARNING) \ -+ $(NULL_DEREFERENCE_WARNING) $(IMPLICIT_FALLTHROUGH_WARNING) \ -+ $(USE_AFTER_FREE3_WARNING) \ -+ $(if $($(*F)_no_Werror),,-Werror) \ -+ $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \ -+ $(if $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \ -+ $(if $($(*F)_no_Wpacked_not_aligned),$(NO_PACKED_NOT_ALIGNED_WARNING),) \ -+ $($(*F)_CFLAGS) -+ -+AM_CXXFLAGS = -std=c++11 -Wall -Wshadow \ -+ $(TRAMPOLINES_WARNING) \ -+ $(LOGICAL_OP_WARNING) $(DUPLICATED_COND_WARNING) \ -+ $(NULL_DEREFERENCE_WARNING) $(IMPLICIT_FALLTHROUGH_WARNING) \ -+ $(if $($(*F)_no_Werror),,-Werror) \ -+ $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \ -+ $(if $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \ -+ $(if $($(*F)_no_Wpacked_not_aligned),$(NO_PACKED_NOT_ALIGNED_WARNING),) \ -+ $($(*F)_CXXFLAGS) -+ -+COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) -+ -+DEFS.os = -DPIC -DSHARED -+if SYMBOL_VERSIONING -+DEFS.os += -DSYMBOL_VERSIONING -+else -+endif -+ -+%.os: %.c %.o -+if AMDEP -+ $(AM_V_CC)if $(COMPILE.os) -c -o $@ $(fpic_CFLAGS) $(DEFS.os) -MT $@ -MD -MP \ -+ -MF "$(DEPDIR)/$*.Tpo" `test -f '$<' || echo '$(srcdir)/'`$<; \ -+ then cat "$(DEPDIR)/$*.Tpo" >> "$(DEPDIR)/$*.Po"; \ -+ rm -f "$(DEPDIR)/$*.Tpo"; \ -+ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \ -+ fi -+else -+ $(AM_V_CC)$(COMPILE.os) -c -o $@ $(fpic_CFLAGS) $(DEFS.os) $< -+endif -+ -+CLEANFILES = *.gcno *.gcda -+ -+textrel_msg = echo "WARNING: TEXTREL found in '$@'" -+if FATAL_TEXTREL -+textrel_found = $(textrel_msg); exit 1 -+else -+textrel_found = $(textrel_msg) -+endif -+textrel_check = if $(READELF) -d $@ | grep -F -q TEXTREL; then $(textrel_found); fi -+ -+print-%: -+ @echo $*=$($*) -diff --git a/config/eu.am b/config/eu.am -index 0b7dab5b..3aa6048a 100644 ---- a/config/eu.am -+++ b/config/eu.am -@@ -1,4 +1,5 @@ --## Common automake fragments for elfutils subdirectory makefiles. -+## Common automake fragments for elfutils subdirectory makefiles -+## with AM_CPPFLAGS set. - ## - ## Copyright (C) 2010, 2014, 2016 Red Hat, Inc. - ## Copyright (C) 2023, Mark J. Wielaard -@@ -30,120 +31,5 @@ - ## not, see . - ## - --DEFS = -D_GNU_SOURCE -DHAVE_CONFIG_H -DLOCALEDIR='"${localedir}"' --AM_CPPFLAGS = -iquote . -I$(srcdir) -I$(top_srcdir)/lib -I.. -- --# Drop the 'u' flag that automake adds by default. It is incompatible --# with deterministic archives. --ARFLAGS = cr -- --# Warn about stack usage of more than 256K = 262144 bytes. --if ADD_STACK_USAGE_WARNING --STACK_USAGE_WARNING=-Wstack-usage=262144 --STACK_USAGE_NO_ERROR=-Wno-error=stack-usage= --else --STACK_USAGE_WARNING= --STACK_USAGE_NO_ERROR= --endif -- --if SANE_LOGICAL_OP_WARNING --LOGICAL_OP_WARNING=-Wlogical-op --else --LOGICAL_OP_WARNING= --endif -- --if HAVE_DUPLICATED_COND_WARNING --DUPLICATED_COND_WARNING=-Wduplicated-cond --else --DUPLICATED_COND_WARNING= --endif -- --if HAVE_NULL_DEREFERENCE_WARNING --NULL_DEREFERENCE_WARNING=-Wnull-dereference --else --NULL_DEREFERENCE_WARNING= --endif -- --if HAVE_IMPLICIT_FALLTHROUGH_WARNING --# Use strict fallthrough. Only __attribute__((fallthrough)) will prevent the --# warning --if HAVE_IMPLICIT_FALLTHROUGH_5_WARNING --IMPLICIT_FALLTHROUGH_WARNING=-Wimplicit-fallthrough=5 --else --IMPLICIT_FALLTHROUGH_WARNING=-Wimplicit-fallthrough --endif --else --IMPLICIT_FALLTHROUGH_WARNING= --endif -- --if HAVE_TRAMPOLINES_WARNING --TRAMPOLINES_WARNING=-Wtrampolines --else --TRAMPOLINES_WARNING= --endif -- --if HAVE_NO_PACKED_NOT_ALIGNED_WARNING --NO_PACKED_NOT_ALIGNED_WARNING=-Wno-packed-not-aligned --else --NO_PACKED_NOT_ALIGNED_WARNING= --endif -- --if HAVE_USE_AFTER_FREE3_WARNING --USE_AFTER_FREE3_WARNING=-Wuse-after-free=3 --else --USE_AFTER_FREE3_WARNING= --endif -- --AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \ -- -Wold-style-definition -Wstrict-prototypes $(TRAMPOLINES_WARNING) \ -- $(LOGICAL_OP_WARNING) $(DUPLICATED_COND_WARNING) \ -- $(NULL_DEREFERENCE_WARNING) $(IMPLICIT_FALLTHROUGH_WARNING) \ -- $(USE_AFTER_FREE3_WARNING) \ -- $(if $($(*F)_no_Werror),,-Werror) \ -- $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \ -- $(if $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \ -- $(if $($(*F)_no_Wpacked_not_aligned),$(NO_PACKED_NOT_ALIGNED_WARNING),) \ -- $($(*F)_CFLAGS) -- --AM_CXXFLAGS = -std=c++11 -Wall -Wshadow \ -- $(TRAMPOLINES_WARNING) \ -- $(LOGICAL_OP_WARNING) $(DUPLICATED_COND_WARNING) \ -- $(NULL_DEREFERENCE_WARNING) $(IMPLICIT_FALLTHROUGH_WARNING) \ -- $(if $($(*F)_no_Werror),,-Werror) \ -- $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \ -- $(if $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \ -- $(if $($(*F)_no_Wpacked_not_aligned),$(NO_PACKED_NOT_ALIGNED_WARNING),) \ -- $($(*F)_CXXFLAGS) -- --COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) -- --DEFS.os = -DPIC -DSHARED --if SYMBOL_VERSIONING --DEFS.os += -DSYMBOL_VERSIONING --else --endif -- --%.os: %.c %.o --if AMDEP -- $(AM_V_CC)if $(COMPILE.os) -c -o $@ $(fpic_CFLAGS) $(DEFS.os) -MT $@ -MD -MP \ -- -MF "$(DEPDIR)/$*.Tpo" `test -f '$<' || echo '$(srcdir)/'`$<; \ -- then cat "$(DEPDIR)/$*.Tpo" >> "$(DEPDIR)/$*.Po"; \ -- rm -f "$(DEPDIR)/$*.Tpo"; \ -- else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \ -- fi --else -- $(AM_V_CC)$(COMPILE.os) -c -o $@ $(fpic_CFLAGS) $(DEFS.os) $< --endif -- --CLEANFILES = *.gcno *.gcda -- --textrel_msg = echo "WARNING: TEXTREL found in '$@'" --if FATAL_TEXTREL --textrel_found = $(textrel_msg); exit 1 --else --textrel_found = $(textrel_msg) --endif --textrel_check = if $(READELF) -d $@ | grep -F -q TEXTREL; then $(textrel_found); fi -- --print-%: -- @echo $*=$($*) -+AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. -+include $(top_srcdir)/config/eu-common.am -diff --git a/src/Makefile.am b/src/Makefile.am -index 97a0c61a..5bb8c078 100644 ---- a/src/Makefile.am -+++ b/src/Makefile.am -@@ -16,14 +16,15 @@ - ## You should have received a copy of the GNU General Public License - ## along with this program. If not, see . - ## --include $(top_srcdir)/config/eu.am -+include $(top_srcdir)/config/eu-common.am - DEFS += $(YYDEBUG) -DDEBUGPRED=@DEBUGPRED@ \ - -DSRCDIR=\"$(shell cd $(srcdir);pwd)\" -DOBJDIR=\"$(shell pwd)\" - --DEFAULT_INCLUDES = --AM_CPPFLAGS += -I$(srcdir)/../libelf -I$(srcdir)/../libebl \ -- -I$(srcdir)/../libdw -I$(srcdir)/../libdwelf \ -- -I$(srcdir)/../libdwfl -I$(srcdir)/../libasm -I../debuginfod -+DEFAULT_INCLUDES = -I$(top_builddir) -+AM_CPPFLAGS = -I$(top_srcdir)/lib -I.. \ -+ -I$(srcdir)/../libelf -I$(srcdir)/../libebl \ -+ -I$(srcdir)/../libdw -I$(srcdir)/../libdwelf \ -+ -I$(srcdir)/../libdwfl -I$(srcdir)/../libasm -I../debuginfod - - AM_LDFLAGS = -Wl,-rpath-link,../libelf:../libdw $(STACK_USAGE_NO_ERROR) diff --git a/pkgs/by-name/el/elfutils/package.nix b/pkgs/by-name/el/elfutils/package.nix index 84c713cf7cfa..25ddfb23fce8 100644 --- a/pkgs/by-name/el/elfutils/package.nix +++ b/pkgs/by-name/el/elfutils/package.nix @@ -23,7 +23,6 @@ libmicrohttpd, libarchive, gitUpdater, - autoreconfHook, }: # TODO: Look at the hardcoded paths to kernel, modules etc. @@ -36,34 +35,29 @@ stdenv.mkDerivation rec { hash = "sha256-eFf0S2JPTY1CHfhRqq57FALP5rzdLYBJ8V/AfT3edjU="; }; - patches = - [ - ./debug-info-from-env.patch - (fetchpatch { - name = "fix-aarch64_fregs.patch"; - url = "https://git.alpinelinux.org/aports/plain/main/elfutils/fix-aarch64_fregs.patch?id=2e3d4976eeffb4704cf83e2cc3306293b7c7b2e9"; - sha256 = "zvncoRkQx3AwPx52ehjA2vcFroF+yDC2MQR5uS6DATs="; - }) - (fetchpatch { - name = "musl-asm-ptrace-h.patch"; - url = "https://git.alpinelinux.org/aports/plain/main/elfutils/musl-asm-ptrace-h.patch?id=2e3d4976eeffb4704cf83e2cc3306293b7c7b2e9"; - sha256 = "8D1wPcdgAkE/TNBOgsHaeTZYhd9l+9TrZg8d5C7kG6k="; - }) - (fetchpatch { - name = "musl-macros.patch"; - url = "https://git.alpinelinux.org/aports/plain/main/elfutils/musl-macros.patch?id=2e3d4976eeffb4704cf83e2cc3306293b7c7b2e9"; - sha256 = "tp6O1TRsTAMsFe8vw3LMENT/vAu6OmyA8+pzgThHeA8="; - }) - (fetchpatch { - name = "musl-strndupa.patch"; - url = "https://git.alpinelinux.org/aports/plain/main/elfutils/musl-strndupa.patch?id=2e3d4976eeffb4704cf83e2cc3306293b7c7b2e9"; - sha256 = "sha256-7daehJj1t0wPtQzTv+/Rpuqqs5Ng/EYnZzrcf2o/Lb0="; - }) - ] - ++ lib.optionals stdenv.hostPlatform.isMusl [ ./musl-error_h.patch ] - # Prevent headers and binaries from colliding which results in an error. - # https://sourceware.org/pipermail/elfutils-devel/2024q3/007281.html - ++ lib.optional (stdenv.targetPlatform.useLLVM or false) ./cxx-header-collision.patch; + patches = [ + ./debug-info-from-env.patch + (fetchpatch { + name = "fix-aarch64_fregs.patch"; + url = "https://git.alpinelinux.org/aports/plain/main/elfutils/fix-aarch64_fregs.patch?id=2e3d4976eeffb4704cf83e2cc3306293b7c7b2e9"; + sha256 = "zvncoRkQx3AwPx52ehjA2vcFroF+yDC2MQR5uS6DATs="; + }) + (fetchpatch { + name = "musl-asm-ptrace-h.patch"; + url = "https://git.alpinelinux.org/aports/plain/main/elfutils/musl-asm-ptrace-h.patch?id=2e3d4976eeffb4704cf83e2cc3306293b7c7b2e9"; + sha256 = "8D1wPcdgAkE/TNBOgsHaeTZYhd9l+9TrZg8d5C7kG6k="; + }) + (fetchpatch { + name = "musl-macros.patch"; + url = "https://git.alpinelinux.org/aports/plain/main/elfutils/musl-macros.patch?id=2e3d4976eeffb4704cf83e2cc3306293b7c7b2e9"; + sha256 = "tp6O1TRsTAMsFe8vw3LMENT/vAu6OmyA8+pzgThHeA8="; + }) + (fetchpatch { + name = "musl-strndupa.patch"; + url = "https://git.alpinelinux.org/aports/plain/main/elfutils/musl-strndupa.patch?id=2e3d4976eeffb4704cf83e2cc3306293b7c7b2e9"; + sha256 = "sha256-7daehJj1t0wPtQzTv+/Rpuqqs5Ng/EYnZzrcf2o/Lb0="; + }) + ] ++ lib.optionals stdenv.hostPlatform.isMusl [ ./musl-error_h.patch ]; postPatch = '' @@ -85,16 +79,13 @@ stdenv.mkDerivation rec { # We need bzip2 in NativeInputs because otherwise we can't unpack the src, # as the host-bzip2 will be in the path. - nativeBuildInputs = - [ - m4 - bison - flex - gettext - bzip2 - ] - ++ lib.optional enableDebuginfod pkg-config - ++ lib.optional (stdenv.targetPlatform.useLLVM or false) autoreconfHook; + nativeBuildInputs = [ + m4 + bison + flex + gettext + bzip2 + ] ++ lib.optional enableDebuginfod pkg-config; buildInputs = [ zlib @@ -119,22 +110,28 @@ stdenv.mkDerivation rec { hardeningDisable = [ "strictflexarrays3" ]; - configureFlags = - [ - "--program-prefix=eu-" # prevent collisions with binutils - "--enable-deterministic-archives" - (lib.enableFeature enableDebuginfod "libdebuginfod") - (lib.enableFeature enableDebuginfod "debuginfod") + # build elfutils out-of-source-tree to avoid ./stack inclusion + # as a c++ header on libc++: https://sourceware.org/PR33103 + preConfigure = + if (stdenv.targetPlatform.useLLVM or false) then + '' + mkdir build-tree + cd build-tree + '' + else + null; + configureScript = if (stdenv.targetPlatform.useLLVM or false) then "../configure" else null; - # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101766 - # Versioned symbols are nice to have, but we can do without. - (lib.enableFeature (!stdenv.hostPlatform.isMicroBlaze) "symbol-versioning") - ] - ++ lib.optional (stdenv.targetPlatform.useLLVM or false) "--disable-demangler" - ++ lib.optionals stdenv.cc.isClang [ - "CFLAGS=-Wno-unused-private-field" - "CXXFLAGS=-Wno-unused-private-field" - ]; + configureFlags = [ + "--program-prefix=eu-" # prevent collisions with binutils + "--enable-deterministic-archives" + (lib.enableFeature enableDebuginfod "libdebuginfod") + (lib.enableFeature enableDebuginfod "debuginfod") + + # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101766 + # Versioned symbols are nice to have, but we can do without. + (lib.enableFeature (!stdenv.hostPlatform.isMicroBlaze) "symbol-versioning") + ] ++ lib.optional (stdenv.targetPlatform.useLLVM or false) "--disable-demangler"; enableParallelBuilding = true; diff --git a/pkgs/by-name/ep/epiphany/package.nix b/pkgs/by-name/ep/epiphany/package.nix index 6ac61bc3b2f5..f837c1c53e70 100644 --- a/pkgs/by-name/ep/epiphany/package.nix +++ b/pkgs/by-name/ep/epiphany/package.nix @@ -5,7 +5,6 @@ ninja, gettext, fetchurl, - fetchpatch, pkg-config, gtk4, glib, @@ -38,29 +37,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "epiphany"; - version = "48.3"; + version = "48.5"; src = fetchurl { url = "mirror://gnome/sources/epiphany/${lib.versions.major finalAttrs.version}/epiphany-${finalAttrs.version}.tar.xz"; - hash = "sha256-2ilT5+K3O/dHPAozl5EE15NieVKV6qCio46hiFN9rxM="; + hash = "sha256-D2ZVKtZZPHlSo93uW/UVZWyMQ0hxB22fGpGnr5NGsbQ="; }; - patches = [ - # shell: Fix startup crash on Pantheon - # https://gitlab.gnome.org/GNOME/epiphany/-/merge_requests/1818 - (fetchpatch { - url = "https://gitlab.gnome.org/GNOME/epiphany/-/commit/da4437beb7f1fbc9c2fa3d4629b8c826d484835e.patch"; - hash = "sha256-meufd5gnhLcK0dgIXEMDnid9e1R2M1D3jZ9Yoh6YobM="; - }) - - # action-bar-end: Fix startup crash on Pantheon - # https://gitlab.gnome.org/GNOME/epiphany/-/merge_requests/1819 - (fetchpatch { - url = "https://gitlab.gnome.org/GNOME/epiphany/-/commit/d69866854b315123c8832fae58c6de008da20ea0.patch"; - hash = "sha256-GnZQC4rtBYRr+x9mF8pCFDcDOjEJj+27ECdXBNL42kQ="; - }) - ]; - nativeBuildInputs = [ desktop-file-utils gettext diff --git a/pkgs/by-name/ev/evolution-ews/hardcode-gsettings.patch b/pkgs/by-name/ev/evolution-ews/hardcode-gsettings.patch index e2babb6a3209..e0a4ca04420e 100644 --- a/pkgs/by-name/ev/evolution-ews/hardcode-gsettings.patch +++ b/pkgs/by-name/ev/evolution-ews/hardcode-gsettings.patch @@ -1,5 +1,5 @@ diff --git a/src/EWS/camel/camel-ews-utils.c b/src/EWS/camel/camel-ews-utils.c -index 32817df..da65217 100644 +index 32817df..c8b3f2e 100644 --- a/src/EWS/camel/camel-ews-utils.c +++ b/src/EWS/camel/camel-ews-utils.c @@ -1550,7 +1550,7 @@ ews_utils_save_category_changes (GHashTable *old_categories, /* gchar *guid ~> C @@ -32,7 +32,7 @@ index 32817df..da65217 100644 for (ii = 0; strv && strv[ii]; ii++) { diff --git a/src/Microsoft365/camel/camel-m365-store.c b/src/Microsoft365/camel/camel-m365-store.c -index 7374c36..7da2023 100644 +index 7374c36..dbf9099 100644 --- a/src/Microsoft365/camel/camel-m365-store.c +++ b/src/Microsoft365/camel/camel-m365-store.c @@ -305,7 +305,7 @@ m365_store_save_category_changes (GHashTable *old_categories, /* gchar *id ~> Ca @@ -65,7 +65,7 @@ index 7374c36..7da2023 100644 for (ii = 0; strv && strv[ii]; ii++) { diff --git a/src/Microsoft365/common/e-m365-tz-utils.c b/src/Microsoft365/common/e-m365-tz-utils.c -index cec5417..2e744a0 100644 +index cec5417..38f1a87 100644 --- a/src/Microsoft365/common/e-m365-tz-utils.c +++ b/src/Microsoft365/common/e-m365-tz-utils.c @@ -192,10 +192,21 @@ e_m365_tz_utils_get_user_timezone (void) @@ -93,7 +93,7 @@ index cec5417..2e744a0 100644 if (g_settings_get_boolean (settings, "use-system-timezone")) location = e_cal_util_get_system_timezone_location (); diff --git a/src/common/e-ews-common-utils.c b/src/common/e-ews-common-utils.c -index 3458c10..7d21784 100644 +index f388e3b..ed57213 100644 --- a/src/common/e-ews-common-utils.c +++ b/src/common/e-ews-common-utils.c @@ -208,10 +208,21 @@ e_ews_common_utils_get_configured_icaltimezone (void) diff --git a/pkgs/by-name/ev/evolution-ews/package.nix b/pkgs/by-name/ev/evolution-ews/package.nix index 9b4a5d7d3e3c..30cc9b084997 100644 --- a/pkgs/by-name/ev/evolution-ews/package.nix +++ b/pkgs/by-name/ev/evolution-ews/package.nix @@ -23,11 +23,11 @@ stdenv.mkDerivation rec { pname = "evolution-ews"; - version = "3.56.1"; + version = "3.56.2"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - hash = "sha256-DgC2qxV9j+r7T1HXchusP2IfI4f1WrS7PEPRN0KFrWs="; + hash = "sha256-Hrfsz5TGuGGNa0XDICNQIJ21Z8SJEIrcICM8TRn48o8="; }; patches = [ diff --git a/pkgs/by-name/fa/fasmg/package.nix b/pkgs/by-name/fa/fasmg/package.nix index f12836e2f42f..6c6d7e2e4dc6 100644 --- a/pkgs/by-name/fa/fasmg/package.nix +++ b/pkgs/by-name/fa/fasmg/package.nix @@ -14,11 +14,11 @@ stdenv.mkDerivation rec { pname = "fasmg"; - version = "kp60"; + version = "ktge"; src = fetchzip { url = "https://flatassembler.net/fasmg.${version}.zip"; - sha256 = "sha256-gOkAVi3hoHer7Buzu6O8Y66cXVys6CI+tqwEPtTOO9U="; + sha256 = "sha256-z/2SeN6FgRvLg8hA+lle/f2qEkce1GF1cC0uSnXExhg="; stripRoot = false; }; diff --git a/pkgs/by-name/fa/fastnlo-toolkit/package.nix b/pkgs/by-name/fa/fastnlo-toolkit/package.nix index 77c605f5d363..aa5e76c036d3 100644 --- a/pkgs/by-name/fa/fastnlo-toolkit/package.nix +++ b/pkgs/by-name/fa/fastnlo-toolkit/package.nix @@ -105,5 +105,6 @@ stdenv.mkDerivation rec { license = licenses.gpl3Plus; maintainers = with maintainers; [ veprbl ]; platforms = platforms.unix; + broken = stdenv.hostPlatform.isDarwin; }; } diff --git a/pkgs/by-name/ff/fflogs/package.nix b/pkgs/by-name/ff/fflogs/package.nix index ef2bc6a7c4b6..56eb881306cb 100644 --- a/pkgs/by-name/ff/fflogs/package.nix +++ b/pkgs/by-name/ff/fflogs/package.nix @@ -6,10 +6,10 @@ let pname = "fflogs"; - version = "8.17.13"; + version = "8.17.18"; src = fetchurl { url = "https://github.com/RPGLogs/Uploaders-fflogs/releases/download/v${version}/fflogs-v${version}.AppImage"; - hash = "sha256-mCHycRks9HXWhHOA/LbhjPCRjEuyGklgBuvY7e+KXnc="; + hash = "sha256-FP6vGezki4BViwLuKisxnCDaOUwFVQB2hag92lrwRyk="; }; extracted = appimageTools.extractType2 { inherit pname version src; }; in diff --git a/pkgs/by-name/fl/flyctl/package.nix b/pkgs/by-name/fl/flyctl/package.nix index 2b029b290541..52fbfab29283 100644 --- a/pkgs/by-name/fl/flyctl/package.nix +++ b/pkgs/by-name/fl/flyctl/package.nix @@ -9,16 +9,16 @@ buildGoModule rec { pname = "flyctl"; - version = "0.3.144"; + version = "0.3.145"; src = fetchFromGitHub { owner = "superfly"; repo = "flyctl"; rev = "v${version}"; - hash = "sha256-Uk6XeqdNXDs9H1Dzxy2uiF1ulIPoOxtZSoe2XU/6f0Q="; + hash = "sha256-fMBKuIzycuBMtkaGZPJmfRhYntER+yFzAA6mTCLuhws="; }; - vendorHash = "sha256-GWEEhn2O6Wxrd3y7w4h8Qz8/4GA1z++QsrOi9r58Rg8="; + vendorHash = "sha256-G+RT2teg1+AoLJRjYKnQtVcGH3sbtrxhklQfGMIod+0="; subPackages = [ "." ]; diff --git a/pkgs/by-name/fo/forgejo-runner/package.nix b/pkgs/by-name/fo/forgejo-runner/package.nix index 8591abe8621c..6648a723b7e5 100644 --- a/pkgs/by-name/fo/forgejo-runner/package.nix +++ b/pkgs/by-name/fo/forgejo-runner/package.nix @@ -17,17 +17,17 @@ let in buildGoModule rec { pname = "forgejo-runner"; - version = "6.3.1"; + version = "6.4.0"; src = fetchFromGitea { domain = "code.forgejo.org"; owner = "forgejo"; repo = "runner"; rev = "v${version}"; - hash = "sha256-eR7WsdnA9guEf/BXymWuJTy+4TTBUq9YxeFVKgvvAD8="; + hash = "sha256-fEsT82h33XIBXyvcIYNsieQiV45jLnxLpFP5ji9pNlg="; }; - vendorHash = "sha256-ZlXx0B2IdyeqPzQchmUI0peOZShUi0m9BMBQ1Xj2ftQ="; + vendorHash = "sha256-KV8KYOjy3WO+yfVWEFwKZVAesmx4tFk/k/sTLDKk9lo="; ldflags = [ "-s" diff --git a/pkgs/by-name/fr/freecell-solver/package.nix b/pkgs/by-name/fr/freecell-solver/package.nix index 8479daf5888e..75b39358afb1 100644 --- a/pkgs/by-name/fr/freecell-solver/package.nix +++ b/pkgs/by-name/fr/freecell-solver/package.nix @@ -16,11 +16,11 @@ stdenv.mkDerivation (finalAttrs: { pname = "freecell-solver"; - version = "6.12.0"; + version = "6.14.0"; src = fetchurl { url = "https://fc-solve.shlomifish.org/downloads/fc-solve/freecell-solver-${finalAttrs.version}.tar.xz"; - hash = "sha256-oriegEzkuRjvdJAxZ2IQ8glf6jqMsSmAVgKEPHxIhKA="; + hash = "sha256-HREl2FQivNUhEC18sefIS3aGP+RF3SGHn5d53Gss59w="; }; outputs = [ diff --git a/pkgs/by-name/ga/gancio/plugin-telegram-bridge/default.nix b/pkgs/by-name/ga/gancio/plugin-telegram-bridge/default.nix index 989ad2354952..0efaabed05d7 100644 --- a/pkgs/by-name/ga/gancio/plugin-telegram-bridge/default.nix +++ b/pkgs/by-name/ga/gancio/plugin-telegram-bridge/default.nix @@ -11,14 +11,14 @@ stdenv.mkDerivation rec { pname = "gancio-plugin-telegram-bridge"; - version = "1.0.5"; + version = "1.0.6"; src = fetchFromGitLab { domain = "framagit.org"; owner = "bcn.convocala"; repo = "gancio-plugin-telegram-bridge"; rev = "v${version}"; - hash = "sha256-URiyV7bl8t25NlVJM/gEqPB67TZ4vQdfu4mvHITteSQ="; + hash = "sha256-J7FIfJjounrq/hPQk58mYXigjD7BZQWoE4aGi0eJ4sY="; }; # upstream doesn't provide a yarn.lock file diff --git a/pkgs/by-name/ge/gebaar-libinput/package.nix b/pkgs/by-name/ge/gebaar-libinput/package.nix index cba94577b938..1372c980a32d 100644 --- a/pkgs/by-name/ge/gebaar-libinput/package.nix +++ b/pkgs/by-name/ge/gebaar-libinput/package.nix @@ -45,7 +45,6 @@ stdenv.mkDerivation rec { license = licenses.gpl3; platforms = platforms.linux; maintainers = with maintainers; [ - colemickens lovesegfault ]; }; diff --git a/pkgs/by-name/gh/ghex/package.nix b/pkgs/by-name/gh/ghex/package.nix index 6522a6c75567..862c31e12173 100644 --- a/pkgs/by-name/gh/ghex/package.nix +++ b/pkgs/by-name/gh/ghex/package.nix @@ -8,7 +8,6 @@ ninja, gnome, desktop-file-utils, - appstream-glib, gettext, itstool, gtk4, @@ -22,7 +21,7 @@ stdenv.mkDerivation (finalAttrs: { pname = "ghex"; - version = "48.alpha"; + version = "48.beta2"; outputs = [ "out" @@ -32,7 +31,7 @@ stdenv.mkDerivation (finalAttrs: { src = fetchurl { url = "mirror://gnome/sources/ghex/${lib.versions.major finalAttrs.version}/ghex-${finalAttrs.version}.tar.xz"; - hash = "sha256-QP7kmZfZGhkmYmEXDEi7hy+zBupB+2WnIVBghow73+I="; + hash = "sha256-4vIgRVGNgWtG0wluCp075lTdggMBVGX8ck/okWrY70E="; }; nativeBuildInputs = [ @@ -55,11 +54,6 @@ stdenv.mkDerivation (finalAttrs: { glib ]; - nativeCheckInputs = [ - appstream-glib - desktop-file-utils - ]; - mesonFlags = [ "-Dgtk_doc=true" diff --git a/pkgs/by-name/gm/gmic/package.nix b/pkgs/by-name/gm/gmic/package.nix index 0428f87e21f1..06a04541628f 100644 --- a/pkgs/by-name/gm/gmic/package.nix +++ b/pkgs/by-name/gm/gmic/package.nix @@ -31,7 +31,7 @@ stdenv.mkDerivation (finalAttrs: { pname = "gmic"; - version = "3.5.4"; + version = "3.5.5"; outputs = [ "out" @@ -44,7 +44,7 @@ stdenv.mkDerivation (finalAttrs: { owner = "GreycLab"; repo = "gmic"; rev = "v.${finalAttrs.version}"; - hash = "sha256-WhhEBhwv2bBwsWPPMDIA2jhUzqcD6yJhHg1Eunu8y14="; + hash = "sha256-OPA0diWAtB8MCaw2DOyh89DVi7lQmyCsQ2gqfK7dGW8="; }; # TODO: build this from source diff --git a/pkgs/by-name/gn/gnome-commander/package.nix b/pkgs/by-name/gn/gnome-commander/package.nix index 5b03c4178e94..faab9a0cfadf 100644 --- a/pkgs/by-name/gn/gnome-commander/package.nix +++ b/pkgs/by-name/gn/gnome-commander/package.nix @@ -19,14 +19,14 @@ stdenv.mkDerivation (finalAttrs: { pname = "gnome-commander"; - version = "1.18.2"; + version = "1.18.3"; src = fetchFromGitLab { domain = "gitlab.gnome.org"; owner = "GNOME"; repo = "gnome-commander"; tag = finalAttrs.version; - hash = "sha256-dNZDlpvpN5hh/3YccZPJDEFkBLv9I8YOdFT/COp7+Uw="; + hash = "sha256-rSaj1Fg2seZKlzlERZZmz80kxJT1vZ+INiJlWfZ9m6g="; }; # hard-coded schema paths diff --git a/pkgs/by-name/gn/gnome-control-center/package.nix b/pkgs/by-name/gn/gnome-control-center/package.nix index 7bfeb7923797..1319042ba1cb 100644 --- a/pkgs/by-name/gn/gnome-control-center/package.nix +++ b/pkgs/by-name/gn/gnome-control-center/package.nix @@ -75,11 +75,11 @@ stdenv.mkDerivation (finalAttrs: { pname = "gnome-control-center"; - version = "48.2"; + version = "48.3"; src = fetchurl { url = "mirror://gnome/sources/gnome-control-center/${lib.versions.major finalAttrs.version}/gnome-control-center-${finalAttrs.version}.tar.xz"; - hash = "sha256-0uxKXifhkdkvmO1NvEqGHX8axKWiS2UktJKhIAfdRgw="; + hash = "sha256-wGmCRaZCC63Qd8Fv+yGIYORXzXMAYScY6r+aukciK64="; }; patches = [ diff --git a/pkgs/by-name/go/gojo/package.nix b/pkgs/by-name/go/gojo/package.nix index b675dabd5378..ed45af52f91b 100644 --- a/pkgs/by-name/go/gojo/package.nix +++ b/pkgs/by-name/go/gojo/package.nix @@ -8,16 +8,16 @@ buildGoModule (finalAttrs: { pname = "gojo"; - version = "0.3.2"; + version = "0.3.3"; src = fetchFromGitHub { owner = "itchyny"; repo = "gojo"; tag = "v${finalAttrs.version}"; - hash = "sha256-DMFTB5CgJTWf+P9ntgBgzdmcF2qjS9t3iUQ1Rer+Ab4="; + hash = "sha256-jHSvNxTnecusIIdyNvZsPVw34QKIm9kEvBUESG37PDY="; }; - vendorHash = "sha256-iVAPuc+83WZCs5WAAZIKEExDdwXQqswgso2XRVJB/bE="; + vendorHash = "sha256-XTrKbOXKxUjCC505ZVHbTaEvdxD4Zv0BFQhby3VwS4M="; nativeInstallCheckInputs = [ versionCheckHook diff --git a/pkgs/by-name/go/google-lighthouse/package.nix b/pkgs/by-name/go/google-lighthouse/package.nix index d9e23d7f7191..b20293e23aa8 100644 --- a/pkgs/by-name/go/google-lighthouse/package.nix +++ b/pkgs/by-name/go/google-lighthouse/package.nix @@ -12,18 +12,18 @@ }: stdenv.mkDerivation rec { pname = "google-lighthouse"; - version = "12.6.0"; + version = "12.7.0"; src = fetchFromGitHub { owner = "GoogleChrome"; repo = "lighthouse"; tag = "v${version}"; - hash = "sha256-XwCitOesSEfzp3N80MsRfJ4gNyX85GzXsYaFMawmsjI="; + hash = "sha256-5YSUbqjzgBTjBtZYLwiGFWdWD9aDZ9To8kBZd09Tzkw="; }; yarnOfflineCache = fetchYarnDeps { yarnLock = "${src}/yarn.lock"; - hash = "sha256-5c5xPlFglUDavUkRHxa691qSnKW39qqzv24woJshpTg="; + hash = "sha256-ySNsklPfhUm/RkXzAA2wlzx4jg61vL3zxlyhEBppMVE="; }; yarnBuildScript = "build-report"; diff --git a/pkgs/by-name/go/got/package.nix b/pkgs/by-name/go/got/package.nix index 5a78a0b44dcd..d523352a1759 100644 --- a/pkgs/by-name/go/got/package.nix +++ b/pkgs/by-name/go/got/package.nix @@ -25,11 +25,11 @@ stdenv.mkDerivation (finalAttrs: { pname = "got"; - version = "0.113"; + version = "0.115"; src = fetchurl { url = "https://gameoftrees.org/releases/portable/got-portable-${finalAttrs.version}.tar.gz"; - hash = "sha256-KUaKG5o1+iq6kygHWVvADQEKxUGSOQRo91oK02TFbwE="; + hash = "sha256-rfC8HMN0dH34+1Jbd3uPEtG/1uiTdSKBkilhssiJiec="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/gr/grafana-alloy/package.nix b/pkgs/by-name/gr/grafana-alloy/package.nix index c7847d1ed91f..878af99bd335 100644 --- a/pkgs/by-name/gr/grafana-alloy/package.nix +++ b/pkgs/by-name/gr/grafana-alloy/package.nix @@ -17,17 +17,17 @@ buildGoModule rec { pname = "grafana-alloy"; - version = "1.9.1"; + version = "1.9.2"; src = fetchFromGitHub { owner = "grafana"; repo = "alloy"; tag = "v${version}"; - hash = "sha256-j3zuV+a3hLgHrb1jcPav9AhQpT8WT/cP4KSZ9gJY0p4="; + hash = "sha256-ciM5DbP5OTvAPUNgBTuwb+hbVtKGgQzafLLOjDftPZQ="; }; proxyVendor = true; - vendorHash = "sha256-bePkYhKL8yNzVgX3Can9jyC1WKFQzHoX+L3qapZ0fjQ="; + vendorHash = "sha256-zmNrnCaUrsYJ0S5MQrj07sV+ZCnXbGQmH8Z0pMpJZk4="; nativeBuildInputs = [ fixup-yarn-lock diff --git a/pkgs/by-name/gu/guacamole-server/package.nix b/pkgs/by-name/gu/guacamole-server/package.nix index 9b4411f084e6..196924749629 100644 --- a/pkgs/by-name/gu/guacamole-server/package.nix +++ b/pkgs/by-name/gu/guacamole-server/package.nix @@ -28,18 +28,19 @@ stdenv.mkDerivation (finalAttrs: { pname = "guacamole-server"; - version = "1.6.0-unstable-2025-05-16"; + version = "1.6.0-unstable-2025-06-29"; src = fetchFromGitHub { owner = "apache"; repo = "guacamole-server"; - rev = "acb69735359d4d4a08f65d6eb0bde2a0da08f751"; - hash = "sha256-rqGSQD9EYlK1E6y/3EzynRmBWJOZBrC324zVvt7c2vM="; + rev = "f3f5b9d76649ccc24f551cb166c81078f4b5e236"; + hash = "sha256-OjTwAQzKUuXfwZXLsL9XjrJc/0be38CmAGG+CoCeNwk="; }; NIX_CFLAGS_COMPILE = [ "-Wno-error=format-truncation" "-Wno-error=format-overflow" + "-Wno-error=deprecated-declarations" ]; strictDeps = true; diff --git a/pkgs/by-name/hc/hcdiag/package.nix b/pkgs/by-name/hc/hcdiag/package.nix index c1ee998f14d8..a5b376f52ac2 100644 --- a/pkgs/by-name/hc/hcdiag/package.nix +++ b/pkgs/by-name/hc/hcdiag/package.nix @@ -8,13 +8,13 @@ buildGoModule rec { pname = "hcdiag"; - version = "0.5.7"; + version = "0.5.8"; src = fetchFromGitHub { owner = "hashicorp"; repo = "hcdiag"; tag = "v${version}"; - hash = "sha256-pX3v4HYzQLvzBADOMDrjgS3M+H4tnJOAkUHs32NxwEg="; + hash = "sha256-6qsp74wp8LCBgeQTn4Edms8kzpKx9O4soGRwIFUVIk4="; }; vendorHash = "sha256-ZuG++2bItCdnTcSaeBumIS2DqF+U6ZP7UTYM2DC+YGw="; diff --git a/pkgs/by-name/ho/hoppscotch/package.nix b/pkgs/by-name/ho/hoppscotch/package.nix index ecf415b0da8c..58261780e4ef 100644 --- a/pkgs/by-name/ho/hoppscotch/package.nix +++ b/pkgs/by-name/ho/hoppscotch/package.nix @@ -8,22 +8,22 @@ let pname = "hoppscotch"; - version = "25.5.3-0"; + version = "25.6.0-0"; src = fetchurl { aarch64-darwin = { url = "https://github.com/hoppscotch/releases/releases/download/v${version}/Hoppscotch_mac_aarch64.dmg"; - hash = "sha256-EhwTQ52xUCLSApV2vNo4AqnAznaDaSWDt339pmwJvYU="; + hash = "sha256-QeI8BmEJOdzi7eonsLtF4SQaah8LJS+cee5pBbWuHBI="; }; x86_64-darwin = { url = "https://github.com/hoppscotch/releases/releases/download/v${version}/Hoppscotch_mac_x64.dmg"; - hash = "sha256-A0Ss6JLcHaH5p7TQ67TVAAre+nt82hxVgZZgFvoBWzA="; + hash = "sha256-4CIU+aFo50E1uMWIR1dA6tNCY1qKiMHnBRkGK5x3Ljg="; }; x86_64-linux = { url = "https://github.com/hoppscotch/releases/releases/download/v${version}/Hoppscotch_linux_x64.AppImage"; - hash = "sha256-r+gi/vVkVY0QIqunnrDOk6k+Fa/6UOMMGxYdnj4SnIA="; + hash = "sha256-+jtDamZaRzBcfrRdlWBqqJlTYfOF0KpunuruBVuSS3Y="; }; } .${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}"); diff --git a/pkgs/by-name/hy/hyprshell/package.nix b/pkgs/by-name/hy/hyprshell/package.nix index 24c7bc6544d8..08494a72ef65 100644 --- a/pkgs/by-name/hy/hyprshell/package.nix +++ b/pkgs/by-name/hy/hyprshell/package.nix @@ -11,17 +11,17 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "hyprshell"; - version = "4.2.13"; + version = "4.5.0"; src = fetchFromGitHub { owner = "H3rmt"; repo = "hyprshell"; tag = "v${finalAttrs.version}"; - hash = "sha256-OgIeNlD2YcW5lWAQvqMvOphIxbIpGOL2WNQmtAGCsbQ="; + hash = "sha256-AfOG2MCHRp/p894mJhCRRGTLd+DpWKAp3Epf5dR7S/E="; }; useFetchCargoVendor = true; - cargoHash = "sha256-/f1AzpuzhVLeSbemgpXkh/ag33bsRMg3lrRPKVGOcK8="; + cargoHash = "sha256-+yjqbTPmfqXGJ85J2+Muhe2/mL1UyBi2XdafY9Mp+Os="; nativeBuildInputs = [ wrapGAppsHook4 diff --git a/pkgs/by-name/iw/iwd/no_netdev_group.diff b/pkgs/by-name/iw/iwd/no_netdev_group.diff new file mode 100644 index 000000000000..45c545f452e4 --- /dev/null +++ b/pkgs/by-name/iw/iwd/no_netdev_group.diff @@ -0,0 +1,30 @@ +diff --git a/src/iwd-dbus.conf b/src/iwd-dbus.conf +index f2509ebc..a443987d 100644 +--- a/src/iwd-dbus.conf ++++ b/src/iwd-dbus.conf +@@ -19,10 +19,6 @@ + + + +- +- +- +- + + + +diff --git a/wired/ead-dbus.conf b/wired/ead-dbus.conf +index 8a685e0a..749d0c05 100644 +--- a/wired/ead-dbus.conf ++++ b/wired/ead-dbus.conf +@@ -17,10 +17,6 @@ + + + +- +- +- +- + + + diff --git a/pkgs/by-name/iw/iwd/package.nix b/pkgs/by-name/iw/iwd/package.nix index daf2372f6015..11c1522c747d 100644 --- a/pkgs/by-name/iw/iwd/package.nix +++ b/pkgs/by-name/iw/iwd/package.nix @@ -13,16 +13,22 @@ gitUpdater, }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "iwd"; - version = "3.8"; + version = "3.9"; src = fetchgit { url = "https://git.kernel.org/pub/scm/network/wireless/iwd.git"; - rev = version; - hash = "sha256-BNGXOiyV+aTHym4EBStVdQ0XekmkFEyx7PqmlG8HcVc="; + tag = finalAttrs.version; + hash = "sha256-NY0WB62ehxKH64ssAF4vkF6YroG5HHH+ii+AFG9EaE4="; }; + patches = [ + # Remove dbus config referencing the netdev group, which we don't have. + # Users are advised to use the wheel group instead. + ./no_netdev_group.diff + ]; + outputs = [ "out" "man" @@ -101,14 +107,14 @@ stdenv.mkDerivation rec { url = "https://git.kernel.org/pub/scm/network/wireless/iwd.git"; }; - meta = with lib; { + meta = { homepage = "https://git.kernel.org/pub/scm/network/wireless/iwd.git"; description = "Wireless daemon for Linux"; - license = licenses.lgpl21Plus; - platforms = platforms.linux; - maintainers = with maintainers; [ + license = lib.licenses.lgpl21Plus; + platforms = lib.platforms.linux; + maintainers = with lib.maintainers; [ dtzWill fpletz ]; }; -} +}) diff --git a/pkgs/by-name/je/jellyfin-tui/package.nix b/pkgs/by-name/je/jellyfin-tui/package.nix index 6770cebaff7c..e4764ba129d5 100644 --- a/pkgs/by-name/je/jellyfin-tui/package.nix +++ b/pkgs/by-name/je/jellyfin-tui/package.nix @@ -6,22 +6,23 @@ openssl, mpv, nix-update-script, + writableTmpDirAsHomeHook, versionCheckHook, }: rustPlatform.buildRustPackage rec { pname = "jellyfin-tui"; - version = "1.1.3"; + version = "1.2.1"; src = fetchFromGitHub { owner = "dhonus"; repo = "jellyfin-tui"; tag = "v${version}"; - hash = "sha256-zTvycwmVTUK7qP9PacHeREhVk0UJ4fos0Z2OGdWI0Mg="; + hash = "sha256-9TSg7J5Pbb2cpL9fEMs5ZJjmA70o8TEmbDkYIK2inTc="; }; useFetchCargoVendor = true; - cargoHash = "sha256-nBtz05c4W5qIiOPfQ+PGy0LVvvXXCFmdfjk2VjBMvnE="; + cargoHash = "sha256-dFUUJovJcf5pzH9nta7G+E7hcZTZONLPgQ1HAX4RYrY="; nativeBuildInputs = [ pkg-config ]; buildInputs = [ @@ -30,9 +31,14 @@ rustPlatform.buildRustPackage rec { ]; nativeInstallCheckInputs = [ + writableTmpDirAsHomeHook versionCheckHook ]; versionCheckProgramArg = "--version"; + versionCheckKeepEnvironment = [ "HOME" ]; + preInstallCheck = '' + mkdir -p $HOME/.local/share + ''; doInstallCheck = true; passthru.updateScript = nix-update-script { }; diff --git a/pkgs/by-name/le/lean4/package.nix b/pkgs/by-name/le/lean4/package.nix index d47474effe06..931573dad309 100644 --- a/pkgs/by-name/le/lean4/package.nix +++ b/pkgs/by-name/le/lean4/package.nix @@ -15,7 +15,7 @@ stdenv.mkDerivation (finalAttrs: { pname = "lean4"; - version = "4.20.0"; + version = "4.21.0"; # Using a vendored version rather than nixpkgs' version to match the exact version required by # Lean. Apparently, even a slight version change can impact greatly the final performance. @@ -30,7 +30,7 @@ stdenv.mkDerivation (finalAttrs: { owner = "leanprover"; repo = "lean4"; tag = "v${finalAttrs.version}"; - hash = "sha256-1V3Uk96wdNJ3IP+hvXb5Hep8w8QK8GjqaeTVG+KUqXU="; + hash = "sha256-IZSx7KmkLMEob8BmK/Bi4sS5nh78NHPQPJYgedv2+6Y="; }; postPatch = diff --git a/pkgs/by-name/li/lib3270/package.nix b/pkgs/by-name/li/lib3270/package.nix index 62fc3147541d..dad56b9ffd40 100644 --- a/pkgs/by-name/li/lib3270/package.nix +++ b/pkgs/by-name/li/lib3270/package.nix @@ -53,5 +53,6 @@ stdenv.mkDerivation rec { homepage = "https://github.com/PerryWerneck/lib3270"; license = licenses.lgpl3Plus; maintainers = [ maintainers.vifino ]; + broken = stdenv.hostPlatform.isDarwin; }; } diff --git a/pkgs/by-name/li/libfilezilla/package.nix b/pkgs/by-name/li/libfilezilla/package.nix index d295921204dc..a4c738f6d30f 100644 --- a/pkgs/by-name/li/libfilezilla/package.nix +++ b/pkgs/by-name/li/libfilezilla/package.nix @@ -45,5 +45,6 @@ stdenv.mkDerivation { license = licenses.gpl2Plus; maintainers = with maintainers; [ pSub ]; platforms = lib.platforms.unix; + broken = stdenv.hostPlatform.isDarwin; }; } diff --git a/pkgs/by-name/li/libimobiledevice-glue/package.nix b/pkgs/by-name/li/libimobiledevice-glue/package.nix index f8288ffb50e1..22a10bf44048 100644 --- a/pkgs/by-name/li/libimobiledevice-glue/package.nix +++ b/pkgs/by-name/li/libimobiledevice-glue/package.nix @@ -10,13 +10,13 @@ stdenv.mkDerivation rec { pname = "libimobiledevice-glue"; - version = "1.3.1"; + version = "1.3.2"; src = fetchFromGitHub { owner = "libimobiledevice"; repo = "libimobiledevice-glue"; rev = version; - hash = "sha256-Fu0zQIryESRaTGzDlAaewX9Yo2nPEeUxmcb3yPJLuSI="; + hash = "sha256-cUcJARbZV9Yaqd9TP3NVmF9p8Pjz88a3GmAh4c4sEHo="; }; preAutoreconf = '' diff --git a/pkgs/by-name/li/libphonenumber/package.nix b/pkgs/by-name/li/libphonenumber/package.nix index 5e329d4faa02..f21c0bf91782 100644 --- a/pkgs/by-name/li/libphonenumber/package.nix +++ b/pkgs/by-name/li/libphonenumber/package.nix @@ -14,13 +14,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "libphonenumber"; - version = "9.0.5"; + version = "9.0.8"; src = fetchFromGitHub { owner = "google"; repo = "libphonenumber"; rev = "v${finalAttrs.version}"; - hash = "sha256-CVT0HBT4WnlTrT8mhapJjyIbd+pp7uxrZxa9ZlXVm3c="; + hash = "sha256-PLQgZdf2As5dwoM/L8SCBCysXUrw56/cn2NDf4jM1ac="; }; patches = [ @@ -58,6 +58,9 @@ stdenv.mkDerivation (finalAttrs: { description = "Google's i18n library for parsing and using phone numbers"; homepage = "https://github.com/google/libphonenumber"; license = licenses.asl20; - maintainers = with maintainers; [ illegalprime ]; + maintainers = with maintainers; [ + illegalprime + wegank + ]; }; }) diff --git a/pkgs/by-name/li/libslirp/fix-dns-for-darwin.patch b/pkgs/by-name/li/libslirp/fix-dns-for-darwin.patch deleted file mode 100644 index f6e1a8c1b519..000000000000 --- a/pkgs/by-name/li/libslirp/fix-dns-for-darwin.patch +++ /dev/null @@ -1,46 +0,0 @@ -From 735904142f95d0500c0eae6bf763e4ad24b6b9fd Mon Sep 17 00:00:00 2001 -From: Samuel Thibault -Date: Wed, 26 Mar 2025 08:42:35 +0100 -Subject: [PATCH] apple: Fix getting IPv4 DNS server address when IPv4 and IPv4 - are interleaved - -When getting an IPv4 DNS server address, if libresolv returns - -IPv4 -IPv6 -IPv4 -IPv6 - -(or just IPv4 and IPv6) - -we would still have found == 1 on the second iteration and thus take the -IPv6 even if it's not the proper af. We can as well just completely ignore -the non-matching af entries. - -Fixes #85 ---- - src/slirp.c | 7 +++++-- - 1 file changed, 5 insertions(+), 2 deletions(-) - -diff --git a/src/slirp.c b/src/slirp.c -index bccee53..62a018a 100644 ---- a/src/slirp.c -+++ b/src/slirp.c -@@ -289,9 +289,12 @@ static int get_dns_addr_libresolv(int af, void *pdns_addr, void *cached_addr, - found = 0; - DEBUG_MISC("IP address of your DNS(s):"); - for (int i = 0; i < count; i++) { -- if (af == servers[i].sin.sin_family) { -- found++; -+ if (af != servers[i].sin.sin_family) { -+ continue; - } -+ -+ found++; -+ - if (af == AF_INET) { - addr = &servers[i].sin.sin_addr; - } else { // af == AF_INET6 --- -GitLab - diff --git a/pkgs/by-name/li/libslirp/package.nix b/pkgs/by-name/li/libslirp/package.nix index 98a73e4109fe..8900e5c43d68 100644 --- a/pkgs/by-name/li/libslirp/package.nix +++ b/pkgs/by-name/li/libslirp/package.nix @@ -10,22 +10,16 @@ stdenv.mkDerivation rec { pname = "libslirp"; - version = "4.9.0"; + version = "4.9.1"; src = fetchFromGitLab { domain = "gitlab.freedesktop.org"; owner = "slirp"; repo = "libslirp"; rev = "v${version}"; - sha256 = "sha256-Eqdw6epFkLv4Dnw/s1pcKW0P70ApZwx/J2VkCwn50Ew="; + sha256 = "sha256-MKP3iBExaPQryiahI1l/4bTgVht5Vu8AxaDyMotqmMo="; }; - patches = [ - # https://gitlab.freedesktop.org/slirp/libslirp/-/commit/735904142f95d0500c0eae6bf763e4ad24b6b9fd - # Vendorized due to frequent instability of the upstream repository. - ./fix-dns-for-darwin.patch - ]; - separateDebugInfo = true; nativeBuildInputs = [ diff --git a/pkgs/by-name/li/libtorrent/package.nix b/pkgs/by-name/li/libtorrent/package.nix index eeca7cc91cf7..03e8c19f213a 100644 --- a/pkgs/by-name/li/libtorrent/package.nix +++ b/pkgs/by-name/li/libtorrent/package.nix @@ -14,13 +14,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "rakshasa-libtorrent"; - version = "0.15.4"; + version = "0.15.5"; src = fetchFromGitHub { owner = "rakshasa"; repo = "libtorrent"; rev = "v${finalAttrs.version}"; - hash = "sha256-EtT1g8fo2XRVO7pGUThoEklxpYKPI7OWwCZ2vVV73k4="; + hash = "sha256-iFndmET8bQUg3iZ6c6WDCzSS2tx6sYJt+fEkPAaNm18="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/ma/maiko/package.nix b/pkgs/by-name/ma/maiko/package.nix index 5f5b436d9cc5..94ec3953d72d 100644 --- a/pkgs/by-name/ma/maiko/package.nix +++ b/pkgs/by-name/ma/maiko/package.nix @@ -8,13 +8,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "maiko"; - version = "250201-55e20ea9"; + version = "250616-de1fafba"; src = fetchFromGitHub { owner = "Interlisp"; repo = "maiko"; tag = "maiko-${finalAttrs.version}"; - hash = "sha256-7TmMvDaSmdbMa2fVbETRcyKndGM3CuaxI2cJj00WlSc="; + hash = "sha256-RYBV3gqcDPxRteCvUyqm8lKUpW4r0L7kJLlED8M72DI="; }; nativeBuildInputs = [ cmake ]; diff --git a/pkgs/by-name/ma/markdown-oxide/package.nix b/pkgs/by-name/ma/markdown-oxide/package.nix index 509ce2b8967b..981d271bf3f7 100644 --- a/pkgs/by-name/ma/markdown-oxide/package.nix +++ b/pkgs/by-name/ma/markdown-oxide/package.nix @@ -5,13 +5,13 @@ }: rustPlatform.buildRustPackage (finalAttrs: { pname = "markdown-oxide"; - version = "0.25.2"; + version = "0.25.3"; src = fetchFromGitHub { owner = "Feel-ix-343"; repo = "markdown-oxide"; tag = "v${finalAttrs.version}"; - hash = "sha256-LXFZAMxg2Mlatwx7d4ozofr7H9nrqDxai9U/oB4vkqA="; + hash = "sha256-LBY7hLen6jhOBsOIl9f5rFVH66FbLbuYgLl1xtzTRQg="; }; useFetchCargoVendor = true; diff --git a/pkgs/by-name/ma/maven/package.nix b/pkgs/by-name/ma/maven/package.nix index e78c355b8dc0..83988f58825a 100644 --- a/pkgs/by-name/ma/maven/package.nix +++ b/pkgs/by-name/ma/maven/package.nix @@ -9,11 +9,11 @@ }: stdenvNoCC.mkDerivation (finalAttrs: { pname = "maven"; - version = "3.9.9"; + version = "3.9.10"; src = fetchurl { url = "mirror://apache/maven/maven-3/${finalAttrs.version}/binaries/apache-maven-${finalAttrs.version}-bin.tar.gz"; - hash = "sha256-epzfZ0/BcD1jgvXzMLPREOobUStR8WUoRtnk6KWI12Y="; + hash = "sha256-4DYFmwrGPNzJNK//qhJcm/P0pM0tK5mV4a7pIZCgl5w="; }; sourceRoot = "."; diff --git a/pkgs/by-name/mi/mitra/package.nix b/pkgs/by-name/mi/mitra/package.nix index 5192212c7efe..defe5ba74379 100644 --- a/pkgs/by-name/mi/mitra/package.nix +++ b/pkgs/by-name/mi/mitra/package.nix @@ -6,18 +6,18 @@ rustPlatform.buildRustPackage rec { pname = "mitra"; - version = "4.5.0"; + version = "4.5.1"; src = fetchFromGitea { domain = "codeberg.org"; owner = "silverpill"; repo = "mitra"; rev = "v${version}"; - hash = "sha256-y77wLGmSJbGmqUXURjqp6Gz9+xpMvnUEcB9OZ4uF3M8="; + hash = "sha256-nUQVdKzNNfD04dPKb0T1l0TUS5jTkU9l/yUMXmvJx/s="; }; useFetchCargoVendor = true; - cargoHash = "sha256-sfPnhB1GWIG8tA6Jqr1+03qxwS1DBbRAv4ZY+wKB/jY="; + cargoHash = "sha256-D6pD0aAmQh2lmWyfHjB8K7ZKv06Qoru+81ncPvDcyS4="; # require running database doCheck = false; diff --git a/pkgs/by-name/mo/mongodb-ce/package.nix b/pkgs/by-name/mo/mongodb-ce/package.nix index c74954f6ec3d..f6b508b3ef17 100644 --- a/pkgs/by-name/mo/mongodb-ce/package.nix +++ b/pkgs/by-name/mo/mongodb-ce/package.nix @@ -15,24 +15,24 @@ }: let - version = "8.0.4"; + version = "8.0.11"; srcs = version: { "x86_64-linux" = { url = "https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu2204-${version}.tgz"; - hash = "sha256-N5rwtPrrjVJj7UAk/weBAhV4+7wHRLNowkX6gEWCQVU="; + hash = "sha256-XErxsovZyMR1UmwClxn5Bm08hoYHArCtn8TSv/8eDYo="; }; "aarch64-linux" = { url = "https://fastdl.mongodb.org/linux/mongodb-linux-aarch64-ubuntu2204-${version}.tgz"; - hash = "sha256-uBa7/jxfZBNmB0l2jspJW2QQ8VY0GtWxc/tPlkV6UBk="; + hash = "sha256-p1eBobdnJ/uPZHScWFs3AOB7/BJn/MZQ8+VpOHonY2A="; }; "x86_64-darwin" = { url = "https://fastdl.mongodb.org/osx/mongodb-macos-x86_64-${version}.tgz"; - hash = "sha256-Ya+HIlRPWXPp9aX1AlRgkh/pfKRgxhqNep/6uuARmCo="; + hash = "sha256-RLq+aFJixSt3EginpgIHWnR4CGk0KX5cmC3QrbW3jJ8="; }; "aarch64-darwin" = { url = "https://fastdl.mongodb.org/osx/mongodb-macos-arm64-${version}.tgz"; - hash = "sha256-IZ47PXsxwEn/e890cNOO/3BOVt8qwY1N94Ql4phcz1g="; + hash = "sha256-kNzByPEXi5T3+vr6t/EJuKIDEfGybrsbBqJ8vaEV5tY="; }; }; in @@ -57,9 +57,8 @@ stdenv.mkDerivation (finalAttrs: { installPhase = '' runHook preInstall - install -Dm 755 bin/mongod $out/bin/mongod - install -Dm 755 bin/mongos $out/bin/mongos - + install -Dm 755 bin/mongod -t $out/bin + install -Dm 755 bin/mongos -t $out/bin runHook postInstall ''; @@ -73,7 +72,6 @@ stdenv.mkDerivation (finalAttrs: { doInstallCheck = stdenv.hostPlatform.isDarwin; passthru = { - updateScript = let script = writeShellApplication { diff --git a/pkgs/by-name/my/mympd/package.nix b/pkgs/by-name/my/mympd/package.nix index faeafc52ac60..411397f873ca 100644 --- a/pkgs/by-name/my/mympd/package.nix +++ b/pkgs/by-name/my/mympd/package.nix @@ -18,13 +18,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "mympd"; - version = "21.0.1"; + version = "22.0.0"; src = fetchFromGitHub { owner = "jcorporation"; repo = "myMPD"; rev = "v${finalAttrs.version}"; - sha256 = "sha256-A4wjnITpI9Cy5kIVljXvmnunsqJXFSi4CqBmlqVcqZM="; + sha256 = "sha256-yN+1TnYBRbKAkdzLG0ulMyH6sXQhlUK8d3neYxGsbKE="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/nd/ndi-6/package.nix b/pkgs/by-name/nd/ndi-6/package.nix new file mode 100644 index 000000000000..1e121b7e5764 --- /dev/null +++ b/pkgs/by-name/nd/ndi-6/package.nix @@ -0,0 +1,86 @@ +{ + lib, + stdenv, + fetchurl, + avahi, + obs-studio-plugins, +}: + +let + versionJSON = lib.importJSON ./version.json; + ndiPlatform = + if stdenv.hostPlatform.isAarch64 then + "aarch64-rpi4-linux-gnueabi" + else if stdenv.hostPlatform.isAarch32 then + "arm-rpi2-linux-gnueabihf" + else if stdenv.hostPlatform.isx86_64 then + "x86_64-linux-gnu" + else + throw "unsupported platform for NDI SDK"; +in +stdenv.mkDerivation rec { + pname = "ndi-6"; + version = versionJSON.version; + majorVersion = lib.versions.major version; + installerName = "Install_NDI_SDK_v${majorVersion}_Linux"; + + src = fetchurl { + url = "https://downloads.ndi.tv/SDK/NDI_SDK_Linux/${installerName}.tar.gz"; + hash = versionJSON.hash; + }; + + buildInputs = [ avahi ]; + + unpackPhase = '' + unpackFile $src + echo y | ./${installerName}.sh + sourceRoot="NDI SDK for Linux"; + ''; + + installPhase = '' + mkdir $out + mv bin/${ndiPlatform} $out/bin + for i in $out/bin/*; do + if [ -L "$i" ]; then continue; fi + patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" "$i" + done + patchelf --set-rpath "${avahi}/lib:${stdenv.cc.libc}/lib" $out/bin/ndi-record + patchelf --set-rpath "${avahi}/lib:${stdenv.cc.libc}/lib" $out/bin/ndi-free-audio + mv lib/${ndiPlatform} $out/lib + for i in $out/lib/*; do + if [ -L "$i" ]; then continue; fi + patchelf --set-rpath "${avahi}/lib:${stdenv.cc.libc}/lib" "$i" + done + rm $out/bin/libndi.so.${majorVersion} + ln -s $out/lib/libndi.so.${version} $out/bin/libndi.so.${majorVersion} + # Fake ndi version 5 for compatibility with DistroAV (obs plugin using NDI) + ln -s $out/lib/libndi.so.${version} $out/bin/libndi.so.5 + mv include examples $out/ + mkdir -p $out/share/doc/ndi-6 + mv licenses $out/share/doc/ndi-6/licenses + mv documentation/* $out/share/doc/ndi-6/ + ''; + + # Stripping breaks ndi-record. + dontStrip = true; + + passthru.tests = { + inherit (obs-studio-plugins) distroav; + }; + + passthru.updateScript = ./update.py; + + meta = { + homepage = "https://ndi.video/ndi-sdk/"; + description = "NDI Software Developer Kit"; + platforms = [ + "x86_64-linux" + "i686-linux" + "aarch64-linux" + "armv7l-linux" + ]; + sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ]; + license = lib.licenses.unfree; + maintainers = with lib.maintainers; [ globule655 ]; + }; +} diff --git a/pkgs/by-name/nd/ndi-6/update.py b/pkgs/by-name/nd/ndi-6/update.py new file mode 100755 index 000000000000..1f828dab2275 --- /dev/null +++ b/pkgs/by-name/nd/ndi-6/update.py @@ -0,0 +1,77 @@ +#!/usr/bin/env nix-shell +#! nix-shell -i python -p "python3.withPackages (ps: with ps; [ ps.absl-py ps.requests ])" + +import hashlib +import io +import json +import os.path +import tarfile + +import requests +from absl import app, flags + +BASE_NAME = "Install_NDI_SDK_v6_Linux" +NDI_SDK_URL = f"https://downloads.ndi.tv/SDK/NDI_SDK_Linux/{BASE_NAME}.tar.gz" +NDI_EXEC = f"{BASE_NAME}.sh" + +NDI_ARCHIVE_MAGIC = b"__NDI_ARCHIVE_BEGIN__\n" + +FLAG_out = flags.DEFINE_string("out", None, "Path to read/write version.json from/to.") + + +def find_version_json() -> str: + if FLAG_out.value: + return FLAG_out.value + try_paths = ["pkgs/by-name/nd/ndi-6/version.json", "version.json"] + for path in try_paths: + if os.path.exists(path): + return path + raise Exception( + "Couldn't figure out where to write version.json; try specifying --out" + ) + + +def fetch_tarball() -> bytes: + r = requests.get(NDI_SDK_URL) + r.raise_for_status() + return r.content + + +def read_version(tarball: bytes) -> str: + # Find the inner script. + outer_tarfile = tarfile.open(fileobj=io.BytesIO(tarball), mode="r:gz") + eula_script = outer_tarfile.extractfile(NDI_EXEC).read() + + # Now find the archive embedded within the script. + archive_start = eula_script.find(NDI_ARCHIVE_MAGIC) + len(NDI_ARCHIVE_MAGIC) + inner_tarfile = tarfile.open( + fileobj=io.BytesIO(eula_script[archive_start:]), mode="r:gz" + ) + + # Now find Version.txt... + version_txt = ( + inner_tarfile.extractfile("NDI SDK for Linux/Version.txt") + .read() + .decode("utf-8") + ) + _, _, version = version_txt.strip().partition(" v") + return version + + +def main(argv): + tarball = fetch_tarball() + + sha256 = hashlib.sha256(tarball).hexdigest() + version = { + "hash": f"sha256:{sha256}", + "version": read_version(tarball), + } + + out_path = find_version_json() + with open(out_path, "w") as f: + json.dump(version, f) + f.write("\n") + + +if __name__ == "__main__": + app.run(main) diff --git a/pkgs/by-name/nd/ndi-6/version.json b/pkgs/by-name/nd/ndi-6/version.json new file mode 100644 index 000000000000..c4142f42d71f --- /dev/null +++ b/pkgs/by-name/nd/ndi-6/version.json @@ -0,0 +1 @@ +{"hash": "sha256-6iqjexwILth2muLpXWQjDVTvOuMq4jM8KBYnpPmViU8=", "version": "6.1.1"} diff --git a/pkgs/by-name/ne/netpbm/package.nix b/pkgs/by-name/ne/netpbm/package.nix index 764bb27699e5..6be3ba013923 100644 --- a/pkgs/by-name/ne/netpbm/package.nix +++ b/pkgs/by-name/ne/netpbm/package.nix @@ -21,7 +21,7 @@ stdenv.mkDerivation rec { # Determine version and revision from: # https://sourceforge.net/p/netpbm/code/HEAD/log/?path=/advanced pname = "netpbm"; - version = "11.10.4"; + version = "11.10.5"; outputs = [ "bin" @@ -31,8 +31,8 @@ stdenv.mkDerivation rec { src = fetchsvn { url = "https://svn.code.sf.net/p/netpbm/code/advanced"; - rev = "5076"; - sha256 = "sha256-oWGgB0f3w8ohFPgaJ9cyVLTdMZGajzXs95eC1Cs+Tyg="; + rev = "5085"; + sha256 = "sha256-04ObCW+xMvGOkhTwYAhVoBG1QIe0/DKfEYbSpDkEGCU="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/ni/nixos-rebuild-ng/src/nixos_rebuild/__init__.py b/pkgs/by-name/ni/nixos-rebuild-ng/src/nixos_rebuild/__init__.py index 0e7cf61b00a4..4208fb3dc1d5 100644 --- a/pkgs/by-name/ni/nixos-rebuild-ng/src/nixos_rebuild/__init__.py +++ b/pkgs/by-name/ni/nixos-rebuild-ng/src/nixos_rebuild/__init__.py @@ -366,16 +366,37 @@ def main() -> None: try: execute(sys.argv) except CalledProcessError as ex: - if logger.level == logging.DEBUG: - import traceback - - traceback.print_exc() - else: - print(str(ex), file=sys.stderr) - # Exit with the error code of the process that failed - sys.exit(ex.returncode) + _handle_called_process_error(ex) except (Exception, KeyboardInterrupt) as ex: - if logger.level == logging.DEBUG: + if logger.isEnabledFor(logging.DEBUG): raise else: sys.exit(str(ex)) + + +def _handle_called_process_error(ex: CalledProcessError) -> None: + if logger.isEnabledFor(logging.DEBUG): + import traceback + + traceback.print_exception(ex) + else: + import shlex + + # If cmd is a list, stringify any Paths and join in a single string + # This will show much nicer in the error (e.g., as something that + # the user can simple copy-paste in terminal to debug) + cmd = ( + shlex.join([str(cmd) for cmd in ex.cmd]) + if isinstance(ex.cmd, list) + else ex.cmd + ) + ex = CalledProcessError( + returncode=ex.returncode, + cmd=cmd, + output=ex.output, + stderr=ex.stderr, + ) + print(str(ex), file=sys.stderr) + + # Exit with the error code of the process that failed + sys.exit(ex.returncode) diff --git a/pkgs/by-name/ok/oku/package.nix b/pkgs/by-name/ok/oku/package.nix new file mode 100644 index 000000000000..cfef18cd733c --- /dev/null +++ b/pkgs/by-name/ok/oku/package.nix @@ -0,0 +1,64 @@ +{ + lib, + rustPlatform, + fetchFromGitHub, + wrapGAppsHook4, + pkg-config, + fuse, + glib, + gtk4, + hicolor-icon-theme, + libadwaita, + pango, + webkitgtk_6_0, + nix-update-script, +}: + +rustPlatform.buildRustPackage (finalAttrs: { + pname = "oku"; + version = "0.1.1"; + + src = fetchFromGitHub { + owner = "okubrowser"; + repo = "oku"; + tag = "v${finalAttrs.version}"; + hash = "sha256-utbey8DFXUWU6u2H2unNjCHE3/bwhPdrxAOApC+unGA="; + }; + + cargoHash = "sha256-rwf9jdr+RDpUcTEG7Xhpph0zuyz6tdFx6hWEZRuxkTY="; + + nativeBuildInputs = [ + wrapGAppsHook4 + pkg-config + ]; + + buildInputs = [ + fuse + glib + gtk4 + hicolor-icon-theme + libadwaita + pango + webkitgtk_6_0 + ]; + + # the program expects icons to be installed but the + # program does not install them itself + postInstall = '' + mkdir -p $out/share/icons + cp -r ${finalAttrs.src}/data/hicolor $out/share/icons + ''; + + passthru.updateScript = nix-update-script { }; + + meta = { + description = "Browser for the Oku Network and Peer-to-peer sites"; + homepage = "https://github.com/okubrowser/oku"; + changelog = "https://github.com/OkuBrowser/oku/releases/tag/v${finalAttrs.version}"; + license = lib.licenses.agpl3Plus; + maintainers = with lib.maintainers; [ ethancedwards8 ]; + teams = with lib.teams; [ ngi ]; + mainProgram = "oku"; + platforms = lib.platforms.linux; + }; +}) diff --git a/pkgs/by-name/op/openterface-qt/package.nix b/pkgs/by-name/op/openterface-qt/package.nix index 6b3d86c32108..06f450712fb3 100644 --- a/pkgs/by-name/op/openterface-qt/package.nix +++ b/pkgs/by-name/op/openterface-qt/package.nix @@ -22,12 +22,12 @@ let in stdenv.mkDerivation (final: { pname = "openterface-qt"; - version = "0.3.15"; + version = "0.3.17"; src = fetchFromGitHub { owner = "TechxArtisanStudio"; repo = "Openterface_QT"; rev = "${final.version}"; - hash = "sha256-wU30m8dQirrLcYNFs4lTKIrng7B4HapHeVsyLR619PY="; + hash = "sha256-kXDiQINbP7D2qUqKUAZXEW2iJqKEH/AqMSE2zU+jRHg="; }; nativeBuildInputs = [ copyDesktopItems diff --git a/pkgs/by-name/op/optipng/package.nix b/pkgs/by-name/op/optipng/package.nix index 37fca666e857..af30a5770c62 100644 --- a/pkgs/by-name/op/optipng/package.nix +++ b/pkgs/by-name/op/optipng/package.nix @@ -10,11 +10,11 @@ stdenv.mkDerivation rec { pname = "optipng"; - version = "0.7.8"; + version = "7.9.1"; src = fetchurl { url = "mirror://sourceforge/optipng/optipng-${version}.tar.gz"; - hash = "sha256-JaO9aEgfIVAsyqD0wT+E3PayAzjkxOjFHyzvvYUTOYw="; + hash = "sha256-wleb5YwsZtrp1jFU7cs9Qn/vZMsA7Ar/B5ydFW7Ebyk="; }; buildInputs = [ libpng ]; diff --git a/pkgs/by-name/or/orca/package.nix b/pkgs/by-name/or/orca/package.nix index b600b2abd46c..34a51734082a 100644 --- a/pkgs/by-name/or/orca/package.nix +++ b/pkgs/by-name/or/orca/package.nix @@ -29,13 +29,13 @@ python3.pkgs.buildPythonApplication rec { pname = "orca"; - version = "48.2"; + version = "48.6"; format = "other"; src = fetchurl { url = "mirror://gnome/sources/orca/${lib.versions.major version}/orca-${version}.tar.xz"; - hash = "sha256-oIPaV4ZLVLoqPl9IG1QM/L5hiASjZDZoJ3Jw4mNTaf4="; + hash = "sha256-7cUDRODf1yR2tcFLOqclyiaHGOpt2JvE7ib0ULM51pY="; }; patches = [ diff --git a/pkgs/by-name/pa/papers/package.nix b/pkgs/by-name/pa/papers/package.nix index afa12ce2a4d5..c2f0f32b8463 100644 --- a/pkgs/by-name/pa/papers/package.nix +++ b/pkgs/by-name/pa/papers/package.nix @@ -37,7 +37,7 @@ stdenv.mkDerivation (finalAttrs: { pname = "papers"; - version = "48.2"; + version = "48.4"; outputs = [ "out" @@ -47,7 +47,7 @@ stdenv.mkDerivation (finalAttrs: { src = fetchurl { url = "mirror://gnome/sources/papers/${lib.versions.major finalAttrs.version}/papers-${finalAttrs.version}.tar.xz"; - hash = "sha256-HpvFlhNCS/ZVIjxr3Khzri8d2ifPAtc0K/9bVZBRYG0="; + hash = "sha256-8RqhxUSsIRJZ4jC0DIBK5kB3M5pXve+j2761f5Fm4/0="; }; cargoDeps = rustPlatform.fetchCargoVendor { diff --git a/pkgs/by-name/pa/parallel-disk-usage/package.nix b/pkgs/by-name/pa/parallel-disk-usage/package.nix index 6075ee223d04..cca97919e092 100644 --- a/pkgs/by-name/pa/parallel-disk-usage/package.nix +++ b/pkgs/by-name/pa/parallel-disk-usage/package.nix @@ -5,17 +5,17 @@ }: rustPlatform.buildRustPackage rec { pname = "parallel-disk-usage"; - version = "0.11.1"; + version = "0.12.0"; src = fetchFromGitHub { owner = "KSXGitHub"; repo = "parallel-disk-usage"; rev = version; - hash = "sha256-yjNz51L/r1jqgeO0qhe8uR4Pn52acle+EmurZqVpWfI="; + hash = "sha256-Wj19lWepCrZe36njX+NMdpwXeRRh3ml9jKbbi7irrpg="; }; useFetchCargoVendor = true; - cargoHash = "sha256-v+cJ1Hw4cae/8A1MpHbIfGRVamI58byqfBLNCKKAHWk="; + cargoHash = "sha256-UK+jonM/ZBGoCKFcQlCo5OqYtKeU0VIWtx83oBh3lJQ="; meta = with lib; { description = "Highly parallelized, blazing fast directory tree analyzer"; diff --git a/pkgs/by-name/pa/paretosecurity/package.nix b/pkgs/by-name/pa/paretosecurity/package.nix index c6e774528f2d..b7633bd34361 100644 --- a/pkgs/by-name/pa/paretosecurity/package.nix +++ b/pkgs/by-name/pa/paretosecurity/package.nix @@ -17,13 +17,13 @@ buildGoModule (finalAttrs: { webkitgtk_4_1 ]; pname = "paretosecurity"; - version = "0.2.34"; + version = "0.2.36"; src = fetchFromGitHub { owner = "ParetoSecurity"; repo = "agent"; rev = finalAttrs.version; - hash = "sha256-tTFdgLpu7RRWx2B2VMROqs1HgG0qMbfUOS5KNLQFHQw="; + hash = "sha256-PAH5aswkN8MxK+sZNucXgw50Fc2CkhBLM7+wwxkgAvs="; }; vendorHash = "sha256-RAKYaNi+MXUfNnEJmZF5g9jFBDOPIVBOZWtqZp2FwWY="; diff --git a/pkgs/by-name/pe/perses/package.nix b/pkgs/by-name/pe/perses/package.nix index 88712fdce7c6..969f6fc6a2fd 100644 --- a/pkgs/by-name/pe/perses/package.nix +++ b/pkgs/by-name/pe/perses/package.nix @@ -25,13 +25,13 @@ let in buildGoModule (finalAttrs: { pname = "perses"; - version = "0.51.0"; + version = "0.51.1"; src = fetchFromGitHub { owner = "perses"; repo = "perses"; tag = "v${finalAttrs.version}"; - hash = "sha256-frCSuGEnYab4CTQoAuN876dG7Mwn/RJEnWouUuo7aJQ="; + hash = "sha256-ZijrDYG/HFPBOLEFqMDzoWhRoo/GiHr0dpjhKBJRAH8="; }; outputs = [ @@ -49,7 +49,7 @@ buildGoModule (finalAttrs: { inherit (finalAttrs) version src; pname = "${finalAttrs.pname}-ui"; sourceRoot = "${finalAttrs.src.name}/${finalAttrs.npmRoot}"; - hash = "sha256-nRE4IV8+wCuYXNAxrl7RfBFdY/ZyAIpXs3pDfCeIh74="; + hash = "sha256-yBkdqOLAopEHcS4rbOUL3bLxy27l/gm60nICsL9zigk="; }; npmRoot = "ui"; diff --git a/pkgs/by-name/pe/perses/plugins.nix b/pkgs/by-name/pe/perses/plugins.nix index 07aba9f0710b..884dcce6970d 100644 --- a/pkgs/by-name/pe/perses/plugins.nix +++ b/pkgs/by-name/pe/perses/plugins.nix @@ -57,9 +57,9 @@ hash = "sha256-61k3G+8bCsUErBCwvFxgnYCPLAqpCIcuF3GEZHacMB0="; }; "Table" = { - version = "0.7.0"; - url = "https://github.com/perses/plugins/releases/download/table/v0.7.0/Table-0.7.0.tar.gz"; - hash = "sha256-MemCUd/9RhodqMzDuYCNPYDMaSy7LpVPCTP4IUFE3lM="; + version = "0.7.1"; + url = "https://github.com/perses/plugins/releases/download/table/v0.7.1/Table-0.7.1.tar.gz"; + hash = "sha256-X/W2vSBddGHbEXzBW2MDxMwSMfVweSi5MtztXTURne8="; }; "Tempo" = { version = "0.51.0-rc.3"; diff --git a/pkgs/by-name/pi/pik/package.nix b/pkgs/by-name/pi/pik/package.nix index fff31310e55c..26e87d656308 100644 --- a/pkgs/by-name/pi/pik/package.nix +++ b/pkgs/by-name/pi/pik/package.nix @@ -8,17 +8,17 @@ rustPlatform.buildRustPackage rec { pname = "pik"; - version = "0.24.0"; + version = "0.25.0"; src = fetchFromGitHub { owner = "jacek-kurlit"; repo = "pik"; rev = version; - hash = "sha256-LA60IQtR3IYVDdww79XFsTViGeVKi1MzRBB8ibhITK0="; + hash = "sha256-3ZYABdrODJJ9RUlhL7mIu/py3GCIFG3AUXQuol7o1Zs="; }; useFetchCargoVendor = true; - cargoHash = "sha256-j/BWTCsdAZF3NDj07DY5Mdf6MRGyBe3xpowZZQHSwTU="; + cargoHash = "sha256-333MHDuHYKlTUXSm2C19ZRPXeEGDxbQEImdsleUt1QU="; passthru.tests.version = testers.testVersion { package = pik; }; diff --git a/pkgs/by-name/pr/privatebin/package.nix b/pkgs/by-name/pr/privatebin/package.nix index 1c9f228d0376..caa8fb582a4a 100644 --- a/pkgs/by-name/pr/privatebin/package.nix +++ b/pkgs/by-name/pr/privatebin/package.nix @@ -8,13 +8,13 @@ stdenvNoCC.mkDerivation (finalAttrs: { pname = "privatebin"; - version = "1.7.6"; + version = "1.7.8"; src = fetchFromGitHub { owner = "PrivateBin"; repo = "PrivateBin"; tag = finalAttrs.version; - hash = "sha256-tKzuPpll1GOMlaIDfs5udXrHcTko6jmWJq4dPuPYy6Y="; + hash = "sha256-/28uzEDVEn7uy8c6/oCMFjKDJFPyHH50f890cc6fmjg="; }; installPhase = '' diff --git a/pkgs/by-name/pr/prowlarr/deps.json b/pkgs/by-name/pr/prowlarr/deps.json new file mode 100644 index 000000000000..53ed46c74faf --- /dev/null +++ b/pkgs/by-name/pr/prowlarr/deps.json @@ -0,0 +1,1695 @@ +[ + { + "pname": "AngleSharp", + "version": "1.3.0", + "hash": "sha256-xq+G2f9FCqS6PjIgfDdZjVRoaxVMiSyOXC7KtMzMpPU=" + }, + { + "pname": "AngleSharp.Xml", + "version": "1.0.0", + "hash": "sha256-UzxXWH6qG2BEAH/ULosGkUn2RhghUOguyVTPYl78spM=" + }, + { + "pname": "Azure.Core", + "version": "1.38.0", + "hash": "sha256-gzWMtIZJgwtE51dTMzLCbN4KxmE4/bzdjb/NU86N1uY=" + }, + { + "pname": "Azure.Identity", + "version": "1.11.4", + "hash": "sha256-J3nI80CQwS7fwRLnqBxqZNemxqP05rcn3x44YpIf2no=" + }, + { + "pname": "BouncyCastle.Cryptography", + "version": "2.5.1", + "hash": "sha256-ISDd8fS6/cIJIXBFDd7F3FQ0wzWkAo4r8dvycb8iT6c=" + }, + { + "pname": "Castle.Core", + "version": "4.4.1", + "hash": "sha256-J4NS8p9KqbuLl6JMmNwptsfccH37TfhAhPwX2mVQso0=" + }, + { + "pname": "coverlet.collector", + "version": "3.0.4-preview.27.ge7cb7c3b40", + "hash": "sha256-UiiFa/GfLf3gcKb1atAz5gwR0sIA7sA1GFKSbk6sIgM=", + "url": "https://pkgs.dev.azure.com/Servarr/7f7f0cec-b6d1-4285-a8c2-5c0b3ce99d29/_packaging/88cb5621-d569-46bd-ab53-84dba1855910/nuget/v3/flat2/coverlet.collector/3.0.4-preview.27.ge7cb7c3b40/coverlet.collector.3.0.4-preview.27.ge7cb7c3b40.nupkg" + }, + { + "pname": "coverlet.core", + "version": "3.0.4-preview.27.ge7cb7c3b40", + "hash": "sha256-nIVBoe0qz5e5eDmrhlMslznVzXne6eXbd8T4m2c+Qb8=", + "url": "https://pkgs.dev.azure.com/Servarr/7f7f0cec-b6d1-4285-a8c2-5c0b3ce99d29/_packaging/88cb5621-d569-46bd-ab53-84dba1855910/nuget/v3/flat2/coverlet.core/3.0.4-preview.27.ge7cb7c3b40/coverlet.core.3.0.4-preview.27.ge7cb7c3b40.nupkg" + }, + { + "pname": "Dapper", + "version": "2.1.66", + "hash": "sha256-e5n/wnAFGPDSe30oQQ0fanXrvFZYYa+qCDSTHtfQmPw=" + }, + { + "pname": "Diacritical.Net", + "version": "1.0.4", + "hash": "sha256-rBYl6Dz7vRHPx/tXAJ8rupAVHUBilZ/WnJE92UrHge8=" + }, + { + "pname": "DryIoc.dll", + "version": "5.4.3", + "hash": "sha256-qk3sUiiQu4TxdkG4Ise8Sn5h3kV5p6w6t9wMw5dSc94=" + }, + { + "pname": "DryIoc.Microsoft.DependencyInjection", + "version": "6.2.0", + "hash": "sha256-C06B0tj3qFkVVGL0kSflf88As4t9TRaw/++N05Zaz0c=" + }, + { + "pname": "Dynamitey", + "version": "3.0.3", + "hash": "sha256-69DyYSGu1sjpr8DupZWEiwcVmW9vT197c00vQ7H9k1s=" + }, + { + "pname": "FluentAssertions", + "version": "6.12.0", + "hash": "sha256-LGlPe+G7lBwj5u3ttQZiKX2+C195ddRAHPuDkY6x0BE=" + }, + { + "pname": "FluentValidation", + "version": "9.5.4", + "hash": "sha256-htL8KbjBt2rn+y+nUIc4lVBypWksQ+hsROxMBDzi5IU=" + }, + { + "pname": "ImpromptuInterface", + "version": "8.0.6", + "hash": "sha256-u0J8n7ShZX+lk5aX9copjwgym5TtglRGT7QtPdZeHeA=" + }, + { + "pname": "IPAddressRange", + "version": "6.2.0", + "hash": "sha256-g3brzbKKPZS23cbttpr5CCYoZHm+dvH43/gXLuZYmFg=" + }, + { + "pname": "MailKit", + "version": "4.12.1", + "hash": "sha256-fwI0YTbwfzrvdkbATWGbv4D8ugOXgaPO/WFvGxQ9WS8=" + }, + { + "pname": "Microsoft.AspNetCore.Cryptography.Internal", + "version": "8.0.16", + "hash": "sha256-uw/5GAPpefPeMrfG69EBOVciSHxBKs0E8Txkf+rttzs=" + }, + { + "pname": "Microsoft.AspNetCore.Cryptography.KeyDerivation", + "version": "8.0.16", + "hash": "sha256-Zpt7vlY0xdrk/6XDRtXb0t9MK6SiPP6sr3fC6gQ1/YQ=" + }, + { + "pname": "Microsoft.AspNetCore.WebUtilities", + "version": "8.0.16", + "hash": "sha256-ly0Ba+RUwjM4QrgW4GfCIYFZS6VEZ3lduHzN88bnHZA=" + }, + { + "pname": "Microsoft.Bcl.AsyncInterfaces", + "version": "1.1.1", + "hash": "sha256-fAcX4sxE0veWM1CZBtXR/Unky+6sE33yrV7ohrWGKig=" + }, + { + "pname": "Microsoft.Bcl.Cryptography", + "version": "8.0.0", + "hash": "sha256-p9aO+aVi4Vl8bRsYRFGJyc9Mqd2wkQ12RwWDwBhdt4I=" + }, + { + "pname": "Microsoft.CodeCoverage", + "version": "17.10.0", + "hash": "sha256-yQFwqVChRtIRpbtkJr92JH2i+O7xn91NGbYgnKs8G2g=" + }, + { + "pname": "Microsoft.CSharp", + "version": "4.0.1", + "hash": "sha256-0huoqR2CJ3Z9Q2peaKD09TV3E6saYSqDGZ290K8CrH8=" + }, + { + "pname": "Microsoft.CSharp", + "version": "4.7.0", + "hash": "sha256-Enknv2RsFF68lEPdrf5M+BpV1kHoLTVRApKUwuk/pj0=" + }, + { + "pname": "Microsoft.Data.SqlClient", + "version": "6.0.2", + "hash": "sha256-QkvGoucU8jo4PXCCgZ10v5I5hG0gyaVA36rOcu3IBLA=" + }, + { + "pname": "Microsoft.Data.SqlClient.SNI.runtime", + "version": "6.0.2", + "hash": "sha256-CQuJfjZYoRxfc07cSzUNCOOdzmUJu0p10J+WpcG2BJ0=" + }, + { + "pname": "Microsoft.DotNet.PlatformAbstractions", + "version": "2.1.0", + "hash": "sha256-vrZhYp94SjycUMGaVYCFWJ4p7KBKfqVyLWtIG73fzeM=" + }, + { + "pname": "Microsoft.Extensions.Caching.Abstractions", + "version": "8.0.0", + "hash": "sha256-xGpKrywQvU1Wm/WolYIxgHYEFfgkNGeJ+GGc5DT3phI=" + }, + { + "pname": "Microsoft.Extensions.Caching.Memory", + "version": "8.0.1", + "hash": "sha256-5Q0vzHo3ZvGs4nPBc/XlBF4wAwYO8pxq6EGdYjjXZps=" + }, + { + "pname": "Microsoft.Extensions.Configuration", + "version": "8.0.0", + "hash": "sha256-9BPsASlxrV8ilmMCjdb3TiUcm5vFZxkBnAI/fNBSEyA=" + }, + { + "pname": "Microsoft.Extensions.Configuration.Abstractions", + "version": "2.0.1", + "hash": "sha256-UXWzOFT0lc2Jtt3zNJ4xCEv0LCRPnWCnSoHQO2s3kZg=" + }, + { + "pname": "Microsoft.Extensions.Configuration.Abstractions", + "version": "8.0.0", + "hash": "sha256-4eBpDkf7MJozTZnOwQvwcfgRKQGcNXe0K/kF+h5Rl8o=" + }, + { + "pname": "Microsoft.Extensions.Configuration.Binder", + "version": "8.0.2", + "hash": "sha256-aGB0VuoC34YadAEqrwoaXLc5qla55pswDV2xLSmR7SE=" + }, + { + "pname": "Microsoft.Extensions.Configuration.CommandLine", + "version": "8.0.0", + "hash": "sha256-fmPC/o8S+weTtQJWykpnGHm6AKVU21xYE/CaHYU7zgg=" + }, + { + "pname": "Microsoft.Extensions.Configuration.EnvironmentVariables", + "version": "8.0.0", + "hash": "sha256-+bjFZvqCsMf2FRM2olqx/fub+QwfM1kBhjGVOT5HC48=" + }, + { + "pname": "Microsoft.Extensions.Configuration.FileExtensions", + "version": "8.0.1", + "hash": "sha256-iRA8L7BX/fe5LHCVOhzBSk30GfshP7V2Qj2nxpEvStA=" + }, + { + "pname": "Microsoft.Extensions.Configuration.Json", + "version": "8.0.1", + "hash": "sha256-J8EK/yhsfTpeSUY8F81ZTBV9APHiPUliN7d+n2OX9Ig=" + }, + { + "pname": "Microsoft.Extensions.Configuration.UserSecrets", + "version": "8.0.1", + "hash": "sha256-yGvWfwBhyFudcIv96pKWaQ1MIMOiv5LHSCn+9J7Doz0=" + }, + { + "pname": "Microsoft.Extensions.DependencyInjection", + "version": "2.0.0", + "hash": "sha256-+KqiuV8ncy9b1xhtDExh4s4U57tKxqx4pAyr6d//EQU=" + }, + { + "pname": "Microsoft.Extensions.DependencyInjection", + "version": "2.2.0", + "hash": "sha256-k/3UKceE1hbgv1sfV9H85hzWvMwooE8PcasHvHMhe1M=" + }, + { + "pname": "Microsoft.Extensions.DependencyInjection", + "version": "8.0.0", + "hash": "sha256-+qIDR8hRzreCHNEDtUcPfVHQdurzWPo/mqviCH78+EQ=" + }, + { + "pname": "Microsoft.Extensions.DependencyInjection", + "version": "8.0.1", + "hash": "sha256-O9g0jWS+jfGoT3yqKwZYJGL+jGSIeSbwmvomKDC3hTU=" + }, + { + "pname": "Microsoft.Extensions.DependencyInjection.Abstractions", + "version": "2.0.0", + "hash": "sha256-H1rEnq/veRWvmp8qmUsrQkQIcVlKilUNzmmKsxJ0md8=" + }, + { + "pname": "Microsoft.Extensions.DependencyInjection.Abstractions", + "version": "2.2.0", + "hash": "sha256-pf+UQToJnhAe8VuGjxyCTvua1nIX8n5NHzAUk3Jz38s=" + }, + { + "pname": "Microsoft.Extensions.DependencyInjection.Abstractions", + "version": "7.0.0", + "hash": "sha256-55lsa2QdX1CJn1TpW1vTnkvbGXKCeE9P0O6AkW49LaA=" + }, + { + "pname": "Microsoft.Extensions.DependencyInjection.Abstractions", + "version": "8.0.0", + "hash": "sha256-75KzEGWjbRELczJpCiJub+ltNUMMbz5A/1KQU+5dgP8=" + }, + { + "pname": "Microsoft.Extensions.DependencyInjection.Abstractions", + "version": "8.0.2", + "hash": "sha256-UfLfEQAkXxDaVPC7foE/J3FVEXd31Pu6uQIhTic3JgY=" + }, + { + "pname": "Microsoft.Extensions.DependencyModel", + "version": "2.1.0", + "hash": "sha256-7dFo5itkB2OgSgS7dN87h0Xf2p5/f6fl2Ka6+CTEhDY=" + }, + { + "pname": "Microsoft.Extensions.Diagnostics", + "version": "8.0.1", + "hash": "sha256-CraHNCaVlMiYx6ff9afT6U7RC/MoOCXM3pn2KrXkiLc=" + }, + { + "pname": "Microsoft.Extensions.Diagnostics.Abstractions", + "version": "8.0.1", + "hash": "sha256-d5DVXhA8qJFY9YbhZjsTqs5w5kDuxF5v+GD/WZR1QL0=" + }, + { + "pname": "Microsoft.Extensions.FileProviders.Abstractions", + "version": "8.0.0", + "hash": "sha256-uQSXmt47X2HGoVniavjLICbPtD2ReQOYQMgy3l0xuMU=" + }, + { + "pname": "Microsoft.Extensions.FileProviders.Physical", + "version": "8.0.0", + "hash": "sha256-29y5ZRQ1ZgzVOxHktYxyiH40kVgm5un2yTGdvuSWnRc=" + }, + { + "pname": "Microsoft.Extensions.FileSystemGlobbing", + "version": "2.0.1", + "hash": "sha256-QBdcLyJAHf10+RUlquXWTs155FZmHDRKbL0uzXZZPVw=" + }, + { + "pname": "Microsoft.Extensions.FileSystemGlobbing", + "version": "8.0.0", + "hash": "sha256-+Oz41JR5jdcJlCJOSpQIL5OMBNi+1Hl2d0JUHfES7sU=" + }, + { + "pname": "Microsoft.Extensions.Hosting", + "version": "8.0.1", + "hash": "sha256-FFLo6em0N2vaWg6//vaQhxoOgT9LLH5Y2KWkCeX5xQ4=" + }, + { + "pname": "Microsoft.Extensions.Hosting.Abstractions", + "version": "8.0.1", + "hash": "sha256-/bIVL9uvBQhV/KQmjA1ZjR74sMfaAlBb15sVXsGDEVA=" + }, + { + "pname": "Microsoft.Extensions.Hosting.WindowsServices", + "version": "8.0.1", + "hash": "sha256-JBrZuv1RxpJf5wR81g91bE1/JQgBeOtnJDvA98rlYKE=" + }, + { + "pname": "Microsoft.Extensions.Logging", + "version": "2.0.1", + "hash": "sha256-5VJLg/kfx3LWvCrWPx3407EKElA3m7Yn+NI4KtIyE7Y=" + }, + { + "pname": "Microsoft.Extensions.Logging", + "version": "8.0.0", + "hash": "sha256-Meh0Z0X7KyOEG4l0RWBcuHHihcABcvCyfUXgasmQ91o=" + }, + { + "pname": "Microsoft.Extensions.Logging", + "version": "8.0.1", + "hash": "sha256-vkfVw4tQEg86Xg18v6QO0Qb4Ysz0Njx57d1XcNuj6IU=" + }, + { + "pname": "Microsoft.Extensions.Logging.Abstractions", + "version": "2.0.1", + "hash": "sha256-J/NwPGVWtiNpwHP9M0tDR1eNUcFiz/r1Sn5v2xuE0tA=" + }, + { + "pname": "Microsoft.Extensions.Logging.Abstractions", + "version": "8.0.0", + "hash": "sha256-Jmddjeg8U5S+iBTwRlVAVLeIHxc4yrrNgqVMOB7EjM4=" + }, + { + "pname": "Microsoft.Extensions.Logging.Abstractions", + "version": "8.0.2", + "hash": "sha256-cHpe8X2BgYa5DzulZfq24rg8O2K5Lmq2OiLhoyAVgJc=" + }, + { + "pname": "Microsoft.Extensions.Logging.Configuration", + "version": "8.0.1", + "hash": "sha256-E2JbJG2EXlv2HUWLi17kIkAL6RC9rC2E18C3gAyOuaE=" + }, + { + "pname": "Microsoft.Extensions.Logging.Console", + "version": "8.0.1", + "hash": "sha256-2thhF1JbDNj3Bx2fcH7O26uHGNeMd9MYah6N60lIpIU=" + }, + { + "pname": "Microsoft.Extensions.Logging.Debug", + "version": "8.0.1", + "hash": "sha256-gKFqBg5lbjy5VBEcAuoQ/SsXAxvrYdBYOu9dV60eJKg=" + }, + { + "pname": "Microsoft.Extensions.Logging.EventLog", + "version": "8.0.1", + "hash": "sha256-1UkEOwl3Op2b3jTvpI10hHxIe9FqeVVy+VB1tZp6Lc8=" + }, + { + "pname": "Microsoft.Extensions.Logging.EventSource", + "version": "8.0.1", + "hash": "sha256-EINT/PgfB4Dvf+1JBzL1plPT35ezT7kyS8y/XMMgYxA=" + }, + { + "pname": "Microsoft.Extensions.Options", + "version": "2.0.1", + "hash": "sha256-hbe+3YXlSQ3urCX11D2MIZl1XrWvr+mmnBc/bj53zfY=" + }, + { + "pname": "Microsoft.Extensions.Options", + "version": "8.0.0", + "hash": "sha256-n2m4JSegQKUTlOsKLZUUHHKMq926eJ0w9N9G+I3FoFw=" + }, + { + "pname": "Microsoft.Extensions.Options", + "version": "8.0.2", + "hash": "sha256-AjcldddddtN/9aH9pg7ClEZycWtFHLi9IPe1GGhNQys=" + }, + { + "pname": "Microsoft.Extensions.Options.ConfigurationExtensions", + "version": "8.0.0", + "hash": "sha256-A5Bbzw1kiNkgirk5x8kyxwg9lLTcSngojeD+ocpG1RI=" + }, + { + "pname": "Microsoft.Extensions.Primitives", + "version": "2.0.0", + "hash": "sha256-q44LtMvyNEKSvgERvA+BrasKapP92Sc91QR4u2TJ9/Y=" + }, + { + "pname": "Microsoft.Extensions.Primitives", + "version": "8.0.0", + "hash": "sha256-FU8qj3DR8bDdc1c+WeGZx/PCZeqqndweZM9epcpXjSo=" + }, + { + "pname": "Microsoft.Identity.Client", + "version": "4.61.3", + "hash": "sha256-1cccC8EWlIQlJ3SSOB7CNImOYSaxsJpRHvlCgv2yOtA=" + }, + { + "pname": "Microsoft.Identity.Client.Extensions.Msal", + "version": "4.61.3", + "hash": "sha256-nFQ2C7S4BQ4nvQmGAc5Ar7/ynKyztvK7fPKrpJXaQFE=" + }, + { + "pname": "Microsoft.IdentityModel.Abstractions", + "version": "6.35.0", + "hash": "sha256-bxyYu6/QgaA4TQYBr5d+bzICL+ktlkdy/tb/1fBu00Q=" + }, + { + "pname": "Microsoft.IdentityModel.Abstractions", + "version": "7.5.0", + "hash": "sha256-C849ySgag1us+IfgbSsloz6HTKeuEkN14HGFv4OML1o=" + }, + { + "pname": "Microsoft.IdentityModel.JsonWebTokens", + "version": "7.5.0", + "hash": "sha256-TbU0dSLxUaTBxd9aLAlG4EeR2lrBE+6RJUlgefbqsQg=" + }, + { + "pname": "Microsoft.IdentityModel.Logging", + "version": "7.5.0", + "hash": "sha256-RdUbGTvnbB11pmWxEKRaP6uPI2ITEcB/PxqgxHl33uM=" + }, + { + "pname": "Microsoft.IdentityModel.Protocols", + "version": "7.5.0", + "hash": "sha256-SX8JpQ4HzFzngmh9QHGVz2GH7TrUdX8WXBSkykQFFaU=" + }, + { + "pname": "Microsoft.IdentityModel.Protocols.OpenIdConnect", + "version": "7.5.0", + "hash": "sha256-m4FYxiqNyU9FnqFJKcQnE7npc5HTulHdbk3bcooqWp8=" + }, + { + "pname": "Microsoft.IdentityModel.Tokens", + "version": "7.5.0", + "hash": "sha256-AI74ljCROXqXcktxc9T80NpBvwDZeVnRlJz+ofk1RVs=" + }, + { + "pname": "Microsoft.Net.Http.Headers", + "version": "8.0.16", + "hash": "sha256-6sB9B+GLETiyGhRMyD4U6ZuQpFtCL/oIPQr+9lB4peU=" + }, + { + "pname": "Microsoft.NET.Test.Sdk", + "version": "17.10.0", + "hash": "sha256-rkHIqB2mquNXF89XBTFpUL2z5msjTBsOcyjSBCh36I0=" + }, + { + "pname": "Microsoft.NETCore.Platforms", + "version": "1.0.1", + "hash": "sha256-mZotlGZqtrqDSoBrZhsxFe6fuOv5/BIo0w2Z2x0zVAU=" + }, + { + "pname": "Microsoft.NETCore.Platforms", + "version": "1.1.0", + "hash": "sha256-FeM40ktcObQJk4nMYShB61H/E8B7tIKfl9ObJ0IOcCM=" + }, + { + "pname": "Microsoft.NETCore.Platforms", + "version": "3.1.0", + "hash": "sha256-cnygditsEaU86bnYtIthNMymAHqaT/sf9Gjykhzqgb0=" + }, + { + "pname": "Microsoft.NETCore.Platforms", + "version": "5.0.0", + "hash": "sha256-LIcg1StDcQLPOABp4JRXIs837d7z0ia6+++3SF3jl1c=" + }, + { + "pname": "Microsoft.NETCore.Targets", + "version": "1.0.1", + "hash": "sha256-lxxw/Gy32xHi0fLgFWNj4YTFBSBkjx5l6ucmbTyf7V4=" + }, + { + "pname": "Microsoft.NETCore.Targets", + "version": "1.1.0", + "hash": "sha256-0AqQ2gMS8iNlYkrD+BxtIg7cXMnr9xZHtKAuN4bjfaQ=" + }, + { + "pname": "Microsoft.OpenApi", + "version": "1.6.23", + "hash": "sha256-YD2oxM/tlNpK5xUeHF85xdqcpBzHioUSyRjpN2A7KcY=" + }, + { + "pname": "Microsoft.SqlServer.Server", + "version": "1.0.0", + "hash": "sha256-mx/iqHmBMwA8Ulot0n6YFVIKsU1Tx7q4Tru7MSjbEgQ=" + }, + { + "pname": "Microsoft.TestPlatform.ObjectModel", + "version": "16.9.1", + "hash": "sha256-LZJLTWU2DOnuBiN/g+S+rwG2/BJtKrjydKnj3ujp98U=" + }, + { + "pname": "Microsoft.TestPlatform.ObjectModel", + "version": "17.10.0", + "hash": "sha256-3YjVGK2zEObksBGYg8b/CqoJgLQ1jUv4GCWNjDhLRh4=" + }, + { + "pname": "Microsoft.TestPlatform.TestHost", + "version": "17.10.0", + "hash": "sha256-+yzP3FY6WoOosSpYnB7duZLhOPUZMQYy8zJ1d3Q4hK4=" + }, + { + "pname": "Microsoft.Win32.Primitives", + "version": "4.3.0", + "hash": "sha256-mBNDmPXNTW54XLnPAUwBRvkIORFM7/j0D0I2SyQPDEg=" + }, + { + "pname": "Microsoft.Win32.SystemEvents", + "version": "4.7.0", + "hash": "sha256-GHxnD1Plb32GJWVWSv0Y51Kgtlb+cdKgOYVBYZSgVF4=" + }, + { + "pname": "MimeKit", + "version": "4.12.0", + "hash": "sha256-4i/RvXyXQsb6LlEs7tZWz5d5ab8mw3R8Wwp7FXSbMaA=" + }, + { + "pname": "Mono.Cecil", + "version": "0.11.1", + "hash": "sha256-J8+oOA/aJIit4nmhZ3NugJKRupHp9SgivRZUvMHP+jA=" + }, + { + "pname": "Mono.Nat", + "version": "3.0.1", + "hash": "sha256-AG7yzcuXoPFMBtJfWZbOZwx97TMemI16HhP9qHliw/c=" + }, + { + "pname": "Mono.Posix.NETStandard", + "version": "5.20.1.34-servarr20", + "hash": "sha256-6dHPPXtZRFLnNWISsEeQJhv5Umya+8ptZh8xhBXLOnM=", + "url": "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/9845f7c9-6c8c-4845-b5ee-58375c59e0d8/nuget/v3/flat2/mono.posix.netstandard/5.20.1.34-servarr20/mono.posix.netstandard.5.20.1.34-servarr20.nupkg" + }, + { + "pname": "MonoTorrent", + "version": "2.0.7", + "hash": "sha256-XaFeK3ornvYeLL1YuR60Yjne/hIOgb0orQ4duZ2AFgw=" + }, + { + "pname": "Moq", + "version": "4.17.2", + "hash": "sha256-EhgDJCox7CeyGzoXQnZ9DRRH1IFELtSNca6B6KVS6fw=" + }, + { + "pname": "NBuilder", + "version": "6.1.0", + "hash": "sha256-3EulDuYIUjs2PyKJVLzMgMr9opLik8A8v3hMZ10qEZ8=" + }, + { + "pname": "NETStandard.Library", + "version": "1.6.1", + "hash": "sha256-iNan1ix7RtncGWC9AjAZ2sk70DoxOsmEOgQ10fXm4Pw=" + }, + { + "pname": "NETStandard.Library", + "version": "2.0.0", + "hash": "sha256-Pp7fRylai8JrE1O+9TGfIEJrAOmnWTJRLWE+qJBahK0=" + }, + { + "pname": "Newtonsoft.Json", + "version": "13.0.1", + "hash": "sha256-K2tSVW4n4beRPzPu3rlVaBEMdGvWSv/3Q1fxaDh4Mjo=" + }, + { + "pname": "Newtonsoft.Json", + "version": "13.0.3", + "hash": "sha256-hy/BieY4qxBWVVsDqqOPaLy1QobiIapkbrESm6v2PHc=" + }, + { + "pname": "Newtonsoft.Json", + "version": "9.0.1", + "hash": "sha256-mYCBrgUhIJFzRuLLV9SIiIFHovzfR8Uuqfg6e08EnlU=" + }, + { + "pname": "NLog", + "version": "5.4.0", + "hash": "sha256-l2R0UHHCL02KPMC96e62AL2ONFD0PAty619y9UnD25A=" + }, + { + "pname": "NLog.Extensions.Logging", + "version": "5.4.0", + "hash": "sha256-9pVBguAKnjmbtKM3wBVBEzovXkoEXgqvB4IhiayAkVo=" + }, + { + "pname": "NLog.Layouts.ClefJsonLayout", + "version": "1.0.3", + "hash": "sha256-Rgf3s3Q9TXdzZHwb+VCBupazvmrgAPZcrKGBhV9Jh6Q=" + }, + { + "pname": "NLog.Targets.Syslog", + "version": "7.0.0", + "hash": "sha256-Yy6REt1UxkdFz+twa0zJVm635YHch7B6t9Pjj5FZUZc=" + }, + { + "pname": "Npgsql", + "version": "9.0.3", + "hash": "sha256-X3F05GNj3vNVl++VOV5TMYE5dvEe6cx0k+5yWo2Q/+o=" + }, + { + "pname": "NuGet.Frameworks", + "version": "5.0.0", + "hash": "sha256-WWLh+v9Y9as+WURW8tUPowQB8HWIiVJzbpKzEWTdMqI=" + }, + { + "pname": "NUnit", + "version": "3.14.0", + "hash": "sha256-CuP/q5HovPWfAW3Cty/QxRi7VpjykJ3TDLq5TENI6KY=" + }, + { + "pname": "NUnit3TestAdapter", + "version": "4.2.1", + "hash": "sha256-g73i3yqr0KnC0etKcAw9CmB6ZFAFvpxZn88s1glsND4=" + }, + { + "pname": "NunitXml.TestLogger", + "version": "3.0.131", + "hash": "sha256-5IqI/e+nm90CAaZHrcbYfCY+zu5FVcpAbV0CmsdOKyg=" + }, + { + "pname": "Polly", + "version": "8.5.2", + "hash": "sha256-IrN06ddOIJ0VYuVefe3LvfW0kX20ATRQkEBg9CBomRA=" + }, + { + "pname": "Polly.Contrib.WaitAndRetry", + "version": "1.1.1", + "hash": "sha256-InJ8IXAsZDAR4B/YzWCuEWRa/6Xf5oB049UJUkTOoSg=" + }, + { + "pname": "Polly.Core", + "version": "8.5.2", + "hash": "sha256-PAwsWqrCieCf/7Y87fV7XMKoaY2abCQNtI+4oyyMifk=" + }, + { + "pname": "RestSharp", + "version": "106.15.0", + "hash": "sha256-8UChXxz7AQmQpoozSBfwB6NVmt2+uJcN8TH7RtVfT7w=" + }, + { + "pname": "RestSharp.Serializers.SystemTextJson", + "version": "106.15.0", + "hash": "sha256-Aj3Ro8dkHXTrY2OpyXEQ0vITqz1ItvQRpDE40S3fr7U=" + }, + { + "pname": "ReusableTasks", + "version": "2.0.0", + "hash": "sha256-SjWKCeZtLkpDYzPuhHIJuLHjzAMFjm9jJSb0iWwyT2E=" + }, + { + "pname": "runtime.any.System.Collections", + "version": "4.3.0", + "hash": "sha256-4PGZqyWhZ6/HCTF2KddDsbmTTjxs2oW79YfkberDZS8=" + }, + { + "pname": "runtime.any.System.Diagnostics.Tools", + "version": "4.3.0", + "hash": "sha256-8yLKFt2wQxkEf7fNfzB+cPUCjYn2qbqNgQ1+EeY2h/I=" + }, + { + "pname": "runtime.any.System.Diagnostics.Tracing", + "version": "4.3.0", + "hash": "sha256-dsmTLGvt8HqRkDWP8iKVXJCS+akAzENGXKPV18W2RgI=" + }, + { + "pname": "runtime.any.System.Globalization", + "version": "4.3.0", + "hash": "sha256-PaiITTFI2FfPylTEk7DwzfKeiA/g/aooSU1pDcdwWLU=" + }, + { + "pname": "runtime.any.System.Globalization.Calendars", + "version": "4.3.0", + "hash": "sha256-AYh39tgXJVFu8aLi9Y/4rK8yWMaza4S4eaxjfcuEEL4=" + }, + { + "pname": "runtime.any.System.IO", + "version": "4.3.0", + "hash": "sha256-vej7ySRhyvM3pYh/ITMdC25ivSd0WLZAaIQbYj/6HVE=" + }, + { + "pname": "runtime.any.System.Reflection", + "version": "4.3.0", + "hash": "sha256-ns6f++lSA+bi1xXgmW1JkWFb2NaMD+w+YNTfMvyAiQk=" + }, + { + "pname": "runtime.any.System.Reflection.Extensions", + "version": "4.3.0", + "hash": "sha256-Y2AnhOcJwJVYv7Rp6Jz6ma0fpITFqJW+8rsw106K2X8=" + }, + { + "pname": "runtime.any.System.Reflection.Primitives", + "version": "4.3.0", + "hash": "sha256-LkPXtiDQM3BcdYkAm5uSNOiz3uF4J45qpxn5aBiqNXQ=" + }, + { + "pname": "runtime.any.System.Resources.ResourceManager", + "version": "4.3.0", + "hash": "sha256-9EvnmZslLgLLhJ00o5MWaPuJQlbUFcUF8itGQNVkcQ4=" + }, + { + "pname": "runtime.any.System.Runtime", + "version": "4.3.0", + "hash": "sha256-qwhNXBaJ1DtDkuRacgHwnZmOZ1u9q7N8j0cWOLYOELM=" + }, + { + "pname": "runtime.any.System.Runtime.Handles", + "version": "4.3.0", + "hash": "sha256-PQRACwnSUuxgVySO1840KvqCC9F8iI9iTzxNW0RcBS4=" + }, + { + "pname": "runtime.any.System.Runtime.InteropServices", + "version": "4.3.0", + "hash": "sha256-Kaw5PnLYIiqWbsoF3VKJhy7pkpoGsUwn4ZDCKscbbzA=" + }, + { + "pname": "runtime.any.System.Text.Encoding", + "version": "4.3.0", + "hash": "sha256-Q18B9q26MkWZx68exUfQT30+0PGmpFlDgaF0TnaIGCs=" + }, + { + "pname": "runtime.any.System.Text.Encoding.Extensions", + "version": "4.3.0", + "hash": "sha256-6MYj0RmLh4EVqMtO/MRqBi0HOn5iG4x9JimgCCJ+EFM=" + }, + { + "pname": "runtime.any.System.Threading.Tasks", + "version": "4.3.0", + "hash": "sha256-agdOM0NXupfHbKAQzQT8XgbI9B8hVEh+a/2vqeHctg4=" + }, + { + "pname": "runtime.any.System.Threading.Timer", + "version": "4.3.0", + "hash": "sha256-BgHxXCIbicVZtpgMimSXixhFC3V+p5ODqeljDjO8hCs=" + }, + { + "pname": "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl", + "version": "4.3.0", + "hash": "sha256-LXUPLX3DJxsU1Pd3UwjO1PO9NM2elNEDXeu2Mu/vNps=" + }, + { + "pname": "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl", + "version": "4.3.0", + "hash": "sha256-qeSqaUI80+lqw5MK4vMpmO0CZaqrmYktwp6L+vQAb0I=" + }, + { + "pname": "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl", + "version": "4.3.0", + "hash": "sha256-SrHqT9wrCBsxILWtaJgGKd6Odmxm8/Mh7Kh0CUkZVzA=" + }, + { + "pname": "runtime.native.System", + "version": "4.0.0", + "hash": "sha256-bmaM0ovT4X4aqDJOR255Yda/u3fmHZskU++lMnsy894=" + }, + { + "pname": "runtime.native.System", + "version": "4.3.0", + "hash": "sha256-ZBZaodnjvLXATWpXXakFgcy6P+gjhshFXmglrL5xD5Y=" + }, + { + "pname": "runtime.native.System.IO.Compression", + "version": "4.3.0", + "hash": "sha256-DWnXs4vlKoU6WxxvCArTJupV6sX3iBbZh8SbqfHace8=" + }, + { + "pname": "runtime.native.System.Net.Http", + "version": "4.3.0", + "hash": "sha256-c556PyheRwpYhweBjSfIwEyZHnAUB8jWioyKEcp/2dg=" + }, + { + "pname": "runtime.native.System.Security.Cryptography.Apple", + "version": "4.3.0", + "hash": "sha256-2IhBv0i6pTcOyr8FFIyfPEaaCHUmJZ8DYwLUwJ+5waw=" + }, + { + "pname": "runtime.native.System.Security.Cryptography.OpenSsl", + "version": "4.3.0", + "hash": "sha256-Jy01KhtcCl2wjMpZWH+X3fhHcVn+SyllWFY8zWlz/6I=" + }, + { + "pname": "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl", + "version": "4.3.0", + "hash": "sha256-wyv00gdlqf8ckxEdV7E+Ql9hJIoPcmYEuyeWb5Oz3mM=" + }, + { + "pname": "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl", + "version": "4.3.0", + "hash": "sha256-zi+b4sCFrA9QBiSGDD7xPV27r3iHGlV99gpyVUjRmc4=" + }, + { + "pname": "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple", + "version": "4.3.0", + "hash": "sha256-serkd4A7F6eciPiPJtUyJyxzdAtupEcWIZQ9nptEzIM=" + }, + { + "pname": "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl", + "version": "4.3.0", + "hash": "sha256-gybQU6mPgaWV3rBG2dbH6tT3tBq8mgze3PROdsuWnX0=" + }, + { + "pname": "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl", + "version": "4.3.0", + "hash": "sha256-VsP72GVveWnGUvS/vjOQLv1U80H2K8nZ4fDAmI61Hm4=" + }, + { + "pname": "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl", + "version": "4.3.0", + "hash": "sha256-4yKGa/IrNCKuQ3zaDzILdNPD32bNdy6xr5gdJigyF5g=" + }, + { + "pname": "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl", + "version": "4.3.0", + "hash": "sha256-HmdJhhRsiVoOOCcUvAwdjpMRiyuSwdcgEv2j9hxi+Zc=" + }, + { + "pname": "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl", + "version": "4.3.0", + "hash": "sha256-pVFUKuPPIx0edQKjzRon3zKq8zhzHEzko/lc01V/jdw=" + }, + { + "pname": "runtime.unix.Microsoft.Win32.Primitives", + "version": "4.3.0", + "hash": "sha256-LZb23lRXzr26tRS5aA0xyB08JxiblPDoA7HBvn6awXg=" + }, + { + "pname": "runtime.unix.System.Console", + "version": "4.3.0", + "hash": "sha256-AHkdKShTRHttqfMjmi+lPpTuCrM5vd/WRy6Kbtie190=" + }, + { + "pname": "runtime.unix.System.Diagnostics.Debug", + "version": "4.3.0", + "hash": "sha256-ReoazscfbGH+R6s6jkg5sIEHWNEvjEoHtIsMbpc7+tI=" + }, + { + "pname": "runtime.unix.System.IO.FileSystem", + "version": "4.3.0", + "hash": "sha256-Pf4mRl6YDK2x2KMh0WdyNgv0VUNdSKVDLlHqozecy5I=" + }, + { + "pname": "runtime.unix.System.Net.Primitives", + "version": "4.3.0", + "hash": "sha256-pHJ+I6i16MV6m77uhTC6GPY6jWGReE3SSP3fVB59ti0=" + }, + { + "pname": "runtime.unix.System.Net.Sockets", + "version": "4.3.0", + "hash": "sha256-IvgOeA2JuBjKl5yAVGjPYMPDzs9phb3KANs95H9v1w4=" + }, + { + "pname": "runtime.unix.System.Private.Uri", + "version": "4.3.0", + "hash": "sha256-c5tXWhE/fYbJVl9rXs0uHh3pTsg44YD1dJvyOA0WoMs=" + }, + { + "pname": "runtime.unix.System.Runtime.Extensions", + "version": "4.3.0", + "hash": "sha256-l8S9gt6dk3qYG6HYonHtdlYtBKyPb29uQ6NDjmrt3V4=" + }, + { + "pname": "Sentry", + "version": "4.0.2", + "hash": "sha256-TzsAxAYqB2SdcSl+r92+nd5obgUBW1DCFP/nXzAZE4U=" + }, + { + "pname": "Servarr.FluentMigrator", + "version": "3.3.2.9", + "hash": "sha256-vJEcb2uxbOAoYB8niFO+f3Zer7iNkfx6kF8NNkIjy9M=", + "url": "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator/3.3.2.9/servarr.fluentmigrator.3.3.2.9.nupkg" + }, + { + "pname": "Servarr.FluentMigrator.Abstractions", + "version": "3.3.2.9", + "hash": "sha256-lYrOaKbdDkxspsAOhnHj7QwQtR3tyy7Gy2K/9gaCBpg=", + "url": "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator.abstractions/3.3.2.9/servarr.fluentmigrator.abstractions.3.3.2.9.nupkg" + }, + { + "pname": "Servarr.FluentMigrator.Extensions.Oracle", + "version": "3.3.2.9", + "hash": "sha256-0vHyF48Jr9ZWaA8oQGoKAWWoddLKf/3Vi68GhJ6um5M=", + "url": "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator.extensions.oracle/3.3.2.9/servarr.fluentmigrator.extensions.oracle.3.3.2.9.nupkg" + }, + { + "pname": "Servarr.FluentMigrator.Extensions.Postgres", + "version": "3.3.2.9", + "hash": "sha256-D0AuYHgvs8/rALlHoMj5KCLhpp84YZ7nat4Y27sMDW8=", + "url": "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator.extensions.postgres/3.3.2.9/servarr.fluentmigrator.extensions.postgres.3.3.2.9.nupkg" + }, + { + "pname": "Servarr.FluentMigrator.Extensions.SqlAnywhere", + "version": "3.3.2.9", + "hash": "sha256-i2o82mr8cNVnP6yryzCKpVlhvlCSugphoICorDiR59c=", + "url": "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator.extensions.sqlanywhere/3.3.2.9/servarr.fluentmigrator.extensions.sqlanywhere.3.3.2.9.nupkg" + }, + { + "pname": "Servarr.FluentMigrator.Extensions.SqlServer", + "version": "3.3.2.9", + "hash": "sha256-Hw1CHZ5ZewkLKWpRH42Nm4rBv33aFFGPBhPZn1DjQRM=", + "url": "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator.extensions.sqlserver/3.3.2.9/servarr.fluentmigrator.extensions.sqlserver.3.3.2.9.nupkg" + }, + { + "pname": "Servarr.FluentMigrator.Runner", + "version": "3.3.2.9", + "hash": "sha256-koza7zbpTLpzFEnlrLkVxPVSSgZcD9bECZuFVFDZFQg=", + "url": "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator.runner/3.3.2.9/servarr.fluentmigrator.runner.3.3.2.9.nupkg" + }, + { + "pname": "Servarr.FluentMigrator.Runner.Core", + "version": "3.3.2.9", + "hash": "sha256-wLwHIeJrn/c3fKZG/xBf0Wxe0C/YFw4uDL5oDHgjw6c=", + "url": "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator.runner.core/3.3.2.9/servarr.fluentmigrator.runner.core.3.3.2.9.nupkg" + }, + { + "pname": "Servarr.FluentMigrator.Runner.Db2", + "version": "3.3.2.9", + "hash": "sha256-ciLtDPc4H/3JCa27ssdBMjNhxmW6polIRygauK0Ca8Y=", + "url": "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator.runner.db2/3.3.2.9/servarr.fluentmigrator.runner.db2.3.3.2.9.nupkg" + }, + { + "pname": "Servarr.FluentMigrator.Runner.Firebird", + "version": "3.3.2.9", + "hash": "sha256-rLNjYe0seSWj3YFvaaToCHZmHxi2Texu7i4NW/zgux0=", + "url": "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator.runner.firebird/3.3.2.9/servarr.fluentmigrator.runner.firebird.3.3.2.9.nupkg" + }, + { + "pname": "Servarr.FluentMigrator.Runner.Hana", + "version": "3.3.2.9", + "hash": "sha256-7Cmn2kwdoWwX+yNCQ6GPICLaPVSCPAbraLj/GHAX0YE=", + "url": "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator.runner.hana/3.3.2.9/servarr.fluentmigrator.runner.hana.3.3.2.9.nupkg" + }, + { + "pname": "Servarr.FluentMigrator.Runner.MySql", + "version": "3.3.2.9", + "hash": "sha256-MY4G+SFZqmQSeValnUVNz5QP1BU4Hv/CSOdrpsz179k=", + "url": "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator.runner.mysql/3.3.2.9/servarr.fluentmigrator.runner.mysql.3.3.2.9.nupkg" + }, + { + "pname": "Servarr.FluentMigrator.Runner.Oracle", + "version": "3.3.2.9", + "hash": "sha256-4Gy/rhaGYYhwtKywuxA5ECRJkYPu5chS4Iq9shf4J3g=", + "url": "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator.runner.oracle/3.3.2.9/servarr.fluentmigrator.runner.oracle.3.3.2.9.nupkg" + }, + { + "pname": "Servarr.FluentMigrator.Runner.Postgres", + "version": "3.3.2.9", + "hash": "sha256-MaZjUZENrdyzFDTVcJfDh4xIvbE7m8hLD2sUrZhgR54=", + "url": "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator.runner.postgres/3.3.2.9/servarr.fluentmigrator.runner.postgres.3.3.2.9.nupkg" + }, + { + "pname": "Servarr.FluentMigrator.Runner.Redshift", + "version": "3.3.2.9", + "hash": "sha256-jnKGzc/saQ8g7Xnqh/qE8divtR1z2tpAC16t6mIpwPA=", + "url": "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator.runner.redshift/3.3.2.9/servarr.fluentmigrator.runner.redshift.3.3.2.9.nupkg" + }, + { + "pname": "Servarr.FluentMigrator.Runner.SqlAnywhere", + "version": "3.3.2.9", + "hash": "sha256-qZ3tBRp8tkhzn8dCE90Lkqg5lT8QnZVp8hIulpSa7rs=", + "url": "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator.runner.sqlanywhere/3.3.2.9/servarr.fluentmigrator.runner.sqlanywhere.3.3.2.9.nupkg" + }, + { + "pname": "Servarr.FluentMigrator.Runner.SQLite", + "version": "3.3.2.9", + "hash": "sha256-dfRiBhT0kwhcWyc2Ib2rbzZj4ZlPfWI0u2CF8QljA6Q=", + "url": "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator.runner.sqlite/3.3.2.9/servarr.fluentmigrator.runner.sqlite.3.3.2.9.nupkg" + }, + { + "pname": "Servarr.FluentMigrator.Runner.SqlServer", + "version": "3.3.2.9", + "hash": "sha256-mDIfUT35CqEUbf858hrtJE0E65U7ZJlygoZAHi2Hlf8=", + "url": "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator.runner.sqlserver/3.3.2.9/servarr.fluentmigrator.runner.sqlserver.3.3.2.9.nupkg" + }, + { + "pname": "Servarr.FluentMigrator.Runner.SqlServerCe", + "version": "3.3.2.9", + "hash": "sha256-kx3ZjLj1zz/1buiWrAJPuB5GXCohpntpq4ak5WG1SR4=", + "url": "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator.runner.sqlserverce/3.3.2.9/servarr.fluentmigrator.runner.sqlserverce.3.3.2.9.nupkg" + }, + { + "pname": "SharpZipLib", + "version": "1.4.2", + "hash": "sha256-/giVqikworG2XKqfN9uLyjUSXr35zBuZ2FX2r8X/WUY=" + }, + { + "pname": "Swashbuckle.AspNetCore.Swagger", + "version": "8.1.4", + "hash": "sha256-6iqC/F581my20C+/3ORTM6uVUj+M095cRQyCIAo9AyA=" + }, + { + "pname": "Swashbuckle.AspNetCore.SwaggerGen", + "version": "8.1.4", + "hash": "sha256-m0ixgc45HCX2xrvrnhy3WYU/r/basjat535n4rN+vOY=" + }, + { + "pname": "System.AppContext", + "version": "4.1.0", + "hash": "sha256-v6YfyfrKmhww+EYHUq6cwYUMj00MQ6SOfJtcGVRlYzs=" + }, + { + "pname": "System.AppContext", + "version": "4.3.0", + "hash": "sha256-yg95LNQOwFlA1tWxXdQkVyJqT4AnoDc+ACmrNvzGiZg=" + }, + { + "pname": "System.Buffers", + "version": "4.3.0", + "hash": "sha256-XqZWb4Kd04960h4U9seivjKseGA/YEIpdplfHYHQ9jk=" + }, + { + "pname": "System.ClientModel", + "version": "1.0.0", + "hash": "sha256-yHb72M/Z8LeSZea9TKw2eD0SdYEoCNwVw6Z3695SC2Y=" + }, + { + "pname": "System.Collections", + "version": "4.0.11", + "hash": "sha256-puoFMkx4Z55C1XPxNw3np8nzNGjH+G24j43yTIsDRL0=" + }, + { + "pname": "System.Collections", + "version": "4.3.0", + "hash": "sha256-afY7VUtD6w/5mYqrce8kQrvDIfS2GXDINDh73IjxJKc=" + }, + { + "pname": "System.Collections.Concurrent", + "version": "4.3.0", + "hash": "sha256-KMY5DfJnDeIsa13DpqvyN8NkReZEMAFnlmNglVoFIXI=" + }, + { + "pname": "System.Collections.NonGeneric", + "version": "4.3.0", + "hash": "sha256-8/yZmD4jjvq7m68SPkJZLBQ79jOTOyT5lyzX4SCYAx8=" + }, + { + "pname": "System.Collections.Specialized", + "version": "4.3.0", + "hash": "sha256-QNg0JJNx+zXMQ26MJRPzH7THdtqjrNtGLUgaR1SdvOk=" + }, + { + "pname": "System.ComponentModel", + "version": "4.3.0", + "hash": "sha256-i00uujMO4JEDIEPKLmdLY3QJ6vdSpw6Gh9oOzkFYBiU=" + }, + { + "pname": "System.ComponentModel.Annotations", + "version": "4.4.1", + "hash": "sha256-8NZ0tWPqRYf3ovkn4OQapGsHeseEYKg91nqZAU33hrQ=" + }, + { + "pname": "System.ComponentModel.Primitives", + "version": "4.3.0", + "hash": "sha256-IOMJleuIBppmP4ECB3uftbdcgL7CCd56+oAD/Sqrbus=" + }, + { + "pname": "System.ComponentModel.TypeConverter", + "version": "4.3.0", + "hash": "sha256-PSDiPYt8PgTdTUBz+GH6lHCaM1YgfObneHnZsc8Fz54=" + }, + { + "pname": "System.Configuration.ConfigurationManager", + "version": "4.4.0", + "hash": "sha256-+8wGYllXnIxRzy9dLhZFB88GoPj8ivYXS0KUfcivT8I=" + }, + { + "pname": "System.Configuration.ConfigurationManager", + "version": "8.0.1", + "hash": "sha256-2vgU/BBFDOO2506UX6mtuBQ9c2bCShLLhoy67l7418E=" + }, + { + "pname": "System.Console", + "version": "4.3.0", + "hash": "sha256-Xh3PPBZr0pDbDaK8AEHbdGz7ePK6Yi1ZyRWI1JM6mbo=" + }, + { + "pname": "System.Data.SQLite.Core.Servarr", + "version": "1.0.115.5-18", + "hash": "sha256-H6QvKNKkW6PwHwDWAUVeXlqz9fJTEwIAS3YtcbOwpTc=", + "url": "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/f762697f-09fa-4960-89a1-64e48069bf6a/nuget/v3/flat2/system.data.sqlite.core.servarr/1.0.115.5-18/system.data.sqlite.core.servarr.1.0.115.5-18.nupkg" + }, + { + "pname": "System.Diagnostics.Debug", + "version": "4.0.11", + "hash": "sha256-P+rSQJVoN6M56jQbs76kZ9G3mAWFdtF27P/RijN8sj4=" + }, + { + "pname": "System.Diagnostics.Debug", + "version": "4.3.0", + "hash": "sha256-fkA79SjPbSeiEcrbbUsb70u9B7wqbsdM9s1LnoKj0gM=" + }, + { + "pname": "System.Diagnostics.DiagnosticSource", + "version": "4.3.0", + "hash": "sha256-OFJRb0ygep0Z3yDBLwAgM/Tkfs4JCDtsNhwDH9cd1Xw=" + }, + { + "pname": "System.Diagnostics.DiagnosticSource", + "version": "6.0.1", + "hash": "sha256-Xi8wrUjVlioz//TPQjFHqcV/QGhTqnTfUcltsNlcCJ4=" + }, + { + "pname": "System.Diagnostics.EventLog", + "version": "8.0.1", + "hash": "sha256-zvqd72pwgcGoa1nH3ZT1C0mP9k53vFLJ69r5MCQ1saA=" + }, + { + "pname": "System.Diagnostics.Tools", + "version": "4.0.1", + "hash": "sha256-vSBqTbmWXylvRa37aWyktym+gOpsvH43mwr6A962k6U=" + }, + { + "pname": "System.Diagnostics.Tools", + "version": "4.3.0", + "hash": "sha256-gVOv1SK6Ape0FQhCVlNOd9cvQKBvMxRX9K0JPVi8w0Y=" + }, + { + "pname": "System.Diagnostics.TraceSource", + "version": "4.3.0", + "hash": "sha256-xpxwaXsRcgso8Gj0cqY4+Hvvz6vZkmEMh5/J204j3M8=" + }, + { + "pname": "System.Diagnostics.Tracing", + "version": "4.3.0", + "hash": "sha256-hCETZpHHGVhPYvb4C0fh4zs+8zv4GPoixagkLZjpa9Q=" + }, + { + "pname": "System.Drawing.Common", + "version": "4.7.0", + "hash": "sha256-D3qG+xAe78lZHvlco9gHK2TEAM370k09c6+SQi873Hk=" + }, + { + "pname": "System.Dynamic.Runtime", + "version": "4.0.11", + "hash": "sha256-qWqFVxuXioesVftv2RVJZOnmojUvRjb7cS3Oh3oTit4=" + }, + { + "pname": "System.Dynamic.Runtime", + "version": "4.3.0", + "hash": "sha256-k75gjOYimIQtLBD5NDzwwi3ZMUBPRW3jmc3evDMMJbU=" + }, + { + "pname": "System.Formats.Asn1", + "version": "8.0.1", + "hash": "sha256-may/Wg+esmm1N14kQTG4ESMBi+GQKPp0ZrrBo/o6OXM=" + }, + { + "pname": "System.Globalization", + "version": "4.0.11", + "hash": "sha256-rbSgc2PIEc2c2rN6LK3qCREAX3DqA2Nq1WcLrZYsDBw=" + }, + { + "pname": "System.Globalization", + "version": "4.3.0", + "hash": "sha256-caL0pRmFSEsaoeZeWN5BTQtGrAtaQPwFi8YOZPZG5rI=" + }, + { + "pname": "System.Globalization.Calendars", + "version": "4.3.0", + "hash": "sha256-uNOD0EOVFgnS2fMKvMiEtI9aOw00+Pfy/H+qucAQlPc=" + }, + { + "pname": "System.Globalization.Extensions", + "version": "4.3.0", + "hash": "sha256-mmJWA27T0GRVuFP9/sj+4TrR4GJWrzNIk2PDrbr7RQk=" + }, + { + "pname": "System.IdentityModel.Tokens.Jwt", + "version": "7.5.0", + "hash": "sha256-K3OUOGrTYKJdnRTHERdSZWTxb5QNL4wBKCahcswdKrc=" + }, + { + "pname": "System.IO", + "version": "4.1.0", + "hash": "sha256-V6oyQFwWb8NvGxAwvzWnhPxy9dKOfj/XBM3tEC5aHrw=" + }, + { + "pname": "System.IO", + "version": "4.3.0", + "hash": "sha256-ruynQHekFP5wPrDiVyhNiRIXeZ/I9NpjK5pU+HPDiRY=" + }, + { + "pname": "System.IO.Compression", + "version": "4.3.0", + "hash": "sha256-f5PrQlQgj5Xj2ZnHxXW8XiOivaBvfqDao9Sb6AVinyA=" + }, + { + "pname": "System.IO.Compression.ZipFile", + "version": "4.3.0", + "hash": "sha256-WQl+JgWs+GaRMeiahTFUbrhlXIHapzcpTFXbRvAtvvs=" + }, + { + "pname": "System.IO.FileSystem", + "version": "4.0.1", + "hash": "sha256-4VKXFgcGYCTWVXjAlniAVq0dO3o5s8KHylg2wg2/7k0=" + }, + { + "pname": "System.IO.FileSystem", + "version": "4.3.0", + "hash": "sha256-vNIYnvlayuVj0WfRfYKpDrhDptlhp1pN8CYmlVd2TXw=" + }, + { + "pname": "System.IO.FileSystem.AccessControl", + "version": "5.0.0", + "hash": "sha256-c9MlDKJfj63YRvl7brRBNs59olrmbL+G1A6oTS8ytEc=" + }, + { + "pname": "System.IO.FileSystem.Primitives", + "version": "4.0.1", + "hash": "sha256-IpigKMomqb6pmYWkrlf0ZdpILtRluX2cX5sOKVW0Feg=" + }, + { + "pname": "System.IO.FileSystem.Primitives", + "version": "4.3.0", + "hash": "sha256-LMnfg8Vwavs9cMnq9nNH8IWtAtSfk0/Fy4s4Rt9r1kg=" + }, + { + "pname": "System.IO.Pipelines", + "version": "8.0.0", + "hash": "sha256-LdpB1s4vQzsOODaxiKstLks57X9DTD5D6cPx8DE1wwE=" + }, + { + "pname": "System.Linq", + "version": "4.1.0", + "hash": "sha256-ZQpFtYw5N1F1aX0jUK3Tw+XvM5tnlnshkTCNtfVA794=" + }, + { + "pname": "System.Linq", + "version": "4.3.0", + "hash": "sha256-R5uiSL3l6a3XrXSSL6jz+q/PcyVQzEAByiuXZNSqD/A=" + }, + { + "pname": "System.Linq.Expressions", + "version": "4.1.0", + "hash": "sha256-7zqB+FXgkvhtlBzpcZyd81xczWP0D3uWssyAGw3t7b4=" + }, + { + "pname": "System.Linq.Expressions", + "version": "4.3.0", + "hash": "sha256-+3pvhZY7rip8HCbfdULzjlC9FPZFpYoQxhkcuFm2wk8=" + }, + { + "pname": "System.Memory", + "version": "4.6.3", + "hash": "sha256-JgeK63WMmumF6L+FH5cwJgYdpqXrSDcgTQwtIgTHKVU=" + }, + { + "pname": "System.Memory.Data", + "version": "1.0.2", + "hash": "sha256-XiVrVQZQIz4NgjiK/wtH8iZhhOZ9MJ+X2hL2/8BrGN0=" + }, + { + "pname": "System.Net.Http", + "version": "4.3.0", + "hash": "sha256-UoBB7WPDp2Bne/fwxKF0nE8grJ6FzTMXdT/jfsphj8Q=" + }, + { + "pname": "System.Net.NameResolution", + "version": "4.3.0", + "hash": "sha256-eGZwCBExWsnirWBHyp2sSSSXp6g7I6v53qNmwPgtJ5c=" + }, + { + "pname": "System.Net.Primitives", + "version": "4.3.0", + "hash": "sha256-MY7Z6vOtFMbEKaLW9nOSZeAjcWpwCtdO7/W1mkGZBzE=" + }, + { + "pname": "System.Net.Sockets", + "version": "4.3.0", + "hash": "sha256-il7dr5VT/QWDg/0cuh+4Es2u8LY//+qqiY9BZmYxSus=" + }, + { + "pname": "System.Numerics.Vectors", + "version": "4.5.0", + "hash": "sha256-qdSTIFgf2htPS+YhLGjAGiLN8igCYJnCCo6r78+Q+c8=" + }, + { + "pname": "System.ObjectModel", + "version": "4.0.12", + "hash": "sha256-MudZ/KYcvYsn2cST3EE049mLikrNkmE7QoUoYKKby+s=" + }, + { + "pname": "System.ObjectModel", + "version": "4.3.0", + "hash": "sha256-gtmRkWP2Kwr3nHtDh0yYtce38z1wrGzb6fjm4v8wN6Q=" + }, + { + "pname": "System.Private.Uri", + "version": "4.3.0", + "hash": "sha256-fVfgcoP4AVN1E5wHZbKBIOPYZ/xBeSIdsNF+bdukIRM=" + }, + { + "pname": "System.Reflection", + "version": "4.1.0", + "hash": "sha256-idZHGH2Yl/hha1CM4VzLhsaR8Ljo/rV7TYe7mwRJSMs=" + }, + { + "pname": "System.Reflection", + "version": "4.3.0", + "hash": "sha256-NQSZRpZLvtPWDlvmMIdGxcVuyUnw92ZURo0hXsEshXY=" + }, + { + "pname": "System.Reflection.Emit", + "version": "4.0.1", + "hash": "sha256-F1MvYoQWHCY89/O4JBwswogitqVvKuVfILFqA7dmuHk=" + }, + { + "pname": "System.Reflection.Emit", + "version": "4.3.0", + "hash": "sha256-5LhkDmhy2FkSxulXR+bsTtMzdU3VyyuZzsxp7/DwyIU=" + }, + { + "pname": "System.Reflection.Emit", + "version": "4.7.0", + "hash": "sha256-Fw/CSRD+wajH1MqfKS3Q/sIrUH7GN4K+F+Dx68UPNIg=" + }, + { + "pname": "System.Reflection.Emit.ILGeneration", + "version": "4.0.1", + "hash": "sha256-YG+eJBG5P+5adsHiw/lhJwvREnvdHw6CJyS8ZV4Ujd0=" + }, + { + "pname": "System.Reflection.Emit.ILGeneration", + "version": "4.3.0", + "hash": "sha256-mKRknEHNls4gkRwrEgi39B+vSaAz/Gt3IALtS98xNnA=" + }, + { + "pname": "System.Reflection.Emit.Lightweight", + "version": "4.0.1", + "hash": "sha256-uVvNOnL64CPqsgZP2OLqNmxdkZl6Q0fTmKmv9gcBi+g=" + }, + { + "pname": "System.Reflection.Emit.Lightweight", + "version": "4.3.0", + "hash": "sha256-rKx4a9yZKcajloSZHr4CKTVJ6Vjh95ni+zszPxWjh2I=" + }, + { + "pname": "System.Reflection.Extensions", + "version": "4.0.1", + "hash": "sha256-NsfmzM9G/sN3H8X2cdnheTGRsh7zbRzvegnjDzDH/FQ=" + }, + { + "pname": "System.Reflection.Extensions", + "version": "4.3.0", + "hash": "sha256-mMOCYzUenjd4rWIfq7zIX9PFYk/daUyF0A8l1hbydAk=" + }, + { + "pname": "System.Reflection.Metadata", + "version": "1.5.0", + "hash": "sha256-wM75ACJUeypeOdaBUj4oTYiSWmg7A1usMpwRQXjSGK8=" + }, + { + "pname": "System.Reflection.Metadata", + "version": "1.6.0", + "hash": "sha256-JJfgaPav7UfEh4yRAQdGhLZF1brr0tUWPl6qmfNWq/E=" + }, + { + "pname": "System.Reflection.Primitives", + "version": "4.0.1", + "hash": "sha256-SFSfpWEyCBMAOerrMCOiKnpT+UAWTvRcmoRquJR6Vq0=" + }, + { + "pname": "System.Reflection.Primitives", + "version": "4.3.0", + "hash": "sha256-5ogwWB4vlQTl3jjk1xjniG2ozbFIjZTL9ug0usZQuBM=" + }, + { + "pname": "System.Reflection.TypeExtensions", + "version": "4.1.0", + "hash": "sha256-R0YZowmFda+xzKNR4kKg7neFoE30KfZwp/IwfRSKVK4=" + }, + { + "pname": "System.Reflection.TypeExtensions", + "version": "4.3.0", + "hash": "sha256-4U4/XNQAnddgQIHIJq3P2T80hN0oPdU2uCeghsDTWng=" + }, + { + "pname": "System.Resources.ResourceManager", + "version": "4.0.1", + "hash": "sha256-cZ2/3/fczLjEpn6j3xkgQV9ouOVjy4Kisgw5xWw9kSw=" + }, + { + "pname": "System.Resources.ResourceManager", + "version": "4.3.0", + "hash": "sha256-idiOD93xbbrbwwSnD4mORA9RYi/D/U48eRUsn/WnWGo=" + }, + { + "pname": "System.Runtime", + "version": "4.1.0", + "hash": "sha256-FViNGM/4oWtlP6w0JC0vJU+k9efLKZ+yaXrnEeabDQo=" + }, + { + "pname": "System.Runtime", + "version": "4.3.0", + "hash": "sha256-51813WXpBIsuA6fUtE5XaRQjcWdQ2/lmEokJt97u0Rg=" + }, + { + "pname": "System.Runtime.CompilerServices.Unsafe", + "version": "4.4.0", + "hash": "sha256-SeTI4+yVRO2SmAKgOrMni4070OD+Oo8L1YiEVeKDyig=" + }, + { + "pname": "System.Runtime.CompilerServices.Unsafe", + "version": "6.0.0", + "hash": "sha256-bEG1PnDp7uKYz/OgLOWs3RWwQSVYm+AnPwVmAmcgp2I=" + }, + { + "pname": "System.Runtime.Extensions", + "version": "4.1.0", + "hash": "sha256-X7DZ5CbPY7jHs20YZ7bmcXs9B5Mxptu/HnBUvUnNhGc=" + }, + { + "pname": "System.Runtime.Extensions", + "version": "4.3.0", + "hash": "sha256-wLDHmozr84v1W2zYCWYxxj0FR0JDYHSVRaRuDm0bd/o=" + }, + { + "pname": "System.Runtime.Handles", + "version": "4.0.1", + "hash": "sha256-j2QgVO9ZOjv7D1het98CoFpjoYgxjupuIhuBUmLLH7w=" + }, + { + "pname": "System.Runtime.Handles", + "version": "4.3.0", + "hash": "sha256-KJ5aXoGpB56Y6+iepBkdpx/AfaJDAitx4vrkLqR7gms=" + }, + { + "pname": "System.Runtime.InteropServices", + "version": "4.1.0", + "hash": "sha256-QceAYlJvkPRJc/+5jR+wQpNNI3aqGySWWSO30e/FfQY=" + }, + { + "pname": "System.Runtime.InteropServices", + "version": "4.3.0", + "hash": "sha256-8sDH+WUJfCR+7e4nfpftj/+lstEiZixWUBueR2zmHgI=" + }, + { + "pname": "System.Runtime.InteropServices.RuntimeInformation", + "version": "4.0.0", + "hash": "sha256-5j53amb76A3SPiE3B0llT2XPx058+CgE7OXL4bLalT4=" + }, + { + "pname": "System.Runtime.InteropServices.RuntimeInformation", + "version": "4.3.0", + "hash": "sha256-MYpl6/ZyC6hjmzWRIe+iDoldOMW1mfbwXsduAnXIKGA=" + }, + { + "pname": "System.Runtime.Loader", + "version": "4.3.0", + "hash": "sha256-syG1GTFjYbwX146BD/L7t55j+DZqpHDc6z28kdSNzx0=" + }, + { + "pname": "System.Runtime.Numerics", + "version": "4.3.0", + "hash": "sha256-P5jHCgMbgFMYiONvzmaKFeOqcAIDPu/U8bOVrNPYKqc=" + }, + { + "pname": "System.Runtime.Serialization.Primitives", + "version": "4.1.1", + "hash": "sha256-80B05oxJbPLGq2pGOSl6NlZvintX9A1CNpna2aN0WRA=" + }, + { + "pname": "System.Security.AccessControl", + "version": "4.7.0", + "hash": "sha256-/9ZCPIHLdhzq7OW4UKqTsR0O93jjHd6BRG1SRwgHE1g=" + }, + { + "pname": "System.Security.AccessControl", + "version": "5.0.0", + "hash": "sha256-ueSG+Yn82evxyGBnE49N4D+ngODDXgornlBtQ3Omw54=" + }, + { + "pname": "System.Security.Claims", + "version": "4.3.0", + "hash": "sha256-Fua/rDwAqq4UByRVomAxMPmDBGd5eImRqHVQIeSxbks=" + }, + { + "pname": "System.Security.Cryptography.Algorithms", + "version": "4.3.0", + "hash": "sha256-tAJvNSlczYBJ3Ed24Ae27a55tq/n4D3fubNQdwcKWA8=" + }, + { + "pname": "System.Security.Cryptography.Cng", + "version": "4.3.0", + "hash": "sha256-u17vy6wNhqok91SrVLno2M1EzLHZm6VMca85xbVChsw=" + }, + { + "pname": "System.Security.Cryptography.Csp", + "version": "4.3.0", + "hash": "sha256-oefdTU/Z2PWU9nlat8uiRDGq/PGZoSPRgkML11pmvPQ=" + }, + { + "pname": "System.Security.Cryptography.Encoding", + "version": "4.3.0", + "hash": "sha256-Yuge89N6M+NcblcvXMeyHZ6kZDfwBv3LPMDiF8HhJss=" + }, + { + "pname": "System.Security.Cryptography.OpenSsl", + "version": "4.3.0", + "hash": "sha256-DL+D2sc2JrQiB4oAcUggTFyD8w3aLEjJfod5JPe+Oz4=" + }, + { + "pname": "System.Security.Cryptography.Pkcs", + "version": "8.0.1", + "hash": "sha256-KMNIkJ3yQ/5O6WIhPjyAIarsvIMhkp26A6aby5KkneU=" + }, + { + "pname": "System.Security.Cryptography.Primitives", + "version": "4.3.0", + "hash": "sha256-fnFi7B3SnVj5a+BbgXnbjnGNvWrCEU6Hp/wjsjWz318=" + }, + { + "pname": "System.Security.Cryptography.ProtectedData", + "version": "4.4.0", + "hash": "sha256-Ri53QmFX8I8UH0x4PikQ1ZA07ZSnBUXStd5rBfGWFOE=" + }, + { + "pname": "System.Security.Cryptography.ProtectedData", + "version": "4.7.0", + "hash": "sha256-dZfs5q3Ij1W1eJCfYjxI2o+41aSiFpaAugpoECaCOug=" + }, + { + "pname": "System.Security.Cryptography.ProtectedData", + "version": "8.0.0", + "hash": "sha256-fb0pa9sQxN+mr0vnXg1Igbx49CaOqS+GDkTfWNboUvs=" + }, + { + "pname": "System.Security.Cryptography.X509Certificates", + "version": "4.3.0", + "hash": "sha256-MG3V/owDh273GCUPsGGraNwaVpcydupl3EtPXj6TVG0=" + }, + { + "pname": "System.Security.Permissions", + "version": "4.7.0", + "hash": "sha256-BGgXMLUi5rxVmmChjIhcXUxisJjvlNToXlyaIbUxw40=" + }, + { + "pname": "System.Security.Principal", + "version": "4.3.0", + "hash": "sha256-rjudVUHdo8pNJg2EVEn0XxxwNo5h2EaYo+QboPkXlYk=" + }, + { + "pname": "System.Security.Principal.Windows", + "version": "4.3.0", + "hash": "sha256-mbdLVUcEwe78p3ZnB6jYsizNEqxMaCAWI3tEQNhRQAE=" + }, + { + "pname": "System.Security.Principal.Windows", + "version": "4.7.0", + "hash": "sha256-rWBM2U8Kq3rEdaa1MPZSYOOkbtMGgWyB8iPrpIqmpqg=" + }, + { + "pname": "System.Security.Principal.Windows", + "version": "5.0.0", + "hash": "sha256-CBOQwl9veFkrKK2oU8JFFEiKIh/p+aJO+q9Tc2Q/89Y=" + }, + { + "pname": "System.ServiceModel.Syndication", + "version": "8.0.0", + "hash": "sha256-vKgiDGQBcaEQiWpfU6kGRtlJslBQXtFGqF+EVk/u7kI=" + }, + { + "pname": "System.ServiceProcess.ServiceController", + "version": "8.0.1", + "hash": "sha256-2cXTzNOyXqJinFPzdVJ9Gu6qrFtycfivu7RHDzBJic8=" + }, + { + "pname": "System.Text.Encoding", + "version": "4.0.11", + "hash": "sha256-PEailOvG05CVgPTyKLtpAgRydlSHmtd5K0Y8GSHY2Lc=" + }, + { + "pname": "System.Text.Encoding", + "version": "4.3.0", + "hash": "sha256-GctHVGLZAa/rqkBNhsBGnsiWdKyv6VDubYpGkuOkBLg=" + }, + { + "pname": "System.Text.Encoding.CodePages", + "version": "8.0.0", + "hash": "sha256-fjCLQc1PRW0Ix5IZldg0XKv+J1DqPSfu9pjMyNBp7dE=" + }, + { + "pname": "System.Text.Encoding.Extensions", + "version": "4.0.11", + "hash": "sha256-+kf7J3dEhgCbnCM5vHYlsTm5/R/Ud0Jr6elpHm922iI=" + }, + { + "pname": "System.Text.Encoding.Extensions", + "version": "4.3.0", + "hash": "sha256-vufHXg8QAKxHlujPHHcrtGwAqFmsCD6HKjfDAiHyAYc=" + }, + { + "pname": "System.Text.Encodings.Web", + "version": "4.7.2", + "hash": "sha256-CUZOulSeRy1CGBm7mrNrTumA9od9peKiIDR/Nb1B4io=" + }, + { + "pname": "System.Text.Json", + "version": "5.0.2", + "hash": "sha256-3eHI5WsaclD9/iV4clLtSAurQxpcJ/qsZA82lkTjoG0=" + }, + { + "pname": "System.Text.Json", + "version": "8.0.5", + "hash": "sha256-yKxo54w5odWT6nPruUVsaX53oPRe+gKzGvLnnxtwP68=" + }, + { + "pname": "System.Text.RegularExpressions", + "version": "4.1.0", + "hash": "sha256-x6OQN6MCN7S0fJ6EFTfv4rczdUWjwuWE9QQ0P6fbh9c=" + }, + { + "pname": "System.Text.RegularExpressions", + "version": "4.3.0", + "hash": "sha256-VLCk1D1kcN2wbAe3d0YQM/PqCsPHOuqlBY1yd2Yo+K0=" + }, + { + "pname": "System.Threading", + "version": "4.0.11", + "hash": "sha256-mob1Zv3qLQhQ1/xOLXZmYqpniNUMCfn02n8ZkaAhqac=" + }, + { + "pname": "System.Threading", + "version": "4.3.0", + "hash": "sha256-ZDQ3dR4pzVwmaqBg4hacZaVenQ/3yAF/uV7BXZXjiWc=" + }, + { + "pname": "System.Threading.Tasks", + "version": "4.0.11", + "hash": "sha256-5SLxzFg1df6bTm2t09xeI01wa5qQglqUwwJNlQPJIVs=" + }, + { + "pname": "System.Threading.Tasks", + "version": "4.3.0", + "hash": "sha256-Z5rXfJ1EXp3G32IKZGiZ6koMjRu0n8C1NGrwpdIen4w=" + }, + { + "pname": "System.Threading.Tasks.Extensions", + "version": "4.0.0", + "hash": "sha256-+YdcPkMhZhRbMZHnfsDwpNbUkr31X7pQFGxXYcAPZbE=" + }, + { + "pname": "System.Threading.Tasks.Extensions", + "version": "4.3.0", + "hash": "sha256-X2hQ5j+fxcmnm88Le/kSavjiGOmkcumBGTZKBLvorPc=" + }, + { + "pname": "System.Threading.Tasks.Extensions", + "version": "4.5.4", + "hash": "sha256-owSpY8wHlsUXn5xrfYAiu847L6fAKethlvYx97Ri1ng=" + }, + { + "pname": "System.Threading.ThreadPool", + "version": "4.3.0", + "hash": "sha256-wW0QdvssRoaOfQLazTGSnwYTurE4R8FxDx70pYkL+gg=" + }, + { + "pname": "System.Threading.Timer", + "version": "4.3.0", + "hash": "sha256-pmhslmhQhP32TWbBzoITLZ4BoORBqYk25OWbru04p9s=" + }, + { + "pname": "System.ValueTuple", + "version": "4.4.0", + "hash": "sha256-LqpI3bSaXqVPqfEdfsWE2qX9tzFV6VPU6x4A/fVzzfM=" + }, + { + "pname": "System.ValueTuple", + "version": "4.6.1", + "hash": "sha256-Hb87MPcNdHQRlREDzFEKU8ZqtKN26bjyAiimJmm6LWI=" + }, + { + "pname": "System.Windows.Extensions", + "version": "4.7.0", + "hash": "sha256-yW+GvQranReaqPw5ZFv+mSjByQ5y1pRLl05JIEf3tYU=" + }, + { + "pname": "System.Xml.ReaderWriter", + "version": "4.0.11", + "hash": "sha256-haZAFFQ9Sl2DhfvEbdx2YRqKEoxNMU5STaqpMmXw0zA=" + }, + { + "pname": "System.Xml.ReaderWriter", + "version": "4.3.0", + "hash": "sha256-QQ8KgU0lu4F5Unh+TbechO//zaAGZ4MfgvW72Cn1hzA=" + }, + { + "pname": "System.Xml.XDocument", + "version": "4.0.11", + "hash": "sha256-KPz1kxe0RUBM+aoktJ/f9p51GudMERU8Pmwm//HdlFg=" + }, + { + "pname": "System.Xml.XDocument", + "version": "4.3.0", + "hash": "sha256-rWtdcmcuElNOSzCehflyKwHkDRpiOhJJs8CeQ0l1CCI=" + }, + { + "pname": "System.Xml.XmlDocument", + "version": "4.3.0", + "hash": "sha256-kbuV4Y7rVJkfMp2Kgoi8Zvdatm9CZNmlKB3GZgANvy4=" + }, + { + "pname": "YamlDotNet", + "version": "16.3.0", + "hash": "sha256-4Gi8wSQ8Rsi/3+LyegJr//A83nxn2fN8LN1wvSSp39Q=" + } +] diff --git a/pkgs/by-name/pr/prowlarr/package.nix b/pkgs/by-name/pr/prowlarr/package.nix index 1f8fa5a9a97c..0266ae7db6fa 100644 --- a/pkgs/by-name/pr/prowlarr/package.nix +++ b/pkgs/by-name/pr/prowlarr/package.nix @@ -1,100 +1,195 @@ { lib, - stdenv, - fetchurl, - mono, - libmediainfo, + stdenvNoCC, + fetchFromGitHub, + buildDotnetModule, + dotnetCorePackages, sqlite, - curl, - makeWrapper, - icu, - dotnet-runtime, - openssl, + fetchYarnDeps, + yarn, + fixup-yarn-lock, + nodejs, nixosTests, - zlib, + # update script + writers, + python3Packages, + nix, + prefetch-yarn-deps, + fetchpatch, + applyPatches, }: let - pname = "prowlarr"; - - unsupported = throw "Unsupported system ${stdenv.hostPlatform.system} for ${pname}"; - - os = - if stdenv.hostPlatform.isDarwin then - "osx" - else if stdenv.hostPlatform.isLinux then - "linux" - else - unsupported; - - arch = - { - aarch64-darwin = "arm64"; - aarch64-linux = "arm64"; - x86_64-darwin = "x64"; - x86_64-linux = "x64"; - } - .${stdenv.hostPlatform.system} or unsupported; - - hash = - { - aarch64-darwin = "sha256-IkFkQoEPVaV+eVp2DkZECXTkzJyyNYTUBsCBdXCBZC8="; - aarch64-linux = "sha256-uwg5Ec9MC6jLwNdauF1tj2gSkhWdyhvWnUTLt8P1OZw="; - x86_64-darwin = "sha256-mdDZvKyhKXnHEKvZRH8Di6dZP80AEktnkMOnIZW+Gik="; - x86_64-linux = "sha256-N0KDb6MsGAJKSh5GSm7aiamjflHRXb06fL1KM2T1+bg="; - } - .${stdenv.hostPlatform.system} or unsupported; + version = "1.37.0.5076"; + # The dotnet8 compatibility patches also change `yarn.lock`, so we must pass + # the already patched lockfile to `fetchYarnDeps`. + src = applyPatches { + src = fetchFromGitHub { + owner = "Prowlarr"; + repo = "Prowlarr"; + tag = "v${version}"; + hash = "sha256-uSdZaPq/aXehmRKMobwYNs5iYGPv5R76Ix9lCEVdLzM="; + }; + postPatch = '' + mv src/NuGet.config NuGet.Config + ''; + patches = lib.optionals (lib.versionOlder version "2.0") [ + # See https://github.com/Prowlarr/Prowlarr/pull/2399 + # Unfortunately, the .NET 8 upgrade will be merged into the v2 branch, + # and it may take some time for that to become stable. + # However, the patches cleanly apply to v1 as well. + (fetchpatch { + name = "dotnet8-compatibility"; + url = "https://github.com/Prowlarr/Prowlarr/commit/21c408a7dac8abaac91c05958f18a556220b2304.patch"; + hash = "sha256-Es7JEXycOJPMXN+Kgv4wRnJA+l6zltUdP2i/wVodTBs="; + }) + (fetchpatch { + name = "dotnet8-darwin-compatibility"; + url = "https://github.com/Prowlarr/Prowlarr/commit/7a1fca5e23a3e75a9a2b2e1073a33eaa2ce865fe.patch"; + hash = "sha256-bReCHXC3RHgm1MYmE2kGqStt4fuBHowcupLIXT3fEes="; + }) + (fetchpatch { + name = "bump-swashbuckle-version"; + url = "https://github.com/Prowlarr/Prowlarr/commit/8eec321a0eaa396e2f964576e5883890c719b202.patch"; + hash = "sha256-SOdzGvq8FFYa451zTOw8yD1CDvM++AiFYFHhFW5Soco="; + }) + ]; + }; + rid = dotnetCorePackages.systemToDotnetRid stdenvNoCC.hostPlatform.system; in -stdenv.mkDerivation rec { - inherit pname; - version = "1.36.3.5071"; +buildDotnetModule { + pname = "prowlarr"; + inherit version src; - src = fetchurl { - url = "https://github.com/Prowlarr/Prowlarr/releases/download/v${version}/Prowlarr.master.${version}.${os}-core-${arch}.tar.gz"; - inherit hash; + strictDeps = true; + nativeBuildInputs = [ + nodejs + yarn + prefetch-yarn-deps + fixup-yarn-lock + ]; + + yarnOfflineCache = fetchYarnDeps { + yarnLock = "${src}/yarn.lock"; + hash = "sha256-QVyjo/Zshy+61qocGKa3tZS8gnHvvVqenf79FkiXDBM="; }; - nativeBuildInputs = [ makeWrapper ]; - - installPhase = '' - runHook preInstall - - mkdir -p $out/{bin,share/${pname}-${version}} - cp -r * $out/share/${pname}-${version}/. - - makeWrapper "${dotnet-runtime}/bin/dotnet" $out/bin/Prowlarr \ - --add-flags "$out/share/${pname}-${version}/Prowlarr.dll" \ - --prefix LD_LIBRARY_PATH : ${ - lib.makeLibraryPath [ - curl - sqlite - libmediainfo - mono - openssl - icu - zlib - ] - } - - runHook postInstall + postConfigure = '' + yarn config --offline set yarn-offline-mirror "$yarnOfflineCache" + fixup-yarn-lock yarn.lock + yarn install --offline --frozen-lockfile --ignore-platform --ignore-scripts --no-progress --non-interactive + patchShebangs --build node_modules + ''; + postBuild = '' + yarn --offline run build --env production + ''; + postInstall = '' + cp -a -- _output/UI "$out/lib/prowlarr/UI" ''; + nugetDeps = ./deps.json; + + runtimeDeps = [ sqlite ]; + + dotnet-sdk = dotnetCorePackages.sdk_8_0; + dotnet-runtime = dotnetCorePackages.aspnetcore_8_0; + + doCheck = true; + + __darwinAllowLocalNetworking = true; # for tests + + __structuredAttrs = true; # for Copyright property that contains spaces + + executables = [ "Prowlarr" ]; + + projectFile = [ + "src/NzbDrone.Console/Prowlarr.Console.csproj" + "src/NzbDrone.Mono/Prowlarr.Mono.csproj" + ]; + + testProjectFile = [ + "src/Prowlarr.Api.V1.Test/Prowlarr.Api.V1.Test.csproj" + "src/NzbDrone.Common.Test/Prowlarr.Common.Test.csproj" + "src/NzbDrone.Core.Test/Prowlarr.Core.Test.csproj" + "src/NzbDrone.Host.Test/Prowlarr.Host.Test.csproj" + "src/NzbDrone.Libraries.Test/Prowlarr.Libraries.Test.csproj" + "src/NzbDrone.Mono.Test/Prowlarr.Mono.Test.csproj" + "src/NzbDrone.Test.Common/Prowlarr.Test.Common.csproj" + ]; + + dotnetFlags = [ + "--property:TargetFramework=net8.0" + "--property:EnableAnalyzers=false" + "--property:SentryUploadSymbols=false" # Fix Sentry upload failed warnings + # Override defaults in src/Directory.Build.props that use current time. + "--property:Copyright=Copyright 2014-2025 prowlarr.com (GNU General Public v3)" + "--property:AssemblyVersion=${version}" + "--property:AssemblyConfiguration=master" + "--property:RuntimeIdentifier=${rid}" + ]; + + # Skip manual, integration, automation and platform-dependent tests. + testFilters = + [ + "TestCategory!=ManualTest" + "TestCategory!=IntegrationTest" + "TestCategory!=AutomationTest" + + # makes real HTTP requests + "FullyQualifiedName!~NzbDrone.Core.Test.UpdateTests.UpdatePackageProviderFixture" + ] + ++ lib.optionals stdenvNoCC.buildPlatform.isDarwin [ + # fails on macOS + "FullyQualifiedName!~NzbDrone.Core.Test.Http.HttpProxySettingsProviderFixture" + ]; + + disabledTests = [ + # setgid tests + "NzbDrone.Mono.Test.DiskProviderTests.DiskProviderFixture.should_preserve_setgid_on_set_folder_permissions" + "NzbDrone.Mono.Test.DiskProviderTests.DiskProviderFixture.should_clear_setgid_on_set_folder_permissions" + + # we do not set application data directory during tests (i.e. XDG data directory) + "NzbDrone.Mono.Test.DiskProviderTests.FreeSpaceFixture.should_return_free_disk_space" + "NzbDrone.Common.Test.ServiceFactoryFixture.event_handlers_should_be_unique" + + # attempts to read /etc/*release and fails since it does not exist + "NzbDrone.Mono.Test.EnvironmentInfo.ReleaseFileVersionAdapterFixture.should_get_version_info" + + # fails to start test dummy because it cannot locate .NET runtime for some reason + "NzbDrone.Common.Test.ProcessProviderFixture.should_be_able_to_start_process" + "NzbDrone.Common.Test.ProcessProviderFixture.exists_should_find_running_process" + "NzbDrone.Common.Test.ProcessProviderFixture.kill_all_should_kill_all_process_with_name" + ]; + passthru = { - updateScript = ./update.sh; - tests.smoke-test = nixosTests.prowlarr; + tests = { + inherit (nixosTests) prowlarr; + }; + + updateScript = writers.writePython3 "prowlarr-updater" { + libraries = with python3Packages; [ requests ]; + flakeIgnore = [ "E501" ]; + makeWrapperArgs = [ + "--prefix" + "PATH" + ":" + (lib.makeBinPath [ + nix + prefetch-yarn-deps + ]) + ]; + } ./update.py; }; meta = { description = "Indexer manager/proxy built on the popular arr .net/reactjs base stack"; - homepage = "https://wiki.servarr.com/prowlarr"; + homepage = "https://prowlarr.com/"; changelog = "https://github.com/Prowlarr/Prowlarr/releases/tag/v${version}"; license = lib.licenses.gpl3Only; - maintainers = with lib.maintainers; [ pizzapim ]; - mainProgram = "Prowlarr"; - platforms = [ - "aarch64-darwin" - "aarch64-linux" - "x86_64-darwin" - "x86_64-linux" + maintainers = with lib.maintainers; [ + pizzapim + nyanloutre ]; + mainProgram = "Prowlarr"; + # platforms inherited from dotnet-sdk. }; } diff --git a/pkgs/by-name/pr/prowlarr/update.py b/pkgs/by-name/pr/prowlarr/update.py new file mode 100644 index 000000000000..aeee96d2c280 --- /dev/null +++ b/pkgs/by-name/pr/prowlarr/update.py @@ -0,0 +1,182 @@ +import json +import os +import pathlib +import requests +import shutil +import subprocess +import sys +import tempfile + + +def replace_in_file(file_path, replacements): + file_contents = pathlib.Path(file_path).read_text() + for old, new in replacements.items(): + if old == new: + continue + updated_file_contents = file_contents.replace(old, new) + # A dumb way to check that we’ve actually replaced the string. + if file_contents == updated_file_contents: + print(f"no string to replace: {old} → {new}", file=sys.stderr) + sys.exit(1) + file_contents = updated_file_contents + with tempfile.NamedTemporaryFile(mode="w") as t: + t.write(file_contents) + t.flush() + shutil.copyfile(t.name, file_path) + + +def nix_hash_to_sri(hash): + return subprocess.run( + [ + "nix", + "--extra-experimental-features", "nix-command", + "hash", + "to-sri", + "--type", "sha256", + "--", + hash, + ], + stdout=subprocess.PIPE, + text=True, + check=True, + ).stdout.rstrip() + + +nixpkgs_path = "." +attr_path = os.getenv("UPDATE_NIX_ATTR_PATH", "prowlarr") + +package_attrs = json.loads(subprocess.run( + [ + "nix", + "--extra-experimental-features", "nix-command", + "eval", + "--json", + "--file", nixpkgs_path, + "--apply", """p: { + dir = builtins.dirOf p.meta.position; + version = p.version; + sourceHash = p.src.src.outputHash; + yarnHash = p.yarnOfflineCache.outputHash; + }""", + "--", + attr_path, + ], + stdout=subprocess.PIPE, + text=True, + check=True, +).stdout) + +old_version = package_attrs["version"] +new_version = old_version + +# Note that we use Prowlarr API instead of GitHub to fetch latest stable release. +# This corresponds to the Updates tab in the web UI. See also +# https://github.com/Prowlarr/Prowlarr/blob/7d813ef97a01af0f36a2beaec32e9cd854fc67f3/src/NzbDrone.Core/Update/UpdatePackageProvider.cs +# https://github.com/Prowlarr/Prowlarr/blob/7d813ef97a01af0f36a2beaec32e9cd854fc67f3/src/NzbDrone.Common/Cloud/ProwlarrCloudRequestBuilder.cs +version_update = requests.get( + f"https://prowlarr.servarr.com/v1/update/master?version={old_version}&includeMajorVersion=true", +).json() +if version_update["available"]: + new_version = version_update["updatePackage"]["version"] + +if new_version == old_version: + sys.exit() + +source_nix_hash, source_store_path = subprocess.run( + [ + "nix-prefetch-url", + "--name", "source", + "--unpack", + "--print-path", + f"https://github.com/Prowlarr/Prowlarr/archive/v{new_version}.tar.gz", + ], + stdout=subprocess.PIPE, + text=True, + check=True, +).stdout.rstrip().split("\n") + +old_source_hash = package_attrs["sourceHash"] +new_source_hash = nix_hash_to_sri(source_nix_hash) + +package_dir = package_attrs["dir"] +package_file_name = "package.nix" +deps_file_name = "deps.json" + +# To update deps.nix, we copy the package to a temporary directory and run +# passthru.fetch-deps script there. +with tempfile.TemporaryDirectory() as work_dir: + package_file = os.path.join(work_dir, package_file_name) + deps_file = os.path.join(work_dir, deps_file_name) + + shutil.copytree(package_dir, work_dir, dirs_exist_ok=True) + + replace_in_file(package_file, { + # NB unlike hashes, versions are likely to be used in code or comments. + # Try to be more specific to avoid false positive matches. + f"version = \"{old_version}\"": f"version = \"{new_version}\"", + old_source_hash: new_source_hash, + }) + + # We need access to the patched and updated src to get the patched + # `yarn.lock`. + patched_src = os.path.join(work_dir, "patched-src") + subprocess.run( + [ + "nix", + "--extra-experimental-features", "nix-command", + "build", + "--impure", + "--nix-path", "", + "--include", f"nixpkgs={nixpkgs_path}", + "--include", f"package={package_file}", + "--expr", "(import { }).callPackage { }", + "--out-link", patched_src, + "src", + ], + check=True, + ) + old_yarn_hash = package_attrs["yarnHash"] + new_yarn_hash = nix_hash_to_sri(subprocess.run( + [ + "prefetch-yarn-deps", + # does not support "--" separator :( + # Also --verbose writes to stdout, yikes. + os.path.join(patched_src, "yarn.lock"), + ], + stdout=subprocess.PIPE, + text=True, + check=True, + ).stdout.rstrip()) + + replace_in_file(package_file, { + old_yarn_hash: new_yarn_hash, + }) + + # Generate nuget-to-json dependency lock file. + fetch_deps = os.path.join(work_dir, "fetch-deps") + subprocess.run( + [ + "nix", + "--extra-experimental-features", "nix-command", + "build", + "--impure", + "--nix-path", "", + "--include", f"nixpkgs={nixpkgs_path}", + "--include", f"package={package_file}", + "--expr", "(import { }).callPackage { }", + "--out-link", fetch_deps, + "passthru.fetch-deps", + ], + check=True, + ) + subprocess.run( + [ + fetch_deps, + deps_file, + ], + stdout=subprocess.DEVNULL, + check=True, + ) + + shutil.copy(deps_file, os.path.join(package_dir, deps_file_name)) + shutil.copy(package_file, os.path.join(package_dir, package_file_name)) diff --git a/pkgs/by-name/pr/prowlarr/update.sh b/pkgs/by-name/pr/prowlarr/update.sh deleted file mode 100755 index 17fcde224089..000000000000 --- a/pkgs/by-name/pr/prowlarr/update.sh +++ /dev/null @@ -1,45 +0,0 @@ -#!/usr/bin/env nix-shell -#!nix-shell -i bash -p curl gnused nix-prefetch jq - -set -eou pipefail - -dirname="$(dirname "$0")" - -updateHash() -{ - # nixos - version=$1 - system=$2 - - # prowlarr - arch=$3 - os=$4 - - url="https://github.com/Prowlarr/Prowlarr/releases/download/v$version/Prowlarr.master.$version.$os-core-$arch.tar.gz" - hash=$(nix-prefetch-url --type sha256 $url) - sriHash="$(nix hash to-sri --type sha256 $hash)" - - sed -i "s|$system = \"sha256-[a-zA-Z0-9\/+-=]*\";|$system = \"$sriHash\";|g" "$dirname/package.nix" -} - -updateVersion() -{ - sed -i "s/version = \"[0-9.]*\";/version = \"$1\";/g" "$dirname/package.nix" -} - -currentVersion=$(cd $dirname && nix eval --raw -f ../../../.. prowlarr.version) - -latestTag=$(curl https://api.github.com/repos/Prowlarr/Prowlarr/releases/latest | jq -r ".tag_name") -latestVersion="$(expr $latestTag : 'v\(.*\)')" - -if [[ "$currentVersion" == "$latestVersion" ]]; then - echo "Prowlarr is up-to-date: ${currentVersion}" - exit 0 -fi - -updateVersion $latestVersion - -updateHash $latestVersion aarch64-darwin arm64 osx -updateHash $latestVersion aarch64-linux arm64 linux -updateHash $latestVersion x86_64-darwin x64 osx -updateHash $latestVersion x86_64-linux x64 linux diff --git a/pkgs/by-name/ql/qlementine-icons/package.nix b/pkgs/by-name/ql/qlementine-icons/package.nix index fa4d171263e5..7e7ff4fee113 100644 --- a/pkgs/by-name/ql/qlementine-icons/package.nix +++ b/pkgs/by-name/ql/qlementine-icons/package.nix @@ -8,13 +8,13 @@ }: stdenv.mkDerivation (finalAttrs: { pname = "qlementine-icons"; - version = "1.9.0"; + version = "1.10.0"; src = fetchFromGitHub { owner = "oclero"; repo = "qlementine-icons"; tag = "v${finalAttrs.version}"; - hash = "sha256-Ef4WTay44rMp6A39p0DCc2fXc2y/wGZZaKyj7+wpMJc="; + hash = "sha256-zsKlcHphTnz1EAjUD90bN+2W8OtGoict8TsIz/4dGyM="; }; nativeBuildInputs = [ cmake ]; diff --git a/pkgs/by-name/rd/rdkafka/package.nix b/pkgs/by-name/rd/rdkafka/package.nix index 241d2f32297f..396f64e2f4a9 100644 --- a/pkgs/by-name/rd/rdkafka/package.nix +++ b/pkgs/by-name/rd/rdkafka/package.nix @@ -13,13 +13,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "rdkafka"; - version = "2.10.0"; + version = "2.10.1"; src = fetchFromGitHub { owner = "confluentinc"; repo = "librdkafka"; tag = "v${finalAttrs.version}"; - sha256 = "sha256-u4+qskNw18TD59aiSTyv1XOYT2DI24uZnGEAzJ4YBJU="; + sha256 = "sha256-+ACn+1fjWEnUB32gUCoMpnq+6YBu+rufPT8LY920DBk="; }; outputs = [ diff --git a/pkgs/by-name/rs/rspamd/package.nix b/pkgs/by-name/rs/rspamd/package.nix index be3e28a4ffd3..4a773df49f9a 100644 --- a/pkgs/by-name/rs/rspamd/package.nix +++ b/pkgs/by-name/rs/rspamd/package.nix @@ -33,13 +33,13 @@ stdenv.mkDerivation rec { pname = "rspamd"; - version = "3.12.0"; + version = "3.12.1"; src = fetchFromGitHub { owner = "rspamd"; repo = "rspamd"; rev = version; - hash = "sha256-4C+bhUkqdn9RelHf6LfcfxVCIiBUCt4BxuI9TGdlIMc="; + hash = "sha256-bAkT0msUkgGkjAIlF7lnJbimBKW1NSn2zjkCj3ErJ1I="; }; hardeningEnable = [ "pie" ]; diff --git a/pkgs/by-name/ru/rundeck/package.nix b/pkgs/by-name/ru/rundeck/package.nix index 93a77617a353..12da62d4f0f2 100644 --- a/pkgs/by-name/ru/rundeck/package.nix +++ b/pkgs/by-name/ru/rundeck/package.nix @@ -12,11 +12,11 @@ stdenv.mkDerivation (finalAttrs: { pname = "rundeck"; - version = "5.12.0-20250512"; + version = "5.13.0-20250625"; src = fetchurl { url = "https://packagecloud.io/pagerduty/rundeck/packages/java/org.rundeck/rundeck-${finalAttrs.version}.war/artifacts/rundeck-${finalAttrs.version}.war/download?distro_version_id=167"; - hash = "sha256-LsKxMj+XCKTAMC3aIRnJcJkc2jytfTfu/gi0omGkMEk="; + hash = "sha256-RqyJ0/gZQ1gIYSPoYfGGN5VB5ubUMl00pHPlw6v6tBQ="; }; nativeBuildInputs = [ makeWrapper ]; diff --git a/pkgs/by-name/sc/scalafmt/package.nix b/pkgs/by-name/sc/scalafmt/package.nix index f050bfbaa091..ee4735693da9 100644 --- a/pkgs/by-name/sc/scalafmt/package.nix +++ b/pkgs/by-name/sc/scalafmt/package.nix @@ -9,7 +9,7 @@ let baseName = "scalafmt"; - version = "3.9.7"; + version = "3.9.8"; deps = stdenv.mkDerivation { name = "${baseName}-deps-${version}"; buildCommand = '' @@ -19,7 +19,7 @@ let cp $(< deps) $out/share/java/ ''; outputHashMode = "recursive"; - outputHash = "sha256-x1hEJtzZ0DmFDc7X5Tua3F0BcWz/Atm2zmMr7GgfkUM="; + outputHash = "sha256-mZrRb2n+ZE0DmQaH9iSMzPcpdZPtflekkP8bHv6Qw4k="; }; in stdenv.mkDerivation { diff --git a/pkgs/by-name/sc/scalingo/package.nix b/pkgs/by-name/sc/scalingo/package.nix index c833b17a24ea..17a8e54adfcd 100644 --- a/pkgs/by-name/sc/scalingo/package.nix +++ b/pkgs/by-name/sc/scalingo/package.nix @@ -6,13 +6,13 @@ buildGoModule rec { pname = "scalingo"; - version = "1.35.0"; + version = "1.35.1"; src = fetchFromGitHub { owner = pname; repo = "cli"; rev = version; - hash = "sha256-3a3YlnSMPfWhYqeP12tx1BAe+hfzaYgPfFAz/rU2cMU="; + hash = "sha256-cs7LyK9QyjuaLRvvC3M9T12faWSk8xADuYGxbzptY6Q="; }; vendorHash = null; diff --git a/pkgs/by-name/sd/SDL2_mixer/package.nix b/pkgs/by-name/sd/SDL2_mixer/package.nix index 228f35554a70..a20d57de202c 100644 --- a/pkgs/by-name/sd/SDL2_mixer/package.nix +++ b/pkgs/by-name/sd/SDL2_mixer/package.nix @@ -4,7 +4,6 @@ fetchFromGitHub, flac, fluidsynth, - libmodplug, libogg, libvorbis, mpg123, @@ -40,7 +39,6 @@ stdenv.mkDerivation (finalAttrs: { SDL2 flac fluidsynth - libmodplug libogg libvorbis mpg123 diff --git a/pkgs/by-name/si/signalbackup-tools/package.nix b/pkgs/by-name/si/signalbackup-tools/package.nix index 42f13ccc81b0..8b7a09eee585 100644 --- a/pkgs/by-name/si/signalbackup-tools/package.nix +++ b/pkgs/by-name/si/signalbackup-tools/package.nix @@ -13,13 +13,13 @@ stdenv.mkDerivation rec { pname = "signalbackup-tools"; - version = "20250626"; + version = "20250630-2"; src = fetchFromGitHub { owner = "bepaald"; repo = "signalbackup-tools"; rev = version; - hash = "sha256-RZLe0d/zpWu8x/4qVZBY3zatb9bc5kfKy7L0EdK02uw="; + hash = "sha256-/zbBiVWqHoKG2h6ExIDIP6ZQH1F8LByZYWbx8wysGDw="; }; nativeBuildInputs = diff --git a/pkgs/by-name/sk/skim/package.nix b/pkgs/by-name/sk/skim/package.nix index 81e8dd3276df..5b4c0ab00030 100644 --- a/pkgs/by-name/sk/skim/package.nix +++ b/pkgs/by-name/sk/skim/package.nix @@ -12,7 +12,7 @@ rustPlatform.buildRustPackage rec { pname = "skim"; - version = "0.20.1"; + version = "0.20.2"; outputs = [ "out" @@ -24,7 +24,7 @@ rustPlatform.buildRustPackage rec { owner = "skim-rs"; repo = "skim"; tag = "v${version}"; - hash = "sha256-6pvvZnhvju8JvRy93/128+6AH935UK5NbMx2kxzCjqY="; + hash = "sha256-fEd6t+adYI1jpRapZ/XHpxVWtX0nwUl9ZurIwywSFgk="; }; postPatch = '' @@ -32,7 +32,7 @@ rustPlatform.buildRustPackage rec { ''; useFetchCargoVendor = true; - cargoHash = "sha256-Hg7MWz0QAeI8l9if4QHUcUqU+5UI+H+dYw+ryCuRe/Y="; + cargoHash = "sha256-oRcqaXWa/eh5QQtTk0NQr90aL/Q0zgxQbPIoMLMtHe8="; nativeBuildInputs = [ installShellFiles ]; diff --git a/pkgs/by-name/so/sonarr/package.nix b/pkgs/by-name/so/sonarr/package.nix index b9750fff28b2..d524ab3cc5c0 100644 --- a/pkgs/by-name/so/sonarr/package.nix +++ b/pkgs/by-name/so/sonarr/package.nix @@ -21,7 +21,7 @@ applyPatches, }: let - version = "4.0.14.2939"; + version = "4.0.15.2941"; # The dotnet8 compatibility patches also change `yarn.lock`, so we must pass # the already patched lockfile to `fetchYarnDeps`. src = applyPatches { @@ -29,7 +29,7 @@ let owner = "Sonarr"; repo = "Sonarr"; tag = "v${version}"; - hash = "sha256-gtEDrAosI0Kyk712Kf8QDuloUBq9AArKdukX/PKAo8M="; + hash = "sha256-1lBUkodBDFpJD7pyHAFb8HRLrbK8wyAboX0A2oBQnTM="; }; postPatch = '' mv src/NuGet.Config NuGet.Config diff --git a/pkgs/by-name/sp/speakersafetyd/package.nix b/pkgs/by-name/sp/speakersafetyd/package.nix index 51f02ac93fa1..bd845006d12c 100644 --- a/pkgs/by-name/sp/speakersafetyd/package.nix +++ b/pkgs/by-name/sp/speakersafetyd/package.nix @@ -2,23 +2,29 @@ stdenv, lib, rustPlatform, - fetchCrate, + fetchFromGitHub, pkg-config, alsa-lib, - rust, udevCheckHook, + nix-update-script, }: -rustPlatform.buildRustPackage rec { +rustPlatform.buildRustPackage (finalAttrs: { pname = "speakersafetyd"; - version = "1.0.2"; + version = "1.1.2"; - src = fetchCrate { - inherit pname version; - hash = "sha256-3DzBNebg1y/+psD2zOpDsnRJmabQLeO1UMxPq9M0CsU="; + src = fetchFromGitHub { + owner = "AsahiLinux"; + repo = "speakersafetyd"; + tag = finalAttrs.version; + hash = "sha256-sSGoF2c5HfPM2FBrBJwJ9NvExYijGx6JH1bJp3epfe0="; }; - useFetchCargoVendor = true; - cargoHash = "sha256-DnOnqi60JsRX8yqEM/5zZ3yX/rk85/ruwL3aW1FRXKg="; + + cargoHash = "sha256-9XbrIY1VwnHtqi/ZfS952SyjNjA/TJRdOqCsPReZI8o="; + + patches = [ + ./remove-install-paths.patch + ]; nativeBuildInputs = [ pkg-config @@ -27,32 +33,43 @@ rustPlatform.buildRustPackage rec { buildInputs = [ alsa-lib ]; postPatch = '' - substituteInPlace speakersafetyd.service --replace "/usr" "$out" - substituteInPlace Makefile --replace "target/release" "target/${stdenv.hostPlatform.rust.cargoShortTarget}/$cargoBuildType" - # creating files in /var does not make sense in a nix package - substituteInPlace Makefile --replace 'install -dDm0755 $(DESTDIR)/$(VARDIR)/lib/speakersafetyd/blackbox' "" + substituteInPlace speakersafetyd.service \ + --replace-fail "User=speakersafetyd" \ + "" \ + --replace-fail "/usr" \ + "$out" + + substituteInPlace Makefile \ + --replace-fail "target/release" \ + "target/${stdenv.hostPlatform.rust.cargoShortTarget}/$cargoBuildType" \ ''; installFlags = [ - "BINDIR=$(out)/bin" - "UNITDIR=$(out)/lib/systemd/system" - "UDEVDIR=$(out)/lib/udev/rules.d" - "SHAREDIR=$(out)/share" - "TMPFILESDIR=$(out)/lib/tmpfiles.d" + "DESTDIR=$(out)" + "BINDIR=bin" + "UNITDIR=lib/systemd/system" + "UDEVDIR=lib/udev/rules.d" + "SHAREDIR=share" + "TMPFILESDIR=lib/tmpfiles.d" ]; dontCargoInstall = true; doInstallCheck = true; - meta = with lib; { - description = "Userspace daemon written in Rust that implements an analogue of the Texas Instruments Smart Amp speaker protection model"; + passthru = { + updateScript = nix-update-script { }; + }; + + meta = { + description = "Userspace daemon that implements the Smart Amp protection model"; mainProgram = "speakersafetyd"; homepage = "https://github.com/AsahiLinux/speakersafetyd"; - maintainers = with maintainers; [ + maintainers = with lib.maintainers; [ + normalcea flokli yuka ]; - license = licenses.mit; - platforms = platforms.linux; + license = lib.licenses.mit; + platforms = lib.platforms.linux; }; -} +}) diff --git a/pkgs/by-name/sp/speakersafetyd/remove-install-paths.patch b/pkgs/by-name/sp/speakersafetyd/remove-install-paths.patch new file mode 100644 index 000000000000..9581dc7ca1e5 --- /dev/null +++ b/pkgs/by-name/sp/speakersafetyd/remove-install-paths.patch @@ -0,0 +1,16 @@ +diff --git a/Makefile b/Makefile +index 41bf7b4..ca14be7 100644 +--- a/Makefile ++++ b/Makefile +@@ -24,11 +24,8 @@ install-data: + install -pm0644 95-speakersafetyd.rules $(DESTDIR)/$(UDEVDIR)/95-speakersafetyd.rules + install -dDm0755 $(DESTDIR)/$(SHAREDIR)/speakersafetyd/apple + install -pm0644 -t $(DESTDIR)/$(SHAREDIR)/speakersafetyd/apple $(wildcard conf/apple/*) +- install -dDm0755 -o $(SPEAKERSAFETYD_USER) -g $(SPEAKERSAFETYD_GROUP) $(DESTDIR)/$(VARDIR)/lib/speakersafetyd +- install -dDm0700 -o $(SPEAKERSAFETYD_USER) -g $(SPEAKERSAFETYD_GROUP) $(DESTDIR)/$(VARDIR)/lib/speakersafetyd/blackbox + install -dDm0755 $(DESTDIR)/$(TMPFILESDIR) + install -pm0644 speakersafetyd.tmpfiles $(DESTDIR)/$(TMPFILESDIR)/speakersafetyd.conf +- install -dDm0755 -o $(SPEAKERSAFETYD_USER) -g $(SPEAKERSAFETYD_GROUP) $(DESTDIR)/run/speakersafetyd + + uninstall: + rm -f $(DESTDIR)/$(BINDIR)/speakersafetyd $(DESTDIR)/$(UNITDIR)/speakersafetyd.service $(DESTDIR)/$(UDEVDIR)/95-speakersafetyd.rules $(DESTDIR)/$(TMPFILESDIR)/speakersafetyd.conf diff --git a/pkgs/by-name/sr/srht-gen-oauth-tok/package.nix b/pkgs/by-name/sr/srht-gen-oauth-tok/package.nix index 547bd4ea229c..2dfa3fc2357c 100644 --- a/pkgs/by-name/sr/srht-gen-oauth-tok/package.nix +++ b/pkgs/by-name/sr/srht-gen-oauth-tok/package.nix @@ -32,8 +32,6 @@ stdenv.mkDerivation rec { installPhase = "install -Dm755 srht-gen-oauth-tok $out/bin/srht-gen-oauth-tok"; - passthru.tests.sourcehut = nixosTests.sourcehut; - meta = { description = "Script to register a new Sourcehut OAuth token for a given user"; longDescription = '' diff --git a/pkgs/by-name/te/termshot/package.nix b/pkgs/by-name/te/termshot/package.nix index 52c62b373ce0..0680c614457d 100644 --- a/pkgs/by-name/te/termshot/package.nix +++ b/pkgs/by-name/te/termshot/package.nix @@ -8,16 +8,16 @@ buildGoModule (finalAttrs: { pname = "termshot"; - version = "0.5.0"; + version = "0.6.0"; src = fetchFromGitHub { owner = "homeport"; repo = "termshot"; tag = "v${finalAttrs.version}"; - hash = "sha256-fk1Xlgf6WR6dAekv7gZXPfKTEvbnk7FT+mn8UYFbQnQ="; + hash = "sha256-utaQhUBpFUpxqE+cEJqlQHyJXSo/4UzrA2uqUd88uaM="; }; - vendorHash = "sha256-RuIn4JNt4c47p2uiLtmCVYyY0/K1kJpmUboXHA5vhew="; + vendorHash = "sha256-3fUvl772pscrQv2wJkRX5wBhAt9fmfIPI7FGq7h7Fqw="; ldflags = [ "-s" diff --git a/pkgs/by-name/te/terraform-mcp-server/package.nix b/pkgs/by-name/te/terraform-mcp-server/package.nix new file mode 100644 index 000000000000..785ca9579902 --- /dev/null +++ b/pkgs/by-name/te/terraform-mcp-server/package.nix @@ -0,0 +1,42 @@ +{ + buildGoModule, + fetchFromGitHub, + lib, +}: +buildGoModule (finalAttrs: { + pname = "terraform-mcp-server"; + version = "0.1.0"; + + src = fetchFromGitHub { + owner = "hashicorp"; + repo = "terraform-mcp-server"; + tag = "v${finalAttrs.version}"; + hash = "sha256-HYiA0Mfp87czQShiXbS+y20yQzxTn0+hfM0M1kLFZFM="; + }; + + vendorHash = "sha256-m4J2WGcL0KB1InyciQEmLOSBw779/kagUOIkTwc4CE4="; + + ldflags = [ + "-X main.version=${finalAttrs.version}" + "-X main.commit=${finalAttrs.src.rev}" + ]; + + subPackages = [ "cmd/terraform-mcp-server" ]; + + meta = { + description = "Terraform Model Context Protocol (MCP) Server"; + longDescription = '' + The Terraform MCP Server is a Go implementation of the Model Context + Protocol (MCP) server that provides seamless integration with Terraform + Registry APIs, enabling advanced automation and interaction capabilities + for developers and tools. + + This server allows LLMs to interact with Terraform modules, providers, + and other Terraform Registry features through structured API interactions. + ''; + homepage = "https://github.com/hashicorp/terraform-mcp-server"; + license = lib.licenses.mpl20; + maintainers = with lib.maintainers; [ connerohnesorge ]; + mainProgram = "terraform-mcp-server"; + }; +}) diff --git a/pkgs/by-name/to/totem/package.nix b/pkgs/by-name/to/totem/package.nix index 4682336189a4..c5e8d2d5c7da 100644 --- a/pkgs/by-name/to/totem/package.nix +++ b/pkgs/by-name/to/totem/package.nix @@ -20,6 +20,7 @@ gnome, grilo, grilo-plugins, + libepoxy, libpeas, libportal-gtk3, libhandy, @@ -32,11 +33,11 @@ stdenv.mkDerivation rec { pname = "totem"; - version = "43.1"; + version = "43.2"; src = fetchurl { url = "mirror://gnome/sources/totem/${lib.versions.major version}/totem-${version}.tar.xz"; - hash = "sha256-VmgpHpxkRJhcs//k6k8CEvVMK75g3QERTBqVD5R1nm0="; + hash = "sha256-CwB9MPu5O5WmBPFISKSX9X/DM6dcLmOKJJly6ZwB5qQ="; }; nativeBuildInputs = [ @@ -64,6 +65,7 @@ stdenv.mkDerivation rec { gst_all_1.gst-plugins-bad gst_all_1.gst-plugins-ugly gst_all_1.gst-libav + libepoxy libpeas libportal-gtk3 libhandy diff --git a/pkgs/by-name/tp/tplay/package.nix b/pkgs/by-name/tp/tplay/package.nix index 2c567f0254a1..3a754ca917c4 100644 --- a/pkgs/by-name/tp/tplay/package.nix +++ b/pkgs/by-name/tp/tplay/package.nix @@ -4,7 +4,7 @@ fetchFromGitHub, pkg-config, clang, - ffmpeg, + ffmpeg-headless, openssl, alsa-lib, opencv, @@ -12,17 +12,17 @@ }: rustPlatform.buildRustPackage rec { pname = "tplay"; - version = "0.6.0"; + version = "0.6.3"; src = fetchFromGitHub { owner = "maxcurzi"; repo = "tplay"; rev = "v${version}"; - hash = "sha256-SRn7kg5FdSimKMFowKNUIan+MrojtNO0apeehIRTzfw="; + hash = "sha256-JVkezG2bs99IFOTONeZZRljjbi0EhFf+DMxcfiWI4p4="; }; useFetchCargoVendor = true; - cargoHash = "sha256-SzOx9IPp+TjiJpAEX8+GhZ+UEEmqNpI67S40OiYrHfM="; + cargoHash = "sha256-LHRTmjAwDPMOP6YQfL01leEzqRKtteU1cnUqL6UeWKk="; checkFlags = [ # requires network access "--skip=pipeline::image_pipeline::tests::test_process" @@ -35,20 +35,19 @@ rustPlatform.buildRustPackage rec { rustPlatform.bindgenHook pkg-config clang - ffmpeg makeWrapper ]; buildInputs = [ openssl.dev alsa-lib.dev - ffmpeg.dev + ffmpeg-headless.dev opencv ]; postFixup = '' wrapProgram $out/bin/tplay \ - --prefix PATH : "${lib.makeBinPath [ ffmpeg ]}" + --prefix PATH : "${lib.makeBinPath [ ffmpeg-headless ]}" ''; meta = { diff --git a/pkgs/by-name/tr/trezor-suite/package.nix b/pkgs/by-name/tr/trezor-suite/package.nix index 67a8e4ceadad..3d4f9ce1d674 100644 --- a/pkgs/by-name/tr/trezor-suite/package.nix +++ b/pkgs/by-name/tr/trezor-suite/package.nix @@ -10,7 +10,7 @@ let pname = "trezor-suite"; - version = "25.6.2"; + version = "25.6.3"; suffix = { @@ -24,8 +24,8 @@ let hash = { # curl -Lfs https://github.com/trezor/trezor-suite/releases/download/v${version}/latest-linux{-arm64,}.yml | grep ^sha512 | sed 's/: /-/' - aarch64-linux = "sha512-0As+Hh8fMwTaxMwe1KjBwcDfireKjc+hgDtHfefRTKIVlF5FNb3fuVLN3aaZACuo0J+Hwd0KIaoacRAlV6EOsw=="; - x86_64-linux = "sha512-vOrOOJsvYkrDpYd2E9ojbmL3PSKMpnYG+oznVUUS4dKfvmSP2sb5eXUjP6k6fYlDER2q/7YfXBnVycPqHLXm2Q=="; + aarch64-linux = "sha512-uOfunT0I/Yt07r0J6/OFYN17N0V41oIJZqieineFVJW0Q+pLQc7Bvme4lfwa1l/gF9ciwwStEJRo3uuWDehFaw=="; + x86_64-linux = "sha512-OkLee1qCM9jCZiiBOwYwiN0BasGa/OUHqJ4b4qMmr3u69EbchI5rvS3XfZ5GhkCI+9x32CAjUvRxlflAenC8RQ=="; } .${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}"); }; diff --git a/pkgs/by-name/tu/tup/package.nix b/pkgs/by-name/tu/tup/package.nix index 4bccae8ee432..88d66c069e4b 100644 --- a/pkgs/by-name/tu/tup/package.nix +++ b/pkgs/by-name/tu/tup/package.nix @@ -38,7 +38,19 @@ stdenv.mkDerivation rec { patches = [ ./fusermount-setuid.patch ]; configurePhase = '' - substituteInPlace src/tup/link.sh --replace '`git describe' '`echo ${version}' + substituteInPlace src/tup/link.sh --replace-fail '`git describe' '`echo ${version}' + + for path in Tupfile build.sh src/tup/server/Tupfile ; do + substituteInPlace $path --replace-fail "pkg-config" "${stdenv.cc.targetPrefix}pkg-config" + done + + # Replace "pcre2-config --libs8" => "pkg-config libpcre2-8 --libs". + # + # There is prefixed pkg-config for cross-compilation, but no prefixed "pcre2-config". + for path in Tupfile Tuprules.tup ; do + substituteInPlace $path --replace-fail "pcre2-config" "${stdenv.cc.targetPrefix}pkg-config libpcre2-8 " + done + substituteInPlace Tupfile --replace-fail "--libs8" "--libs" cat << EOF > tup.config CONFIG_CC=${stdenv.cc.targetPrefix}cc diff --git a/pkgs/by-name/tu/turbo-unwrapped/package.nix b/pkgs/by-name/tu/turbo-unwrapped/package.nix index c5695c873460..e3cc12762e69 100644 --- a/pkgs/by-name/tu/turbo-unwrapped/package.nix +++ b/pkgs/by-name/tu/turbo-unwrapped/package.nix @@ -17,13 +17,13 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "turbo-unwrapped"; - version = "2.5.3"; + version = "2.5.4"; src = fetchFromGitHub { owner = "vercel"; repo = "turborepo"; tag = "v${finalAttrs.version}"; - hash = "sha256-QcyRuLd+nMoCyrtX1j+8vFtsgVKC2KsQBAUjsvfG+rM="; + hash = "sha256-PwZYi7B5gqiqal6qIFqciv8SFJbRBeVJKfIc29zuIxA="; }; useFetchCargoVendor = true; diff --git a/pkgs/by-name/tx/txr/package.nix b/pkgs/by-name/tx/txr/package.nix index 962ba46ad19d..ff2ee07752a0 100644 --- a/pkgs/by-name/tx/txr/package.nix +++ b/pkgs/by-name/tx/txr/package.nix @@ -8,11 +8,11 @@ stdenv.mkDerivation (finalAttrs: { pname = "txr"; - version = "300"; + version = "301"; src = fetchurl { url = "https://www.kylheku.com/cgit/txr/snapshot/txr-${finalAttrs.version}.tar.bz2"; - hash = "sha256-BcY8UJxdqm+vyeIyEwH0N1GySbP6wIJ/yg4wIyOYVSg="; + hash = "sha256-n0irroNVb5UICjspaASO6IGs+zfiD3gK6LyLA+Bppiw="; }; buildInputs = [ libffi ]; diff --git a/pkgs/by-name/un/unison-ucm/package.nix b/pkgs/by-name/un/unison-ucm/package.nix index 2470ff294b87..f5a1bd1d2582 100644 --- a/pkgs/by-name/un/unison-ucm/package.nix +++ b/pkgs/by-name/un/unison-ucm/package.nix @@ -14,21 +14,21 @@ stdenv.mkDerivation (finalAttrs: { pname = "unison-code-manager"; - version = "0.5.41"; + version = "0.5.42"; src = { aarch64-darwin = fetchurl { url = "https://github.com/unisonweb/unison/releases/download/release/${finalAttrs.version}/ucm-macos-arm64.tar.gz"; - hash = "sha256-0Zz8lc1s46y2JC6DAbJjahap+hsz1QuLRl4nGryhSxA="; + hash = "sha256-QPUbJTpdvXQvI7zcNnQLrojOLCp+kpcPMc5aHknM5Tk="; }; x86_64-darwin = fetchurl { url = "https://github.com/unisonweb/unison/releases/download/release/${finalAttrs.version}/ucm-macos-x64.tar.gz"; - hash = "sha256-O9H62uhWnOPQp7s4yUhnUXFyk0vNS4BAddaCru4n1GU="; + hash = "sha256-DFIDiTLT3JzAdBN9qgXbU2rbYa2oO1AxNO+R3gizyVI="; }; x86_64-linux = fetchurl { url = "https://github.com/unisonweb/unison/releases/download/release/${finalAttrs.version}/ucm-linux-x64.tar.gz"; - hash = "sha256-ul5PCDqjfpsMiZZaZaH04Mrv29U9uS/ik8KwFNmXbgg="; + hash = "sha256-NDIk0UsW7gOkhJJ7YDY2R1ZJ26uirG1TYPO+nGzR61M="; }; } .${stdenv.hostPlatform.system} or (throw "Unsupported platform ${stdenv.hostPlatform.system}"); diff --git a/pkgs/by-name/uv/uv/package.nix b/pkgs/by-name/uv/uv/package.nix index e6b6dcf024d1..b014165765be 100644 --- a/pkgs/by-name/uv/uv/package.nix +++ b/pkgs/by-name/uv/uv/package.nix @@ -18,17 +18,17 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "uv"; - version = "0.7.16"; + version = "0.7.17"; src = fetchFromGitHub { owner = "astral-sh"; repo = "uv"; tag = finalAttrs.version; - hash = "sha256-E9tFjJwV+zDOxsFdDeX6D8DqD0zFNW8kryeY9FmA63U="; + hash = "sha256-XZ0wlnj76iWgK6jvckI+bSo75PFKAbqUm6jLBKt9+ys="; }; useFetchCargoVendor = true; - cargoHash = "sha256-Eg4YVqKxjYEPS67qnc0y1Tuy6HAFEy6rCjr7/ZXF3yE="; + cargoHash = "sha256-imcz/qzq2p9mwDjaqVzIvz7QY0Hte/WSBNNcLa5Njv0="; buildInputs = [ rust-jemalloc-sys diff --git a/pkgs/by-name/va/vault-bin/package.nix b/pkgs/by-name/va/vault-bin/package.nix index 5ee18954b175..94b1f24d54f4 100644 --- a/pkgs/by-name/va/vault-bin/package.nix +++ b/pkgs/by-name/va/vault-bin/package.nix @@ -6,7 +6,7 @@ stdenv.mkDerivation rec { pname = "vault-bin"; - version = "1.19.5"; + version = "1.20.0"; src = let @@ -20,11 +20,11 @@ stdenv.mkDerivation rec { aarch64-darwin = "darwin_arm64"; }; hash = selectSystem { - x86_64-linux = "sha256-y/bXonqVjIHZ44UO1wburoOTcN3SFzLtCYaw+UF9MIk="; - aarch64-linux = "sha256-radUSrjpnn8L0sIW3I2qxKjSUPx/5cPya4DBJ2J5+hA="; - i686-linux = "sha256-Pvt+OjoZVMCp9VQ9QLNvc8LcCb8oaGQv0dAdIF/kH9I="; - x86_64-darwin = "sha256-vs5KD0iIuZESpr2L9c8O2zIGtl3eyvSMRwZiJDMBbwM="; - aarch64-darwin = "sha256-KSeGNlh0rvkXsBoR8LejDXZQcBgMQAP6PD+ZENN+W28="; + x86_64-linux = "sha256-wfp3qQ6vKE/k9lKW+h2LSVG9C/+4yJxsjksg5asfSj4="; + aarch64-linux = "sha256-pEnKCiZHrO5xwkfSA1bsqrtASj9BRNTsoTPJdu4hulE="; + i686-linux = "sha256-jsQFuiY1F8rSDaqtTdjbOaAfh0/WEITkXkmxgcH8U9g="; + x86_64-darwin = "sha256-tT6W9DJu6sehfAkbWmE4Z4MradJM50Ps2iWraQANUok="; + aarch64-darwin = "sha256-2bDtbRnMOCF91AZSMaBEgnwLDX44BRHv6Wb1UqZ86Ks="; }; in fetchzip { diff --git a/pkgs/by-name/vi/vintagestory/package.nix b/pkgs/by-name/vi/vintagestory/package.nix index f2ea4e54f62f..928734a145f9 100644 --- a/pkgs/by-name/vi/vintagestory/package.nix +++ b/pkgs/by-name/vi/vintagestory/package.nix @@ -21,11 +21,11 @@ stdenv.mkDerivation rec { pname = "vintagestory"; - version = "1.20.11"; + version = "1.20.12"; src = fetchurl { url = "https://cdn.vintagestory.at/gamefiles/stable/vs_client_linux-x64_${version}.tar.gz"; - hash = "sha256-IOreg6j/jLhOK8jm2AgSnYQrql5R6QxsshvPs8OUcQA="; + hash = "sha256-h6YXEZoVVV9IuKkgtK9Z3NTvJogVNHmXdAcKxwfvqcE="; }; nativeBuildInputs = [ @@ -33,8 +33,6 @@ stdenv.mkDerivation rec { copyDesktopItems ]; - buildInputs = [ dotnet-runtime_7 ]; - runtimeLibs = lib.makeLibraryPath ( [ gtk2 @@ -77,30 +75,35 @@ stdenv.mkDerivation rec { runHook postInstall ''; - preFixup = - '' - makeWrapper ${dotnet-runtime_7}/bin/dotnet $out/bin/vintagestory \ - --prefix LD_LIBRARY_PATH : "${runtimeLibs}" \ - --add-flags $out/share/vintagestory/Vintagestory.dll - makeWrapper ${dotnet-runtime_7}/bin/dotnet $out/bin/vintagestory-server \ - --prefix LD_LIBRARY_PATH : "${runtimeLibs}" \ - --add-flags $out/share/vintagestory/VintagestoryServer.dll - '' - + '' - find "$out/share/vintagestory/assets/" -not -path "*/fonts/*" -regex ".*/.*[A-Z].*" | while read -r file; do - local filename="$(basename -- "$file")" - ln -sf "$filename" "''${file%/*}"/"''${filename,,}" - done - ''; + preFixup = '' + makeWrapper ${dotnet-runtime_7}/bin/dotnet $out/bin/vintagestory \ + --prefix LD_LIBRARY_PATH : "${runtimeLibs}" \ + --set-default mesa_glthread true \ + --add-flags $out/share/vintagestory/Vintagestory.dll - meta = with lib; { + makeWrapper ${dotnet-runtime_7}/bin/dotnet $out/bin/vintagestory-server \ + --prefix LD_LIBRARY_PATH : "${runtimeLibs}" \ + --set-default mesa_glthread true \ + --add-flags $out/share/vintagestory/VintagestoryServer.dll + + find "$out/share/vintagestory/assets/" -not -path "*/fonts/*" -regex ".*/.*[A-Z].*" | while read -r file; do + local filename="$(basename -- "$file")" + ln -sf "$filename" "''${file%/*}"/"''${filename,,}" + done + ''; + + meta = { description = "In-development indie sandbox game about innovation and exploration"; homepage = "https://www.vintagestory.at/"; - license = licenses.unfree; - maintainers = with maintainers; [ + license = lib.licenses.unfree; + sourceProvenance = [ lib.sourceTypes.binaryBytecode ]; + platforms = lib.platforms.linux; + maintainers = with lib.maintainers; [ artturin gigglesquid niraethm + dtomvan ]; + mainProgram = "vintagestory"; }; } diff --git a/pkgs/by-name/vu/vulkan-hdr-layer-kwin6/package.nix b/pkgs/by-name/vu/vulkan-hdr-layer-kwin6/package.nix deleted file mode 100644 index 30cbf761822b..000000000000 --- a/pkgs/by-name/vu/vulkan-hdr-layer-kwin6/package.nix +++ /dev/null @@ -1,57 +0,0 @@ -{ - lib, - stdenv, - cmake, - fetchFromGitHub, - libX11, - meson, - ninja, - pkg-config, - unstableGitUpdater, - vulkan-headers, - vulkan-loader, - wayland-scanner, - wayland, -}: - -stdenv.mkDerivation { - pname = "vulkan-hdr-layer-kwin6"; - version = "0-unstable-2025-05-22"; - - depsBuildBuild = [ pkg-config ]; - - nativeBuildInputs = [ - meson - ninja - pkg-config - cmake - wayland-scanner - ]; - - buildInputs = [ - vulkan-headers - vulkan-loader - libX11 - wayland - ]; - - strictDeps = true; - - src = fetchFromGitHub { - owner = "Zamundaaa"; - repo = "VK_hdr_layer"; - rev = "1384036ea24a9bc38a5c684dac5122d5e3431ae6"; - hash = "sha256-xm0S1vLE8MAov8gf6rN5ZKZAe6NMKfHDlUlmNd332qw="; - fetchSubmodules = true; - }; - - passthru.updateScript = unstableGitUpdater { }; - - meta = { - description = "Vulkan Wayland HDR WSI Layer (Xaver Hugl's fork for KWin 6)"; - homepage = "https://github.com/Zamundaaa/VK_hdr_layer"; - license = lib.licenses.mit; - platforms = lib.platforms.linux; - maintainers = with lib.maintainers; [ d4rk ]; - }; -} diff --git a/pkgs/by-name/wa/warp-terminal/versions.json b/pkgs/by-name/wa/warp-terminal/versions.json index f94041720f7c..b5d77222c423 100644 --- a/pkgs/by-name/wa/warp-terminal/versions.json +++ b/pkgs/by-name/wa/warp-terminal/versions.json @@ -1,14 +1,14 @@ { "darwin": { - "hash": "sha256-UJAirS6JFFLW0OsOYj8RNUfG85dRHnxXasNw2QHX1Xs=", - "version": "0.2025.06.20.22.47.stable_05" + "hash": "sha256-7/gSUR9h9PzBrTgxERXNjqzJDtqxebjmD0cF3Vx2ySY=", + "version": "0.2025.06.25.08.12.stable_01" }, "linux_x86_64": { - "hash": "sha256-h0ODaO3SJcZAxFRFBYYjWXQYsRAemGizn/YA7AF36pw=", - "version": "0.2025.06.20.22.47.stable_05" + "hash": "sha256-2VQzEBAAu6YasottOTu3YjQvvXR5gT3DAjGhp63wMNo=", + "version": "0.2025.06.25.08.12.stable_01" }, "linux_aarch64": { - "hash": "sha256-H4xldFBMpfu6UFGFA/IkA1zPFqhFN6abhfHTRdYNpGA=", - "version": "0.2025.06.20.22.47.stable_05" + "hash": "sha256-5jpW7mUHLshGZUWigAJ8QgmpYnfosJN1JpRLeNvVK3Y=", + "version": "0.2025.06.25.08.12.stable_01" } } diff --git a/pkgs/by-name/wa/waybar/package.nix b/pkgs/by-name/wa/waybar/package.nix index 3d9112626bc6..b9935d5e7d1a 100644 --- a/pkgs/by-name/wa/waybar/package.nix +++ b/pkgs/by-name/wa/waybar/package.nix @@ -3,6 +3,7 @@ stdenv, bash, fetchFromGitHub, + fetchpatch, SDL2, alsa-lib, catch2_3, @@ -89,6 +90,14 @@ stdenv.mkDerivation (finalAttrs: { popd ''; + patches = [ + (fetchpatch { + name = "waybar-default-icon.patch"; + url = "https://github.com/Alexays/Waybar/commit/c336bc5466c858ac41dc9afd84f04a5ffec9e292.patch"; + hash = "sha256-RRGy/aeFX95fW0pT6mXhww2RdEtoOnaT3+dc7iB3bAY="; + }) + ]; + nativeBuildInputs = [ meson diff --git a/pkgs/by-name/wt/wtfutil/package.nix b/pkgs/by-name/wt/wtfutil/package.nix index 49066e647a2b..e4cb95274bf9 100644 --- a/pkgs/by-name/wt/wtfutil/package.nix +++ b/pkgs/by-name/wt/wtfutil/package.nix @@ -11,16 +11,16 @@ buildGoModule rec { pname = "wtfutil"; - version = "0.43.0"; + version = "0.44.1"; src = fetchFromGitHub { owner = "wtfutil"; repo = "wtf"; rev = "v${version}"; - sha256 = "sha256-DFrA4bx+wSOxmt1CVA1oNiYVmcWeW6wpfR5F1tnhyDY="; + sha256 = "sha256-xjiNtaEgzJ9izGiYaR35NWpvUHvz54oCR2VYXwVQ8SU="; }; - vendorHash = "sha256-mQdKw3DeBEkCOtV2/B5lUIHv5EBp+8QSxpA13nFxESw="; + vendorHash = "sha256-Jc6kmeOLM3IWLxSwJA+nBdO76B504X/cKQ0UknlLUY4="; proxyVendor = true; doCheck = false; diff --git a/pkgs/by-name/xf/xfsprogs/package.nix b/pkgs/by-name/xf/xfsprogs/package.nix index 8c6d0fb636fb..08d1aae32cdd 100644 --- a/pkgs/by-name/xf/xfsprogs/package.nix +++ b/pkgs/by-name/xf/xfsprogs/package.nix @@ -3,7 +3,6 @@ stdenv, buildPackages, fetchurl, - fetchpatch, autoreconfHook, gettext, pkg-config, @@ -17,27 +16,13 @@ stdenv.mkDerivation rec { pname = "xfsprogs"; - version = "6.13.0"; + version = "6.15.0"; src = fetchurl { url = "mirror://kernel/linux/utils/fs/xfs/xfsprogs/${pname}-${version}.tar.xz"; - hash = "sha256-BFmTP5PZTIK8J4nnvWN0InPZ10IHza5n3DAyA42ggzc="; + hash = "sha256-E7kfdL7vitERN/fZ1xBVVz2R6WG8VbsCRZVvabhM1wQ="; }; - patches = [ - (fetchurl { - name = "icu76.patch"; - url = "https://lore.kernel.org/linux-xfs/20250212081649.3502717-1-hi@alyssa.is/raw"; - hash = "sha256-Z7BW0B+/5eHWXdHre++wRtdbU/P6XZqudYx6EK5msIU="; - }) - # Backport which fixes pkgsCross.armv7l-hf-multiplatform.xfsprogs - (fetchpatch { - name = "32-bit.patch"; - url = "https://web.git.kernel.org/pub/scm/fs/xfs/xfsprogs-dev.git/patch/mkfs/proto.c?id=a5466cee9874412cfdd187f07c5276e1d4ef0fea"; - hash = "sha256-svC7pSbblWfO5Khots2kWWfDMBXUrU35fk5wsdYuPQI="; - }) - ]; - outputs = [ "bin" "dev" diff --git a/pkgs/by-name/xl/xlog/package.nix b/pkgs/by-name/xl/xlog/package.nix index a424c48df43f..d9d06ad69ed2 100644 --- a/pkgs/by-name/xl/xlog/package.nix +++ b/pkgs/by-name/xl/xlog/package.nix @@ -41,5 +41,6 @@ stdenv.mkDerivation rec { license = licenses.gpl3; platforms = platforms.unix; mainProgram = "xlog"; + broken = stdenv.hostPlatform.isDarwin; }; } diff --git a/pkgs/by-name/xt/xteve/package.nix b/pkgs/by-name/xt/xteve/package.nix index 39c60136d205..9281d3e3f4ad 100644 --- a/pkgs/by-name/xt/xteve/package.nix +++ b/pkgs/by-name/xt/xteve/package.nix @@ -1,5 +1,6 @@ { lib, + stdenv, buildGoModule, fetchFromGitHub, }: @@ -23,5 +24,6 @@ buildGoModule rec { license = licenses.mit; maintainers = with maintainers; [ nrhelmi ]; mainProgram = "xteve"; + broken = stdenv.hostPlatform.isDarwin; }; } diff --git a/pkgs/by-name/za/zap-chip/package.nix b/pkgs/by-name/za/zap-chip/package.nix index cd665e81cbc0..b3e400b0a544 100644 --- a/pkgs/by-name/za/zap-chip/package.nix +++ b/pkgs/by-name/za/zap-chip/package.nix @@ -1,5 +1,6 @@ { lib, + stdenv, buildNpmPackage, electron, fetchFromGitHub, @@ -87,5 +88,6 @@ buildNpmPackage rec { license = lib.licenses.asl20; maintainers = with lib.maintainers; [ symphorien ]; mainProgram = "zap" + lib.optionalString (!withGui) "-cli"; + broken = stdenv.hostPlatform.isDarwin; }; } diff --git a/pkgs/data/icons/papirus-maia-icon-theme/default.nix b/pkgs/data/icons/papirus-maia-icon-theme/default.nix index 3375f5668da8..aed0efe0c1ac 100644 --- a/pkgs/data/icons/papirus-maia-icon-theme/default.nix +++ b/pkgs/data/icons/papirus-maia-icon-theme/default.nix @@ -35,6 +35,8 @@ stdenv.mkDerivation rec { dontDropIconThemeCache = true; + dontWrapQtApps = true; + postPatch = '' substituteInPlace CMakeLists.txt --replace /usr "$out" ''; @@ -45,11 +47,11 @@ stdenv.mkDerivation rec { done ''; - meta = with lib; { + meta = { description = "Manjaro variation of Papirus icon theme"; homepage = "https://github.com/Ste74/papirus-maia-icon-theme"; - license = licenses.lgpl3; - platforms = platforms.linux; - maintainers = with maintainers; [ romildo ]; + license = lib.licenses.lgpl3; + platforms = lib.platforms.linux; + maintainers = with lib.maintainers; [ romildo ]; }; } diff --git a/pkgs/desktops/deepin/core/dde-shell/default.nix b/pkgs/desktops/deepin/core/dde-shell/default.nix index be854c40b97a..deba291f1ce8 100644 --- a/pkgs/desktops/deepin/core/dde-shell/default.nix +++ b/pkgs/desktops/deepin/core/dde-shell/default.nix @@ -40,6 +40,11 @@ stdenv.mkDerivation (finalAttrs: { url = "https://github.com/linuxdeepin/dde-shell/commit/936d62a2c20398b9ca6ae28f9101dd288c8b1678.patch"; hash = "sha256-u5TcPy2kZsOLGUgjTGZ5JX3mWnr/rOQ3SWBRyjWEiw4="; }) + (fetchpatch { + name = "adapt-import-change-of-QtQml-Models-in-Qt-6_9.patch"; + url = "https://github.com/linuxdeepin/dde-shell/commit/ad92c160508a5eb53fd5af558ef1b1ba881b97ac.patch"; + hash = "sha256-3GdkbFEt51EP04RQN54EDsGyXkeZoWhbnQAHkwjUeGY="; + }) ]; diff --git a/pkgs/desktops/lxqt/lxqt-panel/default.nix b/pkgs/desktops/lxqt/lxqt-panel/default.nix index 4151d837d39c..cd9d4b315b18 100644 --- a/pkgs/desktops/lxqt/lxqt-panel/default.nix +++ b/pkgs/desktops/lxqt/lxqt-panel/default.nix @@ -35,13 +35,13 @@ stdenv.mkDerivation rec { pname = "lxqt-panel"; - version = "2.2.1"; + version = "2.2.2"; src = fetchFromGitHub { owner = "lxqt"; repo = pname; rev = version; - hash = "sha256-PKiuFstkUGrRZE4TOvMq8R5991Ay6Ghw17GCtzlybuU="; + hash = "sha256-ui+HD2igPiyIOgIKPbgfO4dnfm2rFP/R6oG2pH5g5VY="; }; nativeBuildInputs = [ diff --git a/pkgs/development/compilers/emscripten/default.nix b/pkgs/development/compilers/emscripten/default.nix index 9a3ecc553c8e..899e66fda789 100644 --- a/pkgs/development/compilers/emscripten/default.nix +++ b/pkgs/development/compilers/emscripten/default.nix @@ -18,7 +18,7 @@ stdenv.mkDerivation rec { pname = "emscripten"; - version = "4.0.8"; + version = "4.0.10"; llvmEnv = symlinkJoin { name = "emscripten-llvm-${version}"; @@ -34,7 +34,7 @@ stdenv.mkDerivation rec { name = "emscripten-node-modules-${version}"; inherit pname version src; - npmDepsHash = "sha256-fGlBtXsYOQ5V4/PRPPIpL3nxb+hUAuj9q7Jw0kL7ph0="; + npmDepsHash = "sha256-kObMqg7hyy7E3F+wbdZoeDy5GOgpE2iNTuDVkFvq5ig="; dontBuild = true; @@ -47,7 +47,7 @@ stdenv.mkDerivation rec { src = fetchFromGitHub { owner = "emscripten-core"; repo = "emscripten"; - hash = "sha256-xiqi3SMmlfV7NaA61QZAW7BFHu9xOVN9QMWwwDInBeE="; + hash = "sha256-b+7NYKRm0IsZ2cK2Vqz8zKhqYlxjlhVSdpdFq0LaUPU="; rev = version; }; @@ -61,17 +61,6 @@ stdenv.mkDerivation rec { (replaceVars ./0001-emulate-clang-sysroot-include-logic.patch { resourceDir = "${llvmEnv}/lib/clang/${lib.versions.major llvmPackages.llvm.version}/"; }) - # The following patches work around a bug where EM_CACHE is not copied with - # the correct permissions; the bug will be fixed in the next release (probably 4.0.10). - # See also: https://github.com/emscripten-core/emscripten/issues/24404 - (fetchpatch { - url = "https://github.com/emscripten-core/emscripten/commit/99c6e41154f701e423074e33a4fdaf5eea49d073.patch"; - hash = "sha256-/wkhz08NhbgxsrXd7YFfdCGX6LrS2Ncct8dcwxBMsjY="; - }) - (fetchpatch { - url = "https://github.com/emscripten-core/emscripten/commit/f4d358d740a238b67a1d6935e71638519d25afa0.patch"; - hash = "sha256-hib5ZAN/R2dH+rTv3nYF37+xKZmeboKxnS+5mkht2lM="; - }) ]; buildPhase = '' diff --git a/pkgs/development/compilers/flutter/versions/3_32/data.json b/pkgs/development/compilers/flutter/versions/3_32/data.json index ace17df24812..cbbe122dc72f 100644 --- a/pkgs/development/compilers/flutter/versions/3_32/data.json +++ b/pkgs/development/compilers/flutter/versions/3_32/data.json @@ -1,17 +1,17 @@ { - "version": "3.32.2", - "engineVersion": "109150893958777c8f2215f6cfd3e89e984e8dea", + "version": "3.32.5", + "engineVersion": "dd93de6fb1776398bf586cbd477deade1391c7e4", "engineSwiftShaderHash": "sha256-ATVcuxqPHqHOWYyO7DoX9LdgUiO3INUi7m9Mc6ccc1M=", "engineSwiftShaderRev": "d040a5bab638bf7c226235c95787ba6288bb6416", "channel": "stable", "engineHashes": { "aarch64-linux": { - "aarch64-linux": "sha256-l/7p9fPVPIx/CqT4xTUPQLlBU18aZSlimamELMgkAjY=", - "x86_64-linux": "sha256-l/7p9fPVPIx/CqT4xTUPQLlBU18aZSlimamELMgkAjY=" + "aarch64-linux": "sha256-IUvraWqQxNba63OI4AVJNerMt6zdq5D5W8SKVMaDRLc=", + "x86_64-linux": "sha256-IUvraWqQxNba63OI4AVJNerMt6zdq5D5W8SKVMaDRLc=" }, "x86_64-linux": { - "aarch64-linux": "sha256-6shoelu1oOcTbzXlFcAOsVMF3b/3RZ2vHuMEXvKyzbo=", - "x86_64-linux": "sha256-6shoelu1oOcTbzXlFcAOsVMF3b/3RZ2vHuMEXvKyzbo=" + "aarch64-linux": "sha256-f1GZHMH6LJRSlgT1CSOGscwrkcV3EOxc61KctAXgZcM=", + "x86_64-linux": "sha256-f1GZHMH6LJRSlgT1CSOGscwrkcV3EOxc61KctAXgZcM=" } }, "dartVersion": "3.8.1", @@ -21,53 +21,53 @@ "x86_64-darwin": "sha256-S3iGDVLollApke2SnXAcV919qsDTVmz5Gf9fTletr00=", "aarch64-darwin": "sha256-haHQks9N1mBIqRsYg9sOLw7ra7gC708gsTWfKxvIK1c=" }, - "flutterHash": "sha256-bL+WRW9tOLEXeAwZKgwN4y8Vj6s6FOCUm3JJilLCkY8=", + "flutterHash": "sha256-qiFYbKUVdRNc2RV6uJAayQ7PrMZWNziAgI8++KEMpxA=", "artifactHashes": { "android": { - "aarch64-darwin": "sha256-VW1JzE6NfpGk2WFyPnvgkhlc+/dgkVtfPJ3HLF2SxjM=", - "aarch64-linux": "sha256-aNZyIBedC35v2/lePY1UcJYP3Wh0JccPrsABHlhdoOI=", - "x86_64-darwin": "sha256-VW1JzE6NfpGk2WFyPnvgkhlc+/dgkVtfPJ3HLF2SxjM=", - "x86_64-linux": "sha256-aNZyIBedC35v2/lePY1UcJYP3Wh0JccPrsABHlhdoOI=" + "aarch64-darwin": "sha256-JBBlXNXcBbygs7GNCcTYmeSuKOjTKHMZsiuSHiuWWM4=", + "aarch64-linux": "sha256-72mofJFv9hVFaPK3sj57fqcF7NvcDgLHD0QILZ6TM7M=", + "x86_64-darwin": "sha256-JBBlXNXcBbygs7GNCcTYmeSuKOjTKHMZsiuSHiuWWM4=", + "x86_64-linux": "sha256-72mofJFv9hVFaPK3sj57fqcF7NvcDgLHD0QILZ6TM7M=" }, "fuchsia": { - "aarch64-darwin": "sha256-8Jo1dP2uugp75BjQvvgvxnCJI0oyLlClJ2YaaiSkJzs=", - "aarch64-linux": "sha256-8Jo1dP2uugp75BjQvvgvxnCJI0oyLlClJ2YaaiSkJzs=", - "x86_64-darwin": "sha256-8Jo1dP2uugp75BjQvvgvxnCJI0oyLlClJ2YaaiSkJzs=", - "x86_64-linux": "sha256-8Jo1dP2uugp75BjQvvgvxnCJI0oyLlClJ2YaaiSkJzs=" + "aarch64-darwin": "sha256-aJmLxwEBV8VronlVcPazczpcVxl30A+y2v6LtpXQ+ug=", + "aarch64-linux": "sha256-aJmLxwEBV8VronlVcPazczpcVxl30A+y2v6LtpXQ+ug=", + "x86_64-darwin": "sha256-aJmLxwEBV8VronlVcPazczpcVxl30A+y2v6LtpXQ+ug=", + "x86_64-linux": "sha256-aJmLxwEBV8VronlVcPazczpcVxl30A+y2v6LtpXQ+ug=" }, "ios": { - "aarch64-darwin": "sha256-75DZ9m1yxybk/xP2UMDr/thBtP2q3iOHPakxxHRbIWs=", - "aarch64-linux": "sha256-75DZ9m1yxybk/xP2UMDr/thBtP2q3iOHPakxxHRbIWs=", - "x86_64-darwin": "sha256-75DZ9m1yxybk/xP2UMDr/thBtP2q3iOHPakxxHRbIWs=", - "x86_64-linux": "sha256-75DZ9m1yxybk/xP2UMDr/thBtP2q3iOHPakxxHRbIWs=" + "aarch64-darwin": "sha256-6rI+Pxqqg7K2qcXZSH9/DhwJoJgEJ9+QkoyiAr0CyUo=", + "aarch64-linux": "sha256-6rI+Pxqqg7K2qcXZSH9/DhwJoJgEJ9+QkoyiAr0CyUo=", + "x86_64-darwin": "sha256-6rI+Pxqqg7K2qcXZSH9/DhwJoJgEJ9+QkoyiAr0CyUo=", + "x86_64-linux": "sha256-6rI+Pxqqg7K2qcXZSH9/DhwJoJgEJ9+QkoyiAr0CyUo=" }, "linux": { - "aarch64-darwin": "sha256-7gGCUYERyMdga0bgxWo2ZCn9yUwIKKBOuzXvNfWS6Bw=", - "aarch64-linux": "sha256-7gGCUYERyMdga0bgxWo2ZCn9yUwIKKBOuzXvNfWS6Bw=", - "x86_64-darwin": "sha256-VlkWtHFJc8AbzvQbEL8IzXNpkrz4hIR7yK+gRHH1Qtc=", - "x86_64-linux": "sha256-VlkWtHFJc8AbzvQbEL8IzXNpkrz4hIR7yK+gRHH1Qtc=" + "aarch64-darwin": "sha256-/GxeyrWsQdEX5cmFrGiRMKpPt7Hr7CgQf3eSjdcifvI=", + "aarch64-linux": "sha256-/GxeyrWsQdEX5cmFrGiRMKpPt7Hr7CgQf3eSjdcifvI=", + "x86_64-darwin": "sha256-y6yHQfiWq6G9Nc0qD8ptgqPjYWRyIEu4onwlW/AXSB0=", + "x86_64-linux": "sha256-y6yHQfiWq6G9Nc0qD8ptgqPjYWRyIEu4onwlW/AXSB0=" }, "macos": { - "aarch64-darwin": "sha256-fonn1C8JJ/Dpid6eyzqgTw5jm4dgdt1KF+sd0d5wRNc=", - "aarch64-linux": "sha256-fonn1C8JJ/Dpid6eyzqgTw5jm4dgdt1KF+sd0d5wRNc=", - "x86_64-darwin": "sha256-fonn1C8JJ/Dpid6eyzqgTw5jm4dgdt1KF+sd0d5wRNc=", - "x86_64-linux": "sha256-fonn1C8JJ/Dpid6eyzqgTw5jm4dgdt1KF+sd0d5wRNc=" + "aarch64-darwin": "sha256-80OvLcvTZ9YxgodTEPo6GF+DrFyQ9tbzAF/6AyDVqIA=", + "aarch64-linux": "sha256-80OvLcvTZ9YxgodTEPo6GF+DrFyQ9tbzAF/6AyDVqIA=", + "x86_64-darwin": "sha256-80OvLcvTZ9YxgodTEPo6GF+DrFyQ9tbzAF/6AyDVqIA=", + "x86_64-linux": "sha256-80OvLcvTZ9YxgodTEPo6GF+DrFyQ9tbzAF/6AyDVqIA=" }, "universal": { - "aarch64-darwin": "sha256-XXktfE+Rx2kj+4PYlWZmfHCRheWDF1K+kCo1McnjZao=", - "aarch64-linux": "sha256-jRJ5OLuoV0b/Rd7SpYmyjCL7ED8iWjawvS8ZMAqVowE=", - "x86_64-darwin": "sha256-lTudK0BzZznIOAc2bTildCLg0ZeLJX19suhG4ZgH1Eo=", - "x86_64-linux": "sha256-M41bQrf1amzW1QGkq37gNgN5zh3v4/+OuBxp4CWUSqI=" + "aarch64-darwin": "sha256-MbKydBhX2pT/H5E0sif/aqvMjHSB3ch8e7aiO90daIU=", + "aarch64-linux": "sha256-UHb2USyHW1zjC8lDW/NbJEIm+UWvvdl4lRp1s5tSA+c=", + "x86_64-darwin": "sha256-iFQbCFOLkD920F4gCrZDAl3cr7o+IXr3EWp5z/wj2OU=", + "x86_64-linux": "sha256-zzUQlYs+o/irWlUIZyXJ2+qFRXhhtPQNI+VPcp7uD78=" }, "web": { - "aarch64-darwin": "sha256-l6/ZekcmlueBP7DdAuQpjGuYc6MFlMSWW4tnU2PixNU=", - "aarch64-linux": "sha256-l6/ZekcmlueBP7DdAuQpjGuYc6MFlMSWW4tnU2PixNU=", - "x86_64-darwin": "sha256-l6/ZekcmlueBP7DdAuQpjGuYc6MFlMSWW4tnU2PixNU=", - "x86_64-linux": "sha256-l6/ZekcmlueBP7DdAuQpjGuYc6MFlMSWW4tnU2PixNU=" + "aarch64-darwin": "sha256-xaJtvj3UJFnMVe+CLDriQ3BqISlrIflpYXdtNuTlB3g=", + "aarch64-linux": "sha256-xaJtvj3UJFnMVe+CLDriQ3BqISlrIflpYXdtNuTlB3g=", + "x86_64-darwin": "sha256-xaJtvj3UJFnMVe+CLDriQ3BqISlrIflpYXdtNuTlB3g=", + "x86_64-linux": "sha256-xaJtvj3UJFnMVe+CLDriQ3BqISlrIflpYXdtNuTlB3g=" }, "windows": { - "x86_64-darwin": "sha256-zxVV76R80bRqzJaWCBj9RlLkpB4HmX1iTYcdLAbiqT4=", - "x86_64-linux": "sha256-zxVV76R80bRqzJaWCBj9RlLkpB4HmX1iTYcdLAbiqT4=" + "x86_64-darwin": "sha256-fgM3VMvwTGs4MVndmJmjkr3+bpS/sNcyDAnt6EBDzAM=", + "x86_64-linux": "sha256-fgM3VMvwTGs4MVndmJmjkr3+bpS/sNcyDAnt6EBDzAM=" } }, "pubspecLock": { @@ -156,11 +156,11 @@ "dependency": "direct main", "description": { "name": "built_value", - "sha256": "ea90e81dc4a25a043d9bee692d20ed6d1c4a1662a28c03a96417446c093ed6b4", + "sha256": "082001b5c3dc495d4a42f1d5789990505df20d8547d42507c29050af6933ee27", "url": "https://pub.dev" }, "source": "hosted", - "version": "8.9.5" + "version": "8.10.1" }, "checked_yaml": { "dependency": "direct dev", @@ -262,45 +262,55 @@ "source": "hosted", "version": "1.4.0" }, + "dart_service_protocol_shared": { + "dependency": "direct main", + "description": { + "name": "dart_service_protocol_shared", + "sha256": "1737875c176d7e3d87bb3a359182828b542fe20a0b34198b8d31a81af5c7a76d", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "0.0.3" + }, "dds": { "dependency": "direct main", "description": { "name": "dds", - "sha256": "76fc5140ce4e8922711bbe6dfd3713283ecc7f386c52fc7f594cd5f3e6b80633", + "sha256": "b80c44468f5549867f65c43b0c6ecf0872261e86beb75087ed6c1d7f82e9db22", "url": "https://pub.dev" }, "source": "hosted", - "version": "5.0.2" + "version": "5.0.3" }, "dds_service_extensions": { "dependency": "direct main", "description": { "name": "dds_service_extensions", - "sha256": "5a5f0f9af646505f5bb21159c78ae5c275cd8bdb99e1a8e27f2f395c49568743", + "sha256": "c514114300ab30a95903fed1fdcf2949d057a0ea961168ec890a2b415b3ec52a", "url": "https://pub.dev" }, "source": "hosted", - "version": "2.0.1" + "version": "2.0.2" }, "devtools_shared": { "dependency": "direct main", "description": { "name": "devtools_shared", - "sha256": "659e2d65aa5ef5c3551163811c5c6fa1b973b3df80d8cac6f618035edcdc1096", + "sha256": "275e48a8a145fa09c7ae433a96fd433c01cc079d39b40acf5ba883236ae2c887", "url": "https://pub.dev" }, "source": "hosted", - "version": "11.2.1" + "version": "12.0.0" }, "dtd": { "dependency": "direct main", "description": { "name": "dtd", - "sha256": "b8269bc263ef516f3fea23bb47bbbe12a808280ec57245319e538b4767ff6d18", + "sha256": "09ddb228b3d1478a093556357692a4c203ff4f9d5f8cda05dfdca0ff3fb7c5d3", "url": "https://pub.dev" }, "source": "hosted", - "version": "2.5.0" + "version": "4.0.0" }, "dwds": { "dependency": "direct main", @@ -496,11 +506,11 @@ "dependency": "direct main", "description": { "name": "json_rpc_2", - "sha256": "246b321532f0e8e2ba474b4d757eaa558ae4fdd0688fdbc1e1ca9705f9b8ca0e", + "sha256": "3c46c2633aec07810c3d6a2eb08d575b5b4072980db08f1344e66aeb53d6e4a7", "url": "https://pub.dev" }, "source": "hosted", - "version": "3.0.3" + "version": "4.0.0" }, "logging": { "dependency": "direct main", @@ -776,11 +786,11 @@ "dependency": "direct main", "description": { "name": "sse", - "sha256": "4389a01d5bc7ef3e90fbc645f8e7c6d8711268adb1f511e14ae9c71de47ee32b", + "sha256": "fcc97470240bb37377f298e2bd816f09fd7216c07928641c0560719f50603643", "url": "https://pub.dev" }, "source": "hosted", - "version": "4.1.7" + "version": "4.1.8" }, "stack_trace": { "dependency": "direct main", diff --git a/pkgs/development/compilers/llvm/default.nix b/pkgs/development/compilers/llvm/default.nix index 41500bcba153..e729f60d6ac4 100644 --- a/pkgs/development/compilers/llvm/default.nix +++ b/pkgs/development/compilers/llvm/default.nix @@ -33,9 +33,9 @@ let "19.1.7".officialRelease.sha256 = "sha256-cZAB5vZjeTsXt9QHbP5xluWNQnAHByHtHnAhVDV0E6I="; "20.1.6".officialRelease.sha256 = "sha256-PfCzECiCM+k0hHqEUSr1TSpnII5nqIxg+Z8ICjmMj0Y="; "21.0.0-git".gitRelease = { - rev = "f9fce4975bbad835deba6e639c21a62154dd8c14"; - rev-version = "21.0.0-unstable-2025-06-22"; - sha256 = "sha256-Xu9RD6R6tQDZ0kaSD7N0GTp1TcUV6BK12fobK0qPkIw="; + rev = "2d94c08d03ada0a4d3c30a93594d0381946aa85a"; + rev-version = "21.0.0-unstable-2025-06-29"; + sha256 = "sha256-waAXH17LNrzbq4kJ1u9EUpYGDky8iEVVCsYpthOrgMY="; }; } // llvmVersions; diff --git a/pkgs/development/coq-modules/bignums/default.nix b/pkgs/development/coq-modules/bignums/default.nix index 6d38525921cf..24acbd14655c 100644 --- a/pkgs/development/coq-modules/bignums/default.nix +++ b/pkgs/development/coq-modules/bignums/default.nix @@ -12,14 +12,15 @@ owner = "coq"; inherit version; defaultVersion = + let + case = case: out: { inherit case out; }; + in with lib.versions; - lib.switch coq.coq-version (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: case: { inherit case out; }) { - "9.0.0+rocq${coq.coq-version}" = range "9.0" "9.0"; - "9.0.0+coq${coq.coq-version}" = range "8.13" "8.20"; - "${coq.coq-version}.0" = range "8.6" "8.17"; - } - )) null; + lib.switch coq.coq-version [ + (case (range "9.0" "9.0") "9.0.0+rocq${coq.coq-version}") + (case (range "8.13" "8.20") "9.0.0+coq${coq.coq-version}") + (case (range "8.6" "8.17") "${coq.coq-version}.0") + ] null; release."9.0.0+rocq9.0".sha256 = "sha256-ctnwpyNVhryEUA5YEsAImrcJsNMhtBgDSOz+z5Z4R78="; release."9.0.0+coq8.20".sha256 = "sha256-pkvyDaMXRalc6Uu1eBTuiqTpRauRrzu946c6TavyTKY="; diff --git a/pkgs/development/coq-modules/coq-elpi/default.nix b/pkgs/development/coq-modules/coq-elpi/default.nix index baa817b33138..f6308faaf34c 100644 --- a/pkgs/development/coq-modules/coq-elpi/default.nix +++ b/pkgs/development/coq-modules/coq-elpi/default.nix @@ -15,18 +15,19 @@ let elpi-version else ( + let + case = case: out: { inherit case out; }; + in with lib.versions; - lib.switch coq.coq-version (lib.lists.sort (x: y: lib.versions.isLe x.out y.out) ( - lib.mapAttrsToList (out: case: { inherit case out; }) { - "1.11.4" = "8.11"; - "1.12.0" = "8.12"; - "1.13.7" = range "8.13" "8.14"; - "1.15.0" = "8.15"; - "1.17.0" = range "8.16" "8.17"; - "1.18.1" = range "8.18" "8.19"; - "2.0.7" = range "8.20" "9.0"; - } - )) { } + lib.switch coq.coq-version [ + (case "8.11" "1.11.4") + (case "8.12" "1.12.0") + (case (range "8.13" "8.14") "1.13.7") + (case "8.15" "1.15.0") + (case (range "8.16" "8.17") "1.17.0") + (case (range "8.18" "8.19") "1.18.1") + (case (range "8.20" "9.0") "2.0.7") + ] { } ); elpi = coq.ocamlPackages.elpi.override { version = default-elpi-version; }; propagatedBuildInputs_wo_elpi = [ @@ -38,21 +39,22 @@ let owner = "LPCIC"; inherit version; defaultVersion = + let + case = case: out: { inherit case out; }; + in with lib.versions; - lib.switch coq.coq-version (lib.lists.sort (x: y: lib.versions.isLe x.out y.out) ( - lib.mapAttrsToList (out: case: { inherit case out; }) { - "2.5.2" = range "8.20" "9.0"; - "2.0.1" = "8.19"; - "2.0.0" = "8.18"; - "1.18.0" = "8.17"; - "1.15.6" = "8.16"; - "1.14.0" = "8.15"; - "1.11.2" = "8.14"; - "1.11.1" = "8.13"; - "1.8.3_8.12" = "8.12"; - "1.6.3_8.11" = "8.11"; - } - )) null; + lib.switch coq.coq-version [ + (case (range "8.20" "9.0") "2.5.2") + (case "8.19" "2.0.1") + (case "8.18" "2.0.0") + (case "8.17" "1.18.0") + (case "8.16" "1.15.6") + (case "8.15" "1.14.0") + (case "8.14" "1.11.2") + (case "8.13" "1.11.1") + (case "8.12" "1.8.3_8.12") + (case "8.11" "1.6.3_8.11") + ] null; release."2.5.2".sha256 = "sha256-lLzjPrbVB3rrqox528YiheUb0u89R84Xmrgkn0oplOs="; release."2.5.0".sha256 = "sha256-Z5xjO83X/ZoTQlWnVupGXPH3HuJefr57Kv128I0dltg="; release."2.4.0".sha256 = "sha256-W2+vVGExLLux8e0nSZESSoMVvrLxhL6dmXkb+JuKiqc="; diff --git a/pkgs/development/coq-modules/coqeal/default.nix b/pkgs/development/coq-modules/coqeal/default.nix index 7b0d58845adb..c1810a3730c8 100644 --- a/pkgs/development/coq-modules/coqeal/default.nix +++ b/pkgs/development/coq-modules/coqeal/default.nix @@ -17,27 +17,31 @@ let inherit version; defaultVersion = - with lib.versions; let - cmc = c: mc: [ - c - mc - ]; + case = coq: mc: out: { + cases = [ + coq + mc + ]; + inherit out; + }; in - lib.switch [ coq.coq-version mathcomp.version ] (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: cases: { inherit cases out; }) { - "2.1.0" = cmc (range "8.20" "9.0") (isGe "2.3.0"); - "2.0.3" = cmc (range "8.16" "8.20") (isGe "2.1.0"); - "2.0.1" = cmc (range "8.16" "8.20") (isGe "2.0.0"); - "2.0.0" = cmc (range "8.16" "8.17") (isGe "2.0.0"); - "1.1.3" = cmc (range "8.15" "8.18") (range "1.15.0" "1.18.0"); - "1.1.1" = cmc (range "8.13" "8.17") (range "1.13.0" "1.18.0"); - "1.1.0" = cmc (range "8.10" "8.15") (range "1.12.0" "1.18.0"); - "1.0.5" = cmc (isGe "8.10") (range "1.11.0" "1.12.0"); - "1.0.4" = cmc (isGe "8.7") "1.11.0"; - "1.0.3" = cmc (isGe "8.7") "1.10.0"; - } - )) null; + with lib.versions; + lib.switch + [ coq.coq-version mathcomp.version ] + [ + (case (range "8.20" "9.0") (isGe "2.3.0") "2.1.0") + (case (range "8.16" "8.20") (isGe "2.1.0") "2.0.3") + (case (range "8.16" "8.20") (isGe "2.0.0") "2.0.1") + (case (range "8.16" "8.17") (isGe "2.0.0") "2.0.0") + (case (range "8.15" "8.18") (range "1.15.0" "1.18.0") "1.1.3") + (case (range "8.13" "8.17") (range "1.13.0" "1.18.0") "1.1.1") + (case (range "8.10" "8.15") (range "1.12.0" "1.18.0") "1.1.0") + (case (isGe "8.10") (range "1.11.0" "1.12.0") "1.0.5") + (case (isGe "8.7") "1.11.0" "1.0.4") + (case (isGe "8.7") "1.10.0" "1.0.3") + ] + null; release."2.1.0".sha256 = "sha256-UoDxy2BKraDyRsO42GXRo26O74OF51biZQGkIMWLf8Y="; release."2.0.3".sha256 = "sha256-5lDq7IWlEW0EkNzYPu+dA6KOvRgy53W/alikpDr/Kd0="; diff --git a/pkgs/development/coq-modules/coquelicot/default.nix b/pkgs/development/coq-modules/coquelicot/default.nix index 274f41d111ad..b9f3ff50a27c 100644 --- a/pkgs/development/coq-modules/coquelicot/default.nix +++ b/pkgs/development/coq-modules/coquelicot/default.nix @@ -14,18 +14,19 @@ mkCoqDerivation { domain = "gitlab.inria.fr"; inherit version; defaultVersion = + let + case = case: out: { inherit case out; }; + in with lib.versions; - lib.switch coq.coq-version (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: case: { inherit case out; }) { - "3.4.3" = range "8.12" "9.0"; - "3.4.2" = range "8.12" "8.20"; - "3.4.0" = range "8.12" "8.18"; - "3.3.0" = range "8.12" "8.17"; - "3.2.0" = range "8.8" "8.16"; - "3.1.0" = range "8.8" "8.13"; - "3.0.2" = range "8.5" "8.9"; - } - )) null; + lib.switch coq.coq-version [ + (case (range "8.12" "9.0") "3.4.3") + (case (range "8.12" "8.20") "3.4.2") + (case (range "8.12" "8.18") "3.4.0") + (case (range "8.12" "8.17") "3.3.0") + (case (range "8.8" "8.16") "3.2.0") + (case (range "8.8" "8.13") "3.1.0") + (case (range "8.5" "8.9") "3.0.2") + ] null; release."3.4.3".sha256 = "sha256-bzzAIENU2OYTtmdBU9Xw8zyBvz9vqTiqjWSm7RnXXRA="; release."3.4.2".sha256 = "sha256-aBTF8ZKu67Rb3ryCqFyejUXf/65KgG8i5je/ZMFSrj4="; release."3.4.1".sha256 = "sha256-REhvIBl3EaL8CQqI34Gn7Xjf9NhPI3nrUAO26pSLbm0="; diff --git a/pkgs/development/coq-modules/deriving/default.nix b/pkgs/development/coq-modules/deriving/default.nix index 0dffe5e50e41..bfa2e99a481e 100644 --- a/pkgs/development/coq-modules/deriving/default.nix +++ b/pkgs/development/coq-modules/deriving/default.nix @@ -13,21 +13,25 @@ mkCoqDerivation { inherit version; defaultVersion = - with lib.versions; let - cmc = c: mc: [ - c - mc - ]; + case = coq: mc: out: { + cases = [ + coq + mc + ]; + inherit out; + }; in - lib.switch [ coq.coq-version ssreflect.version ] (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: cases: { inherit cases out; }) { - "0.2.2" = cmc (range "8.17" "9.0") (range "2.0.0" "2.4.0"); - "0.2.1" = cmc (range "8.17" "9.0") (range "2.0.0" "2.3.0"); - "0.2.0" = cmc (range "8.17" "8.20") (range "2.0.0" "2.2.0"); - "0.1.1" = cmc (range "8.11" "8.20") (isLe "2.0.0"); - } - )) null; + with lib.versions; + lib.switch + [ coq.coq-version ssreflect.version ] + [ + (case (range "8.17" "9.0") (range "2.0.0" "2.4.0") "0.2.2") + (case (range "8.17" "9.0") (range "2.0.0" "2.3.0") "0.2.1") + (case (range "8.17" "8.20") (range "2.0.0" "2.2.0") "0.2.0") + (case (range "8.11" "8.20") (isLe "2.0.0") "0.1.1") + ] + null; releaseRev = v: "v${v}"; diff --git a/pkgs/development/coq-modules/dpdgraph/default.nix b/pkgs/development/coq-modules/dpdgraph/default.nix index d48290887f22..936e2f892f58 100644 --- a/pkgs/development/coq-modules/dpdgraph/default.nix +++ b/pkgs/development/coq-modules/dpdgraph/default.nix @@ -15,24 +15,26 @@ mkCoqDerivation { owner = "Karmaki"; repo = "coq-dpdgraph"; inherit version; - defaultVersion = lib.switch coq.coq-version (lib.lists.sort (x: y: lib.versions.isLe x.out y.out) ( - lib.mapAttrsToList (out: case: { inherit case out; }) { - "1.0+8.20" = "8.20"; - "1.0+8.19" = "8.19"; - "1.0+8.18" = "8.18"; - "1.0+8.17" = "8.17"; - "1.0+8.16" = "8.16"; - "1.0+8.15" = "8.15"; - "1.0+8.14" = "8.14"; - "1.0+8.13" = "8.13"; - "0.6.8" = "8.12"; - "0.6.7" = "8.11"; - "0.6.6" = "8.10"; - "0.6.5" = "8.9"; - "0.6.3" = "8.8"; - "0.6.2" = "8.7"; - } - )) null; + defaultVersion = + let + case = case: out: { inherit case out; }; + in + lib.switch coq.coq-version [ + (case "8.20" "1.0+8.20") + (case "8.19" "1.0+8.19") + (case "8.18" "1.0+8.18") + (case "8.17" "1.0+8.17") + (case "8.16" "1.0+8.16") + (case "8.15" "1.0+8.15") + (case "8.14" "1.0+8.14") + (case "8.13" "1.0+8.13") + (case "8.12" "0.6.8") + (case "8.11" "0.6.7") + (case "8.10" "0.6.6") + (case "8.9" "0.6.5") + (case "8.8" "0.6.3") + (case "8.7" "0.6.2") + ] null; release."1.0+8.20".sha256 = "sha256-szfH/OksCH3SCbcFjwEvLwHE5avmHp1vYiJM6KAXFqs="; release."1.0+8.19".sha256 = "sha256-L1vjEydYiwDFTXES3sgfdaO/D50AbTJKBXUKUCgbpto="; diff --git a/pkgs/development/coq-modules/equations/default.nix b/pkgs/development/coq-modules/equations/default.nix index 0ab9f55039ed..9c415098e663 100644 --- a/pkgs/development/coq-modules/equations/default.nix +++ b/pkgs/development/coq-modules/equations/default.nix @@ -12,26 +12,28 @@ repo = "Coq-Equations"; opam-name = "rocq-equations"; inherit version; - defaultVersion = lib.switch coq.coq-version (lib.lists.sort (x: y: lib.versions.isLe x.out y.out) ( - lib.mapAttrsToList (out: case: { inherit case out; }) { - "1.3.1+9.0" = "9.0"; - "1.3.1+8.20" = "8.20"; - "1.3+8.19" = "8.19"; - "1.3+8.18" = "8.18"; - "1.3+8.17" = "8.17"; - "1.3+8.16" = "8.16"; - "1.3+8.15" = "8.15"; - "1.3+8.14" = "8.14"; - "1.3+8.13" = "8.13"; - "1.2.4+coq8.12" = "8.12"; - "1.2.4+coq8.11" = "8.11"; - "1.2.1+coq8.10-2" = "8.10"; - "1.2.1+coq8.9" = "8.9"; - "1.2+coq8.8" = "8.8"; - "1.0+coq8.7" = "8.7"; - "1.0+coq8.6" = "8.6"; - } - )) null; + defaultVersion = + let + case = case: out: { inherit case out; }; + in + lib.switch coq.coq-version [ + (case "9.0" "1.3.1+9.0") + (case "8.20" "1.3.1+8.20") + (case "8.19" "1.3+8.19") + (case "8.18" "1.3+8.18") + (case "8.17" "1.3+8.17") + (case "8.16" "1.3+8.16") + (case "8.15" "1.3+8.15") + (case "8.14" "1.3+8.14") + (case "8.13" "1.3+8.13") + (case "8.12" "1.2.4+coq8.12") + (case "8.11" "1.2.4+coq8.11") + (case "8.10" "1.2.1+coq8.10-2") + (case "8.9" "1.2.1+coq8.9") + (case "8.8" "1.2+coq8.8") + (case "8.7" "1.0+coq8.7") + (case "8.6" "1.0+coq8.6") + ] null; release."1.0+coq8.6".version = "1.0"; release."1.0+coq8.6".rev = "v1.0"; diff --git a/pkgs/development/coq-modules/extructures/default.nix b/pkgs/development/coq-modules/extructures/default.nix index 0635ea5f05e2..cfb2e819e22a 100644 --- a/pkgs/development/coq-modules/extructures/default.nix +++ b/pkgs/development/coq-modules/extructures/default.nix @@ -13,22 +13,26 @@ inherit version; defaultVersion = - with lib.versions; let - cmc = c: mc: [ - c - mc - ]; + case = coq: mc: out: { + cases = [ + coq + mc + ]; + inherit out; + }; in - lib.switch [ coq.coq-version mathcomp-boot.version ] (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: cases: { inherit cases out; }) { - "0.5.0" = cmc (range "8.17" "9.0") (range "2.0.0" "2.4.0"); - "0.4.0" = cmc (range "8.17" "8.20") (range "2.0.0" "2.3.0"); - "0.3.1" = cmc (range "8.11" "8.20") (range "1.12.0" "1.19.0"); - "0.3.0" = cmc (range "8.11" "8.14") (isLe "1.12.0"); - "0.2.2" = cmc (range "8.10" "8.12") (isLe "1.12.0"); - } - )) null; + with lib.versions; + lib.switch + [ coq.coq-version mathcomp-boot.version ] + [ + (case (range "8.17" "9.0") (range "2.0.0" "2.4.0") "0.5.0") + (case (range "8.17" "8.20") (range "2.0.0" "2.3.0") "0.4.0") + (case (range "8.11" "8.20") (range "1.12.0" "1.19.0") "0.3.1") + (case (range "8.11" "8.14") (isLe "1.12.0") "0.3.0") + (case (range "8.10" "8.12") (isLe "1.12.0") "0.2.2") + ] + null; releaseRev = v: "v${v}"; diff --git a/pkgs/development/coq-modules/flocq/default.nix b/pkgs/development/coq-modules/flocq/default.nix index 9f83232d6504..1d7871089fa9 100644 --- a/pkgs/development/coq-modules/flocq/default.nix +++ b/pkgs/development/coq-modules/flocq/default.nix @@ -14,18 +14,19 @@ mkCoqDerivation { domain = "gitlab.inria.fr"; inherit version; defaultVersion = + let + case = case: out: { inherit case out; }; + in with lib.versions; - lib.switch coq.coq-version (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: case: { inherit case out; }) { - "4.2.1" = range "8.15" "9.0"; - "4.2.0" = range "8.14" "8.20"; - "4.1.3" = range "8.14" "8.18"; - "4.1.1" = range "8.14" "8.17"; - "4.1.0" = range "8.14" "8.16"; - "3.4.3" = range "8.7" "8.15"; - "2.6.1" = range "8.5" "8.8"; - } - )) null; + lib.switch coq.coq-version [ + (case (range "8.15" "9.0") "4.2.1") + (case (range "8.14" "8.20") "4.2.0") + (case (range "8.14" "8.18") "4.1.3") + (case (range "8.14" "8.17") "4.1.1") + (case (range "8.14" "8.16") "4.1.0") + (case (range "8.7" "8.15") "3.4.3") + (case (range "8.5" "8.8") "2.6.1") + ] null; release."4.2.1".sha256 = "sha256-W5hcAm0GGmNsvre79/iGNcoBwFzStC4G177hZ3ds/4E="; release."4.2.0".sha256 = "sha256-uTeo4GCs6wTLN3sLKsj0xLlt1fUDYfozXtq6iooLUgM="; release."4.1.4".sha256 = "sha256-Use6Mlx79yef1CkCPyGoOItsD69B9KR+mQArCtmre4s="; diff --git a/pkgs/development/coq-modules/fourcolor/default.nix b/pkgs/development/coq-modules/fourcolor/default.nix index 10f11f7f236b..7270ac6ffd14 100644 --- a/pkgs/development/coq-modules/fourcolor/default.nix +++ b/pkgs/development/coq-modules/fourcolor/default.nix @@ -22,22 +22,26 @@ mkCoqDerivation { inherit version; defaultVersion = - with lib.versions; let - cmc = c: mc: [ - c - mc - ]; + case = coq: mc: out: { + cases = [ + coq + mc + ]; + inherit out; + }; in - lib.switch [ coq.coq-version mathcomp.version ] (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: cases: { inherit cases out; }) { - "1.4.1" = cmc (isGe "8.16") (isGe "2.0"); - "1.3.0" = cmc (isGe "8.16") "2.0.0"; - "1.2.5" = cmc (isGe "8.11") (range "1.12" "1.19"); - "1.2.4" = cmc (isGe "8.11") (range "1.11" "1.14"); - "1.2.3" = cmc (isLe "8.13") (lib.pred.inter (isGe "1.11.0") (isLt "1.13")); - } - )) null; + with lib.versions; + lib.switch + [ coq.coq-version mathcomp.version ] + [ + (case (isGe "8.16") (isGe "2.0") "1.4.1") + (case (isGe "8.16") "2.0.0" "1.3.0") + (case (isGe "8.11") (range "1.12" "1.19") "1.2.5") + (case (isGe "8.11") (range "1.11" "1.14") "1.2.4") + (case (isLe "8.13") (lib.pred.inter (isGe "1.11.0") (isLt "1.13")) "1.2.3") + ] + null; propagatedBuildInputs = [ mathcomp.boot diff --git a/pkgs/development/coq-modules/gaia/default.nix b/pkgs/development/coq-modules/gaia/default.nix index 3157176a6e4b..a716a1ad0363 100644 --- a/pkgs/development/coq-modules/gaia/default.nix +++ b/pkgs/development/coq-modules/gaia/default.nix @@ -22,21 +22,25 @@ mkCoqDerivation { inherit version; defaultVersion = - with lib.versions; let - cmc = c: mc: [ - c - mc - ]; + case = coq: mc: out: { + cases = [ + coq + mc + ]; + inherit out; + }; in - lib.switch [ coq.coq-version mathcomp.version ] (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: cases: { inherit cases out; }) { - "2.3" = cmc (range "8.16" "9.0") (range "2.0" "2.4"); - "2.2" = cmc (range "8.16" "9.0") (range "2.0" "2.3"); - "1.17" = cmc (range "8.10" "8.18") (range "1.12.0" "1.18.0"); - "1.11" = cmc (range "8.10" "8.12") "1.11.0"; - } - )) null; + with lib.versions; + lib.switch + [ coq.coq-version mathcomp.version ] + [ + (case (range "8.16" "9.0") (range "2.0" "2.4") "2.3") + (case (range "8.16" "9.0") (range "2.0" "2.3") "2.2") + (case (range "8.10" "8.18") (range "1.12.0" "1.18.0") "1.17") + (case (range "8.10" "8.12") "1.11.0" "1.11") + ] + null; propagatedBuildInputs = [ mathcomp.boot diff --git a/pkgs/development/coq-modules/graph-theory/default.nix b/pkgs/development/coq-modules/graph-theory/default.nix index ab4eb73fc7e9..f600a46b4a93 100644 --- a/pkgs/development/coq-modules/graph-theory/default.nix +++ b/pkgs/development/coq-modules/graph-theory/default.nix @@ -24,23 +24,27 @@ mkCoqDerivation { inherit version; defaultVersion = - with lib.versions; let - cmc = c: mc: [ - c - mc - ]; + case = coq: mc: out: { + cases = [ + coq + mc + ]; + inherit out; + }; in - lib.switch [ coq.coq-version mathcomp.version ] (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: cases: { inherit cases out; }) { - "0.9.6" = cmc (range "8.18" "9.0") (range "2.0.0" "2.4.0"); - "0.9.4" = cmc (range "8.16" "8.19") (range "2.0.0" "2.3.0"); - "0.9.3" = cmc (range "8.16" "8.18") (range "2.0.0" "2.1.0"); - "0.9.2" = cmc (range "8.14" "8.18") (range "1.13.0" "1.18.0"); - "0.9.1" = cmc (range "8.14" "8.16") (range "1.13.0" "1.14.0"); - "0.9" = cmc (range "8.12" "8.13") (range "1.12.0" "1.14.0"); - } - )) null; + with lib.versions; + lib.switch + [ coq.coq-version mathcomp.version ] + [ + (case (range "8.18" "9.0") (range "2.0.0" "2.4.0") "0.9.6") + (case (range "8.16" "8.19") (range "2.0.0" "2.3.0") "0.9.4") + (case (range "8.16" "8.18") (range "2.0.0" "2.1.0") "0.9.3") + (case (range "8.14" "8.18") (range "1.13.0" "1.18.0") "0.9.2") + (case (range "8.14" "8.16") (range "1.13.0" "1.14.0") "0.9.1") + (case (range "8.12" "8.13") (range "1.12.0" "1.14.0") "0.9") + ] + null; propagatedBuildInputs = [ mathcomp.algebra diff --git a/pkgs/development/coq-modules/hierarchy-builder/default.nix b/pkgs/development/coq-modules/hierarchy-builder/default.nix index fc57e1b44834..cf37bf147d4c 100644 --- a/pkgs/development/coq-modules/hierarchy-builder/default.nix +++ b/pkgs/development/coq-modules/hierarchy-builder/default.nix @@ -14,20 +14,21 @@ let owner = "math-comp"; inherit version; defaultVersion = + let + case = case: out: { inherit case out; }; + in with lib.versions; - lib.switch coq.coq-version (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: case: { inherit case out; }) { - "1.9.1" = range "8.20" "9.0"; - "1.8.0" = range "8.19" "8.20"; - "1.7.1" = range "8.18" "8.20"; - "1.6.0" = range "8.16" "8.18"; - "1.5.0" = range "8.15" "8.18"; - "1.4.0" = range "8.15" "8.17"; - "1.2.0" = range "8.13" "8.14"; - "1.1.0" = range "8.12" "8.13"; - "0.10.0" = isEq "8.11"; - } - )) null; + lib.switch coq.coq-version [ + (case (range "8.20" "9.0") "1.9.1") + (case (range "8.19" "8.20") "1.8.0") + (case (range "8.18" "8.20") "1.7.1") + (case (range "8.16" "8.18") "1.6.0") + (case (range "8.15" "8.18") "1.5.0") + (case (range "8.15" "8.17") "1.4.0") + (case (range "8.13" "8.14") "1.2.0") + (case (range "8.12" "8.13") "1.1.0") + (case (isEq "8.11") "0.10.0") + ] null; release."1.9.1".sha256 = "sha256-AiS0ezMyfIYlXnuNsVLz1GlKQZzJX+ilkrKkbo0GrF0="; release."1.8.1".sha256 = "sha256-Z0WAHDyycqgL+Le/zNfEAoLWzFb7WIL+3G3vEBExlb4="; release."1.8.0".sha256 = "sha256-4s/4ZZKj5tiTtSHGIM8Op/Pak4Vp52WVOpd4l9m19fY="; diff --git a/pkgs/development/coq-modules/http/default.nix b/pkgs/development/coq-modules/http/default.nix index 926f2b743712..9d35d8c6ca84 100644 --- a/pkgs/development/coq-modules/http/default.nix +++ b/pkgs/development/coq-modules/http/default.nix @@ -15,13 +15,12 @@ mkCoqDerivation { defaultVersion = let - inherit (lib.versions) isLe range; + case = case: out: { inherit case out; }; + inherit (lib.versions) range; in - lib.switch coq.coq-version (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: case: { inherit case out; }) { - "0.2.1" = range "8.14" "8.19"; - } - )) null; + lib.switch coq.coq-version [ + (case (range "8.14" "8.19") "0.2.1") + ] null; release = { "0.2.1".sha256 = "sha256-CIcaXEojNdajXNoMBjGlQRc1sOJSKgUlditNxbNSPgk="; }; diff --git a/pkgs/development/coq-modules/hydra-battles/default.nix b/pkgs/development/coq-modules/hydra-battles/default.nix index 648a6d3229fc..985cfd2853bf 100644 --- a/pkgs/development/coq-modules/hydra-battles/default.nix +++ b/pkgs/development/coq-modules/hydra-battles/default.nix @@ -19,13 +19,14 @@ inherit version; defaultVersion = + let + case = case: out: { inherit case out; }; + in with lib.versions; - lib.switch coq.coq-version (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: case: { inherit case out; }) { - "0.9" = range "8.13" "8.16"; - "0.4" = range "8.11" "8.12"; - } - )) null; + lib.switch coq.coq-version [ + (case (range "8.13" "8.16") "0.9") + (case (range "8.11" "8.12") "0.4") + ] null; useDune = true; diff --git a/pkgs/development/coq-modules/interval/default.nix b/pkgs/development/coq-modules/interval/default.nix index 9ed1576170a0..d46d4cf043c1 100644 --- a/pkgs/development/coq-modules/interval/default.nix +++ b/pkgs/development/coq-modules/interval/default.nix @@ -18,20 +18,23 @@ mkCoqDerivation rec { domain = "gitlab.inria.fr"; inherit version; defaultVersion = + let + case = case: out: { inherit case out; }; + in with lib.versions; - lib.switch coq.coq-version (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: case: { inherit case out; }) { - "4.11.1" = range "8.13" "8.20"; - "4.10.0" = range "8.12" "8.19"; - "4.9.0" = range "8.12" "8.18"; - "4.8.0" = range "8.12" "8.17"; - "4.6.0" = range "8.12" "8.16"; - "4.5.2" = range "8.8" "8.16"; - "4.0.0" = range "8.8" "8.12"; - "3.4.2" = range "8.7" "8.11"; - "3.3.0" = range "8.5" "8.6"; - } - )) null; + lib.switch coq.coq-version [ + (case (range "8.13" "9.0") "4.11.2") + (case (range "8.13" "8.20") "4.11.1") + (case (range "8.12" "8.19") "4.10.0") + (case (range "8.12" "8.18") "4.9.0") + (case (range "8.12" "8.17") "4.8.0") + (case (range "8.12" "8.16") "4.6.0") + (case (range "8.8" "8.16") "4.5.2") + (case (range "8.8" "8.12") "4.0.0") + (case (range "8.7" "8.11") "3.4.2") + (case (range "8.5" "8.6") "3.3.0") + ] null; + release."4.11.2".sha256 = "sha256-ouhjHtlxcqt06+Pt+UZAzwp83bVYPh3N+8jnsVvapSU="; release."4.11.1".sha256 = "sha256-QWZvU468rOhK796xCCEawW6rhCRTPnE0iLll9ynKflo="; release."4.11.0".sha256 = "sha256-vPwa4zSjyvxHLGDoNaBnHV2pb77dnQFbC50BL80fcvE="; release."4.10.0".sha256 = "sha256-MZJVoKGLXjDabdv9BuUSK1L9z1cubzC9cqVuWevKIXQ="; diff --git a/pkgs/development/coq-modules/iris/default.nix b/pkgs/development/coq-modules/iris/default.nix index 7bfdd94d3c27..b58ea00f12da 100644 --- a/pkgs/development/coq-modules/iris/default.nix +++ b/pkgs/development/coq-modules/iris/default.nix @@ -12,18 +12,19 @@ mkCoqDerivation { owner = "iris"; inherit version; defaultVersion = + let + case = case: out: { inherit case out; }; + in with lib.versions; - lib.switch coq.coq-version (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: case: { inherit case out; }) { - "4.3.0" = range "8.19" "9.0"; - "4.2.0" = range "8.18" "8.19"; - "4.1.0" = range "8.16" "8.18"; - "4.0.0" = range "8.13" "8.17"; - "3.5.0" = range "8.12" "8.14"; - "3.4.0" = range "8.11" "8.13"; - "3.3.0" = range "8.9" "8.10"; - } - )) null; + lib.switch coq.coq-version [ + (case (range "8.19" "9.0") "4.3.0") + (case (range "8.18" "8.19") "4.2.0") + (case (range "8.16" "8.18") "4.1.0") + (case (range "8.13" "8.17") "4.0.0") + (case (range "8.12" "8.14") "3.5.0") + (case (range "8.11" "8.13") "3.4.0") + (case (range "8.9" "8.10") "3.3.0") + ] null; release."4.3.0".sha256 = "sha256-3qhjiFI+A3I3fD8rFfJL5Hek77wScfn/FNNbDyGqA1k="; release."4.2.0".sha256 = "sha256-HuiHIe+5letgr1NN1biZZFq0qlWUbFmoVI7Q91+UIfM="; release."4.1.0".sha256 = "sha256-nTZUeZOXiH7HsfGbMKDE7vGrNVCkbMaWxdMWUcTUNlo="; diff --git a/pkgs/development/coq-modules/itauto/default.nix b/pkgs/development/coq-modules/itauto/default.nix index e7183563d8d4..690298742b9a 100644 --- a/pkgs/development/coq-modules/itauto/default.nix +++ b/pkgs/development/coq-modules/itauto/default.nix @@ -22,19 +22,20 @@ release."8.13+no".sha256 = "sha256-gXoxtLcHPoyjJkt7WqvzfCMCQlh6kL2KtCGe3N6RC/A="; inherit version; defaultVersion = + let + case = case: out: { inherit case out; }; + in with lib.versions; - lib.switch coq.coq-version (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: case: { inherit case out; }) { - "8.20.0" = isEq "8.20"; - "8.19.0" = isEq "8.19"; - "8.18.0" = isEq "8.18"; - "8.17.0" = isEq "8.17"; - "8.16.0" = isEq "8.16"; - "8.15.0" = isEq "8.15"; - "8.14.0" = isEq "8.14"; - "8.13+no" = isEq "8.13"; - } - )) null; + lib.switch coq.coq-version [ + (case (isEq "8.20") "8.20.0") + (case (isEq "8.19") "8.19.0") + (case (isEq "8.18") "8.18.0") + (case (isEq "8.17") "8.17.0") + (case (isEq "8.16") "8.16.0") + (case (isEq "8.15") "8.15.0") + (case (isEq "8.14") "8.14.0") + (case (isEq "8.13") "8.13+no") + ] null; mlPlugin = true; nativeBuildInputs = (with coq.ocamlPackages; [ ocamlbuild ]); diff --git a/pkgs/development/coq-modules/itree-io/default.nix b/pkgs/development/coq-modules/itree-io/default.nix index c3df0dbf49a1..1b5624cf5bc9 100644 --- a/pkgs/development/coq-modules/itree-io/default.nix +++ b/pkgs/development/coq-modules/itree-io/default.nix @@ -15,13 +15,12 @@ mkCoqDerivation { defaultVersion = let - inherit (lib.versions) isLe range; + case = case: out: { inherit case out; }; + inherit (lib.versions) range; in - lib.switch coq.coq-version (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: case: { inherit case out; }) { - "0.1.1" = range "8.12" "8.19"; - } - )) null; + lib.switch coq.coq-version [ + (case (range "8.12" "8.19") "0.1.1") + ] null; release = { "0.1.1".sha256 = "sha256-IFwIj8dxW4jm2gvuUJ8LKZFSJeljp0bsn8fezxY6t2o="; }; diff --git a/pkgs/development/coq-modules/jasmin/default.nix b/pkgs/development/coq-modules/jasmin/default.nix index c53ab153f3e9..d7545d9bba62 100644 --- a/pkgs/development/coq-modules/jasmin/default.nix +++ b/pkgs/development/coq-modules/jasmin/default.nix @@ -14,19 +14,23 @@ mkCoqDerivation { inherit version; defaultVersion = - with lib.versions; let - cmc = c: mc: [ - c - mc - ]; + case = coq: mc: out: { + cases = [ + coq + mc + ]; + inherit out; + }; in - lib.switch [ coq.coq-version mathcomp.version ] (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: cases: { inherit cases out; }) { - "2025.02.0" = cmc (range "8.19" "9.0") (range "2.2" "2.4"); - "2024.07.2" = cmc (isEq "8.18") (isEq "2.2"); - } - )) null; + with lib.versions; + lib.switch + [ coq.coq-version mathcomp.version ] + [ + (case (range "8.19" "9.0") (range "2.2" "2.4") "2025.02.0") + (case (isEq "8.18") (isEq "2.2") "2024.07.2") + ] + null; releaseRev = v: "v${v}"; release."2025.02.0".sha256 = "sha256-Jlf0+VPuYWXdWyKHKHSp7h/HuCCp4VkcrgDAmh7pi5s="; diff --git a/pkgs/development/coq-modules/json/default.nix b/pkgs/development/coq-modules/json/default.nix index b48b8de4ec89..06f18199fcf1 100644 --- a/pkgs/development/coq-modules/json/default.nix +++ b/pkgs/development/coq-modules/json/default.nix @@ -15,14 +15,13 @@ defaultVersion = let - inherit (lib.versions) isLe range; + case = case: out: { inherit case out; }; + inherit (lib.versions) range; in - lib.switch coq.coq-version (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: case: { inherit case out; }) { - "0.2.0" = range "8.14" "9.0"; - "0.1.3" = range "8.14" "8.20"; - } - )) null; + lib.switch coq.coq-version [ + (case (range "8.14" "9.0") "0.2.0") + (case (range "8.14" "8.20") "0.1.3") + ] null; release = { "0.2.0".sha256 = "sha256-qDRTgWLUvu4x3/d3BDcqo2I4W5ZmLyRiwuY/Tm/FuKA="; "0.1.3".sha256 = "sha256-lElAzW4IuX+BB6ngDjlyKn0MytLRfbhQanB+Lct/WR0="; diff --git a/pkgs/development/coq-modules/mathcomp-abel/default.nix b/pkgs/development/coq-modules/mathcomp-abel/default.nix index 925cbbdc62a7..833333392536 100644 --- a/pkgs/development/coq-modules/mathcomp-abel/default.nix +++ b/pkgs/development/coq-modules/mathcomp-abel/default.nix @@ -18,20 +18,24 @@ mkCoqDerivation { inherit version; defaultVersion = - with lib.versions; let - cmc = c: mc: [ - c - mc - ]; + case = coq: mc: out: { + cases = [ + coq + mc + ]; + inherit out; + }; in - lib.switch [ coq.coq-version mathcomp.version ] (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: cases: { inherit cases out; }) { - "1.2.1" = cmc (range "8.10" "8.16") (range "1.12.0" "1.15.0"); - "1.2.0" = cmc (range "8.10" "8.15") (range "1.12.0" "1.14.0"); - "1.1.2" = cmc (range "8.10" "8.14") (range "1.11.0" "1.12.0"); - } - )) null; + with lib.versions; + lib.switch + [ coq.coq-version mathcomp.version ] + [ + (case (range "8.10" "8.16") (range "1.12.0" "1.15.0") "1.2.1") + (case (range "8.10" "8.15") (range "1.12.0" "1.14.0") "1.2.0") + (case (range "8.10" "8.14") (range "1.11.0" "1.12.0") "1.1.2") + ] + null; release."1.2.1".sha256 = "sha256-M1q6WIPBsayHde2hwlTxylH169hcTs3OuFsEkM0e3yc="; release."1.2.0".sha256 = "1picd4m85ipj22j3b84cv8ab3330radzrhd6kp0gpxq14dhv02c2"; diff --git a/pkgs/development/coq-modules/mathcomp-algebra-tactics/default.nix b/pkgs/development/coq-modules/mathcomp-algebra-tactics/default.nix index fc4cca84b4d0..0bd7cd8a9fb9 100644 --- a/pkgs/development/coq-modules/mathcomp-algebra-tactics/default.nix +++ b/pkgs/development/coq-modules/mathcomp-algebra-tactics/default.nix @@ -19,22 +19,26 @@ mkCoqDerivation { inherit version; defaultVersion = - with lib.versions; let - cmc = c: mc: [ - c - mc - ]; + case = coq: mc: out: { + cases = [ + coq + mc + ]; + inherit out; + }; in - lib.switch [ coq.coq-version mathcomp-algebra.version ] (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: cases: { inherit cases out; }) { - "1.2.5" = cmc (range "8.20" "9.0") (isGe "2.4"); - "1.2.4" = cmc (range "8.16" "9.0") (isGe "2.0"); - "1.2.2" = cmc (range "8.16" "8.18") (isGe "2.0"); - "1.1.1" = cmc (range "8.16" "8.19") (isGe "1.15"); - "1.0.0" = cmc (range "8.13" "8.16") (isGe "1.12"); - } - )) null; + with lib.versions; + lib.switch + [ coq.coq-version mathcomp-algebra.version ] + [ + (case (range "8.20" "9.0") (isGe "2.4") "1.2.5") + (case (range "8.16" "9.0") (isGe "2.0") "1.2.4") + (case (range "8.16" "8.18") (isGe "2.0") "1.2.2") + (case (range "8.16" "8.19") (isGe "1.15") "1.1.1") + (case (range "8.13" "8.16") (isGe "1.12") "1.0.0") + ] + null; release."1.0.0".sha256 = "sha256-kszARPBizWbxSQ/Iqpf2vLbxYc6AjpUCLnSNlPcNfls="; release."1.1.1".sha256 = "sha256-5wItMeeTRoJlRBH3zBNc2VUZn6pkDde60YAvXTx+J3U="; diff --git a/pkgs/development/coq-modules/mathcomp-analysis/default.nix b/pkgs/development/coq-modules/mathcomp-analysis/default.nix index b24c6fa18849..5a6ec833428f 100644 --- a/pkgs/development/coq-modules/mathcomp-analysis/default.nix +++ b/pkgs/development/coq-modules/mathcomp-analysis/default.nix @@ -44,32 +44,36 @@ let release."0.2.3".sha256 = "0p9mr8g1qma6h10qf7014dv98ln90dfkwn76ynagpww7qap8s966"; defaultVersion = - with lib.versions; let - cmc = c: mc: [ - c - mc - ]; + case = coq: mc: out: { + cases = [ + coq + mc + ]; + inherit out; + }; in - lib.switch [ coq.coq-version mathcomp.version ] (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: cases: { inherit cases out; }) { - "1.11.0" = cmc (range "8.20" "9.0") (range "2.1.0" "2.4.0"); - "1.9.0" = cmc (range "8.19" "8.20") (range "2.1.0" "2.3.0"); - "1.1.0" = cmc (range "8.17" "8.20") (range "2.0.0" "2.2.0"); - "0.7.0" = cmc (range "8.17" "8.19") (range "1.17.0" "1.19.0"); - "0.6.7" = cmc (range "8.17" "8.18") (range "1.15.0" "1.18.0"); - "0.6.6" = cmc (range "8.17" "8.18") (range "1.15.0" "1.18.0"); - "0.6.5" = cmc (range "8.14" "8.18") (range "1.15.0" "1.17.0"); - "0.6.1" = cmc (range "8.14" "8.18") (range "1.13.0" "1.16.0"); - "0.5.2" = cmc (range "8.14" "8.18") (range "1.13" "1.15"); - "0.5.1" = cmc (range "8.13" "8.15") (range "1.13" "1.14"); - "0.3.13" = cmc (range "8.13" "8.15") (range "1.12" "1.14"); - "0.3.10" = cmc (range "8.11" "8.14") (range "1.12" "1.13"); - "0.3.3" = cmc (range "8.10" "8.12") "1.11.0"; - "0.3.1" = cmc (range "8.10" "8.11") "1.11.0"; - "0.2.3" = cmc (range "8.8" "8.11") (range "1.8" "1.10"); - } - )) null; + with lib.versions; + lib.switch + [ coq.coq-version mathcomp.version ] + [ + (case (range "8.20" "9.0") (range "2.1.0" "2.4.0") "1.11.0") + (case (range "8.19" "8.20") (range "2.1.0" "2.3.0") "1.9.0") + (case (range "8.17" "8.20") (range "2.0.0" "2.2.0") "1.1.0") + (case (range "8.17" "8.19") (range "1.17.0" "1.19.0") "0.7.0") + (case (range "8.17" "8.18") (range "1.15.0" "1.18.0") "0.6.7") + (case (range "8.17" "8.18") (range "1.15.0" "1.18.0") "0.6.6") + (case (range "8.14" "8.18") (range "1.15.0" "1.17.0") "0.6.5") + (case (range "8.14" "8.18") (range "1.13.0" "1.16.0") "0.6.1") + (case (range "8.14" "8.18") (range "1.13" "1.15") "0.5.2") + (case (range "8.13" "8.15") (range "1.13" "1.14") "0.5.1") + (case (range "8.13" "8.15") (range "1.12" "1.14") "0.3.13") + (case (range "8.11" "8.14") (range "1.12" "1.13") "0.3.10") + (case (range "8.10" "8.12") "1.11.0" "0.3.3") + (case (range "8.10" "8.11") "1.11.0" "0.3.1") + (case (range "8.8" "8.11") (range "1.8" "1.10") "0.2.3") + ] + null; # list of analysis packages sorted by dependency order packages = { diff --git a/pkgs/development/coq-modules/mathcomp-apery/default.nix b/pkgs/development/coq-modules/mathcomp-apery/default.nix index 697d0e970e6a..3ae89da38c16 100644 --- a/pkgs/development/coq-modules/mathcomp-apery/default.nix +++ b/pkgs/development/coq-modules/mathcomp-apery/default.nix @@ -17,18 +17,22 @@ mkCoqDerivation { inherit version; defaultVersion = - with lib.versions; let - cmc = c: mc: [ - c - mc - ]; + case = coq: mc: out: { + cases = [ + coq + mc + ]; + inherit out; + }; in - lib.switch [ coq.coq-version mathcomp.version ] (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: cases: { inherit cases out; }) { - "1.0.2" = cmc (range "8.13" "8.16") (range "1.12.0" "1.17.0"); - } - )) null; + with lib.versions; + lib.switch + [ coq.coq-version mathcomp.version ] + [ + (case (range "8.13" "8.16") (range "1.12.0" "1.17.0") "1.0.2") + ] + null; release."1.0.2".sha256 = "sha256-llxyMKYvWUA7fyroG1S/jtpioAoArmarR1edi3cikcY="; diff --git a/pkgs/development/coq-modules/mathcomp-bigenough/default.nix b/pkgs/development/coq-modules/mathcomp-bigenough/default.nix index 357fd97d93cf..8e50d9a4ea86 100644 --- a/pkgs/development/coq-modules/mathcomp-bigenough/default.nix +++ b/pkgs/development/coq-modules/mathcomp-bigenough/default.nix @@ -22,13 +22,14 @@ mkCoqDerivation { }; inherit version; defaultVersion = + let + case = case: out: { inherit case out; }; + in with lib.versions; - lib.switch coq.coq-version (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: case: { inherit case out; }) { - "1.0.2" = range "8.10" "9.0"; - "1.0.0" = range "8.5" "8.14"; - } - )) null; + lib.switch coq.coq-version [ + (case (range "8.10" "9.0") "1.0.2") + (case (range "8.5" "8.14") "1.0.0") + ] null; propagatedBuildInputs = [ mathcomp-boot ]; diff --git a/pkgs/development/coq-modules/mathcomp-finmap/default.nix b/pkgs/development/coq-modules/mathcomp-finmap/default.nix index 97dd95556200..11b177e80910 100644 --- a/pkgs/development/coq-modules/mathcomp-finmap/default.nix +++ b/pkgs/development/coq-modules/mathcomp-finmap/default.nix @@ -16,28 +16,32 @@ mkCoqDerivation { owner = "math-comp"; inherit version; defaultVersion = - with lib.versions; let - cmc = c: mc: [ - c - mc - ]; + case = coq: mc: out: { + cases = [ + coq + mc + ]; + inherit out; + }; in - lib.switch [ coq.coq-version mathcomp-boot.version ] (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: cases: { inherit cases out; }) { - "2.2.0" = cmc (range "8.20" "9.0") (range "2.3" "2.4"); - "2.1.0" = cmc (range "8.16" "9.0") (range "2.0" "2.3"); - "2.0.0" = cmc (range "8.16" "8.18") (range "2.0" "2.1"); - "1.5.2" = cmc (range "8.13" "8.20") (range "1.12" "1.19"); - "1.5.1" = cmc (isGe "8.10") (range "1.11" "1.17"); - "1.5.0" = cmc (range "8.7" "8.11") "1.11.0"; - "1.4.0+coq-8.11" = cmc (isEq "8.11") (range "1.8" "1.10"); - "1.4.0" = cmc (range "8.7" "8.11.0") (range "1.8" "1.10"); - "1.3.4" = cmc (range "8.7" "8.11.0") (range "1.8" "1.10"); - "1.1.0" = cmc (range "8.7" "8.9") "1.7.0"; - "1.0.0" = cmc (range "8.6" "8.7") (range "1.6.1" "1.7"); - } - )) null; + with lib.versions; + lib.switch + [ coq.coq-version mathcomp-boot.version ] + [ + (case (range "8.20" "9.0") (range "2.3" "2.4") "2.2.0") + (case (range "8.16" "9.0") (range "2.0" "2.3") "2.1.0") + (case (range "8.16" "8.18") (range "2.0" "2.1") "2.0.0") + (case (range "8.13" "8.20") (range "1.12" "1.19") "1.5.2") + (case (isGe "8.10") (range "1.11" "1.17") "1.5.1") + (case (range "8.7" "8.11") "1.11.0" "1.5.0") + (case (isEq "8.11") (range "1.8" "1.10") "1.4.0+coq-8.11") + (case (range "8.7" "8.11.0") (range "1.8" "1.10") "1.4.0") + (case (range "8.7" "8.11.0") (range "1.8" "1.10") "1.3.4") + (case (range "8.7" "8.9") "1.7.0" "1.1.0") + (case (range "8.6" "8.7") (range "1.6.1" "1.7") "1.0.0") + ] + null; release = { "2.2.0".sha256 = "sha256-oDQEZOutrJxmN8FvzovUIhqw0mwc8Ej7thrieJrW8BY="; "2.1.0".sha256 = "sha256-gh0cnhdVDyo+D5zdtxLc10kGKQLQ3ITzHnMC45mCtpY="; diff --git a/pkgs/development/coq-modules/mathcomp-infotheo/default.nix b/pkgs/development/coq-modules/mathcomp-infotheo/default.nix index 25d3827a89e3..c3bb32a15cc5 100644 --- a/pkgs/development/coq-modules/mathcomp-infotheo/default.nix +++ b/pkgs/development/coq-modules/mathcomp-infotheo/default.nix @@ -19,27 +19,31 @@ inherit version; defaultVersion = - with lib.versions; let - cmc = c: mc: [ - c - mc - ]; + case = coq: mc: out: { + cases = [ + coq + mc + ]; + inherit out; + }; in - lib.switch [ coq.coq-version mathcomp-analysis.version ] (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: cases: { inherit cases out; }) { - "0.9.3" = cmc (range "8.20" "8.20") (isGe "1.10"); - "0.9.1" = cmc (range "8.19" "8.20") (isGe "1.9"); - "0.7.7" = cmc (range "8.19" "8.20") (isGe "1.7"); - "0.7.5" = cmc (range "8.19" "8.20") (isGe "1.7"); - "0.7.3" = cmc (range "8.18" "8.20") (isGe "1.5"); - "0.7.2" = cmc (range "8.18" "8.19") (isGe "1.2"); - "0.7.1" = cmc (range "8.17" "8.19") (isGe "1.0"); - "0.6.1" = cmc (isGe "8.17") (range "0.6.6" "0.7.0"); - "0.5.2" = cmc (range "8.17" "8.18") (range "0.6.0" "0.6.7"); - "0.5.1" = cmc (range "8.15" "8.16") (range "0.5.4" "0.6.5"); - } - )) null; + with lib.versions; + lib.switch + [ coq.coq-version mathcomp-analysis.version ] + [ + (case (range "8.20" "8.20") (isGe "1.10") "0.9.3") + (case (range "8.19" "8.20") (isGe "1.9") "0.9.1") + (case (range "8.19" "8.20") (isGe "1.7") "0.7.7") + (case (range "8.19" "8.20") (isGe "1.7") "0.7.5") + (case (range "8.18" "8.20") (isGe "1.5") "0.7.3") + (case (range "8.18" "8.19") (isGe "1.2") "0.7.2") + (case (range "8.17" "8.19") (isGe "1.0") "0.7.1") + (case (isGe "8.17") (range "0.6.6" "0.7.0") "0.6.1") + (case (range "8.17" "8.18") (range "0.6.0" "0.6.7") "0.5.2") + (case (range "8.15" "8.16") (range "0.5.4" "0.6.5") "0.5.1") + ] + null; release."0.9.3".sha256 = "sha256-8+cnVKNAvZ3MVV3BpS8UmCIxJphsQRBv3swek1eEBjE="; release."0.9.1".sha256 = "sha256-WI20HxMHr1ZUwOGPIUl+nRI8TxVUa2+F1xcGjRDHO9g="; release."0.7.7".sha256 = "sha256-kEbpMl7U+I2kvqi1VrjhIVFkZFO6h0tTHEUZRbHYG7E="; diff --git a/pkgs/development/coq-modules/mathcomp-tarjan/default.nix b/pkgs/development/coq-modules/mathcomp-tarjan/default.nix index a8d233af7d3b..e5f1b9ee1b9e 100644 --- a/pkgs/development/coq-modules/mathcomp-tarjan/default.nix +++ b/pkgs/development/coq-modules/mathcomp-tarjan/default.nix @@ -18,21 +18,25 @@ mkCoqDerivation { inherit version; defaultVersion = - with lib.versions; let - cmc = c: mc: [ - c - mc - ]; + case = coq: mc: out: { + cases = [ + coq + mc + ]; + inherit out; + }; in - lib.switch [ coq.coq-version mathcomp-ssreflect.version ] (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: cases: { inherit cases out; }) { - "1.0.3" = cmc (range "8.16" "9.0") (range "2.0.0" "2.4.0"); - "1.0.2" = cmc (range "8.16" "9.0") (range "2.0.0" "2.3.0"); - "1.0.1" = cmc (range "8.12" "8.18") (range "1.12.0" "1.17.0"); - "1.0.0" = cmc (range "8.10" "8.16") (range "1.12.0" "1.17.0"); - } - )) null; + with lib.versions; + lib.switch + [ coq.coq-version mathcomp-ssreflect.version ] + [ + (case (range "8.16" "9.0") (range "2.0.0" "2.4.0") "1.0.3") + (case (range "8.16" "9.0") (range "2.0.0" "2.3.0") "1.0.2") + (case (range "8.12" "8.18") (range "1.12.0" "1.17.0") "1.0.1") + (case (range "8.10" "8.16") (range "1.12.0" "1.17.0") "1.0.0") + ] + null; release."1.0.3".sha256 = "sha256-5lpOCDyH6NFzGLvnXHHAnR7Qv5oXsUyC8TLBFrIiBag="; release."1.0.2".sha256 = "sha256-U20xgA+e9KTRdvILD1cxN6ia+dlA8uBTIbc4QlKz9ss="; release."1.0.1".sha256 = "sha256-utNjFCAqC5xOuhdyKhfMZkRYJD0xv9Gt6U3ZdQ56mek="; diff --git a/pkgs/development/coq-modules/mathcomp-word/default.nix b/pkgs/development/coq-modules/mathcomp-word/default.nix index c43d7a34f2f6..0041eca094ad 100644 --- a/pkgs/development/coq-modules/mathcomp-word/default.nix +++ b/pkgs/development/coq-modules/mathcomp-word/default.nix @@ -56,19 +56,23 @@ mkCoqDerivation { inherit version; defaultVersion = - with lib.versions; let - cmc = c: mc: [ - c - mc - ]; + case = coq: mc: out: { + cases = [ + coq + mc + ]; + inherit out; + }; in - lib.switch [ coq.coq-version mathcomp.version ] (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: cases: { inherit cases out; }) { - "3.2" = cmc (range "8.16" "9.0") (isGe "2.0"); - "2.4" = cmc (range "8.12" "8.20") (range "1.12" "1.19"); - } - )) null; + with lib.versions; + lib.switch + [ coq.coq-version mathcomp.version ] + [ + (case (range "8.16" "9.0") (isGe "2.0") "3.2") + (case (range "8.12" "8.20") (range "1.12" "1.19") "2.4") + ] + null; propagatedBuildInputs = [ mathcomp.algebra diff --git a/pkgs/development/coq-modules/mathcomp-zify/default.nix b/pkgs/development/coq-modules/mathcomp-zify/default.nix index 2c91a5056496..e1d1a9fdec83 100644 --- a/pkgs/development/coq-modules/mathcomp-zify/default.nix +++ b/pkgs/development/coq-modules/mathcomp-zify/default.nix @@ -20,20 +20,24 @@ mkCoqDerivation { inherit version; defaultVersion = - with lib.versions; let - cmc = c: mc: [ - c - mc - ]; + case = coq: mc: out: { + cases = [ + coq + mc + ]; + inherit out; + }; in - lib.switch [ coq.coq-version mathcomp-algebra.version ] (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: cases: { inherit cases out; }) { - "1.5.0+2.0+8.16" = cmc (range "8.16" "9.0") (isGe "2.0.0"); - "1.3.0+1.12+8.13" = cmc (range "8.13" "8.20") (range "1.12" "1.19.0"); - "1.1.0+1.12+8.13" = cmc (range "8.13" "8.16") (range "1.12" "1.17.0"); - } - )) null; + with lib.versions; + lib.switch + [ coq.coq-version mathcomp-algebra.version ] + [ + (case (range "8.16" "9.0") (isGe "2.0.0") "1.5.0+2.0+8.16") + (case (range "8.13" "8.20") (range "1.12" "1.19.0") "1.3.0+1.12+8.13") + (case (range "8.13" "8.16") (range "1.12" "1.17.0") "1.1.0+1.12+8.13") + ] + null; release."1.0.0+1.12+8.13".sha256 = "1j533vx6lacr89bj1bf15l1a0s7rvrx4l00wyjv99aczkfbz6h6k"; release."1.1.0+1.12+8.13".sha256 = "1plf4v6q5j7wvmd5gsqlpiy0vwlw6hy5daq2x42gqny23w9mi2pr"; diff --git a/pkgs/development/coq-modules/mathcomp/default.nix b/pkgs/development/coq-modules/mathcomp/default.nix index 0311a33a406c..f988a6284376 100644 --- a/pkgs/development/coq-modules/mathcomp/default.nix +++ b/pkgs/development/coq-modules/mathcomp/default.nix @@ -31,31 +31,30 @@ let withDoc = single && (args.withDoc or false); defaultVersion = let - inherit (lib.versions) isLe range; + case = case: out: { inherit case out; }; + inherit (lib.versions) range; in - lib.switch coq.coq-version (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: case: { inherit case out; }) { - "2.4.0" = range "8.20" "9.0"; - "2.3.0" = range "8.19" "9.0"; - "2.2.0" = range "8.17" "8.20"; - "2.1.0" = range "8.17" "8.18"; - "2.0.0" = range "8.17" "8.18"; - "1.19.0" = range "8.19" "8.20"; - "1.18.0" = range "8.17" "8.18"; - "1.17.0" = range "8.15" "8.18"; - "1.16.0" = range "8.13" "8.18"; - "1.15.0" = range "8.14" "8.16"; - "1.14.0" = range "8.11" "8.15"; - "1.13.0" = range "8.11" "8.15"; - "1.12.0" = range "8.10" "8.13"; - "1.11.0" = range "8.7" "8.12"; - "1.10.0" = range "8.7" "8.11"; - "1.9.0" = range "8.7" "8.11"; - "1.8.0" = range "8.7" "8.9"; - "1.7.0" = range "8.6" "8.9"; - "1.6.4" = range "8.5" "8.7"; - } - )) null; + lib.switch coq.coq-version [ + (case (range "8.20" "9.0") "2.4.0") + (case (range "8.19" "9.0") "2.3.0") + (case (range "8.17" "8.20") "2.2.0") + (case (range "8.17" "8.18") "2.1.0") + (case (range "8.17" "8.18") "2.0.0") + (case (range "8.19" "8.20") "1.19.0") + (case (range "8.17" "8.18") "1.18.0") + (case (range "8.15" "8.18") "1.17.0") + (case (range "8.13" "8.18") "1.16.0") + (case (range "8.14" "8.16") "1.15.0") + (case (range "8.11" "8.15") "1.14.0") + (case (range "8.11" "8.15") "1.13.0") + (case (range "8.10" "8.13") "1.12.0") + (case (range "8.7" "8.12") "1.11.0") + (case (range "8.7" "8.11") "1.10.0") + (case (range "8.7" "8.11") "1.9.0") + (case (range "8.7" "8.9") "1.8.0") + (case (range "8.6" "8.9") "1.7.0") + (case (range "8.5" "8.7") "1.6.4") + ] null; release = { "2.4.0".sha256 = "sha256-A1XgLLwZRvKS8QyceCkSQa7ue6TYyf5fMft5gSx9NOs="; "2.3.0".sha256 = "sha256-wa6OBig8rhAT4iwupSylyCAMhO69rADa0MQIX5zzL+Q="; diff --git a/pkgs/development/coq-modules/metacoq/default.nix b/pkgs/development/coq-modules/metacoq/default.nix index 2856547930ad..bb78843c736f 100644 --- a/pkgs/development/coq-modules/metacoq/default.nix +++ b/pkgs/development/coq-modules/metacoq/default.nix @@ -10,22 +10,24 @@ let repo = "metacoq"; owner = "MetaCoq"; - defaultVersion = lib.switch coq.coq-version (lib.lists.sort (x: y: lib.versions.isLe x.out y.out) ( - lib.mapAttrsToList (out: case: { inherit case out; }) { - "1.0-beta2-8.11" = "8.11"; - "1.0-beta2-8.12" = "8.12"; + defaultVersion = + let + case = case: out: { inherit case out; }; + in + lib.switch coq.coq-version [ + (case "8.11" "1.0-beta2-8.11") + (case "8.12" "1.0-beta2-8.12") # Do not provide 8.13 because it does not compile with equations 1.3 provided by default (only 1.2.3) - # "1.0-beta2-8.13" = "8.13"; - "1.1-8.14" = "8.14"; - "1.1-8.15" = "8.15"; - "1.1-8.16" = "8.16"; - "1.3.1-8.17" = "8.17"; - "1.3.1-8.18" = "8.18"; - "1.3.3-8.19" = "8.19"; - "1.3.4-8.20" = "8.20"; - "1.3.4-9.0" = "9.0"; - } - )) null; + # (case "8.13" "1.0-beta2-8.13") + (case "8.14" "1.1-8.14") + (case "8.15" "1.1-8.15") + (case "8.16" "1.1-8.16") + (case "8.17" "1.3.1-8.17") + (case "8.18" "1.3.1-8.18") + (case "8.19" "1.3.3-8.19") + (case "8.20" "1.3.4-8.20") + (case "9.0" "1.3.4-9.0") + ] null; release = { "1.0-beta2-8.11".sha256 = "sha256-I9YNk5Di6Udvq5/xpLSNflfjRyRH8fMnRzbo3uhpXNs="; "1.0-beta2-8.12".sha256 = "sha256-I8gpmU9rUQJh0qfp5KOgDNscVvCybm5zX4TINxO1TVA="; diff --git a/pkgs/development/coq-modules/metarocq/default.nix b/pkgs/development/coq-modules/metarocq/default.nix index a90df150f409..aa7b39918427 100644 --- a/pkgs/development/coq-modules/metarocq/default.nix +++ b/pkgs/development/coq-modules/metarocq/default.nix @@ -10,11 +10,13 @@ let repo = "metarocq"; owner = "MetaRocq"; - defaultVersion = lib.switch coq.coq-version (lib.lists.sort (x: y: lib.versions.isLe x.out y.out) ( - lib.mapAttrsToList (out: case: { inherit case out; }) { - "1.4-9.0" = "9.0"; - } - )) null; + defaultVersion = + let + case = case: out: { inherit case out; }; + in + lib.switch coq.coq-version [ + (case ("9.0") "1.4-9.0") + ] null; release = { "1.4-9.0".sha256 = "sha256-5QecDAMkvgfDPZ7/jDfnOgcE+Eb1LTAozP7nz6nkuxg="; }; diff --git a/pkgs/development/coq-modules/multinomials/default.nix b/pkgs/development/coq-modules/multinomials/default.nix index 6cb2adc7aba6..bf6a7eaef0f3 100644 --- a/pkgs/development/coq-modules/multinomials/default.nix +++ b/pkgs/development/coq-modules/multinomials/default.nix @@ -20,30 +20,34 @@ mkCoqDerivation { inherit version; defaultVersion = - with lib.versions; let - cmc = c: mc: [ - c - mc - ]; + case = coq: mc: out: { + cases = [ + coq + mc + ]; + inherit out; + }; in - lib.switch [ coq.coq-version mathcomp.version ] (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: cases: { inherit cases out; }) { - "2.4.0" = cmc (range "8.18" "9.0") (range "2.1.0" "2.4.0"); - "2.3.0" = cmc (range "8.17" "9.0") (range "2.1.0" "2.3.0"); - "2.2.0" = cmc (range "8.17" "8.20") (isGe "2.1.0"); - "2.1.0" = cmc (range "8.16" "8.18") "2.1.0"; - "2.0.0" = cmc (range "8.16" "8.18") "2.0.0"; - "1.6.0" = cmc (isGe "8.15") (range "1.15.0" "1.19.0"); - "1.5.6" = cmc (isGe "8.10") (range "1.13.0" "1.17.0"); - "1.5.5" = cmc (range "8.10" "8.16") (range "1.12.0" "1.15.0"); - "1.5.3" = cmc (range "8.10" "8.12") "1.12.0"; - "1.5.2" = cmc (range "8.7" "8.12") "1.11.0"; - "1.5.0" = cmc (range "8.7" "8.11") (range "1.8" "1.10"); - "1.4" = cmc (range "8.7" "8.10") (range "1.8" "1.10"); - "1.1" = cmc "8.6" (range "1.6" "1.7"); - } - )) null; + with lib.versions; + lib.switch + [ coq.coq-version mathcomp.version ] + [ + (case (range "8.18" "9.0") (range "2.1.0" "2.4.0") "2.4.0") + (case (range "8.17" "9.0") (range "2.1.0" "2.3.0") "2.3.0") + (case (range "8.17" "8.20") (isGe "2.1.0") "2.2.0") + (case (range "8.16" "8.18") "2.1.0" "2.1.0") + (case (range "8.16" "8.18") "2.0.0" "2.0.0") + (case (isGe "8.15") (range "1.15.0" "1.19.0") "1.6.0") + (case (isGe "8.10") (range "1.13.0" "1.17.0") "1.5.6") + (case (range "8.10" "8.16") (range "1.12.0" "1.15.0") "1.5.5") + (case (range "8.10" "8.12") "1.12.0" "1.5.3") + (case (range "8.7" "8.12") "1.11.0" "1.5.2") + (case (range "8.7" "8.11") (range "1.8" "1.10") "1.5.0") + (case (range "8.7" "8.10") (range "1.8" "1.10") "1.4") + (case "8.6" (range "1.6" "1.7") "1.1") + ] + null; release = { "2.4.0".sha256 = "sha256-7zfIddRH+Sl4nhEPtS/lMZwRUZI45AVFpcC/UC8Z0Yo="; "2.3.0".sha256 = "sha256-usIcxHOAuN+f/j3WjVbPrjz8Hl9ac8R6kYeAKi3CEts="; diff --git a/pkgs/development/coq-modules/odd-order/default.nix b/pkgs/development/coq-modules/odd-order/default.nix index 9c0b721141fc..82c0272c16f3 100644 --- a/pkgs/development/coq-modules/odd-order/default.nix +++ b/pkgs/development/coq-modules/odd-order/default.nix @@ -18,16 +18,17 @@ mkCoqDerivation { inherit version; defaultVersion = + let + case = case: out: { inherit case out; }; + in with lib.versions; - lib.switch mathcomp.character.version (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: case: { inherit case out; }) { - "2.2.0" = (range "2.2.0" "2.4.0"); - "2.1.0" = (range "2.1.0" "2.3.0"); - "1.14.0" = (range "1.13.0" "1.15.0"); - "1.13.0" = (range "1.12.0" "1.14.0"); - "1.12.0" = (range "1.10.0" "1.12.0"); - } - )) null; + lib.switch mathcomp.character.version [ + (case (range "2.2.0" "2.4.0") "2.2.0") + (case (range "2.1.0" "2.3.0") "2.1.0") + (case (range "1.13.0" "1.15.0") "1.14.0") + (case (range "1.12.0" "1.14.0") "1.13.0") + (case (range "1.10.0" "1.12.0") "1.12.0") + ] null; propagatedBuildInputs = [ mathcomp.character diff --git a/pkgs/development/coq-modules/reglang/default.nix b/pkgs/development/coq-modules/reglang/default.nix index d3d1bfc15ff9..adbb2bfbae98 100644 --- a/pkgs/development/coq-modules/reglang/default.nix +++ b/pkgs/development/coq-modules/reglang/default.nix @@ -20,21 +20,25 @@ mkCoqDerivation { inherit version; defaultVersion = - with lib.versions; let - cmc = c: mc: [ - c - mc - ]; + case = coq: mc: out: { + cases = [ + coq + mc + ]; + inherit out; + }; in - lib.switch [ coq.coq-version mathcomp.version ] (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: cases: { inherit cases out; }) { - "1.2.2" = cmc (range "8.16" "9.0") (range "2.0.0" "2.4.0"); - "1.2.1" = cmc (range "8.16" "9.0") (range "2.0.0" "2.3.0"); - "1.2.0" = cmc (range "8.16" "8.18") (range "2.0.0" "2.1.0"); - "1.1.3" = cmc (range "8.10" "8.20") (isLt "2.0.0"); - } - )) null; + with lib.versions; + lib.switch + [ coq.coq-version mathcomp.version ] + [ + (case (range "8.16" "9.0") (range "2.0.0" "2.4.0") "1.2.2") + (case (range "8.16" "9.0") (range "2.0.0" "2.3.0") "1.2.1") + (case (range "8.16" "8.18") (range "2.0.0" "2.1.0") "1.2.0") + (case (range "8.10" "8.20") (isLt "2.0.0") "1.1.3") + ] + null; propagatedBuildInputs = [ mathcomp.ssreflect diff --git a/pkgs/development/coq-modules/relation-algebra/default.nix b/pkgs/development/coq-modules/relation-algebra/default.nix index d512613fad9b..4f0302a72915 100644 --- a/pkgs/development/coq-modules/relation-algebra/default.nix +++ b/pkgs/development/coq-modules/relation-algebra/default.nix @@ -27,22 +27,23 @@ mkCoqDerivation { inherit version; defaultVersion = + let + case = case: out: { inherit case out; }; + in with lib.versions; - lib.switch coq.coq-version (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: case: { inherit case out; }) { - "1.7.11" = isEq "8.20"; - "1.7.10" = range "8.18" "8.19"; - "1.7.9" = isEq "8.17"; - "1.7.8" = isEq "8.16"; - "1.7.7" = isEq "8.15"; - "1.7.6" = isEq "8.14"; - "1.7.5" = isEq "8.13"; - "1.7.4" = isEq "8.12"; - "1.7.3" = isEq "8.11"; - "1.7.2" = isEq "8.10"; - "1.7.1" = isEq "8.9"; - } - )) null; + lib.switch coq.coq-version [ + (case (isEq "8.20") "1.7.11") + (case (range "8.18" "8.19") "1.7.10") + (case (isEq "8.17") "1.7.9") + (case (isEq "8.16") "1.7.8") + (case (isEq "8.15") "1.7.7") + (case (isEq "8.14") "1.7.6") + (case (isEq "8.13") "1.7.5") + (case (isEq "8.12") "1.7.4") + (case (isEq "8.11") "1.7.3") + (case (isEq "8.10") "1.7.2") + (case (isEq "8.9") "1.7.1") + ] null; mlPlugin = true; diff --git a/pkgs/development/coq-modules/simple-io/default.nix b/pkgs/development/coq-modules/simple-io/default.nix index d2a3ae0a26df..cc8c427619fb 100644 --- a/pkgs/development/coq-modules/simple-io/default.nix +++ b/pkgs/development/coq-modules/simple-io/default.nix @@ -13,14 +13,15 @@ repo = "coq-simple-io"; inherit version; defaultVersion = + let + case = case: out: { inherit case out; }; + in with lib.versions; - lib.switch coq.coq-version (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: case: { inherit case out; }) { - "1.10.0" = range "8.17" "9.0"; - "1.8.0" = range "8.11" "8.19"; - "1.3.0" = range "8.7" "8.13"; - } - )) null; + lib.switch coq.coq-version [ + (case (range "8.17" "9.0") "1.10.0") + (case (range "8.11" "8.19") "1.8.0") + (case (range "8.7" "8.13") "1.3.0") + ] null; release."1.10.0".sha256 = "sha256-67cBhLvRMWLWBL7NXK1zZTQC4PtSKu9qtesU4SqKkOw="; release."1.8.0".sha256 = "sha256-3ADNeXrBIpYRlfUW+LkLHUWV1w1HFrVc/TZISMuwvRY="; release."1.7.0".sha256 = "sha256:1a1q9x2abx71hqvjdai3n12jxzd49mhf3nqqh3ya2ssl2lj609ci"; diff --git a/pkgs/development/coq-modules/ssprove/default.nix b/pkgs/development/coq-modules/ssprove/default.nix index b91ef56a36b7..1b8ad91a51b9 100644 --- a/pkgs/development/coq-modules/ssprove/default.nix +++ b/pkgs/development/coq-modules/ssprove/default.nix @@ -18,28 +18,32 @@ inherit version; defaultVersion = - with lib.versions; let - cmc = c: mc: [ - c - mc - ]; + case = coq: mc: out: { + cases = [ + coq + mc + ]; + inherit out; + }; in - lib.switch [ coq.coq-version mathcomp-boot.version ] (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: cases: { inherit cases out; }) { - "0.2.4" = cmc (range "8.18" "9.0") (range "2.3.0" "2.4.0"); - "0.2.3" = cmc (range "8.18" "8.20") (range "2.3.0" "2.3.0"); - "0.2.2" = cmc (range "8.18" "8.20") (range "2.1.0" "2.2.0"); + with lib.versions; + lib.switch + [ coq.coq-version mathcomp-boot.version ] + [ + (case (range "8.18" "9.0") (range "2.3.0" "2.4.0") "0.2.4") + (case (range "8.18" "8.20") (range "2.3.0" "2.3.0") "0.2.3") + (case (range "8.18" "8.20") (range "2.1.0" "2.2.0") "0.2.2") # This is the original dependency: - # "0.1.0" = ["8.17" "1.18.0"]; + # (case "8.17" "1.18.0" "0.1.0") # But it is not loadable. The math-comp nixpkgs configuration # will always only output version 1.18.0 for Coq 8.17. # Hence, the Coq 8.17 and math-comp 1.17.0 must be explicitly set # to load it. # (This version is not on the math-comp CI and hence not checked.) - "0.1.0" = cmc "8.17" "1.17.0"; - } - )) null; + (case "8.17" "1.17.0" "0.1.0") + ] + null; releaseRev = v: "v${v}"; diff --git a/pkgs/development/coq-modules/stalmarck/default.nix b/pkgs/development/coq-modules/stalmarck/default.nix index 2da766715881..e493321d8a0a 100644 --- a/pkgs/development/coq-modules/stalmarck/default.nix +++ b/pkgs/development/coq-modules/stalmarck/default.nix @@ -9,12 +9,13 @@ let repo = "stalmarck"; defaultVersion = + let + case = case: out: { inherit case out; }; + in with lib.versions; - lib.switch coq.coq-version (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: case: { inherit case out; }) { - "8.20.0" = isEq "8.20"; - } - )) null; + lib.switch coq.coq-version [ + (case (isEq "8.20") "8.20.0") + ] null; release = { "8.20.0".sha256 = "sha256-jITxQT1jLyZvWCGPnmK8i3IrwsZwMPOV0aBe9r22TIQ="; }; diff --git a/pkgs/development/coq-modules/stdlib/default.nix b/pkgs/development/coq-modules/stdlib/default.nix index 90933aa24d75..474fd188afdf 100644 --- a/pkgs/development/coq-modules/stdlib/default.nix +++ b/pkgs/development/coq-modules/stdlib/default.nix @@ -14,13 +14,14 @@ inherit version; defaultVersion = + let + case = case: out: { inherit case out; }; + in with lib.versions; - lib.switch coq.coq-version (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: case: { inherit case out; }) { - "9.0.0" = isLe "9.0"; - # the < 9.0 above is artificial as stdlib was included in Coq before - } - )) null; + lib.switch coq.coq-version [ + (case (isLe "9.0") "9.0.0") + # the < 9.0 above is artificial as stdlib was included in Coq before + ] null; releaseRev = v: "V${v}"; release."9.0.0".sha256 = "sha256-2l7ak5Q/NbiNvUzIVXOniEneDXouBMNSSVFbD1Pf8cQ="; diff --git a/pkgs/development/coq-modules/stdpp/default.nix b/pkgs/development/coq-modules/stdpp/default.nix index 41eaacb7fde9..3f64dc57f47c 100644 --- a/pkgs/development/coq-modules/stdpp/default.nix +++ b/pkgs/development/coq-modules/stdpp/default.nix @@ -12,18 +12,19 @@ mkCoqDerivation { domain = "gitlab.mpi-sws.org"; owner = "iris"; defaultVersion = + let + case = case: out: { inherit case out; }; + in with lib.versions; - lib.switch coq.coq-version (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: case: { inherit case out; }) { - "1.11.0" = range "8.19" "9.0"; - "1.10.0" = range "8.18" "8.19"; - "1.9.0" = range "8.16" "8.18"; - "1.8.0" = range "8.13" "8.17"; - "1.6.0" = range "8.12" "8.14"; - "1.5.0" = range "8.11" "8.13"; - "1.4.0" = range "8.8" "8.10"; - } - )) null; + lib.switch coq.coq-version [ + (case (range "8.19" "9.0") "1.11.0") + (case (range "8.18" "8.19") "1.10.0") + (case (range "8.16" "8.18") "1.9.0") + (case (range "8.13" "8.17") "1.8.0") + (case (range "8.12" "8.14") "1.6.0") + (case (range "8.11" "8.13") "1.5.0") + (case (range "8.8" "8.10") "1.4.0") + ] null; release."1.11.0".sha256 = "sha256-yqnkaA5gUdZBJZ3JnvPYh11vKQRl0BAnior1yGowG7k="; release."1.10.0".sha256 = "sha256-bfynevIKxAltvt76lsqVxBmifFkzEhyX8lRgTKxr21I="; release."1.9.0".sha256 = "sha256-OXeB+XhdyzWMp5Karsz8obp0rTeMKrtG7fu/tmc9aeI="; diff --git a/pkgs/development/libraries/libquotient/default.nix b/pkgs/development/libraries/libquotient/default.nix index 7964b19391bb..156375d8a2da 100644 --- a/pkgs/development/libraries/libquotient/default.nix +++ b/pkgs/development/libraries/libquotient/default.nix @@ -63,7 +63,6 @@ stdenv.mkDerivation rec { homepage = "https://quotient-im.github.io/libQuotient/"; license = licenses.lgpl21; maintainers = with maintainers; [ - colemickens matthiasbeyer ]; }; diff --git a/pkgs/development/libraries/libressl/default.nix b/pkgs/development/libraries/libressl/default.nix index 00bf49f5dc25..06554b6f749e 100644 --- a/pkgs/development/libraries/libressl/default.nix +++ b/pkgs/development/libraries/libressl/default.nix @@ -23,7 +23,7 @@ let inherit version; src = fetchurl { - url = "mirror://openbsd/LibreSSL/${pname}-${version}.tar.gz"; + url = "mirror://openbsd/LibreSSL/libressl-${version}.tar.gz"; inherit hash; }; @@ -38,6 +38,8 @@ let "-DCMAKE_C_FLAGS=-DHAVE_GNU_STACK" # libressl will append this to the regular prefix for libdir "-DCMAKE_INSTALL_LIBDIR=lib" + + "-DTLS_DEFAULT_CA_FILE=${cacert}/etc/ssl/certs/ca-bundle.crt" ] ++ lib.optional buildShared "-DBUILD_SHARED_LIBS=ON"; # The autoconf build is broken as of 2.9.1, resulting in the following error: @@ -47,19 +49,14 @@ let preConfigure = '' rm configure substituteInPlace CMakeLists.txt \ - --replace 'exec_prefix \''${prefix}' "exec_prefix ${placeholder "bin"}" \ - --replace 'libdir \''${exec_prefix}' 'libdir \''${prefix}' + --replace-fail 'exec_prefix \''${prefix}' "exec_prefix ${placeholder "bin"}" \ + --replace-fail 'libdir \''${exec_prefix}' 'libdir \''${prefix}' ''; inherit patches; - # Since 2.9.x the default location can't be configured from the build using - # DEFAULT_CA_FILE anymore, instead we have to patch the default value. postPatch = '' patchShebangs tests/ - ${lib.optionalString (lib.versionAtLeast version "2.9.2") '' - substituteInPlace ./tls/tls_config.c --replace '"/etc/ssl/cert.pem"' '"${cacert}/etc/ssl/certs/ca-bundle.crt"' - ''} ''; doCheck = !(stdenv.hostPlatform.isPower64 || stdenv.hostPlatform.isRiscV); @@ -116,47 +113,8 @@ let ]; }; }; - in { - libressl_3_6 = generic { - version = "3.6.3"; - hash = "sha256-h7G7426e7I0K5fBMg9NrLFsOWBeEx+sIFwJe0p6t6jc="; - patches = [ - (fetchpatch { - url = "https://github.com/libressl/portable/commit/86e4965d7f20c3a6afc41d95590c9f6abb4fe788.patch"; - includes = [ "tests/tlstest.sh" ]; - hash = "sha256-XmmKTvP6+QaWxyGFCX6/gDfME9GqBWSx4X8RH8QbDXA="; - }) - ]; - }; - - libressl_3_7 = generic { - version = "3.7.3"; - hash = "sha256-eUjIVqkMglvXJotvhWdKjc0lS65C4iF4GyTj+NwzXbM="; - patches = [ - (fetchpatch { - url = "https://github.com/libressl/portable/commit/86e4965d7f20c3a6afc41d95590c9f6abb4fe788.patch"; - includes = [ "tests/tlstest.sh" ]; - hash = "sha256-XmmKTvP6+QaWxyGFCX6/gDfME9GqBWSx4X8RH8QbDXA="; - }) - ]; - }; - - libressl_3_8 = generic { - version = "3.8.4"; - hash = "sha256-wM75z+F0rDZs5IL1Qv3bB3Ief6DK+s40tJqHIPo3/n0="; - - patches = [ - # Fixes build on ppc64 - # https://github.com/libressl/portable/pull/1073 - (fetchpatch { - url = "https://github.com/libressl/portable/commit/e6c7de3f03c51fbdcf5ad88bf12fe9e128521f0d.patch"; - hash = "sha256-LJy3fjbnc9h5DG3/+8bLECwJeBpPxy3hU8sPuhovmcw="; - }) - ]; - }; - libressl_3_9 = generic { version = "3.9.2"; hash = "sha256-ewMdrGSlnrbuMwT3/7ddrTOrjJ0nnIR/ksifuEYGj5c="; diff --git a/pkgs/development/libraries/lief/default.nix b/pkgs/development/libraries/lief/default.nix index 5e3f389f1440..c01e98410526 100644 --- a/pkgs/development/libraries/lief/default.nix +++ b/pkgs/development/libraries/lief/default.nix @@ -17,13 +17,13 @@ let in stdenv.mkDerivation (finalAttrs: { pname = "lief"; - version = "0.16.5"; + version = "0.16.6"; src = fetchFromGitHub { owner = "lief-project"; repo = "LIEF"; tag = finalAttrs.version; - hash = "sha256-X1hkEOgU7AaQDeVlrFM4VDqweElADdColRffbV8/BfM="; + hash = "sha256-SvwFyhIBuG0u5rE7+1OaO7VZu4/X4jVI6oFOm5+yCd8="; }; outputs = [ diff --git a/pkgs/development/libraries/quarto/default.nix b/pkgs/development/libraries/quarto/default.nix index 831e78e01817..bf141afd4391 100644 --- a/pkgs/development/libraries/quarto/default.nix +++ b/pkgs/development/libraries/quarto/default.nix @@ -38,11 +38,11 @@ let in stdenv.mkDerivation (final: { pname = "quarto"; - version = "1.7.31"; + version = "1.7.32"; src = fetchurl { url = "https://github.com/quarto-dev/quarto-cli/releases/download/v${final.version}/quarto-${final.version}-linux-amd64.tar.gz"; - hash = "sha256-YRSe4MLcJCaqBDGwHiYxOxAGFcehZLIVCkXjTE0ezFc="; + hash = "sha256-JiUF49JkWcZOZu/v1LkkDrdV6iDdb+h21qpkx6exPSc="; }; patches = [ diff --git a/pkgs/development/ocaml-modules/argon2/default.nix b/pkgs/development/ocaml-modules/argon2/default.nix new file mode 100644 index 000000000000..0690ce740d3b --- /dev/null +++ b/pkgs/development/ocaml-modules/argon2/default.nix @@ -0,0 +1,40 @@ +{ + lib, + fetchurl, + ctypes, + ctypes-foreign, + dune-configurator, + result, + libargon2, + buildDunePackage, +}: + +buildDunePackage rec { + pname = "argon2"; + version = "1.0.2"; + + minimalOCamlVersion = "4.02.3"; + + src = fetchurl { + url = "https://github.com/Khady/ocaml-argon2/releases/download/${version}/argon2-${version}.tbz"; + hash = "sha256-NDsOV4kPT2SnSfNHDBAK+VKZgHDIKxW+dNJ/C5bQ8gU="; + }; + + buildInputs = [ + dune-configurator + ]; + + propagatedBuildInputs = [ + ctypes + ctypes-foreign + libargon2 + result + ]; + + meta = { + homepage = "https://github.com/Khady/ocaml-argon2"; + description = "Ocaml bindings to Argon2"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ naora ]; + }; +} diff --git a/pkgs/development/python-modules/aider-chat/default.nix b/pkgs/development/python-modules/aider-chat/default.nix index 54953304559a..50eec1e4db03 100644 --- a/pkgs/development/python-modules/aider-chat/default.nix +++ b/pkgs/development/python-modules/aider-chat/default.nix @@ -126,7 +126,7 @@ let d.stopwords ]); - version = "0.84.0"; + version = "0.85.0"; aider-chat = buildPythonPackage { pname = "aider-chat"; inherit version; @@ -139,7 +139,7 @@ let owner = "Aider-AI"; repo = "aider"; tag = "v${version}"; - hash = "sha256-TOlqwJM9wIAURSimuh9mysYDwgH9AfFev8jY9elLNk8="; + hash = "sha256-ZYjDRu4dAOkmz+fMOG8KU6y27RI/t3iEoTSUebundqo="; }; pythonRelaxDeps = true; @@ -385,8 +385,8 @@ let meta = { description = "AI pair programming in your terminal"; - homepage = "https://github.com/paul-gauthier/aider"; - changelog = "https://github.com/paul-gauthier/aider/blob/v${version}/HISTORY.md"; + homepage = "https://github.com/Aider-AI/aider"; + changelog = "https://github.com/Aider-AI/aider/blob/v${version}/HISTORY.md"; license = lib.licenses.asl20; maintainers = with lib.maintainers; [ happysalada diff --git a/pkgs/development/python-modules/bangla/default.nix b/pkgs/development/python-modules/bangla/default.nix index c5b00393bada..46dcbbb43aba 100644 --- a/pkgs/development/python-modules/bangla/default.nix +++ b/pkgs/development/python-modules/bangla/default.nix @@ -6,12 +6,12 @@ buildPythonPackage rec { pname = "bangla"; - version = "0.0.2"; + version = "0.0.5"; format = "setuptools"; src = fetchPypi { inherit pname version; - hash = "sha256-F8j9UBMhZgB31atqebdGu6cfnkk573isDZp1171xXag="; + hash = "sha256-rX2/rUUf9g4otYMNX0LDPXSIDRbIE8xRl95NamHzRwQ="; }; pythonImportsCheck = [ "bangla" ]; diff --git a/pkgs/development/python-modules/basswood-av/default.nix b/pkgs/development/python-modules/basswood-av/default.nix index 2216ffce3500..38b9997efb63 100644 --- a/pkgs/development/python-modules/basswood-av/default.nix +++ b/pkgs/development/python-modules/basswood-av/default.nix @@ -4,19 +4,10 @@ fetchFromGitHub, setuptools, pkg-config, - cython, + cython_3_1, ffmpeg, }: -let - cython' = cython.overrideAttrs (oldAttrs: rec { - version = "3.1.0"; - src = oldAttrs.src.override { - tag = version; - hash = "sha256-3/C0+ygGgNvw75ZN02Q70TLFa1U4jVgWQDG5FGWErTg="; - }; - }); -in buildPythonPackage rec { pname = "basswood-av"; version = "15.2.1"; @@ -31,7 +22,7 @@ buildPythonPackage rec { build-system = [ setuptools - cython' + cython_3_1 ]; nativeBuildInputs = [ pkg-config ]; diff --git a/pkgs/development/python-modules/blosc2/default.nix b/pkgs/development/python-modules/blosc2/default.nix index bfe35aeab32d..c615fd320fbb 100644 --- a/pkgs/development/python-modules/blosc2/default.nix +++ b/pkgs/development/python-modules/blosc2/default.nix @@ -32,14 +32,14 @@ buildPythonPackage rec { pname = "blosc2"; - version = "3.4.0"; + version = "3.5.0"; pyproject = true; src = fetchFromGitHub { owner = "Blosc"; repo = "python-blosc2"; tag = "v${version}"; - hash = "sha256-dCTASj3jNY4tQdllis9F95yNRD/KwctBxiS4MjkxeX0="; + hash = "sha256-Kimcz4L7Ko4cRj9IaYuLXzmU0+3ERQXOmPXr0E9mOyA="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/cloudflare/default.nix b/pkgs/development/python-modules/cloudflare/default.nix index 7fb8db480f51..b19641a9c278 100644 --- a/pkgs/development/python-modules/cloudflare/default.nix +++ b/pkgs/development/python-modules/cloudflare/default.nix @@ -15,14 +15,14 @@ buildPythonPackage rec { pname = "cloudflare"; - version = "4.2.0"; + version = "4.3.1"; pyproject = true; disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - hash = "sha256-QKpxgWOpsHYagVvVKnzBilBioQvjF3yy1Kk2dwzACCY="; + hash = "sha256-seHGvuuNmPY7/gocuodPxOIuAAvMSQVE+VbGibO1slg="; }; postPatch = '' diff --git a/pkgs/development/python-modules/coredis/default.nix b/pkgs/development/python-modules/coredis/default.nix index 5f4f4c6c24ae..8b06307031f8 100644 --- a/pkgs/development/python-modules/coredis/default.nix +++ b/pkgs/development/python-modules/coredis/default.nix @@ -18,14 +18,14 @@ buildPythonPackage rec { pname = "coredis"; - version = "4.22.0"; + version = "4.23.1"; pyproject = true; src = fetchFromGitHub { owner = "alisaifee"; repo = "coredis"; tag = version; - hash = "sha256-EMiZkKUcVbinWtYimNSQ715PH7pCrXpNKqseLFCu/48="; + hash = "sha256-5Ho9X2VCOwKo079M2ReJ93jqEpG2ZV6vKM5/qrgzjxM="; }; postPatch = '' diff --git a/pkgs/development/python-modules/duckdb-engine/default.nix b/pkgs/development/python-modules/duckdb-engine/default.nix index e45d274b666e..61ffd36874a8 100644 --- a/pkgs/development/python-modules/duckdb-engine/default.nix +++ b/pkgs/development/python-modules/duckdb-engine/default.nix @@ -77,6 +77,12 @@ buildPythonPackage rec { # user agent not available in nixpkgs "test_user_agent" "test_user_agent_with_custom_user_agent" + + # Fail under nixpkgs-review in the sandbox due to "missing tables" + "test_get_columns" + "test_get_foreign_keys" + "test_get_check_constraints" + "test_get_unique_constraints" ]; pythonImportsCheck = [ "duckdb_engine" ]; diff --git a/pkgs/development/python-modules/flashinfer/default.nix b/pkgs/development/python-modules/flashinfer/default.nix index 83b91b746e7c..efd7d39bcbcb 100644 --- a/pkgs/development/python-modules/flashinfer/default.nix +++ b/pkgs/development/python-modules/flashinfer/default.nix @@ -77,6 +77,7 @@ buildPythonPackage { preConfigure = '' export FLASHINFER_ENABLE_AOT=1 export TORCH_NVCC_FLAGS="--maxrregcount=64" + export MAX_JOBS="$NIX_BUILD_CORES" ''; TORCH_CUDA_ARCH_LIST = lib.concatStringsSep ";" torch.cudaCapabilities; diff --git a/pkgs/development/python-modules/gcal-sync/default.nix b/pkgs/development/python-modules/gcal-sync/default.nix index 16860b78d8e6..ef8337336a79 100644 --- a/pkgs/development/python-modules/gcal-sync/default.nix +++ b/pkgs/development/python-modules/gcal-sync/default.nix @@ -15,7 +15,7 @@ buildPythonPackage rec { pname = "gcal-sync"; - version = "7.1.0"; + version = "7.2.0"; pyproject = true; disabled = pythonOlder "3.10"; @@ -24,7 +24,7 @@ buildPythonPackage rec { owner = "allenporter"; repo = "gcal_sync"; tag = version; - hash = "sha256-jdhPoZdkgMg9TBIV9j3dvaEnEOpOoa1OKBeR1YAWWKs="; + hash = "sha256-cdQwjjZNQlIj6oN4kJ53B576pKkLeYiXjGWqMB/EReU="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/geotorch/default.nix b/pkgs/development/python-modules/geotorch/default.nix new file mode 100644 index 000000000000..12c4e14c5941 --- /dev/null +++ b/pkgs/development/python-modules/geotorch/default.nix @@ -0,0 +1,41 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + setuptools, + torch, + pytestCheckHook, +}: + +buildPythonPackage rec { + pname = "geotorch"; + version = "0.3.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "lezcano"; + repo = "geotorch"; + tag = version; + hash = "sha256-kkn0PZzQRodXCeX3RcajVvrp1TrhSVgKYwyJGAMuvLM="; + }; + + build-system = [ setuptools ]; + + dependencies = [ + torch + ]; + + pythonImportsCheck = [ "geotorch" ]; + + nativeCheckInputs = [ + pytestCheckHook + ]; + + meta = { + description = "Constrained optimization toolkit for PyTorch"; + homepage = "https://github.com/lezcano/geotorch"; + changelog = "https://github.com/lezcano/geotorch/releases/tag/${version}"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ flokli ]; + }; +} diff --git a/pkgs/development/python-modules/gftools/default.nix b/pkgs/development/python-modules/gftools/default.nix index 720335d69654..42424aeb4a0c 100644 --- a/pkgs/development/python-modules/gftools/default.nix +++ b/pkgs/development/python-modules/gftools/default.nix @@ -15,6 +15,7 @@ bumpfontversion, coreutils, diffenator2, + ffmpeg-python, font-v, fontbakery, fontfeatures, @@ -61,14 +62,14 @@ let in buildPythonPackage rec { pname = "gftools"; - version = "0.9.85"; + version = "0.9.86"; pyproject = true; src = fetchFromGitHub { owner = "googlefonts"; repo = "gftools"; tag = "v${version}"; - hash = "sha256-D7s4msdJFiBlIvREiOqLACDwciNi9Di0dRB+qLpfhFY="; + hash = "sha256-4N27R+rbPSnxg701OGtrD7/iwTaUBdhp528+9n4ZIt8="; }; postPatch = '' @@ -91,7 +92,7 @@ buildPythonPackage rec { substituteInPlace \ Lib/gftools/builder/operations/autohintOTF.py \ - --replace-fail '"otfautohint' '"${lib.getExe' afdko "otfautohint"}' + --replace-fail 'otfautohint' '${lib.getExe' afdko "otfautohint"}' substituteInPlace \ Lib/gftools/builder/operations/paintcompiler.py \ @@ -106,7 +107,7 @@ buildPythonPackage rec { --replace-fail '"cp' '"${lib.getExe' coreutils "cp"}' substituteInPlace \ - Lib/gftools/builder/operations/{fix,remap,autohint,buildStat,addSubset,remapLayout,buildVTT}.py \ + Lib/gftools/builder/operations/{fix,remap,autohint,buildStat,addSubset,remapLayout,buildVTT,buildAvar2}.py \ --replace-fail '"gftools' '"${placeholder "out"}/bin/gftools' substituteInPlace \ @@ -135,6 +136,7 @@ buildPythonPackage rec { beautifulsoup4 brotli bumpfontversion + ffmpeg-python font-v fontfeatures fontmake diff --git a/pkgs/development/python-modules/glyphslib/default.nix b/pkgs/development/python-modules/glyphslib/default.nix index 449b52c4c35a..3cd569339bf0 100644 --- a/pkgs/development/python-modules/glyphslib/default.nix +++ b/pkgs/development/python-modules/glyphslib/default.nix @@ -17,20 +17,20 @@ buildPythonPackage rec { pname = "glyphslib"; - version = "6.10.3"; + version = "6.11.0"; - format = "pyproject"; + pyproject = true; src = fetchFromGitHub { owner = "googlefonts"; repo = "glyphsLib"; tag = "v${version}"; - hash = "sha256-DLyWuFrAwc/ElGFjLxWY4RihwlQ143AUnWBzzJttZT4="; + hash = "sha256-hJLJ30ZT6uRSVTUi6XPGyn9fncy1A1hvhgRKTL9a2gs="; }; - nativeBuildInputs = [ setuptools-scm ]; + build-system = [ setuptools-scm ]; - propagatedBuildInputs = [ + dependencies = [ fonttools openstep-plist ufolib2 diff --git a/pkgs/development/python-modules/google-cloud-artifact-registry/default.nix b/pkgs/development/python-modules/google-cloud-artifact-registry/default.nix index afa2e4d8dcd9..bb24a56b763f 100644 --- a/pkgs/development/python-modules/google-cloud-artifact-registry/default.nix +++ b/pkgs/development/python-modules/google-cloud-artifact-registry/default.nix @@ -14,7 +14,7 @@ buildPythonPackage rec { pname = "google-cloud-artifact-registry"; - version = "1.16.0"; + version = "1.16.1"; pyproject = true; disabled = pythonOlder "3.7"; @@ -22,7 +22,7 @@ buildPythonPackage rec { src = fetchPypi { pname = "google_cloud_artifact_registry"; inherit version; - hash = "sha256-PDikL/ECsIdQn7gXoF04SVxpp7aZ9allTJL+pnd947E="; + hash = "sha256-X3v503uTPImEhSFw/oQlAaitx/MSgagblK1hkkSL7M4="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/html-sanitizer/default.nix b/pkgs/development/python-modules/html-sanitizer/default.nix index c978fdd02f6a..6178b563e6d1 100644 --- a/pkgs/development/python-modules/html-sanitizer/default.nix +++ b/pkgs/development/python-modules/html-sanitizer/default.nix @@ -17,14 +17,14 @@ buildPythonPackage rec { pname = "html-sanitizer"; - version = "2.4.4"; + version = "2.6"; pyproject = true; src = fetchFromGitHub { owner = "matthiask"; repo = "html-sanitizer"; tag = version; - hash = "sha256-6OWFLsuefeDzQ1uHnLmboKDgrbY/xJCwqsSQlDaJlRs="; + hash = "sha256-egBGhv7vudH32jwh9rAXuXfMzPDxJ60S5WKbc4kzCTU="; }; build-system = [ hatchling ]; @@ -43,10 +43,6 @@ buildPythonPackage rec { # Tests are sensitive to output "test_billion_laughs" "test_10_broken_html" - - # Mismatch snapshot (AssertionError) - # https://github.com/matthiask/html-sanitizer/issues/53 - "test_keep_typographic_whitespace" ]; pythonImportsCheck = [ "html_sanitizer" ]; diff --git a/pkgs/development/python-modules/i-pi/default.nix b/pkgs/development/python-modules/i-pi/default.nix index 681624dd3153..0624297c2e15 100644 --- a/pkgs/development/python-modules/i-pi/default.nix +++ b/pkgs/development/python-modules/i-pi/default.nix @@ -17,14 +17,14 @@ buildPythonPackage rec { pname = "i-pi"; - version = "3.1.5"; + version = "3.1.5.1"; pyproject = true; src = fetchFromGitHub { owner = "i-pi"; repo = "i-pi"; tag = "v${version}"; - hash = "sha256-jXryhWC8IGdj33rM50KHxX9WONyJlqpUXbzi33VQdPA="; + hash = "sha256-az1rQlXwYUyPA4wP5wxBZtmJhQlvHxhRZF2O141i76o="; }; build-system = [ diff --git a/pkgs/development/python-modules/ipylab/default.nix b/pkgs/development/python-modules/ipylab/default.nix index a10fa6ff1fff..3727a1abd7cf 100644 --- a/pkgs/development/python-modules/ipylab/default.nix +++ b/pkgs/development/python-modules/ipylab/default.nix @@ -11,14 +11,14 @@ buildPythonPackage rec { pname = "ipylab"; - version = "1.0.0"; + version = "1.1.0"; pyproject = true; # This needs to be fetched from Pypi, as we rely on the nodejs build to be skipped, # which only happens if ipylab/labextension/style.js is present. src = fetchPypi { inherit pname version; - hash = "sha256-xPB0Sx+W1sRgW5hqpZ68zWRFG/cclIOgGat6UsVlYXA="; + hash = "sha256-85hYpNnvbsuC+O/uufa1oBo6ZNTzxPKl/i1YrllN4hI="; }; build-system = [ diff --git a/pkgs/development/python-modules/mkdocs-redoc-tag/default.nix b/pkgs/development/python-modules/mkdocs-redoc-tag/default.nix index e3a6eac418f0..1b121ff00c78 100644 --- a/pkgs/development/python-modules/mkdocs-redoc-tag/default.nix +++ b/pkgs/development/python-modules/mkdocs-redoc-tag/default.nix @@ -3,34 +3,34 @@ beautifulsoup4, buildPythonPackage, fetchFromGitHub, + hatchling, mkdocs, mkdocs-material, pytestCheckHook, pythonOlder, - setuptools, }: buildPythonPackage rec { pname = "mkdocs-redoc-tag"; - version = "0.1.0"; + version = "0.2.0"; pyproject = true; - disabled = pythonOlder "3.7"; + disabled = pythonOlder "3.8"; src = fetchFromGitHub { owner = "Blueswen"; repo = "mkdocs-redoc-tag"; tag = "v${version}"; - hash = "sha256-TOGFch+Uto3qeVMaHqK8SEy0v0cKtHofoGE8T1mnBOk="; + hash = "sha256-pgJMcK8LZOj0niyRcbHi8Szsro2iNTj6hz6r24jrtVw="; }; + build-system = [ hatchling ]; + propagatedBuildInputs = [ mkdocs beautifulsoup4 ]; - nativeBuildInputs = [ setuptools ]; - nativeCheckInputs = [ mkdocs-material pytestCheckHook diff --git a/pkgs/development/python-modules/msgraph-sdk/default.nix b/pkgs/development/python-modules/msgraph-sdk/default.nix index f40c1ac5d571..cb4f42b8c8b2 100644 --- a/pkgs/development/python-modules/msgraph-sdk/default.nix +++ b/pkgs/development/python-modules/msgraph-sdk/default.nix @@ -17,7 +17,7 @@ buildPythonPackage rec { pname = "msgraph-sdk"; - version = "1.33.0"; + version = "1.34.0"; pyproject = true; disabled = pythonOlder "3.8"; @@ -26,7 +26,7 @@ buildPythonPackage rec { owner = "microsoftgraph"; repo = "msgraph-sdk-python"; tag = "v${version}"; - hash = "sha256-s8YUxM8wqQ3I9ckcyArriTK70+YTBzY4jH2WsQh8jtM="; + hash = "sha256-fd3ts6El2b3spg0T+awnNlkY7SxXKIAdvbIpo0SkHec="; }; build-system = [ flit-core ]; diff --git a/pkgs/development/python-modules/publicsuffixlist/default.nix b/pkgs/development/python-modules/publicsuffixlist/default.nix index 4a7746f2f4e2..fa0a83987633 100644 --- a/pkgs/development/python-modules/publicsuffixlist/default.nix +++ b/pkgs/development/python-modules/publicsuffixlist/default.nix @@ -11,14 +11,14 @@ buildPythonPackage rec { pname = "publicsuffixlist"; - version = "1.0.2.20250617"; + version = "1.0.2.20250627"; pyproject = true; disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - hash = "sha256-UELX/GP1cvkmMpNu+zzmQywaKkZPJP1D8lr3QmGHkOY="; + hash = "sha256-AwLhjTojOEML4vU/xmv99M3TjtYXJAX1AcjCZuu58Ds="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/pyezvizapi/default.nix b/pkgs/development/python-modules/pyezvizapi/default.nix index 51ade8376315..788fe5a452f6 100644 --- a/pkgs/development/python-modules/pyezvizapi/default.nix +++ b/pkgs/development/python-modules/pyezvizapi/default.nix @@ -12,14 +12,14 @@ buildPythonPackage rec { pname = "pyezvizapi"; - version = "1.0.0.9"; + version = "1.0.1.0"; pyproject = true; src = fetchFromGitHub { owner = "RenierM26"; repo = "pyEzvizApi"; tag = version; - hash = "sha256-iqTNkfecBrxJ3BwACbMmcHqequ6IUzjL550ip+jNIrs="; + hash = "sha256-6Kwo7E+lmyqw0VpqH6AOn27tPvNPA/PgDiGSuGXo6PA="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/pymonctl/default.nix b/pkgs/development/python-modules/pymonctl/default.nix index 157eedf6cd9f..ec4ee4fb1073 100644 --- a/pkgs/development/python-modules/pymonctl/default.nix +++ b/pkgs/development/python-modules/pymonctl/default.nix @@ -1,5 +1,6 @@ { lib, + stdenv, buildPythonPackage, fetchFromGitHub, setuptools, @@ -38,5 +39,6 @@ buildPythonPackage rec { license = lib.licenses.bsd3; description = "Cross-Platform toolkit to get info on and control monitors connected"; maintainers = with lib.maintainers; [ sigmanificient ]; + broken = stdenv.hostPlatform.isDarwin; }; } diff --git a/pkgs/development/python-modules/pytensor/default.nix b/pkgs/development/python-modules/pytensor/default.nix index 61e040f5294c..813a6d05635b 100644 --- a/pkgs/development/python-modules/pytensor/default.nix +++ b/pkgs/development/python-modules/pytensor/default.nix @@ -33,7 +33,7 @@ buildPythonPackage rec { pname = "pytensor"; - version = "2.31.4"; + version = "2.31.5"; pyproject = true; src = fetchFromGitHub { @@ -43,7 +43,7 @@ buildPythonPackage rec { postFetch = '' sed -i 's/git_refnames = "[^"]*"/git_refnames = " (tag: ${src.tag})"/' $out/pytensor/_version.py ''; - hash = "sha256-wHkEZqgnau8DaoOaSFg0Ma6EtjGLmc+y4fskNEyk7yg="; + hash = "sha256-9sIFBKuPMwg+5JHA9zhvaSvluxthUtc/rdqMZPl+VZg="; }; build-system = [ diff --git a/pkgs/development/python-modules/pytest-cases/default.nix b/pkgs/development/python-modules/pytest-cases/default.nix index d74ffcb45d2a..f6fac10aaadf 100644 --- a/pkgs/development/python-modules/pytest-cases/default.nix +++ b/pkgs/development/python-modules/pytest-cases/default.nix @@ -4,6 +4,7 @@ fetchPypi, makefun, decopatch, + packaging, pythonOlder, pytest, setuptools-scm, @@ -11,24 +12,24 @@ buildPythonPackage rec { pname = "pytest-cases"; - version = "3.8.6"; + version = "3.9.1"; pyproject = true; - disabled = pythonOlder "3.6"; + disabled = pythonOlder "3.9"; src = fetchPypi { pname = "pytest_cases"; inherit version; - hash = "sha256-XCTgqwy2+OgCpGm3llkGozPTuruHRYbrxW9+LL4afEQ="; + hash = "sha256-xOGB8bUlyTGjGNSBL6jeZWwsj7d/zPFXHs8Mxf6Of48="; }; build-system = [ setuptools-scm ]; - buildInputs = [ pytest ]; - dependencies = [ decopatch makefun + packaging + pytest ]; # Tests have dependencies (pytest-harvest, pytest-steps) which diff --git a/pkgs/development/python-modules/pytest-ruff/default.nix b/pkgs/development/python-modules/pytest-ruff/default.nix index e200d446385b..87335148514c 100644 --- a/pkgs/development/python-modules/pytest-ruff/default.nix +++ b/pkgs/development/python-modules/pytest-ruff/default.nix @@ -18,14 +18,14 @@ buildPythonPackage rec { pname = "pytest-ruff"; - version = "0.4.1"; + version = "0.5"; pyproject = true; src = fetchFromGitHub { owner = "businho"; repo = "pytest-ruff"; tag = "v${version}"; - hash = "sha256-Ol+W5mDGMCwptuBa0b+Plkm64UUBf9bmr9YBo8g93Ok="; + hash = "sha256-fwtubbTRvPMSGhylP3H5zhIwHdeWeTbvxZY5doM+tvw="; }; build-system = [ @@ -48,7 +48,7 @@ buildPythonPackage rec { meta = { description = "A pytest plugin to run ruff"; homepage = "https://github.com/businho/pytest-ruff"; - changelog = "https://github.com/businho/pytest-ruff/releases/tag/v${version}"; + changelog = "https://github.com/businho/pytest-ruff/releases/tag/${src.tag}"; license = lib.licenses.mit; maintainers = with lib.maintainers; [ baloo ]; }; diff --git a/pkgs/development/python-modules/robotframework-databaselibrary/default.nix b/pkgs/development/python-modules/robotframework-databaselibrary/default.nix index efc09a7c95f3..15e766dd0a83 100644 --- a/pkgs/development/python-modules/robotframework-databaselibrary/default.nix +++ b/pkgs/development/python-modules/robotframework-databaselibrary/default.nix @@ -5,20 +5,19 @@ setuptools, robotframework, robotframework-assertion-engine, - robotframework-excellib, pytestCheckHook, }: buildPythonPackage rec { pname = "robotframework-databaselibrary"; - version = "2.0.4"; + version = "2.1.3"; pyproject = true; src = fetchFromGitHub { owner = "MarketSquare"; repo = "Robotframework-Database-Library"; tag = "v.${version}"; - hash = "sha256-ixgKw5iZw81TlgvvbsJXI753OkHuyJHhSeNVqXtsY4w="; + hash = "sha256-XsRXQU31Q2iGUMJgDvIIcSsT8guALZO5tnIjwGLR8+Q="; }; nativeBuildInputs = [ @@ -29,7 +28,6 @@ buildPythonPackage rec { propagatedBuildInputs = [ robotframework robotframework-assertion-engine - robotframework-excellib ]; pythonImportsCheck = [ "DatabaseLibrary" ]; diff --git a/pkgs/development/python-modules/streamlit/default.nix b/pkgs/development/python-modules/streamlit/default.nix index 80a8fe7e51fb..6f8fa1272adb 100644 --- a/pkgs/development/python-modules/streamlit/default.nix +++ b/pkgs/development/python-modules/streamlit/default.nix @@ -28,14 +28,14 @@ buildPythonPackage rec { pname = "streamlit"; - version = "1.45.1"; + version = "1.46.0"; pyproject = true; disabled = pythonOlder "3.9"; src = fetchPypi { inherit pname version; - hash = "sha256-431WwK9SQNvCQJdogOgTZmicKQpVk3ZBckb5s/UbQhc="; + hash = "sha256-Cyc0tI8R8eXIBGARtrGiJ0mC3GV+7yrejbcPDh3FPdo="; }; build-system = [ diff --git a/pkgs/development/python-modules/wgpu-py/default.nix b/pkgs/development/python-modules/wgpu-py/default.nix index eab8ceb8a1dc..e951f5a30933 100644 --- a/pkgs/development/python-modules/wgpu-py/default.nix +++ b/pkgs/development/python-modules/wgpu-py/default.nix @@ -27,35 +27,48 @@ imageio, numpy, psutil, + pypng, pytest, ruff, trio, # passthru - wgpu-py, testers, + wgpu-py, }: buildPythonPackage rec { pname = "wgpu-py"; - version = "0.21.1"; + version = "0.22.2"; pyproject = true; src = fetchFromGitHub { owner = "pygfx"; repo = "wgpu-py"; tag = "v${version}"; - hash = "sha256-XlV0ovIF3w/u6f65+3c4zAfisCoQDbzMiINJJTR/I6o="; + hash = "sha256-HGpOEsTj4t57z38qKF6i1oUj7R7aFl8Xgk5y0TtgyMg="; }; - # `requests` is only used to fetch a copy of `wgpu-native` via `tools/hatch_build.py`. - # As we retrieve `wgpu-native` from nixpkgs instead, none of this is needed, and - # remove an extra dependency. - postPatch = '' - substituteInPlace pyproject.toml \ - --replace-fail 'requires = ["requests", "hatchling"]' 'requires = ["hatchling"]' \ - --replace-fail '[tool.hatch.build.targets.wheel.hooks.custom]' "" \ - --replace-fail 'path = "tools/hatch_build.py"' "" - ''; + postPatch = + # `requests` is only used to fetch a copy of `wgpu-native` via `tools/hatch_build.py`. + # As we retrieve `wgpu-native` from nixpkgs instead, none of this is needed, and + # remove an extra dependency. + '' + substituteInPlace pyproject.toml \ + --replace-fail 'requires = ["requests", "hatchling"]' 'requires = ["hatchling"]' \ + --replace-fail '[tool.hatch.build.targets.wheel.hooks.custom]' "" \ + --replace-fail 'path = "tools/hatch_build.py"' "" + '' + # Skip the compute_textures / astronauts example during testing, as it uses `imageio` to + # retrieve an image of an astronaut, which touches the network. + + '' + substituteInPlace examples/compute_textures.py \ + --replace-fail 'import wgpu' 'import wgpu # run_example = false' + '' + # Tweak tests that fail due to a dependency of `wgpu-native`, `naga`, adding an `ir` module + + '' + substituteInPlace tests/test_wgpu_native_errors.py \ + --replace-fail 'naga::' 'naga::ir::' + ''; # wgpu-py expects to have an appropriately named wgpu-native library in wgpu/resources preBuild = '' @@ -96,66 +109,38 @@ buildPythonPackage rec { imageio numpy psutil + pypng pytest ruff trio ]; - # Tests break due to sandboxing on everything except darwin - # Prefer to run them in passthru - doCheck = false; + # Tests break in Linux CI due to wgpu being unable to find any adapters. + # Ordinarily, this would be fixed in an approach similar to `pkgs/by-name/wg/wgpu-native/examples.nix`'s + # usage of `runtimeInputs` and `makeWrapperArgs`. + # Unfortunately, as this is a Python module without a `mainProgram`, `makeWrapperArgs` will not apply here, + # as there is no "script" to wrap. + doCheck = stdenv.hostPlatform.isDarwin; - passthru = { - tests = - { - version = testers.testVersion { - package = wgpu-py; - command = "python3 -c 'import wgpu; print(wgpu.__version__)'"; - }; - } - // lib.optionalAttrs stdenv.buildPlatform.isDarwin { - tests = testers.runCommand { - name = "tests"; - script = '' - WGPU_LIB_PATH=${wgpu-native}/lib/libwgpu_native${stdenv.hostPlatform.extensions.library} \ - pytest -v ${wgpu-py.src}/tests - ''; - nativeBuildInputs = [ wgpu-py ] ++ nativeCheckInputs; - }; + installCheckPhase = '' + runHook preInstallCheck - examples = testers.runCommand { - name = "examples"; - script = '' - WGPU_LIB_PATH=${wgpu-native}/lib/libwgpu_native${stdenv.hostPlatform.extensions.library} \ - pytest -v ${wgpu-py.src}/examples - ''; - nativeBuildInputs = [ wgpu-py ] ++ nativeCheckInputs; - }; + for suite in tests examples codegen tests_mem; do + pytest -vvv $suite + done - codegen = testers.runCommand { - name = "codegen"; - script = '' - WGPU_LIB_PATH=${wgpu-native}/lib/libwgpu_native${stdenv.hostPlatform.extensions.library} \ - pytest -v ${wgpu-py.src}/codegen - ''; - nativeBuildInputs = [ wgpu-py ] ++ nativeCheckInputs; - }; + runHook postInstallCheck + ''; - tests_mem = testers.runCommand { - name = "tests_mem"; - script = '' - WGPU_LIB_PATH=${wgpu-native}/lib/libwgpu_native${stdenv.hostPlatform.extensions.library} \ - pytest -v ${wgpu-py.src}/tests_mem - ''; - nativeBuildInputs = [ wgpu-py ] ++ nativeCheckInputs; - }; - }; + passthru.tests.version = testers.testVersion { + package = wgpu-py; + command = "python3 -c 'import wgpu; print(wgpu.__version__)'"; }; meta = { description = "WebGPU for Python"; homepage = "https://github.com/pygfx/wgpu-py"; - changelog = "https://github.com/pygfx/wgpu-py/blob/v${version}/CHANGELOG.md"; + changelog = "https://github.com/pygfx/wgpu-py/blob/${src.tag}/CHANGELOG.md"; platforms = lib.platforms.all; license = lib.licenses.bsd2; diff --git a/pkgs/development/python-modules/yangson/default.nix b/pkgs/development/python-modules/yangson/default.nix index b72e32eea1b0..2e82d5c33962 100644 --- a/pkgs/development/python-modules/yangson/default.nix +++ b/pkgs/development/python-modules/yangson/default.nix @@ -10,14 +10,14 @@ buildPythonPackage rec { pname = "yangson"; - version = "1.6.2"; + version = "1.6.3"; pyproject = true; src = fetchFromGitHub { owner = "CZ-NIC"; repo = "yangson"; tag = version; - hash = "sha256-gGunbQVRV9cFRnwGDIaGi/NM75rtw5vYVz2PiPiZlQo="; + hash = "sha256-WOeSGGOd5+g+8dSyeml+mdehEjaSHtUkNSdkGl4xSao="; }; build-system = [ poetry-core ]; diff --git a/pkgs/development/rocq-modules/bignums/default.nix b/pkgs/development/rocq-modules/bignums/default.nix index 3eced2572c69..238e16b3f9ce 100644 --- a/pkgs/development/rocq-modules/bignums/default.nix +++ b/pkgs/development/rocq-modules/bignums/default.nix @@ -11,12 +11,13 @@ mkRocqDerivation { owner = "coq"; inherit version; defaultVersion = + let + case = case: out: { inherit case out; }; + in with lib.versions; - lib.switch rocq-core.rocq-version (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: case: { inherit case out; }) { - "9.0.0+rocq${rocq-core.rocq-version}" = range "9.0" "9.0"; - } - )) null; + lib.switch rocq-core.rocq-version [ + (case (range "9.0" "9.0") "9.0.0+rocq${rocq-core.rocq-version}") + ] null; release."9.0.0+rocq9.0".sha256 = "sha256-ctnwpyNVhryEUA5YEsAImrcJsNMhtBgDSOz+z5Z4R78="; releaseRev = v: "${if lib.versions.isGe "9.0" v then "v" else "V"}${v}"; diff --git a/pkgs/development/rocq-modules/hierarchy-builder/default.nix b/pkgs/development/rocq-modules/hierarchy-builder/default.nix index 30be49a216e1..bb9efa9727cc 100644 --- a/pkgs/development/rocq-modules/hierarchy-builder/default.nix +++ b/pkgs/development/rocq-modules/hierarchy-builder/default.nix @@ -12,12 +12,13 @@ let owner = "math-comp"; inherit version; defaultVersion = + let + case = case: out: { inherit case out; }; + in with lib.versions; - lib.switch rocq-core.rocq-version (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: case: { inherit case out; }) { - "1.9.1" = range "9.0" "9.0"; - } - )) null; + lib.switch rocq-core.rocq-version [ + (case (range "9.0" "9.0") "1.9.1") + ] null; release."1.9.1".sha256 = "sha256-AiS0ezMyfIYlXnuNsVLz1GlKQZzJX+ilkrKkbo0GrF0="; releaseRev = v: "v${v}"; diff --git a/pkgs/development/rocq-modules/rocq-elpi/default.nix b/pkgs/development/rocq-modules/rocq-elpi/default.nix index 8d27cf2e0dfc..ea6ce3f6595e 100644 --- a/pkgs/development/rocq-modules/rocq-elpi/default.nix +++ b/pkgs/development/rocq-modules/rocq-elpi/default.nix @@ -12,11 +12,12 @@ let if elpi-version != null then elpi-version else - (lib.switch rocq-core.rocq-version (lib.lists.sort (x: y: lib.versions.isLe x.out y.out) ( - lib.mapAttrsToList (out: case: { inherit case out; }) { - "2.0.7" = "9.0"; - } - )) { }); + let + case = case: out: { inherit case out; }; + in + lib.switch rocq-core.rocq-version [ + (case ("9.0") "2.0.7") + ] { }; elpi = rocq-core.ocamlPackages.elpi.override { version = default-elpi-version; }; propagatedBuildInputs_wo_elpi = [ rocq-core.ocamlPackages.findlib @@ -27,14 +28,13 @@ let repo = "coq-elpi"; owner = "LPCIC"; inherit version; - defaultVersion = lib.switch rocq-core.rocq-version (lib.lists.sort - (x: y: lib.versions.isLe x.out y.out) - ( - lib.mapAttrsToList (out: case: { inherit case out; }) { - "2.5.2" = "9.0"; - } - ) - ) null; + defaultVersion = + let + case = case: out: { inherit case out; }; + in + lib.switch rocq-core.rocq-version [ + (case ("9.0") "2.5.2") + ] null; release."2.5.2".sha256 = "sha256-lLzjPrbVB3rrqox528YiheUb0u89R84Xmrgkn0oplOs="; releaseRev = v: "v${v}"; diff --git a/pkgs/development/rocq-modules/stdlib/default.nix b/pkgs/development/rocq-modules/stdlib/default.nix index 17fe604d1df4..595080b1f92d 100644 --- a/pkgs/development/rocq-modules/stdlib/default.nix +++ b/pkgs/development/rocq-modules/stdlib/default.nix @@ -13,12 +13,13 @@ mkRocqDerivation { inherit version; defaultVersion = + let + case = case: out: { inherit case out; }; + in with lib.versions; - lib.switch rocq-core.version (lib.lists.sort (x: y: isLe x.out y.out) ( - lib.mapAttrsToList (out: case: { inherit case out; }) { - "9.0.0" = isEq "9.0"; - } - )) null; + lib.switch rocq-core.version [ + (case (isEq "9.0") "9.0.0") + ] null; releaseRev = v: "V${v}"; release."9.0.0".sha256 = "sha256-2l7ak5Q/NbiNvUzIVXOniEneDXouBMNSSVFbD1Pf8cQ="; diff --git a/pkgs/development/tcl-modules/by-name/rl/rl_json/package.nix b/pkgs/development/tcl-modules/by-name/rl/rl_json/package.nix index 7a10f70c8d5d..fd67dfc347f9 100644 --- a/pkgs/development/tcl-modules/by-name/rl/rl_json/package.nix +++ b/pkgs/development/tcl-modules/by-name/rl/rl_json/package.nix @@ -8,13 +8,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "rl_json"; - version = "0.15.2"; + version = "0.15.3"; src = fetchFromGitHub { owner = "RubyLane"; repo = "rl_json"; rev = finalAttrs.version; - hash = "sha256-y62N4DK80baJx7tQ562ZWOEpKcDldKS1pEwR7NpzuZQ="; + hash = "sha256-JyJBf8lMrO/P5grOMojqs1PRoMPRsPWGQYS33eB7bRI="; fetchSubmodules = true; }; diff --git a/pkgs/development/tools/electron/binary/generic.nix b/pkgs/development/tools/electron/binary/generic.nix index fc526ec15c7f..8bd49c6ed39c 100644 --- a/pkgs/development/tools/electron/binary/generic.nix +++ b/pkgs/development/tools/electron/binary/generic.nix @@ -58,7 +58,7 @@ let ]; sourceProvenance = with sourceTypes; [ binaryNativeCode ]; # https://www.electronjs.org/docs/latest/tutorial/electron-timelines - knownVulnerabilities = optional (versionOlder version "34.0.0") "Electron version ${version} is EOL"; + knownVulnerabilities = optional (versionOlder version "35.0.0") "Electron version ${version} is EOL"; }; fetcher = diff --git a/pkgs/development/tools/electron/binary/info.json b/pkgs/development/tools/electron/binary/info.json index 12bfb8450616..65989393576a 100644 --- a/pkgs/development/tools/electron/binary/info.json +++ b/pkgs/development/tools/electron/binary/info.json @@ -42,5 +42,16 @@ "x86_64-linux": "6a0decb3e382f32d4ab3db90aabd082ef9ee1154fe205808f887e228fdb2d355" }, "version": "36.6.0" + }, + "37": { + "hashes": { + "aarch64-darwin": "31c57a288b262d17751e6bb6f3862bfaaa7eb2f0a5dfb17965013538d2ceeeb1", + "aarch64-linux": "0aca9ed706f48e1b13c14d9379473c617d906bae8a4ee3a7cc1699ad8feea79b", + "armv7l-linux": "88d33b77debc1d7c189350b9ba411bced78328dca86d4d7e805c4322502fc254", + "headers": "0wizghk8sbggxjcxyxga20021by5b6a4vdr92nkmaadpishs1ylh", + "x86_64-darwin": "78e3c798b65d1e740e92bc2acac56b43aadf803be9fc3de799fd40407548dd83", + "x86_64-linux": "c03c227b2ac340e4a4093b7157e3290581bccf798bc3e0a40b280b0083453299" + }, + "version": "37.1.0" } } diff --git a/pkgs/development/tools/electron/chromedriver/info.json b/pkgs/development/tools/electron/chromedriver/info.json index 5373b55ee742..e6536e6699fd 100644 --- a/pkgs/development/tools/electron/chromedriver/info.json +++ b/pkgs/development/tools/electron/chromedriver/info.json @@ -42,5 +42,16 @@ "x86_64-linux": "859c853712a4addb77d4fb1019e27063ef8825004bb93219e991cf5b4103ccb8" }, "version": "36.6.0" + }, + "37": { + "hashes": { + "aarch64-darwin": "f17ed19aa221a0105f688e86de3b2ef2328fcd367cc0c3a1a4ef8470c82f4776", + "aarch64-linux": "b41893387748f0ab996979d16e38852c9c9a27a647f1931b8cc227b6bea079af", + "armv7l-linux": "abb11bb11e40f029061551bdc183b57515ee095de2019ec946bc63018454163d", + "headers": "0wizghk8sbggxjcxyxga20021by5b6a4vdr92nkmaadpishs1ylh", + "x86_64-darwin": "e45df1088579f802258bce0f17ebb5791140ac7b568a6e17047cace76ab9f045", + "x86_64-linux": "aed73451a604782e1be5826a6455e63264ddace4e2d4552a5a400fa16398ab96" + }, + "version": "37.1.0" } } diff --git a/pkgs/development/tools/electron/info.json b/pkgs/development/tools/electron/info.json index 66a1203fa894..73ca102ee2bf 100644 --- a/pkgs/development/tools/electron/info.json +++ b/pkgs/development/tools/electron/info.json @@ -1,1281 +1,4 @@ { - "34": { - "chrome": "132.0.6834.210", - "chromium": { - "deps": { - "gn": { - "hash": "sha256-zZoD5Bx7wIEP2KJkHef6wHrxU3px+8Vseq29QcK32bg=", - "rev": "feafd1012a32c05ec6095f69ddc3850afb621f3a", - "url": "https://gn.googlesource.com/gn", - "version": "2024-10-14" - } - }, - "version": "132.0.6834.210" - }, - "chromium_npm_hash": "sha256-H1/h3x+Cgp1x94Ze3UPPHxRVpylZDvpMXMOuS+jk2dw=", - "deps": { - "src": { - "args": { - "hash": "sha256-NVaErCSvuTQyt7yv2sc4aIX2J/6mxM648Wbbut2Jjxc=", - "postFetch": "rm -r $out/third_party/blink/web_tests; rm -r $out/content/test/data; rm -rf $out/courgette/testdata; rm -r $out/extensions/test/data; rm -r $out/media/test/data; ", - "tag": "132.0.6834.210", - "url": "https://chromium.googlesource.com/chromium/src.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/chrome/test/data/perf/canvas_bench": { - "args": { - "hash": "sha256-svOuyBGKloBLM11xLlWCDsB4PpRjdKTBdW2UEW4JQjM=", - "rev": "a7b40ea5ae0239517d78845a5fc9b12976bfc732", - "url": "https://chromium.googlesource.com/chromium/canvas_bench.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/chrome/test/data/perf/frame_rate/content": { - "args": { - "hash": "sha256-t4kcuvH0rkPBkcdiMsoNQaRwU09eU+oSvyHDiAHrKXo=", - "rev": "c10272c88463efeef6bb19c9ec07c42bc8fe22b9", - "url": "https://chromium.googlesource.com/chromium/frame_rate/content.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/chrome/test/data/xr/webvr_info": { - "args": { - "hash": "sha256-BsAPwc4oEWri0TlqhyxqFNqKdfgVSrB0vQyISmYY4eg=", - "rev": "c58ae99b9ff9e2aa4c524633519570bf33536248", - "url": "https://chromium.googlesource.com/external/github.com/toji/webvr.info.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/docs/website": { - "args": { - "hash": "sha256-CqveHvjPEcRWnzi8w13xr2OainrmABNO8uj0GzKmQqo=", - "rev": "be9c3dfd3781964fc0bab0d6c91d9ad117b71b02", - "url": "https://chromium.googlesource.com/website.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/electron": { - "args": { - "hash": "sha256-ABlVuW0EUsFUyuIaugoI09EsHF+g7fxRSS/bOaOAkjg=", - "owner": "electron", - "repo": "electron", - "tag": "v34.5.8" - }, - "fetcher": "fetchFromGitHub" - }, - "src/media/cdm/api": { - "args": { - "hash": "sha256-6J6aSYW0or99VAgMNJJOdJqMJspoG7w1HxDN50MV5bw=", - "rev": "eb21edc44e8e5a82095037be80c8b15c51624293", - "url": "https://chromium.googlesource.com/chromium/cdm.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/net/third_party/quiche/src": { - "args": { - "hash": "sha256-Z2uFWfZDYcY0m4R6mFMZJLnnVHu3/hQOAkCPQ5049SQ=", - "rev": "9616efc903b7469161996006c8cf963238e26503", - "url": "https://quiche.googlesource.com/quiche.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/testing/libfuzzer/fuzzers/wasm_corpus": { - "args": { - "hash": "sha256-gItDOfNqm1tHlmelz3l2GGdiKi9adu1EpPP6U7+8EQY=", - "rev": "1df5e50a45db9518a56ebb42cb020a94a090258b", - "url": "https://chromium.googlesource.com/v8/fuzzer_wasm_corpus.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/accessibility_test_framework/src": { - "args": { - "hash": "sha256-mzVgoxxBWebesG6okyMxxmO6oH+TITA4o9ucHHMMzkQ=", - "rev": "4a764c690353ea136c82f1a696a70bf38d1ef5fe", - "url": "https://chromium.googlesource.com/external/github.com/google/Accessibility-Test-Framework-for-Android.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/angle": { - "args": { - "hash": "sha256-fMIHpa2QFsQQ19LGyhvV3Ihh6Ls8wwwhqTtpLoTEaf4=", - "rev": "ce13a00a2b049a1ef5e0e70a3d333ce70838ef7b", - "url": "https://chromium.googlesource.com/angle/angle.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/angle/third_party/VK-GL-CTS/src": { - "args": { - "hash": "sha256-2ZhG4cJf85zO7x+SGG6RD2qgOxZVosxAIbuZt9GYUKs=", - "rev": "f674555ab03e6355e0981a647c115097e9fe5324", - "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/angle/third_party/glmark2/src": { - "args": { - "hash": "sha256-L7+zWM0qn8WFhmON7DGvarTsN1YHt1sn5+hazTOZrrk=", - "rev": "ca8de51fedb70bace5351c6b002eb952c747e889", - "url": "https://chromium.googlesource.com/external/github.com/glmark2/glmark2" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/angle/third_party/rapidjson/src": { - "args": { - "hash": "sha256-btUl1a/B0sXwf/+hyvCvVJjWqIkXfVYCpHm3TeBuOxk=", - "rev": "781a4e667d84aeedbeb8184b7b62425ea66ec59f", - "url": "https://chromium.googlesource.com/external/github.com/Tencent/rapidjson" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/anonymous_tokens/src": { - "args": { - "hash": "sha256-PMB49+zW9ewlS9ym+xi0xYQYLN0j5Urx6yBXWd8FjjI=", - "rev": "6ea6ec78f9e4998d0a7a5677b2aec08f0ac858f8", - "url": "https://chromium.googlesource.com/external/github.com/google/anonymous-tokens.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/beto-core/src": { - "args": { - "hash": "sha256-QPFGjtu/I0r4+dTQ2eSlWIEYwJ43B3yW0q4QtVFTVGY=", - "rev": "89563fec14c756482afa08b016eeba9087c8d1e3", - "url": "https://beto-core.googlesource.com/beto-core.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/boringssl/src": { - "args": { - "hash": "sha256-ib9wbV6S64OFc4zx0wQsQ84+5RxbETK0PS9Wm1BFQ1U=", - "rev": "571c76e919c0c48219ced35bef83e1fc83b00eed", - "url": "https://boringssl.googlesource.com/boringssl.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/breakpad/breakpad": { - "args": { - "hash": "sha256-cFXUi2oO/614jF0GV7oW0ss62dXWFHDNWNT8rWHAiQc=", - "rev": "47f7823bdf4b1f39e462b2a497a674860e922e38", - "url": "https://chromium.googlesource.com/breakpad/breakpad.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/cast_core/public/src": { - "args": { - "hash": "sha256-o5/Lbhh6HHSWCVCEyDwDCgs+PLm67si981w0HuIWY7c=", - "rev": "fbc5e98031e1271a0a566fcd4d9092b2d3275d05", - "url": "https://chromium.googlesource.com/cast_core/public" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/catapult": { - "args": { - "hash": "sha256-65cZPyqZUdSnYPJYUMYeJgx3mUC6L/qb9P2bDqd2Zkk=", - "rev": "b91cf840ac3255ef03b23cc93621369627422a1a", - "url": "https://chromium.googlesource.com/catapult.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/ced/src": { - "args": { - "hash": "sha256-ySG74Rj2i2c/PltEgHVEDq+N8yd9gZmxNktc56zIUiY=", - "rev": "ba412eaaacd3186085babcd901679a48863c7dd5", - "url": "https://chromium.googlesource.com/external/github.com/google/compact_enc_det.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/chromium-variations": { - "args": { - "hash": "sha256-mg5mu2jcy0xyNJ650ywWUMC94keRsqhZQuPZclHmyLI=", - "rev": "c170abb48f7715c237f4c06eaed0fe6f8a4c6f8d", - "url": "https://chromium.googlesource.com/chromium-variations.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/clang-format/script": { - "args": { - "hash": "sha256-whD8isX2ZhLrFzdxHhFP1S/sZDRgyrzLFaVd7OEFqYo=", - "rev": "3c0acd2d4e73dd911309d9e970ba09d58bf23a62", - "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/clang/tools/clang-format.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/cld_3/src": { - "args": { - "hash": "sha256-C3MOMBUy9jgkT9BAi/Fgm2UH4cxRuwSBEcRl3hzM2Ss=", - "rev": "b48dc46512566f5a2d41118c8c1116c4f96dc661", - "url": "https://chromium.googlesource.com/external/github.com/google/cld_3.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/colorama/src": { - "args": { - "hash": "sha256-6ZTdPYSHdQOLYMSnE+Tp7PgsVTs3U2awGu9Qb4Rg/tk=", - "rev": "3de9f013df4b470069d03d250224062e8cf15c49", - "url": "https://chromium.googlesource.com/external/colorama.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/content_analysis_sdk/src": { - "args": { - "hash": "sha256-f5Jmk1MiGjaRdLun+v/GKVl8Yv9hOZMTQUSxgiJalcY=", - "rev": "9a408736204513e0e95dd2ab3c08de0d95963efc", - "url": "https://chromium.googlesource.com/external/github.com/chromium/content_analysis_sdk.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/cpu_features/src": { - "args": { - "hash": "sha256-E8LoVzhe+TAmARWZTSuINlsVhzpUJMxPPCGe/dHZcyA=", - "rev": "936b9ab5515dead115606559502e3864958f7f6e", - "url": "https://chromium.googlesource.com/external/github.com/google/cpu_features.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/cpuinfo/src": { - "args": { - "hash": "sha256-FlvmSjY8kt5XHymDLaZdPuZ4k5xcagJk8w/U6adTkWI=", - "rev": "8df44962d437a0477f07ba6b8843d0b6a48646a4", - "url": "https://chromium.googlesource.com/external/github.com/pytorch/cpuinfo.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/crabbyavif/src": { - "args": { - "hash": "sha256-hO5epHYNYI6pGwVSUv1Hp3qb7qOv8uOs4u+IdhDxd8Q=", - "rev": "c3548280e0a516ed7cad7ff1591b5807cef64aa4", - "url": "https://chromium.googlesource.com/external/github.com/webmproject/CrabbyAvif.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/crc32c/src": { - "args": { - "hash": "sha256-KBraGaO5LmmPP+p8RuDogGldbTWdNDK+WzF4Q09keuE=", - "rev": "d3d60ac6e0f16780bcfcc825385e1d338801a558", - "url": "https://chromium.googlesource.com/external/github.com/google/crc32c.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/cros-components/src": { - "args": { - "hash": "sha256-owXaTIj0pbhUeJkirxaRoCmgIN9DwNzY3h771kaN+Fc=", - "rev": "9129cf4b2a5ca775c280243257a0b4856a93c7fb", - "url": "https://chromium.googlesource.com/external/google3/cros_components.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/cros_system_api": { - "args": { - "hash": "sha256-fvGypRhgl2uX9YE2cwjL7d3pYBa3Imd5p0RLhMYRgrc=", - "rev": "554629b9242e6ae832ef14e3384654426f7fcc06", - "url": "https://chromium.googlesource.com/chromiumos/platform2/system_api.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/crossbench": { - "args": { - "hash": "sha256-/K6eM9s+fd2wjCrK0g0CgFNy0zxEN9SxTvmE50hMtXw=", - "rev": "ae6f165652e0ea983d73f5d04b7470d08c869e4f", - "url": "https://chromium.googlesource.com/crossbench.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/dav1d/libdav1d": { - "args": { - "hash": "sha256-Q2CaWvDqOmfaPG6a+SUHG5rFHalPEf4Oq/ytT3xuSOk=", - "rev": "93f12c117a4e1c0cc2b129dcc52e84dbd9b84200", - "url": "https://chromium.googlesource.com/external/github.com/videolan/dav1d.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/dawn": { - "args": { - "hash": "sha256-1d8cCtqBIfYbVqUQ4q4BtH2FujbNJeeW9agJUjcktgE=", - "rev": "c3530f2883610bb6606a5f55935c189e732e67d0", - "url": "https://dawn.googlesource.com/dawn.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/dawn/third_party/dxc": { - "args": { - "hash": "sha256-rhUNPA5b0H3PBsOpXbAeRLpS0tNQkiHbjRBWmJycSAY=", - "rev": "ac36a797d3470e8ee906b98457a59270d01db30d", - "url": "https://chromium.googlesource.com/external/github.com/microsoft/DirectXShaderCompiler" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/dawn/third_party/dxheaders": { - "args": { - "hash": "sha256-0Miw1Cy/jmOo7bLFBOHuTRDV04cSeyvUEyPkpVsX9DA=", - "rev": "980971e835876dc0cde415e8f9bc646e64667bf7", - "url": "https://chromium.googlesource.com/external/github.com/microsoft/DirectX-Headers" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/dawn/third_party/glfw": { - "args": { - "hash": "sha256-E1zXIDiw87badrLOZTvV+Wh9NZHu51nb70ZK9vlAlqE=", - "rev": "b35641f4a3c62aa86a0b3c983d163bc0fe36026d", - "url": "https://chromium.googlesource.com/external/github.com/glfw/glfw" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/dawn/third_party/khronos/EGL-Registry": { - "args": { - "hash": "sha256-Z6DwLfgQ1wsJXz0KKJyVieOatnDmx3cs0qJ6IEgSq1A=", - "rev": "7dea2ed79187cd13f76183c4b9100159b9e3e071", - "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/EGL-Registry" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/dawn/third_party/khronos/OpenGL-Registry": { - "args": { - "hash": "sha256-K3PcRIiD3AmnbiSm5TwaLs4Gu9hxaN8Y91WMKK8pOXE=", - "rev": "5bae8738b23d06968e7c3a41308568120943ae77", - "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/OpenGL-Registry" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/dawn/third_party/webgpu-cts": { - "args": { - "hash": "sha256-ArbHGjkHd1sko7gDPFksYz7XHKNge+e6tVy6oKPuqzg=", - "rev": "8690defa74b6975c10e85c113f121d4b2a3f2564", - "url": "https://chromium.googlesource.com/external/github.com/gpuweb/cts" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/dawn/third_party/webgpu-headers": { - "args": { - "hash": "sha256-J3PcwYoO79HqrACFgk77BZLTCi7oi5k2J6v3wlcFVD4=", - "rev": "8049c324dc7b3c09dc96ea04cb02860f272c8686", - "url": "https://chromium.googlesource.com/external/github.com/webgpu-native/webgpu-headers" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/depot_tools": { - "args": { - "hash": "sha256-m/6b4VZZTUQOeED1mYvZOQCx8Re+Zd4O8SKDMjJ9Djo=", - "rev": "41d43a2a2290450aeab946883542f8049b155c87", - "url": "https://chromium.googlesource.com/chromium/tools/depot_tools.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/devtools-frontend/src": { - "args": { - "hash": "sha256-mBWZdbgZfO01Pt2lZSHX/d5r+8A/+qCZA8MRtZdeTrs=", - "rev": "f2f3682c9db8ca427f8c64f0402cc2c5152c6c24", - "url": "https://chromium.googlesource.com/devtools/devtools-frontend" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/dom_distiller_js/dist": { - "args": { - "hash": "sha256-yuEBD2XQlV3FGI/i7lTmJbCqzeBiuG1Qow8wvsppGJw=", - "rev": "199de96b345ada7c6e7e6ba3d2fa7a6911b8767d", - "url": "https://chromium.googlesource.com/chromium/dom-distiller/dist.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/domato/src": { - "args": { - "hash": "sha256-fYxoA0fxKe9U23j+Jp0MWj4m7RfsRpM0XjF6/yOhX1I=", - "rev": "053714bccbda79cf76dac3fee48ab2b27f21925e", - "url": "https://chromium.googlesource.com/external/github.com/googleprojectzero/domato.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/eigen3/src": { - "args": { - "hash": "sha256-UroGjERR5TW9KbyLwR/NBpytXrW1tHfu6ZvQPngROq4=", - "rev": "b396a6fbb2e173f52edb3360485dedf3389ef830", - "url": "https://chromium.googlesource.com/external/gitlab.com/libeigen/eigen.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/electron_node": { - "args": { - "hash": "sha256-vc3Ztw8m0P96QoCjtyu2Nb0TpVMu9ifrVlkJY15aVbE=", - "owner": "nodejs", - "repo": "node", - "tag": "v20.19.1" - }, - "fetcher": "fetchFromGitHub" - }, - "src/third_party/emoji-segmenter/src": { - "args": { - "hash": "sha256-KdQdKBBipEBRT8UmNGao6yCB4m2CU8/SrMVvcXlb5qE=", - "rev": "955936be8b391e00835257059607d7c5b72ce744", - "url": "https://chromium.googlesource.com/external/github.com/google/emoji-segmenter.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/engflow-reclient-configs": { - "args": { - "hash": "sha256-aZXYPj9KYBiZnljqOLlWJWS396Fg3EhjiQLZmkwCBsY=", - "owner": "EngFlow", - "repo": "reclient-configs", - "rev": "955335c30a752e9ef7bff375baab5e0819b6c00d" - }, - "fetcher": "fetchFromGitHub" - }, - "src/third_party/expat/src": { - "args": { - "hash": "sha256-Iwu9+i/0vsPyu6pOWFxjNNblVxMl6bTPW5eWyaju4Mg=", - "rev": "624da0f593bb8d7e146b9f42b06d8e6c80d032a3", - "url": "https://chromium.googlesource.com/external/github.com/libexpat/libexpat.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/farmhash/src": { - "args": { - "hash": "sha256-5n58VEUxa/K//jAfZqG4cXyfxrp50ogWDNYcgiXVHdc=", - "rev": "816a4ae622e964763ca0862d9dbd19324a1eaf45", - "url": "https://chromium.googlesource.com/external/github.com/google/farmhash.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/fast_float/src": { - "args": { - "hash": "sha256-0eVovauN7SnO3nSIWBRWAJ4dR7q5beZrIGUZ18M2pao=", - "rev": "3e57d8dcfb0a04b5a8a26b486b54490a2e9b310f", - "url": "https://chromium.googlesource.com/external/github.com/fastfloat/fast_float.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/ffmpeg": { - "args": { - "hash": "sha256-wwHxNuZe2hBmGBpVg/iQJBoL350jfPYPTPqDn3RiqZE=", - "rev": "591ae4b02eaff9a03e2ec863da895128b0b49910", - "url": "https://chromium.googlesource.com/chromium/third_party/ffmpeg.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/flac": { - "args": { - "hash": "sha256-gvTFPNOlBfozptaH7lTb9iD/09AmpdT3kCl9ClszjEs=", - "rev": "689da3a7ed50af7448c3f1961d1791c7c1d9c85c", - "url": "https://chromium.googlesource.com/chromium/deps/flac.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/flatbuffers/src": { - "args": { - "hash": "sha256-tbc45o0MbMvK5XqRUJt5Eg8BU6+TJqlmwFgQhHq6wRM=", - "rev": "8db59321d9f02cdffa30126654059c7d02f70c32", - "url": "https://chromium.googlesource.com/external/github.com/google/flatbuffers.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/fontconfig/src": { - "args": { - "hash": "sha256-W5WIgC6A52kY4fNkbsDEa0o+dfd97Rl5NKfgnIRpI00=", - "rev": "14d466b30a8ab4a9d789977ed94f2c30e7209267", - "url": "https://chromium.googlesource.com/external/fontconfig.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/fp16/src": { - "args": { - "hash": "sha256-m2d9bqZoGWzuUPGkd29MsrdscnJRtuIkLIMp3fMmtRY=", - "rev": "0a92994d729ff76a58f692d3028ca1b64b145d91", - "url": "https://chromium.googlesource.com/external/github.com/Maratyszcza/FP16.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/freetype-testing/src": { - "args": { - "hash": "sha256-2aHPchIK5Oce5+XxdXVCC+8EM6i0XT0rFbjSIVa2L1A=", - "rev": "7a69b1a2b028476f840ab7d4a2ffdfe4eb2c389f", - "url": "https://chromium.googlesource.com/external/github.com/freetype/freetype2-testing.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/freetype/src": { - "args": { - "hash": "sha256-+nbRZi3vAMTURhhFVUu5+59fVIv0GH3YZog2JavyVLY=", - "rev": "0ae7e607370cc66218ccfacf5de4db8a35424c2f", - "url": "https://chromium.googlesource.com/chromium/src/third_party/freetype2.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/fuzztest/src": { - "args": { - "hash": "sha256-UYmzjOX8k+CWL+xOIF3NiEL3TRUjS8JflortB2RUT4o=", - "rev": "0021f30508bc7f73fa5270962d022acb480d242f", - "url": "https://chromium.googlesource.com/external/github.com/google/fuzztest.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/fxdiv/src": { - "args": { - "hash": "sha256-LjX5kivfHbqCIA5pF9qUvswG1gjOFo3CMpX0VR+Cn38=", - "rev": "63058eff77e11aa15bf531df5dd34395ec3017c8", - "url": "https://chromium.googlesource.com/external/github.com/Maratyszcza/FXdiv.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/gemmlowp/src": { - "args": { - "hash": "sha256-O5wD8wxgis0qYMaY+xZ21GBDVQFphMRvInCOswS6inA=", - "rev": "13d57703abca3005d97b19df1f2db731607a7dc2", - "url": "https://chromium.googlesource.com/external/github.com/google/gemmlowp.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/glslang/src": { - "args": { - "hash": "sha256-twWSeJp9bNbLYFszCWv9BCztfbXUBKSWV55/U+hd2hw=", - "rev": "9c644fcb5b9a1a9c975c50a790fd14c5451292b0", - "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/google_benchmark/src": { - "args": { - "hash": "sha256-cH8s1gP6kCcojAAfTt5iQCVqiAaSooNk4BdaILujM3w=", - "rev": "761305ec3b33abf30e08d50eb829e19a802581cc", - "url": "https://chromium.googlesource.com/external/github.com/google/benchmark.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/googletest/src": { - "args": { - "hash": "sha256-n7tiIFAj8AiSCa9Tw+1j+ro9cSt5vagZpkbBBUUtYQY=", - "rev": "d144031940543e15423a25ae5a8a74141044862f", - "url": "https://chromium.googlesource.com/external/github.com/google/googletest.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/grpc/src": { - "args": { - "hash": "sha256-64JEVCx/PCM0dvv7kAQvSjLc0QbRAZVBDzwD/FAV6T8=", - "rev": "822dab21d9995c5cf942476b35ca12a1aa9d2737", - "url": "https://chromium.googlesource.com/external/github.com/grpc/grpc.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/harfbuzz-ng/src": { - "args": { - "hash": "sha256-iR49rfGDKxPObCff1/30hYHpP5FpZ28ROgMZhNk9eFY=", - "rev": "1da053e87f0487382404656edca98b85fe51f2fd", - "url": "https://chromium.googlesource.com/external/github.com/harfbuzz/harfbuzz.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/highway/src": { - "args": { - "hash": "sha256-IS7m1wBwpPBUNhx2GttY1fzvmLIeAp3o2gXfrFpRdvY=", - "rev": "00fe003dac355b979f36157f9407c7c46448958e", - "url": "https://chromium.googlesource.com/external/github.com/google/highway.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/hunspell_dictionaries": { - "args": { - "hash": "sha256-67mvpJRFFa9eMfyqFMURlbxOaTJBICnk+gl0b0mEHl8=", - "rev": "41cdffd71c9948f63c7ad36e1fb0ff519aa7a37e", - "url": "https://chromium.googlesource.com/chromium/deps/hunspell_dictionaries.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/icu": { - "args": { - "hash": "sha256-WtCoxcbEkkZayB6kXdQEhZ7/ue+ka6cguhFbpeWUBJA=", - "rev": "ba7ed88cc5ffa428a82a0f787dd61031aa5ef4ca", - "url": "https://chromium.googlesource.com/chromium/deps/icu.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/ink/src": { - "args": { - "hash": "sha256-+Ikr9E7KlXBFyf6fSDmIF3ygNUiwlXeA5bmO2CtkI7Q=", - "rev": "4300dc7402a257b85fc5bf2559137edacb050227", - "url": "https://chromium.googlesource.com/external/github.com/google/ink.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/ink_stroke_modeler/src": { - "args": { - "hash": "sha256-IQ+n+kHdEq8Q8/qaPGMvgD7cPN3zzaY8dbiokq6r/Vs=", - "rev": "0999e4cf816b42c770d07916698bce943b873048", - "url": "https://chromium.googlesource.com/external/github.com/google/ink-stroke-modeler.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/instrumented_libs": { - "args": { - "hash": "sha256-kHKGADAgzlaeckXFbpU1GhJK+zkiRd9XvdtPF6qrQFY=", - "rev": "bb6dbcf2df7a9beb34c3773ef4df161800e3aed9", - "url": "https://chromium.googlesource.com/chromium/third_party/instrumented_libraries.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/jsoncpp/source": { - "args": { - "hash": "sha256-bSLNcoYBz3QCt5VuTR056V9mU2PmBuYBa0W6hFg2m8Q=", - "rev": "42e892d96e47b1f6e29844cc705e148ec4856448", - "url": "https://chromium.googlesource.com/external/github.com/open-source-parsers/jsoncpp.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/leveldatabase/src": { - "args": { - "hash": "sha256-y3awFXL8ih2UhEqWj8JRgkhzSxfQciLztb020JHJ350=", - "rev": "23e35d792b9154f922b8b575b12596a4d8664c65", - "url": "https://chromium.googlesource.com/external/leveldb.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/libFuzzer/src": { - "args": { - "hash": "sha256-jPS+Xi/ia0sMspxSGN38zasmVS/HslxH/qOFsV9TguE=", - "rev": "a7128317fe7935a43d6c9f39df54f21113951941", - "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/compiler-rt/lib/fuzzer.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/libaddressinput/src": { - "args": { - "hash": "sha256-xvUUQSPrvqUp5DI9AqlRTWurwDW087c6v4RvI+4sfOQ=", - "rev": "e8712e415627f22d0b00ebee8db99547077f39bd", - "url": "https://chromium.googlesource.com/external/libaddressinput.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/libaom/source/libaom": { - "args": { - "hash": "sha256-9VhEVOG9cReDOGoX+x5G/jJ8Y5RDoQIiLMoZtt5c9pI=", - "rev": "be60f06ab420d6a65c477213f04c8b0f2e12ba2e", - "url": "https://aomedia.googlesource.com/aom.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/libavif/src": { - "args": { - "hash": "sha256-lUuVyh2srhWMNUp4lEivyDic3MSZf5s63iAb84We80M=", - "rev": "1cdeff7ecf456492c47cf48fc0cef6591cdc95da", - "url": "https://chromium.googlesource.com/external/github.com/AOMediaCodec/libavif.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/libc++/src": { - "args": { - "hash": "sha256-kmhTlz/qjvN0Qlra7Wz05O6X058hPPn0nVvAxFXQDC4=", - "rev": "8e31ad42561900383e10dbefc1d3e8f38cedfbe9", - "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/libc++abi/src": { - "args": { - "hash": "sha256-CwiK9Td8aRS08RywItHKFvibzDAUYYd0YNRKxYPLTD8=", - "rev": "cec7f478354a8c8599f264ed8bb6043b5468f72d", - "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/libdrm/src": { - "args": { - "hash": "sha256-woSYEDUfcEBpYOYnli13wLMt754A7KnUbmTEcFQdFGw=", - "rev": "ad78bb591d02162d3b90890aa4d0a238b2a37cde", - "url": "https://chromium.googlesource.com/chromiumos/third_party/libdrm.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/libgav1/src": { - "args": { - "hash": "sha256-+ss9S5t+yoHzqbtX68+5OyyUbJVecYLwp+C3EXfAziE=", - "rev": "a2f139e9123bdb5edf7707ac6f1b73b3aa5038dd", - "url": "https://chromium.googlesource.com/codecs/libgav1.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/libipp/libipp": { - "args": { - "hash": "sha256-gxU92lHLd6uxO8T3QWhZIK0hGy97cki705DV0VimCPY=", - "rev": "2209bb84a8e122dab7c02fe66cc61a7b42873d7f", - "url": "https://chromium.googlesource.com/chromiumos/platform2/libipp.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/libjpeg_turbo": { - "args": { - "hash": "sha256-qgHXAjCDFxQ+QqJ8pSmI1NUvHvKKTi4MkIe1I/+hUAI=", - "rev": "927aabfcd26897abb9776ecf2a6c38ea5bb52ab6", - "url": "https://chromium.googlesource.com/chromium/deps/libjpeg_turbo.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/liblouis/src": { - "args": { - "hash": "sha256-EI/uaHXe0NlqdEw764q0SjerThYEVLRogUlmrsZwXnY=", - "rev": "9700847afb92cb35969bdfcbbfbbb74b9c7b3376", - "url": "https://chromium.googlesource.com/external/liblouis-github.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/libphonenumber/dist": { - "args": { - "hash": "sha256-3hSnTFTD3KAdbyxfKg12qbIYTmw6YlTCH64gMP/HUJo=", - "rev": "140dfeb81b753388e8a672900fb7a971e9a0d362", - "url": "https://chromium.googlesource.com/external/libphonenumber.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/libprotobuf-mutator/src": { - "args": { - "hash": "sha256-ZyPweW+V5foxFQwjjMLkaRUo+FNV+kEDGIH/4oRV614=", - "rev": "a304ec48dcf15d942607032151f7e9ee504b5dcf", - "url": "https://chromium.googlesource.com/external/github.com/google/libprotobuf-mutator.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/libsrtp": { - "args": { - "hash": "sha256-4qEZ9MD97MoqCUlZtbEhIKy+fDO1iIWqyrBsKwkjXTg=", - "rev": "000edd791434c8738455f10e0dd6b268a4852c0b", - "url": "https://chromium.googlesource.com/chromium/deps/libsrtp.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/libsync/src": { - "args": { - "hash": "sha256-Mkl6C1LxF3RYLwYbxiSfoQPt8QKFwQWj/Ati2sNJ32E=", - "rev": "f4f4387b6bf2387efbcfd1453af4892e8982faf6", - "url": "https://chromium.googlesource.com/aosp/platform/system/core/libsync.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/libunwind/src": { - "args": { - "hash": "sha256-uA+t5Ecc/iK3mllHR8AMVGRfU/7z1G3yrw0TamPQiOY=", - "rev": "5b01ea4a6f3b666b7d190e7cb7c31db2ed4d94ce", - "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/libvpx/source/libvpx": { - "args": { - "hash": "sha256-QGm37X4uid8zv+vRu0pVTvoQd2WcKztrj3tJkDjx82o=", - "rev": "727319a77ffe68e9aacb08e09ae7151b3a8f70a3", - "url": "https://chromium.googlesource.com/webm/libvpx.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/libwebm/source": { - "args": { - "hash": "sha256-Mn3snC2g4BDKBJsS6cxT3BZL7LZknOWg77+60Nr4Hy0=", - "rev": "26d9f667170dc75e8d759a997bb61c64dec42dda", - "url": "https://chromium.googlesource.com/webm/libwebm.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/libwebp/src": { - "args": { - "hash": "sha256-xuRpEwOnaLGZmrPvfUn3DSoJANd94CG+JXcN7Mdmk5I=", - "rev": "845d5476a866141ba35ac133f856fa62f0b7445f", - "url": "https://chromium.googlesource.com/webm/libwebp.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/libyuv": { - "args": { - "hash": "sha256-vPVq7RzqO7gBUgYuNX0Fwxqok9jtXXJZgbhVFchG5Ws=", - "rev": "6ac7c8f25170c85265fca69fd1fe5d31baf3344f", - "url": "https://chromium.googlesource.com/libyuv/libyuv.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/llvm-libc/src": { - "args": { - "hash": "sha256-av9JdqLOQbezgRS4P8QXmvfB5l47v04WRagNJJgT5u4=", - "rev": "ca74a72e2b32ad804522bbef04dfe32560a10206", - "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libc.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/lss": { - "args": { - "hash": "sha256-hE8uZf9Fst66qJkoVYChiB8G41ie+k9M4X0W+5JUSdw=", - "rev": "ce877209e11aa69dcfffbd53ef90ea1d07136521", - "url": "https://chromium.googlesource.com/linux-syscall-support.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/material_color_utilities/src": { - "args": { - "hash": "sha256-Y85XU+z9W6tvmDNHJ/dXQnUKXvvDkO3nH/kUJRLqbc4=", - "rev": "13434b50dcb64a482cc91191f8cf6151d90f5465", - "url": "https://chromium.googlesource.com/external/github.com/material-foundation/material-color-utilities.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/minigbm/src": { - "args": { - "hash": "sha256-9HwvjTETerbQ7YKXH9kUB2eWa8PxGWMAJfx1jAluhrs=", - "rev": "3018207f4d89395cc271278fb9a6558b660885f5", - "url": "https://chromium.googlesource.com/chromiumos/platform/minigbm.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/nan": { - "args": { - "hash": "sha256-cwti+BWmF/l/dqa/cN0C587EK4WwRWcWy6gjFVkaMTg=", - "owner": "nodejs", - "repo": "nan", - "rev": "e14bdcd1f72d62bca1d541b66da43130384ec213" - }, - "fetcher": "fetchFromGitHub" - }, - "src/third_party/nasm": { - "args": { - "hash": "sha256-SiRXHsUlWXtH6dbDjDjqNAm105ibEB3jOfNtQAM4CaY=", - "rev": "f477acb1049f5e043904b87b825c5915084a9a29", - "url": "https://chromium.googlesource.com/chromium/deps/nasm.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/nearby/src": { - "args": { - "hash": "sha256-DO3FW5Q233ctFKk4K5F8oZec9kfrVl6uxAwMn0niKz4=", - "rev": "8e87a6e51c93e7836ecdbcc0a520c7992f3ece13", - "url": "https://chromium.googlesource.com/external/github.com/google/nearby-connections.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/neon_2_sse/src": { - "args": { - "hash": "sha256-299ZptvdTmCnIuVVBkrpf5ZTxKPwgcGUob81tEI91F0=", - "rev": "a15b489e1222b2087007546b4912e21293ea86ff", - "url": "https://chromium.googlesource.com/external/github.com/intel/ARM_NEON_2_x86_SSE.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/openh264/src": { - "args": { - "hash": "sha256-S7dS2IZwt4p4ZrF6K7E5HnwKuI3owU2I7vwtu95uTkE=", - "rev": "478e5ab3eca30e600006d5a0a08b176fd34d3bd1", - "url": "https://chromium.googlesource.com/external/github.com/cisco/openh264" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/openscreen/src": { - "args": { - "hash": "sha256-IlGxfw6Mhc7FYvhU2+Ngt9qflqr4JMC2OcplvksGI+U=", - "rev": "cb6fd42532fc3a831d6863d5006217e32a67c417", - "url": "https://chromium.googlesource.com/openscreen" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/openscreen/src/buildtools": { - "args": { - "hash": "sha256-suuxUL//BfAMmG8os8ChI7ic9EjGTi7y5kjxiAyrEQc=", - "rev": "4e0e9c73a0f26735f034f09a9cab2a5c0178536b", - "url": "https://chromium.googlesource.com/chromium/src/buildtools" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/openscreen/src/third_party/tinycbor/src": { - "args": { - "hash": "sha256-fMKBFUSKmODQyg4hKIa1hwnEKIV6WBbY1Gb8DOSnaHA=", - "rev": "d393c16f3eb30d0c47e6f9d92db62272f0ec4dc7", - "url": "https://chromium.googlesource.com/external/github.com/intel/tinycbor.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/ots/src": { - "args": { - "hash": "sha256-kiUXrXsaGOzPkKh0dVmU1I13WHt0Stzj7QLMqHN9FbU=", - "rev": "46bea9879127d0ff1c6601b078e2ce98e83fcd33", - "url": "https://chromium.googlesource.com/external/github.com/khaledhosny/ots.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/pdfium": { - "args": { - "hash": "sha256-d8qJECIdq01ct+sS7cHVKFulYJarwahKCEcVf762JNI=", - "rev": "84a8011ec69d0e2de271c05be7d62979608040d9", - "url": "https://pdfium.googlesource.com/pdfium.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/perfetto": { - "args": { - "hash": "sha256-3vervpsq/QLMrR7RcJMwwh+CdFvSEj8yAzj6s9d1XMo=", - "rev": "ea011a2c2d3aecdc4f1674887e107a56d2905edd", - "url": "https://android.googlesource.com/platform/external/perfetto.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/protobuf-javascript/src": { - "args": { - "hash": "sha256-TmP6xftUVTD7yML7UEM/DB8bcsL5RFlKPyCpcboD86U=", - "rev": "e34549db516f8712f678fcd4bc411613b5cc5295", - "url": "https://chromium.googlesource.com/external/github.com/protocolbuffers/protobuf-javascript" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/pthreadpool/src": { - "args": { - "hash": "sha256-rGg6lgLkmbYo+a9CdaXz9ZUyrqJ1rxLcjLJeBEOPAlE=", - "rev": "560c60d342a76076f0557a3946924c6478470044", - "url": "https://chromium.googlesource.com/external/github.com/Maratyszcza/pthreadpool.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/pyelftools": { - "args": { - "hash": "sha256-I/7p3IEvfP/gkes4kx18PvWwhAKilQKb67GXoW4zFB4=", - "rev": "19b3e610c86fcadb837d252c794cb5e8008826ae", - "url": "https://chromium.googlesource.com/chromiumos/third_party/pyelftools.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/pywebsocket3/src": { - "args": { - "hash": "sha256-WEqqu2/7fLqcf/2/IcD7/FewRSZ6jTgVlVBvnihthYQ=", - "rev": "50602a14f1b6da17e0b619833a13addc6ea78bc2", - "url": "https://chromium.googlesource.com/external/github.com/GoogleChromeLabs/pywebsocket3.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/quic_trace/src": { - "args": { - "hash": "sha256-N1uFoNd3mz/LH1z06581Ds7BUyc67SNXUPzqomYREr8=", - "rev": "413da873d93a03d3662f24b881ea459a79f9c589", - "url": "https://chromium.googlesource.com/external/github.com/google/quic-trace.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/re2/src": { - "args": { - "hash": "sha256-IeANwJlJl45yf8iu/AZNDoiyIvTCZIeK1b74sdCfAIc=", - "rev": "6dcd83d60f7944926bfd308cc13979fc53dd69ca", - "url": "https://chromium.googlesource.com/external/github.com/google/re2.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/ruy/src": { - "args": { - "hash": "sha256-4NVvqUZn2BdwTxJINTHwPeRqbGXZrWdcd7jv1Y+eoKY=", - "rev": "c08ec529fc91722bde519628d9449258082eb847", - "url": "https://chromium.googlesource.com/external/github.com/google/ruy.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/securemessage/src": { - "args": { - "hash": "sha256-GS4ccnuiqxMs/LVYAtvSlVAYFp4a5GoZsxcriTX3k78=", - "rev": "fa07beb12babc3b25e0c5b1f38c16aa8cb6b8f84", - "url": "https://chromium.googlesource.com/external/github.com/google/securemessage.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/skia": { - "args": { - "hash": "sha256-e+oaFqj0D7jKiyDJRmT3BWZEd9j9BKkTdMg8hUOAvzA=", - "rev": "ee9db7d1348f76780fd0184b9b0243d653e36411", - "url": "https://skia.googlesource.com/skia.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/smhasher/src": { - "args": { - "hash": "sha256-RyC//me08hwGXRrWcK8GZ1uhIkBq4FByA7fHCVDsniw=", - "rev": "e87738e57558e0ec472b2fc3a643b838e5b6e88f", - "url": "https://chromium.googlesource.com/external/smhasher.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/snappy/src": { - "args": { - "hash": "sha256-5fV6NfO8vmqK+iCwpLtE2YjYOzjsshctauyjNIOxrH0=", - "rev": "c9f9edf6d75bb065fa47468bf035e051a57bec7c", - "url": "https://chromium.googlesource.com/external/github.com/google/snappy.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/speedometer/v3.0": { - "args": { - "hash": "sha256-qMQ4naX+4uUu3vtzzinjkhxX9/dNoTwj6vWCu4FdQmU=", - "rev": "8d67f28d0281ac4330f283495b7f48286654ad7d", - "url": "https://chromium.googlesource.com/external/github.com/WebKit/Speedometer.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/spirv-cross/src": { - "args": { - "hash": "sha256-H43M9DXfEuyKuvo6rjb5k0KEbYOSFodbPJh8ZKY4PQg=", - "rev": "b8fcf307f1f347089e3c46eb4451d27f32ebc8d3", - "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Cross" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/spirv-headers/src": { - "args": { - "hash": "sha256-FrT/kVIMjcu2zv+7kDeNKM77NnOyMBb8pV0w8DBP42A=", - "rev": "996c728cf7dcfb29845cfa15222822318f047810", - "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/spirv-tools/src": { - "args": { - "hash": "sha256-m/a1i26u8lzpKuQHyAy6ktWWjbLZEaio1awz8VovTGE=", - "rev": "9117e042b93d4ff08d2406542708170f77aaa2a3", - "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/sqlite/src": { - "args": { - "hash": "sha256-ltl3OTk/wZPSj3yYthNlKd3mBxef6l5uW6UYTwebNek=", - "rev": "567495a62a62dc013888500526e82837d727fe01", - "url": "https://chromium.googlesource.com/chromium/deps/sqlite.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/squirrel.mac": { - "args": { - "hash": "sha256-4GfKQg0u3c9GI+jl3ixESNqWXQJKRMi+00QT0s2Shqw=", - "owner": "Squirrel", - "repo": "Squirrel.Mac", - "rev": "0e5d146ba13101a1302d59ea6e6e0b3cace4ae38" - }, - "fetcher": "fetchFromGitHub" - }, - "src/third_party/squirrel.mac/vendor/Mantle": { - "args": { - "hash": "sha256-ogFkMJybf2Ue606ojXJu6Gy5aXSi1bSKm60qcTAIaPk=", - "owner": "Mantle", - "repo": "Mantle", - "rev": "78d3966b3c331292ea29ec38661b25df0a245948" - }, - "fetcher": "fetchFromGitHub" - }, - "src/third_party/squirrel.mac/vendor/ReactiveObjC": { - "args": { - "hash": "sha256-/MCqC1oFe3N9TsmfVLgl+deR6qHU6ZFQQjudb9zB5Mo=", - "owner": "ReactiveCocoa", - "repo": "ReactiveObjC", - "rev": "74ab5baccc6f7202c8ac69a8d1e152c29dc1ea76" - }, - "fetcher": "fetchFromGitHub" - }, - "src/third_party/swiftshader": { - "args": { - "hash": "sha256-h2BHyaOM0oscfX5cu8s4N1yyOkg/yQbvwD1DxF+RAQc=", - "rev": "d5c4284774115bb1e32c012a2be1b5fbeb1ab1f9", - "url": "https://swiftshader.googlesource.com/SwiftShader.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/text-fragments-polyfill/src": { - "args": { - "hash": "sha256-4rW2u1cQAF4iPWHAt1FvVXIpz2pmI901rEPks/w/iFA=", - "rev": "c036420683f672d685e27415de0a5f5e85bdc23f", - "url": "https://chromium.googlesource.com/external/github.com/GoogleChromeLabs/text-fragments-polyfill.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/tflite/src": { - "args": { - "hash": "sha256-gOUt/NljRK5wMFwy2aLqZ5NHwk4y/GxbQ+AZ3MxM0M8=", - "rev": "658227d3b535287dc6859788bde6076c4fe3fe7c", - "url": "https://chromium.googlesource.com/external/github.com/tensorflow/tensorflow.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/ukey2/src": { - "args": { - "hash": "sha256-aaLs6ZS+CdBlCJ6ZhsmdAPFxiBIij6oufsDcNeRSV1E=", - "rev": "0275885d8e6038c39b8a8ca55e75d1d4d1727f47", - "url": "https://chromium.googlesource.com/external/github.com/google/ukey2.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/vulkan-deps": { - "args": { - "hash": "sha256-LVWvbMLjkMyAUM+0UpQ4oRsfcRU5F/xY60wiwxth4Ko=", - "rev": "0b56dd5952b25fad65139b64096fcd187048ed38", - "url": "https://chromium.googlesource.com/vulkan-deps" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/vulkan-headers/src": { - "args": { - "hash": "sha256-exXzafLgrgxyRvaF+4pCF+OLtPT2gDmcvzazQ4EQ1eA=", - "rev": "cbcad3c0587dddc768d76641ea00f5c45ab5a278", - "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/vulkan-loader/src": { - "args": { - "hash": "sha256-NDp2TLeMLAHb92R+PjaPDTx8ckIlpSsS3BNx3lerB68=", - "rev": "b0177a972b8d47e823a4500cf88df88a8c27add7", - "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/vulkan-tools/src": { - "args": { - "hash": "sha256-PiWKL045DAOGm+Hl/UyO6vmD4fVfuf2fSvXK6gSYbwo=", - "rev": "15f2de809304aba619ee327f3273425418ca83de", - "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/vulkan-utility-libraries/src": { - "args": { - "hash": "sha256-luDw6g/EMSK67Et2wNta74PHGQU6Y7IRpDlSpgDYV6Q=", - "rev": "87ab6b39a97d084a2ef27db85e3cbaf5d2622a09", - "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Utility-Libraries" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/vulkan-validation-layers/src": { - "args": { - "hash": "sha256-WWV+P++0Czeqg5p2UTqIP81pY8oz7cS7E7Z/sc0km6g=", - "rev": "bc2c38412f739c298d6f5c076c064e6b5696959f", - "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/vulkan_memory_allocator": { - "args": { - "hash": "sha256-YzxHZagz/M8Y54UnI4h1wu5jSTuaOgv0ifC9d3fJZlQ=", - "rev": "56300b29fbfcc693ee6609ddad3fdd5b7a449a21", - "url": "https://chromium.googlesource.com/external/github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/wayland-protocols/gtk": { - "args": { - "hash": "sha256-75XNnLkF5Lt1LMRGT+T61k0/mLa3kkynfN+QWvZ0LiQ=", - "rev": "40ebed3a03aef096addc0af09fec4ec529d882a0", - "url": "https://chromium.googlesource.com/external/github.com/GNOME/gtk.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/wayland-protocols/kde": { - "args": { - "hash": "sha256-Dmcp/2ms/k7NxPPmPkp0YNfM9z2Es1ZO0uX10bc7N2Y=", - "rev": "0b07950714b3a36c9b9f71fc025fc7783e82926e", - "url": "https://chromium.googlesource.com/external/github.com/KDE/plasma-wayland-protocols.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/wayland-protocols/src": { - "args": { - "hash": "sha256-o/adWEXYSqWib6KoK7XMCWbojapcS4O/CEPxv7iFCw8=", - "rev": "7d5a3a8b494ae44cd9651f9505e88a250082765e", - "url": "https://chromium.googlesource.com/external/anongit.freedesktop.org/git/wayland/wayland-protocols.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/wayland/src": { - "args": { - "hash": "sha256-oK0Z8xO2ILuySGZS0m37ZF0MOyle2l8AXb0/6wai0/w=", - "rev": "a156431ea66fe67d69c9fbba8a8ad34dabbab81c", - "url": "https://chromium.googlesource.com/external/anongit.freedesktop.org/git/wayland/wayland.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/webdriver/pylib": { - "args": { - "hash": "sha256-WIqWXIKVgElgg8P8laLAlUrgwodGdeVcwohZxnPKedw=", - "rev": "fc5e7e70c098bfb189a9a74746809ad3c5c34e04", - "url": "https://chromium.googlesource.com/external/github.com/SeleniumHQ/selenium/py.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/webgl/src": { - "args": { - "hash": "sha256-32r3BdmsNA89mo0k+vK1G3718AOjseE7cJlopZ/0pSw=", - "rev": "450cceb587613ac1469c5a131fac15935c99e0e7", - "url": "https://chromium.googlesource.com/external/khronosgroup/webgl.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/webgpu-cts/src": { - "args": { - "hash": "sha256-Dd5uWNtnBIc2jiMkh9KjI5O1tJtmMvdlMA2nf+VOkQQ=", - "rev": "b9f32fd2943dd2b3d0033bf938c9d843f4b5c9a9", - "url": "https://chromium.googlesource.com/external/github.com/gpuweb/cts.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/webrtc": { - "args": { - "hash": "sha256-S8kGTd3+lf5OTayCMOqqrjxH4tcbT0NLZBpKmTCysMs=", - "rev": "afaf497805cbb502da89991c2dcd783201efdd08", - "url": "https://webrtc.googlesource.com/src.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/weston/src": { - "args": { - "hash": "sha256-y2srFaPUOoB2umzpo4+hFfhNlqXM2AoMGOpUy/ZSacg=", - "rev": "ccf29cb237c3ed09c5f370f35239c93d07abfdd7", - "url": "https://chromium.googlesource.com/external/anongit.freedesktop.org/git/wayland/weston.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/wuffs/src": { - "args": { - "hash": "sha256-373d2F/STcgCHEq+PO+SCHrKVOo6uO1rqqwRN5eeBCw=", - "rev": "e3f919ccfe3ef542cfc983a82146070258fb57f8", - "url": "https://skia.googlesource.com/external/github.com/google/wuffs-mirror-release-c.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/xdg-utils": { - "args": { - "hash": "sha256-WuQ9uDq+QD17Y20ACFGres4nbkeOiTE2y+tY1avAT5U=", - "rev": "cb54d9db2e535ee4ef13cc91b65a1e2741a94a44", - "url": "https://chromium.googlesource.com/chromium/deps/xdg-utils.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/xnnpack/src": { - "args": { - "hash": "sha256-aDPlmLxNY9M5+Qb8VtdfxphHXU/X6JwYhkUSXkLh/FE=", - "rev": "d1d33679661a34f03a806af2b813f699db3004f9", - "url": "https://chromium.googlesource.com/external/github.com/google/XNNPACK.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/third_party/zstd/src": { - "args": { - "hash": "sha256-4J/F2v2W3mMdhqQ4q35gYkGaqTKlcG6OxUt3vQ8pcLs=", - "rev": "7fb5347e88f10472226c9aa1962a148e55d8c480", - "url": "https://chromium.googlesource.com/external/github.com/facebook/zstd.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/tools/page_cycler/acid3": { - "args": { - "hash": "sha256-s/49EaYQRsyxuLejXc1zGDYTD7uO0ddaQIJBP50Bvw0=", - "rev": "a926d0a32e02c4c03ae95bb798e6c780e0e184ba", - "url": "https://chromium.googlesource.com/chromium/deps/acid3.git" - }, - "fetcher": "fetchFromGitiles" - }, - "src/v8": { - "args": { - "hash": "sha256-o+THwG/lBFw495DxAckGPeoiTV5zOopVF4B3MXmraf0=", - "rev": "7130a7a08a7075cc1967528402ec536f6fd85ed2", - "url": "https://chromium.googlesource.com/v8/v8.git" - }, - "fetcher": "fetchFromGitiles" - } - }, - "electron_yarn_hash": "0gh5bcsh23s3rqxqc2l3jz5vjb553sk0a1jycn94zm821pc3csd2", - "modules": "132", - "node": "20.19.1", - "version": "34.5.8" - }, "35": { "chrome": "134.0.6998.205", "chromium": { @@ -3909,5 +2632,1338 @@ "modules": "135", "node": "22.16.0", "version": "36.6.0" + }, + "37": { + "chrome": "138.0.7204.35", + "chromium": { + "deps": { + "gn": { + "hash": "sha256-UB9a7Fr1W0yYld6WbXyRR8dFqWsj/zx4KumDZ5JQKSM=", + "rev": "ebc8f16ca7b0d36a3e532ee90896f9eb48e5423b", + "url": "https://gn.googlesource.com/gn", + "version": "2025-05-21" + } + }, + "version": "138.0.7204.35" + }, + "chromium_npm_hash": "sha256-8d5VTHutv51libabhxv7SqPRcHfhVmGDSOvTSv013rE=", + "deps": { + "src": { + "args": { + "hash": "sha256-0C2lONJHtUyEAQ8PNSk5Z4zCZa5XFI2LH4Ew9PgWfuU=", + "postFetch": "rm -r $out/third_party/blink/web_tests; rm -r $out/content/test/data; rm -rf $out/courgette/testdata; rm -r $out/extensions/test/data; rm -r $out/media/test/data; ", + "tag": "138.0.7204.35", + "url": "https://chromium.googlesource.com/chromium/src.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/chrome/test/data/perf/canvas_bench": { + "args": { + "hash": "sha256-svOuyBGKloBLM11xLlWCDsB4PpRjdKTBdW2UEW4JQjM=", + "rev": "a7b40ea5ae0239517d78845a5fc9b12976bfc732", + "url": "https://chromium.googlesource.com/chromium/canvas_bench.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/chrome/test/data/perf/frame_rate/content": { + "args": { + "hash": "sha256-t4kcuvH0rkPBkcdiMsoNQaRwU09eU+oSvyHDiAHrKXo=", + "rev": "c10272c88463efeef6bb19c9ec07c42bc8fe22b9", + "url": "https://chromium.googlesource.com/chromium/frame_rate/content.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/chrome/test/data/xr/webvr_info": { + "args": { + "hash": "sha256-BsAPwc4oEWri0TlqhyxqFNqKdfgVSrB0vQyISmYY4eg=", + "rev": "c58ae99b9ff9e2aa4c524633519570bf33536248", + "url": "https://chromium.googlesource.com/external/github.com/toji/webvr.info.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/docs/website": { + "args": { + "hash": "sha256-X9GIZkPokZ8ojNVDScDQL8D0tJGsaQMg8ncenuBzFHk=", + "rev": "d21d90790d8ea421b317c4cb52a0d94133422796", + "url": "https://chromium.googlesource.com/website.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/electron": { + "args": { + "hash": "sha256-c/Gm/qLWy96407+XVXF+4z99jNUQwkWSwlHxnvfCbK0=", + "owner": "electron", + "repo": "electron", + "tag": "v37.1.0" + }, + "fetcher": "fetchFromGitHub" + }, + "src/media/cdm/api": { + "args": { + "hash": "sha256-3JBBcBg2ep/7LnvMHBWnqAFG+etETArFXZr4Klv30T4=", + "rev": "852a81f0ae3ab350041d2e44d207a42fb0436ae1", + "url": "https://chromium.googlesource.com/chromium/cdm.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/net/third_party/quiche/src": { + "args": { + "hash": "sha256-UYyBMjv6ATIwBXYngGof85pBCHXb/jYXetVo0oBrHf8=", + "rev": "3b42119c3e4be5d4720c3c1b384106fa43e9b5e3", + "url": "https://quiche.googlesource.com/quiche.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/testing/libfuzzer/fuzzers/wasm_corpus": { + "args": { + "hash": "sha256-gItDOfNqm1tHlmelz3l2GGdiKi9adu1EpPP6U7+8EQY=", + "rev": "1df5e50a45db9518a56ebb42cb020a94a090258b", + "url": "https://chromium.googlesource.com/v8/fuzzer_wasm_corpus.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/accessibility_test_framework/src": { + "args": { + "hash": "sha256-mzVgoxxBWebesG6okyMxxmO6oH+TITA4o9ucHHMMzkQ=", + "rev": "4a764c690353ea136c82f1a696a70bf38d1ef5fe", + "url": "https://chromium.googlesource.com/external/github.com/google/Accessibility-Test-Framework-for-Android.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/angle": { + "args": { + "hash": "sha256-jGnuunyWvu43LLpejJTcoSlhCukhv8pX2OAQ7n1adcU=", + "rev": "d1fb74c940fef262809f4a513039b70e94c91440", + "url": "https://chromium.googlesource.com/angle/angle.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/angle/third_party/VK-GL-CTS/src": { + "args": { + "hash": "sha256-EFhi4dELfyq6FcB+YFlzKfoXz44i5ieFK1KUlFzqE1I=", + "rev": "c9d2e24d1a6da00165a0b5908ea4ba05c2e5f0b2", + "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/angle/third_party/glmark2/src": { + "args": { + "hash": "sha256-VebUALLFKwEa4+oE+jF8mBSzhJd6aflphPmcK1Em8bw=", + "rev": "6edcf02205fd1e8979dc3f3964257a81959b80c8", + "url": "https://chromium.googlesource.com/external/github.com/glmark2/glmark2" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/angle/third_party/rapidjson/src": { + "args": { + "hash": "sha256-btUl1a/B0sXwf/+hyvCvVJjWqIkXfVYCpHm3TeBuOxk=", + "rev": "781a4e667d84aeedbeb8184b7b62425ea66ec59f", + "url": "https://chromium.googlesource.com/external/github.com/Tencent/rapidjson" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/anonymous_tokens/src": { + "args": { + "hash": "sha256-GaRtZmYqajLUpt7ToRfMLBlyMiJB5yT9BaaT9pHH7OM=", + "rev": "d708a2602a5947ee068f784daa1594a673d47c4a", + "url": "https://chromium.googlesource.com/external/github.com/google/anonymous-tokens.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/boringssl/src": { + "args": { + "hash": "sha256-+Gs+efB1ZizjMYRSRTQrMDPZsDC+dgNJ9+yHXkzm/ZM=", + "rev": "9295969e1dad2c31d0d99481734c1c68dcbc6403", + "url": "https://boringssl.googlesource.com/boringssl.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/breakpad/breakpad": { + "args": { + "hash": "sha256-+Z7KphmQYCeN0aJkqyMrJ4tIi3BhqN16KoPNLb/bMGo=", + "rev": "2625edb085169e92cf036c236ac79ab594a7b1cc", + "url": "https://chromium.googlesource.com/breakpad/breakpad.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/cast_core/public/src": { + "args": { + "hash": "sha256-yQxm1GMMne80bLl1P7OAN3bJLz1qRNAvou2/5MKp2ig=", + "rev": "f5ee589bdaea60418f670fa176be15ccb9a34942", + "url": "https://chromium.googlesource.com/cast_core/public" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/catapult": { + "args": { + "hash": "sha256-xHe9WoAq1FElMSnu5mlEzrH+EzKiwWXeXMCH69KL5a0=", + "rev": "5477c6dfde1132b685c73edc16e1bc71449a691d", + "url": "https://chromium.googlesource.com/catapult.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/ced/src": { + "args": { + "hash": "sha256-ySG74Rj2i2c/PltEgHVEDq+N8yd9gZmxNktc56zIUiY=", + "rev": "ba412eaaacd3186085babcd901679a48863c7dd5", + "url": "https://chromium.googlesource.com/external/github.com/google/compact_enc_det.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/clang-format/script": { + "args": { + "hash": "sha256-d9uweklBffiuCWEb03ti1eFLnMac2qRtvggzXY1n/RU=", + "rev": "37f6e68a107df43b7d7e044fd36a13cbae3413f2", + "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/clang/tools/clang-format.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/cld_3/src": { + "args": { + "hash": "sha256-C3MOMBUy9jgkT9BAi/Fgm2UH4cxRuwSBEcRl3hzM2Ss=", + "rev": "b48dc46512566f5a2d41118c8c1116c4f96dc661", + "url": "https://chromium.googlesource.com/external/github.com/google/cld_3.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/colorama/src": { + "args": { + "hash": "sha256-6ZTdPYSHdQOLYMSnE+Tp7PgsVTs3U2awGu9Qb4Rg/tk=", + "rev": "3de9f013df4b470069d03d250224062e8cf15c49", + "url": "https://chromium.googlesource.com/external/colorama.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/compiler-rt/src": { + "args": { + "hash": "sha256-FVdcKGwRuno3AzS6FUvI8OTj3mBMRfFR2A8GzYcwIU4=", + "rev": "57196dd146582915c955f6d388e31aea93220c51", + "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/compiler-rt.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/content_analysis_sdk/src": { + "args": { + "hash": "sha256-f5Jmk1MiGjaRdLun+v/GKVl8Yv9hOZMTQUSxgiJalcY=", + "rev": "9a408736204513e0e95dd2ab3c08de0d95963efc", + "url": "https://chromium.googlesource.com/external/github.com/chromium/content_analysis_sdk.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/cpu_features/src": { + "args": { + "hash": "sha256-E8LoVzhe+TAmARWZTSuINlsVhzpUJMxPPCGe/dHZcyA=", + "rev": "936b9ab5515dead115606559502e3864958f7f6e", + "url": "https://chromium.googlesource.com/external/github.com/google/cpu_features.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/cpuinfo/src": { + "args": { + "hash": "sha256-uochXC0AtOw8N/ycyVJdiRw4pibCW2ENrFMT3jtxDSg=", + "rev": "39ea79a3c132f4e678695c579ea9353d2bd29968", + "url": "https://chromium.googlesource.com/external/github.com/pytorch/cpuinfo.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/crabbyavif/src": { + "args": { + "hash": "sha256-IxtMAqN3O/s1GrVKzcge9cQ+DVtJtFvHYvsfjmflwVQ=", + "rev": "eb883022a5886739f07f0241f918e2be97d65ff0", + "url": "https://chromium.googlesource.com/external/github.com/webmproject/CrabbyAvif.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/crc32c/src": { + "args": { + "hash": "sha256-KBraGaO5LmmPP+p8RuDogGldbTWdNDK+WzF4Q09keuE=", + "rev": "d3d60ac6e0f16780bcfcc825385e1d338801a558", + "url": "https://chromium.googlesource.com/external/github.com/google/crc32c.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/cros-components/src": { + "args": { + "hash": "sha256-CT9c4LqTwhldsxoEny8MesULwQC4k95F4tfCtRZErGM=", + "rev": "97dc8c7a1df880206cc54d9913a7e9d73677072a", + "url": "https://chromium.googlesource.com/external/google3/cros_components.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/cros_system_api": { + "args": { + "hash": "sha256-WlSxI1J+HjAD2UaQjW3oOQpZDnMn/ROpTLYTP4efTi4=", + "rev": "fe88d943e5f328b34e38b91296db39650f6ec6f3", + "url": "https://chromium.googlesource.com/chromiumos/platform2/system_api.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/crossbench": { + "args": { + "hash": "sha256-YomhvLtDFkGWyivN81gRxtOh9U32Zt6+/obTwccJuRo=", + "rev": "feff46a3cd49eb39667205cdfa2b490bcffc9ba1", + "url": "https://chromium.googlesource.com/crossbench.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/dav1d/libdav1d": { + "args": { + "hash": "sha256-+DY4p41VuAlx7NvOfXjWzgEhvtpebjkjbFwSYOzSjv4=", + "rev": "8d956180934f16244bdb58b39175824775125e55", + "url": "https://chromium.googlesource.com/external/github.com/videolan/dav1d.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/dawn": { + "args": { + "hash": "sha256-N9DVbQE56WWBmJ/PJlYhU+pr8I+PFf/7FzMLCNqx3hg=", + "rev": "86772f20cca54b46f62b65ece1ef61224aef09db", + "url": "https://dawn.googlesource.com/dawn.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/dawn/third_party/dxc": { + "args": { + "hash": "sha256-0LfNcR1FXy5GcL2yHHA6A7EJIWtZU1U/2xSq/eysUa0=", + "rev": "d72e2b1a15d22fc825e2f3c939f1baac43281ae9", + "url": "https://chromium.googlesource.com/external/github.com/microsoft/DirectXShaderCompiler" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/dawn/third_party/dxheaders": { + "args": { + "hash": "sha256-0Miw1Cy/jmOo7bLFBOHuTRDV04cSeyvUEyPkpVsX9DA=", + "rev": "980971e835876dc0cde415e8f9bc646e64667bf7", + "url": "https://chromium.googlesource.com/external/github.com/microsoft/DirectX-Headers" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/dawn/third_party/glfw": { + "args": { + "hash": "sha256-E1zXIDiw87badrLOZTvV+Wh9NZHu51nb70ZK9vlAlqE=", + "rev": "b35641f4a3c62aa86a0b3c983d163bc0fe36026d", + "url": "https://chromium.googlesource.com/external/github.com/glfw/glfw" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/dawn/third_party/khronos/EGL-Registry": { + "args": { + "hash": "sha256-Z6DwLfgQ1wsJXz0KKJyVieOatnDmx3cs0qJ6IEgSq1A=", + "rev": "7dea2ed79187cd13f76183c4b9100159b9e3e071", + "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/EGL-Registry" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/dawn/third_party/khronos/OpenGL-Registry": { + "args": { + "hash": "sha256-K3PcRIiD3AmnbiSm5TwaLs4Gu9hxaN8Y91WMKK8pOXE=", + "rev": "5bae8738b23d06968e7c3a41308568120943ae77", + "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/OpenGL-Registry" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/dawn/third_party/webgpu-cts": { + "args": { + "hash": "sha256-eMDb0nG9HDiesd8KPajbMej8JTll4JkIf17KMnKvW1s=", + "rev": "905c7cbfeaac1cf3feb4c6056dd6f3dbaa06b074", + "url": "https://chromium.googlesource.com/external/github.com/gpuweb/cts" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/dawn/third_party/webgpu-headers/src": { + "args": { + "hash": "sha256-+Kf4yPBhM6y2kYTZud9vCavT/BBOzDBsph5+/bUuwkM=", + "rev": "60cd9020309b87a30cd7240aad32accd24262a5e", + "url": "https://chromium.googlesource.com/external/github.com/webgpu-native/webgpu-headers" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/depot_tools": { + "args": { + "hash": "sha256-1avxBlK0WLHTru5wUecbiGpSEYv8Epobsl4EfCaWX9A=", + "rev": "a8900cc0f023d6a662eb66b317e8ddceeb113490", + "url": "https://chromium.googlesource.com/chromium/tools/depot_tools.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/devtools-frontend/src": { + "args": { + "hash": "sha256-7ygnGBAeiLxwbTx5s7LRs9+ZOe06tr8VFcSY5cVHnS4=", + "rev": "f8dfe8b36e516cef8a5a169e88d16480d8abdc68", + "url": "https://chromium.googlesource.com/devtools/devtools-frontend" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/dom_distiller_js/dist": { + "args": { + "hash": "sha256-yuEBD2XQlV3FGI/i7lTmJbCqzeBiuG1Qow8wvsppGJw=", + "rev": "199de96b345ada7c6e7e6ba3d2fa7a6911b8767d", + "url": "https://chromium.googlesource.com/chromium/dom-distiller/dist.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/domato/src": { + "args": { + "hash": "sha256-fYxoA0fxKe9U23j+Jp0MWj4m7RfsRpM0XjF6/yOhX1I=", + "rev": "053714bccbda79cf76dac3fee48ab2b27f21925e", + "url": "https://chromium.googlesource.com/external/github.com/googleprojectzero/domato.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/dragonbox/src": { + "args": { + "hash": "sha256-AOniXMPgwKpkJqivRd+GazEnhdw53FzhxKqG+GdU+cc=", + "rev": "6c7c925b571d54486b9ffae8d9d18a822801cbda", + "url": "https://chromium.googlesource.com/external/github.com/jk-jeon/dragonbox.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/eigen3/src": { + "args": { + "hash": "sha256-dWWjpQ6M7udOQqUV6P9go3R3O4J2XYpvkngJjRDY4v8=", + "rev": "ae3aba99db4c829b4cc4d9fdd54321dedd814dc4", + "url": "https://chromium.googlesource.com/external/gitlab.com/libeigen/eigen.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/electron_node": { + "args": { + "hash": "sha256-rp48HOQB13nZJUByXaL8MMkHNFp/V0qtbDZgoFBIcJY=", + "owner": "nodejs", + "repo": "node", + "tag": "v22.16.0" + }, + "fetcher": "fetchFromGitHub" + }, + "src/third_party/emoji-segmenter/src": { + "args": { + "hash": "sha256-KdQdKBBipEBRT8UmNGao6yCB4m2CU8/SrMVvcXlb5qE=", + "rev": "955936be8b391e00835257059607d7c5b72ce744", + "url": "https://chromium.googlesource.com/external/github.com/google/emoji-segmenter.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/engflow-reclient-configs": { + "args": { + "hash": "sha256-aZXYPj9KYBiZnljqOLlWJWS396Fg3EhjiQLZmkwCBsY=", + "owner": "EngFlow", + "repo": "reclient-configs", + "rev": "955335c30a752e9ef7bff375baab5e0819b6c00d" + }, + "fetcher": "fetchFromGitHub" + }, + "src/third_party/expat/src": { + "args": { + "hash": "sha256-qe8O7otL6YcDDBx2DS/+c5mWIS8Rf8RQXVtLFMIAeyk=", + "rev": "69d6c054c1bd5258c2a13405a7f5628c72c177c2", + "url": "https://chromium.googlesource.com/external/github.com/libexpat/libexpat.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/farmhash/src": { + "args": { + "hash": "sha256-5n58VEUxa/K//jAfZqG4cXyfxrp50ogWDNYcgiXVHdc=", + "rev": "816a4ae622e964763ca0862d9dbd19324a1eaf45", + "url": "https://chromium.googlesource.com/external/github.com/google/farmhash.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/fast_float/src": { + "args": { + "hash": "sha256-CG5je117WYyemTe5PTqznDP0bvY5TeXn8Vu1Xh5yUzQ=", + "rev": "cb1d42aaa1e14b09e1452cfdef373d051b8c02a4", + "url": "https://chromium.googlesource.com/external/github.com/fastfloat/fast_float.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/ffmpeg": { + "args": { + "hash": "sha256-noc3iZ1yCEgkwWyznx48rXC8JuKxla9QgC/CIjRL/y8=", + "rev": "dcdd0fa51b65a0b1688ff6b8f0cc81908f09ded2", + "url": "https://chromium.googlesource.com/chromium/third_party/ffmpeg.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/flac": { + "args": { + "hash": "sha256-gvTFPNOlBfozptaH7lTb9iD/09AmpdT3kCl9ClszjEs=", + "rev": "689da3a7ed50af7448c3f1961d1791c7c1d9c85c", + "url": "https://chromium.googlesource.com/chromium/deps/flac.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/flatbuffers/src": { + "args": { + "hash": "sha256-tbc45o0MbMvK5XqRUJt5Eg8BU6+TJqlmwFgQhHq6wRM=", + "rev": "8db59321d9f02cdffa30126654059c7d02f70c32", + "url": "https://chromium.googlesource.com/external/github.com/google/flatbuffers.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/fontconfig/src": { + "args": { + "hash": "sha256-Kz7KY+evfOciKFHIBLG1JxIRgHRTzuBLgxXHv3m/Y1Y=", + "rev": "8cf0ce700a8abe0d97ace4bf7efc7f9534b729ba", + "url": "https://chromium.googlesource.com/external/fontconfig.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/fp16/src": { + "args": { + "hash": "sha256-m2d9bqZoGWzuUPGkd29MsrdscnJRtuIkLIMp3fMmtRY=", + "rev": "0a92994d729ff76a58f692d3028ca1b64b145d91", + "url": "https://chromium.googlesource.com/external/github.com/Maratyszcza/FP16.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/freetype-testing/src": { + "args": { + "hash": "sha256-cpzz5QDeAT3UgAZzwW7c0SgLDQsBwy/1Q+5hz2XW4lE=", + "rev": "04fa94191645af39750f5eff0a66c49c5cb2c2cc", + "url": "https://chromium.googlesource.com/external/github.com/freetype/freetype2-testing.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/freetype/src": { + "args": { + "hash": "sha256-j5FPldhIOzsOsFBAMyNh44FTeOD8Gm3scoi3B3hhgKQ=", + "rev": "738905b34bd1f5a8ff51bd2bc8e38a2d8be9bfd6", + "url": "https://chromium.googlesource.com/chromium/src/third_party/freetype2.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/fuzztest/src": { + "args": { + "hash": "sha256-MHli8sadgC3OMesBGhkjPM/yW49KFOtdFuBII1bcFas=", + "rev": "f03aafb7516050ea73f617bf969f03eac641aefc", + "url": "https://chromium.googlesource.com/external/github.com/google/fuzztest.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/fxdiv/src": { + "args": { + "hash": "sha256-LjX5kivfHbqCIA5pF9qUvswG1gjOFo3CMpX0VR+Cn38=", + "rev": "63058eff77e11aa15bf531df5dd34395ec3017c8", + "url": "https://chromium.googlesource.com/external/github.com/Maratyszcza/FXdiv.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/gemmlowp/src": { + "args": { + "hash": "sha256-O5wD8wxgis0qYMaY+xZ21GBDVQFphMRvInCOswS6inA=", + "rev": "13d57703abca3005d97b19df1f2db731607a7dc2", + "url": "https://chromium.googlesource.com/external/github.com/google/gemmlowp.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/glslang/src": { + "args": { + "hash": "sha256-0PocroQj02mdpmFVXr6XB7mVVNzQOaBXm/2GNacZLF0=", + "rev": "93231001597dad1149a5d035af30eda50b9e6b6c", + "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/google_benchmark/src": { + "args": { + "hash": "sha256-cH8s1gP6kCcojAAfTt5iQCVqiAaSooNk4BdaILujM3w=", + "rev": "761305ec3b33abf30e08d50eb829e19a802581cc", + "url": "https://chromium.googlesource.com/external/github.com/google/benchmark.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/googletest/src": { + "args": { + "hash": "sha256-md/jPkFrs/0p0BYGyquh57Zxh+1dKaK26PDtUN1+Ce0=", + "rev": "09ffd0015395354774c059a17d9f5bee36177ff9", + "url": "https://chromium.googlesource.com/external/github.com/google/googletest.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/harfbuzz-ng/src": { + "args": { + "hash": "sha256-lNnCtgIegUy4DLhYaGZXcEaFw83KWAHoKpz69AEsWp4=", + "rev": "9f83bbbe64654b45ba5bb06927ff36c2e7588495", + "url": "https://chromium.googlesource.com/external/github.com/harfbuzz/harfbuzz.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/highway/src": { + "args": { + "hash": "sha256-IS7m1wBwpPBUNhx2GttY1fzvmLIeAp3o2gXfrFpRdvY=", + "rev": "00fe003dac355b979f36157f9407c7c46448958e", + "url": "https://chromium.googlesource.com/external/github.com/google/highway.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/hunspell_dictionaries": { + "args": { + "hash": "sha256-67mvpJRFFa9eMfyqFMURlbxOaTJBICnk+gl0b0mEHl8=", + "rev": "41cdffd71c9948f63c7ad36e1fb0ff519aa7a37e", + "url": "https://chromium.googlesource.com/chromium/deps/hunspell_dictionaries.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/icu": { + "args": { + "hash": "sha256-/T7uyzwTCDaamLwSvutvbn6BJuoG1RqeR+xhXI5jmJw=", + "rev": "b929596baebf0ab4ac7ec07f38365db4c50a559d", + "url": "https://chromium.googlesource.com/chromium/deps/icu.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/ink/src": { + "args": { + "hash": "sha256-MqJXwtUGL/IakwOO63JX4gx0gTocgQT3hbhw6OcYUbc=", + "rev": "da9cb551ada1e55309b0ac89b9fbff2d29dbfe1e", + "url": "https://chromium.googlesource.com/external/github.com/google/ink.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/ink_stroke_modeler/src": { + "args": { + "hash": "sha256-jnIljheEBq96e6zZO87bhVJbA1vIjiRzm1Hh6YMBdnU=", + "rev": "03db1ed37b8b10b47d62ed0fa142d198a3861689", + "url": "https://chromium.googlesource.com/external/github.com/google/ink-stroke-modeler.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/instrumented_libs": { + "args": { + "hash": "sha256-8kokdsnn5jD9KgM/6g0NuITBbKkGXWEM4BMr1nCrfdU=", + "rev": "69015643b3f68dbd438c010439c59adc52cac808", + "url": "https://chromium.googlesource.com/chromium/third_party/instrumented_libraries.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/jetstream/main": { + "args": { + "hash": "sha256-mE6IoHpLV0LUWEeeiWycXtOhIbhkPvVdLvsPSyv4xPk=", + "rev": "539ab943598b505832a25a2222aa8957f1a20d6f", + "url": "https://chromium.googlesource.com/external/github.com/WebKit/JetStream.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/jetstream/v2.2": { + "args": { + "hash": "sha256-zucA2tqNOsvjhwYQKZ5bFUC73ZF/Fu7KpBflSelvixw=", + "rev": "2145cedef4ca2777b792cb0059d3400ee2a6153c", + "url": "https://chromium.googlesource.com/external/github.com/WebKit/JetStream.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/jsoncpp/source": { + "args": { + "hash": "sha256-bSLNcoYBz3QCt5VuTR056V9mU2PmBuYBa0W6hFg2m8Q=", + "rev": "42e892d96e47b1f6e29844cc705e148ec4856448", + "url": "https://chromium.googlesource.com/external/github.com/open-source-parsers/jsoncpp.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/leveldatabase/src": { + "args": { + "hash": "sha256-ANtMVRZmW6iOjDVn2y15ak2fTagFTTaz1Se6flUHL8w=", + "rev": "4ee78d7ea98330f7d7599c42576ca99e3c6ff9c5", + "url": "https://chromium.googlesource.com/external/leveldb.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/libFuzzer/src": { + "args": { + "hash": "sha256-Lb+HczYax0T7qvC0/Nwhc5l2szQTUYDouWRMD/Qz7sA=", + "rev": "e31b99917861f891308269c36a32363b120126bb", + "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/compiler-rt/lib/fuzzer.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/libaddressinput/src": { + "args": { + "hash": "sha256-6h4/DQUBoBtuGfbaTL5Te1Z+24qjTaBuIydcTV18j80=", + "rev": "2610f7b1043d6784ada41392fc9392d1ea09ea07", + "url": "https://chromium.googlesource.com/external/libaddressinput.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/libaom/source/libaom": { + "args": { + "hash": "sha256-pyLKjLG83Jlx6I+0M8Ah94ku4NIFcrHNYswfVHMvdrc=", + "rev": "2cca4aba034f99842c2e6cdc173f83801d289764", + "url": "https://aomedia.googlesource.com/aom.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/libc++/src": { + "args": { + "hash": "sha256-36ulJk/YTfP5k1sDeA/WQyIO8xaplRKK4cQhfTZdpko=", + "rev": "a01c02c9d4acbdae3b7e8a2f3ee58579a9c29f96", + "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/libc++abi/src": { + "args": { + "hash": "sha256-DkCvfFjMztFTzKf081XyiefW6tMBSZ1AdzcPzXAVPnk=", + "rev": "9810fb23f6ba666f017c2b67c67de2bcac2b44bd", + "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/libdrm/src": { + "args": { + "hash": "sha256-woSYEDUfcEBpYOYnli13wLMt754A7KnUbmTEcFQdFGw=", + "rev": "ad78bb591d02162d3b90890aa4d0a238b2a37cde", + "url": "https://chromium.googlesource.com/chromiumos/third_party/libdrm.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/libgav1/src": { + "args": { + "hash": "sha256-BgTfWmbcMvJB1KewJpRcMtbOd2FVuJ+fi1zAXBXfkrg=", + "rev": "c05bf9be660cf170d7c26bd06bb42b3322180e58", + "url": "https://chromium.googlesource.com/codecs/libgav1.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/libipp/libipp": { + "args": { + "hash": "sha256-gxU92lHLd6uxO8T3QWhZIK0hGy97cki705DV0VimCPY=", + "rev": "2209bb84a8e122dab7c02fe66cc61a7b42873d7f", + "url": "https://chromium.googlesource.com/chromiumos/platform2/libipp.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/libjpeg_turbo": { + "args": { + "hash": "sha256-Ig+tmprZDvlf/M72/DTar2pbxat9ZElgSqdXdoM0lPs=", + "rev": "e14cbfaa85529d47f9f55b0f104a579c1061f9ad", + "url": "https://chromium.googlesource.com/chromium/deps/libjpeg_turbo.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/liblouis/src": { + "args": { + "hash": "sha256-EI/uaHXe0NlqdEw764q0SjerThYEVLRogUlmrsZwXnY=", + "rev": "9700847afb92cb35969bdfcbbfbbb74b9c7b3376", + "url": "https://chromium.googlesource.com/external/liblouis-github.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/libphonenumber/dist": { + "args": { + "hash": "sha256-ZbuDrZEUVp/ekjUP8WO/FsjAomRjeDBptT4nQZvTVi4=", + "rev": "9d46308f313f2bf8dbce1dfd4f364633ca869ca7", + "url": "https://chromium.googlesource.com/external/libphonenumber.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/libprotobuf-mutator/src": { + "args": { + "hash": "sha256-EaEC6R7SzqLw4QjEcWXFXhZc84lNBp6RSa9izjGnWKE=", + "rev": "7bf98f78a30b067e22420ff699348f084f802e12", + "url": "https://chromium.googlesource.com/external/github.com/google/libprotobuf-mutator.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/libsrtp": { + "args": { + "hash": "sha256-bkG1+ss+1a2rCHGwZjhvf5UaNVbPPZJt9HZSIPBKGwM=", + "rev": "a52756acb1c5e133089c798736dd171567df11f5", + "url": "https://chromium.googlesource.com/chromium/deps/libsrtp.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/libsync/src": { + "args": { + "hash": "sha256-Mkl6C1LxF3RYLwYbxiSfoQPt8QKFwQWj/Ati2sNJ32E=", + "rev": "f4f4387b6bf2387efbcfd1453af4892e8982faf6", + "url": "https://chromium.googlesource.com/aosp/platform/system/core/libsync.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/libunwind/src": { + "args": { + "hash": "sha256-O1S3ijnoVrTHmZDGmgQQe0MVGsSZL7usXAPflGFmMXY=", + "rev": "8575f4ae4fcf8892938bd9766cf1a5c90a0ed04e", + "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/libva-fake-driver/src": { + "args": { + "hash": "sha256-em/8rNqwv6szlxyji7mnYr3nObSW/x3OzEEnkiLuqpI=", + "rev": "a9bcab9cd6b15d4e3634ca44d5e5f7652c612194", + "url": "https://chromium.googlesource.com/chromiumos/platform/libva-fake-driver.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/libvpx/source/libvpx": { + "args": { + "hash": "sha256-SFdYF8vnwNHQbZ1N/ZHr4kxfi9o+BAtuqbak80m9uP4=", + "rev": "b84ca9b63730e7d4563573a56a66317eb0087ebf", + "url": "https://chromium.googlesource.com/webm/libvpx.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/libwebm/source": { + "args": { + "hash": "sha256-tfji0yPV7v/DETViEp2T7AO6P5xCjPYScTlV3eWFV0w=", + "rev": "c4522d6cd68582d66f1adfd24debfa9bee202afa", + "url": "https://chromium.googlesource.com/webm/libwebm.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/libwebp/src": { + "args": { + "hash": "sha256-0sKGhXr6Rrpq0eoitAdLQ4l4fgNOzMWIEICrPyzwNz4=", + "rev": "2af6c034ac871c967e04c8c9f8bf2dbc2e271b18", + "url": "https://chromium.googlesource.com/webm/libwebp.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/libyuv": { + "args": { + "hash": "sha256-J9Wi3aCc6OjtQCP8JnrY7PYrY587dKLaa1KGAMWmE0c=", + "rev": "61bdaee13a701d2b52c6dc943ccc5c888077a591", + "url": "https://chromium.googlesource.com/libyuv/libyuv.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/llvm-libc/src": { + "args": { + "hash": "sha256-BsoHIvdqgYzBUkd23++enEHIhq5GeVWrWdVdhXrHh9A=", + "rev": "9c3ae3120fe83b998d0498dcc9ad3a56c29fad0c", + "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libc.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/lss": { + "args": { + "hash": "sha256-rhp4EcZYdgSfu9cqn+zxxGx6v2IW8uX8V+iA0UfZhFY=", + "rev": "ed31caa60f20a4f6569883b2d752ef7522de51e0", + "url": "https://chromium.googlesource.com/linux-syscall-support.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/material_color_utilities/src": { + "args": { + "hash": "sha256-Y85XU+z9W6tvmDNHJ/dXQnUKXvvDkO3nH/kUJRLqbc4=", + "rev": "13434b50dcb64a482cc91191f8cf6151d90f5465", + "url": "https://chromium.googlesource.com/external/github.com/material-foundation/material-color-utilities.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/minigbm/src": { + "args": { + "hash": "sha256-9HwvjTETerbQ7YKXH9kUB2eWa8PxGWMAJfx1jAluhrs=", + "rev": "3018207f4d89395cc271278fb9a6558b660885f5", + "url": "https://chromium.googlesource.com/chromiumos/platform/minigbm.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/nan": { + "args": { + "hash": "sha256-cwti+BWmF/l/dqa/cN0C587EK4WwRWcWy6gjFVkaMTg=", + "owner": "nodejs", + "repo": "nan", + "rev": "e14bdcd1f72d62bca1d541b66da43130384ec213" + }, + "fetcher": "fetchFromGitHub" + }, + "src/third_party/nasm": { + "args": { + "hash": "sha256-neYrS4kQ76ihUh22Q3uPR67Ld8+yerA922YSZU1KxJs=", + "rev": "9f916e90e6fc34ec302573f6ce147e43e33d68ca", + "url": "https://chromium.googlesource.com/chromium/deps/nasm.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/nearby/src": { + "args": { + "hash": "sha256-qFLs3gMV0v6c0gjyn29D6pRxSAKumpzAWVgHabPFWRw=", + "rev": "959322177f40f2e0f1ecacd8a1aea2805e67b62b", + "url": "https://chromium.googlesource.com/external/github.com/google/nearby-connections.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/neon_2_sse/src": { + "args": { + "hash": "sha256-AkDAHOPO5NdXXk0hETS5D67mzw0RVXwPDDKqM0XXo5g=", + "rev": "eb8b80b28f956275e291ea04a7beb5ed8289e872", + "url": "https://chromium.googlesource.com/external/github.com/intel/ARM_NEON_2_x86_SSE.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/openh264/src": { + "args": { + "hash": "sha256-tf0lnxATCkoq+xRti6gK6J47HwioAYWnpEsLGSA5Xdg=", + "rev": "652bdb7719f30b52b08e506645a7322ff1b2cc6f", + "url": "https://chromium.googlesource.com/external/github.com/cisco/openh264" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/openscreen/src": { + "args": { + "hash": "sha256-YlcvSDSCHHqDA43+hd5hpajZrIGqpn3KxhMJD8Wf+rs=", + "rev": "8cc5a0e8f6695263d44206cf5930641979cb3179", + "url": "https://chromium.googlesource.com/openscreen" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/openscreen/src/buildtools": { + "args": { + "hash": "sha256-WnbgaCzZ/BJli6M60kP9e4mVPFDx0yu3eCac5wmQ7iM=", + "rev": "077a66f30fcf281b066fafb6dfc60818c238efb6", + "url": "https://chromium.googlesource.com/chromium/src/buildtools" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/openscreen/src/third_party/tinycbor/src": { + "args": { + "hash": "sha256-fMKBFUSKmODQyg4hKIa1hwnEKIV6WBbY1Gb8DOSnaHA=", + "rev": "d393c16f3eb30d0c47e6f9d92db62272f0ec4dc7", + "url": "https://chromium.googlesource.com/external/github.com/intel/tinycbor.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/ots/src": { + "args": { + "hash": "sha256-kiUXrXsaGOzPkKh0dVmU1I13WHt0Stzj7QLMqHN9FbU=", + "rev": "46bea9879127d0ff1c6601b078e2ce98e83fcd33", + "url": "https://chromium.googlesource.com/external/github.com/khaledhosny/ots.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/pdfium": { + "args": { + "hash": "sha256-FF0iXahVfqbi4OOdH9PPgCTAIQT/q0nlT/H70pubCMQ=", + "rev": "cf433ae5520d061db56391155b59b34e67484f39", + "url": "https://pdfium.googlesource.com/pdfium.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/perfetto": { + "args": { + "hash": "sha256-kzVsti2tygOMgT61TmCz26AByMd3gIXA6xz8RE0iCz4=", + "rev": "dd35b295cd359ba094404218414955f961a0d6ae", + "url": "https://chromium.googlesource.com/external/github.com/google/perfetto.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/protobuf-javascript/src": { + "args": { + "hash": "sha256-c/aC+LZQtedL5oouUXw2eTF6xD7LN3J3C0q3D0wl+W0=", + "rev": "28bf5df73ef2f345a936d9cc95d64ba8ed426a53", + "url": "https://chromium.googlesource.com/external/github.com/protocolbuffers/protobuf-javascript" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/pthreadpool/src": { + "args": { + "hash": "sha256-qogacGPNy6SKQaK8CZvGC8YZbVjhDTXuhDqGopB0Eps=", + "rev": "dcc9f28589066af0dbd4555579281230abbf74dd", + "url": "https://chromium.googlesource.com/external/github.com/google/pthreadpool.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/pyelftools": { + "args": { + "hash": "sha256-I/7p3IEvfP/gkes4kx18PvWwhAKilQKb67GXoW4zFB4=", + "rev": "19b3e610c86fcadb837d252c794cb5e8008826ae", + "url": "https://chromium.googlesource.com/chromiumos/third_party/pyelftools.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/pywebsocket3/src": { + "args": { + "hash": "sha256-WEqqu2/7fLqcf/2/IcD7/FewRSZ6jTgVlVBvnihthYQ=", + "rev": "50602a14f1b6da17e0b619833a13addc6ea78bc2", + "url": "https://chromium.googlesource.com/external/github.com/GoogleChromeLabs/pywebsocket3.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/quic_trace/src": { + "args": { + "hash": "sha256-vbXqddDgwqetU0bDYn3qo7OBqT5eG926/MbA1hKkCT0=", + "rev": "ed3deb8a056b260c59f2fd42af6dfa3db48a8cad", + "url": "https://chromium.googlesource.com/external/github.com/google/quic-trace.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/re2/src": { + "args": { + "hash": "sha256-f/k2rloV2Nwb0KuJGUX4SijFxAx69EXcsXOG4vo+Kis=", + "rev": "c84a140c93352cdabbfb547c531be34515b12228", + "url": "https://chromium.googlesource.com/external/github.com/google/re2.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/ruy/src": { + "args": { + "hash": "sha256-O3JEtXchCdIHdGvjD6kGMJzj7TWVczQCW2YUHK3cABA=", + "rev": "83fd40d730feb0804fafbc2d8814bcc19a17b2e5", + "url": "https://chromium.googlesource.com/external/github.com/google/ruy.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/search_engines_data/resources": { + "args": { + "hash": "sha256-x7zGPqha12Og/AjQp1mkO0MNydM4xXvIcaapNziW0Kw=", + "rev": "09fd22f3a4fb77ab03b7734e0c03ff7d7f97ef88", + "url": "https://chromium.googlesource.com/external/search_engines_data.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/securemessage/src": { + "args": { + "hash": "sha256-GS4ccnuiqxMs/LVYAtvSlVAYFp4a5GoZsxcriTX3k78=", + "rev": "fa07beb12babc3b25e0c5b1f38c16aa8cb6b8f84", + "url": "https://chromium.googlesource.com/external/github.com/google/securemessage.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/skia": { + "args": { + "hash": "sha256-k0vE2K9KfeYsTVZchvKEA8M7GJQcekbuO5wHJeycBZo=", + "rev": "a46d5732d9fca93eaec23e502e2eef814b707e6b", + "url": "https://skia.googlesource.com/skia.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/smhasher/src": { + "args": { + "hash": "sha256-OgZQwkQcVgRMf62ROGuY+3zQhBoWuUSP4naTmSKdq8s=", + "rev": "0ff96f7835817a27d0487325b6c16033e2992eb5", + "url": "https://chromium.googlesource.com/external/smhasher.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/snappy/src": { + "args": { + "hash": "sha256-jUwnjbaqXz7fgI2TPRK7SlUPQUVzcpjp4ZlFbEzwA+o=", + "rev": "32ded457c0b1fe78ceb8397632c416568d6714a0", + "url": "https://chromium.googlesource.com/external/github.com/google/snappy.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/speedometer/main": { + "args": { + "hash": "sha256-1/G06WCO5ssBS3+T6E3rnGdIf0r205wVxfJX7lgivR4=", + "rev": "dd661c033abdde11022779f40375c52632a9f43a", + "url": "https://chromium.googlesource.com/external/github.com/WebKit/Speedometer.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/speedometer/v2.0": { + "args": { + "hash": "sha256-p7WUS8gZUaS+LOm7pNmRkwgxjx+V8R6yy7bbaEHaIs4=", + "rev": "732af0dfe867f8815e662ac637357e55f285dbbb", + "url": "https://chromium.googlesource.com/external/github.com/WebKit/Speedometer.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/speedometer/v2.1": { + "args": { + "hash": "sha256-0z5tZlz32fYh9I1ALqfLm2WWO8HiRBwt0hcmgKQhaeM=", + "rev": "8bf7946e39e47c875c00767177197aea5727e84a", + "url": "https://chromium.googlesource.com/external/github.com/WebKit/Speedometer.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/speedometer/v3.0": { + "args": { + "hash": "sha256-qMQ4naX+4uUu3vtzzinjkhxX9/dNoTwj6vWCu4FdQmU=", + "rev": "8d67f28d0281ac4330f283495b7f48286654ad7d", + "url": "https://chromium.googlesource.com/external/github.com/WebKit/Speedometer.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/speedometer/v3.1": { + "args": { + "hash": "sha256-G89mrrgRaANT1vqzhKPQKemHbz56YwR+oku7rlRoCHw=", + "rev": "1386415be8fef2f6b6bbdbe1828872471c5d802a", + "url": "https://chromium.googlesource.com/external/github.com/WebKit/Speedometer.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/spirv-cross/src": { + "args": { + "hash": "sha256-H43M9DXfEuyKuvo6rjb5k0KEbYOSFodbPJh8ZKY4PQg=", + "rev": "b8fcf307f1f347089e3c46eb4451d27f32ebc8d3", + "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Cross" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/spirv-headers/src": { + "args": { + "hash": "sha256-/KfUxWDczLQ/0DOiFC4Z66o+gtoF/7vgvAvKyv9Z9OA=", + "rev": "c9aad99f9276817f18f72a4696239237c83cb775", + "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/spirv-tools/src": { + "args": { + "hash": "sha256-04CWBDu4Q+H7EtVTealNyGx0Hml7OjIf0FfK0IuzisY=", + "rev": "01021466b5e71deaac9054f56082566c782bfd51", + "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/sqlite/src": { + "args": { + "hash": "sha256-jqelU2bFZ4XwI5dpkusvgUobmRyYo/41ZKqbEmOdpis=", + "rev": "0a1397d274701c5d39e661e948160da2b9a8db1e", + "url": "https://chromium.googlesource.com/chromium/deps/sqlite.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/squirrel.mac": { + "args": { + "hash": "sha256-4GfKQg0u3c9GI+jl3ixESNqWXQJKRMi+00QT0s2Shqw=", + "owner": "Squirrel", + "repo": "Squirrel.Mac", + "rev": "0e5d146ba13101a1302d59ea6e6e0b3cace4ae38" + }, + "fetcher": "fetchFromGitHub" + }, + "src/third_party/squirrel.mac/vendor/Mantle": { + "args": { + "hash": "sha256-ogFkMJybf2Ue606ojXJu6Gy5aXSi1bSKm60qcTAIaPk=", + "owner": "Mantle", + "repo": "Mantle", + "rev": "78d3966b3c331292ea29ec38661b25df0a245948" + }, + "fetcher": "fetchFromGitHub" + }, + "src/third_party/squirrel.mac/vendor/ReactiveObjC": { + "args": { + "hash": "sha256-/MCqC1oFe3N9TsmfVLgl+deR6qHU6ZFQQjudb9zB5Mo=", + "owner": "ReactiveCocoa", + "repo": "ReactiveObjC", + "rev": "74ab5baccc6f7202c8ac69a8d1e152c29dc1ea76" + }, + "fetcher": "fetchFromGitHub" + }, + "src/third_party/swiftshader": { + "args": { + "hash": "sha256-Fd6T9zFJVPJaF2sbBy+uK0Ia0C6AIZsDbNvPSkbuTJM=", + "rev": "a8133cbb3c8969e3c1e6b3cea2c02ec8312ef9ca", + "url": "https://swiftshader.googlesource.com/SwiftShader.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/text-fragments-polyfill/src": { + "args": { + "hash": "sha256-4rW2u1cQAF4iPWHAt1FvVXIpz2pmI901rEPks/w/iFA=", + "rev": "c036420683f672d685e27415de0a5f5e85bdc23f", + "url": "https://chromium.googlesource.com/external/github.com/GoogleChromeLabs/text-fragments-polyfill.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/tflite/src": { + "args": { + "hash": "sha256-qpwF2+/dw1u24O5+4bW74R43AgGN//NZwzEmlkyHlr0=", + "rev": "151774faba661a5985a8264653f4457c70a56dea", + "url": "https://chromium.googlesource.com/external/github.com/tensorflow/tensorflow.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/ukey2/src": { + "args": { + "hash": "sha256-aaLs6ZS+CdBlCJ6ZhsmdAPFxiBIij6oufsDcNeRSV1E=", + "rev": "0275885d8e6038c39b8a8ca55e75d1d4d1727f47", + "url": "https://chromium.googlesource.com/external/github.com/google/ukey2.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/vulkan-deps": { + "args": { + "hash": "sha256-kIj8sncNg6dJzg1fgORev/o164G3kMXCGHzlzb09n0U=", + "rev": "5912cbdd295c2bacb5798432a7b1cac9d20c0725", + "url": "https://chromium.googlesource.com/vulkan-deps" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/vulkan-headers/src": { + "args": { + "hash": "sha256-vB49bFCx9VVEtpwIFcxdqYT+Pk4DgjoPz4rzPfmuRps=", + "rev": "75ad707a587e1469fb53a901b9b68fe9f6fbc11f", + "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/vulkan-loader/src": { + "args": { + "hash": "sha256-D5S1xQbsJ4Ov+3u84Mxj3L/3elyW78jpKRbYo8FpD28=", + "rev": "c913466fdc5004584890f89ff91121bdb2ffd4ba", + "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/vulkan-tools/src": { + "args": { + "hash": "sha256-snLYtiXK1eBZYsc7X18/wk4TnhmkSqquWxyjmw9IF2A=", + "rev": "60b640cb931814fcc6dabe4fc61f4738c56579f6", + "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/vulkan-utility-libraries/src": { + "args": { + "hash": "sha256-2mi5gtacSDxtZB8a3oGZqgLhwntSLXlEzDq6W14RHp4=", + "rev": "49ac28931f28bffaa3cd73dc4ad997284d574962", + "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Utility-Libraries" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/vulkan-validation-layers/src": { + "args": { + "hash": "sha256-K0KZ8wXTCVRBBN9AWy63ukmE6QkQHKcRgo+YluOhjyc=", + "rev": "f7ceb1d01a292846db77ec87786be84d6fd568d9", + "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/vulkan_memory_allocator": { + "args": { + "hash": "sha256-YzxHZagz/M8Y54UnI4h1wu5jSTuaOgv0ifC9d3fJZlQ=", + "rev": "56300b29fbfcc693ee6609ddad3fdd5b7a449a21", + "url": "https://chromium.googlesource.com/external/github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/wasm_tts_engine/src": { + "args": { + "hash": "sha256-TFkniS4XvP0RlPnI1lv4RxxSY44RUuwCMKmmybENEBw=", + "rev": "352880bb49e2410707543c252ef6b94a21b0f47f", + "url": "https://chromium.googlesource.com/chromium/wasm-tts-engine" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/wayland-protocols/gtk": { + "args": { + "hash": "sha256-75XNnLkF5Lt1LMRGT+T61k0/mLa3kkynfN+QWvZ0LiQ=", + "rev": "40ebed3a03aef096addc0af09fec4ec529d882a0", + "url": "https://chromium.googlesource.com/external/github.com/GNOME/gtk.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/wayland-protocols/kde": { + "args": { + "hash": "sha256-Dmcp/2ms/k7NxPPmPkp0YNfM9z2Es1ZO0uX10bc7N2Y=", + "rev": "0b07950714b3a36c9b9f71fc025fc7783e82926e", + "url": "https://chromium.googlesource.com/external/github.com/KDE/plasma-wayland-protocols.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/wayland-protocols/src": { + "args": { + "hash": "sha256-o/adWEXYSqWib6KoK7XMCWbojapcS4O/CEPxv7iFCw8=", + "rev": "7d5a3a8b494ae44cd9651f9505e88a250082765e", + "url": "https://chromium.googlesource.com/external/anongit.freedesktop.org/git/wayland/wayland-protocols.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/wayland/src": { + "args": { + "hash": "sha256-oK0Z8xO2ILuySGZS0m37ZF0MOyle2l8AXb0/6wai0/w=", + "rev": "a156431ea66fe67d69c9fbba8a8ad34dabbab81c", + "url": "https://chromium.googlesource.com/external/anongit.freedesktop.org/git/wayland/wayland.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/webdriver/pylib": { + "args": { + "hash": "sha256-WIqWXIKVgElgg8P8laLAlUrgwodGdeVcwohZxnPKedw=", + "rev": "fc5e7e70c098bfb189a9a74746809ad3c5c34e04", + "url": "https://chromium.googlesource.com/external/github.com/SeleniumHQ/selenium/py.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/webgl/src": { + "args": { + "hash": "sha256-mSketnpcDtz3NnhPkXMpMpq8MWcFiSviJbK6h06fcnw=", + "rev": "c01b768bce4a143e152c1870b6ba99ea6267d2b0", + "url": "https://chromium.googlesource.com/external/khronosgroup/webgl.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/webgpu-cts/src": { + "args": { + "hash": "sha256-eMDb0nG9HDiesd8KPajbMej8JTll4JkIf17KMnKvW1s=", + "rev": "905c7cbfeaac1cf3feb4c6056dd6f3dbaa06b074", + "url": "https://chromium.googlesource.com/external/github.com/gpuweb/cts.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/webpagereplay": { + "args": { + "hash": "sha256-qJnO3fFJhaQA77v1lTJ4B7cbXivquTcSvx/m+OcI3No=", + "rev": "18172a359f6dab8e3f70b6c5c8c7c55d3e97537a", + "url": "https://chromium.googlesource.com/webpagereplay.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/webrtc": { + "args": { + "hash": "sha256-72NbtdYbyMxSGULvOGsZqLj4kvT79pu+TKcnEmcj/Pc=", + "rev": "e4445e46a910eb407571ec0b0b8b7043562678cf", + "url": "https://webrtc.googlesource.com/src.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/weston/src": { + "args": { + "hash": "sha256-VNHUAtfTB24SIf2kl+MMXF3rG5cJOPM93WU/sVSIQ1A=", + "rev": "4eb10b123b483327214d8da5da67e8bbeeaed8fe", + "url": "https://chromium.googlesource.com/external/anongit.freedesktop.org/git/wayland/weston.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/wuffs/src": { + "args": { + "hash": "sha256-373d2F/STcgCHEq+PO+SCHrKVOo6uO1rqqwRN5eeBCw=", + "rev": "e3f919ccfe3ef542cfc983a82146070258fb57f8", + "url": "https://skia.googlesource.com/external/github.com/google/wuffs-mirror-release-c.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/xdg-utils": { + "args": { + "hash": "sha256-WuQ9uDq+QD17Y20ACFGres4nbkeOiTE2y+tY1avAT5U=", + "rev": "cb54d9db2e535ee4ef13cc91b65a1e2741a94a44", + "url": "https://chromium.googlesource.com/chromium/deps/xdg-utils.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/xnnpack/src": { + "args": { + "hash": "sha256-aavq+i8EpQmIMPaym6JxwBFjbpqKtHshXUkdBIXDtpw=", + "rev": "f82ad65ca52cb4d39b73088468a5fe00f56fb47c", + "url": "https://chromium.googlesource.com/external/github.com/google/XNNPACK.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/third_party/zstd/src": { + "args": { + "hash": "sha256-emmJF7XLq5CxXFd0KUrtUtw1YGOHDSiz39vtgVoEPd0=", + "rev": "f9938c217da17ec3e9dcd2a2d99c5cf39536aeb9", + "url": "https://chromium.googlesource.com/external/github.com/facebook/zstd.git" + }, + "fetcher": "fetchFromGitiles" + }, + "src/v8": { + "args": { + "hash": "sha256-MXQyDv45BDnLwKCqbueY2a5VBEgmf33Xy8WXLE9Rwsc=", + "rev": "a14ab029e21658cba458b7001281c5d526e67636", + "url": "https://chromium.googlesource.com/v8/v8.git" + }, + "fetcher": "fetchFromGitiles" + } + }, + "electron_yarn_hash": "10n86jnzcq8kh0nk29ljw9wi1fgj13f07h92b009i1dryagliyrs", + "modules": "136", + "node": "22.16.0", + "version": "37.1.0" } } diff --git a/pkgs/development/web/nodejs/v20.nix b/pkgs/development/web/nodejs/v20.nix index d5c93f3bb3c2..20ebe669387b 100644 --- a/pkgs/development/web/nodejs/v20.nix +++ b/pkgs/development/web/nodejs/v20.nix @@ -18,8 +18,8 @@ let in buildNodejs { inherit enableNpm; - version = "20.19.2"; - sha256 = "4a7ff611d5180f4e420204fa6f22f9f9deb2ac5e98619dd9a4de87edf5b03b6e"; + version = "20.19.3"; + sha256 = "99be7b9d268d48b93be568a23240398ceacb0782dc7055b9972305c000b0e292"; patches = [ ./configure-emulator.patch ./configure-armv6-vfpv2.patch @@ -27,33 +27,5 @@ buildNodejs { ./bypass-darwin-xcrun-node16.patch ./node-npm-build-npm-package-logic.patch ./use-correct-env-in-tests.patch - - # Remove unused `fdopen` in vendored zlib, which causes compilation failures with clang 18 on Darwin. - (fetchpatch2 { - url = "https://github.com/madler/zlib/commit/4bd9a71f3539b5ce47f0c67ab5e01f3196dc8ef9.patch?full_index=1"; - extraPrefix = "deps/v8/third_party/zlib/"; - stripLen = 1; - hash = "sha256-WVxsoEcJu0WBTyelNrVQFTZxJhnekQb1GrueeRBRdnY="; - }) - # Backport V8 fixes for LLVM 19. - (fetchpatch2 { - url = "https://chromium.googlesource.com/v8/v8/+/182d9c05e78b1ddb1cb8242cd3628a7855a0336f%5E%21/?format=TEXT"; - decode = "base64 -d"; - extraPrefix = "deps/v8/"; - stripLen = 1; - hash = "sha256-bDTwFbATPn5W4VifWz/SqaiigXYDWHq785C64VezuUE="; - }) - (fetchpatch2 { - url = "https://chromium.googlesource.com/v8/v8/+/1a3ecc2483b2dba6ab9f7e9f8f4b60dbfef504b7%5E%21/?format=TEXT"; - decode = "base64 -d"; - extraPrefix = "deps/v8/"; - stripLen = 1; - hash = "sha256-6y3aEqxNC4iTQEv1oewodJrhOHxjp5xZMq1P1QL94Rg="; - }) - # fix test failure on macos 15.4 - (fetchpatch2 { - url = "https://github.com/nodejs/node/commit/33f6e1ea296cd20366ab94e666b03899a081af94.patch?full_index=1"; - hash = "sha256-aVBMcQlhQeviUQpMIfC988jjDB2BgYzlMYsq+w16mzU="; - }) ] ++ gypPatches; } diff --git a/pkgs/games/papermc/versions.json b/pkgs/games/papermc/versions.json index 90b01446b8e8..129f5770e14e 100644 --- a/pkgs/games/papermc/versions.json +++ b/pkgs/games/papermc/versions.json @@ -72,7 +72,11 @@ "version": "1.21.4-232" }, "1.21.5": { - "hash": "sha256-fgI/FO2CzTvUm58G0DKirnQa5ztElxOIGw1r4CbzC4M=", - "version": "1.21.5-112" + "hash": "sha256-KuauIq30F2mXRuD4n8LvbLbuBQpfZgjO5Y8FNdYLUJ4=", + "version": "1.21.5-114" + }, + "1.21.6": { + "hash": "sha256-xL/DN+CRAP39Bgo2tmF0voc3DZl1rOTijkXYc86ZLGI=", + "version": "1.21.6-47" } } diff --git a/pkgs/games/path-of-building/default.nix b/pkgs/games/path-of-building/default.nix index e362f7ac0447..5f9dde343b59 100644 --- a/pkgs/games/path-of-building/default.nix +++ b/pkgs/games/path-of-building/default.nix @@ -17,13 +17,13 @@ let data = stdenv.mkDerivation (finalAttrs: { pname = "path-of-building-data"; - version = "2.54.0"; + version = "2.55.1"; src = fetchFromGitHub { owner = "PathOfBuildingCommunity"; repo = "PathOfBuilding"; rev = "v${finalAttrs.version}"; - hash = "sha256-NMSr5HJ/YvrqE8uVINzH0b9+U3snQGQYalSJ4bNRh1I="; + hash = "sha256-O3XD52UdkjxtWdsXs6QbXzfik3ZT9TEc2PPZCIGJdCQ="; }; nativeBuildInputs = [ unzip ]; diff --git a/pkgs/kde/gear/gwenview/default.nix b/pkgs/kde/gear/gwenview/default.nix index 68a93a36738b..55d5a8b7d331 100644 --- a/pkgs/kde/gear/gwenview/default.nix +++ b/pkgs/kde/gear/gwenview/default.nix @@ -4,6 +4,7 @@ qtwayland, qtimageformats, phonon, + phonon-vlc, pkg-config, cfitsio, exiv2, @@ -23,6 +24,7 @@ mkKdeDerivation { qtimageformats phonon + phonon-vlc cfitsio exiv2 diff --git a/pkgs/servers/http/apache-modules/mod_python/default.nix b/pkgs/servers/http/apache-modules/mod_python/default.nix index 4f220790634f..6a1afb6b5d59 100644 --- a/pkgs/servers/http/apache-modules/mod_python/default.nix +++ b/pkgs/servers/http/apache-modules/mod_python/default.nix @@ -58,5 +58,6 @@ stdenv.mkDerivation (finalAttrs: { mainProgram = "mod_python"; platforms = lib.platforms.unix; maintainers = [ ]; + broken = stdenv.hostPlatform.isDarwin; }; }) diff --git a/pkgs/servers/monitoring/prometheus/blackbox-exporter.nix b/pkgs/servers/monitoring/prometheus/blackbox-exporter.nix index a6e4b0b19d0e..651aa9b7e460 100644 --- a/pkgs/servers/monitoring/prometheus/blackbox-exporter.nix +++ b/pkgs/servers/monitoring/prometheus/blackbox-exporter.nix @@ -7,17 +7,17 @@ buildGoModule rec { pname = "blackbox_exporter"; - version = "0.26.0"; + version = "0.27.0"; rev = "v${version}"; src = fetchFromGitHub { inherit rev; owner = "prometheus"; repo = "blackbox_exporter"; - sha256 = "sha256-pdvYpu2EbcZIMyeWDWzb4TGlRE0cJgvIWJ62pHx7Xsk="; + sha256 = "sha256-oIsNqET3gHSajyWTxc+zoLiKQNCIXK77jtthOwYVtQg="; }; - vendorHash = "sha256-Mw1+YQVmK4rqOLGIt6TSFgFsdMeL0h0A7ZJAtoL0klU="; + vendorHash = "sha256-UHm3iIQ6/clPx/VBUG4j/WLoOhFN44nbAEZk94L/9EY="; # dns-lookup is performed for the tests doCheck = false; diff --git a/pkgs/tools/admin/pgadmin/default.nix b/pkgs/tools/admin/pgadmin/default.nix index ab78cdeee48c..1bd7de472492 100644 --- a/pkgs/tools/admin/pgadmin/default.nix +++ b/pkgs/tools/admin/pgadmin/default.nix @@ -22,14 +22,14 @@ let pname = "pgadmin"; - version = "9.3"; - yarnHash = "sha256-T6RKWuAAoJgbzJKef4ioOoUDtoGM9s9BFqxFdy5EtyQ="; + version = "9.4"; + yarnHash = "sha256-AlAyHtadjmKZb0rHNIlaPtEcGFQ15Fc6rExMsNFGwDc="; src = fetchFromGitHub { owner = "pgadmin-org"; repo = "pgadmin4"; rev = "REL-${lib.versions.major version}_${lib.versions.minor version}"; - hash = "sha256-4uupF1dw6OE/briAI5PWiQ7h6RPx1sUqf8PB8cJsNSU="; + hash = "sha256-oslp9g63mYeP9CmpCzF80nlyqF1ftGbMRIsp6goJOx4="; }; mozjpeg-bin = fetchFromGitHub { @@ -247,7 +247,6 @@ pythonPackages.buildPythonApplication rec { azure-identity sphinxcontrib-youtube dnspython - speaklater3 google-auth-oauthlib google-api-python-client keyring diff --git a/pkgs/tools/admin/pgadmin/update.sh b/pkgs/tools/admin/pgadmin/update.sh index 0205b654e437..ef09e7250f75 100755 --- a/pkgs/tools/admin/pgadmin/update.sh +++ b/pkgs/tools/admin/pgadmin/update.sh @@ -41,6 +41,7 @@ pushd $TMPDIR wget -c $url tar -xzf "pgadmin4-$newest_version.tar.gz" cd "pgadmin4-$newest_version/web" +patch -u yarn.lock ${scriptDir}/mozjpeg.patch printf "Will now generate the hash. This will download the packages to the nix store and also take some time\n" yarn-berry-fetcher missing-hashes yarn.lock diff --git a/pkgs/tools/games/gamemode/default.nix b/pkgs/tools/games/gamemode/default.nix index 6c4ff49bdc25..db98dafd58a4 100644 --- a/pkgs/tools/games/gamemode/default.nix +++ b/pkgs/tools/games/gamemode/default.nix @@ -25,7 +25,7 @@ stdenv.mkDerivation (finalAttrs: { owner = "FeralInteractive"; repo = "gamemode"; tag = finalAttrs.version; - hash = "sha256-JkDFhFLUHlgD6RKxlxMjrSF2zQ4AWmRUQMLbWYwIZmg="; + hash = "sha256-V0rewbSVOGFqJqXyCz4jXpuDM0EfjdkpGPl+WdDwI5I="; }; outputs = [ diff --git a/pkgs/tools/graphics/gnuplot/default.nix b/pkgs/tools/graphics/gnuplot/default.nix index dd2dcaf6825f..4bb9f57c0905 100644 --- a/pkgs/tools/graphics/gnuplot/default.nix +++ b/pkgs/tools/graphics/gnuplot/default.nix @@ -40,11 +40,11 @@ let in (if withQt then mkDerivation else stdenv.mkDerivation) rec { pname = "gnuplot"; - version = "6.0.2"; + version = "6.0.3"; src = fetchurl { url = "mirror://sourceforge/gnuplot/${pname}-${version}.tar.gz"; - sha256 = "sha256-9oo7C7t7u7Q3ZJZ0EG2UUiwAvy8oXM4MGcMYCx7n5zg="; + sha256 = "sha256-7FLjr4xAg9RTgVKz8T20f20pkpo/bs7FNlyDTnfyUas="; }; nativeBuildInputs = [ diff --git a/pkgs/tools/inputmethods/ibus-engines/ibus-libpinyin/default.nix b/pkgs/tools/inputmethods/ibus-engines/ibus-libpinyin/default.nix index 1a7cbe116514..072bbebda0be 100644 --- a/pkgs/tools/inputmethods/ibus-engines/ibus-libpinyin/default.nix +++ b/pkgs/tools/inputmethods/ibus-engines/ibus-libpinyin/default.nix @@ -22,13 +22,13 @@ stdenv.mkDerivation rec { pname = "ibus-libpinyin"; - version = "1.16.3"; + version = "1.16.4"; src = fetchFromGitHub { owner = "libpinyin"; repo = "ibus-libpinyin"; tag = version; - hash = "sha256-jkwGx8PfrSzI18Q0Yf37FIss6HRow6i46+5s0tp4IVk="; + hash = "sha256-ZIZ485Jk6LkFZ8TKEqlUeTZIIOZqo61uLQtPAfAX/Io="; }; nativeBuildInputs = [ diff --git a/pkgs/tools/package-management/lix/default.nix b/pkgs/tools/package-management/lix/default.nix index 6df8255dd7ea..42bc8c641a69 100644 --- a/pkgs/tools/package-management/lix/default.nix +++ b/pkgs/tools/package-management/lix/default.nix @@ -154,13 +154,13 @@ lib.makeExtensible (self: { attrName = "lix_2_91"; lix-args = rec { - version = "2.91.2"; + version = "2.91.3"; src = fetchFromGitHub { owner = "lix-project"; repo = "lix"; rev = version; - hash = "sha256-TkRjskDnxMPugdLQE/LqIh59RYQFJLYpIuL8YZva2lM="; + hash = "sha256-b5d+HnPcyHz0ZJW1+LZl4qm4LGTB/TiaDFQVlVL2xpE="; }; docCargoDeps = rustPlatform.fetchCargoVendor { @@ -186,13 +186,13 @@ lib.makeExtensible (self: { attrName = "lix_2_92"; lix-args = rec { - version = "2.92.2"; + version = "2.92.3"; src = fetchFromGitHub { owner = "lix-project"; repo = "lix"; rev = version; - hash = "sha256-D7YepvFkGE4K1rOkEYA1P6wGj/eFbQXb03nLdBRjjwA="; + hash = "sha256-iP2iUDxA99RcgQyZROs7bQw8pqxa1vFudRqjAIHg9Iw="; }; cargoDeps = rustPlatform.fetchCargoVendor { @@ -216,14 +216,14 @@ lib.makeExtensible (self: { attrName = "lix_2_93"; lix-args = rec { - version = "2.93.1"; + version = "2.93.2"; src = fetchFromGitea { domain = "git.lix.systems"; owner = "lix-project"; repo = "lix"; rev = version; - hash = "sha256-LmQhjQ7c+AOkwhvR9GFgJOy8oHW35MoQRELtrwyVnPw="; + hash = "sha256-J4ycLoXHPsoBoQtEXFCelL4xlq5pT8U9tNWNKm43+YI="; }; cargoDeps = rustPlatform.fetchCargoVendor { diff --git a/pkgs/tools/package-management/nix/common-autoconf.nix b/pkgs/tools/package-management/nix/common-autoconf.nix index 1d7ed8cba374..4ad05d61d01b 100644 --- a/pkgs/tools/package-management/nix/common-autoconf.nix +++ b/pkgs/tools/package-management/nix/common-autoconf.nix @@ -11,6 +11,7 @@ inherit hash; }, patches ? [ ], + knownVulnerabilities ? [ ], maintainers ? [ lib.maintainers.lovesegfault lib.maintainers.artturin @@ -335,7 +336,7 @@ let ''; homepage = "https://nixos.org/"; license = licenses.lgpl21Plus; - inherit maintainers teams; + inherit knownVulnerabilities maintainers teams; platforms = platforms.unix; outputsToInstall = [ "out" ] ++ optional enableDocumentation "man"; mainProgram = "nix"; diff --git a/pkgs/tools/package-management/nix/default.nix b/pkgs/tools/package-management/nix/default.nix index 974532d99be4..10f93abf8f51 100644 --- a/pkgs/tools/package-management/nix/default.nix +++ b/pkgs/tools/package-management/nix/default.nix @@ -159,6 +159,15 @@ lib.makeExtensible ( patch-monitorfdhup ]; self_attribute_name = "nix_2_3"; + knownVulnerabilities = [ + "CVE-2024-38531" + "CVE-2024-47174" + "CVE-2025-46415" + "CVE-2025-46416" + "CVE-2025-52991" + "CVE-2025-52992" + "CVE-2025-52993" + ]; maintainers = with lib.maintainers; [ flokli ]; teams = [ ]; }).overrideAttrs diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index d10327ff4865..a8751dcf4c0c 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -29,10 +29,6 @@ let else alias; - # Disabling distribution prevents top-level aliases for non-recursed package - # sets from building on Hydra. - removeDistribute = alias: if lib.isDerivation alias then lib.dontDistribute alias else alias; - transmission3Warning = { prefix ? "", @@ -212,10 +208,7 @@ let if builtins.hasAttr n super then throw "Alias ${n} is still in all-packages.nix" else alias; mapAliases = - aliases: - lib.mapAttrs ( - n: alias: removeDistribute (removeRecurseForDerivations (checkInPkgs n alias)) - ) aliases; + aliases: lib.mapAttrs (n: alias: removeRecurseForDerivations (checkInPkgs n alias)) aliases; in mapAliases { @@ -1846,6 +1839,7 @@ mapAliases { source-han-serif-simplified-chinese = source-han-serif; source-han-serif-traditional-chinese = source-han-serif; + sourcehut = throw "'sourcehut.*' has been removed due to being broken and unmaintained"; # Added 2025-06-15 solana-validator = throw "'solana-validator' is obsoleted by solana-cli, which also includes the validator binary"; # Added 2024-12-20 spectral = throw "'spectral' has been renamed to/replaced by 'neochat'"; # Converted to throw 2024-10-17 # spidermonkey is not ABI upwards-compatible, so only allow this for nix-shell @@ -1968,6 +1962,7 @@ mapAliases { tokyo-night-gtk = tokyonight-gtk-theme; # Added 2024-01-28 tomcat_connectors = apacheHttpdPackages.mod_jk; # Added 2024-06-07 ton = throw "'ton' has been removed as there were insufficient maintainer resources to keep up with updates"; # Added 2025-04-27 + tooling-language-server = deputy; # Added 2025-06-22 tor-browser-bundle-bin = tor-browser; # Added 2023-09-23 torrenttools = throw "torrenttools has been removed due to lack of maintanance upstream"; # Added 2025-04-06 torq = throw "torq has been removed because the project went closed source"; # Added 2024-11-24 @@ -2081,6 +2076,7 @@ mapAliases { void = throw "'void' has been removed due to lack of upstream maintenance"; # Added 2025-01-25 volnoti = throw "'volnoti' has been removed due to lack of maintenance upstream."; # Added 2024-12-04 vuze = throw "'vuze' was removed because it is unmaintained upstream and insecure (CVE-2018-13417). BiglyBT is a maintained fork."; # Added 2024-11-22 + vulkan-hdr-layer-kwin6 = throw "'vulkan-hdr-layer-kwin6' was removed as it is unnecessary since Mesa 25.1"; # Added 2025-06-30 vwm = throw "'vwm' was removed as it is broken and not maintained upstream"; # Added 2025-05-17 inherit (libsForQt5.mauiPackages) vvave; # added 2022-05-17 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 9cf7c56cd112..aaad152d625b 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1883,10 +1883,6 @@ with pkgs; asmrepl = callPackage ../development/interpreters/asmrepl { }; - atlas = callPackage ../by-name/at/atlas/package.nix { - buildGoModule = buildGo123Module; - }; - avahi = callPackage ../development/libraries/avahi { }; avahi-compat = callPackage ../development/libraries/avahi { @@ -4396,8 +4392,6 @@ with pkgs; splot = haskell.lib.compose.justStaticExecutables haskellPackages.splot; - sourcehut = callPackage ../applications/version-management/sourcehut { }; - sshfs = sshfs-fuse; # added 2017-08-14 inherit (callPackages ../tools/misc/sshx { }) @@ -6835,6 +6829,7 @@ with pkgs; electron_34-bin electron_35-bin electron_36-bin + electron_37-bin ; inherit (callPackages ../development/tools/electron/chromedriver { }) @@ -6842,14 +6837,11 @@ with pkgs; electron-chromedriver_34 electron-chromedriver_35 electron-chromedriver_36 + electron-chromedriver_37 ; electron_33 = electron_33-bin; - electron_34 = - if lib.meta.availableOn stdenv.hostPlatform electron-source.electron_34 then - electron-source.electron_34 - else - electron_34-bin; + electron_34 = electron_34-bin; electron_35 = if lib.meta.availableOn stdenv.hostPlatform electron-source.electron_35 then electron-source.electron_35 @@ -6860,6 +6852,11 @@ with pkgs; electron-source.electron_36 else electron_36-bin; + electron_37 = + if lib.meta.availableOn stdenv.hostPlatform electron-source.electron_37 then + electron-source.electron_37 + else + electron_37-bin; electron = electron_35; electron-bin = electron_35-bin; electron-chromedriver = electron-chromedriver_35; @@ -9148,9 +9145,6 @@ with pkgs; zunclient = with python313Packages; toPythonApplication python-zunclient; inherit (callPackages ../development/libraries/libressl { }) - libressl_3_6 - libressl_3_7 - libressl_3_8 libressl_3_9 libressl_4_0 ; @@ -14273,7 +14267,7 @@ with pkgs; webcord = callPackage ../by-name/we/webcord/package.nix { electron = electron_36; }; - webcord-vencord = callPackage ../by-name/we/webcord-vencord/package.nix { electron = electron_34; }; + webcord-vencord = callPackage ../by-name/we/webcord-vencord/package.nix { electron = electron_36; }; webmacs = libsForQt5.callPackage ../applications/networking/browsers/webmacs { stdenv = if stdenv.cc.isClang then gccStdenv else stdenv; diff --git a/pkgs/top-level/make-tarball.nix b/pkgs/top-level/make-tarball.nix index 1b90e4bfdb66..b1ddef188d93 100644 --- a/pkgs/top-level/make-tarball.nix +++ b/pkgs/top-level/make-tarball.nix @@ -3,7 +3,13 @@ officialRelease, pkgs ? import nixpkgs.outPath { }, nix ? pkgs.nix, - lib-tests ? import ../../lib/tests/release.nix { inherit pkgs; }, + lib-tests ? import ../../lib/tests/release.nix { + pkgs = import nixpkgs.outPath { + config = { + permittedInsecurePackages = [ "nix-2.3.18" ]; + }; + }; + }, }: pkgs.releaseTools.sourceTarball { diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix index 60b0c32f3b75..5ccb767f9f93 100644 --- a/pkgs/top-level/ocaml-packages.nix +++ b/pkgs/top-level/ocaml-packages.nix @@ -46,6 +46,8 @@ let apron = callPackage ../development/ocaml-modules/apron { }; + argon2 = callPackage ../development/ocaml-modules/argon2 { }; + arg-complete = callPackage ../development/ocaml-modules/arg-complete { }; arp = callPackage ../development/ocaml-modules/arp { }; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 5d3262b216a4..901ca5fc5fa0 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -5673,6 +5673,8 @@ self: super: with self; { georss-wa-dfes-client = callPackage ../development/python-modules/georss-wa-dfes-client { }; + geotorch = callPackage ../development/python-modules/geotorch { }; + gepetto-gui = toPythonModule (gepetto-viewer.withPlugins [ gepetto-viewer-corba ]); gepetto-viewer = toPythonModule (pkgs.gepetto-viewer.override { python3Packages = self; }); diff --git a/pkgs/top-level/release-cross.nix b/pkgs/top-level/release-cross.nix index 22cc2ce290e8..d87aec1c5783 100644 --- a/pkgs/top-level/release-cross.nix +++ b/pkgs/top-level/release-cross.nix @@ -25,6 +25,7 @@ # Attributes passed to nixpkgs. Don't build packages marked as unfree. nixpkgsArgs ? { config = { + allowAliases = false; allowUnfree = false; inHydra = true; }; diff --git a/pkgs/top-level/release-cuda.nix b/pkgs/top-level/release-cuda.nix index f5800cc7828f..6c5bff07d030 100644 --- a/pkgs/top-level/release-cuda.nix +++ b/pkgs/top-level/release-cuda.nix @@ -120,6 +120,7 @@ let cupy = linux; faiss = linux; faster-whisper = linux; + flashinfer = linux; flax = linux; gpt-2-simple = linux; grad-cam = linux; diff --git a/pkgs/top-level/release-lib.nix b/pkgs/top-level/release-lib.nix index a6c417bd2261..e1ee81dc258c 100644 --- a/pkgs/top-level/release-lib.nix +++ b/pkgs/top-level/release-lib.nix @@ -6,6 +6,7 @@ # Attributes passed to nixpkgs. Don't build packages marked as unfree. nixpkgsArgs ? { config = { + allowAliases = false; allowUnfree = false; inHydra = true; }; diff --git a/pkgs/top-level/release-python.nix b/pkgs/top-level/release-python.nix index 5bce39ba5e0e..463086049e7d 100644 --- a/pkgs/top-level/release-python.nix +++ b/pkgs/top-level/release-python.nix @@ -12,6 +12,7 @@ # Attributes passed to nixpkgs. Don't build packages marked as unfree. nixpkgsArgs ? { config = { + allowAliases = false; allowUnfree = false; inHydra = true; }; diff --git a/pkgs/top-level/release-small.nix b/pkgs/top-level/release-small.nix index 511cef6a0d8a..52292ba37151 100644 --- a/pkgs/top-level/release-small.nix +++ b/pkgs/top-level/release-small.nix @@ -16,6 +16,7 @@ # Attributes passed to nixpkgs. Don't build packages marked as unfree. nixpkgsArgs ? { config = { + allowAliases = false; allowUnfree = false; inHydra = true; }; diff --git a/pkgs/top-level/release.nix b/pkgs/top-level/release.nix index 61218537e7e3..50a0b587f346 100644 --- a/pkgs/top-level/release.nix +++ b/pkgs/top-level/release.nix @@ -37,6 +37,7 @@ # Attributes passed to nixpkgs. Don't build packages marked as unfree. nixpkgsArgs ? { config = { + allowAliases = false; allowUnfree = false; inHydra = true; # Exceptional unsafe packages that we still build and distribute, @@ -86,6 +87,7 @@ let id isDerivation optionals + recursiveUpdate ; inherit (release-lib.lib.attrsets) unionOfDisjoint; @@ -95,8 +97,15 @@ let "aarch64" ] (arch: elem "${arch}-darwin" supportedSystems); - nonPackageJobs = { - tarball = import ./make-tarball.nix { inherit pkgs nixpkgs officialRelease; }; + nonPackageJobs = rec { + tarball = import ./make-tarball.nix { + inherit + pkgs + lib-tests + nixpkgs + officialRelease + ; + }; release-checks = import ./nixpkgs-basic-release-checks.nix { inherit pkgs nixpkgs supportedSystems; @@ -104,7 +113,20 @@ let manual = pkgs.nixpkgs-manual.override { inherit nixpkgs; }; metrics = import ./metrics.nix { inherit pkgs nixpkgs; }; - lib-tests = import ../../lib/tests/release.nix { inherit pkgs; }; + lib-tests = import ../../lib/tests/release.nix { + pkgs = import nixpkgs ( + recursiveUpdate + (recursiveUpdate { + inherit system; + config.allowUnsupportedSystem = true; + } nixpkgsArgs) + { + config.permittedInsecurePackages = nixpkgsArgs.config.permittedInsecurePackages or [ ] ++ [ + "nix-2.3.18" + ]; + } + ); + }; pkgs-lib-tests = import ../pkgs-lib/tests { inherit pkgs; }; darwin-tested =