diff --git a/.editorconfig b/.editorconfig index ebb66b07945c..c4682829e357 100644 --- a/.editorconfig +++ b/.editorconfig @@ -90,6 +90,9 @@ insert_final_newline = unset indent_style = unset trim_trailing_whitespace = unset +[pkgs/misc/documentation-highlighter/**] +insert_final_newline = unset + [pkgs/servers/dict/wordnet_structures.py] trim_trailing_whitespace = unset diff --git a/.github/workflows/periodic-merge-24h.yml b/.github/workflows/periodic-merge-24h.yml index 308d9057859e..9ce6a7c74cc1 100644 --- a/.github/workflows/periodic-merge-24h.yml +++ b/.github/workflows/periodic-merge-24h.yml @@ -13,6 +13,7 @@ on: # * is a special character in YAML so you have to quote this string # Merge every 24 hours - cron: '0 0 * * *' + workflow_dispatch: permissions: contents: read diff --git a/.github/workflows/periodic-merge-6h.yml b/.github/workflows/periodic-merge-6h.yml index 5d5f86db48f5..f3151ead6a0f 100644 --- a/.github/workflows/periodic-merge-6h.yml +++ b/.github/workflows/periodic-merge-6h.yml @@ -13,6 +13,7 @@ on: # * is a special character in YAML so you have to quote this string # Merge every 6 hours - cron: '0 */6 * * *' + workflow_dispatch: permissions: contents: read diff --git a/lib/customisation.nix b/lib/customisation.nix index 5e290230ca4e..462a85908c06 100644 --- a/lib/customisation.nix +++ b/lib/customisation.nix @@ -4,11 +4,12 @@ let inherit (builtins) intersectAttrs; inherit (lib) - functionArgs isFunction mirrorFunctionArgs isAttrs setFunctionArgs levenshteinAtMost + functionArgs isFunction mirrorFunctionArgs isAttrs setFunctionArgs optionalAttrs attrNames levenshtein filter elemAt concatStringsSep sort take length filterAttrs optionalString flip pathIsDirectory head pipe isDerivation listToAttrs mapAttrs seq flatten deepSeq warnIf isInOldestRelease extends ; + inherit (lib.strings) levenshteinAtMost; in rec { @@ -198,7 +199,7 @@ rec { + "${loc'}${prettySuggestions (getSuggestions arg)}"; # Only show the error for the first missing argument - error = errorForArg missingArgs.${head (attrNames missingArgs)}; + error = errorForArg (head (attrNames missingArgs)); in if missingArgs == {} then makeOverridable f allArgs diff --git a/lib/licenses.nix b/lib/licenses.nix index 3bce847b03c4..baf92007123d 100644 --- a/lib/licenses.nix +++ b/lib/licenses.nix @@ -1068,6 +1068,12 @@ in mkLicense lset) ({ url = "https://github.com/thestk/stk/blob/master/LICENSE"; }; + sudo = { + shortName = "sudo"; + fullName = "Sudo License (ISC-style)"; + url = "https://www.sudo.ws/about/license/"; + }; + sustainableUse = { shortName = "sustainable"; fullName = "Sustainable Use License"; diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index de681b37fa65..445aed56fe88 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -787,6 +787,12 @@ githubId = 2335822; name = "Alexandre Esteves"; }; + alex-fu27 = { + email = "alex.fu27@gmail.com"; + github = "alex-fu27"; + githubId = 49982580; + name = "Alexander Fuchs"; + }; alexnortung = { name = "alexnortung"; email = "alex_nortung@live.dk"; @@ -6555,6 +6561,12 @@ githubId = 67984144; name = "Gerhard Schwanzer"; }; + gernotfeichter = { + email = "gernotfeichter@gmail.com"; + github = "gernotfeichter"; + githubId = 23199375; + name = "Gernot Feichter"; + }; gerschtli = { email = "tobias.happ@gmx.de"; github = "Gerschtli"; @@ -15230,6 +15242,12 @@ githubId = 816465; name = "Redvers Davies"; }; + redxtech = { + email = "gabe@gabedunn.dev"; + github = "redxtech"; + githubId = 18155001; + name = "Gabe Dunn"; + }; reedrw = { email = "reedrw5601@gmail.com"; github = "reedrw"; @@ -15329,6 +15347,15 @@ githubId = 44014925; name = "Rexx Larsson"; }; + RGBCube = { + name = "RGBCube"; + email = "rgbsphere+nixpkgs@gmail.com"; + github = "RGBCube"; + githubId = 78925721; + keys = [{ + fingerprint = "jPaU3Vpm/GN0tUuDg72n2+bd9dDMWe4bnKM325eP7eI"; + }]; + }; rgnns = { email = "jglievano@gmail.com"; github = "rgnns"; diff --git a/maintainers/scripts/luarocks-packages.csv b/maintainers/scripts/luarocks-packages.csv index 78cfca24d96b..c0f416edcb9e 100644 --- a/maintainers/scripts/luarocks-packages.csv +++ b/maintainers/scripts/luarocks-packages.csv @@ -73,6 +73,7 @@ luaposix,,,,34.1.1-1,,vyp lblasc luarepl,,,,,, luarocks-build-rust-mlua,,,,,,mrcjkb luasec,,,,,,flosse +luasnip,,,,,, luasocket,,,,,, luasql-sqlite3,,,,,,vyp luassert,,,,,, diff --git a/nixos/doc/manual/release-notes/rl-2405.section.md b/nixos/doc/manual/release-notes/rl-2405.section.md index 749ebc5cb13b..a1bdb4321d9a 100644 --- a/nixos/doc/manual/release-notes/rl-2405.section.md +++ b/nixos/doc/manual/release-notes/rl-2405.section.md @@ -8,7 +8,7 @@ In addition to numerous new and upgraded packages, this release has the followin -- Create the first release note entry in this section! +- `screen`'s module has been cleaned, and will now require you to set `programs.screen.enable` in order to populate `screenrc` and add the program to the environment. ## New Services {#sec-release-24.05-new-services} @@ -18,6 +18,8 @@ In addition to numerous new and upgraded packages, this release has the followin - [Anki Sync Server](https://docs.ankiweb.net/sync-server.html), the official sync server built into recent versions of Anki. Available as [services.anki-sync-server](#opt-services.anki-sync-server.enable). +- [Clevis](https://github.com/latchset/clevis), a pluggable framework for automated decryption, used to unlock encrypted devices in initrd. Available as [boot.initrd.clevis.enable](#opt-boot.initrd.clevis.enable). + ## Backward Incompatibilities {#sec-release-24.05-incompatibilities} @@ -38,4 +40,8 @@ In addition to numerous new and upgraded packages, this release has the followin existing process, but will need to start that process from gdb (so it is a child). Or you can set `boot.kernel.sysctl."kernel.yama.ptrace_scope"` to 0. +- Gitea 1.21 upgrade has several breaking changes, including: + - Custom themes and other assets that were previously stored in `custom/public/*` now belong in `custom/public/assets/*` + - New instances of Gitea using MySQL now ignore the `[database].CHARSET` config option and always use the `utf8mb4` charset, existing instances should migrate via the `gitea doctor convert` CLI command. + - The `hardware.pulseaudio` module now sets permission of pulse user home directory to 755 when running in "systemWide" mode. It fixes [issue 114399](https://github.com/NixOS/nixpkgs/issues/114399). diff --git a/nixos/modules/config/mysql.nix b/nixos/modules/config/mysql.nix index 95c9ba76663e..4f72d22c4f0e 100644 --- a/nixos/modules/config/mysql.nix +++ b/nixos/modules/config/mysql.nix @@ -6,6 +6,8 @@ let cfg = config.users.mysql; in { + meta.maintainers = [ maintainers.netali ]; + options = { users.mysql = { enable = mkEnableOption (lib.mdDoc "Authentication against a MySQL/MariaDB database"); @@ -358,7 +360,7 @@ in user = "root"; group = "root"; mode = "0600"; - # password will be added from password file in activation script + # password will be added from password file in systemd oneshot text = '' users.host=${cfg.host} users.db_user=${cfg.user} @@ -423,34 +425,45 @@ in mode = "0600"; user = config.services.nscd.user; group = config.services.nscd.group; - # password will be added from password file in activation script + # password will be added from password file in systemd oneshot text = '' username ${cfg.user} ''; }; - # preStart script to append the password from the password file - # to the configuration files. It also fixes the owner of the - # libnss-mysql-root.cfg because it is changed to root after the - # password is appended. - systemd.services.mysql.preStart = '' - if [[ -r ${cfg.passwordFile} ]]; then - org_umask=$(umask) - umask 0077 + systemd.services.mysql-auth-pw-init = { + description = "Adds the mysql password to the mysql auth config files"; - conf_nss="$(mktemp)" - cp /etc/libnss-mysql-root.cfg $conf_nss - printf 'password %s\n' "$(cat ${cfg.passwordFile})" >> $conf_nss - mv -fT "$conf_nss" /etc/libnss-mysql-root.cfg - chown ${config.services.nscd.user}:${config.services.nscd.group} /etc/libnss-mysql-root.cfg + before = [ "nscd.service" ]; + wantedBy = [ "multi-user.target" ]; - conf_pam="$(mktemp)" - cp /etc/security/pam_mysql.conf $conf_pam - printf 'users.db_passwd=%s\n' "$(cat ${cfg.passwordFile})" >> $conf_pam - mv -fT "$conf_pam" /etc/security/pam_mysql.conf + serviceConfig = { + Type = "oneshot"; + User = "root"; + Group = "root"; + }; - umask $org_umask - fi - ''; + restartTriggers = [ + config.environment.etc."security/pam_mysql.conf".source + config.environment.etc."libnss-mysql.cfg".source + config.environment.etc."libnss-mysql-root.cfg".source + ]; + + script = '' + if [[ -r ${cfg.passwordFile} ]]; then + umask 0077 + conf_nss="$(mktemp)" + cp /etc/libnss-mysql-root.cfg $conf_nss + printf 'password %s\n' "$(cat ${cfg.passwordFile})" >> $conf_nss + mv -fT "$conf_nss" /etc/libnss-mysql-root.cfg + chown ${config.services.nscd.user}:${config.services.nscd.group} /etc/libnss-mysql-root.cfg + + conf_pam="$(mktemp)" + cp /etc/security/pam_mysql.conf $conf_pam + printf 'users.db_passwd=%s\n' "$(cat ${cfg.passwordFile})" >> $conf_pam + mv -fT "$conf_pam" /etc/security/pam_mysql.conf + fi + ''; + }; }; } diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index 7f708f6e57c7..b505a294c8b9 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -442,6 +442,7 @@ ./services/databases/surrealdb.nix ./services/databases/victoriametrics.nix ./services/desktops/accountsservice.nix + ./services/desktops/ayatana-indicators.nix ./services/desktops/bamf.nix ./services/desktops/blueman.nix ./services/desktops/cpupower-gui.nix @@ -1423,6 +1424,7 @@ ./system/activation/bootspec.nix ./system/activation/top-level.nix ./system/boot/binfmt.nix + ./system/boot/clevis.nix ./system/boot/emergency-mode.nix ./system/boot/grow-partition.nix ./system/boot/initrd-network.nix diff --git a/nixos/modules/programs/screen.nix b/nixos/modules/programs/screen.nix index 68de9e52d7be..41bfb5d7809a 100644 --- a/nixos/modules/programs/screen.nix +++ b/nixos/modules/programs/screen.nix @@ -1,33 +1,41 @@ { config, lib, pkgs, ... }: let - inherit (lib) mkOption mkIf types; cfg = config.programs.screen; in { - ###### interface - options = { programs.screen = { + enable = lib.mkEnableOption (lib.mdDoc "screen, a basic terminal multiplexer"); - screenrc = mkOption { - default = ""; - description = lib.mdDoc '' - The contents of /etc/screenrc file. + package = lib.mkPackageOptionMD pkgs "screen" { }; + + screenrc = lib.mkOption { + type = with lib.types; nullOr lines; + example = '' + defscrollback 10000 + startup_message off ''; - type = types.lines; + description = lib.mdDoc "The contents of {file}`/etc/screenrc` file"; }; }; }; - ###### implementation - - config = mkIf (cfg.screenrc != "") { - environment.etc.screenrc.text = cfg.screenrc; - - environment.systemPackages = [ pkgs.screen ]; + config = { + # TODO: Added in 24.05, remove before 24.11 + assertions = [ + { + assertion = cfg.screenrc != null -> cfg.enable; + message = "`programs.screen.screenrc` has been configured, but `programs.screen.enable` is not true"; + } + ]; + } // lib.mkIf cfg.enable { + environment.etc.screenrc = { + enable = cfg.screenrc != null; + text = cfg.screenrc; + }; + environment.systemPackages = [ cfg.package ]; security.pam.services.screen = {}; }; - } diff --git a/nixos/modules/services/desktops/ayatana-indicators.nix b/nixos/modules/services/desktops/ayatana-indicators.nix new file mode 100644 index 000000000000..abc687bbd43d --- /dev/null +++ b/nixos/modules/services/desktops/ayatana-indicators.nix @@ -0,0 +1,58 @@ +{ config +, pkgs +, lib +, ... +}: + +let + cfg = config.services.ayatana-indicators; +in +{ + options.services.ayatana-indicators = { + enable = lib.mkEnableOption (lib.mdDoc '' + Ayatana Indicators, a continuation of Canonical's Application Indicators + ''); + + packages = lib.mkOption { + type = lib.types.listOf lib.types.package; + default = [ ]; + example = lib.literalExpression "with pkgs; [ ayatana-indicator-messages ]"; + description = lib.mdDoc '' + List of packages containing Ayatana Indicator services + that should be brought up by the SystemD "ayatana-indicators" user target. + + Packages specified here must have passthru.ayatana-indicators set correctly. + + If, how, and where these indicators are displayed will depend on your DE. + ''; + }; + }; + + config = lib.mkIf cfg.enable { + environment = { + systemPackages = cfg.packages; + + pathsToLink = [ + "/share/ayatana" + ]; + }; + + # libayatana-common's ayatana-indicators.target with explicit Wants & Before to bring up requested indicator services + systemd.user.targets."ayatana-indicators" = + let + indicatorServices = lib.lists.flatten + (map + (pkg: + (map (ind: "${ind}.service") pkg.passthru.ayatana-indicators)) + cfg.packages); + in + { + description = "Target representing the lifecycle of the Ayatana Indicators. Each indicator should be bound to it in its individual service file"; + partOf = [ "graphical-session.target" ]; + wants = indicatorServices; + before = indicatorServices; + }; + }; + + meta.maintainers = with lib.maintainers; [ OPNA2608 ]; +} diff --git a/nixos/modules/services/home-automation/home-assistant.nix b/nixos/modules/services/home-automation/home-assistant.nix index 54fd3e17292f..6aa0ae9eba47 100644 --- a/nixos/modules/services/home-automation/home-assistant.nix +++ b/nixos/modules/services/home-automation/home-assistant.nix @@ -455,10 +455,10 @@ in { ln -s /etc/home-assistant/configuration.yaml "${cfg.configDir}/configuration.yaml" ''; copyLovelaceConfig = if cfg.lovelaceConfigWritable then '' + rm -f "${cfg.configDir}/ui-lovelace.yaml" cp --no-preserve=mode ${lovelaceConfigFile} "${cfg.configDir}/ui-lovelace.yaml" '' else '' - rm -f "${cfg.configDir}/ui-lovelace.yaml" - ln -s /etc/home-assistant/ui-lovelace.yaml "${cfg.configDir}/ui-lovelace.yaml" + ln -fs /etc/home-assistant/ui-lovelace.yaml "${cfg.configDir}/ui-lovelace.yaml" ''; copyCustomLovelaceModules = if cfg.customLovelaceModules != [] then '' mkdir -p "${cfg.configDir}/www" diff --git a/nixos/modules/services/matrix/appservice-irc.nix b/nixos/modules/services/matrix/appservice-irc.nix index d153ffc2ace8..c79cd799b4d0 100644 --- a/nixos/modules/services/matrix/appservice-irc.nix +++ b/nixos/modules/services/matrix/appservice-irc.nix @@ -214,7 +214,7 @@ in { RestrictRealtime = true; PrivateMounts = true; SystemCallFilter = [ - "@system-service @pkey" + "@system-service @pkey @chown" "~@privileged @resources" ]; SystemCallArchitectures = "native"; diff --git a/nixos/modules/services/misc/preload.nix b/nixos/modules/services/misc/preload.nix index 19b2531087dd..d26e2c3d383e 100644 --- a/nixos/modules/services/misc/preload.nix +++ b/nixos/modules/services/misc/preload.nix @@ -19,7 +19,7 @@ in { serviceConfig = { EnvironmentFile = "${cfg.package}/etc/conf.d/preload"; - ExecStart = "${getExe cfg.package} --foreground $PRELOAD_OPTS"; + ExecStart = "${getExe cfg.package} -l '' --foreground $PRELOAD_OPTS"; Type = "simple"; # Only preload data during CPU idle time IOSchedulingClass = 3; diff --git a/nixos/modules/services/web-apps/netbox.nix b/nixos/modules/services/web-apps/netbox.nix index 3b9434e3d345..88d40b3abc52 100644 --- a/nixos/modules/services/web-apps/netbox.nix +++ b/nixos/modules/services/web-apps/netbox.nix @@ -317,7 +317,7 @@ in { serviceConfig = defaultServiceConfig // { ExecStart = '' - ${pkgs.python3Packages.gunicorn}/bin/gunicorn netbox.wsgi \ + ${pkg.gunicorn}/bin/gunicorn netbox.wsgi \ --bind ${cfg.listenAddress}:${toString cfg.port} \ --pythonpath ${pkg}/opt/netbox/netbox ''; diff --git a/nixos/modules/system/boot/clevis.md b/nixos/modules/system/boot/clevis.md new file mode 100644 index 000000000000..91eb728a919e --- /dev/null +++ b/nixos/modules/system/boot/clevis.md @@ -0,0 +1,51 @@ +# Clevis {#module-boot-clevis} + +[Clevis](https://github.com/latchset/clevis) +is a framework for automated decryption of resources. +Clevis allows for secure unattended disk decryption during boot, using decryption policies that must be satisfied for the data to decrypt. + + +## Create a JWE file containing your secret {#module-boot-clevis-create-secret} + +The first step is to embed your secret in a [JWE](https://en.wikipedia.org/wiki/JSON_Web_Encryption) file. +JWE files have to be created through the clevis command line. 3 types of policies are supported: + +1) TPM policies + +Secrets are pinned against the presence of a TPM2 device, for example: +``` +echo hi | clevis encrypt tpm2 '{}' > hi.jwe +``` +2) Tang policies + +Secrets are pinned against the presence of a Tang server, for example: +``` +echo hi | clevis encrypt tang '{"url": "http://tang.local"}' > hi.jwe +``` + +3) Shamir Secret Sharing + +Using Shamir's Secret Sharing ([sss](https://en.wikipedia.org/wiki/Shamir%27s_secret_sharing)), secrets are pinned using a combination of the two preceding policies. For example: +``` +echo hi | clevis encrypt sss \ +'{"t": 2, "pins": {"tpm2": {"pcr_ids": "0"}, "tang": {"url": "http://tang.local"}}}' \ +> hi.jwe +``` + +For more complete documentation on how to generate a secret with clevis, see the [clevis documentation](https://github.com/latchset/clevis). + + +## Activate unattended decryption of a resource at boot {#module-boot-clevis-activate} + +In order to activate unattended decryption of a resource at boot, enable the `clevis` module: + +``` +boot.initrd.clevis.enable = true; +``` + +Then, specify the device you want to decrypt using a given clevis secret. Clevis will automatically try to decrypt the device at boot and will fallback to interactive unlocking if the decryption policy is not fulfilled. +``` +boot.initrd.clevis.devices."/dev/nvme0n1p1".secretFile = ./nvme0n1p1.jwe; +``` + +Only `bcachefs`, `zfs` and `luks` encrypted devices are supported at this time. diff --git a/nixos/modules/system/boot/clevis.nix b/nixos/modules/system/boot/clevis.nix new file mode 100644 index 000000000000..0c72590f9385 --- /dev/null +++ b/nixos/modules/system/boot/clevis.nix @@ -0,0 +1,107 @@ +{ config, lib, pkgs, ... }: + +with lib; + +let + cfg = config.boot.initrd.clevis; + systemd = config.boot.initrd.systemd; + supportedFs = [ "zfs" "bcachefs" ]; +in +{ + meta.maintainers = with maintainers; [ julienmalka camillemndn ]; + meta.doc = ./clevis.md; + + options = { + boot.initrd.clevis.enable = mkEnableOption (lib.mdDoc "Clevis in initrd"); + + + boot.initrd.clevis.package = mkOption { + type = types.package; + default = pkgs.clevis; + defaultText = "pkgs.clevis"; + description = lib.mdDoc "Clevis package"; + }; + + boot.initrd.clevis.devices = mkOption { + description = "Encrypted devices that need to be unlocked at boot using Clevis"; + default = { }; + type = types.attrsOf (types.submodule ({ + options.secretFile = mkOption { + description = lib.mdDoc "Clevis JWE file used to decrypt the device at boot, in concert with the chosen pin (one of TPM2, Tang server, or SSS)."; + type = types.path; + }; + })); + }; + + boot.initrd.clevis.useTang = mkOption { + description = "Whether the Clevis JWE file used to decrypt the devices uses a Tang server as a pin."; + default = false; + type = types.bool; + }; + + }; + + config = mkIf cfg.enable { + + # Implementation of clevis unlocking for the supported filesystems are located directly in the respective modules. + + + assertions = (attrValues (mapAttrs + (device: _: { + assertion = (any (fs: fs.device == device && (elem fs.fsType supportedFs)) config.system.build.fileSystems) || (hasAttr device config.boot.initrd.luks.devices); + message = '' + No filesystem or LUKS device with the name ${device} is declared in your configuration.''; + }) + cfg.devices)); + + + warnings = + if cfg.useTang && !config.boot.initrd.network.enable && !config.boot.initrd.systemd.network.enable + then [ "In order to use a Tang pinned secret you must configure networking in initrd" ] + else [ ]; + + boot.initrd = { + extraUtilsCommands = mkIf (!systemd.enable) '' + copy_bin_and_libs ${pkgs.jose}/bin/jose + copy_bin_and_libs ${pkgs.curl}/bin/curl + copy_bin_and_libs ${pkgs.bash}/bin/bash + + copy_bin_and_libs ${pkgs.tpm2-tools}/bin/.tpm2-wrapped + mv $out/bin/{.tpm2-wrapped,tpm2} + cp {${pkgs.tpm2-tss},$out}/lib/libtss2-tcti-device.so.0 + + copy_bin_and_libs ${cfg.package}/bin/.clevis-wrapped + mv $out/bin/{.clevis-wrapped,clevis} + + for BIN in ${cfg.package}/bin/clevis-decrypt*; do + copy_bin_and_libs $BIN + done + + for BIN in $out/bin/clevis{,-decrypt{,-null,-tang,-tpm2}}; do + sed -i $BIN -e 's,${pkgs.bash},,' -e 's,${pkgs.coreutils},,' + done + + sed -i $out/bin/clevis-decrypt-tpm2 -e 's,tpm2_,tpm2 ,' + ''; + + secrets = lib.mapAttrs' (name: value: nameValuePair "/etc/clevis/${name}.jwe" value.secretFile) cfg.devices; + + systemd = { + extraBin = mkIf systemd.enable { + clevis = "${cfg.package}/bin/clevis"; + curl = "${pkgs.curl}/bin/curl"; + }; + + storePaths = mkIf systemd.enable [ + cfg.package + "${pkgs.jose}/bin/jose" + "${pkgs.curl}/bin/curl" + "${pkgs.tpm2-tools}/bin/tpm2_createprimary" + "${pkgs.tpm2-tools}/bin/tpm2_flushcontext" + "${pkgs.tpm2-tools}/bin/tpm2_load" + "${pkgs.tpm2-tools}/bin/tpm2_unseal" + ]; + }; + }; + }; +} diff --git a/nixos/modules/system/boot/luksroot.nix b/nixos/modules/system/boot/luksroot.nix index ca560d63f3bd..8bd9e71cb3a9 100644 --- a/nixos/modules/system/boot/luksroot.nix +++ b/nixos/modules/system/boot/luksroot.nix @@ -1,9 +1,11 @@ -{ config, options, lib, pkgs, ... }: +{ config, options, lib, utils, pkgs, ... }: with lib; let luks = config.boot.initrd.luks; + clevis = config.boot.initrd.clevis; + systemd = config.boot.initrd.systemd; kernelPackages = config.boot.kernelPackages; defaultPrio = (mkOptionDefault {}).priority; @@ -594,7 +596,7 @@ in ''; type = with types; attrsOf (submodule ( - { name, ... }: { options = { + { config, name, ... }: { options = { name = mkOption { visible = false; @@ -894,6 +896,19 @@ in ''; }; }; + + config = mkIf (clevis.enable && (hasAttr name clevis.devices)) { + preOpenCommands = mkIf (!systemd.enable) '' + mkdir -p /clevis-${name} + mount -t ramfs none /clevis-${name} + clevis decrypt < /etc/clevis/${name}.jwe > /clevis-${name}/decrypted + ''; + keyFile = "/clevis-${name}/decrypted"; + fallbackToPassword = !systemd.enable; + postOpenCommands = mkIf (!systemd.enable) '' + umount /clevis-${name} + ''; + }; })); }; @@ -1081,6 +1096,35 @@ in boot.initrd.preLVMCommands = mkIf (!config.boot.initrd.systemd.enable) (commonFunctions + preCommands + concatStrings (mapAttrsToList openCommand preLVM) + postCommands); boot.initrd.postDeviceCommands = mkIf (!config.boot.initrd.systemd.enable) (commonFunctions + preCommands + concatStrings (mapAttrsToList openCommand postLVM) + postCommands); + boot.initrd.systemd.services = let devicesWithClevis = filterAttrs (device: _: (hasAttr device clevis.devices)) luks.devices; in + mkIf (clevis.enable && systemd.enable) ( + (mapAttrs' + (name: _: nameValuePair "cryptsetup-clevis-${name}" { + wantedBy = [ "systemd-cryptsetup@${utils.escapeSystemdPath name}.service" ]; + before = [ + "systemd-cryptsetup@${utils.escapeSystemdPath name}.service" + "initrd-switch-root.target" + "shutdown.target" + ]; + wants = [ "systemd-udev-settle.service" ] ++ optional clevis.useTang "network-online.target"; + after = [ "systemd-modules-load.service" "systemd-udev-settle.service" ] ++ optional clevis.useTang "network-online.target"; + script = '' + mkdir -p /clevis-${name} + mount -t ramfs none /clevis-${name} + umask 277 + clevis decrypt < /etc/clevis/${name}.jwe > /clevis-${name}/decrypted + ''; + conflicts = [ "initrd-switch-root.target" "shutdown.target" ]; + unitConfig.DefaultDependencies = "no"; + serviceConfig = { + Type = "oneshot"; + RemainAfterExit = true; + ExecStop = "${config.boot.initrd.systemd.package.util-linux}/bin/umount /clevis-${name}"; + }; + }) + devicesWithClevis) + ); + environment.systemPackages = [ pkgs.cryptsetup ]; }; } diff --git a/nixos/modules/tasks/filesystems/bcachefs.nix b/nixos/modules/tasks/filesystems/bcachefs.nix index f28fd5cde9c1..639ff87841b6 100644 --- a/nixos/modules/tasks/filesystems/bcachefs.nix +++ b/nixos/modules/tasks/filesystems/bcachefs.nix @@ -57,7 +57,15 @@ let # bcachefs does not support mounting devices with colons in the path, ergo we don't (see #49671) firstDevice = fs: lib.head (lib.splitString ":" fs.device); - openCommand = name: fs: '' + openCommand = name: fs: if config.boot.initrd.clevis.enable && (lib.hasAttr (firstDevice fs) config.boot.initrd.clevis.devices) then '' + if clevis decrypt < /etc/clevis/${firstDevice fs}.jwe | bcachefs unlock ${firstDevice fs} + then + printf "unlocked ${name} using clevis\n" + else + printf "falling back to interactive unlocking...\n" + tryUnlock ${name} ${firstDevice fs} + fi + '' else '' tryUnlock ${name} ${firstDevice fs} ''; diff --git a/nixos/modules/tasks/filesystems/zfs.nix b/nixos/modules/tasks/filesystems/zfs.nix index 72bc79f31b68..fd92a0014002 100644 --- a/nixos/modules/tasks/filesystems/zfs.nix +++ b/nixos/modules/tasks/filesystems/zfs.nix @@ -17,6 +17,9 @@ let cfgZED = config.services.zfs.zed; selectModulePackage = package: config.boot.kernelPackages.${package.kernelModuleAttribute}; + clevisDatasets = map (e: e.device) (filter (e: (hasAttr e.device config.boot.initrd.clevis.devices) && e.fsType == "zfs" && (fsNeededForBoot e)) config.system.build.fileSystems); + + inInitrd = any (fs: fs == "zfs") config.boot.initrd.supportedFilesystems; inSystem = any (fs: fs == "zfs") config.boot.supportedFilesystems; @@ -120,12 +123,12 @@ let # but don't *require* it, because mounts shouldn't be killed if it's stopped. # In the future, hopefully someone will complete this: # https://github.com/zfsonlinux/zfs/pull/4943 - wants = [ "systemd-udev-settle.service" ]; + wants = [ "systemd-udev-settle.service" ] ++ optional (config.boot.initrd.clevis.useTang) "network-online.target"; after = [ "systemd-udev-settle.service" "systemd-modules-load.service" "systemd-ask-password-console.service" - ]; + ] ++ optional (config.boot.initrd.clevis.useTang) "network-online.target"; requiredBy = getPoolMounts prefix pool ++ [ "zfs-import.target" ]; before = getPoolMounts prefix pool ++ [ "zfs-import.target" ]; unitConfig = { @@ -154,6 +157,9 @@ let poolImported "${pool}" || poolImport "${pool}" # Try one last time, e.g. to import a degraded pool. fi if poolImported "${pool}"; then + ${concatMapStringsSep "\n" (elem: "clevis decrypt < /etc/clevis/${elem}.jwe | zfs load-key ${elem} || true ") (filter (p: (elemAt (splitString "/" p) 0) == pool) clevisDatasets)} + + ${optionalString keyLocations.hasKeys '' ${keyLocations.command} | while IFS=$'\t' read ds kl ks; do { @@ -623,6 +629,9 @@ in fi poolImported "${pool}" || poolImport "${pool}" # Try one last time, e.g. to import a degraded pool. fi + + ${concatMapStringsSep "\n" (elem: "clevis decrypt < /etc/clevis/${elem}.jwe | zfs load-key ${elem}") (filter (p: (elemAt (splitString "/" p) 0) == pool) clevisDatasets)} + ${if isBool cfgZfs.requestEncryptionCredentials then optionalString cfgZfs.requestEncryptionCredentials '' zfs load-key -a diff --git a/nixos/tests/all-terminfo.nix b/nixos/tests/all-terminfo.nix index dd47c66ee1c1..2f5e56f09f26 100644 --- a/nixos/tests/all-terminfo.nix +++ b/nixos/tests/all-terminfo.nix @@ -10,7 +10,11 @@ import ./make-test-python.nix ({ pkgs, ... }: rec { let o = builtins.tryEval drv; in - o.success && lib.isDerivation o.value && o.value ? outputs && builtins.elem "terminfo" o.value.outputs; + o.success && + lib.isDerivation o.value && + o.value ? outputs && + builtins.elem "terminfo" o.value.outputs && + !o.value.meta.broken; terminfos = lib.filterAttrs infoFilter pkgs; excludedTerminfos = lib.filterAttrs (_: drv: !(builtins.elem drv.terminfo config.environment.systemPackages)) terminfos; includedOuts = lib.filterAttrs (_: drv: builtins.elem drv.out config.environment.systemPackages) terminfos; diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index 1ed0f760c9a2..dfe5198d82ea 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -135,6 +135,7 @@ in { authelia = handleTest ./authelia.nix {}; avahi = handleTest ./avahi.nix {}; avahi-with-resolved = handleTest ./avahi.nix { networkd = true; }; + ayatana-indicators = handleTest ./ayatana-indicators.nix {}; babeld = handleTest ./babeld.nix {}; bazarr = handleTest ./bazarr.nix {}; bcachefs = handleTestOn ["x86_64-linux" "aarch64-linux"] ./bcachefs.nix {}; diff --git a/nixos/tests/auth-mysql.nix b/nixos/tests/auth-mysql.nix index 0ed4b050a69a..77a69eb1cd58 100644 --- a/nixos/tests/auth-mysql.nix +++ b/nixos/tests/auth-mysql.nix @@ -84,7 +84,7 @@ in getpwuid = '' SELECT name, 'x', uid, gid, name, CONCAT('/home/', name), "/run/current-system/sw/bin/bash" \ FROM users \ - WHERE id=%1$u \ + WHERE uid=%1$u \ LIMIT 1 ''; getspnam = '' @@ -140,6 +140,7 @@ in machine.wait_for_unit("multi-user.target") machine.wait_for_unit("mysql.service") + machine.wait_until_succeeds("cat /etc/security/pam_mysql.conf | grep users.db_passwd") machine.wait_until_succeeds("pgrep -f 'agetty.*tty1'") with subtest("Local login"): diff --git a/nixos/tests/ayatana-indicators.nix b/nixos/tests/ayatana-indicators.nix new file mode 100644 index 000000000000..bc7ff75f390f --- /dev/null +++ b/nixos/tests/ayatana-indicators.nix @@ -0,0 +1,71 @@ +import ./make-test-python.nix ({ pkgs, lib, ... }: let + user = "alice"; +in { + name = "ayatana-indicators"; + + meta = { + maintainers = with lib.maintainers; [ OPNA2608 ]; + }; + + nodes.machine = { config, ... }: { + imports = [ + ./common/auto.nix + ./common/user-account.nix + ]; + + test-support.displayManager.auto = { + enable = true; + inherit user; + }; + + services.xserver = { + enable = true; + desktopManager.mate.enable = true; + displayManager.defaultSession = lib.mkForce "mate"; + }; + + services.ayatana-indicators = { + enable = true; + packages = with pkgs; [ + ayatana-indicator-messages + ]; + }; + + # Services needed by some indicators + services.accounts-daemon.enable = true; # messages + }; + + # TODO session indicator starts up in a semi-broken state, but works fine after a restart. maybe being started before graphical session is truly up & ready? + testScript = { nodes, ... }: let + runCommandPerIndicatorService = command: lib.strings.concatMapStringsSep "\n" command nodes.machine.systemd.user.targets."ayatana-indicators".wants; + in '' + start_all() + machine.wait_for_x() + + # Desktop environment should reach graphical-session.target + machine.wait_for_unit("graphical-session.target", "${user}") + + # MATE relies on XDG autostart to bring up the indicators. + # Not sure *when* XDG autostart fires them up, and awaiting pgrep success seems to misbehave? + machine.sleep(10) + + # Now check if all indicators were brought up successfully, and kill them for later + '' + (runCommandPerIndicatorService (service: let serviceExec = builtins.replaceStrings [ "." ] [ "-" ] service; in '' + machine.succeed("pgrep -f ${serviceExec}") + machine.succeed("pkill -f ${serviceExec}") + '')) + '' + + # Ayatana target is the preferred way of starting up indicators on SystemD session, the graphical session is responsible for starting this if it supports them. + # Mate currently doesn't do this, so start it manually for checking (https://github.com/mate-desktop/mate-indicator-applet/issues/63) + machine.systemctl("start ayatana-indicators.target", "${user}") + machine.wait_for_unit("ayatana-indicators.target", "${user}") + + # Let all indicator services do their startups, potential post-launch crash & restart cycles so we can properly check for failures + # Not sure if there's a better way of awaiting this without false-positive potential + machine.sleep(10) + + # Now check if all indicator services were brought up successfully + '' + runCommandPerIndicatorService (service: '' + machine.wait_for_unit("${service}", "${user}") + ''); +}) diff --git a/nixos/tests/installer-systemd-stage-1.nix b/nixos/tests/installer-systemd-stage-1.nix index 1b4c92b584b9..d0c01a779ef1 100644 --- a/nixos/tests/installer-systemd-stage-1.nix +++ b/nixos/tests/installer-systemd-stage-1.nix @@ -32,6 +32,10 @@ stratisRoot swraid zfsroot + clevisLuks + clevisLuksFallback + clevisZfs + clevisZfsFallback ; } diff --git a/nixos/tests/installer.nix b/nixos/tests/installer.nix index e9ec28749850..f7fc168eba8c 100644 --- a/nixos/tests/installer.nix +++ b/nixos/tests/installer.nix @@ -12,6 +12,7 @@ let # The configuration to install. makeConfig = { bootLoader, grubDevice, grubIdentifier, grubUseEfi , extraConfig, forceGrubReinstallCount ? 0, flake ? false + , clevisTest }: pkgs.writeText "configuration.nix" '' { config, lib, pkgs, modulesPath, ... }: @@ -52,6 +53,15 @@ let boot.initrd.secrets."/etc/secret" = ./secret; + ${optionalString clevisTest '' + boot.kernelParams = [ "console=tty0" "ip=192.168.1.1:::255.255.255.0::eth1:none" ]; + boot.initrd = { + availableKernelModules = [ "tpm_tis" ]; + clevis = { enable = true; useTang = true; }; + network.enable = true; + }; + ''} + users.users.alice = { isNormalUser = true; home = "/home/alice"; @@ -71,7 +81,7 @@ let # partitions and filesystems. testScriptFun = { bootLoader, createPartitions, grubDevice, grubUseEfi, grubIdentifier , postInstallCommands, preBootCommands, postBootCommands, extraConfig - , testSpecialisationConfig, testFlakeSwitch + , testSpecialisationConfig, testFlakeSwitch, clevisTest, clevisFallbackTest }: let iface = "virtio"; isEfi = bootLoader == "systemd-boot" || (bootLoader == "grub" && grubUseEfi); @@ -79,12 +89,16 @@ let in if !isEfi && !pkgs.stdenv.hostPlatform.isx86 then '' machine.succeed("true") '' else '' + import subprocess + tpm_folder = os.environ['NIX_BUILD_TOP'] def assemble_qemu_flags(): flags = "-cpu max" ${if (system == "x86_64-linux" || system == "i686-linux") then ''flags += " -m 1024"'' else ''flags += " -m 768 -enable-kvm -machine virt,gic-version=host"'' } + ${optionalString clevisTest ''flags += f" -chardev socket,id=chrtpm,path={tpm_folder}/swtpm-sock -tpmdev emulator,id=tpm0,chardev=chrtpm -device tpm-tis,tpmdev=tpm0"''} + ${optionalString clevisTest ''flags += " -device virtio-net-pci,netdev=vlan1,mac=52:54:00:12:11:02 -netdev vde,id=vlan1,sock=\"$QEMU_VDE_SOCKET_1\""''} return flags @@ -110,8 +124,45 @@ let def create_machine_named(name): return create_machine({**default_flags, "name": name}) + class Tpm: + def __init__(self): + self.start() + + def start(self): + self.proc = subprocess.Popen(["${pkgs.swtpm}/bin/swtpm", + "socket", + "--tpmstate", f"dir={tpm_folder}/swtpm", + "--ctrl", f"type=unixio,path={tpm_folder}/swtpm-sock", + "--tpm2" + ]) + + # Check whether starting swtpm failed + try: + exit_code = self.proc.wait(timeout=0.2) + if exit_code is not None and exit_code != 0: + raise Exception("failed to start swtpm") + except subprocess.TimeoutExpired: + pass + + """Check whether the swtpm process exited due to an error""" + def check(self): + exit_code = self.proc.poll() + if exit_code is not None and exit_code != 0: + raise Exception("swtpm process died") + + + os.mkdir(f"{tpm_folder}/swtpm") + tpm = Tpm() + tpm.check() + + start_all() + ${optionalString clevisTest '' + tang.wait_for_unit("sockets.target") + tang.wait_for_unit("network-online.target") + machine.wait_for_unit("network-online.target") + ''} + machine.wait_for_unit("multi-user.target") - machine.start() with subtest("Assert readiness of login prompt"): machine.succeed("echo hello") @@ -127,13 +178,23 @@ let machine.copy_from_host( "${ makeConfig { inherit bootLoader grubDevice grubIdentifier - grubUseEfi extraConfig; + grubUseEfi extraConfig clevisTest; } }", "/mnt/etc/nixos/configuration.nix", ) machine.copy_from_host("${pkgs.writeText "secret" "secret"}", "/mnt/etc/nixos/secret") + ${optionalString clevisTest '' + with subtest("Create the Clevis secret with Tang"): + machine.wait_for_unit("network-online.target") + machine.succeed('echo -n password | clevis encrypt sss \'{"t": 2, "pins": {"tpm2": {}, "tang": {"url": "http://192.168.1.2"}}}\' -y > /mnt/etc/nixos/clevis-secret.jwe')''} + + ${optionalString clevisFallbackTest '' + with subtest("Shutdown Tang to check fallback to interactive prompt"): + tang.shutdown() + ''} + with subtest("Perform the installation"): machine.succeed("nixos-install < /dev/null >&2") @@ -200,7 +261,7 @@ let machine.copy_from_host_via_shell( "${ makeConfig { inherit bootLoader grubDevice grubIdentifier - grubUseEfi extraConfig; + grubUseEfi extraConfig clevisTest; forceGrubReinstallCount = 1; } }", @@ -229,7 +290,7 @@ let machine.copy_from_host_via_shell( "${ makeConfig { inherit bootLoader grubDevice grubIdentifier - grubUseEfi extraConfig; + grubUseEfi extraConfig clevisTest; forceGrubReinstallCount = 2; } }", @@ -303,7 +364,7 @@ let """) machine.copy_from_host_via_shell( "${makeConfig { - inherit bootLoader grubDevice grubIdentifier grubUseEfi extraConfig; + inherit bootLoader grubDevice grubIdentifier grubUseEfi extraConfig clevisTest; forceGrubReinstallCount = 1; flake = true; }}", @@ -379,6 +440,8 @@ let , enableOCR ? false, meta ? {} , testSpecialisationConfig ? false , testFlakeSwitch ? false + , clevisTest ? false + , clevisFallbackTest ? false }: makeTest { inherit enableOCR; @@ -416,13 +479,13 @@ let virtualisation.rootDevice = "/dev/vdb"; virtualisation.bootLoaderDevice = "/dev/vda"; virtualisation.qemu.diskInterface = "virtio"; - - # We don't want to have any networking in the guest whatsoever. - # Also, if any vlans are enabled, the guest will reboot - # (with a different configuration for legacy reasons), - # and spend 5 minutes waiting for the vlan interface to show up - # (which will never happen). - virtualisation.vlans = []; + virtualisation.qemu.options = mkIf (clevisTest) [ + "-chardev socket,id=chrtpm,path=$NIX_BUILD_TOP/swtpm-sock" + "-tpmdev emulator,id=tpm0,chardev=chrtpm" + "-device tpm-tis,tpmdev=tpm0" + ]; + # We don't want to have any networking in the guest apart from the clevis tests. + virtualisation.vlans = mkIf (!clevisTest) []; boot.loader.systemd-boot.enable = mkIf (bootLoader == "systemd-boot") true; @@ -471,7 +534,7 @@ let in [ (pkgs.grub2.override { inherit zfsSupport; }) (pkgs.grub2_efi.override { inherit zfsSupport; }) - ]); + ]) ++ optionals clevisTest [ pkgs.klibc ]; nix.settings = { substituters = mkForce []; @@ -480,12 +543,21 @@ let }; }; + } // optionalAttrs clevisTest { + tang = { + services.tang = { + enable = true; + listenStream = [ "80" ]; + ipAddressAllow = [ "192.168.1.0/24" ]; + }; + networking.firewall.allowedTCPPorts = [ 80 ]; + }; }; testScript = testScriptFun { inherit bootLoader createPartitions postInstallCommands preBootCommands postBootCommands grubDevice grubIdentifier grubUseEfi extraConfig - testSpecialisationConfig testFlakeSwitch; + testSpecialisationConfig testFlakeSwitch clevisTest clevisFallbackTest; }; }; @@ -586,6 +658,145 @@ let zfs = super.zfs.overrideAttrs(_: {meta.platforms = [];});} )]; }; + + mkClevisBcachefsTest = { fallback ? false }: makeInstallerTest "clevis-bcachefs${optionalString fallback "-fallback"}" { + clevisTest = true; + clevisFallbackTest = fallback; + enableOCR = fallback; + extraInstallerConfig = { + imports = [ no-zfs-module ]; + boot.supportedFilesystems = [ "bcachefs" ]; + environment.systemPackages = with pkgs; [ keyutils clevis ]; + }; + createPartitions = '' + machine.succeed( + "flock /dev/vda parted --script /dev/vda -- mklabel msdos" + + " mkpart primary ext2 1M 100MB" + + " mkpart primary linux-swap 100M 1024M" + + " mkpart primary 1024M -1s", + "udevadm settle", + "mkswap /dev/vda2 -L swap", + "swapon -L swap", + "keyctl link @u @s", + "echo -n password | mkfs.bcachefs -L root --encrypted /dev/vda3", + "echo -n password | bcachefs unlock /dev/vda3", + "echo -n password | mount -t bcachefs /dev/vda3 /mnt", + "mkfs.ext3 -L boot /dev/vda1", + "mkdir -p /mnt/boot", + "mount LABEL=boot /mnt/boot", + "udevadm settle") + ''; + extraConfig = '' + boot.initrd.clevis.devices."/dev/vda3".secretFile = "/etc/nixos/clevis-secret.jwe"; + + # We override what nixos-generate-config has generated because we do + # not know the UUID in advance. + fileSystems."/" = lib.mkForce { device = "/dev/vda3"; fsType = "bcachefs"; }; + ''; + preBootCommands = '' + tpm = Tpm() + tpm.check() + '' + optionalString fallback '' + machine.start() + machine.wait_for_text("enter passphrase for") + machine.send_chars("password\n") + ''; + }; + + mkClevisLuksTest = { fallback ? false }: makeInstallerTest "clevis-luks${optionalString fallback "-fallback"}" { + clevisTest = true; + clevisFallbackTest = fallback; + enableOCR = fallback; + extraInstallerConfig = { + environment.systemPackages = with pkgs; [ clevis ]; + }; + createPartitions = '' + machine.succeed( + "flock /dev/vda parted --script /dev/vda -- mklabel msdos" + + " mkpart primary ext2 1M 100MB" + + " mkpart primary linux-swap 100M 1024M" + + " mkpart primary 1024M -1s", + "udevadm settle", + "mkswap /dev/vda2 -L swap", + "swapon -L swap", + "modprobe dm_mod dm_crypt", + "echo -n password | cryptsetup luksFormat -q /dev/vda3 -", + "echo -n password | cryptsetup luksOpen --key-file - /dev/vda3 crypt-root", + "mkfs.ext3 -L nixos /dev/mapper/crypt-root", + "mount LABEL=nixos /mnt", + "mkfs.ext3 -L boot /dev/vda1", + "mkdir -p /mnt/boot", + "mount LABEL=boot /mnt/boot", + "udevadm settle") + ''; + extraConfig = '' + boot.initrd.clevis.devices."crypt-root".secretFile = "/etc/nixos/clevis-secret.jwe"; + ''; + preBootCommands = '' + tpm = Tpm() + tpm.check() + '' + optionalString fallback '' + machine.start() + ${if systemdStage1 then '' + machine.wait_for_text("Please enter") + '' else '' + machine.wait_for_text("Passphrase for") + ''} + machine.send_chars("password\n") + ''; + }; + + mkClevisZfsTest = { fallback ? false }: makeInstallerTest "clevis-zfs${optionalString fallback "-fallback"}" { + clevisTest = true; + clevisFallbackTest = fallback; + enableOCR = fallback; + extraInstallerConfig = { + boot.supportedFilesystems = [ "zfs" ]; + environment.systemPackages = with pkgs; [ clevis ]; + }; + createPartitions = '' + machine.succeed( + "flock /dev/vda parted --script /dev/vda -- mklabel msdos" + + " mkpart primary ext2 1M 100MB" + + " mkpart primary linux-swap 100M 1024M" + + " mkpart primary 1024M -1s", + "udevadm settle", + "mkswap /dev/vda2 -L swap", + "swapon -L swap", + "zpool create -O mountpoint=legacy rpool /dev/vda3", + "echo -n password | zfs create" + + " -o encryption=aes-256-gcm -o keyformat=passphrase rpool/root", + "mount -t zfs rpool/root /mnt", + "mkfs.ext3 -L boot /dev/vda1", + "mkdir -p /mnt/boot", + "mount LABEL=boot /mnt/boot", + "udevadm settle") + ''; + extraConfig = '' + boot.initrd.clevis.devices."rpool/root".secretFile = "/etc/nixos/clevis-secret.jwe"; + boot.zfs.requestEncryptionCredentials = true; + + + # Using by-uuid overrides the default of by-id, and is unique + # to the qemu disks, as they don't produce by-id paths for + # some reason. + boot.zfs.devNodes = "/dev/disk/by-uuid/"; + networking.hostId = "00000000"; + ''; + preBootCommands = '' + tpm = Tpm() + tpm.check() + '' + optionalString fallback '' + machine.start() + ${if systemdStage1 then '' + machine.wait_for_text("Enter key for rpool/root") + '' else '' + machine.wait_for_text("Key load error") + ''} + machine.send_chars("password\n") + ''; + }; + in { # !!! `parted mkpart' seems to silently create overlapping partitions. @@ -1175,6 +1386,13 @@ in { ) ''; }; +} // { + clevisBcachefs = mkClevisBcachefsTest { }; + clevisBcachefsFallback = mkClevisBcachefsTest { fallback = true; }; + clevisLuks = mkClevisLuksTest { }; + clevisLuksFallback = mkClevisLuksTest { fallback = true; }; + clevisZfs = mkClevisZfsTest { }; + clevisZfsFallback = mkClevisZfsTest { fallback = true; }; } // optionalAttrs systemdStage1 { stratisRoot = makeInstallerTest "stratisRoot" { createPartitions = '' diff --git a/pkgs/applications/audio/raysession/default.nix b/pkgs/applications/audio/raysession/default.nix index f12fd7a15c00..4db6072a4805 100644 --- a/pkgs/applications/audio/raysession/default.nix +++ b/pkgs/applications/audio/raysession/default.nix @@ -1,12 +1,12 @@ -{ lib, fetchurl, buildPythonApplication, libjack2, pydbus, pyliblo, pyqt5, which, bash, qt5 }: +{ lib, fetchurl, buildPythonApplication, libjack2, pyliblo, pyqt5, which, bash, qt5 }: buildPythonApplication rec { pname = "raysession"; - version = "0.13.1"; + version = "0.14.2"; src = fetchurl { url = "https://github.com/Houston4444/RaySession/releases/download/v${version}/RaySession-${version}-source.tar.gz"; - sha256 = "sha256-iiFRtX43u9BHe7a4ojza7kav+dMW9e05dPi7Gf9d1GM="; + sha256 = "sha256-qEN3zBK/goRLIZaU06XXm8H5yj4Qjj/NH+bkHkjhLaw="; }; postPatch = '' @@ -25,7 +25,7 @@ buildPythonApplication rec { qt5.wrapQtAppsHook ]; buildInputs = [ libjack2 bash ]; - propagatedBuildInputs = [ pydbus pyliblo pyqt5 ]; + propagatedBuildInputs = [ pyliblo pyqt5 ]; dontWrapQtApps = true; # The program is a python script. diff --git a/pkgs/applications/editors/cosmic-edit/default.nix b/pkgs/applications/editors/cosmic-edit/default.nix deleted file mode 100644 index 2adfc012bc6c..000000000000 --- a/pkgs/applications/editors/cosmic-edit/default.nix +++ /dev/null @@ -1,76 +0,0 @@ -{ lib -, stdenv -, fetchFromGitHub -, rust -, rustPlatform -, cmake -, makeWrapper -, cosmic-icons -, just -, pkg-config -, libxkbcommon -, glib -, gtk3 -, libinput -, fontconfig -, freetype -, wayland -}: - -rustPlatform.buildRustPackage rec { - pname = "cosmic-edit"; - version = "unstable-2023-11-02"; - - src = fetchFromGitHub { - owner = "pop-os"; - repo = "cosmic-edit"; - rev = "ee2dea71e6e21967bc705046f9650407d07cdada"; - sha256 = "sha256-27j9Imlyzwy2yjpNsWWcX0qW38ZxMDkht1Eaggr4NYY="; - }; - - cargoLock = { - lockFile = ./Cargo.lock; - outputHashes = { - "accesskit-0.11.0" = "sha256-xVhe6adUb8VmwIKKjHxwCwOo5Y1p3Or3ylcJJdLDrrE="; - "cosmic-config-0.1.0" = "sha256-VKvJ7cNwMLLs6ElpgP6xwsBUnD5MDApwWl7rrb/Lr/U="; - "cosmic-text-0.10.0" = "sha256-g9y2qZ2ivpDtZAtsXqMXgGjUFi9QZx/weMhk7hmnB3E="; - "sctk-adwaita-0.5.4" = "sha256-yK0F2w/0nxyKrSiHZbx7+aPNY2vlFs7s8nu/COp2KqQ="; - "smithay-client-toolkit-0.16.1" = "sha256-z7EZThbh7YmKzAACv181zaEZmWxTrMkFRzP0nfsHK6c="; - "softbuffer-0.2.0" = "sha256-VD2GmxC58z7Qfu/L+sfENE+T8L40mvUKKSfgLmCTmjY="; - "taffy-0.3.11" = "sha256-0hXOEj6IjSW8e1t+rvxBFX6V9XRum3QO2Des1XlHJEw="; - "winit-0.28.6" = "sha256-FhW6d2XnXCGJUMoT9EMQew9/OPXiehy/JraeCiVd76M="; - }; - }; - - postPatch = '' - substituteInPlace justfile --replace '#!/usr/bin/env' "#!$(command -v env)" - ''; - - nativeBuildInputs = [ cmake just pkg-config makeWrapper ]; - buildInputs = [ libxkbcommon libinput fontconfig freetype wayland glib gtk3 ]; - - dontUseJustBuild = true; - - justFlags = [ - "--set" - "prefix" - (placeholder "out") - "--set" - "bin-src" - "target/${rust.lib.toRustTargetSpecShort stdenv.hostPlatform}/release/cosmic-edit" - ]; - - postInstall = '' - wrapProgram "$out/bin/${pname}" \ - --suffix XDG_DATA_DIRS : "${cosmic-icons}/share" - ''; - - meta = with lib; { - homepage = "https://github.com/pop-os/cosmic-edit"; - description = "Text Editor for the COSMIC Desktop Environment"; - license = licenses.gpl3Only; - mainProgram = "cosmic-edit"; - maintainers = with maintainers; [ ahoneybun ]; - platforms = platforms.linux; - }; -} diff --git a/pkgs/applications/editors/jetbrains/linux.nix b/pkgs/applications/editors/jetbrains/linux.nix index 4a89ae202858..46cf00ea2131 100644 --- a/pkgs/applications/editors/jetbrains/linux.nix +++ b/pkgs/applications/editors/jetbrains/linux.nix @@ -120,7 +120,8 @@ with stdenv; lib.makeOverridable mkDerivation (rec { item=${desktopItem} wrapProgram "$out/$pname/bin/${loName}.sh" \ - --prefix PATH : "$out/libexec/${pname}:${lib.makeBinPath [ jdk coreutils gnugrep which git python3 ]}" \ + --prefix PATH : "$out/libexec/${pname}:${lib.makeBinPath [ jdk coreutils gnugrep which git ]}" \ + --suffix PATH : "${lib.makeBinPath [ python3 ]}" \ --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath extraLdPath}" \ ${lib.concatStringsSep " " extraWrapperArgs} \ --set-default JDK_HOME "$jdk" \ diff --git a/pkgs/applications/editors/vim/plugins/generated.nix b/pkgs/applications/editors/vim/plugins/generated.nix index 1083aa39ee20..5eab8dba6176 100644 --- a/pkgs/applications/editors/vim/plugins/generated.nix +++ b/pkgs/applications/editors/vim/plugins/generated.nix @@ -2287,12 +2287,12 @@ final: prev: conform-nvim = buildVimPlugin { pname = "conform.nvim"; - version = "2023-11-30"; + version = "2023-12-01"; src = fetchFromGitHub { owner = "stevearc"; repo = "conform.nvim"; - rev = "3fc2c956d99216b2816f07d2b946020ba2e02457"; - sha256 = "1hv712cn3vn4gnr01a9maq787nb13x8nwachksnik49bq28g43g6"; + rev = "e8ac7f1a9a3973ecce6942b2f26d16e65902aa70"; + sha256 = "127shx9vzq9rkjk44xpr24w76b51fywwrni6nvrdq29swqdpk9yw"; fetchSubmodules = true; }; meta.homepage = "https://github.com/stevearc/conform.nvim/"; @@ -2348,12 +2348,12 @@ final: prev: copilot-lua = buildVimPlugin { pname = "copilot.lua"; - version = "2023-11-28"; + version = "2023-12-01"; src = fetchFromGitHub { owner = "zbirenbaum"; repo = "copilot.lua"; - rev = "3665ed0f3ef3ad68673df7195789d134d0d1fdb0"; - sha256 = "1vsyjxqzq57ckmj942i018r1zg56l908fg8i5z3rv4qyqrwjz725"; + rev = "38a41d0d78f8823cc144c99784528b9a68bdd608"; + sha256 = "05v2cxa10s98pk7w0g3g8p440bz6n2r2k4ygxz9vkbcjf39kgjaj"; }; meta.homepage = "https://github.com/zbirenbaum/copilot.lua/"; }; @@ -2480,12 +2480,12 @@ final: prev: csv-vim = buildVimPlugin { pname = "csv.vim"; - version = "2023-09-28"; + version = "2023-12-01"; src = fetchFromGitHub { owner = "chrisbra"; repo = "csv.vim"; - rev = "4fd88346aed02123aa5daa1a363868a576c6fdcf"; - sha256 = "10c2hgzhnv1zr461hvp4cnxpfs0aja43whjimdsb5sjd4xk5x7cc"; + rev = "962f88787ec6873eba1c7dbbd81d2723f1ee3c4b"; + sha256 = "11gwamrqqmcy5jvbmnmyvx94pknlx3ppvyk4b6vhm4dghwmhq9nb"; }; meta.homepage = "https://github.com/chrisbra/csv.vim/"; }; @@ -3046,12 +3046,12 @@ final: prev: dressing-nvim = buildVimPlugin { pname = "dressing.nvim"; - version = "2023-11-07"; + version = "2023-12-01"; src = fetchFromGitHub { owner = "stevearc"; repo = "dressing.nvim"; - rev = "fe3071330a0720ce3695ac915820c8134b22d1b0"; - sha256 = "0a76mkvgya5hygfjbk2wbha18fhwhv6kmkxgvda053z325505mc6"; + rev = "8b7ae53d7f04f33be3439a441db8071c96092d19"; + sha256 = "1gj3apvif9bfz1vqrxr6xmj5p7byjq5qdjv159lnm09hca3vfdnb"; }; meta.homepage = "https://github.com/stevearc/dressing.nvim/"; }; @@ -3649,12 +3649,12 @@ final: prev: fzf-lua = buildVimPlugin { pname = "fzf-lua"; - version = "2023-11-30"; + version = "2023-12-01"; src = fetchFromGitHub { owner = "ibhagwan"; repo = "fzf-lua"; - rev = "474af4d6e2f0ebfbb5df85ca7827b67949717bae"; - sha256 = "0236ccalzkwv2qzspqdglnkvpflzcppllp4v5bn6v1lbnlyqj7dm"; + rev = "a1a2d0f42eaec400cc6918a8e898fc1f9c4dbc5f"; + sha256 = "14pdspy8932fh5w247vqs0fyywb6mwg1af9sk5irgxfsv7c0xlg2"; }; meta.homepage = "https://github.com/ibhagwan/fzf-lua/"; }; @@ -3877,12 +3877,12 @@ final: prev: go-nvim = buildVimPlugin { pname = "go.nvim"; - version = "2023-11-28"; + version = "2023-12-01"; src = fetchFromGitHub { owner = "ray-x"; repo = "go.nvim"; - rev = "e0528b5868b8c488fb6eaf1a4f7b298976d419a5"; - sha256 = "08xh4i09akm13gaj5zzlqlhcrr1i21jwqzxljf7i5wklpw7hf03c"; + rev = "7b7c20029a817ef51f6b498388488e9850fe45ac"; + sha256 = "0qbgmg9kvhxz4akmxd56lwr2zjxrayccgiynkcfnqakvya271jji"; }; meta.homepage = "https://github.com/ray-x/go.nvim/"; }; @@ -4080,24 +4080,24 @@ final: prev: harpoon = buildVimPlugin { pname = "harpoon"; - version = "2023-10-10"; + version = "2023-12-02"; src = fetchFromGitHub { owner = "ThePrimeagen"; repo = "harpoon"; - rev = "c1aebbad9e3d13f20bedb8f2ce8b3a94e39e424a"; - sha256 = "0wqxg31z7gi7ap8r0057lpadywx3d245ghlljr6mkmp0jz3waad5"; + rev = "c5f2d71c32a4aa2569bef1066e668947b78f9682"; + sha256 = "1jn3sj3r1mczg5wyh7qcs51mab8sz02sgff5d2p3qhz0gjvyq22m"; }; meta.homepage = "https://github.com/ThePrimeagen/harpoon/"; }; haskell-tools-nvim = buildNeovimPlugin { pname = "haskell-tools.nvim"; - version = "2023-11-26"; + version = "2023-12-02"; src = fetchFromGitHub { owner = "MrcJkb"; repo = "haskell-tools.nvim"; - rev = "8bfbba643d908e8757d591cf01e2241dd46b0858"; - sha256 = "05np6ahzf6mk6ksfak12y7iwgfkrpkwhgf366bqlbk236g3k7sk0"; + rev = "fdb248c2cc724b151b0886044b5fd8b88968d0d1"; + sha256 = "0wj9aqihym10bmdybdmvlf8nlaghhfxl5z7gaamzbzlwhwlx71zy"; }; meta.homepage = "https://github.com/MrcJkb/haskell-tools.nvim/"; }; @@ -4271,12 +4271,12 @@ final: prev: hotpot-nvim = buildVimPlugin { pname = "hotpot.nvim"; - version = "2023-10-20"; + version = "2023-12-01"; src = fetchFromGitHub { owner = "rktjmp"; repo = "hotpot.nvim"; - rev = "eb5531b5f6285656408d1ed07b4d9bcc8067bad4"; - sha256 = "0yl1l11dp58mg3bfk42ydcc7s2fxnnz6nlkkc09kxmdf4gxwr3wc"; + rev = "05d9325e14ee1af9114b5c4586d1b200e75ccac9"; + sha256 = "1ffhx1i9p7a13k6qmpry507ypk45sff6api5nnnc709bd7360743"; }; meta.homepage = "https://github.com/rktjmp/hotpot.nvim/"; }; @@ -4439,12 +4439,12 @@ final: prev: indent-blankline-nvim = buildVimPlugin { pname = "indent-blankline.nvim"; - version = "2023-10-30"; + version = "2023-12-02"; src = fetchFromGitHub { owner = "lukas-reineke"; repo = "indent-blankline.nvim"; - rev = "29be0919b91fb59eca9e90690d76014233392bef"; - sha256 = "0z8n9d6f4qiq8m4ai1r2xz90955cp6cikqprq74ivfch3icrzdi1"; + rev = "dbd90bb689ff10d21fee6792eb8928f0584b5860"; + sha256 = "1fbx8l5m09qyis4d767gmmwa9rgify6vwjvj3b1jqfzhlz1fmd24"; }; meta.homepage = "https://github.com/lukas-reineke/indent-blankline.nvim/"; }; @@ -4860,12 +4860,12 @@ final: prev: leap-nvim = buildVimPlugin { pname = "leap.nvim"; - version = "2023-10-22"; + version = "2023-12-01"; src = fetchFromGitHub { owner = "ggandor"; repo = "leap.nvim"; - rev = "b6ae80f8fc9993638608fc1a51c6ab0eeb12618c"; - sha256 = "19nffffmczlqfsgjs10hqs9abgbygiv0ns64apk7gzf5anjaj0z1"; + rev = "d55acc28ecc1f3ab3c396afd1f8b11a239285d9b"; + sha256 = "0g4savdihdh15lddh5yj8vq5py9flzl59dqc93w6yx2kvj1r9ad2"; }; meta.homepage = "https://github.com/ggandor/leap.nvim/"; }; @@ -5016,12 +5016,12 @@ final: prev: lightspeed-nvim = buildVimPlugin { pname = "lightspeed.nvim"; - version = "2022-10-21"; + version = "2023-12-01"; src = fetchFromGitHub { owner = "ggandor"; repo = "lightspeed.nvim"; - rev = "299eefa6a9e2d881f1194587c573dad619fdb96f"; - sha256 = "1697plp2f6r5vmayi4xw23lj69pc31r3zh3p07rzxgl2ir4zrj1z"; + rev = "fcc72d8a4d5f4ebba62d8a3a0660f88f1b5c3b05"; + sha256 = "1006047i88h1sad2xdi6h26vy13wnh4mnsdqqp4gpvh2sg6avnd5"; }; meta.homepage = "https://github.com/ggandor/lightspeed.nvim/"; }; @@ -5279,12 +5279,12 @@ final: prev: lspsaga-nvim = buildVimPlugin { pname = "lspsaga.nvim"; - version = "2023-11-21"; + version = "2023-12-01"; src = fetchFromGitHub { owner = "nvimdev"; repo = "lspsaga.nvim"; - rev = "d3dfaea0125315110ea720c337ab88aa451d75e7"; - sha256 = "07bm8gvzx68cdy7jkhva3caqjqazrh5hnhr3yi1qa6g1vlmnb0f7"; + rev = "e9f08958e5f8410cadaa6388844788aedec5f78a"; + sha256 = "1rhrjh36nlwrms9ikd3vfmvf1lh5m8wqx79n82g68lkaxch6g8v1"; }; meta.homepage = "https://github.com/nvimdev/lspsaga.nvim/"; }; @@ -5325,14 +5325,14 @@ final: prev: meta.homepage = "https://github.com/nvim-lualine/lualine.nvim/"; }; - luasnip = buildVimPlugin { + luasnip = buildNeovimPlugin { pname = "luasnip"; - version = "2023-11-28"; + version = "2023-12-01"; src = fetchFromGitHub { owner = "l3mon4d3"; repo = "luasnip"; - rev = "1def35377854535bb3b0f4cc7a33c083cdb12571"; - sha256 = "1g34ivzymgv214rpmwcmv91l4gp29q4r6cbv8xszzvxmc7dxcgkr"; + rev = "118263867197a111717b5f13d954cd1ab8124387"; + sha256 = "05gf35zb1m4baz3xiw8qh647l2w89861jljrhbbjnhnn48vfqgzw"; fetchSubmodules = true; }; meta.homepage = "https://github.com/l3mon4d3/luasnip/"; @@ -5436,24 +5436,24 @@ final: prev: mason-lspconfig-nvim = buildVimPlugin { pname = "mason-lspconfig.nvim"; - version = "2023-11-28"; + version = "2023-12-01"; src = fetchFromGitHub { owner = "williamboman"; repo = "mason-lspconfig.nvim"; - rev = "41674c9d50f23cfa3e11f0ca964eb9100c2a8922"; - sha256 = "030vyd0n45kd9j33kb20v8kx9pg66702525gnjbcrv5a8npldm1q"; + rev = "4eb8e15e3c0757303d4c6dea64d2981fc679e990"; + sha256 = "0ng3zhxcxdkpwd4zy17yl51h7bhknd3qv8j6rkbq1js237zv027p"; }; meta.homepage = "https://github.com/williamboman/mason-lspconfig.nvim/"; }; mason-tool-installer-nvim = buildVimPlugin { pname = "mason-tool-installer.nvim"; - version = "2023-10-10"; + version = "2023-12-02"; src = fetchFromGitHub { owner = "WhoIsSethDaniel"; repo = "mason-tool-installer.nvim"; - rev = "e4f34741daa9cf95de68a603d3e7a6844a69fdf0"; - sha256 = "1pk19mlssn6f4pqm2j0kf9841nmxd0scphhrrd02w81gmsr912zh"; + rev = "8b70e7f1e0a4119c1234c3bde4a01c241cabcc74"; + sha256 = "1jxk8hz4p84f725f35hdkqnk6dnkanly86k89n7p551qwjs21mv0"; }; meta.homepage = "https://github.com/WhoIsSethDaniel/mason-tool-installer.nvim/"; }; @@ -5556,12 +5556,12 @@ final: prev: mini-nvim = buildVimPlugin { pname = "mini.nvim"; - version = "2023-11-28"; + version = "2023-12-01"; src = fetchFromGitHub { owner = "echasnovski"; repo = "mini.nvim"; - rev = "964fab7fecd14f66a69a96162f8aa816480690fd"; - sha256 = "1vxbjidpxhjbrbhg5kl4x4dcsn77nfybzbnlq4yjcpcsrmf8ms5i"; + rev = "6d1cbcaec421b3768088b4047e78ce22e5503b99"; + sha256 = "1924d432sym9qbp2q9h9gj5ky81vnxq1y4zzfrg5ay76clplaa95"; }; meta.homepage = "https://github.com/echasnovski/mini.nvim/"; }; @@ -6036,12 +6036,12 @@ final: prev: neogit = buildVimPlugin { pname = "neogit"; - version = "2023-11-30"; + version = "2023-12-01"; src = fetchFromGitHub { owner = "NeogitOrg"; repo = "neogit"; - rev = "1ab1504ab87016e1d12b8f23543532a3006adb3b"; - sha256 = "147k8rxcqqp85l1mjklak0bfzbwn2gkxkm4ykw01srkzy5jlhdwp"; + rev = "d0e87541130b2cf62d7f8a54487ef99560232fb6"; + sha256 = "16mmrhn83k8jrjavxbzq5ql32q2c9jqdgfx3a6hd2iv810y664qi"; }; meta.homepage = "https://github.com/NeogitOrg/neogit/"; }; @@ -6108,12 +6108,12 @@ final: prev: neorg = buildVimPlugin { pname = "neorg"; - version = "2023-11-28"; + version = "2023-12-01"; src = fetchFromGitHub { owner = "nvim-neorg"; repo = "neorg"; - rev = "f4466457396717d10d2d235d019e0a80e1770087"; - sha256 = "07gs0hdgy7q5sq3cj29jc8qlwsjmr74hqgy0l38pljbqxajigsww"; + rev = "bf3daa2229c60f92f48ac6d7db3049b65fd01371"; + sha256 = "0si90zng5x0p6qcrzzib8gifbxxw3m3sqbh22jiwwdjxwr3vhy9d"; }; meta.homepage = "https://github.com/nvim-neorg/neorg/"; }; @@ -6445,12 +6445,12 @@ final: prev: nerdtree = buildVimPlugin { pname = "nerdtree"; - version = "2023-11-15"; + version = "2023-12-01"; src = fetchFromGitHub { owner = "preservim"; repo = "nerdtree"; - rev = "0cb04e9245b000daf32f04aae5f606011a6aa3b5"; - sha256 = "1rws27wc2l3qahvbfd5b2i1js9kwldxxsfsn0abah96q2m1i3q85"; + rev = "50a394b2bfa93674381cb913d6330e5075b5c787"; + sha256 = "1p8qmnbi3l4y743db35sig5nxgqj83s20yyqhld9b5v0yr27rhbl"; }; meta.homepage = "https://github.com/preservim/nerdtree/"; }; @@ -6589,12 +6589,12 @@ final: prev: no-neck-pain-nvim = buildVimPlugin { pname = "no-neck-pain.nvim"; - version = "2023-11-29"; + version = "2023-12-01"; src = fetchFromGitHub { owner = "shortcuts"; repo = "no-neck-pain.nvim"; - rev = "0311b1654098b28c29a99007844dfa4bfe315b0a"; - sha256 = "01rx8pf5qkga3x4y9902pwkjh0xifgba4xk6wfr0akn1slwd1g11"; + rev = "968ad52ee472e950d104303c4c0bfcd3de664fe1"; + sha256 = "0lqhi74fjvsflx642g04k2zf8i8dxfycmgd7hh0nkc6012b1ma3x"; }; meta.homepage = "https://github.com/shortcuts/no-neck-pain.nvim/"; }; @@ -6613,12 +6613,12 @@ final: prev: none-ls-nvim = buildVimPlugin { pname = "none-ls.nvim"; - version = "2023-11-29"; + version = "2023-12-01"; src = fetchFromGitHub { owner = "nvimtools"; repo = "none-ls.nvim"; - rev = "3a4826687da4310af379515086d71faca4d21288"; - sha256 = "1fcln8z31cmmg0dclp8gwiy74pfa4ylic74pdf4mcsaqbm5blkr4"; + rev = "7bf88cd3b37a411fdacfdca1745408a77a420493"; + sha256 = "0ynlhj5vskv6laixs79lh334fxxkm0yx1vcgc9vyk9cr19v5109n"; }; meta.homepage = "https://github.com/nvimtools/none-ls.nvim/"; }; @@ -7236,12 +7236,12 @@ final: prev: nvim-lspconfig = buildVimPlugin { pname = "nvim-lspconfig"; - version = "2023-11-30"; + version = "2023-12-01"; src = fetchFromGitHub { owner = "neovim"; repo = "nvim-lspconfig"; - rev = "fcf153fbbf1facd16a71d46b92be8be495123a9f"; - sha256 = "13h9nx74afvabrn51b4wjb6k6svidbmwq5czl03p3rp37lywkxcw"; + rev = "694aaec65733e2d54d393abf80e526f86726c988"; + sha256 = "16nrq7gxnk33qgpmcnjd8yq738vd7qpr2x77v7xf84qp2443nbkx"; }; meta.homepage = "https://github.com/neovim/nvim-lspconfig/"; }; @@ -7464,12 +7464,12 @@ final: prev: nvim-scrollview = buildVimPlugin { pname = "nvim-scrollview"; - version = "2023-11-30"; + version = "2023-12-01"; src = fetchFromGitHub { owner = "dstein64"; repo = "nvim-scrollview"; - rev = "1b11329ece4cd25884b56c129aedc23ff1665d92"; - sha256 = "0n7mqssagmq40glaiybmf8d5664665q32d9kbgz00jgnnj9n93ay"; + rev = "7eb9030662fad8bfbc1df2c6cfc165aa4a8904b2"; + sha256 = "1245qk1s00svnh57ijamziam8lm3d419a5vf3wry9fdf2lm01j1g"; }; meta.homepage = "https://github.com/dstein64/nvim-scrollview/"; }; @@ -7596,12 +7596,12 @@ final: prev: nvim-treesitter = buildVimPlugin { pname = "nvim-treesitter"; - version = "2023-11-30"; + version = "2023-12-01"; src = fetchFromGitHub { owner = "nvim-treesitter"; repo = "nvim-treesitter"; - rev = "b41bbcbb9a2c5543d3bfa4cf7e2b0948a5f61ce6"; - sha256 = "1nsfxaxi2wkbs32kfxsbd23m2xx0fickffjgcprj079bgl64z47k"; + rev = "80a16deb5146a3eb4648effccda1ab9f45e43e76"; + sha256 = "0mgm5b80flk5171b3b2gsy2pjdimc0xbjbsdg4qf9hgzjyxf9jmi"; }; meta.homepage = "https://github.com/nvim-treesitter/nvim-treesitter/"; }; @@ -7656,12 +7656,12 @@ final: prev: nvim-treesitter-textobjects = buildVimPlugin { pname = "nvim-treesitter-textobjects"; - version = "2023-11-30"; + version = "2023-12-01"; src = fetchFromGitHub { owner = "nvim-treesitter"; repo = "nvim-treesitter-textobjects"; - rev = "aa7935c60aff501580b7f4872a7082e615ea5be3"; - sha256 = "0j9fv564l4k1jf29h0mb5vnm2h1x3balrpnmchav527ylcaxhgmm"; + rev = "ec1c5bdb3d87ac971749fa6c7dbc2b14884f1f6a"; + sha256 = "1kdfwihk8ci827aq4w6xv7vn2740qpmh6dk892cd6yi0ab4zxvxn"; }; meta.homepage = "https://github.com/nvim-treesitter/nvim-treesitter-textobjects/"; }; @@ -7727,12 +7727,12 @@ final: prev: nvim-ufo = buildVimPlugin { pname = "nvim-ufo"; - version = "2023-11-28"; + version = "2023-12-01"; src = fetchFromGitHub { owner = "kevinhwang91"; repo = "nvim-ufo"; - rev = "c1e75fb93a5413c73221e23d549cc9f208d592fb"; - sha256 = "0kwxqrbb0n12bq3iqidk8i67ag4g6rdnqzk5gcjjvm6qlvvylggz"; + rev = "47a2f8d4da670db6e01a7373cdf97249e332d6d4"; + sha256 = "0k2l5ls9fhc53a7fvyz8p75n0b3spy7s3j4z9l3ilzvhd6m7al6d"; }; meta.homepage = "https://github.com/kevinhwang91/nvim-ufo/"; }; @@ -7871,12 +7871,12 @@ final: prev: oil-nvim = buildVimPlugin { pname = "oil.nvim"; - version = "2023-11-24"; + version = "2023-12-01"; src = fetchFromGitHub { owner = "stevearc"; repo = "oil.nvim"; - rev = "e89a8f8adeef2dfab851fd056d38ee7afc97c249"; - sha256 = "1f5201yb7kqbggn0dgpl9p5mnxdxg6ffpfmzih7rzzkp4fhn2vb4"; + rev = "58340545c6a01e5e9f7966df448714a156db137a"; + sha256 = "0s3yd9336yqk8s8f07lf0195pn5q0ij1qphp0yaisrpxbfarl63p"; fetchSubmodules = true; }; meta.homepage = "https://github.com/stevearc/oil.nvim/"; @@ -8774,12 +8774,12 @@ final: prev: rustaceanvim = buildNeovimPlugin { pname = "rustaceanvim"; - version = "2023-11-28"; + version = "2023-12-01"; src = fetchFromGitHub { owner = "mrcjkb"; repo = "rustaceanvim"; - rev = "bdd7155a18249f39a014115a8832ee770e503812"; - sha256 = "0abwc7shfqcr31m7gaaxq07ym24s6gz8mkc49f5j0idcfj4k4n1v"; + rev = "3cad6912b16d5e0a5375d465ca28fda4c6ea4ee9"; + sha256 = "12lzw6jh7z5bvd7ss9xils11paiv3b9by31nlxfarnpcvqf0m9l4"; }; meta.homepage = "https://github.com/mrcjkb/rustaceanvim/"; }; @@ -8875,7 +8875,7 @@ final: prev: owner = "VonHeikemen"; repo = "searchbox.nvim"; rev = "110949af8963185b4e732b45ae57beb731bfcede"; - sha256 = "1dahiggnc8hqfgd9akxlsyck7gxz05w0phrvahc5g1kskyr0q7h7"; + sha256 = "sha256-Bx4Msp96hlcYVDvDC3gBv78zmde0T5XacxgiZt+LULU="; }; meta.homepage = "https://github.com/VonHeikemen/searchbox.nvim/"; }; @@ -9256,12 +9256,12 @@ final: prev: srcery-vim = buildVimPlugin { pname = "srcery-vim"; - version = "2023-11-13"; + version = "2023-12-02"; src = fetchFromGitHub { owner = "srcery-colors"; repo = "srcery-vim"; - rev = "ffe6b8e975bb2f218cbeb3e785d2f12d9f88b37d"; - sha256 = "0nwk81y9j5ljjm3k19kf1zmscdxiis4mwan026wv7cqp7f9qhxlr"; + rev = "e605292319d9c964281d840ac87d3deddfc06559"; + sha256 = "0b5zj2ilvhkv01n480gd6zylnhc3yhq9p7gcj0f12fn9yfihqdnf"; }; meta.homepage = "https://github.com/srcery-colors/srcery-vim/"; }; @@ -9848,12 +9848,12 @@ final: prev: telescope-project-nvim = buildVimPlugin { pname = "telescope-project.nvim"; - version = "2023-11-06"; + version = "2023-12-01"; src = fetchFromGitHub { owner = "nvim-telescope"; repo = "telescope-project.nvim"; - rev = "5460c6c60d48618c5c746e5b1cad4c3e8262fdae"; - sha256 = "0mj5sg698idk6lsaw6fd56j206vf0djv5sgaszjm4vffgc7666sb"; + rev = "1aaf16580a614601a7f7077d9639aeb457dc5559"; + sha256 = "1g03lnl79245d0vn7ydda4aixd2qbv9kcxc584msk7jwbc58r2xn"; }; meta.homepage = "https://github.com/nvim-telescope/telescope-project.nvim/"; }; @@ -10077,12 +10077,12 @@ final: prev: text-case-nvim = buildVimPlugin { pname = "text-case.nvim"; - version = "2023-11-30"; + version = "2023-12-01"; src = fetchFromGitHub { owner = "johmsalas"; repo = "text-case.nvim"; - rev = "1680642717be198d5b16fc4de9b8080d77111270"; - sha256 = "1hi1j2xnbqy0zmm06zfgwmikl6hphgkhbnhvdagap9h4nifpn9vz"; + rev = "8f22e5fcbb8d591e04fa3e9780e2e16809278f9f"; + sha256 = "0gpmfvj26kcm8ii9fhjgpwh5c571hy7xb253qq1vaak9cxa9m9yh"; }; meta.homepage = "https://github.com/johmsalas/text-case.nvim/"; }; @@ -10438,12 +10438,12 @@ final: prev: unison = buildVimPlugin { pname = "unison"; - version = "2023-11-30"; + version = "2023-12-01"; src = fetchFromGitHub { owner = "unisonweb"; repo = "unison"; - rev = "d56c7c469b52448164d078e26802b2e3071b17b0"; - sha256 = "1xflz3f5qm5injgzag7c4l2k4pflhv4knd5gpsxryzyxizlxkadl"; + rev = "ebf9874e64a8c96041af727d2aa17033a8718f03"; + sha256 = "1ndm54q3qg2hhcnh1bncjpmknczmngy9n6jgbr2wrxsvrsq8mb06"; }; meta.homepage = "https://github.com/unisonweb/unison/"; }; @@ -12888,12 +12888,12 @@ final: prev: vim-just = buildVimPlugin { pname = "vim-just"; - version = "2023-11-16"; + version = "2023-12-01"; src = fetchFromGitHub { owner = "NoahTheDuke"; repo = "vim-just"; - rev = "fda7259fc3b16af1d16e467c1482aac3bcc4df9a"; - sha256 = "0rfj8hknzwjp59x51wf99j4ymda4gnc2ly1rl3185dw4p3v7n4ph"; + rev = "90e299ec91fa8ff88f73150f824f77f86b0f867e"; + sha256 = "03kk30lskwhq5d1jmyhfws74l0iayrvsk7v0ki93k099k1fv5n7m"; }; meta.homepage = "https://github.com/NoahTheDuke/vim-just/"; }; diff --git a/pkgs/applications/editors/vim/plugins/nvim-treesitter/generated.nix b/pkgs/applications/editors/vim/plugins/nvim-treesitter/generated.nix index b58346340309..60395d8b3020 100644 --- a/pkgs/applications/editors/vim/plugins/nvim-treesitter/generated.nix +++ b/pkgs/applications/editors/vim/plugins/nvim-treesitter/generated.nix @@ -1921,12 +1921,12 @@ }; rbs = buildGrammar { language = "rbs"; - version = "0.0.0+rev=192eda4"; + version = "0.0.0+rev=23c69a4"; src = fetchFromGitHub { owner = "joker1007"; repo = "tree-sitter-rbs"; - rev = "192eda46774fd0281cdd41d372d5b4da86148780"; - hash = "sha256-Bxgh7K3j0oPvZw7JX3kXFmaEAEKefB0A9ATmrbvXrB8="; + rev = "23c69a4fa9803abc9d87b235ca88d52418250041"; + hash = "sha256-tdxx+feI0UIHkk1eS5VrIuYvOZWpuWF3NEioqrnZ+30="; }; meta.homepage = "https://github.com/joker1007/tree-sitter-rbs"; }; diff --git a/pkgs/applications/graphics/monado/default.nix b/pkgs/applications/graphics/monado/default.nix index c8c5e5abb37d..d6109079f2ae 100644 --- a/pkgs/applications/graphics/monado/default.nix +++ b/pkgs/applications/graphics/monado/default.nix @@ -48,16 +48,16 @@ , serviceSupport ? true }: -stdenv.mkDerivation rec { +stdenv.mkDerivation { pname = "monado"; - version = "unstable-2023-08-22"; + version = "unstable-2023-11-09"; src = fetchFromGitLab { domain = "gitlab.freedesktop.org"; owner = "monado"; repo = "monado"; - rev = "4cc68f07c0f3c2fee57b01dde28a02e314d3bee6"; - sha256 = "sha256-VibdOSA/b4RmwwwXrwhivuiukNK10YazYF/p+YnqRZ8="; + rev = "e983eecd73b1b91d2dfb356e1bc054e9202b2a7f"; + hash = "sha256-a4ukfmJbDkhr7P3NMTfbuhXjyOta3WCc5gswX7KUAw0="; }; nativeBuildInputs = [ @@ -135,16 +135,13 @@ stdenv.mkDerivation rec { patches = [ # We don't have $HOME/.steam when building ./force-enable-steamvr_lh.patch - - # A recent (as of August 2023) SteamVR Beta has upgraded a driver interface which is incompatible with Monado - ./steamvr_lh-use-old-interface.patch ]; meta = with lib; { description = "Open source XR runtime"; homepage = "https://monado.freedesktop.org/"; license = licenses.boost; - maintainers = with maintainers; [ expipiplus1 prusnak ]; + maintainers = with maintainers; [ Scrumplex expipiplus1 prusnak ]; platforms = platforms.linux; mainProgram = "monado-cli"; }; diff --git a/pkgs/applications/graphics/monado/steamvr_lh-use-old-interface.patch b/pkgs/applications/graphics/monado/steamvr_lh-use-old-interface.patch deleted file mode 100644 index d5194956e114..000000000000 --- a/pkgs/applications/graphics/monado/steamvr_lh-use-old-interface.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/src/xrt/drivers/steamvr_lh/steamvr_lh.cpp b/src/xrt/drivers/steamvr_lh/steamvr_lh.cpp -index 24b69fd..5b3a5ca 100644 ---- a/src/xrt/drivers/steamvr_lh/steamvr_lh.cpp -+++ b/src/xrt/drivers/steamvr_lh/steamvr_lh.cpp -@@ -138,7 +138,7 @@ Context::setup_hmd(const char *serial, vr::ITrackedDeviceServerDriver *driver) - vr::EVRInitError err = driver->Activate(0); - VERIFY(err == vr::VRInitError_None, std::to_string(err).c_str()); - -- auto *display = static_cast(driver->GetComponent(vr::IVRDisplayComponent_Version)); -+ auto *display = static_cast(driver->GetComponent("IVRDisplayComponent_003")); - VERIFY(display, "IVRDisplayComponent is null"); - #undef VERIFY - diff --git a/pkgs/applications/graphics/normcap/default.nix b/pkgs/applications/graphics/normcap/default.nix deleted file mode 100644 index 820ca9903394..000000000000 --- a/pkgs/applications/graphics/normcap/default.nix +++ /dev/null @@ -1,52 +0,0 @@ -# From NUR https://github.com/nix-community/nur-combined/blob/6bddae47680482383b5769dd3aa7d82b88e6cbc8/repos/renesat/pkgs/normcap/default.nix - -{ - lib, - stdenv, - python3, - fetchFromGitHub, - tesseract4, - leptonica, - wl-clipboard -}: -python3.pkgs.buildPythonApplication rec { - pname = "normcap"; - version = "0.4.4"; - format = "pyproject"; - - src = fetchFromGitHub { - owner = "dynobo"; - repo = "normcap"; - rev = "v${version}"; - hash = "sha256-dShtmoqS9TC3PHuwq24OEOhYfBHGhDCma8Du8QCkFuI="; - }; - - buildInputs = [ - wl-clipboard - ]; - - nativeBuildInputs = with python3.pkgs; [ - poetry-core - ]; - - propagatedBuildInputs = with python3.pkgs; [ - tesseract4 - leptonica - pyside6 - - # Test - toml - pytest-qt - ]; - - postPatch = '' - substituteInPlace pyproject.toml --replace 'PySide6-Essentials = "6.5.1"' "" - ''; - - meta = with lib; { - description = "OCR powered screen-capture tool to capture information instead of images"; - homepage = "https://dynobo.github.io/normcap/"; - license = licenses.gpl3Plus; - maintainers = with maintainers; [ cafkafk ]; - }; -} diff --git a/pkgs/applications/graphics/upscayl/default.nix b/pkgs/applications/graphics/upscayl/default.nix index a892a0263a1e..1b6ea4857791 100644 --- a/pkgs/applications/graphics/upscayl/default.nix +++ b/pkgs/applications/graphics/upscayl/default.nix @@ -4,11 +4,11 @@ lib, }: let pname = "upscayl"; - version = "2.9.1"; + version = "2.9.4"; src = fetchurl { url = "https://github.com/upscayl/upscayl/releases/download/v${version}/upscayl-${version}-linux.AppImage"; - hash = "sha256-x7tNGWXrg4hkr4d5QK4Z/cOmGGdbWLJ/GIASZjmiL4w="; + hash = "sha256-H9/z0NIqGGJPipioWvv67vIFQ46RZr5+ycm3NQrO9ZE="; }; appimageContents = appimageTools.extractType2 { diff --git a/pkgs/applications/misc/chrysalis/default.nix b/pkgs/applications/misc/chrysalis/default.nix index f5c6da15bd99..bb445422d030 100644 --- a/pkgs/applications/misc/chrysalis/default.nix +++ b/pkgs/applications/misc/chrysalis/default.nix @@ -35,13 +35,13 @@ in appimageTools.wrapType2 rec { $out/share/applications/Chrysalis.desktop \ --replace 'Exec=Chrysalis' 'Exec=${pname}' - cp -r ${appimageContents}/usr/share/icons $out/share + install -Dm444 ${appimageContents}/usr/share/icons/hicolor/256x256/chrysalis.png -t $out/share/pixmaps ''; meta = with lib; { description = "A graphical configurator for Kaleidoscope-powered keyboards"; homepage = "https://github.com/keyboardio/Chrysalis"; - license = licenses.gpl3; + license = licenses.gpl3Only; maintainers = with maintainers; [ aw ]; platforms = [ "x86_64-linux" ]; mainProgram = pname; diff --git a/pkgs/applications/misc/clipcat/default.nix b/pkgs/applications/misc/clipcat/default.nix index c09d1f7e09ea..bec10a5a55e4 100644 --- a/pkgs/applications/misc/clipcat/default.nix +++ b/pkgs/applications/misc/clipcat/default.nix @@ -8,16 +8,16 @@ rustPlatform.buildRustPackage rec { pname = "clipcat"; - version = "0.8.0"; + version = "0.9.0"; src = fetchFromGitHub { owner = "xrelkd"; repo = pname; rev = "v${version}"; - hash = "sha256-2Sh8VakHeAotdw1kkpRgNtLj1gnH1Ei7OC9INF/lkZo="; + hash = "sha256-P/8C+Gfmcuy7DGbH8+y6ZYlRrmV5t9U/uiykZ4bERSU="; }; - cargoHash = "sha256-cgyvIu56Ab3h6tgyQxtGsR0UPxgL65vb7fUAc0lMj5Q="; + cargoHash = "sha256-r2J5ysvLl7hKXfW+BIF15vBygUkuwNj222P1AckUu0E="; nativeBuildInputs = [ protobuf diff --git a/pkgs/applications/misc/itd/default.nix b/pkgs/applications/misc/itd/default.nix index 945e8978d82a..ce95eb69bc4f 100644 --- a/pkgs/applications/misc/itd/default.nix +++ b/pkgs/applications/misc/itd/default.nix @@ -8,10 +8,10 @@ buildGoModule rec { pname = "itd"; version = "1.1.0"; - # https://gitea.arsenm.dev/Arsen6331/itd/tags + # https://gitea.elara.ws/Elara6331/itd/tags src = fetchFromGitea { - domain = "gitea.arsenm.dev"; - owner = "Arsen6331"; + domain = "gitea.elara.ws"; + owner = "Elara6331"; repo = "itd"; rev = "v${version}"; hash = "sha256-95/9Qy0HhrX+ORuv6g1T4/Eq1hf539lYG5fTkLeY6B0="; @@ -34,7 +34,7 @@ buildGoModule rec { meta = with lib; { description = "itd is a daemon to interact with the PineTime running InfiniTime"; - homepage = "https://gitea.arsenm.dev/Arsen6331/itd"; + homepage = "https://gitea.elara.ws/Elara6331/itd"; license = licenses.gpl3Plus; platforms = platforms.linux; maintainers = with maintainers; [ mindavi raphaelr ]; diff --git a/pkgs/applications/misc/lscolors/default.nix b/pkgs/applications/misc/lscolors/default.nix index cf1258dfff38..99c330fa6804 100644 --- a/pkgs/applications/misc/lscolors/default.nix +++ b/pkgs/applications/misc/lscolors/default.nix @@ -2,14 +2,14 @@ rustPlatform.buildRustPackage rec { pname = "lscolors"; - version = "0.15.0"; + version = "0.16.0"; src = fetchCrate { inherit version pname; - sha256 = "sha256-C7aM9jlChRwPvYnBjLbV+sfbTHDVVi6evIR5PvT9jN4="; + hash = "sha256-gLtQIqdU6syTo+Z+P59kIpwEtiGCr/DOom9+jA8Uq98="; }; - cargoHash = "sha256-93FAEhl0WFXRq1SaoLRNDd/fy7NyDbeRFgIqUWAssQE="; + cargoHash = "sha256-OA9iYGwKElvRaKoyelH9w5ZphoLKrbk8VXwZ2NyLLQY="; buildFeatures = [ "nu-ansi-term" ]; diff --git a/pkgs/applications/networking/browsers/librewolf/src.json b/pkgs/applications/networking/browsers/librewolf/src.json index 9662b1b54e0d..65ce8374f357 100644 --- a/pkgs/applications/networking/browsers/librewolf/src.json +++ b/pkgs/applications/networking/browsers/librewolf/src.json @@ -1,15 +1,15 @@ { - "packageVersion": "120.0-1", + "packageVersion": "120.0.1-1", "source": { - "rev": "120.0-1", - "sha256": "1wms3kyimmfzl64rbphgap2sm87lwkl0pr24rx4rxf3px3bq97f3" + "rev": "120.0.1-1", + "sha256": "0kvfa97m7dq1b030d62zblpb445fkbgb2w19bckxwxv7mx36awy7" }, "settings": { - "rev": "b587388bdbe63511c478cb8b5f82c2e80040414c", - "sha256": "03cw6wh7358pgld4qgs534pl2lnfvwc0xl2yyb3n3pyvmba6cyrp" + "rev": "9dac02778ebed3e2614da52c36b7cede45f4f602", + "sha256": "0flk6v50cyiaajzcz9gm1hig00vkw9xdbjd5rdxidrmhcqxy24vy" }, "firefox": { - "version": "120.0", - "sha512": "31d5f9e1d4173280c8de6d9b8551bc6bba5e2c49b84f944f50d42002d5b39c2fb743bc130f26c81160388a102b8301b94a0a378ecdfa6f943860f971a860df8c" + "version": "120.0.1", + "sha512": "dd0e3eb234d58c39431d1f100834ef4bcc8cfb89ff471a37b948eda4dd3874b63b1979cda39a0db0dd3b4a579b5f09a7d2d1f39d26fd9f2b8d5635e4b8738b6c" } } diff --git a/pkgs/applications/networking/browsers/opera/default.nix b/pkgs/applications/networking/browsers/opera/default.nix index 02e000cf4e65..785c03755c13 100644 --- a/pkgs/applications/networking/browsers/opera/default.nix +++ b/pkgs/applications/networking/browsers/opera/default.nix @@ -41,7 +41,7 @@ , at-spi2-core , autoPatchelfHook , wrapGAppsHook -, qt5 +, qt6 , proprietaryCodecs ? false , vivaldi-ffmpeg-codecs }: @@ -51,11 +51,11 @@ let in stdenv.mkDerivation rec { pname = "opera"; - version = "100.0.4815.47"; + version = "105.0.4970.21"; src = fetchurl { url = "${mirror}/${version}/linux/${pname}-stable_${version}_amd64.deb"; - hash = "sha256-746imLXqxzf9zK2QEVRuWkLA6m+HHXBYZFUwTD0HEVc="; + hash = "sha256-fgbR7qAWKaZgxMeMo1/le8g1/zSoTl+5iIJeKl1Rc3Y="; }; unpackPhase = "dpkg-deb -x $src ."; @@ -64,7 +64,7 @@ stdenv.mkDerivation rec { dpkg autoPatchelfHook wrapGAppsHook - qt5.wrapQtAppsHook + qt6.wrapQtAppsHook ]; buildInputs = [ @@ -103,6 +103,7 @@ stdenv.mkDerivation rec { nss pango stdenv.cc.cc.lib + qt6.qtbase ]; runtimeDependencies = [ @@ -128,6 +129,9 @@ stdenv.mkDerivation rec { mkdir -p $out/bin cp -r usr $out cp -r usr/share $out/share + + # we already using QT6, autopatchelf wants to patch this as well + rm $out/usr/lib/x86_64-linux-gnu/opera/libqt5_shim.so ln -s $out/usr/bin/opera $out/bin/opera ''; diff --git a/pkgs/applications/networking/browsers/palemoon/bin.nix b/pkgs/applications/networking/browsers/palemoon/bin.nix index 2ea777728f95..aa2337f86d70 100644 --- a/pkgs/applications/networking/browsers/palemoon/bin.nix +++ b/pkgs/applications/networking/browsers/palemoon/bin.nix @@ -9,6 +9,7 @@ , gtk2-x11 , withGTK3 ? true , gtk3 +, libglvnd , libXt , libpulseaudio , makeDesktopItem @@ -18,7 +19,7 @@ stdenv.mkDerivation (finalAttrs: { pname = "palemoon-bin"; - version = "32.5.0"; + version = "32.5.1"; src = fetchzip { urls = [ @@ -26,9 +27,9 @@ stdenv.mkDerivation (finalAttrs: { "https://rm-us.palemoon.org/release/palemoon-${finalAttrs.version}.linux-x86_64-gtk${if withGTK3 then "3" else "2"}.tar.xz" ]; hash = if withGTK3 then - "sha256-1MJ5K9Zc/BHeQwwlq3XyUV8XTFEpPytNyTnsDpE1tBI=" + "sha256-hWqL/WoRRigw8cNeJImOQLM8hewyS3PYNGr2WYP+cMk=" else - "sha256-xXunZTqoc2A+ilosRUUluxDwewD3xwITF5nb5Lbyv7Y="; + "sha256-dlBnXP3WUgQ0spkLRowfzMcPArhGfpowsvwgCA+kvUA="; }; preferLocalBuild = true; @@ -147,6 +148,7 @@ stdenv.mkDerivation (finalAttrs: { gappsWrapperArgs+=( --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ ffmpeg + libglvnd libpulseaudio ]}" ) diff --git a/pkgs/applications/networking/cluster/bosh-cli/default.nix b/pkgs/applications/networking/cluster/bosh-cli/default.nix index 4abcb0321d8c..41dd4cbb08b9 100644 --- a/pkgs/applications/networking/cluster/bosh-cli/default.nix +++ b/pkgs/applications/networking/cluster/bosh-cli/default.nix @@ -8,13 +8,13 @@ buildGoModule rec { pname = "bosh-cli"; - version = "7.4.1"; + version = "7.5.0"; src = fetchFromGitHub { owner = "cloudfoundry"; repo = pname; rev = "v${version}"; - sha256 = "sha256-T8fPD0i15U/PzDOAVP0sifLYFHr76jD1o7q+nn+N0cY="; + sha256 = "sha256-LWfS722V0ubh4QaUNuGwrvFsVAzA9Hd5xLlDfTG0PBs="; }; vendorHash = null; diff --git a/pkgs/applications/networking/cluster/eks-node-viewer/default.nix b/pkgs/applications/networking/cluster/eks-node-viewer/default.nix index 80538f0f111c..33c350b6bcb9 100644 --- a/pkgs/applications/networking/cluster/eks-node-viewer/default.nix +++ b/pkgs/applications/networking/cluster/eks-node-viewer/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "eks-node-viewer"; - version = "0.5.0"; + version = "0.6.0"; src = fetchFromGitHub { owner = "awslabs"; repo = pname; rev = "v${version}"; - sha256 = "sha256-kfX9BzARDWUOBIu67j60K38uwkRELxd/gXtEHOHAXS8="; + sha256 = "sha256-BK84hxbwZSJDO5WoyborJnVBS5pB69jTMU1csgiT0sw="; }; - vendorHash = "sha256-7axI7R8cTntc1IcOwVPmPj8MHeIvhbnkYKQdqu5fZOU="; + vendorHash = "sha256-EJAL5jNftA/g5H6WUMBJ98EyRp7QJ1C53EKr6GRz71I="; ldflags = [ "-s" diff --git a/pkgs/applications/networking/dnscontrol/default.nix b/pkgs/applications/networking/dnscontrol/default.nix index 826be33128a1..1bf5980acb4a 100644 --- a/pkgs/applications/networking/dnscontrol/default.nix +++ b/pkgs/applications/networking/dnscontrol/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "dnscontrol"; - version = "4.6.1"; + version = "4.6.2"; src = fetchFromGitHub { owner = "StackExchange"; repo = "dnscontrol"; rev = "v${version}"; - sha256 = "sha256-FJxr3uq2f8jDG3g06SRO8sTIc6qHqSAOJVYHr4Ug1ag="; + hash = "sha256-FcEpUNFPwottpuIsO53voucKULTkWOdbDgEXKYLb9LQ="; }; - vendorHash = "sha256-O7uuUkS9kX0TdevSg1mrrPMVl4kMZW3rwoIVb/eaNiM="; + vendorHash = "sha256-cW6urAJ3H30HY4Q7JLWFsQebg6YhdGSBgICWMl85v9U="; subPackages = [ "." ]; diff --git a/pkgs/applications/networking/instant-messengers/nheko/default.nix b/pkgs/applications/networking/instant-messengers/nheko/default.nix index acc6f8948fc0..45c7e556a71d 100644 --- a/pkgs/applications/networking/instant-messengers/nheko/default.nix +++ b/pkgs/applications/networking/instant-messengers/nheko/default.nix @@ -109,6 +109,7 @@ stdenv.mkDerivation rec { description = "Desktop client for the Matrix protocol"; homepage = "https://github.com/Nheko-Reborn/nheko"; license = licenses.gpl3Plus; + mainProgram = "nheko"; maintainers = with maintainers; [ ekleog fpletz ]; platforms = platforms.all; # Should be fixable if a higher clang version is used, see: diff --git a/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix b/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix index 683b1d7550cb..c545ac79a242 100644 --- a/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix +++ b/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix @@ -1,8 +1,8 @@ { callPackage }: builtins.mapAttrs (pname: attrs: callPackage ./generic.nix (attrs // { inherit pname; })) { signal-desktop = { dir = "Signal"; - version = "6.39.1"; - hash = "sha256-dDbUpxXpQg1SoVyYO33Nczqf+WmWDPNE6cmw792wjGY="; + version = "6.40.0"; + hash = "sha256-vyXHlycPSyEyv938IKzGM6pdERHHerx2CLY/U+WMrH4="; }; signal-desktop-beta = { dir = "Signal Beta"; diff --git a/pkgs/applications/networking/p2p/libutp/3.4.nix b/pkgs/applications/networking/p2p/libutp/3.4.nix index aa2853d3bd05..dfff1eeed239 100644 --- a/pkgs/applications/networking/p2p/libutp/3.4.nix +++ b/pkgs/applications/networking/p2p/libutp/3.4.nix @@ -2,14 +2,14 @@ stdenv.mkDerivation rec { pname = "libutp"; - version = "unstable-2023-10-16"; + version = "unstable-2023-11-14"; src = fetchFromGitHub { # Use transmission fork from post-3.4-transmission branch owner = "transmission"; repo = pname; - rev = "2589200eac82fc91b65979680e4b3c026dff0278"; - hash = "sha256-wsDqdbMWVm3ubTbg5XClEWutJz1irSIazVLFeCyAAL4="; + rev = "52645d6d0fb16009e11d2f84469d2e43b7b6b48a"; + hash = "sha256-pcPVkDEEtriN9zlEcVFKwKhhh51wpJGxYlcu7bH1RkI="; }; nativeBuildInputs = [ cmake ]; diff --git a/pkgs/applications/networking/remote/citrix-workspace/generic.nix b/pkgs/applications/networking/remote/citrix-workspace/generic.nix index 03d56274bd79..bf14b0321943 100644 --- a/pkgs/applications/networking/remote/citrix-workspace/generic.nix +++ b/pkgs/applications/networking/remote/citrix-workspace/generic.nix @@ -5,6 +5,7 @@ , libjpeg, libredirect, tzdata, cacert, systemd, libcxxabi, libcxx, e2fsprogs, symlinkJoin , libpulseaudio, pcsclite, glib-networking, llvmPackages_12, opencv4 , libfaketime +, libinput, libcap, libjson, libsecret, libcanberra-gtk3 , homepage, version, prefix, hash @@ -38,7 +39,7 @@ stdenv.mkDerivation rec { ${homepage} (if you do not find version ${version} there, try at - https://www.citrix.com/downloads/workspace-app/ + https://www.citrix.com/downloads/workspace-app/) Once you have downloaded the file, please use the following command and re-run the installation: @@ -80,11 +81,16 @@ stdenv.mkDerivation rec { gtk_engines heimdal krb5 + libcap + libcanberra-gtk3 libcxx libcxxabi + libinput libjpeg + libjson libpng12 libpulseaudio + libsecret libsoup libvorbis libxml2 @@ -119,6 +125,8 @@ stdenv.mkDerivation rec { xorg.libXrender xorg.libXtst xorg.libxcb + xorg.xprop + xorg.xdpyinfo ]; installPhase = let diff --git a/pkgs/applications/networking/remote/citrix-workspace/sources.nix b/pkgs/applications/networking/remote/citrix-workspace/sources.nix index 2422d7eb8efb..f1b1a83102ac 100644 --- a/pkgs/applications/networking/remote/citrix-workspace/sources.nix +++ b/pkgs/applications/networking/remote/citrix-workspace/sources.nix @@ -33,6 +33,17 @@ let x86hash = "4a7da238286ae28d7baf0fefa1e7e09d077c8bc56c2bf7bec00da42c331bee59"; x64suffix = "17"; x86suffix = "17"; + homepage = "https://www.citrix.com/downloads/workspace-app/legacy-workspace-app-for-linux/workspace-app-for-linux-latest21.html"; + }; + + "23.09.0" = { + major = "23"; + minor = "9"; + patch = "0"; + x64hash = "7b06339654aa27258d6dfa922828b43256e780b282d07109f452246c7aa27514"; + x86hash = "95436fb289602cf31c65b7df89da145fc170233cb2e758a2f11116f15b57d382"; + x64suffix = "24"; + x86suffix = "24"; homepage = "https://www.citrix.com/downloads/workspace-app/linux/workspace-app-for-linux-latest.html"; }; diff --git a/pkgs/applications/science/logic/why3/default.nix b/pkgs/applications/science/logic/why3/default.nix index df8be359d123..f0567fdda3b6 100644 --- a/pkgs/applications/science/logic/why3/default.nix +++ b/pkgs/applications/science/logic/why3/default.nix @@ -1,13 +1,18 @@ { callPackage, fetchurl, lib, stdenv -, ocamlPackages, coqPackages, rubber, hevea, emacs }: +, ocamlPackages, coqPackages, rubber, hevea, emacs +, version ? "1.7.0" +}: stdenv.mkDerivation rec { pname = "why3"; - version = "1.6.0"; + inherit version; src = fetchurl { url = "https://why3.gitlabpages.inria.fr/releases/${pname}-${version}.tar.gz"; - hash = "sha256-hFvM6kHScaCtcHCc6Vezl9CR7BFbiKPoTEh7kj0ZJxw="; + hash = { + "1.7.0" = "sha256-rygrjzuJVukOvpuXTG/yeoEP98ZFkLQHObgc3My1PVY="; + "1.6.0" = "sha256-hFvM6kHScaCtcHCc6Vezl9CR7BFbiKPoTEh7kj0ZJxw="; + }."${version}"; }; strictDeps = true; diff --git a/pkgs/applications/science/misc/simgrid/default.nix b/pkgs/applications/science/misc/simgrid/default.nix index 2df4ce414dcf..a2b04e1877f8 100644 --- a/pkgs/applications/science/misc/simgrid/default.nix +++ b/pkgs/applications/science/misc/simgrid/default.nix @@ -20,14 +20,14 @@ in stdenv.mkDerivation rec { pname = "simgrid"; - version = "3.34"; + version = "3.35"; src = fetchFromGitLab { domain = "framagit.org"; owner = pname; repo = pname; rev = "v${version}"; - sha256 = "sha256-EVTpW9jD1h8T2KRlDIqptKS6Wv1dVDfyJbXxrpsgmoo="; + sha256 = "sha256-WaFANZiPfiN/utfNZbwyH5mxgJNWafPMCcL863V8w0g="; }; propagatedBuildInputs = [ boost ]; diff --git a/pkgs/applications/science/robotics/mujoco/default.nix b/pkgs/applications/science/robotics/mujoco/default.nix index c4f84e158399..139e1140e7c9 100644 --- a/pkgs/applications/science/robotics/mujoco/default.nix +++ b/pkgs/applications/science/robotics/mujoco/default.nix @@ -1,122 +1,184 @@ -{ cmake +{ cereal_1_3_2 +, cmake , fetchFromGitHub , fetchFromGitLab -, git +, glfw +, glm , lib -, libGL +, spdlog , stdenv -, xorg }: let - # See https://github.com/deepmind/mujoco/blob/c9246e1f5006379d599e0bcddf159a8616d31441/cmake/MujocoDependencies.cmake#L17-L55 - abseil-cpp = fetchFromGitHub { - owner = "abseil"; - repo = "abseil-cpp"; - rev = "c2435f8342c2d0ed8101cb43adfd605fdc52dca2"; - hash = "sha256-PLoI7ix+reUqkZ947kWzls8lujYqWXk9A9a55UcfahI="; - }; - benchmark = fetchFromGitHub { - owner = "google"; - repo = "benchmark"; - rev = "2dd015dfef425c866d9a43f2c67d8b52d709acb6"; - hash = "sha256-pUW9YVaujs/y00/SiPqDgK4wvVsaM7QUp/65k0t7Yr0="; - }; - ccd = fetchFromGitHub { - owner = "danfis"; - repo = "libccd"; - rev = "7931e764a19ef6b21b443376c699bbc9c6d4fba8"; - hash = "sha256-TIZkmqQXa0+bSWpqffIgaBela0/INNsX9LPM026x1Wk="; - }; - eigen3 = fetchFromGitLab { - owner = "libeigen"; - repo = "eigen"; - rev = "211c5dfc6741a5570ad007983c113ef4d144f9f3"; - hash = "sha256-oT/h8QkL0vwaflh46Zsnu9Db1b65AP6p//nAga8M5jI="; - }; - googletest = fetchFromGitHub { - owner = "google"; - repo = "googletest"; - rev = "b796f7d44681514f58a683a3a71ff17c94edb0c1"; - hash = "sha256-LVLEn+e7c8013pwiLzJiiIObyrlbBHYaioO/SWbItPQ="; - }; - lodepng = fetchFromGitHub { - owner = "lvandeve"; - repo = "lodepng"; - rev = "b4ed2cd7ecf61d29076169b49199371456d4f90b"; - hash = "sha256-5cCkdj/izP4e99BKfs/Mnwu9aatYXjlyxzzYiMD/y1M="; - }; - qhull = fetchFromGitHub { - owner = "qhull"; - repo = "qhull"; - rev = "0c8fc90d2037588024d9964515c1e684f6007ecc"; - hash = "sha256-Ptzxad3ewmKJbbcmrBT+os4b4SR976zlCG9F0nq0x94="; - }; - tinyobjloader = fetchFromGitHub { - owner = "tinyobjloader"; - repo = "tinyobjloader"; - rev = "1421a10d6ed9742f5b2c1766d22faa6cfbc56248"; - hash = "sha256-9z2Ne/WPCiXkQpT8Cun/pSGUwgClYH+kQ6Dx1JvW6w0="; - }; - tinyxml2 = fetchFromGitHub { - owner = "leethomason"; - repo = "tinyxml2"; - rev = "9a89766acc42ddfa9e7133c7d81a5bda108a0ade"; - hash = "sha256-YGAe4+Ttv/xeou+9FoJjmQCKgzupTYdDhd+gzvtz/88="; + pin = { + + # See https://github.com/google-deepmind/mujoco/blob/3.0.0/cmake/MujocoDependencies.cmake#L17-L64 + abseil-cpp = fetchFromGitHub { + owner = "abseil"; + repo = "abseil-cpp"; + rev = "fb3621f4f897824c0dbe0615fa94543df6192f30"; + hash = "sha256-uNGrTNg5G5xFGtc+BSWE389x0tQ/KxJQLHfebNWas/k="; + }; + benchmark = fetchFromGitHub { + owner = "google"; + repo = "benchmark"; + rev = "344117638c8ff7e239044fd0fa7085839fc03021"; + hash = "sha256-gztnxui9Fe/FTieMjdvfJjWHjkImtlsHn6fM1FruyME="; + }; + ccd = fetchFromGitHub { + owner = "danfis"; + repo = "libccd"; + rev = "7931e764a19ef6b21b443376c699bbc9c6d4fba8"; + hash = "sha256-TIZkmqQXa0+bSWpqffIgaBela0/INNsX9LPM026x1Wk="; + }; + eigen3 = fetchFromGitLab { + owner = "libeigen"; + repo = "eigen"; + rev = "e8515f78ac098329ab9f8cab21c87caede090a3f"; + hash = "sha256-HXKtFJsKGpug+wNPjYynTuyaG0igo3oG4rFQktveh1g="; + }; + googletest = fetchFromGitHub { + owner = "google"; + repo = "googletest"; + rev = "f8d7d77c06936315286eb55f8de22cd23c188571"; + hash = "sha256-t0RchAHTJbuI5YW4uyBPykTvcjy90JW9AOPNjIhwh6U="; + }; + lodepng = fetchFromGitHub { + owner = "lvandeve"; + repo = "lodepng"; + rev = "b4ed2cd7ecf61d29076169b49199371456d4f90b"; + hash = "sha256-5cCkdj/izP4e99BKfs/Mnwu9aatYXjlyxzzYiMD/y1M="; + }; + qhull = fetchFromGitHub { + owner = "qhull"; + repo = "qhull"; + rev = "0c8fc90d2037588024d9964515c1e684f6007ecc"; + hash = "sha256-Ptzxad3ewmKJbbcmrBT+os4b4SR976zlCG9F0nq0x94="; + }; + tinyobjloader = fetchFromGitHub { + owner = "tinyobjloader"; + repo = "tinyobjloader"; + rev = "1421a10d6ed9742f5b2c1766d22faa6cfbc56248"; + hash = "sha256-9z2Ne/WPCiXkQpT8Cun/pSGUwgClYH+kQ6Dx1JvW6w0="; + }; + tinyxml2 = fetchFromGitHub { + owner = "leethomason"; + repo = "tinyxml2"; + rev = "9a89766acc42ddfa9e7133c7d81a5bda108a0ade"; + hash = "sha256-YGAe4+Ttv/xeou+9FoJjmQCKgzupTYdDhd+gzvtz/88="; + }; + marchingcubecpp = fetchFromGitHub { + owner = "aparis69"; + repo = "MarchingCubeCpp"; + rev = "5b79e5d6bded086a0abe276a4b5a69fc17ae9bf1"; + hash = "sha256-L0DH1GJZ/3vatQAU/KZj/2xTKE6Fwcw9eQYzLdqX2N4="; + }; + + tmd = stdenv.mkDerivation rec { + name = "TriangleMeshDistance"; + + src = fetchFromGitHub { + owner = "InteractiveComputerGraphics"; + repo = name; + rev = "e55a15c20551f36242fd6368df099a99de71d43a"; + hash = "sha256-vj6TMMT8mp7ciLa5nzVAhMWPcAHXq+ZwHlWsRA3uCmg="; + }; + + installPhase = '' + mkdir -p $out/include/tmd + cp ${name}/include/tmd/${name}.h $out/include/tmd/ + ''; + }; + + sdflib = stdenv.mkDerivation rec { + name = "SdfLib"; + + src = fetchFromGitHub { + owner = "UPC-ViRVIG"; + repo = name; + rev = "7c49cfba9bbec763b5d0f7b90b26555f3dde8088"; + hash = "sha256-5bnQ3rHH9Pw1jRVpZpamFnhIJHWnGm6krgZgIBqNtVg="; + }; + + patches = [ ./sdflib-system-deps.patch ]; + + cmakeFlags = [ + "-DSDFLIB_USE_ASSIMP=OFF" + "-DSDFLIB_USE_OPENMP=OFF" + "-DSDFLIB_USE_ENOKI=OFF" + "-DSDFLIB_USE_SYSTEM_GLM=ON" + "-DSDFLIB_USE_SYSTEM_SPDLOG=ON" + "-DSDFLIB_USE_SYSTEM_CEREAL=ON" + "-DSDFLIB_USE_SYSTEM_TRIANGLEMESHDISTANCE=ON" + ]; + + nativeBuildInputs = [ cmake ]; + buildInputs = [ + pin.tmd + + # Mainline. The otherwise pinned glm realease from 2018 does + # not build due to test failures and missing files. + glm + + spdlog + cereal_1_3_2 + ]; + }; + }; - # See https://github.com/deepmind/mujoco/blob/c9246e1f5006379d599e0bcddf159a8616d31441/simulate/cmake/SimulateDependencies.cmake#L32-L35 - glfw3 = fetchFromGitHub { - owner = "glfw"; - repo = "glfw"; - rev = "7482de6071d21db77a7236155da44c172a7f6c9e"; - hash = "sha256-4+H0IXjAwbL5mAWfsIVhW0BSJhcWjkQx4j2TrzZ3aIo="; - }; -in -stdenv.mkDerivation rec { +in stdenv.mkDerivation rec { pname = "mujoco"; - version = "2.3.7"; + version = "3.0.1"; src = fetchFromGitHub { - owner = "deepmind"; + owner = "google-deepmind"; repo = pname; rev = version; - hash = "sha256-LgpA+iPGqciHuWBSD6/7yvZ7p+vo48ZYKjjrDZSnAwE="; + hash = "sha256-UXE+7KDti8RarpoJoo9Ei3TgW/Qdnj3ASRo8uTWhGrU="; }; - patches = [ ./dependencies.patch ]; + patches = [ ./mujoco-system-deps-dont-fetch.patch ]; - nativeBuildInputs = [ cmake git ]; + nativeBuildInputs = [ cmake ]; buildInputs = [ - libGL - xorg.libX11 - xorg.libXcursor - xorg.libXext - xorg.libXi - xorg.libXinerama - xorg.libXrandr + pin.sdflib + glm + + # non-numerical + spdlog + cereal_1_3_2 + glfw + ]; + + cmakeFlags = [ + "-DMUJOCO_USE_SYSTEM_sdflib=ON" + "-DMUJOCO_SIMULATE_USE_SYSTEM_GLFW=ON" + "-DMUJOCO_SAMPLES_USE_SYSTEM_GLFW=ON" ]; # Move things into place so that cmake doesn't try downloading dependencies. preConfigure = '' mkdir -p build/_deps - ln -s ${abseil-cpp} build/_deps/abseil-cpp-src - ln -s ${benchmark} build/_deps/benchmark-src - ln -s ${ccd} build/_deps/ccd-src - ln -s ${eigen3} build/_deps/eigen3-src - ln -s ${glfw3} build/_deps/glfw3-src - ln -s ${googletest} build/_deps/googletest-src - ln -s ${lodepng} build/_deps/lodepng-src - ln -s ${qhull} build/_deps/qhull-src - ln -s ${tinyobjloader} build/_deps/tinyobjloader-src - ln -s ${tinyxml2} build/_deps/tinyxml2-src + ln -s ${pin.abseil-cpp} build/_deps/abseil-cpp-src + ln -s ${pin.benchmark} build/_deps/benchmark-src + ln -s ${pin.ccd} build/_deps/ccd-src + ln -s ${pin.eigen3} build/_deps/eigen3-src + ln -s ${pin.googletest} build/_deps/googletest-src + ln -s ${pin.lodepng} build/_deps/lodepng-src + ln -s ${pin.qhull} build/_deps/qhull-src + ln -s ${pin.tinyobjloader} build/_deps/tinyobjloader-src + ln -s ${pin.tinyxml2} build/_deps/tinyxml2-src + ln -s ${pin.marchingcubecpp} build/_deps/marchingcubecpp-src ''; + passthru.pin = { inherit (pin) lodepng eigen3 abseil-cpp; }; + meta = with lib; { description = "Multi-Joint dynamics with Contact. A general purpose physics simulator."; homepage = "https://mujoco.org/"; license = licenses.asl20; - maintainers = with maintainers; [ samuela ]; + maintainers = with maintainers; [ samuela tmplt ]; }; } diff --git a/pkgs/applications/science/robotics/mujoco/dependencies.patch b/pkgs/applications/science/robotics/mujoco/dependencies.patch deleted file mode 100644 index f7dcc06a9e05..000000000000 --- a/pkgs/applications/science/robotics/mujoco/dependencies.patch +++ /dev/null @@ -1,114 +0,0 @@ -diff --git a/cmake/MujocoDependencies.cmake b/cmake/MujocoDependencies.cmake -index 3e322ea..980aace 100644 ---- a/cmake/MujocoDependencies.cmake -+++ b/cmake/MujocoDependencies.cmake -@@ -87,8 +87,6 @@ set(BUILD_SHARED_LIBS - if(NOT TARGET lodepng) - FetchContent_Declare( - lodepng -- GIT_REPOSITORY https://github.com/lvandeve/lodepng.git -- GIT_TAG ${MUJOCO_DEP_VERSION_lodepng} - ) - - FetchContent_GetProperties(lodepng) -@@ -127,10 +125,6 @@ findorfetch( - qhull - LIBRARY_NAME - qhull -- GIT_REPO -- https://github.com/qhull/qhull.git -- GIT_TAG -- ${MUJOCO_DEP_VERSION_qhull} - TARGETS - qhull - EXCLUDE_FROM_ALL -@@ -151,10 +145,6 @@ findorfetch( - tinyxml2 - LIBRARY_NAME - tinyxml2 -- GIT_REPO -- https://github.com/leethomason/tinyxml2.git -- GIT_TAG -- ${MUJOCO_DEP_VERSION_tinyxml2} - TARGETS - tinyxml2 - EXCLUDE_FROM_ALL -@@ -169,10 +159,6 @@ findorfetch( - tinyobjloader - LIBRARY_NAME - tinyobjloader -- GIT_REPO -- https://github.com/tinyobjloader/tinyobjloader.git -- GIT_TAG -- ${MUJOCO_DEP_VERSION_tinyobjloader} - TARGETS - tinyobjloader - EXCLUDE_FROM_ALL -@@ -187,10 +173,6 @@ findorfetch( - ccd - LIBRARY_NAME - ccd -- GIT_REPO -- https://github.com/danfis/libccd.git -- GIT_TAG -- ${MUJOCO_DEP_VERSION_ccd} - TARGETS - ccd - EXCLUDE_FROM_ALL -@@ -227,10 +209,6 @@ if(MUJOCO_BUILD_TESTS) - absl - LIBRARY_NAME - abseil-cpp -- GIT_REPO -- https://github.com/abseil/abseil-cpp.git -- GIT_TAG -- ${MUJOCO_DEP_VERSION_abseil} - TARGETS - absl::core_headers - EXCLUDE_FROM_ALL -@@ -254,10 +232,6 @@ if(MUJOCO_BUILD_TESTS) - GTest - LIBRARY_NAME - googletest -- GIT_REPO -- https://github.com/google/googletest.git -- GIT_TAG -- ${MUJOCO_DEP_VERSION_gtest} - TARGETS - gtest - gmock -@@ -288,10 +262,6 @@ if(MUJOCO_BUILD_TESTS) - benchmark - LIBRARY_NAME - benchmark -- GIT_REPO -- https://github.com/google/benchmark.git -- GIT_TAG -- ${MUJOCO_DEP_VERSION_benchmark} - TARGETS - benchmark::benchmark - benchmark::benchmark_main -@@ -308,8 +278,6 @@ if(MUJOCO_TEST_PYTHON_UTIL) - - FetchContent_Declare( - Eigen3 -- GIT_REPOSITORY https://gitlab.com/libeigen/eigen.git -- GIT_TAG ${MUJOCO_DEP_VERSION_Eigen3} - ) - - FetchContent_GetProperties(Eigen3) -diff --git a/simulate/cmake/SimulateDependencies.cmake b/simulate/cmake/SimulateDependencies.cmake -index fa539c2..5985d5a 100644 ---- a/simulate/cmake/SimulateDependencies.cmake -+++ b/simulate/cmake/SimulateDependencies.cmake -@@ -81,10 +81,6 @@ findorfetch( - glfw3 - LIBRARY_NAME - glfw3 -- GIT_REPO -- https://github.com/glfw/glfw.git -- GIT_TAG -- ${MUJOCO_DEP_VERSION_glfw3} - TARGETS - glfw - EXCLUDE_FROM_ALL diff --git a/pkgs/applications/science/robotics/mujoco/mujoco-system-deps-dont-fetch.patch b/pkgs/applications/science/robotics/mujoco/mujoco-system-deps-dont-fetch.patch new file mode 100644 index 000000000000..15373eb0b60f --- /dev/null +++ b/pkgs/applications/science/robotics/mujoco/mujoco-system-deps-dont-fetch.patch @@ -0,0 +1,538 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 285250b..32d03e3 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -92,7 +92,7 @@ add_subdirectory(src/render) + add_subdirectory(src/thread) + add_subdirectory(src/ui) + +-target_compile_definitions(mujoco PRIVATE _GNU_SOURCE CCD_STATIC_DEFINE MUJOCO_DLL_EXPORTS -DMC_IMPLEM_ENABLE) ++target_compile_definitions(mujoco PRIVATE _GNU_SOURCE MUJOCO_DLL_EXPORTS -DMC_IMPLEM_ENABLE) + if(MUJOCO_ENABLE_AVX_INTRINSICS) + target_compile_definitions(mujoco PUBLIC mjUSEPLATFORMSIMD) + endif() +@@ -117,7 +117,7 @@ target_link_libraries( + lodepng + qhullstatic_r + tinyobjloader +- tinyxml2 ++ tinyxml2::tinyxml2 + ) + + set_target_properties( +diff --git a/cmake/MujocoDependencies.cmake b/cmake/MujocoDependencies.cmake +index 4e3e2c8..f6143d9 100644 +--- a/cmake/MujocoDependencies.cmake ++++ b/cmake/MujocoDependencies.cmake +@@ -90,153 +90,203 @@ set(BUILD_SHARED_LIBS + CACHE INTERNAL "Build SHARED libraries" + ) + ++ + if(NOT TARGET lodepng) +- FetchContent_Declare( ++ fetchcontent_declare( + lodepng +- GIT_REPOSITORY https://github.com/lvandeve/lodepng.git +- GIT_TAG ${MUJOCO_DEP_VERSION_lodepng} + ) ++endif() ++ ++if(NOT TARGET lodepng) ++ if(NOT MUJOCO_USE_SYSTEM_lodepng) ++ fetchcontent_declare( ++ lodepng ++ GIT_REPOSITORY https://github.com/lvandeve/lodepng.git ++ GIT_TAG ${MUJOCO_DEP_VERSION_lodepng} ++ ) + +- FetchContent_GetProperties(lodepng) +- if(NOT lodepng_POPULATED) +- FetchContent_Populate(lodepng) +- # This is not a CMake project. +- set(LODEPNG_SRCS ${lodepng_SOURCE_DIR}/lodepng.cpp) +- set(LODEPNG_HEADERS ${lodepng_SOURCE_DIR}/lodepng.h) +- add_library(lodepng STATIC ${LODEPNG_HEADERS} ${LODEPNG_SRCS}) +- target_compile_options(lodepng PRIVATE ${MUJOCO_MACOS_COMPILE_OPTIONS}) +- target_link_options(lodepng PRIVATE ${MUJOCO_MACOS_LINK_OPTIONS}) +- target_include_directories(lodepng PUBLIC ${lodepng_SOURCE_DIR}) ++ fetchcontent_getproperties(lodepng) ++ if(NOT lodepng_POPULATED) ++ fetchcontent_populate(lodepng) ++ # This is not a CMake project. ++ set(LODEPNG_SRCS ${lodepng_SOURCE_DIR}/lodepng.cpp) ++ set(LODEPNG_HEADERS ${lodepng_SOURCE_DIR}/lodepng.h) ++ add_library(lodepng STATIC ${LODEPNG_HEADERS} ${LODEPNG_SRCS}) ++ target_compile_options(lodepng PRIVATE ${MUJOCO_MACOS_COMPILE_OPTIONS}) ++ target_link_options(lodepng PRIVATE ${MUJOCO_MACOS_LINK_OPTIONS}) ++ target_include_directories(lodepng PUBLIC ${lodepng_SOURCE_DIR}) ++ endif() ++ else() ++ find_package(lodepng REQUIRED) + endif() + endif() + + if(NOT TARGET marchingcubecpp) +- FetchContent_Declare( ++ fetchcontent_declare( + marchingcubecpp +- GIT_REPOSITORY https://github.com/aparis69/MarchingCubeCpp.git +- GIT_TAG ${MUJOCO_DEP_VERSION_MarchingCubeCpp} + ) + +- FetchContent_GetProperties(marchingcubecpp) ++ fetchcontent_getproperties(marchingcubecpp) + if(NOT marchingcubecpp_POPULATED) +- FetchContent_Populate(marchingcubecpp) ++ fetchcontent_populate(marchingcubecpp) + include_directories(${marchingcubecpp_SOURCE_DIR}) + endif() + endif() + ++option(MUJOCO_USE_SYSTEM_qhull "Use installed qhull version." OFF) ++mark_as_advanced(MUJOCO_USE_SYSTEM_qhull) ++ + set(QHULL_ENABLE_TESTING OFF) + + findorfetch( + USE_SYSTEM_PACKAGE +- OFF ++ ${MUJOCO_USE_SYSTEM_qhull} + PACKAGE_NAME +- qhull ++ Qhull + LIBRARY_NAME + qhull +- GIT_REPO +- https://github.com/qhull/qhull.git +- GIT_TAG +- ${MUJOCO_DEP_VERSION_qhull} + TARGETS + qhull + EXCLUDE_FROM_ALL + ) +-# MuJoCo includes a file from libqhull_r which is not exported by the qhull include directories. +-# Add it to the target. +-target_include_directories( +- qhullstatic_r INTERFACE $ +-) +-target_compile_options(qhullstatic_r PRIVATE ${MUJOCO_MACOS_COMPILE_OPTIONS}) +-target_link_options(qhullstatic_r PRIVATE ${MUJOCO_MACOS_LINK_OPTIONS}) ++ ++if(NOT MUJOCO_USE_SYSTEM_qhull) ++ # MuJoCo includes a file from libqhull_r which is not exported by the qhull include directories. ++ # Add it to the target. ++ target_include_directories( ++ qhullstatic_r INTERFACE $ ++ ) ++ target_compile_options(qhullstatic_r PRIVATE ${MUJOCO_MACOS_COMPILE_OPTIONS}) ++ target_link_options(qhullstatic_r PRIVATE ${MUJOCO_MACOS_LINK_OPTIONS}) ++else() ++ if(NOT TARGET qhullstatic_r) ++ add_library(qhullstatic_r INTERFACE) ++ set_target_properties(qhullstatic_r PROPERTIES INTERFACE_LINK_LIBRARIES Qhull::qhull_r) ++ ++ # Workaround as headers are installed in /include/libqhull_r/something.h ++ # but mujoco include them as #include ++ get_property(qhull_include_dirs TARGET Qhull::qhull_r PROPERTY INTERFACE_INCLUDE_DIRECTORIES) ++ foreach(qhull_include_dir IN LISTS qhull_include_dirs) ++ target_include_directories(qhullstatic_r INTERFACE ${qhull_include_dirs}/libqhull_r) ++ endforeach() ++ target_include_directories(qhullstatic_r INTERFACE ) ++ endif() ++endif() ++ ++option(MUJOCO_USE_SYSTEM_tinyxml2 "Use installed tinyxml2 version." OFF) ++mark_as_advanced(MUJOCO_USE_SYSTEM_tinyxml2) + + set(tinyxml2_BUILD_TESTING OFF) + findorfetch( + USE_SYSTEM_PACKAGE +- OFF ++ ${MUJOCO_USE_SYSTEM_tinyxml2} + PACKAGE_NAME + tinyxml2 + LIBRARY_NAME + tinyxml2 +- GIT_REPO +- https://github.com/leethomason/tinyxml2.git +- GIT_TAG +- ${MUJOCO_DEP_VERSION_tinyxml2} + TARGETS +- tinyxml2 ++ tinyxml2::tinyxml2 + EXCLUDE_FROM_ALL + ) +-target_compile_options(tinyxml2 PRIVATE ${MUJOCO_MACOS_COMPILE_OPTIONS}) +-target_link_options(tinyxml2 PRIVATE ${MUJOCO_MACOS_LINK_OPTIONS}) ++ ++if(NOT MUJOCO_USE_SYSTEM_tinyxml2) ++ target_compile_options(tinyxml2 PRIVATE ${MUJOCO_MACOS_COMPILE_OPTIONS}) ++ target_link_options(tinyxml2 PRIVATE ${MUJOCO_MACOS_LINK_OPTIONS}) ++endif() ++ ++option(MUJOCO_USE_SYSTEM_tinyobjloader "Use installed tinyobjloader version." OFF) ++mark_as_advanced(MUJOCO_USE_SYSTEM_tinyobjloader) + + findorfetch( + USE_SYSTEM_PACKAGE +- OFF ++ ${MUJOCO_USE_SYSTEM_tinyobjloader} + PACKAGE_NAME + tinyobjloader + LIBRARY_NAME + tinyobjloader +- GIT_REPO +- https://github.com/tinyobjloader/tinyobjloader.git +- GIT_TAG +- ${MUJOCO_DEP_VERSION_tinyobjloader} + TARGETS + tinyobjloader + EXCLUDE_FROM_ALL + ) + ++if(MUJOCO_USE_SYSTEM_tinyobjloader) ++ # As of tinyobjloader v2.0.0rc10, the tinyobjloader target is named tinyobjloader in the build, ++ # but tinyobjloader::tinyobjloader when it is installed. To deal with this, if tinyobjloader is ++ # found in the system, we create an ALIAS ++ # The following is equivalent to add_library(tinyobjloader ALIAS tinyobjloader::tinyobjloader), ++ # but compatible with CMake 3.16 . Once the minimum CMake is bumped to CMake 3.18, we can use ++ # the simpler version ++ add_library(tinyobjloader INTERFACE IMPORTED) ++ set_target_properties(tinyobjloader PROPERTIES INTERFACE_LINK_LIBRARIES tinyobjloader::tinyobjloader) ++endif() ++ ++option(MUJOCO_USE_SYSTEM_sdflib "Use installed sdflib version." OFF) ++mark_as_advanced(MUJOCO_USE_SYSTEM_sdflib) ++ + option(SDFLIB_USE_ASSIMP OFF) + option(SDFLIB_USE_OPENMP OFF) + option(SDFLIB_USE_ENOKI OFF) ++ + findorfetch( + USE_SYSTEM_PACKAGE +- OFF ++ ${MUJOCO_USE_SYSTEM_sdflib} + PACKAGE_NAME +- sdflib ++ SdfLib + LIBRARY_NAME + sdflib +- GIT_REPO +- https://github.com/UPC-ViRVIG/SdfLib.git +- GIT_TAG +- ${MUJOCO_DEP_VERSION_sdflib} + TARGETS +- SdfLib ++ SdfLib::SdfLib + EXCLUDE_FROM_ALL + ) +-target_compile_options(SdfLib PRIVATE ${MUJOCO_MACOS_COMPILE_OPTIONS}) +-target_link_options(SdfLib PRIVATE ${MUJOCO_MACOS_LINK_OPTIONS}) ++ ++if(NOT MUJOCO_USE_SYSTEM_sdflib) ++ target_compile_options(SdfLib PRIVATE ${MUJOCO_MACOS_COMPILE_OPTIONS}) ++ target_link_options(SdfLib PRIVATE ${MUJOCO_MACOS_LINK_OPTIONS}) ++endif() ++ ++option(MUJOCO_USE_SYSTEM_ccd "Use installed ccd version." OFF) ++mark_as_advanced(MUJOCO_USE_SYSTEM_ccd) + + set(ENABLE_DOUBLE_PRECISION ON) + set(CCD_HIDE_ALL_SYMBOLS ON) + findorfetch( + USE_SYSTEM_PACKAGE +- OFF ++ ${MUJOCO_USE_SYSTEM_ccd} + PACKAGE_NAME + ccd + LIBRARY_NAME + ccd +- GIT_REPO +- https://github.com/danfis/libccd.git +- GIT_TAG +- ${MUJOCO_DEP_VERSION_ccd} + TARGETS + ccd + EXCLUDE_FROM_ALL + ) +-target_compile_options(ccd PRIVATE ${MUJOCO_MACOS_COMPILE_OPTIONS}) +-target_link_options(ccd PRIVATE ${MUJOCO_MACOS_LINK_OPTIONS}) +- +-# libCCD has an unconditional `#define _CRT_SECURE_NO_WARNINGS` on Windows. +-# TODO(stunya): Remove this after https://github.com/danfis/libccd/pull/77 is merged. +-if(WIN32) +- if(MSVC) +- # C4005 is the MSVC equivalent of -Wmacro-redefined. +- target_compile_options(ccd PRIVATE /wd4005) +- else() +- target_compile_options(ccd PRIVATE -Wno-macro-redefined) ++ ++if(NOT MUJOCO_USE_SYSTEM_ccd) ++ target_compile_options(ccd PRIVATE ${MUJOCO_MACOS_COMPILE_OPTIONS}) ++ target_link_options(ccd PRIVATE ${MUJOCO_MACOS_LINK_OPTIONS}) ++ # This is necessary to ensure that the any library that consumes the ccd ++ # compiled internally by MuJoCo (as static library) has CCD_EXPORT correctly ++ # defined as an empty string. For ccd itself, this is ensured by the variable ++ # CCD_HIDE_ALL_SYMBOLS set to ON before the call to findorfetch ++ # See https://github.com/danfis/libccd/pull/79 ++ target_compile_definitions(ccd INTERFACE CCD_STATIC_DEFINE) ++ ++ # libCCD has an unconditional `#define _CRT_SECURE_NO_WARNINGS` on Windows. ++ # TODO(stunya): Remove this after https://github.com/danfis/libccd/pull/77 is merged. ++ if(WIN32) ++ if(MSVC) ++ # C4005 is the MSVC equivalent of -Wmacro-redefined. ++ target_compile_options(ccd PRIVATE /wd4005) ++ else() ++ target_compile_options(ccd PRIVATE -Wno-macro-redefined) ++ endif() + endif() + endif() + + if(MUJOCO_BUILD_TESTS) ++ option(MUJOCO_USE_SYSTEM_abseil "Use installed abseil version." OFF) ++ mark_as_advanced(MUJOCO_USE_SYSTEM_abseil) ++ + set(ABSL_PROPAGATE_CXX_STD ON) + + # This specific version of Abseil does not have the following variable. We need to work with BUILD_TESTING +@@ -249,15 +299,11 @@ if(MUJOCO_BUILD_TESTS) + set(ABSL_BUILD_TESTING OFF) + findorfetch( + USE_SYSTEM_PACKAGE +- OFF ++ ${MUJOCO_USE_SYSTEM_abseil} + PACKAGE_NAME + absl + LIBRARY_NAME + abseil-cpp +- GIT_REPO +- https://github.com/abseil/abseil-cpp.git +- GIT_TAG +- ${MUJOCO_DEP_VERSION_abseil} + TARGETS + absl::core_headers + EXCLUDE_FROM_ALL +@@ -268,6 +314,9 @@ if(MUJOCO_BUILD_TESTS) + CACHE BOOL "Build tests." FORCE + ) + ++ option(MUJOCO_USE_SYSTEM_gtest "Use installed gtest version." OFF) ++ mark_as_advanced(MUJOCO_USE_SYSTEM_gtest) ++ + # Avoid linking errors on Windows by dynamically linking to the C runtime. + set(gtest_force_shared_crt + ON +@@ -276,22 +325,20 @@ if(MUJOCO_BUILD_TESTS) + + findorfetch( + USE_SYSTEM_PACKAGE +- OFF ++ ${MUJOCO_USE_SYSTEM_gtest} + PACKAGE_NAME + GTest + LIBRARY_NAME + googletest +- GIT_REPO +- https://github.com/google/googletest.git +- GIT_TAG +- ${MUJOCO_DEP_VERSION_gtest} + TARGETS +- gtest +- gmock +- gtest_main ++ GTest::gmock ++ GTest::gtest_main + EXCLUDE_FROM_ALL + ) + ++ option(MUJOCO_USE_SYSTEM_benchmark "Use installed benchmark version." OFF) ++ mark_as_advanced(MUJOCO_USE_SYSTEM_benchmark) ++ + set(BENCHMARK_EXTRA_FETCH_ARGS "") + if(WIN32 AND NOT MSVC) + set(BENCHMARK_EXTRA_FETCH_ARGS +@@ -310,15 +357,11 @@ if(MUJOCO_BUILD_TESTS) + + findorfetch( + USE_SYSTEM_PACKAGE +- OFF ++ ${MUJOCO_USE_SYSTEM_benchmark} + PACKAGE_NAME + benchmark + LIBRARY_NAME + benchmark +- GIT_REPO +- https://github.com/google/benchmark.git +- GIT_TAG +- ${MUJOCO_DEP_VERSION_benchmark} + TARGETS + benchmark::benchmark + benchmark::benchmark_main +@@ -328,26 +371,42 @@ if(MUJOCO_BUILD_TESTS) + endif() + + if(MUJOCO_TEST_PYTHON_UTIL) ++ option(MUJOCO_USE_SYSTEM_Eigen3 "Use installed Eigen3 version." OFF) ++ mark_as_advanced(MUJOCO_USE_SYSTEM_Eigen3) ++ + add_compile_definitions(EIGEN_MPL2_ONLY) +- if(NOT TARGET eigen) +- # Support new IN_LIST if() operator. +- set(CMAKE_POLICY_DEFAULT_CMP0057 NEW) ++ if(NOT TARGET Eigen3::Eigen) ++ if(NOT MUJOCO_USE_SYSTEM_Eigen3) ++ # Support new IN_LIST if() operator. ++ set(CMAKE_POLICY_DEFAULT_CMP0057 NEW) ++ endif() + +- FetchContent_Declare( ++ fetchcontent_declare( + Eigen3 +- GIT_REPOSITORY https://gitlab.com/libeigen/eigen.git +- GIT_TAG ${MUJOCO_DEP_VERSION_Eigen3} + ) + +- FetchContent_GetProperties(Eigen3) ++ fetchcontent_getproperties(Eigen3) + if(NOT Eigen3_POPULATED) +- FetchContent_Populate(Eigen3) ++ fetchcontent_populate(Eigen3) + + # Mark the library as IMPORTED as a workaround for https://gitlab.kitware.com/cmake/cmake/-/issues/15415 + add_library(Eigen3::Eigen INTERFACE IMPORTED) + set_target_properties( + Eigen3::Eigen PROPERTIES INTERFACE_INCLUDE_DIRECTORIES "${eigen3_SOURCE_DIR}" + ) ++ ++ fetchcontent_getproperties(Eigen3) ++ # if(NOT Eigen3_POPULATED) ++ # fetchcontent_populate(Eigen3) ++ ++ # # Mark the library as IMPORTED as a workaround for https://gitlab.kitware.com/cmake/cmake/-/issues/15415 ++ # add_library(Eigen3::Eigen INTERFACE IMPORTED) ++ # set_target_properties( ++ # Eigen3::Eigen PROPERTIES INTERFACE_INCLUDE_DIRECTORIES "${eigen3_SOURCE_DIR}" ++ # ) ++ # endif() ++ else() ++ find_package(Eigen3 REQUIRED) + endif() + endif() + endif() +diff --git a/plugin/sdf/CMakeLists.txt b/plugin/sdf/CMakeLists.txt +index 3e216fc..e7e3a1e 100644 +--- a/plugin/sdf/CMakeLists.txt ++++ b/plugin/sdf/CMakeLists.txt +@@ -37,7 +37,7 @@ set(MUJOCO_SDF_SRCS + add_library(sdf SHARED) + target_sources(sdf PRIVATE ${MUJOCO_SDF_SRCS}) + target_include_directories(sdf PRIVATE ${MUJOCO_SDF_INCLUDE}) +-target_link_libraries(sdf PRIVATE mujoco SdfLib) ++target_link_libraries(sdf PRIVATE mujoco SdfLib::SdfLib) + target_compile_options( + sdf + PRIVATE ${AVX_COMPILE_OPTIONS} +diff --git a/python/mujoco/util/CMakeLists.txt b/python/mujoco/util/CMakeLists.txt +index 666a372..d89bb49 100644 +--- a/python/mujoco/util/CMakeLists.txt ++++ b/python/mujoco/util/CMakeLists.txt +@@ -63,8 +63,8 @@ if(BUILD_TESTING) + target_link_libraries( + array_traits_test + array_traits +- gmock +- gtest_main ++ GTest::gmock ++ GTest::gtest_main + ) + gtest_add_tests(TARGET array_traits_test SOURCES array_traits_test.cc) + +@@ -72,8 +72,8 @@ if(BUILD_TESTING) + target_link_libraries( + func_traits_test + func_traits +- gmock +- gtest_main ++ GTest::gmock ++ GTest::gtest_main + ) + gtest_add_tests(TARGET func_traits_test SOURCES func_traits_test.cc) + +@@ -81,8 +81,8 @@ if(BUILD_TESTING) + target_link_libraries( + func_wrap_test + func_wrap +- gmock +- gtest_main ++ GTest::gmock ++ GTest::gtest_main + ) + gtest_add_tests(TARGET func_wrap_test SOURCES func_wrap_test.cc) + +@@ -90,8 +90,8 @@ if(BUILD_TESTING) + target_link_libraries( + tuple_tools_test + func_wrap +- gmock +- gtest_main ++ GTest::gmock ++ GTest::gtest_main + ) + gtest_add_tests(TARGET tuple_tools_test SOURCES tuple_tools_test.cc) + endif() +diff --git a/simulate/cmake/SimulateDependencies.cmake b/simulate/cmake/SimulateDependencies.cmake +index 5141406..75ff788 100644 +--- a/simulate/cmake/SimulateDependencies.cmake ++++ b/simulate/cmake/SimulateDependencies.cmake +@@ -81,10 +81,6 @@ findorfetch( + glfw3 + LIBRARY_NAME + glfw3 +- GIT_REPO +- https://github.com/glfw/glfw.git +- GIT_TAG +- ${MUJOCO_DEP_VERSION_glfw3} + TARGETS + glfw + EXCLUDE_FROM_ALL +diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt +index 6bec911..2a16c21 100644 +--- a/test/CMakeLists.txt ++++ b/test/CMakeLists.txt +@@ -30,7 +30,7 @@ macro(mujoco_test name) + ) + + add_executable(${name} ${name}.cc) +- target_link_libraries(${name} gtest_main mujoco) ++ target_link_libraries(${name} GTest::gtest_main mujoco) + target_include_directories(${name} PRIVATE ${MUJOCO_TEST_INCLUDE}) + set_target_properties(${name} PROPERTIES BUILD_RPATH ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}) + # gtest_discover_tests is recommended over gtest_add_tests, but has some issues in Windows. +@@ -59,20 +59,20 @@ target_link_libraries( + PUBLIC absl::core_headers + absl::strings + absl::synchronization +- gtest +- gmock ++ GTest::gtest ++ GTest::gmock + mujoco::mujoco + ) + target_include_directories(fixture PRIVATE ${mujoco_SOURCE_DIR}/include gmock) + + mujoco_test(fixture_test) +-target_link_libraries(fixture_test fixture gmock) ++target_link_libraries(fixture_test fixture GTest::gmock) + + mujoco_test(header_test) +-target_link_libraries(header_test fixture gmock) ++target_link_libraries(header_test fixture GTest::gmock) + + mujoco_test(pipeline_test) +-target_link_libraries(pipeline_test fixture gmock) ++target_link_libraries(pipeline_test fixture GTest::gmock) + + add_subdirectory(benchmark) + add_subdirectory(engine) diff --git a/pkgs/applications/science/robotics/mujoco/sdflib-system-deps.patch b/pkgs/applications/science/robotics/mujoco/sdflib-system-deps.patch new file mode 100644 index 000000000000..ca84c60a63df --- /dev/null +++ b/pkgs/applications/science/robotics/mujoco/sdflib-system-deps.patch @@ -0,0 +1,192 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 251c456..3d30231 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -27,7 +27,7 @@ option(SDFLIB_USE_SYSTEM_GLM "Use glm library via find_package instead of downlo + option(SDFLIB_USE_SYSTEM_SPDLOG "Use spdlog library via find_package instead of downloading it" OFF) + option(SDFLIB_USE_SYSTEM_CEREAL "Use cereal library via find_package instead of downloading it" OFF) + option(SDFLIB_USE_SYSTEM_ASSIMP "Use assimp library via find_package instead of downloading it" OFF) +- ++option(SDFLIB_USE_SYSTEM_TRIANGLEMESHDISTANCE "Use TriangleMeshDistance library via system includes instead of downloading it" OFF) + + if(SDFLIB_DEBUG_INFO) + add_compile_definitions(SDFLIB_PRINT_STATISTICS) +@@ -55,13 +55,52 @@ file(GLOB UTILS_SOURCE_FILES src/utils/*.cpp) + file(GLOB UTILS_HEADER_FILES src/utils/*.h) + + # Add libraries +-add_library(${PROJECT_NAME} STATIC ${SOURCE_FILES} ${HEADER_FILES} ${PUBLIC_HEADER_FILES} +- ${SDF_SOURCE_FILES} ${SDF_HEADER_FILES} +- ${UTILS_SOURCE_FILES} ${UTILS_HEADER_FILES}) +- +-target_include_directories(${PROJECT_NAME} PUBLIC include/) ++add_library(${PROJECT_NAME} ${SOURCE_FILES} ${HEADER_FILES} ${PUBLIC_HEADER_FILES} ++ ${SDF_SOURCE_FILES} ${SDF_HEADER_FILES} ++ ${UTILS_SOURCE_FILES} ${UTILS_HEADER_FILES}) ++add_library(${PROJECT_NAME}::${PROJECT_NAME} ALIAS ${PROJECT_NAME}) ++if(BUILD_SHARED_LIBS AND WIN32) ++ set_target_properties(${PROJECT_NAME} PROPERTIES WINDOWS_EXPORT_ALL_SYMBOLS ON) ++endif() ++include(GNUInstallDirs) ++target_include_directories(${PROJECT_NAME} PUBLIC $ ++ $) + target_include_directories(${PROJECT_NAME} PRIVATE src/) + ++# Install library and CMake config files ++install(TARGETS ${PROJECT_NAME} EXPORT ${PROJECT_NAME}) ++install(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/include/SdfLib ++ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) ++ ++install(EXPORT ${PROJECT_NAME} ++ FILE ${PROJECT_NAME}Targets.cmake ++ DESTINATION lib/cmake/${PROJECT_NAME} ++ NAMESPACE ${PROJECT_NAME}:: ++) ++ ++include(CMakePackageConfigHelpers) ++set(PACKAGE_DEPENDENCIES "") ++if(SDFLIB_USE_SYSTEM_GLM) ++ string(APPEND PACKAGE_DEPENDENCIES "find_dependency(glm)\n") ++endif() ++if(SDFLIB_USE_SYSTEM_SPDLOG) ++ string(APPEND PACKAGE_DEPENDENCIES "find_dependency(spdlog)\n") ++endif() ++if(SDFLIB_USE_SYSTEM_CEREAL) ++ string(APPEND PACKAGE_DEPENDENCIES "find_dependency(cereal)\n") ++endif() ++if(SDFLIB_USE_ASSIMP AND SDFLIB_USE_SYSTEM_ASSIMP) ++ string(APPEND PACKAGE_DEPENDENCIES "find_dependency(assimp)\n") ++endif() ++ ++configure_package_config_file(${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_NAME}Config.cmake.in ++ "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Config.cmake" ++ INSTALL_DESTINATION "lib/cmake/${PROJECT_NAME}" ++ NO_SET_AND_CHECK_MACRO ++ NO_CHECK_REQUIRED_COMPONENTS_MACRO) ++install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Config.cmake ++ DESTINATION lib/cmake/${PROJECT_NAME}) ++ + # Add shaders + file(GLOB SHADER_FILES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}/src/render_engine/shaders + src/render_engine/shaders/*.frag +@@ -69,7 +108,7 @@ file(GLOB SHADER_FILES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}/src/render_engine/sh + src/render_engine/shaders/*.comp) + + foreach(SHADER IN LISTS SHADER_FILES) +- add_custom_command(OUTPUT ${SHADER} ++add_custom_command(OUTPUT ${SHADER} + COMMAND cmake -E copy_if_different ${CMAKE_CURRENT_SOURCE_DIR}/src/render_engine/shaders/${SHADER} $/shaders/${SHADER} + DEPENDS src/render_engine/shaders/${SHADER} + ) +@@ -112,7 +151,10 @@ endif() + target_link_libraries(${PROJECT_NAME} PUBLIC ${SDFLIB_GLM_TARGET}) + target_link_libraries(${PROJECT_NAME} PUBLIC spdlog::spdlog) + target_link_libraries(${PROJECT_NAME} PUBLIC cereal::cereal) +-target_link_libraries(${PROJECT_NAME} PUBLIC icg) ++ ++if(NOT SDFLIB_USE_SYSTEM_TRIANGLEMESHDISTANCE) ++ target_link_libraries(${PROJECT_NAME} PUBLIC TriangleMeshDistance) ++endif() + + if(CMAKE_CXX_COMPILER_ID MATCHES GNU) + target_link_libraries(${PROJECT_NAME} PUBLIC -lstdc++fs) +diff --git a/SdfLibConfig.cmake.in b/SdfLibConfig.cmake.in +new file mode 100644 +index 0000000..9b8265c +--- /dev/null ++++ b/SdfLibConfig.cmake.in +@@ -0,0 +1,7 @@ ++@PACKAGE_INIT@ ++ ++include(CMakeFindDependencyMacro) ++ ++@PACKAGE_DEPENDENCIES@ ++ ++include("${CMAKE_CURRENT_LIST_DIR}/SdfLibTargets.cmake") +diff --git a/include/SdfLib/TrianglesInfluence.h b/include/SdfLib/TrianglesInfluence.h +index fc2ca52..b276f23 100644 +--- a/include/SdfLib/TrianglesInfluence.h ++++ b/include/SdfLib/TrianglesInfluence.h +@@ -11,7 +11,7 @@ + #include "InterpolationMethods.h" + #include "utils/Timer.h" + #include "utils/GJK.h" +-#include ++#include + + #include + #include +diff --git a/libs/CMakeLists.txt b/libs/CMakeLists.txt +index 79f70c1..e2a4f10 100644 +--- a/libs/CMakeLists.txt ++++ b/libs/CMakeLists.txt +@@ -137,9 +137,10 @@ if(SDFLIB_BUILD_APPS OR SDFLIB_BUILD_DEBUG_APPS) + target_include_directories(stb_image INTERFACE stb) + endif() + +-# icg +-add_library(icg INTERFACE) +-target_include_directories(icg INTERFACE InteractiveComputerGraphics) ++if (NOT SDFLIB_USE_SYSTEM_TRIANGLEMESHDISTANCE) ++ add_library(TriangleMeshDistance INTERFACE) ++ target_include_directories(TriangleMeshDistance INTERFACE InteractiveComputerGraphics) ++endif() + + if(SDFLIB_BUILD_APPS OR SDFLIB_BUILD_DEBUG_APPS) + # glfw +diff --git a/libs/InteractiveComputerGraphics/InteractiveComputerGraphics/TriangleMeshDistance.h b/libs/InteractiveComputerGraphics/tmd/TriangleMeshDistance.h +similarity index 100% +rename from libs/InteractiveComputerGraphics/InteractiveComputerGraphics/TriangleMeshDistance.h +rename to libs/InteractiveComputerGraphics/tmd/TriangleMeshDistance.h +diff --git a/src/tools/ImageQueryTime/main.cpp b/src/tools/ImageQueryTime/main.cpp +index 357a78b..f4fd9e7 100644 +--- a/src/tools/ImageQueryTime/main.cpp ++++ b/src/tools/ImageQueryTime/main.cpp +@@ -17,7 +17,7 @@ + + #define TEST_METHODS + #ifdef TEST_METHODS +-#include ++#include + // #include + // #include + // #include +diff --git a/src/tools/SdfErrorCompare/main.cpp b/src/tools/SdfErrorCompare/main.cpp +index deef25f..9e402c4 100644 +--- a/src/tools/SdfErrorCompare/main.cpp ++++ b/src/tools/SdfErrorCompare/main.cpp +@@ -23,7 +23,7 @@ using namespace sdflib; + // #define TEST_OPENVDB + + #ifdef TEST_ICG +-#include ++#include + #endif + #ifdef TEST_CGAL + #include +diff --git a/src/tools/SdfLibUnity/SdfExportFunc.cpp b/src/tools/SdfLibUnity/SdfExportFunc.cpp +index ff4e017..7e06ada 100644 +--- a/src/tools/SdfLibUnity/SdfExportFunc.cpp ++++ b/src/tools/SdfLibUnity/SdfExportFunc.cpp +@@ -1,7 +1,7 @@ + #include "SdfExportFunc.h" + #include "spdlog/sinks/rotating_file_sink.h" + +-#include ++#include + + using namespace sdflib; + +diff --git a/src/tools/SdfOffsets/main.cpp b/src/tools/SdfOffsets/main.cpp +index b6769d7..07f137b 100644 +--- a/src/tools/SdfOffsets/main.cpp ++++ b/src/tools/SdfOffsets/main.cpp +@@ -9,7 +9,7 @@ + #include + #include + +-#include ++#include + #include + #include + #include diff --git a/pkgs/applications/search/recoll/default.nix b/pkgs/applications/search/recoll/default.nix index 51815c26ae07..0560793132d1 100644 --- a/pkgs/applications/search/recoll/default.nix +++ b/pkgs/applications/search/recoll/default.nix @@ -70,11 +70,11 @@ in mkDerivation rec { pname = "recoll"; - version = "1.36.0"; + version = "1.36.2"; src = fetchurl { url = "https://www.lesbonscomptes.com/${pname}/${pname}-${version}.tar.gz"; - hash = "sha256-vf0o0wBcG3878YD4mTUhni2aTUU9AJkG4an1oaRc4yw="; + hash = "sha256-GyQqI3ciRO0TRaAeM4rGu+j/eB4bJlQ7VBTTxUGMNt4="; }; configureFlags = [ @@ -169,7 +169,7 @@ mkDerivation rec { members, email attachments. ''; homepage = "https://www.lesbonscomptes.com/recoll/"; - changelog = "https://www.lesbonscomptes.com/recoll/pages/release-${version}.html"; + changelog = "https://www.lesbonscomptes.com/recoll/pages/release-${versions.majorMinor version}.html"; license = licenses.gpl2Plus; platforms = platforms.unix; maintainers = with maintainers; [ jcumming ehmry ]; diff --git a/pkgs/applications/version-management/gg/default.nix b/pkgs/applications/version-management/gg/default.nix index ea701c6f07b3..279e6d0075e7 100644 --- a/pkgs/applications/version-management/gg/default.nix +++ b/pkgs/applications/version-management/gg/default.nix @@ -10,8 +10,8 @@ }: let - version = "1.3.0"; - commit = "5bfe79b3632f15c442e8dc51ec206ab76354487f"; + version = "1.3.1"; + commit = "b6be8bac78605c21a9670db0e44faf5e1eafe0d4"; in buildGoModule { pname = "gg-scm"; inherit version; @@ -20,7 +20,7 @@ in buildGoModule { owner = "gg-scm"; repo = "gg"; rev = "v${version}"; - hash = "sha256-5iiu3blNJHDehg3wnvZUmfjFST+zNr89+FAoQu4CSH8="; + hash = "sha256-qw0KWhCkJVYRhDBNtiNactWGGMHjBwdQ1Po4lQQbaj4="; }; postPatch = '' substituteInPlace cmd/gg/editor_unix.go \ @@ -33,7 +33,7 @@ in buildGoModule { "-X" "main.buildCommit=${commit}" ]; - vendorHash = "sha256-IU3Ac9rXsyPqRJrPJMW1eNVzQy7qoVBs9XYaLX9c5AU="; + vendorHash = "sha256-56Sah030xbWsoOu8r3c3nN2UGHvQORheavebP+Z1Wc8="; nativeBuildInputs = [ pandoc installShellFiles makeWrapper ]; nativeCheckInputs = [ bash coreutils git ]; diff --git a/pkgs/applications/version-management/gitea/default.nix b/pkgs/applications/version-management/gitea/default.nix index f21e58603368..5cbc4a1bd493 100644 --- a/pkgs/applications/version-management/gitea/default.nix +++ b/pkgs/applications/version-management/gitea/default.nix @@ -20,12 +20,12 @@ buildGoModule rec { pname = "gitea"; - version = "1.20.5"; + version = "1.21.1"; # not fetching directly from the git repo, because that lacks several vendor files for the web UI src = fetchurl { url = "https://dl.gitea.com/gitea/${version}/gitea-src-${version}.tar.gz"; - hash = "sha256-cH/AHsFXOdvfSfj9AZUd3l/RlYE06o1ByZu0vvGQuXw="; + hash = "sha256-5WEHUMQsQNgrglS+xJ4IWHUl0a6RLLPyx0l+ECJ4R9g="; }; vendorHash = null; diff --git a/pkgs/applications/version-management/got/default.nix b/pkgs/applications/version-management/got/default.nix index f00ee82d1c2f..ee694403f294 100644 --- a/pkgs/applications/version-management/got/default.nix +++ b/pkgs/applications/version-management/got/default.nix @@ -5,11 +5,11 @@ stdenv.mkDerivation rec { pname = "got"; - version = "0.93"; + version = "0.94"; src = fetchurl { url = "https://gameoftrees.org/releases/portable/got-portable-${version}.tar.gz"; - hash = "sha256-wlcnJr7f3Bd9SEgrKiPlr7pTSjaRj47qwktI2jepINE="; + hash = "sha256-hG0/a+sk6uZCxR908YfZCW44qx/SIwwGO9mUaxxHZ3k="; }; nativeBuildInputs = [ pkg-config bison ] diff --git a/pkgs/applications/video/davinci-resolve/default.nix b/pkgs/applications/video/davinci-resolve/default.nix index 8070a96a2b4b..5b44ddc042a3 100644 --- a/pkgs/applications/video/davinci-resolve/default.nix +++ b/pkgs/applications/video/davinci-resolve/default.nix @@ -22,13 +22,16 @@ , aprutil , makeDesktopItem , copyDesktopItems +, jq + +, studioVariant ? false }: let davinci = ( stdenv.mkDerivation rec { - pname = "davinci-resolve"; - version = "18.5.1"; + pname = "davinci-resolve${lib.optionalString studioVariant "-studio"}"; + version = "18.6.3"; nativeBuildInputs = [ (appimage-run.override { buildFHSEnv = buildFHSEnvChroot; } ) @@ -47,19 +50,24 @@ let rec { outputHashMode = "recursive"; outputHashAlgo = "sha256"; - outputHash = "sha256-AZ869hA/WeCf3sxhdDOzD/q30P1NaD18TheBtS1ammQ="; + outputHash = + if studioVariant + then "sha256-OX8PyMhfl0jRdXBNsjlwkCAh8XUNJv8HEbmyAdjIv18=" + else "sha256-PNzdVxGgXIHM2vi3ChHx67TQBFlCYBOZCiFkDi/RSu4="; impureEnvVars = lib.fetchers.proxyImpureEnvVars; - nativeBuildInputs = [ curl ]; + nativeBuildInputs = [ curl jq ]; # ENV VARS SSL_CERT_FILE = "${cacert}/etc/ssl/certs/ca-bundle.crt"; # Get linux.downloadId from HTTP response on https://www.blackmagicdesign.com/products/davinciresolve - DOWNLOADID = "defc1c6789b7475b9ee4a42daf9ba61d"; REFERID = "263d62f31cbb49e0868005059abcb0c9"; - SITEURL = "https://www.blackmagicdesign.com/api/register/us/download/${DOWNLOADID}"; + DOWNLOADSURL = "https://www.blackmagicdesign.com/api/support/us/downloads.json"; + SITEURL = "https://www.blackmagicdesign.com/api/register/us/download"; + PRODUCT = "DaVinci Resolve${lib.optionalString studioVariant " Studio"}"; + VERSION = version; USERAGENT = builtins.concatStringsSep " " [ "User-Agent: Mozilla/5.0 (X11; Linux ${stdenv.hostPlatform.linuxArch})" @@ -77,10 +85,16 @@ let "street" = "Hogeweide 346"; "state" = "Province of Utrecht"; "city" = "Utrecht"; - "product" = "DaVinci Resolve"; + "product" = PRODUCT; }; } '' + DOWNLOADID=$( + curl --silent --compressed "$DOWNLOADSURL" \ + | jq --raw-output '.downloads[] | select(.name | test("^'"$PRODUCT $VERSION"'( Update)?$")) | .urls.Linux[0].downloadId' + ) + echo "downloadid is $DOWNLOADID" + test -n "$DOWNLOADID" RESOLVEURL=$(curl \ --silent \ --header 'Host: www.blackmagicdesign.com' \ @@ -95,7 +109,7 @@ let --header 'Cookie: _ga=GA1.2.1849503966.1518103294; _gid=GA1.2.953840595.1518103294' \ --data-ascii "$REQJSON" \ --compressed \ - "$SITEURL") + "$SITEURL/$DOWNLOADID") curl \ --retry 3 --retry-delay 3 \ @@ -111,14 +125,17 @@ let # The unpack phase won't generate a directory sourceRoot = "."; - installPhase = '' + installPhase = let + appimageName = "DaVinci_Resolve_${lib.optionalString studioVariant "Studio_"}${version}_Linux.run"; + in '' runHook preInstall export HOME=$PWD/home mkdir -p $HOME mkdir -p $out - appimage-run ./DaVinci_Resolve_${version}_Linux.run -i -y -n -C $out + test -e ${lib.escapeShellArg appimageName} + appimage-run ${lib.escapeShellArg appimageName} -i -y -n -C $out mkdir -p $out/{configs,DolbyVision,easyDCP,Fairlight,GPUCache,logs,Media,"Resolve Disk Database",.crashreport,.license,.LUT} runHook postInstall @@ -162,7 +179,9 @@ let ); in buildFHSEnv { - name = "davinci-resolve"; + inherit (davinci) pname version; + name = null; + targetPkgs = pkgs: with pkgs; [ alsa-lib aprutil @@ -201,6 +220,7 @@ buildFHSEnv { xorg.libXinerama xorg.libXrandr xorg.libXrender + xorg.libXt xorg.libXtst xorg.libXxf86vm xorg.libxcb @@ -213,16 +233,22 @@ buildFHSEnv { zlib ]; + extraBwrapArgs = lib.optionals studioVariant [ + "--bind \"$HOME\"/.local/share/DaVinciResolve/license ${davinci}/.license" + ]; + runScript = "${bash}/bin/bash ${ writeText "davinci-wrapper" '' export QT_XKB_CONFIG_ROOT="${xkeyboard_config}/share/X11/xkb" export QT_PLUGIN_PATH="${davinci}/libs/plugins:$QT_PLUGIN_PATH" - export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${davinci}/libs + export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib:/usr/lib32:${davinci}/libs ${davinci}/bin/resolve '' }"; + passthru = { inherit davinci; }; + meta = with lib; { description = "Professional video editing, color, effects and audio post-processing"; homepage = "https://www.blackmagicdesign.com/products/davinciresolve"; diff --git a/pkgs/applications/video/kodi/addons/pvr-hts/default.nix b/pkgs/applications/video/kodi/addons/pvr-hts/default.nix index a3b2e81fa686..16c1520fc5f0 100644 --- a/pkgs/applications/video/kodi/addons/pvr-hts/default.nix +++ b/pkgs/applications/video/kodi/addons/pvr-hts/default.nix @@ -2,13 +2,13 @@ buildKodiBinaryAddon rec { pname = "pvr-hts"; namespace = "pvr.hts"; - version = "20.6.4"; + version = "20.6.5"; src = fetchFromGitHub { owner = "kodi-pvr"; repo = "pvr.hts"; rev = "${version}-${rel}"; - sha256 = "sha256-IrVz4rHAmaj/ACBNEF0x3kJa3fFPTTT7Pv9GnWJm8Vg="; + sha256 = "sha256-NrSLWZn+aeWUKxM/ETvoE4gRo4JZsD1snpLvMLDlpFw="; }; meta = with lib; { diff --git a/pkgs/applications/virtualization/tart/default.nix b/pkgs/applications/virtualization/tart/default.nix index cc924278b9aa..6afe021c36c5 100644 --- a/pkgs/applications/virtualization/tart/default.nix +++ b/pkgs/applications/virtualization/tart/default.nix @@ -10,11 +10,11 @@ }: stdenvNoCC.mkDerivation (finalAttrs: { pname = "tart"; - version = "2.3.0"; + version = "2.4.1"; src = fetchurl { url = "https://github.com/cirruslabs/tart/releases/download/${finalAttrs.version}/tart.tar.gz"; - sha256 = "sha256-LdzP0Vovda0W6uBg71dJlTxP+Qly+c2Shv3xrMmxYDg="; + sha256 = "sha256-dCKUwDC7M3u8/8yJQp/v0zy7GuB7SvjnRmTLtodUz80="; }; sourceRoot = "."; diff --git a/pkgs/applications/window-managers/weston/default.nix b/pkgs/applications/window-managers/weston/default.nix index 3d2c720e137c..34532411888c 100644 --- a/pkgs/applications/window-managers/weston/default.nix +++ b/pkgs/applications/window-managers/weston/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchurl, fetchpatch2 +{ lib, stdenv, fetchurl , meson, ninja, pkg-config, python3, wayland-scanner , cairo, libGL, libdrm, libevdev, libinput, libxkbcommon, mesa, seatd, wayland , wayland-protocols, xcbutilcursor @@ -19,23 +19,13 @@ stdenv.mkDerivation rec { pname = "weston"; - version = "12.0.2"; + version = "13.0.0"; src = fetchurl { url = "https://gitlab.freedesktop.org/wayland/weston/-/releases/${version}/downloads/weston-${version}.tar.xz"; - hash = "sha256-62hqfPAJkqI7F/GS/KmohzE+ksNG7jXYV1GWmD1la0o="; + hash = "sha256-Uv8dSqI5Si5BbIWjOLYnzpf6cdQ+t2L9Sq8UXTb8eVo="; }; - patches = [ - # ci, backend-vnc: update to Neat VNC 0.7.0 - # part of https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/1051 - (fetchpatch2 { - url = "https://gitlab.freedesktop.org/wayland/weston/-/commit/8895b15f3dfc555a869e310ff6e16ff5dced1336.patch"; - hash = "sha256-PGAmQhzG8gZcYRaZwhKPlgzfbILIXGAHLSd9dCHAP1A="; - excludes = [ ".gitlab-ci.yml" ]; - }) - ]; - depsBuildBuild = [ pkg-config ]; nativeBuildInputs = [ meson ninja pkg-config python3 wayland-scanner ]; buildInputs = [ diff --git a/pkgs/build-support/fetchtorrent/default.nix b/pkgs/build-support/fetchtorrent/default.nix index beb2415df707..126748678bf2 100644 --- a/pkgs/build-support/fetchtorrent/default.nix +++ b/pkgs/build-support/fetchtorrent/default.nix @@ -14,6 +14,7 @@ in , recursiveHash ? true , postFetch ? "" , postUnpack ? "" +, meta ? {} }: let afterSuccess = writeShellScript "fetch-bittorrent-done.sh" '' @@ -30,6 +31,7 @@ let jsonConfig = (formats.json {}).generate "jsonConfig" config; in runCommand name { + inherit meta; nativeBuildInputs = [ cacert ] ++ (if (backend == "transmission" ) then [ transmission_noSystemd ] else if (backend == "rqbit") then [ rqbit ] else throw "rqbit or transmission are the only available backends for fetchtorrent"); outputHashAlgo = if hash != "" then null else "sha256"; outputHash = hash; diff --git a/pkgs/build-support/fetchtorrent/tests.nix b/pkgs/build-support/fetchtorrent/tests.nix index b36c82c6326f..e8cc3f33878b 100644 --- a/pkgs/build-support/fetchtorrent/tests.nix +++ b/pkgs/build-support/fetchtorrent/tests.nix @@ -1,25 +1,47 @@ -{ testers, fetchtorrent, ... }: +{ testers, fetchtorrent, lib, ... }: + +let + wired-cd.meta.license = [ + # track 1, 4 and 11 + { + spdxID = "CC NC-SAMPLING+ 1.0 Deed"; + fullName = "NonCommercial Sampling Plus 1.0 Generic"; + url = "https://creativecommons.org/licenses/nc-sampling+/1.0/"; + free = false; # for noncommercial purposes only + } + # the rest + { + spdxID = "CC SAMPLING+ 1.0 Deed"; + fullName = "Sampling Plus 1.0 Generic"; + url = "https://creativecommons.org/licenses/sampling+/1.0/"; + free = true; # no use in advertisement + } + ]; +in { http-link = testers.invalidateFetcherByDrvHash fetchtorrent { url = "https://webtorrent.io/torrents/wired-cd.torrent"; hash = "sha256-OCsC22WuanqoN6lPv5wDT5ZxPcEHDpZ1EgXGvz1SDYo="; backend = "transmission"; + inherit (wired-cd) meta; }; magnet-link = testers.invalidateFetcherByDrvHash fetchtorrent { url = "magnet:?xt=urn:btih:a88fda5954e89178c372716a6a78b8180ed4dad3&dn=The+WIRED+CD+-+Rip.+Sample.+Mash.+Share&tr=udp%3A%2F%2Fexplodie.org%3A6969&tr=udp%3A%2F%2Ftracker.coppersurfer.tk%3A6969&tr=udp%3A%2F%2Ftracker.empire-js.us%3A1337&tr=udp%3A%2F%2Ftracker.leechers-paradise.org%3A6969&tr=udp%3A%2F%2Ftracker.opentrackr.org%3A1337&tr=wss%3A%2F%2Ftracker.btorrent.xyz&tr=wss%3A%2F%2Ftracker.fastcast.nz&tr=wss%3A%2F%2Ftracker.openwebtorrent.com&ws=https%3A%2F%2Fwebtorrent.io%2Ftorrents%2F&xs=https%3A%2F%2Fwebtorrent.io%2Ftorrents%2Fwired-cd.torrent"; hash = "sha256-OCsC22WuanqoN6lPv5wDT5ZxPcEHDpZ1EgXGvz1SDYo="; backend = "transmission"; + inherit (wired-cd) meta; }; http-link-rqbit = testers.invalidateFetcherByDrvHash fetchtorrent { url = "https://webtorrent.io/torrents/wired-cd.torrent"; hash = "sha256-OCsC22WuanqoN6lPv5wDT5ZxPcEHDpZ1EgXGvz1SDYo="; backend = "rqbit"; + inherit (wired-cd) meta; }; magnet-link-rqbit = testers.invalidateFetcherByDrvHash fetchtorrent { url = "magnet:?xt=urn:btih:a88fda5954e89178c372716a6a78b8180ed4dad3&dn=The+WIRED+CD+-+Rip.+Sample.+Mash.+Share&tr=udp%3A%2F%2Fexplodie.org%3A6969&tr=udp%3A%2F%2Ftracker.coppersurfer.tk%3A6969&tr=udp%3A%2F%2Ftracker.empire-js.us%3A1337&tr=udp%3A%2F%2Ftracker.leechers-paradise.org%3A6969&tr=udp%3A%2F%2Ftracker.opentrackr.org%3A1337&tr=wss%3A%2F%2Ftracker.btorrent.xyz&tr=wss%3A%2F%2Ftracker.fastcast.nz&tr=wss%3A%2F%2Ftracker.openwebtorrent.com&ws=https%3A%2F%2Fwebtorrent.io%2Ftorrents%2F&xs=https%3A%2F%2Fwebtorrent.io%2Ftorrents%2Fwired-cd.torrent"; hash = "sha256-OCsC22WuanqoN6lPv5wDT5ZxPcEHDpZ1EgXGvz1SDYo="; backend = "rqbit"; + inherit (wired-cd) meta; }; } - diff --git a/pkgs/by-name/al/alp/package.nix b/pkgs/by-name/al/alp/package.nix new file mode 100644 index 000000000000..34bc447ed6d5 --- /dev/null +++ b/pkgs/by-name/al/alp/package.nix @@ -0,0 +1,56 @@ +{ stdenv +, lib +, buildGoModule +, fetchFromGitHub +, runCommand +, alp +}: + +buildGoModule rec { + pname = "alp"; + version = "1.1.17"; + + src = fetchFromGitHub { + owner = "gernotfeichter"; + repo = "alp"; + rev = version; + hash = "sha256-7lyWu1bVn7UwLb/Em6VBbg3FrMyxGjebxt5gJhm/xpI="; + }; + vendorHash = "sha256-a2CQZKN/rPWh/Pn9gXfSArTCcGST472tsz1Kqm7M4vM="; + + sourceRoot = "${src.name}/linux"; + + # Executing Go commands directly in checkPhase and buildPhase below, + # because the default testsuite runs all go tests, some of which require docker. + # Docker is too expensive for https://github.com/NixOS/ofborg. + checkPhase = '' + runHook preCheck + + go test -run Test_main_init + + runHook postCheck + ''; + + buildPhase = '' + runHook preBuild + + go build -o $GOPATH/bin/${pname} main.go + + runHook postBuild + ''; + + passthru.tests = { + test-version = runCommand "${pname}-test" {} '' + ${alp}/bin/alp version > $out + cat $out | grep '${version}' + ''; + }; + + meta = with lib; { + description = "A convenient authentication method that lets you use your android device as a key for your Linux machine"; + homepage = "https://github.com/gernotfeichter/alp"; + license = licenses.gpl2Only; + mainProgram = "alp"; + maintainers = with maintainers; [ gernotfeichter ]; + }; +} diff --git a/pkgs/by-name/ay/ayatana-indicator-messages/package.nix b/pkgs/by-name/ay/ayatana-indicator-messages/package.nix new file mode 100644 index 000000000000..936c39a7fdce --- /dev/null +++ b/pkgs/by-name/ay/ayatana-indicator-messages/package.nix @@ -0,0 +1,147 @@ +{ stdenv +, lib +, fetchFromGitHub +, gitUpdater +, nixosTests +, testers +, accountsservice +, cmake +, dbus-test-runner +, withDocumentation ? true +, docbook_xsl +, docbook_xml_dtd_45 +, glib +, gobject-introspection +, gtest +, gtk-doc +, intltool +, lomiri +, pkg-config +, python3 +, systemd +, vala +, wrapGAppsHook +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "ayatana-indicator-messages"; + version = "23.10.0"; + + src = fetchFromGitHub { + owner = "AyatanaIndicators"; + repo = "ayatana-indicator-messages"; + rev = finalAttrs.version; + hash = "sha256-FBJeP5hOXJcOk04cRJpw+oN7L3w3meDX3ivLmFWkhVI="; + }; + + outputs = [ + "out" + "dev" + ] ++ lib.optionals withDocumentation [ + "devdoc" + ]; + + postPatch = '' + # Uses pkg_get_variable, cannot substitute prefix with that + substituteInPlace data/CMakeLists.txt \ + --replace "\''${SYSTEMD_USER_DIR}" "$out/lib/systemd/user" + + # Bad concatenation + substituteInPlace libmessaging-menu/messaging-menu.pc.in \ + --replace "\''${exec_prefix}/@CMAKE_INSTALL_LIBDIR@" '@CMAKE_INSTALL_FULL_LIBDIR@' \ + --replace "\''${prefix}/@CMAKE_INSTALL_INCLUDEDIR@" '@CMAKE_INSTALL_FULL_INCLUDEDIR@' + '' + lib.optionalString (!withDocumentation) '' + sed -i CMakeLists.txt \ + '/add_subdirectory(doc)/d' + ''; + + strictDeps = true; + + nativeBuildInputs = [ + cmake + glib # For glib-compile-schemas + intltool + pkg-config + vala + wrapGAppsHook + ] ++ lib.optionals withDocumentation [ + docbook_xsl + docbook_xml_dtd_45 + gtk-doc + ]; + + buildInputs = [ + accountsservice + lomiri.cmake-extras + glib + gobject-introspection + systemd + ]; + + nativeCheckInputs = [ + (python3.withPackages (ps: with ps; [ + pygobject3 + python-dbusmock + ])) + ]; + + checkInputs = [ + dbus-test-runner + gtest + ]; + + cmakeFlags = [ + "-DENABLE_TESTS=${lib.boolToString finalAttrs.doCheck}" + "-DGSETTINGS_LOCALINSTALL=ON" + "-DGSETTINGS_COMPILE=ON" + ]; + + makeFlags = lib.optionals withDocumentation [ + # gtk-doc doesn't call ld with the correct arguments + # ld: ...: undefined reference to symbol 'strncpy@@GLIBC_2.2.5', 'qsort@@GLIBC_2.2.5' + "LD=${stdenv.cc.targetPrefix}cc" + ]; + + doCheck = stdenv.buildPlatform.canExecute stdenv.hostPlatform; + + preCheck = '' + # test-client imports gir, whose solib entry points to final store location + install -Dm644 libmessaging-menu/libmessaging-menu.so.0.0.0 $out/lib/libmessaging-menu.so.0 + ''; + + postCheck = '' + # remove the above solib-installation, let it be done properly + rm -r $out + ''; + + preInstall = lib.optionalString withDocumentation '' + # installing regenerates docs, generated files are created without write permissions, errors out while trying to overwrite them + chmod +w doc/reference/html/* + ''; + + passthru = { + ayatana-indicators = [ + "ayatana-indicator-messages" + ]; + tests = { + pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage; + vm = nixosTests.ayatana-indicators; + }; + updateScript = gitUpdater { }; + }; + + meta = with lib; { + description = "Ayatana Indicator Messages Applet"; + longDescription = '' + The -messages Ayatana System Indicator is the messages menu indicator for Unity7, MATE and Lomiri (optionally for + others, e.g. XFCE, LXDE). + ''; + homepage = "https://github.com/AyatanaIndicators/ayatana-indicator-messages"; + license = licenses.gpl3Only; + platforms = platforms.linux; + maintainers = with maintainers; [ OPNA2608 ]; + pkgConfigModules = [ + "messaging-menu" + ]; + }; +}) diff --git a/pkgs/by-name/br/bruno/package.nix b/pkgs/by-name/br/bruno/package.nix index 66d5126c5f31..9be7b663d4f3 100644 --- a/pkgs/by-name/br/bruno/package.nix +++ b/pkgs/by-name/br/bruno/package.nix @@ -15,11 +15,11 @@ stdenv.mkDerivation rec { pname = "bruno"; - version = "1.2.0"; + version = "1.3.0"; src = fetchurl { url = "https://github.com/usebruno/bruno/releases/download/v${version}/bruno_${version}_amd64_linux.deb"; - hash = "sha256-60YwXAukGnMiaYxVOcUgGa/r/If1pJC6pMyyltTfd1c="; + hash = "sha256-E9aVyZWqY8XTwoUbHaj8VM32Eex7GNQcEpg8Hkk2O0U="; }; nativeBuildInputs = [ autoPatchelfHook dpkg wrapGAppsHook ]; diff --git a/pkgs/applications/editors/cosmic-edit/Cargo.lock b/pkgs/by-name/co/cosmic-edit/Cargo.lock similarity index 75% rename from pkgs/applications/editors/cosmic-edit/Cargo.lock rename to pkgs/by-name/co/cosmic-edit/Cargo.lock index 7a0af40f0bc5..4a0708f24f15 100644 --- a/pkgs/applications/editors/cosmic-edit/Cargo.lock +++ b/pkgs/by-name/co/cosmic-edit/Cargo.lock @@ -9,7 +9,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "80179d7dd5d7e8c285d67c4a1e652972a92de7475beddfb92028c76463b13225" dependencies = [ "ab_glyph_rasterizer", - "owned_ttf_parser", + "owned_ttf_parser 0.20.0", ] [[package]] @@ -49,9 +49,9 @@ source = "git+https://github.com/wash2/accesskit.git?tag=winit-0.28#db6f2587f663 dependencies = [ "accesskit", "accesskit_consumer", - "async-channel", + "async-channel 1.9.0", "atspi", - "futures-lite", + "futures-lite 1.13.0", "log", "serde", "zbus", @@ -64,7 +64,7 @@ source = "git+https://github.com/wash2/accesskit.git?tag=winit-0.28#db6f2587f663 dependencies = [ "accesskit", "accesskit_consumer", - "arrayvec", + "arrayvec 0.7.4", "once_cell", "paste", "windows", @@ -79,7 +79,7 @@ dependencies = [ "accesskit_macos", "accesskit_unix", "accesskit_windows", - "winit", + "winit 0.28.6", ] [[package]] @@ -97,6 +97,12 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" +[[package]] +name = "adler32" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aae1277d39aeec15cb388266ecc24b11c80469deae6067e17a1a7aa9e5c1f234" + [[package]] name = "ahash" version = "0.7.7" @@ -114,7 +120,7 @@ version = "0.8.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "91429305e9f0a25f6205c5b8e0d2db09e0708a7a6df0f42212bb56c32c8ac97a" dependencies = [ - "cfg-if", + "cfg-if 1.0.0", "once_cell", "version_check", "zerocopy", @@ -147,6 +153,19 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3aa2999eb46af81abb65c2d30d446778d7e613b60bbf4e174a027e80f90a3c14" +[[package]] +name = "andrew" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8c4afb09dd642feec8408e33f92f3ffc4052946f6b20f32fb99c1f58cd4fa7cf" +dependencies = [ + "bitflags 1.3.2", + "rusttype", + "walkdir", + "xdg", + "xml-rs", +] + [[package]] name = "android-activity" version = "0.4.3" @@ -159,9 +178,9 @@ dependencies = [ "jni-sys", "libc", "log", - "ndk", + "ndk 0.7.0", "ndk-context", - "ndk-sys", + "ndk-sys 0.4.1+23.1.7779620", "num_enum 0.6.1", ] @@ -207,12 +226,24 @@ version = "0.3.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6b4930d2cb77ce62f89ee5d5289b4ac049559b1c45539271f5ed4fdc7db34545" +[[package]] +name = "arrayvec" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b" + [[package]] name = "arrayvec" version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711" +[[package]] +name = "as-raw-xcb-connection" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2d5f312b0a56c5cdf967c0aeb67f6289603354951683bc97ddc595ab974ba9aa" + [[package]] name = "ash" version = "0.37.3+1.3.251" @@ -222,6 +253,24 @@ dependencies = [ "libloading 0.7.4", ] +[[package]] +name = "ashpd" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7370b58af1d7e96df3ca0f454b57e69acf9aa42ed2d7337bd206923bae0d5754" +dependencies = [ + "enumflags2", + "futures-channel", + "futures-util", + "once_cell", + "rand", + "serde", + "serde_repr", + "tokio", + "url", + "zbus", +] + [[package]] name = "async-broadcast" version = "0.5.1" @@ -244,16 +293,29 @@ dependencies = [ ] [[package]] -name = "async-executor" -version = "1.6.0" +name = "async-channel" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b0c4a4f319e45986f347ee47fef8bf5e81c9abc3f6f58dc2391439f30df65f0" +checksum = "1ca33f4bc4ed1babef42cad36cc1f51fa88be00420404e5b1e80ab1b18f7678c" dependencies = [ - "async-lock", + "concurrent-queue", + "event-listener 4.0.0", + "event-listener-strategy", + "futures-core", + "pin-project-lite", +] + +[[package]] +name = "async-executor" +version = "1.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "17ae5ebefcc48e7452b4987947920dac9450be1110cadf34d1b8c116bdbaf97c" +dependencies = [ + "async-lock 3.1.2", "async-task", "concurrent-queue", "fastrand 2.0.1", - "futures-lite", + "futures-lite 2.0.1", "slab", ] @@ -263,10 +325,10 @@ version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "279cf904654eeebfa37ac9bb1598880884924aab82e290aa65c9e77a0e142e06" dependencies = [ - "async-lock", + "async-lock 2.8.0", "autocfg", "blocking", - "futures-lite", + "futures-lite 1.13.0", ] [[package]] @@ -275,38 +337,37 @@ version = "1.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0fc5b45d93ef0529756f812ca52e44c221b35341892d3dcc34132ac02f3dd2af" dependencies = [ - "async-lock", + "async-lock 2.8.0", "autocfg", - "cfg-if", + "cfg-if 1.0.0", "concurrent-queue", - "futures-lite", + "futures-lite 1.13.0", "log", "parking", "polling 2.8.0", "rustix 0.37.27", "slab", - "socket2", + "socket2 0.4.10", "waker-fn", ] [[package]] name = "async-io" -version = "2.1.0" +version = "2.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10da8f3146014722c89e7859e1d7bb97873125d7346d10ca642ffab794355828" +checksum = "d6d3b15875ba253d1110c740755e246537483f152fa334f91abd7fe84c88b3ff" dependencies = [ - "async-lock", - "cfg-if", + "async-lock 3.1.2", + "cfg-if 1.0.0", "concurrent-queue", "futures-io", - "futures-lite", + "futures-lite 2.0.1", "parking", - "polling 3.3.0", - "rustix 0.38.21", + "polling 3.3.1", + "rustix 0.38.25", "slab", "tracing", - "waker-fn", - "windows-sys 0.48.0", + "windows-sys 0.52.0", ] [[package]] @@ -318,6 +379,17 @@ dependencies = [ "event-listener 2.5.3", ] +[[package]] +name = "async-lock" +version = "3.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dea8b3453dd7cc96711834b75400d671b73e3656975fa68d9f277163b7f7e316" +dependencies = [ + "event-listener 4.0.0", + "event-listener-strategy", + "pin-project-lite", +] + [[package]] name = "async-process" version = "1.8.1" @@ -325,13 +397,13 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ea6438ba0a08d81529c69b36700fa2f95837bfe3e776ab39cde9c14d9149da88" dependencies = [ "async-io 1.13.0", - "async-lock", + "async-lock 2.8.0", "async-signal", "blocking", - "cfg-if", - "event-listener 3.0.1", - "futures-lite", - "rustix 0.38.21", + "cfg-if 1.0.0", + "event-listener 3.1.0", + "futures-lite 1.13.0", + "rustix 0.38.25", "windows-sys 0.48.0", ] @@ -343,7 +415,7 @@ checksum = "5fd55a5ba1179988837d24ab4c7cc8ed6efdeff578ede0416b4225a5fca35bd0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -352,13 +424,13 @@ version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9e47d90f65a225c4527103a8d747001fc56e375203592b25ad103e1ca13124c5" dependencies = [ - "async-io 2.1.0", - "async-lock", + "async-io 2.2.1", + "async-lock 2.8.0", "atomic-waker", - "cfg-if", + "cfg-if 1.0.0", "futures-core", "futures-io", - "rustix 0.38.21", + "rustix 0.38.25", "signal-hook-registry", "slab", "windows-sys 0.48.0", @@ -378,7 +450,7 @@ checksum = "a66537f1bb974b254c98ed142ff995236e81b9d0fe4db0575f46612cb15eb0f9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -402,10 +474,9 @@ checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" [[package]] name = "atomicwrites" version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4d45f362125ed144544e57b0ec6de8fd6a296d41a6252fc4a20c0cf12e9ed3a" +source = "git+https://github.com/jackpot51/rust-atomicwrites#043ab4859d53ffd3d55334685303d8df39c9f768" dependencies = [ - "rustix 0.38.21", + "rustix 0.38.25", "tempfile", "windows-sys 0.48.0", ] @@ -420,7 +491,7 @@ dependencies = [ "async-trait", "atspi-macros", "enumflags2", - "futures-lite", + "futures-lite 1.13.0", "serde", "tracing", "zbus", @@ -451,9 +522,9 @@ checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837" dependencies = [ "addr2line", "cc", - "cfg-if", + "cfg-if 1.0.0", "libc", - "miniz_oxide", + "miniz_oxide 0.7.1", "object", "rustc-demangle", ] @@ -545,20 +616,31 @@ dependencies = [ [[package]] name = "blocking" -version = "1.4.1" +version = "1.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c36a4d0d48574b3dd360b4b7d95cc651d2b6557b6402848a27d4b228a473e2a" +checksum = "6a37913e8dc4ddcc604f0c6d3bf2887c995153af3611de9e23c352b44c1b9118" dependencies = [ - "async-channel", - "async-lock", + "async-channel 2.1.1", + "async-lock 3.1.2", "async-task", "fastrand 2.0.1", "futures-io", - "futures-lite", + "futures-lite 2.0.1", "piper", "tracing", ] +[[package]] +name = "bstr" +version = "1.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "542f33a8835a0884b006a0c3df3dadd99c0c3f296ed26c2fdc8028e01ad6230c" +dependencies = [ + "memchr", + "regex-automata", + "serde", +] + [[package]] name = "bumpalo" version = "3.14.0" @@ -582,7 +664,7 @@ checksum = "965ab7eb5f8f97d2a083c799f3a1b994fc397b2fe2da5d1da1626ce15a39f2b1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -591,6 +673,12 @@ version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" +[[package]] +name = "bytes" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223" + [[package]] name = "cairo-sys-rs" version = "0.18.2" @@ -601,6 +689,16 @@ dependencies = [ "system-deps", ] +[[package]] +name = "calloop" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b036167e76041694579972c28cf4877b4f92da222560ddb49008937b6a6727c" +dependencies = [ + "log", + "nix 0.18.0", +] + [[package]] name = "calloop" version = "0.10.6" @@ -635,6 +733,12 @@ dependencies = [ "target-lexicon", ] +[[package]] +name = "cfg-if" +version = "0.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822" + [[package]] name = "cfg-if" version = "1.0.0" @@ -697,9 +801,25 @@ dependencies = [ "bitflags 1.3.2", "block", "cocoa-foundation", - "core-foundation", - "core-graphics", - "foreign-types", + "core-foundation 0.9.3", + "core-graphics 0.22.3", + "foreign-types 0.3.2", + "libc", + "objc", +] + +[[package]] +name = "cocoa" +version = "0.25.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6140449f97a6e97f9511815c5632d84c8aacf8ac271ad77c559218161a1373c" +dependencies = [ + "bitflags 1.3.2", + "block", + "cocoa-foundation", + "core-foundation 0.9.3", + "core-graphics 0.23.1", + "foreign-types 0.5.0", "libc", "objc", ] @@ -712,7 +832,7 @@ checksum = "8c6234cbb2e4c785b456c0644748b1ac416dd045799740356f8363dfe00c93f7" dependencies = [ "bitflags 1.3.2", "block", - "core-foundation", + "core-foundation 0.9.3", "core-graphics-types", "libc", "objc", @@ -749,22 +869,50 @@ dependencies = [ "crossbeam-utils", ] +[[package]] +name = "core-foundation" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57d24c7a13c43e870e37c1556b74555437870a04514f7685f5b354e090567171" +dependencies = [ + "core-foundation-sys 0.7.0", + "libc", +] + [[package]] name = "core-foundation" version = "0.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146" dependencies = [ - "core-foundation-sys", + "core-foundation-sys 0.8.4", "libc", ] +[[package]] +name = "core-foundation-sys" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b3a71ab494c0b5b860bdc8407ae08978052417070c2ced38573a9157ad75b8ac" + [[package]] name = "core-foundation-sys" version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa" +[[package]] +name = "core-graphics" +version = "0.19.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b3889374e6ea6ab25dba90bb5d96202f61108058361f6dc72e8b03e6f8bbe923" +dependencies = [ + "bitflags 1.3.2", + "core-foundation 0.7.0", + "foreign-types 0.3.2", + "libc", +] + [[package]] name = "core-graphics" version = "0.22.3" @@ -772,9 +920,22 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2581bbab3b8ffc6fcbd550bf46c355135d16e9ff2a6ea032ad6b9bf1d7efe4fb" dependencies = [ "bitflags 1.3.2", - "core-foundation", + "core-foundation 0.9.3", "core-graphics-types", - "foreign-types", + "foreign-types 0.3.2", + "libc", +] + +[[package]] +name = "core-graphics" +version = "0.23.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "970a29baf4110c26fedbc7f82107d42c23f7e88e404c4577ed73fe99ff85a212" +dependencies = [ + "bitflags 1.3.2", + "core-foundation 0.9.3", + "core-graphics-types", + "foreign-types 0.5.0", "libc", ] @@ -785,14 +946,27 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2bb142d41022986c1d8ff29103a1411c8a3dfad3552f87a4f8dc50d61d4f4e33" dependencies = [ "bitflags 1.3.2", - "core-foundation", + "core-foundation 0.9.3", "libc", ] +[[package]] +name = "core-video-sys" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34ecad23610ad9757664d644e369246edde1803fcb43ed72876565098a5d3828" +dependencies = [ + "cfg-if 0.1.10", + "core-foundation-sys 0.7.0", + "core-graphics 0.19.2", + "libc", + "objc", +] + [[package]] name = "cosmic-config" version = "0.1.0" -source = "git+https://github.com/pop-os/libcosmic?branch=menu#ef6c21b647480e8bfea80e3dc628079de90f51c3" +source = "git+https://github.com/pop-os/libcosmic#d6c8fbe268c3d37639098bc0d2021299e5dcf350" dependencies = [ "atomicwrites", "cosmic-config-derive", @@ -806,7 +980,7 @@ dependencies = [ [[package]] name = "cosmic-config-derive" version = "0.1.0" -source = "git+https://github.com/pop-os/libcosmic?branch=menu#ef6c21b647480e8bfea80e3dc628079de90f51c3" +source = "git+https://github.com/pop-os/libcosmic#d6c8fbe268c3d37639098bc0d2021299e5dcf350" dependencies = [ "quote", "syn 1.0.109", @@ -818,14 +992,22 @@ version = "0.1.0" dependencies = [ "cosmic-text 0.10.0", "env_logger", - "fontdb 0.15.0", + "fork", + "grep", "i18n-embed", "i18n-embed-fl", + "ignore", "lazy_static", "libcosmic", "log", + "notify", "rfd", "rust-embed", + "serde", + "syntect", + "systemicons", + "tokio", + "two-face", ] [[package]] @@ -851,19 +1033,20 @@ dependencies = [ [[package]] name = "cosmic-text" version = "0.10.0" -source = "git+https://github.com/pop-os/cosmic-text?branch=vi-editor#e62fea5efddb20fd1bc518e0d733a86f6858fa73" +source = "git+https://github.com/pop-os/cosmic-text#daa5a6615c52d352e9c87d30e1ab35b8dd14bd91" dependencies = [ - "fontdb 0.15.0", + "cosmic_undo_2", + "fontdb 0.16.0", "libm", "log", + "modit", "rangemap", "rustc-hash", "rustybuzz 0.11.0", - "self_cell 1.0.1", + "self_cell 1.0.2", "swash", "syntect", "sys-locale", - "two-face", "unicode-bidi", "unicode-linebreak", "unicode-script", @@ -873,7 +1056,7 @@ dependencies = [ [[package]] name = "cosmic-theme" version = "0.1.0" -source = "git+https://github.com/pop-os/libcosmic?branch=menu#ef6c21b647480e8bfea80e3dc628079de90f51c3" +source = "git+https://github.com/pop-os/libcosmic#d6c8fbe268c3d37639098bc0d2021299e5dcf350" dependencies = [ "almost", "cosmic-config", @@ -884,6 +1067,17 @@ dependencies = [ "serde", ] +[[package]] +name = "cosmic_undo_2" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "afd123aba915d4643617882bd494db7aaa4be4f4ed84e7b8cee2fd45efe41afe" +dependencies = [ + "derivative", + "rustc_version", + "serde", +] + [[package]] name = "cpufeatures" version = "0.2.11" @@ -899,7 +1093,21 @@ version = "1.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d" dependencies = [ - "cfg-if", + "cfg-if 1.0.0", +] + +[[package]] +name = "crossbeam" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2801af0d36612ae591caa9568261fddce32ce6e08a7275ea334a06a4ad021a2c" +dependencies = [ + "cfg-if 1.0.0", + "crossbeam-channel", + "crossbeam-deque", + "crossbeam-epoch", + "crossbeam-queue", + "crossbeam-utils", ] [[package]] @@ -908,7 +1116,7 @@ version = "0.5.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a33c2bf77f2df06183c3aa30d1e96c0695a313d4f9c453cc3762a6db39f99200" dependencies = [ - "cfg-if", + "cfg-if 1.0.0", "crossbeam-utils", ] @@ -918,7 +1126,7 @@ version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ce6fd6f855243022dcecf8702fef0c297d4338e226845fe067f6341ad9fa0cef" dependencies = [ - "cfg-if", + "cfg-if 1.0.0", "crossbeam-epoch", "crossbeam-utils", ] @@ -930,19 +1138,29 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ae211234986c545741a7dc064309f67ee1e5ad243d0e48335adc0484d960bcc7" dependencies = [ "autocfg", - "cfg-if", + "cfg-if 1.0.0", "crossbeam-utils", "memoffset 0.9.0", "scopeguard", ] +[[package]] +name = "crossbeam-queue" +version = "0.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d1cfb3ea8a53f37c40dea2c7bedcbd88bdfae54f5e2175d6ecaff1c988353add" +dependencies = [ + "cfg-if 1.0.0", + "crossbeam-utils", +] + [[package]] name = "crossbeam-utils" version = "0.8.16" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294" dependencies = [ - "cfg-if", + "cfg-if 1.0.0", ] [[package]] @@ -977,6 +1195,22 @@ dependencies = [ "serde", ] +[[package]] +name = "ctor" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "37e366bff8cd32dd8754b0991fb66b279dc48f598c3a18914852a6673deef583" +dependencies = [ + "quote", + "syn 2.0.39", +] + +[[package]] +name = "cty" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b365fabc795046672053e29c954733ec3b05e4be654ab130fe8f1f94d7051f35" + [[package]] name = "d3d12" version = "0.6.0" @@ -988,14 +1222,38 @@ dependencies = [ "winapi", ] +[[package]] +name = "darling" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0d706e75d87e35569db781a9b5e2416cff1236a47ed380831f959382ccd5f858" +dependencies = [ + "darling_core 0.10.2", + "darling_macro 0.10.2", +] + [[package]] name = "darling" version = "0.20.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0209d94da627ab5605dcccf08bb18afa5009cfbef48d8a8b7d7bdbc79be25c5e" dependencies = [ - "darling_core", - "darling_macro", + "darling_core 0.20.3", + "darling_macro 0.20.3", +] + +[[package]] +name = "darling_core" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0c960ae2da4de88a91b2d920c2a7233b400bc33cb28453a2987822d8392519b" +dependencies = [ + "fnv", + "ident_case", + "proc-macro2", + "quote", + "strsim 0.9.3", + "syn 1.0.109", ] [[package]] @@ -1008,8 +1266,19 @@ dependencies = [ "ident_case", "proc-macro2", "quote", - "strsim", - "syn 2.0.38", + "strsim 0.10.0", + "syn 2.0.39", +] + +[[package]] +name = "darling_macro" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d9b5a2f4ac4969822c62224815d069952656cadc7084fdca9751e6d959189b72" +dependencies = [ + "darling_core 0.10.2", + "quote", + "syn 1.0.109", ] [[package]] @@ -1018,9 +1287,9 @@ version = "0.20.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "836a9bbc7ad63342d6d6e7b815ccab164bc77a2d95d84bc3117a8c0d5c98e2d5" dependencies = [ - "darling_core", + "darling_core 0.20.3", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -1029,8 +1298,8 @@ version = "5.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856" dependencies = [ - "cfg-if", - "hashbrown 0.14.2", + "cfg-if 1.0.0", + "hashbrown 0.14.3", "lock_api", "once_cell", "parking_lot_core 0.9.9", @@ -1042,6 +1311,16 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8d7439c3735f405729d52c3fbbe4de140eaf938a1fe47d227c27f8254d4302a5" +[[package]] +name = "deflate" +version = "0.8.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73770f8e1fe7d64df17ca66ad28994a0a623ea497fa69486e14984e715c5d174" +dependencies = [ + "adler32", + "byteorder", +] + [[package]] name = "deranged" version = "0.3.9" @@ -1068,10 +1347,10 @@ version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4e8ef033054e131169b8f0f9a7af8f5533a9436fadf3c500ed547f730f07090d" dependencies = [ - "darling", + "darling 0.20.3", "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -1102,6 +1381,16 @@ dependencies = [ "dirs-sys 0.4.1", ] +[[package]] +name = "dirs-next" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b98cf8ebf19c3d1b223e151f99a4f9f0690dca41414773390fc824184ac833e1" +dependencies = [ + "cfg-if 1.0.0", + "dirs-sys-next", +] + [[package]] name = "dirs-sys" version = "0.3.7" @@ -1125,6 +1414,17 @@ dependencies = [ "windows-sys 0.48.0", ] +[[package]] +name = "dirs-sys-next" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d" +dependencies = [ + "libc", + "redox_users", + "winapi", +] + [[package]] name = "dispatch" version = "0.2.0" @@ -1139,7 +1439,16 @@ checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", +] + +[[package]] +name = "dlib" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b11f15d1e3268f140f68d390637d5e76d849782d971ae7063e0da69fe9709a76" +dependencies = [ + "libloading 0.6.7", ] [[package]] @@ -1163,12 +1472,65 @@ version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9ea835d29036a4087793836fa931b08837ad5e957da9e23886b29586fb9b6650" +[[package]] +name = "drm" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97fb1b703ffbc7ebd216eba7900008049a56ace55580ecb2ee7fa801e8d8be87" +dependencies = [ + "bitflags 2.4.1", + "bytemuck", + "drm-ffi", + "drm-fourcc", + "nix 0.27.1", +] + +[[package]] +name = "drm-ffi" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba7d1c19c4b6270e89d59fb27dc6d02a317c658a8a54e54781e1db9b5947595d" +dependencies = [ + "drm-sys", + "nix 0.27.1", +] + +[[package]] +name = "drm-fourcc" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0aafbcdb8afc29c1a7ee5fbe53b5d62f4565b35a042a662ca9fecd0b54dae6f4" + +[[package]] +name = "drm-sys" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a4f1c0468062a56cd5705f1e3b5409eb286d5596a2028ec8e947595d7e715ae" + [[package]] name = "either" version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07" +[[package]] +name = "encoding_rs" +version = "0.8.33" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1" +dependencies = [ + "cfg-if 1.0.0", +] + +[[package]] +name = "encoding_rs_io" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1cc3c5651fb62ab8aa3103998dade57efdd028544bd300516baa31840c252a83" +dependencies = [ + "encoding_rs", +] + [[package]] name = "enumflags2" version = "0.7.8" @@ -1187,14 +1549,14 @@ checksum = "f95e2801cd355d4a1a3e3953ce6ee5ae9603a5c833455343a8bfe3f44d418246" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] name = "env_logger" -version = "0.10.0" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85cdab6a89accf66733ad5a1693a4dcced6aeff64602b634530dd73c1f3ee9f0" +checksum = "95b3f3e67048839cb0d0781f445682a35113da7121f7c949db0e2be96a4fbece" dependencies = [ "humantime", "is-terminal", @@ -1211,12 +1573,12 @@ checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" [[package]] name = "errno" -version = "0.3.5" +version = "0.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac3e13f66a2f95e32a39eaa81f6b95d42878ca0e1db0c7543723dfe12557e860" +checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245" dependencies = [ "libc", - "windows-sys 0.48.0", + "windows-sys 0.52.0", ] [[package]] @@ -1231,9 +1593,9 @@ dependencies = [ [[package]] name = "etagere" -version = "0.2.8" +version = "0.2.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcf22f748754352918e082e0039335ee92454a5d62bcaf69b5e8daf5907d9644" +checksum = "306960881d6c46bd0dd6b7f07442a441418c08d0d3e63d8d080b0f64c6343e4e" dependencies = [ "euclid", "svg_fmt", @@ -1256,15 +1618,36 @@ checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0" [[package]] name = "event-listener" -version = "3.0.1" +version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01cec0252c2afff729ee6f00e903d479fba81784c8e2bd77447673471fdfaea1" +checksum = "d93877bcde0eb80ca09131a08d23f0a5c18a620b01db137dba666d18cd9b30c2" dependencies = [ "concurrent-queue", "parking", "pin-project-lite", ] +[[package]] +name = "event-listener" +version = "4.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "770d968249b5d99410d61f5bf89057f3199a077a04d087092f58e7d10692baae" +dependencies = [ + "concurrent-queue", + "parking", + "pin-project-lite", +] + +[[package]] +name = "event-listener-strategy" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "958e4d70b6d5e81971bebec42271ec641e7ff4e170a6fa605f2b8a8b65cb97d3" +dependencies = [ + "event-listener 4.0.0", + "pin-project-lite", +] + [[package]] name = "exr" version = "1.6.4" @@ -1275,7 +1658,7 @@ dependencies = [ "flume", "half", "lebe", - "miniz_oxide", + "miniz_oxide 0.7.1", "rayon-core", "smallvec", "zune-inflate", @@ -1317,7 +1700,7 @@ version = "0.2.22" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d4029edd3e734da6fe05b6cd7bd2960760a616bd2ddd0d59a0124746d6272af0" dependencies = [ - "cfg-if", + "cfg-if 1.0.0", "libc", "redox_syscall 0.3.5", "windows-sys 0.48.0", @@ -1339,7 +1722,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e" dependencies = [ "crc32fast", - "miniz_oxide", + "miniz_oxide 0.7.1", ] [[package]] @@ -1350,12 +1733,9 @@ checksum = "98de4bbd547a563b716d8dfa9aad1cb19bfab00f4fa09a6a4ed21dbcf44ce9c4" [[package]] name = "float_next_after" -version = "0.1.5" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fc612c5837986b7104a87a0df74a5460931f1c5274be12f8d0f40aa2f30d632" -dependencies = [ - "num-traits", -] +checksum = "8bf7cc16383c4b8d58b9905a8509f02926ce3058053c056376248d958c9df1e8" [[package]] name = "fluent" @@ -1378,7 +1758,7 @@ dependencies = [ "intl-memoizer", "intl_pluralrules", "rustc-hash", - "self_cell 0.10.2", + "self_cell 0.10.3", "smallvec", "unic-langid", ] @@ -1445,16 +1825,16 @@ dependencies = [ [[package]] name = "fontdb" -version = "0.15.0" +version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "020e203f177c0fb250fb19455a252e838d2bbbce1f80f25ecc42402aafa8cd38" +checksum = "98b88c54a38407f7352dd2c4238830115a6377741098ffd1f997c813d0e088a6" dependencies = [ "fontconfig-parser", "log", - "memmap2 0.8.0", + "memmap2 0.9.0", "slotmap", "tinyvec", - "ttf-parser 0.19.2", + "ttf-parser 0.20.0", ] [[package]] @@ -1463,7 +1843,28 @@ version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" dependencies = [ - "foreign-types-shared", + "foreign-types-shared 0.1.1", +] + +[[package]] +name = "foreign-types" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d737d9aa519fb7b749cbc3b962edcf310a8dd1f4b67c91c4f83975dbdd17d965" +dependencies = [ + "foreign-types-macros", + "foreign-types-shared 0.3.1", +] + +[[package]] +name = "foreign-types-macros" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", ] [[package]] @@ -1473,10 +1874,25 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" [[package]] -name = "form_urlencoded" -version = "1.2.0" +name = "foreign-types-shared" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a62bc1cf6f830c2ec14a513a9fb124d0a213a629668a4186f329db21fe045652" +checksum = "aa9a19cbb55df58761df49b23516a86d432839add4af60fc256da840f66ed35b" + +[[package]] +name = "fork" +version = "0.1.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf2ca97a59201425e7ee4d197c9c4fea282fe87a97d666a580bda889b95b8e88" +dependencies = [ + "libc", +] + +[[package]] +name = "form_urlencoded" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456" dependencies = [ "percent-encoding", ] @@ -1577,6 +1993,20 @@ dependencies = [ "waker-fn", ] +[[package]] +name = "futures-lite" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3831c2651acb5177cbd83943f3d9c8912c5ad03c76afcc0e9511ba568ec5ebb" +dependencies = [ + "fastrand 2.0.1", + "futures-core", + "futures-io", + "memchr", + "parking", + "pin-project-lite", +] + [[package]] name = "futures-macro" version = "0.3.29" @@ -1585,7 +2015,7 @@ checksum = "53b153fd91e4b0147f4aced87be237c98248656bb01050b96bf3ee89220a8ddb" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -1669,18 +2099,38 @@ dependencies = [ ] [[package]] -name = "getrandom" -version = "0.2.10" +name = "gethostname" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427" +checksum = "bb65d4ba3173c56a500b555b532f72c42e8d1fe64962b518897f8959fae2c177" dependencies = [ - "cfg-if", + "libc", + "winapi", +] + +[[package]] +name = "getrandom" +version = "0.2.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fe9006bed769170c11f845cf00c7c1e9092aeb3f268e007c3e760ac68008070f" +dependencies = [ + "cfg-if 1.0.0", "js-sys", "libc", "wasi", "wasm-bindgen", ] +[[package]] +name = "gif" +version = "0.11.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3edd93c6756b4dfaf2709eafcc345ba2636565295c198a9cfbf75fa5e3e00b06" +dependencies = [ + "color_quant", + "weezl", +] + [[package]] name = "gif" version = "0.12.0" @@ -1693,9 +2143,9 @@ dependencies = [ [[package]] name = "gimli" -version = "0.28.0" +version = "0.28.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fb8d784f27acf97159b40fc4db5ecd8aa23b9ad5ef69cdd136d3bc80665f0c0" +checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253" [[package]] name = "gio-sys" @@ -1726,6 +2176,25 @@ dependencies = [ "system-deps", ] +[[package]] +name = "glob" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" + +[[package]] +name = "globset" +version = "0.4.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57da3b9b5b85bd66f31093f8c408b90a74431672542466497dcbdfdc02034be1" +dependencies = [ + "aho-corasick", + "bstr", + "log", + "regex-automata", + "regex-syntax 0.8.2", +] + [[package]] name = "glow" version = "0.12.3" @@ -1801,7 +2270,7 @@ checksum = "cc11df1ace8e7e564511f53af41f3e42ddc95b56fd07b3f4445d2a6048bc682c" dependencies = [ "bitflags 2.4.1", "gpu-descriptor-types", - "hashbrown 0.14.2", + "hashbrown 0.14.3", ] [[package]] @@ -1813,6 +2282,85 @@ dependencies = [ "bitflags 2.4.1", ] +[[package]] +name = "grep" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e2b024ec1e686cb64d78beb852030b0e632af93817f1ed25be0173af0e94939" +dependencies = [ + "grep-cli", + "grep-matcher", + "grep-printer", + "grep-regex", + "grep-searcher", +] + +[[package]] +name = "grep-cli" +version = "0.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ea40788c059ab8b622c4d074732750bfb3bd2912e2dd58eabc11798a4d5ad725" +dependencies = [ + "bstr", + "globset", + "libc", + "log", + "termcolor", + "winapi-util", +] + +[[package]] +name = "grep-matcher" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "47a3141a10a43acfedc7c98a60a834d7ba00dfe7bec9071cbfc19b55b292ac02" +dependencies = [ + "memchr", +] + +[[package]] +name = "grep-printer" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "743c12a03c8aee38b6e5bd0168d8ebb09345751323df4a01c56e792b1f38ceb2" +dependencies = [ + "bstr", + "grep-matcher", + "grep-searcher", + "log", + "serde", + "serde_json", + "termcolor", +] + +[[package]] +name = "grep-regex" +version = "0.1.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f748bb135ca835da5cbc67ca0e6955f968db9c5df74ca4f56b18e1ddbc68230d" +dependencies = [ + "bstr", + "grep-matcher", + "log", + "regex-automata", + "regex-syntax 0.8.2", +] + +[[package]] +name = "grep-searcher" +version = "0.1.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba536ae4f69bec62d8839584dd3153d3028ef31bb229f04e09fb5a9e5a193c54" +dependencies = [ + "bstr", + "encoding_rs", + "encoding_rs_io", + "grep-matcher", + "log", + "memchr", + "memmap2 0.9.0", +] + [[package]] name = "grid" version = "0.11.0" @@ -1853,7 +2401,7 @@ version = "2.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bc52e53916c08643f1b56ec082790d1e86a32e58dc5268f897f313fbae7b4872" dependencies = [ - "cfg-if", + "cfg-if 1.0.0", "crunchy", ] @@ -1868,9 +2416,9 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.14.2" +version = "0.14.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f93e7192158dbcda357bdec5fb5788eebf8bbac027f3f33e719d29135ae84156" +checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604" dependencies = [ "ahash 0.8.6", "allocator-api2", @@ -1931,7 +2479,7 @@ dependencies = [ "serde", "serde_derive", "thiserror", - "toml 0.8.6", + "toml 0.8.8", "unic-langid", ] @@ -1973,28 +2521,28 @@ dependencies = [ "proc-macro-error", "proc-macro2", "quote", - "strsim", - "syn 2.0.38", + "strsim 0.10.0", + "syn 2.0.39", "unic-langid", ] [[package]] name = "i18n-embed-impl" -version = "0.8.2" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2a4d5bff745c9a6e1459c490059281b353a4ab0a4e1e58b3eeeaef71f97d07b" +checksum = "81093c4701672f59416582fe3145676126fd23ba5db910acad0793c1108aaa58" dependencies = [ "find-crate", "i18n-config", "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] name = "iced" version = "0.10.0" -source = "git+https://github.com/pop-os/libcosmic?branch=menu#ef6c21b647480e8bfea80e3dc628079de90f51c3" +source = "git+https://github.com/pop-os/libcosmic#d6c8fbe268c3d37639098bc0d2021299e5dcf350" dependencies = [ "iced_accessibility", "iced_core", @@ -2002,14 +2550,14 @@ dependencies = [ "iced_renderer", "iced_widget", "iced_winit", - "image", + "image 0.24.7", "thiserror", ] [[package]] name = "iced_accessibility" version = "0.1.0" -source = "git+https://github.com/pop-os/libcosmic?branch=menu#ef6c21b647480e8bfea80e3dc628079de90f51c3" +source = "git+https://github.com/pop-os/libcosmic#d6c8fbe268c3d37639098bc0d2021299e5dcf350" dependencies = [ "accesskit", "accesskit_winit", @@ -2018,12 +2566,13 @@ dependencies = [ [[package]] name = "iced_core" version = "0.10.0" -source = "git+https://github.com/pop-os/libcosmic?branch=menu#ef6c21b647480e8bfea80e3dc628079de90f51c3" +source = "git+https://github.com/pop-os/libcosmic#d6c8fbe268c3d37639098bc0d2021299e5dcf350" dependencies = [ "bitflags 1.3.2", "instant", "log", "palette", + "serde", "thiserror", "twox-hash", ] @@ -2031,11 +2580,12 @@ dependencies = [ [[package]] name = "iced_futures" version = "0.7.0" -source = "git+https://github.com/pop-os/libcosmic?branch=menu#ef6c21b647480e8bfea80e3dc628079de90f51c3" +source = "git+https://github.com/pop-os/libcosmic#d6c8fbe268c3d37639098bc0d2021299e5dcf350" dependencies = [ "futures", "iced_core", "log", + "tokio", "wasm-bindgen-futures", "wasm-timer", ] @@ -2043,38 +2593,38 @@ dependencies = [ [[package]] name = "iced_graphics" version = "0.9.0" -source = "git+https://github.com/pop-os/libcosmic?branch=menu#ef6c21b647480e8bfea80e3dc628079de90f51c3" +source = "git+https://github.com/pop-os/libcosmic#d6c8fbe268c3d37639098bc0d2021299e5dcf350" dependencies = [ "bitflags 1.3.2", "bytemuck", "glam", "half", "iced_core", - "image", + "image 0.24.7", "kamadak-exif", "log", "lyon_path", - "raw-window-handle", + "raw-window-handle 0.5.2", "thiserror", ] [[package]] name = "iced_renderer" version = "0.1.0" -source = "git+https://github.com/pop-os/libcosmic?branch=menu#ef6c21b647480e8bfea80e3dc628079de90f51c3" +source = "git+https://github.com/pop-os/libcosmic#d6c8fbe268c3d37639098bc0d2021299e5dcf350" dependencies = [ "iced_graphics", "iced_tiny_skia", "iced_wgpu", "log", - "raw-window-handle", + "raw-window-handle 0.5.2", "thiserror", ] [[package]] name = "iced_runtime" version = "0.1.1" -source = "git+https://github.com/pop-os/libcosmic?branch=menu#ef6c21b647480e8bfea80e3dc628079de90f51c3" +source = "git+https://github.com/pop-os/libcosmic#d6c8fbe268c3d37639098bc0d2021299e5dcf350" dependencies = [ "iced_core", "iced_futures", @@ -2084,7 +2634,7 @@ dependencies = [ [[package]] name = "iced_style" version = "0.9.0" -source = "git+https://github.com/pop-os/libcosmic?branch=menu#ef6c21b647480e8bfea80e3dc628079de90f51c3" +source = "git+https://github.com/pop-os/libcosmic#d6c8fbe268c3d37639098bc0d2021299e5dcf350" dependencies = [ "iced_core", "once_cell", @@ -2094,14 +2644,14 @@ dependencies = [ [[package]] name = "iced_tiny_skia" version = "0.1.0" -source = "git+https://github.com/pop-os/libcosmic?branch=menu#ef6c21b647480e8bfea80e3dc628079de90f51c3" +source = "git+https://github.com/pop-os/libcosmic#d6c8fbe268c3d37639098bc0d2021299e5dcf350" dependencies = [ "bytemuck", "cosmic-text 0.9.0", "iced_graphics", "kurbo", "log", - "raw-window-handle", + "raw-window-handle 0.5.2", "resvg", "rustc-hash", "softbuffer", @@ -2112,7 +2662,7 @@ dependencies = [ [[package]] name = "iced_wgpu" version = "0.11.1" -source = "git+https://github.com/pop-os/libcosmic?branch=menu#ef6c21b647480e8bfea80e3dc628079de90f51c3" +source = "git+https://github.com/pop-os/libcosmic#d6c8fbe268c3d37639098bc0d2021299e5dcf350" dependencies = [ "bitflags 1.3.2", "bytemuck", @@ -2124,7 +2674,7 @@ dependencies = [ "log", "lyon", "once_cell", - "raw-window-handle", + "raw-window-handle 0.5.2", "resvg", "rustc-hash", "twox-hash", @@ -2134,7 +2684,7 @@ dependencies = [ [[package]] name = "iced_widget" version = "0.1.3" -source = "git+https://github.com/pop-os/libcosmic?branch=menu#ef6c21b647480e8bfea80e3dc628079de90f51c3" +source = "git+https://github.com/pop-os/libcosmic#d6c8fbe268c3d37639098bc0d2021299e5dcf350" dependencies = [ "iced_renderer", "iced_runtime", @@ -2148,18 +2698,18 @@ dependencies = [ [[package]] name = "iced_winit" version = "0.10.0" -source = "git+https://github.com/pop-os/libcosmic?branch=menu#ef6c21b647480e8bfea80e3dc628079de90f51c3" +source = "git+https://github.com/pop-os/libcosmic#d6c8fbe268c3d37639098bc0d2021299e5dcf350" dependencies = [ "iced_graphics", "iced_runtime", "iced_style", "log", - "raw-window-handle", + "raw-window-handle 0.5.2", "thiserror", "web-sys", "winapi", "window_clipboard", - "winit", + "winit 0.28.6", ] [[package]] @@ -2170,14 +2720,49 @@ checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" [[package]] name = "idna" -version = "0.4.0" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d20d6b07bfbc108882d88ed8e37d39636dcc260e15e30c45e6ba089610b917c" +checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6" dependencies = [ "unicode-bidi", "unicode-normalization", ] +[[package]] +name = "ignore" +version = "0.4.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "747ad1b4ae841a78e8aba0d63adbfbeaea26b517b63705d47856b73015d27060" +dependencies = [ + "crossbeam-deque", + "globset", + "log", + "memchr", + "regex-automata", + "same-file", + "walkdir", + "winapi-util", +] + +[[package]] +name = "image" +version = "0.23.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "24ffcb7e7244a9bf19d35bf2883b9c080c4ced3c07a9895572178cdb8f13f6a1" +dependencies = [ + "bytemuck", + "byteorder", + "color_quant", + "gif 0.11.4", + "jpeg-decoder 0.1.22", + "num-iter", + "num-rational 0.3.2", + "num-traits", + "png 0.16.8", + "scoped_threadpool", + "tiff 0.6.1", +] + [[package]] name = "image" version = "0.24.7" @@ -2188,13 +2773,13 @@ dependencies = [ "byteorder", "color_quant", "exr", - "gif", - "jpeg-decoder", - "num-rational", + "gif 0.12.0", + "jpeg-decoder 0.3.0", + "num-rational 0.4.1", "num-traits", - "png", + "png 0.17.10", "qoi", - "tiff", + "tiff 0.9.0", ] [[package]] @@ -2220,7 +2805,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d530e1a18b1cb4c484e6e34556a0d948706958449fca0cab753d649f2bce3d1f" dependencies = [ "equivalent", - "hashbrown 0.14.2", + "hashbrown 0.14.3", ] [[package]] @@ -2249,7 +2834,7 @@ version = "0.1.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c" dependencies = [ - "cfg-if", + "cfg-if 1.0.0", "js-sys", "wasm-bindgen", "web-sys", @@ -2292,7 +2877,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cb0889898416213fab133e1d33a0e5858a48177452750691bde3666d0fdbaf8b" dependencies = [ "hermit-abi", - "rustix 0.38.21", + "rustix 0.38.25", "windows-sys 0.48.0", ] @@ -2317,6 +2902,15 @@ dependencies = [ "libc", ] +[[package]] +name = "jpeg-decoder" +version = "0.1.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "229d53d58899083193af11e15917b5640cd40b29ff475a1fe4ef725deb02d0f2" +dependencies = [ + "rayon", +] + [[package]] name = "jpeg-decoder" version = "0.3.0" @@ -2328,9 +2922,9 @@ dependencies = [ [[package]] name = "js-sys" -version = "0.3.65" +version = "0.3.66" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54c0c35952f67de54bb584e9fd912b3023117cbafc0a77d8f3dee1fb5f572fe8" +checksum = "cee9c64da59eae3b50095c18d3e74f8b73c0b86d2792824ff01bbce68ba229ca" dependencies = [ "wasm-bindgen", ] @@ -2381,7 +2975,7 @@ version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bd85a5776cd9500c2e2059c8c76c3b01528566b7fcbaf8098b55a33fc298849b" dependencies = [ - "arrayvec", + "arrayvec 0.7.4", ] [[package]] @@ -2397,17 +2991,31 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "03087c2bad5e1034e8cace5926dec053fb3790248370865f5117a7d0213354c8" [[package]] -name = "libc" -version = "0.2.149" +name = "lexical-core" +version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a08173bc88b7955d1b3145aa561539096c421ac8debde8cbc3612ec635fee29b" +checksum = "6607c62aa161d23d17a9072cc5da0be67cdfc89d3afb1e8d9c842bebc2525ffe" +dependencies = [ + "arrayvec 0.5.2", + "bitflags 1.3.2", + "cfg-if 1.0.0", + "ryu", + "static_assertions", +] + +[[package]] +name = "libc" +version = "0.2.150" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "89d92a4743f9a61002fae18374ed11e7973f530cb3a3255fb354818118b2203c" [[package]] name = "libcosmic" version = "0.1.0" -source = "git+https://github.com/pop-os/libcosmic?branch=menu#ef6c21b647480e8bfea80e3dc628079de90f51c3" +source = "git+https://github.com/pop-os/libcosmic#d6c8fbe268c3d37639098bc0d2021299e5dcf350" dependencies = [ "apply", + "ashpd", "cosmic-config", "cosmic-theme", "css-color", @@ -2428,9 +3036,21 @@ dependencies = [ "slotmap", "taffy", "thiserror", + "tokio", "tracing", "unicode-segmentation", "url", + "zbus", +] + +[[package]] +name = "libloading" +version = "0.6.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "351a32417a12d5f7e82c368a66781e307834dae04c6ce0cd4456d52989229883" +dependencies = [ + "cfg-if 1.0.0", + "winapi", ] [[package]] @@ -2439,7 +3059,7 @@ version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f" dependencies = [ - "cfg-if", + "cfg-if 1.0.0", "winapi", ] @@ -2449,7 +3069,7 @@ version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c571b676ddfc9a8c12f1f3d3085a7b163966a8fd8098a90640953ce5f6170161" dependencies = [ - "cfg-if", + "cfg-if 1.0.0", "windows-sys 0.48.0", ] @@ -2459,6 +3079,28 @@ version = "0.2.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058" +[[package]] +name = "libredox" +version = "0.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85c833ca1e66078851dba29046874e38f08b2c883700aa29a03ddd3b23814ee8" +dependencies = [ + "bitflags 2.4.1", + "libc", + "redox_syscall 0.4.1", +] + +[[package]] +name = "libredox" +version = "0.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3af92c55d7d839293953fcd0fda5ecfe93297cfde6ffbdec13b41d99c0ba6607" +dependencies = [ + "bitflags 2.4.1", + "libc", + "redox_syscall 0.4.1", +] + [[package]] name = "line-wrap" version = "0.1.1" @@ -2482,9 +3124,9 @@ checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519" [[package]] name = "linux-raw-sys" -version = "0.4.10" +version = "0.4.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da2479e8c062e40bf0066ffa0bc823de0a9368974af99c9f6df941d2c231e03f" +checksum = "969488b55f8ac402214f3f5fd243ebb7206cf82de60d3172994707a4bcc2b829" [[package]] name = "locale_config" @@ -2521,7 +3163,7 @@ version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a4a83fb7698b3643a0e34f9ae6f2e8f0178c0fd42f8b59d493aa271ff3a5bf21" dependencies = [ - "hashbrown 0.14.2", + "hashbrown 0.14.3", ] [[package]] @@ -2536,9 +3178,9 @@ dependencies = [ [[package]] name = "lyon_algorithms" -version = "1.0.3" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00a0349cd8f0270781bb93a824b63df6178e3b4a27794e7be3ce3763f5a44d6e" +checksum = "a3bca95f9a4955b3e4a821fbbcd5edfbd9be2a9a50bb5758173e5358bfb4c623" dependencies = [ "lyon_path", "num-traits", @@ -2550,7 +3192,7 @@ version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "74df1ff0a0147282eb10699537a03baa7d31972b58984a1d44ce0624043fe8ad" dependencies = [ - "arrayvec", + "arrayvec 0.7.4", "euclid", "num-traits", ] @@ -2567,9 +3209,9 @@ dependencies = [ [[package]] name = "lyon_tessellation" -version = "1.0.10" +version = "1.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d2124218d5428149f9e09520b9acc024334a607e671f032d06567b61008977c" +checksum = "23bcac20d47825850fabf1e869bf7c2bbe2daefa0776c3cd2eb7cb74635f6e4a" dependencies = [ "float_next_after", "lyon_path", @@ -2591,6 +3233,15 @@ version = "2.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f665ee40bc4a3c5590afb1e9677db74a508659dfd71e126420da8274909a0167" +[[package]] +name = "memmap2" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d9b70ca2a6103ac8b665dc150b142ef0e4e89df640c9e6cf295d189c3caebe5a" +dependencies = [ + "libc", +] + [[package]] name = "memmap2" version = "0.5.10" @@ -2611,9 +3262,9 @@ dependencies = [ [[package]] name = "memmap2" -version = "0.8.0" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43a5a03cefb0d953ec0be133036f14e109412fa594edc2f77227249db66cc3ed" +checksum = "deaba38d7abf1d4cca21cc89e932e542ba2b9258664d2a9ef0e61512039c9375" dependencies = [ "libc", ] @@ -2654,17 +3305,42 @@ dependencies = [ "bitflags 1.3.2", "block", "core-graphics-types", - "foreign-types", + "foreign-types 0.3.2", "log", "objc", ] +[[package]] +name = "mime" +version = "0.3.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" + [[package]] name = "minimal-lexical" version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" +[[package]] +name = "miniz_oxide" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "791daaae1ed6889560f8c4359194f56648355540573244a5448a83ba1ecc7435" +dependencies = [ + "adler32", +] + +[[package]] +name = "miniz_oxide" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a92518e98c078586bc6c934028adcca4c92a53d6a958196de835170a01d84e4b" +dependencies = [ + "adler", + "autocfg", +] + [[package]] name = "miniz_oxide" version = "0.7.1" @@ -2675,6 +3351,19 @@ dependencies = [ "simd-adler32", ] +[[package]] +name = "mio" +version = "0.7.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8067b404fe97c70829f082dec8bcf4f71225d7eaea1d8645349cb76fa06205cc" +dependencies = [ + "libc", + "log", + "miow", + "ntapi", + "winapi", +] + [[package]] name = "mio" version = "0.8.9" @@ -2687,6 +3376,36 @@ dependencies = [ "windows-sys 0.48.0", ] +[[package]] +name = "mio-misc" +version = "1.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b47412f3a52115b936ff2a229b803498c7b4d332adeb87c2f1498c9da54c398c" +dependencies = [ + "crossbeam", + "crossbeam-queue", + "log", + "mio 0.7.14", +] + +[[package]] +name = "miow" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9f1c5b025cda876f66ef43a113f91ebc9f4ccef34843000e0adf6ebbab84e21" +dependencies = [ + "winapi", +] + +[[package]] +name = "modit" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b12ac86b3a7bf5696735981a33eb6c82c9d316c24653f8b24b4811173d824f69" +dependencies = [ + "log", +] + [[package]] name = "mutate_once" version = "0.1.1" @@ -2722,6 +3441,18 @@ dependencies = [ "getrandom", ] +[[package]] +name = "ndk" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8794322172319b972f528bf90c6b467be0079f1fa82780ffb431088e741a73ab" +dependencies = [ + "jni-sys", + "ndk-sys 0.2.2", + "num_enum 0.5.11", + "thiserror", +] + [[package]] name = "ndk" version = "0.7.0" @@ -2730,9 +3461,9 @@ checksum = "451422b7e4718271c8b5b3aadf5adedba43dc76312454b387e98fae0fc951aa0" dependencies = [ "bitflags 1.3.2", "jni-sys", - "ndk-sys", + "ndk-sys 0.4.1+23.1.7779620", "num_enum 0.5.11", - "raw-window-handle", + "raw-window-handle 0.5.2", "thiserror", ] @@ -2742,6 +3473,39 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "27b02d87554356db9e9a873add8782d4ea6e3e58ea071a9adb9a2e8ddb884a8b" +[[package]] +name = "ndk-glue" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c5caf0c24d51ac1c905c27d4eda4fa0635bbe0de596b8f79235e0b17a4d29385" +dependencies = [ + "lazy_static", + "libc", + "log", + "ndk 0.3.0", + "ndk-macro", + "ndk-sys 0.2.2", +] + +[[package]] +name = "ndk-macro" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05d1c6307dc424d0f65b9b06e94f88248e6305726b14729fd67a5e47b2dc481d" +dependencies = [ + "darling 0.10.2", + "proc-macro-crate 0.1.5", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "ndk-sys" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e1bcdd74c20ad5d95aacd60ef9ba40fdf77f767051040541df557b7a9b2a2121" + [[package]] name = "ndk-sys" version = "0.4.1+23.1.7779620" @@ -2751,6 +3515,30 @@ dependencies = [ "jni-sys", ] +[[package]] +name = "nix" +version = "0.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "83450fe6a6142ddd95fb064b746083fc4ef1705fe81f64a64e1d4b39f54a1055" +dependencies = [ + "bitflags 1.3.2", + "cc", + "cfg-if 0.1.10", + "libc", +] + +[[package]] +name = "nix" +version = "0.20.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fa9b4819da1bc61c0ea48b63b7bc8604064dd43013e7cc325df098d49cd7c18a" +dependencies = [ + "bitflags 1.3.2", + "cc", + "cfg-if 1.0.0", + "libc", +] + [[package]] name = "nix" version = "0.22.3" @@ -2759,7 +3547,7 @@ checksum = "e4916f159ed8e5de0082076562152a76b7a1f64a01fd9d1e0fea002c37624faf" dependencies = [ "bitflags 1.3.2", "cc", - "cfg-if", + "cfg-if 1.0.0", "libc", "memoffset 0.6.5", ] @@ -2771,7 +3559,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fa52e972a9a719cecb6864fb88568781eb706bac2cd1d4f04a648542dbf78069" dependencies = [ "bitflags 1.3.2", - "cfg-if", + "cfg-if 1.0.0", "libc", "memoffset 0.6.5", ] @@ -2784,7 +3572,7 @@ checksum = "f346ff70e7dbfd675fe90590b92d59ef2de15a8779ae305ebcbfd3f0caf59be4" dependencies = [ "autocfg", "bitflags 1.3.2", - "cfg-if", + "cfg-if 1.0.0", "libc", "memoffset 0.6.5", ] @@ -2796,10 +3584,31 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "598beaf3cc6fdd9a5dfb1630c2800c7acd31df7aaf0f565796fba2b53ca1af1b" dependencies = [ "bitflags 1.3.2", - "cfg-if", + "cfg-if 1.0.0", "libc", "memoffset 0.7.1", - "pin-utils", +] + +[[package]] +name = "nix" +version = "0.27.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2eb04e9c688eff1c89d72b407f168cf79bb9e867a9d3323ed6c01519eb9cc053" +dependencies = [ + "bitflags 2.4.1", + "cfg-if 1.0.0", + "libc", +] + +[[package]] +name = "nom" +version = "5.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08959a387a676302eebf4ddbcbc611da04285579f76f88ee0506c63b1a61dd4b" +dependencies = [ + "lexical-core", + "memchr", + "version_check", ] [[package]] @@ -2826,11 +3635,20 @@ dependencies = [ "kqueue", "libc", "log", - "mio", + "mio 0.8.9", "walkdir", "windows-sys 0.48.0", ] +[[package]] +name = "ntapi" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c28774a7fd2fbb4f0babd8237ce554b73af68021b5f695a3cebd6c59bac0980f" +dependencies = [ + "winapi", +] + [[package]] name = "num" version = "0.4.1" @@ -2841,7 +3659,7 @@ dependencies = [ "num-complex", "num-integer", "num-iter", - "num-rational", + "num-rational 0.4.1", "num-traits", ] @@ -2886,6 +3704,17 @@ dependencies = [ "num-traits", ] +[[package]] +name = "num-rational" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "12ac428b1cb17fce6f731001d307d351ec70a6d202fc2e60f7d4c5e42d8f4f07" +dependencies = [ + "autocfg", + "num-integer", + "num-traits", +] + [[package]] name = "num-rational" version = "0.4.1" @@ -2942,7 +3771,7 @@ version = "0.5.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dcbff9bc912032c62bf65ef1d5aea88983b420f4f839db1e9b0c281a25c9c799" dependencies = [ - "proc-macro-crate", + "proc-macro-crate 1.3.1", "proc-macro2", "quote", "syn 1.0.109", @@ -2954,10 +3783,10 @@ version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "96667db765a921f7b295ffee8b60472b686a51d4f21c2ee4ffdb94c7013b65a6" dependencies = [ - "proc-macro-crate", + "proc-macro-crate 1.3.1", "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -3070,11 +3899,11 @@ checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" [[package]] name = "orbclient" -version = "0.3.46" +version = "0.3.47" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8378ac0dfbd4e7895f2d2c1f1345cab3836910baf3a300b000d04250f0c8428f" +checksum = "52f0d54bde9774d3a51dcf281a5def240c71996bc6ca05d2c847ec8b2b216166" dependencies = [ - "redox_syscall 0.3.5", + "libredox 0.0.2", ] [[package]] @@ -3118,7 +3947,16 @@ dependencies = [ "proc-macro-error", "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", +] + +[[package]] +name = "owned_ttf_parser" +version = "0.15.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05e6affeb1632d6ff6a23d2cd40ffed138e82f1532571a26f527c8a284bb2fbb" +dependencies = [ + "ttf-parser 0.15.2", ] [[package]] @@ -3151,7 +3989,7 @@ checksum = "b7db010ec5ff3d4385e4f133916faacd9dad0f6a09394c92d825b3aed310fa0a" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -3199,7 +4037,7 @@ version = "0.8.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "60a2cfe6f0ad2bfc16aefa463b497d5c7a5ecd44a23efa72aa342d90177356dc" dependencies = [ - "cfg-if", + "cfg-if 1.0.0", "instant", "libc", "redox_syscall 0.2.16", @@ -3213,7 +4051,7 @@ version = "0.9.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e" dependencies = [ - "cfg-if", + "cfg-if 1.0.0", "libc", "redox_syscall 0.4.1", "smallvec", @@ -3228,9 +4066,9 @@ checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c" [[package]] name = "percent-encoding" -version = "2.3.0" +version = "2.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94" +checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" [[package]] name = "phf" @@ -3262,7 +4100,7 @@ dependencies = [ "phf_shared", "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -3297,7 +4135,7 @@ checksum = "4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -3331,18 +4169,30 @@ checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964" [[package]] name = "plist" -version = "1.5.1" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a4a0cfc5fb21a09dc6af4bf834cf10d4a32fccd9e2ea468c4b1751a097487aa" +checksum = "e5699cc8a63d1aa2b1ee8e12b9ad70ac790d65788cd36101fa37f87ea46c4cef" dependencies = [ "base64", - "indexmap 1.9.3", + "indexmap 2.1.0", "line-wrap", - "quick-xml 0.30.0", + "quick-xml 0.31.0", "serde", "time", ] +[[package]] +name = "png" +version = "0.16.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c3287920cb847dee3de33d301c463fba14dda99db24214ddf93f83d3021f4c6" +dependencies = [ + "bitflags 1.3.2", + "crc32fast", + "deflate", + "miniz_oxide 0.3.7", +] + [[package]] name = "png" version = "0.17.10" @@ -3353,7 +4203,7 @@ dependencies = [ "crc32fast", "fdeflate", "flate2", - "miniz_oxide", + "miniz_oxide 0.7.1", ] [[package]] @@ -3364,7 +4214,7 @@ checksum = "4b2d323e8ca7996b3e23126511a523f7e62924d93ecd5ae73b333815b0eb3dce" dependencies = [ "autocfg", "bitflags 1.3.2", - "cfg-if", + "cfg-if 1.0.0", "concurrent-queue", "libc", "log", @@ -3374,16 +4224,16 @@ dependencies = [ [[package]] name = "polling" -version = "3.3.0" +version = "3.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e53b6af1f60f36f8c2ac2aad5459d75a5a9b4be1e8cdd40264f315d78193e531" +checksum = "cf63fa624ab313c11656b4cda960bfc46c410187ad493c41f6ba2d8c1e991c9e" dependencies = [ - "cfg-if", + "cfg-if 1.0.0", "concurrent-queue", "pin-project-lite", - "rustix 0.38.21", + "rustix 0.38.25", "tracing", - "windows-sys 0.48.0", + "windows-sys 0.52.0", ] [[package]] @@ -3398,6 +4248,15 @@ version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" +[[package]] +name = "proc-macro-crate" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d6ea3c4595b96363c13943497db34af4460fb474a95c43f4446ad341b8c9785" +dependencies = [ + "toml 0.5.11", +] + [[package]] name = "proc-macro-crate" version = "1.3.1" @@ -3434,9 +4293,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.69" +version = "1.0.70" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "134c189feb4956b20f6f547d2cf727d4c0fe06722b20a0eec87ed445a97f92da" +checksum = "39278fbbf5fb4f646ce651690877f89d1c5811a3d4acb27700c1cb3cdb78fd3b" dependencies = [ "unicode-ident", ] @@ -3458,18 +4317,18 @@ dependencies = [ [[package]] name = "quick-xml" -version = "0.28.2" +version = "0.30.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ce5e73202a820a31f8a0ee32ada5e21029c81fd9e3ebf668a40832e4219d9d1" +checksum = "eff6510e86862b57b210fd8cbe8ed3f0d7d600b9c2863cd4549a2e033c66e956" dependencies = [ "memchr", ] [[package]] name = "quick-xml" -version = "0.30.0" +version = "0.31.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eff6510e86862b57b210fd8cbe8ed3f0d7d600b9c2863cd4549a2e033c66e956" +checksum = "1004a344b30a54e2ee58d66a71b32d2db2feb0a31f9a2d302bf0536f15de2a33" dependencies = [ "memchr", ] @@ -3525,6 +4384,25 @@ version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "977b1e897f9d764566891689e642653e5ed90c6895106acd005eb4c1d0203991" +[[package]] +name = "raw-window-handle" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e28f55143d0548dad60bb4fbdc835a3d7ac6acc3324506450c5fdd6e42903a76" +dependencies = [ + "libc", + "raw-window-handle 0.4.3", +] + +[[package]] +name = "raw-window-handle" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b800beb9b6e7d2df1fe337c9e3d04e3af22a124460fb4c30fcc22c9117cefb41" +dependencies = [ + "cty", +] + [[package]] name = "raw-window-handle" version = "0.5.2" @@ -3586,12 +4464,12 @@ dependencies = [ [[package]] name = "redox_users" -version = "0.4.3" +version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b" +checksum = "a18479200779601e498ada4e8c1e1f50e3ee19deb0259c25825a98b5603b2cb4" dependencies = [ "getrandom", - "redox_syscall 0.2.16", + "libredox 0.0.1", "thiserror", ] @@ -3642,11 +4520,11 @@ version = "0.35.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b6554f47c38eca56827eea7f285c2a3018b4e12e0e195cc105833c008be338f1" dependencies = [ - "gif", - "jpeg-decoder", + "gif 0.12.0", + "jpeg-decoder 0.3.0", "log", "pico-args", - "png", + "png 0.17.10", "rgb", "svgtypes", "tiny-skia 0.10.0", @@ -3669,7 +4547,7 @@ dependencies = [ "objc", "objc-foundation", "objc_id", - "raw-window-handle", + "raw-window-handle 0.5.2", "wasm-bindgen", "wasm-bindgen-futures", "web-sys", @@ -3726,7 +4604,7 @@ dependencies = [ "proc-macro2", "quote", "rust-embed-utils", - "syn 2.0.38", + "syn 2.0.39", "walkdir", ] @@ -3746,7 +4624,7 @@ version = "0.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f6d5f2436026b4f6e79dc829837d467cc7e9a55ee40e750d716713540715a2df" dependencies = [ - "cfg-if", + "cfg-if 1.0.0", "ordered-multimap", ] @@ -3762,6 +4640,15 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" +[[package]] +name = "rustc_version" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" +dependencies = [ + "semver", +] + [[package]] name = "rustix" version = "0.37.27" @@ -3778,17 +4665,27 @@ dependencies = [ [[package]] name = "rustix" -version = "0.38.21" +version = "0.38.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b426b0506e5d50a7d8dafcf2e81471400deb602392c7dd110815afb4eaf02a3" +checksum = "dc99bc2d4f1fed22595588a013687477aedf3cdcfb26558c559edb67b4d9b22e" dependencies = [ "bitflags 2.4.1", "errno", "libc", - "linux-raw-sys 0.4.10", + "linux-raw-sys 0.4.11", "windows-sys 0.48.0", ] +[[package]] +name = "rusttype" +version = "0.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3ff8374aa04134254b7995b63ad3dc41c7f7236f69528b28553da7d72efaa967" +dependencies = [ + "ab_glyph_rasterizer", + "owned_ttf_parser 0.15.2", +] + [[package]] name = "rustybuzz" version = "0.7.0" @@ -3866,6 +4763,12 @@ version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294" +[[package]] +name = "scoped_threadpool" +version = "0.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d51f5df5af43ab3f1360b429fa5e0152ac5ce8c0bd6485cae490332e96846a8" + [[package]] name = "scopeguard" version = "1.2.0" @@ -3880,40 +4783,58 @@ dependencies = [ "ab_glyph", "log", "memmap2 0.5.10", - "smithay-client-toolkit", + "smithay-client-toolkit 0.16.1", "tiny-skia 0.8.4", ] [[package]] name = "self_cell" -version = "0.10.2" +version = "0.10.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ef965a420fe14fdac7dd018862966a4c14094f900e1650bbc71ddd7d580c8af" +checksum = "e14e4d63b804dc0c7ec4a1e52bcb63f02c7ac94476755aa579edac21e01f915d" +dependencies = [ + "self_cell 1.0.2", +] [[package]] name = "self_cell" -version = "1.0.1" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c309e515543e67811222dbc9e3dd7e1056279b782e1dacffe4242b718734fb6" +checksum = "e388332cd64eb80cd595a00941baf513caffae8dce9cfd0467fc9c66397dade6" + +[[package]] +name = "semver" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" +dependencies = [ + "semver-parser", +] + +[[package]] +name = "semver-parser" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" [[package]] name = "serde" -version = "1.0.190" +version = "1.0.193" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91d3c334ca1ee894a2c6f6ad698fe8c435b76d504b13d436f0685d648d6d96f7" +checksum = "25dd9975e68d0cb5aa1120c288333fc98731bd1dd12f561e468ea4728c042b89" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.190" +version = "1.0.193" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67c5609f394e5c2bd7fc51efda478004ea80ef42fee983d5c67a65e34f32c0e3" +checksum = "43576ca501357b9b071ac53cdc7da8ef0cbd9493d8df094cd821777ea6e894d3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -3935,7 +4856,7 @@ checksum = "3081f5ffbb02284dda55132aa26daecedd7372a42417bbbab6f14ab7d6bb9145" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -3953,7 +4874,7 @@ version = "0.10.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" dependencies = [ - "cfg-if", + "cfg-if 1.0.0", "cpufeatures", "digest", ] @@ -3964,7 +4885,7 @@ version = "0.10.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" dependencies = [ - "cfg-if", + "cfg-if 1.0.0", "cpufeatures", "digest", ] @@ -4019,9 +4940,28 @@ dependencies = [ [[package]] name = "smallvec" -version = "1.11.1" +version = "1.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "942b4a808e05215192e39f4ab80813e599068285906cc91aa64f923db842bd5a" +checksum = "4dccd0940a2dcdf68d092b8cbab7dc0ad8fa938bf95787e1b916b0e3d0e8e970" + +[[package]] +name = "smithay-client-toolkit" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4750c76fd5d3ac95fa3ed80fe667d6a3d8590a960e5b575b98eea93339a80b80" +dependencies = [ + "andrew", + "bitflags 1.3.2", + "calloop 0.6.5", + "dlib 0.4.2", + "lazy_static", + "log", + "memmap2 0.1.0", + "nix 0.18.0", + "wayland-client 0.28.6", + "wayland-cursor 0.28.6", + "wayland-protocols 0.28.6", +] [[package]] name = "smithay-client-toolkit" @@ -4029,16 +4969,16 @@ version = "0.16.1" source = "git+https://github.com/pop-os/client-toolkit?branch=wayland-resize#515820fc86cf8cb3ac8d087dc6c87852767627ca" dependencies = [ "bitflags 1.3.2", - "calloop", - "dlib", + "calloop 0.10.6", + "dlib 0.5.2", "lazy_static", "log", "memmap2 0.5.10", "nix 0.24.3", "pkg-config", "wayland-client 0.29.5", - "wayland-cursor", - "wayland-protocols", + "wayland-cursor 0.29.5", + "wayland-protocols 0.29.5", ] [[package]] @@ -4047,7 +4987,7 @@ version = "0.6.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0a345c870a1fae0b1b779085e81b51e614767c239e93503588e54c5b17f4b0e8" dependencies = [ - "smithay-client-toolkit", + "smithay-client-toolkit 0.16.1", "wayland-client 0.29.5", ] @@ -4062,30 +5002,43 @@ dependencies = [ ] [[package]] -name = "softbuffer" -version = "0.2.0" -source = "git+https://github.com/pop-os/softbuffer?tag=cosmic-2.0-old#ece901a9f60dc89ca740dc3bd11f3c909e801723" +name = "socket2" +version = "0.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b5fac59a5cb5dd637972e5fca70daf0523c9067fcdc4842f053dae04a18f8e9" dependencies = [ + "libc", + "windows-sys 0.48.0", +] + +[[package]] +name = "softbuffer" +version = "0.3.3" +source = "git+https://github.com/pop-os/softbuffer?tag=v0.3-cosmic#6f0371ccece51d124c6c5d37082189df0dc5f9ba" +dependencies = [ + "as-raw-xcb-connection", "bytemuck", "cfg_aliases", - "cocoa", - "core-graphics", - "fastrand 1.9.0", - "foreign-types", + "cocoa 0.25.0", + "core-graphics 0.23.1", + "drm", + "fastrand 2.0.1", + "foreign-types 0.5.0", + "js-sys", "log", - "nix 0.26.4", + "memmap2 0.9.0", "objc", - "raw-window-handle", - "redox_syscall 0.3.5", - "thiserror", + "raw-window-handle 0.5.2", + "redox_syscall 0.4.1", + "rustix 0.38.25", + "tiny-xlib", "wasm-bindgen", "wayland-backend", - "wayland-client 0.30.2", - "wayland-sys 0.30.1", + "wayland-client 0.31.1", + "wayland-sys 0.31.1", "web-sys", - "windows-sys 0.42.0", - "x11-dl", - "x11rb 0.11.1", + "windows-sys 0.48.0", + "x11rb 0.12.0", ] [[package]] @@ -4128,6 +5081,12 @@ dependencies = [ "float-cmp", ] +[[package]] +name = "strsim" +version = "0.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6446ced80d6c486436db5c078dde11a9f73d42b57fb273121e160b84f63d894c" + [[package]] name = "strsim" version = "0.10.0" @@ -4173,9 +5132,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.38" +version = "2.0.39" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e96b79aaa137db8f61e26363a0c9b47d8b4ec75da28b7d1d614c2303e232408b" +checksum = "23e78b90f2fcf45d3e842032ce32e3f2d1545ba6636271dcbf24fa306d87be7a" dependencies = [ "proc-macro2", "quote", @@ -4221,16 +5180,31 @@ dependencies = [ "cfg-expr", "heck", "pkg-config", - "toml 0.8.6", + "toml 0.8.8", "version-compare", ] +[[package]] +name = "systemicons" +version = "0.7.0" +source = "git+https://github.com/jackpot51/systemicons#501887629ebf3f9b9d3384383da62d352af3fbd7" +dependencies = [ + "cocoa 0.24.1", + "freedesktop-icons", + "image 0.23.14", + "lazy_static", + "objc", + "winapi", + "winit 0.25.0", + "xdg-mime", +] + [[package]] name = "taffy" version = "0.3.11" -source = "git+https://github.com/DioxusLabs/taffy#1876f72bee5e376023eaa518aa7b8a34c769bd1b" +source = "git+https://github.com/DioxusLabs/taffy?rev=7781c70#7781c70241f7f572130c13106f2a869a9cf80885" dependencies = [ - "arrayvec", + "arrayvec 0.7.4", "grid", "num-traits", "slotmap", @@ -4248,18 +5222,18 @@ version = "3.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7ef1adac450ad7f4b3c28589471ade84f25f731a7a0fe30d71dfa9f60fd808e5" dependencies = [ - "cfg-if", + "cfg-if 1.0.0", "fastrand 2.0.1", "redox_syscall 0.4.1", - "rustix 0.38.21", + "rustix 0.38.25", "windows-sys 0.48.0", ] [[package]] name = "termcolor" -version = "1.3.0" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6093bad37da69aab9d123a8091e4be0aa4a03e4d601ec641c327398315f62b64" +checksum = "ff1bc3d3f05aff0403e8ac0d92ced918ec05b666a43f83297ccef5bea8a3d449" dependencies = [ "winapi-util", ] @@ -4281,7 +5255,18 @@ checksum = "266b2e40bc00e5a6c09c3584011e08b06f123c00362c92b975ba9843aaaa14b8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", +] + +[[package]] +name = "tiff" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a53f4706d65497df0c4349241deddf35f84cee19c87ed86ea8ca590f4464437" +dependencies = [ + "jpeg-decoder 0.1.22", + "miniz_oxide 0.4.4", + "weezl", ] [[package]] @@ -4291,7 +5276,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6d172b0f4d3fba17ba89811858b9d3d97f928aece846475bbda076ca46736211" dependencies = [ "flate2", - "jpeg-decoder", + "jpeg-decoder 0.3.0", "weezl", ] @@ -4331,10 +5316,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "df8493a203431061e901613751931f047d1971337153f96d0e5e363d6dbf6a67" dependencies = [ "arrayref", - "arrayvec", + "arrayvec 0.7.4", "bytemuck", - "cfg-if", - "png", + "cfg-if 1.0.0", + "png 0.17.10", "tiny-skia-path 0.8.4", ] @@ -4345,11 +5330,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7db11798945fa5c3e5490c794ccca7c6de86d3afdd54b4eb324109939c6f37bc" dependencies = [ "arrayref", - "arrayvec", + "arrayvec 0.7.4", "bytemuck", - "cfg-if", + "cfg-if 1.0.0", "log", - "png", + "png 0.17.10", "tiny-skia-path 0.10.0", ] @@ -4376,10 +5361,22 @@ dependencies = [ ] [[package]] -name = "tinystr" -version = "0.7.4" +name = "tiny-xlib" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5d0e245e80bdc9b4e5356fc45a72184abbc3861992603f515270e9340f5a219" +checksum = "d4098d49269baa034a8d1eae9bd63e9fa532148d772121dace3bcd6a6c98eb6d" +dependencies = [ + "as-raw-xcb-connection", + "ctor", + "libloading 0.8.1", + "tracing", +] + +[[package]] +name = "tinystr" +version = "0.7.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "83c02bf3c538ab32ba913408224323915f4ef9a6d61c0e85d493f355921c0ece" dependencies = [ "displaydoc", ] @@ -4399,6 +5396,24 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" +[[package]] +name = "tokio" +version = "1.34.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d0c014766411e834f7af5b8f4cf46257aab4036ca95e9d2c144a10f59ad6f5b9" +dependencies = [ + "backtrace", + "bytes", + "libc", + "mio 0.8.9", + "num_cpus", + "pin-project-lite", + "signal-hook-registry", + "socket2 0.5.5", + "tracing", + "windows-sys 0.48.0", +] + [[package]] name = "toml" version = "0.5.11" @@ -4410,14 +5425,14 @@ dependencies = [ [[package]] name = "toml" -version = "0.8.6" +version = "0.8.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ff9e3abce27ee2c9a37f9ad37238c1bdd4e789c84ba37df76aa4d528f5072cc" +checksum = "a1a195ec8c9da26928f773888e0742ca3ca1040c6cd859c919c9f59c1954ab35" dependencies = [ "serde", "serde_spanned", "toml_datetime", - "toml_edit 0.20.7", + "toml_edit 0.21.0", ] [[package]] @@ -4442,9 +5457,9 @@ dependencies = [ [[package]] name = "toml_edit" -version = "0.20.7" +version = "0.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70f427fce4d84c72b5b732388bf4a9f4531b53f74e2887e3ecb2481f68f66d81" +checksum = "d34d383cd00a163b4a5b85053df514d45bc330f6de7737edfe0a93311d1eaa03" dependencies = [ "indexmap 2.1.0", "serde", @@ -4472,7 +5487,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -4484,6 +5499,12 @@ dependencies = [ "once_cell", ] +[[package]] +name = "ttf-parser" +version = "0.15.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b3e06c9b9d80ed6b745c7159c40b311ad2916abb34a49e9be2653b90db0d8dd" + [[package]] name = "ttf-parser" version = "0.18.1" @@ -4519,7 +5540,7 @@ version = "1.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "97fee6b57c6a41524a810daee9286c02d7752c4253064d0b05472833a438f675" dependencies = [ - "cfg-if", + "cfg-if 1.0.0", "rand", "static_assertions", ] @@ -4568,6 +5589,15 @@ dependencies = [ "tinystr", ] +[[package]] +name = "unicase" +version = "2.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f7d2d4dafb69621809a81864c9c1b864479e1235c0dd4e199924b9742439ed89" +dependencies = [ + "version_check", +] + [[package]] name = "unicode-bidi" version = "0.3.13" @@ -4651,13 +5681,14 @@ checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c" [[package]] name = "url" -version = "2.4.1" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "143b538f18257fac9cad154828a57c6bf5157e1aa604d4816b5995bf6de87ae5" +checksum = "31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633" dependencies = [ "form_urlencoded", "idna", "percent-encoding", + "serde", ] [[package]] @@ -4763,36 +5794,36 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" [[package]] name = "wasm-bindgen" -version = "0.2.88" +version = "0.2.89" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7daec296f25a1bae309c0cd5c29c4b260e510e6d813c286b19eaadf409d40fce" +checksum = "0ed0d4f68a3015cc185aff4db9506a015f4b96f95303897bfa23f846db54064e" dependencies = [ - "cfg-if", + "cfg-if 1.0.0", "wasm-bindgen-macro", ] [[package]] name = "wasm-bindgen-backend" -version = "0.2.88" +version = "0.2.89" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e397f4664c0e4e428e8313a469aaa58310d302159845980fd23b0f22a847f217" +checksum = "1b56f625e64f3a1084ded111c4d5f477df9f8c92df113852fa5a374dbda78826" dependencies = [ "bumpalo", "log", "once_cell", "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-futures" -version = "0.4.38" +version = "0.4.39" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9afec9963e3d0994cac82455b2b3502b81a7f40f9a0d32181f7528d9f4b43e02" +checksum = "ac36a15a220124ac510204aec1c3e5db8a22ab06fd6706d881dc6149f8ed9a12" dependencies = [ - "cfg-if", + "cfg-if 1.0.0", "js-sys", "wasm-bindgen", "web-sys", @@ -4800,9 +5831,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.88" +version = "0.2.89" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5961017b3b08ad5f3fe39f1e79877f8ee7c23c5e5fd5eb80de95abc41f1f16b2" +checksum = "0162dbf37223cd2afce98f3d0785506dcb8d266223983e4b5b525859e6e182b2" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -4810,22 +5841,22 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.88" +version = "0.2.89" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c5353b8dab669f5e10f5bd76df26a9360c748f054f862ff5f3f8aae0c7fb3907" +checksum = "f0eb82fcb7930ae6219a7ecfd55b217f5f0893484b7a13022ebb2b2bf20b5283" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", "wasm-bindgen-backend", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.88" +version = "0.2.89" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d046c5d029ba91a1ed14da14dca44b68bf2f124cfbaf741c54151fdb3e0750b" +checksum = "7ab9b36309365056cd639da3134bf87fa8f3d86008abf99e612384a6eecd459f" [[package]] name = "wasm-timer" @@ -4844,17 +5875,32 @@ dependencies = [ [[package]] name = "wayland-backend" -version = "0.1.2" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41b48e27457e8da3b2260ac60d0a94512f5cba36448679f3747c0865b7893ed8" +checksum = "19152ddd73f45f024ed4534d9ca2594e0ef252c1847695255dae47f34df9fbe4" dependencies = [ "cc", "downcast-rs", - "io-lifetimes", "nix 0.26.4", "scoped-tls", "smallvec", - "wayland-sys 0.30.1", + "wayland-sys 0.31.1", +] + +[[package]] +name = "wayland-client" +version = "0.28.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3ab332350e502f159382201394a78e3cc12d0f04db863429260164ea40e0355" +dependencies = [ + "bitflags 1.3.2", + "downcast-rs", + "libc", + "nix 0.20.0", + "scoped-tls", + "wayland-commons 0.28.6", + "wayland-scanner 0.28.6", + "wayland-sys 0.28.6", ] [[package]] @@ -4868,21 +5914,33 @@ dependencies = [ "libc", "nix 0.24.3", "scoped-tls", - "wayland-commons", + "wayland-commons 0.29.5", "wayland-scanner 0.29.5", "wayland-sys 0.29.5", ] [[package]] name = "wayland-client" -version = "0.30.2" +version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "489c9654770f674fc7e266b3c579f4053d7551df0ceb392f153adb1f9ed06ac8" +checksum = "1ca7d52347346f5473bf2f56705f360e8440873052e575e55890c4fa57843ed3" dependencies = [ - "bitflags 1.3.2", + "bitflags 2.4.1", "nix 0.26.4", "wayland-backend", - "wayland-scanner 0.30.1", + "wayland-scanner 0.31.0", +] + +[[package]] +name = "wayland-commons" +version = "0.28.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a21817947c7011bbd0a27e11b17b337bfd022e8544b071a2641232047966fbda" +dependencies = [ + "nix 0.20.0", + "once_cell", + "smallvec", + "wayland-sys 0.28.6", ] [[package]] @@ -4897,6 +5955,17 @@ dependencies = [ "wayland-sys 0.29.5", ] +[[package]] +name = "wayland-cursor" +version = "0.28.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "be610084edd1586d45e7bdd275fe345c7c1873598caa464c4fb835dee70fa65a" +dependencies = [ + "nix 0.20.0", + "wayland-client 0.28.6", + "xcursor", +] + [[package]] name = "wayland-cursor" version = "0.29.5" @@ -4908,6 +5977,18 @@ dependencies = [ "xcursor", ] +[[package]] +name = "wayland-protocols" +version = "0.28.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "286620ea4d803bacf61fa087a4242ee316693099ee5a140796aaba02b29f861f" +dependencies = [ + "bitflags 1.3.2", + "wayland-client 0.28.6", + "wayland-commons 0.28.6", + "wayland-scanner 0.28.6", +] + [[package]] name = "wayland-protocols" version = "0.29.5" @@ -4916,10 +5997,21 @@ checksum = "b950621f9354b322ee817a23474e479b34be96c2e909c14f7bc0100e9a970bc6" dependencies = [ "bitflags 1.3.2", "wayland-client 0.29.5", - "wayland-commons", + "wayland-commons 0.29.5", "wayland-scanner 0.29.5", ] +[[package]] +name = "wayland-scanner" +version = "0.28.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce923eb2deb61de332d1f356ec7b6bf37094dc5573952e1c8936db03b54c03f1" +dependencies = [ + "proc-macro2", + "quote", + "xml-rs", +] + [[package]] name = "wayland-scanner" version = "0.29.5" @@ -4933,43 +6025,54 @@ dependencies = [ [[package]] name = "wayland-scanner" -version = "0.30.1" +version = "0.31.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9b873b257fbc32ec909c0eb80dea312076a67014e65e245f5eb69a6b8ab330e" +checksum = "fb8e28403665c9f9513202b7e1ed71ec56fde5c107816843fb14057910b2c09c" dependencies = [ "proc-macro2", - "quick-xml 0.28.2", + "quick-xml 0.30.0", "quote", ] +[[package]] +name = "wayland-sys" +version = "0.28.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d841fca9aed7febf9bed2e9796c49bf58d4152ceda8ac949ebe00868d8f0feb8" +dependencies = [ + "dlib 0.5.2", + "lazy_static", + "pkg-config", +] + [[package]] name = "wayland-sys" version = "0.29.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "be12ce1a3c39ec7dba25594b97b42cb3195d54953ddb9d3d95a7c3902bc6e9d4" dependencies = [ - "dlib", + "dlib 0.5.2", "lazy_static", "pkg-config", ] [[package]] name = "wayland-sys" -version = "0.30.1" +version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96b2a02ac608e07132978689a6f9bf4214949c85998c247abadd4f4129b1aa06" +checksum = "15a0c8eaff5216d07f226cb7a549159267f3467b289d9a2e52fd3ef5aae2b7af" dependencies = [ - "dlib", - "lazy_static", + "dlib 0.5.2", "log", + "once_cell", "pkg-config", ] [[package]] name = "web-sys" -version = "0.3.65" +version = "0.3.66" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5db499c5f66323272151db0e666cd34f78617522fb0c1604d31a27c50c206a85" +checksum = "50c24a44ec86bb68fbecd1b3efed7e85ea5621b39b35ef2766b66cd984f8010f" dependencies = [ "js-sys", "wasm-bindgen", @@ -4987,14 +6090,14 @@ version = "0.16.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "480c965c9306872eb6255fa55e4b4953be55a8b64d57e61d7ff840d3dcc051cd" dependencies = [ - "arrayvec", - "cfg-if", + "arrayvec 0.7.4", + "cfg-if 1.0.0", "js-sys", "log", "naga", "parking_lot 0.12.1", "profiling", - "raw-window-handle", + "raw-window-handle 0.5.2", "smallvec", "static_assertions", "wasm-bindgen", @@ -5011,7 +6114,7 @@ version = "0.16.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8f478237b4bf0d5b70a39898a66fa67ca3a007d79f2520485b8b0c3dfc46f8c2" dependencies = [ - "arrayvec", + "arrayvec 0.7.4", "bit-vec", "bitflags 2.4.1", "codespan-reporting", @@ -5019,7 +6122,7 @@ dependencies = [ "naga", "parking_lot 0.12.1", "profiling", - "raw-window-handle", + "raw-window-handle 0.5.2", "rustc-hash", "smallvec", "thiserror", @@ -5035,14 +6138,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1ecb3258078e936deee14fd4e0febe1cfe9bbb5ffef165cb60218d2ee5eb4448" dependencies = [ "android_system_properties", - "arrayvec", + "arrayvec 0.7.4", "ash", "bit-set", "bitflags 2.4.1", "block", "core-graphics-types", "d3d12", - "foreign-types", + "foreign-types 0.3.2", "glow", "gpu-alloc", "gpu-allocator", @@ -5059,7 +6162,7 @@ dependencies = [ "parking_lot 0.12.1", "profiling", "range-alloc", - "raw-window-handle", + "raw-window-handle 0.5.2", "renderdoc-sys", "rustc-hash", "smallvec", @@ -5137,7 +6240,7 @@ dependencies = [ "clipboard_macos", "clipboard_wayland", "clipboard_x11", - "raw-window-handle", + "raw-window-handle 0.5.2", "thiserror", ] @@ -5174,21 +6277,6 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "windows-sys" -version = "0.42.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7" -dependencies = [ - "windows_aarch64_gnullvm 0.42.2", - "windows_aarch64_msvc 0.42.2", - "windows_i686_gnu 0.42.2", - "windows_i686_msvc 0.42.2", - "windows_x86_64_gnu 0.42.2", - "windows_x86_64_gnullvm 0.42.2", - "windows_x86_64_msvc 0.42.2", -] - [[package]] name = "windows-sys" version = "0.45.0" @@ -5207,6 +6295,15 @@ dependencies = [ "windows-targets 0.48.5", ] +[[package]] +name = "windows-sys" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" +dependencies = [ + "windows-targets 0.52.0", +] + [[package]] name = "windows-targets" version = "0.42.2" @@ -5237,6 +6334,21 @@ dependencies = [ "windows_x86_64_msvc 0.48.5", ] +[[package]] +name = "windows-targets" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd" +dependencies = [ + "windows_aarch64_gnullvm 0.52.0", + "windows_aarch64_msvc 0.52.0", + "windows_i686_gnu 0.52.0", + "windows_i686_msvc 0.52.0", + "windows_x86_64_gnu 0.52.0", + "windows_x86_64_gnullvm 0.52.0", + "windows_x86_64_msvc 0.52.0", +] + [[package]] name = "windows_aarch64_gnullvm" version = "0.42.2" @@ -5249,6 +6361,12 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea" + [[package]] name = "windows_aarch64_msvc" version = "0.42.2" @@ -5261,6 +6379,12 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" +[[package]] +name = "windows_aarch64_msvc" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef" + [[package]] name = "windows_i686_gnu" version = "0.42.2" @@ -5273,6 +6397,12 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" +[[package]] +name = "windows_i686_gnu" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313" + [[package]] name = "windows_i686_msvc" version = "0.42.2" @@ -5285,6 +6415,12 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" +[[package]] +name = "windows_i686_msvc" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a" + [[package]] name = "windows_x86_64_gnu" version = "0.42.2" @@ -5297,6 +6433,12 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" +[[package]] +name = "windows_x86_64_gnu" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd" + [[package]] name = "windows_x86_64_gnullvm" version = "0.42.2" @@ -5309,6 +6451,12 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e" + [[package]] name = "windows_x86_64_msvc" version = "0.42.2" @@ -5321,6 +6469,44 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" +[[package]] +name = "windows_x86_64_msvc" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04" + +[[package]] +name = "winit" +version = "0.25.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "79610794594d5e86be473ef7763f604f2159cbac8c94debd00df8fb41e86c2f8" +dependencies = [ + "bitflags 1.3.2", + "cocoa 0.24.1", + "core-foundation 0.9.3", + "core-graphics 0.22.3", + "core-video-sys", + "dispatch", + "instant", + "lazy_static", + "libc", + "log", + "mio 0.7.14", + "mio-misc", + "ndk 0.3.0", + "ndk-glue", + "ndk-sys 0.2.2", + "objc", + "parking_lot 0.11.2", + "percent-encoding", + "raw-window-handle 0.3.4", + "scopeguard", + "smithay-client-toolkit 0.12.3", + "wayland-client 0.28.6", + "winapi", + "x11-dl", +] + [[package]] name = "winit" version = "0.28.6" @@ -5329,26 +6515,26 @@ dependencies = [ "android-activity", "bitflags 1.3.2", "cfg_aliases", - "core-foundation", - "core-graphics", + "core-foundation 0.9.3", + "core-graphics 0.22.3", "dispatch", "instant", "libc", "log", - "mio", - "ndk", + "mio 0.8.9", + "ndk 0.7.0", "objc2", "once_cell", "orbclient", "percent-encoding", - "raw-window-handle", + "raw-window-handle 0.5.2", "redox_syscall 0.3.5", "sctk-adwaita", - "smithay-client-toolkit", + "smithay-client-toolkit 0.16.1", "wasm-bindgen", "wayland-client 0.29.5", - "wayland-commons", - "wayland-protocols", + "wayland-commons 0.29.5", + "wayland-protocols 0.29.5", "wayland-scanner 0.29.5", "web-sys", "windows-sys 0.45.0", @@ -5357,9 +6543,9 @@ dependencies = [ [[package]] name = "winnow" -version = "0.5.18" +version = "0.5.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "176b6138793677221d420fd2f0aeeced263f197688b36484660da767bca2fa32" +checksum = "829846f3e3db426d4cee4510841b71a8e58aa2a76b1132579487ae430ccd9c7b" dependencies = [ "memchr", ] @@ -5381,7 +6567,7 @@ version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6e99be55648b3ae2a52342f9a870c0e138709a3493261ce9b469afe6e4df6d8a" dependencies = [ - "gethostname", + "gethostname 0.2.3", "nix 0.22.3", "winapi", "winapi-wsapoll", @@ -5389,14 +6575,15 @@ dependencies = [ [[package]] name = "x11rb" -version = "0.11.1" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cdf3c79412dd91bae7a7366b8ad1565a85e35dd049affc3a6a2c549e97419617" +checksum = "b1641b26d4dec61337c35a1b1aaf9e3cba8f46f0b43636c609ab0291a648040a" dependencies = [ - "gethostname", + "as-raw-xcb-connection", + "gethostname 0.3.0", "libc", "libloading 0.7.4", - "nix 0.25.1", + "nix 0.26.4", "once_cell", "winapi", "winapi-wsapoll", @@ -5405,11 +6592,11 @@ dependencies = [ [[package]] name = "x11rb-protocol" -version = "0.11.1" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0b1513b141123073ce54d5bb1d33f801f17508fbd61e02060b1214e96d39c56" +checksum = "82d6c3f9a0fb6701fab8f6cea9b0c0bd5d6876f1f89f7fada07e558077c344bc" dependencies = [ - "nix 0.25.1", + "nix 0.26.4", ] [[package]] @@ -5418,7 +6605,7 @@ version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "463705a63313cd4301184381c5e8042f0a7e9b4bb63653f216311d4ae74690b7" dependencies = [ - "nom", + "nom 7.1.3", ] [[package]] @@ -5437,6 +6624,19 @@ dependencies = [ "winapi", ] +[[package]] +name = "xdg-mime" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87bf7b69bb50588d70a36e467be29d3df3e8c32580276d62eded9738c1a797aa" +dependencies = [ + "dirs-next", + "glob", + "mime", + "nom 5.1.3", + "unicase", +] + [[package]] name = "xml-rs" version = "0.8.19" @@ -5480,7 +6680,7 @@ dependencies = [ "async-executor", "async-fs", "async-io 1.13.0", - "async-lock", + "async-lock 2.8.0", "async-process", "async-recursion", "async-task", @@ -5502,6 +6702,7 @@ dependencies = [ "serde_repr", "sha1", "static_assertions", + "tokio", "tracing", "uds_windows", "winapi", @@ -5517,7 +6718,7 @@ version = "3.14.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "41d1794a946878c0e807f55a397187c11fc7a038ba5d868e7db4f3bd7760bc9d" dependencies = [ - "proc-macro-crate", + "proc-macro-crate 1.3.1", "proc-macro2", "quote", "regex", @@ -5544,22 +6745,22 @@ checksum = "dd15f8e0dbb966fd9245e7498c7e9e5055d9e5c8b676b95bd67091cd11a1e697" [[package]] name = "zerocopy" -version = "0.7.23" +version = "0.7.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e50cbb27c30666a6108abd6bc7577556265b44f243e2be89a8bc4e07a528c107" +checksum = "e97e415490559a91254a2979b4829267a57d2fcd741a98eee8b722fb57289aa0" dependencies = [ "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.7.23" +version = "0.7.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a25f293fe55f0a48e7010d65552bb63704f6ceb55a1a385da10d41d8f78e4a3d" +checksum = "dd7e48ccf166952882ca8bd778a43502c64f33bf94c12ebe2a7f08e5a0f6689f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -5582,6 +6783,7 @@ dependencies = [ "libc", "serde", "static_assertions", + "url", "zvariant_derive", ] @@ -5591,7 +6793,7 @@ version = "3.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "934d7a7dfc310d6ee06c87ffe88ef4eca7d3e37bb251dece2ef93da8f17d8ecd" dependencies = [ - "proc-macro-crate", + "proc-macro-crate 1.3.1", "proc-macro2", "quote", "syn 1.0.109", diff --git a/pkgs/by-name/co/cosmic-edit/package.nix b/pkgs/by-name/co/cosmic-edit/package.nix new file mode 100644 index 000000000000..854fd8123045 --- /dev/null +++ b/pkgs/by-name/co/cosmic-edit/package.nix @@ -0,0 +1,97 @@ +{ + lib, + stdenv, + fetchFromGitHub, + rust, + rustPlatform, + cmake, + makeBinaryWrapper, + cosmic-icons, + just, + pkg-config, + libxkbcommon, + glib, + gtk3, + libinput, + fontconfig, + freetype, + wayland, + xorg, +}: + +rustPlatform.buildRustPackage rec { + pname = "cosmic-edit"; + version = "unstable-2023-11-29"; + + src = fetchFromGitHub { + owner = "pop-os"; + repo = pname; + rev = "4a3dd101f35eb3c1c585f104d78ed4ee31d393d3"; + hash = "sha256-pk+4u13oWZ4fgXy1tlDgq+E4J+UddjTNSexMm4dgBSo="; + }; + + cargoLock = { + lockFile = ./Cargo.lock; + outputHashes = { + "accesskit-0.11.0" = "sha256-xVhe6adUb8VmwIKKjHxwCwOo5Y1p3Or3ylcJJdLDrrE="; + "atomicwrites-0.4.2" = "sha256-QZSuGPrJXh+svMeFWqAXoqZQxLq/WfIiamqvjJNVhxA="; + "cosmic-config-0.1.0" = "sha256-wBliqZbRHYiwZmu0vHeIP5DFzg/1IeQP3aMxiYC88bo="; + "cosmic-text-0.10.0" = "sha256-fE5HkhITLw0OBfFLFMsKEJw5idO265i4S7qylHTt7C0="; + "sctk-adwaita-0.5.4" = "sha256-yK0F2w/0nxyKrSiHZbx7+aPNY2vlFs7s8nu/COp2KqQ="; + "softbuffer-0.3.3" = "sha256-eKYFVr6C1+X6ulidHIu9SP591rJxStxwL9uMiqnXx4k="; + "smithay-client-toolkit-0.16.1" = "sha256-z7EZThbh7YmKzAACv181zaEZmWxTrMkFRzP0nfsHK6c="; + "systemicons-0.7.0" = "sha256-zzAI+6mnpQOh+3mX7/sJ+w4a7uX27RduQ99PNxLNF78="; + "taffy-0.3.11" = "sha256-SCx9GEIJjWdoNVyq+RZAGn0N71qraKZxf9ZWhvyzLaI="; + "winit-0.28.6" = "sha256-FhW6d2XnXCGJUMoT9EMQew9/OPXiehy/JraeCiVd76M="; + }; + }; + + postPatch = '' + substituteInPlace justfile --replace '#!/usr/bin/env' "#!$(command -v env)" + ''; + + nativeBuildInputs = [ + cmake + just + pkg-config + makeBinaryWrapper + ]; + buildInputs = [ + libxkbcommon + xorg.libX11 + libinput + fontconfig + freetype + wayland + glib + gtk3 + ]; + + dontUseJustBuild = true; + + justFlags = [ + "--set" + "prefix" + (placeholder "out") + "--set" + "bin-src" + "target/${ + rust.lib.toRustTargetSpecShort stdenv.hostPlatform + }/release/cosmic-edit" + ]; + + # LD_LIBRARY_PATH can be removed once tiny-xlib is bumped above 0.2.2 + postInstall = '' + wrapProgram "$out/bin/${pname}" \ + --suffix XDG_DATA_DIRS : "${cosmic-icons}/share" \ + --prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ xorg.libX11 ]} + ''; + + meta = with lib; { + homepage = "https://github.com/pop-os/cosmic-edit"; + description = "Text Editor for the COSMIC Desktop Environment"; + license = licenses.gpl3Only; + maintainers = with maintainers; [ ahoneybun ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/by-name/do/doge/package.nix b/pkgs/by-name/do/doge/package.nix new file mode 100644 index 000000000000..975fbfa84922 --- /dev/null +++ b/pkgs/by-name/do/doge/package.nix @@ -0,0 +1,33 @@ +{ + lib, + python3Packages, + fetchFromGitHub, + fetchpatch, +}: +python3Packages.buildPythonPackage rec { + pname = "doge"; + version = "3.6.0"; + + src = fetchFromGitHub { + owner = "Olivia5k"; + repo = "doge"; + rev = version; + hash = "sha256-72nRghD5k0ofrlvV3hEdyrr6uzV4+8At1bOCmRZTxhk="; + }; + + patches = [ + # https://github.com/Olivia5k/doge/pull/66, adds a small doge + (fetchpatch { + url = "https://github.com/Olivia5k/doge/commit/14e3ccc0a3f1e91862492e20a34d008768a34039.patch"; + hash = "sha256-3F+7F9RuoiVWoN+69T7tM871AXX1IQbHqFxD+S3TjxQ="; + }) + ]; + + meta = { + homepage = "https://github.com/Olivia5k/doge"; + description = "Wow very terminal doge"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [Gonzih quantenzitrone]; + mainProgram = "doge"; + }; +} diff --git a/pkgs/by-name/em/emojify/package.nix b/pkgs/by-name/em/emojify/package.nix new file mode 100644 index 000000000000..05833d931654 --- /dev/null +++ b/pkgs/by-name/em/emojify/package.nix @@ -0,0 +1,31 @@ +{ lib +, stdenv +, fetchFromGitHub +}: + +stdenv.mkDerivation rec { + pname = "emojify"; + version = "2.2.0"; + + src = fetchFromGitHub { + owner = "mrowa44"; + repo = "emojify"; + rev = version; + hash = "sha256-6cV+S8wTqJxPGsxiJ3hP6/CYPMWdF3qnz4ddL+F/oJU="; + }; + + installPhase = '' + runHook preInstall + install -Dm755 emojify $out/bin/emojify + runHook postInstall + ''; + + meta = with lib; { + description = "Emoji on the command line"; + homepage = "https://github.com/mrowa44/emojify"; + license = licenses.mit; + maintainers = with maintainers; [ snowflake ]; + platforms = platforms.all; + mainProgram = "emojify"; + }; +} diff --git a/pkgs/by-name/fr/frankenphp/package.nix b/pkgs/by-name/fr/frankenphp/package.nix index ffe66b30279a..3bc94389d67f 100644 --- a/pkgs/by-name/fr/frankenphp/package.nix +++ b/pkgs/by-name/fr/frankenphp/package.nix @@ -19,13 +19,13 @@ let pieBuild = stdenv.hostPlatform.isMusl; in buildGoModule rec { pname = "frankenphp"; - version = "1.0.0-rc.3"; + version = "1.0.0-rc.4"; src = fetchFromGitHub { owner = "dunglas"; repo = "frankenphp"; rev = "v${version}"; - hash = "sha256-Al0gCxTb6s41ugX9J8N8lshop9kP3RPGCzlq5etk1RY="; + hash = "sha256-4jNCKHt4eYI1BNaonIdS1Eq2OnJwgrU6qWZoiSpeIYk="; }; sourceRoot = "source/caddy"; diff --git a/pkgs/by-name/gi/gifgen/package.nix b/pkgs/by-name/gi/gifgen/package.nix new file mode 100644 index 000000000000..49c87eda795d --- /dev/null +++ b/pkgs/by-name/gi/gifgen/package.nix @@ -0,0 +1,39 @@ +{ lib +, stdenv +, fetchFromGitHub +, ffmpeg +, makeWrapper +}: + +stdenv.mkDerivation rec { + pname = "gifgen"; + version = "1.2.0"; + + src = fetchFromGitHub { + owner = "lukechilds"; + repo = "gifgen"; + rev = version; + hash = "sha256-ni9RL4LyMejmu8vm5HC8WSTqAPQMBQNRDOZ4ZfvrkSU="; + }; + + nativeBuildInputs = [ + makeWrapper + ]; + + installPhase = '' + runHook preInstall + install -Dm755 gifgen $out/bin/gifgen + wrapProgram $out/bin/gifgen \ + --prefix PATH : ${lib.makeBinPath [ ffmpeg ]} + runHook postInstall + ''; + + meta = with lib; { + description = "Simple high quality GIF encoding"; + homepage = "https://github.com/lukechilds/gifgen"; + license = licenses.mit; + maintainers = with maintainers; [ snowflake ]; + mainProgram = "gifgen"; + platforms = platforms.all; + }; +} diff --git a/pkgs/by-name/li/lib3270/package.nix b/pkgs/by-name/li/lib3270/package.nix new file mode 100644 index 000000000000..bdb74eceb282 --- /dev/null +++ b/pkgs/by-name/li/lib3270/package.nix @@ -0,0 +1,56 @@ +{ lib +, stdenv +, fetchFromGitHub +, which +, pkg-config +, autoconf +, automake +, libtool +, gettext +, openssl +, curl +}: + +stdenv.mkDerivation rec { + pname = "lib3270"; + version = "5.4"; + + src = fetchFromGitHub { + owner = "PerryWerneck"; + repo = pname; + rev = version; + hash = "sha256-w6Bg+TvSDAuZwtu/nyAIuq6pgheM5nXtfuryECfnKng="; + }; + + nativeBuildInputs = [ + which + pkg-config + autoconf + automake + libtool + ]; + + buildInputs = [ + gettext + openssl + curl + ]; + + postPatch = '' + # Patch the required version. + sed -i -e "s/20211118/19800101/" src/core/session.c + ''; + + preConfigure = '' + NOCONFIGURE=1 sh autogen.sh + ''; + + enableParallelBuilds = true; + + meta = with lib; { + description = "TN3270 client Library"; + homepage = "https://github.com/PerryWerneck/lib3270"; + license = licenses.lgpl3Plus; + maintainers = [ maintainers.vifino ]; + }; +} diff --git a/pkgs/by-name/li/libv3270/package.nix b/pkgs/by-name/li/libv3270/package.nix new file mode 100644 index 000000000000..90b6fd9f2832 --- /dev/null +++ b/pkgs/by-name/li/libv3270/package.nix @@ -0,0 +1,58 @@ +{ lib +, stdenv +, fetchFromGitHub +, autoconf +, automake +, libtool +, which +, pkg-config +, gtk3 +, lib3270 +}: + +stdenv.mkDerivation rec { + pname = "libv3270"; + version = "5.4"; + + src = fetchFromGitHub { + owner = "PerryWerneck"; + repo = pname; + rev = version; + hash = "sha256-Z3FvxPa1pfeECxfB5ZL6gwhkbTKFpfO3D/zLVLF+uiI="; + }; + + nativeBuildInputs = [ + which + pkg-config + autoconf + automake + libtool + ]; + + buildInputs = [ + gtk3 + lib3270 + ]; + + postPatch = '' + # lib3270_build_data_filename is relative to lib3270's share - not ours. + for f in $(find . -type f -iname "*.c"); do + sed -i -e "s@lib3270_build_data_filename(@g_build_filename(\"$out/share/pw3270\", @" "$f" + done + ''; + + preConfigure = '' + mkdir -p scripts + touch scripts/config.rpath + NOCONFIGURE=1 sh ./autogen.sh + ''; + + enableParallelBuilds = true; + + meta = with lib; { + description = "3270 Virtual Terminal for GTK"; + homepage = "https://github.com/PerryWerneck/libv3270"; + license = licenses.lgpl3Plus; + maintainers = [ maintainers.vifino ]; + }; +} diff --git a/pkgs/by-name/ma/material-cursors/package.nix b/pkgs/by-name/ma/material-cursors/package.nix new file mode 100644 index 000000000000..d3d7c63672cc --- /dev/null +++ b/pkgs/by-name/ma/material-cursors/package.nix @@ -0,0 +1,42 @@ +{ lib +, stdenvNoCC +, fetchFromGitHub +, inkscape +, xcursorgen +}: + +stdenvNoCC.mkDerivation { + pname = "material-cursors"; + version = "unstable-2023-11-30"; + + src = fetchFromGitHub { + owner = "varlesh"; + repo = "material-cursors"; + rev = "2a5f302fefe04678c421473bed636b4d87774b4a"; + hash = "sha256-uC2qx3jF4d2tGLPnXEpogm0vyC053MvDVVdVXX8AZ60="; + }; + + nativeBuildInputs = [ + inkscape + xcursorgen + ]; + + buildPhase = '' + runHook preBuild + + # Silences the inkscape warning spam. + HOME=$(pwd) bash build.sh 2> /dev/null + + runHook postBuild + ''; + + installFlags = [ "PREFIX=$(out)" ]; + + meta = { + description = "Material cursors for Linux"; + homepage = "https://github.com/varlesh/material-cursors"; + license = lib.licenses.gpl3Only; + platforms = lib.platforms.linux; + maintainers = with lib.maintainers; [ RGBCube ]; + }; +} diff --git a/pkgs/by-name/no/normcap/package.nix b/pkgs/by-name/no/normcap/package.nix new file mode 100644 index 000000000000..8db68e9ae7e2 --- /dev/null +++ b/pkgs/by-name/no/normcap/package.nix @@ -0,0 +1,117 @@ +{ lib +, stdenv +, python3 +, fetchFromGitHub +, tesseract4 +, leptonica +, wl-clipboard +, libnotify +, xorg +}: + +let + + ps = python3.pkgs; + + wrapperDeps = [ + leptonica + tesseract4 + libnotify + ] ++ lib.optionals stdenv.isLinux [ + wl-clipboard + ]; + +in + +ps.buildPythonApplication rec { + pname = "normcap"; + version = "0.4.4"; + format = "pyproject"; + + disabled = ps.pythonOlder "3.9"; + + src = fetchFromGitHub { + owner = "dynobo"; + repo = "normcap"; + rev = "refs/tags/v${version}"; + hash = "sha256-dShtmoqS9TC3PHuwq24OEOhYfBHGhDCma8Du8QCkFuI="; + }; + + pythonRemoveDeps = [ + "PySide6-Essentials" + ]; + + nativeBuildInputs = [ + ps.pythonRelaxDepsHook + ps.poetry-core + ]; + + propagatedBuildInputs = [ + ps.pyside6 + ]; + + preFixup = '' + makeWrapperArgs+=( + "''${qtWrapperArgs[@]}" + --set QT_QPA_PLATFORM xcb + --prefix PATH : ${lib.makeBinPath wrapperDeps} + ) + ''; + + nativeCheckInputs = wrapperDeps ++ [ + ps.pytestCheckHook + ps.pytest-qt + ps.toml + ] ++ lib.optionals stdenv.isLinux [ + ps.pytest-xvfb + xorg.xorgserver + ]; + + preCheck = '' + export HOME=$(mktemp -d) + '' + lib.optionalString stdenv.isLinux '' + # setup a virtual x11 display + export DISPLAY=:$((2000 + $RANDOM % 1000)) + Xvfb $DISPLAY -screen 5 1024x768x8 & + xvfb_pid=$! + ''; + + postCheck = lib.optionalString stdenv.isLinux '' + # cleanup the virtual x11 display + kill $xvfb_pid + ''; + + disabledTests = [ + # requires a wayland session (no xclip support) + "test_wl_copy" + # times out, unknown why + "test_update_checker_triggers_checked_signal" + # touches network + "test_urls_reachable" + # requires xdg + "test_synchronized_capture" + ] ++ lib.optionals stdenv.isDarwin [ + # requires impure pbcopy + "test_get_copy_func_with_pbcopy" + "test_get_copy_func_without_pbcopy" + "test_perform_pbcopy" + ]; + + disabledTestPaths = [ + # touches network + "tests/tests_gui/test_downloader.py" + # fails to import, causes pytest to freeze + "tests/tests_gui/test_language_manager.py" + ] ++ lib.optionals stdenv.isDarwin [ + # requires a display + "tests/integration/test_normcap.py" + ]; + + meta = with lib; { + description = "OCR powered screen-capture tool to capture information instead of images"; + homepage = "https://dynobo.github.io/normcap/"; + license = licenses.gpl3Plus; + maintainers = with maintainers; [ cafkafk pbsds ]; + mainProgram = "normcap"; + }; +} diff --git a/pkgs/by-name/pa/passwdqc/package.nix b/pkgs/by-name/pa/passwdqc/package.nix new file mode 100644 index 000000000000..f70076243fbb --- /dev/null +++ b/pkgs/by-name/pa/passwdqc/package.nix @@ -0,0 +1,67 @@ +{ lib +, stdenv +, fetchFromGitHub +, fetchpatch +, libxcrypt +, pam +, pkg-config +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "passwdqc"; + version = "2.0.3"; + + src = fetchFromGitHub { + owner = "openwall"; + repo = "passwdqc"; + rev = "v${finalAttrs.version}"; + hash = "sha256-EgPeccqS+DDDMBVMc4bd70EMnXFuyglftxuqoaYHwNY="; + }; + + patches = [ + (fetchpatch { + name = "0001-fix-solaris-macos-builds.patch"; + url = "https://github.com/openwall/passwdqc/commit/fbf38229857f3d1982aa305c20da5e1ea0195b3e.patch"; + hash = "sha256-FaEWROHwFzd4ZTeKyPvuAr9vcgnHEv8MhERblIU8JC4="; + }) + ]; + + outputs = [ "out" "man" ]; + + nativeBuildInputs = [ + pkg-config + ]; + + buildInputs = [ + libxcrypt + pam + ]; + + strictDeps = true; + + makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" ]; + + installFlags = [ + # Yet another software that does not use GNUInstallDirs Convention... + "BINDIR=$(out)/bin" + "CONFDIR=$(out)/etc" + "DEVEL_LIBDIR=$(out)/lib" + "INCLUDEDIR=$(out)/include" + "LOCALEDIR=$(out)/share/locale" + "MANDIR=$(man)/man" + "PKGCONFIGDIR=$(out)/lib/pkgconfig" + "SECUREDIR=$(out)/lib/security" + "SECUREDIR_DARWIN=$(out)/lib/security" + "SHARED_LIBDIR=$(out)/lib" + "SHARED_LIBDIR_REL=$(out)/lib" + ]; + + meta = { + homepage = "https://www.openwall.com/passwdqc/"; + description = "Passphrase strength checking and enforcement"; + license = with lib.licenses; [ bsd3 ]; + maintainers = with lib.maintainers; [ AndersonTorres ]; + mainProgram = "passwdqc"; + platforms = lib.platforms.unix; + }; +}) diff --git a/pkgs/development/tools/misc/phpunit/default.nix b/pkgs/by-name/ph/phpunit/package.nix similarity index 88% rename from pkgs/development/tools/misc/phpunit/default.nix rename to pkgs/by-name/ph/phpunit/package.nix index 9690e87fc532..e9c87ebbdb32 100644 --- a/pkgs/development/tools/misc/phpunit/default.nix +++ b/pkgs/by-name/ph/phpunit/package.nix @@ -2,13 +2,13 @@ php.buildComposerProject (finalAttrs: { pname = "phpunit"; - version = "10.5.0"; + version = "10.5.1"; src = fetchFromGitHub { owner = "sebastianbergmann"; repo = "phpunit"; rev = finalAttrs.version; - hash = "sha256-CpgYMUJE7c2eRBYkK/vMRdGgzY7Y7K/wMmyUH+Bssjs="; + hash = "sha256-uYSVzKLefcBMqfrHaF6pg4gohAeb6LVg8QGaTS8jwfE="; }; vendorHash = "sha256-uUdgz3ZZ+3nU07pUC1sdkNgU1b1beo3sS/yySUzdZwU="; diff --git a/pkgs/by-name/po/polybar/package.nix b/pkgs/by-name/po/polybar/package.nix index ee649f396fa3..613b75d646af 100644 --- a/pkgs/by-name/po/polybar/package.nix +++ b/pkgs/by-name/po/polybar/package.nix @@ -42,13 +42,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "polybar"; - version = "3.7.0"; + version = "3.7.1"; src = fetchFromGitHub { owner = "polybar"; repo = "polybar"; rev = finalAttrs.version; - hash = "sha256-Z1rL9WvEZHr5M03s9KCJ6O6rNuaK7PpwUDaatYuCocI="; + hash = "sha256-DX648jY1vewl3ImK84gF6/vtcSCg3wtgq6Ie3fCwZoA="; fetchSubmodules = true; }; diff --git a/pkgs/by-name/pw/pw3270/package.nix b/pkgs/by-name/pw/pw3270/package.nix new file mode 100644 index 000000000000..4e35f393dbcb --- /dev/null +++ b/pkgs/by-name/pw/pw3270/package.nix @@ -0,0 +1,76 @@ +{ lib +, stdenv +, fetchFromGitHub +, which +, pkg-config +, automake +, autoconf +, m4 +, libtool +, gtk3 +, libv3270 +, lib3270 +, openssl +, gettext +, desktop-file-utils +, glib +, wrapGAppsHook +}: + +stdenv.mkDerivation rec { + pname = "pw3270"; + version = "5.4"; + + src = fetchFromGitHub { + owner = "PerryWerneck"; + repo = pname; + rev = version; + hash = "sha256-Nk/OUqrWngKgb1D1Wi8q5ygKtvuRKUPhPQaLvWi1Z4g="; + }; + + nativeBuildInputs = [ + which + pkg-config + autoconf + automake + libtool + desktop-file-utils + wrapGAppsHook + ]; + + buildInputs = [ + gtk3 + gettext + libv3270 + lib3270 + openssl + ]; + + postPatch = '' + # lib3270_build_data_filename is relative to lib3270's share - not ours. + for f in $(find . -type f -iname "*.c"); do + sed -i -e "s@lib3270_build_data_filename(@g_build_filename(\"$out/share/pw3270\", @" "$f" + done + ''; + + preConfigure = '' + NOCONFIGURE=1 sh autogen.sh + ''; + + postFixup = '' + # Schemas get installed to wrong directory. + mkdir -p $out/share/glib-2.0 + mv $out/share/gsettings-schemas/${pname}-${version}/glib-2.0/schemas $out/share/glib-2.0/ + rm -rf $out/share/gsettings-schemas + ''; + + enableParallelBuilds = true; + + meta = with lib; { + description = "3270 Emulator for gtk"; + homepage = "https://softwarepublico.gov.br/social/pw3270/"; + license = licenses.lgpl3Plus; + maintainers = [ maintainers.vifino ]; + mainProgram = "pw3270"; + }; +} diff --git a/pkgs/tools/wayland/sov/default.nix b/pkgs/by-name/so/sov/package.nix similarity index 89% rename from pkgs/tools/wayland/sov/default.nix rename to pkgs/by-name/so/sov/package.nix index c8ddc6524f28..d6d9f4053123 100644 --- a/pkgs/tools/wayland/sov/default.nix +++ b/pkgs/by-name/so/sov/package.nix @@ -11,17 +11,18 @@ , libxkbcommon , wayland , wayland-protocols +, gitUpdater }: stdenv.mkDerivation (finalAttrs: { pname = "sov"; - version = "0.92b"; + version = "0.93"; src = fetchFromGitHub { owner = "milgra"; repo = "sov"; rev = finalAttrs.version; - hash = "sha256-1L5D0pzcXbkz3VS7VB6ID8BJEbGeNxjo3xCr71CGcIo="; + hash = "sha256-Oc25ixrl0QX0jBBMV34BPAixyBikvevXJ1JNGZymPhg="; }; patches = [ @@ -54,6 +55,8 @@ stdenv.mkDerivation (finalAttrs: { wayland-protocols ]; + passthru.updateScript = gitUpdater { }; + meta = { description = "Workspace overview app for sway"; homepage = "https://github.com/milgra/sov"; diff --git a/pkgs/by-name/vi/vinegar/package.nix b/pkgs/by-name/vi/vinegar/package.nix new file mode 100644 index 000000000000..6fe0035dab6b --- /dev/null +++ b/pkgs/by-name/vi/vinegar/package.nix @@ -0,0 +1,54 @@ +{ lib +, buildGoModule +, fetchFromGitHub +, wine +, makeBinaryWrapper +, pkg-config +, libGL +, libxkbcommon +, xorg +}: + +buildGoModule rec { + pname = "vinegar"; + version = "1.5.8"; + + src = fetchFromGitHub { + owner = "vinegarhq"; + repo = "vinegar"; + rev = "v${version}"; + hash = "sha256-1KDcc9Hms1hQgpvf/49zFJ85kDUsieNcoOTYaZWV+S0="; + }; + + vendorHash = "sha256-UJLwSOJ4vZt3kquKllm5OMfFheZtAG5gLSA20313PpA="; + + nativeBuildInputs = [ pkg-config makeBinaryWrapper ]; + buildInputs = [ libGL libxkbcommon xorg.libX11 xorg.libXcursor xorg.libXfixes wine ]; + + buildPhase = '' + runHook preBuild + make PREFIX=$out + runHook postBuild + ''; + + installPhase = '' + runHook preInstall + make PREFIX=$out install + runHook postInstall + ''; + + postInstall = '' + wrapProgram $out/bin/vinegar \ + --prefix PATH : ${lib.makeBinPath [ wine ]} + ''; + + meta = with lib; { + description = "An open-source, minimal, configurable, fast bootstrapper for running Roblox on Linux"; + homepage = "https://github.com/vinegarhq/vinegar"; + changelog = "https://github.com/vinegarhq/vinegar/releases/tag/v${version}"; + mainProgram = "vinegar"; + license = licenses.gpl3Only; + platforms = [ "x86_64-linux" "i686-linux" ]; + maintainers = with maintainers; [ nyanbinary ]; + }; +} diff --git a/pkgs/data/icons/vimix-cursor-theme/default.nix b/pkgs/data/icons/vimix-cursor-theme/default.nix new file mode 100644 index 000000000000..4d20acca83b0 --- /dev/null +++ b/pkgs/data/icons/vimix-cursor-theme/default.nix @@ -0,0 +1,33 @@ +{ stdenvNoCC +, fetchFromGitHub +, lib +}: + +stdenvNoCC.mkDerivation rec { + pname = "vimix-cursor-theme"; + version = "2020-02-24"; + + src = fetchFromGitHub { + owner = "vinceliuice"; + repo = "Vimix-cursors"; + rev = version; + hash = "sha256-TfcDer85+UOtDMJVZJQr81dDy4ekjYgEvH1RE1IHMi4="; + }; + + installPhase = '' + sed -i 's/Vimix Cursors$/Vimix-Cursors/g' dist{,-white}/index.theme + + install -dm 755 $out/share/icons/Vimix-Cursors{,-White} + + cp -dr --no-preserve='ownership' dist/* $out/share/icons/Vimix-Cursors + cp -dr --no-preserve='ownership' dist-white/* $out/share/icons/Vimix-Cursors-White + ''; + + meta = with lib; { + description = "An x-cursor theme inspired by Materia design and based on capitaine-cursors"; + homepage = "https://github.com/vinceliuice/Vimix-cursors"; + license = licenses.gpl3Only; + platforms = platforms.all; + maintainers = with maintainers; [ redxtech ]; + }; +} diff --git a/pkgs/desktops/lomiri/default.nix b/pkgs/desktops/lomiri/default.nix index 2b559a6a7273..bcaa19ab27df 100644 --- a/pkgs/desktops/lomiri/default.nix +++ b/pkgs/desktops/lomiri/default.nix @@ -17,6 +17,9 @@ let gmenuharness = callPackage ./development/gmenuharness { }; libusermetrics = callPackage ./development/libusermetrics { }; lomiri-api = callPackage ./development/lomiri-api { }; + + #### Services + biometryd = callPackage ./services/biometryd { }; }; in lib.makeScope libsForQt5.newScope packages diff --git a/pkgs/desktops/lomiri/services/biometryd/default.nix b/pkgs/desktops/lomiri/services/biometryd/default.nix new file mode 100644 index 000000000000..c8d0da9a65c2 --- /dev/null +++ b/pkgs/desktops/lomiri/services/biometryd/default.nix @@ -0,0 +1,137 @@ +{ stdenv +, lib +, fetchFromGitLab +, fetchpatch +, gitUpdater +, testers +, boost +, cmake +, cmake-extras +, dbus +, dbus-cpp +, gtest +, libapparmor +, libelf +, pkg-config +, process-cpp +, properties-cpp +, qtbase +, qtdeclarative +, sqlite +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "biometryd"; + version = "0.3.0"; + + src = fetchFromGitLab { + owner = "ubports"; + repo = "development/core/biometryd"; + rev = finalAttrs.version; + hash = "sha256-b095rsQnd63Ziqe+rn3ROo4LGXZxZ3Sa6h3apzCuyCs="; + }; + + outputs = [ + "out" + "dev" + ]; + + patches = [ + # https://gitlab.com/ubports/development/core/biometryd/-/merge_requests/31 + (fetchpatch { + url = "https://gitlab.com/OPNA2608/biometryd/-/commit/d01d979e4f98c6473761d1ace308aa182017804e.patch"; + hash = "sha256-JxL3BLuh33ptfneU1y2qNGFKpeMlZlTMwCK97Rk3aTA="; + }) + (fetchpatch { + url = "https://gitlab.com/OPNA2608/biometryd/-/commit/3cec6a3d42ea6aba8892da2c771b317f44daf9e2.patch"; + hash = "sha256-Ij/aio38WmZ+NsUSbM195Gwb83goWIcCnJvGwAOJi50="; + }) + (fetchpatch { + url = "https://gitlab.com/OPNA2608/biometryd/-/commit/e89bd9444bc1cfe84a9aa93faa23057c80f39564.patch"; + hash = "sha256-1vEG349X9+SvY/f3no/l5cMVGpdzC8h/8XOZwL/70Dc="; + }) + + # https://gitlab.com/ubports/development/core/biometryd/-/merge_requests/32 + (fetchpatch { + url = "https://gitlab.com/OPNA2608/biometryd/-/commit/9e52fad0139c5a45f69e6a6256b2b5ff54f77740.patch"; + hash = "sha256-DZSdzKq6EYgAllKSDgkGk2g57zHN+gI5fOoj7U5AcKY="; + }) + ]; + + postPatch = '' + # Remove with !31 patches, fetchpatch can't apply renames + pushd data + for type in conf service; do + mv biometryd.$type biometryd.$type.in + substituteInPlace biometryd.$type.in \ + --replace '/usr/bin' "\''${CMAKE_INSTALL_FULL_BINDIR}" + done + popd + + # Uses pkg_get_variable, cannot substitute prefix with that + substituteInPlace CMakeLists.txt \ + --replace 'pkg_get_variable(SYSTEMD_SYSTEM_UNIT_DIR systemd systemdsystemunitdir)' 'set(SYSTEMD_SYSTEM_UNIT_DIR "${placeholder "out"}/lib/systemd/system")' + + substituteInPlace src/biometry/qml/Biometryd/CMakeLists.txt \ + --replace "\''${CMAKE_INSTALL_LIBDIR}/qt5/qml" "\''${CMAKE_INSTALL_PREFIX}/${qtbase.qtQmlPrefix}" + '' + lib.optionalString (!finalAttrs.doCheck) '' + sed -i -e '/add_subdirectory(tests)/d' CMakeLists.txt + ''; + + strictDeps = true; + + nativeBuildInputs = [ + cmake + pkg-config + qtdeclarative # qmlplugindump + ]; + + buildInputs = [ + boost + cmake-extras + dbus + dbus-cpp + libapparmor + libelf + process-cpp + properties-cpp + qtbase + qtdeclarative + sqlite + ]; + + checkInputs = [ + gtest + ]; + + dontWrapQtApps = true; + + cmakeFlags = [ + "-DENABLE_WERROR=OFF" + "-DWITH_HYBRIS=OFF" + ]; + + preBuild = '' + # Generating plugins.qmltypes (also used in checkPhase?) + export QT_PLUGIN_PATH=${lib.getBin qtbase}/${qtbase.qtPluginPrefix} + ''; + + doCheck = stdenv.buildPlatform.canExecute stdenv.hostPlatform; + + meta = with lib; { + description = "Mediates/multiplexes access to biometric devices"; + longDescription = '' + biometryd mediates and multiplexes access to biometric devices present + on the system, enabling applications and system components to leverage + them for identification and verification of users. + ''; + homepage = "https://gitlab.com/ubports/development/core/biometryd"; + license = licenses.lgpl3Only; + maintainers = teams.lomiri.members; + mainProgram = "biometryd"; + platforms = platforms.linux; + pkgConfigModules = [ + "biometryd" + ]; + }; +}) diff --git a/pkgs/desktops/xfce/applications/parole/default.nix b/pkgs/desktops/xfce/applications/parole/default.nix index 070ea4f7d0cb..eeadfe793a7c 100644 --- a/pkgs/desktops/xfce/applications/parole/default.nix +++ b/pkgs/desktops/xfce/applications/parole/default.nix @@ -1,15 +1,25 @@ -{ lib, mkXfceDerivation, dbus, dbus-glib -, gst_all_1, gtk3, libnotify, libxfce4ui, libxfce4util -, taglib, xfconf }: +{ lib +, mkXfceDerivation +, dbus +, dbus-glib +, gst_all_1 +, gtk3 +, libnotify +, libX11 +, libxfce4ui +, libxfce4util +, taglib +, xfconf +}: # Doesn't seem to find H.264 codec even though built with gst-plugins-bad. mkXfceDerivation { category = "apps"; pname = "parole"; - version = "4.18.0"; + version = "4.18.1"; - sha256 = "sha256-TLH9ZUggjclJlbBg3EBVgbcrdiMZ8n+cGDgfNgYNiPI="; + sha256 = "sha256-g+Wy90tHpCeylbU7aUa8578ehmuyWI5WlCK7YdJKlNQ="; postPatch = '' substituteInPlace src/plugins/mpris2/Makefile.am \ @@ -25,6 +35,7 @@ mkXfceDerivation { gst-plugins-ugly gtk3 libnotify + libX11 libxfce4ui libxfce4util taglib diff --git a/pkgs/desktops/xfce/core/tumbler/default.nix b/pkgs/desktops/xfce/core/tumbler/default.nix index 7427e8d74182..e8c7ac2b4948 100644 --- a/pkgs/desktops/xfce/core/tumbler/default.nix +++ b/pkgs/desktops/xfce/core/tumbler/default.nix @@ -16,9 +16,9 @@ mkXfceDerivation { category = "xfce"; pname = "tumbler"; - version = "4.18.1"; + version = "4.18.2"; - sha256 = "sha256-hn77W8IsvwNc9xSuDe9rXw9499olOvvJ2P7q+26HIG8="; + sha256 = "sha256-thioE0q2qnV4weJFPz8OWoHIRuUcXnQEviwBtCWsSV4="; buildInputs = [ libxfce4util diff --git a/pkgs/desktops/xfce/core/xfce4-power-manager/default.nix b/pkgs/desktops/xfce/core/xfce4-power-manager/default.nix index 19b552937119..c483c58c8172 100644 --- a/pkgs/desktops/xfce/core/xfce4-power-manager/default.nix +++ b/pkgs/desktops/xfce/core/xfce4-power-manager/default.nix @@ -12,9 +12,9 @@ mkXfceDerivation { category = "xfce"; pname = "xfce4-power-manager"; - version = "4.18.2"; + version = "4.18.3"; - sha256 = "sha256-1+DP5CACzzj96FyRTeCdVEFORnpzFT49d9Uk1iijbFs="; + sha256 = "sha256-CuW2siApho7u8P01t15dAiqNAiwQzAMZsEugYuKN4kM="; buildInputs = [ gtk3 diff --git a/pkgs/desktops/xfce/core/xfce4-settings/default.nix b/pkgs/desktops/xfce/core/xfce4-settings/default.nix index 022a04cff963..31aa4bc2e98a 100644 --- a/pkgs/desktops/xfce/core/xfce4-settings/default.nix +++ b/pkgs/desktops/xfce/core/xfce4-settings/default.nix @@ -16,9 +16,9 @@ mkXfceDerivation { category = "xfce"; pname = "xfce4-settings"; - version = "4.18.3"; + version = "4.18.4"; - sha256 = "sha256-QGh5th790qkvqchUfi+kOAJ9A1M+zEIzMxOM5eCGPEk="; + sha256 = "sha256-f6ldTmTSvfRjn6j/LKIoFI3cbYZFtNdnAq3dQewc948="; postPatch = '' for f in xfsettingsd/pointers.c dialogs/mouse-settings/main.c; do diff --git a/pkgs/development/compilers/flix/default.nix b/pkgs/development/compilers/flix/default.nix index 9ce582623fe1..544c1f6ed920 100644 --- a/pkgs/development/compilers/flix/default.nix +++ b/pkgs/development/compilers/flix/default.nix @@ -2,11 +2,11 @@ stdenvNoCC.mkDerivation rec { pname = "flix"; - version = "0.41.0"; + version = "0.42.0"; src = fetchurl { url = "https://github.com/flix/flix/releases/download/v${version}/flix.jar"; - sha256 = "sha256-bDeqwk+grkCxmGE9H8Ks7Q8KvLxNCzaLe44DlR6E7YE="; + sha256 = "sha256-fkYyJxBlJWUkXGgcszerNKFNEFRIOm6tUyiTZj0q11k="; }; dontUnpack = true; diff --git a/pkgs/development/compilers/sagittarius-scheme/default.nix b/pkgs/development/compilers/sagittarius-scheme/default.nix index 2d6a48631c05..941ac1bcb2c3 100644 --- a/pkgs/development/compilers/sagittarius-scheme/default.nix +++ b/pkgs/development/compilers/sagittarius-scheme/default.nix @@ -6,7 +6,7 @@ , boehmgc , openssl , zlib -, odbcSupport ? true +, odbcSupport ? !stdenv.isDarwin , libiodbc }: @@ -31,8 +31,10 @@ stdenv.mkDerivation rec { buildInputs = [ libffi boehmgc openssl zlib ] ++ lib.optional odbcSupport libiodbc; + env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin "-Wno-error=int-conversion"; + meta = with lib; { - broken = stdenv.isDarwin; + broken = stdenv.isDarwin && stdenv.isAarch64; description = "An R6RS/R7RS Scheme system"; longDescription = '' Sagittarius Scheme is a free Scheme implementation supporting diff --git a/pkgs/development/interpreters/elixir/generic-builder.nix b/pkgs/development/interpreters/elixir/generic-builder.nix index 9007ab12d754..348d054a6c77 100644 --- a/pkgs/development/interpreters/elixir/generic-builder.nix +++ b/pkgs/development/interpreters/elixir/generic-builder.nix @@ -20,7 +20,7 @@ } @ args: let - inherit (lib) getVersion versionAtLeast optional; + inherit (lib) getVersion versionAtLeast optional concatStringsSep; in assert versionAtLeast (getVersion erlang) minimumOTPVersion; @@ -36,7 +36,12 @@ stdenv.mkDerivation ({ LANG = "C.UTF-8"; LC_TYPE = "C.UTF-8"; - buildFlags = optional debugInfo "ERL_COMPILER_OPTIONS=debug_info"; + ERLC_OPTS = + let + erlc_opts = [ "deterministic" ] + ++ optional debugInfo "debug_info"; + in + "[${concatStringsSep "," erlc_opts}]"; preBuild = '' patchShebangs ${escriptPath} || true diff --git a/pkgs/development/interpreters/python/update-python-libraries/update-python-libraries.py b/pkgs/development/interpreters/python/update-python-libraries/update-python-libraries.py index 970da7c5c5a4..d9b539926b83 100755 --- a/pkgs/development/interpreters/python/update-python-libraries/update-python-libraries.py +++ b/pkgs/development/interpreters/python/update-python-libraries/update-python-libraries.py @@ -12,23 +12,24 @@ to update all non-pinned libraries in that folder. """ import argparse +import collections import json import logging import os import re -import requests -from concurrent.futures import ThreadPoolExecutor as Pool -from packaging.version import Version as _Version -from packaging.version import InvalidVersion -from packaging.specifiers import SpecifierSet -from typing import Optional, Any -import collections import subprocess +from concurrent.futures import ThreadPoolExecutor as Pool +from typing import Any, Optional + +import requests +from packaging.specifiers import SpecifierSet +from packaging.version import InvalidVersion +from packaging.version import Version as _Version INDEX = "https://pypi.io/pypi" """url of PyPI""" -EXTENSIONS = ['tar.gz', 'tar.bz2', 'tar', 'zip', '.whl'] +EXTENSIONS = ["tar.gz", "tar.bz2", "tar", "zip", ".whl"] """Permitted file extensions. These are evaluated from left to right and the first occurance is returned.""" PRERELEASES = False @@ -37,13 +38,16 @@ BULK_UPDATE = False GIT = "git" -NIXPKGS_ROOT = subprocess.check_output(["git", "rev-parse", "--show-toplevel"]).decode('utf-8').strip() +NIXPKGS_ROOT = ( + subprocess.check_output(["git", "rev-parse", "--show-toplevel"]) + .decode("utf-8") + .strip() +) logging.basicConfig(level=logging.INFO) class Version(_Version, collections.abc.Sequence): - def __init__(self, version): super().__init__(version) # We cannot use `str(Version(0.04.21))` because that becomes `0.4.21` @@ -65,7 +69,7 @@ def _get_values(attribute, text): :returns: List of matches. """ - regex = fr'{re.escape(attribute)}\s+=\s+"(.*)";' + regex = rf'{re.escape(attribute)}\s+=\s+"(.*)";' regex = re.compile(regex) values = regex.findall(text) return values @@ -73,14 +77,19 @@ def _get_values(attribute, text): def _get_attr_value(attr_path: str) -> Optional[Any]: try: - response = subprocess.check_output([ - "nix", - "--extra-experimental-features", "nix-command", - "eval", - "-f", f"{NIXPKGS_ROOT}/default.nix", - "--json", - f"{attr_path}" - ]) + response = subprocess.check_output( + [ + "nix", + "--extra-experimental-features", + "nix-command", + "eval", + "-f", + f"{NIXPKGS_ROOT}/default.nix", + "--json", + f"{attr_path}", + ], + stderr=subprocess.DEVNULL, + ) return json.loads(response.decode()) except (subprocess.CalledProcessError, ValueError): return None @@ -100,12 +109,13 @@ def _get_unique_value(attribute, text): else: raise ValueError("no value found for {}".format(attribute)) + def _get_line_and_value(attribute, text, value=None): """Match attribute in text. Return the line and the value of the attribute.""" if value is None: - regex = rf'({re.escape(attribute)}\s+=\s+\"(.*)\";)' + regex = rf"({re.escape(attribute)}\s+=\s+\"(.*)\";)" else: - regex = rf'({re.escape(attribute)}\s+=\s+\"({re.escape(value)})\";)' + regex = rf"({re.escape(attribute)}\s+=\s+\"({re.escape(value)})\";)" regex = re.compile(regex) results = regex.findall(text) n = len(results) @@ -138,7 +148,7 @@ def _fetch_page(url): def _fetch_github(url): headers = {} - token = os.environ.get('GITHUB_API_TOKEN') + token = os.environ.get("GITHUB_API_TOKEN") if token: headers["Authorization"] = f"token {token}" r = requests.get(url, headers=headers) @@ -151,31 +161,26 @@ def _fetch_github(url): def _hash_to_sri(algorithm, value): """Convert a hash to its SRI representation""" - return subprocess.check_output([ - "nix", - "hash", - "to-sri", - "--type", algorithm, - value - ]).decode().strip() + return ( + subprocess.check_output(["nix", "hash", "to-sri", "--type", algorithm, value]) + .decode() + .strip() + ) def _skip_bulk_update(attr_name: str) -> bool: - return bool(_get_attr_value( - f"{attr_name}.skipBulkUpdate" - )) + return bool(_get_attr_value(f"{attr_name}.skipBulkUpdate")) SEMVER = { - 'major' : 0, - 'minor' : 1, - 'patch' : 2, + "major": 0, + "minor": 1, + "patch": 2, } def _determine_latest_version(current_version, target, versions): - """Determine latest version, given `target`. - """ + """Determine latest version, given `target`.""" current_version = Version(current_version) def _parse_versions(versions): @@ -193,7 +198,7 @@ def _determine_latest_version(current_version, target, versions): if len(ceiling) == 0: ceiling = None else: - ceiling[-1]+=1 + ceiling[-1] += 1 ceiling = Version(".".join(map(str, ceiling))) # We do not want prereleases @@ -210,17 +215,19 @@ def _get_latest_version_pypi(package, extension, current_version, target): url = "{}/{}/json".format(INDEX, package) json = _fetch_page(url) - versions = json['releases'].keys() + versions = json["releases"].keys() version = _determine_latest_version(current_version, target, versions) try: - releases = json['releases'][version] + releases = json["releases"][version] except KeyError as e: - raise KeyError('Could not find version {} for {}'.format(version, package)) from e + raise KeyError( + "Could not find version {} for {}".format(version, package) + ) from e for release in releases: - if release['filename'].endswith(extension): + if release["filename"].endswith(extension): # TODO: In case of wheel we need to do further checks! - sha256 = release['digests']['sha256'] + sha256 = release["digests"]["sha256"] break else: sha256 = None @@ -240,33 +247,40 @@ def _get_latest_version_github(package, extension, current_version, target): attr_path = os.environ.get("UPDATE_NIX_ATTR_PATH", f"python3Packages.{package}") try: homepage = subprocess.check_output( - ["nix", "eval", "-f", f"{NIXPKGS_ROOT}/default.nix", "--raw", f"{attr_path}.src.meta.homepage"])\ - .decode('utf-8') + [ + "nix", + "eval", + "-f", + f"{NIXPKGS_ROOT}/default.nix", + "--raw", + f"{attr_path}.src.meta.homepage", + ] + ).decode("utf-8") except Exception as e: raise ValueError(f"Unable to determine homepage: {e}") - owner_repo = homepage[len("https://github.com/"):] # remove prefix + owner_repo = homepage[len("https://github.com/") :] # remove prefix owner, repo = owner_repo.split("/") url = f"https://api.github.com/repos/{owner}/{repo}/releases" all_releases = _fetch_github(url) - releases = list(filter(lambda x: not x['prerelease'], all_releases)) + releases = list(filter(lambda x: not x["prerelease"], all_releases)) if len(releases) == 0: raise ValueError(f"{homepage} does not contain any stable releases") - versions = map(lambda x: strip_prefix(x['tag_name']), releases) + versions = map(lambda x: strip_prefix(x["tag_name"]), releases) version = _determine_latest_version(current_version, target, versions) - release = next(filter(lambda x: strip_prefix(x['tag_name']) == version, releases)) - prefix = get_prefix(release['tag_name']) + release = next(filter(lambda x: strip_prefix(x["tag_name"]) == version, releases)) + prefix = get_prefix(release["tag_name"]) # some attributes require using the fetchgit git_fetcher_args = [] - if (_get_attr_value(f"{attr_path}.src.fetchSubmodules")): + if _get_attr_value(f"{attr_path}.src.fetchSubmodules"): git_fetcher_args.append("--fetch-submodules") - if (_get_attr_value(f"{attr_path}.src.fetchLFS")): + if _get_attr_value(f"{attr_path}.src.fetchLFS"): git_fetcher_args.append("--fetch-lfs") - if (_get_attr_value(f"{attr_path}.src.leaveDotGit")): + if _get_attr_value(f"{attr_path}.src.leaveDotGit"): git_fetcher_args.append("--leave-dotGit") if git_fetcher_args: @@ -274,8 +288,10 @@ def _get_latest_version_github(package, extension, current_version, target): cmd = [ "nix-prefetch-git", f"https://github.com/{owner}/{repo}.git", - "--hash", algorithm, - "--rev", f"refs/tags/{release['tag_name']}" + "--hash", + algorithm, + "--rev", + f"refs/tags/{release['tag_name']}", ] cmd.extend(git_fetcher_args) response = subprocess.check_output(cmd) @@ -283,45 +299,60 @@ def _get_latest_version_github(package, extension, current_version, target): hash = _hash_to_sri(algorithm, document[algorithm]) else: try: - hash = subprocess.check_output([ - "nix-prefetch-url", - "--type", "sha256", - "--unpack", - f"{release['tarball_url']}" - ], stderr=subprocess.DEVNULL).decode('utf-8').strip() + hash = ( + subprocess.check_output( + [ + "nix-prefetch-url", + "--type", + "sha256", + "--unpack", + f"{release['tarball_url']}", + ], + stderr=subprocess.DEVNULL, + ) + .decode("utf-8") + .strip() + ) except (subprocess.CalledProcessError, UnicodeError): # this may fail if they have both a branch and a tag of the same name, attempt tag name - tag_url = str(release['tarball_url']).replace("tarball","tarball/refs/tags") - hash = subprocess.check_output([ - "nix-prefetch-url", - "--type", "sha256", - "--unpack", - tag_url - ], stderr=subprocess.DEVNULL).decode('utf-8').strip() + tag_url = str(release["tarball_url"]).replace( + "tarball", "tarball/refs/tags" + ) + hash = ( + subprocess.check_output( + ["nix-prefetch-url", "--type", "sha256", "--unpack", tag_url], + stderr=subprocess.DEVNULL, + ) + .decode("utf-8") + .strip() + ) return version, hash, prefix FETCHERS = { - 'fetchFromGitHub' : _get_latest_version_github, - 'fetchPypi' : _get_latest_version_pypi, - 'fetchurl' : _get_latest_version_pypi, + "fetchFromGitHub": _get_latest_version_github, + "fetchPypi": _get_latest_version_pypi, + "fetchurl": _get_latest_version_pypi, } -DEFAULT_SETUPTOOLS_EXTENSION = 'tar.gz' +DEFAULT_SETUPTOOLS_EXTENSION = "tar.gz" FORMATS = { - 'setuptools' : DEFAULT_SETUPTOOLS_EXTENSION, - 'wheel' : 'whl', - 'pyproject' : 'tar.gz', - 'flit' : 'tar.gz' + "setuptools": DEFAULT_SETUPTOOLS_EXTENSION, + "wheel": "whl", + "pyproject": "tar.gz", + "flit": "tar.gz", } + def _determine_fetcher(text): # Count occurrences of fetchers. - nfetchers = sum(text.count('src = {}'.format(fetcher)) for fetcher in FETCHERS.keys()) + nfetchers = sum( + text.count("src = {}".format(fetcher)) for fetcher in FETCHERS.keys() + ) if nfetchers == 0: raise ValueError("no fetcher.") elif nfetchers > 1: @@ -329,7 +360,7 @@ def _determine_fetcher(text): else: # Then we check which fetcher to use. for fetcher in FETCHERS.keys(): - if 'src = {}'.format(fetcher) in text: + if "src = {}".format(fetcher) in text: return fetcher @@ -341,47 +372,46 @@ def _determine_extension(text, fetcher): - fetchurl, we determine the extension from the url. - fetchFromGitHub we simply use `.tar.gz`. """ - if fetcher == 'fetchPypi': + if fetcher == "fetchPypi": try: - src_format = _get_unique_value('format', text) + src_format = _get_unique_value("format", text) except ValueError: - src_format = None # format was not given + src_format = None # format was not given try: - extension = _get_unique_value('extension', text) + extension = _get_unique_value("extension", text) except ValueError: - extension = None # extension was not given + extension = None # extension was not given if extension is None: if src_format is None: - src_format = 'setuptools' - elif src_format == 'other': + src_format = "setuptools" + elif src_format == "other": raise ValueError("Don't know how to update a format='other' package.") extension = FORMATS[src_format] - elif fetcher == 'fetchurl': - url = _get_unique_value('url', text) + elif fetcher == "fetchurl": + url = _get_unique_value("url", text) extension = os.path.splitext(url)[1] - if 'pypi' not in url: - raise ValueError('url does not point to PyPI.') + if "pypi" not in url: + raise ValueError("url does not point to PyPI.") - elif fetcher == 'fetchFromGitHub': + elif fetcher == "fetchFromGitHub": extension = "tar.gz" return extension def _update_package(path, target): - # Read the expression - with open(path, 'r') as f: + with open(path, "r") as f: text = f.read() # Determine pname. Many files have more than one pname - pnames = _get_values('pname', text) + pnames = _get_values("pname", text) # Determine version. - version = _get_unique_value('version', text) + version = _get_unique_value("version", text) # First we check how many fetchers are mentioned. fetcher = _determine_fetcher(text) @@ -393,8 +423,12 @@ def _update_package(path, target): for pname in pnames: if BULK_UPDATE and _skip_bulk_update(f"python3Packages.{pname}"): raise ValueError(f"Bulk update skipped for {pname}") + elif _get_attr_value(f"python3Packages.{pname}.cargoDeps") is not None: + raise ValueError(f"Cargo dependencies are unsupported, skipping {pname}") try: - new_version, new_sha256, prefix = FETCHERS[fetcher](pname, extension, version, target) + new_version, new_sha256, prefix = FETCHERS[fetcher]( + pname, extension, version, target + ) successful_fetch = True break except ValueError: @@ -411,7 +445,7 @@ def _update_package(path, target): if not new_sha256: raise ValueError("no file available for {}.".format(pname)) - text = _replace_value('version', new_version, text) + text = _replace_value("version", new_version, text) # hashes from pypi are 16-bit encoded sha256's, normalize it to sri to avoid merge conflicts # sri hashes have been the default format since nix 2.4+ @@ -421,16 +455,16 @@ def _update_package(path, target): if old_hash := _get_attr_value(f"python3Packages.{pname}.src.outputHash"): # fetchers can specify a sha256, or a sri hash try: - text = _replace_value('hash', sri_hash, text, old_hash) + text = _replace_value("hash", sri_hash, text, old_hash) except ValueError: - text = _replace_value('sha256', sri_hash, text, old_hash) + text = _replace_value("sha256", sri_hash, text, old_hash) else: raise ValueError(f"Unable to retrieve old hash for {pname}") - if fetcher == 'fetchFromGitHub': + if fetcher == "fetchFromGitHub": # in the case of fetchFromGitHub, it's common to see `rev = version;` or `rev = "v${version}";` # in which no string value is meant to be substituted. However, we can just overwrite the previous value. - regex = r'(rev\s+=\s+[^;]*;)' + regex = r"(rev\s+=\s+[^;]*;)" regex = re.compile(regex) matches = regex.findall(text) n = len(matches) @@ -442,30 +476,33 @@ def _update_package(path, target): match = matches[0] text = text.replace(match, f'rev = "refs/tags/{prefix}${{version}}";') # incase there's no prefix, just rewrite without interpolation - text = text.replace('"${version}";', 'version;') + text = text.replace('"${version}";', "version;") - with open(path, 'w') as f: + with open(path, "w") as f: f.write(text) - logging.info("Path {}: updated {} from {} to {}".format(path, pname, version, new_version)) + logging.info( + "Path {}: updated {} from {} to {}".format( + path, pname, version, new_version + ) + ) result = { - 'path' : path, - 'target': target, - 'pname': pname, - 'old_version' : version, - 'new_version' : new_version, + "path": path, + "target": target, + "pname": pname, + "old_version": version, + "new_version": new_version, #'fetcher' : fetcher, - } + } return result def _update(path, target): - # We need to read and modify a Nix expression. if os.path.isdir(path): - path = os.path.join(path, 'default.nix') + path = os.path.join(path, "default.nix") # If a default.nix does not exist, we quit. if not os.path.isfile(path): @@ -485,32 +522,41 @@ def _update(path, target): def _commit(path, pname, old_version, new_version, pkgs_prefix="python: ", **kwargs): - """Commit result. - """ + """Commit result.""" - msg = f'{pkgs_prefix}{pname}: {old_version} -> {new_version}' + msg = f"{pkgs_prefix}{pname}: {old_version} -> {new_version}" + + if changelog := _get_attr_value(f"{pkgs_prefix}{pname}.meta.changelog"): + msg += f"\n\n{changelog}" try: - subprocess.check_call([GIT, 'add', path]) - subprocess.check_call([GIT, 'commit', '-m', msg]) + subprocess.check_call([GIT, "add", path]) + subprocess.check_call([GIT, "commit", "-m", msg]) except subprocess.CalledProcessError as e: - subprocess.check_call([GIT, 'checkout', path]) - raise subprocess.CalledProcessError(f'Could not commit {path}') from e + subprocess.check_call([GIT, "checkout", path]) + raise subprocess.CalledProcessError(f"Could not commit {path}") from e return True def main(): - epilog = """ environment variables: GITHUB_API_TOKEN\tGitHub API token used when updating github packages """ - parser = argparse.ArgumentParser(formatter_class=argparse.RawDescriptionHelpFormatter, epilog=epilog) - parser.add_argument('package', type=str, nargs='+') - parser.add_argument('--target', type=str, choices=SEMVER.keys(), default='major') - parser.add_argument('--commit', action='store_true', help='Create a commit for each package update') - parser.add_argument('--use-pkgs-prefix', action='store_true', help='Use python3Packages.${pname}: instead of python: ${pname}: when making commits') + parser = argparse.ArgumentParser( + formatter_class=argparse.RawDescriptionHelpFormatter, epilog=epilog + ) + parser.add_argument("package", type=str, nargs="+") + parser.add_argument("--target", type=str, choices=SEMVER.keys(), default="major") + parser.add_argument( + "--commit", action="store_true", help="Create a commit for each package update" + ) + parser.add_argument( + "--use-pkgs-prefix", + action="store_true", + help="Use python3Packages.${pname}: instead of python: ${pname}: when making commits", + ) args = parser.parse_args() target = args.target @@ -545,6 +591,5 @@ environment variables: logging.info("{} package(s) updated".format(count)) - -if __name__ == '__main__': +if __name__ == "__main__": main() diff --git a/pkgs/development/interpreters/rakudo/moarvm.nix b/pkgs/development/interpreters/rakudo/moarvm.nix index 041ac00b2c3a..3f1a9211bc91 100644 --- a/pkgs/development/interpreters/rakudo/moarvm.nix +++ b/pkgs/development/interpreters/rakudo/moarvm.nix @@ -1,6 +1,7 @@ { lib , stdenv , fetchFromGitHub +, cctools-port , perl , CoreServices , ApplicationServices @@ -29,6 +30,10 @@ stdenv.mkDerivation rec { --replace '`sw_vers -productVersion`' '"$MACOSX_DEPLOYMENT_TARGET"' ''; + nativeBuildInputs = lib.optionals (stdenv.isDarwin && stdenv.isx86_64) [ + cctools-port + ]; + buildInputs = [ perl ] ++ lib.optionals stdenv.isDarwin [ CoreServices ApplicationServices ]; doCheck = false; # MoarVM does not come with its own test suite diff --git a/pkgs/development/interpreters/wasmtime/default.nix b/pkgs/development/interpreters/wasmtime/default.nix index 3aa72be01392..8613beaef905 100644 --- a/pkgs/development/interpreters/wasmtime/default.nix +++ b/pkgs/development/interpreters/wasmtime/default.nix @@ -2,19 +2,19 @@ rustPlatform.buildRustPackage rec { pname = "wasmtime"; - version = "15.0.0"; + version = "15.0.1"; src = fetchFromGitHub { owner = "bytecodealliance"; repo = pname; rev = "v${version}"; - hash = "sha256-oX8xhSyK7D5gFvgTJuXK59kcuYDa/9w25ndfwfhGPDE="; + hash = "sha256-9vArmudz1Avxz46IS9FZIKbs8wZXoeWMd/FGLmpPitw="; fetchSubmodules = true; }; # Disable cargo-auditable until https://github.com/rust-secure-code/cargo-auditable/issues/124 is solved. auditable = false; - cargoHash = "sha256-cTQrC4xXgx6HMMq5TqGnFLhGAHGt57zKXp1Cc8jEX8Y="; + cargoHash = "sha256-/mX9zUN+dZoOCOPMeWCJ9U7KfI6JnFl8B2leYosy2jQ="; cargoBuildFlags = [ "--package" "wasmtime-cli" "--package" "wasmtime-c-api" ]; outputs = [ "out" "dev" ]; diff --git a/pkgs/development/libraries/ctranslate2/default.nix b/pkgs/development/libraries/ctranslate2/default.nix index cca1da7ec627..83eb9bf3a895 100644 --- a/pkgs/development/libraries/ctranslate2/default.nix +++ b/pkgs/development/libraries/ctranslate2/default.nix @@ -24,13 +24,13 @@ let in stdenv.mkDerivation rec { pname = "ctranslate2"; - version = "3.22.0"; + version = "3.23.0"; src = fetchFromGitHub { owner = "OpenNMT"; repo = "CTranslate2"; rev = "v${version}"; - hash = "sha256-Fw0pMTc0Zmr4RfH2rdPgpOODZW9CL5UbDbIeH6A4zZQ="; + hash = "sha256-jqeLNKOGdGtAVx7ExGGDxxgi5zDmQgmJ6bxIuguaM3k="; fetchSubmodules = true; }; diff --git a/pkgs/development/libraries/libadwaita/default.nix b/pkgs/development/libraries/libadwaita/default.nix index 3b4aed7a8215..3a3d32e61da9 100644 --- a/pkgs/development/libraries/libadwaita/default.nix +++ b/pkgs/development/libraries/libadwaita/default.nix @@ -21,7 +21,7 @@ stdenv.mkDerivation rec { pname = "libadwaita"; - version = "1.4.0"; + version = "1.4.1"; outputs = [ "out" "dev" "devdoc" ]; outputBin = "devdoc"; # demo app @@ -31,7 +31,7 @@ stdenv.mkDerivation rec { owner = "GNOME"; repo = "libadwaita"; rev = version; - hash = "sha256-LXrlTca50ALo+Nm55fwXNb4k3haLqHNnzLPc08VhA5s="; + hash = "sha256-ztbvVRkNbkeAomRIxToUEQrYB5XnG1WPcfSB/iXHKoA="; }; depsBuildBuild = [ diff --git a/pkgs/development/libraries/mlt/default.nix b/pkgs/development/libraries/mlt/default.nix index ed803772f730..ded5a5990a60 100644 --- a/pkgs/development/libraries/mlt/default.nix +++ b/pkgs/development/libraries/mlt/default.nix @@ -40,13 +40,13 @@ stdenv.mkDerivation rec { pname = "mlt"; - version = "7.20.0"; + version = "7.22.0"; src = fetchFromGitHub { owner = "mltframework"; repo = "mlt"; rev = "v${version}"; - hash = "sha256-5yELGA3U/YkINEtRyr/tb3HjWMQjqKIWjUbH7ZFMgLU="; + hash = "sha256-vJKpeEdQIWBQRRdDui5ibSZtD8qUlDZBD+UQE+0cQqk="; }; nativeBuildInputs = [ diff --git a/pkgs/development/libraries/open62541/default.nix b/pkgs/development/libraries/open62541/default.nix index e25ac7bfca51..7799c6d80ae3 100644 --- a/pkgs/development/libraries/open62541/default.nix +++ b/pkgs/development/libraries/open62541/default.nix @@ -5,8 +5,10 @@ , cmake , pkg-config , check +, libxcrypt , subunit , python3Packages +, nix-update-script , withDoc ? false , graphviz-nox @@ -31,13 +33,13 @@ in stdenv.mkDerivation (finalAttrs: { pname = "open62541"; - version = "1.3.7"; + version = "1.3.8"; src = fetchFromGitHub { owner = "open62541"; repo = "open62541"; rev = "v${finalAttrs.version}"; - hash = "sha256-XmoLmBGTMA6cejLiNU8hAVnHd35eh6lTIu9csmiR+4U="; + hash = "sha256-koifSynnJX9IuwX8HUT1TzHoKgJfweNGAVlqUx7nEc4="; fetchSubmodules = true; }; @@ -82,6 +84,7 @@ stdenv.mkDerivation (finalAttrs: { checkInputs = [ check + libxcrypt subunit ]; @@ -126,6 +129,8 @@ stdenv.mkDerivation (finalAttrs: { rm -r bin/libopen62541* ''; + passthru.updateScript = nix-update-script { }; + passthru.tests = let open62541Full = encBackend: open62541.override { withDoc = true; @@ -151,6 +156,7 @@ stdenv.mkDerivation (finalAttrs: { OPC UA-based communication into existing applications. ''; homepage = "https://www.open62541.org"; + changelog = "https://github.com/open62541/open62541/releases/tag/v${finalAttrs.version}"; license = licenses.mpl20; maintainers = with maintainers; [ panicgh ]; platforms = platforms.linux; diff --git a/pkgs/development/libraries/qzxing/default.nix b/pkgs/development/libraries/qzxing/default.nix new file mode 100644 index 000000000000..4cb224e2c040 --- /dev/null +++ b/pkgs/development/libraries/qzxing/default.nix @@ -0,0 +1,59 @@ +{ stdenv +, lib +, fetchFromGitHub +, nix-update-script +, testers +, qmake +, qtmultimedia +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "qzxing"; + version = "3.3.0"; + + src = fetchFromGitHub { + owner = "ftylitak"; + repo = "qzxing"; + rev = "v${finalAttrs.version}"; + hash = "sha256-ASgsF5ocNWAiIy2jm6ygpDkggBcEpno6iVNWYkuWcVI="; + }; + + # QMake can't find qtmultimedia in buildInputs + strictDeps = false; + + nativeBuildInputs = [ + qmake + ]; + + buildInputs = [ + qtmultimedia + ]; + + dontWrapQtApps = true; + + preConfigure = '' + cd src + ''; + + qmakeFlags = [ + "CONFIG+=qzxing_qml" + "CONFIG+=qzxing_multimedia" + "QMAKE_PKGCONFIG_PREFIX=${placeholder "out"}" + ]; + + passthru = { + tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage; + updateScript = nix-update-script { }; + }; + + meta = with lib; { + description = "Qt/QML wrapper library for the ZXing library"; + homepage = "https://github.com/ftylitak/qzxing"; + license = licenses.asl20; + maintainers = with maintainers; [ OPNA2608 ]; + platforms = platforms.unix; + pkgConfigModules = [ + "QZXing" + ]; + }; +}) diff --git a/pkgs/development/libraries/tiledb/default.nix b/pkgs/development/libraries/tiledb/default.nix index ae182ff46136..f8540d4ffaa0 100644 --- a/pkgs/development/libraries/tiledb/default.nix +++ b/pkgs/development/libraries/tiledb/default.nix @@ -34,13 +34,13 @@ let in stdenv.mkDerivation rec { pname = "tiledb"; - version = "2.18.0"; + version = "2.18.2"; src = fetchFromGitHub { owner = "TileDB-Inc"; repo = "TileDB"; rev = version; - hash = "sha256-y5/kXODzkNKmMn8P+WOOWGy9Htd0nhXbUxmfw/SqSYY="; + hash = "sha256-uLiXhigYz3v7NgY38twot3sBHxZS5QCrOiPfME4wWzE="; }; patches = [ diff --git a/pkgs/development/lua-modules/generated-packages.nix b/pkgs/development/lua-modules/generated-packages.nix index fcde2f41ddce..0bd4d885504e 100644 --- a/pkgs/development/lua-modules/generated-packages.nix +++ b/pkgs/development/lua-modules/generated-packages.nix @@ -2183,6 +2183,29 @@ buildLuarocksPackage { }; }) {}; +luasnip = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, jsregexp, lua, luaOlder }: +buildLuarocksPackage { + pname = "luasnip"; + version = "2.1.1-1"; + knownRockspec = (fetchurl { + url = "mirror://luarocks/luasnip-2.1.1-1.rockspec"; + sha256 = "1jrdai8qsanr6x2vqp70hipsxrxh0abvwr2xwh9p4wr29k4wyycb"; + }).outPath; + src = fetchzip { + url = "https://github.com/L3MON4D3/LuaSnip/archive/v2.1.1.zip"; + sha256 = "0mbpwf3sxfrmrza13d9w0hlcmzlrj551g332syp1qhs94abfnnrd"; + }; + + disabled = (luaOlder "5.1"); + propagatedBuildInputs = [ jsregexp lua ]; + + meta = { + homepage = "https://github.com/L3MON4D3/LuaSnip"; + description = "Snippet Engine for Neovim written in Lua."; + license.fullName = "Apache-2.0"; + }; +}) {}; + luasocket = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaOlder }: buildLuarocksPackage { pname = "luasocket"; diff --git a/pkgs/development/node-packages/overrides.nix b/pkgs/development/node-packages/overrides.nix index 84aaeb51d382..ad6a9cd1371e 100644 --- a/pkgs/development/node-packages/overrides.nix +++ b/pkgs/development/node-packages/overrides.nix @@ -260,7 +260,7 @@ final: prev: { src = fetchurl { url = "https://registry.npmjs.org/prisma/-/prisma-${version}.tgz"; - hash = "sha256-rwpwB+vli3CXRhUFL+UvyUpPlxRk6P/2zLCn0SL9E6s="; + hash = "sha256-ej3h4LlF/pkAYeDxePb7wMc8zrfxKMnrp1ogZLoFU+0="; }; postInstall = with pkgs; '' wrapProgram "$out/bin/prisma" \ diff --git a/pkgs/development/python-modules/aiosomecomfort/default.nix b/pkgs/development/python-modules/aiosomecomfort/default.nix index 5775aece8060..4e5c512a9e24 100644 --- a/pkgs/development/python-modules/aiosomecomfort/default.nix +++ b/pkgs/development/python-modules/aiosomecomfort/default.nix @@ -9,7 +9,7 @@ buildPythonPackage rec { pname = "aiosomecomfort"; - version = "0.0.22"; + version = "0.0.24"; pyproject = true; disabled = pythonOlder "3.7"; @@ -18,7 +18,7 @@ buildPythonPackage rec { owner = "mkmer"; repo = "AIOSomecomfort"; rev = "refs/tags/${version}"; - hash = "sha256-d4pyt9+sBPNo/PL05HQ4sjyjubMtTZI9WUGRU1B/dH0="; + hash = "sha256-+kAObq8tbTO6Qlb+/93mF6K+gEHd33TofHug5f+zl+4="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/amazon-ion/default.nix b/pkgs/development/python-modules/amazon-ion/default.nix index 0a2479dd38f4..e69de9cfea33 100644 --- a/pkgs/development/python-modules/amazon-ion/default.nix +++ b/pkgs/development/python-modules/amazon-ion/default.nix @@ -1,26 +1,29 @@ { lib , buildPythonPackage +, docopt , fetchFromGitHub , jsonconversion -, six , pytestCheckHook , pythonOlder +, setuptools +, six +, tabulate }: buildPythonPackage rec { pname = "amazon-ion"; - version = "0.10.0"; - format = "setuptools"; + version = "0.11.2"; + pyproject = true; disabled = pythonOlder "3.7"; - # test vectors require git submodule src = fetchFromGitHub { - owner = "amzn"; + owner = "amazon-ion"; repo = "ion-python"; rev = "refs/tags/v${version}"; + # Test vectors require git submodule fetchSubmodules = true; - hash = "sha256-pCm3jd/dVqO/uIvT5N/w5yoUWU6ni62Pl2A862e+qSk="; + hash = "sha256-0/+bX02qTbOydWDxex4OWL7woP7dW1yJZBmDZAivE7U="; }; postPatch = '' @@ -28,13 +31,19 @@ buildPythonPackage rec { --replace "'pytest-runner'," "" ''; + nativeBuildInputs = [ + setuptools + ]; + propagatedBuildInputs = [ jsonconversion six ]; nativeCheckInputs = [ + docopt pytestCheckHook + tabulate ]; disabledTests = [ @@ -42,13 +51,19 @@ buildPythonPackage rec { "test_roundtrips" ]; + disabledTestPaths = [ + # Exclude benchmarks + "tests/test_benchmark_cli.py" + ]; + pythonImportsCheck = [ "amazon.ion" ]; meta = with lib; { description = "Python implementation of Amazon Ion"; - homepage = "https://github.com/amzn/ion-python"; + homepage = "https://github.com/amazon-ion/ion-python"; + changelog = "https://github.com/amazon-ion/ion-python/releases/tag/v${version}"; sourceProvenance = with sourceTypes; [ fromSource binaryNativeCode diff --git a/pkgs/development/python-modules/black/default.nix b/pkgs/development/python-modules/black/default.nix index 76890aeda286..52cc36e989cc 100644 --- a/pkgs/development/python-modules/black/default.nix +++ b/pkgs/development/python-modules/black/default.nix @@ -26,14 +26,14 @@ buildPythonPackage rec { pname = "black"; - version = "23.9.1"; + version = "23.11.0"; format = "pyproject"; disabled = pythonOlder "3.8"; src = fetchPypi { inherit pname version; - hash = "sha256-JLaz/1xtnqCKiIj2l36uhY4fNA1yYM9W1wpJgjI2ti0="; + hash = "sha256-TGiFWCX/Qy0ZcimEb5cbxNZmbOkEkuWwIBO8rKTZqwU="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/dataprep-ml/default.nix b/pkgs/development/python-modules/dataprep-ml/default.nix index 3eeac2e85b9b..3253ff91c096 100644 --- a/pkgs/development/python-modules/dataprep-ml/default.nix +++ b/pkgs/development/python-modules/dataprep-ml/default.nix @@ -23,7 +23,7 @@ let in buildPythonPackage rec { pname = "dataprep-ml"; - version = "0.0.18"; + version = "0.0.20"; pyproject = true; disabled = pythonOlder "3.8"; @@ -32,7 +32,7 @@ buildPythonPackage rec { src = fetchPypi { pname = "dataprep_ml"; inherit version; - hash = "sha256-nIqyRwv62j8x5Fy7ILMLWxw6yJmkkNRE1zyUlfvRYTI="; + hash = "sha256-X6mTTj4hfnqiCPMFrc8ESFp2E7bRNELLR1uL/dGzsPg="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/django/5.nix b/pkgs/development/python-modules/django/5.nix index 0ea8de9a4c7c..ed4f7a9162a7 100644 --- a/pkgs/development/python-modules/django/5.nix +++ b/pkgs/development/python-modules/django/5.nix @@ -42,14 +42,14 @@ buildPythonPackage rec { pname = "Django"; - version = "5.0b1"; + version = "5.0rc1"; pyproject = true; disabled = pythonOlder "3.10"; src = fetchPypi { inherit pname version; - hash = "sha256-yIY15zPwoO9GwhljXiHI9ZeOsqFMORgiRlRUG8XVcDA="; + hash = "sha256-pLt3plnaAyt0GpXcuVeGTzaVJ10dWB73Y3IUMA+qrzA="; }; patches = [ diff --git a/pkgs/development/python-modules/dvc-objects/default.nix b/pkgs/development/python-modules/dvc-objects/default.nix index 217782a34e6c..db3e1a27bf68 100644 --- a/pkgs/development/python-modules/dvc-objects/default.nix +++ b/pkgs/development/python-modules/dvc-objects/default.nix @@ -16,7 +16,7 @@ buildPythonPackage rec { pname = "dvc-objects"; - version = "1.2.0"; + version = "1.3.0"; format = "pyproject"; disabled = pythonOlder "3.8"; @@ -25,7 +25,7 @@ buildPythonPackage rec { owner = "iterative"; repo = pname; rev = "refs/tags/${version}"; - hash = "sha256-kTp0CowXtnLXetcnoCeqlXoadgaQhL5mTYTfq9QLIl8="; + hash = "sha256-mqFrXwXMvndXb9oUVwu2IOG7Ltti6AT9acsQx/gdRSs="; }; SETUPTOOLS_SCM_PRETEND_VERSION = version; diff --git a/pkgs/development/python-modules/eggdeps/default.nix b/pkgs/development/python-modules/eggdeps/default.nix index 9f17306b7bdc..57c73ec20ba0 100644 --- a/pkgs/development/python-modules/eggdeps/default.nix +++ b/pkgs/development/python-modules/eggdeps/default.nix @@ -2,7 +2,7 @@ , buildPythonPackage , fetchPypi , zope_interface -, zope_testing +, zope-testing }: buildPythonPackage rec { @@ -15,7 +15,7 @@ buildPythonPackage rec { sha256 = "a094ed7961a3dd38fcaaa69cf7a58670038acdff186360166d9e3d964b7a7323"; }; - propagatedBuildInputs = [ zope_interface zope_testing ]; + propagatedBuildInputs = [ zope_interface zope-testing ]; # tests fail, see https://hydra.nixos.org/build/4316603/log/raw doCheck = false; diff --git a/pkgs/development/python-modules/faster-whisper/default.nix b/pkgs/development/python-modules/faster-whisper/default.nix index 30f2174ff7da..84761c3bfa06 100644 --- a/pkgs/development/python-modules/faster-whisper/default.nix +++ b/pkgs/development/python-modules/faster-whisper/default.nix @@ -15,21 +15,16 @@ buildPythonPackage rec { pname = "faster-whisper"; - version = "0.9.0"; + version = "0.10.0"; format = "setuptools"; src = fetchFromGitHub { owner = "guillaumekln"; repo = "faster-whisper"; - rev = "refs/tags/v${version}"; - hash = "sha256-kHXX5Z4r7+lFRBtTCsPy9DILwsk3T1mcBzmJnCrKTdk="; + rev = "refs/tags/${version}"; + hash = "sha256-qcpPQv5WoUkT92/TZ+MMq452FgPNcm3ZZ+ZNc0btOGE="; }; - postPatch = '' - substituteInPlace requirements.txt \ - --replace "onnxruntime>=1.14,<2" "onnxruntime" - ''; - propagatedBuildInputs = [ av ctranslate2 @@ -54,7 +49,7 @@ buildPythonPackage rec { ''; meta = with lib; { - changelog = "https://github.com/guillaumekln/faster-whisper/releases/tag/v${version}"; + changelog = "https://github.com/guillaumekln/faster-whisper/releases/tag/${version}"; description = "Faster Whisper transcription with CTranslate2"; homepage = "https://github.com/guillaumekln/faster-whisper"; license = licenses.mit; diff --git a/pkgs/development/python-modules/flask-themes2/default.nix b/pkgs/development/python-modules/flask-themes2/default.nix index 56c03ca39e0c..b4cd08bdcf09 100644 --- a/pkgs/development/python-modules/flask-themes2/default.nix +++ b/pkgs/development/python-modules/flask-themes2/default.nix @@ -1,20 +1,36 @@ -{ lib, fetchPypi, buildPythonPackage, flask, pythonOlder, pytestCheckHook }: +{ lib +, buildPythonPackage +, pythonOlder +, fetchPypi +, setuptools +, flask +, pytestCheckHook +}: buildPythonPackage rec { pname = "flask-themes2"; - version = "1.0.0"; - format = "setuptools"; + version = "1.0.1"; + pyproject = true; disabled = pythonOlder "3.8"; src = fetchPypi { pname = "Flask-Themes2"; inherit version; - hash = "sha256-0U0cSdBddb9+IG3CU6zUPlxaJhQlxOV6OLgxnNDChy8="; + hash = "sha256-gsMgQQXjhDfQRhm7H0kBy8jKxd75WY+PhHR6Rk/PUPs="; }; - nativeCheckInputs = [ pytestCheckHook ]; - propagatedBuildInputs = [ flask ]; + nativeBuildInputs = [ + setuptools + ]; + + propagatedBuildInputs = [ + flask + ]; + + nativeCheckInputs = [ + pytestCheckHook + ]; meta = with lib; { description = "Easily theme your Flask app"; diff --git a/pkgs/development/python-modules/fontawesomefree/default.nix b/pkgs/development/python-modules/fontawesomefree/default.nix index 437259ff6d3e..dea884ab0b30 100644 --- a/pkgs/development/python-modules/fontawesomefree/default.nix +++ b/pkgs/development/python-modules/fontawesomefree/default.nix @@ -5,7 +5,7 @@ buildPythonPackage rec { pname = "fontawesomefree"; - version = "6.4.2"; + version = "6.5.1"; format = "wheel"; # they only provide a wheel @@ -13,7 +13,7 @@ buildPythonPackage rec { inherit pname version format; dist = "py3"; python = "py3"; - hash = "sha256-zq/378T8Odrf88P/cpinoQlUAxENNz8iRWuxw0q22wI="; + hash = "sha256-jexKLuN7+OUzeeu/DTjO/sTgbHySJ/Wa8527exYygXs="; }; pythonImportsCheck = [ diff --git a/pkgs/development/python-modules/fschat/default.nix b/pkgs/development/python-modules/fschat/default.nix index 573009b2a5ea..44420ae6c61f 100644 --- a/pkgs/development/python-modules/fschat/default.nix +++ b/pkgs/development/python-modules/fschat/default.nix @@ -29,7 +29,7 @@ , protobuf }: let - version = "0.2.32"; + version = "0.2.33"; in buildPythonPackage { pname = "fschat"; @@ -40,7 +40,7 @@ buildPythonPackage { owner = "lm-sys"; repo = "FastChat"; rev = "refs/tags/v${version}"; - hash = "sha256-3IJcqVULOK0Nf72sgv80q9U8QZ3pNHLYaNwCQohdBB8="; + hash = "sha256-tfFgiYJBuVt71qHOmkDoSrZ2tvXStjubmkw7sexkGZg="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/glfw/default.nix b/pkgs/development/python-modules/glfw/default.nix index db9f369a3497..d39daf9e9dc2 100644 --- a/pkgs/development/python-modules/glfw/default.nix +++ b/pkgs/development/python-modules/glfw/default.nix @@ -20,10 +20,8 @@ buildPythonPackage rec { }; # Patch path to GLFW shared object - patches = [ ./search-path.patch ]; - postPatch = '' - substituteInPlace glfw/library.py --replace "@GLFW@" '${glfw3}/lib' + substituteInPlace glfw/library.py --replace "_get_library_search_paths()," "[ '${glfw3}/lib' ]," ''; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/glfw/search-path.patch b/pkgs/development/python-modules/glfw/search-path.patch deleted file mode 100644 index 0c4a42ceb362..000000000000 --- a/pkgs/development/python-modules/glfw/search-path.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff --git a/glfw/library.py b/glfw/library.py -index 20387e1..9bdd62a 100644 ---- a/glfw/library.py -+++ b/glfw/library.py -@@ -189,5 +189,4 @@ elif sys.platform == 'win32': - except OSError: - pass - else: -- glfw = _load_library(['glfw', 'glfw3'], ['.so', '.dylib'], -- _get_library_search_paths(), _glfw_get_version) -+ glfw = _load_library(['glfw', 'glfw3'], ['.so', '.dylib'], ['@GLFW@'], _glfw_get_version) diff --git a/pkgs/development/python-modules/ipykernel/default.nix b/pkgs/development/python-modules/ipykernel/default.nix index 74cb52629af5..d1b970c34a2e 100644 --- a/pkgs/development/python-modules/ipykernel/default.nix +++ b/pkgs/development/python-modules/ipykernel/default.nix @@ -15,14 +15,14 @@ buildPythonPackage rec { pname = "ipykernel"; - version = "6.25.2"; - format = "pyproject"; + version = "6.27.1"; + pyproject = true; - disabled = pythonOlder "3.7"; + disabled = pythonOlder "3.8"; src = fetchPypi { inherit pname version; - hash = "sha256-9Gjd0fF6y0jIzmf8+km6bUbU+awEOMH0Qb58PRNyIws="; + hash = "sha256-fV1ZS2aQZUtNKZ7bpehy3Be7c5ao0GCcl8t7ihxgXeY="; }; # debugpy is optional, see https://github.com/ipython/ipykernel/pull/767 @@ -55,6 +55,6 @@ buildPythonPackage rec { description = "IPython Kernel for Jupyter"; homepage = "https://ipython.org/"; license = lib.licenses.bsd3; - maintainers = with lib.maintainers; [ fridh ]; + maintainers = with lib.maintainers; [ fridh ] ++ lib.teams.jupyter.members; }; } diff --git a/pkgs/development/python-modules/ipykernel/tests.nix b/pkgs/development/python-modules/ipykernel/tests.nix index edbb13912ad9..0de6d2feb4ae 100644 --- a/pkgs/development/python-modules/ipykernel/tests.nix +++ b/pkgs/development/python-modules/ipykernel/tests.nix @@ -5,9 +5,10 @@ , flaky , ipykernel , ipyparallel -, nose +, pre-commit , pytestCheckHook - +, pytest-asyncio +, pytest-timeout }: buildPythonPackage { @@ -22,15 +23,26 @@ buildPythonPackage { flaky ipykernel ipyparallel - nose + pre-commit pytestCheckHook + pytest-asyncio + pytest-timeout ]; preCheck = '' export HOME=$(mktemp -d) ''; - disabledTests = lib.optionals stdenv.isDarwin ([ + disabledTests = [ # The follwing three tests fail for unclear reasons. + # pytest.PytestUnhandledThreadExceptionWarning: Exception in thread Thread-8 + "test_asyncio_interrupt" + + # DeprecationWarning: Passing unrecognized arguments to super(IPythonKernel) + "test_embed_kernel_func" + + # traitlets.config.configurable.MultipleInstanceError: An incompatible siblin... + "test_install_kernelspec" + ] ++ lib.optionals stdenv.isDarwin ([ # see https://github.com/NixOS/nixpkgs/issues/76197 "test_subprocess_print" "test_subprocess_error" diff --git a/pkgs/development/python-modules/manuel/default.nix b/pkgs/development/python-modules/manuel/default.nix index c0040947488f..abec37fc5ed1 100644 --- a/pkgs/development/python-modules/manuel/default.nix +++ b/pkgs/development/python-modules/manuel/default.nix @@ -5,7 +5,7 @@ , python , isPy27 , six -, zope_testing +, zope-testing }: buildPythonPackage rec { @@ -29,7 +29,7 @@ buildPythonPackage rec { ]; propagatedBuildInputs = [ six ]; - nativeCheckInputs = [ zope_testing ]; + nativeCheckInputs = [ zope-testing ]; meta = with lib; { description = "A documentation builder"; diff --git a/pkgs/development/python-modules/mujoco/default.nix b/pkgs/development/python-modules/mujoco/default.nix new file mode 100644 index 000000000000..2392de3847bd --- /dev/null +++ b/pkgs/development/python-modules/mujoco/default.nix @@ -0,0 +1,70 @@ +{ buildPythonPackage +, cmake +, fetchPypi +, glfw +, lib +, mujoco +, numpy +, perl +, pkgs +, pybind11 +, python +, setuptools +}: + +buildPythonPackage rec { + pname = "mujoco"; + version = "3.0.1"; + + pyproject = true; + + # We do not fetch from the repository because the PyPi tarball is + # impurely build via + # + # in the project's CI. + src = fetchPypi { + inherit pname version; + hash = "sha256-pftecOk4q19qKBHs9hBBVenI+SgJg9VT7vc6NKuiY0s="; + }; + + nativeBuildInputs = [ cmake setuptools ]; + dontUseCmakeConfigure = true; + buildInputs = [ mujoco pybind11 ]; + propagatedBuildInputs = [ glfw numpy ]; + + pythonImportsCheck = [ "${pname}" ]; + + env.MUJOCO_PATH = "${mujoco}"; + env.MUJOCO_PLUGIN_PATH = "${mujoco}/lib"; + env.MUJOCO_CMAKE_ARGS = "-DMUJOCO_SIMULATE_USE_SYSTEM_GLFW=ON"; + + preConfigure = + # Use system packages for pybind + '' + ${perl}/bin/perl -0777 -i -pe "s/(findorfetch\(.{3}USE_SYSTEM_PACKAGE.{3})(OFF)(.{3}PACKAGE_NAME.{3}pybind11.*\))/\1ON\3/gms" mujoco/CMakeLists.txt + '' + + # Use non-system eigen3, lodepng, abseil: Remove mirror info and prefill + # dependency directory. $build from setuptools. + (let + # E.g. 3.11.2 -> "311" + pythonVersionMajorMinor = with lib.versions; + "${major python.pythonVersion}${minor python.pythonVersion}"; + in '' + ${perl}/bin/perl -0777 -i -pe "s/GIT_REPO\n.*\n.*GIT_TAG\n.*\n//gm" mujoco/CMakeLists.txt + ${perl}/bin/perl -0777 -i -pe "s/(FetchContent_Declare\(\n.*lodepng\n.*)(GIT_REPO.*\n.*GIT_TAG.*\n)(.*\))/\1\3/gm" mujoco/simulate/CMakeLists.txt + + build="/build/${pname}-${version}/build/temp.linux-x86_64-cpython-${pythonVersionMajorMinor}/" + mkdir -p $build/_deps + ln -s ${mujoco.pin.lodepng} $build/_deps/lodepng-src + ln -s ${mujoco.pin.eigen3} $build/_deps/eigen-src + ln -s ${mujoco.pin.abseil-cpp} $build/_deps/abseil-cpp-src + ''); + + meta = with lib; { + description = + "Python bindings for MuJoCo: a general purpose physics simulator."; + homepage = "https://mujoco.org/"; + license = licenses.asl20; + maintainers = with maintainers; [ tmplt ]; + }; +} diff --git a/pkgs/development/python-modules/plone-testing/default.nix b/pkgs/development/python-modules/plone-testing/default.nix index 13114dd78456..fdb75e22115d 100644 --- a/pkgs/development/python-modules/plone-testing/default.nix +++ b/pkgs/development/python-modules/plone-testing/default.nix @@ -2,7 +2,7 @@ , buildPythonPackage , fetchPypi , six -, zope_testing +, zope-testing , setuptools }: @@ -15,7 +15,7 @@ buildPythonPackage rec { sha256 = "39bc23bbb59b765702090ad61fe579f8bd9fe1f005f4dd1c2988a5bd1a71faf0"; }; - propagatedBuildInputs = [ six setuptools zope_testing ]; + propagatedBuildInputs = [ six setuptools zope-testing ]; # Huge amount of testing dependencies (including Zope2) doCheck = false; diff --git a/pkgs/development/python-modules/pysignalclirestapi/default.nix b/pkgs/development/python-modules/pysignalclirestapi/default.nix index 0e033ad99ff8..b3dd6f696006 100644 --- a/pkgs/development/python-modules/pysignalclirestapi/default.nix +++ b/pkgs/development/python-modules/pysignalclirestapi/default.nix @@ -8,7 +8,7 @@ buildPythonPackage rec { pname = "pysignalclirestapi"; - version = "0.3.21"; + version = "0.3.22"; pyproject = true; @@ -16,7 +16,7 @@ buildPythonPackage rec { owner = "bbernhard"; repo = "pysignalclirestapi"; rev = version; - hash = "sha256-CAZ6UgGz7ZDXlQlngi+hEhczOphvAT/Yl9vLqnrS1Qc="; + hash = "sha256-m8Sihf5vTDntd5Tbaa5o55G/k/rqtmjWreoTab58CHU="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/pysyncthru/default.nix b/pkgs/development/python-modules/pysyncthru/default.nix index d5761bebee7f..568152605c77 100644 --- a/pkgs/development/python-modules/pysyncthru/default.nix +++ b/pkgs/development/python-modules/pysyncthru/default.nix @@ -1,33 +1,40 @@ { lib -, isPy27 , buildPythonPackage +, pythonOlder , fetchFromGitHub +, setuptools , aiohttp , demjson3 -, python +, unittestCheckHook }: buildPythonPackage rec { pname = "pysyncthru"; - version = "0.7.10"; + version = "0.8.0"; - disabled = isPy27; + disabled = pythonOlder "3.7"; + + pyproject = true; src = fetchFromGitHub { owner = "nielstron"; repo = "pysyncthru"; - rev = "release-${version}"; - sha256 = "1c29w2ldrnq0vxr9cfa2pjhwdvrpw393c84khgg2y56jrkbidq53"; + rev = "refs/tags/${version}"; + hash = "sha256-Zije1WzfgIU9pT0H7T/Mx+5gEBCsRgMLkfsa/KB0YtI="; }; + nativeBuildInputs = [ + setuptools + ]; + propagatedBuildInputs = [ aiohttp demjson3 ]; - checkPhase = '' - ${python.interpreter} -m unittest - ''; + nativeCheckInputs = [ + unittestCheckHook + ]; pythonImportsCheck = [ "pysyncthru" ]; diff --git a/pkgs/development/python-modules/starline/default.nix b/pkgs/development/python-modules/starline/default.nix index ce7418a88734..cdaca053ee1d 100644 --- a/pkgs/development/python-modules/starline/default.nix +++ b/pkgs/development/python-modules/starline/default.nix @@ -2,20 +2,36 @@ , buildPythonPackage , pythonOlder , fetchPypi +, fetchpatch +, setuptools , requests }: buildPythonPackage rec { pname = "starline"; - version = "0.2.0"; + version = "0.1.5"; disabled = pythonOlder "3.5"; + pyproject = true; + src = fetchPypi { inherit pname version; - sha256 = "550b00ab95cf59d933f7708abab40a4e41e5790e62b653471afe86a3af3320e6"; + hash = "sha256-F1P1/NKml2rtd1r7A/g5IVnwQMZzkXzAxjRRDZXBPLk="; }; + patches = [ + # https://github.com/Anonym-tsk/starline/pull/5 + (fetchpatch { + url = "https://github.com/Anonym-tsk/starline/commit/4e6cdf8e05c5fb8509ee384e77b39a2495587160.patch"; + hash = "sha256-y9b6ePH3IEgmt3ALHQGwH102rlm4KfmH4oIoIC93cWU="; + }) + ]; + + nativeBuildInputs = [ + setuptools + ]; + propagatedBuildInputs = [ requests ]; diff --git a/pkgs/development/python-modules/torchmetrics/default.nix b/pkgs/development/python-modules/torchmetrics/default.nix index ee66ee817d1f..9b980206c32a 100644 --- a/pkgs/development/python-modules/torchmetrics/default.nix +++ b/pkgs/development/python-modules/torchmetrics/default.nix @@ -20,7 +20,7 @@ let pname = "torchmetrics"; - version = "1.2.0"; + version = "1.2.1"; in buildPythonPackage { inherit pname version; @@ -30,7 +30,7 @@ buildPythonPackage { owner = "Lightning-AI"; repo = "torchmetrics"; rev = "refs/tags/v${version}"; - hash = "sha256-g5JuTbiRd8yWx2nM3UE8ejOhuZ0XpAQdS5AC9AlrSFY="; + hash = "sha256-uvebKCJL2TSQUGmtVE1MtYwzgs+0lWvHvsN5PwJyl/g="; }; disabled = pythonOlder "3.8"; @@ -90,6 +90,7 @@ buildPythonPackage { meta = with lib; { description = "Machine learning metrics for distributed, scalable PyTorch applications (used in pytorch-lightning)"; homepage = "https://lightning.ai/docs/torchmetrics/"; + changelog = "https://github.com/Lightning-AI/torchmetrics/releases/tag/v${version}"; license = licenses.asl20; maintainers = with maintainers; [ SomeoneSerge diff --git a/pkgs/development/python-modules/type-infer/default.nix b/pkgs/development/python-modules/type-infer/default.nix index 55fe29e972a8..214f7cf4d1ab 100644 --- a/pkgs/development/python-modules/type-infer/default.nix +++ b/pkgs/development/python-modules/type-infer/default.nix @@ -24,7 +24,7 @@ let in buildPythonPackage rec { pname = "type-infer"; - version = "0.0.15"; + version = "0.0.16"; format = "pyproject"; disabled = pythonOlder "3.8"; @@ -33,7 +33,7 @@ buildPythonPackage rec { src = fetchPypi { pname = "type_infer"; inherit version; - hash = "sha256-AnThYE6hHc3Pwu8fl0VBiQJfGVjeEKo4RrCsOl2pfCA="; + hash = "sha256-EWH8odCHAzrEcBtFEYBm5gt4zlrwrK33c6uEfFBgPfA="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/vprof/default.nix b/pkgs/development/python-modules/vprof/default.nix new file mode 100644 index 000000000000..1f41f7b9a203 --- /dev/null +++ b/pkgs/development/python-modules/vprof/default.nix @@ -0,0 +1,42 @@ +{ lib +, buildPythonPackage +, fetchPypi +, setuptools +, wheel +, psutil +}: + +buildPythonPackage rec { + pname = "vprof"; + version = "0.38"; + pyproject = true; + + # We use the Pypi source rather than the GitHub ones because the former include the javascript + # dependency for the UI. + src = fetchPypi { + inherit pname version; + hash = "sha256-fxAAkS7rekUMfJTTzJZzmvRa0P8B1avMCwmhddQP+ts="; + }; + + nativeBuildInputs = [ + setuptools + wheel + ]; + + propagatedBuildInputs = [ + psutil + ]; + + pythonImportsCheck = [ "vprof" ]; + + # The tests are not included in the Pypi sources + doCheck = false; + + meta = with lib; { + description = "Visual profiler for Python"; + homepage = "https://github.com/nvdv/vprof"; + license = licenses.bsd2; + maintainers = with maintainers; [ GaetanLepage ]; + mainProgram = "vprof"; + }; +} diff --git a/pkgs/development/python-modules/zc_lockfile/default.nix b/pkgs/development/python-modules/zc_lockfile/default.nix index 70e2406ffa41..d8be54666a0d 100644 --- a/pkgs/development/python-modules/zc_lockfile/default.nix +++ b/pkgs/development/python-modules/zc_lockfile/default.nix @@ -1,7 +1,7 @@ { buildPythonPackage , fetchPypi , mock -, zope_testing +, zope-testing , lib }: @@ -15,7 +15,7 @@ buildPythonPackage rec { }; buildInputs = [ mock ]; - propagatedBuildInputs = [ zope_testing ]; + propagatedBuildInputs = [ zope-testing ]; meta = with lib; { description = "Inter-process locks"; diff --git a/pkgs/development/python-modules/zope-component/default.nix b/pkgs/development/python-modules/zope-component/default.nix index 522b2817a845..44f01efa8d2e 100644 --- a/pkgs/development/python-modules/zope-component/default.nix +++ b/pkgs/development/python-modules/zope-component/default.nix @@ -1,7 +1,7 @@ { lib , buildPythonPackage , fetchPypi -, zope_configuration +, zope-configuration , zope-deferredimport , zope-deprecation , zope_event @@ -22,7 +22,7 @@ buildPythonPackage rec { }; propagatedBuildInputs = [ - zope_configuration + zope-configuration zope-deferredimport zope-deprecation zope_event diff --git a/pkgs/development/python-modules/zope-configuration/default.nix b/pkgs/development/python-modules/zope-configuration/default.nix new file mode 100644 index 000000000000..e5a30f1e7d68 --- /dev/null +++ b/pkgs/development/python-modules/zope-configuration/default.nix @@ -0,0 +1,63 @@ +{ lib +, buildPythonPackage +, fetchPypi +, pythonOlder +, setuptools +, zope-i18nmessageid +, zope_interface +, zope_schema +, pytestCheckHook +, zope-testing +, zope_testrunner +, manuel +}: + +buildPythonPackage rec { + pname = "zope-configuration"; + version = "5.0"; + pyproject = true; + + disabled = pythonOlder "3.7"; + + src = fetchPypi { + pname = "zope.configuration"; + inherit version; + hash = "sha256-I0tKGMcfazub9rzyJSZLrgFJrGjeoHsHLw9pmkzsJuc="; + }; + + nativeBuildInputs = [ + setuptools + ]; + + nativeCheckInputs = [ + manuel + pytestCheckHook + zope-testing + zope_testrunner + ]; + + propagatedBuildInputs = [ + zope-i18nmessageid + zope_interface + zope_schema + ]; + + # Need to investigate how to run the tests with zope-testrunner + doCheck = false; + + pythonImportsCheck = [ + "zope.configuration" + ]; + + pythonNamespaces = [ + "zope" + ]; + + meta = with lib; { + description = "Zope Configuration Markup Language (ZCML)"; + homepage = "https://github.com/zopefoundation/zope.configuration"; + changelog = "https://github.com/zopefoundation/zope.configuration/blob/${version}/CHANGES.rst"; + license = licenses.zpl21; + maintainers = with maintainers; [ goibhniu ]; + }; +} diff --git a/pkgs/development/python-modules/zope-hookable/default.nix b/pkgs/development/python-modules/zope-hookable/default.nix index 64db918321d1..a1cd30fd5478 100644 --- a/pkgs/development/python-modules/zope-hookable/default.nix +++ b/pkgs/development/python-modules/zope-hookable/default.nix @@ -1,7 +1,7 @@ { lib , buildPythonPackage , fetchPypi -, zope_testing +, zope-testing }: buildPythonPackage rec { @@ -14,7 +14,7 @@ buildPythonPackage rec { hash = "sha256-+2AfAKyH5apYKoExXtlnaM41EygHKdP1H3kxLiuLlKw="; }; - nativeCheckInputs = [ zope_testing ]; + nativeCheckInputs = [ zope-testing ]; meta = with lib; { description = "Supports the efficient creation of “hookable” objects"; diff --git a/pkgs/development/python-modules/zope-testbrowser/default.nix b/pkgs/development/python-modules/zope-testbrowser/default.nix index 15b3f74a4394..290066f3e157 100644 --- a/pkgs/development/python-modules/zope-testbrowser/default.nix +++ b/pkgs/development/python-modules/zope-testbrowser/default.nix @@ -12,7 +12,7 @@ , wsgiproxy2 , six , mock -, zope_testing +, zope-testing , zope_testrunner , python }: @@ -50,7 +50,7 @@ buildPythonPackage rec { nativeCheckInputs = [ mock - zope_testing + zope-testing zope_testrunner ]; diff --git a/pkgs/development/python-modules/zope-testing/default.nix b/pkgs/development/python-modules/zope-testing/default.nix new file mode 100644 index 000000000000..65672118e4ef --- /dev/null +++ b/pkgs/development/python-modules/zope-testing/default.nix @@ -0,0 +1,49 @@ +{ lib +, buildPythonPackage +, fetchPypi +, isPyPy +, setuptools +, pytestCheckHook +}: + +buildPythonPackage rec { + pname = "zope-testing"; + version = "5.0.1"; + pyproject = true; + + src = fetchPypi { + pname = "zope.testing"; + inherit version; + hash = "sha256-6HzQ2NZmVzza8TOBare5vuyAGmSoZZXBnLX+mS7z1kk="; + }; + + nativeBuildInputs = [ + setuptools + ]; + + doCheck = !isPyPy; + + nativeCheckInputs = [ + pytestCheckHook + ]; + + pytestFlagsArray = [ + "src/zope/testing/tests.py" + ]; + + pythonImportsCheck = [ + "zope.testing" + ]; + + pythonNamespaces = [ + "zope" + ]; + + meta = with lib; { + description = "Zope testing helpers"; + homepage = "https://github.com/zopefoundation/zope.testing"; + changelog = "https://github.com/zopefoundation/zope.testing/blob/${version}/CHANGES.rst"; + license = licenses.zpl21; + maintainers = with maintainers; [ goibhniu ]; + }; +} diff --git a/pkgs/development/python-modules/zope_configuration/default.nix b/pkgs/development/python-modules/zope_configuration/default.nix deleted file mode 100644 index b6cc1c0f9998..000000000000 --- a/pkgs/development/python-modules/zope_configuration/default.nix +++ /dev/null @@ -1,33 +0,0 @@ -{ lib -, buildPythonPackage -, fetchPypi -, zope-i18nmessageid -, zope_schema -, zope_testrunner -, manuel -}: - -buildPythonPackage rec { - pname = "zope.configuration"; - version = "4.4.1"; - - src = fetchPypi { - inherit pname version; - hash = "sha256-giPqSvU5hmznqccwrH6xjlHRfrUVk6p3c7NZPI1tdgg="; - }; - - nativeCheckInputs = [ zope_testrunner manuel ]; - - propagatedBuildInputs = [ zope-i18nmessageid zope_schema ]; - - # Need to investigate how to run the tests with zope-testrunner - doCheck = false; - - meta = with lib; { - description = "Zope Configuration Markup Language (ZCML)"; - homepage = "https://github.com/zopefoundation/zope.configuration"; - license = licenses.zpl20; - maintainers = with maintainers; [ goibhniu ]; - }; - -} diff --git a/pkgs/development/python-modules/zope_schema/default.nix b/pkgs/development/python-modules/zope_schema/default.nix index b3694fe09dc9..329ab7455c5c 100644 --- a/pkgs/development/python-modules/zope_schema/default.nix +++ b/pkgs/development/python-modules/zope_schema/default.nix @@ -4,7 +4,7 @@ , zope_location , zope_event , zope_interface -, zope_testing +, zope-testing }: buildPythonPackage rec { @@ -16,7 +16,7 @@ buildPythonPackage rec { hash = "sha256-6tTbywM1TU5BDJo7kERR60TZAlR1Gxy97fSmGu3p+7k="; }; - propagatedBuildInputs = [ zope_location zope_event zope_interface zope_testing ]; + propagatedBuildInputs = [ zope_location zope_event zope_interface zope-testing ]; # ImportError: No module named 'zope.event' # even though zope_event has been included. diff --git a/pkgs/development/python-modules/zope_testing/default.nix b/pkgs/development/python-modules/zope_testing/default.nix deleted file mode 100644 index bc5d9ed94b2e..000000000000 --- a/pkgs/development/python-modules/zope_testing/default.nix +++ /dev/null @@ -1,30 +0,0 @@ -{ lib -, buildPythonPackage -, fetchPypi -, isPyPy -, zope_interface -, zope_exceptions -, zope_location -}: - -buildPythonPackage rec { - pname = "zope.testing"; - version = "5.0.1"; - - src = fetchPypi { - inherit pname version; - hash = "sha256-6HzQ2NZmVzza8TOBare5vuyAGmSoZZXBnLX+mS7z1kk="; - }; - - doCheck = !isPyPy; - - propagatedBuildInputs = [ zope_interface zope_exceptions zope_location ]; - - meta = with lib; { - description = "Zope testing helpers"; - homepage = "http://pypi.python.org/pypi/zope.testing"; - license = licenses.zpl20; - maintainers = with maintainers; [ goibhniu ]; - }; - -} diff --git a/pkgs/development/python-modules/zope_testrunner/default.nix b/pkgs/development/python-modules/zope_testrunner/default.nix index d687e24082f4..2307494fcbde 100644 --- a/pkgs/development/python-modules/zope_testrunner/default.nix +++ b/pkgs/development/python-modules/zope_testrunner/default.nix @@ -3,7 +3,7 @@ , fetchPypi , zope_interface , zope_exceptions -, zope_testing +, zope-testing , six }: @@ -17,7 +17,7 @@ buildPythonPackage rec { hash = "sha256-1r1y9E6jLKpBW5bP4UFSsnhjF67xzW9IqCe2Le8Fj9Q="; }; - propagatedBuildInputs = [ zope_interface zope_exceptions zope_testing six ]; + propagatedBuildInputs = [ zope_interface zope_exceptions zope-testing six ]; doCheck = false; # custom test modifies sys.path diff --git a/pkgs/development/tools/analysis/flow/default.nix b/pkgs/development/tools/analysis/flow/default.nix index 6ed8c18d0b1a..3b6b24f327d3 100644 --- a/pkgs/development/tools/analysis/flow/default.nix +++ b/pkgs/development/tools/analysis/flow/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "flow"; - version = "0.222.0"; + version = "0.223.2"; src = fetchFromGitHub { owner = "facebook"; repo = "flow"; rev = "v${version}"; - sha256 = "sha256-IOy6zsDGUfiSeOalQnku/4uNyjqpz2bMcpmf7Vq9fyI="; + hash = "sha256-vjsqQuQxTywSx4c0lnDKrrNr5hfFog9UurhIctq14f4="; }; postPatch = '' @@ -17,6 +17,11 @@ stdenv.mkDerivation rec { makeFlags = [ "FLOW_RELEASE=1" ]; + # Work around https://github.com/NixOS/nixpkgs/issues/166205. + env = lib.optionalAttrs stdenv.cc.isClang { + NIX_LDFLAGS = "-l${stdenv.cc.libcxx.cxxabi.libName}"; + }; + installPhase = '' install -Dm755 bin/flow $out/bin/flow install -Dm644 resources/shell/bash-completion $out/share/bash-completion/completions/flow diff --git a/pkgs/development/tools/buildkit/default.nix b/pkgs/development/tools/buildkit/default.nix index 41843024a515..8898ff89f371 100644 --- a/pkgs/development/tools/buildkit/default.nix +++ b/pkgs/development/tools/buildkit/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "buildkit"; - version = "0.12.3"; + version = "0.12.4"; src = fetchFromGitHub { owner = "moby"; repo = "buildkit"; rev = "v${version}"; - hash = "sha256-ph44J90g5zOTi/+FVbdnDDJp1gXcxPt7coA1rvhsQSQ="; + hash = "sha256-nQvrd2W9xWWGTlwN5Q2E3rs67OUxZ4bIp+rK2W2PUww="; }; vendorHash = null; diff --git a/pkgs/development/tools/database/prisma-engines/Cargo.lock b/pkgs/development/tools/database/prisma-engines/Cargo.lock index 5f4df8b9a2f9..573e31eababd 100644 --- a/pkgs/development/tools/database/prisma-engines/Cargo.lock +++ b/pkgs/development/tools/database/prisma-engines/Cargo.lock @@ -321,11 +321,12 @@ version = "0.1.0" dependencies = [ "anyhow", "enumflags2", - "indoc", + "indoc 2.0.3", "insta", "query-engine-metrics", "query-engine-tests", "query-tests-setup", + "regex", "reqwest", "serde_json", "tokio", @@ -433,7 +434,7 @@ dependencies = [ "connection-string", "either", "enumflags2", - "indoc", + "indoc 2.0.3", "lsp-types", "once_cell", "psl-core", @@ -672,6 +673,16 @@ dependencies = [ "windows-sys 0.45.0", ] +[[package]] +name = "console_error_panic_hook" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a06aeb73f470f66dcdbf7223caeebb85984942f22f1adb2a088cf9668146bbbc" +dependencies = [ + "cfg-if", + "wasm-bindgen", +] + [[package]] name = "convert_case" version = "0.4.0" @@ -860,29 +871,26 @@ dependencies = [ [[package]] name = "cuid" version = "1.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51294db11d38eb763c92936c5c88425d0090e27dce21dd15748134af9e53e739" +source = "git+https://github.com/prisma/cuid-rust?branch=wasm32-support#81309f9a11f70d178bb545971d51ceb7da692c52" dependencies = [ "base36", "cuid-util", "cuid2", - "hostname", "num", "once_cell", "rand 0.8.5", + "sha3", ] [[package]] name = "cuid-util" version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ea2bfe0336ff1b7ca74819b2df8dfae9afea358aff6b1688baa5c181d8c3713" +source = "git+https://github.com/prisma/cuid-rust?branch=wasm32-support#81309f9a11f70d178bb545971d51ceb7da692c52" [[package]] name = "cuid2" version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "47d99cacd52fd67db7490ad051c8c1973fb75520174d69aabbae08c534c9d0e8" +source = "git+https://github.com/prisma/cuid-rust?branch=wasm32-support#81309f9a11f70d178bb545971d51ceb7da692c52" dependencies = [ "cuid-util", "num", @@ -890,14 +898,38 @@ dependencies = [ "sha3", ] +[[package]] +name = "darling" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0d706e75d87e35569db781a9b5e2416cff1236a47ed380831f959382ccd5f858" +dependencies = [ + "darling_core 0.10.2", + "darling_macro 0.10.2", +] + [[package]] name = "darling" version = "0.13.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a01d95850c592940db9b8194bc39f4bc0e89dee5c4265e4b1807c34a9aba453c" dependencies = [ - "darling_core", - "darling_macro", + "darling_core 0.13.4", + "darling_macro 0.13.4", +] + +[[package]] +name = "darling_core" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0c960ae2da4de88a91b2d920c2a7233b400bc33cb28453a2987822d8392519b" +dependencies = [ + "fnv", + "ident_case", + "proc-macro2", + "quote", + "strsim 0.9.3", + "syn 1.0.109", ] [[package]] @@ -914,13 +946,24 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "darling_macro" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d9b5a2f4ac4969822c62224815d069952656cadc7084fdca9751e6d959189b72" +dependencies = [ + "darling_core 0.10.2", + "quote", + "syn 1.0.109", +] + [[package]] name = "darling_macro" version = "0.13.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9c972679f83bdf9c42bd905396b6c3588a843a17f0f16dfcfa3e2c5d57441835" dependencies = [ - "darling_core", + "darling_core 0.13.4", "quote", "syn 1.0.109", ] @@ -950,7 +993,7 @@ version = "0.1.0" dependencies = [ "base64 0.13.1", "expect-test", - "indoc", + "indoc 2.0.3", "once_cell", "psl", "regex", @@ -991,7 +1034,7 @@ name = "diagnostics" version = "0.1.0" dependencies = [ "colored", - "indoc", + "indoc 2.0.3", "pest", ] @@ -1036,7 +1079,7 @@ dependencies = [ "expect-test", "flate2", "indexmap 1.9.3", - "indoc", + "indoc 2.0.3", "itertools", "pretty_assertions", "prisma-models", @@ -1377,6 +1420,12 @@ dependencies = [ "syn 2.0.28", ] +[[package]] +name = "fuchsia-cprng" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba" + [[package]] name = "funty" version = "2.0.0" @@ -1506,8 +1555,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427" dependencies = [ "cfg-if", + "js-sys", "libc", "wasi 0.11.0+wasi-snapshot-preview1", + "wasm-bindgen", ] [[package]] @@ -1522,6 +1573,19 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" +[[package]] +name = "gloo-utils" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "037fcb07216cb3a30f7292bd0176b050b7b9a052ba830ef7d5d65f6dc64ba58e" +dependencies = [ + "js-sys", + "serde", + "serde_json", + "wasm-bindgen", + "web-sys", +] + [[package]] name = "graphql-parser" version = "0.3.0" @@ -1822,12 +1886,35 @@ dependencies = [ "hashbrown 0.14.0", ] +[[package]] +name = "indoc" +version = "0.3.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "47741a8bc60fb26eb8d6e0238bbb26d8575ff623fdc97b1a2c00c050b9684ed8" +dependencies = [ + "indoc-impl", + "proc-macro-hack", +] + [[package]] name = "indoc" version = "2.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2c785eefb63ebd0e33416dfcb8d6da0bf27ce752843a45632a67bf10d4d4b5c4" +[[package]] +name = "indoc-impl" +version = "0.3.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce046d161f000fffde5f432a0d034d0341dc152643b2598ed5bfce44c4f3a8f0" +dependencies = [ + "proc-macro-hack", + "proc-macro2", + "quote", + "syn 1.0.109", + "unindent", +] + [[package]] name = "insta" version = "1.21.2" @@ -2310,9 +2397,9 @@ dependencies = [ [[package]] name = "mobc" -version = "0.8.2" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0bdeff49b387edef305eccfe166af3e1483bb57902dbf369dddc42dc824df23b" +checksum = "90eb49dc5d193287ff80e72a86f34cfb27aae562299d22fea215e06ea1059dd3" dependencies = [ "async-trait", "futures-channel", @@ -2426,11 +2513,11 @@ dependencies = [ "enumflags2", "expect-test", "futures", - "indoc", + "indoc 2.0.3", "mongodb", "mongodb-client", "mongodb-schema-describer", - "names", + "names 0.12.0", "once_cell", "psl", "regex", @@ -2527,6 +2614,15 @@ dependencies = [ "uuid", ] +[[package]] +name = "names" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef320dab323286b50fb5cdda23f61c796a72a89998ab565ca32525c5c556f2da" +dependencies = [ + "rand 0.3.23", +] + [[package]] name = "names" version = "0.12.0" @@ -2972,6 +3068,12 @@ dependencies = [ "schema-ast", ] +[[package]] +name = "paste" +version = "1.0.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c" + [[package]] name = "pbkdf2" version = "0.11.0" @@ -3234,7 +3336,7 @@ dependencies = [ "dmmf", "enumflags2", "expect-test", - "indoc", + "indoc 2.0.3", "log", "lsp-types", "once_cell", @@ -3251,6 +3353,7 @@ dependencies = [ "bigdecimal", "chrono", "cuid", + "getrandom 0.2.10", "itertools", "nanoid", "prisma-value", @@ -3315,6 +3418,12 @@ dependencies = [ "version_check", ] +[[package]] +name = "proc-macro-hack" +version = "0.5.20+deprecated" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc375e1527247fe1a97d8b7156678dfe7c1af2fc075c9a4db3690ecd2a148068" + [[package]] name = "proc-macro2" version = "1.0.66" @@ -3386,7 +3495,7 @@ dependencies = [ "dissimilar", "either", "expect-test", - "indoc", + "indoc 2.0.3", "psl-core", ] @@ -3398,7 +3507,7 @@ dependencies = [ "chrono", "diagnostics", "enumflags2", - "indoc", + "indoc 2.0.3", "itertools", "lsp-types", "once_cell", @@ -3463,16 +3572,23 @@ dependencies = [ "either", "futures", "hex", + "indoc 0.3.6", "lru-cache", "metrics 0.18.1", "mobc", "mysql_async", + "names 0.11.0", "native-tls", "num_cpus", + "once_cell", + "paste", "percent-encoding", "postgres-native-tls", "postgres-types", + "quaint-test-macros", + "quaint-test-setup", "rusqlite", + "serde", "serde_json", "sqlformat", "thiserror", @@ -3486,6 +3602,30 @@ dependencies = [ "uuid", ] +[[package]] +name = "quaint-test-macros" +version = "0.1.0" +dependencies = [ + "darling 0.10.2", + "once_cell", + "proc-macro2", + "quaint-test-setup", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "quaint-test-setup" +version = "0.1.0" +dependencies = [ + "async-trait", + "bitflags 1.3.2", + "names 0.11.0", + "once_cell", + "quaint", + "tokio", +] + [[package]] name = "quanta" version = "0.9.3" @@ -3567,7 +3707,7 @@ dependencies = [ "enumflags2", "graphql-parser", "hyper", - "indoc", + "indoc 2.0.3", "mongodb-query-connector", "opentelemetry", "opentelemetry-otlp", @@ -3652,7 +3792,7 @@ dependencies = [ "colored", "enumflags2", "futures", - "indoc", + "indoc 2.0.3", "insta", "once_cell", "prisma-value", @@ -3668,11 +3808,40 @@ dependencies = [ "uuid", ] +[[package]] +name = "query-engine-wasm" +version = "0.1.0" +dependencies = [ + "anyhow", + "async-trait", + "connection-string", + "console_error_panic_hook", + "futures", + "js-sys", + "log", + "prisma-models", + "psl", + "serde", + "serde-wasm-bindgen", + "serde_json", + "thiserror", + "tokio", + "tracing", + "tracing-futures", + "tracing-subscriber", + "tsify", + "url", + "user-facing-errors", + "wasm-bindgen", + "wasm-bindgen-futures", + "wasm-logger", +] + [[package]] name = "query-test-macros" version = "0.1.0" dependencies = [ - "darling", + "darling 0.13.4", "proc-macro2", "quote", "syn 1.0.109", @@ -3687,7 +3856,7 @@ dependencies = [ "enumflags2", "hyper", "indexmap 1.9.3", - "indoc", + "indoc 2.0.3", "itertools", "jsonrpc-core", "nom", @@ -3746,6 +3915,29 @@ dependencies = [ "nibble_vec", ] +[[package]] +name = "rand" +version = "0.3.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "64ac302d8f83c0c1974bf758f6b041c6c8ada916fbb44a609158ca8b064cc76c" +dependencies = [ + "libc", + "rand 0.4.6", +] + +[[package]] +name = "rand" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "552840b97013b1a26992c11eac34bdd778e464601a4c2054b5f0bff7c6761293" +dependencies = [ + "fuchsia-cprng", + "libc", + "rand_core 0.3.1", + "rdrand", + "winapi", +] + [[package]] name = "rand" version = "0.7.3" @@ -3790,6 +3982,21 @@ dependencies = [ "rand_core 0.6.4", ] +[[package]] +name = "rand_core" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b" +dependencies = [ + "rand_core 0.4.2", +] + +[[package]] +name = "rand_core" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc" + [[package]] name = "rand_core" version = "0.5.1" @@ -3848,6 +4055,15 @@ dependencies = [ "num_cpus", ] +[[package]] +name = "rdrand" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2" +dependencies = [ + "rand_core 0.3.1", +] + [[package]] name = "redox_syscall" version = "0.2.16" @@ -4266,7 +4482,7 @@ dependencies = [ "base64 0.13.1", "connection-string", "expect-test", - "indoc", + "indoc 2.0.3", "jsonrpc-core", "quaint", "schema-connector", @@ -4370,6 +4586,17 @@ dependencies = [ "serde_derive", ] +[[package]] +name = "serde-wasm-bindgen" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f3b143e2833c57ab9ad3ea280d21fd34e285a42837aeb0ee301f4f41890fa00e" +dependencies = [ + "js-sys", + "serde", + "wasm-bindgen", +] + [[package]] name = "serde_bytes" version = "0.11.12" @@ -4390,6 +4617,17 @@ dependencies = [ "syn 2.0.28", ] +[[package]] +name = "serde_derive_internals" +version = "0.28.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e578a843d40b4189a4d66bba51d7684f57da5bd7c304c64e14bd63efbef49509" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.28", +] + [[package]] name = "serde_json" version = "1.0.104" @@ -4441,7 +4679,7 @@ version = "1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e182d6ec6f05393cc0e5ed1bf81ad6db3a8feedf8ee515ecdd369809bcce8082" dependencies = [ - "darling", + "darling 0.13.4", "proc-macro2", "quote", "syn 1.0.109", @@ -4624,7 +4862,7 @@ checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d" name = "sql-ddl" version = "0.1.0" dependencies = [ - "indoc", + "indoc 2.0.3", ] [[package]] @@ -4635,7 +4873,7 @@ dependencies = [ "connection-string", "enumflags2", "expect-test", - "indoc", + "indoc 2.0.3", "pretty_assertions", "psl", "quaint", @@ -4661,7 +4899,7 @@ dependencies = [ "connection-string", "enumflags2", "expect-test", - "indoc", + "indoc 2.0.3", "jsonrpc-core", "once_cell", "pretty_assertions", @@ -4722,7 +4960,7 @@ dependencies = [ "datamodel-renderer", "either", "enumflags2", - "indoc", + "indoc 2.0.3", "once_cell", "prisma-value", "psl", @@ -4753,7 +4991,7 @@ dependencies = [ "enumflags2", "expect-test", "indexmap 1.9.3", - "indoc", + "indoc 2.0.3", "once_cell", "pretty_assertions", "prisma-value", @@ -4820,6 +5058,12 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a" +[[package]] +name = "strsim" +version = "0.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6446ced80d6c486436db5c078dde11a9f73d42b57fb273121e160b84f63d894c" + [[package]] name = "strsim" version = "0.10.0" @@ -5494,6 +5738,31 @@ version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3528ecfd12c466c6f163363caf2d02a71161dd5e1cc6ae7b34207ea2d42d81ed" +[[package]] +name = "tsify" +version = "0.4.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d6b26cf145f2f3b9ff84e182c448eaf05468e247f148cf3d2a7d67d78ff023a0" +dependencies = [ + "gloo-utils", + "serde", + "serde_json", + "tsify-macros", + "wasm-bindgen", +] + +[[package]] +name = "tsify-macros" +version = "0.4.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a94b0f0954b3e59bfc2c246b4c8574390d94a4ad4ad246aaf2fb07d7dfd3b47" +dependencies = [ + "proc-macro2", + "quote", + "serde_derive_internals", + "syn 2.0.28", +] + [[package]] name = "twox-hash" version = "1.6.3" @@ -5501,7 +5770,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "97fee6b57c6a41524a810daee9286c02d7752c4253064d0b05472833a438f675" dependencies = [ "cfg-if", - "rand 0.7.3", + "rand 0.8.5", "static_assertions", ] @@ -5573,6 +5842,12 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "39ec24b3121d976906ece63c9daad25b85969647682eee313cb5779fdd69e14e" +[[package]] +name = "unindent" +version = "0.1.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e1766d682d402817b5ac4490b3c3002d91dfa0d22812f341609f97b08757359c" + [[package]] name = "unreachable" version = "1.0.0" @@ -5614,7 +5889,7 @@ name = "user-facing-errors" version = "0.1.0" dependencies = [ "backtrace", - "indoc", + "indoc 2.0.3", "itertools", "quaint", "serde", diff --git a/pkgs/development/tools/database/prisma-engines/default.nix b/pkgs/development/tools/database/prisma-engines/default.nix index a180878f9a1c..4d2dc3663184 100644 --- a/pkgs/development/tools/database/prisma-engines/default.nix +++ b/pkgs/development/tools/database/prisma-engines/default.nix @@ -14,13 +14,13 @@ # function correctly. rustPlatform.buildRustPackage rec { pname = "prisma-engines"; - version = "5.4.1"; + version = "5.6.0"; src = fetchFromGitHub { owner = "prisma"; repo = "prisma-engines"; rev = version; - sha256 = "sha256-KYPDocC6S6YhJeneyI++UmmpuAYDoX6okqgOtGetilw="; + sha256 = "sha256-zyF2NAOPNJe23tIuOHalsvnYytALKZq8QY1L8EWJMno="; }; # Use system openssl. @@ -30,6 +30,7 @@ rustPlatform.buildRustPackage rec { lockFile = ./Cargo.lock; outputHashes = { "barrel-0.6.6-alpha.0" = "sha256-USh0lQ1z+3Spgc69bRFySUzhuY79qprLlEExTmYWFN8="; + "cuid-1.3.2" = "sha256-ZihFrLerEIOdbJggaBbByRbC1sZRvF4M0LN2albB7vA="; "graphql-parser-0.3.0" = "sha256-0ZAsj2mW6fCLhwTETucjbu4rPNzfbNiHu2wVTBlTNe4="; "mysql_async-0.31.3" = "sha256-QIO9s0Upc0/1W7ux1RNJNGKqzO4gB4gMV3NoakAbxkQ="; "postgres-native-tls-0.5.0" = "sha256-UYPsxhCkXXWk8yPbqjNS0illwjS5mVm3Z/jFwpVwqfw="; diff --git a/pkgs/development/tools/fsautocomplete/deps.nix b/pkgs/development/tools/fsautocomplete/deps.nix index fdd669cf90ab..b807457ad01e 100644 --- a/pkgs/development/tools/fsautocomplete/deps.nix +++ b/pkgs/development/tools/fsautocomplete/deps.nix @@ -78,9 +78,9 @@ (fetchNuGet { pname = "McMaster.NETCore.Plugins"; version = "1.4.0"; sha256 = "1k2qz0qnf2b1kfwbzcynivy93jm7dcwl866d0fl7qlgq5vql7niy"; }) (fetchNuGet { pname = "MessagePack"; version = "2.5.108"; sha256 = "0cnaz28lhrdmavnxjkakl9q8p2yv8mricvp1b0wxdfnz8v41gwzs"; }) (fetchNuGet { pname = "MessagePack.Annotations"; version = "2.5.108"; sha256 = "0nb1fx8dwl7304kw0bc375bvlhb7pg351l4cl3vqqd7d8zqjwx5v"; }) - (fetchNuGet { pname = "Microsoft.AspNetCore.App.Ref"; version = "6.0.24"; sha256 = "0lriw4f48f0q2vyagbngnffshdismn3msn7d6dj0lb2xdkzsz1f1"; }) - (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm64"; version = "6.0.24"; sha256 = "08670zhn2ywkwy0d7sj89rikxccy5qg0vsjwpbypvzndawng0bb9"; }) - (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-x64"; version = "6.0.24"; sha256 = "0knx6lhlqxn3lkgakpab0663788q0si00m9ga7wdn2mzqq0s9yx0"; }) + (fetchNuGet { pname = "Microsoft.AspNetCore.App.Ref"; version = "6.0.25"; sha256 = "1vrmqn5j6ibwkqasbf7x7n4w5jdclnz3giymiwvym2wa0y5zc59q"; }) + (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm64"; version = "6.0.25"; sha256 = "0mgcs4si7mwd0f555s1vg17pf4nqfaijd1pci359l1pgrmv70rrg"; }) + (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-x64"; version = "6.0.25"; sha256 = "0wvzhqhlmlbnpa18qp8m3wcrlcgj3ckvp3iv2n7g8vb60c3238aq"; }) (fetchNuGet { pname = "Microsoft.Bcl.AsyncInterfaces"; version = "7.0.0"; sha256 = "1waiggh3g1cclc81gmjrqbh128kwfjky3z79ma4bd2ms9pa3gvfm"; }) (fetchNuGet { pname = "Microsoft.Bcl.HashCode"; version = "1.1.0"; sha256 = "1ggsadahlp76zcn1plapszd5v5ja8rh479fwrahqd3knql4dfnr0"; }) (fetchNuGet { pname = "Microsoft.Build"; version = "17.2.0"; sha256 = "09hs74nr0kv83wc1way9x7vq3nmxbr2s4vdy99hx78kj25pylcr7"; }) @@ -121,11 +121,11 @@ (fetchNuGet { pname = "Microsoft.NET.StringTools"; version = "17.4.0"; sha256 = "1smx30nq22plrn2mw4wb5vfgxk6hyx12b60c4wabmpnr81lq3nzv"; }) (fetchNuGet { pname = "Microsoft.NET.StringTools"; version = "17.6.3"; sha256 = "0g5jdg0jp844a2ygwlm04igsxkrihqcq2rpmfx722nrv3vrk0r0z"; }) (fetchNuGet { pname = "Microsoft.NET.Test.Sdk"; version = "17.4.1"; sha256 = "02p1j9fncd4fb2hyp51kw49d0dz30vvazhzk24c9f5ccc00ijpra"; }) - (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm64"; version = "6.0.24"; sha256 = "1vyy01i4w2wcx82mrjjsbp98v9sjn1cwhdvkhrw8yrrb04lcxbir"; }) - (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-x64"; version = "6.0.24"; sha256 = "02l6javfqwsaialkimmpsq3v4dhb1j4sxy19yvr5w5sdjmq1jh5y"; }) - (fetchNuGet { pname = "Microsoft.NETCore.App.Ref"; version = "6.0.24"; sha256 = "1fy1hr14igy4lix4vmwkjj13cbyjjfhx8izch9cd9hc4f1y25767"; }) - (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm64"; version = "6.0.24"; sha256 = "1zcn4px94z67j60cidynm5ab8cln1rrxabv7c24mlajqnkfw14sb"; }) - (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-x64"; version = "6.0.24"; sha256 = "0rylvdvdc5rdmw2vcqi0fdzmiwwa1pwlqiavqnb2pslhhq8qg4mh"; }) + (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm64"; version = "6.0.25"; sha256 = "052388yjivzkfllkss0nljbzmjx787jqdjsbb6ls855sp6wh9xfd"; }) + (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-x64"; version = "6.0.25"; sha256 = "103xy6kncjwbbchfnpqvsjpjy92x3dralcg9pw939jp0dwggwarz"; }) + (fetchNuGet { pname = "Microsoft.NETCore.App.Ref"; version = "6.0.25"; sha256 = "0jfhmfxpx1h4f3axgf60gc8d4cnlvbb853400kag6nk0875hr0x1"; }) + (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm64"; version = "6.0.25"; sha256 = "0jpcmva1l8z36r4phz055l7fz9s6z8pv8pqc4ia69mhhgvr0ks7y"; }) + (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-x64"; version = "6.0.25"; sha256 = "012jml0bqxbspahf1j4bvvd91pz85hsbcyhq00gxczcazhxpkhz4"; }) (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "7.0.4"; sha256 = "0afmivk3m0hmwsiqnl87frzi7g57aiv5fwnjds0icl66djpb6zsm"; }) (fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "5.0.0"; sha256 = "0z3qyv7qal5irvabc8lmkh58zsl42mrzd1i0sssvzhv4q4kl3cg6"; }) (fetchNuGet { pname = "Microsoft.NETFramework.ReferenceAssemblies"; version = "1.0.3"; sha256 = "0hc4d4d4358g5192mf8faijwk0bpf9pjwcfd3h85sr67j0zhj6hl"; }) diff --git a/pkgs/development/tools/gojq/default.nix b/pkgs/development/tools/gojq/default.nix index b2d80e1916dc..af7bc42ca751 100644 --- a/pkgs/development/tools/gojq/default.nix +++ b/pkgs/development/tools/gojq/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "gojq"; - version = "0.12.13"; + version = "0.12.14"; src = fetchFromGitHub { owner = "itchyny"; repo = pname; rev = "v${version}"; - hash = "sha256-tlnj0CCsPZRQjIZCvNPjN0JD6oqRDvdWOCYR3tYMPUA="; + hash = "sha256-mgmgOi3nMPwmcofEAVIN9nTE2oXnNN89lqT+Vi+sjzY="; }; - vendorHash = "sha256-DVJZ35C+6SuhaaGDM3u+3fB1497qaW6oTByAUPVwhJI="; + vendorHash = "sha256-dv4k2dIFnlJrGDTDM4mXBOpr4MF7oxms0y02ml50YyY="; ldflags = [ "-s" "-w" ]; diff --git a/pkgs/development/tools/heroku/default.nix b/pkgs/development/tools/heroku/default.nix index 683e701b07d5..090e5fa8fd7d 100644 --- a/pkgs/development/tools/heroku/default.nix +++ b/pkgs/development/tools/heroku/default.nix @@ -1,12 +1,19 @@ -{ stdenv, lib, fetchurl, makeWrapper, nodejs }: +{ stdenv, lib, fetchzip, makeWrapper, nodejs }: -stdenv.mkDerivation rec { +let + # version and commit pairs can be found in the URLs at + # https://cli-assets.heroku.com/versions/heroku-linux-x64-tar-xz.json + version = "8.7.1"; + commit = "3f5e369"; + hash = "sha256-3pCutQBS8N1Yw4JKTvU046UrOxBi0wLRQywxwezAEeU"; +in +stdenv.mkDerivation { pname = "heroku"; - version = "7.66.4"; + inherit version; - src = fetchurl { - url = "https://cli-assets.heroku.com/heroku-v${version}/heroku-v${version}.tar.xz"; - sha256 = "sha256-AAiC88RBqR5RXeIj39in7hlvI3JNQB6KUwGmt9jo93A="; + src = fetchzip { + url = "https://cli-assets.heroku.com/versions/${version}/${commit}/heroku-v${version}-${commit}-linux-x64.tar.xz"; + inherit hash; }; nativeBuildInputs = [ makeWrapper ]; diff --git a/pkgs/development/tools/misc/hydra/unstable.nix b/pkgs/development/tools/misc/hydra/unstable.nix index 733966f47062..373f80a2f052 100644 --- a/pkgs/development/tools/misc/hydra/unstable.nix +++ b/pkgs/development/tools/misc/hydra/unstable.nix @@ -123,13 +123,13 @@ let in stdenv.mkDerivation rec { pname = "hydra"; - version = "2023-11-17"; + version = "2023-12-01"; src = fetchFromGitHub { owner = "NixOS"; repo = "hydra"; - rev = "8f48e4ddecbf403be35f8243b97d73cb39dd61bb"; - hash = "sha256-5q/7yz6jJedD8YU3SuYyXtN3qEAlOBRKGZxOcYt/0X8="; + rev = "4d1c8505120961f10897b8fe9a070d4e193c9a13"; + hash = "sha256-vXTuE83GL15mgZHegbllVAsVdDFcWWSayPfZxTJN5ys="; }; buildInputs = [ diff --git a/pkgs/development/tools/misc/ycmd/default.nix b/pkgs/development/tools/misc/ycmd/default.nix index ea725b013180..aeca3c437ff4 100644 --- a/pkgs/development/tools/misc/ycmd/default.nix +++ b/pkgs/development/tools/misc/ycmd/default.nix @@ -9,15 +9,15 @@ stdenv.mkDerivation { pname = "ycmd"; - version = "unstable-2022-08-15"; + version = "unstable-2023-11-06"; disabled = !python.isPy3k; # required for third_party directory creation src = fetchFromGitHub { owner = "ycm-core"; repo = "ycmd"; - rev = "323d4b60f077bd07945f25a60c4584843ca851fb"; - sha256 = "sha256-5IpXMQc3QIkKJkUrOPSRzciLvL1nhQw6wlP+pVnIucE="; + rev = "0607eed2bc211f88f82657b7781f4fe66579855b"; + hash = "sha256-SzEcMQ4lX7NL2/g9tuhA6CaZ8pX/DGs7Fla/gr+RcOU="; fetchSubmodules = true; }; diff --git a/pkgs/development/tools/rust/ravedude/default.nix b/pkgs/development/tools/rust/ravedude/default.nix index ea5812e5ad1e..aeb44664cf6c 100644 --- a/pkgs/development/tools/rust/ravedude/default.nix +++ b/pkgs/development/tools/rust/ravedude/default.nix @@ -3,28 +3,40 @@ , fetchCrate , pkg-config , udev +, nix-update-script +, testers +, ravedude }: rustPlatform.buildRustPackage rec { pname = "ravedude"; - version = "0.1.5"; + version = "0.1.6"; src = fetchCrate { inherit pname version; - hash = "sha256-wcY9fvfIn1pWMAh5FI/QFl18CV2xjmRGSwwoRfGvujo="; + hash = "sha256-LhPRz3DUMDoe50Hq3yO+2BHpyh5fQ4sMNGLttjkdSZw="; }; - cargoHash = "sha256-AOIrB0FRagbA2+JEURF41d+th0AbR++U5WKCcZmh4Os="; + cargoHash = "sha256-Uo8wlTAHBkn/WeGPhPP+BU80wjSyNHsWQj8QvA7mHrk="; nativeBuildInputs = [ pkg-config ]; buildInputs = [ udev ]; + passthru = { + updateScript = nix-update-script { }; + tests.version = testers.testVersion { + package = ravedude; + version = "v${version}"; + }; + }; + meta = with lib; { description = "Tool to easily flash code onto an AVR microcontroller with avrdude"; homepage = "https://crates.io/crates/ravedude"; license = with licenses; [ mit /* or */ asl20 ]; platforms = platforms.linux; maintainers = with maintainers; [ rvarago ]; + mainProgram = "ravedude"; }; } diff --git a/pkgs/development/tools/twilio-cli/default.nix b/pkgs/development/tools/twilio-cli/default.nix index 9a89aa22c809..11a2bfe4e24b 100644 --- a/pkgs/development/tools/twilio-cli/default.nix +++ b/pkgs/development/tools/twilio-cli/default.nix @@ -2,11 +2,11 @@ stdenvNoCC.mkDerivation (finalAttrs: { pname = "twilio-cli"; - version = "5.16.2"; + version = "5.16.3"; src = fetchzip { url = "https://twilio-cli-prod.s3.amazonaws.com/twilio-v${finalAttrs.version}/twilio-v${finalAttrs.version}.tar.gz"; - hash = "sha256-5YIv4Y46PnyvYt1GQZUrL1/00LldbGDqGjjpys3Sphs="; + hash = "sha256-CaH0NRK0KvR2F8/Fov16uzig5BvwRuUNf4SDFDu/SLs="; }; buildInputs = [ nodejs-slim ]; diff --git a/pkgs/development/tools/vagrant/0001-Revert-Merge-pull-request-12225-from-chrisroberts-re.patch b/pkgs/development/tools/vagrant/0001-Revert-Merge-pull-request-12225-from-chrisroberts-re.patch index 6109101b7ba9..75b8f0cf8dfe 100644 --- a/pkgs/development/tools/vagrant/0001-Revert-Merge-pull-request-12225-from-chrisroberts-re.patch +++ b/pkgs/development/tools/vagrant/0001-Revert-Merge-pull-request-12225-from-chrisroberts-re.patch @@ -214,7 +214,7 @@ index edae9b477..782904f49 100644 cloud init command '%{cmd}' failed on guest '%{guest_name}'. command_deprecated: |- The command 'vagrant %{name}' has been deprecated and is no longer functional -@@ -1238,23 +1238,6 @@ en: +@@ -1245,30 +1245,6 @@ en: following command: vagrant plugin install --local @@ -225,12 +225,19 @@ index edae9b477..782904f49 100644 - again. - plugin_missing_library: |- - Vagrant failed to install the requested plugin because it depends -- on a library which is not currently installed on this system. The -- following library is required by the '%{name}' plugin: +- on development files for a library which is not currently installed +- on this system. The following library is required by the '%{name}' +- plugin: - - %{library} - -- Please install the library and then run the command again. +- If a package manager is used on this system, please install the development +- package for the library. The name of the package will be similar to: +- +- %{library}-dev or %{library}-devel +- +- After the library and development files have been installed, please +- run the command again. - plugin_missing_ruby_dev: |- - Vagrant failed to install the requested plugin because the Ruby header - files could not be found. Install the ruby development package for your diff --git a/pkgs/development/tools/vagrant/default.nix b/pkgs/development/tools/vagrant/default.nix index 3b03e4426ba6..5dc9e46671e9 100644 --- a/pkgs/development/tools/vagrant/default.nix +++ b/pkgs/development/tools/vagrant/default.nix @@ -5,9 +5,9 @@ let # NOTE: bumping the version and updating the hash is insufficient; # you must use bundix to generate a new gemset.nix in the Vagrant source. - version = "2.3.4"; + version = "2.3.7"; url = "https://github.com/hashicorp/vagrant/archive/v${version}.tar.gz"; - sha256 = "sha256-Q+sUYcbc/SOgw4ZXDmwqh24G0jiLvA8fDJyZ45OqLw8="; + hash = "sha256-+oqWMZqnuf9fSpkbd8vzf1SVSdhHN2JLzr76jyAEv0U="; deps = bundlerEnv rec { name = "${pname}-${version}"; @@ -21,7 +21,7 @@ let vagrant = { source = { type = "url"; - inherit url sha256; + inherit url hash; }; inherit version; }; @@ -48,7 +48,7 @@ in buildRubyGem rec { doInstallCheck = true; dontBuild = false; - src = fetchurl { inherit url sha256; }; + src = fetchurl { inherit url hash; }; patches = [ ./unofficial-installation-nowarn.patch @@ -98,13 +98,6 @@ in buildRubyGem rec { HOME="$(mktemp -d)" $out/bin/vagrant init --output - > /dev/null ''; - # `patchShebangsAuto` patches this one script which is intended to run - # on foreign systems. - postFixup = '' - sed -i -e '1c#!/bin/sh -' \ - $out/lib/ruby/gems/*/gems/vagrant-*/plugins/provisioners/salt/bootstrap-salt.sh - ''; - passthru = { inherit ruby deps; }; diff --git a/pkgs/development/tools/vagrant/gemset_libvirt.nix b/pkgs/development/tools/vagrant/gemset_libvirt.nix index 438d436869f6..d31b76a4e7f8 100644 --- a/pkgs/development/tools/vagrant/gemset_libvirt.nix +++ b/pkgs/development/tools/vagrant/gemset_libvirt.nix @@ -47,10 +47,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1s8b3bsajwjyrjs53h0nrfrpzzgi8igsrslprhr6fgl80ig3plld"; + sha256 = "sha256-z0VkRqFk3JU02ULQ+xQbywekzrJgz1YPDul//Ov5ajU="; type = "gem"; }; - version = "0.9.0"; + version = "0.11.0"; }; fog-xml = { dependencies = ["fog-core" "nokogiri"]; @@ -109,10 +109,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0rapl1sfmfi3bfr68da4ca16yhc0pp93vjwkj7y3rdqrzy3b41hy"; + sha256 = "sha256-RrLSRMxv8BqJv2EnRpDAn9vcpHqErp6sOQOegSMa7nw="; type = "gem"; }; - version = "2.8.0"; + version = "2.8.2"; }; multi_json = { groups = ["default"]; @@ -130,20 +130,20 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "11w59ga9324yx6339dgsflz3dsqq2mky1qqdwcg6wi5s1bf2yldi"; + sha256 = "sha256-INyAC4++TE9LWxZOaqOrgqNxvLJ+toXBZpYcNN2KItc="; type = "gem"; }; - version = "1.13.6"; + version = "1.15.2"; }; racc = { groups = ["default"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0la56m0z26j3mfn1a9lf2l03qx1xifanndf9p3vx1azf6sqy7v9d"; + sha256 = "sha256-r2QSSDb908AOgwcD1/hz6l3qvekj83AGo59aXg2hY4c="; type = "gem"; }; - version = "1.6.0"; + version = "1.7.1"; }; rexml = { groups = ["default"]; @@ -155,6 +155,26 @@ }; version = "3.2.5"; }; + xml-simple = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "sha256-0hEx5RnIbxpbwrbS1X1G5pmOR/GO0kmyXK2GQz29aV0="; + type = "gem"; + }; + version = "1.1.9"; + }; + diffy = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "sha256-NrQv++UTjdxWGCEHwkrY1rBm7P0odoKfOR46SZPYmuE="; + type = "gem"; + }; + version = "3.4.2"; + }; ruby-libvirt = { groups = ["default"]; platforms = []; @@ -166,14 +186,14 @@ version = "0.8.0"; }; vagrant-libvirt = { - dependencies = ["fog-core" "fog-libvirt" "nokogiri" "rexml"]; + dependencies = ["fog-core" "fog-libvirt" "nokogiri" "rexml" "xml-simple" "diffy"]; groups = ["default"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1j31y6sjhslj5yr0ssvb36ngm7prfsbdfj6131757jl0l0ri8pyv"; + sha256 = "sha256-NMiRjrVQo2Ui9nOJwpDmNJUk+95gsT85pwFMIiw3bwQ="; type = "gem"; }; - version = "0.8.2"; + version = "0.12.2"; }; } diff --git a/pkgs/games/amoeba/default.nix b/pkgs/games/amoeba/default.nix index 0e21a9a1b9ea..445c86c3bd16 100644 --- a/pkgs/games/amoeba/default.nix +++ b/pkgs/games/amoeba/default.nix @@ -1,18 +1,18 @@ -{ lib, stdenv, fetchurl, amoeba-data, alsa-lib, expat, freetype, gtk2, libvorbis, libGLU, xorg, pkg-config }: +{ lib, stdenv, fetchurl, amoeba-data, alsa-lib, expat, freetype, gtk3, libvorbis, libGLU, xorg, pkg-config, installShellFiles }: stdenv.mkDerivation rec { pname = "amoeba"; version = "1.1"; - debver = "29.1"; + debver = "31"; srcs = [ (fetchurl { url = "http://http.debian.net/debian/pool/contrib/a/amoeba/amoeba_${version}.orig.tar.gz"; - sha256 = "1hyycw4r36ryka2gab9vzkgs8gq4gqhk08vn29cwak95w0rahgim"; + hash = "sha256-NT6oMuAlTcVZEnYjMCF+BD+k3/w7LfWEmj6bkQln3sM="; }) (fetchurl { url = "http://http.debian.net/debian/pool/contrib/a/amoeba/amoeba_${version}-${debver}.debian.tar.xz"; - sha256 = "1xgi2sqzq97w6hd3dcyq6cka8xmp6nr25qymzhk52cwqh7qb75p3"; + hash = "sha256-Ga/YeXbPXjkG/6qd9Z201d14Hlj/Je6DxgzeIQOqrWc="; }) ]; sourceRoot = "amoeba-1.1.orig"; @@ -22,17 +22,17 @@ stdenv.mkDerivation rec { ''; postPatch = '' sed -i packer/pakfile.cpp -e 's|/usr/share/amoeba|${amoeba-data}/share/amoeba|' - sed -i main/linux-config/linux-config.cpp -e 's|libgdk-x11-2.0.so.0|${gtk2}/lib/&|' - sed -i main/linux-config/linux-config.cpp -e 's|libgtk-x11-2.0.so.0|${gtk2}/lib/&|' + sed -i main/linux-config/linux-config.cpp -e 's|libgdk-x11-2.0.so.0|${gtk3}/lib/&|' + sed -i main/linux-config/linux-config.cpp -e 's|libgtk-x11-2.0.so.0|${gtk3}/lib/&|' ''; - nativeBuildInputs = [ pkg-config ]; - buildInputs = [ alsa-lib expat freetype gtk2 libvorbis libGLU xorg.libXxf86vm ]; + nativeBuildInputs = [ pkg-config installShellFiles ]; + buildInputs = [ alsa-lib expat freetype gtk3 libvorbis libGLU xorg.libXxf86vm ]; installPhase = '' - mkdir -p $out/bin $out/share/man/man1/ + mkdir -p $out/bin cp amoeba $out/bin/ - cp ../debian/amoeba.1 $out/share/man/man1/ + installManPage ../debian/amoeba.1 ''; meta = with lib; { diff --git a/pkgs/games/chiaki4deck/default.nix b/pkgs/games/chiaki4deck/default.nix index 850e67eefcef..01c505d60f27 100644 --- a/pkgs/games/chiaki4deck/default.nix +++ b/pkgs/games/chiaki4deck/default.nix @@ -20,13 +20,13 @@ mkDerivation rec { pname = "chiaki4deck"; - version = "1.4.0"; + version = "1.4.1"; src = fetchFromGitHub { owner = "streetpea"; repo = pname; rev = "v${version}"; - hash = "sha256-udSGtpBUbxEZU9l+jLmUWJbkaCxKGoPuKAaYVmEEezk="; + hash = "sha256-W/t9uYApt8j5UMjtVWhFtq+IHmu9vi6M92I8N4kRtEk="; fetchSubmodules = true; }; diff --git a/pkgs/misc/documentation-highlighter/LICENSE b/pkgs/misc/documentation-highlighter/LICENSE index 422deb7350fe..2250cc7eca9b 100644 --- a/pkgs/misc/documentation-highlighter/LICENSE +++ b/pkgs/misc/documentation-highlighter/LICENSE @@ -1,24 +1,29 @@ -Copyright (c) 2006, Ivan Sagalaev +BSD 3-Clause License + +Copyright (c) 2006, Ivan Sagalaev. All rights reserved. + Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - * Neither the name of highlight.js nor the names of its contributors - may be used to endorse or promote products derived from this software - without specific prior written permission. +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. -THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY -EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL THE REGENTS AND CONTRIBUTORS BE LIABLE FOR ANY -DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +* Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/pkgs/misc/documentation-highlighter/README.md b/pkgs/misc/documentation-highlighter/README.md index f4baa3c8e001..569c90affed9 100644 --- a/pkgs/misc/documentation-highlighter/README.md +++ b/pkgs/misc/documentation-highlighter/README.md @@ -1,132 +1,30 @@ This file was generated with pkgs/misc/documentation-highlighter/update.sh -# Highlight.js +# Highlight.js CDN Assets -[![Build Status](https://travis-ci.org/isagalaev/highlight.js.svg?branch=master)](https://travis-ci.org/isagalaev/highlight.js) +[![install size](https://packagephobia.now.sh/badge?p=highlight.js)](https://packagephobia.now.sh/result?p=highlight.js) + +**This package contains only the CDN build assets of highlight.js.** + +This may be what you want if you'd like to install the pre-built distributable highlight.js client-side assets via NPM. If you're wanting to use highlight.js mainly on the server-side you likely want the [highlight.js][1] package instead. + +To access these files via CDN:
+https://cdn.jsdelivr.net/gh/highlightjs/cdn-release@latest/build/ + +**If you just want a single .js file with the common languages built-in: +** + +--- + +## Highlight.js Highlight.js is a syntax highlighter written in JavaScript. It works in the browser as well as on the server. It works with pretty much any -markup, doesn’t depend on any framework and has automatic language +markup, doesn’t depend on any framework, and has automatic language detection. -## Getting Started - -The bare minimum for using highlight.js on a web page is linking to the -library along with one of the styles and calling -[`initHighlightingOnLoad`][1]: - -```html - - - -``` - -This will find and highlight code inside of `
` tags; it tries
-to detect the language automatically. If automatic detection doesn’t
-work for you, you can specify the language in the `class` attribute:
-
-```html
-
...
-``` - -The list of supported language classes is available in the [class -reference][2]. Classes can also be prefixed with either `language-` or -`lang-`. - -To disable highlighting altogether use the `nohighlight` class: - -```html -
...
-``` - -## Custom Initialization - -When you need a bit more control over the initialization of -highlight.js, you can use the [`highlightBlock`][3] and [`configure`][4] -functions. This allows you to control *what* to highlight and *when*. - -Here’s an equivalent way to calling [`initHighlightingOnLoad`][1] using -jQuery: - -```javascript -$(document).ready(function() { - $('pre code').each(function(i, block) { - hljs.highlightBlock(block); - }); -}); -``` - -You can use any tags instead of `
` to mark up your code. If
-you don't use a container that preserve line breaks you will need to
-configure highlight.js to use the `
` tag: - -```javascript -hljs.configure({useBR: true}); - -$('div.code').each(function(i, block) { - hljs.highlightBlock(block); -}); -``` - -For other options refer to the documentation for [`configure`][4]. - - -## Web Workers - -You can run highlighting inside a web worker to avoid freezing the browser -window while dealing with very big chunks of code. - -In your main script: - -```javascript -addEventListener('load', function() { - var code = document.querySelector('#code'); - var worker = new Worker('worker.js'); - worker.onmessage = function(event) { code.innerHTML = event.data; } - worker.postMessage(code.textContent); -}) -``` - -In worker.js: - -```javascript -onmessage = function(event) { - importScripts('/highlight.pack.js'); - var result = self.hljs.highlightAuto(event.data); - postMessage(result.value); -} -``` - - -## Getting the Library - -You can get highlight.js as a hosted, or custom-build, browser script or -as a server module. Right out of the box the browser script supports -both AMD and CommonJS, so if you wish you can use RequireJS or -Browserify without having to build from source. The server module also -works perfectly fine with Browserify, but there is the option to use a -build specific to browsers rather than something meant for a server. -Head over to the [download page][5] for all the options. - -**Don't link to GitHub directly.** The library is not supposed to work straight -from the source, it requires building. If none of the pre-packaged options -work for you refer to the [building documentation][6]. - -**The CDN-hosted package doesn't have all the languages.** Otherwise it'd be -too big. If you don't see the language you need in the ["Common" section][5], -it can be added manually: - -```html - -``` - -**On Almond.** You need to use the optimizer to give the module a name. For -example: - -``` -r.js -o name=hljs paths.hljs=/path/to/highlight out=highlight.js -``` - +If you'd like to read the full README:
+ ## License @@ -137,16 +35,13 @@ for details. The official site for the library is at . +The Github project may be found at: + Further in-depth documentation for the API and other topics is at . -Authors and contributors are listed in the [AUTHORS.en.txt][8] file. +A list of the Core Team and contributors can be found in the [CONTRIBUTORS.md][8] file. -[1]: http://highlightjs.readthedocs.io/en/latest/api.html#inithighlightingonload -[2]: http://highlightjs.readthedocs.io/en/latest/css-classes-reference.html -[3]: http://highlightjs.readthedocs.io/en/latest/api.html#highlightblock-block -[4]: http://highlightjs.readthedocs.io/en/latest/api.html#configure-options -[5]: https://highlightjs.org/download/ -[6]: http://highlightjs.readthedocs.io/en/latest/building-testing.html -[7]: https://github.com/isagalaev/highlight.js/blob/master/LICENSE -[8]: https://github.com/isagalaev/highlight.js/blob/master/AUTHORS.en.txt +[1]: https://www.npmjs.com/package/highlight.js +[7]: https://github.com/highlightjs/highlight.js/blob/main/LICENSE +[8]: https://github.com/highlightjs/highlight.js/blob/main/CONTRIBUTORS.md diff --git a/pkgs/misc/documentation-highlighter/highlight.pack.js b/pkgs/misc/documentation-highlighter/highlight.pack.js index f909702367ec..b8008d3650f0 100644 --- a/pkgs/misc/documentation-highlighter/highlight.pack.js +++ b/pkgs/misc/documentation-highlighter/highlight.pack.js @@ -1,2 +1,345 @@ -/*! highlight.js v9.12.0 | BSD3 License | git.io/hljslicense */ -!function(e){var n="object"==typeof window&&window||"object"==typeof self&&self;"undefined"!=typeof exports?e(exports):n&&(n.hljs=e({}),"function"==typeof define&&define.amd&&define([],function(){return n.hljs}))}(function(e){function n(e){return e.replace(/&/g,"&").replace(//g,">")}function t(e){return e.nodeName.toLowerCase()}function r(e,n){var t=e&&e.exec(n);return t&&0===t.index}function a(e){return k.test(e)}function i(e){var n,t,r,i,o=e.className+" ";if(o+=e.parentNode?e.parentNode.className:"",t=B.exec(o))return w(t[1])?t[1]:"no-highlight";for(o=o.split(/\s+/),n=0,r=o.length;r>n;n++)if(i=o[n],a(i)||w(i))return i}function o(e){var n,t={},r=Array.prototype.slice.call(arguments,1);for(n in e)t[n]=e[n];return r.forEach(function(e){for(n in e)t[n]=e[n]}),t}function u(e){var n=[];return function r(e,a){for(var i=e.firstChild;i;i=i.nextSibling)3===i.nodeType?a+=i.nodeValue.length:1===i.nodeType&&(n.push({event:"start",offset:a,node:i}),a=r(i,a),t(i).match(/br|hr|img|input/)||n.push({event:"stop",offset:a,node:i}));return a}(e,0),n}function c(e,r,a){function i(){return e.length&&r.length?e[0].offset!==r[0].offset?e[0].offset"}function u(e){s+=""}function c(e){("start"===e.event?o:u)(e.node)}for(var l=0,s="",f=[];e.length||r.length;){var g=i();if(s+=n(a.substring(l,g[0].offset)),l=g[0].offset,g===e){f.reverse().forEach(u);do c(g.splice(0,1)[0]),g=i();while(g===e&&g.length&&g[0].offset===l);f.reverse().forEach(o)}else"start"===g[0].event?f.push(g[0].node):f.pop(),c(g.splice(0,1)[0])}return s+n(a.substr(l))}function l(e){return e.v&&!e.cached_variants&&(e.cached_variants=e.v.map(function(n){return o(e,{v:null},n)})),e.cached_variants||e.eW&&[o(e)]||[e]}function s(e){function n(e){return e&&e.source||e}function t(t,r){return new RegExp(n(t),"m"+(e.cI?"i":"")+(r?"g":""))}function r(a,i){if(!a.compiled){if(a.compiled=!0,a.k=a.k||a.bK,a.k){var o={},u=function(n,t){e.cI&&(t=t.toLowerCase()),t.split(" ").forEach(function(e){var t=e.split("|");o[t[0]]=[n,t[1]?Number(t[1]):1]})};"string"==typeof a.k?u("keyword",a.k):x(a.k).forEach(function(e){u(e,a.k[e])}),a.k=o}a.lR=t(a.l||/\w+/,!0),i&&(a.bK&&(a.b="\\b("+a.bK.split(" ").join("|")+")\\b"),a.b||(a.b=/\B|\b/),a.bR=t(a.b),a.e||a.eW||(a.e=/\B|\b/),a.e&&(a.eR=t(a.e)),a.tE=n(a.e)||"",a.eW&&i.tE&&(a.tE+=(a.e?"|":"")+i.tE)),a.i&&(a.iR=t(a.i)),null==a.r&&(a.r=1),a.c||(a.c=[]),a.c=Array.prototype.concat.apply([],a.c.map(function(e){return l("self"===e?a:e)})),a.c.forEach(function(e){r(e,a)}),a.starts&&r(a.starts,i);var c=a.c.map(function(e){return e.bK?"\\.?("+e.b+")\\.?":e.b}).concat([a.tE,a.i]).map(n).filter(Boolean);a.t=c.length?t(c.join("|"),!0):{exec:function(){return null}}}}r(e)}function f(e,t,a,i){function o(e,n){var t,a;for(t=0,a=n.c.length;a>t;t++)if(r(n.c[t].bR,e))return n.c[t]}function u(e,n){if(r(e.eR,n)){for(;e.endsParent&&e.parent;)e=e.parent;return e}return e.eW?u(e.parent,n):void 0}function c(e,n){return!a&&r(n.iR,e)}function l(e,n){var t=N.cI?n[0].toLowerCase():n[0];return e.k.hasOwnProperty(t)&&e.k[t]}function p(e,n,t,r){var a=r?"":I.classPrefix,i='',i+n+o}function h(){var e,t,r,a;if(!E.k)return n(k);for(a="",t=0,E.lR.lastIndex=0,r=E.lR.exec(k);r;)a+=n(k.substring(t,r.index)),e=l(E,r),e?(B+=e[1],a+=p(e[0],n(r[0]))):a+=n(r[0]),t=E.lR.lastIndex,r=E.lR.exec(k);return a+n(k.substr(t))}function d(){var e="string"==typeof E.sL;if(e&&!y[E.sL])return n(k);var t=e?f(E.sL,k,!0,x[E.sL]):g(k,E.sL.length?E.sL:void 0);return E.r>0&&(B+=t.r),e&&(x[E.sL]=t.top),p(t.language,t.value,!1,!0)}function b(){L+=null!=E.sL?d():h(),k=""}function v(e){L+=e.cN?p(e.cN,"",!0):"",E=Object.create(e,{parent:{value:E}})}function m(e,n){if(k+=e,null==n)return b(),0;var t=o(n,E);if(t)return t.skip?k+=n:(t.eB&&(k+=n),b(),t.rB||t.eB||(k=n)),v(t,n),t.rB?0:n.length;var r=u(E,n);if(r){var a=E;a.skip?k+=n:(a.rE||a.eE||(k+=n),b(),a.eE&&(k=n));do E.cN&&(L+=C),E.skip||(B+=E.r),E=E.parent;while(E!==r.parent);return r.starts&&v(r.starts,""),a.rE?0:n.length}if(c(n,E))throw new Error('Illegal lexeme "'+n+'" for mode "'+(E.cN||"")+'"');return k+=n,n.length||1}var N=w(e);if(!N)throw new Error('Unknown language: "'+e+'"');s(N);var R,E=i||N,x={},L="";for(R=E;R!==N;R=R.parent)R.cN&&(L=p(R.cN,"",!0)+L);var k="",B=0;try{for(var M,j,O=0;;){if(E.t.lastIndex=O,M=E.t.exec(t),!M)break;j=m(t.substring(O,M.index),M[0]),O=M.index+j}for(m(t.substr(O)),R=E;R.parent;R=R.parent)R.cN&&(L+=C);return{r:B,value:L,language:e,top:E}}catch(T){if(T.message&&-1!==T.message.indexOf("Illegal"))return{r:0,value:n(t)};throw T}}function g(e,t){t=t||I.languages||x(y);var r={r:0,value:n(e)},a=r;return t.filter(w).forEach(function(n){var t=f(n,e,!1);t.language=n,t.r>a.r&&(a=t),t.r>r.r&&(a=r,r=t)}),a.language&&(r.second_best=a),r}function p(e){return I.tabReplace||I.useBR?e.replace(M,function(e,n){return I.useBR&&"\n"===e?"
":I.tabReplace?n.replace(/\t/g,I.tabReplace):""}):e}function h(e,n,t){var r=n?L[n]:t,a=[e.trim()];return e.match(/\bhljs\b/)||a.push("hljs"),-1===e.indexOf(r)&&a.push(r),a.join(" ").trim()}function d(e){var n,t,r,o,l,s=i(e);a(s)||(I.useBR?(n=document.createElementNS("http://www.w3.org/1999/xhtml","div"),n.innerHTML=e.innerHTML.replace(/\n/g,"").replace(//g,"\n")):n=e,l=n.textContent,r=s?f(s,l,!0):g(l),t=u(n),t.length&&(o=document.createElementNS("http://www.w3.org/1999/xhtml","div"),o.innerHTML=r.value,r.value=c(t,u(o),l)),r.value=p(r.value),e.innerHTML=r.value,e.className=h(e.className,s,r.language),e.result={language:r.language,re:r.r},r.second_best&&(e.second_best={language:r.second_best.language,re:r.second_best.r}))}function b(e){I=o(I,e)}function v(){if(!v.called){v.called=!0;var e=document.querySelectorAll("pre code");E.forEach.call(e,d)}}function m(){addEventListener("DOMContentLoaded",v,!1),addEventListener("load",v,!1)}function N(n,t){var r=y[n]=t(e);r.aliases&&r.aliases.forEach(function(e){L[e]=n})}function R(){return x(y)}function w(e){return e=(e||"").toLowerCase(),y[e]||y[L[e]]}var E=[],x=Object.keys,y={},L={},k=/^(no-?highlight|plain|text)$/i,B=/\blang(?:uage)?-([\w-]+)\b/i,M=/((^(<[^>]+>|\t|)+|(?:\n)))/gm,C="
",I={classPrefix:"hljs-",tabReplace:null,useBR:!1,languages:void 0};return e.highlight=f,e.highlightAuto=g,e.fixMarkup=p,e.highlightBlock=d,e.configure=b,e.initHighlighting=v,e.initHighlightingOnLoad=m,e.registerLanguage=N,e.listLanguages=R,e.getLanguage=w,e.inherit=o,e.IR="[a-zA-Z]\\w*",e.UIR="[a-zA-Z_]\\w*",e.NR="\\b\\d+(\\.\\d+)?",e.CNR="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",e.BNR="\\b(0b[01]+)",e.RSR="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",e.BE={b:"\\\\[\\s\\S]",r:0},e.ASM={cN:"string",b:"'",e:"'",i:"\\n",c:[e.BE]},e.QSM={cN:"string",b:'"',e:'"',i:"\\n",c:[e.BE]},e.PWM={b:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},e.C=function(n,t,r){var a=e.inherit({cN:"comment",b:n,e:t,c:[]},r||{});return a.c.push(e.PWM),a.c.push({cN:"doctag",b:"(?:TODO|FIXME|NOTE|BUG|XXX):",r:0}),a},e.CLCM=e.C("//","$"),e.CBCM=e.C("/\\*","\\*/"),e.HCM=e.C("#","$"),e.NM={cN:"number",b:e.NR,r:0},e.CNM={cN:"number",b:e.CNR,r:0},e.BNM={cN:"number",b:e.BNR,r:0},e.CSSNM={cN:"number",b:e.NR+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",r:0},e.RM={cN:"regexp",b:/\//,e:/\/[gimuy]*/,i:/\n/,c:[e.BE,{b:/\[/,e:/\]/,r:0,c:[e.BE]}]},e.TM={cN:"title",b:e.IR,r:0},e.UTM={cN:"title",b:e.UIR,r:0},e.METHOD_GUARD={b:"\\.\\s*"+e.UIR,r:0},e});hljs.registerLanguage("nix",function(e){var r={keyword:"rec with let in inherit assert if else then",literal:"true false or and null",built_in:"import abort baseNameOf dirOf isNull builtins map removeAttrs throw toString derivation"},t={cN:"subst",b:/\$\{/,e:/}/,k:r},i={b:/[a-zA-Z0-9-_]+(\s*=)/,rB:!0,r:0,c:[{cN:"attr",b:/\S+/}]},s={cN:"string",c:[t],v:[{b:"''",e:"''"},{b:'"',e:'"'}]},a=[e.NM,e.HCM,e.CBCM,s,i];return t.c=a,{aliases:["nixos"],k:r,c:a}});hljs.registerLanguage("bash",function(e){var t={cN:"variable",v:[{b:/\$[\w\d#@][\w\d_]*/},{b:/\$\{(.*?)}/}]},s={cN:"string",b:/"/,e:/"/,c:[e.BE,t,{cN:"variable",b:/\$\(/,e:/\)/,c:[e.BE]}]},a={cN:"string",b:/'/,e:/'/};return{aliases:["sh","zsh"],l:/\b-?[a-z\._]+\b/,k:{keyword:"if then else elif fi for while in do done case esac function",literal:"true false",built_in:"break cd continue eval exec exit export getopts hash pwd readonly return shift test times trap umask unset alias bind builtin caller command declare echo enable help let local logout mapfile printf read readarray source type typeset ulimit unalias set shopt autoload bg bindkey bye cap chdir clone comparguments compcall compctl compdescribe compfiles compgroups compquote comptags comptry compvalues dirs disable disown echotc echoti emulate fc fg float functions getcap getln history integer jobs kill limit log noglob popd print pushd pushln rehash sched setcap setopt stat suspend ttyctl unfunction unhash unlimit unsetopt vared wait whence where which zcompile zformat zftp zle zmodload zparseopts zprof zpty zregexparse zsocket zstyle ztcp",_:"-ne -eq -lt -gt -f -d -e -s -l -a"},c:[{cN:"meta",b:/^#![^\n]+sh\s*$/,r:10},{cN:"function",b:/\w[\w\d_]*\s*\(\s*\)\s*\{/,rB:!0,c:[e.inherit(e.TM,{b:/\w[\w\d_]*/})],r:0},e.HCM,s,a,t]}}); \ No newline at end of file +/*! + Highlight.js v11.9.0 (git: b7ec4bfafc) + (c) 2006-2023 undefined and other contributors + License: BSD-3-Clause + */ +var hljs=function(){"use strict";function e(t){ +return t instanceof Map?t.clear=t.delete=t.set=()=>{ +throw Error("map is read-only")}:t instanceof Set&&(t.add=t.clear=t.delete=()=>{ +throw Error("set is read-only") +}),Object.freeze(t),Object.getOwnPropertyNames(t).forEach((n=>{ +const i=t[n],s=typeof i;"object"!==s&&"function"!==s||Object.isFrozen(i)||e(i) +})),t}class t{constructor(e){ +void 0===e.data&&(e.data={}),this.data=e.data,this.isMatchIgnored=!1} +ignoreMatch(){this.isMatchIgnored=!0}}function n(e){ +return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'") +}function i(e,...t){const n=Object.create(null);for(const t in e)n[t]=e[t] +;return t.forEach((e=>{for(const t in e)n[t]=e[t]})),n}const s=e=>!!e.scope +;class o{constructor(e,t){ +this.buffer="",this.classPrefix=t.classPrefix,e.walk(this)}addText(e){ +this.buffer+=n(e)}openNode(e){if(!s(e))return;const t=((e,{prefix:t})=>{ +if(e.startsWith("language:"))return e.replace("language:","language-") +;if(e.includes(".")){const n=e.split(".") +;return[`${t}${n.shift()}`,...n.map(((e,t)=>`${e}${"_".repeat(t+1)}`))].join(" ") +}return`${t}${e}`})(e.scope,{prefix:this.classPrefix});this.span(t)} +closeNode(e){s(e)&&(this.buffer+="")}value(){return this.buffer}span(e){ +this.buffer+=``}}const r=(e={})=>{const t={children:[]} +;return Object.assign(t,e),t};class a{constructor(){ +this.rootNode=r(),this.stack=[this.rootNode]}get top(){ +return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(e){ +this.top.children.push(e)}openNode(e){const t=r({scope:e}) +;this.add(t),this.stack.push(t)}closeNode(){ +if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){ +for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)} +walk(e){return this.constructor._walk(e,this.rootNode)}static _walk(e,t){ +return"string"==typeof t?e.addText(t):t.children&&(e.openNode(t), +t.children.forEach((t=>this._walk(e,t))),e.closeNode(t)),e}static _collapse(e){ +"string"!=typeof e&&e.children&&(e.children.every((e=>"string"==typeof e))?e.children=[e.children.join("")]:e.children.forEach((e=>{ +a._collapse(e)})))}}class c extends a{constructor(e){super(),this.options=e} +addText(e){""!==e&&this.add(e)}startScope(e){this.openNode(e)}endScope(){ +this.closeNode()}__addSublanguage(e,t){const n=e.root +;t&&(n.scope="language:"+t),this.add(n)}toHTML(){ +return new o(this,this.options).value()}finalize(){ +return this.closeAllNodes(),!0}}function l(e){ +return e?"string"==typeof e?e:e.source:null}function g(e){return h("(?=",e,")")} +function u(e){return h("(?:",e,")*")}function d(e){return h("(?:",e,")?")} +function h(...e){return e.map((e=>l(e))).join("")}function f(...e){const t=(e=>{ +const t=e[e.length-1] +;return"object"==typeof t&&t.constructor===Object?(e.splice(e.length-1,1),t):{} +})(e);return"("+(t.capture?"":"?:")+e.map((e=>l(e))).join("|")+")"} +function p(e){return RegExp(e.toString()+"|").exec("").length-1} +const b=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./ +;function m(e,{joinWith:t}){let n=0;return e.map((e=>{n+=1;const t=n +;let i=l(e),s="";for(;i.length>0;){const e=b.exec(i);if(!e){s+=i;break} +s+=i.substring(0,e.index), +i=i.substring(e.index+e[0].length),"\\"===e[0][0]&&e[1]?s+="\\"+(Number(e[1])+t):(s+=e[0], +"("===e[0]&&n++)}return s})).map((e=>`(${e})`)).join(t)} +const E="[a-zA-Z]\\w*",x="[a-zA-Z_]\\w*",w="\\b\\d+(\\.\\d+)?",y="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",_="\\b(0b[01]+)",O={ +begin:"\\\\[\\s\\S]",relevance:0},v={scope:"string",begin:"'",end:"'", +illegal:"\\n",contains:[O]},k={scope:"string",begin:'"',end:'"',illegal:"\\n", +contains:[O]},N=(e,t,n={})=>{const s=i({scope:"comment",begin:e,end:t, +contains:[]},n);s.contains.push({scope:"doctag", +begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)", +end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0}) +;const o=f("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/) +;return s.contains.push({begin:h(/[ ]+/,"(",o,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),s +},S=N("//","$"),M=N("/\\*","\\*/"),R=N("#","$");var j=Object.freeze({ +__proto__:null,APOS_STRING_MODE:v,BACKSLASH_ESCAPE:O,BINARY_NUMBER_MODE:{ +scope:"number",begin:_,relevance:0},BINARY_NUMBER_RE:_,COMMENT:N, +C_BLOCK_COMMENT_MODE:M,C_LINE_COMMENT_MODE:S,C_NUMBER_MODE:{scope:"number", +begin:y,relevance:0},C_NUMBER_RE:y,END_SAME_AS_BEGIN:e=>Object.assign(e,{ +"on:begin":(e,t)=>{t.data._beginMatch=e[1]},"on:end":(e,t)=>{ +t.data._beginMatch!==e[1]&&t.ignoreMatch()}}),HASH_COMMENT_MODE:R,IDENT_RE:E, +MATCH_NOTHING_RE:/\b\B/,METHOD_GUARD:{begin:"\\.\\s*"+x,relevance:0}, +NUMBER_MODE:{scope:"number",begin:w,relevance:0},NUMBER_RE:w, +PHRASAL_WORDS_MODE:{ +begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/ +},QUOTE_STRING_MODE:k,REGEXP_MODE:{scope:"regexp",begin:/\/(?=[^/\n]*\/)/, +end:/\/[gimuy]*/,contains:[O,{begin:/\[/,end:/\]/,relevance:0,contains:[O]}]}, +RE_STARTERS_RE:"!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~", +SHEBANG:(e={})=>{const t=/^#![ ]*\// +;return e.binary&&(e.begin=h(t,/.*\b/,e.binary,/\b.*/)),i({scope:"meta",begin:t, +end:/$/,relevance:0,"on:begin":(e,t)=>{0!==e.index&&t.ignoreMatch()}},e)}, +TITLE_MODE:{scope:"title",begin:E,relevance:0},UNDERSCORE_IDENT_RE:x, +UNDERSCORE_TITLE_MODE:{scope:"title",begin:x,relevance:0}});function A(e,t){ +"."===e.input[e.index-1]&&t.ignoreMatch()}function I(e,t){ +void 0!==e.className&&(e.scope=e.className,delete e.className)}function T(e,t){ +t&&e.beginKeywords&&(e.begin="\\b("+e.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)", +e.__beforeBegin=A,e.keywords=e.keywords||e.beginKeywords,delete e.beginKeywords, +void 0===e.relevance&&(e.relevance=0))}function L(e,t){ +Array.isArray(e.illegal)&&(e.illegal=f(...e.illegal))}function B(e,t){ +if(e.match){ +if(e.begin||e.end)throw Error("begin & end are not supported with match") +;e.begin=e.match,delete e.match}}function P(e,t){ +void 0===e.relevance&&(e.relevance=1)}const D=(e,t)=>{if(!e.beforeMatch)return +;if(e.starts)throw Error("beforeMatch cannot be used with starts") +;const n=Object.assign({},e);Object.keys(e).forEach((t=>{delete e[t] +})),e.keywords=n.keywords,e.begin=h(n.beforeMatch,g(n.begin)),e.starts={ +relevance:0,contains:[Object.assign(n,{endsParent:!0})] +},e.relevance=0,delete n.beforeMatch +},H=["of","and","for","in","not","or","if","then","parent","list","value"],C="keyword" +;function $(e,t,n=C){const i=Object.create(null) +;return"string"==typeof e?s(n,e.split(" ")):Array.isArray(e)?s(n,e):Object.keys(e).forEach((n=>{ +Object.assign(i,$(e[n],t,n))})),i;function s(e,n){ +t&&(n=n.map((e=>e.toLowerCase()))),n.forEach((t=>{const n=t.split("|") +;i[n[0]]=[e,U(n[0],n[1])]}))}}function U(e,t){ +return t?Number(t):(e=>H.includes(e.toLowerCase()))(e)?0:1}const z={},W=e=>{ +console.error(e)},X=(e,...t)=>{console.log("WARN: "+e,...t)},G=(e,t)=>{ +z[`${e}/${t}`]||(console.log(`Deprecated as of ${e}. ${t}`),z[`${e}/${t}`]=!0) +},K=Error();function F(e,t,{key:n}){let i=0;const s=e[n],o={},r={} +;for(let e=1;e<=t.length;e++)r[e+i]=s[e],o[e+i]=!0,i+=p(t[e-1]) +;e[n]=r,e[n]._emit=o,e[n]._multi=!0}function Z(e){(e=>{ +e.scope&&"object"==typeof e.scope&&null!==e.scope&&(e.beginScope=e.scope, +delete e.scope)})(e),"string"==typeof e.beginScope&&(e.beginScope={ +_wrap:e.beginScope}),"string"==typeof e.endScope&&(e.endScope={_wrap:e.endScope +}),(e=>{if(Array.isArray(e.begin)){ +if(e.skip||e.excludeBegin||e.returnBegin)throw W("skip, excludeBegin, returnBegin not compatible with beginScope: {}"), +K +;if("object"!=typeof e.beginScope||null===e.beginScope)throw W("beginScope must be object"), +K;F(e,e.begin,{key:"beginScope"}),e.begin=m(e.begin,{joinWith:""})}})(e),(e=>{ +if(Array.isArray(e.end)){ +if(e.skip||e.excludeEnd||e.returnEnd)throw W("skip, excludeEnd, returnEnd not compatible with endScope: {}"), +K +;if("object"!=typeof e.endScope||null===e.endScope)throw W("endScope must be object"), +K;F(e,e.end,{key:"endScope"}),e.end=m(e.end,{joinWith:""})}})(e)}function V(e){ +function t(t,n){ +return RegExp(l(t),"m"+(e.case_insensitive?"i":"")+(e.unicodeRegex?"u":"")+(n?"g":"")) +}class n{constructor(){ +this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0} +addRule(e,t){ +t.position=this.position++,this.matchIndexes[this.matchAt]=t,this.regexes.push([t,e]), +this.matchAt+=p(e)+1}compile(){0===this.regexes.length&&(this.exec=()=>null) +;const e=this.regexes.map((e=>e[1]));this.matcherRe=t(m(e,{joinWith:"|" +}),!0),this.lastIndex=0}exec(e){this.matcherRe.lastIndex=this.lastIndex +;const t=this.matcherRe.exec(e);if(!t)return null +;const n=t.findIndex(((e,t)=>t>0&&void 0!==e)),i=this.matchIndexes[n] +;return t.splice(0,n),Object.assign(t,i)}}class s{constructor(){ +this.rules=[],this.multiRegexes=[], +this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(e){ +if(this.multiRegexes[e])return this.multiRegexes[e];const t=new n +;return this.rules.slice(e).forEach((([e,n])=>t.addRule(e,n))), +t.compile(),this.multiRegexes[e]=t,t}resumingScanAtSamePosition(){ +return 0!==this.regexIndex}considerAll(){this.regexIndex=0}addRule(e,t){ +this.rules.push([e,t]),"begin"===t.type&&this.count++}exec(e){ +const t=this.getMatcher(this.regexIndex);t.lastIndex=this.lastIndex +;let n=t.exec(e) +;if(this.resumingScanAtSamePosition())if(n&&n.index===this.lastIndex);else{ +const t=this.getMatcher(0);t.lastIndex=this.lastIndex+1,n=t.exec(e)} +return n&&(this.regexIndex+=n.position+1, +this.regexIndex===this.count&&this.considerAll()),n}} +if(e.compilerExtensions||(e.compilerExtensions=[]), +e.contains&&e.contains.includes("self"))throw Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.") +;return e.classNameAliases=i(e.classNameAliases||{}),function n(o,r){const a=o +;if(o.isCompiled)return a +;[I,B,Z,D].forEach((e=>e(o,r))),e.compilerExtensions.forEach((e=>e(o,r))), +o.__beforeBegin=null,[T,L,P].forEach((e=>e(o,r))),o.isCompiled=!0;let c=null +;return"object"==typeof o.keywords&&o.keywords.$pattern&&(o.keywords=Object.assign({},o.keywords), +c=o.keywords.$pattern, +delete o.keywords.$pattern),c=c||/\w+/,o.keywords&&(o.keywords=$(o.keywords,e.case_insensitive)), +a.keywordPatternRe=t(c,!0), +r&&(o.begin||(o.begin=/\B|\b/),a.beginRe=t(a.begin),o.end||o.endsWithParent||(o.end=/\B|\b/), +o.end&&(a.endRe=t(a.end)), +a.terminatorEnd=l(a.end)||"",o.endsWithParent&&r.terminatorEnd&&(a.terminatorEnd+=(o.end?"|":"")+r.terminatorEnd)), +o.illegal&&(a.illegalRe=t(o.illegal)), +o.contains||(o.contains=[]),o.contains=[].concat(...o.contains.map((e=>(e=>(e.variants&&!e.cachedVariants&&(e.cachedVariants=e.variants.map((t=>i(e,{ +variants:null},t)))),e.cachedVariants?e.cachedVariants:q(e)?i(e,{ +starts:e.starts?i(e.starts):null +}):Object.isFrozen(e)?i(e):e))("self"===e?o:e)))),o.contains.forEach((e=>{n(e,a) +})),o.starts&&n(o.starts,r),a.matcher=(e=>{const t=new s +;return e.contains.forEach((e=>t.addRule(e.begin,{rule:e,type:"begin" +}))),e.terminatorEnd&&t.addRule(e.terminatorEnd,{type:"end" +}),e.illegal&&t.addRule(e.illegal,{type:"illegal"}),t})(a),a}(e)}function q(e){ +return!!e&&(e.endsWithParent||q(e.starts))}class J extends Error{ +constructor(e,t){super(e),this.name="HTMLInjectionError",this.html=t}} +const Y=n,Q=i,ee=Symbol("nomatch"),te=n=>{ +const i=Object.create(null),s=Object.create(null),o=[];let r=!0 +;const a="Could not find the language '{}', did you forget to load/include a language module?",l={ +disableAutodetect:!0,name:"Plain text",contains:[]};let p={ +ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i, +languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-", +cssSelector:"pre code",languages:null,__emitter:c};function b(e){ +return p.noHighlightRe.test(e)}function m(e,t,n){let i="",s="" +;"object"==typeof t?(i=e, +n=t.ignoreIllegals,s=t.language):(G("10.7.0","highlight(lang, code, ...args) has been deprecated."), +G("10.7.0","Please use highlight(code, options) instead.\nhttps://github.com/highlightjs/highlight.js/issues/2277"), +s=e,i=t),void 0===n&&(n=!0);const o={code:i,language:s};N("before:highlight",o) +;const r=o.result?o.result:E(o.language,o.code,n) +;return r.code=o.code,N("after:highlight",r),r}function E(e,n,s,o){ +const c=Object.create(null);function l(){if(!N.keywords)return void M.addText(R) +;let e=0;N.keywordPatternRe.lastIndex=0;let t=N.keywordPatternRe.exec(R),n="" +;for(;t;){n+=R.substring(e,t.index) +;const s=_.case_insensitive?t[0].toLowerCase():t[0],o=(i=s,N.keywords[i]);if(o){ +const[e,i]=o +;if(M.addText(n),n="",c[s]=(c[s]||0)+1,c[s]<=7&&(j+=i),e.startsWith("_"))n+=t[0];else{ +const n=_.classNameAliases[e]||e;u(t[0],n)}}else n+=t[0] +;e=N.keywordPatternRe.lastIndex,t=N.keywordPatternRe.exec(R)}var i +;n+=R.substring(e),M.addText(n)}function g(){null!=N.subLanguage?(()=>{ +if(""===R)return;let e=null;if("string"==typeof N.subLanguage){ +if(!i[N.subLanguage])return void M.addText(R) +;e=E(N.subLanguage,R,!0,S[N.subLanguage]),S[N.subLanguage]=e._top +}else e=x(R,N.subLanguage.length?N.subLanguage:null) +;N.relevance>0&&(j+=e.relevance),M.__addSublanguage(e._emitter,e.language) +})():l(),R=""}function u(e,t){ +""!==e&&(M.startScope(t),M.addText(e),M.endScope())}function d(e,t){let n=1 +;const i=t.length-1;for(;n<=i;){if(!e._emit[n]){n++;continue} +const i=_.classNameAliases[e[n]]||e[n],s=t[n];i?u(s,i):(R=s,l(),R=""),n++}} +function h(e,t){ +return e.scope&&"string"==typeof e.scope&&M.openNode(_.classNameAliases[e.scope]||e.scope), +e.beginScope&&(e.beginScope._wrap?(u(R,_.classNameAliases[e.beginScope._wrap]||e.beginScope._wrap), +R=""):e.beginScope._multi&&(d(e.beginScope,t),R="")),N=Object.create(e,{parent:{ +value:N}}),N}function f(e,n,i){let s=((e,t)=>{const n=e&&e.exec(t) +;return n&&0===n.index})(e.endRe,i);if(s){if(e["on:end"]){const i=new t(e) +;e["on:end"](n,i),i.isMatchIgnored&&(s=!1)}if(s){ +for(;e.endsParent&&e.parent;)e=e.parent;return e}} +if(e.endsWithParent)return f(e.parent,n,i)}function b(e){ +return 0===N.matcher.regexIndex?(R+=e[0],1):(T=!0,0)}function m(e){ +const t=e[0],i=n.substring(e.index),s=f(N,e,i);if(!s)return ee;const o=N +;N.endScope&&N.endScope._wrap?(g(), +u(t,N.endScope._wrap)):N.endScope&&N.endScope._multi?(g(), +d(N.endScope,e)):o.skip?R+=t:(o.returnEnd||o.excludeEnd||(R+=t), +g(),o.excludeEnd&&(R=t));do{ +N.scope&&M.closeNode(),N.skip||N.subLanguage||(j+=N.relevance),N=N.parent +}while(N!==s.parent);return s.starts&&h(s.starts,e),o.returnEnd?0:t.length} +let w={};function y(i,o){const a=o&&o[0];if(R+=i,null==a)return g(),0 +;if("begin"===w.type&&"end"===o.type&&w.index===o.index&&""===a){ +if(R+=n.slice(o.index,o.index+1),!r){const t=Error(`0 width match regex (${e})`) +;throw t.languageName=e,t.badRule=w.rule,t}return 1} +if(w=o,"begin"===o.type)return(e=>{ +const n=e[0],i=e.rule,s=new t(i),o=[i.__beforeBegin,i["on:begin"]] +;for(const t of o)if(t&&(t(e,s),s.isMatchIgnored))return b(n) +;return i.skip?R+=n:(i.excludeBegin&&(R+=n), +g(),i.returnBegin||i.excludeBegin||(R=n)),h(i,e),i.returnBegin?0:n.length})(o) +;if("illegal"===o.type&&!s){ +const e=Error('Illegal lexeme "'+a+'" for mode "'+(N.scope||"")+'"') +;throw e.mode=N,e}if("end"===o.type){const e=m(o);if(e!==ee)return e} +if("illegal"===o.type&&""===a)return 1 +;if(I>1e5&&I>3*o.index)throw Error("potential infinite loop, way more iterations than matches") +;return R+=a,a.length}const _=O(e) +;if(!_)throw W(a.replace("{}",e)),Error('Unknown language: "'+e+'"') +;const v=V(_);let k="",N=o||v;const S={},M=new p.__emitter(p);(()=>{const e=[] +;for(let t=N;t!==_;t=t.parent)t.scope&&e.unshift(t.scope) +;e.forEach((e=>M.openNode(e)))})();let R="",j=0,A=0,I=0,T=!1;try{ +if(_.__emitTokens)_.__emitTokens(n,M);else{for(N.matcher.considerAll();;){ +I++,T?T=!1:N.matcher.considerAll(),N.matcher.lastIndex=A +;const e=N.matcher.exec(n);if(!e)break;const t=y(n.substring(A,e.index),e) +;A=e.index+t}y(n.substring(A))}return M.finalize(),k=M.toHTML(),{language:e, +value:k,relevance:j,illegal:!1,_emitter:M,_top:N}}catch(t){ +if(t.message&&t.message.includes("Illegal"))return{language:e,value:Y(n), +illegal:!0,relevance:0,_illegalBy:{message:t.message,index:A, +context:n.slice(A-100,A+100),mode:t.mode,resultSoFar:k},_emitter:M};if(r)return{ +language:e,value:Y(n),illegal:!1,relevance:0,errorRaised:t,_emitter:M,_top:N} +;throw t}}function x(e,t){t=t||p.languages||Object.keys(i);const n=(e=>{ +const t={value:Y(e),illegal:!1,relevance:0,_top:l,_emitter:new p.__emitter(p)} +;return t._emitter.addText(e),t})(e),s=t.filter(O).filter(k).map((t=>E(t,e,!1))) +;s.unshift(n);const o=s.sort(((e,t)=>{ +if(e.relevance!==t.relevance)return t.relevance-e.relevance +;if(e.language&&t.language){if(O(e.language).supersetOf===t.language)return 1 +;if(O(t.language).supersetOf===e.language)return-1}return 0})),[r,a]=o,c=r +;return c.secondBest=a,c}function w(e){let t=null;const n=(e=>{ +let t=e.className+" ";t+=e.parentNode?e.parentNode.className:"" +;const n=p.languageDetectRe.exec(t);if(n){const t=O(n[1]) +;return t||(X(a.replace("{}",n[1])), +X("Falling back to no-highlight mode for this block.",e)),t?n[1]:"no-highlight"} +return t.split(/\s+/).find((e=>b(e)||O(e)))})(e);if(b(n))return +;if(N("before:highlightElement",{el:e,language:n +}),e.dataset.highlighted)return void console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",e) +;if(e.children.length>0&&(p.ignoreUnescapedHTML||(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."), +console.warn("https://github.com/highlightjs/highlight.js/wiki/security"), +console.warn("The element with unescaped HTML:"), +console.warn(e)),p.throwUnescapedHTML))throw new J("One of your code blocks includes unescaped HTML.",e.innerHTML) +;t=e;const i=t.textContent,o=n?m(i,{language:n,ignoreIllegals:!0}):x(i) +;e.innerHTML=o.value,e.dataset.highlighted="yes",((e,t,n)=>{const i=t&&s[t]||n +;e.classList.add("hljs"),e.classList.add("language-"+i) +})(e,n,o.language),e.result={language:o.language,re:o.relevance, +relevance:o.relevance},o.secondBest&&(e.secondBest={ +language:o.secondBest.language,relevance:o.secondBest.relevance +}),N("after:highlightElement",{el:e,result:o,text:i})}let y=!1;function _(){ +"loading"!==document.readyState?document.querySelectorAll(p.cssSelector).forEach(w):y=!0 +}function O(e){return e=(e||"").toLowerCase(),i[e]||i[s[e]]} +function v(e,{languageName:t}){"string"==typeof e&&(e=[e]),e.forEach((e=>{ +s[e.toLowerCase()]=t}))}function k(e){const t=O(e) +;return t&&!t.disableAutodetect}function N(e,t){const n=e;o.forEach((e=>{ +e[n]&&e[n](t)}))} +"undefined"!=typeof window&&window.addEventListener&&window.addEventListener("DOMContentLoaded",(()=>{ +y&&_()}),!1),Object.assign(n,{highlight:m,highlightAuto:x,highlightAll:_, +highlightElement:w, +highlightBlock:e=>(G("10.7.0","highlightBlock will be removed entirely in v12.0"), +G("10.7.0","Please use highlightElement now."),w(e)),configure:e=>{p=Q(p,e)}, +initHighlighting:()=>{ +_(),G("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")}, +initHighlightingOnLoad:()=>{ +_(),G("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.") +},registerLanguage:(e,t)=>{let s=null;try{s=t(n)}catch(t){ +if(W("Language definition for '{}' could not be registered.".replace("{}",e)), +!r)throw t;W(t),s=l} +s.name||(s.name=e),i[e]=s,s.rawDefinition=t.bind(null,n),s.aliases&&v(s.aliases,{ +languageName:e})},unregisterLanguage:e=>{delete i[e] +;for(const t of Object.keys(s))s[t]===e&&delete s[t]}, +listLanguages:()=>Object.keys(i),getLanguage:O,registerAliases:v, +autoDetection:k,inherit:Q,addPlugin:e=>{(e=>{ +e["before:highlightBlock"]&&!e["before:highlightElement"]&&(e["before:highlightElement"]=t=>{ +e["before:highlightBlock"](Object.assign({block:t.el},t)) +}),e["after:highlightBlock"]&&!e["after:highlightElement"]&&(e["after:highlightElement"]=t=>{ +e["after:highlightBlock"](Object.assign({block:t.el},t))})})(e),o.push(e)}, +removePlugin:e=>{const t=o.indexOf(e);-1!==t&&o.splice(t,1)}}),n.debugMode=()=>{ +r=!1},n.safeMode=()=>{r=!0},n.versionString="11.9.0",n.regex={concat:h, +lookahead:g,either:f,optional:d,anyNumberOfTimes:u} +;for(const t in j)"object"==typeof j[t]&&e(j[t]);return Object.assign(n,j),n +},ne=te({});return ne.newInstance=()=>te({}),ne}() +;"object"==typeof exports&&"undefined"!=typeof module&&(module.exports=hljs);/*! `bash` grammar compiled for Highlight.js 11.9.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const s=e.regex,t={},n={begin:/\$\{/, +end:/\}/,contains:["self",{begin:/:-/,contains:[t]}]};Object.assign(t,{ +className:"variable",variants:[{ +begin:s.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},n]});const a={ +className:"subst",begin:/\$\(/,end:/\)/,contains:[e.BACKSLASH_ESCAPE] +},i=e.inherit(e.COMMENT(),{match:[/(^|\s)/,/#.*$/],scope:{2:"comment"}}),c={ +begin:/<<-?\s*(?=\w+)/,starts:{contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/, +end:/(\w+)/,className:"string"})]}},o={className:"string",begin:/"/,end:/"/, +contains:[e.BACKSLASH_ESCAPE,t,a]};a.contains.push(o);const r={begin:/\$?\(\(/, +end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},e.NUMBER_MODE,t] +},l=e.SHEBANG({binary:"(fish|bash|zsh|sh|csh|ksh|tcsh|dash|scsh)",relevance:10 +}),m={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0, +contains:[e.inherit(e.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0};return{ +name:"Bash",aliases:["sh"],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/, +keyword:["if","then","else","elif","fi","for","while","until","in","do","done","case","esac","function","select"], +literal:["true","false"], +built_in:["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset","alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","type","typeset","ulimit","unalias","set","shopt","autoload","bg","bindkey","bye","cap","chdir","clone","comparguments","compcall","compctl","compdescribe","compfiles","compgroups","compquote","comptags","comptry","compvalues","dirs","disable","disown","echotc","echoti","emulate","fc","fg","float","functions","getcap","getln","history","integer","jobs","kill","limit","log","noglob","popd","print","pushd","pushln","rehash","sched","setcap","setopt","stat","suspend","ttyctl","unfunction","unhash","unlimit","unsetopt","vared","wait","whence","where","which","zcompile","zformat","zftp","zle","zmodload","zparseopts","zprof","zpty","zregexparse","zsocket","zstyle","ztcp","chcon","chgrp","chown","chmod","cp","dd","df","dir","dircolors","ln","ls","mkdir","mkfifo","mknod","mktemp","mv","realpath","rm","rmdir","shred","sync","touch","truncate","vdir","b2sum","base32","base64","cat","cksum","comm","csplit","cut","expand","fmt","fold","head","join","md5sum","nl","numfmt","od","paste","ptx","pr","sha1sum","sha224sum","sha256sum","sha384sum","sha512sum","shuf","sort","split","sum","tac","tail","tr","tsort","unexpand","uniq","wc","arch","basename","chroot","date","dirname","du","echo","env","expr","factor","groups","hostid","id","link","logname","nice","nohup","nproc","pathchk","pinky","printenv","printf","pwd","readlink","runcon","seq","sleep","stat","stdbuf","stty","tee","test","timeout","tty","uname","unlink","uptime","users","who","whoami","yes"] +},contains:[l,e.SHEBANG(),m,r,i,c,{match:/(\/[a-z._-]+)+/},o,{match:/\\"/},{ +className:"string",begin:/'/,end:/'/},{match:/\\'/},t]}}})() +;hljs.registerLanguage("bash",e)})();/*! `nix` grammar compiled for Highlight.js 11.9.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const n={ +keyword:["rec","with","let","in","inherit","assert","if","else","then"], +literal:["true","false","or","and","null"], +built_in:["import","abort","baseNameOf","dirOf","isNull","builtins","map","removeAttrs","throw","toString","derivation"] +},s={className:"subst",begin:/\$\{/,end:/\}/,keywords:n},a={className:"string", +contains:[{className:"char.escape",begin:/''\$/},s],variants:[{begin:"''", +end:"''"},{begin:'"',end:'"'}] +},i=[e.NUMBER_MODE,e.HASH_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,a,{ +begin:/[a-zA-Z0-9-_]+(\s*=)/,returnBegin:!0,relevance:0,contains:[{ +className:"attr",begin:/\S+/,relevance:.2}]}];return s.contains=i,{name:"Nix", +aliases:["nixos"],keywords:n,contains:i}}})();hljs.registerLanguage("nix",e) +})();/*! `shell` grammar compiled for Highlight.js 11.9.0 */ +(()=>{var s=(()=>{"use strict";return s=>({name:"Shell Session", +aliases:["console","shellsession"],contains:[{className:"meta.prompt", +begin:/^\s{0,3}[/~\w\d[\]()@-]*[>%$#][ ]?/,starts:{end:/[^\\](?=\s*$)/, +subLanguage:"bash"}}]})})();hljs.registerLanguage("shell",s)})(); \ No newline at end of file diff --git a/pkgs/misc/documentation-highlighter/loader.js b/pkgs/misc/documentation-highlighter/loader.js index 4ad7dbf24b51..cf0fdac574dd 100644 --- a/pkgs/misc/documentation-highlighter/loader.js +++ b/pkgs/misc/documentation-highlighter/loader.js @@ -1,7 +1,6 @@ /* This file is NOT part of highlight.js */ -document.onreadystatechange = function () { - var listings = document.querySelectorAll('.programlisting, .screen'); - for (i = 0; i < listings.length; ++i) { - hljs.highlightBlock(listings[i]); - } -} +document.addEventListener('DOMContentLoaded', (event) => { + document.querySelectorAll('.programlisting, .screen').forEach((element) => { + hljs.highlightElement(element); + }); +}); diff --git a/pkgs/misc/documentation-highlighter/mono-blue.css b/pkgs/misc/documentation-highlighter/mono-blue.css index 884c97c7673f..bc9bceae4b10 100644 --- a/pkgs/misc/documentation-highlighter/mono-blue.css +++ b/pkgs/misc/documentation-highlighter/mono-blue.css @@ -1,17 +1,18 @@ +pre code.hljs { + display: block; + overflow-x: auto; + padding: 1em +} +code.hljs { + padding: 3px 5px +} /* Five-color theme from a single blue hue. */ .hljs { - display: block; - overflow-x: auto; - padding: 0.5em; background: #eaeef3; + color: #00193a } - -.hljs { - color: #00193a; -} - .hljs-keyword, .hljs-selector-tag, .hljs-title, @@ -19,13 +20,11 @@ .hljs-doctag, .hljs-name, .hljs-strong { - font-weight: bold; + font-weight: bold } - .hljs-comment { - color: #738191; + color: #738191 } - .hljs-string, .hljs-title, .hljs-section, @@ -38,9 +37,8 @@ .hljs-name, .hljs-selector-id, .hljs-selector-class { - color: #0048ab; + color: #0048ab } - .hljs-meta, .hljs-subst, .hljs-symbol, @@ -51,9 +49,8 @@ .hljs-template-variable, .hljs-link, .hljs-bullet { - color: #4c81c9; + color: #4c81c9 } - .hljs-emphasis { - font-style: italic; -} + font-style: italic +} \ No newline at end of file diff --git a/pkgs/misc/documentation-highlighter/update.sh b/pkgs/misc/documentation-highlighter/update.sh index 3b77af4af416..8d44e9ddd9a1 100755 --- a/pkgs/misc/documentation-highlighter/update.sh +++ b/pkgs/misc/documentation-highlighter/update.sh @@ -21,19 +21,21 @@ trap finish EXIT mkdir $scratch/src cd $scratch/src -token=$(curl https://highlightjs.org/download/ -c "$scratch/jar" \ - | grep csrf \ - | cut -d"'" -f6) +curl \ + -X POST \ + -H 'Content-Type: application/json' \ + --data-raw '{ + "api": 2, + "languages": ["bash", "nix", "shell"] + }' \ + https://highlightjs.org/api/download > $scratch/out.zip -curl --header "Referer: https://highlightjs.org/download/"\ - -b "$scratch/jar" \ - --data "csrfmiddlewaretoken=$token&nix.js=on&bash.js=on" \ - https://highlightjs.org/download/ > $scratch/out.zip unzip "$scratch/out.zip" out="$root/" mkdir -p "$out" -cp ./{highlight.pack.js,LICENSE,styles/mono-blue.css} "$out" +cp ./highlight.min.js "$out/highlight.pack.js" +cp ./{LICENSE,styles/mono-blue.css} "$out" ( echo "This file was generated with pkgs/misc/documentation-highlighter/update.sh" diff --git a/pkgs/misc/doge/default.nix b/pkgs/misc/doge/default.nix deleted file mode 100644 index 3fbf5992ade7..000000000000 --- a/pkgs/misc/doge/default.nix +++ /dev/null @@ -1,19 +0,0 @@ -{ lib, python3Packages, fetchPypi }: - -python3Packages.buildPythonPackage rec { - pname = "doge"; - version = "3.5.0"; - - src = fetchPypi { - inherit pname version; - sha256 = "0lwdl06lbpnaqqjk8ap9dsags3bzma30z17v0zc7spng1gz8m6xj"; - }; - - meta = with lib; { - homepage = "https://github.com/thiderman/doge"; - description = "wow very terminal doge"; - license = licenses.mit; - maintainers = with maintainers; [ Gonzih ]; - mainProgram = "doge"; - }; -} diff --git a/pkgs/os-specific/linux/kernel/common-config.nix b/pkgs/os-specific/linux/kernel/common-config.nix index 2954ee8f78b9..4b38ffc5069c 100644 --- a/pkgs/os-specific/linux/kernel/common-config.nix +++ b/pkgs/os-specific/linux/kernel/common-config.nix @@ -275,6 +275,12 @@ let INFINIBAND = module; INFINIBAND_IPOIB = module; INFINIBAND_IPOIB_CM = yes; + } // optionalAttrs (stdenv.hostPlatform.system == "aarch64-linux") { + # Not enabled by default, hides modules behind it + NET_VENDOR_MEDIATEK = yes; + # Enable SoC interface for MT7915 module, required for MT798X. + MT7986_WMAC = whenBetween "5.18" "6.6" yes; + MT798X_WMAC = whenAtLeast "6.6" yes; }; wireless = { diff --git a/pkgs/os-specific/linux/libnss-mysql/default.nix b/pkgs/os-specific/linux/libnss-mysql/default.nix index 77e629b03074..133312801119 100644 --- a/pkgs/os-specific/linux/libnss-mysql/default.nix +++ b/pkgs/os-specific/linux/libnss-mysql/default.nix @@ -1,4 +1,11 @@ -{ lib, stdenv, fetchFromGitHub, autoreconfHook, which, libmysqlclient }: +{ lib +, nixosTests +, stdenv +, fetchFromGitHub +, autoreconfHook +, which +, libmysqlclient +}: stdenv.mkDerivation rec { pname = "libnss-mysql"; @@ -20,6 +27,10 @@ stdenv.mkDerivation rec { rm -r $out/etc ''; + passthru.tests = { + inherit (nixosTests) auth-mysql; + }; + meta = with lib; { description = "MySQL module for the Solaris Nameservice Switch (NSS)"; homepage = "https://github.com/saknopper/libnss-mysql"; diff --git a/pkgs/os-specific/linux/pam_mysql/default.nix b/pkgs/os-specific/linux/pam_mysql/default.nix index 036d4b20cb4c..1088d8abe7a6 100644 --- a/pkgs/os-specific/linux/pam_mysql/default.nix +++ b/pkgs/os-specific/linux/pam_mysql/default.nix @@ -1,4 +1,15 @@ -{ lib, stdenv, fetchFromGitHub, meson, ninja, pam, pkg-config, libmysqlclient, mariadb, libxcrypt }: +{ lib +, nixosTests +, stdenv +, fetchFromGitHub +, meson +, ninja +, pam +, pkg-config +, libmysqlclient +, mariadb +, libxcrypt +}: stdenv.mkDerivation rec { pname = "pam_mysql"; @@ -14,6 +25,10 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ meson pkg-config ninja ]; buildInputs = [ pam libmysqlclient mariadb libxcrypt ]; + passthru.tests = { + inherit (nixosTests) auth-mysql; + }; + meta = with lib; { description = "PAM authentication module against a MySQL database"; homepage = "https://github.com/NigelCunningham/pam-MySQL"; diff --git a/pkgs/servers/etcd/3.4.nix b/pkgs/servers/etcd/3.4.nix index 61b3f99d0147..597cad35021b 100644 --- a/pkgs/servers/etcd/3.4.nix +++ b/pkgs/servers/etcd/3.4.nix @@ -2,25 +2,25 @@ buildGoModule rec { pname = "etcd"; - version = "3.4.27"; - - vendorHash = "sha256-duqOIMIXAuJjvKDM15mDdi+LZUZm0uK0MjTv2Dsl3FA="; - - doCheck = false; + version = "3.4.28"; src = fetchFromGitHub { owner = "etcd-io"; repo = "etcd"; rev = "v${version}"; - sha256 = "sha256-iw9rWfloK1h0M0O10AqCFKETSN6Adn71ujn4twVgsnk="; + hash = "sha256-M0iD05Wk3pC56kGKeIb0bfMUpy9idMKin0+DYhBo/cw="; }; + vendorHash = "sha256-DbDIz/cbXqYHaGqNqP+wYpuiaFiZYElRXmQwBXnCbMk="; + buildPhase = '' patchShebangs . ./build ./functional/build ''; + doCheck = false; + installPhase = '' install -Dm755 bin/* bin/functional/cmd/* -t $out/bin ''; diff --git a/pkgs/servers/etcd/3.5.nix b/pkgs/servers/etcd/3.5.nix index a7507f1dd237..e5d9a677f950 100644 --- a/pkgs/servers/etcd/3.5.nix +++ b/pkgs/servers/etcd/3.5.nix @@ -1,13 +1,13 @@ { lib, buildGoModule, fetchFromGitHub, symlinkJoin, nixosTests }: let - version = "3.5.9"; + version = "3.5.10"; src = fetchFromGitHub { owner = "etcd-io"; repo = "etcd"; rev = "v${version}"; - hash = "sha256-Vp8U49fp0FowIuSSvbrMWjAKG2oDO1o0qO4izSnTR3U="; + hash = "sha256-X/de8YA55SZ6p8r/pV8CGxfDKN8voJlyA0r4ckan6ZE="; }; CGO_ENABLED = 0; @@ -25,7 +25,7 @@ let inherit CGO_ENABLED meta src version; - vendorHash = "sha256-vu5VKHnDbvxSd8qpIFy0bA88IIXLaQ5S8dVUJEwnKJA="; + vendorHash = "sha256-kFR6RvHoNM4SZOgJd7inUuw5GfRLM+3WsKU73We8UzU="; modRoot = "./server"; @@ -45,7 +45,7 @@ let inherit CGO_ENABLED meta src version; - vendorHash = "sha256-i60rKCmbEXkdFOZk2dTbG5EtYKb5eCBSyMcsTtnvATs="; + vendorHash = "sha256-oVabZ2JZlLKHFCuAeeWRTrcSCxzz05HlvDu/YSMKuCs="; modRoot = "./etcdutl"; }; @@ -55,7 +55,7 @@ let inherit CGO_ENABLED meta src version; - vendorHash = "sha256-awl/4kuOjspMVEwfANWK0oi3RId6ERsFkdluiRaaXlA="; + vendorHash = "sha256-0j35caQfLh7kwDKgmTe1novqKfz/3JlQLbUk3+GFPhk="; modRoot = "./etcdctl"; }; diff --git a/pkgs/servers/mail/mailman/package.nix b/pkgs/servers/mail/mailman/package.nix index 955c553d8a74..f64c3f1a29c8 100644 --- a/pkgs/servers/mail/mailman/package.nix +++ b/pkgs/servers/mail/mailman/package.nix @@ -34,7 +34,7 @@ buildPythonPackage rec { requests sqlalchemy zope-component - zope_configuration + zope-configuration ]; checkInputs = [ diff --git a/pkgs/servers/monitoring/plugins/default.nix b/pkgs/servers/monitoring/plugins/default.nix index 2f6122caa69e..6f3d8c5ffd89 100644 --- a/pkgs/servers/monitoring/plugins/default.nix +++ b/pkgs/servers/monitoring/plugins/default.nix @@ -34,7 +34,6 @@ let lm_sensors net-snmp procps - unixtools.ping ]; mailq = runCommand "mailq-wrapper" { preferLocalBuild = true; } '' @@ -76,8 +75,8 @@ stdenv.mkDerivation rec { -e 's|^DEFAULT_PATH=.*|DEFAULT_PATH=\"${binPath}\"|' configureFlagsArray+=( - --with-ping-command='ping -4 -n -U -w %d -c %d %s' - --with-ping6-command='ping -6 -n -U -w %d -c %d %s' + --with-ping-command='${lib.getBin unixtools.ping}/bin/ping -4 -n -U -w %d -c %d %s' + --with-ping6-command='${lib.getBin unixtools.ping}/bin/ping -6 -n -U -w %d -c %d %s' ) install -Dm555 ${share} $out/share diff --git a/pkgs/servers/owncast/default.nix b/pkgs/servers/owncast/default.nix index 2740e19dbff2..a5ec0dc214da 100644 --- a/pkgs/servers/owncast/default.nix +++ b/pkgs/servers/owncast/default.nix @@ -9,7 +9,7 @@ }: let - version = "0.1.1"; + version = "0.1.2"; in buildGoModule { pname = "owncast"; inherit version; @@ -17,9 +17,9 @@ in buildGoModule { owner = "owncast"; repo = "owncast"; rev = "v${version}"; - hash = "sha256-nBTuvVVnFlC75p8bRCN+lNl9fExBZrsLEesvXWwNlAQ="; + hash = "sha256-pPBY2PcXe3k9G6kjj/vF5VB6DEmiwKDUrK4VGR4xNzU="; }; - vendorHash = "sha256-yjy5bDJjWk7UotBVqvVFiGx8mpfhpqMTxoQm/eWHcw4="; + vendorHash = "sha256-7HxiZh5X5AZVMiZT6B8DfOy6stJ3+dFEixwJYv5X0dY="; propagatedBuildInputs = [ ffmpeg ]; diff --git a/pkgs/servers/search/opensearch/default.nix b/pkgs/servers/search/opensearch/default.nix index 73eb1fd97fa7..3c09530d1790 100644 --- a/pkgs/servers/search/opensearch/default.nix +++ b/pkgs/servers/search/opensearch/default.nix @@ -11,11 +11,11 @@ stdenvNoCC.mkDerivation (finalAttrs: { pname = "opensearch"; - version = "2.11.0"; + version = "2.11.1"; src = fetchurl { url = "https://artifacts.opensearch.org/releases/bundle/opensearch/${finalAttrs.version}/opensearch-${finalAttrs.version}-linux-x64.tar.gz"; - hash = "sha256-j9bN09E4VikDPqvhRULfOjATme5KgVGrdv0rIPdd4Sw="; + hash = "sha256-km6z+Z9ZLnUY1dweJQrhHRu0XvdmqQIiqN8Ruy7jWpw="; }; nativeBuildInputs = [ diff --git a/pkgs/servers/sql/pgpool/default.nix b/pkgs/servers/sql/pgpool/default.nix index 6d825ddb6680..74fd51d45266 100644 --- a/pkgs/servers/sql/pgpool/default.nix +++ b/pkgs/servers/sql/pgpool/default.nix @@ -10,12 +10,12 @@ stdenv.mkDerivation rec { pname = "pgpool-II"; - version = "4.4.4"; + version = "4.4.5"; src = fetchurl { url = "https://www.pgpool.net/mediawiki/download.php?f=pgpool-II-${version}.tar.gz"; name = "pgpool-II-${version}.tar.gz"; - sha256 = "sha256-EL7Wb4GXx03LAKDnP2GAZtXV4K3IeIZcL8+hyUXmj08="; + hash = "sha256-zNSSLIaUmRECor72TdQ/M/U59qGFvULyGDIrqwo4imA="; }; buildInputs = [ diff --git a/pkgs/servers/web-apps/netbox/generic.nix b/pkgs/servers/web-apps/netbox/generic.nix index afd02d798535..ec544b1e8772 100644 --- a/pkgs/servers/web-apps/netbox/generic.nix +++ b/pkgs/servers/web-apps/netbox/generic.nix @@ -1,6 +1,5 @@ { lib , fetchFromGitHub -, fetchpatch , python3 , version , hash @@ -94,6 +93,7 @@ passthru = { # PYTHONPATH of all dependencies used by the package pythonPath = python3.pkgs.makePythonPath propagatedBuildInputs; + gunicorn = python3.pkgs.gunicorn; inherit tests; }; diff --git a/pkgs/servers/web-apps/nifi/default.nix b/pkgs/servers/web-apps/nifi/default.nix index 46535e0b4b4b..182b1fb22fd5 100644 --- a/pkgs/servers/web-apps/nifi/default.nix +++ b/pkgs/servers/web-apps/nifi/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "nifi"; - version = "1.23.2"; + version = "1.24.0"; src = fetchzip { url = "mirror://apache/nifi/${version}/nifi-${version}-bin.zip"; - hash = "sha256-NRX0lEE5/HsYnZXtLDlPUpgWMsg/2Z3cRUnJwKDGxfw="; + hash = "sha256-8S06E8RiH/EnfAa60eRzjmHmzMn+3UZbykJpvFFXEho="; }; nativeBuildInputs = [ makeWrapper ]; diff --git a/pkgs/servers/zigbee2mqtt/default.nix b/pkgs/servers/zigbee2mqtt/default.nix index 010112dff80b..6b655c63cd86 100644 --- a/pkgs/servers/zigbee2mqtt/default.nix +++ b/pkgs/servers/zigbee2mqtt/default.nix @@ -8,16 +8,16 @@ buildNpmPackage rec { pname = "zigbee2mqtt"; - version = "1.33.2"; + version = "1.34.0"; src = fetchFromGitHub { owner = "Koenkk"; repo = "zigbee2mqtt"; rev = version; - hash = "sha256-pRY4FOIJwsLSKYieN0D1esKdoUqx62NMFgiYXaXguJ0="; + hash = "sha256-2D9WylfpetnEZdY4STIrGEU6Gg1gET/zf5p7Ou/Wm5Q="; }; - npmDepsHash = "sha256-9bOFM8Ie0334H2L94ypgkMrB6zyVJ9YTvNnKeBJjOUI="; + npmDepsHash = "sha256-MXTKZNERxryt7L42dHxKx7XfXByNQ67oU+4FKTd0u4U="; nativeBuildInputs = [ python3 diff --git a/pkgs/tools/admin/awscli2/default.nix b/pkgs/tools/admin/awscli2/default.nix index 37deb7960532..3a0b72a158de 100644 --- a/pkgs/tools/admin/awscli2/default.nix +++ b/pkgs/tools/admin/awscli2/default.nix @@ -13,6 +13,11 @@ let py = python3 // { pkgs = python3.pkgs.overrideScope (final: prev: { + sphinx = prev.sphinx.overridePythonAttrs (prev: { + disabledTests = prev.disabledTests ++ [ + "test_check_link_response_only" # fails on hydra https://hydra.nixos.org/build/242624087/nixlog/1 + ]; + }); ruamel-yaml = prev.ruamel-yaml.overridePythonAttrs (prev: { src = prev.src.override { version = "0.17.21"; diff --git a/pkgs/tools/admin/berglas/default.nix b/pkgs/tools/admin/berglas/default.nix index 75a4bc591e7b..150b5535f1ce 100644 --- a/pkgs/tools/admin/berglas/default.nix +++ b/pkgs/tools/admin/berglas/default.nix @@ -27,16 +27,16 @@ in buildGoModule rec { pname = "berglas"; - version = "1.0.3"; + version = "2.0.1"; src = fetchFromGitHub { owner = "GoogleCloudPlatform"; repo = pname; rev = "v${version}"; - sha256 = "sha256-4hbRX0kKMWixcu5SWjrM5lVvhLMOaeBdG4GH5NVAh70="; + sha256 = "sha256-Jf6yPVydM7UnG1yiLEFe+7FMkWANIQebZ3QAwg6/OQs="; }; - vendorHash = "sha256-qcFS07gma7GVxhdrYca0E6rcczNcZmU8JcjjcpEaxp0="; + vendorHash = "sha256-3WDBl/GqCgRFMmh6TQvtHhACCRzf9sdIO8fel8CAMP0="; ldflags = [ "-s" diff --git a/pkgs/tools/audio/mpdcron/fix-canonicalize-conflict-with-glibc.patch b/pkgs/tools/audio/mpdcron/fix-canonicalize-conflict-with-glibc.patch new file mode 100644 index 000000000000..dd89f8998498 --- /dev/null +++ b/pkgs/tools/audio/mpdcron/fix-canonicalize-conflict-with-glibc.patch @@ -0,0 +1,22 @@ +diff --git a/ext/nokogiri/xml_document.c b/ext/nokogiri/xml_document.c +index 1d2119c8..c1c87713 100644 +--- a/ext/nokogiri/xml_document.c ++++ b/ext/nokogiri/xml_document.c +@@ -492,7 +492,7 @@ static int block_caller(void * ctx, xmlNodePtr _node, xmlNodePtr _parent) + * The block must return a non-nil, non-false value if the +obj+ passed in + * should be included in the canonicalized document. + */ +-static VALUE canonicalize(int argc, VALUE* argv, VALUE self) ++static VALUE nokogiri_xml_document_canonicalize(int argc, VALUE* argv, VALUE self) + { + VALUE mode; + VALUE incl_ns; +@@ -573,7 +573,7 @@ void init_xml_document() + rb_define_method(klass, "encoding", encoding, 0); + rb_define_method(klass, "encoding=", set_encoding, 1); + rb_define_method(klass, "version", version, 0); +- rb_define_method(klass, "canonicalize", canonicalize, -1); ++ rb_define_method(klass, "nokogiri_xml_document_canonicalize", canonicalize, -1); + rb_define_method(klass, "dup", duplicate_document, -1); + rb_define_method(klass, "url", url, 0); + rb_define_method(klass, "create_entity", create_entity, -1); diff --git a/pkgs/tools/audio/mpdcron/gemset.nix b/pkgs/tools/audio/mpdcron/gemset.nix index 836878c9d88a..ee254bb6354b 100644 --- a/pkgs/tools/audio/mpdcron/gemset.nix +++ b/pkgs/tools/audio/mpdcron/gemset.nix @@ -18,6 +18,19 @@ sha256 = "02bjydih0j515szfv9mls195cvpyidh6ixm7dwbl3s2sbaxxk5s4"; type = "gem"; }; + + dontBuild = false; + patches = [ + # Fixes a naming conflict of nokogiri's `canonicalize` function + # with one defined in glibc. This has been fixed upstream in 2020 + # in a much newer version (1.15.5), but through the divergence + # of the affected file, the commit isn't directly applicable to + # the one packaged here: + # + # https://github.com/sparklemotion/nokogiri/pull/2106/commits/7a74cdbe4538e964023e5a0fdca58d8af708b91e + # https://github.com/sparklemotion/nokogiri/issues/2105 + ./fix-canonicalize-conflict-with-glibc.patch + ]; version = "1.10.3"; }; } diff --git a/pkgs/tools/graphics/argyllcms/default.nix b/pkgs/tools/graphics/argyllcms/default.nix index 271d5a5754f9..941e4cfec22c 100644 --- a/pkgs/tools/graphics/argyllcms/default.nix +++ b/pkgs/tools/graphics/argyllcms/default.nix @@ -6,13 +6,13 @@ stdenv.mkDerivation rec { pname = "argyllcms"; - version = "3.0.2"; + version = "3.1.0"; src = fetchzip { # Kind of flacky URL, it was reaturning 406 and inconsistent binaries for a # while on me. It might be good to find a mirror url = "https://www.argyllcms.com/Argyll_V${version}_src.zip"; - hash = "sha256-9+rUhZVwSzAM9Ko6FYyl2OVvsOFBaUCA1PJs9kaLWaE="; + hash = "sha256-IZScf+xpvvMt5YFlYQprg51cw2ztMdOrqcLm7l5uBhU="; }; nativeBuildInputs = [ jam unzip ]; diff --git a/pkgs/tools/misc/esphome/default.nix b/pkgs/tools/misc/esphome/default.nix index 6ac1f24a2010..2b683e73ed0f 100644 --- a/pkgs/tools/misc/esphome/default.nix +++ b/pkgs/tools/misc/esphome/default.nix @@ -16,14 +16,14 @@ let in python.pkgs.buildPythonApplication rec { pname = "esphome"; - version = "2023.11.4"; + version = "2023.11.6"; format = "setuptools"; src = fetchFromGitHub { owner = pname; repo = pname; rev = "refs/tags/${version}"; - hash = "sha256-KIDqIf9aJP5IS+qE0Gy5j3F2DGz/WGbN4Wf9SGzgnzA="; + hash = "sha256-9LqZlhCt+7p6tnSHFhbnUzkEOJQDsg/Pd/hgd/Il0ZQ="; }; postPatch = '' diff --git a/pkgs/tools/misc/fend/default.nix b/pkgs/tools/misc/fend/default.nix index 074088f3f19e..7abb37592c6a 100644 --- a/pkgs/tools/misc/fend/default.nix +++ b/pkgs/tools/misc/fend/default.nix @@ -8,6 +8,10 @@ , copyDesktopItems , makeDesktopItem , nix-update-script +, testers +, writeText +, runCommand +, fend }: rustPlatform.buildRustPackage rec { @@ -58,11 +62,26 @@ rustPlatform.buildRustPackage rec { }) ]; - passthru.updateScript = nix-update-script { }; + passthru = { + updateScript = nix-update-script { }; + tests = { + version = testers.testVersion { package = fend; }; + units = testers.testEqualContents { + assertion = "fend does simple math and unit conversions"; + expected = writeText "expected" '' + 36 kph + ''; + actual = runCommand "actual" { } '' + ${lib.getExe fend} '(100 meters) / (10 seconds) to kph' > $out + ''; + }; + }; + }; meta = with lib; { description = "Arbitrary-precision unit-aware calculator"; homepage = "https://github.com/printfn/fend"; + changelog = "https://github.com/printfn/fend/releases/tag/v${version}"; license = licenses.mit; maintainers = with maintainers; [ djanatyn liff ]; mainProgram = "fend"; diff --git a/pkgs/tools/misc/osinfo-db-tools/default.nix b/pkgs/tools/misc/osinfo-db-tools/default.nix index cf0ab2776ba5..be78d6c02600 100644 --- a/pkgs/tools/misc/osinfo-db-tools/default.nix +++ b/pkgs/tools/misc/osinfo-db-tools/default.nix @@ -19,11 +19,11 @@ stdenv.mkDerivation rec { pname = "osinfo-db-tools"; - version = "1.10.0"; + version = "1.11.0"; src = fetchurl { url = "https://releases.pagure.org/libosinfo/${pname}-${version}.tar.xz"; - sha256 = "sha256-gCzdU7QWcG6lhE8Ebdz7ZYwbSQa5+UDHmserxQmBymg="; + sha256 = "sha256-i6bTG7XvBwVuOIeeBwZxr7z+wOtBqH+ZUEULu4MbCh0="; }; nativeBuildInputs = [ diff --git a/pkgs/tools/misc/vrc-get/Cargo.lock b/pkgs/tools/misc/vrc-get/Cargo.lock new file mode 100644 index 000000000000..4eafab4798a1 --- /dev/null +++ b/pkgs/tools/misc/vrc-get/Cargo.lock @@ -0,0 +1,1746 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 3 + +[[package]] +name = "addr2line" +version = "0.20.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f4fa78e18c64fce05e902adecd7a5eed15a5e0a3439f7b0e169f0252214865e3" +dependencies = [ + "gimli", +] + +[[package]] +name = "adler" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" + +[[package]] +name = "aho-corasick" +version = "0.7.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc936419f96fa211c1b9166887b38e5e40b19958e5b895be7c1f93adec7071ac" +dependencies = [ + "memchr", +] + +[[package]] +name = "anstream" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1f58811cfac344940f1a400b6e6231ce35171f614f26439e80f8c1465c5cc0c" +dependencies = [ + "anstyle", + "anstyle-parse", + "anstyle-query", + "anstyle-wincon", + "colorchoice", + "utf8parse", +] + +[[package]] +name = "anstyle" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41ed9a86bf92ae6580e0a31281f65a1b1d867c0cc68d5346e2ae128dddfa6a7d" + +[[package]] +name = "anstyle-parse" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e765fd216e48e067936442276d1d57399e37bce53c264d6fefbe298080cb57ee" +dependencies = [ + "utf8parse", +] + +[[package]] +name = "anstyle-query" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b" +dependencies = [ + "windows-sys 0.48.0", +] + +[[package]] +name = "anstyle-wincon" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "58f54d10c6dfa51283a066ceab3ec1ab78d13fae00aa49243a45e4571fb79dfd" +dependencies = [ + "anstyle", + "windows-sys 0.48.0", +] + +[[package]] +name = "async-compression" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb42b2197bf15ccb092b62c74515dbd8b86d0effd934795f6687c93b6e679a2c" +dependencies = [ + "deflate64", + "flate2", + "futures-core", + "futures-io", + "memchr", + "pin-project-lite", +] + +[[package]] +name = "async_zip" +version = "0.0.15" +source = "git+https://github.com/Majored/rs-async-zip.git?rev=a58024e#a58024eee84d3d50e105de79bd6210f832667984" +dependencies = [ + "async-compression", + "crc32fast", + "futures-util", + "pin-project", + "thiserror", + "tokio", + "tokio-util", +] + +[[package]] +name = "autocfg" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" + +[[package]] +name = "backtrace" +version = "0.3.68" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4319208da049c43661739c5fade2ba182f09d1dc2299b32298d3a31692b17e12" +dependencies = [ + "addr2line", + "cc", + "cfg-if", + "libc", + "miniz_oxide 0.7.1", + "object", + "rustc-demangle", +] + +[[package]] +name = "base64" +version = "0.21.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4a4ddaa51a5bc52a6948f74c06d20aaaddb71924eab79b8c97a8c556e942d6a" + +[[package]] +name = "bitflags" +version = "1.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" + +[[package]] +name = "block-buffer" +version = "0.10.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "69cce20737498f97b993470a6e536b8523f0af7892a4f928cceb1ac5e52ebe7e" +dependencies = [ + "generic-array", +] + +[[package]] +name = "bumpalo" +version = "3.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0d261e256854913907f67ed06efbc3338dfe6179796deefc1ff763fc1aee5535" + +[[package]] +name = "bytes" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dfb24e866b15a1af2a1b663f10c6b6b8f397a84aadb828f12e5b289ec23a3a3c" + +[[package]] +name = "cc" +version = "1.0.78" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a20104e2335ce8a659d6dd92a51a767a0c062599c73b343fd152cb401e828c3d" + +[[package]] +name = "cfg-if" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" + +[[package]] +name = "clap" +version = "4.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "84ed82781cea27b43c9b106a979fe450a13a31aab0500595fb3fc06616de08e6" +dependencies = [ + "clap_builder", + "clap_derive", +] + +[[package]] +name = "clap_builder" +version = "4.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2bb9faaa7c2ef94b2743a21f5a29e6f0010dff4caa69ac8e9d6cf8b6fa74da08" +dependencies = [ + "anstream", + "anstyle", + "clap_lex", + "strsim", +] + +[[package]] +name = "clap_complete" +version = "4.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4110a1e6af615a9e6d0a36f805d5c99099f8bab9b8042f5bc1fa220a4a89e36f" +dependencies = [ + "clap", +] + +[[package]] +name = "clap_derive" +version = "4.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0862016ff20d69b84ef8247369fabf5c008a7417002411897d40ee1f4532b873" +dependencies = [ + "heck", + "proc-macro2", + "quote", + "syn 2.0.29", +] + +[[package]] +name = "clap_lex" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2da6da31387c7e4ef160ffab6d5e7f00c42626fe39aea70a7b0f1773f7dd6c1b" + +[[package]] +name = "colorchoice" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7" + +[[package]] +name = "core-foundation" +version = "0.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "core-foundation-sys" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc" + +[[package]] +name = "cpufeatures" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "28d997bd5e24a5928dd43e46dc529867e207907fe0b239c3477d924f7f2ca320" +dependencies = [ + "libc", +] + +[[package]] +name = "crc32fast" +version = "1.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "crypto-common" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" +dependencies = [ + "generic-array", + "typenum", +] + +[[package]] +name = "deflate64" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "30dc5bb425a582de72bb57130320aac133893ea85f6151f79bd9aa9067114f60" + +[[package]] +name = "digest" +version = "0.10.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" +dependencies = [ + "block-buffer", + "crypto-common", +] + +[[package]] +name = "either" +version = "1.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "90e5c1c8368803113bf0c9584fc495a58b86dc8a29edbf8fe877d21d9507e797" + +[[package]] +name = "encoding_rs" +version = "0.8.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9852635589dc9f9ea1b6fe9f05b50ef208c85c834a562f0c6abb1c475736ec2b" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "env_logger" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85cdab6a89accf66733ad5a1693a4dcced6aeff64602b634530dd73c1f3ee9f0" +dependencies = [ + "humantime", + "is-terminal", + "log", + "regex", + "termcolor", +] + +[[package]] +name = "equivalent" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "88bffebc5d80432c9b140ee17875ff173a8ab62faad5b257da912bd2f6c1c0a1" + +[[package]] +name = "errno" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "50d6a0976c999d473fe89ad888d5a284e55366d9dc9038b1ba2aa15128c4afa0" +dependencies = [ + "errno-dragonfly", + "libc", + "windows-sys 0.45.0", +] + +[[package]] +name = "errno-dragonfly" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf" +dependencies = [ + "cc", + "libc", +] + +[[package]] +name = "fastrand" +version = "1.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a7a407cfaa3385c4ae6b23e84623d48c2798d06e3e6a1878f7f59f17b3f86499" +dependencies = [ + "instant", +] + +[[package]] +name = "flate2" +version = "1.0.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8a2db397cb1c8772f31494cb8917e48cd1e64f0fa7efac59fbd741a0a8ce841" +dependencies = [ + "crc32fast", + "miniz_oxide 0.6.2", +] + +[[package]] +name = "fnv" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" + +[[package]] +name = "foreign-types" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" +dependencies = [ + "foreign-types-shared", +] + +[[package]] +name = "foreign-types-shared" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" + +[[package]] +name = "form_urlencoded" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a9c384f161156f5260c24a097c56119f9be8c798586aecc13afbcbe7b7e26bf8" +dependencies = [ + "percent-encoding", +] + +[[package]] +name = "futures" +version = "0.3.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23342abe12aba583913b2e62f22225ff9c950774065e4bfb61a19cd9770fec40" +dependencies = [ + "futures-channel", + "futures-core", + "futures-executor", + "futures-io", + "futures-sink", + "futures-task", + "futures-util", +] + +[[package]] +name = "futures-channel" +version = "0.3.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "955518d47e09b25bbebc7a18df10b81f0c766eaf4c4f1cccef2fca5f2a4fb5f2" +dependencies = [ + "futures-core", + "futures-sink", +] + +[[package]] +name = "futures-core" +version = "0.3.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4bca583b7e26f571124fe5b7561d49cb2868d79116cfa0eefce955557c6fee8c" + +[[package]] +name = "futures-executor" +version = "0.3.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ccecee823288125bd88b4d7f565c9e58e41858e47ab72e8ea2d64e93624386e0" +dependencies = [ + "futures-core", + "futures-task", + "futures-util", +] + +[[package]] +name = "futures-io" +version = "0.3.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4fff74096e71ed47f8e023204cfd0aa1289cd54ae5430a9523be060cdb849964" + +[[package]] +name = "futures-macro" +version = "0.3.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.29", +] + +[[package]] +name = "futures-sink" +version = "0.3.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f43be4fe21a13b9781a69afa4985b0f6ee0e1afab2c6f454a8cf30e2b2237b6e" + +[[package]] +name = "futures-task" +version = "0.3.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76d3d132be6c0e6aa1534069c705a74a5997a356c0dc2f86a47765e5617c5b65" + +[[package]] +name = "futures-util" +version = "0.3.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26b01e40b772d54cf6c6d721c1d1abd0647a0106a12ecaa1c186273392a69533" +dependencies = [ + "futures-channel", + "futures-core", + "futures-io", + "futures-macro", + "futures-sink", + "futures-task", + "memchr", + "pin-project-lite", + "pin-utils", + "slab", +] + +[[package]] +name = "generic-array" +version = "0.14.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bff49e947297f3312447abdca79f45f4738097cc82b06e72054d2223f601f1b9" +dependencies = [ + "typenum", + "version_check", +] + +[[package]] +name = "getrandom" +version = "0.2.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c05aeb6a22b8f62540c194aac980f2115af067bfe15a0734d7277a768d396b31" +dependencies = [ + "cfg-if", + "libc", + "wasi", +] + +[[package]] +name = "gimli" +version = "0.27.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6c80984affa11d98d1b88b66ac8853f143217b399d3c74116778ff8fdb4ed2e" + +[[package]] +name = "h2" +version = "0.3.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "66b91535aa35fea1523ad1b86cb6b53c28e0ae566ba4a460f4457e936cad7c6f" +dependencies = [ + "bytes", + "fnv", + "futures-core", + "futures-sink", + "futures-util", + "http", + "indexmap 1.9.3", + "slab", + "tokio", + "tokio-util", + "tracing", +] + +[[package]] +name = "hashbrown" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" + +[[package]] +name = "hashbrown" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2c6201b9ff9fd90a5a3bac2e56a830d0caa509576f0e503818ee82c181b3437a" + +[[package]] +name = "heck" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2540771e65fc8cb83cd6e8a237f70c319bd5c29f78ed1084ba5d50eeac86f7f9" + +[[package]] +name = "hermit-abi" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee512640fe35acbfb4bb779db6f0d80704c2cacfa2e39b601ef3e3f47d1ae4c7" +dependencies = [ + "libc", +] + +[[package]] +name = "hermit-abi" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fed44880c466736ef9a5c5b5facefb5ed0785676d0c02d612db14e54f0d84286" + +[[package]] +name = "http" +version = "0.2.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75f43d41e26995c17e71ee126451dd3941010b0514a81a9d11f3b341debc2399" +dependencies = [ + "bytes", + "fnv", + "itoa", +] + +[[package]] +name = "http-body" +version = "0.4.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1" +dependencies = [ + "bytes", + "http", + "pin-project-lite", +] + +[[package]] +name = "httparse" +version = "1.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904" + +[[package]] +name = "httpdate" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c4a1e36c821dbe04574f602848a19f742f4fb3c98d40449f11bcad18d6b17421" + +[[package]] +name = "humantime" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" + +[[package]] +name = "hyper" +version = "0.14.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "034711faac9d2166cb1baf1a2fb0b60b1f277f8492fd72176c17f3515e1abd3c" +dependencies = [ + "bytes", + "futures-channel", + "futures-core", + "futures-util", + "h2", + "http", + "http-body", + "httparse", + "httpdate", + "itoa", + "pin-project-lite", + "socket2 0.4.9", + "tokio", + "tower-service", + "tracing", + "want", +] + +[[package]] +name = "hyper-tls" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905" +dependencies = [ + "bytes", + "hyper", + "native-tls", + "tokio", + "tokio-native-tls", +] + +[[package]] +name = "idna" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e14ddfc70884202db2244c223200c204c2bda1bc6e0998d11b5e024d657209e6" +dependencies = [ + "unicode-bidi", + "unicode-normalization", +] + +[[package]] +name = "indexmap" +version = "1.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" +dependencies = [ + "autocfg", + "hashbrown 0.12.3", +] + +[[package]] +name = "indexmap" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d5477fe2230a79769d8dc68e0eabf5437907c0457a5614a9e8dddb67f65eb65d" +dependencies = [ + "equivalent", + "hashbrown 0.14.0", + "serde", +] + +[[package]] +name = "instant" +version = "0.1.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "io-lifetimes" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7d6c6f8c91b4b9ed43484ad1a938e393caf35960fce7f82a040497207bd8e9e" +dependencies = [ + "libc", + "windows-sys 0.42.0", +] + +[[package]] +name = "ipnet" +version = "2.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "30e22bd8629359895450b59ea7a776c850561b96a3b1d31321c1949d9e6c9146" + +[[package]] +name = "is-terminal" +version = "0.4.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "adcf93614601c8129ddf72e2d5633df827ba6551541c6d8c59520a371475be1f" +dependencies = [ + "hermit-abi 0.3.1", + "io-lifetimes", + "rustix", + "windows-sys 0.48.0", +] + +[[package]] +name = "itertools" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57" +dependencies = [ + "either", +] + +[[package]] +name = "itoa" +version = "1.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fad582f4b9e86b6caa621cabeb0963332d92eea04729ab12892c2533951e6440" + +[[package]] +name = "js-sys" +version = "0.3.60" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49409df3e3bf0856b916e2ceaca09ee28e6871cf7d9ce97a692cacfdb2a25a47" +dependencies = [ + "wasm-bindgen", +] + +[[package]] +name = "lazy_static" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" + +[[package]] +name = "libc" +version = "0.2.147" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3" + +[[package]] +name = "linux-raw-sys" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d59d8c75012853d2e872fb56bc8a2e53718e2cafe1a4c823143141c6d90c322f" + +[[package]] +name = "log" +version = "0.4.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" + +[[package]] +name = "memchr" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d" + +[[package]] +name = "mime" +version = "0.3.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2a60c7ce501c71e03a9c9c0d35b861413ae925bd979cc7a4e30d060069aaac8d" + +[[package]] +name = "miniz_oxide" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b275950c28b37e794e8c55d88aeb5e139d0ce23fdbbeda68f8d7174abdf9e8fa" +dependencies = [ + "adler", +] + +[[package]] +name = "miniz_oxide" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7" +dependencies = [ + "adler", +] + +[[package]] +name = "mio" +version = "0.8.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "927a765cd3fc26206e66b296465fa9d3e5ab003e651c1b3c060e7956d96b19d2" +dependencies = [ + "libc", + "wasi", + "windows-sys 0.48.0", +] + +[[package]] +name = "native-tls" +version = "0.2.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e" +dependencies = [ + "lazy_static", + "libc", + "log", + "openssl", + "openssl-probe", + "openssl-sys", + "schannel", + "security-framework", + "security-framework-sys", + "tempfile", +] + +[[package]] +name = "num_cpus" +version = "1.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fac9e2da13b5eb447a6ce3d392f23a29d8694bff781bf03a16cd9ac8697593b" +dependencies = [ + "hermit-abi 0.2.6", + "libc", +] + +[[package]] +name = "object" +version = "0.31.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8bda667d9f2b5051b8833f59f3bf748b28ef54f850f4fcb389a252aa383866d1" +dependencies = [ + "memchr", +] + +[[package]] +name = "once_cell" +version = "1.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6f61fba1741ea2b3d6a1e3178721804bb716a68a6aeba1149b5d52e3d464ea66" + +[[package]] +name = "openssl" +version = "0.10.55" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "345df152bc43501c5eb9e4654ff05f794effb78d4efe3d53abc158baddc0703d" +dependencies = [ + "bitflags", + "cfg-if", + "foreign-types", + "libc", + "once_cell", + "openssl-macros", + "openssl-sys", +] + +[[package]] +name = "openssl-macros" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b501e44f11665960c7e7fcf062c7d96a14ade4aa98116c004b2e37b5be7d736c" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.107", +] + +[[package]] +name = "openssl-probe" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" + +[[package]] +name = "openssl-src" +version = "111.25.0+1.1.1t" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3173cd3626c43e3854b1b727422a276e568d9ec5fe8cec197822cf52cfb743d6" +dependencies = [ + "cc", +] + +[[package]] +name = "openssl-sys" +version = "0.9.90" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "374533b0e45f3a7ced10fcaeccca020e66656bc03dac384f852e4e5a7a8104a6" +dependencies = [ + "cc", + "libc", + "openssl-src", + "pkg-config", + "vcpkg", +] + +[[package]] +name = "percent-encoding" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "478c572c3d73181ff3c2539045f6eb99e5491218eae919370993b890cdbdd98e" + +[[package]] +name = "pin-project" +version = "1.0.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ad29a609b6bcd67fee905812e544992d216af9d755757c05ed2d0e15a74c6ecc" +dependencies = [ + "pin-project-internal", +] + +[[package]] +name = "pin-project-internal" +version = "1.0.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "069bdb1e05adc7a8990dce9cc75370895fbe4e3d58b9b73bf1aee56359344a55" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.107", +] + +[[package]] +name = "pin-project-lite" +version = "0.2.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58" + +[[package]] +name = "pin-utils" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" + +[[package]] +name = "pkg-config" +version = "0.3.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ac9a59f73473f1b8d852421e59e64809f025994837ef743615c6d0c5b305160" + +[[package]] +name = "proc-macro2" +version = "1.0.63" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b368fba921b0dce7e60f5e04ec15e565b3303972b42bcfde1d0713b881959eb" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "quote" +version = "1.0.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "573015e8ab27661678357f27dc26460738fd2b6c86e46f386fde94cb5d913105" +dependencies = [ + "proc-macro2", +] + +[[package]] +name = "redox_syscall" +version = "0.2.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a" +dependencies = [ + "bitflags", +] + +[[package]] +name = "regex" +version = "1.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "48aaa5748ba571fb95cd2c85c09f629215d3a6ece942baa100950af03a34f733" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax", +] + +[[package]] +name = "regex-syntax" +version = "0.6.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "456c603be3e8d448b072f410900c09faf164fbce2d480456f50eea6e25f9c848" + +[[package]] +name = "remove_dir_all" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7" +dependencies = [ + "winapi", +] + +[[package]] +name = "reqwest" +version = "0.11.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3e9ad3fe7488d7e34558a2033d45a0c90b72d97b4f80705666fea71472e2e6a1" +dependencies = [ + "base64", + "bytes", + "encoding_rs", + "futures-core", + "futures-util", + "h2", + "http", + "http-body", + "hyper", + "hyper-tls", + "ipnet", + "js-sys", + "log", + "mime", + "native-tls", + "once_cell", + "percent-encoding", + "pin-project-lite", + "serde", + "serde_json", + "serde_urlencoded", + "tokio", + "tokio-native-tls", + "tokio-util", + "tower-service", + "url", + "wasm-bindgen", + "wasm-bindgen-futures", + "wasm-streams", + "web-sys", + "winreg", +] + +[[package]] +name = "rustc-demangle" +version = "0.1.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" + +[[package]] +name = "rustix" +version = "0.37.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62b24138615de35e32031d041a09032ef3487a616d901ca4db224e7d557efae2" +dependencies = [ + "bitflags", + "errno", + "io-lifetimes", + "libc", + "linux-raw-sys", + "windows-sys 0.45.0", +] + +[[package]] +name = "ryu" +version = "1.0.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b4b9743ed687d4b4bcedf9ff5eaa7398495ae14e61cba0a295704edbc7decde" + +[[package]] +name = "schannel" +version = "0.1.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "713cfb06c7059f3588fb8044c0fad1d09e3c01d225e25b9220dbfdcf16dbb1b3" +dependencies = [ + "windows-sys 0.42.0", +] + +[[package]] +name = "security-framework" +version = "2.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "645926f31b250a2dca3c232496c2d898d91036e45ca0e97e0e2390c54e11be36" +dependencies = [ + "bitflags", + "core-foundation", + "core-foundation-sys", + "libc", + "security-framework-sys", +] + +[[package]] +name = "security-framework-sys" +version = "2.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "31c9bb296072e961fcbd8853511dd39c2d8be2deb1e17c6860b1d30732b323b4" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "semver" +version = "1.0.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b0293b4b29daaf487284529cc2f5675b8e57c61f70167ba415a463651fd6a918" +dependencies = [ + "serde", +] + +[[package]] +name = "serde" +version = "1.0.188" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf9e0fcba69a370eed61bcf2b728575f726b50b55cba78064753d708ddc7549e" +dependencies = [ + "serde_derive", +] + +[[package]] +name = "serde_derive" +version = "1.0.188" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4eca7ac642d82aa35b60049a6eccb4be6be75e599bd2e9adb5f875a737654af2" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.29", +] + +[[package]] +name = "serde_json" +version = "1.0.107" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6b420ce6e3d8bd882e9b243c6eed35dbc9a6110c9769e74b584e0d68d1f20c65" +dependencies = [ + "indexmap 2.0.0", + "itoa", + "ryu", + "serde", +] + +[[package]] +name = "serde_urlencoded" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" +dependencies = [ + "form_urlencoded", + "itoa", + "ryu", + "serde", +] + +[[package]] +name = "sha2" +version = "0.10.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "479fb9d862239e610720565ca91403019f2f00410f1864c5aa7479b950a76ed8" +dependencies = [ + "cfg-if", + "cpufeatures", + "digest", +] + +[[package]] +name = "slab" +version = "0.4.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4614a76b2a8be0058caa9dbbaf66d988527d86d003c11a94fbd335d7661edcef" +dependencies = [ + "autocfg", +] + +[[package]] +name = "socket2" +version = "0.4.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "64a4a911eed85daf18834cfaa86a79b7d266ff93ff5ba14005426219480ed662" +dependencies = [ + "libc", + "winapi", +] + +[[package]] +name = "socket2" +version = "0.5.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4031e820eb552adee9295814c0ced9e5cf38ddf1e8b7d566d6de8e2538ea989e" +dependencies = [ + "libc", + "windows-sys 0.48.0", +] + +[[package]] +name = "strsim" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" + +[[package]] +name = "syn" +version = "1.0.107" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f4064b5b16e03ae50984a5a8ed5d4f8803e6bc1fd170a3cda91a1be4b18e3f5" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "syn" +version = "2.0.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c324c494eba9d92503e6f1ef2e6df781e78f6a7705a0202d9801b198807d518a" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "tempfile" +version = "3.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5cdb1ef4eaeeaddc8fbd371e5017057064af0911902ef36b39801f67cc6d79e4" +dependencies = [ + "cfg-if", + "fastrand", + "libc", + "redox_syscall", + "remove_dir_all", + "winapi", +] + +[[package]] +name = "termcolor" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "be55cf8942feac5c765c2c993422806843c9a9a45d4d5c407ad6dd2ea95eb9b6" +dependencies = [ + "winapi-util", +] + +[[package]] +name = "thiserror" +version = "1.0.38" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a9cd18aa97d5c45c6603caea1da6628790b37f7a34b6ca89522331c5180fed0" +dependencies = [ + "thiserror-impl", +] + +[[package]] +name = "thiserror-impl" +version = "1.0.38" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fb327af4685e4d03fa8cbcf1716380da910eeb2bb8be417e7f9fd3fb164f36f" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.107", +] + +[[package]] +name = "tinyvec" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50" +dependencies = [ + "tinyvec_macros", +] + +[[package]] +name = "tinyvec_macros" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c" + +[[package]] +name = "tokio" +version = "1.32.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "17ed6077ed6cd6c74735e21f37eb16dc3935f96878b1fe961074089cc80893f9" +dependencies = [ + "backtrace", + "bytes", + "libc", + "mio", + "num_cpus", + "pin-project-lite", + "socket2 0.5.4", + "tokio-macros", + "windows-sys 0.48.0", +] + +[[package]] +name = "tokio-macros" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.29", +] + +[[package]] +name = "tokio-native-tls" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f7d995660bd2b7f8c1568414c1126076c13fbb725c40112dc0120b78eb9b717b" +dependencies = [ + "native-tls", + "tokio", +] + +[[package]] +name = "tokio-util" +version = "0.7.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "806fe8c2c87eccc8b3267cbae29ed3ab2d0bd37fca70ab622e46aaa9375ddb7d" +dependencies = [ + "bytes", + "futures-core", + "futures-io", + "futures-sink", + "pin-project-lite", + "tokio", + "tracing", +] + +[[package]] +name = "tower-service" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52" + +[[package]] +name = "tracing" +version = "0.1.37" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8" +dependencies = [ + "cfg-if", + "pin-project-lite", + "tracing-core", +] + +[[package]] +name = "tracing-core" +version = "0.1.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "24eb03ba0eab1fd845050058ce5e616558e8f8d8fca633e6b163fe25c797213a" +dependencies = [ + "once_cell", +] + +[[package]] +name = "try-lock" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3528ecfd12c466c6f163363caf2d02a71161dd5e1cc6ae7b34207ea2d42d81ed" + +[[package]] +name = "typenum" +version = "1.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba" + +[[package]] +name = "unicode-bidi" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0046be40136ef78dc325e0edefccf84ccddacd0afcc1ca54103fa3c61bbdab1d" + +[[package]] +name = "unicode-ident" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "84a22b9f218b40614adcb3f4ff08b703773ad44fa9423e4e0d346d5db86e4ebc" + +[[package]] +name = "unicode-normalization" +version = "0.1.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921" +dependencies = [ + "tinyvec", +] + +[[package]] +name = "url" +version = "2.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0d68c799ae75762b8c3fe375feb6600ef5602c883c5d21eb51c09f22b83c4643" +dependencies = [ + "form_urlencoded", + "idna", + "percent-encoding", +] + +[[package]] +name = "utf8parse" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a" + +[[package]] +name = "uuid" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "79daa5ed5740825c40b389c5e50312b9c86df53fccd33f281df655642b43869d" +dependencies = [ + "getrandom", +] + +[[package]] +name = "vcpkg" +version = "0.2.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" + +[[package]] +name = "version_check" +version = "0.9.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" + +[[package]] +name = "vrc-get" +version = "1.3.0" +dependencies = [ + "async_zip", + "clap", + "clap_complete", + "env_logger", + "futures", + "indexmap 2.0.0", + "itertools", + "log", + "pin-project-lite", + "reqwest", + "semver", + "serde", + "serde_json", + "sha2", + "tokio", + "tokio-util", + "uuid", + "windows", +] + +[[package]] +name = "want" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1ce8a968cb1cd110d136ff8b819a556d6fb6d919363c61534f6860c7eb172ba0" +dependencies = [ + "log", + "try-lock", +] + +[[package]] +name = "wasi" +version = "0.11.0+wasi-snapshot-preview1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" + +[[package]] +name = "wasm-bindgen" +version = "0.2.83" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eaf9f5aceeec8be17c128b2e93e031fb8a4d469bb9c4ae2d7dc1888b26887268" +dependencies = [ + "cfg-if", + "wasm-bindgen-macro", +] + +[[package]] +name = "wasm-bindgen-backend" +version = "0.2.83" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c8ffb332579b0557b52d268b91feab8df3615f265d5270fec2a8c95b17c1142" +dependencies = [ + "bumpalo", + "log", + "once_cell", + "proc-macro2", + "quote", + "syn 1.0.107", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-futures" +version = "0.4.33" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23639446165ca5a5de86ae1d8896b737ae80319560fbaa4c2887b7da6e7ebd7d" +dependencies = [ + "cfg-if", + "js-sys", + "wasm-bindgen", + "web-sys", +] + +[[package]] +name = "wasm-bindgen-macro" +version = "0.2.83" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "052be0f94026e6cbc75cdefc9bae13fd6052cdcaf532fa6c45e7ae33a1e6c810" +dependencies = [ + "quote", + "wasm-bindgen-macro-support", +] + +[[package]] +name = "wasm-bindgen-macro-support" +version = "0.2.83" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "07bc0c051dc5f23e307b13285f9d75df86bfdf816c5721e573dec1f9b8aa193c" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.107", + "wasm-bindgen-backend", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-shared" +version = "0.2.83" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1c38c045535d93ec4f0b4defec448e4291638ee608530863b1e2ba115d4fff7f" + +[[package]] +name = "wasm-streams" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4609d447824375f43e1ffbc051b50ad8f4b3ae8219680c94452ea05eb240ac7" +dependencies = [ + "futures-util", + "js-sys", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", +] + +[[package]] +name = "web-sys" +version = "0.3.60" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bcda906d8be16e728fd5adc5b729afad4e444e106ab28cd1c7256e54fa61510f" +dependencies = [ + "js-sys", + "wasm-bindgen", +] + +[[package]] +name = "winapi" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" +dependencies = [ + "winapi-i686-pc-windows-gnu", + "winapi-x86_64-pc-windows-gnu", +] + +[[package]] +name = "winapi-i686-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" + +[[package]] +name = "winapi-util" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178" +dependencies = [ + "winapi", +] + +[[package]] +name = "winapi-x86_64-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" + +[[package]] +name = "windows" +version = "0.51.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca229916c5ee38c2f2bc1e9d8f04df975b4bd93f9955dc69fabb5d91270045c9" +dependencies = [ + "windows-core", + "windows-targets 0.48.5", +] + +[[package]] +name = "windows-core" +version = "0.51.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1f8cf84f35d2db49a46868f947758c7a1138116f7fac3bc844f43ade1292e64" +dependencies = [ + "windows-targets 0.48.5", +] + +[[package]] +name = "windows-sys" +version = "0.42.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7" +dependencies = [ + "windows_aarch64_gnullvm 0.42.2", + "windows_aarch64_msvc 0.42.2", + "windows_i686_gnu 0.42.2", + "windows_i686_msvc 0.42.2", + "windows_x86_64_gnu 0.42.2", + "windows_x86_64_gnullvm 0.42.2", + "windows_x86_64_msvc 0.42.2", +] + +[[package]] +name = "windows-sys" +version = "0.45.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" +dependencies = [ + "windows-targets 0.42.2", +] + +[[package]] +name = "windows-sys" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" +dependencies = [ + "windows-targets 0.48.5", +] + +[[package]] +name = "windows-targets" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" +dependencies = [ + "windows_aarch64_gnullvm 0.42.2", + "windows_aarch64_msvc 0.42.2", + "windows_i686_gnu 0.42.2", + "windows_i686_msvc 0.42.2", + "windows_x86_64_gnu 0.42.2", + "windows_x86_64_gnullvm 0.42.2", + "windows_x86_64_msvc 0.42.2", +] + +[[package]] +name = "windows-targets" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" +dependencies = [ + "windows_aarch64_gnullvm 0.48.5", + "windows_aarch64_msvc 0.48.5", + "windows_i686_gnu 0.48.5", + "windows_i686_msvc 0.48.5", + "windows_x86_64_gnu 0.48.5", + "windows_x86_64_gnullvm 0.48.5", + "windows_x86_64_msvc 0.48.5", +] + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" + +[[package]] +name = "windows_i686_gnu" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" + +[[package]] +name = "windows_i686_gnu" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" + +[[package]] +name = "windows_i686_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" + +[[package]] +name = "windows_i686_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" + +[[package]] +name = "winreg" +version = "0.50.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1" +dependencies = [ + "cfg-if", + "windows-sys 0.48.0", +] diff --git a/pkgs/tools/misc/vrc-get/default.nix b/pkgs/tools/misc/vrc-get/default.nix index 6026f9d6f734..e6ea0c595e68 100644 --- a/pkgs/tools/misc/vrc-get/default.nix +++ b/pkgs/tools/misc/vrc-get/default.nix @@ -2,14 +2,13 @@ rustPlatform.buildRustPackage rec { pname = "vrc-get"; - version = "1.1.3"; + version = "1.3.0"; src = fetchFromGitHub { owner = "anatawa12"; repo = pname; rev = "v${version}"; - hash = "sha256-CJBwW2QsLNLyNubawBPD+Cy74JrrdSUHe7JBSdbMnjY="; - fetchSubmodules = true; + hash = "sha256-FCLIc5c+50qGpBEbJ4bUSNAfQVdpeswNwiWrVcO91zI="; }; nativeBuildInputs = [ pkg-config ]; @@ -19,7 +18,12 @@ rustPlatform.buildRustPackage rec { # Make openssl-sys use pkg-config. OPENSSL_NO_VENDOR = 1; - cargoHash = "sha256-PnNo+MmBo/Ke7pL6KwRKXz3gycJmbYefTRMWOvlCQaQ="; + cargoLock = { + lockFile = ./Cargo.lock; + outputHashes = { + "async_zip-0.0.15" = "sha256-UXBVZy3nf20MUh9jQdYeS5ygrZfeRWtiNRtiyMvkdSs="; + }; + }; meta = with lib; { description = "Command line client of VRChat Package Manager, the main feature of VRChat Creator Companion (VCC)"; diff --git a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/html.py b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/html.py index ffe64cde4d34..b9227814dea2 100644 --- a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/html.py +++ b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/html.py @@ -97,8 +97,8 @@ class HTMLRenderer(Renderer): def strong_close(self, token: Token, tokens: Sequence[Token], i: int) -> str: return "" def fence(self, token: Token, tokens: Sequence[Token], i: int) -> str: - # TODO use token.info. docbook doesn't so we can't yet. - return f'
\n{escape(token.content)}
' + info = f" {escape(token.info, True)}" if token.info != "" else "" + return f'
{escape(token.content)}
' def blockquote_open(self, token: Token, tokens: Sequence[Token], i: int) -> str: return '
' def blockquote_close(self, token: Token, tokens: Sequence[Token], i: int) -> str: diff --git a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/options.py b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/options.py index d0229e074c54..9a00da567fa9 100644 --- a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/options.py +++ b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/options.py @@ -496,8 +496,8 @@ class OptionsHTMLRenderer(OptionDocsRestrictions, HTMLRenderer): token.meta['compact'] = False return super().bullet_list_open(token, tokens, i) def fence(self, token: Token, tokens: Sequence[Token], i: int) -> str: - # TODO use token.info. docbook doesn't so we can't yet. - return f'
{html.escape(token.content)}
' + info = f" {html.escape(token.info, True)}" if token.info != "" else "" + return f'
{html.escape(token.content)}
' class HTMLConverter(BaseConverter[OptionsHTMLRenderer]): __option_block_separator__ = "" diff --git a/pkgs/tools/nix/nixos-render-docs/src/tests/test_html.py b/pkgs/tools/nix/nixos-render-docs/src/tests/test_html.py index 96cf8d0b7dff..fba0ce2679a4 100644 --- a/pkgs/tools/nix/nixos-render-docs/src/tests/test_html.py +++ b/pkgs/tools/nix/nixos-render-docs/src/tests/test_html.py @@ -204,8 +204,10 @@ def test_full() -> None:

with nesting

-
↵
-             nested code block↵
+            
+             
+              nested code block↵
+             
             
@@ -213,8 +215,10 @@ def test_full() -> None:
  • and lists

  • -
    ↵
    -              containing code↵
    +             
    +              
    +               containing code↵
    +              
                  
@@ -240,11 +244,15 @@ def test_full() -> None:

-
↵
-            code block↵
+           
+            
+             code block↵
+            
            
-
↵
-            fenced block↵
+           
+            
+             fenced block↵
+            
            

text

diff --git a/pkgs/tools/security/clevis/default.nix b/pkgs/tools/security/clevis/default.nix index 0498f0599052..fa1be45a5b99 100644 --- a/pkgs/tools/security/clevis/default.nix +++ b/pkgs/tools/security/clevis/default.nix @@ -16,6 +16,7 @@ , ninja , pkg-config , tpm2-tools +, nixosTests }: stdenv.mkDerivation rec { @@ -29,6 +30,12 @@ stdenv.mkDerivation rec { hash = "sha256-3J3ti/jRiv+p3eVvJD7u0ko28rPd8Gte0mCJaVaqyOs="; }; + patches = [ + # Replaces the clevis-decrypt 300s timeout to a 10s timeout + # https://github.com/latchset/clevis/issues/289 + ./tang-timeout.patch + ]; + postPatch = '' for f in $(find src/ -type f); do grep -q "/bin/cat" "$f" && substituteInPlace "$f" \ @@ -65,6 +72,14 @@ stdenv.mkDerivation rec { "man" ]; + passthru.tests = { + inherit (nixosTests.installer) clevisBcachefs clevisBcachefsFallback clevisLuks clevisLuksFallback clevisZfs clevisZfsFallback; + clevisLuksSystemdStage1 = nixosTests.installer-systemd-stage-1.clevisLuks; + clevisLuksFallbackSystemdStage1 = nixosTests.installer-systemd-stage-1.clevisLuksFallback; + clevisZfsSystemdStage1 = nixosTests.installer-systemd-stage-1.clevisZfs; + clevisZfsFallbackSystemdStage1 = nixosTests.installer-systemd-stage-1.clevisZfsFallback; + }; + meta = with lib; { description = "Automated Encryption Framework"; homepage = "https://github.com/latchset/clevis"; diff --git a/pkgs/tools/security/clevis/tang-timeout.patch b/pkgs/tools/security/clevis/tang-timeout.patch new file mode 100644 index 000000000000..454541d5e77c --- /dev/null +++ b/pkgs/tools/security/clevis/tang-timeout.patch @@ -0,0 +1,13 @@ +diff --git a/src/pins/tang/clevis-decrypt-tang b/src/pins/tang/clevis-decrypt-tang +index 72393b4..40b660f 100755 +--- a/src/pins/tang/clevis-decrypt-tang ++++ b/src/pins/tang/clevis-decrypt-tang +@@ -101,7 +101,7 @@ xfr="$(jose jwk exc -i '{"alg":"ECMR"}' -l- -r- <<< "$clt$eph")" + + rec_url="$url/rec/$kid" + ct="Content-Type: application/jwk+json" +-if ! rep="$(curl -sfg -X POST -H "$ct" --data-binary @- "$rec_url" <<< "$xfr")"; then ++if ! rep="$(curl --connect-timeout 10 -sfg -X POST -H "$ct" --data-binary @- "$rec_url" <<< "$xfr")"; then + echo "Error communicating with server $url" >&2 + exit 1 + fi diff --git a/pkgs/tools/security/gopass/default.nix b/pkgs/tools/security/gopass/default.nix index 10efc22d4a1b..6573c511474a 100644 --- a/pkgs/tools/security/gopass/default.nix +++ b/pkgs/tools/security/gopass/default.nix @@ -13,7 +13,7 @@ buildGoModule rec { pname = "gopass"; - version = "1.15.10"; + version = "1.15.11"; nativeBuildInputs = [ installShellFiles makeWrapper ]; @@ -21,10 +21,10 @@ buildGoModule rec { owner = "gopasspw"; repo = "gopass"; rev = "v${version}"; - hash = "sha256-6s4rg2+oC+RB2gE4FQIY2MPmFSh+RxiZxaIuMI/T8hE="; + hash = "sha256-wgrZkRRMEWA9Lk9eW+iGi+dZNYfDVhRu1phimZC079c="; }; - vendorHash = "sha256-tbZpNraGVC+p6O1MOh4vPmcwUgW5ykg7rGTNOWKFk0M="; + vendorHash = "sha256-TvohrwSFVv5ylVRd6jPdRDyRRhqqWa0xey9KN9vtyY8="; subPackages = [ "." ]; diff --git a/pkgs/tools/security/gopass/git-credential.nix b/pkgs/tools/security/gopass/git-credential.nix index 038cdaf84167..8654d05d9d13 100644 --- a/pkgs/tools/security/gopass/git-credential.nix +++ b/pkgs/tools/security/gopass/git-credential.nix @@ -7,16 +7,16 @@ buildGoModule rec { pname = "git-credential-gopass"; - version = "1.15.10"; + version = "1.15.11"; src = fetchFromGitHub { owner = "gopasspw"; repo = "git-credential-gopass"; rev = "v${version}"; - hash = "sha256-DQPjnCwpFOKN0ObPXPbwy7GK1VsPSj+pcLKjfSPPPRo="; + hash = "sha256-qnWgrpcj3DZQu5haP/5xqoO7eogkRjBmc8XpgFFNT6I="; }; - vendorHash = "sha256-gvnBlf0JfdrHSHTF+OQxBHFER5F910mruzCa/prvIYA="; + vendorHash = "sha256-bit4+YgQ+Y/TA2q7KdZwYTE3ZKBwL6tUam+tHzBMiQw="; subPackages = [ "." ]; diff --git a/pkgs/tools/security/gopass/hibp.nix b/pkgs/tools/security/gopass/hibp.nix index 79a72bf891f8..11ee0a94dbf9 100644 --- a/pkgs/tools/security/gopass/hibp.nix +++ b/pkgs/tools/security/gopass/hibp.nix @@ -7,16 +7,16 @@ buildGoModule rec { pname = "gopass-hibp"; - version = "1.15.10"; + version = "1.15.11"; src = fetchFromGitHub { owner = "gopasspw"; repo = "gopass-hibp"; rev = "v${version}"; - hash = "sha256-v3FtWBi5H9LiFN/mowufonABr+aV3Z8MWBKiIUoy0NE="; + hash = "sha256-2XhvUIa8RxQ6CAKPGpL8/rBiJSX/WsSGtIpaHLIBM1E="; }; - vendorHash = "sha256-c4kk1RrvB+c+8IfbIsLRvG7O3cy+u9l+pDZ52XX1AhI="; + vendorHash = "sha256-i9PUqircNf+jz5gcr3rVIR4tD9/bkV2h6LiDFhjiLaw="; subPackages = [ "." ]; diff --git a/pkgs/tools/security/gopass/jsonapi.nix b/pkgs/tools/security/gopass/jsonapi.nix index 21345240a647..37ac46356c3a 100644 --- a/pkgs/tools/security/gopass/jsonapi.nix +++ b/pkgs/tools/security/gopass/jsonapi.nix @@ -8,16 +8,16 @@ buildGoModule rec { pname = "gopass-jsonapi"; - version = "1.15.10"; + version = "1.15.11"; src = fetchFromGitHub { owner = "gopasspw"; repo = "gopass-jsonapi"; rev = "v${version}"; - hash = "sha256-3E55MNS9QBLeae+Dc7NqbVMGie6NUKMBMGvkMqKeWoE="; + hash = "sha256-wJlnm+sgFg55LW4RWGjcT538DgNhJtFjwgwgqwLWH50="; }; - vendorHash = "sha256-sarNWeBi93oXL9v2EkP/z2+Bd4TyNy+z6576hOCf1/Q="; + vendorHash = "sha256-qRmPO2WM9RD43twl5a47IT3xC1LGFwNF99ojIU2xg6A="; subPackages = [ "." ]; diff --git a/pkgs/tools/security/gopass/summon.nix b/pkgs/tools/security/gopass/summon.nix index 48740f91954c..97aed94c05fe 100644 --- a/pkgs/tools/security/gopass/summon.nix +++ b/pkgs/tools/security/gopass/summon.nix @@ -7,16 +7,16 @@ buildGoModule rec { pname = "gopass-summon-provider"; - version = "1.15.10"; + version = "1.15.11"; src = fetchFromGitHub { owner = "gopasspw"; repo = "gopass-summon-provider"; rev = "v${version}"; - hash = "sha256-S4BPUl7KuRakHr2fvNobChfevFw1UAbAdpFUkwXcmxs="; + hash = "sha256-rbfzmr6HtGUBCjO9jkocSghTAN+aNXTsSsMC38HqgW0="; }; - vendorHash = "sha256-gvnBlf0JfdrHSHTF+OQxBHFER5F910mruzCa/prvIYA="; + vendorHash = "sha256-bit4+YgQ+Y/TA2q7KdZwYTE3ZKBwL6tUam+tHzBMiQw="; subPackages = [ "." ]; diff --git a/pkgs/tools/security/qdigidoc/default.nix b/pkgs/tools/security/qdigidoc/default.nix index 8a8fa4496c38..097ef5023974 100644 --- a/pkgs/tools/security/qdigidoc/default.nix +++ b/pkgs/tools/security/qdigidoc/default.nix @@ -2,6 +2,7 @@ , mkDerivation , fetchurl , cmake +, flatbuffers , gettext , pkg-config , libdigidocpp @@ -16,12 +17,12 @@ mkDerivation rec { pname = "qdigidoc"; - version = "4.2.12"; + version = "4.4.0"; src = fetchurl { url = "https://github.com/open-eid/DigiDoc4-Client/releases/download/v${version}/qdigidoc4-${version}.tar.gz"; - hash = "sha256-6bso1qvhVhbBfrcTq4S+aHtHli7X2A926N4r45ztq4E="; + hash = "sha256-5zo0yoY0wufm9DWRIccxJ5g4DXn75nT4fd2h+5QP4oQ="; }; tsl = fetchurl { @@ -37,6 +38,7 @@ mkDerivation rec { ''; buildInputs = [ + flatbuffers libdigidocpp opensc openldap diff --git a/pkgs/tools/security/sudo/default.nix b/pkgs/tools/security/sudo/default.nix index e286f7e7aee3..40056ec72eb8 100644 --- a/pkgs/tools/security/sudo/default.nix +++ b/pkgs/tools/security/sudo/default.nix @@ -71,9 +71,8 @@ stdenv.mkDerivation rec { passthru.tests = { inherit (nixosTests) sudo; }; - meta = { + meta = with lib; { description = "A command to run commands as root"; - longDescription = '' Sudo (su "do") allows a system administrator to delegate @@ -81,13 +80,10 @@ stdenv.mkDerivation rec { to run some (or all) commands as root or another user while providing an audit trail of the commands and their arguments. ''; - homepage = "https://www.sudo.ws/"; - - license = "https://www.sudo.ws/sudo/license.html"; - - maintainers = with lib.maintainers; [ delroth ]; - - platforms = lib.platforms.linux; + # From https://www.sudo.ws/about/license/ + license = with licenses; [ sudo bsd2 bsd3 zlib ]; + maintainers = with maintainers; [ delroth ]; + platforms = platforms.linux; }; } diff --git a/pkgs/tools/video/go2rtc/default.nix b/pkgs/tools/video/go2rtc/default.nix index c6f8b66d1bcd..92b3f9ba2ac2 100644 --- a/pkgs/tools/video/go2rtc/default.nix +++ b/pkgs/tools/video/go2rtc/default.nix @@ -5,16 +5,16 @@ buildGoModule rec { pname = "go2rtc"; - version = "1.8.2"; + version = "1.8.4"; src = fetchFromGitHub { owner = "AlexxIT"; repo = "go2rtc"; rev = "refs/tags/v${version}"; - hash = "sha256-3cWhASwOgSovApNT/MUbhHhmp/o4k3ckgfcSFwJJqI8="; + hash = "sha256-knC8GWu8543QIvk2OKotTHB88qgSQpOI+58oHusgVKc="; }; - vendorHash = "sha256-SV4sMDgUv6Ci0aC7wsam7ftqMSpFwsMGkC9qLpR+O68="; + vendorHash = "sha256-+n0atALq5e2iEbEeJ1kefnKka7gTE0iFRSRnUCz4bh8="; buildFlagArrays = [ "-trimpath" diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 4c8ec48471a1..f1e58678e913 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1764,6 +1764,8 @@ with pkgs; davinci-resolve = callPackage ../applications/video/davinci-resolve { }; + davinci-resolve-studio = callPackage ../applications/video/davinci-resolve { studioVariant = true; }; + dolbybcsoftwaredecode = callPackage ../applications/audio/dolbybcsoftwaredecode { }; donkey = callPackage ../tools/security/donkey { }; @@ -2114,6 +2116,8 @@ with pkgs; vopono = callPackage ../tools/networking/vopono { }; + vprof = with python3Packages; toPythonApplication vprof; + vrc-get = callPackage ../tools/misc/vrc-get { inherit (darwin.apple_sdk.frameworks) Security; }; @@ -4778,8 +4782,6 @@ with pkgs; slurp = callPackage ../tools/wayland/slurp { }; - sov = callPackage ../tools/wayland/sov { }; - swaykbdd = callPackage ../tools/wayland/swaykbdd { }; swayr = callPackage ../tools/wayland/swayr { }; @@ -6857,8 +6859,9 @@ with pkgs; inherit (callPackage ../applications/networking/remote/citrix-workspace { }) citrix_workspace_23_02_0 citrix_workspace_23_07_0 + citrix_workspace_23_09_0 ; - citrix_workspace = citrix_workspace_23_07_0; + citrix_workspace = citrix_workspace_23_09_0; clima = callPackage ../tools/text/clima { }; @@ -17949,6 +17952,7 @@ with pkgs; rakudo = callPackage ../development/interpreters/rakudo { }; moarvm = callPackage ../development/interpreters/rakudo/moarvm.nix { + inherit (darwin) cctools-port; inherit (darwin.apple_sdk.frameworks) CoreServices ApplicationServices; }; nqp = callPackage ../development/interpreters/rakudo/nqp.nix { }; @@ -18287,8 +18291,6 @@ with pkgs; karma-runner = callPackage ../development/tools/karma-runner { }; - phpunit = callPackage ../development/tools/misc/phpunit { }; - teller = callPackage ../development/tools/teller { }; yakut = python3Packages.callPackage ../development/tools/misc/yakut { }; @@ -19156,7 +19158,9 @@ with pkgs; fprettify = callPackage ../development/tools/fprettify { }; - framac = callPackage ../development/tools/analysis/frama-c { }; + framac = callPackage ../development/tools/analysis/frama-c { + why3 = pkgs.why3.override { version = "1.6.0"; }; + }; frame = callPackage ../development/libraries/frame { }; @@ -22058,7 +22062,7 @@ with pkgs; hwloc = callPackage ../development/libraries/hwloc { }; - hydra_unstable = callPackage ../development/tools/misc/hydra/unstable.nix { nix = nixVersions.nix_2_17; }; + hydra_unstable = callPackage ../development/tools/misc/hydra/unstable.nix { nix = nixVersions.nix_2_18; }; hydra-cli = callPackage ../development/tools/misc/hydra-cli { }; @@ -29229,8 +29233,6 @@ with pkgs; documize-community = callPackage ../servers/documize-community { }; - doge = callPackage ../misc/doge { }; - doulos-sil = callPackage ../data/fonts/doulos-sil { }; cabin = callPackage ../data/fonts/cabin { }; @@ -30194,6 +30196,8 @@ with pkgs; victor-mono = callPackage ../data/fonts/victor-mono { }; + vimix-cursor-theme = callPackage ../data/icons/vimix-cursor-theme { }; + vimix-gtk-themes = callPackage ../data/themes/vimix { inherit (gnome) gnome-shell; }; @@ -31007,8 +31011,6 @@ with pkgs; cosmic-settings = callPackage ../applications/window-managers/cosmic/settings { }; - cosmic-edit = callPackage ../applications/editors/cosmic-edit { }; - coursera-dl = callPackage ../applications/misc/coursera-dl { }; coyim = callPackage ../applications/networking/instant-messengers/coyim { }; @@ -34379,8 +34381,6 @@ with pkgs; nomacs = libsForQt5.callPackage ../applications/graphics/nomacs { }; - normcap = callPackage ../applications/graphics/normcap { }; - notepad-next = libsForQt5.callPackage ../applications/editors/notepad-next { }; notepadqq = libsForQt5.callPackage ../applications/editors/notepadqq { }; diff --git a/pkgs/top-level/python-aliases.nix b/pkgs/top-level/python-aliases.nix index ccac3710dcd9..39ba30a93b7d 100644 --- a/pkgs/top-level/python-aliases.nix +++ b/pkgs/top-level/python-aliases.nix @@ -467,11 +467,13 @@ mapAliases ({ zc_buildout_nix = throw "zc_buildout_nix was pinned to a version no longer compatible with other modules"; zope_broken = throw "zope_broken has been removed because it is obsolete and not needed in zodb>=3.10"; # added 2023-07-26 zope_component = zope-component; # added 2023-07-28 + zope_configuration = zope-configuration; # added 2023-11-12 zope_contenttype = zope-contenttype; # added 2023-10-11 zope_deprecation = zope-deprecation; # added 2023-10-07 zope_dottedname = zope-dottedname; # added 2023-11-12 zope_i18nmessageid = zope-i18nmessageid; # added 2023-07-29 zope_lifecycleevent = zope-lifecycleevent; # added 2023-10-11 zope_proxy = zope-proxy; # added 2023-10-07 + zope_testing = zope-testing; # added 2023-11-12 zxing_cpp = zxing-cpp; # added 2023-11-05 }) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 4f319267cecf..7c037664c4ac 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -7210,6 +7210,10 @@ self: super: with self; { mutf8 = callPackage ../development/python-modules/mutf8 { }; + mujoco = callPackage ../development/python-modules/mujoco { + inherit (pkgs) mujoco; + }; + mujson = callPackage ../development/python-modules/mujson { }; mwcli = callPackage ../development/python-modules/mwcli { }; @@ -15585,6 +15589,8 @@ self: super: with self; { vpk = callPackage ../development/python-modules/vpk { }; + vprof = callPackage ../development/python-modules/vprof { }; + vqgan-jax = callPackage ../development/python-modules/vqgan-jax { }; vsts = callPackage ../development/python-modules/vsts { }; @@ -16187,7 +16193,7 @@ self: super: with self; { zope-component = callPackage ../development/python-modules/zope-component { }; - zope_configuration = callPackage ../development/python-modules/zope_configuration { }; + zope-configuration = callPackage ../development/python-modules/zope-configuration { }; zope-contenttype = callPackage ../development/python-modules/zope-contenttype { }; @@ -16223,7 +16229,7 @@ self: super: with self; { zope-testbrowser = callPackage ../development/python-modules/zope-testbrowser { }; - zope_testing = callPackage ../development/python-modules/zope_testing { }; + zope-testing = callPackage ../development/python-modules/zope-testing { }; zope_testrunner = callPackage ../development/python-modules/zope_testrunner { }; diff --git a/pkgs/top-level/qt5-packages.nix b/pkgs/top-level/qt5-packages.nix index b1fb263e0bb8..3cd06387bf9d 100644 --- a/pkgs/top-level/qt5-packages.nix +++ b/pkgs/top-level/qt5-packages.nix @@ -246,6 +246,8 @@ in (noExtraAttrs (kdeFrameworks // plasmaMobileGear // plasma5 // plasma5.thirdP qxlsx = callPackage ../development/libraries/qxlsx { }; + qzxing = callPackage ../development/libraries/qzxing { }; + soqt = callPackage ../development/libraries/soqt { }; telepathy = callPackage ../development/libraries/telepathy/qt { }; diff --git a/pkgs/top-level/qt6-packages.nix b/pkgs/top-level/qt6-packages.nix index 1cd1b731c469..1b6e1ce4c1c7 100644 --- a/pkgs/top-level/qt6-packages.nix +++ b/pkgs/top-level/qt6-packages.nix @@ -50,6 +50,8 @@ makeScopeWithSplicing' { qxlsx = callPackage ../development/libraries/qxlsx { }; + qzxing = callPackage ../development/libraries/qzxing { }; + poppler = callPackage ../development/libraries/poppler { lcms = pkgs.lcms2; qt6Support = true;