From fd429f5bac9a254f98b86bd8dab301272627ba63 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Wed, 15 Mar 2023 13:12:37 +0100 Subject: [PATCH 01/53] matrix-synapse: Prune deps, add missing deps, expose extras Drops extra arguments on the package, as they will be moved over into the module in a more discoverable way next. Also reduces overly broad `with`-scoping. --- pkgs/servers/matrix-synapse/default.nix | 90 +++++++++++++++++++------ 1 file changed, 69 insertions(+), 21 deletions(-) diff --git a/pkgs/servers/matrix-synapse/default.nix b/pkgs/servers/matrix-synapse/default.nix index 37629d90e04..5d774e80ec0 100644 --- a/pkgs/servers/matrix-synapse/default.nix +++ b/pkgs/servers/matrix-synapse/default.nix @@ -1,7 +1,12 @@ -{ lib, stdenv, fetchFromGitHub, python3, openssl, cargo, rustPlatform, rustc -, enableSystemd ? lib.meta.availableOn stdenv.hostPlatform python3.pkgs.systemd +{ lib +, stdenv +, fetchFromGitHub +, python3 +, openssl +, cargo +, rustPlatform +, rustc , nixosTests -, enableRedis ? true , callPackage }: @@ -9,8 +14,7 @@ let plugins = python3.pkgs.callPackage ./plugins { }; tools = callPackage ./tools { }; in -with python3.pkgs; -buildPythonApplication rec { +python3.pkgs.buildPythonApplication rec { pname = "matrix-synapse"; version = "1.87.0"; format = "pyproject"; @@ -34,7 +38,7 @@ buildPythonApplication rec { sed -i '/^setuptools_rust =/d' pyproject.toml ''; - nativeBuildInputs = [ + nativeBuildInputs = with python3.pkgs; [ poetry-core rustPlatform.cargoSetupHook setuptools-rust @@ -42,47 +46,90 @@ buildPythonApplication rec { rustc ]; - buildInputs = [ openssl ]; + buildInputs = [ + openssl + ]; - propagatedBuildInputs = [ - authlib + propagatedBuildInputs = with python3.pkgs; [ + attrs bcrypt bleach canonicaljson - daemonize + cryptography ijson immutabledict jinja2 jsonschema - lxml matrix-common msgpack netaddr + packaging phonenumbers pillow prometheus-client - psutil - psycopg2 pyasn1 + pyasn1-modules pydantic - pyicu pymacaroons - pynacl pyopenssl - pysaml2 pyyaml - requests - setuptools + service-identity signedjson sortedcontainers treq twisted typing-extensions unpaddedbase64 - ] ++ lib.optional enableSystemd systemd - ++ lib.optionals enableRedis [ hiredis txredisapi ]; + ] + ++ twisted.optional-dependencies.tls; - nativeCheckInputs = [ mock parameterized openssl ]; + passthru.optional-dependencies = with python3.pkgs; { + postgres = if isPyPy then [ + psycopg2cffi + ] else [ + psycopg2 + ]; + saml2 = [ + pysaml2 + ]; + oidc = [ + authlib + ]; + systemd = [ + systemd + ]; + url-preview = [ + lxml + ]; + sentry = [ + sentry-sdk + ]; + opentracing = [ + jaeger-client + opentracing + ]; + jwt = [ + authlib + ]; + redis = [ + hiredis + txredisapi + ]; + cache-memory = [ + pympler + ]; + user-search = [ + pyicu + ]; + }; + + nativeCheckInputs = [ + openssl + ] ++ (with python3.pkgs; [ + mock + parameterized + ]) + ++ lib.flatten (lib.attrValues passthru.optional-dependencies); doCheck = !stdenv.isDarwin; @@ -112,6 +159,7 @@ buildPythonApplication rec { meta = with lib; { homepage = "https://matrix.org"; + changelog = "https://github.com/matrix-org/synapse/releases/tag/v${version}"; description = "Matrix reference homeserver"; license = licenses.asl20; maintainers = teams.matrix.members; From 3453128510040c6ad343b98cd44eab5397c63c2e Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Sat, 3 Jun 2023 02:44:30 +0200 Subject: [PATCH 02/53] matrix-synapse: Add wrapper to configure extras The original matrix-synapse packages is now available with the -unwrapped prefix. --- pkgs/servers/matrix-synapse/plugins/ldap3.nix | 4 +- .../plugins/mjolnir-antispam.nix | 4 +- .../plugins/shared-secret-auth.nix | 4 +- pkgs/servers/matrix-synapse/wrapper.nix | 44 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 9 ++-- 5 files changed, 54 insertions(+), 11 deletions(-) create mode 100644 pkgs/servers/matrix-synapse/wrapper.nix diff --git a/pkgs/servers/matrix-synapse/plugins/ldap3.nix b/pkgs/servers/matrix-synapse/plugins/ldap3.nix index b29dc21422e..feac6f08472 100644 --- a/pkgs/servers/matrix-synapse/plugins/ldap3.nix +++ b/pkgs/servers/matrix-synapse/plugins/ldap3.nix @@ -4,7 +4,7 @@ , fetchPypi , ldap3 , ldaptor -, matrix-synapse +, matrix-synapse-unwrapped , pytestCheckHook , service-identity , setuptools @@ -33,7 +33,7 @@ buildPythonPackage rec { propagatedBuildInputs = [ service-identity ldap3 twisted ]; - nativeCheckInputs = [ ldaptor matrix-synapse pytestCheckHook ]; + nativeCheckInputs = [ ldaptor matrix-synapse-unwrapped pytestCheckHook ]; pythonImportsCheck = [ "ldap_auth_provider" ]; diff --git a/pkgs/servers/matrix-synapse/plugins/mjolnir-antispam.nix b/pkgs/servers/matrix-synapse/plugins/mjolnir-antispam.nix index 2cf0f50901b..77e3a69d626 100644 --- a/pkgs/servers/matrix-synapse/plugins/mjolnir-antispam.nix +++ b/pkgs/servers/matrix-synapse/plugins/mjolnir-antispam.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, buildPythonPackage, fetchFromGitHub, matrix-synapse }: +{ lib, stdenv, buildPythonPackage, fetchFromGitHub, matrix-synapse-unwrapped }: buildPythonPackage rec { pname = "matrix-synapse-mjolnir-antispam"; @@ -13,7 +13,7 @@ buildPythonPackage rec { sourceRoot = "./source/synapse_antispam"; - buildInputs = [ matrix-synapse ]; + buildInputs = [ matrix-synapse-unwrapped ]; doCheck = false; # no tests pythonImportsCheck = [ "mjolnir" ]; diff --git a/pkgs/servers/matrix-synapse/plugins/shared-secret-auth.nix b/pkgs/servers/matrix-synapse/plugins/shared-secret-auth.nix index a6e22db34fe..b5be02a4b21 100644 --- a/pkgs/servers/matrix-synapse/plugins/shared-secret-auth.nix +++ b/pkgs/servers/matrix-synapse/plugins/shared-secret-auth.nix @@ -1,4 +1,4 @@ -{ lib, buildPythonPackage, fetchFromGitHub, matrix-synapse, twisted }: +{ lib, buildPythonPackage, fetchFromGitHub, matrix-synapse-unwrapped, twisted }: buildPythonPackage rec { pname = "matrix-synapse-shared-secret-auth"; @@ -14,7 +14,7 @@ buildPythonPackage rec { doCheck = false; pythonImportsCheck = [ "shared_secret_authenticator" ]; - buildInputs = [ matrix-synapse ]; + buildInputs = [ matrix-synapse-unwrapped ]; propagatedBuildInputs = [ twisted ]; meta = with lib; { diff --git a/pkgs/servers/matrix-synapse/wrapper.nix b/pkgs/servers/matrix-synapse/wrapper.nix new file mode 100644 index 00000000000..65f06e808a7 --- /dev/null +++ b/pkgs/servers/matrix-synapse/wrapper.nix @@ -0,0 +1,44 @@ +{ lib +, stdenv +, makeWrapper +, matrix-synapse-unwrapped +, extras ? [ + "postgres" + "url-preview" + "user-search" + ] ++ lib.optional (lib.meta.availableOn stdenv.hostPlatform matrix-synapse-unwrapped.python.pkgs.systemd) "systemd" +, plugins ? [ ] +, ... +}: + +let + extraPackages = lib.concatMap (extra: matrix-synapse-unwrapped.optional-dependencies.${extra}) extras; + + pluginsEnv = matrix-synapse-unwrapped.python.buildEnv.override { + extraLibs = plugins; + }; + + searchPath = lib.makeSearchPathOutput "lib" matrix-synapse-unwrapped.python.sitePackages (extraPackages ++ [ pluginsEnv ]); +in +stdenv.mkDerivation { + name = (lib.appendToName "wrapped" matrix-synapse-unwrapped).name; + + nativeBuildInputs = [ + makeWrapper + ]; + + buildCommand = '' + for bin in ${matrix-synapse-unwrapped}/bin/*; do + echo $bin + makeWrapper "$bin" "$out/bin/$(basename $bin)" \ + --set PYTHONPATH=${searchPath} + done; + ''; + + passthru = { + unwrapped = matrix-synapse-unwrapped; + + # for backward compatibility + inherit (matrix-synapse-unwrapped) plugins tools; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 39f4d3a3aa0..fc0c92c2ac2 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -9624,11 +9624,10 @@ with pkgs; matrix-sliding-sync = callPackage ../servers/matrix-synapse/sliding-sync { }; - matrix-synapse = callPackage ../servers/matrix-synapse { }; - - matrix-synapse-plugins = recurseIntoAttrs matrix-synapse.plugins; - - matrix-synapse-tools = recurseIntoAttrs matrix-synapse.tools; + matrix-synapse = callPackage ../servers/matrix-synapse/wrapper.nix { }; + matrix-synapse-unwrapped = callPackage ../servers/matrix-synapse/default.nix { }; + matrix-synapse-plugins = recurseIntoAttrs matrix-synapse-unwrapped.plugins; + matrix-synapse-tools = recurseIntoAttrs matrix-synapse-unwrapped.tools; matrix-appservice-irc = callPackage ../servers/matrix-synapse/matrix-appservice-irc { }; From 1076c3ada61204581af579474791fc67451a7b39 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Wed, 15 Mar 2023 13:22:45 +0100 Subject: [PATCH 03/53] nixos/matrix-synapse: Allow passing extras, discover extras from config With this change we allow the user to configure extras, exposed as optional-dependencies on the matrix-synapse package. The vertical integration between package, user configuration and deployment is a huge boon which then allows us to dynamically adapt the python environment the service runs in, by inspecting the configuration and autodiscovering certain used extras from config paths. --- .../manual/release-notes/rl-2311.section.md | 2 + nixos/modules/services/matrix/synapse.nix | 74 ++++++++++++++++--- 2 files changed, 64 insertions(+), 12 deletions(-) diff --git a/nixos/doc/manual/release-notes/rl-2311.section.md b/nixos/doc/manual/release-notes/rl-2311.section.md index 5ccaa92914e..76542e338e3 100644 --- a/nixos/doc/manual/release-notes/rl-2311.section.md +++ b/nixos/doc/manual/release-notes/rl-2311.section.md @@ -50,6 +50,8 @@ - The `services.ananicy.extraRules` option now has the type of `listOf attrs` instead of `string`. +- `matrix-synapse` now refers to a wrapper, encapsulating the original package, which has been renamed to `matrix-synapse-unwrapped`. The arguments `enableSystemd` and `enableRedis` have been removed. All extras can now be configured from [services.matrix-synapse.extras](#opt-services.matrix-synapse.extras), which configures the `extras` argument on the wrapper package. In most cases the required extras will automatically be discovered and installed, when relevant configuration sections are present. + - `etcd` has been updated to 3.5, you will want to read the [3.3 to 3.4](https://etcd.io/docs/v3.5/upgrades/upgrade_3_4/) and [3.4 to 3.5](https://etcd.io/docs/v3.5/upgrades/upgrade_3_5/) upgrade guides - `consul` has been updated to `1.16.0`. See the [release note](https://github.com/hashicorp/consul/releases/tag/v1.16.0) for more details. Once a new Consul version has started and upgraded its data directory, it generally cannot be downgraded to the previous version. diff --git a/nixos/modules/services/matrix/synapse.nix b/nixos/modules/services/matrix/synapse.nix index 3dca3ff94f2..5185e2ed8d3 100644 --- a/nixos/modules/services/matrix/synapse.nix +++ b/nixos/modules/services/matrix/synapse.nix @@ -9,11 +9,6 @@ let # remove null values from the final configuration finalSettings = lib.filterAttrsRecursive (_: v: v != null) cfg.settings; configFile = format.generate "homeserver.yaml" finalSettings; - logConfigFile = format.generate "log_config.yaml" cfg.logConfig; - - pluginsEnv = cfg.package.python.buildEnv.override { - extraLibs = cfg.plugins; - }; usePostgresql = cfg.settings.database.name == "psycopg2"; hasLocalPostgresDB = let args = cfg.settings.database.args; in @@ -50,6 +45,30 @@ let "${bindAddress}" }:${builtins.toString listener.port}/" ''; + + defaultExtras = [ + "systemd" + "postgres" + "url-preview" + "user-search" + ]; + + wantedExtras = cfg.extras + ++ lib.optional (cfg.settings ? oidc_providers) "oidc" + ++ lib.optional (cfg.settings ? jwt_config) "jwt" + ++ lib.optional (cfg.settings ? saml2_config) "saml2" + ++ lib.optional (cfg.settings ? opentracing) "opentracing" + ++ lib.optional (cfg.settings ? redis) "redis" + ++ lib.optional (cfg.settings ? sentry) "sentry" + ++ lib.optional (cfg.settings ? user_directory) "user-search" + ++ lib.optional (cfg.settings.url_preview_enabled) "url-preview" + ++ lib.optional (cfg.settings.database.name == "psycopg2") "postgres"; + + wrapped = pkgs.matrix-synapse.override { + matrix-synapse-unwrapped = cfg.package.unwrapped; + extras = wantedExtras; + inherit (cfg) plugins; + }; in { imports = [ @@ -153,8 +172,38 @@ in { type = types.package; default = pkgs.matrix-synapse; defaultText = literalExpression "pkgs.matrix-synapse"; + readOnly = true; description = lib.mdDoc '' - Overridable attribute of the matrix synapse server package to use. + Wrapper package that gets configured through the module. + + If you want to override the unwrapped package use an overlay. + ''; + }; + + extras = mkOption { + type = types.listOf (types.enum (lib.attrNames cfg.package.unwrapped.optional-dependencies)); + default = defaultExtras; + example = literalExpression '' + [ + "cache-memory" # Provide statistics about caching memory consumption + "jwt" # JSON Web Token authentication + "opentracing" # End-to-end tracing support using Jaeger + "oidc" # OpenID Connect authentication + "postgres" # PostgreSQL database backend + "redis" # Redis support for the replication stream between worker processes + "saml2" # SAML2 authentication + "sentry" # Error tracking and performance metrics + "systemd" # Provide the JournalHandler used in the default log_config + "url-preview" # Support for oEmbed URL previews + "user-search" # Support internationalized domain names in user-search + ] + ''; + description = lib.mdDoc '' + Explicitly install extras provided by matrix-synapse. Most + will reconfigure some additional configuration. + + Extras will automatically be enabled, when the relevant + configuration sections are present. ''; }; @@ -193,7 +242,7 @@ in { default = {}; description = mdDoc '' The primary synapse configuration. See the - [sample configuration](https://github.com/matrix-org/synapse/blob/v${cfg.package.version}/docs/sample_config.yaml) + [sample configuration](https://github.com/matrix-org/synapse/blob/v${cfg.package.unwrapped.version}/docs/sample_config.yaml) for possible values. Secrets should be passed in by using the `extraConfigFiles` option. @@ -707,6 +756,9 @@ in { services.matrix-synapse.configFile = configFile; + # default them, so they are additive + services.matrix-synapse.settings.extras = defaultExtras; + users.users.matrix-synapse = { group = "matrix-synapse"; home = cfg.dataDir; @@ -724,14 +776,12 @@ in { after = [ "network.target" ] ++ optional hasLocalPostgresDB "postgresql.service"; wantedBy = [ "multi-user.target" ]; preStart = '' - ${cfg.package}/bin/synapse_homeserver \ + ${wrapped}/bin/synapse_homeserver \ --config-path ${configFile} \ --keys-directory ${cfg.dataDir} \ --generate-keys ''; - environment = { - PYTHONPATH = makeSearchPathOutput "lib" cfg.package.python.sitePackages [ pluginsEnv ]; - } // optionalAttrs (cfg.withJemalloc) { + environment = optionalAttrs (cfg.withJemalloc) { LD_PRELOAD = "${pkgs.jemalloc}/lib/libjemalloc.so"; }; serviceConfig = { @@ -744,7 +794,7 @@ in { chmod 0600 ${cfg.settings.signing_key_path} '')) ]; ExecStart = '' - ${cfg.package}/bin/synapse_homeserver \ + ${wrapped}/bin/synapse_homeserver \ ${ concatMapStringsSep "\n " (x: "--config-path ${x} \\") ([ configFile ] ++ cfg.extraConfigFiles) } --keys-directory ${cfg.dataDir} ''; From 549bc4bc664e52019a3ce001a205d55a3a3d40ce Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Wed, 14 Jun 2023 14:49:49 +0200 Subject: [PATCH 04/53] nixos/tests/matrix-synapse: Test redis on postgres instance This requires the module to pick up on the redis configuration, and add the required extra packages for redis into the wrapper. --- nixos/tests/matrix/synapse.nix | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/nixos/tests/matrix/synapse.nix b/nixos/tests/matrix/synapse.nix index 698d67c793e..98b07746919 100644 --- a/nixos/tests/matrix/synapse.nix +++ b/nixos/tests/matrix/synapse.nix @@ -65,7 +65,7 @@ in { nodes = { # Since 0.33.0, matrix-synapse doesn't allow underscores in server names - serverpostgres = { pkgs, nodes, ... }: let + serverpostgres = { pkgs, nodes, config, ... }: let mailserverIP = nodes.mailserver.config.networking.primaryIPAddress; in { @@ -77,6 +77,11 @@ in { name = "psycopg2"; args.password = "synapse"; }; + redis = { + enabled = true; + host = "localhost"; + port = config.services.redis.servers.matrix-synapse.port; + }; tls_certificate_path = "${cert}"; tls_private_key_path = "${key}"; registration_shared_secret = registrationSharedSecret; @@ -107,6 +112,11 @@ in { ''; }; + services.redis.servers.matrix-synapse = { + enable = true; + port = 6380; + }; + networking.extraHosts = '' ${mailserverIP} ${mailerDomain} ''; @@ -208,6 +218,9 @@ in { serverpostgres.wait_until_succeeds( "curl --fail -L --cacert ${ca_pem} https://localhost:8448/" ) + serverpostgres.wait_until_succeeds( + "journalctl -u matrix-synapse.service | grep -q 'Connected to redis'" + ) serverpostgres.require_unit_state("postgresql.service") serverpostgres.succeed("register_new_matrix_user -u ${testUser} -p ${testPassword} -a -k ${registrationSharedSecret} https://localhost:8448/") serverpostgres.succeed("obtain-token-and-register-email") From 0767e0b6bdd5199f5153cfbac26516c3d91a4e9e Mon Sep 17 00:00:00 2001 From: Jeremy Kolb Date: Thu, 20 Jul 2023 11:18:16 -0400 Subject: [PATCH 05/53] open-vm-tools: Add myself as a maintainer --- pkgs/applications/virtualization/open-vm-tools/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/applications/virtualization/open-vm-tools/default.nix b/pkgs/applications/virtualization/open-vm-tools/default.nix index 93a562d50d7..286a6f74c97 100644 --- a/pkgs/applications/virtualization/open-vm-tools/default.nix +++ b/pkgs/applications/virtualization/open-vm-tools/default.nix @@ -145,6 +145,6 @@ stdenv.mkDerivation rec { ''; license = licenses.gpl2; platforms = [ "x86_64-linux" "i686-linux" "aarch64-linux" ]; - maintainers = with maintainers; [ joamaki ]; + maintainers = with maintainers; [ joamaki kjeremy ]; }; } From 5a3870c212a0d3f65c26ff599a261b02fe8fac6a Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Mon, 31 Jul 2023 18:01:18 +0200 Subject: [PATCH 06/53] nixos/matrix-synapse: expose final matrix-synapse package via `package`-option When extending this module, it might be necessary to run something from the package that's used in `matrix-synapse.service` (e.g. for workers). Now this can be trivially done by using `config.services.matrix-synapse.package`. Previously it was necessary to reuse the `PYTHONPATH` from the environment of `matrix-synapse.service`, but that one doesn't exist anymore. --- nixos/modules/services/matrix/synapse.nix | 27 +++++++++++++++-------- 1 file changed, 18 insertions(+), 9 deletions(-) diff --git a/nixos/modules/services/matrix/synapse.nix b/nixos/modules/services/matrix/synapse.nix index 5185e2ed8d3..f516c39d382 100644 --- a/nixos/modules/services/matrix/synapse.nix +++ b/nixos/modules/services/matrix/synapse.nix @@ -65,7 +65,6 @@ let ++ lib.optional (cfg.settings.database.name == "psycopg2") "postgres"; wrapped = pkgs.matrix-synapse.override { - matrix-synapse-unwrapped = cfg.package.unwrapped; extras = wantedExtras; inherit (cfg) plugins; }; @@ -170,18 +169,27 @@ in { package = mkOption { type = types.package; - default = pkgs.matrix-synapse; - defaultText = literalExpression "pkgs.matrix-synapse"; readOnly = true; description = lib.mdDoc '' - Wrapper package that gets configured through the module. + Reference to the `matrix-synapse` wrapper with all extras + (e.g. for `oidc` or `saml2`) added to the `PYTHONPATH` of all executables. - If you want to override the unwrapped package use an overlay. + This option is useful to reference the "final" `matrix-synapse` package that's + actually used by `matrix-synapse.service`. For instance, when using + workers, it's possible to run + `''${config.services.matrix-synapse.package}/bin/synapse_worker` and + no additional PYTHONPATH needs to be specified for extras or plugins configured + via `services.matrix-synapse`. + + However, this means that this option is supposed to be only declared + by the `services.matrix-synapse` module itself and is thus read-only. + In order to modify `matrix-synapse` itself, use an overlay to override + `pkgs.matrix-synapse-unwrapped`. ''; }; extras = mkOption { - type = types.listOf (types.enum (lib.attrNames cfg.package.unwrapped.optional-dependencies)); + type = types.listOf (types.enum (lib.attrNames pkgs.matrix-synapse-unwrapped.optional-dependencies)); default = defaultExtras; example = literalExpression '' [ @@ -242,7 +250,7 @@ in { default = {}; description = mdDoc '' The primary synapse configuration. See the - [sample configuration](https://github.com/matrix-org/synapse/blob/v${cfg.package.unwrapped.version}/docs/sample_config.yaml) + [sample configuration](https://github.com/matrix-org/synapse/blob/v${pkgs.matrix-synapse-unwrapped.version}/docs/sample_config.yaml) for possible values. Secrets should be passed in by using the `extraConfigFiles` option. @@ -755,6 +763,7 @@ in { ]; services.matrix-synapse.configFile = configFile; + services.matrix-synapse.package = wrapped; # default them, so they are additive services.matrix-synapse.settings.extras = defaultExtras; @@ -776,7 +785,7 @@ in { after = [ "network.target" ] ++ optional hasLocalPostgresDB "postgresql.service"; wantedBy = [ "multi-user.target" ]; preStart = '' - ${wrapped}/bin/synapse_homeserver \ + ${cfg.package}/bin/synapse_homeserver \ --config-path ${configFile} \ --keys-directory ${cfg.dataDir} \ --generate-keys @@ -794,7 +803,7 @@ in { chmod 0600 ${cfg.settings.signing_key_path} '')) ]; ExecStart = '' - ${wrapped}/bin/synapse_homeserver \ + ${cfg.package}/bin/synapse_homeserver \ ${ concatMapStringsSep "\n " (x: "--config-path ${x} \\") ([ configFile ] ++ cfg.extraConfigFiles) } --keys-directory ${cfg.dataDir} ''; From 638460ab9f9ff4db8d3946a946bd5f5f429a2d88 Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Mon, 31 Jul 2023 18:18:35 +0200 Subject: [PATCH 07/53] nixos/release-notes: reword section for synapse wrapper changes --- nixos/doc/manual/release-notes/rl-2311.section.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/nixos/doc/manual/release-notes/rl-2311.section.md b/nixos/doc/manual/release-notes/rl-2311.section.md index 76542e338e3..e9da669a93f 100644 --- a/nixos/doc/manual/release-notes/rl-2311.section.md +++ b/nixos/doc/manual/release-notes/rl-2311.section.md @@ -50,7 +50,12 @@ - The `services.ananicy.extraRules` option now has the type of `listOf attrs` instead of `string`. -- `matrix-synapse` now refers to a wrapper, encapsulating the original package, which has been renamed to `matrix-synapse-unwrapped`. The arguments `enableSystemd` and `enableRedis` have been removed. All extras can now be configured from [services.matrix-synapse.extras](#opt-services.matrix-synapse.extras), which configures the `extras` argument on the wrapper package. In most cases the required extras will automatically be discovered and installed, when relevant configuration sections are present. +- The `matrix-synapse` package & module have undergone some significant internal changes, for most setups no intervention is needed, though: + - The option [`services.matrix-synapse.package`](#opt-services.matrix-synapse.package) is now read-only. For modifying the package, use an overlay which modifies `matrix-synapse-unwrapped` instead. More on that below. + - The `enableSystemd` & `enableRedis` arguments have been removed and `matrix-synapse` has been renamed to `matrix-synapse-unwrapped`. Also, several optional dependencies (such as `psycopg2` or `authlib`) have been removed. + - These optional dependencies are automatically added via a wrapper (`pkgs.matrix-synapse.override { extras = ["postgres"]; }` for `psycopg2` for instance) if the relevant config section is declared in `services.matrix-synapse.settings`. For instance, if [`services.matrix-synapse.settings.database.name`](#opt-services.matrix-synapse.settings.database.name) is `psycopg2`, `"postgres"` will be automatically added to the `extras` list of `pkgs.matrix-synapse`. + - A list of all extras (and the extras enabled by default) can be found at the [option's reference for `services.matrix-synapse.extras`](#opt-services.matrix-synapse.extras). + - In some cases (e.g. for running synapse workers) it was necessary to re-use the `PYTHONPATH` of `matrix-synapse.service`'s environment to have all plugins available. This isn't necessary anymore, instead `config.services.matrix-synapse.package` can be used as it points to the wrapper with properly configured `extras` and also all plugins defined via [`services.matrix-synapse.plugins`](#opt-services.matrix-synapse.plugins) available. This is also the reason for why the option is read-only now, it's supposed to be set by the module only. - `etcd` has been updated to 3.5, you will want to read the [3.3 to 3.4](https://etcd.io/docs/v3.5/upgrades/upgrade_3_4/) and [3.4 to 3.5](https://etcd.io/docs/v3.5/upgrades/upgrade_3_5/) upgrade guides From 5bf466dae98770bc36fde98eb515bb2e58e0e1cb Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Mon, 31 Jul 2023 18:46:43 +0200 Subject: [PATCH 08/53] matrix-synapse: fix PYTHONPATH wrapper --- pkgs/servers/matrix-synapse/wrapper.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/servers/matrix-synapse/wrapper.nix b/pkgs/servers/matrix-synapse/wrapper.nix index 65f06e808a7..6be1e7af7fa 100644 --- a/pkgs/servers/matrix-synapse/wrapper.nix +++ b/pkgs/servers/matrix-synapse/wrapper.nix @@ -31,7 +31,7 @@ stdenv.mkDerivation { for bin in ${matrix-synapse-unwrapped}/bin/*; do echo $bin makeWrapper "$bin" "$out/bin/$(basename $bin)" \ - --set PYTHONPATH=${searchPath} + --set PYTHONPATH ${searchPath} done; ''; From 190886c5cca51bee671c5f3329ce03e119768029 Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Mon, 31 Jul 2023 18:54:17 +0200 Subject: [PATCH 09/53] nixos/matrix-synapse: clarify that `extras` are additive --- nixos/modules/services/matrix/synapse.nix | 4 ++++ pkgs/servers/matrix-synapse/wrapper.nix | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/nixos/modules/services/matrix/synapse.nix b/nixos/modules/services/matrix/synapse.nix index f516c39d382..4bcad572d06 100644 --- a/nixos/modules/services/matrix/synapse.nix +++ b/nixos/modules/services/matrix/synapse.nix @@ -212,6 +212,10 @@ in { Extras will automatically be enabled, when the relevant configuration sections are present. + + Please note that this option is additive: i.e. when adding a new item + to this list, the defaults are still kept. To override the defaults as well, + use `lib.mkForce`. ''; }; diff --git a/pkgs/servers/matrix-synapse/wrapper.nix b/pkgs/servers/matrix-synapse/wrapper.nix index 6be1e7af7fa..930142c5f55 100644 --- a/pkgs/servers/matrix-synapse/wrapper.nix +++ b/pkgs/servers/matrix-synapse/wrapper.nix @@ -12,7 +12,7 @@ }: let - extraPackages = lib.concatMap (extra: matrix-synapse-unwrapped.optional-dependencies.${extra}) extras; + extraPackages = lib.concatMap (extra: matrix-synapse-unwrapped.optional-dependencies.${extra}) (lib.unique extras); pluginsEnv = matrix-synapse-unwrapped.python.buildEnv.override { extraLibs = plugins; From 701d0e1da6372db7951025ff0b24ec48e82453d8 Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Mon, 31 Jul 2023 19:15:09 +0200 Subject: [PATCH 10/53] nixos/matrix-synapse: fix path to extras for additive settings --- nixos/modules/services/matrix/synapse.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/modules/services/matrix/synapse.nix b/nixos/modules/services/matrix/synapse.nix index 4bcad572d06..75c28d13a01 100644 --- a/nixos/modules/services/matrix/synapse.nix +++ b/nixos/modules/services/matrix/synapse.nix @@ -770,7 +770,7 @@ in { services.matrix-synapse.package = wrapped; # default them, so they are additive - services.matrix-synapse.settings.extras = defaultExtras; + services.matrix-synapse.extras = defaultExtras; users.users.matrix-synapse = { group = "matrix-synapse"; From 9f6ed8c2b26ad960b40c652dcc3a744e954ee449 Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Mon, 31 Jul 2023 19:27:22 +0200 Subject: [PATCH 11/53] nixos/release-notes: use redis as example for extras in synapse postgres isn't such a good idea actually because it's added by default to the wrapper. --- nixos/doc/manual/release-notes/rl-2311.section.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/doc/manual/release-notes/rl-2311.section.md b/nixos/doc/manual/release-notes/rl-2311.section.md index e9da669a93f..ece6b98dfef 100644 --- a/nixos/doc/manual/release-notes/rl-2311.section.md +++ b/nixos/doc/manual/release-notes/rl-2311.section.md @@ -53,7 +53,7 @@ - The `matrix-synapse` package & module have undergone some significant internal changes, for most setups no intervention is needed, though: - The option [`services.matrix-synapse.package`](#opt-services.matrix-synapse.package) is now read-only. For modifying the package, use an overlay which modifies `matrix-synapse-unwrapped` instead. More on that below. - The `enableSystemd` & `enableRedis` arguments have been removed and `matrix-synapse` has been renamed to `matrix-synapse-unwrapped`. Also, several optional dependencies (such as `psycopg2` or `authlib`) have been removed. - - These optional dependencies are automatically added via a wrapper (`pkgs.matrix-synapse.override { extras = ["postgres"]; }` for `psycopg2` for instance) if the relevant config section is declared in `services.matrix-synapse.settings`. For instance, if [`services.matrix-synapse.settings.database.name`](#opt-services.matrix-synapse.settings.database.name) is `psycopg2`, `"postgres"` will be automatically added to the `extras` list of `pkgs.matrix-synapse`. + - These optional dependencies are automatically added via a wrapper (`pkgs.matrix-synapse.override { extras = ["redis"]; }` for `hiredis` & `txredisapi` for instance) if the relevant config section is declared in `services.matrix-synapse.settings`. For instance, if `services.matrix-synapse.settings.redis.enabled` is set to `true`, `"redis"` will be automatically added to the `extras` list of `pkgs.matrix-synapse`. - A list of all extras (and the extras enabled by default) can be found at the [option's reference for `services.matrix-synapse.extras`](#opt-services.matrix-synapse.extras). - In some cases (e.g. for running synapse workers) it was necessary to re-use the `PYTHONPATH` of `matrix-synapse.service`'s environment to have all plugins available. This isn't necessary anymore, instead `config.services.matrix-synapse.package` can be used as it points to the wrapper with properly configured `extras` and also all plugins defined via [`services.matrix-synapse.plugins`](#opt-services.matrix-synapse.plugins) available. This is also the reason for why the option is read-only now, it's supposed to be set by the module only. From d2facca5c0c776bef2e142e129df90355ec80a27 Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Tue, 1 Aug 2023 18:16:56 +0200 Subject: [PATCH 12/53] nixos/matrix-synapse: fix option description of `extras` option Co-authored-by: Benjamin Saunders --- nixos/modules/services/matrix/synapse.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/modules/services/matrix/synapse.nix b/nixos/modules/services/matrix/synapse.nix index 75c28d13a01..ef69a8adebb 100644 --- a/nixos/modules/services/matrix/synapse.nix +++ b/nixos/modules/services/matrix/synapse.nix @@ -208,7 +208,7 @@ in { ''; description = lib.mdDoc '' Explicitly install extras provided by matrix-synapse. Most - will reconfigure some additional configuration. + will require some additional configuration. Extras will automatically be enabled, when the relevant configuration sections are present. From fb4da9bcad23e065a7dc8836fb573bb323c6590a Mon Sep 17 00:00:00 2001 From: Vincenzo Mantova <1962985+xworld21@users.noreply.github.com> Date: Sat, 5 Aug 2023 18:31:26 +0100 Subject: [PATCH 13/53] R: split tex output for use with texlive.combine --- pkgs/applications/science/math/R/default.nix | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/pkgs/applications/science/math/R/default.nix b/pkgs/applications/science/math/R/default.nix index 9ff9d693a88..d3ca419c48d 100644 --- a/pkgs/applications/science/math/R/default.nix +++ b/pkgs/applications/science/math/R/default.nix @@ -1,5 +1,5 @@ { lib, stdenv, fetchurl, bzip2, gfortran, libX11, libXmu, libXt, libjpeg, libpng -, libtiff, ncurses, pango, pcre2, perl, readline, tcl, texLive, tk, xz, zlib +, libtiff, ncurses, pango, pcre2, perl, readline, tcl, texlive, texLive, tk, xz, zlib , less, texinfo, graphviz, icu, pkg-config, bison, imake, which, jdk, blas, lapack , curl, Cocoa, Foundation, libobjc, libcxx, tzdata , withRecommendedPackages ? true @@ -24,6 +24,8 @@ stdenv.mkDerivation (finalAttrs: { sha256 = "sha256-jdC/JPECPG9hjDsxc4PSkbSklPQNc7mDrCL/6pnkupk="; }; + outputs = [ "out" "tex" ]; + dontUseImakeConfigure = true; nativeBuildInputs = [ pkg-config ]; @@ -89,6 +91,13 @@ stdenv.mkDerivation (finalAttrs: { installTargets = [ "install" "install-info" "install-pdf" ]; + # move tex files to $tex for use with texlive.combine + # add link in $out since ${R_SHARE_DIR}/texmf is hardcoded in several places + postInstall = '' + mv -T "$out/lib/R/share/texmf" "$tex" + ln -s "$tex" "$out/lib/R/share/texmf" + ''; + # The store path to "which" is baked into src/library/base/R/unix/system.unix.R, # but Nix cannot detect it as a run-time dependency because the installed file # is compiled and compressed, which hides the store path. @@ -103,6 +112,12 @@ stdenv.mkDerivation (finalAttrs: { passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage; + # make tex output available to texlive.combine + passthru.pkgs = [ finalAttrs.finalPackage.tex ]; + passthru.tlType = "run"; + # dependencies (based on \RequirePackage in jss.cls, Rd.sty, Sweave.sty) + passthru.tlDeps = with texlive; [ amsfonts amsmath fancyvrb graphics hyperref iftex jknapltx latex lm tools upquote url ]; + meta = with lib; { homepage = "http://www.r-project.org/"; description = "Free software environment for statistical computing and graphics"; From e05eb5e9ec6c5f15c90765fbfdfac63cc04a2084 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Wed, 9 Aug 2023 11:25:45 -0700 Subject: [PATCH 14/53] python310Packages.rapidfuzz: 3.1.1 -> 3.2.0 Diff: https://github.com/maxbachmann/RapidFuzz/compare/refs/tags/v3.1.1...v3.2.0 Changelog: https://github.com/maxbachmann/RapidFuzz/blob/refs/tags/v3.2.0/CHANGELOG.rst --- pkgs/development/python-modules/rapidfuzz/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/rapidfuzz/default.nix b/pkgs/development/python-modules/rapidfuzz/default.nix index 287104e5b78..422f90d71f7 100644 --- a/pkgs/development/python-modules/rapidfuzz/default.nix +++ b/pkgs/development/python-modules/rapidfuzz/default.nix @@ -18,7 +18,7 @@ buildPythonPackage rec { pname = "rapidfuzz"; - version = "3.1.1"; + version = "3.2.0"; format = "pyproject"; disabled = pythonOlder "3.7"; @@ -27,7 +27,7 @@ buildPythonPackage rec { owner = "maxbachmann"; repo = "RapidFuzz"; rev = "refs/tags/v${version}"; - hash = "sha256-nmPOYiozt5mDvFmEkRTIblECcGjV5650wZGGq+iSMPQ="; + hash = "sha256-Lt5m1SdZBzId6nvXXrEDQR3ZdA3yjoj15o3/nPeXPPs="; }; nativeBuildInputs = [ From 44759783f53e614c8cd2a94f83c744f91f919e36 Mon Sep 17 00:00:00 2001 From: figsoda Date: Fri, 11 Aug 2023 12:21:24 -0400 Subject: [PATCH 15/53] yaegi: init at 0.15.1 https://github.com/traefik/yaegi --- .../interpreters/yaegi/default.nix | 45 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 47 insertions(+) create mode 100644 pkgs/development/interpreters/yaegi/default.nix diff --git a/pkgs/development/interpreters/yaegi/default.nix b/pkgs/development/interpreters/yaegi/default.nix new file mode 100644 index 00000000000..dcde678338f --- /dev/null +++ b/pkgs/development/interpreters/yaegi/default.nix @@ -0,0 +1,45 @@ +{ lib +, buildGoModule +, fetchFromGitHub +, testers +, yaegi +}: + +buildGoModule rec { + pname = "yaegi"; + version = "0.15.1"; + + src = fetchFromGitHub { + owner = "traefik"; + repo = "yaegi"; + rev = "v${version}"; + hash = "sha256-ZV1HidHJvwum18QIIwQiCcRcitZdHk5+FxkPs6YgDac="; + }; + + vendorHash = null; + + subPackages = [ + "cmd/yaegi" + ]; + + ldflags = [ + "-s" + "-w" + "-X=main.version=${version}" + ]; + + passthru.tests = { + version = testers.testVersion { + package = yaegi; + command = "yaegi version"; + }; + }; + + meta = with lib; { + description = "A Go interpreter"; + homepage = "https://github.com/traefik/yaegi"; + changelog = "https://github.com/traefik/yaegi/releases/tag/${src.rev}"; + license = licenses.asl20; + maintainers = with maintainers; [ figsoda ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 3438afb51bc..f6fdd85025e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -18078,6 +18078,8 @@ with pkgs; wasm3 = callPackage ../development/interpreters/wasm3 { }; + yaegi = callPackage ../development/interpreters/yaegi { }; + yex-lang = callPackage ../development/interpreters/yex-lang { }; ### DEVELOPMENT / MISC From 56f88869536fa60f3bb61358572ffe43b492a39f Mon Sep 17 00:00:00 2001 From: figsoda Date: Fri, 11 Aug 2023 12:35:31 -0400 Subject: [PATCH 16/53] anko: init at 0.1.9 https://github.com/mattn/anko --- .../development/interpreters/anko/default.nix | 29 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 31 insertions(+) create mode 100644 pkgs/development/interpreters/anko/default.nix diff --git a/pkgs/development/interpreters/anko/default.nix b/pkgs/development/interpreters/anko/default.nix new file mode 100644 index 00000000000..f88534e9ecf --- /dev/null +++ b/pkgs/development/interpreters/anko/default.nix @@ -0,0 +1,29 @@ +{ lib +, buildGoModule +, fetchFromGitHub +}: + +buildGoModule rec { + pname = "anko"; + version = "0.1.9"; + + src = fetchFromGitHub { + owner = "mattn"; + repo = "anko"; + rev = "v${version}"; + hash = "sha256-ZVNkQu5IxBx3f+FkUWc36EOEcY176wQJ2ravLPQAHAA="; + }; + + vendorHash = null; + + ldflags = [ "-s" "-w" ]; + + __darwinAllowLocalNetworking = true; + + meta = with lib; { + description = "Scriptable interpreter written in golang"; + homepage = "https://github.com/mattn/anko"; + license = licenses.mit; + maintainers = with maintainers; [ figsoda ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 3438afb51bc..4aa3f5c0dbd 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -17438,6 +17438,8 @@ with pkgs; angelscript = callPackage ../development/interpreters/angelscript { }; + anko = callPackage ../development/interpreters/anko { }; + babashka-unwrapped = callPackage ../development/interpreters/babashka { }; babashka = callPackage ../development/interpreters/babashka/wrapped.nix { }; From 0cc75a5ec7e6828bd15dd62dfdf221bdcd04e9cd Mon Sep 17 00:00:00 2001 From: figsoda Date: Fri, 11 Aug 2023 19:16:39 -0400 Subject: [PATCH 17/53] cyber: init at unstable-2023-08-11 https://github.com/fubark/cyber --- .../interpreters/cyber/default.nix | 38 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 40 insertions(+) create mode 100644 pkgs/development/interpreters/cyber/default.nix diff --git a/pkgs/development/interpreters/cyber/default.nix b/pkgs/development/interpreters/cyber/default.nix new file mode 100644 index 00000000000..9c1d94b0c7f --- /dev/null +++ b/pkgs/development/interpreters/cyber/default.nix @@ -0,0 +1,38 @@ +{ lib +, stdenv +, fetchFromGitHub +, zig_0_11 +}: + +stdenv.mkDerivation rec { + pname = "cyber"; + version = "unstable-2023-08-11"; + + src = fetchFromGitHub { + owner = "fubark"; + repo = "cyber"; + rev = "242ba2573cbac2acecc8c06878a8d754dd7a8716"; + hash = "sha256-jArkFdvWnHNouNGsTn8O2lbU7eZdLbPD0xEfkrFH5Aw="; + }; + + nativeBuildInputs = [ + zig_0_11.hook + ]; + + zigBuildFlags = [ + "cli" + ]; + + env = { + COMMIT = lib.substring 0 7 src.rev; + }; + + meta = with lib; { + description = "A fast, efficient, and concurrent scripting language"; + homepage = "https://github.com/fubark/cyber"; + license = licenses.mit; + maintainers = with maintainers; [ figsoda ]; + inherit (zig_0_11.meta) platforms; + broken = stdenv.isDarwin; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 674ad274628..7989622a86e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -30855,6 +30855,8 @@ with pkgs; cwm = callPackage ../applications/window-managers/cwm { }; + cyber = callPackage ../development/interpreters/cyber { }; + cyberduck = callPackage ../applications/networking/cyberduck { }; cyclone = callPackage ../applications/audio/pd-plugins/cyclone { }; From d85e9676b5c696f0267f9d7b671b95d8e112d36a Mon Sep 17 00:00:00 2001 From: Mostly Void <7rat13@gmail.com> Date: Sat, 12 Aug 2023 17:42:07 +0300 Subject: [PATCH 18/53] slack: 4.33.73 -> 4.33.84 --- .../networking/instant-messengers/slack/default.nix | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/pkgs/applications/networking/instant-messengers/slack/default.nix b/pkgs/applications/networking/instant-messengers/slack/default.nix index 44846df1c74..03aa4199fe3 100644 --- a/pkgs/applications/networking/instant-messengers/slack/default.nix +++ b/pkgs/applications/networking/instant-messengers/slack/default.nix @@ -45,14 +45,14 @@ let pname = "slack"; - x86_64-darwin-version = "4.33.73"; - x86_64-darwin-sha256 = "0y8plkl3pm8250xpavc91kn5b9gcdwr7bqzd3i79n48395lx11ka"; + x86_64-darwin-version = "4.33.84"; + x86_64-darwin-sha256 = "1qkcj0w5rqfdj8l7p7gv2ck0rgkm5sc8490f8mnbflgvjj9y0gsb"; - x86_64-linux-version = "4.33.73"; - x86_64-linux-sha256 = "007i8sjnm1ikjxvgw6nisj4nmv99bwk0r4sfpvc2j4w4wk68sx3m"; + x86_64-linux-version = "4.33.84"; + x86_64-linux-sha256 = "0cjl3m9gprxkm57889l1avkl21pyc7bzhcgm4j5yf938dp699zhd"; - aarch64-darwin-version = "4.33.73"; - aarch64-darwin-sha256 = "15s3ss15yawb04dyzn82xmk1gs70sg2i3agsj2aw0xdx73yjl34p"; + aarch64-darwin-version = "4.33.84"; + aarch64-darwin-sha256 = "0aw4wn4xx304dyzz7v9lmdgwg1345lhizil8yq9cjqy5kas3zj34"; version = { x86_64-darwin = x86_64-darwin-version; From c82a5f91accc3aadb7a6fc702af005dae28e577e Mon Sep 17 00:00:00 2001 From: Mathieu Rene Date: Sun, 13 Aug 2023 15:00:08 -0400 Subject: [PATCH 19/53] devbox: 0.5.7 -> 0.5.11 --- pkgs/development/tools/devbox/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/tools/devbox/default.nix b/pkgs/development/tools/devbox/default.nix index 5e62da0bafb..54a287c8a2f 100644 --- a/pkgs/development/tools/devbox/default.nix +++ b/pkgs/development/tools/devbox/default.nix @@ -5,13 +5,13 @@ }: buildGoModule rec { pname = "devbox"; - version = "0.5.7"; + version = "0.5.11"; src = fetchFromGitHub { owner = "jetpack-io"; repo = pname; rev = version; - hash = "sha256-dGBkLWF/lzE1WxC7BG52N2zJZJNL+wZGI/H+9Dy9zZk="; + hash = "sha256-eJpB1hZu6AGFE86uj2RAaoKHAwivwQhQNimFMglpBLM="; }; ldflags = [ @@ -23,7 +23,7 @@ buildGoModule rec { # integration tests want file system access doCheck = false; - vendorHash = "sha256-wsVJZEaLdx/rhVcl0LQwc7fw2H6S336kfP3eFuGd4tA="; + vendorHash = "sha256-UTGngCsiqMjxQSdA3QMA/fPC3k+OrjqJ1Q6stXerjQQ="; nativeBuildInputs = [ installShellFiles ]; From ef66aec42b5f9035a675496e9a7fe57b63505646 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 13 Aug 2023 23:19:20 +0000 Subject: [PATCH 20/53] odin: dev-2023-07 -> dev-2023-08 --- pkgs/development/compilers/odin/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/compilers/odin/default.nix b/pkgs/development/compilers/odin/default.nix index 340c56284f8..81a7faf7390 100644 --- a/pkgs/development/compilers/odin/default.nix +++ b/pkgs/development/compilers/odin/default.nix @@ -12,13 +12,13 @@ let inherit (llvmPackages) stdenv; in stdenv.mkDerivation rec { pname = "odin"; - version = "dev-2023-07"; + version = "dev-2023-08"; src = fetchFromGitHub { owner = "odin-lang"; repo = "Odin"; rev = version; - hash = "sha256-ksCK1Qmjbg5ZgFoq0I4cjrWaCxd+UW7f1NLcSjCPMwE="; + hash = "sha256-pmgrauhB5/JWBkwrAm7tCml9IYQhXyGXsNVDKTntA0M="; }; nativeBuildInputs = [ From f98ba765133c48430f601c692082505e98c1d75e Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 13 Aug 2023 23:47:55 +0000 Subject: [PATCH 21/53] circleci-cli: 0.1.28084 -> 0.1.28528 --- pkgs/development/tools/misc/circleci-cli/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/tools/misc/circleci-cli/default.nix b/pkgs/development/tools/misc/circleci-cli/default.nix index a6808c2bb3b..6904414601a 100644 --- a/pkgs/development/tools/misc/circleci-cli/default.nix +++ b/pkgs/development/tools/misc/circleci-cli/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "circleci-cli"; - version = "0.1.28084"; + version = "0.1.28528"; src = fetchFromGitHub { owner = "CircleCI-Public"; repo = pname; rev = "v${version}"; - sha256 = "sha256-LyD9zAS/tjI6Ad+tC2mCadOEuXHlhkNpF0M5lzli5Qc="; + sha256 = "sha256-y8KpJdJLYSsDLT6/z0/Nx9qByLdtNNBeiwFUupJxxCQ="; }; - vendorHash = "sha256-bPi0voXVJPAMWuovDInzk2PzbP0kPFpyOyjYoPZTNLM="; + vendorHash = "sha256-OWdJ7nFR5hrKQf2H763ezjXkEh0PvtBcjjeSNvH+ca4="; nativeBuildInputs = [ installShellFiles ]; From 7ba7619f28ca75def0cecfbbf1fd70d286e56e3b Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 13 Aug 2023 23:55:50 +0000 Subject: [PATCH 22/53] eks-node-viewer: 0.4.2 -> 0.4.3 --- .../networking/cluster/eks-node-viewer/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/networking/cluster/eks-node-viewer/default.nix b/pkgs/applications/networking/cluster/eks-node-viewer/default.nix index be01702cdc9..b4f9ce722e7 100644 --- a/pkgs/applications/networking/cluster/eks-node-viewer/default.nix +++ b/pkgs/applications/networking/cluster/eks-node-viewer/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "eks-node-viewer"; - version = "0.4.2"; + version = "0.4.3"; src = fetchFromGitHub { owner = "awslabs"; repo = pname; rev = "v${version}"; - sha256 = "sha256-zuez0ELtlphMHP/Pxu5ARnYhkmLJW/ehNrTLXSGmGL8="; + sha256 = "sha256-570wOLUtKKzDDLLDrAOPAnAUpZeAqrwKsQWoHCBjKKk="; }; - vendorHash = "sha256-n2H6hiKZqujrJyojO2uQTIMLMHaX//t7328GPK6hxH0="; + vendorHash = "sha256-kRRUaA/psQDmcM1ZhzdZE3eyw8DWZpesJVA2zVfORGk="; ldflags = [ "-s" From 2bcd827d6917dc3209f55fdb91be4fb52c4a0968 Mon Sep 17 00:00:00 2001 From: kashw2 Date: Mon, 14 Aug 2023 09:55:52 +1000 Subject: [PATCH 23/53] pscale: 0.151.0 -> 0.153.0 --- pkgs/development/tools/pscale/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/tools/pscale/default.nix b/pkgs/development/tools/pscale/default.nix index 87c93e2de84..6550fe0cc42 100644 --- a/pkgs/development/tools/pscale/default.nix +++ b/pkgs/development/tools/pscale/default.nix @@ -8,16 +8,16 @@ buildGoModule rec { pname = "pscale"; - version = "0.151.0"; + version = "0.153.0"; src = fetchFromGitHub { owner = "planetscale"; repo = "cli"; rev = "v${version}"; - sha256 = "sha256-w5FNZ7oFA+2weZtEsLX6eOwNyqVreDHg+2FApTsV5L0="; + sha256 = "sha256-iEn3iF13WSaNTF3+IHB1DlKNDPC1ObLQ2oAzPP8ffRM="; }; - vendorHash = "sha256-I/cZa5IDmnYw/MU5h7jarYqbTY+5NrDDj5pz9WTcvGo="; + vendorHash = "sha256-hj+uzb1mpFrbbZXozCP9166i0C5pwIKhEtJOxovBCZE="; ldflags = [ "-s" "-w" From a9e28f712b2630555e59f005e3d7aeb5d2e21582 Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Mon, 14 Aug 2023 11:16:37 +0800 Subject: [PATCH 24/53] touchegg: 2.0.16 -> 2.0.17 https://github.com/JoseExposito/touchegg/compare/2.0.16...2.0.17 --- pkgs/tools/inputmethods/touchegg/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/inputmethods/touchegg/default.nix b/pkgs/tools/inputmethods/touchegg/default.nix index ff9786cfe3b..de30b853670 100644 --- a/pkgs/tools/inputmethods/touchegg/default.nix +++ b/pkgs/tools/inputmethods/touchegg/default.nix @@ -18,13 +18,13 @@ stdenv.mkDerivation rec { pname = "touchegg"; - version = "2.0.16"; + version = "2.0.17"; src = fetchFromGitHub { owner = "JoseExposito"; repo = pname; rev = version; - sha256 = "sha256-/0XeFW0cdS1/UaE/z2FROwk2dTyZMqXjiBzt62x8f8o="; + sha256 = "sha256-he6ERl6ZNWuD5StUqQWsUjeJ35nD0b8KddIAvntqlOI="; }; patches = lib.optionals withPantheon [ From d04e4797e4446705aae9e88613e12411830af017 Mon Sep 17 00:00:00 2001 From: Aaron Jheng Date: Mon, 14 Aug 2023 11:26:02 +0800 Subject: [PATCH 25/53] sad: 0.4.22 -> 0.4.23 --- pkgs/tools/text/sad/default.nix | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/text/sad/default.nix b/pkgs/tools/text/sad/default.nix index 9225fd98b86..da4ff0804b1 100644 --- a/pkgs/tools/text/sad/default.nix +++ b/pkgs/tools/text/sad/default.nix @@ -1,20 +1,23 @@ { lib , fetchFromGitHub , rustPlatform +, python3 }: rustPlatform.buildRustPackage rec { pname = "sad"; - version = "0.4.22"; + version = "0.4.23"; src = fetchFromGitHub { owner = "ms-jpq"; repo = pname; rev = "v${version}"; - sha256 = "sha256-v1fXEC+bV561cewH17x+1anhfXstGBOHG5rHvhYIvLo="; + hash = "sha256-LNMc+3pXx7VyNq0dws+s13ZA3+f8aJzgbAxzI71NKx0="; }; - cargoSha256 = "sha256-krQTa9R3hmMVKLoBgnbCw+aSQu9HUXfA3XflB8AZv6w="; + cargoHash = "sha256-UjXJmH4UI5Vey2rBy57CI1r13bpGYhIozEoOoyoRDLQ="; + + nativeBuildInputs = [ python3 ]; # fix for compilation on aarch64 # see https://github.com/NixOS/nixpkgs/issues/145726 From 28f665d9b250af1ae4f0053bee11f80b70c19984 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christina=20S=C3=B8rensen?= Date: Mon, 14 Aug 2023 05:27:06 +0200 Subject: [PATCH 26/53] ast-grep: added cafkafk as maintainer MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Christina Sørensen --- pkgs/development/tools/misc/ast-grep/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/tools/misc/ast-grep/default.nix b/pkgs/development/tools/misc/ast-grep/default.nix index 47d7db0390a..6eef36d3c1c 100644 --- a/pkgs/development/tools/misc/ast-grep/default.nix +++ b/pkgs/development/tools/misc/ast-grep/default.nix @@ -33,6 +33,6 @@ rustPlatform.buildRustPackage rec { homepage = "https://ast-grep.github.io/"; changelog = "https://github.com/ast-grep/ast-grep/blob/${src.rev}/CHANGELOG.md"; license = licenses.mit; - maintainers = with maintainers; [ montchr lord-valen ]; + maintainers = with maintainers; [ montchr lord-valen cafkafk ]; }; } From 5e1c46c2daa1f8168725c330870144708df204c1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christina=20S=C3=B8rensen?= Date: Mon, 14 Aug 2023 05:38:04 +0200 Subject: [PATCH 27/53] ast-grep: 0.10.0 -> 0.11.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Christina Sørensen --- pkgs/development/tools/misc/ast-grep/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/tools/misc/ast-grep/default.nix b/pkgs/development/tools/misc/ast-grep/default.nix index 6eef36d3c1c..40924e195de 100644 --- a/pkgs/development/tools/misc/ast-grep/default.nix +++ b/pkgs/development/tools/misc/ast-grep/default.nix @@ -6,16 +6,16 @@ rustPlatform.buildRustPackage rec { pname = "ast-grep"; - version = "0.10.0"; + version = "0.11.0"; src = fetchFromGitHub { owner = "ast-grep"; repo = "ast-grep"; rev = version; - hash = "sha256-Il7VJyp4iIo8KrFHRoE4QptgzlJGKr+Npp2IkjDx/vc="; + hash = "sha256-chx37D0y05nIlXmP4SsWvsO+36BV7drTYpJCgMIl5xA="; }; - cargoHash = "sha256-KReLBqdXtef20tULasw47wrm5k+qUBwo8tPiOTvD9cQ="; + cargoHash = "sha256-VfuBee2F2FxhcTE1JwosFgQI9+stzDuOHfpLv25rcNw="; # error: linker `aarch64-linux-gnu-gcc` not found postPatch = '' From 9fffd676fc13da448189e378569148f31e3d1172 Mon Sep 17 00:00:00 2001 From: Aaron Jheng Date: Mon, 14 Aug 2023 12:14:35 +0800 Subject: [PATCH 28/53] morsel: 0.1.0 -> 0.1.1 --- pkgs/tools/text/morsel/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/text/morsel/default.nix b/pkgs/tools/text/morsel/default.nix index dc0fa9ef9b2..b761b03e83d 100644 --- a/pkgs/tools/text/morsel/default.nix +++ b/pkgs/tools/text/morsel/default.nix @@ -2,16 +2,16 @@ rustPlatform.buildRustPackage rec { pname = "morsel"; - version = "0.1.0"; + version = "0.1.1"; src = fetchFromGitHub { owner = "SamLee514"; repo = "morsel"; rev = "v${version}"; - sha256 = "sha256-m4bCni/9rMTPhZSogpd5+ARrW11TPHSvQpdz3wUr9H4="; + hash = "sha256-bb+88GIyd92kHJAs25mJ9vmq0Ha2q0fdHnpTXhX2BFE="; }; - cargoSha256 = "sha256-2xR2/013ocDKWS1oWitpAbSDPRwEJJqFcCIm6ZQpCoc="; + cargoHash = "sha256-XRl71n+rV6MTQMz957K5/25SX9HvYVW6qAuHTdfRLLs="; meta = with lib; { description = "Command line tool to translate morse code input to text in real time"; From a82adc890a3c03c8c298ddf0f507414a8683c921 Mon Sep 17 00:00:00 2001 From: Aaron Jheng Date: Mon, 14 Aug 2023 12:15:53 +0800 Subject: [PATCH 29/53] coloursum: 0.2.0 -> 0.3.0 --- pkgs/tools/text/coloursum/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/text/coloursum/default.nix b/pkgs/tools/text/coloursum/default.nix index 8391b75a67b..93ebf6c309e 100644 --- a/pkgs/tools/text/coloursum/default.nix +++ b/pkgs/tools/text/coloursum/default.nix @@ -2,16 +2,16 @@ rustPlatform.buildRustPackage rec { pname = "coloursum"; - version = "0.2.0"; + version = "0.3.0"; src = fetchFromGitHub { owner = "ticky"; repo = "coloursum"; rev = "v${version}"; - sha256 = "1piz0l7qdcvjzfykm6rzqc8s1daxp3cj3923v9cmm41bc2v0p5q0"; + hash = "sha256-zA2JhSnlFccSY01WMGsgF4AmrF/3BRUCcSMfoEbEPgA="; }; - cargoSha256 = "08l01ivmln9gwabwa1p0gk454qyxlcpnlxx840vys476f4pw7vvf"; + cargoHash = "sha256-dhcTpff4h37MHNbLoYUZiolSclSGcFrMJ3kKLCZAVAw="; buildInputs = lib.optional stdenv.isDarwin Security; From 1ad146d6279337331eb46bc9a94451c6b157dede Mon Sep 17 00:00:00 2001 From: Mario Rodas Date: Mon, 14 Aug 2023 04:20:00 +0000 Subject: [PATCH 30/53] flexget: 3.8.5 -> 3.8.6 Diff: https://github.com/Flexget/Flexget/compare/refs/tags/v3.8.5...v3.8.6 Changelog: https://github.com/Flexget/Flexget/releases/tag/v3.8.6 --- pkgs/applications/networking/flexget/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/networking/flexget/default.nix b/pkgs/applications/networking/flexget/default.nix index 535f9f32df9..3e4e60376c3 100644 --- a/pkgs/applications/networking/flexget/default.nix +++ b/pkgs/applications/networking/flexget/default.nix @@ -6,7 +6,7 @@ python3.pkgs.buildPythonApplication rec { pname = "flexget"; - version = "3.8.5"; + version = "3.8.6"; format = "pyproject"; # Fetch from GitHub in order to use `requirements.in` @@ -14,7 +14,7 @@ python3.pkgs.buildPythonApplication rec { owner = "Flexget"; repo = "Flexget"; rev = "refs/tags/v${version}"; - hash = "sha256-lvZVezg5MORsNkWGo7iqtyRlo68JcVLiG+2hhiSdRZ8="; + hash = "sha256-KF5d9SjKUkkHoYWmNWNBMe567w2StgEFsZprS+SFw7Y="; }; postPatch = '' From e3d74b30b00321414f550522ec19eddf58a50377 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 14 Aug 2023 05:33:04 +0000 Subject: [PATCH 31/53] bpfmon: 2.51 -> 2.52 --- pkgs/os-specific/linux/bpfmon/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/bpfmon/default.nix b/pkgs/os-specific/linux/bpfmon/default.nix index c75b9375e3b..f0815376c2a 100644 --- a/pkgs/os-specific/linux/bpfmon/default.nix +++ b/pkgs/os-specific/linux/bpfmon/default.nix @@ -7,13 +7,13 @@ stdenv.mkDerivation rec { pname = "bpfmon"; - version = "2.51"; + version = "2.52"; src = fetchFromGitHub { owner = "bbonev"; repo = "bpfmon"; rev = "refs/tags/v${version}"; - hash = "sha256-EGRxWq94BWceYXunzcOpMQv4g7cMjVCEWMR0ULGN2Jg="; + hash = "sha256-W7OnrC+FCxMd4YbYiybjIvO0LT7Hr1/0Y3BQwItaTBs="; }; buildInputs = [ From 9e27821dd143f7cad86da02b18e8789fd73bf287 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 14 Aug 2023 06:21:46 +0000 Subject: [PATCH 32/53] python310Packages.langchain: 0.0.254 -> 0.0.263 --- pkgs/development/python-modules/langchain/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/langchain/default.nix b/pkgs/development/python-modules/langchain/default.nix index d03ce98f2fe..ead028dd94d 100644 --- a/pkgs/development/python-modules/langchain/default.nix +++ b/pkgs/development/python-modules/langchain/default.nix @@ -85,7 +85,7 @@ buildPythonPackage rec { pname = "langchain"; - version = "0.0.254"; + version = "0.0.263"; format = "pyproject"; disabled = pythonOlder "3.8"; @@ -94,7 +94,7 @@ buildPythonPackage rec { owner = "hwchase17"; repo = "langchain"; rev = "refs/tags/v${version}"; - hash = "sha256-YQFIF1tA/CjvmD6xGgVre2lbcHR+UYx/sy1dOfpvkPY="; + hash = "sha256-/ReuUVSVO/JqfXFmGU/Yk5GAzmSuJvnr8zOTw3qLZvQ="; }; sourceRoot = "${src.name}/libs/langchain"; From db4fa6837790174e94f7c9d6f6aff8c92f7d4dbb Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Mon, 14 Aug 2023 09:41:35 +0200 Subject: [PATCH 33/53] python311Packages.textual: 0.28.1 -> 0.32.0 Diff: https://github.com/Textualize/textual/compare/refs/tags/v0.28.1...v0.32.0 Changelog: https://github.com/Textualize/textual/releases/tag/v0.32.0 --- .../python-modules/textual/default.nix | 40 +++++++++++-------- 1 file changed, 23 insertions(+), 17 deletions(-) diff --git a/pkgs/development/python-modules/textual/default.nix b/pkgs/development/python-modules/textual/default.nix index 99b71d27738..9fc1623a39e 100644 --- a/pkgs/development/python-modules/textual/default.nix +++ b/pkgs/development/python-modules/textual/default.nix @@ -1,28 +1,28 @@ { lib +, aiohttp , buildPythonPackage +, click , fetchFromGitHub -, poetry-core -, mkdocs-exclude +, importlib-metadata +, jinja2 +, linkify-it-py , markdown-it-py , mdit-py-plugins -, linkify-it-py -, importlib-metadata -, rich -, typing-extensions -, aiohttp -, click -, jinja2 +, mkdocs-exclude , msgpack +, poetry-core , pytest-aiohttp , pytestCheckHook , pythonOlder +, rich , syrupy , time-machine +, typing-extensions }: buildPythonPackage rec { pname = "textual"; - version = "0.28.1"; + version = "0.32.0"; format = "pyproject"; disabled = pythonOlder "3.7"; @@ -31,7 +31,7 @@ buildPythonPackage rec { owner = "Textualize"; repo = pname; rev = "refs/tags/v${version}"; - hash = "sha256-tSCMKM9Wv4crl6SLcIc2r6QY6U3RBTW8yfAjkYLV3eE="; + hash = "sha256-hsqVZoQ3PJm0GD5EVfmtwD/7ZcN+xu3kCBbS1q+atf8="; }; nativeBuildInputs = [ @@ -39,15 +39,15 @@ buildPythonPackage rec { ]; propagatedBuildInputs = [ - rich - markdown-it-py - mdit-py-plugins - linkify-it-py - importlib-metadata aiohttp click - msgpack + importlib-metadata + linkify-it-py + markdown-it-py + mdit-py-plugins mkdocs-exclude + msgpack + rich ] ++ lib.optionals (pythonOlder "3.11") [ typing-extensions ]; @@ -65,6 +65,12 @@ buildPythonPackage rec { "tests/snapshot_tests/test_snapshots.py" ]; + disabledTests = [ + # Assertion issues + "test_textual_env_var" + "test_softbreak_split_links_rendered_correctly" + ]; + pythonImportsCheck = [ "textual" ]; From 887665e9cc881af5e22e6b65edb001171a29e97c Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 14 Aug 2023 08:47:08 +0000 Subject: [PATCH 34/53] python310Packages.django-classy-tags: 4.0.0 -> 4.1.0 --- .../development/python-modules/django-classy-tags/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/django-classy-tags/default.nix b/pkgs/development/python-modules/django-classy-tags/default.nix index 06a336be081..c5db8fe8fca 100644 --- a/pkgs/development/python-modules/django-classy-tags/default.nix +++ b/pkgs/development/python-modules/django-classy-tags/default.nix @@ -7,14 +7,14 @@ buildPythonPackage rec { pname = "django-classy-tags"; - version = "4.0.0"; + version = "4.1.0"; format = "setuptools"; disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - hash = "sha256-25/Hxe0I3CYZzEwZsZUUzawT3bYYJ4qwcJTGJtKO7w0="; + hash = "sha256-yNnRqi+m5xxNhm303RHSOmm40lu7dQskkKF7Fhd07lk="; }; propagatedBuildInputs = [ From 661d2a9275a14082e92d37942b93331e3dcce8a2 Mon Sep 17 00:00:00 2001 From: Ilan Joselevich Date: Mon, 14 Aug 2023 11:56:43 +0300 Subject: [PATCH 35/53] pam_rssh: unstable-2023-03-18 -> 1.1.0 Diff: https://github.com/z4yx/pam_rssh/compare/92c240bd079e9711c7afa8bacfcf01de48f42577...v1.1.0 --- pkgs/os-specific/linux/pam_rssh/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/pam_rssh/default.nix b/pkgs/os-specific/linux/pam_rssh/default.nix index 51cba4d8420..d19457bf376 100644 --- a/pkgs/os-specific/linux/pam_rssh/default.nix +++ b/pkgs/os-specific/linux/pam_rssh/default.nix @@ -9,7 +9,7 @@ rustPlatform.buildRustPackage { pname = "pam_rssh"; - version = "unstable-2023-03-18"; + version = "1.1.0"; src = fetchFromGitHub { owner = "z4yx"; @@ -19,7 +19,7 @@ rustPlatform.buildRustPackage { fetchSubmodules = true; }; - cargoHash = "sha256-/AQqjmAGgvnpVWyoK3ymZ1gNAhTSN30KQEiqv4G+zx8="; + cargoHash = "sha256-QMyMqsjZ91WimIaaSCXtbRScS3BoB+yFtHjx3xViq7U="; nativeBuildInputs = [ pkg-config From 145bcb6dbf2e76d86bec248d2744a8eb2de99f15 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Mon, 14 Aug 2023 09:14:32 +0000 Subject: [PATCH 36/53] python311Packages.jupyterlab-lsp: mark as broken for Jupyterlab > 4 --- pkgs/development/python-modules/jupyterlab-lsp/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/development/python-modules/jupyterlab-lsp/default.nix b/pkgs/development/python-modules/jupyterlab-lsp/default.nix index 5ebdb8ae5f5..b7d5ce4cf0c 100644 --- a/pkgs/development/python-modules/jupyterlab-lsp/default.nix +++ b/pkgs/development/python-modules/jupyterlab-lsp/default.nix @@ -28,5 +28,8 @@ buildPythonPackage rec { license = licenses.bsd3; platforms = platforms.all; maintainers = with maintainers; [ ]; + # No support for Jupyterlab > 4 + # https://github.com/jupyter-lsp/jupyterlab-lsp/pull/949 + broken = lib.versionAtLeast jupyterlab.version "4.0"; }; } From 399252962be9ea91c8307206635c7c9361fcd4c6 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 14 Aug 2023 11:48:20 +0200 Subject: [PATCH 37/53] nixVersions.nix_2_15: 2.15.1 -> 2.15.2 --- pkgs/tools/package-management/nix/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/package-management/nix/default.nix b/pkgs/tools/package-management/nix/default.nix index 1482931bf4d..a6f0ac7be39 100644 --- a/pkgs/tools/package-management/nix/default.nix +++ b/pkgs/tools/package-management/nix/default.nix @@ -177,8 +177,8 @@ in lib.makeExtensible (self: ({ }; nix_2_15 = common { - version = "2.15.1"; - hash = "sha256-o7bxsNeq2LF6/dTl+lT2k50bSItkID80/uoZYVtlxro="; + version = "2.15.2"; + hash = "sha256-0BxVsvp4JfliYu4EdpZ/zPYOt9Qn5w9Ix5r0sagZZ7o="; }; nix_2_16 = common { From c53f98ef630a5179b04fe4012f72e0fd4fd47fda Mon Sep 17 00:00:00 2001 From: Donovan Glover Date: Sun, 13 Aug 2023 19:05:15 -0400 Subject: [PATCH 38/53] hyprdim: 2.1.0 -> 2.2.1 --- pkgs/applications/misc/hyprdim/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/misc/hyprdim/default.nix b/pkgs/applications/misc/hyprdim/default.nix index 8f61623be54..f7cf680ad0d 100644 --- a/pkgs/applications/misc/hyprdim/default.nix +++ b/pkgs/applications/misc/hyprdim/default.nix @@ -6,16 +6,16 @@ rustPlatform.buildRustPackage rec { pname = "hyprdim"; - version = "2.1.0"; + version = "2.2.1"; src = fetchFromGitHub { owner = "donovanglover"; repo = pname; rev = version; - hash = "sha256-EJ+3rmfRJOt9xiuWlR5IBoEzChwp35CUum25lYnFY14="; + hash = "sha256-6HeVLgEJDPy4cWL5td3Xl7+a6WUFZWUFynvBzPhItcg="; }; - cargoHash = "sha256-Pd7dM+PPI0mwxbdfTu+gZ0tScZDGa2vGqEwuj8gW1Sk="; + cargoHash = "sha256-qYX5o64X8PsFcTYuZ82lIShyUN69oTzQIHrQH4B7iIw="; nativeBuildInputs = [ installShellFiles From 6eb97ebbf9faf6faa52890b6dd11fee2ad3c032f Mon Sep 17 00:00:00 2001 From: Ulrik Strid Date: Mon, 14 Aug 2023 12:45:00 +0200 Subject: [PATCH 39/53] ocamlPackages.linol: 2023-04-25 -> 2023-08-04 --- pkgs/development/ocaml-modules/linol/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/ocaml-modules/linol/default.nix b/pkgs/development/ocaml-modules/linol/default.nix index 34f32cf4f7b..9b53cd82eb9 100644 --- a/pkgs/development/ocaml-modules/linol/default.nix +++ b/pkgs/development/ocaml-modules/linol/default.nix @@ -3,7 +3,7 @@ buildDunePackage rec { pname = "linol"; - version = "2023-04-25"; + version = "2023-08-04"; minimalOCamlVersion = "4.14"; duneVersion = "3"; @@ -12,8 +12,8 @@ rec { owner = "c-cube"; repo = "linol"; # Brings support for newer LSP - rev = "439534e0c5b7a3fbf93ba05fae7d171426153763"; - sha256 = "sha256-EW35T7KUc/L1Zy4+oaJOC6mlVpbvhTfnU3NNFGoZAJg="; + rev = "09311ae258c55c53c62cb5eda3641682e61fe191"; + sha256 = "sha256-51k+Eo3buzby9cWtbl+/0wbAxa2QSS+Oq0aEao0VBCM="; }; propagatedBuildInputs = [ yojson logs lsp ppx_yojson_conv_lib ]; From 552bddf3ed68ca474419ab1c93105429333b1fd8 Mon Sep 17 00:00:00 2001 From: Laurent CaniBot Date: Tue, 8 Aug 2023 18:35:17 +0000 Subject: [PATCH 40/53] ligo: 0.69.0 -> 0.71.1 --- pkgs/development/compilers/ligo/2706.diff | 58 --------------------- pkgs/development/compilers/ligo/default.nix | 7 +-- 2 files changed, 2 insertions(+), 63 deletions(-) delete mode 100644 pkgs/development/compilers/ligo/2706.diff diff --git a/pkgs/development/compilers/ligo/2706.diff b/pkgs/development/compilers/ligo/2706.diff deleted file mode 100644 index 8eab82e1461..00000000000 --- a/pkgs/development/compilers/ligo/2706.diff +++ /dev/null @@ -1,58 +0,0 @@ ---- a/src/passes/02-parsing/cameligo/dune -+++ b/src/passes/02-parsing/cameligo/dune -@@ -20,7 +20,9 @@ - (action - (with-stdout-to - %{targets} -- (run menhir-recover --external-tokens Lexing_cameligo.Token Parser.cmly)))) -+ (run menhir-recover -+ --external-tokens Lexing_cameligo.Token.MenhirInterpreter -+ Parser.cmly)))) - - ;; Build of the CameLIGO parser as a library - -diff --git a/src/passes/02-parsing/jsligo/dune b/src/passes/02-parsing/jsligo/dune -index d691ab0af0fe6ae87119405c19e49e2b5c2d1a23..3b13a06e69737037df0df12aa087506f402d8430 100644 ---- a/src/passes/02-parsing/jsligo/dune -+++ b/src/passes/02-parsing/jsligo/dune -@@ -20,7 +20,9 @@ - (action - (with-stdout-to - %{targets} -- (run menhir-recover --external-tokens Lexing_jsligo.Token Parser.cmly)))) -+ (run menhir-recover -+ --external-tokens Lexing_jsligo.Token.MenhirInterpreter -+ Parser.cmly)))) - - ;; Build of the JsLIGO parser as a library - -diff --git a/src/passes/02-parsing/pascaligo/dune b/src/passes/02-parsing/pascaligo/dune -index 0516a8b790d2eb3ebdb833051bd66241ca44832c..e650decc7ba9907551e1016fee1a53b806fb593e 100644 ---- a/src/passes/02-parsing/pascaligo/dune -+++ b/src/passes/02-parsing/pascaligo/dune -@@ -20,7 +20,9 @@ - (action - (with-stdout-to - %{targets} -- (run menhir-recover --external-tokens Lexing_pascaligo.Token Parser.cmly)))) -+ (run menhir-recover -+ --external-tokens Lexing_pascaligo.Token.MenhirInterpreter -+ Parser.cmly)))) - - ;; Build of the PascaLIGO parser as a library - -diff --git a/src/passes/02-parsing/pyligo/dune b/src/passes/02-parsing/pyligo/dune -index abb0165f6f185d21ea4a52a152cef188ae9dde4b..5930d86ab721e9dd683e5c4f2873b196ac5859b4 100644 ---- a/src/passes/02-parsing/pyligo/dune -+++ b/src/passes/02-parsing/pyligo/dune -@@ -20,7 +20,9 @@ - (action - (with-stdout-to - %{targets} -- (run menhir-recover --external-tokens Lexing_pyligo.Token Parser.cmly)))) -+ (run menhir-recover -+ --external-tokens Lexing_pyligo.Token.MenhirInterpreter -+ Parser.cmly)))) - - ;; Build of the PyLIGO parser as a library - diff --git a/pkgs/development/compilers/ligo/default.nix b/pkgs/development/compilers/ligo/default.nix index 05fea9caddb..ff601131bd2 100644 --- a/pkgs/development/compilers/ligo/default.nix +++ b/pkgs/development/compilers/ligo/default.nix @@ -15,18 +15,15 @@ ocamlPackages.buildDunePackage rec { pname = "ligo"; - version = "0.69.0"; + version = "0.71.1"; src = fetchFromGitLab { owner = "ligolang"; repo = "ligo"; rev = version; - sha256 = "sha256-Swt4uihsAtHVMkc0DxATwB8FvgxwtSJTN3E5cBtyXf8="; + sha256 = "sha256-E28/bRtYS57vB3WguUDGmR2ZhXhh/taiZTLa07Hu88g="; fetchSubmodules = true; }; - # https://gitlab.com/ligolang/ligo/-/merge_requests/2706.diff - patches = [ ./2706.diff ]; - postPatch = '' substituteInPlace "vendors/tezos-ligo/src/lib_hacl/hacl.ml" \ --replace \ From 51d84fd6df693746fc9f57ccc00482db45e77539 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Mon, 14 Aug 2023 12:56:02 +0200 Subject: [PATCH 41/53] python310Packages.django-classy-tags: update disabled --- pkgs/development/python-modules/django-classy-tags/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/django-classy-tags/default.nix b/pkgs/development/python-modules/django-classy-tags/default.nix index c5db8fe8fca..a4d363f8bc5 100644 --- a/pkgs/development/python-modules/django-classy-tags/default.nix +++ b/pkgs/development/python-modules/django-classy-tags/default.nix @@ -10,7 +10,7 @@ buildPythonPackage rec { version = "4.1.0"; format = "setuptools"; - disabled = pythonOlder "3.7"; + disabled = pythonOlder "3.8"; src = fetchPypi { inherit pname version; From 4424cfc6cbd62dbea3a30c5e2f393fab5bcd3620 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 14 Aug 2023 07:37:53 +0000 Subject: [PATCH 42/53] python310Packages.pymilvus: 2.2.13 -> 2.2.15 --- pkgs/development/python-modules/pymilvus/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/pymilvus/default.nix b/pkgs/development/python-modules/pymilvus/default.nix index ba22546099a..307ee7fbfd6 100644 --- a/pkgs/development/python-modules/pymilvus/default.nix +++ b/pkgs/development/python-modules/pymilvus/default.nix @@ -17,7 +17,7 @@ buildPythonPackage rec { pname = "pymilvus"; - version = "2.2.13"; + version = "2.2.15"; format = "pyproject"; disabled = pythonOlder "3.7"; @@ -26,7 +26,7 @@ buildPythonPackage rec { owner = "milvus-io"; repo = pname; rev = "refs/tags/v${version}"; - hash = "sha256-NTzdbmI2vNvNBFhN+xyZewH4b6l1BbKkDDE7rLNJ4IE="; + hash = "sha256-wwhgO2iCzPXobyZI0narHPn2WCAB9sS1+AoLrP1Ih6Q="; }; SETUPTOOLS_SCM_PRETEND_VERSION = version; From a37e23c8caeff04f32ac0d98b6f53d5910d86a45 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alper=20=C3=87elik?= Date: Wed, 12 Jul 2023 15:55:30 +0300 Subject: [PATCH 43/53] plasma-desktop: add missing gsettings schemas on kaccess this commit lets kaccess to read screen reader settings[1] using gsettings by adding required gsettings schemas dirs to the $XDG_DATA_DIRS this commit also refactors previus gsettings schemas fix of kcm_access for allowing reuse of wrapped gsettings between kaccess and kcm_access --- .../plasma-5/plasma-desktop/default.nix | 20 +++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/pkgs/desktops/plasma-5/plasma-desktop/default.nix b/pkgs/desktops/plasma-5/plasma-desktop/default.nix index f4ab7969cfe..28dfa434f7b 100644 --- a/pkgs/desktops/plasma-5/plasma-desktop/default.nix +++ b/pkgs/desktops/plasma-5/plasma-desktop/default.nix @@ -58,7 +58,14 @@ , runCommandLocal , makeWrapper }: - +let + # run gsettings with desktop schemas for using in "kcm_access" kcm + # and in kaccess + gsettings-wrapper = runCommandLocal "gsettings-wrapper" { nativeBuildInputs = [ makeWrapper ]; } '' + mkdir -p $out/bin + makeWrapper ${glib}/bin/gsettings $out/bin/gsettings --prefix XDG_DATA_DIRS : ${gsettings-desktop-schemas.out}/share/gsettings-schemas/${gsettings-desktop-schemas.name} + ''; +in mkDerivation { pname = "plasma-desktop"; nativeBuildInputs = [ extra-cmake-modules kdoctools wayland-scanner ]; @@ -122,19 +129,16 @@ mkDerivation { ./kcm-access.patch ]; CXXFLAGS = - let - # run gsettings with desktop schemas for using in kcm_accces kcm - gsettings-wrapper = runCommandLocal "gsettings-wrapper" { nativeBuildInputs = [ makeWrapper ]; } '' - makeWrapper ${glib}/bin/gsettings $out --prefix XDG_DATA_DIRS : ${gsettings-desktop-schemas.out}/share/gsettings-schemas/${gsettings-desktop-schemas.name} - ''; - in [ ''-DNIXPKGS_HWCLOCK=\"${lib.getBin util-linux}/bin/hwclock\"'' - ''-DNIXPKGS_GSETTINGS=\"${gsettings-wrapper}\"'' + ''-DNIXPKGS_GSETTINGS=\"${gsettings-wrapper}/bin/gsettings\"'' ]; postInstall = '' # Display ~/Desktop contents on the desktop by default. sed -i "''${!outputBin}/share/plasma/shells/org.kde.plasma.desktop/contents/defaults" \ -e 's/Containment=org.kde.desktopcontainment/Containment=org.kde.plasma.folder/' ''; + + # wrap kaccess with wrapped gsettings so it can access accessibility schemas + qtWrapperArgs = [ "--prefix PATH : ${lib.makeBinPath [ gsettings-wrapper ]}" ]; } From 2fb2f3994dec6be6196520cededa2c569b2cffa5 Mon Sep 17 00:00:00 2001 From: chayleaf Date: Sun, 13 Aug 2023 21:22:44 +0700 Subject: [PATCH 44/53] rizin: wrapper fixes 1. Set cutterPlugins to cutter.plugins rather than rizin.plugins which it was set to by mistake 2. Remove Rizin binaries from Cutter wrapper, because they aren't actually used by Cutter and if the user needs those binaries they should install Rizin separately --- .../tools/analysis/rizin/cutter.nix | 4 +- .../tools/analysis/rizin/default.nix | 2 +- .../tools/analysis/rizin/wrapper.nix | 38 +++++++++---------- pkgs/top-level/all-packages.nix | 2 +- 4 files changed, 22 insertions(+), 24 deletions(-) diff --git a/pkgs/development/tools/analysis/rizin/cutter.nix b/pkgs/development/tools/analysis/rizin/cutter.nix index bb8ecb6e196..a74e432f2c1 100644 --- a/pkgs/development/tools/analysis/rizin/cutter.nix +++ b/pkgs/development/tools/analysis/rizin/cutter.nix @@ -47,8 +47,8 @@ let cutter = mkDerivation rec { }; }; withPlugins = filter: pkgs.callPackage ./wrapper.nix { - unwrapped = cutter; - inherit rizin; + inherit rizin cutter; + isCutter = true; plugins = filter plugins; }; }; diff --git a/pkgs/development/tools/analysis/rizin/default.nix b/pkgs/development/tools/analysis/rizin/default.nix index 46fe132a463..f6574afb6cf 100644 --- a/pkgs/development/tools/analysis/rizin/default.nix +++ b/pkgs/development/tools/analysis/rizin/default.nix @@ -118,7 +118,7 @@ let rizin = stdenv.mkDerivation rec { sigdb = pkgs.callPackage ./sigdb.nix { }; }; withPlugins = filter: pkgs.callPackage ./wrapper.nix { - unwrapped = rizin; + inherit rizin; plugins = filter plugins; }; }; diff --git a/pkgs/development/tools/analysis/rizin/wrapper.nix b/pkgs/development/tools/analysis/rizin/wrapper.nix index 5ddee52f232..11d046c27f6 100644 --- a/pkgs/development/tools/analysis/rizin/wrapper.nix +++ b/pkgs/development/tools/analysis/rizin/wrapper.nix @@ -1,20 +1,25 @@ { lib , makeWrapper , symlinkJoin -, unwrapped , plugins -# NIX_RZ_PREFIX only changes where *Rizin* locates files (plugins, -# themes, etc). But we must change it even for wrapping Cutter, because -# Cutter plugins often have associated Rizin plugins. This means that -# NIX_RZ_PREFIX must always contain Rizin files, even if we only wrap -# Cutter - so for Cutter, include Rizin to symlinkJoin paths. -, rizin ? null +, rizin +, isCutter ? false +, cutter }: +let + unwrapped = if isCutter then cutter else rizin; +in symlinkJoin { name = "${unwrapped.pname}-with-plugins-${unwrapped.version}"; - paths = [ unwrapped ] ++ lib.optional (rizin != null) rizin ++ plugins; + # NIX_RZ_PREFIX only changes where *Rizin* locates files (plugins, + # themes, etc). But we must change it even for wrapping Cutter, because + # Cutter plugins often have associated Rizin plugins. This means that + # $out (which NIX_RZ_PREFIX will be set to) must always contain Rizin + # files, even if we only wrap Cutter - so for Cutter, include Rizin to + # symlinkJoin paths. + paths = [ unwrapped ] ++ lib.optional isCutter rizin ++ plugins; nativeBuildInputs = [ makeWrapper ]; @@ -24,23 +29,16 @@ symlinkJoin { postBuild = '' rm $out/bin/* - wrapperArgs=(--set NIX_RZ_PREFIX $out) - if [ -d $out/share/rizin/cutter ]; then - wrapperArgs+=(--prefix XDG_DATA_DIRS : $out/share) - fi + wrapperArgs=(--set NIX_RZ_PREFIX $out${ + lib.optionalString isCutter " --prefix XDG_DATA_DIRS : $out/share" + }) for binary in $(ls ${unwrapped}/bin); do makeWrapper ${unwrapped}/bin/$binary $out/bin/$binary "''${wrapperArgs[@]}" done - ${lib.optionalString (rizin != null) '' - for binary in $(ls ${rizin}/bin); do - makeWrapper ${rizin}/bin/$binary $out/bin/$binary "''${wrapperArgs[@]}" - done - ''} ''; meta = unwrapped.meta // { - # prefer wrapped over unwrapped, prefer cutter wrapper over rizin wrapper - # (because cutter versions of plugins also contain rizin plugins) - priority = (unwrapped.meta.priority or 0) - (if rizin != null then 2 else 1); + # prefer wrapped over unwrapped + priority = (unwrapped.meta.priority or 0) - 1; }; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 66336279eb9..9942cd0dc79 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -19802,7 +19802,7 @@ with pkgs; cutter = libsForQt5.callPackage ../development/tools/analysis/rizin/cutter.nix { }; - cutterPlugins = recurseIntoAttrs rizin.plugins; + cutterPlugins = recurseIntoAttrs cutter.plugins; ragel = ragelStable; From 99827b838f421a3f0250c24a3598cddd4eb2305a Mon Sep 17 00:00:00 2001 From: chayleaf Date: Sun, 13 Aug 2023 23:54:57 +0700 Subject: [PATCH 45/53] rizin, cutter: set meta.mainProgram See #246386 --- pkgs/development/tools/analysis/rizin/cutter.nix | 1 + pkgs/development/tools/analysis/rizin/default.nix | 1 + 2 files changed, 2 insertions(+) diff --git a/pkgs/development/tools/analysis/rizin/cutter.nix b/pkgs/development/tools/analysis/rizin/cutter.nix index a74e432f2c1..ab4d1289b92 100644 --- a/pkgs/development/tools/analysis/rizin/cutter.nix +++ b/pkgs/development/tools/analysis/rizin/cutter.nix @@ -57,6 +57,7 @@ let cutter = mkDerivation rec { description = "Free and Open Source Reverse Engineering Platform powered by rizin"; homepage = src.meta.homepage; license = licenses.gpl3; + mainProgram = "cutter"; maintainers = with maintainers; [ mic92 dtzWill ]; }; }; in cutter diff --git a/pkgs/development/tools/analysis/rizin/default.nix b/pkgs/development/tools/analysis/rizin/default.nix index f6574afb6cf..cfc24aef979 100644 --- a/pkgs/development/tools/analysis/rizin/default.nix +++ b/pkgs/development/tools/analysis/rizin/default.nix @@ -127,6 +127,7 @@ let rizin = stdenv.mkDerivation rec { description = "UNIX-like reverse engineering framework and command-line toolset."; homepage = "https://rizin.re/"; license = lib.licenses.gpl3Plus; + mainProgram = "rizin"; maintainers = with lib.maintainers; [ raskin makefu mic92 ]; platforms = with lib.platforms; unix; }; From edb0f26c7db1b16db880f77f663e58a9e91dfcc5 Mon Sep 17 00:00:00 2001 From: natsukium Date: Thu, 27 Jul 2023 23:44:22 +0900 Subject: [PATCH 46/53] python310Packages.optimum: init at 1.11.1 --- .../python-modules/optimum/default.nix | 115 ++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 117 insertions(+) create mode 100644 pkgs/development/python-modules/optimum/default.nix diff --git a/pkgs/development/python-modules/optimum/default.nix b/pkgs/development/python-modules/optimum/default.nix new file mode 100644 index 00000000000..6f781c3f174 --- /dev/null +++ b/pkgs/development/python-modules/optimum/default.nix @@ -0,0 +1,115 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, pythonOlder +, coloredlogs +, datasets +, evaluate +, h5py +, huggingface-hub +, numpy +, onnx +, onnxruntime +, packaging +, protobuf +, sympy +, tensorflow +, tf2onnx +, timm +, torch +, transformers +}: + +buildPythonPackage rec { + pname = "optimum"; + version = "1.11.1"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; + + src = fetchFromGitHub { + owner = "huggingface"; + repo = "optimum"; + rev = "refs/tags/v${version}"; + hash = "sha256-J0QcHmR2hVd/Ygi7QFtsObwx/Sm3DCwU+DojzXHokYU="; + }; + + propagatedBuildInputs = [ + coloredlogs + datasets + huggingface-hub + numpy + packaging + sympy + torch + transformers + ] ++ transformers.optional-dependencies.sentencepiece; + + passthru.optional-dependencies = { + onnxruntime = [ + onnx + onnxruntime + datasets + evaluate + protobuf + ]; + exporters = [ + onnx + onnxruntime + timm + ]; + exporters-tf = [ + tensorflow + tf2onnx + onnx + onnxruntime + timm + h5py + numpy + ]; + diffusers = [ + # diffusers + ]; + intel = [ + # optimum-intel + ]; + openvino = [ + # optimum-intel + ]; # ++ optimum-intel.optional-dependencies.openvino; + nncf = [ + # optimum-intel + ]; # ++ optimum-intel.optional-dependencies.nncf; + neural-compressor = [ + # optimum-intel + ]; # ++ optimum-intel.optional-dependencies.neural-compressor; + graphcore = [ + # optimum-graphcore + ]; + habana = [ + transformers + # optimum-habana + ]; + neuron = [ + # optimum-neuron + ]; # ++ optimum-neuron.optional-dependencies.neuron; + neuronx = [ + # optimum-neuron + ]; # ++ optimum-neuron.optional-dependencies.neuronx; + furiosa = [ + # optimum-furiosa + ]; + }; + + # almost all tests try to connect to https://huggingface.co + doCheck = false; + + pythonImportsCheck = [ "optimum" ]; + + meta = with lib; { + description = "Accelerate training and inference of 🤗 Transformers and 🤗 Diffusers with easy to use hardware optimization tools"; + homepage = "https://github.com/huggingface/optimum"; + changelog = "https://github.com/huggingface/optimum/releases/tag/${src.rev}"; + license = licenses.asl20; + maintainers = with maintainers; [ natsukium ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index fef64074b67..6a69194411d 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -7508,6 +7508,8 @@ self: super: with self; { optax = callPackage ../development/python-modules/optax { }; + optimum = callPackage ../development/python-modules/optimum { }; + optuna = callPackage ../development/python-modules/optuna { }; opuslib = callPackage ../development/python-modules/opuslib { }; From d6c69dbd740aa602f619a7e793bfd12669e87ded Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= Date: Mon, 14 Aug 2023 17:12:56 +0200 Subject: [PATCH 47/53] dasel: set mainProgram --- pkgs/applications/misc/dasel/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/applications/misc/dasel/default.nix b/pkgs/applications/misc/dasel/default.nix index eb3621735e0..836449b3a95 100644 --- a/pkgs/applications/misc/dasel/default.nix +++ b/pkgs/applications/misc/dasel/default.nix @@ -52,6 +52,7 @@ buildGoModule rec { homepage = "https://github.com/TomWright/dasel"; changelog = "https://github.com/TomWright/dasel/blob/v${version}/CHANGELOG.md"; license = licenses.mit; + mainProgram = "dasel"; maintainers = with maintainers; [ _0x4A6F ]; }; } From 0b6d395909219e21fbd55dd6b321fc1f06a424ab Mon Sep 17 00:00:00 2001 From: Daniel Nagy Date: Sat, 5 Aug 2023 21:30:00 +0200 Subject: [PATCH 48/53] ncdu: 2.2.2 -> 2.3 Changelog: https://dev.yorhel.nl/ncdu/changes2 --- pkgs/tools/misc/ncdu/default.nix | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/pkgs/tools/misc/ncdu/default.nix b/pkgs/tools/misc/ncdu/default.nix index 8e66e775c1f..2f8f938051b 100644 --- a/pkgs/tools/misc/ncdu/default.nix +++ b/pkgs/tools/misc/ncdu/default.nix @@ -2,32 +2,39 @@ , stdenv , fetchurl , ncurses -, zig_0_10 +, zig_0_11 +, installShellFiles }: stdenv.mkDerivation (finalAttrs: { pname = "ncdu"; - version = "2.2.2"; + version = "2.3"; src = fetchurl { url = "https://dev.yorhel.nl/download/ncdu-${finalAttrs.version}.tar.gz"; - hash = "sha256-kNkgAk51Ixi0aXds5X4Ds8cC1JMprZglruqzbDur+ZM="; + hash = "sha256-u84dHHDxJHZxvk6iE12MUs0ppwivXtYs7Np9xqgACjw="; }; nativeBuildInputs = [ - zig_0_10.hook + zig_0_11.hook + installShellFiles ]; buildInputs = [ ncurses ]; + postInstall = '' + installManPage ncdu.1 + ''; + meta = { homepage = "https://dev.yorhel.nl/ncdu"; description = "Disk usage analyzer with an ncurses interface"; changelog = "https://dev.yorhel.nl/ncdu/changes2"; license = lib.licenses.mit; maintainers = with lib.maintainers; [ pSub rodrgz ]; - inherit (zig_0_10.meta) platforms; + inherit (zig_0_11.meta) platforms; + mainProgram = "ncdu"; }; }) From 3c1f82f99ee02dad4eb480f6216ae2ece445d11d Mon Sep 17 00:00:00 2001 From: Artturin Date: Mon, 14 Aug 2023 01:42:25 +0300 Subject: [PATCH 49/53] lib.customisation.makeScope: Make `overrideScope` consistent with `makeScopeWithSplicing` Right now converting `makeScope` to `makeScopeWithSplicing` is not transparent to users and requires adding a warning for `overrideScope'` in the set itself. Warning and `overrideScope'` were added in 2018 b9dce11712d2bfc8cd367df5a7f737a5cec1e252 and there should be no users left after 5 years. --- lib/customisation.nix | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/lib/customisation.nix b/lib/customisation.nix index a9281b1ab69..e1332007602 100644 --- a/lib/customisation.nix +++ b/lib/customisation.nix @@ -269,10 +269,11 @@ rec { let self = f self // { newScope = scope: newScope (self // scope); callPackage = self.newScope {}; - overrideScope = g: lib.warn - "`overrideScope` (from `lib.makeScope`) is deprecated. Do `overrideScope' (self: super: { … })` instead of `overrideScope (super: self: { … })`. All other overrides have the parameters in that order, including other definitions of `overrideScope`. This was the only definition violating the pattern." - (makeScope newScope (lib.fixedPoints.extends (lib.flip g) f)); - overrideScope' = g: makeScope newScope (lib.fixedPoints.extends g f); + overrideScope = g: makeScope newScope (lib.fixedPoints.extends g f); + # Remove after 24.11 is released. + overrideScope' = g: lib.warnIf (lib.isInOldestRelease 2311) + "`overrideScope'` (from `lib.makeScope`) has been renamed to `overrideScope`." + (makeScope newScope (lib.fixedPoints.extends g f)); packages = f; }; in self; From b93da3f4b77b0f3c441212c17bba02360f7fadee Mon Sep 17 00:00:00 2001 From: Artturin Date: Mon, 14 Aug 2023 08:21:26 +0300 Subject: [PATCH 50/53] treewide: `overrideScope'` -> `overrideScope` `lib.makeScope` `overrideScope'` has been renamed to `overrideScope` `fd --type f | xargs sd --string-mode "overrideScope'" "overrideScope"` --- doc/builders/packages/emacs.section.md | 4 ++-- doc/languages-frameworks/cuda.section.md | 2 +- pkgs/build-support/emacs/wrapper.nix | 2 +- pkgs/development/compilers/rust/default.nix | 2 +- pkgs/development/interpreters/php/generic.nix | 2 +- pkgs/development/lisp-modules/nix-cl.nix | 2 +- pkgs/development/lisp-modules/packages.nix | 2 +- pkgs/development/lisp-modules/ql.nix | 2 +- pkgs/top-level/cuda-packages.nix | 2 +- pkgs/top-level/ocaml-packages.nix | 2 +- 10 files changed, 11 insertions(+), 11 deletions(-) diff --git a/doc/builders/packages/emacs.section.md b/doc/builders/packages/emacs.section.md index a202606966c..d46f890858f 100644 --- a/doc/builders/packages/emacs.section.md +++ b/doc/builders/packages/emacs.section.md @@ -103,14 +103,14 @@ You can install it like any other packages via `nix-env -iA myEmacs`. However, t This provides a fairly full Emacs start file. It will load in addition to the user's personal config. You can always disable it by passing `-q` to the Emacs command. -Sometimes `emacs.pkgs.withPackages` is not enough, as this package set has some priorities imposed on packages (with the lowest priority assigned to Melpa Unstable, and the highest for packages manually defined in `pkgs/top-level/emacs-packages.nix`). But you can't control these priorities when some package is installed as a dependency. You can override it on a per-package-basis, providing all the required dependencies manually, but it's tedious and there is always a possibility that an unwanted dependency will sneak in through some other package. To completely override such a package, you can use `overrideScope'`. +Sometimes `emacs.pkgs.withPackages` is not enough, as this package set has some priorities imposed on packages (with the lowest priority assigned to Melpa Unstable, and the highest for packages manually defined in `pkgs/top-level/emacs-packages.nix`). But you can't control these priorities when some package is installed as a dependency. You can override it on a per-package-basis, providing all the required dependencies manually, but it's tedious and there is always a possibility that an unwanted dependency will sneak in through some other package. To completely override such a package, you can use `overrideScope`. ```nix overrides = self: super: rec { haskell-mode = self.melpaPackages.haskell-mode; ... }; -((emacsPackagesFor emacs).overrideScope' overrides).withPackages +((emacsPackagesFor emacs).overrideScope overrides).withPackages (p: with p; [ # here both these package will use haskell-mode of our own choice ghc-mod diff --git a/doc/languages-frameworks/cuda.section.md b/doc/languages-frameworks/cuda.section.md index b7f1f19546a..2d680ea6b3b 100644 --- a/doc/languages-frameworks/cuda.section.md +++ b/doc/languages-frameworks/cuda.section.md @@ -30,7 +30,7 @@ package set to make it the default. This guarantees you get a consistent package set. ```nix mypkg = let - cudaPackages = cudaPackages_11_5.overrideScope' (final: prev: { + cudaPackages = cudaPackages_11_5.overrideScope (final: prev: { cudnn = prev.cudnn_8_3; }}); in callPackage { inherit cudaPackages; }; diff --git a/pkgs/build-support/emacs/wrapper.nix b/pkgs/build-support/emacs/wrapper.nix index a3842dec699..ecfcc0cd52c 100644 --- a/pkgs/build-support/emacs/wrapper.nix +++ b/pkgs/build-support/emacs/wrapper.nix @@ -21,7 +21,7 @@ set which contains `emacs.pkgs.withPackages`. For example, to override `emacs.pkgs.emacs.pkgs.withPackages`, ``` let customEmacsPackages = - emacs.pkgs.overrideScope' (self: super: { + emacs.pkgs.overrideScope (self: super: { # use a custom version of emacs emacs = ...; # use the unstable MELPA version of magit diff --git a/pkgs/development/compilers/rust/default.nix b/pkgs/development/compilers/rust/default.nix index 35f5ab79c10..77c8b3d592f 100644 --- a/pkgs/development/compilers/rust/default.nix +++ b/pkgs/development/compilers/rust/default.nix @@ -48,7 +48,7 @@ in # Like `buildRustPackages`, but may also contain prebuilt binaries to # break cycle. Just like `bootstrapTools` for nixpkgs as a whole, # nothing in the final package set should refer to this. - bootstrapRustPackages = self.buildRustPackages.overrideScope' (_: _: + bootstrapRustPackages = self.buildRustPackages.overrideScope (_: _: lib.optionalAttrs (stdenv.buildPlatform == stdenv.hostPlatform) (selectRustPackage buildPackages).packages.prebuilt); bootRustPlatform = makeRustPlatform bootstrapRustPackages; diff --git a/pkgs/development/interpreters/php/generic.nix b/pkgs/development/interpreters/php/generic.nix index 4a563d4fd70..d60d0cdf1fd 100644 --- a/pkgs/development/interpreters/php/generic.nix +++ b/pkgs/development/interpreters/php/generic.nix @@ -85,7 +85,7 @@ let php-packages = (callPackage ../../../top-level/php-packages.nix { phpPackage = phpWithExtensions; - }).overrideScope' packageOverrides; + }).overrideScope packageOverrides; allExtensionFunctions = prevExtensionFunctions ++ [ extensions ]; enabledExtensions = diff --git a/pkgs/development/lisp-modules/nix-cl.nix b/pkgs/development/lisp-modules/nix-cl.nix index b8e0af0cc2b..3f45f58110e 100644 --- a/pkgs/development/lisp-modules/nix-cl.nix +++ b/pkgs/development/lisp-modules/nix-cl.nix @@ -299,7 +299,7 @@ let }: let spec = { inherit pkg faslExt program flags asdf; }; - pkgs = (commonLispPackagesFor spec).overrideScope' packageOverrides; + pkgs = (commonLispPackagesFor spec).overrideScope packageOverrides; withPackages = lispWithPackages pkgs; withOverrides = packageOverrides: wrapLisp { diff --git a/pkgs/development/lisp-modules/packages.nix b/pkgs/development/lisp-modules/packages.nix index 5d26f33f45e..a10c1201dca 100644 --- a/pkgs/development/lisp-modules/packages.nix +++ b/pkgs/development/lisp-modules/packages.nix @@ -50,7 +50,7 @@ let # lispLibs ofpackages in this file. ql = quicklispPackagesFor spec; - packages = ql.overrideScope' (self: super: { + packages = ql.overrideScope (self: super: { cffi = let jna = pkgs.fetchMavenArtifact { diff --git a/pkgs/development/lisp-modules/ql.nix b/pkgs/development/lisp-modules/ql.nix index 33b3753a83e..17e92b75ae5 100644 --- a/pkgs/development/lisp-modules/ql.nix +++ b/pkgs/development/lisp-modules/ql.nix @@ -266,4 +266,4 @@ let lib.optionalAttrs (builtins.pathExists ./imported.nix) (pkgs.callPackage ./imported.nix { inherit build-asdf-system; }); -in qlpkgs.overrideScope' overrides +in qlpkgs.overrideScope overrides diff --git a/pkgs/top-level/cuda-packages.nix b/pkgs/top-level/cuda-packages.nix index 2044d74cab7..b8e1e5dfc76 100644 --- a/pkgs/top-level/cuda-packages.nix +++ b/pkgs/top-level/cuda-packages.nix @@ -70,4 +70,4 @@ let cutensorExtension ]); -in (scope.overrideScope' composedExtension) +in (scope.overrideScope composedExtension) diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix index 984c5791ea0..e3b1cad80da 100644 --- a/pkgs/top-level/ocaml-packages.nix +++ b/pkgs/top-level/ocaml-packages.nix @@ -1803,7 +1803,7 @@ let ### End ### - })).overrideScope' liftJaneStreet; + })).overrideScope liftJaneStreet; in let inherit (pkgs) callPackage; in rec { From 10c6be32e42127c8fa3656c521dea02ac6717004 Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Mon, 14 Aug 2023 18:05:25 +0200 Subject: [PATCH 51/53] nixos/tempo: add `extraFlags` option Main use-case for me is to specify `-config.expand-env=true` which allows me inject secrets via systemd's environment file mechanism[1] like this: storage.trace.s3 = { /* all the other stuff */ secret_key = "\${GARAGE_SECRET_KEY}"; }; [1] https://grafana.com/docs/tempo/latest/configuration/#use-environment-variables-in-the-configuration --- nixos/modules/services/tracing/tempo.nix | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/nixos/modules/services/tracing/tempo.nix b/nixos/modules/services/tracing/tempo.nix index 4a098c31eff..0b9ca2398b1 100644 --- a/nixos/modules/services/tracing/tempo.nix +++ b/nixos/modules/services/tracing/tempo.nix @@ -27,6 +27,18 @@ in { Specify a path to a configuration file that Tempo should use. ''; }; + + extraFlags = mkOption { + type = types.listOf types.str; + default = []; + example = lib.literalExpression + '' + [ "-config.expand-env=true" ] + ''; + description = lib.mdDoc '' + Additional flags to pass to the `ExecStart=` in `tempo.service`. + ''; + }; }; config = mkIf cfg.enable { @@ -54,7 +66,7 @@ in { else cfg.configFile; in { - ExecStart = "${pkgs.tempo}/bin/tempo --config.file=${conf}"; + ExecStart = "${pkgs.tempo}/bin/tempo --config.file=${conf} ${lib.escapeShellArgs cfg.extraFlags}"; DynamicUser = true; Restart = "always"; ProtectSystem = "full"; From 737c4e8931eb867ba3f109530fd7b7d5c4bcc832 Mon Sep 17 00:00:00 2001 From: Stefan Westerfeld Date: Sat, 12 Aug 2023 17:16:04 +0200 Subject: [PATCH 52/53] maintainers: add swesterfeld Signed-off-by: Stefan Westerfeld --- maintainers/maintainer-list.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index d73b1ad119d..27325e6132c 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -16330,6 +16330,12 @@ github = "sweenu"; githubId = 7051978; }; + swesterfeld = { + email = "stefan@space.twc.de"; + github = "swesterfeld"; + githubId = 14840066; + name = "Stefan Westerfeld"; + }; swflint = { email = "swflint@flintfam.org"; github = "swflint"; From 14ae6da134efb5e08ac584665c6bebb377da65ca Mon Sep 17 00:00:00 2001 From: Stefan Westerfeld Date: Mon, 14 Aug 2023 14:43:29 +0200 Subject: [PATCH 53/53] gst123: init at 0.4.1 Co-authored-by: Anderson Torres Signed-off-by: Stefan Westerfeld --- pkgs/applications/audio/gst123/default.nix | 51 ++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 53 insertions(+) create mode 100644 pkgs/applications/audio/gst123/default.nix diff --git a/pkgs/applications/audio/gst123/default.nix b/pkgs/applications/audio/gst123/default.nix new file mode 100644 index 00000000000..7262755b80d --- /dev/null +++ b/pkgs/applications/audio/gst123/default.nix @@ -0,0 +1,51 @@ +{ lib +, stdenv +, fetchFromGitHub +, autoreconfHook +, pkg-config +, wrapGAppsHook +, gst_all_1 +, gtk3 +, ncurses +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "gst123"; + version = "0.4.1"; + + src = fetchFromGitHub { + owner = "swesterfeld"; + repo = "gst123"; + rev = finalAttrs.version; + hash = "sha256-7qS7JJ7EY1uFGX3FxBxgH6LzK4XUoTPHR0QVwUWRz+g="; + }; + + nativeBuildInputs = [ + autoreconfHook + pkg-config + wrapGAppsHook + ]; + + buildInputs = [ + gtk3 + ncurses + ] ++ (with gst_all_1; [ + gstreamer + gst-plugins-base + gst-plugins-good + gst-plugins-bad + gst-plugins-ugly + gst-libav + ]); + + enableParallelBuilding = true; + + meta = with lib; { + description = "GStreamer based command line media player"; + homepage = "https://space.twc.de/~stefan/gst123.php"; + license = licenses.lgpl2Plus; + maintainers = with maintainers; [ swesterfeld ]; + inherit (ncurses.meta) platforms; + broken = stdenv.isDarwin; + }; +}) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 9942cd0dc79..70fffbe6dc3 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -32142,6 +32142,8 @@ with pkgs; gspell = callPackage ../development/libraries/gspell { }; + gst123 = callPackage ../applications/audio/gst123 { }; + gtk2fontsel = callPackage ../applications/misc/gtk2fontsel { }; gtklock = callPackage ../tools/wayland/gtklock { };