lol
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge staging-next into staging

authored by

github-actions[bot] and committed by
GitHub
27846a08 389af8de

+910 -431
+13 -7
maintainers/maintainer-list.nix
··· 6003 6003 githubId = 92793; 6004 6004 name = "Friedrich von Never"; 6005 6005 }; 6006 - fortuneteller2k = { 6007 - email = "lythe1107@gmail.com"; 6008 - matrix = "@fortuneteller2k:matrix.org"; 6009 - github = "fortuneteller2k"; 6010 - githubId = 20619776; 6011 - name = "fortuneteller2k"; 6012 - }; 6013 6006 fpletz = { 6014 6007 email = "fpletz@fnordicwalking.de"; 6015 6008 github = "fpletz"; ··· 12095 12088 github = "ribosomerocker"; 12096 12089 githubId = 46468162; 12097 12090 }; 12091 + moni = { 12092 + email = "lythe1107@gmail.com"; 12093 + matrix = "@fortuneteller2k:matrix.org"; 12094 + github = "moni"; 12095 + githubId = 20619776; 12096 + name = "moni"; 12097 + }; 12098 12098 monsieurp = { 12099 12099 email = "monsieurp@gentoo.org"; 12100 12100 github = "monsieurp"; ··· 12757 12757 github = "Net-Mist"; 12758 12758 githubId = 13920346; 12759 12759 name = "Sébastien Iooss"; 12760 + }; 12761 + netthier = { 12762 + email = "netthier@proton.me"; 12763 + name = "nett_hier"; 12764 + github = "netthier"; 12765 + githubId = 66856670; 12760 12766 }; 12761 12767 networkexception = { 12762 12768 name = "networkException";
-1
maintainers/team-list.nix
··· 917 917 918 918 tts = { 919 919 members = [ 920 - hexa 921 920 mic92 922 921 ]; 923 922 scope = "coqui-ai TTS (formerly Mozilla TTS) and leaf packages";
+5
nixos/doc/manual/release-notes/rl-2311.section.md
··· 104 104 105 105 - [eris-server](https://codeberg.org/eris/eris-go). [ERIS](https://eris.codeberg.page/) is an encoding for immutable storage and this server provides block exchange as well as content decoding over HTTP and through a FUSE file-system. Available as [services.eris-server](#opt-services.eris-server.enable). 106 106 107 + - [forgejo](https://forgejo.org/), a git forge. Previously deployed as a drop-in replacement package in the [gitea module](#opt-services.gitea.package). Available as [services.forgejo](#opt-services.forgejo.enable). See migration instructions in the [NixOS manual](#module-forgejo) on how to migrate your forgejo instance using [`services.gitea.package = pkgs.forgejo`](#opt-services.gitea.package) to [`services.forgejo`](#opt-services.forgejo.enable). 108 + 107 109 - hardware/infiniband.nix adds infiniband subnet manager support using an [opensm](https://github.com/linux-rdma/opensm) systemd-template service, instantiated on card guids. The module also adds kernel modules and cli tooling to help administrators debug and measure performance. Available as [hardware.infiniband.enable](#opt-hardware.infiniband.enable). 108 110 109 111 - [zwave-js](https://github.com/zwave-js/zwave-js-server), a small server wrapper around Z-Wave JS to access it via a WebSocket. Available as [services.zwave-js](#opt-services.zwave-js.enable). ··· 142 144 - [c2FmZQ](https://github.com/c2FmZQ/c2FmZQ/), an application that can securely encrypt, store, and share files, including but not limited to pictures and videos. Available as [services.c2fmzq-server](#opt-services.c2fmzq-server.enable). 143 145 144 146 ## Backward Incompatibilities {#sec-release-23.11-incompatibilities} 147 + 148 + - `services.postgresql.ensurePermissions` has been deprecated in favor of `services.postgresql.ensureUsers.*.ensureDBOwnership` which simplifies the setup of database owned by a certain system user 149 + in local database contexts (which make use of peer authentication via UNIX sockets), migration guidelines were provided in the NixOS manual, please refer to them if you are affected by a PostgreSQL 15 changing the way `GRANT ALL PRIVILEGES` is working. `services.postgresql.ensurePermissions` will be removed in 24.05. All NixOS modules were migrated using one of the strategy, e.g. `ensureDBOwnership` or `postStart`. More about this situation can be learnt in https://github.com/NixOS/nixpkgs/pull/266270. 145 150 146 151 - `network-online.target` has been fixed to no longer time out for systems with `networking.useDHCP = true` and `networking.useNetworkd = true`. 147 152 Workarounds for this can be removed.
+1 -1
nixos/modules/config/stevenblack.nix
··· 30 30 ++ optionals (activatedHosts == [ ]) [ "${pkgs.stevenblack-blocklist}/hosts" ]; 31 31 }; 32 32 33 - meta.maintainers = [ maintainers.fortuneteller2k maintainers.artturin ]; 33 + meta.maintainers = [ maintainers.moni maintainers.artturin ]; 34 34 }
+119
nixos/modules/services/databases/postgresql.md
··· 39 39 services.postgresql.dataDir = "/data/postgresql"; 40 40 ``` 41 41 42 + ## Initializing {#module-services-postgres-initializing} 43 + 44 + As of NixOS 23.11, 45 + `services.postgresql.ensureUsers.*.ensurePermissions` has been 46 + deprecated, after a change to default permissions in PostgreSQL 15 47 + invalidated most of its previous use cases: 48 + 49 + - In psql < 15, `ALL PRIVILEGES` used to include `CREATE TABLE`, where 50 + in psql >= 15 that would be a separate permission 51 + - psql >= 15 instead gives only the database owner create permissions 52 + - Even on psql < 15 (or databases migrated to >= 15), it is 53 + recommended to manually assign permissions along these lines 54 + - https://www.postgresql.org/docs/release/15.0/ 55 + - https://www.postgresql.org/docs/15/ddl-schemas.html#DDL-SCHEMAS-PRIV 56 + 57 + ### Assigning ownership {#module-services-postgres-initializing-ownership} 58 + 59 + Usually, the database owner should be a database user of the same 60 + name. This can be done with 61 + `services.postgresql.ensureUsers.*.ensureDBOwnership = true;`. 62 + 63 + If the database user name equals the connecting system user name, 64 + postgres by default will accept a passwordless connection via unix 65 + domain socket. This makes it possible to run many postgres-backed 66 + services without creating any database secrets at all 67 + 68 + ### Assigning extra permissions {#module-services-postgres-initializing-extra-permissions} 69 + 70 + For many cases, it will be enough to have the database user be the 71 + owner. Until `services.postgresql.ensureUsers.*.ensurePermissions` has 72 + been re-thought, if more users need access to the database, please use 73 + one of the following approaches: 74 + 75 + **WARNING:** `services.postgresql.initialScript` is not recommended 76 + for `ensurePermissions` replacement, as that is *only run on first 77 + start of PostgreSQL*. 78 + 79 + **NOTE:** all of these methods may be obsoleted, when `ensure*` is 80 + reworked, but it is expected that they will stay viable for running 81 + database migrations. 82 + 83 + **NOTE:** please make sure that any added migrations are idempotent (re-runnable). 84 + 85 + #### as superuser {#module-services-postgres-initializing-extra-permissions-superuser} 86 + 87 + **Advantage:** compatible with postgres < 15, because it's run 88 + as the database superuser `postgres`. 89 + 90 + ##### in database `postStart` {#module-services-postgres-initializing-extra-permissions-superuser-post-start} 91 + 92 + **Disadvantage:** need to take care of ordering yourself. In this 93 + example, `mkAfter` ensures that permissions are assigned after any 94 + databases from `ensureDatabases` and `extraUser1` from `ensureUsers` 95 + are already created. 96 + 97 + ```nix 98 + systemd.services.postgresql.postStart = lib.mkAfter '' 99 + $PSQL service1 -c 'GRANT SELECT ON ALL TABLES IN SCHEMA public TO "extraUser1"' 100 + $PSQL service1 -c 'GRANT SELECT ON ALL SEQUENCES IN SCHEMA public TO "extraUser1"' 101 + # .... 102 + ''; 103 + ``` 104 + 105 + ##### in intermediate oneshot service {#module-services-postgres-initializing-extra-permissions-superuser-oneshot} 106 + 107 + ```nix 108 + systemd.services."migrate-service1-db1" = { 109 + serviceConfig.Type = "oneshot"; 110 + requiredBy = "service1.service"; 111 + before = "service1.service"; 112 + after = "postgresql.service"; 113 + serviceConfig.User = "postgres"; 114 + environment.PSQL = "psql --port=${toString services.postgresql.port}"; 115 + path = [ postgresql ]; 116 + script = '' 117 + $PSQL service1 -c 'GRANT SELECT ON ALL TABLES IN SCHEMA public TO "extraUser1"' 118 + $PSQL service1 -c 'GRANT SELECT ON ALL SEQUENCES IN SCHEMA public TO "extraUser1"' 119 + # .... 120 + ''; 121 + }; 122 + ``` 123 + 124 + #### as service user {#module-services-postgres-initializing-extra-permissions-service-user} 125 + 126 + **Advantage:** re-uses systemd's dependency ordering; 127 + 128 + **Disadvantage:** relies on service user having grant permission. To be combined with `ensureDBOwnership`. 129 + 130 + ##### in service `preStart` {#module-services-postgres-initializing-extra-permissions-service-user-pre-start} 131 + 132 + ```nix 133 + environment.PSQL = "psql --port=${toString services.postgresql.port}"; 134 + path = [ postgresql ]; 135 + systemd.services."service1".preStart = '' 136 + $PSQL -c 'GRANT SELECT ON ALL TABLES IN SCHEMA public TO "extraUser1"' 137 + $PSQL -c 'GRANT SELECT ON ALL SEQUENCES IN SCHEMA public TO "extraUser1"' 138 + # .... 139 + ''; 140 + ``` 141 + 142 + ##### in intermediate oneshot service {#module-services-postgres-initializing-extra-permissions-service-user-oneshot} 143 + 144 + ```nix 145 + systemd.services."migrate-service1-db1" = { 146 + serviceConfig.Type = "oneshot"; 147 + requiredBy = "service1.service"; 148 + before = "service1.service"; 149 + after = "postgresql.service"; 150 + serviceConfig.User = "service1"; 151 + environment.PSQL = "psql --port=${toString services.postgresql.port}"; 152 + path = [ postgresql ]; 153 + script = '' 154 + $PSQL -c 'GRANT SELECT ON ALL TABLES IN SCHEMA public TO "extraUser1"' 155 + $PSQL -c 'GRANT SELECT ON ALL SEQUENCES IN SCHEMA public TO "extraUser1"' 156 + # .... 157 + ''; 158 + }; 159 + ``` 160 + 42 161 ## Upgrading {#module-services-postgres-upgrading} 43 162 44 163 ::: {.note}
+47 -11
nixos/modules/services/databases/postgresql.nix
··· 168 168 ensurePermissions = mkOption { 169 169 type = types.attrsOf types.str; 170 170 default = {}; 171 + visible = false; # This option has been deprecated. 171 172 description = lib.mdDoc '' 173 + This option is DEPRECATED and should not be used in nixpkgs anymore, 174 + use `ensureDBOwnership` instead. It can also break with newer 175 + versions of PostgreSQL (≥ 15). 176 + 172 177 Permissions to ensure for the user, specified as an attribute set. 173 178 The attribute names specify the database and tables to grant the permissions for. 174 179 The attribute values specify the permissions to grant. You may specify one or ··· 184 189 "DATABASE \"nextcloud\"" = "ALL PRIVILEGES"; 185 190 "ALL TABLES IN SCHEMA public" = "ALL PRIVILEGES"; 186 191 } 192 + ''; 193 + }; 194 + 195 + ensureDBOwnership = mkOption { 196 + type = types.bool; 197 + default = false; 198 + description = mdDoc '' 199 + Grants the user ownership to a database with the same name. 200 + This database must be defined manually in 201 + [](#opt-services.postgresql.ensureDatabases). 187 202 ''; 188 203 }; 189 204 ··· 338 353 }); 339 354 default = []; 340 355 description = lib.mdDoc '' 341 - Ensures that the specified users exist and have at least the ensured permissions. 356 + Ensures that the specified users exist. 342 357 The PostgreSQL users will be identified using peer authentication. This authenticates the Unix user with the 343 358 same name only, and that without the need for a password. 344 - This option will never delete existing users or remove permissions, especially not when the value of this 345 - option is changed. This means that users created and permissions assigned once through this option or 346 - otherwise have to be removed manually. 359 + This option will never delete existing users or remove DB ownership of databases 360 + once granted with `ensureDBOwnership = true;`. This means that this must be 361 + cleaned up manually when changing after changing the config in here. 347 362 ''; 348 363 example = literalExpression '' 349 364 [ 350 365 { 351 366 name = "nextcloud"; 352 - ensurePermissions = { 353 - "DATABASE nextcloud" = "ALL PRIVILEGES"; 354 - }; 355 367 } 356 368 { 357 369 name = "superuser"; 358 - ensurePermissions = { 359 - "ALL TABLES IN SCHEMA public" = "ALL PRIVILEGES"; 360 - }; 370 + ensureDBOwnership = true; 361 371 } 362 372 ] 363 373 ''; ··· 445 455 446 456 config = mkIf cfg.enable { 447 457 458 + assertions = map ({ name, ensureDBOwnership, ... }: { 459 + assertion = ensureDBOwnership -> builtins.elem name cfg.ensureDatabases; 460 + message = '' 461 + For each database user defined with `services.postgresql.ensureUsers` and 462 + `ensureDBOwnership = true;`, a database with the same name must be defined 463 + in `services.postgresql.ensureDatabases`. 464 + 465 + Offender: ${name} has not been found among databases. 466 + ''; 467 + }) cfg.ensureUsers; 468 + # `ensurePermissions` is now deprecated, let's avoid it. 469 + warnings = lib.optional (any ({ ensurePermissions, ... }: ensurePermissions != {}) cfg.ensureUsers) " 470 + `services.postgresql.*.ensurePermissions` is used in your expressions, 471 + this option is known to be broken with newer PostgreSQL versions, 472 + consider migrating to `services.postgresql.*.ensureDBOwnership` or 473 + consult the release notes or manual for more migration guidelines. 474 + 475 + This option will be removed in NixOS 24.05 unless it sees significant 476 + maintenance improvements. 477 + "; 478 + 448 479 services.postgresql.settings = 449 480 { 450 481 hba_file = "${pkgs.writeText "pg_hba.conf" cfg.authentication}"; ··· 556 587 ${ 557 588 concatMapStrings 558 589 (user: 559 - let 590 + let 560 591 userPermissions = concatStringsSep "\n" 561 592 (mapAttrsToList 562 593 (database: permission: ''$PSQL -tAc 'GRANT ${permission} ON ${database} TO "${user.name}"' '') 563 594 user.ensurePermissions 564 595 ); 596 + dbOwnershipStmt = optionalString 597 + user.ensureDBOwnership 598 + ''$PSQL -tAc 'ALTER DATABASE "${user.name}" OWNER TO "${user.name}";' ''; 565 599 566 600 filteredClauses = filterAttrs (name: value: value != null) user.ensureClauses; 567 601 ··· 572 606 $PSQL -tAc "SELECT 1 FROM pg_roles WHERE rolname='${user.name}'" | grep -q 1 || $PSQL -tAc 'CREATE USER "${user.name}"' 573 607 ${userPermissions} 574 608 ${userClauses} 609 + 610 + ${dbOwnershipStmt} 575 611 '' 576 612 ) 577 613 cfg.ensureUsers
+2 -2
nixos/modules/services/development/zammad.nix
··· 204 204 205 205 assertions = [ 206 206 { 207 - assertion = cfg.database.createLocally -> cfg.database.user == "zammad"; 207 + assertion = cfg.database.createLocally -> cfg.database.user == "zammad" && cfg.database.name == "zammad"; 208 208 message = "services.zammad.database.user must be set to \"zammad\" if services.zammad.database.createLocally is set to true"; 209 209 } 210 210 { ··· 231 231 ensureUsers = [ 232 232 { 233 233 name = cfg.database.user; 234 - ensurePermissions = { "DATABASE ${cfg.database.name}" = "ALL PRIVILEGES"; }; 234 + ensureDBOwnership = true; 235 235 } 236 236 ]; 237 237 };
+1 -1
nixos/modules/services/finance/odoo.nix
··· 121 121 ensureDatabases = [ "odoo" ]; 122 122 ensureUsers = [{ 123 123 name = "odoo"; 124 - ensurePermissions = { "DATABASE odoo" = "ALL PRIVILEGES"; }; 124 + ensureDBOwnership = true; 125 125 }]; 126 126 }; 127 127 });
+1 -1
nixos/modules/services/mail/listmonk.nix
··· 168 168 169 169 ensureUsers = [{ 170 170 name = "listmonk"; 171 - ensurePermissions = { "DATABASE listmonk" = "ALL PRIVILEGES"; }; 171 + ensureDBOwnership = true; 172 172 }]; 173 173 174 174 ensureDatabases = [ "listmonk" ];
+11 -3
nixos/modules/services/mail/roundcube.nix
··· 179 179 }; 180 180 }; 181 181 182 + assertions = [ 183 + { 184 + assertion = localDB -> cfg.database.username == cfg.database.dbname; 185 + message = '' 186 + When setting up a DB and its owner user, the owner and the DB name must be 187 + equal! 188 + ''; 189 + } 190 + ]; 191 + 182 192 services.postgresql = mkIf localDB { 183 193 enable = true; 184 194 ensureDatabases = [ cfg.database.dbname ]; 185 195 ensureUsers = [ { 186 196 name = cfg.database.username; 187 - ensurePermissions = { 188 - "DATABASE ${cfg.database.username}" = "ALL PRIVILEGES"; 189 - }; 197 + ensureDBOwnership = true; 190 198 } ]; 191 199 }; 192 200
+4 -6
nixos/modules/services/mail/sympa.nix
··· 218 218 default = null; 219 219 example = "/run/keys/sympa-dbpassword"; 220 220 description = lib.mdDoc '' 221 - A file containing the password for {option}`services.sympa.database.user`. 221 + A file containing the password for {option}`services.sympa.database.name`. 222 222 ''; 223 223 }; 224 224 ··· 342 342 343 343 db_type = cfg.database.type; 344 344 db_name = cfg.database.name; 345 + db_user = cfg.database.name; 345 346 } 346 347 // (optionalAttrs (cfg.database.host != null) { 347 348 db_host = cfg.database.host; ··· 354 355 }) 355 356 // (optionalAttrs (cfg.database.port != null) { 356 357 db_port = cfg.database.port; 357 - }) 358 - // (optionalAttrs (cfg.database.user != null) { 359 - db_user = cfg.database.user; 360 358 }) 361 359 // (optionalAttrs (cfg.mta.type == "postfix") { 362 360 sendmail_aliases = "${dataDir}/sympa_transport"; ··· 393 391 users.groups.${group} = {}; 394 392 395 393 assertions = [ 396 - { assertion = cfg.database.createLocally -> cfg.database.user == user; 394 + { assertion = cfg.database.createLocally -> cfg.database.user == user && cfg.database.name == cfg.database.user; 397 395 message = "services.sympa.database.user must be set to ${user} if services.sympa.database.createLocally is set to true"; 398 396 } 399 397 { assertion = cfg.database.createLocally -> cfg.database.passwordFile == null; ··· 579 577 ensureDatabases = [ cfg.database.name ]; 580 578 ensureUsers = [ 581 579 { name = cfg.database.user; 582 - ensurePermissions = { "DATABASE ${cfg.database.name}" = "ALL PRIVILEGES"; }; 580 + ensureDBOwnership = true; 583 581 } 584 582 ]; 585 583 };
+2 -2
nixos/modules/services/matrix/matrix-sliding-sync.nix
··· 74 74 services.postgresql = lib.optionalAttrs cfg.createDatabase { 75 75 enable = true; 76 76 ensureDatabases = [ "matrix-sliding-sync" ]; 77 - ensureUsers = [ rec { 77 + ensureUsers = [ { 78 78 name = "matrix-sliding-sync"; 79 - ensurePermissions."DATABASE \"${name}\"" = "ALL PRIVILEGES"; 79 + ensureDBOwnership = true; 80 80 } ]; 81 81 }; 82 82
+1 -3
nixos/modules/services/matrix/mautrix-facebook.nix
··· 135 135 ensureDatabases = ["mautrix-facebook"]; 136 136 ensureUsers = [{ 137 137 name = "mautrix-facebook"; 138 - ensurePermissions = { 139 - "DATABASE \"mautrix-facebook\"" = "ALL PRIVILEGES"; 140 - }; 138 + ensureDBOwnership = true; 141 139 }]; 142 140 }; 143 141
+1 -3
nixos/modules/services/misc/atuin.nix
··· 73 73 enable = true; 74 74 ensureUsers = [{ 75 75 name = "atuin"; 76 - ensurePermissions = { 77 - "DATABASE atuin" = "ALL PRIVILEGES"; 78 - }; 76 + ensureDBOwnership = true; 79 77 }]; 80 78 ensureDatabases = [ "atuin" ]; 81 79 };
+79
nixos/modules/services/misc/forgejo.md
··· 1 + # Forgejo {#module-forgejo} 2 + 3 + Forgejo is a soft-fork of gitea, with strong community focus, as well 4 + as on self-hosting and federation. [Codeberg](https://codeberg.org) is 5 + deployed from it. 6 + 7 + See [upstream docs](https://forgejo.org/docs/latest/). 8 + 9 + The method of choice for running forgejo is using [`services.forgejo`](#opt-services.forgejo.enable). 10 + 11 + ::: {.warning} 12 + Running forgejo using `services.gitea.package = pkgs.forgejo` is no longer 13 + recommended. 14 + If you experience issues with your instance using `services.gitea`, 15 + **DO NOT** report them to the `services.gitea` module maintainers. 16 + **DO** report them to the `services.forgejo` module maintainers instead. 17 + ::: 18 + 19 + ## Migration from Gitea {#module-forgejo-migration-gitea} 20 + 21 + ::: {.note} 22 + Migrating is, while not strictly necessary at this point, highly recommended. 23 + Both modules and projects are likely to divide further with each release. 24 + Which might lead to an even more involved migration. 25 + ::: 26 + 27 + ### Full-Migration {#module-forgejo-migration-gitea-default} 28 + 29 + This will migrate the state directory (data), rename and chown the database and 30 + delete the gitea user. 31 + 32 + ::: {.note} 33 + This will also change the git remote ssh-url user from `gitea@` to `forgejo@`, 34 + when using the host's openssh server (default) instead of the integrated one. 35 + ::: 36 + 37 + Instructions for PostgreSQL (default). Adapt accordingly for other databases: 38 + 39 + ```sh 40 + systemctl stop gitea 41 + mv /var/lib/gitea /var/lib/forgejo 42 + runuser -u postgres -- psql -c ' 43 + ALTER USER gitea RENAME TO forgejo; 44 + ALTER DATABASE gitea RENAME TO forgejo; 45 + ' 46 + nixos-rebuild switch 47 + systemctl stop forgejo 48 + chown -R forgejo:forgejo /var/lib/forgejo 49 + systemctl restart forgejo 50 + ``` 51 + 52 + ### Alternatively, keeping the gitea user {#module-forgejo-migration-gitea-impersonate} 53 + 54 + Alternatively, instead of renaming the database, copying the state folder and 55 + changing the user, the forgejo module can be set up to re-use the old storage 56 + locations and database, instead of having to copy or rename them. 57 + Make sure to disable `services.gitea`, when doing this. 58 + 59 + ```nix 60 + services.gitea.enable = false; 61 + 62 + services.forgejo = { 63 + enable = true; 64 + user = "gitea"; 65 + group = "gitea"; 66 + stateDir = "/var/lib/gitea"; 67 + database.name = "gitea"; 68 + database.user = "gitea"; 69 + }; 70 + 71 + users.users,gitea = { 72 + home = "/var/lib/gitea"; 73 + useDefaultShell = true; 74 + group = "gitea"; 75 + isSystemUser = true; 76 + }; 77 + 78 + users.groups.gitea = {}; 79 + ```
+10 -1
nixos/modules/services/misc/forgejo.nix
··· 357 357 assertion = cfg.database.createDatabase -> useSqlite || cfg.database.user == cfg.user; 358 358 message = "services.forgejo.database.user must match services.forgejo.user if the database is to be automatically provisioned"; 359 359 } 360 + { assertion = cfg.database.createDatabase && usePostgresql -> cfg.database.user == cfg.database.name; 361 + message = '' 362 + When creating a database via NixOS, the db user and db name must be equal! 363 + If you already have an existing DB+user and this assertion is new, you can safely set 364 + `services.forgejo.createDatabase` to `false` because removal of `ensureUsers` 365 + and `ensureDatabases` doesn't have any effect. 366 + ''; 367 + } 360 368 ]; 361 369 362 370 services.forgejo.settings = { ··· 423 431 ensureUsers = [ 424 432 { 425 433 name = cfg.database.user; 426 - ensurePermissions = { "DATABASE ${cfg.database.name}" = "ALL PRIVILEGES"; }; 434 + ensureDBOwnership = true; 427 435 } 428 436 ]; 429 437 }; ··· 677 685 }; 678 686 }; 679 687 688 + meta.doc = ./forgejo.md; 680 689 meta.maintainers = with lib.maintainers; [ bendlas emilylange ]; 681 690 }
+9 -1
nixos/modules/services/misc/gitea.nix
··· 394 394 { assertion = cfg.database.createDatabase -> useSqlite || cfg.database.user == cfg.user; 395 395 message = "services.gitea.database.user must match services.gitea.user if the database is to be automatically provisioned"; 396 396 } 397 + { assertion = cfg.database.createDatabase && usePostgresql -> cfg.database.user == cfg.database.name; 398 + message = '' 399 + When creating a database via NixOS, the db user and db name must be equal! 400 + If you already have an existing DB+user and this assertion is new, you can safely set 401 + `services.gitea.createDatabase` to `false` because removal of `ensureUsers` 402 + and `ensureDatabases` doesn't have any effect. 403 + ''; 404 + } 397 405 ]; 398 406 399 407 services.gitea.settings = { ··· 461 469 ensureDatabases = [ cfg.database.name ]; 462 470 ensureUsers = [ 463 471 { name = cfg.database.user; 464 - ensurePermissions = { "DATABASE ${cfg.database.name}" = "ALL PRIVILEGES"; }; 472 + ensureDBOwnership = true; 465 473 } 466 474 ]; 467 475 };
+2 -2
nixos/modules/services/misc/redmine.nix
··· 267 267 { assertion = cfg.database.passwordFile != null || cfg.database.socket != null; 268 268 message = "one of services.redmine.database.socket or services.redmine.database.passwordFile must be set"; 269 269 } 270 - { assertion = cfg.database.createLocally -> cfg.database.user == cfg.user; 270 + { assertion = cfg.database.createLocally -> cfg.database.user == cfg.user && cfg.database.user == cfg.database.name; 271 271 message = "services.redmine.database.user must be set to ${cfg.user} if services.redmine.database.createLocally is set true"; 272 272 } 273 273 { assertion = cfg.database.createLocally -> cfg.database.socket != null; ··· 315 315 ensureDatabases = [ cfg.database.name ]; 316 316 ensureUsers = [ 317 317 { name = cfg.database.user; 318 - ensurePermissions = { "DATABASE ${cfg.database.name}" = "ALL PRIVILEGES"; }; 318 + ensureDBOwnership = true; 319 319 } 320 320 ]; 321 321 };
+7 -3
nixos/modules/services/misc/sourcehut/service.nix
··· 249 249 ensureDatabases = [ srvCfg.postgresql.database ]; 250 250 ensureUsers = map (name: { 251 251 inherit name; 252 - ensurePermissions = { "DATABASE \"${srvCfg.postgresql.database}\"" = "ALL PRIVILEGES"; }; 252 + # We don't use it because we have a special default database name with dots. 253 + # TODO(for maintainers of sourcehut): migrate away from custom preStart script. 254 + ensureDBOwnership = false; 253 255 }) [srvCfg.user]; 254 256 }; 257 + 255 258 256 259 services.sourcehut.settings = mkMerge [ 257 260 { ··· 378 381 extraService 379 382 ])) extraServices) 380 383 381 - # Work around 'pq: permission denied for schema public' with postgres v15, until a 382 - # solution for `services.postgresql.ensureUsers` is found. 384 + # Work around 'pq: permission denied for schema public' with postgres v15. 383 385 # See https://github.com/NixOS/nixpkgs/issues/216989 384 386 # Workaround taken from nixos/forgejo: https://github.com/NixOS/nixpkgs/pull/262741 387 + # TODO(to maintainers of sourcehut): please migrate away from this workaround 388 + # by migrating away from database name defaults with dots. 385 389 (lib.mkIf ( 386 390 cfg.postgresql.enable 387 391 && lib.strings.versionAtLeast config.services.postgresql.package.version "15.0"
+2 -2
nixos/modules/services/monitoring/zabbix-proxy.nix
··· 203 203 { assertion = !config.services.zabbixServer.enable; 204 204 message = "Please choose one of services.zabbixServer or services.zabbixProxy."; 205 205 } 206 - { assertion = cfg.database.createLocally -> cfg.database.user == user; 206 + { assertion = cfg.database.createLocally -> cfg.database.user == user && cfg.database.name == cfg.database.user; 207 207 message = "services.zabbixProxy.database.user must be set to ${user} if services.zabbixProxy.database.createLocally is set true"; 208 208 } 209 209 { assertion = cfg.database.createLocally -> cfg.database.passwordFile == null; ··· 252 252 ensureDatabases = [ cfg.database.name ]; 253 253 ensureUsers = [ 254 254 { name = cfg.database.user; 255 - ensurePermissions = { "DATABASE ${cfg.database.name}" = "ALL PRIVILEGES"; }; 255 + ensureDBOwnership = true; 256 256 } 257 257 ]; 258 258 };
+2 -2
nixos/modules/services/monitoring/zabbix-server.nix
··· 191 191 config = mkIf cfg.enable { 192 192 193 193 assertions = [ 194 - { assertion = cfg.database.createLocally -> cfg.database.user == user; 194 + { assertion = cfg.database.createLocally -> cfg.database.user == user && cfg.database.user == cfg.database.name; 195 195 message = "services.zabbixServer.database.user must be set to ${user} if services.zabbixServer.database.createLocally is set true"; 196 196 } 197 197 { assertion = cfg.database.createLocally -> cfg.database.passwordFile == null; ··· 240 240 ensureDatabases = [ cfg.database.name ]; 241 241 ensureUsers = [ 242 242 { name = cfg.database.user; 243 - ensurePermissions = { "DATABASE ${cfg.database.name}" = "ALL PRIVILEGES"; }; 243 + ensureDBOwnership = true; 244 244 } 245 245 ]; 246 246 };
+1 -1
nixos/modules/services/security/hockeypuck.nix
··· 55 55 ensureDatabases = [ "hockeypuck" ]; 56 56 ensureUsers = [{ 57 57 name = "hockeypuck"; 58 - ensurePermissions."DATABASE hockeypuck" = "ALL PRIVILEGES"; 58 + ensureDBOwnership = true; 59 59 }]; 60 60 }; 61 61 ```
+4 -6
nixos/modules/services/web-apps/coder.nix
··· 149 149 150 150 config = mkIf cfg.enable { 151 151 assertions = [ 152 - { assertion = cfg.database.createLocally -> cfg.database.username == name; 153 - message = "services.coder.database.username must be set to ${user} if services.coder.database.createLocally is set true"; 152 + { assertion = cfg.database.createLocally -> cfg.database.username == name && cfg.database.database == cfg.database.username; 153 + message = "services.coder.database.username must be set to ${name} if services.coder.database.createLocally is set true"; 154 154 } 155 155 ]; 156 156 ··· 193 193 cfg.database.database 194 194 ]; 195 195 ensureUsers = [{ 196 - name = cfg.database.username; 197 - ensurePermissions = { 198 - "DATABASE \"${cfg.database.database}\"" = "ALL PRIVILEGES"; 199 - }; 196 + name = cfg.user; 197 + ensureDBOwnership = true; 200 198 } 201 199 ]; 202 200 };
+1 -3
nixos/modules/services/web-apps/gotosocial.nix
··· 128 128 ensureUsers = [ 129 129 { 130 130 name = "gotosocial"; 131 - ensurePermissions = { 132 - "DATABASE gotosocial" = "ALL PRIVILEGES"; 133 - }; 131 + ensureDBOwnership = true; 134 132 } 135 133 ]; 136 134 };
+9 -6
nixos/modules/services/web-apps/invidious.nix
··· 109 109 # Default to using the local database if we create it 110 110 services.invidious.database.host = lib.mkDefault null; 111 111 112 + 113 + # TODO(raitobezarius to maintainers of invidious): I strongly advise to clean up the kemal specific 114 + # thing for 24.05 and use `ensureDBOwnership`. 115 + # See https://github.com/NixOS/nixpkgs/issues/216989 116 + systemd.services.postgresql.postStart = lib.mkAfter '' 117 + $PSQL -tAc 'ALTER DATABASE "${cfg.settings.db.dbname}" OWNER TO "${cfg.settings.db.user}";' 118 + ''; 112 119 services.postgresql = { 113 120 enable = true; 121 + ensureUsers = lib.singleton { name = cfg.settings.db.user; ensureDBOwnership = false; }; 114 122 ensureDatabases = lib.singleton cfg.settings.db.dbname; 115 - ensureUsers = lib.singleton { 116 - name = cfg.settings.db.user; 117 - ensurePermissions = { 118 - "DATABASE ${cfg.settings.db.dbname}" = "ALL PRIVILEGES"; 119 - }; 120 - }; 121 123 # This is only needed because the unix user invidious isn't the same as 122 124 # the database user. This tells postgres to map one to the other. 123 125 identMap = '' ··· 136 138 documentation = [ "https://docs.invidious.io/Database-Information-and-Maintenance.md" ]; 137 139 startAt = lib.mkDefault "weekly"; 138 140 path = [ config.services.postgresql.package ]; 141 + after = [ "postgresql.service" ]; 139 142 script = '' 140 143 psql ${cfg.settings.db.dbname} ${cfg.settings.db.user} -c "DELETE FROM nonces * WHERE expire < current_timestamp" 141 144 psql ${cfg.settings.db.dbname} ${cfg.settings.db.user} -c "TRUNCATE TABLE videos"
+1 -1
nixos/modules/services/web-apps/lemmy.nix
··· 146 146 ensureDatabases = [ cfg.settings.database.database ]; 147 147 ensureUsers = [{ 148 148 name = cfg.settings.database.user; 149 - ensurePermissions."DATABASE ${cfg.settings.database.database}" = "ALL PRIVILEGES"; 149 + ensureDBOwnership = true; 150 150 }]; 151 151 }; 152 152
+3 -3
nixos/modules/services/web-apps/mastodon.nix
··· 612 612 config = lib.mkIf cfg.enable (lib.mkMerge [{ 613 613 assertions = [ 614 614 { 615 - assertion = databaseActuallyCreateLocally -> (cfg.user == cfg.database.user); 615 + assertion = databaseActuallyCreateLocally -> (cfg.user == cfg.database.user && cfg.database.user == cfg.database.name); 616 616 message = '' 617 617 For local automatic database provisioning (services.mastodon.database.createLocally == true) with peer 618 618 authentication (services.mastodon.database.host == "/run/postgresql") to work services.mastodon.user ··· 845 845 enable = true; 846 846 ensureUsers = [ 847 847 { 848 - name = cfg.database.user; 849 - ensurePermissions."DATABASE ${cfg.database.name}" = "ALL PRIVILEGES"; 848 + name = cfg.database.name; 849 + ensureDBOwnership = true; 850 850 } 851 851 ]; 852 852 ensureDatabases = [ cfg.database.name ];
+2 -2
nixos/modules/services/web-apps/mediawiki.nix
··· 454 454 { assertion = cfg.database.createLocally -> (cfg.database.type == "mysql" || cfg.database.type == "postgres"); 455 455 message = "services.mediawiki.createLocally is currently only supported for database type 'mysql' and 'postgres'"; 456 456 } 457 - { assertion = cfg.database.createLocally -> cfg.database.user == user; 457 + { assertion = cfg.database.createLocally -> cfg.database.user == user && cfg.database.name == cfg.database.user; 458 458 message = "services.mediawiki.database.user must be set to ${user} if services.mediawiki.database.createLocally is set true"; 459 459 } 460 460 { assertion = cfg.database.createLocally -> cfg.database.socket != null; ··· 486 486 ensureDatabases = [ cfg.database.name ]; 487 487 ensureUsers = [{ 488 488 name = cfg.database.user; 489 - ensurePermissions = { "DATABASE \"${cfg.database.name}\"" = "ALL PRIVILEGES"; }; 489 + ensureDBOwnership = true; 490 490 }]; 491 491 }; 492 492
+6 -11
nixos/modules/services/web-apps/miniflux.nix
··· 6 6 7 7 defaultAddress = "localhost:8080"; 8 8 9 - dbUser = "miniflux"; 10 - dbName = "miniflux"; 11 - 12 9 pgbin = "${config.services.postgresql.package}/bin"; 13 10 preStart = pkgs.writeScript "miniflux-pre-start" '' 14 11 #!${pkgs.runtimeShell} 15 - ${pgbin}/psql "${dbName}" -c "CREATE EXTENSION IF NOT EXISTS hstore" 12 + ${pgbin}/psql "miniflux" -c "CREATE EXTENSION IF NOT EXISTS hstore" 16 13 ''; 17 14 in 18 15 ··· 62 59 63 60 services.miniflux.config = { 64 61 LISTEN_ADDR = mkDefault defaultAddress; 65 - DATABASE_URL = "user=${dbUser} host=/run/postgresql dbname=${dbName}"; 62 + DATABASE_URL = "user=miniflux host=/run/postgresql dbname=miniflux"; 66 63 RUN_MIGRATIONS = "1"; 67 64 CREATE_ADMIN = "1"; 68 65 }; ··· 70 67 services.postgresql = { 71 68 enable = true; 72 69 ensureUsers = [ { 73 - name = dbUser; 74 - ensurePermissions = { 75 - "DATABASE ${dbName}" = "ALL PRIVILEGES"; 76 - }; 70 + name = "miniflux"; 71 + ensureDBOwnership = true; 77 72 } ]; 78 - ensureDatabases = [ dbName ]; 73 + ensureDatabases = [ "miniflux" ]; 79 74 }; 80 75 81 76 systemd.services.miniflux-dbsetup = { ··· 97 92 98 93 serviceConfig = { 99 94 ExecStart = "${cfg.package}/bin/miniflux"; 100 - User = dbUser; 95 + User = "miniflux"; 101 96 DynamicUser = true; 102 97 RuntimeDirectory = "miniflux"; 103 98 RuntimeDirectoryMode = "0700";
+10 -3
nixos/modules/services/web-apps/mobilizon.nix
··· 347 347 348 348 # Taken from here: 349 349 # https://framagit.org/framasoft/mobilizon/-/blob/1.1.0/priv/templates/setup_db.eex 350 + # TODO(to maintainers of mobilizon): the owner database alteration is necessary 351 + # as PostgreSQL 15 changed their behaviors w.r.t. to privileges. 352 + # See https://github.com/NixOS/nixpkgs/issues/216989 to get rid 353 + # of that workaround. 350 354 script = 351 355 '' 352 356 psql "${repoSettings.database}" -c "\ 353 357 CREATE EXTENSION IF NOT EXISTS postgis; \ 354 358 CREATE EXTENSION IF NOT EXISTS pg_trgm; \ 355 359 CREATE EXTENSION IF NOT EXISTS unaccent;" 360 + psql -tAc 'ALTER DATABASE "${repoSettings.database}" OWNER TO "${dbUser}";' 361 + 356 362 ''; 357 363 358 364 serviceConfig = { ··· 372 378 ensureUsers = [ 373 379 { 374 380 name = dbUser; 375 - ensurePermissions = { 376 - "DATABASE \"${repoSettings.database}\"" = "ALL PRIVILEGES"; 377 - }; 381 + # Given that `dbUser` is potentially arbitrarily custom, we will perform 382 + # manual fixups in mobilizon-postgres. 383 + # TODO(to maintainers of mobilizon): Feel free to simplify your setup by using `ensureDBOwnership`. 384 + ensureDBOwnership = false; 378 385 } 379 386 ]; 380 387 extraPlugins = with postgresql.pkgs; [ postgis ];
+2 -2
nixos/modules/services/web-apps/moodle.nix
··· 194 194 config = mkIf cfg.enable { 195 195 196 196 assertions = [ 197 - { assertion = cfg.database.createLocally -> cfg.database.user == user; 197 + { assertion = cfg.database.createLocally -> cfg.database.user == user && cfg.database.user == cfg.database.name; 198 198 message = "services.moodle.database.user must be set to ${user} if services.moodle.database.createLocally is set true"; 199 199 } 200 200 { assertion = cfg.database.createLocally -> cfg.database.passwordFile == null; ··· 220 220 ensureDatabases = [ cfg.database.name ]; 221 221 ensureUsers = [ 222 222 { name = cfg.database.user; 223 - ensurePermissions = { "DATABASE ${cfg.database.name}" = "ALL PRIVILEGES"; }; 223 + ensureDBOwnership = true; 224 224 } 225 225 ]; 226 226 };
+1 -3
nixos/modules/services/web-apps/netbox.nix
··· 257 257 ensureUsers = [ 258 258 { 259 259 name = "netbox"; 260 - ensurePermissions = { 261 - "DATABASE netbox" = "ALL PRIVILEGES"; 262 - }; 260 + ensureDBOwnership = true; 263 261 } 264 262 ]; 265 263 };
+1 -1
nixos/modules/services/web-apps/nextcloud.nix
··· 1042 1042 ensureDatabases = [ cfg.config.dbname ]; 1043 1043 ensureUsers = [{ 1044 1044 name = cfg.config.dbuser; 1045 - ensurePermissions = { "DATABASE ${cfg.config.dbname}" = "ALL PRIVILEGES"; }; 1045 + ensureDBOwnership = true; 1046 1046 }]; 1047 1047 }; 1048 1048
+1 -1
nixos/modules/services/web-apps/onlyoffice.nix
··· 198 198 ensureDatabases = [ "onlyoffice" ]; 199 199 ensureUsers = [{ 200 200 name = "onlyoffice"; 201 - ensurePermissions = { "DATABASE \"onlyoffice\"" = "ALL PRIVILEGES"; }; 201 + ensureDBOwnership = true; 202 202 }]; 203 203 }; 204 204 };
+1 -1
nixos/modules/services/web-apps/outline.nix
··· 581 581 enable = true; 582 582 ensureUsers = [{ 583 583 name = "outline"; 584 - ensurePermissions."DATABASE outline" = "ALL PRIVILEGES"; 584 + ensureDBOwnership = true; 585 585 }]; 586 586 ensureDatabases = [ "outline" ]; 587 587 };
+1 -3
nixos/modules/services/web-apps/peering-manager.nix
··· 186 186 ensureUsers = [ 187 187 { 188 188 name = "peering-manager"; 189 - ensurePermissions = { 190 - "DATABASE \"peering-manager\"" = "ALL PRIVILEGES"; 191 - }; 189 + ensureDBOwnership = true; 192 190 } 193 191 ]; 194 192 };
-1
nixos/modules/services/web-apps/pixelfed.nix
··· 271 271 ensureDatabases = [ cfg.database.name ]; 272 272 ensureUsers = [{ 273 273 name = user; 274 - ensurePermissions = { }; 275 274 }]; 276 275 }; 277 276
+11 -2
nixos/modules/services/web-apps/tt-rss.nix
··· 529 529 assertion = cfg.database.password != null -> cfg.database.passwordFile == null; 530 530 message = "Cannot set both password and passwordFile"; 531 531 } 532 + { 533 + assertion = cfg.database.createLocally -> cfg.database.name == cfg.user && cfg.database.user == cfg.user; 534 + message = '' 535 + When creating a database via NixOS, the db user and db name must be equal! 536 + If you already have an existing DB+user and this assertion is new, you can safely set 537 + `services.tt-rss.database.createLocally` to `false` because removal of `ensureUsers` 538 + and `ensureDatabases` doesn't have any effect. 539 + ''; 540 + } 532 541 ]; 533 542 534 543 services.phpfpm.pools = mkIf (cfg.pool == "${poolName}") { ··· 632 641 enable = mkDefault true; 633 642 ensureDatabases = [ cfg.database.name ]; 634 643 ensureUsers = [ 635 - { name = cfg.user; 636 - ensurePermissions = { "DATABASE ${cfg.database.name}" = "ALL PRIVILEGES"; }; 644 + { name = cfg.database.user; 645 + ensureDBOwnership = true; 637 646 } 638 647 ]; 639 648 };
+1 -1
nixos/modules/services/web-servers/hydron.nix
··· 93 93 ensureDatabases = [ "hydron" ]; 94 94 ensureUsers = [ 95 95 { name = "hydron"; 96 - ensurePermissions = { "DATABASE hydron" = "ALL PRIVILEGES"; }; 96 + ensureDBOwnership = true; 97 97 } 98 98 ]; 99 99 };
+14 -3
nixos/modules/system/boot/loader/systemd-boot/systemd-boot-builder.py
··· 88 88 89 89 90 90 def get_bootspec(profile: str | None, generation: int) -> BootSpec: 91 - boot_json_path = os.path.realpath("%s/%s" % (system_dir(profile, generation, None), "boot.json")) 92 - boot_json_f = open(boot_json_path, 'r') 93 - bootspec_json = json.load(boot_json_f) 91 + system_directory = system_dir(profile, generation, None) 92 + boot_json_path = os.path.realpath("%s/%s" % (system_directory, "boot.json")) 93 + if os.path.isfile(boot_json_path): 94 + boot_json_f = open(boot_json_path, 'r') 95 + bootspec_json = json.load(boot_json_f) 96 + else: 97 + boot_json_str = subprocess.check_output([ 98 + "@bootspecTools@/bin/synthesize", 99 + "--version", 100 + "1", 101 + system_directory, 102 + "/dev/stdout"], 103 + universal_newlines=True) 104 + bootspec_json = json.loads(boot_json_str) 94 105 return bootspec_from_json(bootspec_json) 95 106 96 107 def bootspec_from_json(bootspec_json: Dict) -> BootSpec:
+2
nixos/modules/system/boot/loader/systemd-boot/systemd-boot.nix
··· 16 16 17 17 systemd = config.systemd.package; 18 18 19 + bootspecTools = pkgs.bootspec; 20 + 19 21 nix = config.nix.package.out; 20 22 21 23 timeout = optionalString (config.boot.loader.timeout != null) config.boot.loader.timeout;
+1 -1
nixos/tests/dex-oidc.nix
··· 49 49 ensureUsers = [ 50 50 { 51 51 name = "dex"; 52 - ensurePermissions = { "DATABASE dex" = "ALL PRIVILEGES"; }; 52 + ensureDBOwnership = true; 53 53 } 54 54 ]; 55 55 };
+1 -1
nixos/tests/ferretdb.nix
··· 39 39 ensureDatabases = [ "ferretdb" ]; 40 40 ensureUsers = [{ 41 41 name = "ferretdb"; 42 - ensurePermissions."DATABASE ferretdb" = "ALL PRIVILEGES"; 42 + ensureDBOwnership = true; 43 43 }]; 44 44 }; 45 45
+1 -3
nixos/tests/freshrss-pgsql.nix
··· 22 22 ensureUsers = [ 23 23 { 24 24 name = "freshrss"; 25 - ensurePermissions = { 26 - "DATABASE freshrss" = "ALL PRIVILEGES"; 27 - }; 25 + ensureDBOwnership = true; 28 26 } 29 27 ]; 30 28 initialScript = pkgs.writeText "postgresql-password" ''
+1 -1
nixos/tests/grafana/basic.nix
··· 55 55 ensureDatabases = [ "grafana" ]; 56 56 ensureUsers = [{ 57 57 name = "grafana"; 58 - ensurePermissions."DATABASE grafana" = "ALL PRIVILEGES"; 58 + ensureDBOwnership = true; 59 59 }]; 60 60 }; 61 61 systemd.services.grafana.after = [ "postgresql.service" ];
+1 -1
nixos/tests/hockeypuck.nix
··· 35 35 ensureDatabases = [ "hockeypuck" ]; 36 36 ensureUsers = [{ 37 37 name = "hockeypuck"; 38 - ensurePermissions."DATABASE hockeypuck" = "ALL PRIVILEGES"; 38 + ensureDBOwnership = true; 39 39 }]; 40 40 }; 41 41 };
+5 -7
nixos/tests/home-assistant.nix
··· 9 9 nodes.hass = { pkgs, ... }: { 10 10 services.postgresql = { 11 11 enable = true; 12 - 13 - # FIXME: hack for https://github.com/NixOS/nixpkgs/issues/216989 14 - # Should be replaced with ensureUsers again when a solution for that is found 15 - initialScript = pkgs.writeText "hass-setup-db.sql" '' 16 - CREATE ROLE hass WITH LOGIN; 17 - CREATE DATABASE hass WITH OWNER hass; 18 - ''; 12 + ensureDatabases = [ "hass" ]; 13 + ensureUsers = [{ 14 + name = "hass"; 15 + ensureDBOwnership = true; 16 + }]; 19 17 }; 20 18 21 19 services.home-assistant = {
+1 -2
nixos/tests/invidious.nix
··· 44 44 enable = true; 45 45 initialScript = pkgs.writeText "init-postgres-with-password" '' 46 46 CREATE USER kemal WITH PASSWORD 'correct horse battery staple'; 47 - CREATE DATABASE invidious; 48 - GRANT ALL PRIVILEGES ON DATABASE invidious TO kemal; 47 + CREATE DATABASE invidious OWNER kemal; 49 48 ''; 50 49 }; 51 50 };
+1 -1
nixos/tests/paperless.nix
··· 17 17 ensureDatabases = [ "paperless" ]; 18 18 ensureUsers = [ 19 19 { name = config.services.paperless.user; 20 - ensurePermissions = { "DATABASE \"paperless\"" = "ALL PRIVILEGES"; }; 20 + ensureDBOwnership = true; 21 21 } 22 22 ]; 23 23 };
-8
nixos/tests/pgadmin4.nix
··· 19 19 authentication = '' 20 20 host all all localhost trust 21 21 ''; 22 - ensureUsers = [ 23 - { 24 - name = "postgres"; 25 - ensurePermissions = { 26 - "DATABASE \"postgres\"" = "ALL PRIVILEGES"; 27 - }; 28 - } 29 - ]; 30 22 }; 31 23 32 24 services.pgadmin = {
+4 -6
nixos/tests/pgbouncer.nix
··· 17 17 18 18 systemd.services.postgresql = { 19 19 postStart = '' 20 - ${pkgs.postgresql}/bin/psql -U postgres -c "ALTER ROLE testuser WITH LOGIN PASSWORD 'testpass'"; 20 + ${pkgs.postgresql}/bin/psql -U postgres -c "ALTER ROLE testuser WITH LOGIN PASSWORD 'testpass'"; 21 + ${pkgs.postgresql}/bin/psql -U postgres -c "ALTER DATABASE testdb OWNER TO testuser;"; 21 22 ''; 22 23 }; 23 24 ··· 28 29 ensureUsers = [ 29 30 { 30 31 name = "testuser"; 31 - ensurePermissions = { 32 - "DATABASE testdb" = "ALL PRIVILEGES"; 33 - }; 34 32 }]; 35 33 authentication = '' 36 34 local testdb testuser scram-sha-256 ··· 40 38 pgbouncer = { 41 39 enable = true; 42 40 listenAddress = "localhost"; 43 - databases = { testdb = "host=/run/postgresql/ port=5432 auth_user=testuser dbname=testdb"; }; 41 + databases = { test = "host=/run/postgresql/ port=5432 auth_user=testuser dbname=testdb"; }; 44 42 authType = "scram-sha-256"; 45 43 authFile = testAuthFile; 46 44 }; ··· 55 53 56 54 # Test if we can make a query through PgBouncer 57 55 one.wait_until_succeeds( 58 - "psql 'postgres://testuser:testpass@localhost:6432/testdb' -c 'SELECT 1;'" 56 + "psql 'postgres://testuser:testpass@localhost:6432/test' -c 'SELECT 1;'" 59 57 ) 60 58 ''; 61 59 })
+1 -3
nixos/tests/powerdns-admin.nix
··· 87 87 ensureUsers = [ 88 88 { 89 89 name = "powerdnsadmin"; 90 - ensurePermissions = { 91 - "DATABASE powerdnsadmin" = "ALL PRIVILEGES"; 92 - }; 90 + ensureDBOwnership = true; 93 91 } 94 92 ]; 95 93 };
+1 -1
nixos/tests/sftpgo.nix
··· 156 156 ensureDatabases = [ "sftpgo" ]; 157 157 ensureUsers = [{ 158 158 name = "sftpgo"; 159 - ensurePermissions."DATABASE sftpgo" = "ALL PRIVILEGES"; 159 + ensureDBOwnership = true; 160 160 }]; 161 161 }; 162 162
+16
nixos/tests/systemd-boot.nix
··· 277 277 machine.wait_for_unit("multi-user.target") 278 278 ''; 279 279 }; 280 + 281 + no-bootspec = makeTest 282 + { 283 + name = "systemd-boot-no-bootspec"; 284 + meta.maintainers = with pkgs.lib.maintainers; [ julienmalka ]; 285 + 286 + nodes.machine = { 287 + imports = [ common ]; 288 + boot.bootspec.enable = false; 289 + }; 290 + 291 + testScript = '' 292 + machine.start() 293 + machine.wait_for_unit("multi-user.target") 294 + ''; 295 + }; 280 296 }
+23
nixos/tests/tandoor-recipes.nix
··· 5 5 nodes.machine = { pkgs, ... }: { 6 6 services.tandoor-recipes = { 7 7 enable = true; 8 + extraConfig = { 9 + DB_ENGINE = "django.db.backends.postgresql"; 10 + POSTGRES_HOST = "/run/postgresql"; 11 + POSTGRES_USER = "tandoor_recipes"; 12 + POSTGRES_DB = "tandoor_recipes"; 13 + }; 14 + }; 15 + 16 + services.postgresql = { 17 + enable = true; 18 + ensureDatabases = [ "tandoor_recipes" ]; 19 + ensureUsers = [ 20 + { 21 + name = "tandoor_recipes"; 22 + ensureDBOwnership = true; 23 + } 24 + ]; 25 + }; 26 + 27 + systemd.services = { 28 + tandoor-recipes = { 29 + after = [ "postgresql.service" ]; 30 + }; 8 31 }; 9 32 }; 10 33
+1 -1
nixos/tests/vikunja.nix
··· 33 33 ensureDatabases = [ "vikunja-api" ]; 34 34 ensureUsers = [ 35 35 { name = "vikunja-api"; 36 - ensurePermissions = { "DATABASE \"vikunja-api\"" = "ALL PRIVILEGES"; }; 36 + ensureDBOwnership = true; 37 37 } 38 38 ]; 39 39 };
+3 -2
nixos/tests/wiki-js.nix
··· 10 10 enable = true; 11 11 settings.db.host = "/run/postgresql"; 12 12 settings.db.user = "wiki-js"; 13 + settings.db.db = "wiki-js"; 13 14 settings.logLevel = "debug"; 14 15 }; 15 16 services.postgresql = { 16 17 enable = true; 17 - ensureDatabases = [ "wiki" ]; 18 + ensureDatabases = [ "wiki-js" ]; 18 19 ensureUsers = [ 19 20 { name = "wiki-js"; 20 - ensurePermissions."DATABASE wiki" = "ALL PRIVILEGES"; 21 + ensureDBOwnership = true; 21 22 } 22 23 ]; 23 24 };
+25 -10
pkgs/applications/audio/reaper/default.nix
··· 2 2 , fetchurl 3 3 , autoPatchelfHook 4 4 , makeWrapper 5 + , undmg 5 6 6 7 , alsa-lib 7 8 , curl ··· 14 15 , xdotool 15 16 , which 16 17 17 - , jackSupport ? true 18 + , jackSupport ? stdenv.isLinux 18 19 , jackLibrary 19 - , pulseaudioSupport ? config.pulseaudio or true 20 + , pulseaudioSupport ? config.pulseaudio or stdenv.isLinux 20 21 , libpulseaudio 21 22 }: 22 23 23 24 let 24 - url_for_platform = version: arch: "https://www.reaper.fm/files/${lib.versions.major version}.x/reaper${builtins.replaceStrings ["."] [""] version}_linux_${arch}.tar.xz"; 25 + url_for_platform = version: arch: if stdenv.isDarwin 26 + then "https://www.reaper.fm/files/${lib.versions.major version}.x/reaper${builtins.replaceStrings ["."] [""] version}_universal.dmg" 27 + else "https://www.reaper.fm/files/${lib.versions.major version}.x/reaper${builtins.replaceStrings ["."] [""] version}_linux_${arch}.tar.xz"; 25 28 in 26 29 stdenv.mkDerivation rec { 27 30 pname = "reaper"; ··· 29 32 30 33 src = fetchurl { 31 34 url = url_for_platform version stdenv.hostPlatform.qemuArch; 32 - hash = { 35 + hash = if stdenv.isDarwin then "sha256-jaT+3cIFVfBopgeeTkpNs9rFX50unlPJogdhkI9bsWU=" else { 33 36 x86_64-linux = "sha256-P/PnbJPr4ErDz5ho1/dLERhqkKjdetHzKpCpfVZAYb0="; 34 37 aarch64-linux = "sha256-PdnBVlHwoEEv2SPq/p5oyiOlduCEqL35gAY+QIJU1Ys="; 35 38 }.${stdenv.hostPlatform.system}; 36 39 }; 37 40 38 41 nativeBuildInputs = [ 42 + makeWrapper 43 + ] ++ lib.optionals stdenv.isLinux [ 44 + which 39 45 autoPatchelfHook 40 - makeWrapper 41 46 xdg-utils # Required for desktop integration 42 - which 47 + ] ++ lib.optionals stdenv.isDarwin [ 48 + undmg 43 49 ]; 44 50 51 + sourceRoot = lib.optionalString stdenv.isDarwin "Reaper.app"; 52 + 45 53 buildInputs = [ 46 - alsa-lib 47 54 stdenv.cc.cc.lib # reaper and libSwell need libstdc++.so.6 55 + ] ++ lib.optionals stdenv.isLinux [ 48 56 gtk3 57 + alsa-lib 49 58 ]; 50 59 51 - runtimeDependencies = [ 60 + runtimeDependencies = lib.optionals stdenv.isLinux [ 52 61 gtk3 # libSwell needs libgdk-3.so.0 53 62 ] 54 63 ++ lib.optional jackSupport jackLibrary ··· 56 65 57 66 dontBuild = true; 58 67 59 - installPhase = '' 68 + installPhase = if stdenv.isDarwin then '' 69 + runHook preInstall 70 + mkdir -p "$out/Applications/Reaper.app" 71 + cp -r * "$out/Applications/Reaper.app/" 72 + makeWrapper "$out/Applications/Reaper.app/Contents/MacOS/REAPER" "$out/bin/reaper" 73 + runHook postInstall 74 + '' else '' 60 75 runHook preInstall 61 76 62 77 HOME="$out/share" XDG_DATA_HOME="$out/share" ./install-reaper.sh \ ··· 89 104 homepage = "https://www.reaper.fm/"; 90 105 sourceProvenance = with sourceTypes; [ binaryNativeCode ]; 91 106 license = licenses.unfree; 92 - platforms = [ "x86_64-linux" "aarch64-linux" ]; 107 + platforms = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin" ]; 93 108 maintainers = with maintainers; [ jfrankenau ilian orivej uniquepointer viraptor ]; 94 109 }; 95 110 }
+13 -3
pkgs/applications/audio/reaper/updater.sh
··· 5 5 6 6 reaper_ver=$(curl -Ls https://www.reaper.fm/download.php | grep -o 'Version [0-9]\.[0-9]*' | head -n1 | cut -d' ' -f2) 7 7 8 - function set_hash_for_arch() { 8 + function set_hash_for_linux() { 9 9 local arch=$1 10 10 pkg_hash=$(nix-prefetch-url https://www.reaper.fm/files/${reaper_ver%.*}.x/reaper${reaper_ver/./}_linux_$arch.tar.xz) 11 11 pkg_hash=$(nix hash to-sri "sha256:$pkg_hash") ··· 14 14 update-source-version reaper "${reaper_ver}" "$pkg_hash" --system=$arch-linux 15 15 } 16 16 17 - set_hash_for_arch aarch64 18 - set_hash_for_arch x86_64 17 + function set_hash_for_darwin() { 18 + local arch=$1 19 + pkg_hash=$(nix-prefetch-url https://www.reaper.fm/files/${reaper_ver%.*}.x/reaper${reaper_ver/./}_universal.dmg) 20 + pkg_hash=$(nix hash to-sri "sha256:$pkg_hash") 21 + # reset the version so the second architecture update doesn't get ignored 22 + update-source-version reaper 0 "sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" --system=$arch-darwin 23 + update-source-version reaper "${reaper_ver}" "$pkg_hash" --system=$arch-darwin 24 + } 25 + 26 + set_hash_for_linux aarch64 27 + set_hash_for_linux x86_64 28 + set_hash_for_darwin aarch64
+1 -1
pkgs/applications/editors/molsketch/default.nix
··· 48 48 description = "2D molecule editor"; 49 49 homepage = "https://sourceforge.net/projects/molsketch/"; 50 50 license = licenses.gpl2Plus; 51 - maintainers = [ maintainers.fortuneteller2k ]; 51 + maintainers = [ maintainers.moni ]; 52 52 }; 53 53 }
+1 -1
pkgs/applications/editors/ox/default.nix
··· 18 18 homepage = "https://github.com/curlpipe/ox"; 19 19 changelog = "https://github.com/curlpipe/ox/releases/tag/${version}"; 20 20 license = licenses.gpl2Only; 21 - maintainers = with maintainers; [ fortuneteller2k ]; 21 + maintainers = with maintainers; [ moni ]; 22 22 }; 23 23 }
+7 -1
pkgs/applications/editors/texstudio/default.nix
··· 29 29 zlib 30 30 ]; 31 31 32 + postInstall = lib.optionalString stdenv.isDarwin '' 33 + mkdir -p "$out/Applications" 34 + mv "$out/bin/texstudio.app" "$out/Applications" 35 + rm -d "$out/bin" 36 + ''; 37 + 32 38 meta = with lib; { 33 39 description = "TeX and LaTeX editor"; 34 40 longDescription='' ··· 39 45 homepage = "https://texstudio.org"; 40 46 changelog = "https://github.com/texstudio-org/texstudio/blob/${version}/utilities/manual/CHANGELOG.txt"; 41 47 license = licenses.gpl2Plus; 42 - platforms = platforms.linux; 48 + platforms = platforms.unix; 43 49 maintainers = with maintainers; [ ajs124 cfouche ]; 44 50 }; 45 51 })
+2 -2
pkgs/applications/graphics/gscreenshot/default.nix
··· 18 18 19 19 python3Packages.buildPythonApplication rec { 20 20 pname = "gscreenshot"; 21 - version = "3.4.1"; 21 + version = "3.4.2"; 22 22 23 23 src = fetchFromGitHub { 24 24 owner = "thenaterhood"; 25 25 repo = "${pname}"; 26 26 rev = "v${version}"; 27 - sha256 = "sLJ+Fk+ePrmJeSllGd30uEQ/uFDl5CIob//1cDLKZHg="; 27 + sha256 = "sha256-Ha9PTvr6XNGhe4I0ZUwrdbsNHWhz+Ubw2gp+ctLTO64="; 28 28 }; 29 29 30 30 # needed for wrapGAppsHook to function
+1 -1
pkgs/applications/misc/flavours/default.nix
··· 29 29 homepage = "https://github.com/Misterio77/flavours"; 30 30 changelog = "https://github.com/Misterio77/flavours/releases/tag/v${version}"; 31 31 license = licenses.mit; 32 - maintainers = with maintainers; [ fortuneteller2k misterio77 ]; 32 + maintainers = with maintainers; [ moni misterio77 ]; 33 33 }; 34 34 }
+1 -1
pkgs/applications/misc/kile-wl/default.nix
··· 27 27 homepage = "https://gitlab.com/snakedye/kile"; 28 28 license = licenses.mit; 29 29 platforms = platforms.linux; # It's meant for river, a wayland compositor 30 - maintainers = with maintainers; [ fortuneteller2k ]; 30 + maintainers = with maintainers; [ moni ]; 31 31 mainProgram = "kile"; 32 32 }; 33 33 }
+1 -1
pkgs/applications/misc/tiramisu/default.nix
··· 27 27 homepage = "https://github.com/Sweets/tiramisu"; 28 28 license = licenses.mit; 29 29 platforms = platforms.linux; 30 - maintainers = with maintainers; [ wishfort36 fortuneteller2k ]; 30 + maintainers = with maintainers; [ wishfort36 moni ]; 31 31 }; 32 32 }
+2 -2
pkgs/applications/misc/upwork/default.nix
··· 6 6 7 7 stdenv.mkDerivation rec { 8 8 pname = "upwork"; 9 - version = "5.8.0.31"; 9 + version = "5.8.0.33"; 10 10 11 11 src = requireFile { 12 12 name = "${pname}_${version}_amd64.deb"; 13 13 url = "https://www.upwork.com/ab/downloads/os/linux/"; 14 - sha256 = "sha256-tQV6v0U6xxqBl7nQaBhXSrc9iv+7SPHfABTiJJQDnPI="; 14 + sha256 = "sha256-MU0usTAfNNMN8OYmS6dWU6Xk2o5dg5J0V7OQiv3dLug="; 15 15 }; 16 16 17 17 nativeBuildInputs = [
+1 -1
pkgs/applications/networking/browsers/vieb/default.nix
··· 58 58 homepage = "https://vieb.dev/"; 59 59 changelog = "https://github.com/Jelmerro/Vieb/releases/tag/${version}"; 60 60 description = "Vim Inspired Electron Browser"; 61 - maintainers = with maintainers; [ gebner fortuneteller2k tejing ]; 61 + maintainers = with maintainers; [ gebner tejing ]; 62 62 platforms = platforms.unix; 63 63 license = licenses.gpl3Plus; 64 64 };
+1 -1
pkgs/applications/networking/cluster/kluctl/default.nix
··· 33 33 description = "The missing glue to put together large Kubernetes deployments"; 34 34 homepage = "https://kluctl.io/"; 35 35 license = licenses.asl20; 36 - maintainers = with maintainers; [ sikmir ]; 36 + maintainers = with maintainers; [ sikmir netthier ]; 37 37 }; 38 38 }
+3 -3
pkgs/applications/networking/cluster/kubefirst/default.nix
··· 2 2 3 3 buildGoModule rec { 4 4 pname = "kubefirst"; 5 - version = "2.3.0"; 5 + version = "2.3.5"; 6 6 7 7 src = fetchFromGitHub { 8 8 owner = "kubefirst"; 9 9 repo = pname; 10 10 rev = "v${version}"; 11 - hash = "sha256-5znZMr0Dj6kpKJbypICN5+Fv/+3FgTLBok3YMrWaHdo="; 11 + hash = "sha256-RqysUaHLgTNuTeLt5xsD06Qxv5qsGTPE0H7r4RqPf30="; 12 12 }; 13 13 14 - vendorHash = "sha256-/iAGUnIMH2+IrvvXig56SpZ0eTfVwaCgGMUDp5/MtEo="; 14 + vendorHash = "sha256-IH43F809dr6LGb87pqW2G9xrJLsQcHfjOm5PUj8r4Qo="; 15 15 16 16 ldflags = [ "-s" "-w" "-X github.com/kubefirst/runtime/configs.K1Version=v${version}"]; 17 17
+2 -2
pkgs/applications/networking/cluster/rke/default.nix
··· 2 2 3 3 buildGoModule rec { 4 4 pname = "rke"; 5 - version = "1.4.10"; 5 + version = "1.4.11"; 6 6 7 7 src = fetchFromGitHub { 8 8 owner = "rancher"; 9 9 repo = pname; 10 10 rev = "v${version}"; 11 - hash = "sha256-rr6CN5ik4vuLNqzNPvISfRfOjTcD48pSre2K6xr6xSk="; 11 + hash = "sha256-bsvAyyf/ITIm8pxVF61idM91Ztd/2ufH2lBHR6a7lCQ="; 12 12 }; 13 13 14 14 vendorHash = "sha256-3bivFrn2xDyILD1ugSr7IehhNq4vkqShFQI3sbeY0iY=";
+3 -3
pkgs/applications/networking/cluster/tfautomv/default.nix
··· 5 5 6 6 buildGoModule rec { 7 7 pname = "tfautomv"; 8 - version = "0.5.3"; 8 + version = "0.5.4"; 9 9 10 10 src = fetchFromGitHub { 11 11 owner = "busser"; 12 12 repo = pname; 13 13 rev = "v${version}"; 14 - hash = "sha256-A1/sf+QjxQ8S2Cqmw9mD0r4aqA2Ssopeni0YNLND9L8="; 14 + hash = "sha256-irB0Kfd8eqIKq0ooJRxB0X4t2/1aFCNYRwaG6lAw3ic="; 15 15 }; 16 16 17 - vendorHash = "sha256-zAshnSqZT9lx9EWvJsMwi6rqvhUWJ/3uJnk+44TGzlU="; 17 + vendorHash = "sha256-Wc5hpiHL5I01IodcHX0IzeKfthkFS7SuUxmaxOU6WkA="; 18 18 19 19 ldflags = [ "-s" "-w" ]; 20 20
+2 -2
pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix
··· 7 7 8 8 # Please keep the version x.y.0.z and do not update to x.y.76.z because the 9 9 # source of the latter disappears much faster. 10 - version = "8.106.0.212"; 10 + version = "8.108.0.205"; 11 11 12 12 rpath = lib.makeLibraryPath [ 13 13 alsa-lib ··· 68 68 "https://mirror.cs.uchicago.edu/skype/pool/main/s/skypeforlinux/skypeforlinux_${version}_amd64.deb" 69 69 "https://web.archive.org/web/https://repo.skype.com/deb/pool/main/s/skypeforlinux/skypeforlinux_${version}_amd64.deb" 70 70 ]; 71 - sha256 = "sha256-TlqhCj5nyL8SEo3M6ahPLYOTDrEjHvxtu1qFSR8LtkM="; 71 + sha256 = "sha256-9V+/tTFco69NkCeswbGobr3ZxcS3q+Zd7fiei4N8uTY="; 72 72 } 73 73 else 74 74 throw "Skype for linux is not supported on ${stdenv.hostPlatform.system}";
+3 -2
pkgs/applications/networking/mailreaders/mailspring/default.nix
··· 22 22 23 23 stdenv.mkDerivation rec { 24 24 pname = "mailspring"; 25 - version = "1.11.0"; 25 + version = "1.12.0"; 26 26 27 27 src = fetchurl { 28 28 url = "https://github.com/Foundry376/Mailspring/releases/download/${version}/mailspring-${version}-amd64.deb"; 29 - hash = "sha256-aAqkltVxIlGwRVGM+1QkrVgfnitl+D3Xb0qi0o8ow+Q="; 29 + hash = "sha256-6dTAPetJgYrvIEtu+2QxcBOeYFZfN/dFhM0CZFzcC/E="; 30 30 }; 31 31 32 32 nativeBuildInputs = [ ··· 57 57 openssl 58 58 (lib.getLib udev) 59 59 libappindicator 60 + libsecret 60 61 ]; 61 62 62 63 unpackPhase = ''
+1 -1
pkgs/applications/terminal-emulators/contour/default.nix
··· 103 103 homepage = "https://github.com/contour-terminal/contour"; 104 104 changelog = "https://github.com/contour-terminal/contour/raw/v${version}/Changelog.md"; 105 105 license = licenses.asl20; 106 - maintainers = with maintainers; [ fortuneteller2k ]; 106 + maintainers = with maintainers; [ moni ]; 107 107 platforms = platforms.unix; 108 108 }; 109 109 }
+2 -2
pkgs/applications/version-management/gitlab/default.nix
··· 1 1 { stdenv, lib, fetchurl, fetchpatch, fetchFromGitLab, bundlerEnv 2 - , ruby_3_0, tzdata, git, nettools, nixosTests, nodejs, openssl 2 + , ruby_3_2, tzdata, git, nettools, nixosTests, nodejs, openssl 3 3 , gitlabEnterprise ? false, callPackage, yarn 4 4 , fixup_yarn_lock, replace, file, cacert, fetchYarnDeps, makeWrapper, pkg-config 5 5 }: ··· 17 17 18 18 rubyEnv = bundlerEnv rec { 19 19 name = "gitlab-env-${version}"; 20 - ruby = ruby_3_0; 20 + ruby = ruby_3_2; 21 21 gemdir = ./rubyEnv; 22 22 gemset = 23 23 let x = import (gemdir + "/gemset.nix") src;
+2 -2
pkgs/applications/video/bilibili/default.nix
··· 7 7 8 8 stdenv.mkDerivation rec { 9 9 pname = "bilibili"; 10 - version = "1.12.1-2"; 10 + version = "1.12.3-1"; 11 11 src = fetchurl { 12 12 url = "https://github.com/msojocs/bilibili-linux/releases/download/v${version}/io.github.msojocs.bilibili_${version}_amd64.deb"; 13 - hash = "sha256-vYoVHVT/Deooxq/0WVzPebR68N9KBJfgLU30lJPB89M="; 13 + hash = "sha256-F2y5daIdNJZGNjOctN9iA6kHSRVSMWK8s80X+kXxzb4="; 14 14 }; 15 15 16 16 unpackPhase = ''
+1 -1
pkgs/applications/window-managers/lemonbar/default.nix
··· 18 18 meta = with lib; { 19 19 description = "A lightweight xcb based bar"; 20 20 homepage = "https://github.com/LemonBoy/bar"; 21 - maintainers = with maintainers; [ meisternu fortuneteller2k ]; 21 + maintainers = with maintainers; [ meisternu moni ]; 22 22 license = licenses.mit; 23 23 platforms = platforms.linux; 24 24 };
+1 -1
pkgs/applications/window-managers/lemonbar/xft.nix
··· 20 20 homepage = "https://github.com/drscream/lemonbar-xft"; 21 21 license = licenses.mit; 22 22 platforms = platforms.linux; 23 - maintainers = with maintainers; [ fortuneteller2k ]; 23 + maintainers = with maintainers; [ moni ]; 24 24 }; 25 25 }
+1 -1
pkgs/applications/window-managers/neocomp/default.nix
··· 76 76 meta = with lib; { 77 77 homepage = "https://github.com/DelusionalLogic/NeoComp"; 78 78 license = licenses.gpl3Only; 79 - maintainers = with maintainers; [ twey fortuneteller2k ]; 79 + maintainers = with maintainers; [ twey moni ]; 80 80 platforms = platforms.linux; 81 81 description = "A fork of Compton, a compositor for X11"; 82 82 longDescription = ''
+1 -1
pkgs/applications/window-managers/river/default.nix
··· 83 83 license = lib.licenses.gpl3Plus; 84 84 maintainers = with lib.maintainers; [ 85 85 adamcstephens 86 - fortuneteller2k 86 + moni 87 87 rodrgz 88 88 ]; 89 89 mainProgram = "river";
+7 -7
pkgs/applications/window-managers/sway/wrapper.nix
··· 17 17 18 18 let 19 19 sway = sway-unwrapped.overrideAttrs (oa: { inherit isNixOS enableXWayland; }); 20 - baseWrapper = writeShellScriptBin "sway" '' 20 + baseWrapper = writeShellScriptBin sway.meta.mainProgram '' 21 21 set -o errexit 22 22 if [ ! "$_SWAY_WRAPPER_ALREADY_EXECUTED" ]; then 23 - export XDG_CURRENT_DESKTOP=sway 23 + export XDG_CURRENT_DESKTOP=${sway.meta.mainProgram} 24 24 ${extraSessionCommands} 25 25 export _SWAY_WRAPPER_ALREADY_EXECUTED=1 26 26 fi 27 27 if [ "$DBUS_SESSION_BUS_ADDRESS" ]; then 28 28 export DBUS_SESSION_BUS_ADDRESS 29 - exec ${sway}/bin/sway "$@" 29 + exec ${lib.getExe sway} "$@" 30 30 else 31 - exec ${lib.optionalString dbusSupport "${dbus}/bin/dbus-run-session"} ${sway}/bin/sway "$@" 31 + exec ${lib.optionalString dbusSupport "${dbus}/bin/dbus-run-session"} ${lib.getExe sway} "$@" 32 32 fi 33 33 ''; 34 34 in symlinkJoin { 35 - name = "sway-${sway.version}"; 35 + name = "${sway.meta.mainProgram}-${sway.version}"; 36 36 37 37 paths = (optional withBaseWrapper baseWrapper) 38 38 ++ [ sway ]; ··· 49 49 postBuild = '' 50 50 ${optionalString withGtkWrapper "gappsWrapperArgsHook"} 51 51 52 - wrapProgram $out/bin/sway \ 52 + wrapProgram $out/bin/${sway.meta.mainProgram} \ 53 53 ${optionalString withGtkWrapper ''"''${gappsWrapperArgs[@]}"''} \ 54 54 ${optionalString (extraOptions != []) "${concatMapStrings (x: " --add-flags " + x) extraOptions}"} 55 55 ''; 56 56 57 57 passthru = { 58 58 inherit (sway.passthru) tests; 59 - providedSessions = [ "sway" ]; 59 + providedSessions = [ sway.meta.mainProgram ]; 60 60 }; 61 61 62 62 inherit (sway) meta;
+2 -2
pkgs/by-name/co/cockpit/package.nix
··· 45 45 46 46 stdenv.mkDerivation rec { 47 47 pname = "cockpit"; 48 - version = "303"; 48 + version = "305"; 49 49 50 50 src = fetchFromGitHub { 51 51 owner = "cockpit-project"; 52 52 repo = "cockpit"; 53 53 rev = "refs/tags/${version}"; 54 - hash = "sha256-1VPnmb4VDSwzdXtk2YZVHH4qFJSe2OPzsmzVD/NkbYg="; 54 + hash = "sha256-fCVnggso/wAvci9sLRVvwEsvZ+CeEfLBDnPPcAy/wGo="; 55 55 fetchSubmodules = true; 56 56 }; 57 57
+1 -1
pkgs/by-name/po/polybar/package.nix
··· 110 110 having a black belt in shell scripting. 111 111 ''; 112 112 license = licenses.mit; 113 - maintainers = with maintainers; [ afldcr Br1ght0ne fortuneteller2k ckie ]; 113 + maintainers = with maintainers; [ afldcr Br1ght0ne moni ckie ]; 114 114 platforms = platforms.linux; 115 115 }; 116 116 })
+1 -1
pkgs/data/fonts/curie/default.nix
··· 25 25 homepage = "https://github.com/NerdyPepper/curie"; 26 26 license = licenses.ofl; 27 27 platforms = platforms.all; 28 - maintainers = with maintainers; [ fortuneteller2k ]; 28 + maintainers = with maintainers; [ moni ]; 29 29 }; 30 30 }
+1 -1
pkgs/data/fonts/edwin/default.nix
··· 23 23 homepage = "https://github.com/MuseScoreFonts/Edwin"; 24 24 license = licenses.ofl; 25 25 platforms = platforms.all; 26 - maintainers = with maintainers; [ fortuneteller2k ]; 26 + maintainers = with maintainers; [ moni ]; 27 27 }; 28 28 }
+1 -1
pkgs/data/fonts/open-fonts/default.nix
··· 23 23 homepage = "https://github.com/kiwi0fruit/open-fonts"; 24 24 license = licenses.mit; 25 25 platforms = platforms.all; 26 - maintainers = with maintainers; [ fortuneteller2k ]; 26 + maintainers = with maintainers; [ moni ]; 27 27 }; 28 28 }
+1 -1
pkgs/data/fonts/scientifica/default.nix
··· 26 26 homepage = "https://github.com/NerdyPepper/scientifica"; 27 27 license = licenses.ofl; 28 28 platforms = platforms.all; 29 - maintainers = with maintainers; [ fortuneteller2k ]; 29 + maintainers = with maintainers; [ moni ]; 30 30 }; 31 31 }
+1 -1
pkgs/data/icons/papirus-icon-theme/default.nix
··· 41 41 license = licenses.gpl3Only; 42 42 # darwin gives hash mismatch in source, probably because of file names differing only in case 43 43 platforms = platforms.linux; 44 - maintainers = with maintainers; [ romildo fortuneteller2k ]; 44 + maintainers = with maintainers; [ romildo moni ]; 45 45 }; 46 46 }
+1 -1
pkgs/data/icons/phinger-cursors/default.nix
··· 23 23 homepage = "https://github.com/phisch/phinger-cursors"; 24 24 platforms = platforms.unix; 25 25 license = licenses.cc-by-sa-40; 26 - maintainers = with maintainers; [ fortuneteller2k ]; 26 + maintainers = with maintainers; [ moni ]; 27 27 }; 28 28 }
+1 -1
pkgs/data/themes/yaru/default.nix
··· 39 39 homepage = "https://github.com/ubuntu/yaru"; 40 40 license = with licenses; [ cc-by-sa-40 gpl3Plus lgpl21Only lgpl3Only ]; 41 41 platforms = platforms.linux; 42 - maintainers = with maintainers; [ fortuneteller2k amaxine ]; 42 + maintainers = with maintainers; [ moni amaxine ]; 43 43 }; 44 44 }
+2 -1
pkgs/development/coq-modules/ITree/default.nix
··· 5 5 owner = "DeepSpec"; 6 6 inherit version; 7 7 defaultVersion = with lib.versions; lib.switch coq.version [ 8 - { case = range "8.13" "8.17"; out = "5.1.1"; } 8 + { case = range "8.13" "8.18"; out = "5.1.2"; } 9 9 { case = range "8.10" "8.16"; out = "4.0.0"; } 10 10 ] null; 11 + release."5.1.2".sha256 = "sha256-uKJIjNXGWl0YS0WH52Rnr9Jz98Eo2k0X0qWB9hUYJMk="; 11 12 release."5.1.1".sha256 = "sha256-VlmPNwaGkdWrH7Z6DGXRosGtjuuQ+FBiGcadN2Hg5pY="; 12 13 release."5.1.0".sha256 = "sha256-ny7Mi1KgWADiFznkNJiRgD7Djc5SUclNgKOmWRxK+eo="; 13 14 release."4.0.0".sha256 = "0h5rhndl8syc24hxq1gch86kj7mpmgr89bxp2hmf28fd7028ijsm";
+2 -1
pkgs/development/coq-modules/coqprime/default.nix
··· 6 6 owner = "thery"; 7 7 inherit version; 8 8 defaultVersion = with lib.versions; lib.switch coq.coq-version [ 9 - { case = range "8.14" "8.18"; out = "8.17"; } 9 + { case = range "8.14" "8.18"; out = "8.18"; } 10 10 { case = range "8.12" "8.16"; out = "8.15"; } 11 11 { case = range "8.10" "8.11"; out = "8.10"; } 12 12 { case = range "8.8" "8.9"; out = "8.8"; } 13 13 { case = "8.7"; out = "8.7.2"; } 14 14 ] null; 15 15 16 + release."8.18".sha256 = "sha256-KObBEYerWhIStmq90G3vs9K5LUEOfB2SPxirwLiWQ6E="; 16 17 release."8.17".sha256 = "sha256-D878t/PijVCopRKHYqfwdNvt3arGlI8yxbK/vI6qZUY="; 17 18 release."8.15".sha256 = "sha256:1zr2q52r08na8265019pj9spcz982ivixk6cnzk6l1srn2g328gv"; 18 19 release."8.14.1".sha256= "sha256:0dqf87xkzcpg7gglbxjyx68ad84w1w73icxgy3s7d3w563glc2p7";
+2 -2
pkgs/development/coq-modules/dpdgraph/default.nix
··· 8 8 repo = "coq-dpdgraph"; 9 9 inherit version; 10 10 defaultVersion = lib.switch coq.coq-version [ 11 + { case = "8.18"; out = "1.0+8.18"; } 11 12 { case = "8.17"; out = "1.0+8.17"; } 12 13 { case = "8.16"; out = "1.0+8.16"; } 13 14 { case = "8.15"; out = "1.0+8.15"; } ··· 19 20 { case = "8.9"; out = "0.6.5"; } 20 21 { case = "8.8"; out = "0.6.3"; } 21 22 { case = "8.7"; out = "0.6.2"; } 22 - { case = "8.6"; out = "0.6.1"; } 23 - { case = "8.5"; out = "0.6"; } 24 23 ] null; 25 24 25 + release."1.0+8.18".sha256 = "sha256-z14MI1VSYzPqmF1PqDXzymXWRMYoTlQAfR/P3Pdf7fI="; 26 26 release."1.0+8.17".sha256 = "sha256-gcvL3vseLKEF9xinT0579jXBBaA5E3rJ5KaU8RfKtm4="; 27 27 release."1.0+8.16".sha256 = "sha256-xy4xcVHaD1OHBdGUzUy3SeZnHtOf1+UIh6YjUYFINm0="; 28 28 release."1.0+8.15".sha256 = "sha256:1pxr0gakcz297y8hhrnssv5j07ccd58pv7rh7qv5g7855pfqrkg7";
+1 -1
pkgs/development/embedded/elf2uf2-rs/default.nix
··· 27 27 homepage = "https://github.com/JoNil/elf2uf2-rs"; 28 28 license = with licenses; [ bsd0 ]; 29 29 platforms = platforms.linux ++ platforms.darwin; 30 - maintainers = with maintainers; [ polygon fortuneteller2k ]; 30 + maintainers = with maintainers; [ polygon moni ]; 31 31 }; 32 32 }
+2 -1
pkgs/development/interpreters/python/python2/mk-python-derivation.nix
··· 57 57 # Raise an error if two packages are installed with the same name 58 58 # TODO: For cross we probably need a different PYTHONPATH, or not 59 59 # add the runtime deps until after buildPhase. 60 - , catchConflicts ? (python.stdenv.hostPlatform == python.stdenv.buildPlatform) 60 + # FIXME: disabled for Python 2 because broken 61 + , catchConflicts ? false 61 62 62 63 # Additional arguments to pass to the makeWrapper function, which wraps 63 64 # generated binaries.
-18
pkgs/development/interpreters/ruby/default.nix
··· 15 15 config = import ./config.nix { inherit fetchFromSavannah; }; 16 16 rubygems = import ./rubygems { inherit stdenv lib fetchurl; }; 17 17 18 - openssl3Gem = fetchFromGitHub { 19 - owner = "ruby"; 20 - repo = "openssl"; 21 - rev = "v3.0.2"; 22 - hash = "sha256-KhuKRP1JkMJv7CagGRQ0KKGOd5Oh0FP0fbj0VZ4utGo="; 23 - }; 24 - 25 18 # Contains the ruby version heuristics 26 19 rubyVersion = import ./ruby-version.nix { inherit lib; }; 27 20 ··· 156 149 rm -rf $sourceRoot/{lib,test}/rubygems* 157 150 cp -r ${rubygems}/lib/rubygems* $sourceRoot/lib 158 151 cp -r ${rubygems}/test/rubygems $sourceRoot/test 159 - '' + opString (ver.majMin == "3.0" && opensslSupport) '' 160 - # Replace the Gem by a OpenSSL3-compatible one. 161 - echo "Hotpatching the OpenSSL gem with a 3.x series for OpenSSL 3 support..." 162 - cp -vr ${openssl3Gem}/ext/openssl $sourceRoot/ext/ 163 - cp -vr ${openssl3Gem}/lib/ $sourceRoot/ext/openssl/ 164 - cp -vr ${openssl3Gem}/{History.md,openssl.gemspec} $sourceRoot/ext/openssl/ 165 152 ''; 166 153 167 154 postPatch = '' ··· 332 319 ruby_2_7 = generic { 333 320 version = rubyVersion "2" "7" "8" ""; 334 321 sha256 = "sha256-wtq2PLyPKgVSYQitQZ76Y6Z+1AdNu8+fwrHKZky0W6A="; 335 - }; 336 - 337 - ruby_3_0 = generic { 338 - version = rubyVersion "3" "0" "6" ""; 339 - sha256 = "sha256-bmy9SQAw15EMD/IO3vq0KU380QRvD49H94tZeYesaD4="; 340 322 }; 341 323 342 324 ruby_3_1 = generic {
+7
pkgs/development/libraries/audio/zix/default.nix
··· 28 28 "-Ddocs=disabled" 29 29 ]; 30 30 31 + env = lib.optionalAttrs stdenv.isDarwin { 32 + # Do not fail the build on clang-16/darwin. 33 + # TODO: drop the workaround when upstream fixes it in: 34 + # https://gitlab.com/drobilla/zix/-/issues/3 35 + NIX_CFLAGS_COMPILE = "-Wno-error=implicit-function-declaration"; 36 + }; 37 + 31 38 meta = with lib; { 32 39 description = "A lightweight C99 portability and data structure library"; 33 40 homepage = "https://gitlab.com/drobilla/zix";
+1 -1
pkgs/development/libraries/librttopo/default.nix
··· 34 34 description = "RT Topology Library"; 35 35 homepage = "https://git.osgeo.org/gitea/rttopo/librttopo"; 36 36 license = licenses.gpl2Plus; 37 - maintainers = with maintainers; [ dotlambda ]; 37 + maintainers = with maintainers; teams.geospatial.members ++ [ dotlambda ]; 38 38 platforms = platforms.unix; 39 39 }; 40 40 }
+1 -1
pkgs/development/libraries/libspatialite/default.nix
··· 64 64 # They allow any of these 65 65 license = with licenses; [ gpl2Plus lgpl21Plus mpl11 ]; 66 66 platforms = platforms.unix; 67 - maintainers = with maintainers; [ dotlambda ]; 67 + maintainers = with maintainers; teams.geospatial.members ++ [ dotlambda ]; 68 68 }; 69 69 }
+1 -1
pkgs/development/ocaml-modules/cooltt/default.nix
··· 106 106 homepage = "https://github.com/RedPRL/cooltt"; 107 107 description = "A cool implementation of normalization by evaluation (nbe) & elaboration for Cartesian cubical type theory"; 108 108 license = licenses.asl20; 109 - maintainers = with maintainers; [ fortuneteller2k ]; 109 + maintainers = with maintainers; [ moni ]; 110 110 }; 111 111 }
+2 -2
pkgs/development/python-modules/acquire/default.nix
··· 17 17 18 18 buildPythonPackage rec { 19 19 pname = "acquire"; 20 - version = "3.9"; 20 + version = "3.10"; 21 21 pyproject = true; 22 22 23 23 disabled = pythonOlder "3.9"; ··· 26 26 owner = "fox-it"; 27 27 repo = "acquire"; 28 28 rev = "refs/tags/${version}"; 29 - hash = "sha256-ppkfnPJEvCImTA0+NjYD8r6SHcx9eBN9GBvo0IZYcjY="; 29 + hash = "sha256-8fvVK/mH+pgPaaxNKvKOw1qU0ElWAmNVP6YAqvBTwio="; 30 30 }; 31 31 32 32 SETUPTOOLS_SCM_PRETEND_VERSION = version;
+13 -3
pkgs/development/python-modules/bork/default.nix
··· 1 1 { lib 2 2 , buildPythonPackage 3 3 , fetchFromGitHub 4 + , pytestCheckHook 4 5 , pythonOlder 5 6 6 7 , build 7 8 , coloredlogs 8 9 , packaging 10 + , pip 9 11 , toml 10 12 , twine 11 13 , wheel ··· 13 15 14 16 buildPythonPackage rec { 15 17 pname = "bork"; 16 - version = "7.0.0"; 18 + version = "7.0.1"; 17 19 pyproject = true; 18 20 disabled = pythonOlder "3.8"; 19 21 20 22 src = fetchFromGitHub { 21 23 owner = "duckinator"; 22 24 repo = pname; 23 - rev = "v${version}"; 24 - hash = "sha256-frwkU2YesYK0RJNz9yqiXj1XeTZ8jg5oClri4hEYokg="; 25 + rev = "refs/tags/v${version}"; 26 + hash = "sha256-y/p2uuU+QKgJSdJmMt3oebm/zcuatYWTW8Jl79YxA3g="; 25 27 }; 26 28 27 29 propagatedBuildInputs = [ 28 30 build 29 31 coloredlogs 30 32 packaging 33 + pip 31 34 toml 32 35 twine 33 36 wheel ··· 37 40 "bork" 38 41 "bork.api" 39 42 "bork.cli" 43 + ]; 44 + 45 + nativeCheckInputs = [ 46 + pytestCheckHook 47 + ]; 48 + pytestFlagsArray = [ 49 + "-m 'not network'" 40 50 ]; 41 51 42 52 meta = with lib; {
+1 -1
pkgs/development/python-modules/dasbus/default.nix
··· 20 20 homepage = "https://github.com/rhinstaller/dasbus"; 21 21 description = "DBus library in Python3"; 22 22 license = licenses.lgpl21Only; 23 - maintainers = with maintainers; [ fortuneteller2k ]; 23 + maintainers = with maintainers; [ moni ]; 24 24 }; 25 25 }
+2 -2
pkgs/development/python-modules/dissect-fat/default.nix
··· 10 10 11 11 buildPythonPackage rec { 12 12 pname = "dissect-fat"; 13 - version = "3.6"; 13 + version = "3.7"; 14 14 pyproject = true; 15 15 16 16 disabled = pythonOlder "3.9"; ··· 19 19 owner = "fox-it"; 20 20 repo = "dissect.fat"; 21 21 rev = "refs/tags/${version}"; 22 - hash = "sha256-3Zyjo7yoSLtAnC5lOLzjWsqMRoJxsrw2LKjQ2Qy38sg="; 22 + hash = "sha256-YfWshytfj4p2MqLpzE3b1/RtrL1/+Xd/5+RNbrH/Jfc="; 23 23 }; 24 24 25 25 SETUPTOOLS_SCM_PRETEND_VERSION = version;
+2 -2
pkgs/development/python-modules/dissect-hypervisor/default.nix
··· 14 14 15 15 buildPythonPackage rec { 16 16 pname = "dissect-hypervisor"; 17 - version = "3.9"; 17 + version = "3.10"; 18 18 pyproject = true; 19 19 20 20 disabled = pythonOlder "3.9"; ··· 23 23 owner = "fox-it"; 24 24 repo = "dissect.hypervisor"; 25 25 rev = "refs/tags/${version}"; 26 - hash = "sha256-AcDlyLKrRyt1mhh7nb9Oln/cjVKw8s1g78J8sgE2p2g="; 26 + hash = "sha256-Ml5U7yc4iqqilL6Y9qF3VU+pa0AXnYVQjVas90TpG30="; 27 27 }; 28 28 29 29 SETUPTOOLS_SCM_PRETEND_VERSION = version;
+2 -2
pkgs/development/python-modules/dissect-regf/default.nix
··· 11 11 12 12 buildPythonPackage rec { 13 13 pname = "dissect-regf"; 14 - version = "3.7"; 14 + version = "3.8"; 15 15 pyproject = true; 16 16 17 17 disabled = pythonOlder "3.9"; ··· 20 20 owner = "fox-it"; 21 21 repo = "dissect.regf"; 22 22 rev = "refs/tags/${version}"; 23 - hash = "sha256-WUrND1RnXTeN3WosR+m+yVJLe/imBTx7nmUZrSIc1E0="; 23 + hash = "sha256-4tKu7oPkpNcWr2XJvZg94yZZcbTeeXBphPCLoZYzg6U="; 24 24 }; 25 25 26 26 SETUPTOOLS_SCM_PRETEND_VERSION = version;
+2 -2
pkgs/development/python-modules/dissect-sql/default.nix
··· 11 11 12 12 buildPythonPackage rec { 13 13 pname = "dissect-sql"; 14 - version = "3.6"; 14 + version = "3.7"; 15 15 format = "pyproject"; 16 16 17 17 disabled = pythonOlder "3.7"; ··· 20 20 owner = "fox-it"; 21 21 repo = "dissect.sql"; 22 22 rev = "refs/tags/${version}"; 23 - hash = "sha256-CMUXMSkrutziAIYjUFbLEpsYpCZUiPmV16puXneGeHE="; 23 + hash = "sha256-BHwm88IPtfg/bi5veFGnciQeH4s0asVnxiMVsIi8vV8="; 24 24 }; 25 25 26 26 SETUPTOOLS_SCM_PRETEND_VERSION = version;
+2 -2
pkgs/development/python-modules/flow-record/default.nix
··· 15 15 16 16 buildPythonPackage rec { 17 17 pname = "flow-record"; 18 - version = "3.12"; 18 + version = "3.13"; 19 19 format = "pyproject"; 20 20 21 21 disabled = pythonOlder "3.8"; ··· 24 24 owner = "fox-it"; 25 25 repo = "flow.record"; 26 26 rev = "refs/tags/${version}"; 27 - hash = "sha256-b9MCgs3Imo0DHtPyvQuRgYvsLWe8N2Y9TIWdU1E04L8="; 27 + hash = "sha256-Yg42nA0dRjHormpmpbOuZYuvBpNz9XEpf84XI2iJpYY="; 28 28 }; 29 29 30 30 SETUPTOOLS_SCM_PRETEND_VERSION = version;
+4 -4
pkgs/development/python-modules/glances-api/default.nix
··· 11 11 12 12 buildPythonPackage rec { 13 13 pname = "glances-api"; 14 - version = "0.4.3"; 15 - format = "pyproject"; 14 + version = "0.5.0"; 15 + pyproject = true; 16 16 17 - disabled = pythonOlder "3.8"; 17 + disabled = pythonOlder "3.9"; 18 18 19 19 src = fetchFromGitHub { 20 20 owner = "home-assistant-ecosystem"; 21 21 repo = "python-glances-api"; 22 22 rev = "refs/tags/${version}"; 23 - hash = "sha256-VfiAJuSmzFVgDTThtsTy7/caRmJKZuD5YwHjMspeB0A="; 23 + hash = "sha256-DUTZLLWO4xUeUlxHGGVr/MD5uKqRxUf+p0crYsELgzw="; 24 24 }; 25 25 26 26 nativeBuildInputs = [
+3 -3
pkgs/development/python-modules/iceportal/default.nix
··· 11 11 12 12 buildPythonPackage rec { 13 13 pname = "iceportal"; 14 - version = "1.1.1"; 15 - format = "pyproject"; 14 + version = "1.1.2"; 15 + pyproject = true; 16 16 17 17 disabled = pythonOlder "3.9"; 18 18 ··· 20 20 owner = "home-assistant-ecosystem"; 21 21 repo = "python-iceportal"; 22 22 rev = "refs/tags/${version}"; 23 - hash = "sha256-edG4tF5nYaEOCcbunetYNL9moi9vA75IOkorDuLEx1c="; 23 + hash = "sha256-s+jEpxKsa3eIV4a/Ltso51jqZC4jzsvPLTjDFMV9FIA="; 24 24 }; 25 25 26 26 nativeBuildInputs = [
+34
pkgs/development/python-modules/llm/001-disable-install-uninstall-commands.patch
··· 1 + diff --git a/llm/cli.py b/llm/cli.py 2 + index af37feb..18b078a 100644 3 + --- a/llm/cli.py 4 + +++ b/llm/cli.py 5 + @@ -1014,18 +1014,7 @@ def templates_path(): 6 + ) 7 + def install(packages, upgrade, editable, force_reinstall, no_cache_dir): 8 + """Install packages from PyPI into the same environment as LLM""" 9 + - args = ["pip", "install"] 10 + - if upgrade: 11 + - args += ["--upgrade"] 12 + - if editable: 13 + - args += ["--editable", editable] 14 + - if force_reinstall: 15 + - args += ["--force-reinstall"] 16 + - if no_cache_dir: 17 + - args += ["--no-cache-dir"] 18 + - args += list(packages) 19 + - sys.argv = args 20 + - run_module("pip", run_name="__main__") 21 + + click.echo("Install command has been disabled for Nix. If you want to install extra llm plugins, use llm.withPlugins([]) expression.") 22 + 23 + 24 + @cli.command() 25 + @@ -1033,8 +1022,7 @@ def install(packages, upgrade, editable, force_reinstall, no_cache_dir): 26 + @click.option("-y", "--yes", is_flag=True, help="Don't ask for confirmation") 27 + def uninstall(packages, yes): 28 + """Uninstall Python packages from the LLM environment""" 29 + - sys.argv = ["pip", "uninstall"] + list(packages) + (["-y"] if yes else []) 30 + - run_module("pip", run_name="__main__") 31 + + click.echo("Uninstall command has been disabled for Nix. If you want to uninstall extra llm plugins, just remove them from llm.withPlugins([]) list expression.") 32 + 33 + 34 + @cli.command()
+107
pkgs/development/python-modules/llm/default.nix
··· 1 + { 2 + buildPythonApplication, 3 + buildPythonPackage, 4 + fetchFromGitHub, 5 + lib, 6 + makeWrapper, 7 + pytestCheckHook, 8 + python3, 9 + pythonOlder, 10 + ruff, 11 + setuptools, 12 + }: let 13 + llm = buildPythonPackage rec { 14 + pname = "llm"; 15 + version = "0.12"; 16 + pyproject = true; 17 + 18 + disabled = pythonOlder "3.8"; 19 + 20 + src = fetchFromGitHub { 21 + owner = "simonw"; 22 + repo = pname; 23 + rev = "refs/tags/${version}"; 24 + hash = "sha256-aCqdw2co/cXrBwVY/k/aSLl3C22nlH5LvU2yir1/NnQ="; 25 + }; 26 + 27 + patches = [ 28 + ./001-disable-install-uninstall-commands.patch 29 + ]; 30 + 31 + nativeBuildInputs = [ 32 + setuptools 33 + ]; 34 + 35 + propagatedBuildInputs = with python3.pkgs; [ 36 + click-default-group 37 + numpy 38 + openai 39 + pluggy 40 + pydantic 41 + python-ulid 42 + pyyaml 43 + setuptools # for pkg_resources 44 + sqlite-migrate 45 + sqlite-utils 46 + ]; 47 + 48 + nativeCheckInputs = with python3.pkgs; [ 49 + cogapp 50 + numpy 51 + pytestCheckHook 52 + requests-mock 53 + ]; 54 + 55 + doCheck = true; 56 + 57 + pytestFlagsArray = [ 58 + "-svv" 59 + "tests/" 60 + ]; 61 + 62 + pythonImportsCheck = [ 63 + "llm" 64 + ]; 65 + 66 + passthru = {inherit withPlugins;}; 67 + 68 + meta = with lib; { 69 + homepage = "https://github.com/simonw/llm"; 70 + description = "Access large language models from the command-line"; 71 + changelog = "https://github.com/simonw/llm/releases/tag/${version}"; 72 + license = licenses.asl20; 73 + mainProgram = "llm"; 74 + maintainers = with maintainers; [aldoborrero]; 75 + }; 76 + }; 77 + 78 + withPlugins = plugins: buildPythonApplication { 79 + inherit (llm) pname version; 80 + format = "other"; 81 + 82 + disabled = pythonOlder "3.8"; 83 + 84 + dontUnpack = true; 85 + dontBuild = true; 86 + doCheck = false; 87 + 88 + nativeBuildInputs = [ 89 + makeWrapper 90 + ]; 91 + 92 + installPhase = '' 93 + makeWrapper ${llm}/bin/llm $out/bin/llm \ 94 + --prefix PYTHONPATH : "${llm}/${python3.sitePackages}:$PYTHONPATH" 95 + ln -sfv ${llm}/lib $out/lib 96 + ''; 97 + 98 + propagatedBuildInputs = llm.propagatedBuildInputs ++ plugins; 99 + 100 + passthru = llm.passthru // { 101 + withPlugins = morePlugins: withPlugins (morePlugins ++ plugins); 102 + }; 103 + 104 + inherit (llm) meta; 105 + }; 106 + in 107 + llm
+2 -2
pkgs/development/python-modules/opensensemap-api/default.nix
··· 8 8 9 9 buildPythonPackage rec { 10 10 pname = "opensensemap-api"; 11 - version = "0.3.0"; 11 + version = "0.3.1"; 12 12 format = "setuptools"; 13 13 14 14 disabled = pythonOlder "3.8"; 15 15 16 16 src = fetchPypi { 17 17 inherit pname version; 18 - hash = "sha256-lz2G7vXUadhTFgfHpIq9kHfojf+iytjitFZZ7rgqeO8="; 18 + hash = "sha256-UrgQjZYw7TlFvhnaI7wFUpuUYeVKO5hsnx8h1OKfV8w="; 19 19 }; 20 20 21 21 propagatedBuildInputs = [
+3 -3
pkgs/development/python-modules/pyproj/default.nix
··· 100 100 "pyproj.exceptions" 101 101 ]; 102 102 103 - meta = { 103 + meta = with lib; { 104 104 description = "Python interface to PROJ library"; 105 105 homepage = "https://github.com/pyproj4/pyproj"; 106 106 changelog = "https://github.com/pyproj4/pyproj/blob/${src.rev}/docs/history.rst"; 107 - license = lib.licenses.mit; 108 - maintainers = with lib.maintainers; [ lsix dotlambda ]; 107 + license = licenses.mit; 108 + maintainers = with maintainers; teams.geospatial.members ++ [ lsix dotlambda ]; 109 109 }; 110 110 }
+5 -3
pkgs/development/python-modules/shapely/default.nix
··· 14 14 15 15 buildPythonPackage rec { 16 16 pname = "shapely"; 17 - version = "2.0.1"; 17 + version = "2.0.2"; 18 18 format = "pyproject"; 19 19 20 20 disabled = pythonOlder "3.7"; 21 21 22 22 src = fetchPypi { 23 23 inherit pname version; 24 - hash = "sha256-Zqaxo+cuzpf8hVNqKBR2+bd5TeLmRsqKRRfi48FEaJM="; 24 + hash = "sha256-FxPMBMFxuv/Fslm6hTHFiswqMBcHt/Ah2IoV7QkGSec="; 25 25 }; 26 26 27 27 nativeBuildInputs = [ ··· 44 44 pytestCheckHook 45 45 ]; 46 46 47 + # Fix a ModuleNotFoundError. Investigated at: 48 + # https://github.com/NixOS/nixpkgs/issues/255262 47 49 preCheck = '' 48 - rm -r shapely # prevent import of local shapely 50 + cd $out 49 51 ''; 50 52 51 53 disabledTests = lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [
+6 -6
pkgs/development/python-modules/trainer/default.nix
··· 4 4 5 5 , coqpit 6 6 , fsspec 7 - , torch-bin 7 + , torch 8 8 , tensorboard 9 9 , protobuf 10 10 , psutil 11 11 12 12 , pytestCheckHook 13 13 , soundfile 14 - , torchvision-bin 14 + , torchvision 15 15 }: 16 16 17 17 let 18 18 pname = "trainer"; 19 - version = "0.0.31"; 19 + version = "0.0.32"; 20 20 in 21 21 buildPythonPackage { 22 22 inherit pname version; ··· 26 26 owner = "coqui-ai"; 27 27 repo = "Trainer"; 28 28 rev = "refs/tags/v${version}"; 29 - hash = "sha256-avZuujeWG/UGkj7fcGB99Fw7KYktJPIDf8oB4wjoiD4="; 29 + hash = "sha256-lSfkokPFB09KZBHe/Qkon2gUsA82AK52WNK1bJfzCNc="; 30 30 }; 31 31 32 32 postPatch = '' ··· 40 40 psutil 41 41 soundfile 42 42 tensorboard 43 - torch-bin 43 + torch 44 44 ]; 45 45 46 46 # only one test and that requires training data from the internet ··· 48 48 49 49 nativeCheckInputs = [ 50 50 pytestCheckHook 51 - torchvision-bin 51 + torchvision 52 52 ]; 53 53 54 54 pythonImportsCheck = [
+1 -1
pkgs/development/python-modules/web-cache/default.nix
··· 20 20 description = "Simple Python key-value storage backed up by sqlite3 database"; 21 21 homepage = "https://github.com/desbma/web_cache"; 22 22 license = licenses.lgpl2Plus; 23 - maintainers = with maintainers; [ fortuneteller2k ]; 23 + maintainers = with maintainers; [ moni ]; 24 24 }; 25 25 }
+2 -2
pkgs/development/tools/analysis/checkov/default.nix
··· 5 5 6 6 python3.pkgs.buildPythonApplication rec { 7 7 pname = "checkov"; 8 - version = "3.0.37"; 8 + version = "3.0.38"; 9 9 pyproject = true; 10 10 11 11 src = fetchFromGitHub { 12 12 owner = "bridgecrewio"; 13 13 repo = "checkov"; 14 14 rev = "refs/tags/${version}"; 15 - hash = "sha256-cRc5mBMTh5HCqq5hKfvJmYROs74ZiWjX17cgQv7ub+I="; 15 + hash = "sha256-2ObPi+wrxvoVWjASmp0KSPMLFuIGdWNWK4jRrZC9ODE="; 16 16 }; 17 17 18 18 patches = [
+1 -1
pkgs/development/tools/ats-acc/default.nix
··· 21 21 meta = with lib; { 22 22 description = "Pretty-print error messages of the ATS Compiler"; 23 23 homepage = "https://github.com/sparverius/ats-acc"; 24 - maintainers = with maintainers; [ fortuneteller2k ]; 24 + maintainers = with maintainers; [ moni ]; 25 25 license = licenses.unfree; # Upstream has no license 26 26 }; 27 27 }
+13 -7
pkgs/development/tools/azcopy/default.nix
··· 1 - { stdenv, lib, fetchFromGitHub, buildGoModule }: 1 + { lib 2 + , stdenv 3 + , fetchFromGitHub 4 + , buildGoModule 5 + }: 2 6 3 7 buildGoModule rec { 4 8 pname = "azure-storage-azcopy"; 5 - version = "10.20.1"; 9 + version = "10.21.1"; 6 10 7 11 src = fetchFromGitHub { 8 12 owner = "Azure"; 9 13 repo = "azure-storage-azcopy"; 10 - rev = "v${version}"; 11 - sha256 = "sha256-pfbSNFKZubgebx90zL5sVva36wXS+0NQvvMxPI8kV3Y="; 14 + rev = "refs/tags/v${version}"; 15 + hash = "sha256-FdiDxWmCRkSOa+6A9XgKeyFGk/ba+BgFm3/ChERkYvk="; 12 16 }; 13 17 14 18 subPackages = [ "." ]; 15 19 16 - vendorHash = "sha256-byFroeXRMepN9RYak2++tT9IE8ZbT+0qJAyipHkE5WE="; 20 + vendorHash = "sha256-F5YMPwdS2A5FAwuG1gfiAqBKapZ24VIGzJXnwojoDk0="; 17 21 18 22 doCheck = false; 19 23 ··· 22 26 ''; 23 27 24 28 meta = with lib; { 25 - maintainers = with maintainers; [ colemickens kashw2 ]; 29 + description = "The new Azure Storage data transfer utility - AzCopy v10"; 30 + homepage = "https://github.com/Azure/azure-storage-azcopy"; 31 + changelog = "https://github.com/Azure/azure-storage-azcopy/releases/tag/v${version}"; 26 32 license = licenses.mit; 27 - description = "The new Azure Storage data transfer utility - AzCopy v10"; 33 + maintainers = with maintainers; [ colemickens kashw2 ]; 28 34 }; 29 35 }
+24 -24
pkgs/development/tools/azure-static-sites-client/versions.json
··· 1 1 [ 2 2 { 3 3 "version": "latest", 4 - "buildId": "1.0.024871", 5 - "publishDate": "2023-10-24T04:09:23.7109231Z", 4 + "buildId": "1.0.024941", 5 + "publishDate": "2023-10-31T04:54:50.5527205Z", 6 6 "files": { 7 7 "linux-x64": { 8 - "url": "https://swalocaldeploy.azureedge.net/downloads/1.0.024871/linux/StaticSitesClient", 9 - "sha": "13d1c02e43dec373be04152f7f8e71974f080440cb9480c3ccb4f83c8c6f036a" 8 + "url": "https://swalocaldeploy.azureedge.net/downloads/1.0.024941/linux/StaticSitesClient", 9 + "sha": "bea23499732d615698baf4c9dcafe717fdd4ba8344f2d96740233b0380df79b6" 10 10 }, 11 11 "win-x64": { 12 - "url": "https://swalocaldeploy.azureedge.net/downloads/1.0.024871/windows/StaticSitesClient.exe", 13 - "sha": "868f221ea77b13cea8c6c41edbecea53bf5171d42dc9376f34615e544a3874f0" 12 + "url": "https://swalocaldeploy.azureedge.net/downloads/1.0.024941/windows/StaticSitesClient.exe", 13 + "sha": "a93aa5ec2a17280f3c9c8252948f8c68050c8852770322758ffa3187b6bce1dd" 14 14 }, 15 15 "osx-x64": { 16 - "url": "https://swalocaldeploy.azureedge.net/downloads/1.0.024871/macOS/StaticSitesClient", 17 - "sha": "63c9027a7b5e597ae9e0ad8311b31a587bd977ed758555784d08cc3ff35e80a4" 16 + "url": "https://swalocaldeploy.azureedge.net/downloads/1.0.024941/macOS/StaticSitesClient", 17 + "sha": "57ea66c930aafbf4dea82216e51128b3315ec2db3ab385d41e8d912a3adab2c0" 18 18 } 19 19 } 20 20 }, 21 21 { 22 22 "version": "stable", 23 - "buildId": "1.0.024741", 24 - "publishDate": "2023-10-10T20:13:22.904778Z", 23 + "buildId": "1.0.024941", 24 + "publishDate": "2023-10-31T04:54:50.5527205Z", 25 25 "files": { 26 26 "linux-x64": { 27 - "url": "https://swalocaldeploy.azureedge.net/downloads/1.0.024741/linux/StaticSitesClient", 28 - "sha": "0e174b1551a495dbb751240201b8d264f86264c704d66678c189fe4d94f53502" 27 + "url": "https://swalocaldeploy.azureedge.net/downloads/1.0.024941/linux/StaticSitesClient", 28 + "sha": "bea23499732d615698baf4c9dcafe717fdd4ba8344f2d96740233b0380df79b6" 29 29 }, 30 30 "win-x64": { 31 - "url": "https://swalocaldeploy.azureedge.net/downloads/1.0.024741/windows/StaticSitesClient.exe", 32 - "sha": "cb8d6e7cf83ab7ee394627b088f42de6e63fa77ed5c56eb79a088a1de02163ff" 31 + "url": "https://swalocaldeploy.azureedge.net/downloads/1.0.024941/windows/StaticSitesClient.exe", 32 + "sha": "a93aa5ec2a17280f3c9c8252948f8c68050c8852770322758ffa3187b6bce1dd" 33 33 }, 34 34 "osx-x64": { 35 - "url": "https://swalocaldeploy.azureedge.net/downloads/1.0.024741/macOS/StaticSitesClient", 36 - "sha": "1ef4292cad223972ed820921d29f6b844e18edd732c99c183269e86b150a8224" 35 + "url": "https://swalocaldeploy.azureedge.net/downloads/1.0.024941/macOS/StaticSitesClient", 36 + "sha": "57ea66c930aafbf4dea82216e51128b3315ec2db3ab385d41e8d912a3adab2c0" 37 37 } 38 38 } 39 39 }, 40 40 { 41 41 "version": "backup", 42 - "buildId": "1.0.024671", 43 - "publishDate": "2023-10-04T00:20:16.1747762Z", 42 + "buildId": "1.0.024871", 43 + "publishDate": "2023-10-24T04:09:23.7109231Z", 44 44 "files": { 45 45 "linux-x64": { 46 - "url": "https://swalocaldeploy.azureedge.net/downloads/1.0.024671/linux/StaticSitesClient", 47 - "sha": "82b8181bb5ea47e1d449c1c56e622bd350513dd97f27ac4abd25bd139fde92e2" 46 + "url": "https://swalocaldeploy.azureedge.net/downloads/1.0.024871/linux/StaticSitesClient", 47 + "sha": "13d1c02e43dec373be04152f7f8e71974f080440cb9480c3ccb4f83c8c6f036a" 48 48 }, 49 49 "win-x64": { 50 - "url": "https://swalocaldeploy.azureedge.net/downloads/1.0.024671/windows/StaticSitesClient.exe", 51 - "sha": "a7660746d9dbed8814259547da7f96122d01ae90de6f8aa5ccf7b07b58f59f19" 50 + "url": "https://swalocaldeploy.azureedge.net/downloads/1.0.024871/windows/StaticSitesClient.exe", 51 + "sha": "868f221ea77b13cea8c6c41edbecea53bf5171d42dc9376f34615e544a3874f0" 52 52 }, 53 53 "osx-x64": { 54 - "url": "https://swalocaldeploy.azureedge.net/downloads/1.0.024671/macOS/StaticSitesClient", 55 - "sha": "7584bea04c7d9e685216d4248063226d5a230cc955e560885a48737d1abd385e" 54 + "url": "https://swalocaldeploy.azureedge.net/downloads/1.0.024871/macOS/StaticSitesClient", 55 + "sha": "63c9027a7b5e597ae9e0ad8311b31a587bd977ed758555784d08cc3ff35e80a4" 56 56 } 57 57 } 58 58 }
+3 -3
pkgs/development/tools/continuous-integration/cirrus-cli/default.nix
··· 6 6 7 7 buildGoModule rec { 8 8 pname = "cirrus-cli"; 9 - version = "0.106.1"; 9 + version = "0.107.1"; 10 10 11 11 src = fetchFromGitHub { 12 12 owner = "cirruslabs"; 13 13 repo = pname; 14 14 rev = "v${version}"; 15 - sha256 = "sha256-W+3sqWPYpMkbmA8dGEodZy+pZGRBLJdthicBFdkn6oU="; 15 + sha256 = "sha256-PaIjeqL32CADE+m6kq7VIDXMBvEEMVW8eSlXiIwNEJ4="; 16 16 }; 17 17 18 - vendorHash = "sha256-+cxh3/TQqm6n7hUYhW2B3pdfdtzRuepZmLNSGVPA3H0="; 18 + vendorHash = "sha256-OHeoa3SXmDiUROxFiprlq/gfnqMjha6PQ8tlkr7Pd00="; 19 19 20 20 ldflags = [ 21 21 "-X github.com/cirruslabs/cirrus-cli/internal/version.Version=v${version}"
+2 -2
pkgs/development/tools/ko/default.nix
··· 7 7 8 8 buildGoModule rec { 9 9 pname = "ko"; 10 - version = "0.15.0"; 10 + version = "0.15.1"; 11 11 12 12 src = fetchFromGitHub { 13 13 owner = "ko-build"; 14 14 repo = pname; 15 15 rev = "refs/tags/v${version}"; 16 - hash = "sha256-z0VemNdN35p5fA+cenXil7Vonl+ryu1ruKxzWFwMPfI="; 16 + hash = "sha256-BEKsa5mzJplcyR65/4T0MizrYxEk8/ON8SDFt8ZxqMU="; 17 17 }; 18 18 19 19 vendorHash = null;
+1 -1
pkgs/development/tools/language-servers/zls/default.nix
··· 30 30 changelog = "https://github.com/zigtools/zls/releases/tag/${finalAttrs.version}"; 31 31 homepage = "https://github.com/zigtools/zls"; 32 32 license = lib.licenses.mit; 33 - maintainers = with lib.maintainers; [ figsoda fortuneteller2k ]; 33 + maintainers = with lib.maintainers; [ figsoda moni ]; 34 34 platforms = lib.platforms.unix; 35 35 }; 36 36 })
+3 -3
pkgs/development/tools/misc/complgen/default.nix
··· 5 5 6 6 rustPlatform.buildRustPackage rec { 7 7 pname = "complgen"; 8 - version = "0.1.6"; 8 + version = "0.1.7"; 9 9 10 10 src = fetchFromGitHub { 11 11 owner = "adaszko"; 12 12 repo = "complgen"; 13 13 rev = "v${version}"; 14 - hash = "sha256-FetiopX4k58JQP67zTh0ssy1HFJHmi0Op9h9vjH1pLE="; 14 + hash = "sha256-B7ydYz9nui3B/IC3obVTiJZvzTD/lCQyf+tREwFJERg="; 15 15 }; 16 16 17 - cargoHash = "sha256-2EJuxoed+6LGpxxqkdFxbntilA2SihQScliUFYgjYmU="; 17 + cargoHash = "sha256-CXvaGrE4sQlc7K6FVQqGU8EKPfHr8EIV5YFq+VMoBWg="; 18 18 19 19 meta = with lib; { 20 20 description = "Generate {bash,fish,zsh} completions from a single EBNF-like grammar";
-28
pkgs/development/tools/misc/hydra/crypt-passphrase-argon2-fix-output-len.patch
··· 1 - From 6a5fb9efaea35ca29836371307f5083576f421ab Mon Sep 17 00:00:00 2001 2 - From: Stig Palmquist <git@stig.io> 3 - Date: Fri, 20 Oct 2023 00:09:28 +0200 4 - Subject: [PATCH] Set output length of C::P::Argon2 hashes to 16 5 - 6 - Since the default lengths in Crypt::Passphrase::Argon2 changed from 16 7 - to 32 in in 0.009, some tests that expected the passphrase to be 8 - unchanged started failing. 9 - --- 10 - src/lib/Hydra/Schema/Result/Users.pm | 2 +- 11 - 1 file changed, 1 insertion(+), 1 deletion(-) 12 - 13 - diff --git a/src/lib/Hydra/Schema/Result/Users.pm b/src/lib/Hydra/Schema/Result/Users.pm 14 - index b3de6543..c28ae931 100644 15 - --- a/src/lib/Hydra/Schema/Result/Users.pm 16 - +++ b/src/lib/Hydra/Schema/Result/Users.pm 17 - @@ -216,7 +216,7 @@ sub json_hint { 18 - 19 - sub _authenticator() { 20 - my $authenticator = Crypt::Passphrase->new( 21 - - encoder => 'Argon2', 22 - + encoder => { module => 'Argon2', output_size => 16 }, 23 - validators => [ 24 - (sub { 25 - my ($password, $hash) = @_; 26 - -- 27 - 2.42.0 28 -
-4
pkgs/development/tools/misc/hydra/unstable.nix
··· 205 205 206 206 enableParallelBuilding = true; 207 207 208 - patches = [ 209 - ./crypt-passphrase-argon2-fix-output-len.patch 210 - ]; 211 - 212 208 postPatch = '' 213 209 # Change 5s timeout for init to 30s 214 210 substituteInPlace t/lib/HydraTestContext.pm \
+1 -1
pkgs/development/tools/rust/cargo-leptos/Cargo.lock
··· 389 389 390 390 [[package]] 391 391 name = "cargo-leptos" 392 - version = "0.2.1" 392 + version = "0.2.2" 393 393 dependencies = [ 394 394 "ansi_term", 395 395 "anyhow",
+2 -2
pkgs/development/tools/rust/cargo-leptos/default.nix
··· 20 20 src = fetchFromGitHub { 21 21 owner = "leptos-rs"; 22 22 repo = pname; 23 - rev = "${version}"; 24 - hash = "sha256-i2nKtQC63BbZsrYvg+HkdqQfK59f0LzZ9dfmFBaqn14="; 23 + rev = "e98b478b0c82af1469151eff30f4246b9af4a539"; 24 + hash = "sha256-7o/yQanBBSA+MmMiGCYSjar4hZ8TRZoPiUniF5ELzXU="; 25 25 }; 26 26 27 27 cargoLock = {
+5 -5
pkgs/development/web/bun/default.nix
··· 12 12 }: 13 13 14 14 stdenvNoCC.mkDerivation rec { 15 - version = "1.0.11"; 15 + version = "1.0.12"; 16 16 pname = "bun"; 17 17 18 18 src = passthru.sources.${stdenvNoCC.hostPlatform.system} or (throw "Unsupported system: ${stdenvNoCC.hostPlatform.system}"); ··· 51 51 sources = { 52 52 "aarch64-darwin" = fetchurl { 53 53 url = "https://github.com/oven-sh/bun/releases/download/bun-v${version}/bun-darwin-aarch64.zip"; 54 - hash = "sha256-yZp/AFlOVRtZ60865utrtVv0zlerwFMhpqBh26WnfL8="; 54 + hash = "sha256-tGQQEEPBrMx3AuIsJbN0i/xoa7HSf4rNrE6km3NWjHQ="; 55 55 }; 56 56 "aarch64-linux" = fetchurl { 57 57 url = "https://github.com/oven-sh/bun/releases/download/bun-v${version}/bun-linux-aarch64.zip"; 58 - hash = "sha256-/9MKD2iRogrOIiKlCCPUX5KoDD0rM7K8+jVLx9xxs5s="; 58 + hash = "sha256-xMmNBK0t+e/BLXnE3wOxbANXlwpQ/rczTK/7E80T6cw="; 59 59 }; 60 60 "x86_64-darwin" = fetchurl { 61 61 url = "https://github.com/oven-sh/bun/releases/download/bun-v${version}/bun-darwin-x64.zip"; 62 - hash = "sha256-9wE3GL+EGvPHtVgfMx09Jn+WU/VoUf5x/QrrdlhePa8="; 62 + hash = "sha256-/3qLt3duJt0x0aI7xwWIEt8kAzLqSAlwC3C539vZ/aI="; 63 63 }; 64 64 "x86_64-linux" = fetchurl { 65 65 url = "https://github.com/oven-sh/bun/releases/download/bun-v${version}/bun-linux-x64.zip"; 66 - hash = "sha256-pT9+GchNC3vmeFgTF0GzzyLzWBrCQcR/DFRVK2CnHCw="; 66 + hash = "sha256-+EWt1/YtGzJm/lRBPrf1RM5xdMVFMWurRNBQACALcSA="; 67 67 }; 68 68 }; 69 69 updateScript = writeShellScript "update-bun" ''
+2 -2
pkgs/development/web/mailcatcher/default.nix
··· 1 - { pkgs, lib, bundlerApp, bundlerUpdateScript }: 1 + { ruby_3_2, lib, bundlerApp, bundlerUpdateScript }: 2 2 3 3 bundlerApp { 4 4 pname = "mailcatcher"; 5 5 gemdir = ./.; 6 6 exes = [ "mailcatcher" "catchmail" ]; 7 - ruby = pkgs.ruby_3_0; 7 + ruby = ruby_3_2; 8 8 9 9 passthru.updateScript = bundlerUpdateScript "mailcatcher"; 10 10
+3 -3
pkgs/misc/fastly/default.nix
··· 10 10 11 11 buildGoModule rec { 12 12 pname = "fastly"; 13 - version = "10.6.2"; 13 + version = "10.6.4"; 14 14 15 15 src = fetchFromGitHub { 16 16 owner = "fastly"; 17 17 repo = "cli"; 18 18 rev = "refs/tags/v${version}"; 19 - hash = "sha256-j4dqLV1Q17RQczkTqGTh8S8Y6ELqXjWuJRr+xB/x2yE="; 19 + hash = "sha256-+qBeE7t+d1Es63hUBO9Bcqyc0vtatcJGoYw2GE0JPxQ="; 20 20 # The git commit is part of the `fastly version` original output; 21 21 # leave that output the same in nixpkgs. Use the `.git` directory 22 22 # to retrieve the commit SHA, and remove the directory afterwards, ··· 33 33 "cmd/fastly" 34 34 ]; 35 35 36 - vendorHash = "sha256-aCekNpf6C5fGIEk0pLkz4hJ6mQfBIzeCsIL6Fxf2QGk="; 36 + vendorHash = "sha256-Mh737emdQkIoNOAkaTafCoMQnLqXIGMKX6X5ClsmMzc="; 37 37 38 38 nativeBuildInputs = [ 39 39 installShellFiles
+1 -1
pkgs/misc/i3a/default.nix
··· 24 24 homepage = "https://git.goral.net.pl/mgoral/i3a"; 25 25 description = "A set of scripts used for automation of i3 and sway window manager layouts"; 26 26 license = licenses.gpl3Plus; 27 - maintainers = with maintainers; [ fortuneteller2k ]; 27 + maintainers = with maintainers; [ moni ]; 28 28 }; 29 29 }
+1 -1
pkgs/os-specific/linux/cryptodev/default.nix
··· 23 23 meta = { 24 24 description = "Device that allows access to Linux kernel cryptographic drivers"; 25 25 homepage = "http://cryptodev-linux.org/"; 26 - maintainers = with lib.maintainers; [ fortuneteller2k ]; 26 + maintainers = with lib.maintainers; [ moni ]; 27 27 license = lib.licenses.gpl2Plus; 28 28 platforms = lib.platforms.linux; 29 29 };
+1 -1
pkgs/os-specific/linux/irqbalance/default.nix
··· 32 32 description = "A daemon to help balance the cpu load generated by interrupts across all of a systems cpus"; 33 33 license = licenses.gpl2Only; 34 34 platforms = platforms.linux; 35 - maintainers = with maintainers; [ fortuneteller2k ]; 35 + maintainers = with maintainers; [ moni ]; 36 36 }; 37 37 }
+1 -1
pkgs/os-specific/linux/kernel/xanmod-kernels.nix
··· 44 44 45 45 extraMeta = { 46 46 branch = lib.versions.majorMinor version; 47 - maintainers = with lib.maintainers; [ fortuneteller2k lovesegfault atemu shawn8901 zzzsy ]; 47 + maintainers = with lib.maintainers; [ moni lovesegfault atemu shawn8901 zzzsy ]; 48 48 description = "Built with custom settings and new features built to provide a stable, responsive and smooth desktop experience"; 49 49 broken = stdenv.isAarch64; 50 50 };
+1 -1
pkgs/os-specific/linux/rtl8188eus-aircrack/default.nix
··· 32 32 description = "RealTek RTL8188eus WiFi driver with monitor mode & frame injection support"; 33 33 homepage = "https://github.com/aircrack-ng/rtl8188eus"; 34 34 license = licenses.gpl2Only; 35 - maintainers = with maintainers; [ fortuneteller2k ]; 35 + maintainers = with maintainers; [ moni ]; 36 36 broken = (lib.versionAtLeast kernel.version "6.6") || ((lib.versions.majorMinor kernel.version) == "5.4" && kernel.isHardened); 37 37 }; 38 38 }
+1 -1
pkgs/os-specific/linux/rtl8812au/default.nix
··· 44 44 homepage = "https://github.com/morrownr/8812au-20210629"; 45 45 license = licenses.gpl2Only; 46 46 platforms = platforms.linux; 47 - maintainers = with maintainers; [ fortuneteller2k ]; 47 + maintainers = with maintainers; [ moni ]; 48 48 }; 49 49 }
+1 -1
pkgs/os-specific/linux/v4l2loopback/default.nix
··· 40 40 description = "A kernel module to create V4L2 loopback devices"; 41 41 homepage = "https://github.com/umlaeute/v4l2loopback"; 42 42 license = licenses.gpl2Only; 43 - maintainers = with maintainers; [ fortuneteller2k ]; 43 + maintainers = with maintainers; [ moni ]; 44 44 platforms = platforms.linux; 45 45 outputsToInstall = [ "out" ]; 46 46 };
+1 -1
pkgs/os-specific/linux/xf86-input-wacom/default.nix
··· 52 52 ]; 53 53 54 54 meta = with lib; { 55 - maintainers = with maintainers; [ goibhniu fortuneteller2k ]; 55 + maintainers = with maintainers; [ goibhniu moni ]; 56 56 description = "Wacom digitizer driver for X11"; 57 57 homepage = "https://linuxwacom.sourceforge.net"; 58 58 license = licenses.gpl2Only;
+3 -3
pkgs/servers/bloat/default.nix
··· 6 6 7 7 buildGoModule { 8 8 pname = "bloat"; 9 - version = "unstable-2023-10-15"; 9 + version = "unstable-2023-10-25"; 10 10 11 11 src = fetchgit { 12 12 url = "git://git.freesoftwareextremist.com/bloat"; 13 - rev = "67b13c71baea56eeb15532ca1b1377f6da8d18ac"; 14 - hash = "sha256-h885uAuVjpVsp5cAAX9pIxfydcBiajBX3ZSmQUr3/4Q="; 13 + rev = "f4881e72675e87a9eae716436c3ac18a788d596d"; 14 + hash = "sha256-i6HjhGPPXKtQ7hVPECk9gZglFmjb/Fo9pFIq5ikw4Y8="; 15 15 }; 16 16 17 17 vendorHash = null;
+12 -2
pkgs/servers/dendrite/default.nix
··· 1 - { lib, buildGoModule, fetchFromGitHub, nix-update-script 2 - , nixosTests, postgresql, postgresqlTestHook }: 1 + { lib 2 + , stdenv 3 + , buildGoModule 4 + , fetchFromGitHub 5 + , nix-update-script 6 + , nixosTests 7 + , postgresql 8 + , postgresqlTestHook 9 + }: 3 10 4 11 buildGoModule rec { 5 12 pname = "matrix-dendrite"; ··· 43 50 # it passes in upstream CI and requires further investigation 44 51 rm roomserver/internal/input/input_test.go 45 52 ''; 53 + 54 + # PostgreSQL's request for a shared memory segment exceeded your kernel's SHMALL parameter 55 + doCheck = !(stdenv.isDarwin && stdenv.isx86_64); 46 56 47 57 passthru.tests = { 48 58 inherit (nixosTests) dendrite;
-3
pkgs/servers/http/unit/default.nix
··· 5 5 , withPHP82 ? false, php82 6 6 , withPerl536 ? false, perl536 7 7 , withPerl538 ? true, perl538 8 - , withRuby_3_0 ? false, ruby_3_0 9 8 , withRuby_3_1 ? true, ruby_3_1 10 9 , withRuby_3_2 ? false, ruby_3_2 11 10 , withSSL ? true, openssl ? null ··· 47 46 ++ optional withPHP82 php82-unit 48 47 ++ optional withPerl536 perl536 49 48 ++ optional withPerl538 perl538 50 - ++ optional withRuby_3_0 ruby_3_0 51 49 ++ optional withRuby_3_1 ruby_3_1 52 50 ++ optional withRuby_3_2 ruby_3_2 53 51 ++ optional withSSL openssl; ··· 70 68 ${optionalString withPHP82 "./configure php --module=php81 --config=${php82-unit.unwrapped.dev}/bin/php-config --lib-path=${php82-unit}/lib"} 71 69 ${optionalString withPerl536 "./configure perl --module=perl536 --perl=${perl536}/bin/perl"} 72 70 ${optionalString withPerl538 "./configure perl --module=perl538 --perl=${perl538}/bin/perl"} 73 - ${optionalString withRuby_3_0 "./configure ruby --module=ruby30 --ruby=${ruby_3_0}/bin/ruby"} 74 71 ${optionalString withRuby_3_1 "./configure ruby --module=ruby31 --ruby=${ruby_3_1}/bin/ruby"} 75 72 ${optionalString withRuby_3_2 "./configure ruby --module=ruby32 --ruby=${ruby_3_2}/bin/ruby"} 76 73 '';
+3
pkgs/servers/matrix-synapse/default.nix
··· 3 3 , fetchFromGitHub 4 4 , python3 5 5 , openssl 6 + , libiconv 6 7 , cargo 7 8 , rustPlatform 8 9 , rustc ··· 57 58 58 59 buildInputs = [ 59 60 openssl 61 + ] ++ lib.optionals stdenv.isDarwin [ 62 + libiconv 60 63 ]; 61 64 62 65 propagatedBuildInputs = with python3.pkgs; [
+3 -3
pkgs/servers/nosql/ferretdb/default.nix
··· 6 6 7 7 buildGo121Module rec { 8 8 pname = "ferretdb"; 9 - version = "1.13.0"; 9 + version = "1.14.0"; 10 10 11 11 src = fetchFromGitHub { 12 12 owner = "FerretDB"; 13 13 repo = "FerretDB"; 14 14 rev = "v${version}"; 15 - hash = "sha256-D1iMYh76a9H38tiZWByuJZrABWfjQFCkyxtbtLM/DMw="; 15 + hash = "sha256-x5In8cBRki3rHaAB+iSglL19UCD8DtITr5gjb8KKuAw="; 16 16 }; 17 17 18 18 postPatch = '' ··· 20 20 echo nixpkgs > build/version/package.txt 21 21 ''; 22 22 23 - vendorHash = "sha256-WrnACseWo+bLn0IJhGY/DFsrMFAyy7J02cjO4FvE2xA="; 23 + vendorHash = "sha256-0DFNDfJmBFpgzarg9FaGb8GV11LhA1N8oq0kSXIWxi8="; 24 24 25 25 CGO_ENABLED = 0; 26 26
+2 -2
pkgs/servers/owntracks-recorder/default.nix
··· 16 16 17 17 stdenv.mkDerivation (finalAttrs: { 18 18 pname = "owntracks-recorder"; 19 - version = "0.9.5"; 19 + version = "0.9.6"; 20 20 21 21 src = fetchFromGitHub { 22 22 owner = "owntracks"; 23 23 repo = "recorder"; 24 24 rev = finalAttrs.version; 25 - hash = "sha256-N9qMMAIgmBUEscydJKBQneLcX8odOEXY+560lJJz52g="; 25 + hash = "sha256-QpPZDh++WHIvIgml32UWtAe3tzh2x7lFUu2xdioNGW4="; 26 26 }; 27 27 28 28 nativeBuildInputs = [
+2 -2
pkgs/servers/snappymail/default.nix
··· 7 7 8 8 stdenv.mkDerivation rec { 9 9 pname = "snappymail"; 10 - version = "2.29.1"; 10 + version = "2.29.2"; 11 11 12 12 src = fetchurl { 13 13 url = "https://github.com/the-djmaze/snappymail/releases/download/v${version}/snappymail-${version}.tar.gz"; 14 - sha256 = "sha256-ZE17VCrpHlZ4GMc7+DaUyuehKtYWMr7NJFV1hGQ+UsA="; 14 + sha256 = "sha256-f7xjjYy7uPSgssEftXPrfEcNrU6OFlXgwoTTWXgHfUU="; 15 15 }; 16 16 17 17 sourceRoot = "snappymail";
+1 -1
pkgs/servers/sql/postgresql/ext/postgis.nix
··· 74 74 homepage = "https://postgis.net/"; 75 75 changelog = "https://git.osgeo.org/gitea/postgis/postgis/raw/tag/${version}/NEWS"; 76 76 license = licenses.gpl2; 77 - maintainers = [ maintainers.marcweber ]; 77 + maintainers = with maintainers; teams.geospatial.members ++ [ marcweber ]; 78 78 inherit (postgresql.meta) platforms; 79 79 broken = versionOlder postgresql.version "12"; 80 80 };
+3 -3
pkgs/servers/static-web-server/default.nix
··· 2 2 3 3 rustPlatform.buildRustPackage rec { 4 4 pname = "static-web-server"; 5 - version = "2.24.0"; 5 + version = "2.24.1"; 6 6 7 7 src = fetchFromGitHub { 8 8 owner = "static-web-server"; 9 9 repo = pname; 10 10 rev = "v${version}"; 11 - hash = "sha256-NJjzfl44qRPph3M6u1jYELSvMzsPww8aD8DDNXSQjOo="; 11 + hash = "sha256-U+B/k/stwjJw+mxUCb4A3yUtc/+Tg0PsWhVnovLLX4A="; 12 12 }; 13 13 14 - cargoHash = "sha256-gHs8aFZozWgF4uE2mp/qRb9J3hRAohRwu15Q5/FLtTs="; 14 + cargoHash = "sha256-ZDrRjIM8187nr72MlzFr0NAqH2f8qkF1sGAT9+NvfhA="; 15 15 16 16 buildInputs = lib.optionals stdenv.isDarwin [ 17 17 darwin.apple_sdk.frameworks.Security
+1 -1
pkgs/shells/hilbish/default.nix
··· 35 35 description = "An interactive Unix-like shell written in Go"; 36 36 changelog = "https://github.com/Rosettea/Hilbish/releases/tag/v${version}"; 37 37 homepage = "https://github.com/Rosettea/Hilbish"; 38 - maintainers = with maintainers; [ fortuneteller2k ]; 38 + maintainers = with maintainers; [ moni ]; 39 39 license = licenses.mit; 40 40 }; 41 41 }
+1 -1
pkgs/shells/zsh/spaceship-prompt/default.nix
··· 35 35 changelog = "https://github.com/spaceship-prompt/spaceship-prompt/releases/tag/v${version}"; 36 36 license = licenses.mit; 37 37 platforms = platforms.unix; 38 - maintainers = with maintainers; [ nyanloutre fortuneteller2k kyleondy ]; 38 + maintainers = with maintainers; [ nyanloutre moni kyleondy ]; 39 39 }; 40 40 }
+2 -2
pkgs/tools/admin/scalr-cli/default.nix
··· 5 5 6 6 buildGoModule rec { 7 7 pname = "scalr-cli"; 8 - version = "0.15.2"; 8 + version = "0.15.3"; 9 9 10 10 src = fetchFromGitHub { 11 11 owner = "Scalr"; 12 12 repo = "scalr-cli"; 13 13 rev = "v${version}"; 14 - hash = "sha256-vuYkUFh9C+D6Sbu/vbEFV57FDVQVSCkvOxdLeDVbe18="; 14 + hash = "sha256-ciretC6z2NcLffSkK78DFIUqbRHgVTA7OEyNk6qdAgI="; 15 15 }; 16 16 17 17 vendorHash = "sha256-zyshSluHq5f+DQV4K7qxHNsZ4nKzL8J5A25rdg9fHeM=";
+5 -3
pkgs/tools/audio/tts/default.nix
··· 16 16 in 17 17 python.pkgs.buildPythonApplication rec { 18 18 pname = "tts"; 19 - version = "0.19.1"; 20 - format = "pyproject"; 19 + version = "0.20.2"; 20 + pyproject = true; 21 21 22 22 src = fetchFromGitHub { 23 23 owner = "coqui-ai"; 24 24 repo = "TTS"; 25 25 rev = "refs/tags/v${version}"; 26 - hash = "sha256-GYVr/Wam1IGCSR2vHMAu5Fg/jRB333L6iNjltnRKh4E="; 26 + hash = "sha256-1nlSf15IEX1qKfDtR6+jQqskjxIuzaIWatkj9Z1fh8Y="; 27 27 }; 28 28 29 29 postPatch = let ··· 57 57 58 58 nativeBuildInputs = with python.pkgs; [ 59 59 cython 60 + numpy 60 61 packaging 62 + setuptools 61 63 ]; 62 64 63 65 propagatedBuildInputs = with python.pkgs; [
+3 -3
pkgs/tools/bluetooth/bluetuith/default.nix
··· 2 2 3 3 buildGoModule rec { 4 4 pname = "bluetuith"; 5 - version = "0.1.8"; 5 + version = "0.1.9"; 6 6 7 7 src = fetchFromGitHub { 8 8 owner = "darkhz"; 9 9 repo = pname; 10 10 rev = "v${version}"; 11 - sha256 = "sha256-b+J+8nxFZYJlAKOStpH7ItPqMw7inM5pss17kyX1brg="; 11 + sha256 = "sha256-vdHnG0uQdy5PboIovtxl5i9xwFpjYLCZf2IGeiMcWe8="; 12 12 }; 13 13 14 - vendorHash = "sha256-d0O54KNGLXU8FGr1eSEp30JMWNVo91Le2MI8UnAfTuU="; 14 + vendorHash = "sha256-pYVEFKLPfstWWO6ypgv7ntAaE1Wmq2XKuZC2ccMa8Vc="; 15 15 16 16 ldflags = [ "-s" "-w" ]; 17 17
+1 -1
pkgs/tools/graphics/xcolor/default.nix
··· 41 41 meta = with lib; { 42 42 description = "Lightweight color picker for X11"; 43 43 homepage = "https://github.com/Soft/xcolor"; 44 - maintainers = with lib.maintainers; [ fortuneteller2k ]; 44 + maintainers = with lib.maintainers; [ moni ]; 45 45 license = licenses.mit; 46 46 }; 47 47 }
+1 -1
pkgs/tools/misc/bfetch/default.nix
··· 24 24 homepage = "https://github.com/NNBnh/bfetch"; 25 25 license = licenses.gpl3Only; 26 26 platforms = platforms.all; 27 - maintainers = with maintainers; [ fortuneteller2k ]; 27 + maintainers = with maintainers; [ moni ]; 28 28 }; 29 29 }
+12
pkgs/tools/misc/bootspec/default.nix
··· 1 1 { lib 2 2 , rustPlatform 3 3 , fetchFromGitHub 4 + , fetchpatch 4 5 }: 5 6 rustPlatform.buildRustPackage rec { 6 7 pname = "bootspec"; ··· 12 13 rev = "v${version}"; 13 14 hash = "sha256-5IGSMHeL0eKfl7teDejAckYQjc8aeLwfwIQSzQ8YaAg="; 14 15 }; 16 + 17 + patches = [ 18 + # https://github.com/DeterminateSystems/bootspec/pull/127 19 + # Fixes the synthesize tool for aarch64-linux 20 + (fetchpatch { 21 + name = "aarch64-support.patch"; 22 + url = "https://github.com/DeterminateSystems/bootspec/commit/1d0e925f360f0199f13422fb7541225fd162fd4f.patch"; 23 + sha256 = "sha256-wU/jWnOqVBrU2swANdXbQfzRpNd/JIS4cxSyCvixZM0="; 24 + }) 25 + 26 + ]; 15 27 16 28 cargoHash = "sha256-eGSKVHjPnHK7WyGkO5LIjocNGHawahYQR3H5Lgk1C9s="; 17 29
+2 -2
pkgs/tools/misc/diffoscope/default.nix
··· 78 78 # Note: when upgrading this package, please run the list-missing-tools.sh script as described below! 79 79 python3.pkgs.buildPythonApplication rec { 80 80 pname = "diffoscope"; 81 - version = "251"; 81 + version = "252"; 82 82 83 83 src = fetchurl { 84 84 url = "https://diffoscope.org/archive/diffoscope-${version}.tar.bz2"; 85 - hash = "sha256-7oAFxzLLEds9SI14F88QRhirb/3pjXhmGaW0SWUgpv4="; 85 + hash = "sha256-NmYv5htZT2v04vVksIWGuaPI1rXfNmrVSmErT/faBbQ="; 86 86 }; 87 87 88 88 outputs = [
+1 -1
pkgs/tools/misc/elfcat/default.nix
··· 17 17 description = "ELF visualizer, generates HTML files from ELF binaries."; 18 18 homepage = "https://github.com/ruslashev/elfcat"; 19 19 license = licenses.zlib; 20 - maintainers = with maintainers; [ fortuneteller2k ]; 20 + maintainers = with maintainers; [ moni ]; 21 21 }; 22 22 }
+1 -1
pkgs/tools/misc/fetchutils/default.nix
··· 24 24 homepage = "https://github.com/lptstr/fetchutils"; 25 25 license = licenses.mit; 26 26 platforms = platforms.unix; 27 - maintainers = with maintainers; [ fortuneteller2k ]; 27 + maintainers = with maintainers; [ moni ]; 28 28 }; 29 29 }
+1 -1
pkgs/tools/misc/sacad/default.nix
··· 34 34 description = "Smart Automatic Cover Art Downloader"; 35 35 homepage = "https://github.com/desbma/sacad"; 36 36 license = licenses.mpl20; 37 - maintainers = with maintainers; [ fortuneteller2k ]; 37 + maintainers = with maintainers; [ moni ]; 38 38 }; 39 39 }
+1 -1
pkgs/tools/misc/vector/Cargo.lock
··· 9864 9864 9865 9865 [[package]] 9866 9866 name = "vector" 9867 - version = "0.34.0" 9867 + version = "0.34.1" 9868 9868 dependencies = [ 9869 9869 "apache-avro", 9870 9870 "approx",
+2 -2
pkgs/tools/misc/vector/default.nix
··· 34 34 35 35 let 36 36 pname = "vector"; 37 - version = "0.34.0"; 37 + version = "0.34.1"; 38 38 in 39 39 rustPlatform.buildRustPackage { 40 40 inherit pname version; ··· 43 43 owner = "vectordotdev"; 44 44 repo = pname; 45 45 rev = "v${version}"; 46 - hash = "sha256-E9sbpVFDVKJKYqSiqXeC9AItset/bXvVA9mURazTn/I="; 46 + hash = "sha256-vK+k+VbUVgJ8idlvuod5ExAkkeTYDk/135dyLRct0zs="; 47 47 }; 48 48 49 49 cargoLock = {
+1 -1
pkgs/tools/networking/crackle/default.nix
··· 18 18 meta = with lib; { 19 19 description = "Crack and decrypt BLE encryption"; 20 20 homepage = "https://github.com/mikeryan/crackle"; 21 - maintainers = with maintainers; [ fortuneteller2k ]; 21 + maintainers = with maintainers; [ moni ]; 22 22 license = licenses.bsd2; 23 23 }; 24 24 }
+1 -1
pkgs/tools/networking/mdk4/default.nix
··· 27 27 meta = with lib; { 28 28 description = "A tool that injects data into wireless networks"; 29 29 homepage = "https://github.com/aircrack-ng/mdk4"; 30 - maintainers = with maintainers; [ fortuneteller2k ]; 30 + maintainers = with maintainers; [ moni ]; 31 31 license = licenses.gpl2Plus; 32 32 }; 33 33 }
+1 -1
pkgs/tools/networking/redfang/default.nix
··· 30 30 description = "A small proof-of-concept application to find non discoverable bluetooth devices"; 31 31 homepage = "https://gitlab.com/kalilinux/packages/redfang"; 32 32 license = licenses.gpl2Only; 33 - maintainers = with maintainers; [ fortuneteller2k ]; 33 + maintainers = with maintainers; [ moni ]; 34 34 }; 35 35 }
+1 -1
pkgs/tools/networking/stevenblack-blocklist/default.nix
··· 15 15 description = "Unified hosts file with base extensions"; 16 16 homepage = "https://github.com/StevenBlack/hosts"; 17 17 license = licenses.mit; 18 - maintainers = with maintainers; [ fortuneteller2k ]; 18 + maintainers = with maintainers; [ moni ]; 19 19 }; 20 20 }
+9 -8
pkgs/tools/package-management/xbps/default.nix
··· 1 - { lib, stdenv, fetchFromGitHub, fetchpatch, pkg-config, which, zlib, openssl, libarchive }: 1 + { lib, stdenv, fetchFromGitHub, pkg-config, which, zlib, openssl, libarchive }: 2 2 3 3 stdenv.mkDerivation rec { 4 4 pname = "xbps"; 5 - version = "0.59.1"; 5 + version = "0.59.2"; 6 6 7 7 src = fetchFromGitHub { 8 8 owner = "void-linux"; 9 9 repo = "xbps"; 10 10 rev = version; 11 - sha256 = "0pab3xf97y4wqlyrb92zxd3cfsrbnlx6pssbw4brgwcxccw9jrhy"; 11 + hash = "sha256-3+LzFLDZ1zfRPBETMlpEn66zsfHRHQLlgeZPdMtmA14="; 12 12 }; 13 13 14 14 nativeBuildInputs = [ pkg-config which ]; ··· 17 17 18 18 patches = [ 19 19 ./cert-paths.patch 20 - # fix openssl 3 21 - (fetchpatch { 22 - url = "https://github.com/void-linux/xbps/commit/db1766986c4389eb7e17c0e0076971b711617ef9.patch"; 23 - hash = "sha256-CmyZdsHStPsELdEgeJBWIbXIuVeBhv7VYb2uGYxzUWQ="; 24 - }) 25 20 ]; 26 21 27 22 env.NIX_CFLAGS_COMPILE = "-Wno-error=unused-result -Wno-error=deprecated-declarations"; 28 23 29 24 postPatch = '' 25 + # _BSD_SOURCE causes cpp warning 26 + # https://github.com/void-linux/xbps/issues/576 27 + substituteInPlace bin/xbps-fbulk/main.c lib/util.c lib/external/dewey.c lib/external/fexec.c \ 28 + --replace 'define _BSD_SOURCE' 'define _DEFAULT_SOURCE' \ 29 + --replace '# define _BSD_SOURCE' '#define _DEFAULT_SOURCE' 30 + 30 31 # fix unprefixed ranlib (needed on cross) 31 32 substituteInPlace lib/Makefile \ 32 33 --replace 'SILENT}ranlib ' 'SILENT}$(RANLIB) '
+2 -2
pkgs/tools/security/chain-bench/default.nix
··· 6 6 7 7 buildGoModule rec { 8 8 pname = "chain-bench"; 9 - version = "0.1.8"; 9 + version = "0.1.9"; 10 10 11 11 src = fetchFromGitHub { 12 12 owner = "aquasecurity"; 13 13 repo = pname; 14 14 rev = "v${version}"; 15 - sha256 = "sha256-vQzxTOShxQGitZRCuR8izSxCkZdPWm2ohoXBOvAkwfw="; 15 + sha256 = "sha256-eNCQbmqTnCBBwrppFL2yvmiwgj439sosYVkk2ryMa0I="; 16 16 }; 17 17 vendorHash = "sha256-sAZIMJRx/E+l12Zyp/vKfuiaCMeaonRbEcsRIRXbXm8="; 18 18
+3 -5
pkgs/top-level/all-packages.nix
··· 9990 9990 9991 9991 lldpd = callPackage ../tools/networking/lldpd { }; 9992 9992 9993 + llm = with python3Packages; toPythonApplication llm; 9994 + 9993 9995 lnav = callPackage ../tools/misc/lnav { }; 9994 9996 9995 9997 lnch = callPackage ../tools/misc/lnch { }; ··· 15036 15038 15037 15039 clipnotify = callPackage ../tools/misc/clipnotify { }; 15038 15040 15039 - clipboard-jh = callPackage ../tools/misc/clipboard-jh { 15040 - stdenv = if stdenv.isDarwin then llvmPackages_16.stdenv else stdenv; 15041 - }; 15041 + clipboard-jh = callPackage ../tools/misc/clipboard-jh { }; 15042 15042 15043 15043 clipbuzz = callPackage ../tools/misc/clipbuzz { }; 15044 15044 ··· 18044 18044 mkRubyVersion 18045 18045 mkRuby 18046 18046 ruby_2_7 18047 - ruby_3_0 18048 18047 ruby_3_1 18049 18048 ruby_3_2 18050 18049 ruby_3_3; ··· 18053 18052 rubyPackages = rubyPackages_3_1; 18054 18053 18055 18054 rubyPackages_2_7 = recurseIntoAttrs ruby_2_7.gems; 18056 - rubyPackages_3_0 = recurseIntoAttrs ruby_3_0.gems; 18057 18055 rubyPackages_3_1 = recurseIntoAttrs ruby_3_1.gems; 18058 18056 rubyPackages_3_2 = recurseIntoAttrs ruby_3_2.gems; 18059 18057 rubyPackages_3_3 = recurseIntoAttrs ruby_3_3.gems;
-5
pkgs/top-level/pkg-config/pkg-config-data.json
··· 773 773 "ruby_2_7" 774 774 ] 775 775 }, 776 - "ruby-3.0": { 777 - "attrPath": [ 778 - "ruby_3_0" 779 - ] 780 - }, 781 776 "ruby-3.1": { 782 777 "attrPath": [ 783 778 "ruby_3_1"
+2
pkgs/top-level/python-packages.nix
··· 6390 6390 inherit (pkgs) fuse; 6391 6391 }; 6392 6392 6393 + llm = callPackage ../development/python-modules/llm { }; 6394 + 6393 6395 llvmlite = callPackage ../development/python-modules/llvmlite { 6394 6396 # llvmlite always requires a specific version of llvm. 6395 6397 llvm = pkgs.llvm_14;