Merge master into staging-next

authored by nixpkgs-ci[bot] and committed by GitHub 43a5de6c 6956fe0e

+1545 -5746
+1
ci/OWNERS
··· 253 /nixos/tests/postgresql @NixOS/postgres 254 255 # MySQL/MariaDB and related stuff 256 /nixos/modules/services/backup/mysql-backup.nix @6543 257 258 # Hardened profile & related modules
··· 253 /nixos/tests/postgresql @NixOS/postgres 254 255 # MySQL/MariaDB and related stuff 256 + /nixos/modules/services/databases/mysql.nix @6543 257 /nixos/modules/services/backup/mysql-backup.nix @6543 258 259 # Hardened profile & related modules
-1
maintainers/team-list.nix
··· 770 mguentner 771 ralith 772 dandellion 773 - sumnerevans 774 nickcao 775 teutat3s 776 ];
··· 770 mguentner 771 ralith 772 dandellion 773 nickcao 774 teutat3s 775 ];
+187 -138
nixos/modules/services/databases/mysql.nix
··· 1 - { config, lib, pkgs, ... }: 2 let 3 4 cfg = config.services.mysql; ··· 8 # Oracle MySQL has supported "notify" service type since 8.0 9 hasNotify = isMariaDB || (isOracle && lib.versionAtLeast cfg.package.version "8.0"); 10 11 - mysqldOptions = 12 - "--user=${cfg.user} --datadir=${cfg.dataDir} --basedir=${cfg.package}"; 13 14 format = pkgs.formats.ini { listsAsDuplicateKeys = true; }; 15 configFile = format.generate "my.cnf" cfg.settings; ··· 18 19 { 20 imports = [ 21 - (lib.mkRemovedOptionModule [ "services" "mysql" "pidDir" ] "Don't wait for pidfiles, describe dependencies through systemd.") 22 - (lib.mkRemovedOptionModule [ "services" "mysql" "rootPassword" ] "Use socket authentication or set the password outside of the nix store.") 23 - (lib.mkRemovedOptionModule [ "services" "mysql" "extraOptions" ] "Use services.mysql.settings.mysqld instead.") 24 - (lib.mkRemovedOptionModule [ "services" "mysql" "bind" ] "Use services.mysql.settings.mysqld.bind-address instead.") 25 - (lib.mkRemovedOptionModule [ "services" "mysql" "port" ] "Use services.mysql.settings.mysqld.port instead.") 26 ]; 27 28 ###### interface ··· 106 107 settings = lib.mkOption { 108 type = format.type; 109 - default = {}; 110 description = '' 111 MySQL configuration. Refer to 112 <https://dev.mysql.com/doc/refman/5.7/en/server-system-variables.html>, ··· 137 }; 138 139 initialDatabases = lib.mkOption { 140 - type = lib.types.listOf (lib.types.submodule { 141 - options = { 142 - name = lib.mkOption { 143 - type = lib.types.str; 144 - description = '' 145 - The name of the database to create. 146 - ''; 147 }; 148 - schema = lib.mkOption { 149 - type = lib.types.nullOr lib.types.path; 150 - default = null; 151 - description = '' 152 - The initial schema of the database; if null (the default), 153 - an empty database is created. 154 - ''; 155 - }; 156 - }; 157 - }); 158 - default = []; 159 description = '' 160 List of database names and their initial schemas that should be used to create databases on the first startup 161 of MySQL. The schema attribute is optional: If not specified, an empty database is created. ··· 176 177 ensureDatabases = lib.mkOption { 178 type = lib.types.listOf lib.types.str; 179 - default = []; 180 description = '' 181 Ensures that the specified databases exist. 182 This option will never delete existing databases, especially not when the value of this ··· 190 }; 191 192 ensureUsers = lib.mkOption { 193 - type = lib.types.listOf (lib.types.submodule { 194 - options = { 195 - name = lib.mkOption { 196 - type = lib.types.str; 197 - description = '' 198 - Name of the user to ensure. 199 - ''; 200 - }; 201 - ensurePermissions = lib.mkOption { 202 - type = lib.types.attrsOf lib.types.str; 203 - default = {}; 204 - description = '' 205 - Permissions to ensure for the user, specified as attribute set. 206 - The attribute names specify the database and tables to grant the permissions for, 207 - separated by a dot. You may use wildcards here. 208 - The attribute values specfiy the permissions to grant. 209 - You may specify one or multiple comma-separated SQL privileges here. 210 211 - For more information on how to specify the target 212 - and on which privileges exist, see the 213 - [GRANT syntax](https://mariadb.com/kb/en/library/grant/). 214 - The attributes are used as `GRANT ''${attrName} ON ''${attrValue}`. 215 - ''; 216 - example = lib.literalExpression '' 217 - { 218 - "database.*" = "ALL PRIVILEGES"; 219 - "*.*" = "SELECT, LOCK TABLES"; 220 - } 221 - ''; 222 }; 223 - }; 224 - }); 225 - default = []; 226 description = '' 227 Ensures that the specified users exist and have at least the ensured permissions. 228 The MySQL users will be identified using Unix socket authentication. This authenticates the Unix user with the ··· 251 252 replication = { 253 role = lib.mkOption { 254 - type = lib.types.enum [ "master" "slave" "none" ]; 255 default = "none"; 256 description = "Role of the MySQL server instance."; 257 }; ··· 291 }; 292 293 }; 294 - 295 296 ###### implementation 297 298 config = lib.mkIf cfg.enable { 299 300 - services.mysql.dataDir = 301 - lib.mkDefault (if lib.versionAtLeast config.system.stateVersion "17.09" then "/var/lib/mysql" 302 - else "/var/mysql"); 303 304 services.mysql.settings.mysqld = lib.mkMerge [ 305 { ··· 311 log-bin-index = "mysql-bin-${toString cfg.replication.serverId}.index"; 312 relay-log = "mysql-relay-bin"; 313 server-id = cfg.replication.serverId; 314 - binlog-ignore-db = [ "information_schema" "performance_schema" "mysql" ]; 315 }) 316 (lib.mkIf (!isMariaDB) { 317 plugin-load-add = [ "auth_socket.so" ]; ··· 355 pkgs.nettools 356 ]; 357 358 - preStart = if isMariaDB then '' 359 - if ! test -e ${cfg.dataDir}/mysql; then 360 - ${cfg.package}/bin/mysql_install_db --defaults-file=/etc/my.cnf ${mysqldOptions} 361 - touch ${cfg.dataDir}/mysql_init 362 - fi 363 - '' else '' 364 - if ! test -e ${cfg.dataDir}/mysql; then 365 - ${cfg.package}/bin/mysqld --defaults-file=/etc/my.cnf ${mysqldOptions} --initialize-insecure 366 - touch ${cfg.dataDir}/mysql_init 367 - fi 368 - ''; 369 370 script = '' 371 # https://mariadb.com/kb/en/getting-started-with-mariadb-galera-cluster/#systemd-and-galera-recovery ··· 379 exec ${cfg.package}/bin/mysqld --defaults-file=/etc/my.cnf ${mysqldOptions} $_WSREP_NEW_CLUSTER $_WSREP_START_POSITION 380 ''; 381 382 - postStart = let 383 - # The super user account to use on *first* run of MySQL server 384 - superUser = if isMariaDB then cfg.user else "root"; 385 - in '' 386 - ${lib.optionalString (!hasNotify) '' 387 - # Wait until the MySQL server is available for use 388 - while [ ! -e /run/mysqld/mysqld.sock ] 389 - do 390 - echo "MySQL daemon not yet started. Waiting for 1 second..." 391 - sleep 1 392 - done 393 - ''} 394 395 - if [ -f ${cfg.dataDir}/mysql_init ] 396 - then 397 - # While MariaDB comes with a 'mysql' super user account since 10.4.x, MySQL does not 398 - # Since we don't want to run this service as 'root' we need to ensure the account exists on first run 399 - ( echo "CREATE USER IF NOT EXISTS '${cfg.user}'@'localhost' IDENTIFIED WITH ${if isMariaDB then "unix_socket" else "auth_socket"};" 400 - echo "GRANT ALL PRIVILEGES ON *.* TO '${cfg.user}'@'localhost' WITH GRANT OPTION;" 401 - ) | ${cfg.package}/bin/mysql -u ${superUser} -N 402 403 - ${lib.concatMapStrings (database: '' 404 - # Create initial databases 405 - if ! test -e "${cfg.dataDir}/${database.name}"; then 406 - echo "Creating initial database: ${database.name}" 407 - ( echo 'create database `${database.name}`;' 408 409 - ${lib.optionalString (database.schema != null) '' 410 - echo 'use `${database.name}`;' 411 412 - # TODO: this silently falls through if database.schema does not exist, 413 - # we should catch this somehow and exit, but can't do it here because we're in a subshell. 414 - if [ -f "${database.schema}" ] 415 - then 416 - cat ${database.schema} 417 - elif [ -d "${database.schema}" ] 418 - then 419 - cat ${database.schema}/mysql-databases/*.sql 420 - fi 421 - ''} 422 - ) | ${cfg.package}/bin/mysql -u ${superUser} -N 423 - fi 424 - '') cfg.initialDatabases} 425 426 - ${lib.optionalString (cfg.replication.role == "master") 427 - '' 428 # Set up the replication master 429 430 ( echo "use mysql;" ··· 434 ) | ${cfg.package}/bin/mysql -u ${superUser} -N 435 ''} 436 437 - ${lib.optionalString (cfg.replication.role == "slave") 438 - '' 439 # Set up the replication slave 440 441 ( echo "stop slave;" ··· 444 ) | ${cfg.package}/bin/mysql -u ${superUser} -N 445 ''} 446 447 - ${lib.optionalString (cfg.initialScript != null) 448 - '' 449 # Execute initial script 450 # using toString to avoid copying the file to nix store if given as path instead of string, 451 # as it might contain credentials 452 cat ${toString cfg.initialScript} | ${cfg.package}/bin/mysql -u ${superUser} -N 453 ''} 454 455 - rm ${cfg.dataDir}/mysql_init 456 - fi 457 458 - ${lib.optionalString (cfg.ensureDatabases != []) '' 459 - ( 460 - ${lib.concatMapStrings (database: '' 461 - echo "CREATE DATABASE IF NOT EXISTS \`${database}\`;" 462 - '') cfg.ensureDatabases} 463 - ) | ${cfg.package}/bin/mysql -N 464 - ''} 465 466 - ${lib.concatMapStrings (user: 467 - '' 468 - ( echo "CREATE USER IF NOT EXISTS '${user.name}'@'localhost' IDENTIFIED WITH ${if isMariaDB then "unix_socket" else "auth_socket"};" 469 - ${lib.concatStringsSep "\n" (lib.mapAttrsToList (database: permission: '' 470 - echo "GRANT ${permission} ON ${database} TO '${user.name}'@'localhost';" 471 - '') user.ensurePermissions)} 472 ) | ${cfg.package}/bin/mysql -N 473 '') cfg.ensureUsers} 474 - ''; 475 476 serviceConfig = lib.mkMerge [ 477 { ··· 500 ProtectKernelTunables = true; 501 ProtectKernelModules = true; 502 ProtectControlGroups = true; 503 - RestrictAddressFamilies = [ "AF_UNIX" "AF_INET" "AF_INET6" ]; 504 LockPersonality = true; 505 MemoryDenyWriteExecute = true; 506 RestrictRealtime = true; ··· 516 ]; 517 }; 518 }; 519 }
··· 1 + { 2 + config, 3 + lib, 4 + pkgs, 5 + ... 6 + }: 7 let 8 9 cfg = config.services.mysql; ··· 13 # Oracle MySQL has supported "notify" service type since 8.0 14 hasNotify = isMariaDB || (isOracle && lib.versionAtLeast cfg.package.version "8.0"); 15 16 + mysqldOptions = "--user=${cfg.user} --datadir=${cfg.dataDir} --basedir=${cfg.package}"; 17 18 format = pkgs.formats.ini { listsAsDuplicateKeys = true; }; 19 configFile = format.generate "my.cnf" cfg.settings; ··· 22 23 { 24 imports = [ 25 + (lib.mkRemovedOptionModule [ 26 + "services" 27 + "mysql" 28 + "pidDir" 29 + ] "Don't wait for pidfiles, describe dependencies through systemd.") 30 + (lib.mkRemovedOptionModule [ 31 + "services" 32 + "mysql" 33 + "rootPassword" 34 + ] "Use socket authentication or set the password outside of the nix store.") 35 + (lib.mkRemovedOptionModule [ 36 + "services" 37 + "mysql" 38 + "extraOptions" 39 + ] "Use services.mysql.settings.mysqld instead.") 40 + (lib.mkRemovedOptionModule [ 41 + "services" 42 + "mysql" 43 + "bind" 44 + ] "Use services.mysql.settings.mysqld.bind-address instead.") 45 + (lib.mkRemovedOptionModule [ 46 + "services" 47 + "mysql" 48 + "port" 49 + ] "Use services.mysql.settings.mysqld.port instead.") 50 ]; 51 52 ###### interface ··· 130 131 settings = lib.mkOption { 132 type = format.type; 133 + default = { }; 134 description = '' 135 MySQL configuration. Refer to 136 <https://dev.mysql.com/doc/refman/5.7/en/server-system-variables.html>, ··· 161 }; 162 163 initialDatabases = lib.mkOption { 164 + type = lib.types.listOf ( 165 + lib.types.submodule { 166 + options = { 167 + name = lib.mkOption { 168 + type = lib.types.str; 169 + description = '' 170 + The name of the database to create. 171 + ''; 172 + }; 173 + schema = lib.mkOption { 174 + type = lib.types.nullOr lib.types.path; 175 + default = null; 176 + description = '' 177 + The initial schema of the database; if null (the default), 178 + an empty database is created. 179 + ''; 180 + }; 181 }; 182 + } 183 + ); 184 + default = [ ]; 185 description = '' 186 List of database names and their initial schemas that should be used to create databases on the first startup 187 of MySQL. The schema attribute is optional: If not specified, an empty database is created. ··· 202 203 ensureDatabases = lib.mkOption { 204 type = lib.types.listOf lib.types.str; 205 + default = [ ]; 206 description = '' 207 Ensures that the specified databases exist. 208 This option will never delete existing databases, especially not when the value of this ··· 216 }; 217 218 ensureUsers = lib.mkOption { 219 + type = lib.types.listOf ( 220 + lib.types.submodule { 221 + options = { 222 + name = lib.mkOption { 223 + type = lib.types.str; 224 + description = '' 225 + Name of the user to ensure. 226 + ''; 227 + }; 228 + ensurePermissions = lib.mkOption { 229 + type = lib.types.attrsOf lib.types.str; 230 + default = { }; 231 + description = '' 232 + Permissions to ensure for the user, specified as attribute set. 233 + The attribute names specify the database and tables to grant the permissions for, 234 + separated by a dot. You may use wildcards here. 235 + The attribute values specfiy the permissions to grant. 236 + You may specify one or multiple comma-separated SQL privileges here. 237 238 + For more information on how to specify the target 239 + and on which privileges exist, see the 240 + [GRANT syntax](https://mariadb.com/kb/en/library/grant/). 241 + The attributes are used as `GRANT ''${attrName} ON ''${attrValue}`. 242 + ''; 243 + example = lib.literalExpression '' 244 + { 245 + "database.*" = "ALL PRIVILEGES"; 246 + "*.*" = "SELECT, LOCK TABLES"; 247 + } 248 + ''; 249 + }; 250 }; 251 + } 252 + ); 253 + default = [ ]; 254 description = '' 255 Ensures that the specified users exist and have at least the ensured permissions. 256 The MySQL users will be identified using Unix socket authentication. This authenticates the Unix user with the ··· 279 280 replication = { 281 role = lib.mkOption { 282 + type = lib.types.enum [ 283 + "master" 284 + "slave" 285 + "none" 286 + ]; 287 default = "none"; 288 description = "Role of the MySQL server instance."; 289 }; ··· 323 }; 324 325 }; 326 327 ###### implementation 328 329 config = lib.mkIf cfg.enable { 330 331 + services.mysql.dataDir = lib.mkDefault ( 332 + if lib.versionAtLeast config.system.stateVersion "17.09" then "/var/lib/mysql" else "/var/mysql" 333 + ); 334 335 services.mysql.settings.mysqld = lib.mkMerge [ 336 { ··· 342 log-bin-index = "mysql-bin-${toString cfg.replication.serverId}.index"; 343 relay-log = "mysql-relay-bin"; 344 server-id = cfg.replication.serverId; 345 + binlog-ignore-db = [ 346 + "information_schema" 347 + "performance_schema" 348 + "mysql" 349 + ]; 350 }) 351 (lib.mkIf (!isMariaDB) { 352 plugin-load-add = [ "auth_socket.so" ]; ··· 390 pkgs.nettools 391 ]; 392 393 + preStart = 394 + if isMariaDB then 395 + '' 396 + if ! test -e ${cfg.dataDir}/mysql; then 397 + ${cfg.package}/bin/mysql_install_db --defaults-file=/etc/my.cnf ${mysqldOptions} 398 + touch ${cfg.dataDir}/mysql_init 399 + fi 400 + '' 401 + else 402 + '' 403 + if ! test -e ${cfg.dataDir}/mysql; then 404 + ${cfg.package}/bin/mysqld --defaults-file=/etc/my.cnf ${mysqldOptions} --initialize-insecure 405 + touch ${cfg.dataDir}/mysql_init 406 + fi 407 + ''; 408 409 script = '' 410 # https://mariadb.com/kb/en/getting-started-with-mariadb-galera-cluster/#systemd-and-galera-recovery ··· 418 exec ${cfg.package}/bin/mysqld --defaults-file=/etc/my.cnf ${mysqldOptions} $_WSREP_NEW_CLUSTER $_WSREP_START_POSITION 419 ''; 420 421 + postStart = 422 + let 423 + # The super user account to use on *first* run of MySQL server 424 + superUser = if isMariaDB then cfg.user else "root"; 425 + in 426 + '' 427 + ${lib.optionalString (!hasNotify) '' 428 + # Wait until the MySQL server is available for use 429 + while [ ! -e /run/mysqld/mysqld.sock ] 430 + do 431 + echo "MySQL daemon not yet started. Waiting for 1 second..." 432 + sleep 1 433 + done 434 + ''} 435 436 + if [ -f ${cfg.dataDir}/mysql_init ] 437 + then 438 + # While MariaDB comes with a 'mysql' super user account since 10.4.x, MySQL does not 439 + # Since we don't want to run this service as 'root' we need to ensure the account exists on first run 440 + ( echo "CREATE USER IF NOT EXISTS '${cfg.user}'@'localhost' IDENTIFIED WITH ${ 441 + if isMariaDB then "unix_socket" else "auth_socket" 442 + };" 443 + echo "GRANT ALL PRIVILEGES ON *.* TO '${cfg.user}'@'localhost' WITH GRANT OPTION;" 444 + ) | ${cfg.package}/bin/mysql -u ${superUser} -N 445 446 + ${lib.concatMapStrings (database: '' 447 + # Create initial databases 448 + if ! test -e "${cfg.dataDir}/${database.name}"; then 449 + echo "Creating initial database: ${database.name}" 450 + ( echo 'create database `${database.name}`;' 451 452 + ${lib.optionalString (database.schema != null) '' 453 + echo 'use `${database.name}`;' 454 455 + # TODO: this silently falls through if database.schema does not exist, 456 + # we should catch this somehow and exit, but can't do it here because we're in a subshell. 457 + if [ -f "${database.schema}" ] 458 + then 459 + cat ${database.schema} 460 + elif [ -d "${database.schema}" ] 461 + then 462 + cat ${database.schema}/mysql-databases/*.sql 463 + fi 464 + ''} 465 + ) | ${cfg.package}/bin/mysql -u ${superUser} -N 466 + fi 467 + '') cfg.initialDatabases} 468 469 + ${lib.optionalString (cfg.replication.role == "master") '' 470 # Set up the replication master 471 472 ( echo "use mysql;" ··· 476 ) | ${cfg.package}/bin/mysql -u ${superUser} -N 477 ''} 478 479 + ${lib.optionalString (cfg.replication.role == "slave") '' 480 # Set up the replication slave 481 482 ( echo "stop slave;" ··· 485 ) | ${cfg.package}/bin/mysql -u ${superUser} -N 486 ''} 487 488 + ${lib.optionalString (cfg.initialScript != null) '' 489 # Execute initial script 490 # using toString to avoid copying the file to nix store if given as path instead of string, 491 # as it might contain credentials 492 cat ${toString cfg.initialScript} | ${cfg.package}/bin/mysql -u ${superUser} -N 493 ''} 494 495 + rm ${cfg.dataDir}/mysql_init 496 + fi 497 498 + ${lib.optionalString (cfg.ensureDatabases != [ ]) '' 499 + ( 500 + ${lib.concatMapStrings (database: '' 501 + echo "CREATE DATABASE IF NOT EXISTS \`${database}\`;" 502 + '') cfg.ensureDatabases} 503 + ) | ${cfg.package}/bin/mysql -N 504 + ''} 505 506 + ${lib.concatMapStrings (user: '' 507 + ( echo "CREATE USER IF NOT EXISTS '${user.name}'@'localhost' IDENTIFIED WITH ${ 508 + if isMariaDB then "unix_socket" else "auth_socket" 509 + };" 510 + ${lib.concatStringsSep "\n" ( 511 + lib.mapAttrsToList (database: permission: '' 512 + echo "GRANT ${permission} ON ${database} TO '${user.name}'@'localhost';" 513 + '') user.ensurePermissions 514 + )} 515 ) | ${cfg.package}/bin/mysql -N 516 '') cfg.ensureUsers} 517 + ''; 518 519 serviceConfig = lib.mkMerge [ 520 { ··· 543 ProtectKernelTunables = true; 544 ProtectKernelModules = true; 545 ProtectControlGroups = true; 546 + RestrictAddressFamilies = [ 547 + "AF_UNIX" 548 + "AF_INET" 549 + "AF_INET6" 550 + ]; 551 LockPersonality = true; 552 MemoryDenyWriteExecute = true; 553 RestrictRealtime = true; ··· 563 ]; 564 }; 565 }; 566 + 567 + meta.maintainers = [ lib.maintainers._6543 ]; 568 }
+1 -1
nixos/modules/services/matrix/synapse.nix
··· 1597 }; 1598 1599 meta = { 1600 buildDocsInSandbox = false; 1601 doc = ./synapse.md; 1602 - maintainers = teams.matrix.members; 1603 }; 1604 1605 }
··· 1597 }; 1598 1599 meta = { 1600 + inherit (pkgs.matrix-synapse.meta) maintainers; 1601 buildDocsInSandbox = false; 1602 doc = ./synapse.md; 1603 }; 1604 1605 }
+2 -1
nixos/modules/services/misc/tabby.nix
··· 16 { 17 imports = [ 18 (mkRemovedOptionModule [ 19 - "settings" 20 "indexInterval" 21 ] "These options are now managed within the tabby WebGUI") 22 ];
··· 16 { 17 imports = [ 18 (mkRemovedOptionModule [ 19 + "services" 20 + "tabby" 21 "indexInterval" 22 ] "These options are now managed within the tabby WebGUI") 23 ];
+1 -1
nixos/modules/services/networking/yggdrasil.nix
··· 193 "${binYggdrasil} -genconf") + " > /run/yggdrasil/yggdrasil.conf"} 194 195 # start yggdrasil 196 - ${binYggdrasil} -useconffile /run/yggdrasil/yggdrasil.conf ${lib.strings.escapeShellArgs cfg.extraArgs} 197 ''; 198 199 serviceConfig = {
··· 193 "${binYggdrasil} -genconf") + " > /run/yggdrasil/yggdrasil.conf"} 194 195 # start yggdrasil 196 + exec ${binYggdrasil} -useconffile /run/yggdrasil/yggdrasil.conf ${lib.strings.escapeShellArgs cfg.extraArgs} 197 ''; 198 199 serviceConfig = {
+6 -10
nixos/modules/services/web-apps/nextcloud.md
··· 245 246 ## Known warnings {#module-services-nextcloud-known-warnings} 247 248 - ### Failed to get an iterator for log entries: Logreader application only supports "file" log_type {#module-services-nextcloud-warning-logreader} 249 250 This is because 251 ··· 253 * the Logreader application that allows reading logs in the admin panel is enabled 254 by default and requires logs written to a file. 255 256 - The logreader application doesn't work, as it was the case before. The only change is that 257 - it complains loudly now. So nothing actionable here by default. Alternatively you can 258 - 259 - * disable the logreader application to shut up the "error". 260 - 261 - We can't really do that by default since whether apps are enabled/disabled is part 262 - of the application's state and tracked inside the database. 263 264 - * set [](#opt-services.nextcloud.settings.log_type) to "file" to be able to view logs 265 - from the admin panel. 266 267 ## Maintainer information {#module-services-nextcloud-maintainer-info} 268
··· 245 246 ## Known warnings {#module-services-nextcloud-known-warnings} 247 248 + ### Logreader application only supports "file" log_type {#module-services-nextcloud-warning-logreader} 249 250 This is because 251 ··· 253 * the Logreader application that allows reading logs in the admin panel is enabled 254 by default and requires logs written to a file. 255 256 + If you want to view logs in the admin panel, 257 + set [](#opt-services.nextcloud.settings.log_type) to "file". 258 259 + If you prefer logs in the journal, disable the logreader application to shut up the 260 + "info". We can't really do that by default since whether apps are enabled/disabled 261 + is part of the application's state and tracked inside the database. 262 263 ## Maintainer information {#module-services-nextcloud-maintainer-info} 264
+2 -1
nixos/modules/system/boot/systemd/tmpfiles.nix
··· 29 }; 30 }; 31 default = {}; 32 - type = attrsWith' "config-name" (attrsWith' "tmpfiles-type" (attrsWith' "path" (types.submodule ({ name, config, ... }: { 33 options.type = mkOption { 34 type = types.str; 35 default = name; 36 example = "d"; 37 description = '' 38 The type of operation to perform on the file.
··· 29 }; 30 }; 31 default = {}; 32 + type = attrsWith' "config-name" (attrsWith' "path" (attrsWith' "tmpfiles-type" (types.submodule ({ name, config, ... }: { 33 options.type = mkOption { 34 type = types.str; 35 default = name; 36 + defaultText = "‹tmpfiles-type›"; 37 example = "d"; 38 description = '' 39 The type of operation to perform on the file.
+2 -2
nixos/tests/matrix/mjolnir.nix
··· 30 in 31 { 32 name = "mjolnir"; 33 - meta = with pkgs.lib; { 34 - maintainers = teams.matrix.members; 35 }; 36 37 nodes = {
··· 30 in 31 { 32 name = "mjolnir"; 33 + meta = { 34 + inherit (pkgs.mjolnir.meta) maintainers; 35 }; 36 37 nodes = {
+2 -2
nixos/tests/matrix/synapse-workers.nix
··· 2 { pkgs, ... }: 3 { 4 name = "matrix-synapse-workers"; 5 - meta = with pkgs.lib; { 6 - maintainers = teams.matrix.members; 7 }; 8 9 nodes = {
··· 2 { pkgs, ... }: 3 { 4 name = "matrix-synapse-workers"; 5 + meta = { 6 + inherit (pkgs.matrix-synapse.meta) maintainers; 7 }; 8 9 nodes = {
+2 -2
nixos/tests/matrix/synapse.nix
··· 54 { 55 56 name = "matrix-synapse"; 57 - meta = with pkgs.lib; { 58 - maintainers = teams.matrix.members; 59 }; 60 61 nodes = {
··· 54 { 55 56 name = "matrix-synapse"; 57 + meta = { 58 + inherit (pkgs.matrix-synapse.meta) maintainers; 59 }; 60 61 nodes = {
+3 -2
pkgs/applications/editors/android-studio/common.nix
··· 100 101 installPhase = '' 102 cp -r . $out 103 - wrapProgram $out/bin/studio.sh \ 104 --set-default JAVA_HOME "$out/jbr" \ 105 --set ANDROID_EMULATOR_USE_SYSTEM_LIBS 1 \ 106 --set QT_XKB_CONFIG_ROOT "${xkeyboard_config}/share/X11/xkb" \ ··· 204 ] 205 }" 206 ''; 207 }; 208 209 desktopItem = makeDesktopItem { ··· 279 unset ANDROID_HOME 280 fi 281 ''} 282 - exec ${fhsEnv}/bin/${drvName}-fhs-env ${androidStudio}/bin/studio.sh "$@" 283 ''; 284 preferLocalBuild = true; 285 allowSubstitutes = false;
··· 100 101 installPhase = '' 102 cp -r . $out 103 + wrapProgram $out/bin/studio \ 104 --set-default JAVA_HOME "$out/jbr" \ 105 --set ANDROID_EMULATOR_USE_SYSTEM_LIBS 1 \ 106 --set QT_XKB_CONFIG_ROOT "${xkeyboard_config}/share/X11/xkb" \ ··· 204 ] 205 }" 206 ''; 207 + meta.mainProgram = "studio"; 208 }; 209 210 desktopItem = makeDesktopItem { ··· 280 unset ANDROID_HOME 281 fi 282 ''} 283 + exec ${fhsEnv}/bin/${drvName}-fhs-env ${lib.getExe androidStudio} "$@" 284 ''; 285 preferLocalBuild = true; 286 allowSubstitutes = false;
+8 -8
pkgs/applications/editors/vscode/vscode.nix
··· 36 37 sha256 = 38 { 39 - x86_64-linux = "0gr2z4vzms6fv4kcc8dzc7l3inpb5hasnzdfr1zc2n4i3nl8z8vw"; 40 - x86_64-darwin = "1qplpjazjds5kns0kmp5qa6zfix30cqa93bl4bcpvblb2x9fh1v8"; 41 - aarch64-linux = "1jhrmwrnxzwvhqgfrs35kyd5hhg2b7dyq3p5k88jhm8607nkds79"; 42 - aarch64-darwin = "072lg4nvq3cdjzrwngaxnz9p952zkxsknsb39zjh55vzrij55g9x"; 43 - armv7l-linux = "06bvh72bq4ippr2k8ifcfqhkhhh6na4vxsz1k50swr1k2kzwwr5d"; 44 } 45 .${system} or throwSystem; 46 in 47 callPackage ./generic.nix rec { 48 # Please backport all compatible updates to the stable release. 49 # This is important for the extension ecosystem. 50 - version = "1.97.1"; 51 pname = "vscode" + lib.optionalString isInsiders "-insiders"; 52 53 # This is used for VS Code - Remote SSH test 54 - rev = "e249dada235c2083c83813bd65b7f4707fb97b76"; 55 56 executableName = "code" + lib.optionalString isInsiders "-insiders"; 57 longName = "Visual Studio Code" + lib.optionalString isInsiders " - Insiders"; ··· 75 src = fetchurl { 76 name = "vscode-server-${rev}.tar.gz"; 77 url = "https://update.code.visualstudio.com/commit:${rev}/server-linux-x64/stable"; 78 - sha256 = "01snzahh794ygpgwh4r57c8mnisp6a4fc3v5x76cdhxw2hd9s26n"; 79 }; 80 stdenv = stdenvNoCC; 81 };
··· 36 37 sha256 = 38 { 39 + x86_64-linux = "11a0y0zdz3mmc2xvpnlq06a7q06y6529xpp4hlhpjylj0bk06xn1"; 40 + x86_64-darwin = "12fxhwqcz36f5pv4kvs7bblmymxyixg7pvi0gb5k0j73pkvqrr6g"; 41 + aarch64-linux = "0g5qz7gq7k65p2f8iwz1jiy03nwsmy3v3gb18qwg9mbhm0dk59la"; 42 + aarch64-darwin = "1g4fz8nw5m7krjlsjs43937kz1sr7lkflbphpyh8cmalwpxa8ysn"; 43 + armv7l-linux = "09r12y9xbpqnnw9mab3k4kx0ngpfng1l6rk09n9l2q36ji20ijmy"; 44 } 45 .${system} or throwSystem; 46 in 47 callPackage ./generic.nix rec { 48 # Please backport all compatible updates to the stable release. 49 # This is important for the extension ecosystem. 50 + version = "1.97.2"; 51 pname = "vscode" + lib.optionalString isInsiders "-insiders"; 52 53 # This is used for VS Code - Remote SSH test 54 + rev = "e54c774e0add60467559eb0d1e229c6452cf8447"; 55 56 executableName = "code" + lib.optionalString isInsiders "-insiders"; 57 longName = "Visual Studio Code" + lib.optionalString isInsiders " - Insiders"; ··· 75 src = fetchurl { 76 name = "vscode-server-${rev}.tar.gz"; 77 url = "https://update.code.visualstudio.com/commit:${rev}/server-linux-x64/stable"; 78 + sha256 = "15fd401sqmlkpw48pysqpyi5rlsqx4cm55bbwakhkal4qa1qnq4m"; 79 }; 80 stdenv = stdenvNoCC; 81 };
+9
pkgs/applications/networking/cluster/terraform-providers/providers.json
··· 1092 "spdx": "MPL-2.0", 1093 "vendorHash": null 1094 }, 1095 "scaleway": { 1096 "hash": "sha256-8aESalFQaA6Qwod4rDeUzrKe80rbHfVJZIKtLliKUME=", 1097 "homepage": "https://registry.terraform.io/providers/scaleway/scaleway",
··· 1092 "spdx": "MPL-2.0", 1093 "vendorHash": null 1094 }, 1095 + "sakuracloud": { 1096 + "hash": "sha256-KrzqIAK6ImUW22Iik97R4HARoXN4lG6AquitLjCqS/A=", 1097 + "homepage": "https://registry.terraform.io/providers/sacloud/sakuracloud", 1098 + "owner": "sacloud", 1099 + "repo": "terraform-provider-sakuracloud", 1100 + "rev": "v2.26.1", 1101 + "spdx": "Apache-2.0", 1102 + "vendorHash": "sha256-Ry791h5AuYP03nex9nM8X5Mk6PeL7hNDbFyVRvVPJNE=" 1103 + }, 1104 "scaleway": { 1105 "hash": "sha256-8aESalFQaA6Qwod4rDeUzrKe80rbHfVJZIKtLliKUME=", 1106 "homepage": "https://registry.terraform.io/providers/scaleway/scaleway",
+179 -188
pkgs/by-name/af/affine/package.nix
··· 1 { 2 - cacert, 3 - cargo, 4 - copyDesktopItems, 5 - fetchFromGitHub, 6 - fetchurl, 7 - findutils, 8 - jq, 9 lib, 10 - makeDesktopItem, 11 - makeWrapper, 12 - rsync, 13 - rustPlatform, 14 - rustc, 15 stdenv, 16 stdenvNoCC, 17 yarn-berry, 18 zip, 19 - electron_33, 20 - nodejs_20, 21 buildType ? "stable", 22 commandLineArgs ? "", 23 }: ··· 34 electron = electron_33; 35 nodejs = nodejs_20; 36 yarn = yarn-berry.override { inherit nodejs; }; 37 in 38 - stdenv.mkDerivation ( 39 - finalAttrs: 40 - ( 41 - { 42 - productName = if buildType == "stable" then "AFFiNE" else "AFFiNE-" + buildType; 43 - binName = lib.toLower finalAttrs.productName; 44 - pname = finalAttrs.binName; 45 - 46 - # https://github.com/toeverything/AFFiNE/releases/tag/v0.18.1 47 - version = "0.18.1"; 48 - GITHUB_SHA = "8b066a4b398aace25a20508a8e3c1a381721971f"; 49 - src = fetchFromGitHub { 50 - owner = "toeverything"; 51 - repo = "AFFiNE"; 52 - rev = finalAttrs.GITHUB_SHA; 53 - hash = "sha256-TWwojG3lqQlQFX3BKoFjJ27a3T/SawXgNDO6fP6gW4k="; 54 - }; 55 56 - meta = 57 - { 58 - description = "Workspace with fully merged docs, whiteboards and databases"; 59 - longDescription = '' 60 - AFFiNE is an open-source, all-in-one workspace and an operating 61 - system for all the building blocks that assemble your knowledge 62 - base and much more -- wiki, knowledge management, presentation 63 - and digital assets 64 - ''; 65 - homepage = "https://affine.pro/"; 66 - license = lib.licenses.mit; 67 - maintainers = with lib.maintainers; [ xiaoxiangmoe ]; 68 - platforms = [ 69 - "aarch64-darwin" 70 - "aarch64-linux" 71 - "x86_64-darwin" 72 - "x86_64-linux" 73 - ]; 74 - sourceProvenance = [ lib.sourceTypes.fromSource ]; 75 - } 76 - // lib.optionalAttrs hostPlatform.isLinux { 77 - mainProgram = finalAttrs.binName; 78 - }; 79 80 - env = { 81 - BUILD_TYPE = buildType; 82 - }; 83 - cargoDeps = rustPlatform.fetchCargoVendor { 84 - src = finalAttrs.src; 85 - hash = "sha256-5s/X9CD/H9rSn7SqMHioLg1KRP7y9fsozdFRY3hNiP8="; 86 - }; 87 - yarnOfflineCache = stdenvNoCC.mkDerivation { 88 - name = "yarn-offline-cache"; 89 - src = finalAttrs.src; 90 - nativeBuildInputs = [ 91 - yarn 92 - cacert 93 - ]; 94 supportedArchitectures = builtins.toJSON { 95 os = [ 96 "darwin" 97 "linux" 98 ]; 99 cpu = [ 100 "arm64" 101 - "x64" 102 ]; 103 libc = [ 104 "glibc" 105 "musl" 106 ]; 107 }; 108 - buildPhase = '' 109 - export HOME="$NIX_BUILD_TOP" 110 - export CI=1 111 112 - mkdir -p $out 113 - yarn config set enableTelemetry false 114 - yarn config set cacheFolder $out 115 - yarn config set enableGlobalCache false 116 - yarn config set supportedArchitectures --json "$supportedArchitectures" 117 118 - yarn install --immutable --mode=skip-build 119 - ''; 120 - dontInstall = true; 121 - outputHashMode = "recursive"; 122 - outputHash = "sha256-HueTia+1ApfvbBK/b+iE84TB1DCWIDLoQ9XhjYlGCUs="; 123 - }; 124 - nativeBuildInputs = 125 - [ 126 - nodejs 127 - yarn 128 - cargo 129 - rustc 130 - findutils 131 - zip 132 - jq 133 - rsync 134 - ] 135 - ++ lib.optionals hostPlatform.isLinux [ 136 - copyDesktopItems 137 - makeWrapper 138 - ]; 139 140 - patchPhase = '' 141 - runHook prePatchPhase 142 143 - sed -i '/packagerConfig/a \ electronZipDir: process.env.ELECTRON_FORGE_ELECTRON_ZIP_DIR,' packages/frontend/apps/electron/forge.config.mjs 144 145 - runHook postPatchPhase 146 - ''; 147 148 - configurePhase = 149 - let 150 - electronContentPath = 151 - electron + (if hostPlatform.isLinux then "/libexec/electron/" else "/Applications/"); 152 - in 153 - '' 154 - runHook preConfigurePhase 155 156 - export HOME="$NIX_BUILD_TOP" 157 - export CI=1 158 159 - # cargo config 160 - mkdir -p .cargo 161 - cat $cargoDeps/.cargo/config.toml >> .cargo/config.toml 162 - ln -s $cargoDeps @vendor@ 163 164 - # yarn config 165 - yarn config set enableTelemetry false 166 - yarn config set enableGlobalCache false 167 - yarn config set cacheFolder $yarnOfflineCache 168 169 - # electron config 170 - ELECTRON_VERSION_IN_LOCKFILE=$(yarn why electron --json | tail --lines 1 | jq --raw-output '.children | to_entries | first | .key ' | cut -d : -f 2) 171 - rsync --archive --chmod=u+w ${electronContentPath} $HOME/.electron-prebuilt-zip-tmp 172 - export ELECTRON_FORGE_ELECTRON_ZIP_DIR=$PWD/.electron_zip_dir 173 - mkdir -p $ELECTRON_FORGE_ELECTRON_ZIP_DIR 174 - (cd $HOME/.electron-prebuilt-zip-tmp && zip --recurse-paths - .) > $ELECTRON_FORGE_ELECTRON_ZIP_DIR/electron-v$ELECTRON_VERSION_IN_LOCKFILE-${nodePlatform}-${nodeArch}.zip 175 - export ELECTRON_SKIP_BINARY_DOWNLOAD=1 176 177 - runHook postConfigurePhase 178 - ''; 179 - buildPhase = '' 180 - runHook preBuild 181 182 - # first build 183 - yarn workspaces focus @affine/electron @affine/monorepo 184 - CARGO_NET_OFFLINE=true yarn workspace @affine/native build 185 - BUILD_TYPE=${buildType} SKIP_NX_CACHE=1 yarn workspace @affine/electron generate-assets 186 187 - # second build 188 - yarn config set nmMode classic 189 - yarn config set nmHoistingLimits workspaces 190 - find . -name 'node_modules' -type d -prune -exec rm -rf '{}' + 191 - yarn workspaces focus @affine/electron @affine/monorepo 192 - BUILD_TYPE=${buildType} SKIP_WEB_BUILD=1 SKIP_BUNDLE=1 HOIST_NODE_MODULES=1 yarn workspace @affine/electron make 193 194 - runHook postBuild 195 - ''; 196 - installPhase = 197 - let 198 - inherit (finalAttrs) binName productName; 199 - in 200 - if hostPlatform.isDarwin then 201 - '' 202 - runHook preInstall 203 204 - mkdir -p $out/Applications 205 - mv packages/frontend/apps/electron/out/${buildType}/${productName}-darwin-${nodeArch}/${productName}.app $out/Applications 206 207 - runHook postInstall 208 - '' 209 - else 210 - '' 211 - runHook preInstall 212 213 - mkdir --parents $out/lib/${binName}/ 214 - mv packages/frontend/apps/electron/out/${buildType}/${productName}-linux-${nodeArch}/{resources,LICENSE*} $out/lib/${binName}/ 215 - install -Dm644 packages/frontend/apps/electron/resources/icons/icon_${buildType}_64x64.png $out/share/icons/hicolor/64x64/apps/${binName}.png 216 217 - makeWrapper "${electron}/bin/electron" $out/bin/${binName} \ 218 - --inherit-argv0 \ 219 - --add-flags $out/lib/${binName}/resources/app.asar \ 220 - --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations --enable-wayland-ime=true}}" \ 221 - --add-flags ${lib.escapeShellArg commandLineArgs} 222 223 - runHook postInstall 224 - ''; 225 - } 226 - // (lib.optionalAttrs hostPlatform.isLinux { 227 - desktopItems = 228 - let 229 - inherit (finalAttrs) binName productName; 230 - in 231 - [ 232 - (makeDesktopItem { 233 - name = binName; 234 - desktopName = productName; 235 - comment = "AFFiNE Desktop App"; 236 - exec = "${binName} %U"; 237 - terminal = false; 238 - icon = binName; 239 - startupWMClass = binName; 240 - categories = [ "Utility" ]; 241 - mimeTypes = [ "x-scheme-handler/${binName}" ]; 242 - }) 243 - ]; 244 }) 245 - ) 246 - )
··· 1 { 2 lib, 3 stdenv, 4 stdenvNoCC, 5 + fetchFromGitHub, 6 + rustPlatform, 7 + electron_33, 8 + nodejs_20, 9 yarn-berry, 10 + cacert, 11 + writableTmpDirAsHomeHook, 12 + cargo, 13 + rustc, 14 + findutils, 15 zip, 16 + rsync, 17 + jq, 18 + copyDesktopItems, 19 + makeWrapper, 20 + makeDesktopItem, 21 + nix-update-script, 22 buildType ? "stable", 23 commandLineArgs ? "", 24 }: ··· 35 electron = electron_33; 36 nodejs = nodejs_20; 37 yarn = yarn-berry.override { inherit nodejs; }; 38 + productName = if buildType != "stable" then "AFFiNE-${buildType}" else "AFFiNE"; 39 + binName = lib.toLower productName; 40 in 41 + stdenv.mkDerivation (finalAttrs: { 42 + pname = binName; 43 44 + version = "0.19.6"; 45 + src = fetchFromGitHub { 46 + owner = "toeverything"; 47 + repo = "AFFiNE"; 48 + tag = "v${finalAttrs.version}"; 49 + hash = "sha256-BydTNE36oRIxr2lTnc2+EY0lvMXn4NTLB4EjqzhdjGk="; 50 + }; 51 52 + cargoDeps = rustPlatform.fetchCargoVendor { 53 + inherit (finalAttrs) pname version src; 54 + hash = "sha256-racjpf0VgNod6OxWKSaCbKS9fEkInpDyhVbAHfYWIDo="; 55 + }; 56 + yarnOfflineCache = stdenvNoCC.mkDerivation { 57 + name = "yarn-offline-cache"; 58 + inherit (finalAttrs) src; 59 + nativeBuildInputs = [ 60 + yarn 61 + cacert 62 + writableTmpDirAsHomeHook 63 + ]; 64 + # force yarn install run in CI mode 65 + env.CI = "1"; 66 + buildPhase = 67 + let 68 supportedArchitectures = builtins.toJSON { 69 os = [ 70 "darwin" 71 "linux" 72 ]; 73 cpu = [ 74 + "x64" 75 + "ia32" 76 "arm64" 77 ]; 78 libc = [ 79 "glibc" 80 "musl" 81 ]; 82 }; 83 + in 84 + '' 85 + runHook preBuild 86 87 + mkdir -p $out 88 + yarn config set enableTelemetry false 89 + yarn config set cacheFolder $out 90 + yarn config set enableGlobalCache false 91 + yarn config set supportedArchitectures --json '${supportedArchitectures}' 92 93 + yarn install --immutable --mode=skip-build 94 95 + runHook postBuild 96 + ''; 97 + dontInstall = true; 98 + outputHashMode = "recursive"; 99 + outputHash = "sha256-E9l5zjOOfyDBzYJOU94VrRvt7Hi4XkRTDav9bVlXvlQ="; 100 + }; 101 + nativeBuildInputs = 102 + [ 103 + nodejs 104 + yarn 105 + cargo 106 + rustc 107 + findutils 108 + zip 109 + jq 110 + rsync 111 + writableTmpDirAsHomeHook 112 + ] 113 + ++ lib.optionals hostPlatform.isLinux [ 114 + copyDesktopItems 115 + makeWrapper 116 + ]; 117 + 118 + # force yarn install run in CI mode 119 + env.CI = "1"; 120 + 121 + # Remove code under The AFFiNE Enterprise Edition (EE) license. 122 + # Keep file package.json for `yarn install --immutable` lockfile check. 123 + postPatch = '' 124 + BACKEND_SERVER_PACKAGE_JSON="$(jq 'del(.scripts.postinstall)' packages/backend/server/package.json)" 125 + rm -rf packages/backend/server/{.*,*} 126 + echo "$BACKEND_SERVER_PACKAGE_JSON" > packages/backend/server/package.json 127 + ''; 128 129 + configurePhase = '' 130 + runHook preConfigurePhase 131 132 + # cargo config 133 + mkdir -p .cargo 134 + cat $cargoDeps/.cargo/config.toml >> .cargo/config.toml 135 + ln -s $cargoDeps @vendor@ 136 137 + # yarn config 138 + yarn config set enableTelemetry false 139 + yarn config set enableGlobalCache false 140 + yarn config set cacheFolder $yarnOfflineCache 141 142 + # electron config 143 + ELECTRON_VERSION_IN_LOCKFILE=$(yarn why electron --json | tail --lines 1 | jq --raw-output '.children | to_entries | first | .key ' | cut -d : -f 2) 144 + rsync --archive --chmod=u+w "${electron.dist}/" $HOME/.electron-prebuilt-zip-tmp 145 + export ELECTRON_FORGE_ELECTRON_ZIP_DIR=$PWD/.electron_zip_dir 146 + mkdir -p $ELECTRON_FORGE_ELECTRON_ZIP_DIR 147 + (cd $HOME/.electron-prebuilt-zip-tmp && zip --recurse-paths - .) > $ELECTRON_FORGE_ELECTRON_ZIP_DIR/electron-v$ELECTRON_VERSION_IN_LOCKFILE-${nodePlatform}-${nodeArch}.zip 148 + export ELECTRON_SKIP_BINARY_DOWNLOAD=1 149 150 + runHook postConfigurePhase 151 + ''; 152 153 + buildPhase = '' 154 + runHook preBuild 155 156 + # first build 157 + yarn install 158 + CARGO_NET_OFFLINE=true yarn affine @affine/native build 159 + GITHUB_SHA=ffffffffffffffffffffffffffffffffffffffff BUILD_TYPE=${buildType} SKIP_NX_CACHE=1 yarn affine @affine/electron generate-assets 160 161 + # second build 162 + yarn config set nmMode classic 163 + yarn config set nmHoistingLimits workspaces 164 + find . -name 'node_modules' -type d -prune -exec rm -rf '{}' + 165 + yarn install 166 + BUILD_TYPE=${buildType} SKIP_WEB_BUILD=1 SKIP_BUNDLE=1 HOIST_NODE_MODULES=1 yarn affine @affine/electron make 167 168 + runHook postBuild 169 + ''; 170 171 + installPhase = 172 + if hostPlatform.isDarwin then 173 + '' 174 + runHook preInstall 175 176 + mkdir -p $out/Applications 177 + mv packages/frontend/apps/electron/out/${buildType}/${productName}-darwin-${nodeArch}/${productName}.app $out/Applications 178 179 + runHook postInstall 180 + '' 181 + else 182 + '' 183 + runHook preInstall 184 185 + mkdir --parents $out/lib/${binName}/ 186 + mv packages/frontend/apps/electron/out/${buildType}/${productName}-linux-${nodeArch}/{resources,LICENSE*} $out/lib/${binName}/ 187 + install -Dm644 packages/frontend/apps/electron/resources/icons/icon_${buildType}_64x64.png $out/share/icons/hicolor/64x64/apps/${binName}.png 188 189 + makeWrapper "${lib.getExe electron}" $out/bin/${binName} \ 190 + --inherit-argv0 \ 191 + --add-flags $out/lib/${binName}/resources/app.asar \ 192 + --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations --enable-wayland-ime=true}}" \ 193 + --add-flags ${lib.escapeShellArg commandLineArgs} 194 195 + runHook postInstall 196 + ''; 197 198 + desktopItems = [ 199 + (makeDesktopItem { 200 + name = binName; 201 + desktopName = productName; 202 + comment = "AFFiNE Desktop App"; 203 + exec = "${binName} %U"; 204 + terminal = false; 205 + icon = binName; 206 + startupWMClass = binName; 207 + categories = [ "Utility" ]; 208 + mimeTypes = [ "x-scheme-handler/${binName}" ]; 209 }) 210 + ]; 211 + 212 + passthru.updateScript = nix-update-script { 213 + extraArgs = [ 214 + "--version-regex=^v(\\d+\\.\\d+\\.\\d+)$" 215 + ]; 216 + }; 217 + 218 + meta = { 219 + description = "Workspace with fully merged docs, whiteboards and databases"; 220 + longDescription = '' 221 + AFFiNE is an open-source, all-in-one workspace and an operating 222 + system for all the building blocks that assemble your knowledge 223 + base and much more -- wiki, knowledge management, presentation 224 + and digital assets 225 + ''; 226 + homepage = "https://affine.pro/"; 227 + license = lib.licenses.mit; 228 + maintainers = with lib.maintainers; [ xiaoxiangmoe ]; 229 + platforms = [ 230 + "aarch64-darwin" 231 + "aarch64-linux" 232 + "x86_64-darwin" 233 + "x86_64-linux" 234 + ]; 235 + sourceProvenance = [ lib.sourceTypes.fromSource ]; 236 + }; 237 + })
+4 -2
pkgs/by-name/au/audacity/package.nix
··· 176 dontWrapGApps = true; 177 178 # Replace audacity's wrapper, to: 179 - # - put it in the right place, it shouldn't be in "$out/audacity" 180 # - Add the ffmpeg dynamic dependency 181 postFixup = 182 lib.optionalString stdenv.hostPlatform.isLinux '' 183 wrapProgram "$out/bin/audacity" \ 184 "''${gappsWrapperArgs[@]}" \ 185 --prefix LD_LIBRARY_PATH : "$out/lib/audacity":${lib.makeLibraryPath [ ffmpeg ]} \ 186 --suffix AUDACITY_MODULES_PATH : "$out/lib/audacity/modules" \ 187 - --suffix AUDACITY_PATH : "$out/share/audacity" 188 '' 189 + lib.optionalString stdenv.hostPlatform.isDarwin '' 190 mkdir -p $out/{Applications,bin}
··· 176 dontWrapGApps = true; 177 178 # Replace audacity's wrapper, to: 179 + # - Put it in the right place; it shouldn't be in "$out/audacity" 180 # - Add the ffmpeg dynamic dependency 181 + # - Use Xwayland by default on Wayland. See https://github.com/audacity/audacity/pull/5977 182 postFixup = 183 lib.optionalString stdenv.hostPlatform.isLinux '' 184 wrapProgram "$out/bin/audacity" \ 185 "''${gappsWrapperArgs[@]}" \ 186 --prefix LD_LIBRARY_PATH : "$out/lib/audacity":${lib.makeLibraryPath [ ffmpeg ]} \ 187 --suffix AUDACITY_MODULES_PATH : "$out/lib/audacity/modules" \ 188 + --suffix AUDACITY_PATH : "$out/share/audacity" \ 189 + --set-default GDK_BACKEND x11 190 '' 191 + lib.optionalString stdenv.hostPlatform.isDarwin '' 192 mkdir -p $out/{Applications,bin}
-1
pkgs/by-name/de/devenv/package.nix
··· 74 wrapProgram $out/bin/devenv \ 75 --prefix PATH ":" "$out/bin:${cachix}/bin" \ 76 --set DEVENV_NIX ${devenv_nix} \ 77 - --set-default DO_NOT_TRACK 1 \ 78 ${setDefaultLocaleArchive} 79 80 # Generate manpages
··· 74 wrapProgram $out/bin/devenv \ 75 --prefix PATH ":" "$out/bin:${cachix}/bin" \ 76 --set DEVENV_NIX ${devenv_nix} \ 77 ${setDefaultLocaleArchive} 78 79 # Generate manpages
+6 -3
pkgs/by-name/ha/harper/package.nix
··· 2 lib, 3 rustPlatform, 4 fetchFromGitHub, 5 }: 6 7 rustPlatform.buildRustPackage rec { 8 pname = "harper"; 9 - version = "0.20.0"; 10 11 src = fetchFromGitHub { 12 owner = "Automattic"; 13 repo = "harper"; 14 rev = "v${version}"; 15 - hash = "sha256-8JeF1HxsP+Y+C1g3YJ0B0+JHoRFkBjz4/T8rVr2KgGw="; 16 }; 17 18 buildAndTestSubdir = "harper-ls"; 19 useFetchCargoVendor = true; 20 - cargoHash = "sha256-uVjDFo5mJi4Xbq0Z+XOjy5VqXqkm0a+4xu+dVnjWXCU="; 21 22 meta = { 23 description = "Grammar Checker for Developers";
··· 2 lib, 3 rustPlatform, 4 fetchFromGitHub, 5 + nix-update-script, 6 }: 7 8 rustPlatform.buildRustPackage rec { 9 pname = "harper"; 10 + version = "0.21.1"; 11 12 src = fetchFromGitHub { 13 owner = "Automattic"; 14 repo = "harper"; 15 rev = "v${version}"; 16 + hash = "sha256-UTohTnIUMpyQGvkuOD2L7bViF3b5QnbDjRD4VSmf4lE="; 17 }; 18 19 buildAndTestSubdir = "harper-ls"; 20 useFetchCargoVendor = true; 21 + cargoHash = "sha256-wHXo4yfFc77osCamK0NidbrIYyIFMEpfBr0B6aniBmQ="; 22 + 23 + passthru.updateScript = nix-update-script { }; 24 25 meta = { 26 description = "Grammar Checker for Developers";
+33
pkgs/by-name/ha/hawkeye/package.nix
···
··· 1 + { 2 + lib, 3 + rustPackages, 4 + fetchFromGitHub, 5 + pkg-config, 6 + }: 7 + 8 + rustPackages.rustPlatform.buildRustPackage rec { 9 + pname = "hawkeye"; 10 + version = "6.0.0"; 11 + 12 + src = fetchFromGitHub { 13 + owner = "korandoru"; 14 + repo = "hawkeye"; 15 + tag = "v${version}"; 16 + hash = "sha256-VfJWj9BwNVR7RVUW+CjFuaniyiEath1U0F/7QJcA3r4="; 17 + }; 18 + 19 + useFetchCargoVendor = true; 20 + cargoHash = "sha256-SJEl5QsO4KYRv+5xDPHy1Q53qcL89IJ9JTXtzubO5fk="; 21 + 22 + nativeBuildInputs = [ 23 + pkg-config 24 + ]; 25 + 26 + meta = { 27 + homepage = "https://github.com/korandoro/hawkeye"; 28 + description = "Simple license header checker and formatter, in multiple distribution forms"; 29 + license = lib.licenses.asl20; 30 + mainProgram = "hawkeye"; 31 + maintainers = with lib.maintainers; [ matthiasbeyer ]; 32 + }; 33 + }
+2
pkgs/by-name/ki/kickstart/package.nix
··· 21 useFetchCargoVendor = true; 22 cargoHash = "sha256-J9sGXJbGbO9UgZfgqxqzbiJz9j6WMpq3qC2ys7OJnII="; 23 24 checkFlags = [ 25 # remote access 26 "--skip=generation::tests::can_generate_from_remote_repo_with_subdir"
··· 21 useFetchCargoVendor = true; 22 cargoHash = "sha256-J9sGXJbGbO9UgZfgqxqzbiJz9j6WMpq3qC2ys7OJnII="; 23 24 + buildFeatures = [ "cli" ]; 25 + 26 checkFlags = [ 27 # remote access 28 "--skip=generation::tests::can_generate_from_remote_repo_with_subdir"
+2 -2
pkgs/by-name/lz/lzbench/package.nix
··· 6 7 stdenv.mkDerivation rec { 8 pname = "lzbench"; 9 - version = "1.8.1"; 10 11 src = fetchFromGitHub { 12 owner = "inikep"; 13 repo = pname; 14 rev = "v${version}"; 15 - sha256 = "19zlvcjb1qg4fx30rrp6m650660y35736j8szvdxmqh9ipkisyia"; 16 }; 17 18 enableParallelBuilding = true;
··· 6 7 stdenv.mkDerivation rec { 8 pname = "lzbench"; 9 + version = "2.0.1"; 10 11 src = fetchFromGitHub { 12 owner = "inikep"; 13 repo = pname; 14 rev = "v${version}"; 15 + sha256 = "sha256-946AcnD9z60Oihm2pseS8D5j6pGdYeCxmhTLNcW9Mmc="; 16 }; 17 18 enableParallelBuilding = true;
+3 -3
pkgs/by-name/mp/mpd-discord-rpc/package.nix
··· 10 11 rustPlatform.buildRustPackage rec { 12 pname = "mpd-discord-rpc"; 13 - version = "1.7.3"; 14 15 src = fetchFromGitHub { 16 owner = "JakeStanger"; 17 repo = "mpd-discord-rpc"; 18 rev = "v${version}"; 19 - hash = "sha256-WiHMXazNKyt5N7WmkftZYEHeQi+l9qoU2yr6jRHfjdE="; 20 }; 21 22 useFetchCargoVendor = true; 23 - cargoHash = "sha256-v6YQS+Te0bIzSr3q4QaEcXbUjiTCKELxCdqBlbjLI3E="; 24 25 nativeBuildInputs = [ 26 pkg-config
··· 10 11 rustPlatform.buildRustPackage rec { 12 pname = "mpd-discord-rpc"; 13 + version = "1.8.0"; 14 15 src = fetchFromGitHub { 16 owner = "JakeStanger"; 17 repo = "mpd-discord-rpc"; 18 rev = "v${version}"; 19 + hash = "sha256-RuXH0RaR0VVN7tja0pcc8QH826/JzH4tyVVCbrK7ldI="; 20 }; 21 22 useFetchCargoVendor = true; 23 + cargoHash = "sha256-ewmg5t0JljnvxjrGDJzokRwndv7UNw9NMQ7Cx6oDWjg="; 24 25 nativeBuildInputs = [ 26 pkg-config
+3
pkgs/by-name/ni/nixos-rebuild-ng/package.nix
··· 89 ps: with ps; [ 90 mypy 91 pytest 92 ruff 93 ] 94 );
··· 89 ps: with ps; [ 90 mypy 91 pytest 92 + # this is to help development (e.g.: better diffs) inside devShell 93 + # only, do not use its helpers like `mocker` 94 + pytest-mock 95 ruff 96 ] 97 );
+601 -481
pkgs/by-name/ni/nixos-rebuild-ng/src/tests/test_main.py
··· 7 from unittest.mock import ANY, Mock, call, patch 8 9 import pytest 10 11 import nixos_rebuild as nr 12 ··· 125 ] 126 127 128 @patch.dict(nr.process.os.environ, {}, clear=True) 129 @patch(get_qualified_name(nr.process.subprocess.run), autospec=True) 130 def test_execute_nix_boot(mock_run: Mock, tmp_path: Path) -> None: ··· 147 148 nr.execute(["nixos-rebuild", "boot", "--no-flake", "-vvv", "--no-reexec"]) 149 150 - assert mock_run.call_args_list == [ 151 - call( 152 - ["nix-instantiate", "--find-file", "nixpkgs", "-vvv"], 153 - stdout=PIPE, 154 - check=False, 155 - **DEFAULT_RUN_KWARGS, 156 - ), 157 - call( 158 - ["git", "-C", nixpkgs_path, "rev-parse", "--short", "HEAD"], 159 - check=False, 160 - capture_output=True, 161 - **DEFAULT_RUN_KWARGS, 162 - ), 163 - call( 164 - ["git", "-C", nixpkgs_path, "diff", "--quiet"], 165 - check=False, 166 - **DEFAULT_RUN_KWARGS, 167 - ), 168 - call( 169 - [ 170 - "nix-build", 171 - "<nixpkgs/nixos>", 172 - "--attr", 173 - "config.system.build.toplevel", 174 - "-vvv", 175 - "--no-out-link", 176 - ], 177 - check=True, 178 - stdout=PIPE, 179 - **DEFAULT_RUN_KWARGS, 180 - ), 181 - call( 182 - [ 183 - "nix-env", 184 - "-p", 185 - Path("/nix/var/nix/profiles/system"), 186 - "--set", 187 - config_path, 188 - ], 189 - check=True, 190 - **DEFAULT_RUN_KWARGS, 191 - ), 192 - call( 193 - [config_path / "bin/switch-to-configuration", "boot"], 194 - check=True, 195 - **(DEFAULT_RUN_KWARGS | {"env": {"NIXOS_INSTALL_BOOTLOADER": "0"}}), 196 - ), 197 - ] 198 199 200 @patch.dict(nr.process.os.environ, {}, clear=True) ··· 224 ] 225 ) 226 227 - assert mock_run.call_args_list == [ 228 - call( 229 - [ 230 - "nix-build", 231 - "<nixpkgs/nixos>", 232 - "--attr", 233 - "config.system.build.vm", 234 - "--include", 235 - "nixos-config=./configuration.nix", 236 - "--include", 237 - "nixpkgs=$HOME/.nix-defexpr/channels/pinned_nixpkgs", 238 - ], 239 - check=True, 240 - stdout=PIPE, 241 - **DEFAULT_RUN_KWARGS, 242 - ) 243 - ] 244 245 246 @patch.dict(nr.process.os.environ, {}, clear=True) ··· 279 ] 280 ) 281 282 - assert mock_run.call_args_list == [ 283 - call( 284 - [ 285 - "nix", 286 - "eval", 287 - "--json", 288 - "/path/to/config#nixosConfigurations.hostname.config.system.build.images", 289 - "--apply", 290 - "builtins.mapAttrs (n: v: v.passthru.filePath)", 291 - ], 292 - check=True, 293 - stdout=PIPE, 294 - **DEFAULT_RUN_KWARGS, 295 - ), 296 - call( 297 - [ 298 - "nix", 299 - "--extra-experimental-features", 300 - "nix-command flakes", 301 - "build", 302 - "--print-out-paths", 303 - "/path/to/config#nixosConfigurations.hostname.config.system.build.images.azure", 304 - ], 305 - check=True, 306 - stdout=PIPE, 307 - **DEFAULT_RUN_KWARGS, 308 - ), 309 - ] 310 311 312 @patch.dict(nr.process.os.environ, {}, clear=True) ··· 340 ] 341 ) 342 343 - assert mock_run.call_args_list == [ 344 - call( 345 - [ 346 - "nix", 347 - "--extra-experimental-features", 348 - "nix-command flakes", 349 - "build", 350 - "--print-out-paths", 351 - "/path/to/config#nixosConfigurations.hostname.config.system.build.toplevel", 352 - "-v", 353 - "--option", 354 - "narinfo-cache-negative-ttl", 355 - "1200", 356 - "--no-link", 357 - ], 358 - check=True, 359 - stdout=PIPE, 360 - **DEFAULT_RUN_KWARGS, 361 - ), 362 - call( 363 - [ 364 - "sudo", 365 - "nix-env", 366 - "-p", 367 - Path("/nix/var/nix/profiles/system"), 368 - "--set", 369 - config_path, 370 - ], 371 - check=True, 372 - **DEFAULT_RUN_KWARGS, 373 - ), 374 - call( 375 - ["sudo", config_path / "bin/switch-to-configuration", "switch"], 376 - check=True, 377 - **(DEFAULT_RUN_KWARGS | {"env": {"NIXOS_INSTALL_BOOTLOADER": "1"}}), 378 - ), 379 - ] 380 381 382 @patch.dict(nr.process.os.environ, {}, clear=True) ··· 430 ] 431 ) 432 433 - assert mock_run.call_args_list == [ 434 - call( 435 - [ 436 - "nix-instantiate", 437 - "--find-file", 438 - "nixpkgs", 439 - "--include", 440 - "nixos-config=./configuration.nix", 441 - "--include", 442 - "nixpkgs=$HOME/.nix-defexpr/channels/pinned_nixpkgs", 443 - ], 444 - check=False, 445 - stdout=PIPE, 446 - **DEFAULT_RUN_KWARGS, 447 - ), 448 - call( 449 - [ 450 - "nix-instantiate", 451 - "<nixpkgs/nixos>", 452 - "--attr", 453 - "config.system.build.toplevel", 454 - "--add-root", 455 - nr.tmpdir.TMPDIR_PATH / "00000000000000000000000000000000", 456 - "--include", 457 - "nixos-config=./configuration.nix", 458 - "--include", 459 - "nixpkgs=$HOME/.nix-defexpr/channels/pinned_nixpkgs", 460 - ], 461 - check=True, 462 - stdout=PIPE, 463 - **DEFAULT_RUN_KWARGS, 464 - ), 465 - call( 466 - ["nix-copy-closure", "--to", "user@build-host", config_path], 467 - check=True, 468 - **DEFAULT_RUN_KWARGS, 469 - ), 470 - call( 471 - [ 472 - "ssh", 473 - *nr.process.SSH_DEFAULT_OPTS, 474 - "user@build-host", 475 - "--", 476 - "mktemp", 477 - "-d", 478 - "-t", 479 - "nixos-rebuild.XXXXX", 480 - ], 481 - check=True, 482 - stdout=PIPE, 483 - **DEFAULT_RUN_KWARGS, 484 - ), 485 - call( 486 - [ 487 - "ssh", 488 - *nr.process.SSH_DEFAULT_OPTS, 489 - "user@build-host", 490 - "--", 491 - "nix-store", 492 - "--realise", 493 - str(config_path), 494 - "--add-root", 495 - "/tmp/tmpdir/00000000000000000000000000000000", 496 - ], 497 - check=True, 498 - stdout=PIPE, 499 - **DEFAULT_RUN_KWARGS, 500 - ), 501 - call( 502 - [ 503 - "ssh", 504 - *nr.process.SSH_DEFAULT_OPTS, 505 - "user@build-host", 506 - "--", 507 - "readlink", 508 - "-f", 509 - "/tmp/tmpdir/config", 510 - ], 511 - check=True, 512 - stdout=PIPE, 513 - **DEFAULT_RUN_KWARGS, 514 - ), 515 - call( 516 - [ 517 - "ssh", 518 - *nr.process.SSH_DEFAULT_OPTS, 519 - "user@build-host", 520 - "--", 521 - "rm", 522 - "-rf", 523 - "/tmp/tmpdir", 524 - ], 525 - check=False, 526 - **DEFAULT_RUN_KWARGS, 527 - ), 528 - call( 529 - [ 530 - "nix", 531 - "copy", 532 - "--from", 533 - "ssh://user@build-host", 534 - "--to", 535 - "ssh://user@target-host", 536 - config_path, 537 - ], 538 - check=True, 539 - **DEFAULT_RUN_KWARGS, 540 - ), 541 - call( 542 - [ 543 - "ssh", 544 - *nr.process.SSH_DEFAULT_OPTS, 545 - "user@target-host", 546 - "--", 547 - "sudo", 548 - "nix-env", 549 - "-p", 550 - "/nix/var/nix/profiles/system", 551 - "--set", 552 - str(config_path), 553 - ], 554 - check=True, 555 - **DEFAULT_RUN_KWARGS, 556 - ), 557 - call( 558 - [ 559 - "ssh", 560 - *nr.process.SSH_DEFAULT_OPTS, 561 - "user@target-host", 562 - "--", 563 - "sudo", 564 - "env", 565 - "NIXOS_INSTALL_BOOTLOADER=0", 566 - str(config_path / "bin/switch-to-configuration"), 567 - "switch", 568 - ], 569 - check=True, 570 - **DEFAULT_RUN_KWARGS, 571 - ), 572 - ] 573 574 575 @patch.dict(nr.process.os.environ, {}, clear=True) ··· 604 ] 605 ) 606 607 - assert mock_run.call_args_list == [ 608 - call( 609 - [ 610 - "nix", 611 - "--extra-experimental-features", 612 - "nix-command flakes", 613 - "build", 614 - "--print-out-paths", 615 - "/path/to/config#nixosConfigurations.hostname.config.system.build.toplevel", 616 - "--no-link", 617 - ], 618 - check=True, 619 - stdout=PIPE, 620 - **DEFAULT_RUN_KWARGS, 621 - ), 622 - call( 623 - ["nix-copy-closure", "--to", "user@localhost", config_path], 624 - check=True, 625 - **DEFAULT_RUN_KWARGS, 626 - ), 627 - call( 628 - [ 629 - "ssh", 630 - *nr.process.SSH_DEFAULT_OPTS, 631 - "user@localhost", 632 - "--", 633 - "sudo", 634 - "nix-env", 635 - "-p", 636 - "/nix/var/nix/profiles/system", 637 - "--set", 638 - str(config_path), 639 - ], 640 - check=True, 641 - **DEFAULT_RUN_KWARGS, 642 - ), 643 - call( 644 - [ 645 - "ssh", 646 - *nr.process.SSH_DEFAULT_OPTS, 647 - "user@localhost", 648 - "--", 649 - "sudo", 650 - "env", 651 - "NIXOS_INSTALL_BOOTLOADER=0", 652 - str(config_path / "bin/switch-to-configuration"), 653 - "switch", 654 - ], 655 - check=True, 656 - **DEFAULT_RUN_KWARGS, 657 - ), 658 - ] 659 660 661 @patch.dict(nr.process.os.environ, {}, clear=True) ··· 691 ] 692 ) 693 694 - assert mock_run.call_args_list == [ 695 - call( 696 - [ 697 - "nix", 698 - "--extra-experimental-features", 699 - "nix-command flakes", 700 - "eval", 701 - "--raw", 702 - "/path/to/config#nixosConfigurations.hostname.config.system.build.toplevel.drvPath", 703 - ], 704 - check=True, 705 - stdout=PIPE, 706 - **DEFAULT_RUN_KWARGS, 707 - ), 708 - call( 709 - ["nix-copy-closure", "--to", "user@localhost", config_path], 710 - check=True, 711 - **DEFAULT_RUN_KWARGS, 712 - ), 713 - call( 714 - [ 715 - "ssh", 716 - *nr.process.SSH_DEFAULT_OPTS, 717 - "user@localhost", 718 - "--", 719 - "nix", 720 - "--extra-experimental-features", 721 - "'nix-command flakes'", 722 - "build", 723 - f"'{config_path}^*'", 724 - "--print-out-paths", 725 - "--no-link", 726 - ], 727 - check=True, 728 - stdout=PIPE, 729 - **DEFAULT_RUN_KWARGS, 730 - ), 731 - call( 732 - [ 733 - "nix-copy-closure", 734 - "--from", 735 - "user@localhost", 736 - config_path, 737 - ], 738 - check=True, 739 - **DEFAULT_RUN_KWARGS, 740 - ), 741 - call( 742 - [ 743 - "nix-env", 744 - "-p", 745 - Path("/nix/var/nix/profiles/system"), 746 - "--set", 747 - config_path, 748 - ], 749 - check=True, 750 - **DEFAULT_RUN_KWARGS, 751 - ), 752 - call( 753 - [config_path / "bin/switch-to-configuration", "switch"], 754 - check=True, 755 - **DEFAULT_RUN_KWARGS, 756 - ), 757 - ] 758 759 760 @patch(get_qualified_name(nr.process.subprocess.run), autospec=True) ··· 783 ] 784 ) 785 786 - assert mock_run.call_args_list == [ 787 - call( 788 - ["nix-instantiate", "--find-file", "nixpkgs"], 789 - check=False, 790 - stdout=PIPE, 791 - **DEFAULT_RUN_KWARGS, 792 - ), 793 - call( 794 - [ 795 - "git", 796 - "-C", 797 - nixpkgs_path, 798 - "rev-parse", 799 - "--short", 800 - "HEAD", 801 - ], 802 - check=False, 803 - capture_output=True, 804 - **DEFAULT_RUN_KWARGS, 805 - ), 806 - call( 807 - [ 808 - "nix-env", 809 - "--rollback", 810 - "-p", 811 - Path("/nix/var/nix/profiles/system"), 812 - ], 813 - check=True, 814 - **DEFAULT_RUN_KWARGS, 815 - ), 816 - call( 817 - [ 818 - Path("/nix/var/nix/profiles/system/bin/switch-to-configuration"), 819 - "switch", 820 - ], 821 - check=True, 822 - **DEFAULT_RUN_KWARGS, 823 - ), 824 - ] 825 826 827 @patch(get_qualified_name(nr.process.subprocess.run), autospec=True) ··· 835 836 nr.execute(["nixos-rebuild", "build", "--no-flake", "--no-reexec"]) 837 838 - assert mock_run.call_args_list == [ 839 - call( 840 - [ 841 - "nix-build", 842 - "<nixpkgs/nixos>", 843 - "--attr", 844 - "config.system.build.toplevel", 845 - ], 846 - check=True, 847 - stdout=PIPE, 848 - **DEFAULT_RUN_KWARGS, 849 - ) 850 - ] 851 852 853 @patch(get_qualified_name(nr.process.subprocess.run), autospec=True) ··· 867 ["nixos-rebuild", "test", "--flake", "github:user/repo#hostname", "--no-reexec"] 868 ) 869 870 - assert mock_run.call_args_list == [ 871 - call( 872 - [ 873 - "nix", 874 - "--extra-experimental-features", 875 - "nix-command flakes", 876 - "build", 877 - "--print-out-paths", 878 - "github:user/repo#nixosConfigurations.hostname.config.system.build.toplevel", 879 - ], 880 - check=True, 881 - stdout=PIPE, 882 - **DEFAULT_RUN_KWARGS, 883 - ), 884 - call( 885 - [config_path / "bin/switch-to-configuration", "test"], 886 - check=True, 887 - **DEFAULT_RUN_KWARGS, 888 - ), 889 - ] 890 891 892 @patch(get_qualified_name(nr.process.subprocess.run), autospec=True) ··· 917 ["nixos-rebuild", "test", "--rollback", "--profile-name", "foo", "--no-reexec"] 918 ) 919 920 - assert mock_run.call_args_list == [ 921 - call( 922 - [ 923 - "nix-env", 924 - "-p", 925 - Path("/nix/var/nix/profiles/system-profiles/foo"), 926 - "--list-generations", 927 - ], 928 - check=True, 929 - stdout=PIPE, 930 - **DEFAULT_RUN_KWARGS, 931 - ), 932 - call( 933 - [ 934 - Path( 935 - "/nix/var/nix/profiles/system-profiles/foo-2083-link/bin/switch-to-configuration" 936 - ), 937 - "test", 938 - ], 939 - check=True, 940 - **DEFAULT_RUN_KWARGS, 941 - ), 942 - ]
··· 7 from unittest.mock import ANY, Mock, call, patch 8 9 import pytest 10 + from pytest import MonkeyPatch 11 12 import nixos_rebuild as nr 13 ··· 126 ] 127 128 129 + @patch.dict(nr.os.environ, {}, clear=True) 130 + @patch(get_qualified_name(nr.os.execve, nr.os), autospec=True) 131 + @patch(get_qualified_name(nr.nix.build), autospec=True) 132 + def test_reexec(mock_build: Mock, mock_execve: Mock, monkeypatch: MonkeyPatch) -> None: 133 + monkeypatch.setattr(nr, "EXECUTABLE", "nixos-rebuild-ng") 134 + argv = ["/path/bin/nixos-rebuild-ng", "switch", "--no-flake"] 135 + args, _ = nr.parse_args(argv) 136 + mock_build.return_value = Path("/path") 137 + 138 + nr.reexec(argv, args, {"build": True}, {"flake": True}) 139 + mock_build.assert_has_calls( 140 + [ 141 + call( 142 + "config.system.build.nixos-rebuild", 143 + nr.models.BuildAttr(ANY, ANY), 144 + {"build": True, "no_out_link": True}, 145 + ) 146 + ] 147 + ) 148 + # do not exec if there is no new version 149 + mock_execve.assert_not_called() 150 + 151 + mock_build.return_value = Path("/path/new") 152 + 153 + nr.reexec(argv, args, {}, {}) 154 + # exec in the new version successfully 155 + mock_execve.assert_called_once_with( 156 + Path("/path/new/bin/nixos-rebuild-ng"), 157 + ["/path/bin/nixos-rebuild-ng", "switch", "--no-flake"], 158 + {"_NIXOS_REBUILD_REEXEC": "1"}, 159 + ) 160 + 161 + mock_execve.reset_mock() 162 + mock_execve.side_effect = [OSError("BOOM"), None] 163 + 164 + nr.reexec(argv, args, {}, {}) 165 + # exec in the previous version if the new version fails 166 + mock_execve.assert_any_call( 167 + Path("/path/bin/nixos-rebuild-ng"), 168 + ["/path/bin/nixos-rebuild-ng", "switch", "--no-flake"], 169 + {"_NIXOS_REBUILD_REEXEC": "1"}, 170 + ) 171 + 172 + 173 + @patch.dict(nr.os.environ, {}, clear=True) 174 + @patch(get_qualified_name(nr.os.execve, nr.os), autospec=True) 175 + @patch(get_qualified_name(nr.nix.build_flake), autospec=True) 176 + def test_reexec_flake( 177 + mock_build: Mock, mock_execve: Mock, monkeypatch: MonkeyPatch 178 + ) -> None: 179 + monkeypatch.setattr(nr, "EXECUTABLE", "nixos-rebuild-ng") 180 + argv = ["/path/bin/nixos-rebuild-ng", "switch", "--flake"] 181 + args, _ = nr.parse_args(argv) 182 + mock_build.return_value = Path("/path") 183 + 184 + nr.reexec(argv, args, {"build": True}, {"flake": True}) 185 + mock_build.assert_called_once_with( 186 + "config.system.build.nixos-rebuild", 187 + nr.models.Flake(ANY, ANY), 188 + {"flake": True, "no_link": True}, 189 + ) 190 + # do not exec if there is no new version 191 + mock_execve.assert_not_called() 192 + 193 + mock_build.return_value = Path("/path/new") 194 + 195 + nr.reexec(argv, args, {}, {}) 196 + # exec in the new version successfully 197 + mock_execve.assert_called_once_with( 198 + Path("/path/new/bin/nixos-rebuild-ng"), 199 + ["/path/bin/nixos-rebuild-ng", "switch", "--flake"], 200 + {"_NIXOS_REBUILD_REEXEC": "1"}, 201 + ) 202 + 203 + mock_execve.reset_mock() 204 + mock_execve.side_effect = [OSError("BOOM"), None] 205 + 206 + nr.reexec(argv, args, {}, {}) 207 + # exec in the previous version if the new version fails 208 + mock_execve.assert_any_call( 209 + Path("/path/bin/nixos-rebuild-ng"), 210 + ["/path/bin/nixos-rebuild-ng", "switch", "--flake"], 211 + {"_NIXOS_REBUILD_REEXEC": "1"}, 212 + ) 213 + 214 + 215 @patch.dict(nr.process.os.environ, {}, clear=True) 216 @patch(get_qualified_name(nr.process.subprocess.run), autospec=True) 217 def test_execute_nix_boot(mock_run: Mock, tmp_path: Path) -> None: ··· 234 235 nr.execute(["nixos-rebuild", "boot", "--no-flake", "-vvv", "--no-reexec"]) 236 237 + assert mock_run.call_count == 6 238 + mock_run.assert_has_calls( 239 + [ 240 + call( 241 + ["nix-instantiate", "--find-file", "nixpkgs", "-vvv"], 242 + stdout=PIPE, 243 + check=False, 244 + **DEFAULT_RUN_KWARGS, 245 + ), 246 + call( 247 + ["git", "-C", nixpkgs_path, "rev-parse", "--short", "HEAD"], 248 + check=False, 249 + capture_output=True, 250 + **DEFAULT_RUN_KWARGS, 251 + ), 252 + call( 253 + ["git", "-C", nixpkgs_path, "diff", "--quiet"], 254 + check=False, 255 + **DEFAULT_RUN_KWARGS, 256 + ), 257 + call( 258 + [ 259 + "nix-build", 260 + "<nixpkgs/nixos>", 261 + "--attr", 262 + "config.system.build.toplevel", 263 + "-vvv", 264 + "--no-out-link", 265 + ], 266 + check=True, 267 + stdout=PIPE, 268 + **DEFAULT_RUN_KWARGS, 269 + ), 270 + call( 271 + [ 272 + "nix-env", 273 + "-p", 274 + Path("/nix/var/nix/profiles/system"), 275 + "--set", 276 + config_path, 277 + ], 278 + check=True, 279 + **DEFAULT_RUN_KWARGS, 280 + ), 281 + call( 282 + [config_path / "bin/switch-to-configuration", "boot"], 283 + check=True, 284 + **(DEFAULT_RUN_KWARGS | {"env": {"NIXOS_INSTALL_BOOTLOADER": "0"}}), 285 + ), 286 + ] 287 + ) 288 289 290 @patch.dict(nr.process.os.environ, {}, clear=True) ··· 314 ] 315 ) 316 317 + assert mock_run.call_count == 1 318 + mock_run.assert_has_calls( 319 + [ 320 + call( 321 + [ 322 + "nix-build", 323 + "<nixpkgs/nixos>", 324 + "--attr", 325 + "config.system.build.vm", 326 + "--include", 327 + "nixos-config=./configuration.nix", 328 + "--include", 329 + "nixpkgs=$HOME/.nix-defexpr/channels/pinned_nixpkgs", 330 + ], 331 + check=True, 332 + stdout=PIPE, 333 + **DEFAULT_RUN_KWARGS, 334 + ) 335 + ] 336 + ) 337 338 339 @patch.dict(nr.process.os.environ, {}, clear=True) ··· 372 ] 373 ) 374 375 + assert mock_run.call_count == 2 376 + mock_run.assert_has_calls( 377 + [ 378 + call( 379 + [ 380 + "nix", 381 + "eval", 382 + "--json", 383 + "/path/to/config#nixosConfigurations.hostname.config.system.build.images", 384 + "--apply", 385 + "builtins.mapAttrs (n: v: v.passthru.filePath)", 386 + ], 387 + check=True, 388 + stdout=PIPE, 389 + **DEFAULT_RUN_KWARGS, 390 + ), 391 + call( 392 + [ 393 + "nix", 394 + "--extra-experimental-features", 395 + "nix-command flakes", 396 + "build", 397 + "--print-out-paths", 398 + "/path/to/config#nixosConfigurations.hostname.config.system.build.images.azure", 399 + ], 400 + check=True, 401 + stdout=PIPE, 402 + **DEFAULT_RUN_KWARGS, 403 + ), 404 + ] 405 + ) 406 407 408 @patch.dict(nr.process.os.environ, {}, clear=True) ··· 436 ] 437 ) 438 439 + assert mock_run.call_count == 3 440 + mock_run.assert_has_calls( 441 + [ 442 + call( 443 + [ 444 + "nix", 445 + "--extra-experimental-features", 446 + "nix-command flakes", 447 + "build", 448 + "--print-out-paths", 449 + "/path/to/config#nixosConfigurations.hostname.config.system.build.toplevel", 450 + "-v", 451 + "--option", 452 + "narinfo-cache-negative-ttl", 453 + "1200", 454 + "--no-link", 455 + ], 456 + check=True, 457 + stdout=PIPE, 458 + **DEFAULT_RUN_KWARGS, 459 + ), 460 + call( 461 + [ 462 + "sudo", 463 + "nix-env", 464 + "-p", 465 + Path("/nix/var/nix/profiles/system"), 466 + "--set", 467 + config_path, 468 + ], 469 + check=True, 470 + **DEFAULT_RUN_KWARGS, 471 + ), 472 + call( 473 + ["sudo", config_path / "bin/switch-to-configuration", "switch"], 474 + check=True, 475 + **(DEFAULT_RUN_KWARGS | {"env": {"NIXOS_INSTALL_BOOTLOADER": "1"}}), 476 + ), 477 + ] 478 + ) 479 480 481 @patch.dict(nr.process.os.environ, {}, clear=True) ··· 529 ] 530 ) 531 532 + assert mock_run.call_count == 10 533 + mock_run.assert_has_calls( 534 + [ 535 + call( 536 + [ 537 + "nix-instantiate", 538 + "--find-file", 539 + "nixpkgs", 540 + "--include", 541 + "nixos-config=./configuration.nix", 542 + "--include", 543 + "nixpkgs=$HOME/.nix-defexpr/channels/pinned_nixpkgs", 544 + ], 545 + check=False, 546 + stdout=PIPE, 547 + **DEFAULT_RUN_KWARGS, 548 + ), 549 + call( 550 + [ 551 + "nix-instantiate", 552 + "<nixpkgs/nixos>", 553 + "--attr", 554 + "config.system.build.toplevel", 555 + "--add-root", 556 + nr.tmpdir.TMPDIR_PATH / "00000000000000000000000000000000", 557 + "--include", 558 + "nixos-config=./configuration.nix", 559 + "--include", 560 + "nixpkgs=$HOME/.nix-defexpr/channels/pinned_nixpkgs", 561 + ], 562 + check=True, 563 + stdout=PIPE, 564 + **DEFAULT_RUN_KWARGS, 565 + ), 566 + call( 567 + ["nix-copy-closure", "--to", "user@build-host", config_path], 568 + check=True, 569 + **DEFAULT_RUN_KWARGS, 570 + ), 571 + call( 572 + [ 573 + "ssh", 574 + *nr.process.SSH_DEFAULT_OPTS, 575 + "user@build-host", 576 + "--", 577 + "mktemp", 578 + "-d", 579 + "-t", 580 + "nixos-rebuild.XXXXX", 581 + ], 582 + check=True, 583 + stdout=PIPE, 584 + **DEFAULT_RUN_KWARGS, 585 + ), 586 + call( 587 + [ 588 + "ssh", 589 + *nr.process.SSH_DEFAULT_OPTS, 590 + "user@build-host", 591 + "--", 592 + "nix-store", 593 + "--realise", 594 + str(config_path), 595 + "--add-root", 596 + "/tmp/tmpdir/00000000000000000000000000000000", 597 + ], 598 + check=True, 599 + stdout=PIPE, 600 + **DEFAULT_RUN_KWARGS, 601 + ), 602 + call( 603 + [ 604 + "ssh", 605 + *nr.process.SSH_DEFAULT_OPTS, 606 + "user@build-host", 607 + "--", 608 + "readlink", 609 + "-f", 610 + "/tmp/tmpdir/config", 611 + ], 612 + check=True, 613 + stdout=PIPE, 614 + **DEFAULT_RUN_KWARGS, 615 + ), 616 + call( 617 + [ 618 + "ssh", 619 + *nr.process.SSH_DEFAULT_OPTS, 620 + "user@build-host", 621 + "--", 622 + "rm", 623 + "-rf", 624 + "/tmp/tmpdir", 625 + ], 626 + check=False, 627 + **DEFAULT_RUN_KWARGS, 628 + ), 629 + call( 630 + [ 631 + "nix", 632 + "copy", 633 + "--from", 634 + "ssh://user@build-host", 635 + "--to", 636 + "ssh://user@target-host", 637 + config_path, 638 + ], 639 + check=True, 640 + **DEFAULT_RUN_KWARGS, 641 + ), 642 + call( 643 + [ 644 + "ssh", 645 + *nr.process.SSH_DEFAULT_OPTS, 646 + "user@target-host", 647 + "--", 648 + "sudo", 649 + "nix-env", 650 + "-p", 651 + "/nix/var/nix/profiles/system", 652 + "--set", 653 + str(config_path), 654 + ], 655 + check=True, 656 + **DEFAULT_RUN_KWARGS, 657 + ), 658 + call( 659 + [ 660 + "ssh", 661 + *nr.process.SSH_DEFAULT_OPTS, 662 + "user@target-host", 663 + "--", 664 + "sudo", 665 + "env", 666 + "NIXOS_INSTALL_BOOTLOADER=0", 667 + str(config_path / "bin/switch-to-configuration"), 668 + "switch", 669 + ], 670 + check=True, 671 + **DEFAULT_RUN_KWARGS, 672 + ), 673 + ] 674 + ) 675 676 677 @patch.dict(nr.process.os.environ, {}, clear=True) ··· 706 ] 707 ) 708 709 + assert mock_run.call_count == 4 710 + mock_run.assert_has_calls( 711 + [ 712 + call( 713 + [ 714 + "nix", 715 + "--extra-experimental-features", 716 + "nix-command flakes", 717 + "build", 718 + "--print-out-paths", 719 + "/path/to/config#nixosConfigurations.hostname.config.system.build.toplevel", 720 + "--no-link", 721 + ], 722 + check=True, 723 + stdout=PIPE, 724 + **DEFAULT_RUN_KWARGS, 725 + ), 726 + call( 727 + ["nix-copy-closure", "--to", "user@localhost", config_path], 728 + check=True, 729 + **DEFAULT_RUN_KWARGS, 730 + ), 731 + call( 732 + [ 733 + "ssh", 734 + *nr.process.SSH_DEFAULT_OPTS, 735 + "user@localhost", 736 + "--", 737 + "sudo", 738 + "nix-env", 739 + "-p", 740 + "/nix/var/nix/profiles/system", 741 + "--set", 742 + str(config_path), 743 + ], 744 + check=True, 745 + **DEFAULT_RUN_KWARGS, 746 + ), 747 + call( 748 + [ 749 + "ssh", 750 + *nr.process.SSH_DEFAULT_OPTS, 751 + "user@localhost", 752 + "--", 753 + "sudo", 754 + "env", 755 + "NIXOS_INSTALL_BOOTLOADER=0", 756 + str(config_path / "bin/switch-to-configuration"), 757 + "switch", 758 + ], 759 + check=True, 760 + **DEFAULT_RUN_KWARGS, 761 + ), 762 + ] 763 + ) 764 765 766 @patch.dict(nr.process.os.environ, {}, clear=True) ··· 796 ] 797 ) 798 799 + assert mock_run.call_count == 6 800 + mock_run.assert_has_calls( 801 + [ 802 + call( 803 + [ 804 + "nix", 805 + "--extra-experimental-features", 806 + "nix-command flakes", 807 + "eval", 808 + "--raw", 809 + "/path/to/config#nixosConfigurations.hostname.config.system.build.toplevel.drvPath", 810 + ], 811 + check=True, 812 + stdout=PIPE, 813 + **DEFAULT_RUN_KWARGS, 814 + ), 815 + call( 816 + ["nix-copy-closure", "--to", "user@localhost", config_path], 817 + check=True, 818 + **DEFAULT_RUN_KWARGS, 819 + ), 820 + call( 821 + [ 822 + "ssh", 823 + *nr.process.SSH_DEFAULT_OPTS, 824 + "user@localhost", 825 + "--", 826 + "nix", 827 + "--extra-experimental-features", 828 + "'nix-command flakes'", 829 + "build", 830 + f"'{config_path}^*'", 831 + "--print-out-paths", 832 + "--no-link", 833 + ], 834 + check=True, 835 + stdout=PIPE, 836 + **DEFAULT_RUN_KWARGS, 837 + ), 838 + call( 839 + [ 840 + "nix-copy-closure", 841 + "--from", 842 + "user@localhost", 843 + config_path, 844 + ], 845 + check=True, 846 + **DEFAULT_RUN_KWARGS, 847 + ), 848 + call( 849 + [ 850 + "nix-env", 851 + "-p", 852 + Path("/nix/var/nix/profiles/system"), 853 + "--set", 854 + config_path, 855 + ], 856 + check=True, 857 + **DEFAULT_RUN_KWARGS, 858 + ), 859 + call( 860 + [config_path / "bin/switch-to-configuration", "switch"], 861 + check=True, 862 + **DEFAULT_RUN_KWARGS, 863 + ), 864 + ] 865 + ) 866 867 868 @patch(get_qualified_name(nr.process.subprocess.run), autospec=True) ··· 891 ] 892 ) 893 894 + assert mock_run.call_count == 4 895 + mock_run.assert_has_calls( 896 + [ 897 + call( 898 + ["nix-instantiate", "--find-file", "nixpkgs"], 899 + check=False, 900 + stdout=PIPE, 901 + **DEFAULT_RUN_KWARGS, 902 + ), 903 + call( 904 + [ 905 + "git", 906 + "-C", 907 + nixpkgs_path, 908 + "rev-parse", 909 + "--short", 910 + "HEAD", 911 + ], 912 + check=False, 913 + capture_output=True, 914 + **DEFAULT_RUN_KWARGS, 915 + ), 916 + call( 917 + [ 918 + "nix-env", 919 + "--rollback", 920 + "-p", 921 + Path("/nix/var/nix/profiles/system"), 922 + ], 923 + check=True, 924 + **DEFAULT_RUN_KWARGS, 925 + ), 926 + call( 927 + [ 928 + Path("/nix/var/nix/profiles/system/bin/switch-to-configuration"), 929 + "switch", 930 + ], 931 + check=True, 932 + **DEFAULT_RUN_KWARGS, 933 + ), 934 + ] 935 + ) 936 937 938 @patch(get_qualified_name(nr.process.subprocess.run), autospec=True) ··· 946 947 nr.execute(["nixos-rebuild", "build", "--no-flake", "--no-reexec"]) 948 949 + assert mock_run.call_count == 1 950 + mock_run.assert_has_calls( 951 + [ 952 + call( 953 + [ 954 + "nix-build", 955 + "<nixpkgs/nixos>", 956 + "--attr", 957 + "config.system.build.toplevel", 958 + ], 959 + check=True, 960 + stdout=PIPE, 961 + **DEFAULT_RUN_KWARGS, 962 + ) 963 + ] 964 + ) 965 966 967 @patch(get_qualified_name(nr.process.subprocess.run), autospec=True) ··· 981 ["nixos-rebuild", "test", "--flake", "github:user/repo#hostname", "--no-reexec"] 982 ) 983 984 + assert mock_run.call_count == 2 985 + mock_run.assert_has_calls( 986 + [ 987 + call( 988 + [ 989 + "nix", 990 + "--extra-experimental-features", 991 + "nix-command flakes", 992 + "build", 993 + "--print-out-paths", 994 + "github:user/repo#nixosConfigurations.hostname.config.system.build.toplevel", 995 + ], 996 + check=True, 997 + stdout=PIPE, 998 + **DEFAULT_RUN_KWARGS, 999 + ), 1000 + call( 1001 + [config_path / "bin/switch-to-configuration", "test"], 1002 + check=True, 1003 + **DEFAULT_RUN_KWARGS, 1004 + ), 1005 + ] 1006 + ) 1007 1008 1009 @patch(get_qualified_name(nr.process.subprocess.run), autospec=True) ··· 1034 ["nixos-rebuild", "test", "--rollback", "--profile-name", "foo", "--no-reexec"] 1035 ) 1036 1037 + assert mock_run.call_count == 2 1038 + mock_run.assert_has_calls( 1039 + [ 1040 + call( 1041 + [ 1042 + "nix-env", 1043 + "-p", 1044 + Path("/nix/var/nix/profiles/system-profiles/foo"), 1045 + "--list-generations", 1046 + ], 1047 + check=True, 1048 + stdout=PIPE, 1049 + **DEFAULT_RUN_KWARGS, 1050 + ), 1051 + call( 1052 + [ 1053 + Path( 1054 + "/nix/var/nix/profiles/system-profiles/foo-2083-link/bin/switch-to-configuration" 1055 + ), 1056 + "test", 1057 + ], 1058 + check=True, 1059 + **DEFAULT_RUN_KWARGS, 1060 + ), 1061 + ] 1062 + )
+146 -149
pkgs/by-name/ni/nixos-rebuild-ng/src/tests/test_nix.py
··· 26 m.BuildAttr("<nixpkgs/nixos>", None), 27 {"nix_flag": "foo"}, 28 ) == Path("/path/to/file") 29 - assert mock_run.call_args == call( 30 [ 31 "nix-build", 32 "<nixpkgs/nixos>", ··· 38 stdout=PIPE, 39 ) 40 41 - mock_run.reset_mock() 42 - 43 assert n.build( 44 "config.system.build.attr", m.BuildAttr(Path("file"), "preAttr") 45 ) == Path("/path/to/file") 46 - assert mock_run.call_args_list == [ 47 - call( 48 - ["nix-build", Path("file"), "--attr", "preAttr.config.system.build.attr"], 49 - stdout=PIPE, 50 - ) 51 - ] 52 53 54 @patch( ··· 65 flake, 66 {"no_link": True, "nix_flag": "foo"}, 67 ) == Path("/path/to/file") 68 - assert mock_run.call_args == call( 69 [ 70 "nix", 71 "--extra-experimental-features", ··· 114 instantiate_flags={"inst": True}, 115 copy_flags={"copy": True}, 116 ) == Path("/path/to/config") 117 - assert mock_run.call_args_list == [ 118 - call( 119 - [ 120 - "nix-instantiate", 121 - "<nixpkgs/nixos>", 122 - "--attr", 123 - "preAttr.config.system.build.toplevel", 124 - "--add-root", 125 - n.tmpdir.TMPDIR_PATH / "00000000000000000000000000000001", 126 - "--inst", 127 - ], 128 - stdout=PIPE, 129 - ), 130 - call( 131 - [ 132 - "nix-copy-closure", 133 - "--copy", 134 - "--to", 135 - "user@host", 136 - Path("/path/to/file"), 137 - ], 138 - extra_env={"NIX_SSHOPTS": " ".join([*p.SSH_DEFAULT_OPTS, "--ssh opts"])}, 139 - ), 140 - call( 141 - ["mktemp", "-d", "-t", "nixos-rebuild.XXXXX"], 142 - remote=build_host, 143 - stdout=PIPE, 144 - ), 145 - call( 146 - [ 147 - "nix-store", 148 - "--realise", 149 - Path("/path/to/file"), 150 - "--add-root", 151 - Path("/tmp/tmpdir/00000000000000000000000000000002"), 152 - "--realise", 153 - ], 154 - remote=build_host, 155 - stdout=PIPE, 156 - ), 157 - call( 158 - ["readlink", "-f", "/tmp/tmpdir/config"], 159 - remote=build_host, 160 - stdout=PIPE, 161 - ), 162 - call(["rm", "-rf", Path("/tmp/tmpdir")], remote=build_host, check=False), 163 - ] 164 165 166 @patch( ··· 184 copy_flags={"copy": True}, 185 flake_build_flags={"build": True}, 186 ) == Path("/path/to/file") 187 - assert mock_run.call_args_list == [ 188 - call( 189 - [ 190 - "nix", 191 - "--extra-experimental-features", 192 - "nix-command flakes", 193 - "eval", 194 - "--raw", 195 - ".#nixosConfigurations.hostname.config.system.build.toplevel.drvPath", 196 - "--flake", 197 - ], 198 - stdout=PIPE, 199 - ), 200 - call( 201 - [ 202 - "nix-copy-closure", 203 - "--copy", 204 - "--to", 205 - "user@host", 206 - Path("/path/to/file"), 207 - ], 208 - extra_env={"NIX_SSHOPTS": " ".join([*p.SSH_DEFAULT_OPTS, "--ssh opts"])}, 209 - ), 210 - call( 211 - [ 212 - "nix", 213 - "--extra-experimental-features", 214 - "nix-command flakes", 215 - "build", 216 - "/path/to/file^*", 217 - "--print-out-paths", 218 - "--build", 219 - ], 220 - remote=build_host, 221 - stdout=PIPE, 222 - ), 223 - ] 224 225 226 def test_copy_closure(monkeypatch: MonkeyPatch) -> None: ··· 233 build_host = m.Remote("user@build.host", [], None) 234 with patch(get_qualified_name(n.run_wrapper, n), autospec=True) as mock_run: 235 n.copy_closure(closure, target_host) 236 - assert mock_run.call_args == call( 237 ["nix-copy-closure", "--to", "user@target.host", closure], 238 extra_env={"NIX_SSHOPTS": " ".join(p.SSH_DEFAULT_OPTS)}, 239 ) ··· 241 monkeypatch.setenv("NIX_SSHOPTS", "--ssh build-opt") 242 with patch(get_qualified_name(n.run_wrapper, n), autospec=True) as mock_run: 243 n.copy_closure(closure, None, build_host, {"copy_flag": True}) 244 - assert mock_run.call_args == call( 245 ["nix-copy-closure", "--copy-flag", "--from", "user@build.host", closure], 246 extra_env={ 247 "NIX_SSHOPTS": " ".join([*p.SSH_DEFAULT_OPTS, "--ssh build-opt"]) ··· 255 } 256 with patch(get_qualified_name(n.run_wrapper, n), autospec=True) as mock_run: 257 n.copy_closure(closure, target_host, build_host, {"copy_flag": True}) 258 - assert mock_run.call_args == call( 259 [ 260 "nix", 261 "copy", ··· 272 monkeypatch.setattr(n, "WITH_NIX_2_18", False) 273 with patch(get_qualified_name(n.run_wrapper, n), autospec=True) as mock_run: 274 n.copy_closure(closure, target_host, build_host) 275 - assert mock_run.call_args_list == [ 276 - call( 277 - ["nix-copy-closure", "--from", "user@build.host", closure], 278 - extra_env=extra_env, 279 - ), 280 - call( 281 - ["nix-copy-closure", "--to", "user@target.host", closure], 282 - extra_env=extra_env, 283 - ), 284 - ] 285 286 287 @patch(get_qualified_name(n.run_wrapper, n), autospec=True) ··· 289 # Flake 290 flake = m.Flake.parse(f"{tmpdir}#attr") 291 n.edit(flake, {"commit_lock_file": True}) 292 - assert mock_run.call_args == call( 293 [ 294 "nix", 295 "--extra-experimental-features", ··· 311 mp.setenv("EDITOR", "editor") 312 313 n.edit(None) 314 - assert mock_run.call_args == call(["editor", default_nix], check=False) 315 316 317 @patch( ··· 334 "azure": "nixos-image-azure-25.05.20250102.6df2492-x86_64-linux.vhd", 335 "vmware": "nixos-image-vmware-25.05.20250102.6df2492-x86_64-linux.vmdk", 336 } 337 - assert mock_run.call_args == call( 338 [ 339 "nix-instantiate", 340 "--eval", ··· 352 stdout=PIPE, 353 ) 354 355 - mock_run.reset_mock() 356 - 357 build_attr = m.BuildAttr(Path(tmp_path), "preAttr") 358 assert n.get_build_image_variants(build_attr, {"inst_flag": True}) == { 359 "azure": "nixos-image-azure-25.05.20250102.6df2492-x86_64-linux.vhd", 360 "vmware": "nixos-image-vmware-25.05.20250102.6df2492-x86_64-linux.vmdk", 361 } 362 - assert mock_run.call_args == call( 363 [ 364 "nix-instantiate", 365 "--eval", ··· 399 "azure": "nixos-image-azure-25.05.20250102.6df2492-x86_64-linux.vhd", 400 "vmware": "nixos-image-vmware-25.05.20250102.6df2492-x86_64-linux.vmdk", 401 } 402 - assert mock_run.call_args == call( 403 [ 404 "nix", 405 "eval", ··· 424 side_effect=[CompletedProcess([], 0, "")], 425 ) as mock_run: 426 assert n.get_nixpkgs_rev(path) is None 427 - assert mock_run.call_args == call( 428 ["git", "-C", path, "rev-parse", "--short", "HEAD"], 429 check=False, 430 capture_output=True, ··· 451 ], 452 ) as mock_run: 453 assert n.get_nixpkgs_rev(path) == ".git.0f7c82403fd6" 454 - assert mock_run.call_args_list == expected_calls 455 456 with patch( 457 get_qualified_name(n.run_wrapper, n), ··· 462 ], 463 ) as mock_run: 464 assert n.get_nixpkgs_rev(path) == ".git.0f7c82403fd6M" 465 - assert mock_run.call_args_list == expected_calls 466 467 468 def test_get_generations(tmp_path: Path) -> None: ··· 503 m.Generation(id=2083, current=False, timestamp="2024-11-07 22:59:41"), 504 m.Generation(id=2084, current=True, timestamp="2024-11-07 23:54:17"), 505 ] 506 - assert mock_run.call_args == call( 507 ["nix-env", "-p", path, "--list-generations"], 508 stdout=PIPE, 509 remote=None, ··· 521 m.Generation(id=2083, current=False, timestamp="2024-11-07 22:59:41"), 522 m.Generation(id=2084, current=True, timestamp="2024-11-07 23:54:17"), 523 ] 524 - assert mock_run.call_args == call( 525 ["nix-env", "-p", path, "--list-generations"], 526 stdout=PIPE, 527 remote=remote, ··· 573 @patch(get_qualified_name(n.run_wrapper, n), autospec=True) 574 def test_repl(mock_run: Mock) -> None: 575 n.repl("attr", m.BuildAttr("<nixpkgs/nixos>", None), {"nix_flag": True}) 576 - assert mock_run.call_args == call( 577 ["nix", "repl", "--file", "<nixpkgs/nixos>", "--nix-flag"] 578 ) 579 580 n.repl("attr", m.BuildAttr(Path("file.nix"), "myAttr")) 581 - assert mock_run.call_args == call( 582 - ["nix", "repl", "--file", Path("file.nix"), "myAttr"] 583 - ) 584 585 586 @patch(get_qualified_name(n.run_wrapper, n), autospec=True) ··· 599 profile = m.Profile("system", path) 600 601 assert n.rollback(profile, None, False) == profile.path 602 - assert mock_run.call_args == call( 603 ["nix-env", "--rollback", "-p", path], 604 remote=None, 605 sudo=False, ··· 607 608 target_host = m.Remote("user@localhost", [], None) 609 assert n.rollback(profile, target_host, True) == profile.path 610 - assert mock_run.call_args == call( 611 ["nix-env", "--rollback", "-p", path], 612 remote=target_host, 613 sudo=True, ··· 619 path.touch() 620 profile = m.Profile("system", path) 621 622 - with patch( 623 - get_qualified_name(n.run_wrapper, n), 624 - autospec=True, 625 - return_value=CompletedProcess( 626 [], 627 0, 628 stdout=textwrap.dedent("""\ ··· 630 2083 2024-11-07 22:59:41 631 2084 2024-11-07 23:54:17 (current) 632 """), 633 - ), 634 - ) as mock_run: 635 assert ( 636 n.rollback_temporary_profile(m.Profile("system", path), None, False) 637 == path.parent / "system-2083-link" 638 ) 639 - assert mock_run.call_args == call( 640 [ 641 "nix-env", 642 "-p", ··· 653 n.rollback_temporary_profile(m.Profile("foo", path), target_host, True) 654 == path.parent / "foo-2083-link" 655 ) 656 - assert mock_run.call_args == call( 657 [ 658 "nix-env", 659 "-p", ··· 665 sudo=True, 666 ) 667 668 - with patch( 669 - get_qualified_name(n.run_wrapper, n), 670 - autospec=True, 671 - return_value=CompletedProcess([], 0, stdout=""), 672 - ) as mock_run: 673 assert n.rollback_temporary_profile(profile, None, False) is None 674 675 ··· 684 sudo=False, 685 ) 686 687 - assert mock_run.call_args == call( 688 ["nix-env", "-p", profile_path, "--set", config_path], 689 remote=None, 690 sudo=False, ··· 707 specialisation=None, 708 install_bootloader=False, 709 ) 710 - assert mock_run.call_args == call( 711 [profile_path / "bin/switch-to-configuration", "switch"], 712 extra_env={"NIXOS_INSTALL_BOOTLOADER": "0"}, 713 sudo=False, ··· 741 install_bootloader=True, 742 specialisation="special", 743 ) 744 - assert mock_run.call_args == call( 745 [ 746 config_path / "specialisation/special/bin/switch-to-configuration", 747 "test", ··· 765 def test_upgrade_channels(mock_is_dir: Mock, mock_glob: Mock) -> None: 766 with patch(get_qualified_name(n.run_wrapper, n), autospec=True) as mock_run: 767 n.upgrade_channels(False) 768 - assert mock_run.call_args == call(["nix-channel", "--update", "nixos"], check=False) 769 - 770 - mock_run.reset_mock() 771 772 with patch(get_qualified_name(n.run_wrapper, n), autospec=True) as mock_run: 773 n.upgrade_channels(True) 774 - assert mock_run.call_args_list == [ 775 - call(["nix-channel", "--update", "nixos"], check=False), 776 - call(["nix-channel", "--update", "nixos-hardware"], check=False), 777 - call(["nix-channel", "--update", "home-manager"], check=False), 778 - ]
··· 26 m.BuildAttr("<nixpkgs/nixos>", None), 27 {"nix_flag": "foo"}, 28 ) == Path("/path/to/file") 29 + mock_run.assert_called_with( 30 [ 31 "nix-build", 32 "<nixpkgs/nixos>", ··· 38 stdout=PIPE, 39 ) 40 41 assert n.build( 42 "config.system.build.attr", m.BuildAttr(Path("file"), "preAttr") 43 ) == Path("/path/to/file") 44 + mock_run.assert_called_with( 45 + ["nix-build", Path("file"), "--attr", "preAttr.config.system.build.attr"], 46 + stdout=PIPE, 47 + ) 48 49 50 @patch( ··· 61 flake, 62 {"no_link": True, "nix_flag": "foo"}, 63 ) == Path("/path/to/file") 64 + mock_run.assert_called_with( 65 [ 66 "nix", 67 "--extra-experimental-features", ··· 110 instantiate_flags={"inst": True}, 111 copy_flags={"copy": True}, 112 ) == Path("/path/to/config") 113 + 114 + mock_run.assert_has_calls( 115 + [ 116 + call( 117 + [ 118 + "nix-instantiate", 119 + "<nixpkgs/nixos>", 120 + "--attr", 121 + "preAttr.config.system.build.toplevel", 122 + "--add-root", 123 + n.tmpdir.TMPDIR_PATH / "00000000000000000000000000000001", 124 + "--inst", 125 + ], 126 + stdout=PIPE, 127 + ), 128 + call( 129 + [ 130 + "nix-copy-closure", 131 + "--copy", 132 + "--to", 133 + "user@host", 134 + Path("/path/to/file"), 135 + ], 136 + extra_env={ 137 + "NIX_SSHOPTS": " ".join([*p.SSH_DEFAULT_OPTS, "--ssh opts"]) 138 + }, 139 + ), 140 + call( 141 + ["mktemp", "-d", "-t", "nixos-rebuild.XXXXX"], 142 + remote=build_host, 143 + stdout=PIPE, 144 + ), 145 + call( 146 + [ 147 + "nix-store", 148 + "--realise", 149 + Path("/path/to/file"), 150 + "--add-root", 151 + Path("/tmp/tmpdir/00000000000000000000000000000002"), 152 + "--realise", 153 + ], 154 + remote=build_host, 155 + stdout=PIPE, 156 + ), 157 + call( 158 + ["readlink", "-f", "/tmp/tmpdir/config"], 159 + remote=build_host, 160 + stdout=PIPE, 161 + ), 162 + call(["rm", "-rf", Path("/tmp/tmpdir")], remote=build_host, check=False), 163 + ] 164 + ) 165 166 167 @patch( ··· 185 copy_flags={"copy": True}, 186 flake_build_flags={"build": True}, 187 ) == Path("/path/to/file") 188 + mock_run.assert_has_calls( 189 + [ 190 + call( 191 + [ 192 + "nix", 193 + "--extra-experimental-features", 194 + "nix-command flakes", 195 + "eval", 196 + "--raw", 197 + ".#nixosConfigurations.hostname.config.system.build.toplevel.drvPath", 198 + "--flake", 199 + ], 200 + stdout=PIPE, 201 + ), 202 + call( 203 + [ 204 + "nix-copy-closure", 205 + "--copy", 206 + "--to", 207 + "user@host", 208 + Path("/path/to/file"), 209 + ], 210 + extra_env={ 211 + "NIX_SSHOPTS": " ".join([*p.SSH_DEFAULT_OPTS, "--ssh opts"]) 212 + }, 213 + ), 214 + call( 215 + [ 216 + "nix", 217 + "--extra-experimental-features", 218 + "nix-command flakes", 219 + "build", 220 + "/path/to/file^*", 221 + "--print-out-paths", 222 + "--build", 223 + ], 224 + remote=build_host, 225 + stdout=PIPE, 226 + ), 227 + ] 228 + ) 229 230 231 def test_copy_closure(monkeypatch: MonkeyPatch) -> None: ··· 238 build_host = m.Remote("user@build.host", [], None) 239 with patch(get_qualified_name(n.run_wrapper, n), autospec=True) as mock_run: 240 n.copy_closure(closure, target_host) 241 + mock_run.assert_called_with( 242 ["nix-copy-closure", "--to", "user@target.host", closure], 243 extra_env={"NIX_SSHOPTS": " ".join(p.SSH_DEFAULT_OPTS)}, 244 ) ··· 246 monkeypatch.setenv("NIX_SSHOPTS", "--ssh build-opt") 247 with patch(get_qualified_name(n.run_wrapper, n), autospec=True) as mock_run: 248 n.copy_closure(closure, None, build_host, {"copy_flag": True}) 249 + mock_run.assert_called_with( 250 ["nix-copy-closure", "--copy-flag", "--from", "user@build.host", closure], 251 extra_env={ 252 "NIX_SSHOPTS": " ".join([*p.SSH_DEFAULT_OPTS, "--ssh build-opt"]) ··· 260 } 261 with patch(get_qualified_name(n.run_wrapper, n), autospec=True) as mock_run: 262 n.copy_closure(closure, target_host, build_host, {"copy_flag": True}) 263 + mock_run.assert_called_with( 264 [ 265 "nix", 266 "copy", ··· 277 monkeypatch.setattr(n, "WITH_NIX_2_18", False) 278 with patch(get_qualified_name(n.run_wrapper, n), autospec=True) as mock_run: 279 n.copy_closure(closure, target_host, build_host) 280 + mock_run.assert_has_calls( 281 + [ 282 + call( 283 + ["nix-copy-closure", "--from", "user@build.host", closure], 284 + extra_env=extra_env, 285 + ), 286 + call( 287 + ["nix-copy-closure", "--to", "user@target.host", closure], 288 + extra_env=extra_env, 289 + ), 290 + ] 291 + ) 292 293 294 @patch(get_qualified_name(n.run_wrapper, n), autospec=True) ··· 296 # Flake 297 flake = m.Flake.parse(f"{tmpdir}#attr") 298 n.edit(flake, {"commit_lock_file": True}) 299 + mock_run.assert_called_with( 300 [ 301 "nix", 302 "--extra-experimental-features", ··· 318 mp.setenv("EDITOR", "editor") 319 320 n.edit(None) 321 + mock_run.assert_called_with(["editor", default_nix], check=False) 322 323 324 @patch( ··· 341 "azure": "nixos-image-azure-25.05.20250102.6df2492-x86_64-linux.vhd", 342 "vmware": "nixos-image-vmware-25.05.20250102.6df2492-x86_64-linux.vmdk", 343 } 344 + mock_run.assert_called_with( 345 [ 346 "nix-instantiate", 347 "--eval", ··· 359 stdout=PIPE, 360 ) 361 362 build_attr = m.BuildAttr(Path(tmp_path), "preAttr") 363 assert n.get_build_image_variants(build_attr, {"inst_flag": True}) == { 364 "azure": "nixos-image-azure-25.05.20250102.6df2492-x86_64-linux.vhd", 365 "vmware": "nixos-image-vmware-25.05.20250102.6df2492-x86_64-linux.vmdk", 366 } 367 + mock_run.assert_called_with( 368 [ 369 "nix-instantiate", 370 "--eval", ··· 404 "azure": "nixos-image-azure-25.05.20250102.6df2492-x86_64-linux.vhd", 405 "vmware": "nixos-image-vmware-25.05.20250102.6df2492-x86_64-linux.vmdk", 406 } 407 + mock_run.assert_called_with( 408 [ 409 "nix", 410 "eval", ··· 429 side_effect=[CompletedProcess([], 0, "")], 430 ) as mock_run: 431 assert n.get_nixpkgs_rev(path) is None 432 + mock_run.assert_called_with( 433 ["git", "-C", path, "rev-parse", "--short", "HEAD"], 434 check=False, 435 capture_output=True, ··· 456 ], 457 ) as mock_run: 458 assert n.get_nixpkgs_rev(path) == ".git.0f7c82403fd6" 459 + mock_run.assert_has_calls(expected_calls) 460 461 with patch( 462 get_qualified_name(n.run_wrapper, n), ··· 467 ], 468 ) as mock_run: 469 assert n.get_nixpkgs_rev(path) == ".git.0f7c82403fd6M" 470 + mock_run.assert_has_calls(expected_calls) 471 472 473 def test_get_generations(tmp_path: Path) -> None: ··· 508 m.Generation(id=2083, current=False, timestamp="2024-11-07 22:59:41"), 509 m.Generation(id=2084, current=True, timestamp="2024-11-07 23:54:17"), 510 ] 511 + mock_run.assert_called_with( 512 ["nix-env", "-p", path, "--list-generations"], 513 stdout=PIPE, 514 remote=None, ··· 526 m.Generation(id=2083, current=False, timestamp="2024-11-07 22:59:41"), 527 m.Generation(id=2084, current=True, timestamp="2024-11-07 23:54:17"), 528 ] 529 + mock_run.assert_called_with( 530 ["nix-env", "-p", path, "--list-generations"], 531 stdout=PIPE, 532 remote=remote, ··· 578 @patch(get_qualified_name(n.run_wrapper, n), autospec=True) 579 def test_repl(mock_run: Mock) -> None: 580 n.repl("attr", m.BuildAttr("<nixpkgs/nixos>", None), {"nix_flag": True}) 581 + mock_run.assert_called_with( 582 ["nix", "repl", "--file", "<nixpkgs/nixos>", "--nix-flag"] 583 ) 584 585 n.repl("attr", m.BuildAttr(Path("file.nix"), "myAttr")) 586 + mock_run.assert_called_with(["nix", "repl", "--file", Path("file.nix"), "myAttr"]) 587 588 589 @patch(get_qualified_name(n.run_wrapper, n), autospec=True) ··· 602 profile = m.Profile("system", path) 603 604 assert n.rollback(profile, None, False) == profile.path 605 + mock_run.assert_called_with( 606 ["nix-env", "--rollback", "-p", path], 607 remote=None, 608 sudo=False, ··· 610 611 target_host = m.Remote("user@localhost", [], None) 612 assert n.rollback(profile, target_host, True) == profile.path 613 + mock_run.assert_called_with( 614 ["nix-env", "--rollback", "-p", path], 615 remote=target_host, 616 sudo=True, ··· 622 path.touch() 623 profile = m.Profile("system", path) 624 625 + with patch(get_qualified_name(n.run_wrapper, n), autospec=True) as mock_run: 626 + mock_run.return_value = CompletedProcess( 627 [], 628 0, 629 stdout=textwrap.dedent("""\ ··· 631 2083 2024-11-07 22:59:41 632 2084 2024-11-07 23:54:17 (current) 633 """), 634 + ) 635 assert ( 636 n.rollback_temporary_profile(m.Profile("system", path), None, False) 637 == path.parent / "system-2083-link" 638 ) 639 + mock_run.assert_called_with( 640 [ 641 "nix-env", 642 "-p", ··· 653 n.rollback_temporary_profile(m.Profile("foo", path), target_host, True) 654 == path.parent / "foo-2083-link" 655 ) 656 + mock_run.assert_called_with( 657 [ 658 "nix-env", 659 "-p", ··· 665 sudo=True, 666 ) 667 668 + with patch(get_qualified_name(n.run_wrapper, n), autospec=True) as mock_run: 669 + mock_run.return_value = CompletedProcess([], 0, stdout="") 670 assert n.rollback_temporary_profile(profile, None, False) is None 671 672 ··· 681 sudo=False, 682 ) 683 684 + mock_run.assert_called_with( 685 ["nix-env", "-p", profile_path, "--set", config_path], 686 remote=None, 687 sudo=False, ··· 704 specialisation=None, 705 install_bootloader=False, 706 ) 707 + mock_run.assert_called_with( 708 [profile_path / "bin/switch-to-configuration", "switch"], 709 extra_env={"NIXOS_INSTALL_BOOTLOADER": "0"}, 710 sudo=False, ··· 738 install_bootloader=True, 739 specialisation="special", 740 ) 741 + mock_run.assert_called_with( 742 [ 743 config_path / "specialisation/special/bin/switch-to-configuration", 744 "test", ··· 762 def test_upgrade_channels(mock_is_dir: Mock, mock_glob: Mock) -> None: 763 with patch(get_qualified_name(n.run_wrapper, n), autospec=True) as mock_run: 764 n.upgrade_channels(False) 765 + mock_run.assert_called_once_with(["nix-channel", "--update", "nixos"], check=False) 766 767 with patch(get_qualified_name(n.run_wrapper, n), autospec=True) as mock_run: 768 n.upgrade_channels(True) 769 + mock_run.assert_has_calls( 770 + [ 771 + call(["nix-channel", "--update", "nixos"], check=False), 772 + call(["nix-channel", "--update", "nixos-hardware"], check=False), 773 + call(["nix-channel", "--update", "home-manager"], check=False), 774 + ] 775 + )
+7 -6
pkgs/by-name/ni/nixos-rebuild-ng/src/tests/test_process.py
··· 1 - from unittest.mock import Mock, call, patch 2 3 from pytest import MonkeyPatch 4 ··· 9 10 11 @patch(get_qualified_name(p.subprocess.run), autospec=True) 12 - def test_run(mock_run: Mock) -> None: 13 p.run_wrapper(["test", "--with", "flags"], check=True) 14 - assert mock_run.call_args == call( 15 ["test", "--with", "flags"], 16 check=True, 17 text=True, ··· 27 sudo=True, 28 extra_env={"FOO": "bar"}, 29 ) 30 - assert mock_run.call_args == call( 31 ["sudo", "test", "--with", "flags"], 32 check=False, 33 text=True, ··· 44 check=True, 45 remote=m.Remote("user@localhost", ["--ssh", "opt"], "password"), 46 ) 47 - assert mock_run.call_args == call( 48 [ 49 "ssh", 50 "--ssh", ··· 70 extra_env={"FOO": "bar"}, 71 remote=m.Remote("user@localhost", ["--ssh", "opt"], "password"), 72 ) 73 - assert mock_run.call_args == call( 74 [ 75 "ssh", 76 "--ssh",
··· 1 + from typing import Any 2 + from unittest.mock import patch 3 4 from pytest import MonkeyPatch 5 ··· 10 11 12 @patch(get_qualified_name(p.subprocess.run), autospec=True) 13 + def test_run(mock_run: Any) -> None: 14 p.run_wrapper(["test", "--with", "flags"], check=True) 15 + mock_run.assert_called_with( 16 ["test", "--with", "flags"], 17 check=True, 18 text=True, ··· 28 sudo=True, 29 extra_env={"FOO": "bar"}, 30 ) 31 + mock_run.assert_called_with( 32 ["sudo", "test", "--with", "flags"], 33 check=False, 34 text=True, ··· 45 check=True, 46 remote=m.Remote("user@localhost", ["--ssh", "opt"], "password"), 47 ) 48 + mock_run.assert_called_with( 49 [ 50 "ssh", 51 "--ssh", ··· 71 extra_env={"FOO": "bar"}, 72 remote=m.Remote("user@localhost", ["--ssh", "opt"], "password"), 73 ) 74 + mock_run.assert_called_with( 75 [ 76 "ssh", 77 "--ssh",
+4 -4
pkgs/by-name/ni/nixos-rebuild-ng/tests/repl.nix
··· 13 escapeExpect = lib.strings.escapeNixString; 14 15 expectSetup = '' 16 - set timeout 180 17 proc expect_simple { pattern } { 18 puts "Expecting: $pattern" 19 expect { ··· 76 77 expect ${writeText "test-nixos-rebuild-repl-expect" '' 78 ${expectSetup} 79 - spawn nixos-rebuild repl --fast 80 81 expect "nix-repl> " 82 ··· 116 117 expect ${writeText "test-nixos-rebuild-repl-absolute-path-expect" '' 118 ${expectSetup} 119 - spawn sh -c "nixos-rebuild repl --fast --flake path:\$HOME#testconf" 120 121 expect_simple "nix-repl>" 122 ··· 146 pushd "$HOME" 147 expect ${writeText "test-nixos-rebuild-repl-relative-path-expect" '' 148 ${expectSetup} 149 - spawn sh -c "nixos-rebuild repl --fast --flake .#testconf" 150 151 expect_simple "nix-repl>" 152
··· 13 escapeExpect = lib.strings.escapeNixString; 14 15 expectSetup = '' 16 + set timeout 300 17 proc expect_simple { pattern } { 18 puts "Expecting: $pattern" 19 expect { ··· 76 77 expect ${writeText "test-nixos-rebuild-repl-expect" '' 78 ${expectSetup} 79 + spawn nixos-rebuild repl --no-reexec 80 81 expect "nix-repl> " 82 ··· 116 117 expect ${writeText "test-nixos-rebuild-repl-absolute-path-expect" '' 118 ${expectSetup} 119 + spawn sh -c "nixos-rebuild repl --no-reexec --flake path:\$HOME#testconf" 120 121 expect_simple "nix-repl>" 122 ··· 146 pushd "$HOME" 147 expect ${writeText "test-nixos-rebuild-repl-relative-path-expect" '' 148 ${expectSetup} 149 + spawn sh -c "nixos-rebuild repl --no-reexec --flake .#testconf" 150 151 expect_simple "nix-repl>" 152
-1
pkgs/by-name/np/npth/package.nix
··· 25 26 meta = with lib; { 27 description = "New GNU Portable Threads Library"; 28 - mainProgram = "npth-config"; 29 longDescription = '' 30 This is a library to provide the GNU Pth API and thus a non-preemptive 31 threads implementation.
··· 25 26 meta = with lib; { 27 description = "New GNU Portable Threads Library"; 28 longDescription = '' 29 This is a library to provide the GNU Pth API and thus a non-preemptive 30 threads implementation.
+9 -7
pkgs/by-name/nr/nrfconnect/package.nix
··· 6 7 let 8 pname = "nrfconnect"; 9 - version = "4.4.1"; 10 11 src = fetchurl { 12 url = "https://nsscprodmedia.blob.core.windows.net/prod/software-and-other-downloads/desktop-software/nrf-connect-for-desktop/${lib.versions.major version}-${lib.versions.minor version}-${lib.versions.patch version}/nrfconnect-${version}-x86_64.appimage"; 13 - hash = "sha256-x/vVSOEajuQtLATRXk8DVLlXHegCqP+acecaOFNeBb8="; 14 name = "${pname}-${version}.AppImage"; 15 }; 16 ··· 22 appimageTools.wrapType2 { 23 inherit pname version src; 24 25 - extraPkgs = pkgs: [ pkgs.segger-jlink ]; 26 27 extraInstallCommands = '' 28 install -Dm444 ${appimageContents}/nrfconnect.desktop -t $out/share/applications ··· 32 --replace 'Exec=AppRun' 'Exec=nrfconnect' 33 ''; 34 35 - meta = with lib; { 36 description = "Nordic Semiconductor nRF Connect for Desktop"; 37 homepage = "https://www.nordicsemi.com/Products/Development-tools/nRF-Connect-for-desktop"; 38 - license = licenses.unfree; 39 - platforms = platforms.linux; 40 - maintainers = with maintainers; [ stargate01 ]; 41 mainProgram = "nrfconnect"; 42 }; 43 }
··· 6 7 let 8 pname = "nrfconnect"; 9 + version = "5.1.0"; 10 11 src = fetchurl { 12 url = "https://nsscprodmedia.blob.core.windows.net/prod/software-and-other-downloads/desktop-software/nrf-connect-for-desktop/${lib.versions.major version}-${lib.versions.minor version}-${lib.versions.patch version}/nrfconnect-${version}-x86_64.appimage"; 13 + hash = "sha256-QEoKIdi8tlZ86langbCYJXSO+dGONBEQPdwmREIhZBA="; 14 name = "${pname}-${version}.AppImage"; 15 }; 16 ··· 22 appimageTools.wrapType2 { 23 inherit pname version src; 24 25 + extraPkgs = pkgs: [ 26 + pkgs.segger-jlink-headless 27 + ]; 28 29 extraInstallCommands = '' 30 install -Dm444 ${appimageContents}/nrfconnect.desktop -t $out/share/applications ··· 34 --replace 'Exec=AppRun' 'Exec=nrfconnect' 35 ''; 36 37 + meta = { 38 description = "Nordic Semiconductor nRF Connect for Desktop"; 39 homepage = "https://www.nordicsemi.com/Products/Development-tools/nRF-Connect-for-desktop"; 40 + license = lib.licenses.unfree; 41 + platforms = lib.platforms.linux; 42 + maintainers = with lib.maintainers; [ stargate01 ]; 43 mainProgram = "nrfconnect"; 44 }; 45 }
+3 -3
pkgs/by-name/nu/nuclei/package.nix
··· 7 8 buildGoModule rec { 9 pname = "nuclei"; 10 - version = "3.3.8"; 11 12 src = fetchFromGitHub { 13 owner = "projectdiscovery"; 14 repo = "nuclei"; 15 tag = "v${version}"; 16 - hash = "sha256-RL6/H1X6+rt9n1rpeRpKv+u3SloOnRX6YzMKDDQw+78="; 17 }; 18 19 - vendorHash = "sha256-k4seYTUO7BmU2HhTWweDRfNnXp+HshWM1riSc9BbYYg="; 20 21 proxyVendor = true; # hash mismatch between Linux and Darwin 22
··· 7 8 buildGoModule rec { 9 pname = "nuclei"; 10 + version = "3.3.9"; 11 12 src = fetchFromGitHub { 13 owner = "projectdiscovery"; 14 repo = "nuclei"; 15 tag = "v${version}"; 16 + hash = "sha256-9P8KSuhTI/m0m51PUTZGU+qRbnT3izPbHTzsqZNbMJE="; 17 }; 18 19 + vendorHash = "sha256-CTdB/+aVaXKqtiwHn8pgmhXjZ0mIDrmLvnKmisExi74="; 20 21 proxyVendor = true; # hash mismatch between Linux and Darwin 22
+3 -5
pkgs/by-name/op/open-webui/package.nix
··· 7 }: 8 let 9 pname = "open-webui"; 10 - version = "0.5.11"; 11 12 src = fetchFromGitHub { 13 owner = "open-webui"; 14 repo = "open-webui"; 15 tag = "v${version}"; 16 - hash = "sha256-U+zY/Jgzo52x/H4xcW2/LjM52r+hdJvZ/xsIeAeJniE="; 17 }; 18 19 frontend = buildNpmPackage { 20 inherit pname version src; 21 22 - npmDepsHash = "sha256-bAzcNLMB8OqzYRfw9Cr0xuFFl4FIKvBQT/4M2nZP0C8="; 23 24 # Disabling `pyodide:fetch` as it downloads packages during `buildPhase` 25 # Until this is solved, running python packages from the browser will not work. ··· 89 fake-useragent 90 fastapi 91 faster-whisper 92 - flask 93 - flask-cors 94 fpdf2 95 ftfy 96 gcp-storage-emulator
··· 7 }: 8 let 9 pname = "open-webui"; 10 + version = "0.5.12"; 11 12 src = fetchFromGitHub { 13 owner = "open-webui"; 14 repo = "open-webui"; 15 tag = "v${version}"; 16 + hash = "sha256-+Hg4tyfmgfh3k/pUKMjs7IRahPV2/LRUDj1kt2g45Dw="; 17 }; 18 19 frontend = buildNpmPackage { 20 inherit pname version src; 21 22 + npmDepsHash = "sha256-pM8Ie3kkjVq9OJHKpGLQ1E/omd84B0N8lXAHKxUa8/4="; 23 24 # Disabling `pyodide:fetch` as it downloads packages during `buildPhase` 25 # Until this is solved, running python packages from the browser will not work. ··· 89 fake-useragent 90 fastapi 91 faster-whisper 92 fpdf2 93 ftfy 94 gcp-storage-emulator
+2 -2
pkgs/by-name/ph/photoqt/package.nix
··· 17 18 stdenv.mkDerivation rec { 19 pname = "photoqt"; 20 - version = "4.8"; 21 22 src = fetchurl { 23 url = "https://photoqt.org/pkgs/photoqt-${version}.tar.gz"; 24 - hash = "sha256-ccSbG5MTIyVJFqNHstaW53BfsGmN/I4ObCZfY0h22QE="; 25 }; 26 27 nativeBuildInputs = [
··· 17 18 stdenv.mkDerivation rec { 19 pname = "photoqt"; 20 + version = "4.8.1"; 21 22 src = fetchurl { 23 url = "https://photoqt.org/pkgs/photoqt-${version}.tar.gz"; 24 + hash = "sha256-Iq5Fc0v+EYFe1YG3ZhZKl8leXD+TpGGhaQjr800vz7Y="; 25 }; 26 27 nativeBuildInputs = [
+2 -11
pkgs/by-name/po/podman/package.nix
··· 75 in 76 buildGoModule rec { 77 pname = "podman"; 78 - version = "5.3.1"; 79 80 src = fetchFromGitHub { 81 owner = "containers"; 82 repo = "podman"; 83 rev = "v${version}"; 84 - hash = "sha256-kABP10QX4r11UDUcd6Sukb+9+LRm/ba3iATz6DTOJYw="; 85 }; 86 87 patches = [ ··· 91 92 # we intentionally don't build and install the helper so we shouldn't display messages to users about it 93 ./rm-podman-mac-helper-msg.patch 94 - 95 - # backport of fix for https://github.com/containers/storage/issues/2184 96 - # https://github.com/containers/storage/pull/2185 97 - (fetchpatch2 { 98 - url = "https://github.com/containers/storage/commit/99b0d2d423c8093807d8a1464437152cd04d7d95.diff?full_index=1"; 99 - hash = "sha256-aahYXnDf3qCOlb6MfVDqFKCcQG257r5sbh5qnL0T40I="; 100 - stripLen = 1; 101 - extraPrefix = "vendor/github.com/containers/storage/"; 102 - }) 103 ]; 104 105 vendorHash = null;
··· 75 in 76 buildGoModule rec { 77 pname = "podman"; 78 + version = "5.4.0"; 79 80 src = fetchFromGitHub { 81 owner = "containers"; 82 repo = "podman"; 83 rev = "v${version}"; 84 + hash = "sha256-iEO4njjNByLkhXFLgZ8tO8M8RkwT+Lb0zyfedQDHcNc="; 85 }; 86 87 patches = [ ··· 91 92 # we intentionally don't build and install the helper so we shouldn't display messages to users about it 93 ./rm-podman-mac-helper-msg.patch 94 ]; 95 96 vendorHash = null;
-2497
pkgs/by-name/sa/samply/Cargo.lock
··· 1 - # This file is automatically @generated by Cargo. 2 - # It is not intended for manual editing. 3 - version = 3 4 - 5 - [[package]] 6 - name = "addr2line" 7 - version = "0.21.0" 8 - source = "registry+https://github.com/rust-lang/crates.io-index" 9 - checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb" 10 - dependencies = [ 11 - "gimli 0.28.1", 12 - ] 13 - 14 - [[package]] 15 - name = "addr2line" 16 - version = "0.22.0" 17 - source = "registry+https://github.com/rust-lang/crates.io-index" 18 - checksum = "6e4503c46a5c0c7844e948c9a4d6acd9f50cccb4de1c48eb9e291ea17470c678" 19 - dependencies = [ 20 - "fallible-iterator 0.3.0", 21 - "gimli 0.29.0", 22 - ] 23 - 24 - [[package]] 25 - name = "adler" 26 - version = "1.0.2" 27 - source = "registry+https://github.com/rust-lang/crates.io-index" 28 - checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" 29 - 30 - [[package]] 31 - name = "ahash" 32 - version = "0.8.11" 33 - source = "registry+https://github.com/rust-lang/crates.io-index" 34 - checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" 35 - dependencies = [ 36 - "cfg-if", 37 - "once_cell", 38 - "version_check", 39 - "zerocopy", 40 - ] 41 - 42 - [[package]] 43 - name = "alloc-no-stdlib" 44 - version = "2.0.4" 45 - source = "registry+https://github.com/rust-lang/crates.io-index" 46 - checksum = "cc7bb162ec39d46ab1ca8c77bf72e890535becd1751bb45f64c597edb4c8c6b3" 47 - 48 - [[package]] 49 - name = "alloc-stdlib" 50 - version = "0.2.2" 51 - source = "registry+https://github.com/rust-lang/crates.io-index" 52 - checksum = "94fb8275041c72129eb51b7d0322c29b8387a0386127718b096429201a5d6ece" 53 - dependencies = [ 54 - "alloc-no-stdlib", 55 - ] 56 - 57 - [[package]] 58 - name = "anstream" 59 - version = "0.6.13" 60 - source = "registry+https://github.com/rust-lang/crates.io-index" 61 - checksum = "d96bd03f33fe50a863e394ee9718a706f988b9079b20c3784fb726e7678b62fb" 62 - dependencies = [ 63 - "anstyle", 64 - "anstyle-parse", 65 - "anstyle-query", 66 - "anstyle-wincon", 67 - "colorchoice", 68 - "utf8parse", 69 - ] 70 - 71 - [[package]] 72 - name = "anstyle" 73 - version = "1.0.6" 74 - source = "registry+https://github.com/rust-lang/crates.io-index" 75 - checksum = "8901269c6307e8d93993578286ac0edf7f195079ffff5ebdeea6a59ffb7e36bc" 76 - 77 - [[package]] 78 - name = "anstyle-parse" 79 - version = "0.2.3" 80 - source = "registry+https://github.com/rust-lang/crates.io-index" 81 - checksum = "c75ac65da39e5fe5ab759307499ddad880d724eed2f6ce5b5e8a26f4f387928c" 82 - dependencies = [ 83 - "utf8parse", 84 - ] 85 - 86 - [[package]] 87 - name = "anstyle-query" 88 - version = "1.0.2" 89 - source = "registry+https://github.com/rust-lang/crates.io-index" 90 - checksum = "e28923312444cdd728e4738b3f9c9cac739500909bb3d3c94b43551b16517648" 91 - dependencies = [ 92 - "windows-sys 0.52.0", 93 - ] 94 - 95 - [[package]] 96 - name = "anstyle-wincon" 97 - version = "3.0.2" 98 - source = "registry+https://github.com/rust-lang/crates.io-index" 99 - checksum = "1cd54b81ec8d6180e24654d0b371ad22fc3dd083b6ff8ba325b72e00c87660a7" 100 - dependencies = [ 101 - "anstyle", 102 - "windows-sys 0.52.0", 103 - ] 104 - 105 - [[package]] 106 - name = "arrayvec" 107 - version = "0.7.4" 108 - source = "registry+https://github.com/rust-lang/crates.io-index" 109 - checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711" 110 - 111 - [[package]] 112 - name = "async-compression" 113 - version = "0.4.8" 114 - source = "registry+https://github.com/rust-lang/crates.io-index" 115 - checksum = "07dbbf24db18d609b1462965249abdf49129ccad073ec257da372adc83259c60" 116 - dependencies = [ 117 - "brotli", 118 - "flate2", 119 - "futures-core", 120 - "futures-io", 121 - "memchr", 122 - "pin-project-lite", 123 - "tokio", 124 - ] 125 - 126 - [[package]] 127 - name = "autocfg" 128 - version = "1.2.0" 129 - source = "registry+https://github.com/rust-lang/crates.io-index" 130 - checksum = "f1fdabc7756949593fe60f30ec81974b613357de856987752631dea1e3394c80" 131 - 132 - [[package]] 133 - name = "backtrace" 134 - version = "0.3.71" 135 - source = "registry+https://github.com/rust-lang/crates.io-index" 136 - checksum = "26b05800d2e817c8b3b4b54abd461726265fa9789ae34330622f2db9ee696f9d" 137 - dependencies = [ 138 - "addr2line 0.21.0", 139 - "cc", 140 - "cfg-if", 141 - "libc", 142 - "miniz_oxide", 143 - "object 0.32.2", 144 - "rustc-demangle", 145 - ] 146 - 147 - [[package]] 148 - name = "base64" 149 - version = "0.22.0" 150 - source = "registry+https://github.com/rust-lang/crates.io-index" 151 - checksum = "9475866fec1451be56a3c2400fd081ff546538961565ccb5b7142cbd22bc7a51" 152 - 153 - [[package]] 154 - name = "binary-merge" 155 - version = "0.1.2" 156 - source = "registry+https://github.com/rust-lang/crates.io-index" 157 - checksum = "597bb81c80a54b6a4381b23faba8d7774b144c94cbd1d6fe3f1329bd776554ab" 158 - 159 - [[package]] 160 - name = "bitflags" 161 - version = "1.3.2" 162 - source = "registry+https://github.com/rust-lang/crates.io-index" 163 - checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" 164 - 165 - [[package]] 166 - name = "bitflags" 167 - version = "2.5.0" 168 - source = "registry+https://github.com/rust-lang/crates.io-index" 169 - checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1" 170 - 171 - [[package]] 172 - name = "bitvec" 173 - version = "0.19.6" 174 - source = "registry+https://github.com/rust-lang/crates.io-index" 175 - checksum = "55f93d0ef3363c364d5976646a38f04cf67cfe1d4c8d160cdea02cab2c116b33" 176 - dependencies = [ 177 - "funty", 178 - "radium", 179 - "tap", 180 - "wyz", 181 - ] 182 - 183 - [[package]] 184 - name = "brotli" 185 - version = "4.0.0" 186 - source = "registry+https://github.com/rust-lang/crates.io-index" 187 - checksum = "125740193d7fee5cc63ab9e16c2fdc4e07c74ba755cc53b327d6ea029e9fc569" 188 - dependencies = [ 189 - "alloc-no-stdlib", 190 - "alloc-stdlib", 191 - "brotli-decompressor", 192 - ] 193 - 194 - [[package]] 195 - name = "brotli-decompressor" 196 - version = "3.0.0" 197 - source = "registry+https://github.com/rust-lang/crates.io-index" 198 - checksum = "65622a320492e09b5e0ac436b14c54ff68199bac392d0e89a6832c4518eea525" 199 - dependencies = [ 200 - "alloc-no-stdlib", 201 - "alloc-stdlib", 202 - ] 203 - 204 - [[package]] 205 - name = "bstr" 206 - version = "1.9.1" 207 - source = "registry+https://github.com/rust-lang/crates.io-index" 208 - checksum = "05efc5cfd9110c8416e471df0e96702d58690178e206e61b7173706673c93706" 209 - dependencies = [ 210 - "memchr", 211 - "regex-automata", 212 - "serde", 213 - ] 214 - 215 - [[package]] 216 - name = "bumpalo" 217 - version = "3.16.0" 218 - source = "registry+https://github.com/rust-lang/crates.io-index" 219 - checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" 220 - 221 - [[package]] 222 - name = "byteorder" 223 - version = "1.5.0" 224 - source = "registry+https://github.com/rust-lang/crates.io-index" 225 - checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" 226 - 227 - [[package]] 228 - name = "bytes" 229 - version = "1.6.0" 230 - source = "registry+https://github.com/rust-lang/crates.io-index" 231 - checksum = "514de17de45fdb8dc022b1a7975556c53c86f9f0aa5f534b98977b171857c2c9" 232 - 233 - [[package]] 234 - name = "cab" 235 - version = "0.6.0" 236 - source = "registry+https://github.com/rust-lang/crates.io-index" 237 - checksum = "171228650e6721d5acc0868a462cd864f49ac5f64e4a42cde270406e64e404d2" 238 - dependencies = [ 239 - "byteorder", 240 - "flate2", 241 - "lzxd", 242 - "time", 243 - ] 244 - 245 - [[package]] 246 - name = "cc" 247 - version = "1.0.92" 248 - source = "registry+https://github.com/rust-lang/crates.io-index" 249 - checksum = "2678b2e3449475e95b0aa6f9b506a28e61b3dc8996592b983695e8ebb58a8b41" 250 - 251 - [[package]] 252 - name = "cfg-if" 253 - version = "1.0.0" 254 - source = "registry+https://github.com/rust-lang/crates.io-index" 255 - checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" 256 - 257 - [[package]] 258 - name = "cfg_aliases" 259 - version = "0.1.1" 260 - source = "registry+https://github.com/rust-lang/crates.io-index" 261 - checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e" 262 - 263 - [[package]] 264 - name = "clap" 265 - version = "4.5.4" 266 - source = "registry+https://github.com/rust-lang/crates.io-index" 267 - checksum = "90bc066a67923782aa8515dbaea16946c5bcc5addbd668bb80af688e53e548a0" 268 - dependencies = [ 269 - "clap_builder", 270 - "clap_derive", 271 - ] 272 - 273 - [[package]] 274 - name = "clap_builder" 275 - version = "4.5.2" 276 - source = "registry+https://github.com/rust-lang/crates.io-index" 277 - checksum = "ae129e2e766ae0ec03484e609954119f123cc1fe650337e155d03b022f24f7b4" 278 - dependencies = [ 279 - "anstream", 280 - "anstyle", 281 - "clap_lex", 282 - "strsim", 283 - ] 284 - 285 - [[package]] 286 - name = "clap_derive" 287 - version = "4.5.4" 288 - source = "registry+https://github.com/rust-lang/crates.io-index" 289 - checksum = "528131438037fd55894f62d6e9f068b8f45ac57ffa77517819645d10aed04f64" 290 - dependencies = [ 291 - "heck 0.5.0", 292 - "proc-macro2", 293 - "quote", 294 - "syn 2.0.58", 295 - ] 296 - 297 - [[package]] 298 - name = "clap_lex" 299 - version = "0.7.0" 300 - source = "registry+https://github.com/rust-lang/crates.io-index" 301 - checksum = "98cc8fbded0c607b7ba9dd60cd98df59af97e84d24e49c8557331cfc26d301ce" 302 - 303 - [[package]] 304 - name = "colorchoice" 305 - version = "1.0.0" 306 - source = "registry+https://github.com/rust-lang/crates.io-index" 307 - checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7" 308 - 309 - [[package]] 310 - name = "core-foundation" 311 - version = "0.9.4" 312 - source = "registry+https://github.com/rust-lang/crates.io-index" 313 - checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" 314 - dependencies = [ 315 - "core-foundation-sys", 316 - "libc", 317 - ] 318 - 319 - [[package]] 320 - name = "core-foundation-sys" 321 - version = "0.8.6" 322 - source = "registry+https://github.com/rust-lang/crates.io-index" 323 - checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f" 324 - 325 - [[package]] 326 - name = "cpp_demangle" 327 - version = "0.4.3" 328 - source = "registry+https://github.com/rust-lang/crates.io-index" 329 - checksum = "7e8227005286ec39567949b33df9896bcadfa6051bccca2488129f108ca23119" 330 - dependencies = [ 331 - "cfg-if", 332 - ] 333 - 334 - [[package]] 335 - name = "crc" 336 - version = "3.2.1" 337 - source = "registry+https://github.com/rust-lang/crates.io-index" 338 - checksum = "69e6e4d7b33a94f0991c26729976b10ebde1d34c3ee82408fb536164fa10d636" 339 - dependencies = [ 340 - "crc-catalog", 341 - ] 342 - 343 - [[package]] 344 - name = "crc-catalog" 345 - version = "2.4.0" 346 - source = "registry+https://github.com/rust-lang/crates.io-index" 347 - checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5" 348 - 349 - [[package]] 350 - name = "crc32fast" 351 - version = "1.4.0" 352 - source = "registry+https://github.com/rust-lang/crates.io-index" 353 - checksum = "b3855a8a784b474f333699ef2bbca9db2c4a1f6d9088a90a2d25b1eb53111eaa" 354 - dependencies = [ 355 - "cfg-if", 356 - ] 357 - 358 - [[package]] 359 - name = "crossbeam-channel" 360 - version = "0.5.12" 361 - source = "registry+https://github.com/rust-lang/crates.io-index" 362 - checksum = "ab3db02a9c5b5121e1e42fbdb1aeb65f5e02624cc58c43f2884c6ccac0b82f95" 363 - dependencies = [ 364 - "crossbeam-utils", 365 - ] 366 - 367 - [[package]] 368 - name = "crossbeam-utils" 369 - version = "0.8.19" 370 - source = "registry+https://github.com/rust-lang/crates.io-index" 371 - checksum = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345" 372 - 373 - [[package]] 374 - name = "debugid" 375 - version = "0.8.0" 376 - source = "registry+https://github.com/rust-lang/crates.io-index" 377 - checksum = "bef552e6f588e446098f6ba40d89ac146c8c7b64aade83c051ee00bb5d2bc18d" 378 - dependencies = [ 379 - "uuid", 380 - ] 381 - 382 - [[package]] 383 - name = "deranged" 384 - version = "0.3.11" 385 - source = "registry+https://github.com/rust-lang/crates.io-index" 386 - checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4" 387 - dependencies = [ 388 - "powerfmt", 389 - ] 390 - 391 - [[package]] 392 - name = "derive_more" 393 - version = "0.99.17" 394 - source = "registry+https://github.com/rust-lang/crates.io-index" 395 - checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321" 396 - dependencies = [ 397 - "proc-macro2", 398 - "quote", 399 - "syn 1.0.109", 400 - ] 401 - 402 - [[package]] 403 - name = "dirs" 404 - version = "5.0.1" 405 - source = "registry+https://github.com/rust-lang/crates.io-index" 406 - checksum = "44c45a9d03d6676652bcb5e724c7e988de1acad23a711b5217ab9cbecbec2225" 407 - dependencies = [ 408 - "dirs-sys", 409 - ] 410 - 411 - [[package]] 412 - name = "dirs-sys" 413 - version = "0.4.1" 414 - source = "registry+https://github.com/rust-lang/crates.io-index" 415 - checksum = "520f05a5cbd335fae5a99ff7a6ab8627577660ee5cfd6a94a6a929b52ff0321c" 416 - dependencies = [ 417 - "libc", 418 - "option-ext", 419 - "redox_users", 420 - "windows-sys 0.48.0", 421 - ] 422 - 423 - [[package]] 424 - name = "elsa" 425 - version = "1.10.0" 426 - source = "registry+https://github.com/rust-lang/crates.io-index" 427 - checksum = "d98e71ae4df57d214182a2e5cb90230c0192c6ddfcaa05c36453d46a54713e10" 428 - dependencies = [ 429 - "stable_deref_trait", 430 - ] 431 - 432 - [[package]] 433 - name = "enum-as-inner" 434 - version = "0.6.0" 435 - source = "registry+https://github.com/rust-lang/crates.io-index" 436 - checksum = "5ffccbb6966c05b32ef8fbac435df276c4ae4d3dc55a8cd0eb9745e6c12f546a" 437 - dependencies = [ 438 - "heck 0.4.1", 439 - "proc-macro2", 440 - "quote", 441 - "syn 2.0.58", 442 - ] 443 - 444 - [[package]] 445 - name = "equivalent" 446 - version = "1.0.1" 447 - source = "registry+https://github.com/rust-lang/crates.io-index" 448 - checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" 449 - 450 - [[package]] 451 - name = "errno" 452 - version = "0.3.8" 453 - source = "registry+https://github.com/rust-lang/crates.io-index" 454 - checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245" 455 - dependencies = [ 456 - "libc", 457 - "windows-sys 0.52.0", 458 - ] 459 - 460 - [[package]] 461 - name = "fallible-iterator" 462 - version = "0.2.0" 463 - source = "registry+https://github.com/rust-lang/crates.io-index" 464 - checksum = "4443176a9f2c162692bd3d352d745ef9413eec5782a80d8fd6f8a1ac692a07f7" 465 - 466 - [[package]] 467 - name = "fallible-iterator" 468 - version = "0.3.0" 469 - source = "registry+https://github.com/rust-lang/crates.io-index" 470 - checksum = "2acce4a10f12dc2fb14a218589d4f1f62ef011b2d0cc4b3cb1bba8e94da14649" 471 - 472 - [[package]] 473 - name = "fastrand" 474 - version = "2.0.2" 475 - source = "registry+https://github.com/rust-lang/crates.io-index" 476 - checksum = "658bd65b1cf4c852a3cc96f18a8ce7b5640f6b703f905c7d74532294c2a63984" 477 - 478 - [[package]] 479 - name = "flate2" 480 - version = "1.0.28" 481 - source = "registry+https://github.com/rust-lang/crates.io-index" 482 - checksum = "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e" 483 - dependencies = [ 484 - "crc32fast", 485 - "miniz_oxide", 486 - ] 487 - 488 - [[package]] 489 - name = "fnv" 490 - version = "1.0.7" 491 - source = "registry+https://github.com/rust-lang/crates.io-index" 492 - checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" 493 - 494 - [[package]] 495 - name = "form_urlencoded" 496 - version = "1.2.1" 497 - source = "registry+https://github.com/rust-lang/crates.io-index" 498 - checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456" 499 - dependencies = [ 500 - "percent-encoding", 501 - ] 502 - 503 - [[package]] 504 - name = "framehop" 505 - version = "0.11.1" 506 - source = "registry+https://github.com/rust-lang/crates.io-index" 507 - checksum = "775adc24f975a49a55a31d53664838836e70d8bafac569ee19f5fd9b6403eb88" 508 - dependencies = [ 509 - "arrayvec", 510 - "cfg-if", 511 - "fallible-iterator 0.3.0", 512 - "gimli 0.29.0", 513 - "macho-unwind-info", 514 - "pe-unwind-info", 515 - "thiserror", 516 - "thiserror-no-std", 517 - ] 518 - 519 - [[package]] 520 - name = "fs4" 521 - version = "0.8.2" 522 - source = "registry+https://github.com/rust-lang/crates.io-index" 523 - checksum = "21dabded2e32cd57ded879041205c60a4a4c4bab47bd0fd2fa8b01f30849f02b" 524 - dependencies = [ 525 - "rustix", 526 - "windows-sys 0.52.0", 527 - ] 528 - 529 - [[package]] 530 - name = "funty" 531 - version = "1.1.0" 532 - source = "registry+https://github.com/rust-lang/crates.io-index" 533 - checksum = "fed34cd105917e91daa4da6b3728c47b068749d6a62c59811f06ed2ac71d9da7" 534 - 535 - [[package]] 536 - name = "futures-channel" 537 - version = "0.3.30" 538 - source = "registry+https://github.com/rust-lang/crates.io-index" 539 - checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78" 540 - dependencies = [ 541 - "futures-core", 542 - ] 543 - 544 - [[package]] 545 - name = "futures-core" 546 - version = "0.3.30" 547 - source = "registry+https://github.com/rust-lang/crates.io-index" 548 - checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d" 549 - 550 - [[package]] 551 - name = "futures-io" 552 - version = "0.3.30" 553 - source = "registry+https://github.com/rust-lang/crates.io-index" 554 - checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1" 555 - 556 - [[package]] 557 - name = "futures-macro" 558 - version = "0.3.30" 559 - source = "registry+https://github.com/rust-lang/crates.io-index" 560 - checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" 561 - dependencies = [ 562 - "proc-macro2", 563 - "quote", 564 - "syn 2.0.58", 565 - ] 566 - 567 - [[package]] 568 - name = "futures-sink" 569 - version = "0.3.30" 570 - source = "registry+https://github.com/rust-lang/crates.io-index" 571 - checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5" 572 - 573 - [[package]] 574 - name = "futures-task" 575 - version = "0.3.30" 576 - source = "registry+https://github.com/rust-lang/crates.io-index" 577 - checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004" 578 - 579 - [[package]] 580 - name = "futures-util" 581 - version = "0.3.30" 582 - source = "registry+https://github.com/rust-lang/crates.io-index" 583 - checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48" 584 - dependencies = [ 585 - "futures-core", 586 - "futures-io", 587 - "futures-macro", 588 - "futures-sink", 589 - "futures-task", 590 - "memchr", 591 - "pin-project-lite", 592 - "pin-utils", 593 - "slab", 594 - ] 595 - 596 - [[package]] 597 - name = "fxhash" 598 - version = "0.2.1" 599 - source = "registry+https://github.com/rust-lang/crates.io-index" 600 - checksum = "c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c" 601 - dependencies = [ 602 - "byteorder", 603 - ] 604 - 605 - [[package]] 606 - name = "fxprof-processed-profile" 607 - version = "0.7.0" 608 - source = "registry+https://github.com/rust-lang/crates.io-index" 609 - checksum = "ce20bbb48248608ba4908b45fe36e17e40f56f8c6bb385ecf5d3c4a1e8b05a22" 610 - dependencies = [ 611 - "bitflags 2.5.0", 612 - "debugid", 613 - "fxhash", 614 - "serde", 615 - "serde_derive", 616 - "serde_json", 617 - ] 618 - 619 - [[package]] 620 - name = "getrandom" 621 - version = "0.2.14" 622 - source = "registry+https://github.com/rust-lang/crates.io-index" 623 - checksum = "94b22e06ecb0110981051723910cbf0b5f5e09a2062dd7663334ee79a9d1286c" 624 - dependencies = [ 625 - "cfg-if", 626 - "libc", 627 - "wasi", 628 - ] 629 - 630 - [[package]] 631 - name = "gimli" 632 - version = "0.28.1" 633 - source = "registry+https://github.com/rust-lang/crates.io-index" 634 - checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253" 635 - 636 - [[package]] 637 - name = "gimli" 638 - version = "0.29.0" 639 - source = "registry+https://github.com/rust-lang/crates.io-index" 640 - checksum = "40ecd4077b5ae9fd2e9e169b102c6c330d0605168eb0e8bf79952b256dbefffd" 641 - dependencies = [ 642 - "fallible-iterator 0.3.0", 643 - "stable_deref_trait", 644 - ] 645 - 646 - [[package]] 647 - name = "h2" 648 - version = "0.4.4" 649 - source = "registry+https://github.com/rust-lang/crates.io-index" 650 - checksum = "816ec7294445779408f36fe57bc5b7fc1cf59664059096c65f905c1c61f58069" 651 - dependencies = [ 652 - "bytes", 653 - "fnv", 654 - "futures-core", 655 - "futures-sink", 656 - "futures-util", 657 - "http", 658 - "indexmap", 659 - "slab", 660 - "tokio", 661 - "tokio-util", 662 - "tracing", 663 - ] 664 - 665 - [[package]] 666 - name = "hashbrown" 667 - version = "0.14.3" 668 - source = "registry+https://github.com/rust-lang/crates.io-index" 669 - checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604" 670 - dependencies = [ 671 - "ahash", 672 - ] 673 - 674 - [[package]] 675 - name = "heck" 676 - version = "0.4.1" 677 - source = "registry+https://github.com/rust-lang/crates.io-index" 678 - checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" 679 - 680 - [[package]] 681 - name = "heck" 682 - version = "0.5.0" 683 - source = "registry+https://github.com/rust-lang/crates.io-index" 684 - checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" 685 - 686 - [[package]] 687 - name = "hermit-abi" 688 - version = "0.3.9" 689 - source = "registry+https://github.com/rust-lang/crates.io-index" 690 - checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024" 691 - 692 - [[package]] 693 - name = "http" 694 - version = "1.1.0" 695 - source = "registry+https://github.com/rust-lang/crates.io-index" 696 - checksum = "21b9ddb458710bc376481b842f5da65cdf31522de232c1ca8146abce2a358258" 697 - dependencies = [ 698 - "bytes", 699 - "fnv", 700 - "itoa", 701 - ] 702 - 703 - [[package]] 704 - name = "http-body" 705 - version = "1.0.0" 706 - source = "registry+https://github.com/rust-lang/crates.io-index" 707 - checksum = "1cac85db508abc24a2e48553ba12a996e87244a0395ce011e62b37158745d643" 708 - dependencies = [ 709 - "bytes", 710 - "http", 711 - ] 712 - 713 - [[package]] 714 - name = "http-body-util" 715 - version = "0.1.1" 716 - source = "registry+https://github.com/rust-lang/crates.io-index" 717 - checksum = "0475f8b2ac86659c21b64320d5d653f9efe42acd2a4e560073ec61a155a34f1d" 718 - dependencies = [ 719 - "bytes", 720 - "futures-core", 721 - "http", 722 - "http-body", 723 - "pin-project-lite", 724 - ] 725 - 726 - [[package]] 727 - name = "httparse" 728 - version = "1.8.0" 729 - source = "registry+https://github.com/rust-lang/crates.io-index" 730 - checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904" 731 - 732 - [[package]] 733 - name = "httpdate" 734 - version = "1.0.3" 735 - source = "registry+https://github.com/rust-lang/crates.io-index" 736 - checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" 737 - 738 - [[package]] 739 - name = "hyper" 740 - version = "1.3.0" 741 - source = "registry+https://github.com/rust-lang/crates.io-index" 742 - checksum = "9f24ce812868d86d19daa79bf3bf9175bc44ea323391147a5e3abde2a283871b" 743 - dependencies = [ 744 - "bytes", 745 - "futures-channel", 746 - "futures-util", 747 - "h2", 748 - "http", 749 - "http-body", 750 - "httparse", 751 - "httpdate", 752 - "itoa", 753 - "pin-project-lite", 754 - "smallvec", 755 - "tokio", 756 - "want", 757 - ] 758 - 759 - [[package]] 760 - name = "hyper-rustls" 761 - version = "0.26.0" 762 - source = "registry+https://github.com/rust-lang/crates.io-index" 763 - checksum = "a0bea761b46ae2b24eb4aef630d8d1c398157b6fc29e6350ecf090a0b70c952c" 764 - dependencies = [ 765 - "futures-util", 766 - "http", 767 - "hyper", 768 - "hyper-util", 769 - "rustls", 770 - "rustls-pki-types", 771 - "tokio", 772 - "tokio-rustls", 773 - "tower-service", 774 - ] 775 - 776 - [[package]] 777 - name = "hyper-util" 778 - version = "0.1.3" 779 - source = "registry+https://github.com/rust-lang/crates.io-index" 780 - checksum = "ca38ef113da30126bbff9cd1705f9273e15d45498615d138b0c20279ac7a76aa" 781 - dependencies = [ 782 - "bytes", 783 - "futures-channel", 784 - "futures-util", 785 - "http", 786 - "http-body", 787 - "hyper", 788 - "pin-project-lite", 789 - "socket2", 790 - "tokio", 791 - "tower", 792 - "tower-service", 793 - "tracing", 794 - ] 795 - 796 - [[package]] 797 - name = "idna" 798 - version = "0.5.0" 799 - source = "registry+https://github.com/rust-lang/crates.io-index" 800 - checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6" 801 - dependencies = [ 802 - "unicode-bidi", 803 - "unicode-normalization", 804 - ] 805 - 806 - [[package]] 807 - name = "indexmap" 808 - version = "2.2.6" 809 - source = "registry+https://github.com/rust-lang/crates.io-index" 810 - checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26" 811 - dependencies = [ 812 - "equivalent", 813 - "hashbrown", 814 - ] 815 - 816 - [[package]] 817 - name = "inplace-vec-builder" 818 - version = "0.1.1" 819 - source = "registry+https://github.com/rust-lang/crates.io-index" 820 - checksum = "cf64c2edc8226891a71f127587a2861b132d2b942310843814d5001d99a1d307" 821 - dependencies = [ 822 - "smallvec", 823 - ] 824 - 825 - [[package]] 826 - name = "ipnet" 827 - version = "2.9.0" 828 - source = "registry+https://github.com/rust-lang/crates.io-index" 829 - checksum = "8f518f335dce6725a761382244631d86cf0ccb2863413590b31338feb467f9c3" 830 - 831 - [[package]] 832 - name = "itoa" 833 - version = "1.0.11" 834 - source = "registry+https://github.com/rust-lang/crates.io-index" 835 - checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b" 836 - 837 - [[package]] 838 - name = "js-sys" 839 - version = "0.3.69" 840 - source = "registry+https://github.com/rust-lang/crates.io-index" 841 - checksum = "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d" 842 - dependencies = [ 843 - "wasm-bindgen", 844 - ] 845 - 846 - [[package]] 847 - name = "lazy_static" 848 - version = "1.4.0" 849 - source = "registry+https://github.com/rust-lang/crates.io-index" 850 - checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" 851 - 852 - [[package]] 853 - name = "libc" 854 - version = "0.2.153" 855 - source = "registry+https://github.com/rust-lang/crates.io-index" 856 - checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd" 857 - 858 - [[package]] 859 - name = "libredox" 860 - version = "0.1.3" 861 - source = "registry+https://github.com/rust-lang/crates.io-index" 862 - checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" 863 - dependencies = [ 864 - "bitflags 2.5.0", 865 - "libc", 866 - ] 867 - 868 - [[package]] 869 - name = "linear-map" 870 - version = "1.2.0" 871 - source = "registry+https://github.com/rust-lang/crates.io-index" 872 - checksum = "bfae20f6b19ad527b550c223fddc3077a547fc70cda94b9b566575423fd303ee" 873 - 874 - [[package]] 875 - name = "linux-perf-data" 876 - version = "0.9.0" 877 - source = "registry+https://github.com/rust-lang/crates.io-index" 878 - checksum = "4533101fd9e7cdabbdb80e09b45cf200ee3c2252a5d4aadaae5325ab46769747" 879 - dependencies = [ 880 - "byteorder", 881 - "linear-map", 882 - "linux-perf-event-reader", 883 - "memchr", 884 - "thiserror", 885 - ] 886 - 887 - [[package]] 888 - name = "linux-perf-event-reader" 889 - version = "0.10.0" 890 - source = "registry+https://github.com/rust-lang/crates.io-index" 891 - checksum = "41064623ecf100db029bd29e4a1cdec25fc513d45c15619ecd03504e2ffb1687" 892 - dependencies = [ 893 - "bitflags 2.5.0", 894 - "byteorder", 895 - "memchr", 896 - "thiserror", 897 - ] 898 - 899 - [[package]] 900 - name = "linux-raw-sys" 901 - version = "0.4.13" 902 - source = "registry+https://github.com/rust-lang/crates.io-index" 903 - checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c" 904 - 905 - [[package]] 906 - name = "lock_api" 907 - version = "0.4.11" 908 - source = "registry+https://github.com/rust-lang/crates.io-index" 909 - checksum = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45" 910 - dependencies = [ 911 - "autocfg", 912 - "scopeguard", 913 - ] 914 - 915 - [[package]] 916 - name = "log" 917 - version = "0.4.21" 918 - source = "registry+https://github.com/rust-lang/crates.io-index" 919 - checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c" 920 - 921 - [[package]] 922 - name = "lzma-rs" 923 - version = "0.3.0" 924 - source = "registry+https://github.com/rust-lang/crates.io-index" 925 - checksum = "297e814c836ae64db86b36cf2a557ba54368d03f6afcd7d947c266692f71115e" 926 - dependencies = [ 927 - "byteorder", 928 - "crc", 929 - ] 930 - 931 - [[package]] 932 - name = "lzxd" 933 - version = "0.2.5" 934 - source = "registry+https://github.com/rust-lang/crates.io-index" 935 - checksum = "5de7336a183103429ad66d11d56d8bdc9c4a2916f6b85a8f11e5b127bde12001" 936 - 937 - [[package]] 938 - name = "mach" 939 - version = "0.3.2" 940 - source = "registry+https://github.com/rust-lang/crates.io-index" 941 - checksum = "b823e83b2affd8f40a9ee8c29dbc56404c1e34cd2710921f2801e2cf29527afa" 942 - dependencies = [ 943 - "libc", 944 - ] 945 - 946 - [[package]] 947 - name = "macho-unwind-info" 948 - version = "0.4.0" 949 - source = "registry+https://github.com/rust-lang/crates.io-index" 950 - checksum = "6b6086acc74bc23f56b60e88bb082d505e23849d68d6c0f12bb6a7ad5c60e03e" 951 - dependencies = [ 952 - "thiserror", 953 - "zerocopy", 954 - "zerocopy-derive", 955 - ] 956 - 957 - [[package]] 958 - name = "maybe-owned" 959 - version = "0.3.4" 960 - source = "registry+https://github.com/rust-lang/crates.io-index" 961 - checksum = "4facc753ae494aeb6e3c22f839b158aebd4f9270f55cd3c79906c45476c47ab4" 962 - 963 - [[package]] 964 - name = "memchr" 965 - version = "2.7.2" 966 - source = "registry+https://github.com/rust-lang/crates.io-index" 967 - checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d" 968 - 969 - [[package]] 970 - name = "memmap2" 971 - version = "0.9.4" 972 - source = "registry+https://github.com/rust-lang/crates.io-index" 973 - checksum = "fe751422e4a8caa417e13c3ea66452215d7d63e19e604f4980461212f3ae1322" 974 - dependencies = [ 975 - "libc", 976 - ] 977 - 978 - [[package]] 979 - name = "mime" 980 - version = "0.3.17" 981 - source = "registry+https://github.com/rust-lang/crates.io-index" 982 - checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" 983 - 984 - [[package]] 985 - name = "minimal-lexical" 986 - version = "0.2.1" 987 - source = "registry+https://github.com/rust-lang/crates.io-index" 988 - checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" 989 - 990 - [[package]] 991 - name = "miniz_oxide" 992 - version = "0.7.2" 993 - source = "registry+https://github.com/rust-lang/crates.io-index" 994 - checksum = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7" 995 - dependencies = [ 996 - "adler", 997 - ] 998 - 999 - [[package]] 1000 - name = "mio" 1001 - version = "0.8.11" 1002 - source = "registry+https://github.com/rust-lang/crates.io-index" 1003 - checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c" 1004 - dependencies = [ 1005 - "libc", 1006 - "log", 1007 - "wasi", 1008 - "windows-sys 0.48.0", 1009 - ] 1010 - 1011 - [[package]] 1012 - name = "msvc-demangler" 1013 - version = "0.10.0" 1014 - source = "registry+https://github.com/rust-lang/crates.io-index" 1015 - checksum = "2588c982e3a7fbfbd73b21f824cacc43fc6392a1103c709ffd6001c0bf33fdb3" 1016 - dependencies = [ 1017 - "bitflags 2.5.0", 1018 - ] 1019 - 1020 - [[package]] 1021 - name = "nix" 1022 - version = "0.28.0" 1023 - source = "registry+https://github.com/rust-lang/crates.io-index" 1024 - checksum = "ab2156c4fce2f8df6c499cc1c763e4394b7482525bf2a9701c9d79d215f519e4" 1025 - dependencies = [ 1026 - "bitflags 2.5.0", 1027 - "cfg-if", 1028 - "cfg_aliases", 1029 - "libc", 1030 - ] 1031 - 1032 - [[package]] 1033 - name = "nix-base32" 1034 - version = "0.1.1" 1035 - source = "registry+https://github.com/rust-lang/crates.io-index" 1036 - checksum = "8548db8274cf1b2b4c093557783f99e9ad64ffdaaa29a6c1af0abc9895c15612" 1037 - 1038 - [[package]] 1039 - name = "nom" 1040 - version = "7.1.3" 1041 - source = "registry+https://github.com/rust-lang/crates.io-index" 1042 - checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" 1043 - dependencies = [ 1044 - "memchr", 1045 - "minimal-lexical", 1046 - ] 1047 - 1048 - [[package]] 1049 - name = "normpath" 1050 - version = "1.2.0" 1051 - source = "registry+https://github.com/rust-lang/crates.io-index" 1052 - checksum = "5831952a9476f2fed74b77d74182fa5ddc4d21c72ec45a333b250e3ed0272804" 1053 - dependencies = [ 1054 - "windows-sys 0.52.0", 1055 - ] 1056 - 1057 - [[package]] 1058 - name = "num-conv" 1059 - version = "0.1.0" 1060 - source = "registry+https://github.com/rust-lang/crates.io-index" 1061 - checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" 1062 - 1063 - [[package]] 1064 - name = "num-traits" 1065 - version = "0.2.18" 1066 - source = "registry+https://github.com/rust-lang/crates.io-index" 1067 - checksum = "da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a" 1068 - dependencies = [ 1069 - "autocfg", 1070 - ] 1071 - 1072 - [[package]] 1073 - name = "num_cpus" 1074 - version = "1.16.0" 1075 - source = "registry+https://github.com/rust-lang/crates.io-index" 1076 - checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" 1077 - dependencies = [ 1078 - "hermit-abi", 1079 - "libc", 1080 - ] 1081 - 1082 - [[package]] 1083 - name = "object" 1084 - version = "0.32.2" 1085 - source = "registry+https://github.com/rust-lang/crates.io-index" 1086 - checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441" 1087 - dependencies = [ 1088 - "memchr", 1089 - ] 1090 - 1091 - [[package]] 1092 - name = "object" 1093 - version = "0.35.0" 1094 - source = "registry+https://github.com/rust-lang/crates.io-index" 1095 - checksum = "b8ec7ab813848ba4522158d5517a6093db1ded27575b070f4177b8d12b41db5e" 1096 - dependencies = [ 1097 - "crc32fast", 1098 - "flate2", 1099 - "hashbrown", 1100 - "indexmap", 1101 - "memchr", 1102 - "ruzstd", 1103 - ] 1104 - 1105 - [[package]] 1106 - name = "once_cell" 1107 - version = "1.19.0" 1108 - source = "registry+https://github.com/rust-lang/crates.io-index" 1109 - checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" 1110 - 1111 - [[package]] 1112 - name = "opener" 1113 - version = "0.7.0" 1114 - source = "registry+https://github.com/rust-lang/crates.io-index" 1115 - checksum = "f9901cb49d7fc923b256db329ee26ffed69130bf05d74b9efdd1875c92d6af01" 1116 - dependencies = [ 1117 - "bstr", 1118 - "normpath", 1119 - "windows-sys 0.52.0", 1120 - ] 1121 - 1122 - [[package]] 1123 - name = "option-ext" 1124 - version = "0.2.0" 1125 - source = "registry+https://github.com/rust-lang/crates.io-index" 1126 - checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" 1127 - 1128 - [[package]] 1129 - name = "parking_lot" 1130 - version = "0.12.1" 1131 - source = "registry+https://github.com/rust-lang/crates.io-index" 1132 - checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" 1133 - dependencies = [ 1134 - "lock_api", 1135 - "parking_lot_core", 1136 - ] 1137 - 1138 - [[package]] 1139 - name = "parking_lot_core" 1140 - version = "0.9.9" 1141 - source = "registry+https://github.com/rust-lang/crates.io-index" 1142 - checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e" 1143 - dependencies = [ 1144 - "cfg-if", 1145 - "libc", 1146 - "redox_syscall", 1147 - "smallvec", 1148 - "windows-targets 0.48.5", 1149 - ] 1150 - 1151 - [[package]] 1152 - name = "pdb-addr2line" 1153 - version = "0.11.0" 1154 - source = "registry+https://github.com/rust-lang/crates.io-index" 1155 - checksum = "fb51ef7ed9998e108891711812822831daac0b17d67768c3bdc69aa909366123" 1156 - dependencies = [ 1157 - "bitflags 2.5.0", 1158 - "elsa", 1159 - "maybe-owned", 1160 - "pdb2", 1161 - "range-collections", 1162 - "thiserror", 1163 - ] 1164 - 1165 - [[package]] 1166 - name = "pdb2" 1167 - version = "0.9.0" 1168 - source = "registry+https://github.com/rust-lang/crates.io-index" 1169 - checksum = "00e30e131bcab0d41a2e471cf777ea9b1402f2a0764bcf1780251eab1b0d175d" 1170 - dependencies = [ 1171 - "fallible-iterator 0.2.0", 1172 - "scroll", 1173 - "uuid", 1174 - ] 1175 - 1176 - [[package]] 1177 - name = "pe-unwind-info" 1178 - version = "0.2.3" 1179 - source = "registry+https://github.com/rust-lang/crates.io-index" 1180 - checksum = "6ec3b43050c38ffb9de87e17d874e9956e3a9131b343c9b7b7002597727c3891" 1181 - dependencies = [ 1182 - "arrayvec", 1183 - "bitflags 2.5.0", 1184 - "thiserror", 1185 - "zerocopy", 1186 - "zerocopy-derive", 1187 - ] 1188 - 1189 - [[package]] 1190 - name = "percent-encoding" 1191 - version = "2.3.1" 1192 - source = "registry+https://github.com/rust-lang/crates.io-index" 1193 - checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" 1194 - 1195 - [[package]] 1196 - name = "pin-project" 1197 - version = "1.1.5" 1198 - source = "registry+https://github.com/rust-lang/crates.io-index" 1199 - checksum = "b6bf43b791c5b9e34c3d182969b4abb522f9343702850a2e57f460d00d09b4b3" 1200 - dependencies = [ 1201 - "pin-project-internal", 1202 - ] 1203 - 1204 - [[package]] 1205 - name = "pin-project-internal" 1206 - version = "1.1.5" 1207 - source = "registry+https://github.com/rust-lang/crates.io-index" 1208 - checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965" 1209 - dependencies = [ 1210 - "proc-macro2", 1211 - "quote", 1212 - "syn 2.0.58", 1213 - ] 1214 - 1215 - [[package]] 1216 - name = "pin-project-lite" 1217 - version = "0.2.14" 1218 - source = "registry+https://github.com/rust-lang/crates.io-index" 1219 - checksum = "bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02" 1220 - 1221 - [[package]] 1222 - name = "pin-utils" 1223 - version = "0.1.0" 1224 - source = "registry+https://github.com/rust-lang/crates.io-index" 1225 - checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" 1226 - 1227 - [[package]] 1228 - name = "powerfmt" 1229 - version = "0.2.0" 1230 - source = "registry+https://github.com/rust-lang/crates.io-index" 1231 - checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" 1232 - 1233 - [[package]] 1234 - name = "ppv-lite86" 1235 - version = "0.2.17" 1236 - source = "registry+https://github.com/rust-lang/crates.io-index" 1237 - checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" 1238 - 1239 - [[package]] 1240 - name = "proc-macro2" 1241 - version = "1.0.79" 1242 - source = "registry+https://github.com/rust-lang/crates.io-index" 1243 - checksum = "e835ff2298f5721608eb1a980ecaee1aef2c132bf95ecc026a11b7bf3c01c02e" 1244 - dependencies = [ 1245 - "unicode-ident", 1246 - ] 1247 - 1248 - [[package]] 1249 - name = "quote" 1250 - version = "1.0.36" 1251 - source = "registry+https://github.com/rust-lang/crates.io-index" 1252 - checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7" 1253 - dependencies = [ 1254 - "proc-macro2", 1255 - ] 1256 - 1257 - [[package]] 1258 - name = "radium" 1259 - version = "0.5.3" 1260 - source = "registry+https://github.com/rust-lang/crates.io-index" 1261 - checksum = "941ba9d78d8e2f7ce474c015eea4d9c6d25b6a3327f9832ee29a4de27f91bbb8" 1262 - 1263 - [[package]] 1264 - name = "rand" 1265 - version = "0.8.5" 1266 - source = "registry+https://github.com/rust-lang/crates.io-index" 1267 - checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" 1268 - dependencies = [ 1269 - "libc", 1270 - "rand_chacha", 1271 - "rand_core", 1272 - ] 1273 - 1274 - [[package]] 1275 - name = "rand_chacha" 1276 - version = "0.3.1" 1277 - source = "registry+https://github.com/rust-lang/crates.io-index" 1278 - checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" 1279 - dependencies = [ 1280 - "ppv-lite86", 1281 - "rand_core", 1282 - ] 1283 - 1284 - [[package]] 1285 - name = "rand_core" 1286 - version = "0.6.4" 1287 - source = "registry+https://github.com/rust-lang/crates.io-index" 1288 - checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" 1289 - dependencies = [ 1290 - "getrandom", 1291 - ] 1292 - 1293 - [[package]] 1294 - name = "range-collections" 1295 - version = "0.4.5" 1296 - source = "registry+https://github.com/rust-lang/crates.io-index" 1297 - checksum = "ca9edd21e2db51000ac63eccddabba622f826e631a60be7bade9bd6a76b69537" 1298 - dependencies = [ 1299 - "binary-merge", 1300 - "inplace-vec-builder", 1301 - "ref-cast", 1302 - "smallvec", 1303 - ] 1304 - 1305 - [[package]] 1306 - name = "rangemap" 1307 - version = "1.5.1" 1308 - source = "registry+https://github.com/rust-lang/crates.io-index" 1309 - checksum = "f60fcc7d6849342eff22c4350c8b9a989ee8ceabc4b481253e8946b9fe83d684" 1310 - 1311 - [[package]] 1312 - name = "redox_syscall" 1313 - version = "0.4.1" 1314 - source = "registry+https://github.com/rust-lang/crates.io-index" 1315 - checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa" 1316 - dependencies = [ 1317 - "bitflags 1.3.2", 1318 - ] 1319 - 1320 - [[package]] 1321 - name = "redox_users" 1322 - version = "0.4.5" 1323 - source = "registry+https://github.com/rust-lang/crates.io-index" 1324 - checksum = "bd283d9651eeda4b2a83a43c1c91b266c40fd76ecd39a50a8c630ae69dc72891" 1325 - dependencies = [ 1326 - "getrandom", 1327 - "libredox", 1328 - "thiserror", 1329 - ] 1330 - 1331 - [[package]] 1332 - name = "ref-cast" 1333 - version = "1.0.22" 1334 - source = "registry+https://github.com/rust-lang/crates.io-index" 1335 - checksum = "c4846d4c50d1721b1a3bef8af76924eef20d5e723647333798c1b519b3a9473f" 1336 - dependencies = [ 1337 - "ref-cast-impl", 1338 - ] 1339 - 1340 - [[package]] 1341 - name = "ref-cast-impl" 1342 - version = "1.0.22" 1343 - source = "registry+https://github.com/rust-lang/crates.io-index" 1344 - checksum = "5fddb4f8d99b0a2ebafc65a87a69a7b9875e4b1ae1f00db265d300ef7f28bccc" 1345 - dependencies = [ 1346 - "proc-macro2", 1347 - "quote", 1348 - "syn 2.0.58", 1349 - ] 1350 - 1351 - [[package]] 1352 - name = "regex-automata" 1353 - version = "0.4.6" 1354 - source = "registry+https://github.com/rust-lang/crates.io-index" 1355 - checksum = "86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea" 1356 - 1357 - [[package]] 1358 - name = "reqwest" 1359 - version = "0.12.3" 1360 - source = "registry+https://github.com/rust-lang/crates.io-index" 1361 - checksum = "3e6cc1e89e689536eb5aeede61520e874df5a4707df811cd5da4aa5fbb2aae19" 1362 - dependencies = [ 1363 - "async-compression", 1364 - "base64", 1365 - "bytes", 1366 - "futures-core", 1367 - "futures-util", 1368 - "http", 1369 - "http-body", 1370 - "http-body-util", 1371 - "hyper", 1372 - "hyper-rustls", 1373 - "hyper-util", 1374 - "ipnet", 1375 - "js-sys", 1376 - "log", 1377 - "mime", 1378 - "once_cell", 1379 - "percent-encoding", 1380 - "pin-project-lite", 1381 - "rustls", 1382 - "rustls-pemfile", 1383 - "rustls-pki-types", 1384 - "serde", 1385 - "serde_json", 1386 - "serde_urlencoded", 1387 - "sync_wrapper", 1388 - "tokio", 1389 - "tokio-rustls", 1390 - "tokio-util", 1391 - "tower-service", 1392 - "url", 1393 - "wasm-bindgen", 1394 - "wasm-bindgen-futures", 1395 - "wasm-streams", 1396 - "web-sys", 1397 - "webpki-roots", 1398 - "winreg", 1399 - ] 1400 - 1401 - [[package]] 1402 - name = "ring" 1403 - version = "0.17.8" 1404 - source = "registry+https://github.com/rust-lang/crates.io-index" 1405 - checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d" 1406 - dependencies = [ 1407 - "cc", 1408 - "cfg-if", 1409 - "getrandom", 1410 - "libc", 1411 - "spin", 1412 - "untrusted", 1413 - "windows-sys 0.52.0", 1414 - ] 1415 - 1416 - [[package]] 1417 - name = "rustc-demangle" 1418 - version = "0.1.23" 1419 - source = "registry+https://github.com/rust-lang/crates.io-index" 1420 - checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" 1421 - 1422 - [[package]] 1423 - name = "rustix" 1424 - version = "0.38.32" 1425 - source = "registry+https://github.com/rust-lang/crates.io-index" 1426 - checksum = "65e04861e65f21776e67888bfbea442b3642beaa0138fdb1dd7a84a52dffdb89" 1427 - dependencies = [ 1428 - "bitflags 2.5.0", 1429 - "errno", 1430 - "libc", 1431 - "linux-raw-sys", 1432 - "windows-sys 0.52.0", 1433 - ] 1434 - 1435 - [[package]] 1436 - name = "rustls" 1437 - version = "0.22.3" 1438 - source = "registry+https://github.com/rust-lang/crates.io-index" 1439 - checksum = "99008d7ad0bbbea527ec27bddbc0e432c5b87d8175178cee68d2eec9c4a1813c" 1440 - dependencies = [ 1441 - "log", 1442 - "ring", 1443 - "rustls-pki-types", 1444 - "rustls-webpki", 1445 - "subtle", 1446 - "zeroize", 1447 - ] 1448 - 1449 - [[package]] 1450 - name = "rustls-pemfile" 1451 - version = "2.1.2" 1452 - source = "registry+https://github.com/rust-lang/crates.io-index" 1453 - checksum = "29993a25686778eb88d4189742cd713c9bce943bc54251a33509dc63cbacf73d" 1454 - dependencies = [ 1455 - "base64", 1456 - "rustls-pki-types", 1457 - ] 1458 - 1459 - [[package]] 1460 - name = "rustls-pki-types" 1461 - version = "1.4.1" 1462 - source = "registry+https://github.com/rust-lang/crates.io-index" 1463 - checksum = "ecd36cc4259e3e4514335c4a138c6b43171a8d61d8f5c9348f9fc7529416f247" 1464 - 1465 - [[package]] 1466 - name = "rustls-webpki" 1467 - version = "0.102.2" 1468 - source = "registry+https://github.com/rust-lang/crates.io-index" 1469 - checksum = "faaa0a62740bedb9b2ef5afa303da42764c012f743917351dc9a237ea1663610" 1470 - dependencies = [ 1471 - "ring", 1472 - "rustls-pki-types", 1473 - "untrusted", 1474 - ] 1475 - 1476 - [[package]] 1477 - name = "ruzstd" 1478 - version = "0.6.0" 1479 - source = "registry+https://github.com/rust-lang/crates.io-index" 1480 - checksum = "5174a470eeb535a721ae9fdd6e291c2411a906b96592182d05217591d5c5cf7b" 1481 - dependencies = [ 1482 - "byteorder", 1483 - "derive_more", 1484 - "twox-hash", 1485 - ] 1486 - 1487 - [[package]] 1488 - name = "ryu" 1489 - version = "1.0.17" 1490 - source = "registry+https://github.com/rust-lang/crates.io-index" 1491 - checksum = "e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1" 1492 - 1493 - [[package]] 1494 - name = "same-file" 1495 - version = "1.0.6" 1496 - source = "registry+https://github.com/rust-lang/crates.io-index" 1497 - checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" 1498 - dependencies = [ 1499 - "winapi-util", 1500 - ] 1501 - 1502 - [[package]] 1503 - name = "samply" 1504 - version = "0.12.0" 1505 - dependencies = [ 1506 - "byteorder", 1507 - "clap", 1508 - "crossbeam-channel", 1509 - "debugid", 1510 - "dirs", 1511 - "flate2", 1512 - "framehop", 1513 - "futures-util", 1514 - "fxhash", 1515 - "fxprof-processed-profile", 1516 - "http-body-util", 1517 - "hyper", 1518 - "hyper-util", 1519 - "lazy_static", 1520 - "libc", 1521 - "linux-perf-data", 1522 - "mach", 1523 - "memchr", 1524 - "memmap2", 1525 - "mio", 1526 - "nix", 1527 - "nix-base32", 1528 - "num_cpus", 1529 - "object 0.35.0", 1530 - "once_cell", 1531 - "opener", 1532 - "parking_lot", 1533 - "percent-encoding", 1534 - "rand", 1535 - "serde", 1536 - "serde_derive", 1537 - "serde_json", 1538 - "signal-hook", 1539 - "sysctl", 1540 - "tempfile", 1541 - "thiserror", 1542 - "tokio", 1543 - "tokio-util", 1544 - "uname", 1545 - "uuid", 1546 - "wholesym", 1547 - ] 1548 - 1549 - [[package]] 1550 - name = "samply-api" 1551 - version = "0.23.0" 1552 - source = "registry+https://github.com/rust-lang/crates.io-index" 1553 - checksum = "0ba2d4cd2e2684f911e234613f0659e2df56db773609ab940b1b02e984bda886" 1554 - dependencies = [ 1555 - "samply-symbols", 1556 - "serde", 1557 - "serde_derive", 1558 - "serde_json", 1559 - "thiserror", 1560 - "yaxpeax-arch", 1561 - "yaxpeax-arm", 1562 - "yaxpeax-x86", 1563 - ] 1564 - 1565 - [[package]] 1566 - name = "samply-symbols" 1567 - version = "0.22.0" 1568 - source = "registry+https://github.com/rust-lang/crates.io-index" 1569 - checksum = "992d7259f93744ea3f094eea6f0f2be59facc45245fd8e0f693fad1e69ea5d16" 1570 - dependencies = [ 1571 - "addr2line 0.22.0", 1572 - "bitflags 2.5.0", 1573 - "cpp_demangle", 1574 - "debugid", 1575 - "elsa", 1576 - "flate2", 1577 - "gimli 0.29.0", 1578 - "linux-perf-data", 1579 - "lzma-rs", 1580 - "macho-unwind-info", 1581 - "memchr", 1582 - "msvc-demangler", 1583 - "nom", 1584 - "object 0.35.0", 1585 - "pdb-addr2line", 1586 - "rangemap", 1587 - "rustc-demangle", 1588 - "scala-native-demangle", 1589 - "srcsrv", 1590 - "thiserror", 1591 - "uuid", 1592 - "yoke", 1593 - "yoke-derive", 1594 - "zerocopy", 1595 - "zerocopy-derive", 1596 - ] 1597 - 1598 - [[package]] 1599 - name = "scala-native-demangle" 1600 - version = "0.0.6" 1601 - source = "registry+https://github.com/rust-lang/crates.io-index" 1602 - checksum = "0a4416eddc0eaf31e04aa4039bd3db4288ea1ba613955d86cf9c310049c5d1e2" 1603 - 1604 - [[package]] 1605 - name = "scopeguard" 1606 - version = "1.2.0" 1607 - source = "registry+https://github.com/rust-lang/crates.io-index" 1608 - checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" 1609 - 1610 - [[package]] 1611 - name = "scroll" 1612 - version = "0.11.0" 1613 - source = "registry+https://github.com/rust-lang/crates.io-index" 1614 - checksum = "04c565b551bafbef4157586fa379538366e4385d42082f255bfd96e4fe8519da" 1615 - 1616 - [[package]] 1617 - name = "serde" 1618 - version = "1.0.197" 1619 - source = "registry+https://github.com/rust-lang/crates.io-index" 1620 - checksum = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2" 1621 - dependencies = [ 1622 - "serde_derive", 1623 - ] 1624 - 1625 - [[package]] 1626 - name = "serde_derive" 1627 - version = "1.0.197" 1628 - source = "registry+https://github.com/rust-lang/crates.io-index" 1629 - checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b" 1630 - dependencies = [ 1631 - "proc-macro2", 1632 - "quote", 1633 - "syn 2.0.58", 1634 - ] 1635 - 1636 - [[package]] 1637 - name = "serde_json" 1638 - version = "1.0.115" 1639 - source = "registry+https://github.com/rust-lang/crates.io-index" 1640 - checksum = "12dc5c46daa8e9fdf4f5e71b6cf9a53f2487da0e86e55808e2d35539666497dd" 1641 - dependencies = [ 1642 - "itoa", 1643 - "ryu", 1644 - "serde", 1645 - ] 1646 - 1647 - [[package]] 1648 - name = "serde_urlencoded" 1649 - version = "0.7.1" 1650 - source = "registry+https://github.com/rust-lang/crates.io-index" 1651 - checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" 1652 - dependencies = [ 1653 - "form_urlencoded", 1654 - "itoa", 1655 - "ryu", 1656 - "serde", 1657 - ] 1658 - 1659 - [[package]] 1660 - name = "signal-hook" 1661 - version = "0.3.17" 1662 - source = "registry+https://github.com/rust-lang/crates.io-index" 1663 - checksum = "8621587d4798caf8eb44879d42e56b9a93ea5dcd315a6487c357130095b62801" 1664 - dependencies = [ 1665 - "libc", 1666 - "signal-hook-registry", 1667 - ] 1668 - 1669 - [[package]] 1670 - name = "signal-hook-registry" 1671 - version = "1.4.1" 1672 - source = "registry+https://github.com/rust-lang/crates.io-index" 1673 - checksum = "d8229b473baa5980ac72ef434c4415e70c4b5e71b423043adb4ba059f89c99a1" 1674 - dependencies = [ 1675 - "libc", 1676 - ] 1677 - 1678 - [[package]] 1679 - name = "slab" 1680 - version = "0.4.9" 1681 - source = "registry+https://github.com/rust-lang/crates.io-index" 1682 - checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" 1683 - dependencies = [ 1684 - "autocfg", 1685 - ] 1686 - 1687 - [[package]] 1688 - name = "smallvec" 1689 - version = "1.13.2" 1690 - source = "registry+https://github.com/rust-lang/crates.io-index" 1691 - checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" 1692 - 1693 - [[package]] 1694 - name = "socket2" 1695 - version = "0.5.6" 1696 - source = "registry+https://github.com/rust-lang/crates.io-index" 1697 - checksum = "05ffd9c0a93b7543e062e759284fcf5f5e3b098501104bfbdde4d404db792871" 1698 - dependencies = [ 1699 - "libc", 1700 - "windows-sys 0.52.0", 1701 - ] 1702 - 1703 - [[package]] 1704 - name = "spin" 1705 - version = "0.9.8" 1706 - source = "registry+https://github.com/rust-lang/crates.io-index" 1707 - checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" 1708 - 1709 - [[package]] 1710 - name = "srcsrv" 1711 - version = "0.2.2" 1712 - source = "registry+https://github.com/rust-lang/crates.io-index" 1713 - checksum = "022437a70e522e49b1952cb1d923589d629cb4aee97eb56d65ce938c04e8ac70" 1714 - dependencies = [ 1715 - "memchr", 1716 - "thiserror", 1717 - ] 1718 - 1719 - [[package]] 1720 - name = "stable_deref_trait" 1721 - version = "1.2.0" 1722 - source = "registry+https://github.com/rust-lang/crates.io-index" 1723 - checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" 1724 - 1725 - [[package]] 1726 - name = "static_assertions" 1727 - version = "1.1.0" 1728 - source = "registry+https://github.com/rust-lang/crates.io-index" 1729 - checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" 1730 - 1731 - [[package]] 1732 - name = "strsim" 1733 - version = "0.11.1" 1734 - source = "registry+https://github.com/rust-lang/crates.io-index" 1735 - checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" 1736 - 1737 - [[package]] 1738 - name = "subtle" 1739 - version = "2.5.0" 1740 - source = "registry+https://github.com/rust-lang/crates.io-index" 1741 - checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc" 1742 - 1743 - [[package]] 1744 - name = "symsrv" 1745 - version = "0.5.1" 1746 - source = "registry+https://github.com/rust-lang/crates.io-index" 1747 - checksum = "098492916b4954d05c9f195d073714401a48ad9d0c1d4690a4074146c9924804" 1748 - dependencies = [ 1749 - "async-compression", 1750 - "cab", 1751 - "dirs", 1752 - "fs4", 1753 - "futures-util", 1754 - "http", 1755 - "reqwest", 1756 - "scopeguard", 1757 - "thiserror", 1758 - "tokio", 1759 - ] 1760 - 1761 - [[package]] 1762 - name = "syn" 1763 - version = "1.0.109" 1764 - source = "registry+https://github.com/rust-lang/crates.io-index" 1765 - checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" 1766 - dependencies = [ 1767 - "proc-macro2", 1768 - "quote", 1769 - "unicode-ident", 1770 - ] 1771 - 1772 - [[package]] 1773 - name = "syn" 1774 - version = "2.0.58" 1775 - source = "registry+https://github.com/rust-lang/crates.io-index" 1776 - checksum = "44cfb93f38070beee36b3fef7d4f5a16f27751d94b187b666a5cc5e9b0d30687" 1777 - dependencies = [ 1778 - "proc-macro2", 1779 - "quote", 1780 - "unicode-ident", 1781 - ] 1782 - 1783 - [[package]] 1784 - name = "sync_wrapper" 1785 - version = "0.1.2" 1786 - source = "registry+https://github.com/rust-lang/crates.io-index" 1787 - checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" 1788 - 1789 - [[package]] 1790 - name = "synstructure" 1791 - version = "0.13.1" 1792 - source = "registry+https://github.com/rust-lang/crates.io-index" 1793 - checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" 1794 - dependencies = [ 1795 - "proc-macro2", 1796 - "quote", 1797 - "syn 2.0.58", 1798 - ] 1799 - 1800 - [[package]] 1801 - name = "sysctl" 1802 - version = "0.5.5" 1803 - source = "registry+https://github.com/rust-lang/crates.io-index" 1804 - checksum = "ec7dddc5f0fee506baf8b9fdb989e242f17e4b11c61dfbb0635b705217199eea" 1805 - dependencies = [ 1806 - "bitflags 2.5.0", 1807 - "byteorder", 1808 - "enum-as-inner", 1809 - "libc", 1810 - "thiserror", 1811 - "walkdir", 1812 - ] 1813 - 1814 - [[package]] 1815 - name = "tap" 1816 - version = "1.0.1" 1817 - source = "registry+https://github.com/rust-lang/crates.io-index" 1818 - checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" 1819 - 1820 - [[package]] 1821 - name = "tempfile" 1822 - version = "3.10.1" 1823 - source = "registry+https://github.com/rust-lang/crates.io-index" 1824 - checksum = "85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1" 1825 - dependencies = [ 1826 - "cfg-if", 1827 - "fastrand", 1828 - "rustix", 1829 - "windows-sys 0.52.0", 1830 - ] 1831 - 1832 - [[package]] 1833 - name = "thiserror" 1834 - version = "1.0.58" 1835 - source = "registry+https://github.com/rust-lang/crates.io-index" 1836 - checksum = "03468839009160513471e86a034bb2c5c0e4baae3b43f79ffc55c4a5427b3297" 1837 - dependencies = [ 1838 - "thiserror-impl", 1839 - ] 1840 - 1841 - [[package]] 1842 - name = "thiserror-impl" 1843 - version = "1.0.58" 1844 - source = "registry+https://github.com/rust-lang/crates.io-index" 1845 - checksum = "c61f3ba182994efc43764a46c018c347bc492c79f024e705f46567b418f6d4f7" 1846 - dependencies = [ 1847 - "proc-macro2", 1848 - "quote", 1849 - "syn 2.0.58", 1850 - ] 1851 - 1852 - [[package]] 1853 - name = "thiserror-impl-no-std" 1854 - version = "2.0.2" 1855 - source = "registry+https://github.com/rust-lang/crates.io-index" 1856 - checksum = "58e6318948b519ba6dc2b442a6d0b904ebfb8d411a3ad3e07843615a72249758" 1857 - dependencies = [ 1858 - "proc-macro2", 1859 - "quote", 1860 - "syn 1.0.109", 1861 - ] 1862 - 1863 - [[package]] 1864 - name = "thiserror-no-std" 1865 - version = "2.0.2" 1866 - source = "registry+https://github.com/rust-lang/crates.io-index" 1867 - checksum = "a3ad459d94dd517257cc96add8a43190ee620011bb6e6cdc82dafd97dfafafea" 1868 - dependencies = [ 1869 - "thiserror-impl-no-std", 1870 - ] 1871 - 1872 - [[package]] 1873 - name = "time" 1874 - version = "0.3.36" 1875 - source = "registry+https://github.com/rust-lang/crates.io-index" 1876 - checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885" 1877 - dependencies = [ 1878 - "deranged", 1879 - "num-conv", 1880 - "powerfmt", 1881 - "serde", 1882 - "time-core", 1883 - ] 1884 - 1885 - [[package]] 1886 - name = "time-core" 1887 - version = "0.1.2" 1888 - source = "registry+https://github.com/rust-lang/crates.io-index" 1889 - checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" 1890 - 1891 - [[package]] 1892 - name = "tinyvec" 1893 - version = "1.6.0" 1894 - source = "registry+https://github.com/rust-lang/crates.io-index" 1895 - checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50" 1896 - dependencies = [ 1897 - "tinyvec_macros", 1898 - ] 1899 - 1900 - [[package]] 1901 - name = "tinyvec_macros" 1902 - version = "0.1.1" 1903 - source = "registry+https://github.com/rust-lang/crates.io-index" 1904 - checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" 1905 - 1906 - [[package]] 1907 - name = "tokio" 1908 - version = "1.37.0" 1909 - source = "registry+https://github.com/rust-lang/crates.io-index" 1910 - checksum = "1adbebffeca75fcfd058afa480fb6c0b81e165a0323f9c9d39c9697e37c46787" 1911 - dependencies = [ 1912 - "backtrace", 1913 - "bytes", 1914 - "libc", 1915 - "mio", 1916 - "num_cpus", 1917 - "pin-project-lite", 1918 - "socket2", 1919 - "tokio-macros", 1920 - "windows-sys 0.48.0", 1921 - ] 1922 - 1923 - [[package]] 1924 - name = "tokio-macros" 1925 - version = "2.2.0" 1926 - source = "registry+https://github.com/rust-lang/crates.io-index" 1927 - checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b" 1928 - dependencies = [ 1929 - "proc-macro2", 1930 - "quote", 1931 - "syn 2.0.58", 1932 - ] 1933 - 1934 - [[package]] 1935 - name = "tokio-rustls" 1936 - version = "0.25.0" 1937 - source = "registry+https://github.com/rust-lang/crates.io-index" 1938 - checksum = "775e0c0f0adb3a2f22a00c4745d728b479985fc15ee7ca6a2608388c5569860f" 1939 - dependencies = [ 1940 - "rustls", 1941 - "rustls-pki-types", 1942 - "tokio", 1943 - ] 1944 - 1945 - [[package]] 1946 - name = "tokio-util" 1947 - version = "0.7.10" 1948 - source = "registry+https://github.com/rust-lang/crates.io-index" 1949 - checksum = "5419f34732d9eb6ee4c3578b7989078579b7f039cbbb9ca2c4da015749371e15" 1950 - dependencies = [ 1951 - "bytes", 1952 - "futures-core", 1953 - "futures-sink", 1954 - "pin-project-lite", 1955 - "tokio", 1956 - "tracing", 1957 - ] 1958 - 1959 - [[package]] 1960 - name = "tower" 1961 - version = "0.4.13" 1962 - source = "registry+https://github.com/rust-lang/crates.io-index" 1963 - checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c" 1964 - dependencies = [ 1965 - "futures-core", 1966 - "futures-util", 1967 - "pin-project", 1968 - "pin-project-lite", 1969 - "tokio", 1970 - "tower-layer", 1971 - "tower-service", 1972 - "tracing", 1973 - ] 1974 - 1975 - [[package]] 1976 - name = "tower-layer" 1977 - version = "0.3.2" 1978 - source = "registry+https://github.com/rust-lang/crates.io-index" 1979 - checksum = "c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0" 1980 - 1981 - [[package]] 1982 - name = "tower-service" 1983 - version = "0.3.2" 1984 - source = "registry+https://github.com/rust-lang/crates.io-index" 1985 - checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52" 1986 - 1987 - [[package]] 1988 - name = "tracing" 1989 - version = "0.1.40" 1990 - source = "registry+https://github.com/rust-lang/crates.io-index" 1991 - checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" 1992 - dependencies = [ 1993 - "log", 1994 - "pin-project-lite", 1995 - "tracing-core", 1996 - ] 1997 - 1998 - [[package]] 1999 - name = "tracing-core" 2000 - version = "0.1.32" 2001 - source = "registry+https://github.com/rust-lang/crates.io-index" 2002 - checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" 2003 - dependencies = [ 2004 - "once_cell", 2005 - ] 2006 - 2007 - [[package]] 2008 - name = "try-lock" 2009 - version = "0.2.5" 2010 - source = "registry+https://github.com/rust-lang/crates.io-index" 2011 - checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" 2012 - 2013 - [[package]] 2014 - name = "twox-hash" 2015 - version = "1.6.3" 2016 - source = "registry+https://github.com/rust-lang/crates.io-index" 2017 - checksum = "97fee6b57c6a41524a810daee9286c02d7752c4253064d0b05472833a438f675" 2018 - dependencies = [ 2019 - "cfg-if", 2020 - "static_assertions", 2021 - ] 2022 - 2023 - [[package]] 2024 - name = "uname" 2025 - version = "0.1.1" 2026 - source = "registry+https://github.com/rust-lang/crates.io-index" 2027 - checksum = "b72f89f0ca32e4db1c04e2a72f5345d59796d4866a1ee0609084569f73683dc8" 2028 - dependencies = [ 2029 - "libc", 2030 - ] 2031 - 2032 - [[package]] 2033 - name = "unicode-bidi" 2034 - version = "0.3.15" 2035 - source = "registry+https://github.com/rust-lang/crates.io-index" 2036 - checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75" 2037 - 2038 - [[package]] 2039 - name = "unicode-ident" 2040 - version = "1.0.12" 2041 - source = "registry+https://github.com/rust-lang/crates.io-index" 2042 - checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" 2043 - 2044 - [[package]] 2045 - name = "unicode-normalization" 2046 - version = "0.1.23" 2047 - source = "registry+https://github.com/rust-lang/crates.io-index" 2048 - checksum = "a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5" 2049 - dependencies = [ 2050 - "tinyvec", 2051 - ] 2052 - 2053 - [[package]] 2054 - name = "untrusted" 2055 - version = "0.9.0" 2056 - source = "registry+https://github.com/rust-lang/crates.io-index" 2057 - checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" 2058 - 2059 - [[package]] 2060 - name = "url" 2061 - version = "2.5.0" 2062 - source = "registry+https://github.com/rust-lang/crates.io-index" 2063 - checksum = "31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633" 2064 - dependencies = [ 2065 - "form_urlencoded", 2066 - "idna", 2067 - "percent-encoding", 2068 - ] 2069 - 2070 - [[package]] 2071 - name = "utf8parse" 2072 - version = "0.2.1" 2073 - source = "registry+https://github.com/rust-lang/crates.io-index" 2074 - checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a" 2075 - 2076 - [[package]] 2077 - name = "uuid" 2078 - version = "1.8.0" 2079 - source = "registry+https://github.com/rust-lang/crates.io-index" 2080 - checksum = "a183cf7feeba97b4dd1c0d46788634f6221d87fa961b305bed08c851829efcc0" 2081 - 2082 - [[package]] 2083 - name = "version_check" 2084 - version = "0.9.4" 2085 - source = "registry+https://github.com/rust-lang/crates.io-index" 2086 - checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" 2087 - 2088 - [[package]] 2089 - name = "walkdir" 2090 - version = "2.5.0" 2091 - source = "registry+https://github.com/rust-lang/crates.io-index" 2092 - checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b" 2093 - dependencies = [ 2094 - "same-file", 2095 - "winapi-util", 2096 - ] 2097 - 2098 - [[package]] 2099 - name = "want" 2100 - version = "0.3.1" 2101 - source = "registry+https://github.com/rust-lang/crates.io-index" 2102 - checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e" 2103 - dependencies = [ 2104 - "try-lock", 2105 - ] 2106 - 2107 - [[package]] 2108 - name = "wasi" 2109 - version = "0.11.0+wasi-snapshot-preview1" 2110 - source = "registry+https://github.com/rust-lang/crates.io-index" 2111 - checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" 2112 - 2113 - [[package]] 2114 - name = "wasm-bindgen" 2115 - version = "0.2.92" 2116 - source = "registry+https://github.com/rust-lang/crates.io-index" 2117 - checksum = "4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8" 2118 - dependencies = [ 2119 - "cfg-if", 2120 - "wasm-bindgen-macro", 2121 - ] 2122 - 2123 - [[package]] 2124 - name = "wasm-bindgen-backend" 2125 - version = "0.2.92" 2126 - source = "registry+https://github.com/rust-lang/crates.io-index" 2127 - checksum = "614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da" 2128 - dependencies = [ 2129 - "bumpalo", 2130 - "log", 2131 - "once_cell", 2132 - "proc-macro2", 2133 - "quote", 2134 - "syn 2.0.58", 2135 - "wasm-bindgen-shared", 2136 - ] 2137 - 2138 - [[package]] 2139 - name = "wasm-bindgen-futures" 2140 - version = "0.4.42" 2141 - source = "registry+https://github.com/rust-lang/crates.io-index" 2142 - checksum = "76bc14366121efc8dbb487ab05bcc9d346b3b5ec0eaa76e46594cabbe51762c0" 2143 - dependencies = [ 2144 - "cfg-if", 2145 - "js-sys", 2146 - "wasm-bindgen", 2147 - "web-sys", 2148 - ] 2149 - 2150 - [[package]] 2151 - name = "wasm-bindgen-macro" 2152 - version = "0.2.92" 2153 - source = "registry+https://github.com/rust-lang/crates.io-index" 2154 - checksum = "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726" 2155 - dependencies = [ 2156 - "quote", 2157 - "wasm-bindgen-macro-support", 2158 - ] 2159 - 2160 - [[package]] 2161 - name = "wasm-bindgen-macro-support" 2162 - version = "0.2.92" 2163 - source = "registry+https://github.com/rust-lang/crates.io-index" 2164 - checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7" 2165 - dependencies = [ 2166 - "proc-macro2", 2167 - "quote", 2168 - "syn 2.0.58", 2169 - "wasm-bindgen-backend", 2170 - "wasm-bindgen-shared", 2171 - ] 2172 - 2173 - [[package]] 2174 - name = "wasm-bindgen-shared" 2175 - version = "0.2.92" 2176 - source = "registry+https://github.com/rust-lang/crates.io-index" 2177 - checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96" 2178 - 2179 - [[package]] 2180 - name = "wasm-streams" 2181 - version = "0.4.0" 2182 - source = "registry+https://github.com/rust-lang/crates.io-index" 2183 - checksum = "b65dc4c90b63b118468cf747d8bf3566c1913ef60be765b5730ead9e0a3ba129" 2184 - dependencies = [ 2185 - "futures-util", 2186 - "js-sys", 2187 - "wasm-bindgen", 2188 - "wasm-bindgen-futures", 2189 - "web-sys", 2190 - ] 2191 - 2192 - [[package]] 2193 - name = "web-sys" 2194 - version = "0.3.69" 2195 - source = "registry+https://github.com/rust-lang/crates.io-index" 2196 - checksum = "77afa9a11836342370f4817622a2f0f418b134426d91a82dfb48f532d2ec13ef" 2197 - dependencies = [ 2198 - "js-sys", 2199 - "wasm-bindgen", 2200 - ] 2201 - 2202 - [[package]] 2203 - name = "webpki-roots" 2204 - version = "0.26.1" 2205 - source = "registry+https://github.com/rust-lang/crates.io-index" 2206 - checksum = "b3de34ae270483955a94f4b21bdaaeb83d508bb84a01435f393818edb0012009" 2207 - dependencies = [ 2208 - "rustls-pki-types", 2209 - ] 2210 - 2211 - [[package]] 2212 - name = "wholesym" 2213 - version = "0.5.0" 2214 - source = "registry+https://github.com/rust-lang/crates.io-index" 2215 - checksum = "3dd2331e4836f219a2da809a672abbd7f1d3ee33e0db30a28357a5a0fd6f4157" 2216 - dependencies = [ 2217 - "bytes", 2218 - "core-foundation", 2219 - "core-foundation-sys", 2220 - "debugid", 2221 - "futures-util", 2222 - "libc", 2223 - "memmap2", 2224 - "reqwest", 2225 - "samply-api", 2226 - "samply-symbols", 2227 - "symsrv", 2228 - "tokio", 2229 - "uuid", 2230 - "yoke", 2231 - "yoke-derive", 2232 - ] 2233 - 2234 - [[package]] 2235 - name = "winapi" 2236 - version = "0.3.9" 2237 - source = "registry+https://github.com/rust-lang/crates.io-index" 2238 - checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" 2239 - dependencies = [ 2240 - "winapi-i686-pc-windows-gnu", 2241 - "winapi-x86_64-pc-windows-gnu", 2242 - ] 2243 - 2244 - [[package]] 2245 - name = "winapi-i686-pc-windows-gnu" 2246 - version = "0.4.0" 2247 - source = "registry+https://github.com/rust-lang/crates.io-index" 2248 - checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" 2249 - 2250 - [[package]] 2251 - name = "winapi-util" 2252 - version = "0.1.6" 2253 - source = "registry+https://github.com/rust-lang/crates.io-index" 2254 - checksum = "f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596" 2255 - dependencies = [ 2256 - "winapi", 2257 - ] 2258 - 2259 - [[package]] 2260 - name = "winapi-x86_64-pc-windows-gnu" 2261 - version = "0.4.0" 2262 - source = "registry+https://github.com/rust-lang/crates.io-index" 2263 - checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" 2264 - 2265 - [[package]] 2266 - name = "windows-sys" 2267 - version = "0.48.0" 2268 - source = "registry+https://github.com/rust-lang/crates.io-index" 2269 - checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" 2270 - dependencies = [ 2271 - "windows-targets 0.48.5", 2272 - ] 2273 - 2274 - [[package]] 2275 - name = "windows-sys" 2276 - version = "0.52.0" 2277 - source = "registry+https://github.com/rust-lang/crates.io-index" 2278 - checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" 2279 - dependencies = [ 2280 - "windows-targets 0.52.4", 2281 - ] 2282 - 2283 - [[package]] 2284 - name = "windows-targets" 2285 - version = "0.48.5" 2286 - source = "registry+https://github.com/rust-lang/crates.io-index" 2287 - checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" 2288 - dependencies = [ 2289 - "windows_aarch64_gnullvm 0.48.5", 2290 - "windows_aarch64_msvc 0.48.5", 2291 - "windows_i686_gnu 0.48.5", 2292 - "windows_i686_msvc 0.48.5", 2293 - "windows_x86_64_gnu 0.48.5", 2294 - "windows_x86_64_gnullvm 0.48.5", 2295 - "windows_x86_64_msvc 0.48.5", 2296 - ] 2297 - 2298 - [[package]] 2299 - name = "windows-targets" 2300 - version = "0.52.4" 2301 - source = "registry+https://github.com/rust-lang/crates.io-index" 2302 - checksum = "7dd37b7e5ab9018759f893a1952c9420d060016fc19a472b4bb20d1bdd694d1b" 2303 - dependencies = [ 2304 - "windows_aarch64_gnullvm 0.52.4", 2305 - "windows_aarch64_msvc 0.52.4", 2306 - "windows_i686_gnu 0.52.4", 2307 - "windows_i686_msvc 0.52.4", 2308 - "windows_x86_64_gnu 0.52.4", 2309 - "windows_x86_64_gnullvm 0.52.4", 2310 - "windows_x86_64_msvc 0.52.4", 2311 - ] 2312 - 2313 - [[package]] 2314 - name = "windows_aarch64_gnullvm" 2315 - version = "0.48.5" 2316 - source = "registry+https://github.com/rust-lang/crates.io-index" 2317 - checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" 2318 - 2319 - [[package]] 2320 - name = "windows_aarch64_gnullvm" 2321 - version = "0.52.4" 2322 - source = "registry+https://github.com/rust-lang/crates.io-index" 2323 - checksum = "bcf46cf4c365c6f2d1cc93ce535f2c8b244591df96ceee75d8e83deb70a9cac9" 2324 - 2325 - [[package]] 2326 - name = "windows_aarch64_msvc" 2327 - version = "0.48.5" 2328 - source = "registry+https://github.com/rust-lang/crates.io-index" 2329 - checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" 2330 - 2331 - [[package]] 2332 - name = "windows_aarch64_msvc" 2333 - version = "0.52.4" 2334 - source = "registry+https://github.com/rust-lang/crates.io-index" 2335 - checksum = "da9f259dd3bcf6990b55bffd094c4f7235817ba4ceebde8e6d11cd0c5633b675" 2336 - 2337 - [[package]] 2338 - name = "windows_i686_gnu" 2339 - version = "0.48.5" 2340 - source = "registry+https://github.com/rust-lang/crates.io-index" 2341 - checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" 2342 - 2343 - [[package]] 2344 - name = "windows_i686_gnu" 2345 - version = "0.52.4" 2346 - source = "registry+https://github.com/rust-lang/crates.io-index" 2347 - checksum = "b474d8268f99e0995f25b9f095bc7434632601028cf86590aea5c8a5cb7801d3" 2348 - 2349 - [[package]] 2350 - name = "windows_i686_msvc" 2351 - version = "0.48.5" 2352 - source = "registry+https://github.com/rust-lang/crates.io-index" 2353 - checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" 2354 - 2355 - [[package]] 2356 - name = "windows_i686_msvc" 2357 - version = "0.52.4" 2358 - source = "registry+https://github.com/rust-lang/crates.io-index" 2359 - checksum = "1515e9a29e5bed743cb4415a9ecf5dfca648ce85ee42e15873c3cd8610ff8e02" 2360 - 2361 - [[package]] 2362 - name = "windows_x86_64_gnu" 2363 - version = "0.48.5" 2364 - source = "registry+https://github.com/rust-lang/crates.io-index" 2365 - checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" 2366 - 2367 - [[package]] 2368 - name = "windows_x86_64_gnu" 2369 - version = "0.52.4" 2370 - source = "registry+https://github.com/rust-lang/crates.io-index" 2371 - checksum = "5eee091590e89cc02ad514ffe3ead9eb6b660aedca2183455434b93546371a03" 2372 - 2373 - [[package]] 2374 - name = "windows_x86_64_gnullvm" 2375 - version = "0.48.5" 2376 - source = "registry+https://github.com/rust-lang/crates.io-index" 2377 - checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" 2378 - 2379 - [[package]] 2380 - name = "windows_x86_64_gnullvm" 2381 - version = "0.52.4" 2382 - source = "registry+https://github.com/rust-lang/crates.io-index" 2383 - checksum = "77ca79f2451b49fa9e2af39f0747fe999fcda4f5e241b2898624dca97a1f2177" 2384 - 2385 - [[package]] 2386 - name = "windows_x86_64_msvc" 2387 - version = "0.48.5" 2388 - source = "registry+https://github.com/rust-lang/crates.io-index" 2389 - checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" 2390 - 2391 - [[package]] 2392 - name = "windows_x86_64_msvc" 2393 - version = "0.52.4" 2394 - source = "registry+https://github.com/rust-lang/crates.io-index" 2395 - checksum = "32b752e52a2da0ddfbdbcc6fceadfeede4c939ed16d13e648833a61dfb611ed8" 2396 - 2397 - [[package]] 2398 - name = "winreg" 2399 - version = "0.52.0" 2400 - source = "registry+https://github.com/rust-lang/crates.io-index" 2401 - checksum = "a277a57398d4bfa075df44f501a17cfdf8542d224f0d36095a2adc7aee4ef0a5" 2402 - dependencies = [ 2403 - "cfg-if", 2404 - "windows-sys 0.48.0", 2405 - ] 2406 - 2407 - [[package]] 2408 - name = "wyz" 2409 - version = "0.2.0" 2410 - source = "registry+https://github.com/rust-lang/crates.io-index" 2411 - checksum = "85e60b0d1b5f99db2556934e21937020776a5d31520bf169e851ac44e6420214" 2412 - 2413 - [[package]] 2414 - name = "yaxpeax-arch" 2415 - version = "0.2.7" 2416 - source = "registry+https://github.com/rust-lang/crates.io-index" 2417 - checksum = "f1ba5c2f163fa2f866c36750c6c931566c6d93231ae9410083b0738953b609d5" 2418 - dependencies = [ 2419 - "num-traits", 2420 - ] 2421 - 2422 - [[package]] 2423 - name = "yaxpeax-arm" 2424 - version = "0.2.5" 2425 - source = "registry+https://github.com/rust-lang/crates.io-index" 2426 - checksum = "a0430c0047803b6aabfa3cb62f84a78d05b933e62bfcee97c7491bf634df9123" 2427 - dependencies = [ 2428 - "bitvec", 2429 - "yaxpeax-arch", 2430 - ] 2431 - 2432 - [[package]] 2433 - name = "yaxpeax-x86" 2434 - version = "1.2.2" 2435 - source = "registry+https://github.com/rust-lang/crates.io-index" 2436 - checksum = "9107477944697db42c41326f82d4c65b769b32512cdad1e086f36f0e0f25ff45" 2437 - dependencies = [ 2438 - "cfg-if", 2439 - "num-traits", 2440 - "yaxpeax-arch", 2441 - ] 2442 - 2443 - [[package]] 2444 - name = "yoke" 2445 - version = "0.7.3" 2446 - source = "registry+https://github.com/rust-lang/crates.io-index" 2447 - checksum = "65e71b2e4f287f467794c671e2b8f8a5f3716b3c829079a1c44740148eff07e4" 2448 - dependencies = [ 2449 - "serde", 2450 - "stable_deref_trait", 2451 - "zerofrom", 2452 - ] 2453 - 2454 - [[package]] 2455 - name = "yoke-derive" 2456 - version = "0.7.3" 2457 - source = "registry+https://github.com/rust-lang/crates.io-index" 2458 - checksum = "9e6936f0cce458098a201c245a11bef556c6a0181129c7034d10d76d1ec3a2b8" 2459 - dependencies = [ 2460 - "proc-macro2", 2461 - "quote", 2462 - "syn 2.0.58", 2463 - "synstructure", 2464 - ] 2465 - 2466 - [[package]] 2467 - name = "zerocopy" 2468 - version = "0.7.32" 2469 - source = "registry+https://github.com/rust-lang/crates.io-index" 2470 - checksum = "74d4d3961e53fa4c9a25a8637fc2bfaf2595b3d3ae34875568a5cf64787716be" 2471 - dependencies = [ 2472 - "byteorder", 2473 - "zerocopy-derive", 2474 - ] 2475 - 2476 - [[package]] 2477 - name = "zerocopy-derive" 2478 - version = "0.7.32" 2479 - source = "registry+https://github.com/rust-lang/crates.io-index" 2480 - checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6" 2481 - dependencies = [ 2482 - "proc-macro2", 2483 - "quote", 2484 - "syn 2.0.58", 2485 - ] 2486 - 2487 - [[package]] 2488 - name = "zerofrom" 2489 - version = "0.1.3" 2490 - source = "registry+https://github.com/rust-lang/crates.io-index" 2491 - checksum = "655b0814c5c0b19ade497851070c640773304939a6c0fd5f5fb43da0696d05b7" 2492 - 2493 - [[package]] 2494 - name = "zeroize" 2495 - version = "1.7.0" 2496 - source = "registry+https://github.com/rust-lang/crates.io-index" 2497 - checksum = "525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d"
···
+16 -34
pkgs/by-name/sa/samply/package.nix
··· 2 lib, 3 rustPlatform, 4 fetchCrate, 5 - jq, 6 - moreutils, 7 stdenv, 8 darwin, 9 }: 10 11 rustPlatform.buildRustPackage rec { 12 pname = "samply"; 13 - version = "0.12.0"; 14 15 src = fetchCrate { 16 inherit pname version; 17 - hash = "sha256-7bf1lDIZGhRpvnn8rHNwzH2GBY8CwtYCjuRAUTQgbsA="; 18 }; 19 20 - # Can't use fetchCargoVendor: 21 - # https://github.com/NixOS/nixpkgs/issues/377986 22 - cargoLock.lockFile = ./Cargo.lock; 23 - 24 - # the dependencies linux-perf-data and linux-perf-event-reader contains both README.md and Readme.md, 25 - # which causes a hash mismatch on systems with a case-insensitive filesystem 26 - # this removes the readme files and updates cargo's checksum file accordingly 27 - depsExtraArgs = { 28 - nativeBuildInputs = [ 29 - jq 30 - moreutils 31 - ]; 32 - 33 - postBuild = '' 34 - for crate in linux-perf-data linux-perf-event-reader; do 35 - pushd $name/$crate 36 - 37 - rm -f README.md Readme.md 38 - jq 'del(.files."README.md") | del(.files."Readme.md")' \ 39 - .cargo-checksum.json -c \ 40 - | sponge .cargo-checksum.json 41 - 42 - popd 43 - done 44 - ''; 45 - }; 46 47 buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ 48 darwin.apple_sdk.frameworks.CoreServices 49 ]; 50 51 - meta = with lib; { 52 description = "Command line profiler for macOS and Linux"; 53 - mainProgram = "samply"; 54 homepage = "https://github.com/mstange/samply"; 55 changelog = "https://github.com/mstange/samply/releases/tag/samply-v${version}"; 56 - license = with licenses; [ 57 asl20 58 mit 59 ]; 60 - maintainers = with maintainers; [ figsoda ]; 61 }; 62 }
··· 2 lib, 3 rustPlatform, 4 fetchCrate, 5 stdenv, 6 darwin, 7 + versionCheckHook, 8 + nix-update-script, 9 }: 10 11 rustPlatform.buildRustPackage rec { 12 pname = "samply"; 13 + version = "0.13.1"; 14 15 src = fetchCrate { 16 inherit pname version; 17 + hash = "sha256-zTwAsE6zXY3esO7x6UTCO2DbzdUSKZ6qc5Rr9qcI+Z8="; 18 }; 19 20 + useFetchCargoVendor = true; 21 + cargoHash = "sha256-mQykzO9Ldokd3PZ1fY4pK/GtLmYMVas2iHj1Pqi9WqQ="; 22 23 buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ 24 darwin.apple_sdk.frameworks.CoreServices 25 ]; 26 27 + nativeInstallCheckInputs = [ versionCheckHook ]; 28 + versionCheckProgramArg = "--version"; 29 + doInstallCheck = true; 30 + 31 + passthru.updateScript = nix-update-script { }; 32 + 33 + meta = { 34 description = "Command line profiler for macOS and Linux"; 35 homepage = "https://github.com/mstange/samply"; 36 changelog = "https://github.com/mstange/samply/releases/tag/samply-v${version}"; 37 + license = with lib.licenses; [ 38 asl20 39 mit 40 ]; 41 + maintainers = with lib.maintainers; [ figsoda ]; 42 + mainProgram = "samply"; 43 }; 44 }
+3 -3
pkgs/by-name/ta/tailscale/package.nix
··· 16 }: 17 18 let 19 - version = "1.80.0"; 20 in 21 buildGo123Module { 22 pname = "tailscale"; ··· 31 owner = "tailscale"; 32 repo = "tailscale"; 33 rev = "v${version}"; 34 - hash = "sha256-wb52Ffoh56EEVToGGK1Rzfb5DHiR2dLxDJRLcUgYhFg="; 35 }; 36 37 patches = [ ··· 43 }) 44 ]; 45 46 - vendorHash = "sha256-a+d02h0AXqr2FuWRAOUACiYVSpm276onkwKxGSJTL5s="; 47 48 nativeBuildInputs = lib.optionals stdenv.hostPlatform.isLinux [ makeWrapper ] ++ [ 49 installShellFiles
··· 16 }: 17 18 let 19 + version = "1.80.2"; 20 in 21 buildGo123Module { 22 pname = "tailscale"; ··· 31 owner = "tailscale"; 32 repo = "tailscale"; 33 rev = "v${version}"; 34 + hash = "sha256-5HGY9hVSnzqmAdXNJdQ+ZvsK/PmyZ94201UHlHclQE8="; 35 }; 36 37 patches = [ ··· 43 }) 44 ]; 45 46 + vendorHash = "sha256-81UOjoC5GJqhNs4vWcQ2/B9FMaDWtl0rbuFXmxbu5dI="; 47 48 nativeBuildInputs = lib.optionals stdenv.hostPlatform.isLinux [ makeWrapper ] ++ [ 49 installShellFiles
+11
pkgs/by-name/tr/truecrack/fix-empty-return.patch
···
··· 1 + --- a/src/Common/CpuCore.c 2 + +++ b/src/Common/CpuCore.c 3 + @@ -96,7 +96,7 @@ 4 + derive_key_whirlpool ( word, wordlength+1, salt, PKCS5_SALT_SIZE, 1000, headerKey, cpu_GetMaxPkcs5OutSize ()); 5 + else{ 6 + perror("Key derivation function not supported"); 7 + - return; 8 + + return 0; 9 + } 10 + 11 + value=cpu_Xts(encryptionAlgorithm,encryptedHeader,headerKey,cpu_GetMaxPkcs5OutSize(), masterKey, &length);
+49 -14
pkgs/by-name/tr/truecrack/package.nix
··· 6 config, 7 cudaSupport ? config.cudaSupport, 8 pkg-config, 9 }: 10 11 gccStdenv.mkDerivation rec { ··· 15 src = fetchFromGitLab { 16 owner = "kalilinux"; 17 repo = "packages/truecrack"; 18 - rev = "debian/${version}+git20150326-0kali1"; 19 - sha256 = "+Rw9SfaQtO1AJO6UVVDMCo8DT0dYEbv7zX8SI+pHCRQ="; 20 }; 21 22 configureFlags = ( 23 if cudaSupport then ··· 38 cudatoolkit 39 ]; 40 41 - # Workaround build failure on -fno-common toolchains like upstream 42 - # gcc-10. Otherwise build fails as: 43 - # ld: CpuAes.o:/build/source/src/Crypto/CpuAes.h:1233: multiple definition of 44 - # `t_rc'; CpuCore.o:/build/source/src/Crypto/CpuAes.h:1237: first defined here 45 - # TODO: remove on upstream fixes it: 46 - # https://gitlab.com/kalilinux/packages/truecrack/-/issues/1 47 - env.NIX_CFLAGS_COMPILE = "-fcommon"; 48 49 installFlags = [ "prefix=$(out)" ]; 50 - enableParallelBuilding = true; 51 52 - meta = with lib; { 53 description = "Brute-force password cracker for TrueCrypt volumes, optimized for Nvidia Cuda technology"; 54 mainProgram = "truecrack"; 55 homepage = "https://gitlab.com/kalilinux/packages/truecrack"; 56 broken = cudaSupport; 57 - license = licenses.gpl3Plus; 58 - platforms = platforms.unix; 59 - maintainers = with maintainers; [ ethancedwards8 ]; 60 }; 61 }
··· 6 config, 7 cudaSupport ? config.cudaSupport, 8 pkg-config, 9 + versionCheckHook, 10 }: 11 12 gccStdenv.mkDerivation rec { ··· 16 src = fetchFromGitLab { 17 owner = "kalilinux"; 18 repo = "packages/truecrack"; 19 + tag = "kali/${version}+git20150326-0kali4"; 20 + hash = "sha256-d6ld6KHSqYM4RymHf5qcm2AWK6FHWC0rFaLRfIQ2m5Q="; 21 }; 22 + 23 + patches = [ 24 + ./fix-empty-return.patch 25 + ]; 26 27 configureFlags = ( 28 if cudaSupport then ··· 43 cudatoolkit 44 ]; 45 46 + env.NIX_CFLAGS_COMPILE = toString ([ 47 + # Workaround build failure on -fno-common toolchains like upstream 48 + # gcc-10. Otherwise build fails as: 49 + # ld: CpuAes.o:/build/source/src/Crypto/CpuAes.h:1233: multiple definition of 50 + # `t_rc'; CpuCore.o:/build/source/src/Crypto/CpuAes.h:1237: first defined here 51 + # TODO: remove on upstream fixes it: 52 + # https://gitlab.com/kalilinux/packages/truecrack/-/issues/1 53 + "-fcommon" 54 + # Function are declared after they are used in the file, this is error since gcc-14. 55 + # Common/Crypto.c:42:13: error: implicit declaration of function 'cpu_CipherInit'; did you mean 'CipherInit'? [] 56 + # https://gitlab.com/kalilinux/packages/truecrack/-/commit/5b0e3a96b747013bded7b33f65bb42be2dbafc86 57 + "-Wno-error=implicit-function-declaration" 58 + ]); 59 + 60 + enableParallelBuilding = true; 61 62 installFlags = [ "prefix=$(out)" ]; 63 + 64 + doInstallCheck = true; 65 + 66 + installCheckPhase = '' 67 + runHook preInstallCheck 68 + 69 + echo "Cracking test volumes" 70 + $out/bin/${meta.mainProgram} -t test/ripemd160_aes.test.tc -w test/passwords.txt | grep -aF "Found password" 71 + $out/bin/${meta.mainProgram} -t test/ripemd160_aes.test.tc -c test/tes -m 4 | grep -aF "Found password" 72 + $out/bin/${meta.mainProgram} -t test/ripemd160_aes.test.tc -w test/passwords.txt | grep -aF "Found password" 73 + $out/bin/${meta.mainProgram} -t test/whirlpool_aes.test.tc -w test/passwords.txt -k whirlpool | grep -aF "Found password" 74 + $out/bin/${meta.mainProgram} -t test/sha512_aes.test.tc -w test/passwords.txt -k sha512 | grep -aF "Found password" 75 + $out/bin/${meta.mainProgram} -t test/ripemd160_aes.test.tc -w test/passwords.txt | grep -aF "Found password" 76 + $out/bin/${meta.mainProgram} -t test/ripemd160_serpent.test.tc -w test/passwords.txt -e serpent | grep -aF "Found password" 77 + $out/bin/${meta.mainProgram} -t test/ripemd160_twofish.test.tc -w test/passwords.txt -e twofish | grep -aF "Found password" 78 + echo "Finished cracking test volumes" 79 + 80 + runHook postInstallCheck 81 + ''; 82 83 + nativeInstallCheckInputs = [ 84 + versionCheckHook 85 + ]; 86 + 87 + meta = { 88 description = "Brute-force password cracker for TrueCrypt volumes, optimized for Nvidia Cuda technology"; 89 mainProgram = "truecrack"; 90 homepage = "https://gitlab.com/kalilinux/packages/truecrack"; 91 broken = cudaSupport; 92 + license = lib.licenses.gpl3Plus; 93 + platforms = lib.platforms.unix; 94 + maintainers = with lib.maintainers; [ ethancedwards8 ]; 95 }; 96 }
-1918
pkgs/by-name/vo/volta/Cargo.lock
··· 1 - # This file is automatically @generated by Cargo. 2 - # It is not intended for manual editing. 3 - version = 3 4 - 5 - [[package]] 6 - name = "adler" 7 - version = "1.0.2" 8 - source = "registry+https://github.com/rust-lang/crates.io-index" 9 - checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" 10 - 11 - [[package]] 12 - name = "ahash" 13 - version = "0.7.6" 14 - source = "registry+https://github.com/rust-lang/crates.io-index" 15 - checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47" 16 - dependencies = [ 17 - "getrandom", 18 - "once_cell", 19 - "version_check", 20 - ] 21 - 22 - [[package]] 23 - name = "aho-corasick" 24 - version = "0.7.18" 25 - source = "registry+https://github.com/rust-lang/crates.io-index" 26 - checksum = "1e37cfd5e7657ada45f742d6e99ca5788580b5c529dc78faf11ece6dc702656f" 27 - dependencies = [ 28 - "memchr", 29 - ] 30 - 31 - [[package]] 32 - name = "android_system_properties" 33 - version = "0.1.4" 34 - source = "registry+https://github.com/rust-lang/crates.io-index" 35 - checksum = "d7ed72e1635e121ca3e79420540282af22da58be50de153d36f81ddc6b83aa9e" 36 - dependencies = [ 37 - "libc", 38 - ] 39 - 40 - [[package]] 41 - name = "ansi_term" 42 - version = "0.12.1" 43 - source = "registry+https://github.com/rust-lang/crates.io-index" 44 - checksum = "d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2" 45 - dependencies = [ 46 - "winapi", 47 - ] 48 - 49 - [[package]] 50 - name = "archive" 51 - version = "0.1.0" 52 - dependencies = [ 53 - "attohttpc", 54 - "cfg-if 1.0.0", 55 - "flate2", 56 - "fs-utils", 57 - "hyperx", 58 - "progress-read", 59 - "tar", 60 - "tee", 61 - "thiserror", 62 - "verbatim", 63 - "zip", 64 - ] 65 - 66 - [[package]] 67 - name = "assert-json-diff" 68 - version = "2.0.1" 69 - source = "registry+https://github.com/rust-lang/crates.io-index" 70 - checksum = "50f1c3703dd33532d7f0ca049168930e9099ecac238e23cf932f3a69c42f06da" 71 - dependencies = [ 72 - "serde", 73 - "serde_json", 74 - ] 75 - 76 - [[package]] 77 - name = "attohttpc" 78 - version = "0.24.0" 79 - source = "registry+https://github.com/rust-lang/crates.io-index" 80 - checksum = "b85f766c20e6ae766956f7a2fcc4e0931e79a7e1f48b29132b5d647021114914" 81 - dependencies = [ 82 - "flate2", 83 - "http", 84 - "log", 85 - "rustls", 86 - "rustls-native-certs", 87 - "serde", 88 - "serde_json", 89 - "url", 90 - "webpki", 91 - ] 92 - 93 - [[package]] 94 - name = "atty" 95 - version = "0.2.14" 96 - source = "registry+https://github.com/rust-lang/crates.io-index" 97 - checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8" 98 - dependencies = [ 99 - "hermit-abi", 100 - "libc", 101 - "winapi", 102 - ] 103 - 104 - [[package]] 105 - name = "autocfg" 106 - version = "0.1.4" 107 - source = "registry+https://github.com/rust-lang/crates.io-index" 108 - checksum = "0e49efa51329a5fd37e7c79db4621af617cd4e3e5bc224939808d076077077bf" 109 - 110 - [[package]] 111 - name = "autocfg" 112 - version = "1.0.0" 113 - source = "registry+https://github.com/rust-lang/crates.io-index" 114 - checksum = "f8aac770f1885fd7e387acedd76065302551364496e46b3dd00860b2f8359b9d" 115 - 116 - [[package]] 117 - name = "base64" 118 - version = "0.13.1" 119 - source = "registry+https://github.com/rust-lang/crates.io-index" 120 - checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" 121 - 122 - [[package]] 123 - name = "bitflags" 124 - version = "1.3.2" 125 - source = "registry+https://github.com/rust-lang/crates.io-index" 126 - checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" 127 - 128 - [[package]] 129 - name = "block-buffer" 130 - version = "0.7.3" 131 - source = "registry+https://github.com/rust-lang/crates.io-index" 132 - checksum = "c0940dc441f31689269e10ac70eb1002a3a1d3ad1390e030043662eb7fe4688b" 133 - dependencies = [ 134 - "block-padding", 135 - "byte-tools", 136 - "byteorder", 137 - "generic-array", 138 - ] 139 - 140 - [[package]] 141 - name = "block-padding" 142 - version = "0.1.4" 143 - source = "registry+https://github.com/rust-lang/crates.io-index" 144 - checksum = "6d4dc3af3ee2e12f3e5d224e5e1e3d73668abbeb69e566d361f7d5563a4fdf09" 145 - dependencies = [ 146 - "byte-tools", 147 - ] 148 - 149 - [[package]] 150 - name = "bumpalo" 151 - version = "3.12.0" 152 - source = "registry+https://github.com/rust-lang/crates.io-index" 153 - checksum = "0d261e256854913907f67ed06efbc3338dfe6179796deefc1ff763fc1aee5535" 154 - 155 - [[package]] 156 - name = "byte-tools" 157 - version = "0.3.1" 158 - source = "registry+https://github.com/rust-lang/crates.io-index" 159 - checksum = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7" 160 - 161 - [[package]] 162 - name = "byteorder" 163 - version = "1.3.2" 164 - source = "registry+https://github.com/rust-lang/crates.io-index" 165 - checksum = "a7c3dd8985a7111efc5c80b44e23ecdd8c007de8ade3b96595387e812b957cf5" 166 - 167 - [[package]] 168 - name = "bytes" 169 - version = "1.1.0" 170 - source = "registry+https://github.com/rust-lang/crates.io-index" 171 - checksum = "c4872d67bab6358e59559027aa3b9157c53d9358c51423c17554809a8858e0f8" 172 - 173 - [[package]] 174 - name = "bzip2" 175 - version = "0.3.3" 176 - source = "registry+https://github.com/rust-lang/crates.io-index" 177 - checksum = "42b7c3cbf0fa9c1b82308d57191728ca0256cb821220f4e2fd410a72ade26e3b" 178 - dependencies = [ 179 - "bzip2-sys", 180 - "libc", 181 - ] 182 - 183 - [[package]] 184 - name = "bzip2-sys" 185 - version = "0.1.7" 186 - source = "registry+https://github.com/rust-lang/crates.io-index" 187 - checksum = "6584aa36f5ad4c9247f5323b0a42f37802b37a836f0ad87084d7a33961abe25f" 188 - dependencies = [ 189 - "cc", 190 - "libc", 191 - ] 192 - 193 - [[package]] 194 - name = "cc" 195 - version = "1.0.73" 196 - source = "registry+https://github.com/rust-lang/crates.io-index" 197 - checksum = "2fff2a6927b3bb87f9595d67196a70493f627687a71d87a0d692242c33f58c11" 198 - 199 - [[package]] 200 - name = "cfg-if" 201 - version = "0.1.10" 202 - source = "registry+https://github.com/rust-lang/crates.io-index" 203 - checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822" 204 - 205 - [[package]] 206 - name = "cfg-if" 207 - version = "1.0.0" 208 - source = "registry+https://github.com/rust-lang/crates.io-index" 209 - checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" 210 - 211 - [[package]] 212 - name = "chain-map" 213 - version = "0.1.0" 214 - source = "registry+https://github.com/rust-lang/crates.io-index" 215 - checksum = "bc076b92c3d763b90697600bf9833c204b517ff911f64dcfb58221b0663d3ee9" 216 - 217 - [[package]] 218 - name = "chrono" 219 - version = "0.4.23" 220 - source = "registry+https://github.com/rust-lang/crates.io-index" 221 - checksum = "16b0a3d9ed01224b22057780a37bb8c5dbfe1be8ba48678e7bf57ec4b385411f" 222 - dependencies = [ 223 - "iana-time-zone", 224 - "js-sys", 225 - "num-integer", 226 - "num-traits", 227 - "time", 228 - "wasm-bindgen", 229 - "winapi", 230 - ] 231 - 232 - [[package]] 233 - name = "ci_info" 234 - version = "0.14.9" 235 - source = "registry+https://github.com/rust-lang/crates.io-index" 236 - checksum = "62a62f39080c8c83e899dff6abd46c4fac05c1cf8dafece96ad8238e79addbf8" 237 - dependencies = [ 238 - "envmnt", 239 - ] 240 - 241 - [[package]] 242 - name = "clap" 243 - version = "2.34.0" 244 - source = "registry+https://github.com/rust-lang/crates.io-index" 245 - checksum = "a0610544180c38b88101fecf2dd634b174a62eef6946f84dfc6a7127512b381c" 246 - dependencies = [ 247 - "ansi_term", 248 - "atty", 249 - "bitflags", 250 - "strsim", 251 - "textwrap 0.11.0", 252 - "unicode-width", 253 - "vec_map", 254 - ] 255 - 256 - [[package]] 257 - name = "cmdline_words_parser" 258 - version = "0.2.1" 259 - source = "registry+https://github.com/rust-lang/crates.io-index" 260 - checksum = "75d8078f03daf673d8bd34a1ef48c680ea4a895204882ce5f0ccfb2487b2bd29" 261 - 262 - [[package]] 263 - name = "colored" 264 - version = "2.0.0" 265 - source = "registry+https://github.com/rust-lang/crates.io-index" 266 - checksum = "b3616f750b84d8f0de8a58bda93e08e2a81ad3f523089b05f1dffecab48c6cbd" 267 - dependencies = [ 268 - "atty", 269 - "lazy_static", 270 - "winapi", 271 - ] 272 - 273 - [[package]] 274 - name = "console" 275 - version = "0.15.5" 276 - source = "registry+https://github.com/rust-lang/crates.io-index" 277 - checksum = "c3d79fbe8970a77e3e34151cc13d3b3e248aa0faaecb9f6091fa07ebefe5ad60" 278 - dependencies = [ 279 - "encode_unicode", 280 - "lazy_static", 281 - "libc", 282 - "unicode-width", 283 - "windows-sys 0.42.0", 284 - ] 285 - 286 - [[package]] 287 - name = "core-foundation" 288 - version = "0.9.3" 289 - source = "registry+https://github.com/rust-lang/crates.io-index" 290 - checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146" 291 - dependencies = [ 292 - "core-foundation-sys", 293 - "libc", 294 - ] 295 - 296 - [[package]] 297 - name = "core-foundation-sys" 298 - version = "0.8.3" 299 - source = "registry+https://github.com/rust-lang/crates.io-index" 300 - checksum = "5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc" 301 - 302 - [[package]] 303 - name = "crc32fast" 304 - version = "1.2.0" 305 - source = "registry+https://github.com/rust-lang/crates.io-index" 306 - checksum = "ba125de2af0df55319f41944744ad91c71113bf74a4646efff39afe1f6842db1" 307 - dependencies = [ 308 - "cfg-if 0.1.10", 309 - ] 310 - 311 - [[package]] 312 - name = "ctrlc" 313 - version = "3.2.4" 314 - source = "registry+https://github.com/rust-lang/crates.io-index" 315 - checksum = "1631ca6e3c59112501a9d87fd86f21591ff77acd31331e8a73f8d80a65bbdd71" 316 - dependencies = [ 317 - "nix", 318 - "windows-sys 0.42.0", 319 - ] 320 - 321 - [[package]] 322 - name = "detect-indent" 323 - version = "0.1.0" 324 - source = "git+https://github.com/stefanpenner/detect-indent-rs?branch=master#f645bcc81bfb1f9745c4a4dec7c7f6faf3f84ec5" 325 - dependencies = [ 326 - "lazy_static", 327 - "regex", 328 - ] 329 - 330 - [[package]] 331 - name = "digest" 332 - version = "0.8.0" 333 - source = "registry+https://github.com/rust-lang/crates.io-index" 334 - checksum = "05f47366984d3ad862010e22c7ce81a7dbcaebbdfb37241a620f8b6596ee135c" 335 - dependencies = [ 336 - "generic-array", 337 - ] 338 - 339 - [[package]] 340 - name = "dirs" 341 - version = "4.0.0" 342 - source = "registry+https://github.com/rust-lang/crates.io-index" 343 - checksum = "ca3aa72a6f96ea37bbc5aa912f6788242832f75369bdfdadcb0e38423f100059" 344 - dependencies = [ 345 - "dirs-sys", 346 - ] 347 - 348 - [[package]] 349 - name = "dirs-sys" 350 - version = "0.3.6" 351 - source = "registry+https://github.com/rust-lang/crates.io-index" 352 - checksum = "03d86534ed367a67548dc68113a0f5db55432fdfbb6e6f9d77704397d95d5780" 353 - dependencies = [ 354 - "libc", 355 - "redox_users", 356 - "winapi", 357 - ] 358 - 359 - [[package]] 360 - name = "dunce" 361 - version = "1.0.3" 362 - source = "registry+https://github.com/rust-lang/crates.io-index" 363 - checksum = "0bd4b30a6560bbd9b4620f4de34c3f14f60848e58a9b7216801afcb4c7b31c3c" 364 - 365 - [[package]] 366 - name = "either" 367 - version = "1.6.1" 368 - source = "registry+https://github.com/rust-lang/crates.io-index" 369 - checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457" 370 - 371 - [[package]] 372 - name = "encode_unicode" 373 - version = "0.3.5" 374 - source = "registry+https://github.com/rust-lang/crates.io-index" 375 - checksum = "90b2c9496c001e8cb61827acdefad780795c42264c137744cae6f7d9e3450abd" 376 - 377 - [[package]] 378 - name = "envmnt" 379 - version = "0.10.0" 380 - source = "registry+https://github.com/rust-lang/crates.io-index" 381 - checksum = "9fbb2fcaad9e6c9e3388dfcc1b44ae5508ae864b7af36f163a8a7c1a48796eee" 382 - dependencies = [ 383 - "fsio", 384 - "indexmap", 385 - ] 386 - 387 - [[package]] 388 - name = "envoy" 389 - version = "0.1.3" 390 - source = "registry+https://github.com/rust-lang/crates.io-index" 391 - checksum = "bb34b6240ca977e7ab7dff6f060f9cb9a8f92c7745fe9e292b9443944d1aa768" 392 - 393 - [[package]] 394 - name = "fake-simd" 395 - version = "0.1.2" 396 - source = "registry+https://github.com/rust-lang/crates.io-index" 397 - checksum = "e88a8acf291dafb59c2d96e8f59828f3838bb1a70398823ade51a84de6a6deed" 398 - 399 - [[package]] 400 - name = "fastrand" 401 - version = "1.6.0" 402 - source = "registry+https://github.com/rust-lang/crates.io-index" 403 - checksum = "779d043b6a0b90cc4c0ed7ee380a6504394cee7efd7db050e3774eee387324b2" 404 - dependencies = [ 405 - "instant", 406 - ] 407 - 408 - [[package]] 409 - name = "filetime" 410 - version = "0.2.16" 411 - source = "registry+https://github.com/rust-lang/crates.io-index" 412 - checksum = "c0408e2626025178a6a7f7ffc05a25bc47103229f19c113755de7bf63816290c" 413 - dependencies = [ 414 - "cfg-if 1.0.0", 415 - "libc", 416 - "redox_syscall", 417 - "winapi", 418 - ] 419 - 420 - [[package]] 421 - name = "flate2" 422 - version = "1.0.24" 423 - source = "registry+https://github.com/rust-lang/crates.io-index" 424 - checksum = "f82b0f4c27ad9f8bfd1f3208d882da2b09c301bc1c828fd3a00d0216d2fbbff6" 425 - dependencies = [ 426 - "crc32fast", 427 - "miniz_oxide", 428 - ] 429 - 430 - [[package]] 431 - name = "fnv" 432 - version = "1.0.6" 433 - source = "registry+https://github.com/rust-lang/crates.io-index" 434 - checksum = "2fad85553e09a6f881f739c29f0b00b0f01357c743266d478b68951ce23285f3" 435 - 436 - [[package]] 437 - name = "form_urlencoded" 438 - version = "1.0.1" 439 - source = "registry+https://github.com/rust-lang/crates.io-index" 440 - checksum = "5fc25a87fa4fd2094bffb06925852034d90a17f0d1e05197d4956d3555752191" 441 - dependencies = [ 442 - "matches", 443 - "percent-encoding", 444 - ] 445 - 446 - [[package]] 447 - name = "fs-utils" 448 - version = "0.1.0" 449 - 450 - [[package]] 451 - name = "fs2" 452 - version = "0.4.3" 453 - source = "registry+https://github.com/rust-lang/crates.io-index" 454 - checksum = "9564fc758e15025b46aa6643b1b77d047d1a56a1aea6e01002ac0c7026876213" 455 - dependencies = [ 456 - "libc", 457 - "winapi", 458 - ] 459 - 460 - [[package]] 461 - name = "fsio" 462 - version = "0.3.0" 463 - source = "registry+https://github.com/rust-lang/crates.io-index" 464 - checksum = "09e87827efaf94c7a44b562ff57de06930712fe21b530c3797cdede26e6377eb" 465 - dependencies = [ 466 - "dunce", 467 - ] 468 - 469 - [[package]] 470 - name = "generic-array" 471 - version = "0.12.4" 472 - source = "registry+https://github.com/rust-lang/crates.io-index" 473 - checksum = "ffdf9f34f1447443d37393cc6c2b8313aebddcd96906caf34e54c68d8e57d7bd" 474 - dependencies = [ 475 - "typenum", 476 - ] 477 - 478 - [[package]] 479 - name = "getrandom" 480 - version = "0.2.3" 481 - source = "registry+https://github.com/rust-lang/crates.io-index" 482 - checksum = "7fcd999463524c52659517fe2cea98493cfe485d10565e7b0fb07dbba7ad2753" 483 - dependencies = [ 484 - "cfg-if 1.0.0", 485 - "libc", 486 - "wasi", 487 - ] 488 - 489 - [[package]] 490 - name = "hamcrest2" 491 - version = "0.3.0" 492 - source = "registry+https://github.com/rust-lang/crates.io-index" 493 - checksum = "49f837c62de05dc9cc71ff6486cd85de8856a330395ae338a04bfcefe5e91075" 494 - dependencies = [ 495 - "num", 496 - "regex", 497 - ] 498 - 499 - [[package]] 500 - name = "hashbrown" 501 - version = "0.12.3" 502 - source = "registry+https://github.com/rust-lang/crates.io-index" 503 - checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" 504 - dependencies = [ 505 - "ahash", 506 - ] 507 - 508 - [[package]] 509 - name = "heck" 510 - version = "0.3.1" 511 - source = "registry+https://github.com/rust-lang/crates.io-index" 512 - checksum = "20564e78d53d2bb135c343b3f47714a56af2061f1c928fdb541dc7b9fdd94205" 513 - dependencies = [ 514 - "unicode-segmentation", 515 - ] 516 - 517 - [[package]] 518 - name = "hermit-abi" 519 - version = "0.1.19" 520 - source = "registry+https://github.com/rust-lang/crates.io-index" 521 - checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33" 522 - dependencies = [ 523 - "libc", 524 - ] 525 - 526 - [[package]] 527 - name = "http" 528 - version = "0.2.8" 529 - source = "registry+https://github.com/rust-lang/crates.io-index" 530 - checksum = "75f43d41e26995c17e71ee126451dd3941010b0514a81a9d11f3b341debc2399" 531 - dependencies = [ 532 - "bytes", 533 - "fnv", 534 - "itoa 1.0.1", 535 - ] 536 - 537 - [[package]] 538 - name = "httparse" 539 - version = "1.3.3" 540 - source = "registry+https://github.com/rust-lang/crates.io-index" 541 - checksum = "e8734b0cfd3bc3e101ec59100e101c2eecd19282202e87808b3037b442777a83" 542 - 543 - [[package]] 544 - name = "httpdate" 545 - version = "0.3.2" 546 - source = "registry+https://github.com/rust-lang/crates.io-index" 547 - checksum = "494b4d60369511e7dea41cf646832512a94e542f68bb9c49e54518e0f468eb47" 548 - 549 - [[package]] 550 - name = "hyperx" 551 - version = "1.4.0" 552 - source = "registry+https://github.com/rust-lang/crates.io-index" 553 - checksum = "5617e92fc2f2501c3e2bc6ce547cad841adba2bae5b921c7e52510beca6d084c" 554 - dependencies = [ 555 - "base64", 556 - "bytes", 557 - "http", 558 - "httpdate", 559 - "language-tags", 560 - "mime", 561 - "percent-encoding", 562 - "unicase", 563 - ] 564 - 565 - [[package]] 566 - name = "iana-time-zone" 567 - version = "0.1.45" 568 - source = "registry+https://github.com/rust-lang/crates.io-index" 569 - checksum = "ef5528d9c2817db4e10cc78f8d4c8228906e5854f389ff6b076cee3572a09d35" 570 - dependencies = [ 571 - "android_system_properties", 572 - "core-foundation-sys", 573 - "js-sys", 574 - "wasm-bindgen", 575 - "winapi", 576 - ] 577 - 578 - [[package]] 579 - name = "idna" 580 - version = "0.2.0" 581 - source = "registry+https://github.com/rust-lang/crates.io-index" 582 - checksum = "02e2673c30ee86b5b96a9cb52ad15718aa1f966f5ab9ad54a8b95d5ca33120a9" 583 - dependencies = [ 584 - "matches", 585 - "unicode-bidi", 586 - "unicode-normalization", 587 - ] 588 - 589 - [[package]] 590 - name = "indexmap" 591 - version = "1.9.2" 592 - source = "registry+https://github.com/rust-lang/crates.io-index" 593 - checksum = "1885e79c1fc4b10f0e172c475f458b7f7b93061064d98c3293e98c5ba0c8b399" 594 - dependencies = [ 595 - "autocfg 1.0.0", 596 - "hashbrown", 597 - ] 598 - 599 - [[package]] 600 - name = "indicatif" 601 - version = "0.17.3" 602 - source = "registry+https://github.com/rust-lang/crates.io-index" 603 - checksum = "cef509aa9bc73864d6756f0d34d35504af3cf0844373afe9b8669a5b8005a729" 604 - dependencies = [ 605 - "console", 606 - "number_prefix", 607 - "portable-atomic", 608 - "unicode-width", 609 - ] 610 - 611 - [[package]] 612 - name = "instant" 613 - version = "0.1.12" 614 - source = "registry+https://github.com/rust-lang/crates.io-index" 615 - checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c" 616 - dependencies = [ 617 - "cfg-if 1.0.0", 618 - ] 619 - 620 - [[package]] 621 - name = "itoa" 622 - version = "0.4.4" 623 - source = "registry+https://github.com/rust-lang/crates.io-index" 624 - checksum = "501266b7edd0174f8530248f87f99c88fbe60ca4ef3dd486835b8d8d53136f7f" 625 - 626 - [[package]] 627 - name = "itoa" 628 - version = "1.0.1" 629 - source = "registry+https://github.com/rust-lang/crates.io-index" 630 - checksum = "1aab8fc367588b89dcee83ab0fd66b72b50b72fa1904d7095045ace2b0c81c35" 631 - 632 - [[package]] 633 - name = "js-sys" 634 - version = "0.3.59" 635 - source = "registry+https://github.com/rust-lang/crates.io-index" 636 - checksum = "258451ab10b34f8af53416d1fdab72c22e805f0c92a1136d59470ec0b11138b2" 637 - dependencies = [ 638 - "wasm-bindgen", 639 - ] 640 - 641 - [[package]] 642 - name = "language-tags" 643 - version = "0.3.2" 644 - source = "registry+https://github.com/rust-lang/crates.io-index" 645 - checksum = "d4345964bb142484797b161f473a503a434de77149dd8c7427788c6e13379388" 646 - 647 - [[package]] 648 - name = "lazy_static" 649 - version = "1.4.0" 650 - source = "registry+https://github.com/rust-lang/crates.io-index" 651 - checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" 652 - 653 - [[package]] 654 - name = "lazycell" 655 - version = "1.3.0" 656 - source = "registry+https://github.com/rust-lang/crates.io-index" 657 - checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" 658 - 659 - [[package]] 660 - name = "libc" 661 - version = "0.2.138" 662 - source = "registry+https://github.com/rust-lang/crates.io-index" 663 - checksum = "db6d7e329c562c5dfab7a46a2afabc8b987ab9a4834c9d1ca04dc54c1546cef8" 664 - 665 - [[package]] 666 - name = "log" 667 - version = "0.4.17" 668 - source = "registry+https://github.com/rust-lang/crates.io-index" 669 - checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e" 670 - dependencies = [ 671 - "cfg-if 1.0.0", 672 - ] 673 - 674 - [[package]] 675 - name = "maplit" 676 - version = "1.0.1" 677 - source = "registry+https://github.com/rust-lang/crates.io-index" 678 - checksum = "08cbb6b4fef96b6d77bfc40ec491b1690c779e77b05cd9f07f787ed376fd4c43" 679 - 680 - [[package]] 681 - name = "matches" 682 - version = "0.1.8" 683 - source = "registry+https://github.com/rust-lang/crates.io-index" 684 - checksum = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08" 685 - 686 - [[package]] 687 - name = "maybe-uninit" 688 - version = "2.0.0" 689 - source = "registry+https://github.com/rust-lang/crates.io-index" 690 - checksum = "60302e4db3a61da70c0cb7991976248362f30319e88850c487b9b95bbf059e00" 691 - 692 - [[package]] 693 - name = "memchr" 694 - version = "2.4.1" 695 - source = "registry+https://github.com/rust-lang/crates.io-index" 696 - checksum = "308cc39be01b73d0d18f82a0e7b2a3df85245f84af96fdddc5d202d27e47b86a" 697 - 698 - [[package]] 699 - name = "mime" 700 - version = "0.3.13" 701 - source = "registry+https://github.com/rust-lang/crates.io-index" 702 - checksum = "3e27ca21f40a310bd06d9031785f4801710d566c184a6e15bad4f1d9b65f9425" 703 - dependencies = [ 704 - "unicase", 705 - ] 706 - 707 - [[package]] 708 - name = "miniz_oxide" 709 - version = "0.5.4" 710 - source = "registry+https://github.com/rust-lang/crates.io-index" 711 - checksum = "96590ba8f175222643a85693f33d26e9c8a015f599c216509b1a6894af675d34" 712 - dependencies = [ 713 - "adler", 714 - ] 715 - 716 - [[package]] 717 - name = "mockito" 718 - version = "0.31.1" 719 - source = "registry+https://github.com/rust-lang/crates.io-index" 720 - checksum = "80f9fece9bd97ab74339fe19f4bcaf52b76dcc18e5364c7977c1838f76b38de9" 721 - dependencies = [ 722 - "assert-json-diff", 723 - "colored", 724 - "httparse", 725 - "lazy_static", 726 - "log", 727 - "rand", 728 - "regex", 729 - "serde_json", 730 - "serde_urlencoded", 731 - "similar", 732 - ] 733 - 734 - [[package]] 735 - name = "msdos_time" 736 - version = "0.1.6" 737 - source = "registry+https://github.com/rust-lang/crates.io-index" 738 - checksum = "aad9dfe950c057b1bfe9c1f2aa51583a8468ef2a5baba2ebbe06d775efeb7729" 739 - dependencies = [ 740 - "time", 741 - "winapi", 742 - ] 743 - 744 - [[package]] 745 - name = "nix" 746 - version = "0.26.1" 747 - source = "registry+https://github.com/rust-lang/crates.io-index" 748 - checksum = "46a58d1d356c6597d08cde02c2f09d785b09e28711837b1ed667dc652c08a694" 749 - dependencies = [ 750 - "bitflags", 751 - "cfg-if 1.0.0", 752 - "libc", 753 - "static_assertions", 754 - ] 755 - 756 - [[package]] 757 - name = "num" 758 - version = "0.2.0" 759 - source = "registry+https://github.com/rust-lang/crates.io-index" 760 - checksum = "cf4825417e1e1406b3782a8ce92f4d53f26ec055e3622e1881ca8e9f5f9e08db" 761 - dependencies = [ 762 - "num-bigint", 763 - "num-complex", 764 - "num-integer", 765 - "num-iter", 766 - "num-rational", 767 - "num-traits", 768 - ] 769 - 770 - [[package]] 771 - name = "num-bigint" 772 - version = "0.2.3" 773 - source = "registry+https://github.com/rust-lang/crates.io-index" 774 - checksum = "f9c3f34cdd24f334cb265d9bf8bfa8a241920d026916785747a92f0e55541a1a" 775 - dependencies = [ 776 - "autocfg 0.1.4", 777 - "num-integer", 778 - "num-traits", 779 - ] 780 - 781 - [[package]] 782 - name = "num-complex" 783 - version = "0.2.3" 784 - source = "registry+https://github.com/rust-lang/crates.io-index" 785 - checksum = "fcb0cf31fb3ff77e6d2a6ebd6800df7fdcd106f2ad89113c9130bcd07f93dffc" 786 - dependencies = [ 787 - "autocfg 0.1.4", 788 - "num-traits", 789 - ] 790 - 791 - [[package]] 792 - name = "num-integer" 793 - version = "0.1.41" 794 - source = "registry+https://github.com/rust-lang/crates.io-index" 795 - checksum = "b85e541ef8255f6cf42bbfe4ef361305c6c135d10919ecc26126c4e5ae94bc09" 796 - dependencies = [ 797 - "autocfg 0.1.4", 798 - "num-traits", 799 - ] 800 - 801 - [[package]] 802 - name = "num-iter" 803 - version = "0.1.39" 804 - source = "registry+https://github.com/rust-lang/crates.io-index" 805 - checksum = "76bd5272412d173d6bf9afdf98db8612bbabc9a7a830b7bfc9c188911716132e" 806 - dependencies = [ 807 - "autocfg 0.1.4", 808 - "num-integer", 809 - "num-traits", 810 - ] 811 - 812 - [[package]] 813 - name = "num-rational" 814 - version = "0.2.2" 815 - source = "registry+https://github.com/rust-lang/crates.io-index" 816 - checksum = "f2885278d5fe2adc2f75ced642d52d879bffaceb5a2e0b1d4309ffdfb239b454" 817 - dependencies = [ 818 - "autocfg 0.1.4", 819 - "num-bigint", 820 - "num-integer", 821 - "num-traits", 822 - ] 823 - 824 - [[package]] 825 - name = "num-traits" 826 - version = "0.2.8" 827 - source = "registry+https://github.com/rust-lang/crates.io-index" 828 - checksum = "6ba9a427cfca2be13aa6f6403b0b7e7368fe982bfa16fccc450ce74c46cd9b32" 829 - dependencies = [ 830 - "autocfg 0.1.4", 831 - ] 832 - 833 - [[package]] 834 - name = "number_prefix" 835 - version = "0.4.0" 836 - source = "registry+https://github.com/rust-lang/crates.io-index" 837 - checksum = "830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3" 838 - 839 - [[package]] 840 - name = "once_cell" 841 - version = "1.17.0" 842 - source = "registry+https://github.com/rust-lang/crates.io-index" 843 - checksum = "6f61fba1741ea2b3d6a1e3178721804bb716a68a6aeba1149b5d52e3d464ea66" 844 - 845 - [[package]] 846 - name = "opaque-debug" 847 - version = "0.2.2" 848 - source = "registry+https://github.com/rust-lang/crates.io-index" 849 - checksum = "93f5bb2e8e8dec81642920ccff6b61f1eb94fa3020c5a325c9851ff604152409" 850 - 851 - [[package]] 852 - name = "openssl-probe" 853 - version = "0.1.5" 854 - source = "registry+https://github.com/rust-lang/crates.io-index" 855 - checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" 856 - 857 - [[package]] 858 - name = "os_info" 859 - version = "3.5.1" 860 - source = "registry+https://github.com/rust-lang/crates.io-index" 861 - checksum = "c4750134fb6a5d49afc80777394ad5d95b04bc12068c6abb92fae8f43817270f" 862 - dependencies = [ 863 - "log", 864 - "serde", 865 - "winapi", 866 - ] 867 - 868 - [[package]] 869 - name = "percent-encoding" 870 - version = "2.1.0" 871 - source = "registry+https://github.com/rust-lang/crates.io-index" 872 - checksum = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e" 873 - 874 - [[package]] 875 - name = "pest" 876 - version = "2.1.1" 877 - source = "registry+https://github.com/rust-lang/crates.io-index" 878 - checksum = "933085deae3f32071f135d799d75667b63c8dc1f4537159756e3d4ceab41868c" 879 - dependencies = [ 880 - "ucd-trie", 881 - ] 882 - 883 - [[package]] 884 - name = "pest_derive" 885 - version = "2.1.0" 886 - source = "registry+https://github.com/rust-lang/crates.io-index" 887 - checksum = "833d1ae558dc601e9a60366421196a8d94bc0ac980476d0b67e1d0988d72b2d0" 888 - dependencies = [ 889 - "pest", 890 - "pest_generator", 891 - ] 892 - 893 - [[package]] 894 - name = "pest_generator" 895 - version = "2.1.0" 896 - source = "registry+https://github.com/rust-lang/crates.io-index" 897 - checksum = "63120576c4efd69615b5537d3d052257328a4ca82876771d6944424ccfd9f646" 898 - dependencies = [ 899 - "pest", 900 - "pest_meta", 901 - "proc-macro2 0.4.30", 902 - "quote 0.6.12", 903 - "syn 0.15.36", 904 - ] 905 - 906 - [[package]] 907 - name = "pest_meta" 908 - version = "2.1.1" 909 - source = "registry+https://github.com/rust-lang/crates.io-index" 910 - checksum = "f249ea6de7c7b7aba92b4ff4376a994c6dbd98fd2166c89d5c4947397ecb574d" 911 - dependencies = [ 912 - "maplit", 913 - "pest", 914 - "sha-1", 915 - ] 916 - 917 - [[package]] 918 - name = "podio" 919 - version = "0.1.6" 920 - source = "registry+https://github.com/rust-lang/crates.io-index" 921 - checksum = "780fb4b6698bbf9cf2444ea5d22411cef2953f0824b98f33cf454ec5615645bd" 922 - 923 - [[package]] 924 - name = "portable-atomic" 925 - version = "0.3.15" 926 - source = "registry+https://github.com/rust-lang/crates.io-index" 927 - checksum = "15eb2c6e362923af47e13c23ca5afb859e83d54452c55b0b9ac763b8f7c1ac16" 928 - 929 - [[package]] 930 - name = "ppv-lite86" 931 - version = "0.2.8" 932 - source = "registry+https://github.com/rust-lang/crates.io-index" 933 - checksum = "237a5ed80e274dbc66f86bd59c1e25edc039660be53194b5fe0a482e0f2612ea" 934 - 935 - [[package]] 936 - name = "proc-macro2" 937 - version = "0.4.30" 938 - source = "registry+https://github.com/rust-lang/crates.io-index" 939 - checksum = "cf3d2011ab5c909338f7887f4fc896d35932e29146c12c8d01da6b22a80ba759" 940 - dependencies = [ 941 - "unicode-xid", 942 - ] 943 - 944 - [[package]] 945 - name = "proc-macro2" 946 - version = "1.0.47" 947 - source = "registry+https://github.com/rust-lang/crates.io-index" 948 - checksum = "5ea3d908b0e36316caf9e9e2c4625cdde190a7e6f440d794667ed17a1855e725" 949 - dependencies = [ 950 - "unicode-ident", 951 - ] 952 - 953 - [[package]] 954 - name = "progress-read" 955 - version = "0.1.0" 956 - 957 - [[package]] 958 - name = "quote" 959 - version = "0.6.12" 960 - source = "registry+https://github.com/rust-lang/crates.io-index" 961 - checksum = "faf4799c5d274f3868a4aae320a0a182cbd2baee377b378f080e16a23e9d80db" 962 - dependencies = [ 963 - "proc-macro2 0.4.30", 964 - ] 965 - 966 - [[package]] 967 - name = "quote" 968 - version = "1.0.2" 969 - source = "registry+https://github.com/rust-lang/crates.io-index" 970 - checksum = "053a8c8bcc71fcce321828dc897a98ab9760bef03a4fc36693c231e5b3216cfe" 971 - dependencies = [ 972 - "proc-macro2 1.0.47", 973 - ] 974 - 975 - [[package]] 976 - name = "rand" 977 - version = "0.8.4" 978 - source = "registry+https://github.com/rust-lang/crates.io-index" 979 - checksum = "2e7573632e6454cf6b99d7aac4ccca54be06da05aca2ef7423d22d27d4d4bcd8" 980 - dependencies = [ 981 - "libc", 982 - "rand_chacha", 983 - "rand_core", 984 - "rand_hc", 985 - ] 986 - 987 - [[package]] 988 - name = "rand_chacha" 989 - version = "0.3.1" 990 - source = "registry+https://github.com/rust-lang/crates.io-index" 991 - checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" 992 - dependencies = [ 993 - "ppv-lite86", 994 - "rand_core", 995 - ] 996 - 997 - [[package]] 998 - name = "rand_core" 999 - version = "0.6.3" 1000 - source = "registry+https://github.com/rust-lang/crates.io-index" 1001 - checksum = "d34f1408f55294453790c48b2f1ebbb1c5b4b7563eb1f418bcfcfdbb06ebb4e7" 1002 - dependencies = [ 1003 - "getrandom", 1004 - ] 1005 - 1006 - [[package]] 1007 - name = "rand_hc" 1008 - version = "0.3.1" 1009 - source = "registry+https://github.com/rust-lang/crates.io-index" 1010 - checksum = "d51e9f596de227fda2ea6c84607f5558e196eeaf43c986b724ba4fb8fdf497e7" 1011 - dependencies = [ 1012 - "rand_core", 1013 - ] 1014 - 1015 - [[package]] 1016 - name = "readext" 1017 - version = "0.1.0" 1018 - source = "registry+https://github.com/rust-lang/crates.io-index" 1019 - checksum = "abdc58f5f18bcf347b55cebb34ed4618b0feff9a9223160f5902adbc1f6a72a6" 1020 - 1021 - [[package]] 1022 - name = "redox_syscall" 1023 - version = "0.2.10" 1024 - source = "registry+https://github.com/rust-lang/crates.io-index" 1025 - checksum = "8383f39639269cde97d255a32bdb68c047337295414940c68bdd30c2e13203ff" 1026 - dependencies = [ 1027 - "bitflags", 1028 - ] 1029 - 1030 - [[package]] 1031 - name = "redox_users" 1032 - version = "0.4.0" 1033 - source = "registry+https://github.com/rust-lang/crates.io-index" 1034 - checksum = "528532f3d801c87aec9def2add9ca802fe569e44a544afe633765267840abe64" 1035 - dependencies = [ 1036 - "getrandom", 1037 - "redox_syscall", 1038 - ] 1039 - 1040 - [[package]] 1041 - name = "regex" 1042 - version = "1.7.1" 1043 - source = "registry+https://github.com/rust-lang/crates.io-index" 1044 - checksum = "48aaa5748ba571fb95cd2c85c09f629215d3a6ece942baa100950af03a34f733" 1045 - dependencies = [ 1046 - "aho-corasick", 1047 - "memchr", 1048 - "regex-syntax", 1049 - ] 1050 - 1051 - [[package]] 1052 - name = "regex-syntax" 1053 - version = "0.6.27" 1054 - source = "registry+https://github.com/rust-lang/crates.io-index" 1055 - checksum = "a3f87b73ce11b1619a3c6332f45341e0047173771e8b8b73f87bfeefb7b56244" 1056 - 1057 - [[package]] 1058 - name = "remove_dir_all" 1059 - version = "0.5.2" 1060 - source = "registry+https://github.com/rust-lang/crates.io-index" 1061 - checksum = "4a83fa3702a688b9359eccba92d153ac33fd2e8462f9e0e3fdf155239ea7792e" 1062 - dependencies = [ 1063 - "winapi", 1064 - ] 1065 - 1066 - [[package]] 1067 - name = "retry" 1068 - version = "2.0.0" 1069 - source = "registry+https://github.com/rust-lang/crates.io-index" 1070 - checksum = "9166d72162de3575f950507683fac47e30f6f2c3836b71b7fbc61aa517c9c5f4" 1071 - dependencies = [ 1072 - "rand", 1073 - ] 1074 - 1075 - [[package]] 1076 - name = "ring" 1077 - version = "0.16.20" 1078 - source = "registry+https://github.com/rust-lang/crates.io-index" 1079 - checksum = "3053cf52e236a3ed746dfc745aa9cacf1b791d846bdaf412f60a8d7d6e17c8fc" 1080 - dependencies = [ 1081 - "cc", 1082 - "libc", 1083 - "once_cell", 1084 - "spin", 1085 - "untrusted", 1086 - "web-sys", 1087 - "winapi", 1088 - ] 1089 - 1090 - [[package]] 1091 - name = "rustls" 1092 - version = "0.20.6" 1093 - source = "registry+https://github.com/rust-lang/crates.io-index" 1094 - checksum = "5aab8ee6c7097ed6057f43c187a62418d0c05a4bd5f18b3571db50ee0f9ce033" 1095 - dependencies = [ 1096 - "log", 1097 - "ring", 1098 - "sct", 1099 - "webpki", 1100 - ] 1101 - 1102 - [[package]] 1103 - name = "rustls-native-certs" 1104 - version = "0.6.2" 1105 - source = "registry+https://github.com/rust-lang/crates.io-index" 1106 - checksum = "0167bac7a9f490495f3c33013e7722b53cb087ecbe082fb0c6387c96f634ea50" 1107 - dependencies = [ 1108 - "openssl-probe", 1109 - "rustls-pemfile", 1110 - "schannel", 1111 - "security-framework", 1112 - ] 1113 - 1114 - [[package]] 1115 - name = "rustls-pemfile" 1116 - version = "1.0.1" 1117 - source = "registry+https://github.com/rust-lang/crates.io-index" 1118 - checksum = "0864aeff53f8c05aa08d86e5ef839d3dfcf07aeba2db32f12db0ef716e87bd55" 1119 - dependencies = [ 1120 - "base64", 1121 - ] 1122 - 1123 - [[package]] 1124 - name = "ryu" 1125 - version = "1.0.6" 1126 - source = "registry+https://github.com/rust-lang/crates.io-index" 1127 - checksum = "3c9613b5a66ab9ba26415184cfc41156594925a9cf3a2057e57f31ff145f6568" 1128 - 1129 - [[package]] 1130 - name = "same-file" 1131 - version = "1.0.5" 1132 - source = "registry+https://github.com/rust-lang/crates.io-index" 1133 - checksum = "585e8ddcedc187886a30fa705c47985c3fa88d06624095856b36ca0b82ff4421" 1134 - dependencies = [ 1135 - "winapi-util", 1136 - ] 1137 - 1138 - [[package]] 1139 - name = "schannel" 1140 - version = "0.1.20" 1141 - source = "registry+https://github.com/rust-lang/crates.io-index" 1142 - checksum = "88d6731146462ea25d9244b2ed5fd1d716d25c52e4d54aa4fb0f3c4e9854dbe2" 1143 - dependencies = [ 1144 - "lazy_static", 1145 - "windows-sys 0.36.1", 1146 - ] 1147 - 1148 - [[package]] 1149 - name = "sct" 1150 - version = "0.7.0" 1151 - source = "registry+https://github.com/rust-lang/crates.io-index" 1152 - checksum = "d53dcdb7c9f8158937a7981b48accfd39a43af418591a5d008c7b22b5e1b7ca4" 1153 - dependencies = [ 1154 - "ring", 1155 - "untrusted", 1156 - ] 1157 - 1158 - [[package]] 1159 - name = "security-framework" 1160 - version = "2.7.0" 1161 - source = "registry+https://github.com/rust-lang/crates.io-index" 1162 - checksum = "2bc1bb97804af6631813c55739f771071e0f2ed33ee20b68c86ec505d906356c" 1163 - dependencies = [ 1164 - "bitflags", 1165 - "core-foundation", 1166 - "core-foundation-sys", 1167 - "libc", 1168 - "security-framework-sys", 1169 - ] 1170 - 1171 - [[package]] 1172 - name = "security-framework-sys" 1173 - version = "2.6.1" 1174 - source = "registry+https://github.com/rust-lang/crates.io-index" 1175 - checksum = "0160a13a177a45bfb43ce71c01580998474f556ad854dcbca936dd2841a5c556" 1176 - dependencies = [ 1177 - "core-foundation-sys", 1178 - "libc", 1179 - ] 1180 - 1181 - [[package]] 1182 - name = "semver" 1183 - version = "0.9.0" 1184 - source = "git+https://github.com/mikrostew/semver?branch=new-parser#7583eb352dc181ccd09978fd2b16461c1b1669c1" 1185 - dependencies = [ 1186 - "semver-parser", 1187 - ] 1188 - 1189 - [[package]] 1190 - name = "semver-parser" 1191 - version = "0.10.0" 1192 - source = "git+https://github.com/mikrostew/semver-parser?branch=rewrite#f5c74268a09eef16a289a667ca7b4925e690fe13" 1193 - dependencies = [ 1194 - "pest", 1195 - "pest_derive", 1196 - ] 1197 - 1198 - [[package]] 1199 - name = "serde" 1200 - version = "1.0.152" 1201 - source = "registry+https://github.com/rust-lang/crates.io-index" 1202 - checksum = "bb7d1f0d3021d347a83e556fc4683dea2ea09d87bccdf88ff5c12545d89d5efb" 1203 - dependencies = [ 1204 - "serde_derive", 1205 - ] 1206 - 1207 - [[package]] 1208 - name = "serde_derive" 1209 - version = "1.0.152" 1210 - source = "registry+https://github.com/rust-lang/crates.io-index" 1211 - checksum = "af487d118eecd09402d70a5d72551860e788df87b464af30e5ea6a38c75c541e" 1212 - dependencies = [ 1213 - "proc-macro2 1.0.47", 1214 - "quote 1.0.2", 1215 - "syn 1.0.105", 1216 - ] 1217 - 1218 - [[package]] 1219 - name = "serde_json" 1220 - version = "1.0.91" 1221 - source = "registry+https://github.com/rust-lang/crates.io-index" 1222 - checksum = "877c235533714907a8c2464236f5c4b2a17262ef1bd71f38f35ea592c8da6883" 1223 - dependencies = [ 1224 - "indexmap", 1225 - "itoa 1.0.1", 1226 - "ryu", 1227 - "serde", 1228 - ] 1229 - 1230 - [[package]] 1231 - name = "serde_urlencoded" 1232 - version = "0.7.0" 1233 - source = "registry+https://github.com/rust-lang/crates.io-index" 1234 - checksum = "edfa57a7f8d9c1d260a549e7224100f6c43d43f9103e06dd8b4095a9b2b43ce9" 1235 - dependencies = [ 1236 - "form_urlencoded", 1237 - "itoa 0.4.4", 1238 - "ryu", 1239 - "serde", 1240 - ] 1241 - 1242 - [[package]] 1243 - name = "sha-1" 1244 - version = "0.8.1" 1245 - source = "registry+https://github.com/rust-lang/crates.io-index" 1246 - checksum = "23962131a91661d643c98940b20fcaffe62d776a823247be80a48fcb8b6fce68" 1247 - dependencies = [ 1248 - "block-buffer", 1249 - "digest", 1250 - "fake-simd", 1251 - "opaque-debug", 1252 - ] 1253 - 1254 - [[package]] 1255 - name = "similar" 1256 - version = "2.1.0" 1257 - source = "registry+https://github.com/rust-lang/crates.io-index" 1258 - checksum = "2e24979f63a11545f5f2c60141afe249d4f19f84581ea2138065e400941d83d3" 1259 - 1260 - [[package]] 1261 - name = "smallvec" 1262 - version = "0.6.14" 1263 - source = "registry+https://github.com/rust-lang/crates.io-index" 1264 - checksum = "b97fcaeba89edba30f044a10c6a3cc39df9c3f17d7cd829dd1446cab35f890e0" 1265 - dependencies = [ 1266 - "maybe-uninit", 1267 - ] 1268 - 1269 - [[package]] 1270 - name = "smawk" 1271 - version = "0.3.1" 1272 - source = "registry+https://github.com/rust-lang/crates.io-index" 1273 - checksum = "f67ad224767faa3c7d8b6d91985b78e70a1324408abcb1cfcc2be4c06bc06043" 1274 - 1275 - [[package]] 1276 - name = "spin" 1277 - version = "0.5.2" 1278 - source = "registry+https://github.com/rust-lang/crates.io-index" 1279 - checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d" 1280 - 1281 - [[package]] 1282 - name = "static_assertions" 1283 - version = "1.1.0" 1284 - source = "registry+https://github.com/rust-lang/crates.io-index" 1285 - checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" 1286 - 1287 - [[package]] 1288 - name = "strsim" 1289 - version = "0.8.0" 1290 - source = "registry+https://github.com/rust-lang/crates.io-index" 1291 - checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a" 1292 - 1293 - [[package]] 1294 - name = "structopt" 1295 - version = "0.2.18" 1296 - source = "registry+https://github.com/rust-lang/crates.io-index" 1297 - checksum = "16c2cdbf9cc375f15d1b4141bc48aeef444806655cd0e904207edc8d68d86ed7" 1298 - dependencies = [ 1299 - "clap", 1300 - "structopt-derive", 1301 - ] 1302 - 1303 - [[package]] 1304 - name = "structopt-derive" 1305 - version = "0.2.18" 1306 - source = "registry+https://github.com/rust-lang/crates.io-index" 1307 - checksum = "53010261a84b37689f9ed7d395165029f9cc7abb9f56bbfe86bee2597ed25107" 1308 - dependencies = [ 1309 - "heck", 1310 - "proc-macro2 0.4.30", 1311 - "quote 0.6.12", 1312 - "syn 0.15.36", 1313 - ] 1314 - 1315 - [[package]] 1316 - name = "syn" 1317 - version = "0.15.36" 1318 - source = "registry+https://github.com/rust-lang/crates.io-index" 1319 - checksum = "8b4f551a91e2e3848aeef8751d0d4eec9489b6474c720fd4c55958d8d31a430c" 1320 - dependencies = [ 1321 - "proc-macro2 0.4.30", 1322 - "quote 0.6.12", 1323 - "unicode-xid", 1324 - ] 1325 - 1326 - [[package]] 1327 - name = "syn" 1328 - version = "1.0.105" 1329 - source = "registry+https://github.com/rust-lang/crates.io-index" 1330 - checksum = "60b9b43d45702de4c839cb9b51d9f529c5dd26a4aff255b42b1ebc03e88ee908" 1331 - dependencies = [ 1332 - "proc-macro2 1.0.47", 1333 - "quote 1.0.2", 1334 - "unicode-ident", 1335 - ] 1336 - 1337 - [[package]] 1338 - name = "tar" 1339 - version = "0.4.38" 1340 - source = "registry+https://github.com/rust-lang/crates.io-index" 1341 - checksum = "4b55807c0344e1e6c04d7c965f5289c39a8d94ae23ed5c0b57aabac549f871c6" 1342 - dependencies = [ 1343 - "filetime", 1344 - "libc", 1345 - "xattr", 1346 - ] 1347 - 1348 - [[package]] 1349 - name = "tee" 1350 - version = "0.1.0" 1351 - source = "registry+https://github.com/rust-lang/crates.io-index" 1352 - checksum = "37c12559dba7383625faaff75be24becf35bfc885044375bcab931111799a3da" 1353 - 1354 - [[package]] 1355 - name = "tempfile" 1356 - version = "3.3.0" 1357 - source = "registry+https://github.com/rust-lang/crates.io-index" 1358 - checksum = "5cdb1ef4eaeeaddc8fbd371e5017057064af0911902ef36b39801f67cc6d79e4" 1359 - dependencies = [ 1360 - "cfg-if 1.0.0", 1361 - "fastrand", 1362 - "libc", 1363 - "redox_syscall", 1364 - "remove_dir_all", 1365 - "winapi", 1366 - ] 1367 - 1368 - [[package]] 1369 - name = "term_size" 1370 - version = "0.3.2" 1371 - source = "registry+https://github.com/rust-lang/crates.io-index" 1372 - checksum = "1e4129646ca0ed8f45d09b929036bafad5377103edd06e50bf574b353d2b08d9" 1373 - dependencies = [ 1374 - "libc", 1375 - "winapi", 1376 - ] 1377 - 1378 - [[package]] 1379 - name = "test-support" 1380 - version = "0.1.0" 1381 - dependencies = [ 1382 - "archive", 1383 - "hamcrest2", 1384 - "serde_json", 1385 - "thiserror", 1386 - ] 1387 - 1388 - [[package]] 1389 - name = "textwrap" 1390 - version = "0.11.0" 1391 - source = "registry+https://github.com/rust-lang/crates.io-index" 1392 - checksum = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060" 1393 - dependencies = [ 1394 - "unicode-width", 1395 - ] 1396 - 1397 - [[package]] 1398 - name = "textwrap" 1399 - version = "0.16.0" 1400 - source = "registry+https://github.com/rust-lang/crates.io-index" 1401 - checksum = "222a222a5bfe1bba4a77b45ec488a741b3cb8872e5e499451fd7d0129c9c7c3d" 1402 - dependencies = [ 1403 - "smawk", 1404 - "unicode-linebreak", 1405 - "unicode-width", 1406 - ] 1407 - 1408 - [[package]] 1409 - name = "thiserror" 1410 - version = "1.0.38" 1411 - source = "registry+https://github.com/rust-lang/crates.io-index" 1412 - checksum = "6a9cd18aa97d5c45c6603caea1da6628790b37f7a34b6ca89522331c5180fed0" 1413 - dependencies = [ 1414 - "thiserror-impl", 1415 - ] 1416 - 1417 - [[package]] 1418 - name = "thiserror-impl" 1419 - version = "1.0.38" 1420 - source = "registry+https://github.com/rust-lang/crates.io-index" 1421 - checksum = "1fb327af4685e4d03fa8cbcf1716380da910eeb2bb8be417e7f9fd3fb164f36f" 1422 - dependencies = [ 1423 - "proc-macro2 1.0.47", 1424 - "quote 1.0.2", 1425 - "syn 1.0.105", 1426 - ] 1427 - 1428 - [[package]] 1429 - name = "time" 1430 - version = "0.1.44" 1431 - source = "registry+https://github.com/rust-lang/crates.io-index" 1432 - checksum = "6db9e6914ab8b1ae1c260a4ae7a49b6c5611b40328a735b21862567685e73255" 1433 - dependencies = [ 1434 - "libc", 1435 - "wasi", 1436 - "winapi", 1437 - ] 1438 - 1439 - [[package]] 1440 - name = "typenum" 1441 - version = "1.14.0" 1442 - source = "registry+https://github.com/rust-lang/crates.io-index" 1443 - checksum = "b63708a265f51345575b27fe43f9500ad611579e764c79edbc2037b1121959ec" 1444 - 1445 - [[package]] 1446 - name = "ucd-trie" 1447 - version = "0.1.1" 1448 - source = "registry+https://github.com/rust-lang/crates.io-index" 1449 - checksum = "71a9c5b1fe77426cf144cc30e49e955270f5086e31a6441dfa8b32efc09b9d77" 1450 - 1451 - [[package]] 1452 - name = "unicase" 1453 - version = "2.6.0" 1454 - source = "registry+https://github.com/rust-lang/crates.io-index" 1455 - checksum = "50f37be617794602aabbeee0be4f259dc1778fabe05e2d67ee8f79326d5cb4f6" 1456 - dependencies = [ 1457 - "version_check", 1458 - ] 1459 - 1460 - [[package]] 1461 - name = "unicode-bidi" 1462 - version = "0.3.4" 1463 - source = "registry+https://github.com/rust-lang/crates.io-index" 1464 - checksum = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5" 1465 - dependencies = [ 1466 - "matches", 1467 - ] 1468 - 1469 - [[package]] 1470 - name = "unicode-ident" 1471 - version = "1.0.5" 1472 - source = "registry+https://github.com/rust-lang/crates.io-index" 1473 - checksum = "6ceab39d59e4c9499d4e5a8ee0e2735b891bb7308ac83dfb4e80cad195c9f6f3" 1474 - 1475 - [[package]] 1476 - name = "unicode-linebreak" 1477 - version = "0.1.4" 1478 - source = "registry+https://github.com/rust-lang/crates.io-index" 1479 - checksum = "c5faade31a542b8b35855fff6e8def199853b2da8da256da52f52f1316ee3137" 1480 - dependencies = [ 1481 - "hashbrown", 1482 - "regex", 1483 - ] 1484 - 1485 - [[package]] 1486 - name = "unicode-normalization" 1487 - version = "0.1.8" 1488 - source = "registry+https://github.com/rust-lang/crates.io-index" 1489 - checksum = "141339a08b982d942be2ca06ff8b076563cbe223d1befd5450716790d44e2426" 1490 - dependencies = [ 1491 - "smallvec", 1492 - ] 1493 - 1494 - [[package]] 1495 - name = "unicode-segmentation" 1496 - version = "1.3.0" 1497 - source = "registry+https://github.com/rust-lang/crates.io-index" 1498 - checksum = "1967f4cdfc355b37fd76d2a954fb2ed3871034eb4f26d60537d88795cfc332a9" 1499 - 1500 - [[package]] 1501 - name = "unicode-width" 1502 - version = "0.1.10" 1503 - source = "registry+https://github.com/rust-lang/crates.io-index" 1504 - checksum = "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b" 1505 - 1506 - [[package]] 1507 - name = "unicode-xid" 1508 - version = "0.1.0" 1509 - source = "registry+https://github.com/rust-lang/crates.io-index" 1510 - checksum = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc" 1511 - 1512 - [[package]] 1513 - name = "untrusted" 1514 - version = "0.7.1" 1515 - source = "registry+https://github.com/rust-lang/crates.io-index" 1516 - checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a" 1517 - 1518 - [[package]] 1519 - name = "url" 1520 - version = "2.3.0" 1521 - source = "registry+https://github.com/rust-lang/crates.io-index" 1522 - checksum = "22fe195a4f217c25b25cb5058ced57059824a678474874038dc88d211bf508d3" 1523 - dependencies = [ 1524 - "form_urlencoded", 1525 - "idna", 1526 - "percent-encoding", 1527 - ] 1528 - 1529 - [[package]] 1530 - name = "validate-npm-package-name" 1531 - version = "0.1.0" 1532 - dependencies = [ 1533 - "lazy_static", 1534 - "percent-encoding", 1535 - "regex", 1536 - ] 1537 - 1538 - [[package]] 1539 - name = "vec_map" 1540 - version = "0.8.1" 1541 - source = "registry+https://github.com/rust-lang/crates.io-index" 1542 - checksum = "05c78687fb1a80548ae3250346c3db86a80a7cdd77bda190189f2d0a0987c81a" 1543 - 1544 - [[package]] 1545 - name = "verbatim" 1546 - version = "0.1.1" 1547 - source = "registry+https://github.com/rust-lang/crates.io-index" 1548 - checksum = "bbad0679079b451226e954019b2efac46bafa8f7b1418b953861e864072a97c6" 1549 - 1550 - [[package]] 1551 - name = "version_check" 1552 - version = "0.9.1" 1553 - source = "registry+https://github.com/rust-lang/crates.io-index" 1554 - checksum = "078775d0255232fb988e6fccf26ddc9d1ac274299aaedcedce21c6f72cc533ce" 1555 - 1556 - [[package]] 1557 - name = "volta" 1558 - version = "1.1.1" 1559 - dependencies = [ 1560 - "atty", 1561 - "cfg-if 1.0.0", 1562 - "ci_info", 1563 - "dirs", 1564 - "envoy", 1565 - "hamcrest2", 1566 - "hyperx", 1567 - "lazy_static", 1568 - "log", 1569 - "mockito", 1570 - "semver", 1571 - "serde", 1572 - "serde_json", 1573 - "structopt", 1574 - "test-support", 1575 - "textwrap 0.16.0", 1576 - "volta-core", 1577 - "volta-migrate", 1578 - "which", 1579 - "winreg", 1580 - ] 1581 - 1582 - [[package]] 1583 - name = "volta-core" 1584 - version = "0.1.0" 1585 - dependencies = [ 1586 - "archive", 1587 - "attohttpc", 1588 - "atty", 1589 - "cfg-if 1.0.0", 1590 - "chain-map", 1591 - "chrono", 1592 - "ci_info", 1593 - "cmdline_words_parser", 1594 - "console", 1595 - "ctrlc", 1596 - "detect-indent", 1597 - "dirs", 1598 - "dunce", 1599 - "envoy", 1600 - "fs-utils", 1601 - "fs2", 1602 - "hyperx", 1603 - "indexmap", 1604 - "indicatif", 1605 - "lazy_static", 1606 - "lazycell", 1607 - "log", 1608 - "mockito", 1609 - "once_cell", 1610 - "os_info", 1611 - "readext", 1612 - "regex", 1613 - "retry", 1614 - "semver", 1615 - "serde", 1616 - "serde_json", 1617 - "tempfile", 1618 - "term_size", 1619 - "textwrap 0.16.0", 1620 - "validate-npm-package-name", 1621 - "volta-layout", 1622 - "walkdir", 1623 - "winreg", 1624 - ] 1625 - 1626 - [[package]] 1627 - name = "volta-layout" 1628 - version = "0.1.1" 1629 - dependencies = [ 1630 - "volta-layout-macro", 1631 - ] 1632 - 1633 - [[package]] 1634 - name = "volta-layout-macro" 1635 - version = "0.1.0" 1636 - dependencies = [ 1637 - "proc-macro2 1.0.47", 1638 - "quote 1.0.2", 1639 - "syn 1.0.105", 1640 - ] 1641 - 1642 - [[package]] 1643 - name = "volta-migrate" 1644 - version = "0.1.0" 1645 - dependencies = [ 1646 - "log", 1647 - "semver", 1648 - "serde", 1649 - "serde_json", 1650 - "tempfile", 1651 - "volta-core", 1652 - "volta-layout", 1653 - "walkdir", 1654 - ] 1655 - 1656 - [[package]] 1657 - name = "walkdir" 1658 - version = "2.3.2" 1659 - source = "registry+https://github.com/rust-lang/crates.io-index" 1660 - checksum = "808cf2735cd4b6866113f648b791c6adc5714537bc222d9347bb203386ffda56" 1661 - dependencies = [ 1662 - "same-file", 1663 - "winapi", 1664 - "winapi-util", 1665 - ] 1666 - 1667 - [[package]] 1668 - name = "wasi" 1669 - version = "0.10.0+wasi-snapshot-preview1" 1670 - source = "registry+https://github.com/rust-lang/crates.io-index" 1671 - checksum = "1a143597ca7c7793eff794def352d41792a93c481eb1042423ff7ff72ba2c31f" 1672 - 1673 - [[package]] 1674 - name = "wasm-bindgen" 1675 - version = "0.2.82" 1676 - source = "registry+https://github.com/rust-lang/crates.io-index" 1677 - checksum = "fc7652e3f6c4706c8d9cd54832c4a4ccb9b5336e2c3bd154d5cccfbf1c1f5f7d" 1678 - dependencies = [ 1679 - "cfg-if 1.0.0", 1680 - "wasm-bindgen-macro", 1681 - ] 1682 - 1683 - [[package]] 1684 - name = "wasm-bindgen-backend" 1685 - version = "0.2.82" 1686 - source = "registry+https://github.com/rust-lang/crates.io-index" 1687 - checksum = "662cd44805586bd52971b9586b1df85cdbbd9112e4ef4d8f41559c334dc6ac3f" 1688 - dependencies = [ 1689 - "bumpalo", 1690 - "log", 1691 - "once_cell", 1692 - "proc-macro2 1.0.47", 1693 - "quote 1.0.2", 1694 - "syn 1.0.105", 1695 - "wasm-bindgen-shared", 1696 - ] 1697 - 1698 - [[package]] 1699 - name = "wasm-bindgen-macro" 1700 - version = "0.2.82" 1701 - source = "registry+https://github.com/rust-lang/crates.io-index" 1702 - checksum = "b260f13d3012071dfb1512849c033b1925038373aea48ced3012c09df952c602" 1703 - dependencies = [ 1704 - "quote 1.0.2", 1705 - "wasm-bindgen-macro-support", 1706 - ] 1707 - 1708 - [[package]] 1709 - name = "wasm-bindgen-macro-support" 1710 - version = "0.2.82" 1711 - source = "registry+https://github.com/rust-lang/crates.io-index" 1712 - checksum = "5be8e654bdd9b79216c2929ab90721aa82faf65c48cdf08bdc4e7f51357b80da" 1713 - dependencies = [ 1714 - "proc-macro2 1.0.47", 1715 - "quote 1.0.2", 1716 - "syn 1.0.105", 1717 - "wasm-bindgen-backend", 1718 - "wasm-bindgen-shared", 1719 - ] 1720 - 1721 - [[package]] 1722 - name = "wasm-bindgen-shared" 1723 - version = "0.2.82" 1724 - source = "registry+https://github.com/rust-lang/crates.io-index" 1725 - checksum = "6598dd0bd3c7d51095ff6531a5b23e02acdc81804e30d8f07afb77b7215a140a" 1726 - 1727 - [[package]] 1728 - name = "web-sys" 1729 - version = "0.3.59" 1730 - source = "registry+https://github.com/rust-lang/crates.io-index" 1731 - checksum = "ed055ab27f941423197eb86b2035720b1a3ce40504df082cac2ecc6ed73335a1" 1732 - dependencies = [ 1733 - "js-sys", 1734 - "wasm-bindgen", 1735 - ] 1736 - 1737 - [[package]] 1738 - name = "webpki" 1739 - version = "0.22.0" 1740 - source = "registry+https://github.com/rust-lang/crates.io-index" 1741 - checksum = "f095d78192e208183081cc07bc5515ef55216397af48b873e5edcd72637fa1bd" 1742 - dependencies = [ 1743 - "ring", 1744 - "untrusted", 1745 - ] 1746 - 1747 - [[package]] 1748 - name = "which" 1749 - version = "4.4.0" 1750 - source = "registry+https://github.com/rust-lang/crates.io-index" 1751 - checksum = "2441c784c52b289a054b7201fc93253e288f094e2f4be9058343127c4226a269" 1752 - dependencies = [ 1753 - "either", 1754 - "libc", 1755 - "once_cell", 1756 - ] 1757 - 1758 - [[package]] 1759 - name = "winapi" 1760 - version = "0.3.9" 1761 - source = "registry+https://github.com/rust-lang/crates.io-index" 1762 - checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" 1763 - dependencies = [ 1764 - "winapi-i686-pc-windows-gnu", 1765 - "winapi-x86_64-pc-windows-gnu", 1766 - ] 1767 - 1768 - [[package]] 1769 - name = "winapi-i686-pc-windows-gnu" 1770 - version = "0.4.0" 1771 - source = "registry+https://github.com/rust-lang/crates.io-index" 1772 - checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" 1773 - 1774 - [[package]] 1775 - name = "winapi-util" 1776 - version = "0.1.5" 1777 - source = "registry+https://github.com/rust-lang/crates.io-index" 1778 - checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178" 1779 - dependencies = [ 1780 - "winapi", 1781 - ] 1782 - 1783 - [[package]] 1784 - name = "winapi-x86_64-pc-windows-gnu" 1785 - version = "0.4.0" 1786 - source = "registry+https://github.com/rust-lang/crates.io-index" 1787 - checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" 1788 - 1789 - [[package]] 1790 - name = "windows-sys" 1791 - version = "0.36.1" 1792 - source = "registry+https://github.com/rust-lang/crates.io-index" 1793 - checksum = "ea04155a16a59f9eab786fe12a4a450e75cdb175f9e0d80da1e17db09f55b8d2" 1794 - dependencies = [ 1795 - "windows_aarch64_msvc 0.36.1", 1796 - "windows_i686_gnu 0.36.1", 1797 - "windows_i686_msvc 0.36.1", 1798 - "windows_x86_64_gnu 0.36.1", 1799 - "windows_x86_64_msvc 0.36.1", 1800 - ] 1801 - 1802 - [[package]] 1803 - name = "windows-sys" 1804 - version = "0.42.0" 1805 - source = "registry+https://github.com/rust-lang/crates.io-index" 1806 - checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7" 1807 - dependencies = [ 1808 - "windows_aarch64_gnullvm", 1809 - "windows_aarch64_msvc 0.42.0", 1810 - "windows_i686_gnu 0.42.0", 1811 - "windows_i686_msvc 0.42.0", 1812 - "windows_x86_64_gnu 0.42.0", 1813 - "windows_x86_64_gnullvm", 1814 - "windows_x86_64_msvc 0.42.0", 1815 - ] 1816 - 1817 - [[package]] 1818 - name = "windows_aarch64_gnullvm" 1819 - version = "0.42.0" 1820 - source = "registry+https://github.com/rust-lang/crates.io-index" 1821 - checksum = "41d2aa71f6f0cbe00ae5167d90ef3cfe66527d6f613ca78ac8024c3ccab9a19e" 1822 - 1823 - [[package]] 1824 - name = "windows_aarch64_msvc" 1825 - version = "0.36.1" 1826 - source = "registry+https://github.com/rust-lang/crates.io-index" 1827 - checksum = "9bb8c3fd39ade2d67e9874ac4f3db21f0d710bee00fe7cab16949ec184eeaa47" 1828 - 1829 - [[package]] 1830 - name = "windows_aarch64_msvc" 1831 - version = "0.42.0" 1832 - source = "registry+https://github.com/rust-lang/crates.io-index" 1833 - checksum = "dd0f252f5a35cac83d6311b2e795981f5ee6e67eb1f9a7f64eb4500fbc4dcdb4" 1834 - 1835 - [[package]] 1836 - name = "windows_i686_gnu" 1837 - version = "0.36.1" 1838 - source = "registry+https://github.com/rust-lang/crates.io-index" 1839 - checksum = "180e6ccf01daf4c426b846dfc66db1fc518f074baa793aa7d9b9aaeffad6a3b6" 1840 - 1841 - [[package]] 1842 - name = "windows_i686_gnu" 1843 - version = "0.42.0" 1844 - source = "registry+https://github.com/rust-lang/crates.io-index" 1845 - checksum = "fbeae19f6716841636c28d695375df17562ca208b2b7d0dc47635a50ae6c5de7" 1846 - 1847 - [[package]] 1848 - name = "windows_i686_msvc" 1849 - version = "0.36.1" 1850 - source = "registry+https://github.com/rust-lang/crates.io-index" 1851 - checksum = "e2e7917148b2812d1eeafaeb22a97e4813dfa60a3f8f78ebe204bcc88f12f024" 1852 - 1853 - [[package]] 1854 - name = "windows_i686_msvc" 1855 - version = "0.42.0" 1856 - source = "registry+https://github.com/rust-lang/crates.io-index" 1857 - checksum = "84c12f65daa39dd2babe6e442988fc329d6243fdce47d7d2d155b8d874862246" 1858 - 1859 - [[package]] 1860 - name = "windows_x86_64_gnu" 1861 - version = "0.36.1" 1862 - source = "registry+https://github.com/rust-lang/crates.io-index" 1863 - checksum = "4dcd171b8776c41b97521e5da127a2d86ad280114807d0b2ab1e462bc764d9e1" 1864 - 1865 - [[package]] 1866 - name = "windows_x86_64_gnu" 1867 - version = "0.42.0" 1868 - source = "registry+https://github.com/rust-lang/crates.io-index" 1869 - checksum = "bf7b1b21b5362cbc318f686150e5bcea75ecedc74dd157d874d754a2ca44b0ed" 1870 - 1871 - [[package]] 1872 - name = "windows_x86_64_gnullvm" 1873 - version = "0.42.0" 1874 - source = "registry+https://github.com/rust-lang/crates.io-index" 1875 - checksum = "09d525d2ba30eeb3297665bd434a54297e4170c7f1a44cad4ef58095b4cd2028" 1876 - 1877 - [[package]] 1878 - name = "windows_x86_64_msvc" 1879 - version = "0.36.1" 1880 - source = "registry+https://github.com/rust-lang/crates.io-index" 1881 - checksum = "c811ca4a8c853ef420abd8592ba53ddbbac90410fab6903b3e79972a631f7680" 1882 - 1883 - [[package]] 1884 - name = "windows_x86_64_msvc" 1885 - version = "0.42.0" 1886 - source = "registry+https://github.com/rust-lang/crates.io-index" 1887 - checksum = "f40009d85759725a34da6d89a94e63d7bdc50a862acf0dbc7c8e488f1edcb6f5" 1888 - 1889 - [[package]] 1890 - name = "winreg" 1891 - version = "0.10.1" 1892 - source = "registry+https://github.com/rust-lang/crates.io-index" 1893 - checksum = "80d0f4e272c85def139476380b12f9ac60926689dd2e01d4923222f40580869d" 1894 - dependencies = [ 1895 - "winapi", 1896 - ] 1897 - 1898 - [[package]] 1899 - name = "xattr" 1900 - version = "0.2.2" 1901 - source = "registry+https://github.com/rust-lang/crates.io-index" 1902 - checksum = "244c3741f4240ef46274860397c7c74e50eb23624996930e484c16679633a54c" 1903 - dependencies = [ 1904 - "libc", 1905 - ] 1906 - 1907 - [[package]] 1908 - name = "zip" 1909 - version = "0.2.8" 1910 - source = "registry+https://github.com/rust-lang/crates.io-index" 1911 - checksum = "e7341988e4535c60882d5e5f0b7ad0a9a56b080ade8bdb5527cb512f7b2180e0" 1912 - dependencies = [ 1913 - "bzip2", 1914 - "flate2", 1915 - "msdos_time", 1916 - "podio", 1917 - "time", 1918 - ]
···
+41 -31
pkgs/by-name/vo/volta/package.nix
··· 1 { 2 lib, 3 rustPlatform, 4 - libiconv, 5 - stdenv, 6 installShellFiles, 7 - darwin, 8 - fetchFromGitHub, 9 }: 10 rustPlatform.buildRustPackage rec { 11 pname = "volta"; 12 - version = "1.1.1"; 13 14 src = fetchFromGitHub { 15 owner = "volta-cli"; 16 repo = "volta"; 17 - rev = "v${version}"; 18 - hash = "sha256-+j3WRpunV+3YfZnyuKA/CsiKr+gOaP2NbmnyoGMN+Mg="; 19 }; 20 21 - cargoLock = { 22 - lockFile = ./Cargo.lock; 23 - outputHashes = { 24 - "detect-indent-0.1.0" = "sha256-qtPkPaBiyuT8GhpEFdU7IkAgKnCbTES0FB2CvNKWqic="; 25 - "semver-0.9.0" = "sha256-nw1somkZe9Qi36vjfWlTcDqHAIbaJj72KBTfmucVxXs="; 26 - "semver-parser-0.10.0" = "sha256-iTGnKSddsriF6JS6lvJNjp9aDzGtfjrHEiCijeie3uE="; 27 - }; 28 - }; 29 30 - buildInputs = 31 - [ installShellFiles ] 32 - ++ lib.optionals stdenv.hostPlatform.isDarwin [ 33 - darwin.apple_sdk.frameworks.Security 34 - libiconv 35 - ]; 36 37 - HOME = "$TMPDIR"; 38 39 - postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) '' 40 - installShellCompletion --cmd volta \ 41 - --bash <($out/bin/volta completions bash) \ 42 - --fish <($out/bin/volta completions fish) \ 43 - --zsh <($out/bin/volta completions zsh) 44 - ''; 45 - meta = with lib; { 46 description = "Hassle-Free JavaScript Tool Manager"; 47 longDescription = '' 48 With Volta, you can select a Node engine once and then stop worrying ··· 56 ''; 57 homepage = "https://volta.sh/"; 58 changelog = "https://github.com/volta-cli/volta/blob/main/RELEASES.md"; 59 - license = with licenses; [ bsd2 ]; 60 - maintainers = with maintainers; [ fbrs ]; 61 }; 62 }
··· 1 { 2 lib, 3 + stdenv, 4 rustPlatform, 5 + fetchFromGitHub, 6 installShellFiles, 7 + buildPackages, 8 + writableTmpDirAsHomeHook, 9 + versionCheckHook, 10 + nix-update-script, 11 }: 12 rustPlatform.buildRustPackage rec { 13 pname = "volta"; 14 + version = "2.0.2"; 15 16 src = fetchFromGitHub { 17 owner = "volta-cli"; 18 repo = "volta"; 19 + tag = "v${version}"; 20 + hash = "sha256-ZI+3/Xbkg/JaZMLhrJEjaSwjs44fOaiRReM2DUTnkkc="; 21 }; 22 23 + useFetchCargoVendor = true; 24 + cargoHash = "sha256-xlqsubkaX2A6d5MIcGf9E0b11Gzneksgku0jvW+UdbE="; 25 26 + buildInputs = [ installShellFiles ]; 27 28 + postInstall = 29 + let 30 + emulator = stdenv.hostPlatform.emulator buildPackages; 31 + in 32 + '' 33 + installShellCompletion --cmd volta \ 34 + --bash <(${emulator} $out/bin/volta completions bash) \ 35 + --fish <(${emulator} $out/bin/volta completions fish) \ 36 + --zsh <(${emulator} $out/bin/volta completions zsh) 37 + ''; 38 39 + nativeCheckInputs = [ 40 + writableTmpDirAsHomeHook 41 + ]; 42 + 43 + nativeInstallCheckInputs = [ 44 + versionCheckHook 45 + ]; 46 + versionCheckProgramArg = [ "--version" ]; 47 + # Tries to create /var/empty/.volta as $HOME is not writable 48 + doInstallCheck = !stdenv.hostPlatform.isDarwin; 49 + 50 + passthru = { 51 + updateScript = nix-update-script { }; 52 + }; 53 + 54 + meta = { 55 description = "Hassle-Free JavaScript Tool Manager"; 56 longDescription = '' 57 With Volta, you can select a Node engine once and then stop worrying ··· 65 ''; 66 homepage = "https://volta.sh/"; 67 changelog = "https://github.com/volta-cli/volta/blob/main/RELEASES.md"; 68 + license = with lib.licenses; [ bsd2 ]; 69 + maintainers = with lib.maintainers; [ fbrs ]; 70 + mainProgram = "volta"; 71 }; 72 }
+8 -7
pkgs/by-name/wl/wlr-randr/package.nix
··· 1 { 2 lib, 3 stdenv, 4 - fetchFromSourcehut, 5 meson, 6 ninja, 7 pkg-config, ··· 11 12 stdenv.mkDerivation rec { 13 pname = "wlr-randr"; 14 - version = "0.4.1"; 15 16 - src = fetchFromSourcehut { 17 - owner = "~emersion"; 18 - repo = pname; 19 rev = "v${version}"; 20 - hash = "sha256-2kWTVAi4hq2d9jQ6yBLVzm3x7n/oSvBdZ45WyjhXhc4="; 21 }; 22 23 strictDeps = true; ··· 34 35 meta = with lib; { 36 description = "Xrandr clone for wlroots compositors"; 37 - homepage = "https://git.sr.ht/~emersion/wlr-randr"; 38 license = licenses.mit; 39 maintainers = with maintainers; [ ma27 ]; 40 platforms = platforms.linux;
··· 1 { 2 lib, 3 stdenv, 4 + fetchFromGitLab, 5 meson, 6 ninja, 7 pkg-config, ··· 11 12 stdenv.mkDerivation rec { 13 pname = "wlr-randr"; 14 + version = "0.5.0"; 15 16 + src = fetchFromGitLab { 17 + domain = "gitlab.freedesktop.org"; 18 + owner = "emersion"; 19 + repo = "wlr-randr"; 20 rev = "v${version}"; 21 + hash = "sha256-lHOGpY0IVnR8QdSqJbtIA4FkhmQ/zDiFNqqXyj8iw/s="; 22 }; 23 24 strictDeps = true; ··· 35 36 meta = with lib; { 37 description = "Xrandr clone for wlroots compositors"; 38 + homepage = "https://gitlab.freedesktop.org/emersion/wlr-randr"; 39 license = licenses.mit; 40 maintainers = with maintainers; [ ma27 ]; 41 platforms = platforms.linux;
+14 -5
pkgs/by-name/xa/xar/package.nix
··· 68 69 nativeBuildInputs = [ autoreconfHook ]; 70 71 - # For some reason libxml2 package headers are in subdirectory and thus aren’t 72 - # picked up by stdenv’s C compiler wrapper (see ccWrapper_addCVars). This 73 - # doesn’t really belong here and either should be part of libxml2 package or 74 - # libxml2 in Nixpkgs can just fix their header paths. 75 - env.NIX_CFLAGS_COMPILE = "-isystem ${libxml2.dev}/include/libxml2"; 76 77 buildInputs = 78 [
··· 68 69 nativeBuildInputs = [ autoreconfHook ]; 70 71 + env.NIX_CFLAGS_COMPILE = toString ( 72 + [ 73 + # For some reason libxml2 package headers are in subdirectory and thus aren’t 74 + # picked up by stdenv’s C compiler wrapper (see ccWrapper_addCVars). This 75 + # doesn’t really belong here and either should be part of libxml2 package or 76 + # libxml2 in Nixpkgs can just fix their header paths. 77 + "-isystem ${libxml2.dev}/include/libxml2" 78 + ] 79 + ++ lib.optionals stdenv.cc.isGNU [ 80 + # fix build on GCC 14 81 + "-Wno-error=implicit-function-declaration" 82 + "-Wno-error=incompatible-pointer-types" 83 + ] 84 + ); 85 86 buildInputs = 87 [
-53
pkgs/development/compilers/llvm/20/llvm/orcjit.patch
··· 1 - From 03d6f704d07aa3650a2f59be6f7802a8735460c3 Mon Sep 17 00:00:00 2001 2 - From: Lang Hames <lhames@gmail.com> 3 - Date: Wed, 29 Jan 2025 03:58:29 +0000 4 - Subject: [PATCH] [ORC][LLI] Remove redundant eh-frame registration plugin 5 - construction from lli. 6 - 7 - As of d0052ebbe2e the setUpGenericLLVMIRPlatform function will automatically 8 - add an instance of the EHFrameRegistrationPlugin (for LLJIT instances whose 9 - object linking layers are ObjectLinkingLayers, not RTDyldObjectLinkingLayers). 10 - 11 - This commit removes the redundant plugin creation in the object linking 12 - layer constructor function in lli.cpp to prevent duplicate registration of 13 - eh-frames, which is likely the cause of recent bot failures, e.g. 14 - https://lab.llvm.org/buildbot/#/builders/108/builds/8685. 15 - 16 - (cherry picked from commit 9052b37ab1aa67a039b34356f37236fecc42bac2) 17 - --- 18 - llvm/tools/lli/lli.cpp | 14 ++++---------- 19 - 1 file changed, 4 insertions(+), 10 deletions(-) 20 - 21 - diff --git a/llvm/tools/lli/lli.cpp b/tools/lli/lli.cpp 22 - index 448660a539a0b0..19246f03941673 100644 23 - --- a/llvm/tools/lli/lli.cpp 24 - +++ b/tools/lli/lli.cpp 25 - @@ -27,9 +27,7 @@ 26 - #include "llvm/ExecutionEngine/Orc/AbsoluteSymbols.h" 27 - #include "llvm/ExecutionEngine/Orc/DebugUtils.h" 28 - #include "llvm/ExecutionEngine/Orc/Debugging/DebuggerSupport.h" 29 - -#include "llvm/ExecutionEngine/Orc/EHFrameRegistrationPlugin.h" 30 - #include "llvm/ExecutionEngine/Orc/EPCDynamicLibrarySearchGenerator.h" 31 - -#include "llvm/ExecutionEngine/Orc/EPCEHFrameRegistrar.h" 32 - #include "llvm/ExecutionEngine/Orc/EPCGenericRTDyldMemoryManager.h" 33 - #include "llvm/ExecutionEngine/Orc/ExecutionUtils.h" 34 - #include "llvm/ExecutionEngine/Orc/IRPartitionLayer.h" 35 - @@ -1033,14 +1031,10 @@ int runOrcJIT(const char *ProgName) { 36 - Builder.getJITTargetMachineBuilder() 37 - ->setRelocationModel(Reloc::PIC_) 38 - .setCodeModel(CodeModel::Small); 39 - - Builder.setObjectLinkingLayerCreator([&P](orc::ExecutionSession &ES, 40 - - const Triple &TT) { 41 - - auto L = std::make_unique<orc::ObjectLinkingLayer>(ES); 42 - - if (P != LLJITPlatform::ExecutorNative) 43 - - L->addPlugin(std::make_unique<orc::EHFrameRegistrationPlugin>( 44 - - ES, ExitOnErr(orc::EPCEHFrameRegistrar::Create(ES)))); 45 - - return L; 46 - - }); 47 - + Builder.setObjectLinkingLayerCreator( 48 - + [&](orc::ExecutionSession &ES, const Triple &TT) { 49 - + return std::make_unique<orc::ObjectLinkingLayer>(ES); 50 - + }); 51 - } 52 - 53 - auto J = ExitOnErr(Builder.create());
···
+10 -4
pkgs/development/compilers/llvm/common/default.nix
··· 500 }) 501 ] 502 ++ 503 - lib.optional (lib.versions.major metadata.release_version == "20") 504 - # Fix OrcJIT 505 - # PR: https://github.com/llvm/llvm-project/pull/125431 506 - (metadata.getVersionFile "llvm/orcjit.patch"); 507 pollyPatches = 508 [ (metadata.getVersionFile "llvm/gnu-install-dirs-polly.patch") ] 509 ++ lib.optional (lib.versionAtLeast metadata.release_version "15")
··· 500 }) 501 ] 502 ++ 503 + lib.optional (lib.versionAtLeast metadata.release_version "20") 504 + # Fix OrcJIT tests with page sizes > 16k 505 + # PR: https://github.com/llvm/llvm-project/pull/127115 506 + ( 507 + fetchpatch { 508 + url = "https://github.com/llvm/llvm-project/commit/415607e10b56d0e6c4661ff1ec5b9b46bf433cba.patch"; 509 + stripLen = 1; 510 + hash = "sha256-vBbuduJB+NnNE9qtR93k64XKrwvc7w3vowjL/aT+iEA="; 511 + } 512 + ); 513 pollyPatches = 514 [ (metadata.getVersionFile "llvm/gnu-install-dirs-polly.patch") ] 515 ++ lib.optional (lib.versionAtLeast metadata.release_version "15")
+2 -17
pkgs/development/compilers/llvm/common/libc/default.nix
··· 14 ninja, 15 isFullBuild ? true, 16 linuxHeaders, 17 - fetchpatch, 18 }: 19 let 20 pname = "libc"; ··· 28 ''); 29 in 30 stdenv.mkDerivation (finalAttrs: { 31 - inherit pname version; 32 33 src = src'; 34 35 sourceRoot = "${finalAttrs.src.name}/runtimes"; 36 37 - patches = 38 - lib.optional (lib.versions.major version == "20") 39 - # Removes invalid token from the LLVM version being placed in the namespace. 40 - # Can be removed when LLVM 20 bumps to rc2. 41 - # PR: https://github.com/llvm/llvm-project/pull/126284 42 - ( 43 - fetchpatch { 44 - url = "https://github.com/llvm/llvm-project/commit/3a3a3230d171e11842a9940b6da0f72022b1c5b3.patch"; 45 - stripLen = 1; 46 - hash = "sha256-QiU1cWp+027ZZNVdvfGVwbIoRd9jqtSbftGsmaW1gig="; 47 - } 48 - ) 49 - ++ patches; 50 - 51 nativeBuildInputs = 52 [ 53 cmake ··· 75 ''; 76 77 postInstall = lib.optionalString (!isFullBuild) '' 78 - substituteAll ${./libc-shim.so} $out/lib/libc.so 79 ''; 80 81 libc = if (!isFullBuild) then stdenv.cc.libc else null;
··· 14 ninja, 15 isFullBuild ? true, 16 linuxHeaders, 17 }: 18 let 19 pname = "libc"; ··· 27 ''); 28 in 29 stdenv.mkDerivation (finalAttrs: { 30 + inherit pname version patches; 31 32 src = src'; 33 34 sourceRoot = "${finalAttrs.src.name}/runtimes"; 35 36 nativeBuildInputs = 37 [ 38 cmake ··· 60 ''; 61 62 postInstall = lib.optionalString (!isFullBuild) '' 63 + substituteAll ${./libc-shim.tpl} $out/lib/libc.so 64 ''; 65 66 libc = if (!isFullBuild) then stdenv.cc.libc else null;
pkgs/development/compilers/llvm/common/libc/libc-shim.so pkgs/development/compilers/llvm/common/libc/libc-shim.tpl
+1 -1
pkgs/development/compilers/llvm/default.nix
··· 30 "17.0.6".officialRelease.sha256 = "sha256-8MEDLLhocshmxoEBRSKlJ/GzJ8nfuzQ8qn0X/vLA+ag="; 31 "18.1.8".officialRelease.sha256 = "sha256-iiZKMRo/WxJaBXct9GdAcAT3cz9d9pnAcO1mmR6oPNE="; 32 "19.1.7".officialRelease.sha256 = "sha256-cZAB5vZjeTsXt9QHbP5xluWNQnAHByHtHnAhVDV0E6I="; 33 - "20.1.0-rc1".officialRelease.sha256 = "sha256-yOczbperlR20+iLoao9g0CR+Ml2mjTCx1cqP/9WOhME="; 34 "21.0.0-git".gitRelease = { 35 rev = "c9f1d2cbf18990311ea1287cc154e3784a10a3b0"; 36 rev-version = "21.0.0-unstable-2025-02-10";
··· 30 "17.0.6".officialRelease.sha256 = "sha256-8MEDLLhocshmxoEBRSKlJ/GzJ8nfuzQ8qn0X/vLA+ag="; 31 "18.1.8".officialRelease.sha256 = "sha256-iiZKMRo/WxJaBXct9GdAcAT3cz9d9pnAcO1mmR6oPNE="; 32 "19.1.7".officialRelease.sha256 = "sha256-cZAB5vZjeTsXt9QHbP5xluWNQnAHByHtHnAhVDV0E6I="; 33 + "20.1.0-rc2".officialRelease.sha256 = "sha256-lBx+MWfYBM6XSJozacALMGlo0DUUWqnsBQyO8lDljSo="; 34 "21.0.0-git".gitRelease = { 35 rev = "c9f1d2cbf18990311ea1287cc154e3784a10a3b0"; 36 rev-version = "21.0.0-unstable-2025-02-10";
+31
pkgs/development/ocaml-modules/arg-complete/default.nix
···
··· 1 + { 2 + lib, 3 + fetchurl, 4 + ocaml, 5 + buildDunePackage, 6 + cppo, 7 + ounit2, 8 + }: 9 + 10 + buildDunePackage rec { 11 + pname = "arg-complete"; 12 + version = "0.2.1"; 13 + 14 + src = fetchurl { 15 + url = "https://github.com/sim642/ocaml-arg-complete/releases/download/${version}/arg-complete-${version}.tbz"; 16 + hash = "sha256-SZvLaeeqY3j2LUvqxGs0Vw57JnnpdvAk1jnE3pk27QU="; 17 + }; 18 + 19 + nativeBuildInputs = [ cppo ]; 20 + 21 + doCheck = lib.versionAtLeast ocaml.version "4.08"; 22 + checkInputs = [ ounit2 ]; 23 + 24 + meta = { 25 + description = "Bash completion support for OCaml Stdlib.Arg"; 26 + homepage = "https://sim642.github.io/ocaml-arg-complete/"; 27 + changelog = "https://raw.githubusercontent.com/sim642/ocaml-arg-complete/refs/tags/${version}/CHANGELOG.md"; 28 + license = lib.licenses.mit; 29 + maintainers = [ lib.maintainers.vbgl ]; 30 + }; 31 + }
+6 -4
pkgs/development/ocaml-modules/mopsa/default.nix
··· 11 ocaml, 12 menhir, 13 apron, 14 camlidl, 15 yojson, 16 zarith, ··· 18 19 buildDunePackage rec { 20 pname = "mopsa"; 21 - version = "1.0"; 22 23 - minimalOCamlVersion = "4.12"; 24 25 src = fetchFromGitLab { 26 owner = "mopsa"; 27 repo = "mopsa-analyzer"; 28 - rev = "v${version}"; 29 - hash = "sha256-nGnWwV7g3SYgShbXGUMooyOdFwXFrQHnQvlc8x9TAS4="; 30 }; 31 32 nativeBuildInputs = [ ··· 36 ]; 37 38 buildInputs = [ 39 camlidl 40 flint 41 libclang
··· 11 ocaml, 12 menhir, 13 apron, 14 + arg-complete, 15 camlidl, 16 yojson, 17 zarith, ··· 19 20 buildDunePackage rec { 21 pname = "mopsa"; 22 + version = "1.1"; 23 24 + minimalOCamlVersion = "4.13"; 25 26 src = fetchFromGitLab { 27 owner = "mopsa"; 28 repo = "mopsa-analyzer"; 29 + tag = "v${version}"; 30 + hash = "sha256-lO5dtGAl1dq8oJco/hPXrAbN05rKc62Zrci/8CLrQ0c="; 31 }; 32 33 nativeBuildInputs = [ ··· 37 ]; 38 39 buildInputs = [ 40 + arg-complete 41 camlidl 42 flint 43 libclang
+2 -2
pkgs/development/ocaml-modules/qcheck/core.nix
··· 6 7 buildDunePackage rec { 8 pname = "qcheck-core"; 9 - version = "0.22"; 10 11 minimalOCamlVersion = "4.08"; 12 ··· 14 owner = "c-cube"; 15 repo = "qcheck"; 16 rev = "v${version}"; 17 - hash = "sha256-JXnrfce/V7Bdu8uH98ZJCLjIHZoONiQ02ltFx6Fbvhg="; 18 }; 19 20 meta = {
··· 6 7 buildDunePackage rec { 8 pname = "qcheck-core"; 9 + version = "0.23"; 10 11 minimalOCamlVersion = "4.08"; 12 ··· 14 owner = "c-cube"; 15 repo = "qcheck"; 16 rev = "v${version}"; 17 + hash = "sha256-tH7NFpAFKOb0jXxLK+zNOIZS9TSORKXe8FuwY13iEUY="; 18 }; 19 20 meta = {
+3 -3
pkgs/development/ocaml-modules/seqes/default.nix
··· 9 10 buildDunePackage rec { 11 pname = "seqes"; 12 - version = "0.2"; 13 src = fetchurl { 14 - url = "https://gitlab.com/nomadic-labs/seqes/-/archive/${version}/seqes-${version}.tar.gz"; 15 - sha256 = "sha256-IxLA0jaIPdX9Zn/GL8UHDJYjA1UBW6leGbZmp64YMjI="; 16 }; 17 18 minimalOCamlVersion = "4.14";
··· 9 10 buildDunePackage rec { 11 pname = "seqes"; 12 + version = "0.4"; 13 src = fetchurl { 14 + url = "https://gitlab.com/raphael-proust/seqes/-/archive/${version}/seqes-${version}.tar.gz"; 15 + hash = "sha256-E4BalN68CJP7u6NSC0XBooWvUeSNqV+3KEOtoJ4g/dM="; 16 }; 17 18 minimalOCamlVersion = "4.14";
-16
pkgs/development/python-modules/playwright/default.nix
··· 13 setuptools-scm, 14 playwright-driver, 15 nixosTests, 16 - writeText, 17 - runCommand, 18 - pythonPackages, 19 nodejs, 20 }: 21 ··· 84 pyee 85 ]; 86 87 - setupHook = writeText "setupHook.sh" '' 88 - addBrowsersPath () { 89 - if [[ ! -v PLAYWRIGHT_BROWSERS_PATH ]] ; then 90 - export PLAYWRIGHT_BROWSERS_PATH="${playwright-driver.browsers}" 91 - fi 92 - } 93 - 94 - addEnvHooks "$targetOffset" addBrowsersPath 95 - ''; 96 - 97 postInstall = '' 98 ln -s ${driver} $out/${python.sitePackages}/playwright/driver 99 ''; ··· 109 { 110 driver = playwright-driver; 111 browsers = playwright-driver.browsers; 112 - env = runCommand "playwright-env-test" { 113 - buildInputs = [ pythonPackages.playwright ]; 114 - } "python ${./test.py}"; 115 } 116 // lib.optionalAttrs stdenv.hostPlatform.isLinux { 117 inherit (nixosTests) playwright-python;
··· 13 setuptools-scm, 14 playwright-driver, 15 nixosTests, 16 nodejs, 17 }: 18 ··· 81 pyee 82 ]; 83 84 postInstall = '' 85 ln -s ${driver} $out/${python.sitePackages}/playwright/driver 86 ''; ··· 96 { 97 driver = playwright-driver; 98 browsers = playwright-driver.browsers; 99 } 100 // lib.optionalAttrs stdenv.hostPlatform.isLinux { 101 inherit (nixosTests) playwright-python;
-10
pkgs/development/python-modules/playwright/test.py
··· 1 - import os 2 - import sys 3 - 4 - from playwright.sync_api import sync_playwright 5 - 6 - with sync_playwright() as p: 7 - browser = p.chromium.launch() 8 - context = browser.new_context() 9 - with open(os.environ["out"], "w") as f: 10 - f.write("OK")
···
+2 -2
pkgs/development/python-modules/pywikibot/default.nix
··· 10 11 buildPythonPackage rec { 12 pname = "pywikibot"; 13 - version = "9.6.1"; 14 format = "setuptools"; 15 16 disabled = pythonOlder "3.7"; 17 18 src = fetchPypi { 19 inherit pname version; 20 - hash = "sha256-736LEUwW1LofS1105TxVWHMGFaEpQGwa+WGIk2OQxmA="; 21 }; 22 23 propagatedBuildInputs = [
··· 10 11 buildPythonPackage rec { 12 pname = "pywikibot"; 13 + version = "9.6.2"; 14 format = "setuptools"; 15 16 disabled = pythonOlder "3.7"; 17 18 src = fetchPypi { 19 inherit pname version; 20 + hash = "sha256-iPmQxOJmc9Ms8UhK43HrYgyyvu0g4/hO8bmO39AXOTo="; 21 }; 22 23 propagatedBuildInputs = [
+2 -2
pkgs/development/tools/pnpm/default.nix
··· 16 hash = "sha256-hHIWjD4f0L/yh+aUsFP8y78gV5o/+VJrYzO+q432Wo0="; 17 }; 18 "10" = { 19 - version = "10.2.1"; 20 - hash = "sha256-+Yjw2TuH4dotjN9qx/RaAcb4Q642BrTKDy/9cTuF+XU="; 21 }; 22 }; 23
··· 16 hash = "sha256-hHIWjD4f0L/yh+aUsFP8y78gV5o/+VJrYzO+q432Wo0="; 17 }; 18 "10" = { 19 + version = "10.4.0"; 20 + hash = "sha256-5X6KVE96hCR8+nfdbZI+rlGZo3NHTlPqsfVAx5Yok4Y="; 21 }; 22 }; 23
-19
pkgs/development/web/playwright/driver.nix
··· 12 makeFontsConf, 13 makeWrapper, 14 runCommand, 15 - writeText, 16 cacert, 17 }: 18 let ··· 189 runHook postInstall 190 ''; 191 192 - setupHook = writeText "setupHook.sh" '' 193 - addBrowsersPath () { 194 - if [[ ! -v PLAYWRIGHT_BROWSERS_PATH ]] ; then 195 - export PLAYWRIGHT_BROWSERS_PATH="${playwright-core.passthru.browsers}" 196 - fi 197 - } 198 - 199 - addEnvHooks "$targetOffset" addBrowsersPath 200 - ''; 201 - 202 meta = playwright.meta // { 203 mainProgram = "playwright"; 204 }; 205 - 206 - passthru.tests.env = runCommand "playwright-core-env-test" { 207 - buildInputs = [ 208 - nodejs 209 - playwright-core 210 - playwright-test 211 - ]; 212 - } "node ${./test.js}"; 213 }); 214 215 browsers = lib.makeOverridable (
··· 12 makeFontsConf, 13 makeWrapper, 14 runCommand, 15 cacert, 16 }: 17 let ··· 188 runHook postInstall 189 ''; 190 191 meta = playwright.meta // { 192 mainProgram = "playwright"; 193 }; 194 }); 195 196 browsers = lib.makeOverridable (
-8
pkgs/development/web/playwright/test.js
··· 1 - const playwright = require('playwright'); 2 - const fs = require('fs'); 3 - playwright.chromium.launch() 4 - .then((browser) => { 5 - console.log('OK'); 6 - fs.writeFileSync(process.env.out, ''); 7 - process.exit(0); 8 - });
···
+2 -2
pkgs/games/path-of-building/default.nix
··· 17 let 18 data = stdenv.mkDerivation (finalAttrs: { 19 pname = "path-of-building-data"; 20 - version = "2.50.0"; 21 22 src = fetchFromGitHub { 23 owner = "PathOfBuildingCommunity"; 24 repo = "PathOfBuilding"; 25 rev = "v${finalAttrs.version}"; 26 - hash = "sha256-mclbLRYFNWgn/f4CyaINJlLq06uWh0+ks82Lger4w9w="; 27 }; 28 29 nativeBuildInputs = [ unzip ];
··· 17 let 18 data = stdenv.mkDerivation (finalAttrs: { 19 pname = "path-of-building-data"; 20 + version = "2.51.0"; 21 22 src = fetchFromGitHub { 23 owner = "PathOfBuildingCommunity"; 24 repo = "PathOfBuilding"; 25 rev = "v${finalAttrs.version}"; 26 + hash = "sha256-Rau3UaWPyaI7QBXCNVtIQSenyNsx5hh2dsd3q8jFjc4="; 27 }; 28 29 nativeBuildInputs = [ unzip ];
+2 -2
pkgs/misc/uboot/default.nix
··· 29 }: 30 31 let 32 - defaultVersion = "2024.10"; 33 defaultSrc = fetchurl { 34 url = "https://ftp.denx.de/pub/u-boot/u-boot-${defaultVersion}.tar.bz2"; 35 - hash = "sha256-so2vSsF+QxVjYweL9RApdYQTf231D87ZsS3zT2GpL7A="; 36 }; 37 38 # Dependencies for the tools need to be included as either native or cross,
··· 29 }: 30 31 let 32 + defaultVersion = "2025.01"; 33 defaultSrc = fetchurl { 34 url = "https://ftp.denx.de/pub/u-boot/u-boot-${defaultVersion}.tar.bz2"; 35 + hash = "sha256-ze99UHyT8bvZ8BXqm8IfoHQmhIFAVQGUWrxvhU1baG8="; 36 }; 37 38 # Dependencies for the tools need to be included as either native or cross,
+1 -1
pkgs/servers/matrix-synapse/default.nix
··· 186 changelog = "https://github.com/element-hq/synapse/releases/tag/v${version}"; 187 description = "Matrix reference homeserver"; 188 license = licenses.agpl3Plus; 189 - maintainers = teams.matrix.members; 190 }; 191 }
··· 186 changelog = "https://github.com/element-hq/synapse/releases/tag/v${version}"; 187 description = "Matrix reference homeserver"; 188 license = licenses.agpl3Plus; 189 + maintainers = with lib.maintainers; teams.matrix.members ++ [ sumnerevans ]; 190 }; 191 }
+4 -4
pkgs/servers/nextcloud/default.nix
··· 59 in 60 { 61 nextcloud29 = generic { 62 - version = "29.0.11"; 63 - hash = "sha256-UGf8F91zICzC39m5ccp7uUy5UEghRgJ9rGILEjweztE="; 64 packages = nextcloud29Packages; 65 }; 66 67 nextcloud30 = generic { 68 - version = "30.0.5"; 69 - hash = "sha256-JIxubmEs7usXDE0luFebCvDmYTq9+gfy/mmTQmt4G+o="; 70 packages = nextcloud30Packages; 71 }; 72
··· 59 in 60 { 61 nextcloud29 = generic { 62 + version = "29.0.12"; 63 + hash = "sha256-wCA1T/Ph0ghzcPcOBY/hcXE2NroPBzpRlK29/zwcr8Y="; 64 packages = nextcloud29Packages; 65 }; 66 67 nextcloud30 = generic { 68 + version = "30.0.6"; 69 + hash = "sha256-rA4JG+aSCWXcDILxSbYy1rWt563uhKezyM/YR0UKjdw="; 70 packages = nextcloud30Packages; 71 }; 72
+26 -26
pkgs/servers/nextcloud/packages/29.json
··· 30 ] 31 }, 32 "collectives": { 33 - "hash": "sha256-IAnJZuaj6KW6kF4daIKxvCEDCViWu30gogm8q2/ooQs=", 34 - "url": "https://github.com/nextcloud/collectives/releases/download/v2.16.0/collectives-2.16.0.tar.gz", 35 - "version": "2.16.0", 36 "description": "Collectives is a Nextcloud App for activist and community projects to organize together.\nCome and gather in collectives to build shared knowledge.\n\n* 👥 **Collective and non-hierarchical workflow by heart**: Collectives are\n tied to a [Nextcloud Team](https://github.com/nextcloud/circles) and\n owned by the collective.\n* 📝 **Collaborative page editing** like known from Etherpad thanks to the\n [Text app](https://github.com/nextcloud/text).\n* 🔤 **Well-known [Markdown](https://en.wikipedia.org/wiki/Markdown) syntax**\n for page formatting.\n\n## Installation\n\nIn your Nextcloud instance, simply navigate to **»Apps«**, find the\n**»Teams«** and **»Collectives«** apps and enable them.", 37 "homepage": "https://github.com/nextcloud/collectives", 38 "licenses": [ ··· 40 ] 41 }, 42 "contacts": { 43 - "hash": "sha256-hqCDr7qEqsi8tZ9Woz9hsUm1HENK16FNz4pcQCto8S4=", 44 - "url": "https://github.com/nextcloud-releases/contacts/releases/download/v6.0.2/contacts-v6.0.2.tar.gz", 45 - "version": "6.0.2", 46 "description": "The Nextcloud contacts app is a user interface for Nextcloud's CardDAV server. Easily sync contacts from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Mail and Calendar – more to come.\n* 🎉 **Never forget a birthday!** You can sync birthdays and other recurring events with your Nextcloud Calendar.\n* 👥 **Sharing of Adressbooks!** You want to share your contacts with your friends or coworkers? No problem!\n* 🙈 **We’re not reinventing the wheel!** Based on the great and open SabreDAV library.", 47 "homepage": "https://github.com/nextcloud/contacts#readme", 48 "licenses": [ ··· 140 ] 141 }, 142 "groupfolders": { 143 - "hash": "sha256-7g18TdAQKLNKrKPZO+TNiUoHtncy6aLBy4KHq7j7VHo=", 144 - "url": "https://github.com/nextcloud-releases/groupfolders/releases/download/v17.0.9/groupfolders-v17.0.9.tar.gz", 145 - "version": "17.0.9", 146 - "description": "Admin configured folders shared with everyone in a group.\n\nFolders can be configured from *Group folders* in the admin settings.\n\nAfter a folder is created, the admin can give access to the folder to one or more groups, control their write/sharing permissions and assign a quota for the folder.\n\nNote: Encrypting the contents of group folders is currently not supported.", 147 "homepage": "https://github.com/nextcloud/groupfolders", 148 "licenses": [ 149 "agpl" ··· 190 ] 191 }, 192 "mail": { 193 - "hash": "sha256-i2gBkqRPvHyZL8raWTIordGVhY1NWi4KN1JLbsQd/8k=", 194 - "url": "https://github.com/nextcloud-releases/mail/releases/download/v3.7.19/mail-v3.7.19.tar.gz", 195 - "version": "3.7.19", 196 "description": "**💌 A mail app for Nextcloud**\n\n- **🚀 Integration with other Nextcloud apps!** Currently Contacts, Calendar & Files – more to come.\n- **📥 Multiple mail accounts!** Personal and company account? No problem, and a nice unified inbox. Connect any IMAP account.\n- **🔒 Send & receive encrypted mails!** Using the great [Mailvelope](https://mailvelope.com) browser extension.\n- **🙈 We’re not reinventing the wheel!** Based on the great [Horde](https://horde.org) libraries.\n- **📬 Want to host your own mail server?** We do not have to reimplement this as you could set up [Mail-in-a-Box](https://mailinabox.email)!\n\n## Ethical AI Rating\n\n### Priority Inbox\n\nPositive:\n* The software for training and inferencing of this model is open source.\n* The model is created and trained on-premises based on the user's own data.\n* The training data is accessible to the user, making it possible to check or correct for bias or optimise the performance and CO2 usage.\n\n### Thread Summaries (opt-in)\n\n**Rating:** 🟢/🟡/🟠/🔴\n\nThe rating depends on the installed text processing backend. See [the rating overview](https://docs.nextcloud.com/server/latest/admin_manual/ai/index.html) for details.\n\nLearn more about the Nextcloud Ethical AI Rating [in our blog](https://nextcloud.com/blog/nextcloud-ethical-ai-rating/).", 197 "homepage": "https://github.com/nextcloud/mail#readme", 198 "licenses": [ ··· 250 ] 251 }, 252 "onlyoffice": { 253 - "hash": "sha256-YXj0tHU++S7YDMYj/Eg5KsSX3qBSYtyuPZfiOBQ8cjk=", 254 - "url": "https://github.com/ONLYOFFICE/onlyoffice-nextcloud/releases/download/v9.5.0/onlyoffice.tar.gz", 255 - "version": "9.5.0", 256 - "description": "ONLYOFFICE connector allows you to view, edit and collaborate on text documents, spreadsheets and presentations within Nextcloud using ONLYOFFICE Docs. This will create a new Edit in ONLYOFFICE action within the document library for Office documents. This allows multiple users to co-author documents in real time from the familiar web interface and save the changes back to your file storage.", 257 "homepage": "https://www.onlyoffice.com", 258 "licenses": [ 259 "agpl" ··· 280 ] 281 }, 282 "previewgenerator": { 283 - "hash": "sha256-kTYmN/tAJwjj2KwnrKVIZa5DhyXHjuNWNskqJZxs4sY=", 284 - "url": "https://github.com/nextcloud-releases/previewgenerator/releases/download/v5.7.0/previewgenerator-v5.7.0.tar.gz", 285 - "version": "5.7.0", 286 "description": "The Preview Generator app allows admins to pre-generate previews. The app listens to edit events and stores this information. Once a cron job is triggered it will generate start preview generation. This means that you can better utilize your system by pre-generating previews when your system is normally idle and thus putting less load on your machine when the requests are actually served.\n\nThe app does not replace on demand preview generation so if a preview is requested before it is pre-generated it will still be shown.\nThe first time you install this app, before using a cron job, you properly want to generate all previews via:\n**./occ preview:generate-all -vvv**\n\n**Important**: To enable pre-generation of previews you must add **php /var/www/nextcloud/occ preview:pre-generate** to a system cron job that runs at times of your choosing.", 287 "homepage": "https://github.com/nextcloud/previewgenerator", 288 "licenses": [ ··· 330 ] 331 }, 332 "sociallogin": { 333 - "hash": "sha256-P9OBXDW3+iOtC9/dQ/M89YxY3OQ0u5I8Z1XQLvYznEo=", 334 - "url": "https://github.com/zorn-v/nextcloud-social-login/releases/download/v5.8.4/release.tar.gz", 335 - "version": "5.8.4", 336 "description": "# Social login\n\nMake possible create users and login via Telegram, OAuth or OpenID\n\nFor OAuth you must create app for certain providers. Login button appear at login page if app id specified. Settings are in \"Social login\" section of settings page.\n\n## Installation\n\nLogin to your NextCloud installation as an administrator and under \"Apps\" click \"Download and enable\" next to the \"Social Login\" app.\n\nSee below for setup and configuration instructions.\n\n\n\n## Custom OAuth2/OIDC groups\n\nYou can use groups from your custom provider. For that you should specify \"Groups claim\" in custom OAuth2/OIDC provider settings. That claim should be returned from provider in `id_token` or at user info endpoint. Format should be `array` or comma separated string. Eg (with claim named `roles`)\n\n```json\n{\"roles\": [\"admin\", \"user\"]}\n```\nor\n```json\n{\"roles\": \"admin,user\"}\n```\n\nAlso nested claims is supported. For example `resource_access.client-id.roles` for\n\n```json\n\"resource_access\": {\n \"client-id\": {\n \"roles\": [\n \"client-role-1\",\n \"client-role-2\"\n ]\n }\n}\n```\n\nThere is also support for setting the displayName:\n```\n{\"roles\": [{gid: 1, displayName: \"admin\"}, {gid: 2, displayName: \"user\"}]}\n```\n\n\nYou can use provider groups in two ways:\n\n1. Map provider groups to existing nextcloud groups\n2. Create provider groups in nextcloud and associate it to user (if appropriate option specified)\n\nIf you want sync groups on every login do not forget to check \"Update user profile every login\" setting\n\n## Examples for groups\n\n* You can find example how to configure WSO2IS for return roles claim with OIDC [here](https://medium.com/@dewni.matheesha/claim-mapping-and-retrieving-end-user-information-in-wso2is-cffd5f3937ff)\n* [GitLab OIDC allowing specific GitLab groups](https://github.com/zorn-v/nextcloud-social-login/blob/master/docs/sso/gitlab.md)\n\n## Built-in OAuth providers\n\nYou can copy link of certain login button to get proper \"redirect url\" for OAuth app setting.\n\n* [Google](https://github.com/zorn-v/nextcloud-social-login/blob/master/docs/sso/google.md)\n* [Amazon](https://developer.amazon.com/loginwithamazon/console/site/lwa/overview.html)\n* [Facebook](https://github.com/zorn-v/nextcloud-social-login/blob/master/docs/sso/facebook.md)\n* [Twitter](https://github.com/zorn-v/nextcloud-social-login/blob/master/docs/sso/twitter.md)\n* [GitHub](https://github.com/settings/developers)\n* [Discord](#configure-discord)\n* [Telegram](https://github.com/zorn-v/nextcloud-social-login/blob/master/docs/sso/telegram.md)\n* PlexTv - you can use any title as app id\n* [Codeberg](https://github.com/zorn-v/nextcloud-social-login/blob/master/docs/sso/codeberg.md)\n\nDetails about \"Allow login only from specified domain\" google setting you can find here [#44](https://github.com/zorn-v/nextcloud-social-login/issues/44)\nYou can use comma separated list for multiple domains\n\n## Config\n\nYou can use `'social_login_auto_redirect' => true` setting in `config.php` for auto redirect unauthorized users to social login if only one provider is configured.\nIf you want to temporary disable this function (e.g. for login as local admin), you can add `noredir=1` query parameter in url for login page. Something like `https://cloud.domain.com/login?noredir=1`\n\nTo set options for http client, you can use\n```php\n 'social_login_http_client' => [\n 'timeout' => 45,\n 'proxy' => 'socks4://127.0.0.1:9050', // Check https://curl.se/libcurl/c/CURLOPT_PROXY.html for allowed variants\n ],\n```\nin `config.php`\n\n### Configurate a provider via CLI\n\nYou can configure everything from commandline by using the occ utility. To setup a oidc-provider replace the variables and URLs with values that match your deployment.\n```bash\nphp occ config:app:set sociallogin custom_providers --value='{\"custom_oidc\": [{\"name\": \"gitlab_oidc\", \"title\": \"Gitlab\", \"authorizeUrl\": \"https://gitlab.my-domain.org/oauth/authorize\", \"tokenUrl\": \"https://gitlab.my-domain.org/oauth/token\", \"userInfoUrl\": \"https://gitlab.my-domain.org/oauth/userinfo\", \"logoutUrl\": \"\", \"clientId\": \"$my_application_id\", \"clientSecret\": \"$my_super_secret_secret\", \"scope\": \"openid\", \"groupsClaim\": \"groups\", \"style\": \"gitlab\", \"defaultGroup\": \"\"}]}'\n```\nto do this with docker you just need to add `docker exec -t -uwww-data CONTAINER_NAME` in front of the command, or run it interactively from `docker exec -it -uwww-data CONTAINER_NAME sh`\n\nTo find out how to configure other providers, just configure them in the GUI and take a look at the database afterwards:\n```\nmysql -u nextcloud -p nextcloud\nPassword: <yourpassword>\n\n> SELECT * FROM oc_appconfig WHERE appid='sociallogin';\n```\n\nOr just run\n\n`docker exec -t -uwww-data CONTAINER_NAME php occ config:app:get sociallogin custom_providers`\n\n### Configure Discord\n\nTo properly configure discord you have to:\n\n1. Create new discord application on [DiscordApp developers](https://discordapp.com/developers/applications/me#top)\n2. Open tab `Settings -> OAuth2 -> General`. In `Redirects` add new redirection link looking like this: `https://nextcloud.mydomain.com/apps/sociallogin/oauth/discord`.\n3. Copy `CLIENT ID` and generate and copy `CLIENT SECRET`\n4. Open in Nextcloud `Settings -> Social Login` and paste `CLIENT ID` into field `App id` and `CLIENT SECRET` into `Secret`.\n5. Select default group for users created this way.\n6. For group mapping check [#395](https://github.com/zorn-v/nextcloud-social-login/pull/395)\n\n## Hint\n\n### About Callback(Reply) Url\nYou can copy link from specific login button on login page and paste it on provider's website as callback url. To make proper button visible, just fill certain provider settings with random data and change it later.\n\nSome users may get strange reply(Callback) url error from provider even if you pasted the right url, that's because your nextcloud server may generate http urls when you are actually using https.\nPlease set 'overwriteprotocol' => 'https', in your config.php file.", 337 "homepage": "https://github.com/zorn-v/nextcloud-social-login", 338 "licenses": [ ··· 340 ] 341 }, 342 "spreed": { 343 - "hash": "sha256-8C2TopybeFczpaNQF3IWeVh3uPXmNjQ1mdcWTyYOsZw=", 344 - "url": "https://github.com/nextcloud-releases/spreed/releases/download/v19.0.12/spreed-v19.0.12.tar.gz", 345 - "version": "19.0.12", 346 "description": "Chat, video & audio-conferencing using WebRTC\n\n* 💬 **Chat** Nextcloud Talk comes with a simple text chat, allowing you to share or upload files from your Nextcloud Files app or local device and mention other participants.\n* 👥 **Private, group, public and password protected calls!** Invite someone, a whole group or send a public link to invite to a call.\n* 🌐 **Federated chats** Chat with other Nextcloud users on their servers\n* 💻 **Screen sharing!** Share your screen with the participants of your call.\n* 🚀 **Integration with other Nextcloud apps** like Files, Calendar, User status, Dashboard, Flow, Maps, Smart picker, Contacts, Deck, and many more.\n* 🌉 **Sync with other chat solutions** With [Matterbridge](https://github.com/42wim/matterbridge/) being integrated in Talk, you can easily sync a lot of other chat solutions to Nextcloud Talk and vice-versa.", 347 "homepage": "https://github.com/nextcloud/spreed", 348 "licenses": [
··· 30 ] 31 }, 32 "collectives": { 33 + "hash": "sha256-1BEK5T+6w8yLSXyj/Me8QMls/LSWaor5TpvC2HK3/4U=", 34 + "url": "https://github.com/nextcloud/collectives/releases/download/v2.16.1/collectives-2.16.1.tar.gz", 35 + "version": "2.16.1", 36 "description": "Collectives is a Nextcloud App for activist and community projects to organize together.\nCome and gather in collectives to build shared knowledge.\n\n* 👥 **Collective and non-hierarchical workflow by heart**: Collectives are\n tied to a [Nextcloud Team](https://github.com/nextcloud/circles) and\n owned by the collective.\n* 📝 **Collaborative page editing** like known from Etherpad thanks to the\n [Text app](https://github.com/nextcloud/text).\n* 🔤 **Well-known [Markdown](https://en.wikipedia.org/wiki/Markdown) syntax**\n for page formatting.\n\n## Installation\n\nIn your Nextcloud instance, simply navigate to **»Apps«**, find the\n**»Teams«** and **»Collectives«** apps and enable them.", 37 "homepage": "https://github.com/nextcloud/collectives", 38 "licenses": [ ··· 40 ] 41 }, 42 "contacts": { 43 + "hash": "sha256-o7RoBhg0UFzZoxXj1Qovbheq1i7wBHnn4hSnEbc/D/c=", 44 + "url": "https://github.com/nextcloud-releases/contacts/releases/download/v6.0.3/contacts-v6.0.3.tar.gz", 45 + "version": "6.0.3", 46 "description": "The Nextcloud contacts app is a user interface for Nextcloud's CardDAV server. Easily sync contacts from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Mail and Calendar – more to come.\n* 🎉 **Never forget a birthday!** You can sync birthdays and other recurring events with your Nextcloud Calendar.\n* 👥 **Sharing of Adressbooks!** You want to share your contacts with your friends or coworkers? No problem!\n* 🙈 **We’re not reinventing the wheel!** Based on the great and open SabreDAV library.", 47 "homepage": "https://github.com/nextcloud/contacts#readme", 48 "licenses": [ ··· 140 ] 141 }, 142 "groupfolders": { 143 + "hash": "sha256-yfTZjAsmv2wdMNNP1Tm0fmzSIlUwRfMraNPgFEHW238=", 144 + "url": "https://github.com/nextcloud-releases/groupfolders/releases/download/v17.0.10/groupfolders-v17.0.10.tar.gz", 145 + "version": "17.0.10", 146 + "description": "Admin configured folders shared with everyone in a team.\n\nFolders can be configured from *Team folders* in the admin settings.\n\nAfter a folder is created, the admin can give access to the folder to one or more teams, control their write/sharing permissions and assign a quota for the folder.", 147 "homepage": "https://github.com/nextcloud/groupfolders", 148 "licenses": [ 149 "agpl" ··· 190 ] 191 }, 192 "mail": { 193 + "hash": "sha256-YGgJgWZYnJuhhHxabx/tUmcnmfDgjWiZUBnhGThihrU=", 194 + "url": "https://github.com/nextcloud-releases/mail/releases/download/v3.7.20/mail-v3.7.20.tar.gz", 195 + "version": "3.7.20", 196 "description": "**💌 A mail app for Nextcloud**\n\n- **🚀 Integration with other Nextcloud apps!** Currently Contacts, Calendar & Files – more to come.\n- **📥 Multiple mail accounts!** Personal and company account? No problem, and a nice unified inbox. Connect any IMAP account.\n- **🔒 Send & receive encrypted mails!** Using the great [Mailvelope](https://mailvelope.com) browser extension.\n- **🙈 We’re not reinventing the wheel!** Based on the great [Horde](https://horde.org) libraries.\n- **📬 Want to host your own mail server?** We do not have to reimplement this as you could set up [Mail-in-a-Box](https://mailinabox.email)!\n\n## Ethical AI Rating\n\n### Priority Inbox\n\nPositive:\n* The software for training and inferencing of this model is open source.\n* The model is created and trained on-premises based on the user's own data.\n* The training data is accessible to the user, making it possible to check or correct for bias or optimise the performance and CO2 usage.\n\n### Thread Summaries (opt-in)\n\n**Rating:** 🟢/🟡/🟠/🔴\n\nThe rating depends on the installed text processing backend. See [the rating overview](https://docs.nextcloud.com/server/latest/admin_manual/ai/index.html) for details.\n\nLearn more about the Nextcloud Ethical AI Rating [in our blog](https://nextcloud.com/blog/nextcloud-ethical-ai-rating/).", 197 "homepage": "https://github.com/nextcloud/mail#readme", 198 "licenses": [ ··· 250 ] 251 }, 252 "onlyoffice": { 253 + "hash": "sha256-zAhrnZ/rzzo6+ycozd8ihxIHVRHmQ+haudts2PcxnoM=", 254 + "url": "https://github.com/ONLYOFFICE/onlyoffice-nextcloud/releases/download/v9.6.0/onlyoffice.tar.gz", 255 + "version": "9.6.0", 256 + "description": "ONLYOFFICE app allows you to view, edit and collaborate on text documents, spreadsheets and presentations within Nextcloud using ONLYOFFICE Docs. This will create a new Edit in ONLYOFFICE action within the document library for Office documents. This allows multiple users to co-author documents in real time from the familiar web interface and save the changes back to your file storage.", 257 "homepage": "https://www.onlyoffice.com", 258 "licenses": [ 259 "agpl" ··· 280 ] 281 }, 282 "previewgenerator": { 283 + "hash": "sha256-dPUvtVFtSqlG9M1RXZ8u7nL3wgK5yFU2/pL9pFLjisc=", 284 + "url": "https://github.com/nextcloud-releases/previewgenerator/releases/download/v5.8.0/previewgenerator-v5.8.0.tar.gz", 285 + "version": "5.8.0", 286 "description": "The Preview Generator app allows admins to pre-generate previews. The app listens to edit events and stores this information. Once a cron job is triggered it will generate start preview generation. This means that you can better utilize your system by pre-generating previews when your system is normally idle and thus putting less load on your machine when the requests are actually served.\n\nThe app does not replace on demand preview generation so if a preview is requested before it is pre-generated it will still be shown.\nThe first time you install this app, before using a cron job, you properly want to generate all previews via:\n**./occ preview:generate-all -vvv**\n\n**Important**: To enable pre-generation of previews you must add **php /var/www/nextcloud/occ preview:pre-generate** to a system cron job that runs at times of your choosing.", 287 "homepage": "https://github.com/nextcloud/previewgenerator", 288 "licenses": [ ··· 330 ] 331 }, 332 "sociallogin": { 333 + "hash": "sha256-XJbeVUYr3NZvynZyRlRtc0NNEJxcIHjwNst/J2+IBUM=", 334 + "url": "https://github.com/zorn-v/nextcloud-social-login/releases/download/v5.9.1/release.tar.gz", 335 + "version": "5.9.1", 336 "description": "# Social login\n\nMake possible create users and login via Telegram, OAuth or OpenID\n\nFor OAuth you must create app for certain providers. Login button appear at login page if app id specified. Settings are in \"Social login\" section of settings page.\n\n## Installation\n\nLogin to your NextCloud installation as an administrator and under \"Apps\" click \"Download and enable\" next to the \"Social Login\" app.\n\nSee below for setup and configuration instructions.\n\n\n\n## Custom OAuth2/OIDC groups\n\nYou can use groups from your custom provider. For that you should specify \"Groups claim\" in custom OAuth2/OIDC provider settings. That claim should be returned from provider in `id_token` or at user info endpoint. Format should be `array` or comma separated string. Eg (with claim named `roles`)\n\n```json\n{\"roles\": [\"admin\", \"user\"]}\n```\nor\n```json\n{\"roles\": \"admin,user\"}\n```\n\nAlso nested claims is supported. For example `resource_access.client-id.roles` for\n\n```json\n\"resource_access\": {\n \"client-id\": {\n \"roles\": [\n \"client-role-1\",\n \"client-role-2\"\n ]\n }\n}\n```\n\nThere is also support for setting the displayName:\n```\n{\"roles\": [{gid: 1, displayName: \"admin\"}, {gid: 2, displayName: \"user\"}]}\n```\n\n\nYou can use provider groups in two ways:\n\n1. Map provider groups to existing nextcloud groups\n2. Create provider groups in nextcloud and associate it to user (if appropriate option specified)\n\nIf you want sync groups on every login do not forget to check \"Update user profile every login\" setting\n\n## Examples for groups\n\n* You can find example how to configure WSO2IS for return roles claim with OIDC [here](https://medium.com/@dewni.matheesha/claim-mapping-and-retrieving-end-user-information-in-wso2is-cffd5f3937ff)\n* [GitLab OIDC allowing specific GitLab groups](https://github.com/zorn-v/nextcloud-social-login/blob/master/docs/sso/gitlab.md)\n\n## Built-in OAuth providers\n\nYou can copy link of certain login button to get proper \"redirect url\" for OAuth app setting.\n\n* [Google](https://github.com/zorn-v/nextcloud-social-login/blob/master/docs/sso/google.md)\n* [Amazon](https://developer.amazon.com/loginwithamazon/console/site/lwa/overview.html)\n* [Facebook](https://github.com/zorn-v/nextcloud-social-login/blob/master/docs/sso/facebook.md)\n* [Twitter](https://github.com/zorn-v/nextcloud-social-login/blob/master/docs/sso/twitter.md)\n* [GitHub](https://github.com/settings/developers)\n* [Discord](#configure-discord)\n* [Telegram](https://github.com/zorn-v/nextcloud-social-login/blob/master/docs/sso/telegram.md)\n* PlexTv - you can use any title as app id\n* [Codeberg](https://github.com/zorn-v/nextcloud-social-login/blob/master/docs/sso/codeberg.md)\n\nDetails about \"Allow login only from specified domain\" google setting you can find here [#44](https://github.com/zorn-v/nextcloud-social-login/issues/44)\nYou can use comma separated list for multiple domains\n\n## Config\n\nYou can use `'social_login_auto_redirect' => true` setting in `config.php` for auto redirect unauthorized users to social login if only one provider is configured.\nIf you want to temporary disable this function (e.g. for login as local admin), you can add `noredir=1` query parameter in url for login page. Something like `https://cloud.domain.com/login?noredir=1`\n\nTo set options for http client, you can use\n```php\n 'social_login_http_client' => [\n 'timeout' => 45,\n 'proxy' => 'socks4://127.0.0.1:9050', // Check https://curl.se/libcurl/c/CURLOPT_PROXY.html for allowed variants\n ],\n```\nin `config.php`\n\n### Configurate a provider via CLI\n\nYou can configure everything from commandline by using the occ utility. To setup a oidc-provider replace the variables and URLs with values that match your deployment.\n```bash\nphp occ config:app:set sociallogin custom_providers --value='{\"custom_oidc\": [{\"name\": \"gitlab_oidc\", \"title\": \"Gitlab\", \"authorizeUrl\": \"https://gitlab.my-domain.org/oauth/authorize\", \"tokenUrl\": \"https://gitlab.my-domain.org/oauth/token\", \"userInfoUrl\": \"https://gitlab.my-domain.org/oauth/userinfo\", \"logoutUrl\": \"\", \"clientId\": \"$my_application_id\", \"clientSecret\": \"$my_super_secret_secret\", \"scope\": \"openid\", \"groupsClaim\": \"groups\", \"style\": \"gitlab\", \"defaultGroup\": \"\"}]}'\n```\nto do this with docker you just need to add `docker exec -t -uwww-data CONTAINER_NAME` in front of the command, or run it interactively from `docker exec -it -uwww-data CONTAINER_NAME sh`\n\nTo find out how to configure other providers, just configure them in the GUI and take a look at the database afterwards:\n```\nmysql -u nextcloud -p nextcloud\nPassword: <yourpassword>\n\n> SELECT * FROM oc_appconfig WHERE appid='sociallogin';\n```\n\nOr just run\n\n`docker exec -t -uwww-data CONTAINER_NAME php occ config:app:get sociallogin custom_providers`\n\n### Configure Discord\n\nTo properly configure discord you have to:\n\n1. Create new discord application on [DiscordApp developers](https://discordapp.com/developers/applications/me#top)\n2. Open tab `Settings -> OAuth2 -> General`. In `Redirects` add new redirection link looking like this: `https://nextcloud.mydomain.com/apps/sociallogin/oauth/discord`.\n3. Copy `CLIENT ID` and generate and copy `CLIENT SECRET`\n4. Open in Nextcloud `Settings -> Social Login` and paste `CLIENT ID` into field `App id` and `CLIENT SECRET` into `Secret`.\n5. Select default group for users created this way.\n6. For group mapping check [#395](https://github.com/zorn-v/nextcloud-social-login/pull/395)\n\n## Hint\n\n### About Callback(Reply) Url\nYou can copy link from specific login button on login page and paste it on provider's website as callback url. To make proper button visible, just fill certain provider settings with random data and change it later.\n\nSome users may get strange reply(Callback) url error from provider even if you pasted the right url, that's because your nextcloud server may generate http urls when you are actually using https.\nPlease set 'overwriteprotocol' => 'https', in your config.php file.", 337 "homepage": "https://github.com/zorn-v/nextcloud-social-login", 338 "licenses": [ ··· 340 ] 341 }, 342 "spreed": { 343 + "hash": "sha256-JJp0dzFKJttDBuPOavraF7odo/0tVoDAeMPHVkmB78s=", 344 + "url": "https://github.com/nextcloud-releases/spreed/releases/download/v19.0.13/spreed-v19.0.13.tar.gz", 345 + "version": "19.0.13", 346 "description": "Chat, video & audio-conferencing using WebRTC\n\n* 💬 **Chat** Nextcloud Talk comes with a simple text chat, allowing you to share or upload files from your Nextcloud Files app or local device and mention other participants.\n* 👥 **Private, group, public and password protected calls!** Invite someone, a whole group or send a public link to invite to a call.\n* 🌐 **Federated chats** Chat with other Nextcloud users on their servers\n* 💻 **Screen sharing!** Share your screen with the participants of your call.\n* 🚀 **Integration with other Nextcloud apps** like Files, Calendar, User status, Dashboard, Flow, Maps, Smart picker, Contacts, Deck, and many more.\n* 🌉 **Sync with other chat solutions** With [Matterbridge](https://github.com/42wim/matterbridge/) being integrated in Talk, you can easily sync a lot of other chat solutions to Nextcloud Talk and vice-versa.", 347 "homepage": "https://github.com/nextcloud/spreed", 348 "licenses": [
+23 -23
pkgs/servers/nextcloud/packages/30.json
··· 20 ] 21 }, 22 "calendar": { 23 - "hash": "sha256-nroc7URZtN5LhGg4wYgr3wD0k8k3vYj9k/V4H0JF2C0=", 24 - "url": "https://github.com/nextcloud-releases/calendar/releases/download/v5.0.9/calendar-v5.0.9.tar.gz", 25 - "version": "5.0.9", 26 "description": "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries.", 27 "homepage": "https://github.com/nextcloud/calendar/", 28 "licenses": [ ··· 30 ] 31 }, 32 "collectives": { 33 - "hash": "sha256-IAnJZuaj6KW6kF4daIKxvCEDCViWu30gogm8q2/ooQs=", 34 - "url": "https://github.com/nextcloud/collectives/releases/download/v2.16.0/collectives-2.16.0.tar.gz", 35 - "version": "2.16.0", 36 "description": "Collectives is a Nextcloud App for activist and community projects to organize together.\nCome and gather in collectives to build shared knowledge.\n\n* 👥 **Collective and non-hierarchical workflow by heart**: Collectives are\n tied to a [Nextcloud Team](https://github.com/nextcloud/circles) and\n owned by the collective.\n* 📝 **Collaborative page editing** like known from Etherpad thanks to the\n [Text app](https://github.com/nextcloud/text).\n* 🔤 **Well-known [Markdown](https://en.wikipedia.org/wiki/Markdown) syntax**\n for page formatting.\n\n## Installation\n\nIn your Nextcloud instance, simply navigate to **»Apps«**, find the\n**»Teams«** and **»Collectives«** apps and enable them.", 37 "homepage": "https://github.com/nextcloud/collectives", 38 "licenses": [ ··· 140 ] 141 }, 142 "groupfolders": { 143 - "hash": "sha256-MPNSmqVzYSwEXM9ZyV7xEvUrmH8WYdpKHPcVWWQpt8M=", 144 - "url": "https://github.com/nextcloud-releases/groupfolders/releases/download/v18.0.9/groupfolders-v18.0.9.tar.gz", 145 - "version": "18.0.9", 146 - "description": "Admin configured folders shared with everyone in a group.\n\nFolders can be configured from *Group folders* in the admin settings.\n\nAfter a folder is created, the admin can give access to the folder to one or more groups, control their write/sharing permissions and assign a quota for the folder.\n\nNote: Encrypting the contents of group folders is currently not supported.", 147 "homepage": "https://github.com/nextcloud/groupfolders", 148 "licenses": [ 149 "agpl" ··· 250 ] 251 }, 252 "onlyoffice": { 253 - "hash": "sha256-YXj0tHU++S7YDMYj/Eg5KsSX3qBSYtyuPZfiOBQ8cjk=", 254 - "url": "https://github.com/ONLYOFFICE/onlyoffice-nextcloud/releases/download/v9.5.0/onlyoffice.tar.gz", 255 - "version": "9.5.0", 256 - "description": "ONLYOFFICE connector allows you to view, edit and collaborate on text documents, spreadsheets and presentations within Nextcloud using ONLYOFFICE Docs. This will create a new Edit in ONLYOFFICE action within the document library for Office documents. This allows multiple users to co-author documents in real time from the familiar web interface and save the changes back to your file storage.", 257 "homepage": "https://www.onlyoffice.com", 258 "licenses": [ 259 "agpl" ··· 280 ] 281 }, 282 "previewgenerator": { 283 - "hash": "sha256-kTYmN/tAJwjj2KwnrKVIZa5DhyXHjuNWNskqJZxs4sY=", 284 - "url": "https://github.com/nextcloud-releases/previewgenerator/releases/download/v5.7.0/previewgenerator-v5.7.0.tar.gz", 285 - "version": "5.7.0", 286 "description": "The Preview Generator app allows admins to pre-generate previews. The app listens to edit events and stores this information. Once a cron job is triggered it will generate start preview generation. This means that you can better utilize your system by pre-generating previews when your system is normally idle and thus putting less load on your machine when the requests are actually served.\n\nThe app does not replace on demand preview generation so if a preview is requested before it is pre-generated it will still be shown.\nThe first time you install this app, before using a cron job, you properly want to generate all previews via:\n**./occ preview:generate-all -vvv**\n\n**Important**: To enable pre-generation of previews you must add **php /var/www/nextcloud/occ preview:pre-generate** to a system cron job that runs at times of your choosing.", 287 "homepage": "https://github.com/nextcloud/previewgenerator", 288 "licenses": [ ··· 330 ] 331 }, 332 "sociallogin": { 333 - "hash": "sha256-P9OBXDW3+iOtC9/dQ/M89YxY3OQ0u5I8Z1XQLvYznEo=", 334 - "url": "https://github.com/zorn-v/nextcloud-social-login/releases/download/v5.8.4/release.tar.gz", 335 - "version": "5.8.4", 336 "description": "# Social login\n\nMake possible create users and login via Telegram, OAuth or OpenID\n\nFor OAuth you must create app for certain providers. Login button appear at login page if app id specified. Settings are in \"Social login\" section of settings page.\n\n## Installation\n\nLogin to your NextCloud installation as an administrator and under \"Apps\" click \"Download and enable\" next to the \"Social Login\" app.\n\nSee below for setup and configuration instructions.\n\n\n\n## Custom OAuth2/OIDC groups\n\nYou can use groups from your custom provider. For that you should specify \"Groups claim\" in custom OAuth2/OIDC provider settings. That claim should be returned from provider in `id_token` or at user info endpoint. Format should be `array` or comma separated string. Eg (with claim named `roles`)\n\n```json\n{\"roles\": [\"admin\", \"user\"]}\n```\nor\n```json\n{\"roles\": \"admin,user\"}\n```\n\nAlso nested claims is supported. For example `resource_access.client-id.roles` for\n\n```json\n\"resource_access\": {\n \"client-id\": {\n \"roles\": [\n \"client-role-1\",\n \"client-role-2\"\n ]\n }\n}\n```\n\nThere is also support for setting the displayName:\n```\n{\"roles\": [{gid: 1, displayName: \"admin\"}, {gid: 2, displayName: \"user\"}]}\n```\n\n\nYou can use provider groups in two ways:\n\n1. Map provider groups to existing nextcloud groups\n2. Create provider groups in nextcloud and associate it to user (if appropriate option specified)\n\nIf you want sync groups on every login do not forget to check \"Update user profile every login\" setting\n\n## Examples for groups\n\n* You can find example how to configure WSO2IS for return roles claim with OIDC [here](https://medium.com/@dewni.matheesha/claim-mapping-and-retrieving-end-user-information-in-wso2is-cffd5f3937ff)\n* [GitLab OIDC allowing specific GitLab groups](https://github.com/zorn-v/nextcloud-social-login/blob/master/docs/sso/gitlab.md)\n\n## Built-in OAuth providers\n\nYou can copy link of certain login button to get proper \"redirect url\" for OAuth app setting.\n\n* [Google](https://github.com/zorn-v/nextcloud-social-login/blob/master/docs/sso/google.md)\n* [Amazon](https://developer.amazon.com/loginwithamazon/console/site/lwa/overview.html)\n* [Facebook](https://github.com/zorn-v/nextcloud-social-login/blob/master/docs/sso/facebook.md)\n* [Twitter](https://github.com/zorn-v/nextcloud-social-login/blob/master/docs/sso/twitter.md)\n* [GitHub](https://github.com/settings/developers)\n* [Discord](#configure-discord)\n* [Telegram](https://github.com/zorn-v/nextcloud-social-login/blob/master/docs/sso/telegram.md)\n* PlexTv - you can use any title as app id\n* [Codeberg](https://github.com/zorn-v/nextcloud-social-login/blob/master/docs/sso/codeberg.md)\n\nDetails about \"Allow login only from specified domain\" google setting you can find here [#44](https://github.com/zorn-v/nextcloud-social-login/issues/44)\nYou can use comma separated list for multiple domains\n\n## Config\n\nYou can use `'social_login_auto_redirect' => true` setting in `config.php` for auto redirect unauthorized users to social login if only one provider is configured.\nIf you want to temporary disable this function (e.g. for login as local admin), you can add `noredir=1` query parameter in url for login page. Something like `https://cloud.domain.com/login?noredir=1`\n\nTo set options for http client, you can use\n```php\n 'social_login_http_client' => [\n 'timeout' => 45,\n 'proxy' => 'socks4://127.0.0.1:9050', // Check https://curl.se/libcurl/c/CURLOPT_PROXY.html for allowed variants\n ],\n```\nin `config.php`\n\n### Configurate a provider via CLI\n\nYou can configure everything from commandline by using the occ utility. To setup a oidc-provider replace the variables and URLs with values that match your deployment.\n```bash\nphp occ config:app:set sociallogin custom_providers --value='{\"custom_oidc\": [{\"name\": \"gitlab_oidc\", \"title\": \"Gitlab\", \"authorizeUrl\": \"https://gitlab.my-domain.org/oauth/authorize\", \"tokenUrl\": \"https://gitlab.my-domain.org/oauth/token\", \"userInfoUrl\": \"https://gitlab.my-domain.org/oauth/userinfo\", \"logoutUrl\": \"\", \"clientId\": \"$my_application_id\", \"clientSecret\": \"$my_super_secret_secret\", \"scope\": \"openid\", \"groupsClaim\": \"groups\", \"style\": \"gitlab\", \"defaultGroup\": \"\"}]}'\n```\nto do this with docker you just need to add `docker exec -t -uwww-data CONTAINER_NAME` in front of the command, or run it interactively from `docker exec -it -uwww-data CONTAINER_NAME sh`\n\nTo find out how to configure other providers, just configure them in the GUI and take a look at the database afterwards:\n```\nmysql -u nextcloud -p nextcloud\nPassword: <yourpassword>\n\n> SELECT * FROM oc_appconfig WHERE appid='sociallogin';\n```\n\nOr just run\n\n`docker exec -t -uwww-data CONTAINER_NAME php occ config:app:get sociallogin custom_providers`\n\n### Configure Discord\n\nTo properly configure discord you have to:\n\n1. Create new discord application on [DiscordApp developers](https://discordapp.com/developers/applications/me#top)\n2. Open tab `Settings -> OAuth2 -> General`. In `Redirects` add new redirection link looking like this: `https://nextcloud.mydomain.com/apps/sociallogin/oauth/discord`.\n3. Copy `CLIENT ID` and generate and copy `CLIENT SECRET`\n4. Open in Nextcloud `Settings -> Social Login` and paste `CLIENT ID` into field `App id` and `CLIENT SECRET` into `Secret`.\n5. Select default group for users created this way.\n6. For group mapping check [#395](https://github.com/zorn-v/nextcloud-social-login/pull/395)\n\n## Hint\n\n### About Callback(Reply) Url\nYou can copy link from specific login button on login page and paste it on provider's website as callback url. To make proper button visible, just fill certain provider settings with random data and change it later.\n\nSome users may get strange reply(Callback) url error from provider even if you pasted the right url, that's because your nextcloud server may generate http urls when you are actually using https.\nPlease set 'overwriteprotocol' => 'https', in your config.php file.", 337 "homepage": "https://github.com/zorn-v/nextcloud-social-login", 338 "licenses": [ ··· 340 ] 341 }, 342 "spreed": { 343 - "hash": "sha256-j2r0dJ5QYrGHFbCfuuyOmXR7oEN78Nagn5Qb8kzmknA=", 344 - "url": "https://github.com/nextcloud-releases/spreed/releases/download/v20.1.3/spreed-v20.1.3.tar.gz", 345 - "version": "20.1.3", 346 "description": "Chat, video & audio-conferencing using WebRTC\n\n* 💬 **Chat** Nextcloud Talk comes with a simple text chat, allowing you to share or upload files from your Nextcloud Files app or local device and mention other participants.\n* 👥 **Private, group, public and password protected calls!** Invite someone, a whole group or send a public link to invite to a call.\n* 🌐 **Federated chats** Chat with other Nextcloud users on their servers\n* 💻 **Screen sharing!** Share your screen with the participants of your call.\n* 🚀 **Integration with other Nextcloud apps** like Files, Calendar, User status, Dashboard, Flow, Maps, Smart picker, Contacts, Deck, and many more.\n* 🌉 **Sync with other chat solutions** With [Matterbridge](https://github.com/42wim/matterbridge/) being integrated in Talk, you can easily sync a lot of other chat solutions to Nextcloud Talk and vice-versa.", 347 "homepage": "https://github.com/nextcloud/spreed", 348 "licenses": [
··· 20 ] 21 }, 22 "calendar": { 23 + "hash": "sha256-QWJJOj4Iy/BLXWzHihoQaAhFkU05plZ/AV55QrW0Pag=", 24 + "url": "https://github.com/nextcloud-releases/calendar/releases/download/v5.0.10/calendar-v5.0.10.tar.gz", 25 + "version": "5.0.10", 26 "description": "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries.", 27 "homepage": "https://github.com/nextcloud/calendar/", 28 "licenses": [ ··· 30 ] 31 }, 32 "collectives": { 33 + "hash": "sha256-1BEK5T+6w8yLSXyj/Me8QMls/LSWaor5TpvC2HK3/4U=", 34 + "url": "https://github.com/nextcloud/collectives/releases/download/v2.16.1/collectives-2.16.1.tar.gz", 35 + "version": "2.16.1", 36 "description": "Collectives is a Nextcloud App for activist and community projects to organize together.\nCome and gather in collectives to build shared knowledge.\n\n* 👥 **Collective and non-hierarchical workflow by heart**: Collectives are\n tied to a [Nextcloud Team](https://github.com/nextcloud/circles) and\n owned by the collective.\n* 📝 **Collaborative page editing** like known from Etherpad thanks to the\n [Text app](https://github.com/nextcloud/text).\n* 🔤 **Well-known [Markdown](https://en.wikipedia.org/wiki/Markdown) syntax**\n for page formatting.\n\n## Installation\n\nIn your Nextcloud instance, simply navigate to **»Apps«**, find the\n**»Teams«** and **»Collectives«** apps and enable them.", 37 "homepage": "https://github.com/nextcloud/collectives", 38 "licenses": [ ··· 140 ] 141 }, 142 "groupfolders": { 143 + "hash": "sha256-LR+b5weiFGsk/uozT39rwCeo98PjLcJOMyn5B/OgkvU=", 144 + "url": "https://github.com/nextcloud-releases/groupfolders/releases/download/v18.0.10/groupfolders-v18.0.10.tar.gz", 145 + "version": "18.0.10", 146 + "description": "Admin configured folders shared with everyone in a team.\n\nFolders can be configured from *Team folders* in the admin settings.\n\nAfter a folder is created, the admin can give access to the folder to one or more teams, control their write/sharing permissions and assign a quota for the folder.", 147 "homepage": "https://github.com/nextcloud/groupfolders", 148 "licenses": [ 149 "agpl" ··· 250 ] 251 }, 252 "onlyoffice": { 253 + "hash": "sha256-zAhrnZ/rzzo6+ycozd8ihxIHVRHmQ+haudts2PcxnoM=", 254 + "url": "https://github.com/ONLYOFFICE/onlyoffice-nextcloud/releases/download/v9.6.0/onlyoffice.tar.gz", 255 + "version": "9.6.0", 256 + "description": "ONLYOFFICE app allows you to view, edit and collaborate on text documents, spreadsheets and presentations within Nextcloud using ONLYOFFICE Docs. This will create a new Edit in ONLYOFFICE action within the document library for Office documents. This allows multiple users to co-author documents in real time from the familiar web interface and save the changes back to your file storage.", 257 "homepage": "https://www.onlyoffice.com", 258 "licenses": [ 259 "agpl" ··· 280 ] 281 }, 282 "previewgenerator": { 283 + "hash": "sha256-dPUvtVFtSqlG9M1RXZ8u7nL3wgK5yFU2/pL9pFLjisc=", 284 + "url": "https://github.com/nextcloud-releases/previewgenerator/releases/download/v5.8.0/previewgenerator-v5.8.0.tar.gz", 285 + "version": "5.8.0", 286 "description": "The Preview Generator app allows admins to pre-generate previews. The app listens to edit events and stores this information. Once a cron job is triggered it will generate start preview generation. This means that you can better utilize your system by pre-generating previews when your system is normally idle and thus putting less load on your machine when the requests are actually served.\n\nThe app does not replace on demand preview generation so if a preview is requested before it is pre-generated it will still be shown.\nThe first time you install this app, before using a cron job, you properly want to generate all previews via:\n**./occ preview:generate-all -vvv**\n\n**Important**: To enable pre-generation of previews you must add **php /var/www/nextcloud/occ preview:pre-generate** to a system cron job that runs at times of your choosing.", 287 "homepage": "https://github.com/nextcloud/previewgenerator", 288 "licenses": [ ··· 330 ] 331 }, 332 "sociallogin": { 333 + "hash": "sha256-XJbeVUYr3NZvynZyRlRtc0NNEJxcIHjwNst/J2+IBUM=", 334 + "url": "https://github.com/zorn-v/nextcloud-social-login/releases/download/v5.9.1/release.tar.gz", 335 + "version": "5.9.1", 336 "description": "# Social login\n\nMake possible create users and login via Telegram, OAuth or OpenID\n\nFor OAuth you must create app for certain providers. Login button appear at login page if app id specified. Settings are in \"Social login\" section of settings page.\n\n## Installation\n\nLogin to your NextCloud installation as an administrator and under \"Apps\" click \"Download and enable\" next to the \"Social Login\" app.\n\nSee below for setup and configuration instructions.\n\n\n\n## Custom OAuth2/OIDC groups\n\nYou can use groups from your custom provider. For that you should specify \"Groups claim\" in custom OAuth2/OIDC provider settings. That claim should be returned from provider in `id_token` or at user info endpoint. Format should be `array` or comma separated string. Eg (with claim named `roles`)\n\n```json\n{\"roles\": [\"admin\", \"user\"]}\n```\nor\n```json\n{\"roles\": \"admin,user\"}\n```\n\nAlso nested claims is supported. For example `resource_access.client-id.roles` for\n\n```json\n\"resource_access\": {\n \"client-id\": {\n \"roles\": [\n \"client-role-1\",\n \"client-role-2\"\n ]\n }\n}\n```\n\nThere is also support for setting the displayName:\n```\n{\"roles\": [{gid: 1, displayName: \"admin\"}, {gid: 2, displayName: \"user\"}]}\n```\n\n\nYou can use provider groups in two ways:\n\n1. Map provider groups to existing nextcloud groups\n2. Create provider groups in nextcloud and associate it to user (if appropriate option specified)\n\nIf you want sync groups on every login do not forget to check \"Update user profile every login\" setting\n\n## Examples for groups\n\n* You can find example how to configure WSO2IS for return roles claim with OIDC [here](https://medium.com/@dewni.matheesha/claim-mapping-and-retrieving-end-user-information-in-wso2is-cffd5f3937ff)\n* [GitLab OIDC allowing specific GitLab groups](https://github.com/zorn-v/nextcloud-social-login/blob/master/docs/sso/gitlab.md)\n\n## Built-in OAuth providers\n\nYou can copy link of certain login button to get proper \"redirect url\" for OAuth app setting.\n\n* [Google](https://github.com/zorn-v/nextcloud-social-login/blob/master/docs/sso/google.md)\n* [Amazon](https://developer.amazon.com/loginwithamazon/console/site/lwa/overview.html)\n* [Facebook](https://github.com/zorn-v/nextcloud-social-login/blob/master/docs/sso/facebook.md)\n* [Twitter](https://github.com/zorn-v/nextcloud-social-login/blob/master/docs/sso/twitter.md)\n* [GitHub](https://github.com/settings/developers)\n* [Discord](#configure-discord)\n* [Telegram](https://github.com/zorn-v/nextcloud-social-login/blob/master/docs/sso/telegram.md)\n* PlexTv - you can use any title as app id\n* [Codeberg](https://github.com/zorn-v/nextcloud-social-login/blob/master/docs/sso/codeberg.md)\n\nDetails about \"Allow login only from specified domain\" google setting you can find here [#44](https://github.com/zorn-v/nextcloud-social-login/issues/44)\nYou can use comma separated list for multiple domains\n\n## Config\n\nYou can use `'social_login_auto_redirect' => true` setting in `config.php` for auto redirect unauthorized users to social login if only one provider is configured.\nIf you want to temporary disable this function (e.g. for login as local admin), you can add `noredir=1` query parameter in url for login page. Something like `https://cloud.domain.com/login?noredir=1`\n\nTo set options for http client, you can use\n```php\n 'social_login_http_client' => [\n 'timeout' => 45,\n 'proxy' => 'socks4://127.0.0.1:9050', // Check https://curl.se/libcurl/c/CURLOPT_PROXY.html for allowed variants\n ],\n```\nin `config.php`\n\n### Configurate a provider via CLI\n\nYou can configure everything from commandline by using the occ utility. To setup a oidc-provider replace the variables and URLs with values that match your deployment.\n```bash\nphp occ config:app:set sociallogin custom_providers --value='{\"custom_oidc\": [{\"name\": \"gitlab_oidc\", \"title\": \"Gitlab\", \"authorizeUrl\": \"https://gitlab.my-domain.org/oauth/authorize\", \"tokenUrl\": \"https://gitlab.my-domain.org/oauth/token\", \"userInfoUrl\": \"https://gitlab.my-domain.org/oauth/userinfo\", \"logoutUrl\": \"\", \"clientId\": \"$my_application_id\", \"clientSecret\": \"$my_super_secret_secret\", \"scope\": \"openid\", \"groupsClaim\": \"groups\", \"style\": \"gitlab\", \"defaultGroup\": \"\"}]}'\n```\nto do this with docker you just need to add `docker exec -t -uwww-data CONTAINER_NAME` in front of the command, or run it interactively from `docker exec -it -uwww-data CONTAINER_NAME sh`\n\nTo find out how to configure other providers, just configure them in the GUI and take a look at the database afterwards:\n```\nmysql -u nextcloud -p nextcloud\nPassword: <yourpassword>\n\n> SELECT * FROM oc_appconfig WHERE appid='sociallogin';\n```\n\nOr just run\n\n`docker exec -t -uwww-data CONTAINER_NAME php occ config:app:get sociallogin custom_providers`\n\n### Configure Discord\n\nTo properly configure discord you have to:\n\n1. Create new discord application on [DiscordApp developers](https://discordapp.com/developers/applications/me#top)\n2. Open tab `Settings -> OAuth2 -> General`. In `Redirects` add new redirection link looking like this: `https://nextcloud.mydomain.com/apps/sociallogin/oauth/discord`.\n3. Copy `CLIENT ID` and generate and copy `CLIENT SECRET`\n4. Open in Nextcloud `Settings -> Social Login` and paste `CLIENT ID` into field `App id` and `CLIENT SECRET` into `Secret`.\n5. Select default group for users created this way.\n6. For group mapping check [#395](https://github.com/zorn-v/nextcloud-social-login/pull/395)\n\n## Hint\n\n### About Callback(Reply) Url\nYou can copy link from specific login button on login page and paste it on provider's website as callback url. To make proper button visible, just fill certain provider settings with random data and change it later.\n\nSome users may get strange reply(Callback) url error from provider even if you pasted the right url, that's because your nextcloud server may generate http urls when you are actually using https.\nPlease set 'overwriteprotocol' => 'https', in your config.php file.", 337 "homepage": "https://github.com/zorn-v/nextcloud-social-login", 338 "licenses": [ ··· 340 ] 341 }, 342 "spreed": { 343 + "hash": "sha256-+MYplCq6Kx1UiEz+Isbit7kQNhe4dncy6W+y7eMzuiA=", 344 + "url": "https://github.com/nextcloud-releases/spreed/releases/download/v20.1.4/spreed-v20.1.4.tar.gz", 345 + "version": "20.1.4", 346 "description": "Chat, video & audio-conferencing using WebRTC\n\n* 💬 **Chat** Nextcloud Talk comes with a simple text chat, allowing you to share or upload files from your Nextcloud Files app or local device and mention other participants.\n* 👥 **Private, group, public and password protected calls!** Invite someone, a whole group or send a public link to invite to a call.\n* 🌐 **Federated chats** Chat with other Nextcloud users on their servers\n* 💻 **Screen sharing!** Share your screen with the participants of your call.\n* 🚀 **Integration with other Nextcloud apps** like Files, Calendar, User status, Dashboard, Flow, Maps, Smart picker, Contacts, Deck, and many more.\n* 🌉 **Sync with other chat solutions** With [Matterbridge](https://github.com/42wim/matterbridge/) being integrated in Talk, you can easily sync a lot of other chat solutions to Nextcloud Talk and vice-versa.", 347 "homepage": "https://github.com/nextcloud/spreed", 348 "licenses": [
+5
pkgs/tools/graphics/mangohud/default.nix
··· 128 libdbus = dbus.lib; 129 inherit hwdata; 130 }) 131 ]; 132 133 postPatch = ''
··· 128 libdbus = dbus.lib; 129 inherit hwdata; 130 }) 131 + 132 + # Fix crash when starting hidden 133 + # Upstream PR: https://github.com/flightlessmango/MangoHud/pull/1570 134 + # FIXME: remove when merged 135 + ./fix-crash.patch 136 ]; 137 138 postPatch = ''
+40
pkgs/tools/graphics/mangohud/fix-crash.patch
···
··· 1 + From f0d7e4f4b2d362d90bb81d0b10ef5c505b9661ea Mon Sep 17 00:00:00 2001 2 + From: K900 <me@0upti.me> 3 + Date: Fri, 14 Feb 2025 11:41:09 +0300 4 + Subject: [PATCH] mangoapp: don't crash if gpus is not initialized yet 5 + 6 + This seems to happen on startup on Steam Deck style gamescope-session setups. 7 + Just check for gpus = null before trying to access it. 8 + --- 9 + src/app/main.cpp | 10 ++++++---- 10 + 1 file changed, 6 insertions(+), 4 deletions(-) 11 + 12 + diff --git a/src/app/main.cpp b/src/app/main.cpp 13 + index 0c7c13e07e..4d1d3b1277 100644 14 + --- a/src/app/main.cpp 15 + +++ b/src/app/main.cpp 16 + @@ -369,8 +369,9 @@ int main(int, char**) 17 + XSync(x11_display, 0); 18 + mangoapp_paused = false; 19 + // resume all GPU threads 20 + - for (auto gpu : gpus->available_gpus) 21 + - gpu->resume(); 22 + + if (gpus) 23 + + for (auto gpu : gpus->available_gpus) 24 + + gpu->resume(); 25 + } 26 + { 27 + std::unique_lock<std::mutex> lk(mangoapp_m); 28 + @@ -409,8 +410,9 @@ int main(int, char**) 29 + XSync(x11_display, 0); 30 + mangoapp_paused = true; 31 + // pause all GPUs threads 32 + - for (auto gpu : gpus->available_gpus) 33 + - gpu->pause(); 34 + + if (gpus) 35 + + for (auto gpu : gpus->available_gpus) 36 + + gpu->pause(); 37 + 38 + // If mangoapp is hidden, using mangoapp_cv.wait() causes a hang. 39 + // Because of this hang, we can't detect if the user presses R_SHIFT + F12, 40 +
+4 -1
pkgs/tools/package-management/akku/overrides.nix
··· 25 tables-test.ikarus.sps 26 lazy.sps 27 pipeline-operators.sps 28 ' 29 ''; 30 }) ··· 45 src = akku.src; 46 }) 47 # not a tar archive 48 - (pkg: old: removeAttrs old [ "unpackPhase" ]) 49 ]; 50 51 machine-code = pkg: old: {
··· 25 tables-test.ikarus.sps 26 lazy.sps 27 pipeline-operators.sps 28 + os-environment-variables.sps 29 ' 30 ''; 31 }) ··· 46 src = akku.src; 47 }) 48 # not a tar archive 49 + (pkg: old: { 50 + unpackPhase = null; 51 + }) 52 ]; 53 54 machine-code = pkg: old: {
+2
pkgs/top-level/ocaml-packages.nix
··· 38 39 apron = callPackage ../development/ocaml-modules/apron { }; 40 41 arp = callPackage ../development/ocaml-modules/arp { }; 42 43 asai = callPackage ../development/ocaml-modules/asai { };
··· 38 39 apron = callPackage ../development/ocaml-modules/apron { }; 40 41 + arg-complete = callPackage ../development/ocaml-modules/arg-complete { }; 42 + 43 arp = callPackage ../development/ocaml-modules/arp { }; 44 45 asai = callPackage ../development/ocaml-modules/asai { };