diff options
186 files changed, 4032 insertions, 1756 deletions
diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 8adb04ecbf5a0..30df10e80de3c 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -152,6 +152,7 @@ nixos/modules/installer/tools/nix-fallback-paths.nix @raitobezarius # C compilers /pkgs/development/compilers/gcc +/pkgs/development/compilers/llvm @RossComputerGuy /pkgs/development/compilers/emscripten @raitobezarius /doc/languages-frameworks/emscripten.section.md @raitobezarius @@ -363,3 +364,16 @@ pkgs/by-name/lx/lxc* @adamcstephens pkgs/by-name/lx/lxd* @adamcstephens pkgs/os-specific/linux/lxc/ @adamcstephens +# ExpidusOS, Flutter +/pkgs/development/compilers/flutter @RossComputerGuy +/pkgs/desktops/expidus @RossComputerGuy + +# GNU Tar & Zip +/pkgs/tools/archivers/gnutar @RossComputerGuy +/pkgs/tools/archivers/zip @RossComputerGuy + +# SELinux +/pkgs/os-specific/linux/checkpolicy @RossComputerGuy +/pkgs/os-specific/linux/libselinux @RossComputerGuy +/pkgs/os-specific/linux/libsepol @RossComputerGuy + diff --git a/lib/attrsets.nix b/lib/attrsets.nix index 83f8d0f34186e..c0ac6eeb41bcf 100644 --- a/lib/attrsets.nix +++ b/lib/attrsets.nix @@ -11,7 +11,7 @@ let in rec { - inherit (builtins) attrNames listToAttrs hasAttr isAttrs getAttr removeAttrs; + inherit (builtins) attrNames listToAttrs hasAttr isAttrs getAttr removeAttrs intersectAttrs; /** diff --git a/lib/default.nix b/lib/default.nix index d5d47defb8e64..1fb4ce7a61096 100644 --- a/lib/default.nix +++ b/lib/default.nix @@ -87,8 +87,8 @@ let recursiveUpdate matchAttrs mergeAttrsList overrideExisting showAttrPath getOutput getBin getLib getDev getMan chooseDevOutputs zipWithNames zip recurseIntoAttrs dontRecurseIntoAttrs cartesianProduct cartesianProductOfSets - mapCartesianProduct updateManyAttrsByPath; - inherit (self.lists) singleton forEach foldr fold foldl foldl' imap0 imap1 + mapCartesianProduct updateManyAttrsByPath intersectAttrs removeAttrs; + inherit (self.lists) singleton forEach map foldr fold foldl foldl' imap0 imap1 ifilter0 concatMap flatten remove findSingle findFirst any all count optional optionals toList range replicate partition zipListsWith zipLists reverseList listDfs toposort sort sortOn naturalSort compareLists take @@ -105,7 +105,7 @@ let escapeRegex escapeURL escapeXML replaceChars lowerChars upperChars toLower toUpper addContextFrom splitString removePrefix removeSuffix versionOlder versionAtLeast - getName getVersion + getName getVersion match split cmakeOptionType cmakeBool cmakeFeature mesonOption mesonBool mesonEnable nameFromURL enableFeature enableFeatureAs withFeature diff --git a/lib/licenses.nix b/lib/licenses.nix index 4455171e7a4fb..64d9825ab198f 100644 --- a/lib/licenses.nix +++ b/lib/licenses.nix @@ -1278,11 +1278,21 @@ in mkLicense lset) ({ fullName = "xinetd License"; }; + xskat = { + spdxId = "XSkat"; + fullName = "XSkat License"; + }; + zlib = { spdxId = "Zlib"; fullName = "zlib License"; }; + zsh = { + url = "https://github.com/zsh-users/zsh/blob/master/LICENCE"; + fulllName = "Zsh License"; + }; + zpl20 = { spdxId = "ZPL-2.0"; fullName = "Zope Public License 2.0"; @@ -1293,10 +1303,6 @@ in mkLicense lset) ({ fullName = "Zope Public License 2.1"; }; - xskat = { - spdxId = "XSkat"; - fullName = "XSkat License"; - }; } // { # TODO: remove legacy aliases apsl10 = { diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 407a59b6e6854..6f3bcff13251d 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -4260,6 +4260,12 @@ github = "d4ilyrun"; githubId = 34611103; }; + d4rkstar = { + name = "Bruno Salzano"; + email = "d4rkstar@gmail.com"; + github = "d4rkstar"; + githubId = 4957015; + }; dadada = { name = "dadada"; email = "dadada@dadada.li"; @@ -6806,6 +6812,14 @@ matrix = "@frogamic:beeper.com"; keys = [ { fingerprint = "779A 7CA8 D51C C53A 9C51 43F7 AAE0 70F0 67EC 00A5"; } ]; }; + frontear = { + name = "Ali Rizvi"; + email = "perm-iterate-0b@icloud.com"; + matrix = "@frontear:matrix.org"; + github = "Frontear"; + githubId = 31909298; + keys = [ { fingerprint = "C170 11B7 C0AA BB3F 7415 022C BCB5 CEFD E222 82F5"; } ]; + }; frontsideair = { email = "photonia@gmail.com"; github = "frontsideair"; @@ -13629,6 +13643,12 @@ githubId = 3856390; email = "mschwaig+nixpkgs@eml.cc"; }; + msciabarra = { + email = "msciabarra@apache.org"; + github = "sciabarracom"; + githubId = 30654959; + name = "Michele Sciabarra"; + }; msiedlarek = { email = "mikolaj@siedlarek.pl"; github = "msiedlarek"; diff --git a/maintainers/scripts/pluginupdate.py b/maintainers/scripts/pluginupdate.py index 8ae86e2e93a49..ce4f55ae1e3cd 100644 --- a/maintainers/scripts/pluginupdate.py +++ b/maintainers/scripts/pluginupdate.py @@ -788,7 +788,10 @@ def update_plugins(editor: Editor, args): fetch_config = FetchConfig(args.proc, args.github_token) update = editor.get_update(args.input_file, args.outfile, fetch_config) + start_time = time.time() redirects = update() + duration = time.time() - start_time + print(f"The plugin update took {duration}s.") editor.rewrite_input(fetch_config, args.input_file, editor.deprecated, redirects) autocommit = not args.no_commit diff --git a/nixos/doc/manual/configuration/gpu-accel.chapter.md b/nixos/doc/manual/configuration/gpu-accel.chapter.md index 3b98bdd97c681..8afa2807b7b60 100644 --- a/nixos/doc/manual/configuration/gpu-accel.chapter.md +++ b/nixos/doc/manual/configuration/gpu-accel.chapter.md @@ -30,7 +30,7 @@ $ export \ ``` The second mechanism is to add the OpenCL driver package to -[](#opt-hardware.opengl.extraPackages). +[](#opt-hardware.graphics.extraPackages). This links the ICD file under `/run/opengl-driver`, where it will be visible to the ICD loader. @@ -51,12 +51,12 @@ Platform Vendor Advanced Micro Devices, Inc. Modern AMD [Graphics Core Next](https://en.wikipedia.org/wiki/Graphics_Core_Next) (GCN) GPUs are supported through the rocmPackages.clr.icd package. Adding this package to -[](#opt-hardware.opengl.extraPackages) +[](#opt-hardware.graphics.extraPackages) enables OpenCL support: ```nix { - hardware.opengl.extraPackages = [ + hardware.graphics.extraPackages = [ rocmPackages.clr.icd ]; } @@ -71,13 +71,13 @@ intel-compute-runtime package. The proprietary Intel OpenCL runtime, in the intel-ocl package, is an alternative for Gen7 GPUs. The intel-compute-runtime or intel-ocl package can be added to -[](#opt-hardware.opengl.extraPackages) +[](#opt-hardware.graphics.extraPackages) to enable OpenCL support. For example, for Gen8 and later GPUs, the following configuration can be used: ```nix { - hardware.opengl.extraPackages = [ + hardware.graphics.extraPackages = [ intel-compute-runtime ]; } @@ -90,8 +90,8 @@ compute API for GPUs. It is used directly by games or indirectly though compatibility layers like [DXVK](https://github.com/doitsujin/dxvk/wiki). -By default, if [](#opt-hardware.opengl.driSupport) -is enabled, mesa is installed and provides Vulkan for supported hardware. +By default, if [](#opt-hardware.graphics.enable) +is enabled, Mesa is installed and provides Vulkan for supported hardware. Similar to OpenCL, Vulkan drivers are loaded through the *Installable Client Driver* (ICD) mechanism. ICD files for Vulkan are JSON files that @@ -110,7 +110,7 @@ $ export \ ``` The second mechanism is to add the Vulkan driver package to -[](#opt-hardware.opengl.extraPackages). +[](#opt-hardware.graphics.extraPackages). This links the ICD file under `/run/opengl-driver`, where it will be visible to the ICD loader. @@ -140,18 +140,18 @@ Modern AMD [Graphics Core Next](https://en.wikipedia.org/wiki/Graphics_Core_Next) (GCN) GPUs are supported through either radv, which is part of mesa, or the amdvlk package. Adding the amdvlk package to -[](#opt-hardware.opengl.extraPackages) +[](#opt-hardware.graphics.extraPackages) makes amdvlk the default driver and hides radv and lavapipe from the device list. A specific driver can be forced as follows: ```nix { - hardware.opengl.extraPackages = [ + hardware.graphics.extraPackages = [ pkgs.amdvlk ]; # To enable Vulkan support for 32-bit applications, also add: - hardware.opengl.extraPackages32 = [ + hardware.graphics.extraPackages32 = [ pkgs.driversi686Linux.amdvlk ]; @@ -171,7 +171,7 @@ graphics hardware acceleration capabilities for video processing. VA-API drivers are loaded by `libva`. The version in nixpkgs is built to search the opengl driver path, so drivers can be installed in -[](#opt-hardware.opengl.extraPackages). +[](#opt-hardware.graphics.extraPackages). VA-API can be tested using: @@ -185,7 +185,7 @@ Modern Intel GPUs use the iHD driver, which can be installed with: ```nix { - hardware.opengl.extraPackages = [ + hardware.graphics.extraPackages = [ intel-media-driver ]; } @@ -195,7 +195,7 @@ Older Intel GPUs use the i965 driver, which can be installed with: ```nix { - hardware.opengl.extraPackages = [ + hardware.graphics.extraPackages = [ intel-vaapi-driver ]; } diff --git a/nixos/doc/manual/configuration/x-windows.chapter.md b/nixos/doc/manual/configuration/x-windows.chapter.md index 31752330dd9a8..362ae5d7e5df1 100644 --- a/nixos/doc/manual/configuration/x-windows.chapter.md +++ b/nixos/doc/manual/configuration/x-windows.chapter.md @@ -79,7 +79,7 @@ Wine, you should also set the following: ```nix { - hardware.opengl.driSupport32Bit = true; + hardware.graphics.enable32Bit = true; } ``` @@ -183,23 +183,6 @@ If you have an older card, you may have to use one of the legacy drivers: You may need to reboot after enabling this driver to prevent a clash with other kernel modules. -## Proprietary AMD drivers {#sec-x11--graphics-cards-amd} - -AMD provides a proprietary driver for its graphics cards that is not -enabled by default because it's not Free Software, is often broken in -nixpkgs and as of this writing doesn't offer more features or -performance. If you still want to use it anyway, you need to explicitly -set: - -```nix -{ - services.xserver.videoDrivers = [ "amdgpu-pro" ]; -} -``` - -You will need to reboot after enabling this driver to prevent a clash -with other kernel modules. - ## Touchpads {#sec-x11-touchpads} Support for Synaptics touchpads (found in many laptops such as the Dell diff --git a/nixos/doc/manual/release-notes/rl-2405.section.md b/nixos/doc/manual/release-notes/rl-2405.section.md index 8fa59863bf782..ed895586f2b0c 100644 --- a/nixos/doc/manual/release-notes/rl-2405.section.md +++ b/nixos/doc/manual/release-notes/rl-2405.section.md @@ -207,6 +207,8 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m - [xdg-terminal-exec](https://github.com/Vladimir-csp/xdg-terminal-exec), the proposed Default Terminal Execution Specification. +- Convenience options for `amdgpu`, open source driver for Radeon cards, is now available under `hardware.amdgpu`. + - [ydotool](https://github.com/ReimuNotMoe/ydotool), a generic command-line automation tool now has a module. Available as [programs.ydotool](#opt-programs.ydotool.enable). - [your_spotify](https://github.com/Yooooomi/your_spotify), a self hosted Spotify tracking dashboard. Available as [services.your_spotify](#opt-services.your_spotify.enable) diff --git a/nixos/doc/manual/release-notes/rl-2411.section.md b/nixos/doc/manual/release-notes/rl-2411.section.md index ab02e6888f8d8..57d8c59e612b3 100644 --- a/nixos/doc/manual/release-notes/rl-2411.section.md +++ b/nixos/doc/manual/release-notes/rl-2411.section.md @@ -4,6 +4,8 @@ ## Highlights {#sec-release-24.11-highlights} +- Convenience options for `amdgpu`, open source driver for Radeon cards, is now available under `hardware.amdgpu`. + - [AMDVLK](https://github.com/GPUOpen-Drivers/AMDVLK), AMD's open source Vulkan driver, is now available to be configured as `hardware.amdgpu.amdvlk` option. This also allows configuring runtime settings of AMDVLK and enabling experimental features. diff --git a/nixos/modules/config/swap.nix b/nixos/modules/config/swap.nix index a606ebd767598..53aea5d847129 100644 --- a/nixos/modules/config/swap.nix +++ b/nixos/modules/config/swap.nix @@ -275,7 +275,6 @@ in chattr +C "$DEVICE" 2>/dev/null || true dd if=/dev/zero of="$DEVICE" bs=1M count=${toString sw.size} - chmod 0600 ${sw.device} ${optionalString (!sw.randomEncryption.enable) "mkswap ${sw.realDevice}"} fi ''} @@ -292,9 +291,12 @@ in unitConfig.RequiresMountsFor = [ "${dirOf sw.device}" ]; unitConfig.DefaultDependencies = false; # needed to prevent a cycle - serviceConfig.Type = "oneshot"; - serviceConfig.RemainAfterExit = sw.randomEncryption.enable; - serviceConfig.ExecStop = optionalString sw.randomEncryption.enable "${pkgs.cryptsetup}/bin/cryptsetup luksClose ${sw.deviceName}"; + serviceConfig = { + Type = "oneshot"; + RemainAfterExit = sw.randomEncryption.enable; + UMask = "0177"; + ExecStop = optionalString sw.randomEncryption.enable "${pkgs.cryptsetup}/bin/cryptsetup luksClose ${sw.deviceName}"; + }; restartIfChanged = false; }; diff --git a/nixos/modules/hardware/graphics.nix b/nixos/modules/hardware/graphics.nix new file mode 100644 index 0000000000000..99c122f75c2a1 --- /dev/null +++ b/nixos/modules/hardware/graphics.nix @@ -0,0 +1,126 @@ +{ config, lib, pkgs, ... }: +let + cfg = config.hardware.graphics; + + driversEnv = pkgs.buildEnv { + name = "graphics-drivers"; + paths = [ cfg.package ] ++ cfg.extraPackages; + }; + + driversEnv32 = pkgs.buildEnv { + name = "graphics-drivers-32bit"; + paths = [ cfg.package32 ] ++ cfg.extraPackages32; + }; +in +{ + imports = [ + (lib.mkRenamedOptionModule [ "services" "xserver" "vaapiDrivers" ] [ "hardware" "opengl" "extraPackages" ]) + (lib.mkRemovedOptionModule [ "hardware" "opengl" "s3tcSupport" ] "S3TC support is now always enabled in Mesa.") + (lib.mkRemovedOptionModule [ "hardware" "opengl" "driSupport"] "The setting can be removed.") + + (lib.mkRenamedOptionModule [ "hardware" "opengl" "enable"] [ "hardware" "graphics" "enable" ]) + (lib.mkRenamedOptionModule [ "hardware" "opengl" "driSupport32Bit"] [ "hardware" "graphics" "enable32Bit" ]) + (lib.mkRenamedOptionModule [ "hardware" "opengl" "package"] [ "hardware" "graphics" "package" ]) + (lib.mkRenamedOptionModule [ "hardware" "opengl" "package32"] [ "hardware" "graphics" "package32" ]) + (lib.mkRenamedOptionModule [ "hardware" "opengl" "extraPackages"] [ "hardware" "graphics" "extraPackages" ]) + (lib.mkRenamedOptionModule [ "hardware" "opengl" "extraPackages32"] [ "hardware" "graphics" "extraPackages32" ]) + ]; + + options.hardware.graphics = { + enable = lib.mkOption { + description = '' + Whether to enable hardware accelerated graphics drivers. + + This is required to allow most graphical applications and + environments to use hardware rendering, video encode/decode + acceleration, etc. + + This option should be enabled by default by the corresponding modules, + so you do not usually have to set it yourself. + ''; + type = lib.types.bool; + default = false; + }; + + enable32Bit = lib.mkOption { + description = '' + On 64-bit systems, whether to also install 32-bit drivers for + 32-bit applications (such as Wine). + ''; + type = lib.types.bool; + default = false; + }; + + package = lib.mkOption { + description = '' + The package that provides the default driver set. + ''; + type = lib.types.package; + internal = true; + }; + + package32 = lib.mkOption { + description = '' + The package that provides the 32-bit driver set. Used when {option}`enable32Bit` is enabled. + set. + ''; + type = lib.types.package; + internal = true; + }; + + extraPackages = lib.mkOption { + description = '' + Additional packages to add to the default graphics driver lookup path. + This can be used to add OpenCL drivers, VA-API/VDPAU drivers, etc. + + ::: {.note} + intel-media-driver supports hardware Broadwell (2014) or newer. Older hardware should use the mostly unmaintained intel-vaapi-driver driver. + ::: + ''; + type = lib.types.listOf lib.types.package; + default = []; + example = lib.literalExpression "with pkgs; [ intel-media-driver intel-ocl intel-vaapi-driver ]"; + }; + + extraPackages32 = lib.mkOption { + description = '' + Additional packages to add to 32-bit graphics driver lookup path on 64-bit systems. + Used when {option}`enable32Bit` is set. This can be used to add OpenCL drivers, VA-API/VDPAU drivers, etc. + + ::: {.note} + intel-media-driver supports hardware Broadwell (2014) or newer. Older hardware should use the mostly unmaintained intel-vaapi-driver driver. + ::: + ''; + type = lib.types.listOf lib.types.package; + default = []; + example = lib.literalExpression "with pkgs.pkgsi686Linux; [ intel-media-driver intel-vaapi-driver ]"; + }; + }; + + config = lib.mkIf cfg.enable { + assertions = [ + { + assertion = cfg.enable32Bit -> pkgs.stdenv.isx86_64; + message = "`hardware.graphics.enable32Bit` only makes sense on a 64-bit system."; + } + { + assertion = cfg.enable32Bit -> (config.boot.kernelPackages.kernel.features.ia32Emulation or false); + message = "`hardware.graphics.enable32Bit` requires a kernel that supports 32-bit emulation"; + } + ]; + + systemd.tmpfiles.settings.graphics-driver = { + "/run/opengl-driver"."L+".argument = toString driversEnv; + "/run/opengl-driver-32" = + if pkgs.stdenv.isi686 then + { "L+".argument = "opengl-driver"; } + else if cfg.enable32Bit then + { "L+".argument = toString driversEnv32; } + else + { "r" = {}; }; + }; + + hardware.graphics.package = lib.mkDefault pkgs.mesa.drivers; + hardware.graphics.package32 = lib.mkDefault pkgs.pkgsi686Linux.mesa.drivers; + }; +} diff --git a/nixos/modules/hardware/opengl.nix b/nixos/modules/hardware/opengl.nix deleted file mode 100644 index 3ca9deec8961d..0000000000000 --- a/nixos/modules/hardware/opengl.nix +++ /dev/null @@ -1,158 +0,0 @@ -{ config, lib, pkgs, ... }: - -let - - cfg = config.hardware.opengl; - - kernelPackages = config.boot.kernelPackages; - - videoDrivers = config.services.xserver.videoDrivers; - - package = pkgs.buildEnv { - name = "opengl-drivers"; - paths = [ cfg.package ] ++ cfg.extraPackages; - }; - - package32 = pkgs.buildEnv { - name = "opengl-drivers-32bit"; - paths = [ cfg.package32 ] ++ cfg.extraPackages32; - }; - -in - -{ - - imports = [ - (lib.mkRenamedOptionModule [ "services" "xserver" "vaapiDrivers" ] [ "hardware" "opengl" "extraPackages" ]) - (lib.mkRemovedOptionModule [ "hardware" "opengl" "s3tcSupport" ] "S3TC support is now always enabled in Mesa.") - ]; - - options = { - - hardware.opengl = { - enable = lib.mkOption { - description = '' - Whether to enable OpenGL drivers. This is needed to enable - OpenGL support in X11 systems, as well as for Wayland compositors - like sway and Weston. It is enabled by default - by the corresponding modules, so you do not usually have to - set it yourself, only if there is no module for your wayland - compositor of choice. See services.xserver.enable and - programs.sway.enable. - ''; - type = lib.types.bool; - default = false; - }; - - driSupport = lib.mkOption { - type = lib.types.bool; - default = true; - description = '' - Whether to enable accelerated OpenGL rendering through the - Direct Rendering Interface (DRI). - ''; - }; - - driSupport32Bit = lib.mkOption { - type = lib.types.bool; - default = false; - description = '' - On 64-bit systems, whether to support Direct Rendering for - 32-bit applications (such as Wine). This is currently only - supported for the `nvidia` as well as - `Mesa`. - ''; - }; - - package = lib.mkOption { - type = lib.types.package; - internal = true; - description = '' - The package that provides the OpenGL implementation. - ''; - }; - - package32 = lib.mkOption { - type = lib.types.package; - internal = true; - description = '' - The package that provides the 32-bit OpenGL implementation on - 64-bit systems. Used when {option}`driSupport32Bit` is - set. - ''; - }; - - extraPackages = lib.mkOption { - type = lib.types.listOf lib.types.package; - default = []; - example = lib.literalExpression "with pkgs; [ intel-media-driver intel-ocl intel-vaapi-driver ]"; - description = '' - Additional packages to add to OpenGL drivers. - This can be used to add OpenCL drivers, VA-API/VDPAU drivers etc. - - ::: {.note} - intel-media-driver supports hardware Broadwell (2014) or newer. Older hardware should use the mostly unmaintained intel-vaapi-driver driver. - ::: - ''; - }; - - extraPackages32 =lib. mkOption { - type = lib.types.listOf lib.types.package; - default = []; - example = lib.literalExpression "with pkgs.pkgsi686Linux; [ intel-media-driver intel-vaapi-driver ]"; - description = '' - Additional packages to add to 32-bit OpenGL drivers on 64-bit systems. - Used when {option}`driSupport32Bit` is set. This can be used to add OpenCL drivers, VA-API/VDPAU drivers etc. - - ::: {.note} - intel-media-driver supports hardware Broadwell (2014) or newer. Older hardware should use the mostly unmaintained intel-vaapi-driver driver. - ::: - ''; - }; - - setLdLibraryPath = lib.mkOption { - type = lib.types.bool; - internal = true; - default = false; - description = '' - Whether the `LD_LIBRARY_PATH` environment variable - should be set to the locations of driver libraries. Drivers which - rely on overriding libraries should set this to true. Drivers which - support `libglvnd` and other dispatch libraries - instead of overriding libraries should not set this. - ''; - }; - }; - - }; - - config = lib.mkIf cfg.enable { - assertions = [ - { assertion = cfg.driSupport32Bit -> pkgs.stdenv.isx86_64; - message = "Option driSupport32Bit only makes sense on a 64-bit system."; - } - { assertion = cfg.driSupport32Bit -> (config.boot.kernelPackages.kernel.features.ia32Emulation or false); - message = "Option driSupport32Bit requires a kernel that supports 32bit emulation"; - } - ]; - - systemd.tmpfiles.settings.opengl = { - "/run/opengl-driver"."L+".argument = toString package; - "/run/opengl-driver-32" = - if pkgs.stdenv.isi686 then - { "L+".argument = "opengl-driver"; } - else if cfg.driSupport32Bit then - { "L+".argument = toString package32; } - else - { "r" = {}; }; - }; - - environment.sessionVariables.LD_LIBRARY_PATH = lib.mkIf cfg.setLdLibraryPath - ([ "/run/opengl-driver/lib" ] ++ lib.optional cfg.driSupport32Bit "/run/opengl-driver-32/lib"); - - hardware.opengl.package = lib.mkDefault pkgs.mesa.drivers; - hardware.opengl.package32 = lib.mkDefault pkgs.pkgsi686Linux.mesa.drivers; - - boot.extraModulePackages = lib.optional (lib.elem "virtualbox" videoDrivers) kernelPackages.virtualboxGuestAdditions; - }; -} diff --git a/nixos/modules/hardware/video/amdgpu-pro.nix b/nixos/modules/hardware/video/amdgpu-pro.nix deleted file mode 100644 index 2a86280eec8cb..0000000000000 --- a/nixos/modules/hardware/video/amdgpu-pro.nix +++ /dev/null @@ -1,69 +0,0 @@ -# This module provides the proprietary AMDGPU-PRO drivers. - -{ config, lib, pkgs, ... }: - -with lib; - -let - - drivers = config.services.xserver.videoDrivers; - - enabled = elem "amdgpu-pro" drivers; - - package = config.boot.kernelPackages.amdgpu-pro; - package32 = pkgs.pkgsi686Linux.linuxPackages.amdgpu-pro.override { kernel = null; }; - - opengl = config.hardware.opengl; - -in - -{ - - config = mkIf enabled { - services.xserver.drivers = singleton - { name = "amdgpu"; modules = [ package ]; display = true; }; - - hardware.opengl.package = package; - hardware.opengl.package32 = package32; - hardware.opengl.setLdLibraryPath = true; - - boot.extraModulePackages = [ package.kmod ]; - - boot.kernelPackages = pkgs.linuxKernel.packagesFor - (pkgs.linuxKernel.kernels.linux_5_10.override { - structuredExtraConfig = { - DEVICE_PRIVATE = kernel.yes; - KALLSYMS_ALL = kernel.yes; - }; - }); - - hardware.firmware = [ package.fw ]; - - systemd.tmpfiles.settings.amdgpu-pro = { - "/run/amdgpu"."L+".argument = "${package}/opt/amdgpu"; - "/run/amdgpu-pro"."L+".argument = "${package}/opt/amdgpu-pro"; - }; - - system.requiredKernelConfig = with config.lib.kernelConfig; [ - (isYes "DEVICE_PRIVATE") - (isYes "KALLSYMS_ALL") - ]; - - boot.initrd.extraUdevRulesCommands = mkIf (!config.boot.initrd.systemd.enable) '' - cp -v ${package}/etc/udev/rules.d/*.rules $out/ - ''; - boot.initrd.services.udev.packages = [ package ]; - - environment.systemPackages = - [ package.vulkan ] ++ - # this isn't really DRI, but we'll reuse this option for now - optional config.hardware.opengl.driSupport32Bit package32.vulkan; - - environment.etc = { - "modprobe.d/blacklist-radeon.conf".source = package + "/etc/modprobe.d/blacklist-radeon.conf"; - amd.source = package + "/etc/amd"; - }; - - }; - -} diff --git a/nixos/modules/hardware/video/nvidia.nix b/nixos/modules/hardware/video/nvidia.nix index ae5c2aa7a034a..0274dfcaa70f9 100644 --- a/nixos/modules/hardware/video/nvidia.nix +++ b/nixos/modules/hardware/video/nvidia.nix @@ -297,7 +297,7 @@ in KERNEL=="nvidia_uvm", RUN+="${pkgs.runtimeShell} -c 'mknod -m 666 /dev/nvidia-uvm c $$(grep nvidia-uvm /proc/devices | cut -d \ -f 1) 0'" KERNEL=="nvidia_uvm", RUN+="${pkgs.runtimeShell} -c 'mknod -m 666 /dev/nvidia-uvm-tools c $$(grep nvidia-uvm /proc/devices | cut -d \ -f 1) 1'" ''; - hardware.opengl = { + hardware.graphics = { extraPackages = [ nvidia_x11.out ]; extraPackages32 = [ nvidia_x11.lib32 ]; }; @@ -467,7 +467,7 @@ in "egl/egl_external_platform.d".source = "/run/opengl-driver/share/egl/egl_external_platform.d/"; }; - hardware.opengl = { + hardware.graphics = { extraPackages = [ pkgs.nvidia-vaapi-driver ]; extraPackages32 = [ pkgs.pkgsi686Linux.nvidia-vaapi-driver ]; }; diff --git a/nixos/modules/hardware/video/virtualbox.nix b/nixos/modules/hardware/video/virtualbox.nix new file mode 100644 index 0000000000000..31ed92b7d148e --- /dev/null +++ b/nixos/modules/hardware/video/virtualbox.nix @@ -0,0 +1,7 @@ +{ lib, config, ... }: +let + inherit (config.boot) kernelPackages; + inherit (config.services.xserver) videoDrivers; +in { + boot.extraModulePackages = lib.mkIf (lib.elem "virtualbox" videoDrivers) [ kernelPackages.virtualboxGuestAdditions ]; +} diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index a008c3c5bdeae..d412e414f68b5 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -67,6 +67,7 @@ ./hardware/gkraken.nix ./hardware/glasgow.nix ./hardware/gpgsmartcards.nix + ./hardware/graphics.nix ./hardware/hackrf.nix ./hardware/i2c.nix ./hardware/infiniband.nix @@ -84,7 +85,6 @@ ./hardware/new-lg4ff.nix ./hardware/nitrokey.nix ./hardware/onlykey/default.nix - ./hardware/opengl.nix ./hardware/openrazer.nix ./hardware/opentabletdriver.nix ./hardware/pcmcia.nix @@ -103,7 +103,6 @@ ./hardware/uni-sync.nix ./hardware/usb-modeswitch.nix ./hardware/usb-storage.nix - ./hardware/video/amdgpu-pro.nix ./hardware/video/bumblebee.nix ./hardware/video/capture/mwprocapture.nix ./hardware/video/displaylink.nix @@ -111,6 +110,7 @@ ./hardware/video/nvidia.nix ./hardware/video/switcheroo-control.nix ./hardware/video/uvcvideo/default.nix + ./hardware/video/virtualbox.nix ./hardware/video/webcam/facetimehd.nix ./hardware/video/webcam/ipu6.nix ./hardware/wooting.nix @@ -549,6 +549,7 @@ ./services/games/xonotic.nix ./services/hardware/acpid.nix ./services/hardware/actkbd.nix + ./services/hardware/amdgpu.nix ./services/hardware/amdvlk.nix ./services/hardware/argonone.nix ./services/hardware/asusd.nix diff --git a/nixos/modules/programs/miriway.nix b/nixos/modules/programs/miriway.nix index 00c1356ab0836..418bb3dc4f2dd 100644 --- a/nixos/modules/programs/miriway.nix +++ b/nixos/modules/programs/miriway.nix @@ -65,7 +65,7 @@ in { }; }; - hardware.opengl.enable = lib.mkDefault true; + hardware.graphics.enable = lib.mkDefault true; fonts.enableDefaultPackages = lib.mkDefault true; programs.dconf.enable = lib.mkDefault true; programs.xwayland.enable = lib.mkDefault true; diff --git a/nixos/modules/programs/steam.nix b/nixos/modules/programs/steam.nix index 5138588dbd3e5..2ee464dc22d37 100644 --- a/nixos/modules/programs/steam.nix +++ b/nixos/modules/programs/steam.nix @@ -50,7 +50,7 @@ in { }) // (prev.extraEnv or {}); extraLibraries = pkgs: let prevLibs = if prev ? extraLibraries then prev.extraLibraries pkgs else [ ]; - additionalLibs = with config.hardware.opengl; + additionalLibs = with config.hardware.graphics; if pkgs.stdenv.hostPlatform.is64bit then [ package ] ++ extraPackages else [ package32 ] ++ extraPackages32; @@ -176,10 +176,9 @@ in { }; config = lib.mkIf cfg.enable { - hardware.opengl = { # this fixes the "glXChooseVisual failed" bug, context: https://github.com/NixOS/nixpkgs/issues/47932 + hardware.graphics = { # this fixes the "glXChooseVisual failed" bug, context: https://github.com/NixOS/nixpkgs/issues/47932 enable = true; - driSupport = true; - driSupport32Bit = true; + enable32Bit = true; }; security.wrappers = lib.mkIf (cfg.gamescopeSession.enable && gamescopeCfg.capSysNice) { diff --git a/nixos/modules/programs/turbovnc.nix b/nixos/modules/programs/turbovnc.nix index c28b7f7d79910..c7ab18a2e2886 100644 --- a/nixos/modules/programs/turbovnc.nix +++ b/nixos/modules/programs/turbovnc.nix @@ -17,7 +17,7 @@ in Whether to set up NixOS such that TurboVNC's built-in software OpenGL implementation works. - This will enable {option}`hardware.opengl.enable` so that OpenGL + This will enable {option}`hardware.graphics.enable` so that OpenGL programs can find Mesa's llvmpipe drivers. Setting this option to `false` does not mean that software @@ -46,7 +46,7 @@ in # can find the llvmpipe `swrast.so` software rendering DRI lib via `libglvnd`. # This comment exists to explain why `hardware.` is involved, # even though 100% software rendering is used. - hardware.opengl.enable = true; + hardware.graphics.enable = true; }; } diff --git a/nixos/modules/programs/wayland/wayland-session.nix b/nixos/modules/programs/wayland/wayland-session.nix index 877b106684700..09fb2a5f14b2e 100644 --- a/nixos/modules/programs/wayland/wayland-session.nix +++ b/nixos/modules/programs/wayland/wayland-session.nix @@ -11,7 +11,7 @@ pam.services.swaylock = {}; }; - hardware.opengl.enable = lib.mkDefault true; + hardware.graphics.enable = lib.mkDefault true; fonts.enableDefaultPackages = lib.mkDefault true; programs = { diff --git a/nixos/modules/services/desktop-managers/lomiri.nix b/nixos/modules/services/desktop-managers/lomiri.nix index eec33597dc711..0b871aa38183e 100644 --- a/nixos/modules/services/desktop-managers/lomiri.nix +++ b/nixos/modules/services/desktop-managers/lomiri.nix @@ -63,7 +63,7 @@ in { ]; # Copy-pasted basic stuff - hardware.opengl.enable = lib.mkDefault true; + hardware.graphics.enable = lib.mkDefault true; fonts.enableDefaultPackages = lib.mkDefault true; programs.dconf.enable = lib.mkDefault true; diff --git a/nixos/modules/services/display-managers/default.nix b/nixos/modules/services/display-managers/default.nix index feba4b163ccd2..9a7bd6c84b15b 100644 --- a/nixos/modules/services/display-managers/default.nix +++ b/nixos/modules/services/display-managers/default.nix @@ -212,9 +212,7 @@ in after = [ "acpid.service" "systemd-logind.service" "systemd-user-sessions.service" ]; restartIfChanged = false; - environment = lib.optionalAttrs config.hardware.opengl.setLdLibraryPath { - LD_LIBRARY_PATH = lib.makeLibraryPath [ pkgs.addOpenGLRunpath.driverLink ]; - } // cfg.environment; + environment = cfg.environment; preStart = cfg.preStart; script = lib.mkIf (config.systemd.services.display-manager.enable == true) cfg.execCmd; diff --git a/nixos/modules/services/hardware/amdgpu.nix b/nixos/modules/services/hardware/amdgpu.nix new file mode 100644 index 0000000000000..24016fc646975 --- /dev/null +++ b/nixos/modules/services/hardware/amdgpu.nix @@ -0,0 +1,43 @@ +{ config, lib, pkgs, ... }: + +let + cfg = config.hardware.amdgpu; +in { + options.hardware.amdgpu = { + legacySupport.enable = lib.mkEnableOption '' + using `amdgpu` kernel driver instead of `radeon` for Southern Islands + (Radeon HD 7000) series and Sea Islands (Radeon HD 8000) + series cards. Note: this removes support for analog video outputs, + which is only available in the `radeon` driver + ''; + initrd.enable = lib.mkEnableOption '' + loading `amdgpu` kernelModule in stage 1. + Can fix lower resolution in boot screen during initramfs phase + ''; + opencl.enable = lib.mkEnableOption ''OpenCL support using ROCM runtime library''; + # cfg.amdvlk option is defined in ./amdvlk.nix module + }; + + config = { + boot.kernelParams = lib.optionals cfg.legacySupport.enable [ + "amdgpu.si_support=1" + "amdgpu.cik_support=1" + "radeon.si_support=0" + "radeon.cik_support=0" + ]; + + boot.initrd.kernelModules = lib.optionals cfg.initrd.enable [ "amdgpu" ]; + + hardware.opengl = lib.mkIf cfg.opencl.enable { + enable = lib.mkDefault true; + extraPackages = [ + pkgs.rocmPackages.clr + pkgs.rocmPackages.clr.icd + ]; + }; + }; + + meta = { + maintainers = with lib.maintainers; [ johnrtitor ]; + }; +} diff --git a/nixos/modules/services/hardware/amdvlk.nix b/nixos/modules/services/hardware/amdvlk.nix index 20879f2f21b43..32d6fb3be21dc 100644 --- a/nixos/modules/services/hardware/amdvlk.nix +++ b/nixos/modules/services/hardware/amdvlk.nix @@ -31,11 +31,9 @@ in { }; config = lib.mkIf cfg.enable { - hardware.opengl = { + hardware.graphics = { enable = true; - driSupport = true; extraPackages = [ cfg.package ]; - driSupport32Bit = cfg.support32Bit.enable; extraPackages32 = [ cfg.support32Bit.package ]; }; diff --git a/nixos/modules/services/matrix/synapse.nix b/nixos/modules/services/matrix/synapse.nix index bc88fb53012b7..6d2e6201d66d3 100644 --- a/nixos/modules/services/matrix/synapse.nix +++ b/nixos/modules/services/matrix/synapse.nix @@ -1121,7 +1121,7 @@ in { The client listener on matrix-synapse is configured to use UNIX domain sockets. This configuration is incompatible with the `register_new_matrix_user` script. - Disable `services.mastrix-synapse.enableRegistrationScript` to continue. + Disable `services.matrix-synapse.enableRegistrationScript` to continue. ''; } ] diff --git a/nixos/modules/services/misc/graphical-desktop.nix b/nixos/modules/services/misc/graphical-desktop.nix index a88c02e610bf4..c8fe0d921c6ad 100644 --- a/nixos/modules/services/misc/graphical-desktop.nix +++ b/nixos/modules/services/misc/graphical-desktop.nix @@ -38,7 +38,7 @@ in fonts.enableDefaultPackages = lib.mkDefault true; - hardware.opengl.enable = lib.mkDefault true; + hardware.graphics.enable = lib.mkDefault true; programs.gnupg.agent.pinentryPackage = lib.mkOverride 1100 pkgs.pinentry-gnome3; diff --git a/nixos/modules/services/network-filesystems/samba.nix b/nixos/modules/services/network-filesystems/samba.nix index 66ef3f14ed700..c70d0cf7beac3 100644 --- a/nixos/modules/services/network-filesystems/samba.nix +++ b/nixos/modules/services/network-filesystems/samba.nix @@ -201,14 +201,10 @@ in message = "If samba.nsswins is enabled, then samba.enableWinbindd must also be enabled"; } ]; - # Always provide a smb.conf to shut up programs like smbclient and smbspool. - environment.etc."samba/smb.conf".source = mkOptionDefault ( - if cfg.enable then configFile - else pkgs.writeText "smb-dummy.conf" "# Samba is disabled." - ); } (mkIf cfg.enable { + environment.etc."samba/smb.conf".source = configFile; system.nssModules = optional cfg.nsswins samba; system.nssDatabases.hosts = optional cfg.nsswins "wins"; diff --git a/nixos/modules/services/ttys/kmscon.nix b/nixos/modules/services/ttys/kmscon.nix index 74314e1e76e40..031c5bbb383e1 100644 --- a/nixos/modules/services/ttys/kmscon.nix +++ b/nixos/modules/services/ttys/kmscon.nix @@ -107,7 +107,7 @@ in { fonts = optional (cfg.fonts != null) "font-name=${lib.concatMapStringsSep ", " (f: f.name) cfg.fonts}"; in lib.concatStringsSep "\n" (render ++ fonts); - hardware.opengl.enable = mkIf cfg.hwRender true; + hardware.graphics.enable = mkIf cfg.hwRender true; fonts = mkIf (cfg.fonts != null) { fontconfig.enable = true; diff --git a/nixos/modules/services/wayland/cage.nix b/nixos/modules/services/wayland/cage.nix index 91949f197cfed..870ae58f8646e 100644 --- a/nixos/modules/services/wayland/cage.nix +++ b/nixos/modules/services/wayland/cage.nix @@ -101,7 +101,7 @@ in { session required ${config.systemd.package}/lib/security/pam_systemd.so ''; - hardware.opengl.enable = mkDefault true; + hardware.graphics.enable = mkDefault true; systemd.targets.graphical.wants = [ "cage-tty1.service" ]; diff --git a/nixos/modules/services/web-apps/mealie.nix b/nixos/modules/services/web-apps/mealie.nix index 0d41cffd3d9dd..2484b2489c0d0 100644 --- a/nixos/modules/services/web-apps/mealie.nix +++ b/nixos/modules/services/web-apps/mealie.nix @@ -59,7 +59,7 @@ in PRODUCTION = "true"; ALEMBIC_CONFIG_FILE="${pkg}/config/alembic.ini"; API_PORT = toString cfg.port; - BASE_URL = "http://localhost:${cfg.port}"; + BASE_URL = "http://localhost:${toString cfg.port}"; DATA_DIR = "/var/lib/mealie"; CRF_MODEL_PATH = "/var/lib/mealie/model.crfmodel"; } // (builtins.mapAttrs (_: val: toString val) cfg.settings); diff --git a/nixos/modules/services/x11/desktop-managers/phosh.nix b/nixos/modules/services/x11/desktop-managers/phosh.nix index e8494b2c017c9..12b39f927c012 100644 --- a/nixos/modules/services/x11/desktop-managers/phosh.nix +++ b/nixos/modules/services/x11/desktop-managers/phosh.nix @@ -216,7 +216,7 @@ in security.pam.services.phosh = {}; - hardware.opengl.enable = mkDefault true; + hardware.graphics.enable = mkDefault true; services.gnome.core-shell.enable = true; services.gnome.core-os-services.enable = true; diff --git a/nixos/modules/services/x11/xserver.nix b/nixos/modules/services/x11/xserver.nix index 5a86d055c2719..57e83399eded6 100644 --- a/nixos/modules/services/x11/xserver.nix +++ b/nixos/modules/services/x11/xserver.nix @@ -302,7 +302,7 @@ in default = [ "modesetting" "fbdev" ]; example = [ "nvidia" - "amdgpu-pro" + "amdgpu" ]; # TODO(@oxij): think how to easily add the rest, like those nvidia things relatedPackages = concatLists @@ -716,10 +716,7 @@ in restartIfChanged = false; - environment = - optionalAttrs config.hardware.opengl.setLdLibraryPath - { LD_LIBRARY_PATH = lib.makeLibraryPath [ pkgs.addOpenGLRunpath.driverLink ]; } - // config.services.displayManager.environment; + environment = config.services.displayManager.environment; preStart = '' diff --git a/nixos/modules/virtualisation/docker.nix b/nixos/modules/virtualisation/docker.nix index bcc649dcbec0a..8a0894ed85c3d 100644 --- a/nixos/modules/virtualisation/docker.nix +++ b/nixos/modules/virtualisation/docker.nix @@ -244,8 +244,8 @@ in }; assertions = [ - { assertion = cfg.enableNvidia && pkgs.stdenv.isx86_64 -> config.hardware.opengl.driSupport32Bit or false; - message = "Option enableNvidia on x86_64 requires 32bit support libraries"; + { assertion = cfg.enableNvidia && pkgs.stdenv.isx86_64 -> config.hardware.graphics.enable32Bit or false; + message = "Option enableNvidia on x86_64 requires 32-bit support libraries"; }]; virtualisation.docker.daemon.settings = { diff --git a/nixos/tests/armagetronad.nix b/nixos/tests/armagetronad.nix index d59827354b771..ca93ce8fb6c5d 100644 --- a/nixos/tests/armagetronad.nix +++ b/nixos/tests/armagetronad.nix @@ -12,7 +12,7 @@ let { pkgs, ... }: { imports = [ ./common/user-account.nix ./common/x11.nix ]; - hardware.opengl.driSupport = true; + hardware.graphics.enable = true; virtualisation.memorySize = 256; environment = { systemPackages = [ pkgs.armagetronad ]; diff --git a/nixos/tests/cagebreak.nix b/nixos/tests/cagebreak.nix index 1fef7cb57cfc5..4d7664c1505f3 100644 --- a/nixos/tests/cagebreak.nix +++ b/nixos/tests/cagebreak.nix @@ -14,9 +14,7 @@ in }; nodes.machine = { config, ... }: - let - alice = config.users.users.alice; - in { + { # Automatically login on tty1 as a normal user: imports = [ ./common/user-account.nix ]; services.getty.autologinUser = "alice"; @@ -31,7 +29,7 @@ in fi ''; - hardware.opengl.enable = true; + hardware.graphics.enable = true; programs.xwayland.enable = true; security.polkit.enable = true; environment.systemPackages = [ pkgs.cagebreak pkgs.wayland-utils ]; diff --git a/nixos/tests/monado.nix b/nixos/tests/monado.nix index 8368950951e73..6f0d27ee42454 100644 --- a/nixos/tests/monado.nix +++ b/nixos/tests/monado.nix @@ -5,7 +5,7 @@ import ./make-test-python.nix ({ pkgs, ... }: { { pkgs, ... }: { - hardware.opengl.enable = true; + hardware.graphics.enable = true; users.users.alice = { isNormalUser = true; uid = 1000; diff --git a/nixos/tests/openarena.nix b/nixos/tests/openarena.nix index 63dc1b9a68570..4dfe71a9a1e95 100644 --- a/nixos/tests/openarena.nix +++ b/nixos/tests/openarena.nix @@ -5,7 +5,7 @@ let { pkgs, ... }: { imports = [ ./common/x11.nix ]; - hardware.opengl.driSupport = true; + hardware.graphics.enable = true; environment.systemPackages = [ pkgs.openarena ]; }; diff --git a/nixos/tests/quake3.nix b/nixos/tests/quake3.nix index 4b7ca03b365b5..ff4025e56f4c4 100644 --- a/nixos/tests/quake3.nix +++ b/nixos/tests/quake3.nix @@ -21,7 +21,7 @@ let { pkgs, ... }: { imports = [ ./common/x11.nix ]; - hardware.opengl.driSupport = true; + hardware.graphics.enable = true; environment.systemPackages = [ pkgs.quake3demo ]; nixpkgs.config.packageOverrides = overrides; nixpkgs.config.allowUnfreePredicate = unfreePredicate; diff --git a/nixos/tests/seatd.nix b/nixos/tests/seatd.nix index 138a6cb1cf44c..9178492fdb0ef 100644 --- a/nixos/tests/seatd.nix +++ b/nixos/tests/seatd.nix @@ -39,7 +39,7 @@ in dwl -s 'foot touch /tmp/foot_started' ''; - hardware.opengl.enable = true; + hardware.graphics.enable = true; virtualisation.qemu.options = [ "-vga none -device virtio-gpu-pci" ]; services.seatd.enable = true; }; diff --git a/nixos/tests/tinywl.nix b/nixos/tests/tinywl.nix index 9199866b57af7..2dc354812a75e 100644 --- a/nixos/tests/tinywl.nix +++ b/nixos/tests/tinywl.nix @@ -16,7 +16,7 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: systemPackages = with pkgs; [ tinywl foot wayland-utils ]; }; - hardware.opengl.enable = true; + hardware.graphics.enable = true; # Automatically start TinyWL when logging in on tty1: programs.bash.loginShellInit = '' diff --git a/pkgs/applications/audio/exaile/default.nix b/pkgs/applications/audio/exaile/default.nix index 036bcc70ddd0e..4f49564898a9a 100644 --- a/pkgs/applications/audio/exaile/default.nix +++ b/pkgs/applications/audio/exaile/default.nix @@ -51,7 +51,7 @@ stdenv.mkDerivation rec { gst-plugins-ugly gst-libav ]) ++ (with python3.pkgs; [ - bsddb3 + berkeleydb dbus-python mutagen pygobject3 diff --git a/pkgs/applications/audio/giada/default.nix b/pkgs/applications/audio/giada/default.nix index 2693c31846d4e..2880bce40f8bc 100644 --- a/pkgs/applications/audio/giada/default.nix +++ b/pkgs/applications/audio/giada/default.nix @@ -21,15 +21,15 @@ , nlohmann_json }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "giada"; version = "1.0.0"; src = fetchFromGitHub { owner = "monocasual"; - repo = pname; - rev = version; - sha256 = "sha256-vTOUS9mI4B3yRNnM2dNCH7jgMuD3ztdhe1FMgXUIt58="; + repo = "giada"; + rev = finalAttrs.version; + hash = "sha256-vTOUS9mI4B3yRNnM2dNCH7jgMuD3ztdhe1FMgXUIt58="; fetchSubmodules = true; }; @@ -66,12 +66,12 @@ stdenv.mkDerivation rec { libXrandr ]; - meta = with lib; { + meta = { description = "Free, minimal, hardcore audio tool for DJs, live performers and electronic musicians"; mainProgram = "giada"; homepage = "https://giadamusic.com/"; - license = licenses.gpl3; - maintainers = with maintainers; [ kashw2 ]; - platforms = platforms.all; + license = lib.licenses.gpl3; + maintainers = with lib.maintainers; [ kashw2 ]; + platforms = lib.platforms.all; }; -} +}) diff --git a/pkgs/applications/audio/waylyrics/default.nix b/pkgs/applications/audio/waylyrics/default.nix index 15cec6faa8a7d..69069f01243c3 100644 --- a/pkgs/applications/audio/waylyrics/default.nix +++ b/pkgs/applications/audio/waylyrics/default.nix @@ -9,16 +9,16 @@ rustPlatform.buildRustPackage rec { pname = "waylyrics"; - version = "0.3.11"; + version = "0.3.12"; src = fetchFromGitHub { owner = "waylyrics"; repo = "waylyrics"; rev = "v${version}"; - hash = "sha256-8jmB6kJUNHTT0w/1ADgjoMAP1zNpohsPl9FIGoh8UG4="; + hash = "sha256-FfrgeUDKiM9m0mvKlu02KEuvsq+3Gv3yPFW1DIQw05I="; }; - cargoHash = "sha256-hH9EQAH1uSD6uRUxKv7O3ewZsijrbCSWWY7EmC0Z7tI="; + cargoHash = "sha256-xD46aKT18Kl+81Pfv+zleUUKhSV1Px7JFjhXw1/4cBA="; nativeBuildInputs = [ pkg-config wrapGAppsHook4 ]; buildInputs = [ openssl dbus ]; diff --git a/pkgs/applications/editors/vim/plugins/generated.nix b/pkgs/applications/editors/vim/plugins/generated.nix index 6c9f4646e45e9..29e087d801fe1 100644 --- a/pkgs/applications/editors/vim/plugins/generated.nix +++ b/pkgs/applications/editors/vim/plugins/generated.nix @@ -9676,6 +9676,18 @@ final: prev: meta.homepage = "https://github.com/mfukar/robotframework-vim/"; }; + rocks-nvim = buildNeovimPlugin { + pname = "rocks.nvim"; + version = "2024-06-19"; + src = fetchFromGitHub { + owner = "nvim-neorocks"; + repo = "rocks.nvim"; + rev = "6737e01a76eaaae06d11b45c8b5b774fa97c283b"; + sha256 = "0vl6rm3rv1730iw3bwzrwjsgr1hw5h4ksdgpir5spd3vqj7i97lz"; + }; + meta.homepage = "https://github.com/nvim-neorocks/rocks.nvim/"; + }; + ron-vim = buildVimPlugin { pname = "ron.vim"; version = "2022-08-19"; diff --git a/pkgs/applications/editors/vim/plugins/vim-plugin-names b/pkgs/applications/editors/vim/plugins/vim-plugin-names index 09aee5e0dc770..b2370410771a0 100644 --- a/pkgs/applications/editors/vim/plugins/vim-plugin-names +++ b/pkgs/applications/editors/vim/plugins/vim-plugin-names @@ -813,6 +813,7 @@ https://github.com/vim-scripts/restore_view.vim/,HEAD,restore-view-vim https://github.com/gu-fan/riv.vim/,, https://github.com/kevinhwang91/rnvimr/,, https://github.com/mfukar/robotframework-vim/,, +https://github.com/nvim-neorocks/rocks.nvim/,, https://github.com/ron-rs/ron.vim/,, https://github.com/jmederosalvarado/roslyn.nvim/,HEAD, https://github.com/keith/rspec.vim/,, diff --git a/pkgs/applications/misc/gramps/default.nix b/pkgs/applications/misc/gramps/default.nix index 7feab95b003a1..5ecab79226c8c 100644 --- a/pkgs/applications/misc/gramps/default.nix +++ b/pkgs/applications/misc/gramps/default.nix @@ -69,7 +69,7 @@ buildPythonApplication rec { ; propagatedBuildInputs = with pythonPackages; [ - bsddb3 + berkeleydb pyicu pygobject3 pycairo diff --git a/pkgs/applications/misc/keepassxc/default.nix b/pkgs/applications/misc/keepassxc/default.nix index abeaa45047aa0..ec633ac7514b9 100644 --- a/pkgs/applications/misc/keepassxc/default.nix +++ b/pkgs/applications/misc/keepassxc/default.nix @@ -41,13 +41,13 @@ stdenv.mkDerivation rec { pname = "keepassxc"; - version = "2.7.8"; + version = "2.7.9"; src = fetchFromGitHub { owner = "keepassxreboot"; repo = "keepassxc"; rev = version; - hash = "sha256-Gb5/CPhn/phVVvz9BFv7rb12n/P3rPNl5r2gA+E5b0o="; + hash = "sha256-rnietdc8eDNTag0GaZ8VJb28JsKKD/qrQ0Gg6FMWpr0="; }; env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang (toString [ diff --git a/pkgs/applications/networking/browsers/brave/default.nix b/pkgs/applications/networking/browsers/brave/default.nix index 5197f92d8c832..59b753192a2ae 100644 --- a/pkgs/applications/networking/browsers/brave/default.nix +++ b/pkgs/applications/networking/browsers/brave/default.nix @@ -6,17 +6,17 @@ callPackage ./make-brave.nix (removeAttrs args [ "callPackage" ]) if stdenv.isAarch64 then { pname = "brave"; - version = "1.66.118"; - url = "https://github.com/brave/brave-browser/releases/download/v1.66.118/brave-browser_1.66.118_arm64.deb"; - hash = "sha256-H2f6i86lDToHEkJ9JZCBp3tlpnI+zoFHY3YzLdp5lE4="; + version = "1.67.116"; + url = "https://github.com/brave/brave-browser/releases/download/v1.67.116/brave-browser_1.67.116_arm64.deb"; + hash = "sha256-YOvfXI+bSX3WZRBYXxGYhNme9NZl3ob/JYw6KshXn54="; platform = "aarch64-linux"; } else if stdenv.isx86_64 then { pname = "brave"; - version = "1.66.118"; - url = "https://github.com/brave/brave-browser/releases/download/v1.66.118/brave-browser_1.66.118_amd64.deb"; - hash = "sha256-r7lpEOxECOqJ23XxTHqSy6KhyNPRwOkuJvnZUuuBN4k="; + version = "1.67.116"; + url = "https://github.com/brave/brave-browser/releases/download/v1.67.116/brave-browser_1.67.116_amd64.deb"; + hash = "sha256-J4ap0bEAg5Q40U155AdAyzereBAo8Q/YDedDVqYvaT4="; platform = "x86_64-linux"; } else diff --git a/pkgs/applications/networking/browsers/chromium/upstream-info.nix b/pkgs/applications/networking/browsers/chromium/upstream-info.nix index 6f432bc71a9e1..bbcfc835071c8 100644 --- a/pkgs/applications/networking/browsers/chromium/upstream-info.nix +++ b/pkgs/applications/networking/browsers/chromium/upstream-info.nix @@ -27,11 +27,11 @@ version = "2024-05-13"; }; ungoogled-patches = { - hash = "sha256-vQrUQMmNSw+b9nPzP1RmkncQHasmZvnxNHjfiPoMUXo="; - rev = "126.0.6478.61-1"; + hash = "sha256-lj/XYWkEo7M1i3D5e1MVXTXh02U55lNoo+sxKpu8FNc="; + rev = "126.0.6478.114-1"; }; }; - hash = "sha256-cB2jrasrtaFWM8tpG9leuC+jUAvoU8g5977cn4r7rbw="; - version = "126.0.6478.61"; + hash = "sha256-sXP+/KXDoy3QnRoa9acGbsXKVCPspyNGtZTLMHBqxvw="; + version = "126.0.6478.114"; }; } diff --git a/pkgs/applications/networking/browsers/librewolf/src.json b/pkgs/applications/networking/browsers/librewolf/src.json index 4534ceb4313b5..67fed12e16538 100644 --- a/pkgs/applications/networking/browsers/librewolf/src.json +++ b/pkgs/applications/networking/browsers/librewolf/src.json @@ -1,15 +1,15 @@ { - "packageVersion": "126.0.1-1", + "packageVersion": "127.0-1", "source": { - "rev": "126.0.1-1", - "sha256": "0cac80073vkzd85ai9rbnwixs1h9bpy4dj2ri6jxdlqsy5d663km" + "rev": "127.0-1", + "sha256": "0zif9b7ky423bg3cf3njyxl465hrbsha1f1hxpdgccql0id5qr7r" }, "settings": { "rev": "1debc2d30949baff2d1e7df23e87900f1987a8ae", "sha256": "12xgjv40mihbyfsah26vvdyb4yirydc1a884v2chnca4f5q00lc2" }, "firefox": { - "version": "126.0.1", - "sha512": "249605c4891ee9271def187d161369bd3ccbd347f5f0e175d0239aced3cb9ae9655d3c134b7705bda80ea1e63c0a2ee8eb4e76db0840019683376c00f20fc7ac" + "version": "127.0", + "sha512": "5a17bce357e7f445c37540115f2c131ad5a055c0cf04f20bc2eaca18f8d241a99ac76739d172b38f2ad2681633f901a0a15893801082ac5db9e20e31fc8b8291" } } diff --git a/pkgs/applications/networking/cluster/k9s/default.nix b/pkgs/applications/networking/cluster/k9s/default.nix index 274bff5d253fe..c83566170d0f3 100644 --- a/pkgs/applications/networking/cluster/k9s/default.nix +++ b/pkgs/applications/networking/cluster/k9s/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "k9s"; - version = "0.32.4"; + version = "0.32.5"; src = fetchFromGitHub { owner = "derailed"; repo = "k9s"; rev = "v${version}"; - hash = "sha256-0MAnN1ekzHLs25EspDN3xacmDvwXGwKO/5RsCMMwTI8="; + hash = "sha256-H0PimkPXs2/iirOpN82az3Bge71k1RZOhMtr0UmGOy8="; }; ldflags = [ @@ -23,7 +23,7 @@ buildGoModule rec { proxyVendor = true; - vendorHash = "sha256-Eaz56iU862KDAlVPuMo8qPuWSFCxEFcJ3Qubl9TUiyI="; + vendorHash = "sha256-U/tIsYpoog3S8V2yQGGqaQ+Av7TfvCYt3zn74qWuQKs="; # TODO investigate why some config tests are failing doCheck = !(stdenv.isDarwin && stdenv.isAarch64); diff --git a/pkgs/applications/networking/instant-messengers/deltachat-cursed/default.nix b/pkgs/applications/networking/instant-messengers/deltachat-cursed/default.nix index 8e496c6c11012..a8299361d928b 100644 --- a/pkgs/applications/networking/instant-messengers/deltachat-cursed/default.nix +++ b/pkgs/applications/networking/instant-messengers/deltachat-cursed/default.nix @@ -7,7 +7,7 @@ python3.pkgs.buildPythonApplication rec { pname = "deltachat-cursed"; - version = "0.8.0"; + version = "0.9.0"; pyproject = true; @@ -15,17 +15,17 @@ python3.pkgs.buildPythonApplication rec { owner = "adbenitez"; repo = "deltachat-cursed"; rev = "v${version}"; - hash = "sha256-1QNhNPa6ZKn0lGQXs/cmfdSFHscwlYwFC/2DpnMoHvY="; + hash = "sha256-z4JKe5soR4FdIn8hugxtnxQr/9V8m8a7QRzE1liIexc="; }; - nativeBuildInputs = with python3.pythonOnBuildForHost.pkgs; [ + build-system = with python3.pythonOnBuildForHost.pkgs; [ setuptools setuptools-scm ]; - propagatedBuildInputs = with python3.pkgs; [ + dependencies = with python3.pkgs; [ appdirs - deltachat + deltachat2 emoji notify-py setuptools # for pkg_resources diff --git a/pkgs/applications/networking/instant-messengers/deltachat-desktop/default.nix b/pkgs/applications/networking/instant-messengers/deltachat-desktop/default.nix index d53b122068a91..43a18d775f9ee 100644 --- a/pkgs/applications/networking/instant-messengers/deltachat-desktop/default.nix +++ b/pkgs/applications/networking/instant-messengers/deltachat-desktop/default.nix @@ -1,11 +1,12 @@ { lib , buildNpmPackage , copyDesktopItems -, electron_28 +, electron , buildGoModule , esbuild , fetchFromGitHub , jq +, deltachat-rpc-server , libdeltachat , makeDesktopItem , makeWrapper @@ -36,16 +37,16 @@ let in buildNpmPackage rec { pname = "deltachat-desktop"; - version = "1.44.1"; + version = "1.46.1"; src = fetchFromGitHub { owner = "deltachat"; repo = "deltachat-desktop"; rev = "v${version}"; - hash = "sha256-fL+9oPQ5dAgvQREZ7A+hKo2MnZKeVvadQDvDPsDNbnQ="; + hash = "sha256-90/Wmh0h75i3kvqj3Wo+A3KlKW8LLDWfPza2gDrDY6E="; }; - npmDepsHash = "sha256-rUxJLDsAfp+brecTThYTdHIVIfVkKwZ/W5sHV0hHHIk="; + npmDepsHash = "sha256-UzWxMd+DYH5A8Zo1rzi8oIsoKbmzsVbGpr3uWtc02rY="; postPatch = '' test \ @@ -64,6 +65,7 @@ buildNpmPackage rec { ]; buildInputs = [ + deltachat-rpc-server libdeltachat ] ++ lib.optionals stdenv.isDarwin [ CoreServices @@ -77,7 +79,8 @@ buildNpmPackage rec { }; preBuild = '' - rm -r node_modules/deltachat-node/node/prebuilds + rm node_modules/@deltachat/stdio-rpc-server-*/deltachat-rpc-server + ln -s ${lib.getExe deltachat-rpc-server} node_modules/@deltachat/stdio-rpc-server-linux-* ''; npmBuildScript = "build4production"; @@ -93,6 +96,9 @@ buildNpmPackage rec { awk '!/^#/ && NF' build/packageignore_list \ | xargs -I {} sh -c "rm -rf $out/lib/node_modules/deltachat-desktop/{}" || true + # required for electron to import index.js as a module + cp package.json $out/lib/node_modules/deltachat-desktop + install -D build/icon.png \ $out/share/icons/hicolor/scalable/apps/deltachat.png @@ -103,7 +109,7 @@ buildNpmPackage rec { $out/lib/node_modules/deltachat-desktop/html-dist/fonts done - makeWrapper ${lib.getExe electron_28} $out/bin/deltachat \ + makeWrapper ${lib.getExe electron} $out/bin/deltachat \ --set LD_PRELOAD ${sqlcipher}/lib/libsqlcipher${stdenv.hostPlatform.extensions.sharedLibrary} \ --add-flags $out/lib/node_modules/deltachat-desktop diff --git a/pkgs/applications/networking/instant-messengers/signal-desktop/signal-desktop.nix b/pkgs/applications/networking/instant-messengers/signal-desktop/signal-desktop.nix index 4e1797127b241..09485b3d7f1d8 100644 --- a/pkgs/applications/networking/instant-messengers/signal-desktop/signal-desktop.nix +++ b/pkgs/applications/networking/instant-messengers/signal-desktop/signal-desktop.nix @@ -2,7 +2,7 @@ callPackage ./generic.nix { } rec { pname = "signal-desktop"; dir = "Signal"; - version = "7.11.1"; + version = "7.12.0"; url = "https://updates.signal.org/desktop/apt/pool/s/signal-desktop/signal-desktop_${version}_amd64.deb"; - hash = "sha256-ROJ2aQY0NPZD2GcjdQ1OxbeXKC+60n791Nxs93CyJ/Y="; + hash = "sha256-k8Dp3MiWRNpWEGqYtt5o8FtL3fJ9AkIm+hjvW8r6qG0="; } diff --git a/pkgs/applications/science/electronics/gtkwave/default.nix b/pkgs/applications/science/electronics/gtkwave/default.nix index 3e0f3613ba903..d28a5cf809065 100644 --- a/pkgs/applications/science/electronics/gtkwave/default.nix +++ b/pkgs/applications/science/electronics/gtkwave/default.nix @@ -16,11 +16,11 @@ stdenv.mkDerivation rec { pname = "gtkwave"; - version = "3.3.119"; + version = "3.3.120"; src = fetchurl { url = "mirror://sourceforge/gtkwave/${pname}-gtk3-${version}.tar.gz"; - sha256 = "sha256-6rPgnnZBEVwHhIv7MPfdDDu+K4y+RQF+leB327pqwDg="; + sha256 = "sha256-XalIY/suXYjMAZ4r/cZ2AiOYETiUtYXYZOEcqDQbJNg="; }; nativeBuildInputs = [ pkg-config wrapGAppsHook3 ]; diff --git a/pkgs/applications/science/misc/boinc/default.nix b/pkgs/applications/science/misc/boinc/default.nix index 0c559a530e089..68134a99a2035 100644 --- a/pkgs/applications/science/misc/boinc/default.nix +++ b/pkgs/applications/science/misc/boinc/default.nix @@ -27,14 +27,14 @@ stdenv.mkDerivation rec { pname = "boinc"; - version = "8.0.2"; + version = "8.0.3"; src = fetchFromGitHub { name = "${pname}-${version}-src"; owner = "BOINC"; repo = "boinc"; rev = "client_release/${lib.versions.majorMinor version}/${version}"; - hash = "sha256-e0zEdiN3QQHj6MNGd1pfaZf3o9rOpCTmuNSJQb3sss4="; + hash = "sha256-kkEEJp7NTpHwbo03BGjjJAraFQIJcoNyV+oDsCZlzPQ="; }; nativeBuildInputs = [ libtool automake autoconf m4 pkg-config ]; diff --git a/pkgs/applications/window-managers/hyprwm/hyprpaper/default.nix b/pkgs/applications/window-managers/hyprwm/hyprpaper/default.nix index 508596d887830..9da143be08bf1 100644 --- a/pkgs/applications/window-managers/hyprwm/hyprpaper/default.nix +++ b/pkgs/applications/window-managers/hyprwm/hyprpaper/default.nix @@ -2,14 +2,24 @@ , stdenv , fetchFromGitHub , cmake +, cairo +, expat , file +, fribidi , hyprlang +, libdatrie , libGL , libjpeg +, libselinux +, libsepol +, libthai , libwebp -, mesa +, libXdmcp , pango +, pcre +, pcre2 , pkg-config +, util-linux , wayland , wayland-protocols , wayland-scanner @@ -33,13 +43,23 @@ stdenv.mkDerivation (finalAttrs: { ]; buildInputs = [ + cairo + expat file + fribidi hyprlang + libdatrie libGL libjpeg + libselinux + libsepol + libthai libwebp - mesa + libXdmcp pango + pcre + pcre2 + util-linux wayland wayland-protocols ]; @@ -49,18 +69,6 @@ stdenv.mkDerivation (finalAttrs: { --replace GIT_COMMIT_HASH '"${finalAttrs.src.rev}"' ''; - preConfigure = '' - make protocols - ''; - - installPhase = '' - runHook preInstall - - install -Dm755 ./hyprpaper -t $out/bin - - runHook postInstall - ''; - meta = with lib; { inherit (finalAttrs.src.meta) homepage; description = "Blazing fast wayland wallpaper utility"; diff --git a/pkgs/build-support/bintools-wrapper/default.nix b/pkgs/build-support/bintools-wrapper/default.nix index 2a1fe1344e205..2d75330f1c9ee 100644 --- a/pkgs/build-support/bintools-wrapper/default.nix +++ b/pkgs/build-support/bintools-wrapper/default.nix @@ -10,15 +10,15 @@ , stdenvNoCC , runtimeShell , bintools ? null, libc ? null, coreutils ? null, gnugrep ? null -, netbsd ? null, netbsdCross ? null +, netbsd ? null , sharedLibraryLoader ? if libc == null then null else if stdenvNoCC.targetPlatform.isNetBSD then - if !(targetPackages ? netbsdCross) then + if !(targetPackages ? netbsd) then netbsd.ld_elf_so - else if libc != targetPackages.netbsdCross.headers then - targetPackages.netbsdCross.ld_elf_so + else if libc != targetPackages.netbsd.headers then + targetPackages.netbsd.ld_elf_so else null else diff --git a/pkgs/build-support/rust/build-rust-crate/default.nix b/pkgs/build-support/rust/build-rust-crate/default.nix index 9ceda041b6653..dfe28cc334b5e 100644 --- a/pkgs/build-support/rust/build-rust-crate/default.nix +++ b/pkgs/build-support/rust/build-rust-crate/default.nix @@ -49,6 +49,8 @@ let filename = if lib.any (x: x == "lib" || x == "rlib") dep.crateType then "${dep.metadata}.rlib" + # Adjust lib filename for crates of type proc-macro. Proc macros are compiled/run on the build platform architecture. + else if (lib.attrByPath [ "procMacro" ] false dep) then "${dep.metadata}${stdenv.buildPlatform.extensions.library}" else "${dep.metadata}${stdenv.hostPlatform.extensions.library}"; in " --extern ${opts}${name}=${dep.lib}/lib/lib${extern}-${filename}" diff --git a/pkgs/build-support/trivial-builders/test/references/default.nix b/pkgs/build-support/trivial-builders/test/references/default.nix index 928cc1d9461f0..85df57ea210c2 100644 --- a/pkgs/build-support/trivial-builders/test/references/default.nix +++ b/pkgs/build-support/trivial-builders/test/references/default.nix @@ -93,21 +93,27 @@ let }; }); in -testers.nixosTest { - name = "nixpkgs-trivial-builders"; - nodes.machine = { ... }: { +testers.runNixOSTest ({ config, lib, ... }: +let + # Use the testScriptBin from guest pkgs. + # The attribute path to access the guest version of testScriptBin is + # tests.trivial-builders.references.config.node.pkgs.tests.trivial-builders.references.testScriptBin + # which is why passthru.guestTestScriptBin is provided. + guestTestScriptBin = config.node.pkgs.tests.trivial-builders.references.testScriptBin; +in +{ + name = "nixpkgs-trivial-builders-references"; + nodes.machine = { config, lib, pkgs, ... }: { virtualisation.writableStore = true; # Test runs without network, so we don't substitute and prepare our deps nix.settings.substituters = lib.mkForce [ ]; - environment.etc."pre-built-paths".source = writeText "pre-built-paths" ( - builtins.toJSON [ testScriptBin ] - ); + system.extraDependencies = [ guestTestScriptBin ]; }; testScript = '' machine.succeed(""" - ${lib.getExe testScriptBin} 2>/dev/console + ${lib.getExe guestTestScriptBin} 2>/dev/console """) ''; passthru = { @@ -118,6 +124,7 @@ testers.nixosTest { samples testScriptBin ; + inherit guestTestScriptBin; }; meta = { maintainers = with lib.maintainers; [ @@ -125,4 +132,4 @@ testers.nixosTest { ShamrockLee ]; }; -} +}) diff --git a/pkgs/by-name/an/ananicy-cpp/match-wrappers.patch b/pkgs/by-name/an/ananicy-cpp/match-wrappers.patch new file mode 100644 index 0000000000000..3b352925e2710 --- /dev/null +++ b/pkgs/by-name/an/ananicy-cpp/match-wrappers.patch @@ -0,0 +1,16 @@ +diff --git a/src/worker.cpp b/src/worker.cpp +index 0cf8955..b9dc70f 100644 +--- a/src/worker.cpp ++++ b/src/worker.cpp +@@ -29,7 +29,10 @@ void Worker::work(const std::stop_token &stop_token) { + while (!stop_token.stop_requested()) { + while ((proc = process_queue->poll(500ms)).has_value()) { + const auto &p = proc.value(); +- const auto &rule = rules->get_rule(p.name); ++ auto name = p.name; ++ if (name.starts_with('.') && name.ends_with("-wrapped")) ++ name = name.substr(1, name.find_last_of('-') - 1); ++ const auto &rule = rules->get_rule(name); + + processed_count++; + diff --git a/pkgs/by-name/an/ananicy-cpp/package.nix b/pkgs/by-name/an/ananicy-cpp/package.nix index 8d3416f69c57c..a17e199a5ca71 100644 --- a/pkgs/by-name/an/ananicy-cpp/package.nix +++ b/pkgs/by-name/an/ananicy-cpp/package.nix @@ -33,6 +33,7 @@ clangStdenv.mkDerivation rec { url = "https://gitlab.com/ananicy-cpp/ananicy-cpp/-/commit/6ea2dccceec39b6c4913f617dad81d859aa20f24.patch"; hash = "sha256-C+7x/VpVwewXEPwibi7GxGfjuhDkhcjTyGbZHlYL2Bs="; }) + ./match-wrappers.patch ]; strictDeps = true; @@ -80,6 +81,7 @@ clangStdenv.mkDerivation rec { maintainers = with lib.maintainers; [ artturin johnrtitor + diniamo ]; mainProgram = "ananicy-cpp"; }; diff --git a/pkgs/by-name/ar/arkenfox-userjs/package.nix b/pkgs/by-name/ar/arkenfox-userjs/package.nix new file mode 100644 index 0000000000000..04ac83fce1a66 --- /dev/null +++ b/pkgs/by-name/ar/arkenfox-userjs/package.nix @@ -0,0 +1,41 @@ +{ + lib, + fetchurl, + stdenvNoCC, + nix-update-script, +}: +stdenvNoCC.mkDerivation (finalAttrs: { + pname = "arkenfox-userjs"; + version = "126.1"; + + src = fetchurl { + url = "https://raw.githubusercontent.com/arkenfox/user.js/${finalAttrs.version}/user.js"; + hash = "sha256-XRtG0iLKh8uqbeX7Rc2H6VJwZYJoNZPBlAfZEfrSCP4="; + }; + + dontUnpack = true; + + installPhase = '' + runHook preInstall + + install -Dm644 $src $out/user.js + install -Dm644 $src $out/user.cfg + substituteInPlace $out/user.cfg \ + --replace-fail "user_pref" "defaultPref" + + runHook postInstall + ''; + + passthru.updateScript = nix-update-script { }; + + meta = { + description = "A comprehensive user.js template for configuration and hardening"; + homepage = "https://github.com/arkenfox/user.js"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ + linsui + Guanran928 + ]; + platforms = lib.platforms.all; + }; +}) diff --git a/pkgs/by-name/co/codux/package.nix b/pkgs/by-name/co/codux/package.nix index 41f4193d40472..c9c7588470e65 100644 --- a/pkgs/by-name/co/codux/package.nix +++ b/pkgs/by-name/co/codux/package.nix @@ -5,11 +5,11 @@ let pname = "codux"; - version = "15.28.0"; + version = "15.29.0"; src = fetchurl { url = "https://github.com/wixplosives/codux-versions/releases/download/${version}/Codux-${version}.x86_64.AppImage"; - sha256 = "sha256-U4uOP2M/369bFOfkCncXzKCdYz9TwtzpUFNg63Oz978="; + sha256 = "sha256-BvDrhs37XGCQdQV2yQJZXlnNWVArFCMLfFlXuXz9ea0="; }; appimageContents = appimageTools.extractType2 { inherit pname version src; }; diff --git a/pkgs/by-name/db/dbeaver-bin/package.nix b/pkgs/by-name/db/dbeaver-bin/package.nix index ee80efd1c3d6f..34115a39d21d4 100644 --- a/pkgs/by-name/db/dbeaver-bin/package.nix +++ b/pkgs/by-name/db/dbeaver-bin/package.nix @@ -12,16 +12,7 @@ stdenvNoCC.mkDerivation (finalAttrs: { pname = "dbeaver-bin"; - version = "24.0.5"; - - nativeBuildInputs = - [ makeWrapper ] - ++ lib.optionals (!stdenvNoCC.isDarwin) [ - gnused - wrapGAppsHook3 - autoPatchelfHook - ] - ++ lib.optionals stdenvNoCC.isDarwin [ undmg ]; + version = "24.1.0"; src = let @@ -34,10 +25,10 @@ stdenvNoCC.mkDerivation (finalAttrs: { aarch64-darwin = "macos-aarch64.dmg"; }; hash = selectSystem { - x86_64-linux = "sha256-q6VIr55hXn47kZrE2i6McEOfp2FBOvwB0CcUnRHFMZs="; - aarch64-linux = "sha256-Xn3X1C31UALBAsZIGyMWdp0HNhJEm5N+7Go7nMs8W64="; - x86_64-darwin = "sha256-XOQaMNQHOC4dVJXIUn4l4Oa7Gohbq+JMDFusIy/U+tc="; - aarch64-darwin = "sha256-554ea5p1MR4XIHtSeByd4S/Ke4cKRZbITTNRRDoRqPI="; + x86_64-linux = "sha256-cJcjUoZSpD87jy4GGIxMinZW4gxRZfcGO0GdGUGXI6g="; + aarch64-linux = "sha256-96t/T/VzzzaSWJbPBb1CH2FXqfhiH1d0MjRoPsRMRwo="; + x86_64-darwin = "sha256-8xqSL8fTveg1Y5huBTYZLyubajt27h4XUBzyYVF394A="; + aarch64-darwin = "sha256-r7WqJrNF1IgQHx3Na1fGk0ywsfh5t4Dl/u8hH6CPuoE="; }; in fetchurl { @@ -45,15 +36,25 @@ stdenvNoCC.mkDerivation (finalAttrs: { inherit hash; }; + sourceRoot = lib.optional stdenvNoCC.isDarwin "dbeaver.app"; + + nativeBuildInputs = + [ makeWrapper ] + ++ lib.optionals (!stdenvNoCC.isDarwin) [ + gnused + wrapGAppsHook3 + autoPatchelfHook + ] + ++ lib.optionals stdenvNoCC.isDarwin [ undmg ]; + dontConfigure = true; dontBuild = true; - sourceRoot = lib.optional stdenvNoCC.isDarwin "dbeaver.app"; - installPhase = if !stdenvNoCC.isDarwin then '' runHook preInstall + mkdir -p $out/opt/dbeaver $out/bin cp -r * $out/opt/dbeaver makeWrapper $out/opt/dbeaver/dbeaver $out/bin/dbeaver \ diff --git a/pkgs/by-name/db/dbeaver-bin/update.sh b/pkgs/by-name/db/dbeaver-bin/update.sh index 64b965da6db07..c89262bb3a29d 100755 --- a/pkgs/by-name/db/dbeaver-bin/update.sh +++ b/pkgs/by-name/db/dbeaver-bin/update.sh @@ -1,5 +1,5 @@ #!/usr/bin/env nix-shell -#!nix-shell -I nixpkgs=./. -i bash -p curl jq +#!nix-shell -I nixpkgs=./. -i bash -p curl jq common-updater-scripts latestVersion=$(curl "https://api.github.com/repos/dbeaver/dbeaver/tags" | jq -r '.[0].name') currentVersion=$(nix-instantiate --eval -E "with import ./. {}; dbeaver-bin.version" | tr -d '"') diff --git a/pkgs/by-name/de/design/package.nix b/pkgs/by-name/de/design/package.nix new file mode 100644 index 0000000000000..fc6b5f2fc4b47 --- /dev/null +++ b/pkgs/by-name/de/design/package.nix @@ -0,0 +1,58 @@ +{ lib +, stdenv +, fetchFromGitHub +, wrapGAppsHook4 +, appstream-glib +, blueprint-compiler +, desktop-file-utils +, meson +, ninja +, pkg-config +, glib +, gjs +, libadwaita +}: + +stdenv.mkDerivation rec { + pname = "design"; + version = "46-alpha1"; + + src = fetchFromGitHub { + owner = "dubstar-04"; + repo = "Design"; + rev = "v${version}"; + fetchSubmodules = true; + hash = "sha256-Q4R/Ztu4w8IRvq15xNXN/iP/6hIHe/W+me1jROGpYc8="; + }; + + nativeBuildInputs = [ + appstream-glib + blueprint-compiler + desktop-file-utils + gjs + meson + ninja + pkg-config + wrapGAppsHook4 + ]; + + buildInputs = [ + glib + libadwaita + ]; + + # Use a symlink here so that the basename isn't changed by the wrapper which is used to decide the resource path. + postInstall = '' + mv $out/bin/io.github.dubstar_04.design $out/share/design/ + ln -s $out/share/design/io.github.dubstar_04.design $out/bin + ''; + + meta = { + homepage = "https://github.com/dubstar-04/Design"; + description = "2D CAD For GNOME"; + maintainers = with lib.maintainers; [ linsui ]; + license = lib.licenses.gpl3Plus; + platforms = lib.platforms.linux; + mainProgram = "io.github.dubstar_04.design"; + }; +} diff --git a/pkgs/applications/networking/gabutdm/default.nix b/pkgs/by-name/ga/gabutdm/package.nix index cb587ea7f093f..4458efcce5f40 100644 --- a/pkgs/applications/networking/gabutdm/default.nix +++ b/pkgs/by-name/ga/gabutdm/package.nix @@ -14,18 +14,19 @@ , json-glib , qrencode , curl +, libadwaita , aria2 }: stdenv.mkDerivation rec { pname = "gabutdm"; - version = "2.1.6"; + version = "2.2.8"; src = fetchFromGitHub { owner = "gabutakut"; - repo = pname; + repo = "gabutdm"; rev = version; - hash = "sha256-ai5LsoK21XwXqL4LRuKsOR1/JV6LnP+1ZJ9fMHpj178="; + hash = "sha256-HF+zBDkA9fYauLUYsvJJxcRggHu+5qH4rm0IM/tL9Hc="; }; nativeBuildInputs = [ @@ -45,11 +46,12 @@ stdenv.mkDerivation rec { json-glib qrencode curl + libadwaita ]; postPatch = '' substituteInPlace meson/post_install.py \ - --replace gtk-update-icon-cache gtk4-update-icon-cache + --replace-fail gtk-update-icon-cache gtk4-update-icon-cache ''; preFixup = '' diff --git a/pkgs/by-name/go/gosmee/package.nix b/pkgs/by-name/go/gosmee/package.nix index eeb9bf97499cd..5ae4b5d8dc8b2 100644 --- a/pkgs/by-name/go/gosmee/package.nix +++ b/pkgs/by-name/go/gosmee/package.nix @@ -6,13 +6,13 @@ buildGoModule rec { pname = "gosmee"; - version = "0.22.0"; + version = "0.22.1"; src = fetchFromGitHub { owner = "chmouel"; repo = "gosmee"; rev = "v${version}"; - sha256 = "sha256-PP+N8BihgSvYL7yHlBJOK4zWkuM75iaGc7Gld+c0D6Y="; + sha256 = "sha256-UnGzPkbw7x8l1+9xEXFiJZFzJT5yu7MCgPKkKzaFqkk="; }; vendorHash = null; diff --git a/pkgs/by-name/ht/httping/package.nix b/pkgs/by-name/ht/httping/package.nix new file mode 100644 index 0000000000000..85fcc843ef0f7 --- /dev/null +++ b/pkgs/by-name/ht/httping/package.nix @@ -0,0 +1,71 @@ +{ + cmake, + fetchFromGitHub, + fftw, + gettext, + lib, + libintl, + ncurses, + nix-update-script, + openssl, + stdenv, + testers, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "httping"; + version = "3.6"; + + src = fetchFromGitHub { + owner = "folkertvanheusden"; + repo = "HTTPing"; + rev = "refs/tags/v${finalAttrs.version}"; + hash = "sha256-lDgQC3VzfcLqMOQSaRZ/znMamAAGYq/9C9bHgI4G7B8="; + }; + + nativeBuildInputs = [ + cmake + gettext + ]; + + buildInputs = [ + fftw + libintl + ncurses + openssl + ]; + + cmakeFlags = [ + (lib.cmakeFeature "CMAKE_BUILD_TYPE" "Release") + ]; + + installPhase = '' + runHook preInstall + install -D httping $out/bin/httping + runHook postInstall + ''; + + passthru = { + tests.version = testers.testVersion { + command = "${lib.getExe finalAttrs.finalPackage} --version"; + package = finalAttrs.finalPackage; + }; + updateScript = nix-update-script { }; + }; + + meta = { + changelog = "https://github.com/folkertvanheusden/HTTPing/releases/tag/v${finalAttrs.version}"; + description = "Ping with HTTP requests"; + homepage = "https://vanheusden.com/httping"; + license = lib.licenses.agpl3Only; + longDescription = '' + Give httping an url, and it'll show you how long it takes to connect, + send a request and retrieve the reply (only the headers). Be aware that + the transmission across the network also takes time! So it measures the + latency of the webserver + network. It supports IPv6. + ''; + mainProgram = "httping"; + maintainers = [ lib.maintainers.anthonyroussel ]; + platforms = lib.platforms.linux; + }; +}) diff --git a/pkgs/by-name/ic/ice-bar/package.nix b/pkgs/by-name/ic/ice-bar/package.nix new file mode 100644 index 0000000000000..95b1170f2a859 --- /dev/null +++ b/pkgs/by-name/ic/ice-bar/package.nix @@ -0,0 +1,41 @@ +{ + lib, + stdenvNoCC, + unzip, + fetchurl, + nix-update-script, +}: + +stdenvNoCC.mkDerivation (finalAttrs: { + pname = "ice-bar"; + version = "0.9.0"; + + src = fetchurl { + url = "https://github.com/jordanbaird/Ice/releases/download/${finalAttrs.version}/Ice.zip"; + hash = "sha256-MvkJRP8Stz9VIK3vBnWezVKq2KkPfUa/NUBxJtYzHhU="; + }; + + sourceRoot = "."; + + nativeBuildInputs = [ unzip ]; + + installPhase = '' + runHook preInstall + + mkdir -p "$out/Applications" + cp -r *.app "$out/Applications" + + runHook postInstall + ''; + + passthru.updateScript = nix-update-script { }; + + meta = { + description = "Powerful menu bar manager for macOS"; + homepage = "https://icemenubar.app/"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ donteatoreo ]; + platforms = lib.platforms.darwin; + sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ]; + }; +}) diff --git a/pkgs/by-name/it/itools/package.nix b/pkgs/by-name/it/itools/package.nix new file mode 100644 index 0000000000000..85cede0eb9007 --- /dev/null +++ b/pkgs/by-name/it/itools/package.nix @@ -0,0 +1,41 @@ +{ lib +, stdenv +, fetchFromGitHub +, autoreconfHook +, pkgs +, pkg-config +, perl +, libitl +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "itools"; + version = "1.1"; + + nativeBuildInputs = [ pkg-config autoreconfHook ]; + buildInputs = [ libitl perl ]; + + outputs = [ "out" "man" ]; + + src = fetchFromGitHub { + owner = "arabeyes-org"; + repo = "itools"; + rev = finalAttrs.version; + hash = "sha256-DxTZaq2SlEmy9k7iAdjctpPkk+2rIaF+xEcfXj/ERWw="; + }; + + meta = { + description = "Islamic command-line tools for prayer times and hijri dates"; + longDescription = '' + The itools package is a set of user friendly applications utilizing Arabeyes' ITL library. + + The package addresses two main areas - hijri date and prayertime calculation. The package + is envisioned to mimick the development of the underlying ITL library and is meant to + always give the end-user a simple means to access its functions. + ''; + homepage = "https://www.arabeyes.org/ITL"; + license = lib.licenses.gpl2Only; + platforms = lib.platforms.all; + maintainers = with lib.maintainers; [ amyipdev ]; + }; +}) diff --git a/pkgs/by-name/li/lint-staged/package.nix b/pkgs/by-name/li/lint-staged/package.nix index 0fa6179dca687..dc5b5988ed152 100644 --- a/pkgs/by-name/li/lint-staged/package.nix +++ b/pkgs/by-name/li/lint-staged/package.nix @@ -2,16 +2,16 @@ buildNpmPackage rec { pname = "lint-staged"; - version = "15.2.6"; + version = "15.2.7"; src = fetchFromGitHub { owner = "okonet"; repo = "lint-staged"; rev = "v${version}"; - hash = "sha256-Jn6KGfgL4Si48hdg4glACe6AO5QzPgnasYhHMivzMGk="; + hash = "sha256-V7NJ8UWORo+APCVJmC6l6uQUazLrG94O9V4yC3McBp4="; }; - npmDepsHash = "sha256-6BKx06h+laYSMNm36R992oXYwCDS90F+nh21MnHA998="; + npmDepsHash = "sha256-9Twg9jppFkp0cpxJfBVmWRMwKsXnJ+tUBH8qMYAm1cY="; dontNpmBuild = true; diff --git a/pkgs/applications/misc/logseq/default.nix b/pkgs/by-name/lo/logseq/package.nix index 7dfee5ca9dfdd..793e305ac3a45 100644 --- a/pkgs/applications/misc/logseq/default.nix +++ b/pkgs/by-name/lo/logseq/package.nix @@ -3,8 +3,10 @@ , fetchurl , appimageTools , makeWrapper -# graphs will not sync without matching upstream's major electron version -, electron_27 +# Notice: graphs will not sync without matching upstream's major electron version +# the specific electron version is set at top-level file to preserve override interface. +# whenever updating this package also sync electron version at top-level file. +, electron , autoPatchelfHook , git , nix-update-script @@ -59,7 +61,7 @@ in { postFixup = '' # set the env "LOCAL_GIT_DIRECTORY" for dugite so that we can use the git in nixpkgs - makeWrapper ${electron_27}/bin/electron $out/bin/${pname} \ + makeWrapper ${electron}/bin/electron $out/bin/${pname} \ --set "LOCAL_GIT_DIRECTORY" ${git} \ --add-flags $out/share/${pname}/resources/app \ --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}" diff --git a/pkgs/by-name/me/mealie/package.nix b/pkgs/by-name/me/mealie/package.nix index 040cf175bb6fa..6646a8ec09803 100644 --- a/pkgs/by-name/me/mealie/package.nix +++ b/pkgs/by-name/me/mealie/package.nix @@ -9,12 +9,12 @@ }: let - version = "1.7.0"; + version = "1.9.0"; src = fetchFromGitHub { owner = "mealie-recipes"; repo = "mealie"; rev = "v${version}"; - hash = "sha256-z7kLBDzvzPWY7XmpROMpw3LcDpsl+hA+w1SdhrD/yNU="; + hash = "sha256-gg7ClclBS9j9n4/3HLxbX8HXTz9Zw5+BYG2MEYRsRBU="; }; frontend = callPackage (import ./mealie-frontend.nix src version) { }; diff --git a/pkgs/by-name/nu/numi/package.nix b/pkgs/by-name/nu/numi/package.nix new file mode 100644 index 0000000000000..527ecd7c5d2c8 --- /dev/null +++ b/pkgs/by-name/nu/numi/package.nix @@ -0,0 +1,41 @@ +{ + lib, + stdenv, + fetchurl, + undmg, + nix-update-script, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "numi"; + version = "3.32.721"; + + src = fetchurl { + url = "https://s3.numi.app/updates/${finalAttrs.version}/Numi.dmg"; + hash = "sha256-IbX4nsrPqwOSlYdNJLeaRQwIDVJrzfMXFqRqixHd2zA="; + }; + + nativeBuildInputs = [ undmg ]; + + sourceRoot = "."; + + installPhase = '' + runHook preInstall + + mkdir -p "$out/Applications" + cp -R *.app "$out/Applications" + + runHook postInstall + ''; + + passthru.updateScript = nix-update-script { }; + + meta = { + description = "Beautiful calculator app for macOS"; + homepage = "https://numi.app/"; + license = lib.licenses.unfree; + maintainers = with lib.maintainers; [ donteatoreo ]; + platforms = lib.platforms.darwin; + sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ]; + }; +}) diff --git a/pkgs/by-name/nu/nuv/package.nix b/pkgs/by-name/nu/nuv/package.nix new file mode 100644 index 0000000000000..30ca0bfecfee4 --- /dev/null +++ b/pkgs/by-name/nu/nuv/package.nix @@ -0,0 +1,75 @@ +{ lib +, stdenv +, symlinkJoin +, callPackage +, fetchFromGitHub +, fetchurl +, buildGoModule +, makeWrapper +, breakpointHook +, jq +, curl +, kubectl +, eksctl +, kind +, k3sup +, coreutils +}: + +let + branch = "3.0.0"; + version = "3.0.1-beta.2405292059"; + pname = "nuv"; +in +buildGoModule { + inherit pname version; + + src = fetchFromGitHub { + owner = "nuvolaris"; + repo = "nuv"; + rev = version; + hash = "sha256-MdnBvlA4S2Mi/bcbE+O02x+wvlIrsK1Zc0dySz4FB/w="; + }; + + subPackages = [ "." ]; + vendorHash = "sha256-JkQbQ2NEaumXbAfsv0fNiQf/EwMs3SDLHvu7c/bU7fU="; + + nativeBuildInputs = [ makeWrapper jq curl breakpointHook ]; + + ldflags = [ + "-s" + "-w" + "-X main.NuvVersion=${version}" + "-X main.NuvBranch=${branch}" + ]; + + # false because tests require some modifications inside nix-env + doCheck = false; + + postInstall = let + nuv-bin = symlinkJoin { + name = "nuv-bin"; + paths = [ + coreutils + kubectl + eksctl + kind + k3sup + ]; + }; + in '' + wrapProgram $out/bin/nuv --set NUV_BIN "${nuv-bin}/bin" + ''; + + passthru.tests = { + simple = callPackage ./tests.nix { inherit version; }; + }; + + meta = { + homepage = "https://nuvolaris.io/"; + description = "A CLI tool for running tasks using the Nuvolaris serverless engine"; + license = lib.licenses.asl20; + mainProgram = "nuv"; + maintainers = with lib.maintainers; [ msciabarra d4rkstar ]; + }; +} diff --git a/pkgs/by-name/nu/nuv/tests.nix b/pkgs/by-name/nu/nuv/tests.nix new file mode 100644 index 0000000000000..4e531728e8ff4 --- /dev/null +++ b/pkgs/by-name/nu/nuv/tests.nix @@ -0,0 +1,17 @@ +{ runCommand, nuv, version }: + +runCommand "nuv-test-run" +{ + nativeBuildInputs = [ nuv ]; +} '' + export TMP_BASE=$(mktemp -d /tmp/.nuv-XXXXX) + export HOME=$TMP_BASE + export NUV_REPO="" + export NUV_ROOT=$TMP_BASE/.nuv/3.0.0/olaris + rm -rf $TMP_BASE/.nuv && \ + mkdir -p $TMP_BASE/.nuv/3.0.0/olaris && \ + mkdir $TMP_BASE/.nuv/tmp + V=$(nuv -version 2>/dev/null) + diff -U3 --color=auto <(echo "$V") <(echo "${version}") + touch $out +'' diff --git a/pkgs/by-name/or/ord/package.nix b/pkgs/by-name/or/ord/package.nix new file mode 100644 index 0000000000000..6b985dcf968bf --- /dev/null +++ b/pkgs/by-name/or/ord/package.nix @@ -0,0 +1,48 @@ +{ lib +, rustPlatform +, fetchFromGitHub +, pkg-config +, openssl +, stdenv +, darwin +}: + +rustPlatform.buildRustPackage rec { + pname = "ord"; + version = "0.18.5"; + + src = fetchFromGitHub { + owner = "ordinals"; + repo = "ord"; + rev = version; + hash = "sha256-rqyf2GZ3lhYSSr14S+JXJYCYZC+7BbFzxLOourykMas="; + }; + + cargoHash = "sha256-SjD5S8GVjfpIvA++eiNebn9M33aRvrXL+MyqZTK2e4U="; + + nativeBuildInputs = [ + pkg-config + ]; + + buildInputs = [ + openssl + ] ++ lib.optionals stdenv.isDarwin [ + darwin.apple_sdk.frameworks.Security + darwin.apple_sdk.frameworks.SystemConfiguration + ]; + + dontUseCargoParallelTests = true; + + checkFlags = [ + "--skip=subcommand::server::tests::status" # test fails if it built from source tarball + ]; + + meta = with lib; { + description = "Index, block explorer, and command-line wallet for Ordinals"; + homepage = "https://github.com/ordinals/ord"; + changelog = "https://github.com/ordinals/ord/blob/${src.rev}/CHANGELOG.md"; + license = licenses.cc0; + maintainers = with maintainers; [ xrelkd ]; + mainProgram = "ord"; + }; +} diff --git a/pkgs/by-name/ow/owncloud-client/package.nix b/pkgs/by-name/ow/owncloud-client/package.nix index 22666f20b3074..31f2b52b00bb2 100644 --- a/pkgs/by-name/ow/owncloud-client/package.nix +++ b/pkgs/by-name/ow/owncloud-client/package.nix @@ -17,13 +17,13 @@ stdenv.mkDerivation rec { pname = "owncloud-client"; - version = "5.3.0"; + version = "5.3.1"; src = fetchFromGitHub { owner = "owncloud"; repo = "client"; rev = "refs/tags/v${version}"; - hash = "sha256-2BM5XoblPwI2xr0e9VHiN4ePkyUx+NyMDY7HkWa9uZM="; + hash = "sha256-ot+2hxipeZ5eI6nPJ8XGE8gFMNQoblUq+koAFZpZDv4="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/pi/picom-pijulius/package.nix b/pkgs/by-name/pi/picom-pijulius/package.nix index bb41a7d221afb..998514b3f9815 100644 --- a/pkgs/by-name/pi/picom-pijulius/package.nix +++ b/pkgs/by-name/pi/picom-pijulius/package.nix @@ -1,18 +1,20 @@ { picom, lib, + writeShellScript, fetchFromGitHub, - pcre + pcre, + unstableGitUpdater }: picom.overrideAttrs (previousAttrs: { pname = "picom-pijulius"; - version = "8.2-unstable-2024-04-30"; + version = "8.2-unstable-2024-06-13"; src = fetchFromGitHub { owner = "pijulius"; repo = "picom"; - rev = "e7b14886ae644aaa657383f7c4f44be7797fd5f6"; - hash = "sha256-YQVp5HicO+jbvCYSY+hjDTnXCU6aS3aCvbux6NFcJ/Y="; + rev = "a0e818855daba0d2f11a298f7fd238f8a6049167"; + hash = "sha256-w1SWYhPfFGX2EumEe8UBZA3atW4jvW54GsMYLGg59Ys="; }; buildInputs = (previousAttrs.buildInputs or [ ]) ++ [ pcre ]; @@ -29,4 +31,11 @@ picom.overrideAttrs (previousAttrs: { homepage = "https://github.com/pijulius/picom"; maintainers = with lib.maintainers; [ YvesStraten ]; }; + + passthru.updateScript = unstableGitUpdater { + tagFormat = "v([A-Z]+)([a-z]+)|v([1-9]).([1-9])|v([1-9])-rc([1-9])"; + tagConverter = writeShellScript "picom-pijulius-tag-converter.sh" '' +sed -e 's/v//g' -e 's/([A-Z])([a-z])+/8.2/g' -e 's/-rc([1-9])|-rc//g' -e 's/0/8.2/g' +''; + }; }) diff --git a/pkgs/by-name/pi/pid1/package.nix b/pkgs/by-name/pi/pid1/package.nix index 76e4d3044cea3..d991d01be8487 100644 --- a/pkgs/by-name/pi/pid1/package.nix +++ b/pkgs/by-name/pi/pid1/package.nix @@ -2,16 +2,16 @@ rustPlatform.buildRustPackage rec { pname = "pid1"; - version = "0.1.2"; + version = "0.1.3"; src = fetchFromGitHub { owner = "fpco"; repo = "pid1-rs"; rev = "v${version}"; - hash = "sha256-BljIa+4BKI7WHlOhXfN/3VKMzs5G5E4tNlQ2oPpJV2g="; + hash = "sha256-2dnQj3AQxedyq1YvHKt+lVXNEtuB5sMRSCqX9YeifzI="; }; - cargoHash = "sha256-7PANlw/SKxyAqymfXIXFT/v3U0GCiGfgStguSr0lrqQ="; + cargoHash = "sha256-/KK9U1dgCLglgn/MJ7+sov4EEnY/nluEsz0ooMp6ggI="; meta = with lib; { description = "Signal handling and zombie reaping for PID1 process"; diff --git a/pkgs/by-name/po/powerpipe/package.nix b/pkgs/by-name/po/powerpipe/package.nix index ecc090646ad2d..353d2a5ba4932 100644 --- a/pkgs/by-name/po/powerpipe/package.nix +++ b/pkgs/by-name/po/powerpipe/package.nix @@ -11,16 +11,16 @@ buildGoModule rec { pname = "powerpipe"; - version = "0.3.1"; + version = "0.4.0"; src = fetchFromGitHub { owner = "turbot"; repo = "powerpipe"; rev = "refs/tags/v${version}"; - hash = "sha256-tvGCgpuWMCzBldgxf4caKiUe7EpraJJeOVBwNqU60oc="; + hash = "sha256-KJ024dIU0GmeHCFa/pbyFIA+LitaudHC+NBGg8yNWxM="; }; - vendorHash = "sha256-C3memfHNSlkiwhwB5zCXCtUOII3IjFD5FHGd8uPGmpU="; + vendorHash = "sha256-XALFXUeWrS4nt+ONToCfYXvLWuk7ZhLWvJidnATcWtM="; proxyVendor = true; nativeBuildInputs = [ diff --git a/pkgs/by-name/ra/radicale/package.nix b/pkgs/by-name/ra/radicale/package.nix index 64d85ea2b939b..719d49ab3a0e3 100644 --- a/pkgs/by-name/ra/radicale/package.nix +++ b/pkgs/by-name/ra/radicale/package.nix @@ -6,25 +6,25 @@ python3.pkgs.buildPythonApplication rec { pname = "radicale"; - version = "3.2.1"; + version = "3.2.2"; pyproject = true; src = fetchFromGitHub { owner = "Kozea"; repo = "Radicale"; - rev = "v${version}"; - hash = "sha256-OUwznn71xl8oWkw90fT1NYYZOuD83k+B5zLhygp1VQQ="; + rev = "v${version}-version"; + hash = "sha256-ZdcV2t2F2UgjGC+aTfynP2DbPRgzOIADDebY64nj3NA="; }; postPatch = '' sed -i '/addopts/d' setup.cfg ''; - nativeBuildInputs = with python3.pkgs; [ + build-system = with python3.pkgs; [ setuptools ]; - propagatedBuildInputs = with python3.pkgs; [ + dependencies = with python3.pkgs; [ defusedxml passlib vobject diff --git a/pkgs/applications/misc/sfwbar/default.nix b/pkgs/by-name/sf/sfwbar/package.nix index bc96dbe2c317a..712040333536d 100644 --- a/pkgs/applications/misc/sfwbar/default.nix +++ b/pkgs/by-name/sf/sfwbar/package.nix @@ -1,28 +1,31 @@ -{ lib -, stdenv -, fetchFromGitHub -, gtk3 -, meson -, ninja -, json_c -, pkg-config -, gtk-layer-shell -, libpulseaudio -, libmpdclient -, libxkbcommon -, alsa-lib -, makeWrapper -, +{ + lib, + stdenv, + fetchFromGitHub, + gtk3, + meson, + ninja, + json_c, + pkg-config, + gtk-layer-shell, + libpulseaudio, + libmpdclient, + libxkbcommon, + alsa-lib, + makeWrapper, }: -stdenv.mkDerivation rec { +let + version = "1.0_beta14"; +in +stdenv.mkDerivation { pname = "sfwbar"; - version = "1.0_beta13"; + inherit version; src = fetchFromGitHub { owner = "LBCrion"; - repo = pname; + repo = "sfwbar"; rev = "v${version}"; - hash = "sha256-7oiuTEqdXDReKdakJX6+HRaSi1XovM+MkHFkaFZtq64="; + hash = "sha256-4brP1SXaWq/L0D87rvlrWhLU1oFPSwNNxBSzRr4jsTM="; }; buildInputs = [ @@ -47,12 +50,16 @@ stdenv.mkDerivation rec { --suffix XDG_DATA_DIRS : $out/share ''; - meta = with lib; { + meta = { homepage = "https://github.com/LBCrion/sfwbar"; description = "Flexible taskbar application for wayland compositors, designed with a stacking layout in mind"; + changelog = "https://github.com/LBCrion/sfwbar/releases/tag/v${version}"; mainProgram = "sfwbar"; - platforms = platforms.linux; - maintainers = with maintainers; [ NotAShelf ]; - license = licenses.gpl3Only; + platforms = lib.platforms.linux; + maintainers = with lib.maintainers; [ + luftmensch-luftmensch + NotAShelf + ]; + license = lib.licenses.gpl3Only; }; } diff --git a/pkgs/by-name/sp/spacedrive/package.nix b/pkgs/by-name/sp/spacedrive/package.nix index 1466c3deaba51..dc738be669d96 100644 --- a/pkgs/by-name/sp/spacedrive/package.nix +++ b/pkgs/by-name/sp/spacedrive/package.nix @@ -1,73 +1,136 @@ -{ lib -, pkgs -, stdenv -, fetchurl -, appimageTools -, undmg -, nix-update-script +{ + lib, + stdenv, + fetchurl, + undmg, + nix-update-script, + #linux required + autoPatchelfHook, + dpkg, + gdk-pixbuf, + glib, + gst_all_1, + libsoup, + webkitgtk_4_1, + xdotool, }: let pname = "spacedrive"; - version = "0.2.14"; - - src = fetchurl { - aarch64-darwin = { - url = "https://github.com/spacedriveapp/spacedrive/releases/download/${version}/Spacedrive-darwin-aarch64.dmg"; - hash = "sha256-G0Ey7ewZeXegiqkAXFmS0MdaYllTphp7Buqs5/4/mWY="; - }; - x86_64-darwin = { - url = "https://github.com/spacedriveapp/spacedrive/releases/download/${version}/Spacedrive-darwin-x86_64.dmg"; - hash = "sha256-ypUDb94RlGqJfkf4htWKZ0UrGZ0SyCZrrAqtMuxDzDI="; - }; - x86_64-linux = { - url = "https://github.com/spacedriveapp/spacedrive/releases/download/${version}/Spacedrive-linux-x86_64.AppImage"; - hash = "sha256-DFJ1/uJW0BwEtJZxGpnvGC7U8YmsJTUbcuWEOAP2Bno="; - }; - }.${stdenv.system} or (throw "${pname}-${version}: ${stdenv.system} is unsupported."); + version = "0.3.1"; + + src = + fetchurl + { + aarch64-darwin = { + url = "https://github.com/spacedriveapp/spacedrive/releases/download/${version}/Spacedrive-darwin-aarch64.dmg"; + hash = "sha256-9E7h03zJtH8b6khDcbBsB46iVWwl48s+GJuBMOmEre4="; + }; + x86_64-darwin = { + url = "https://github.com/spacedriveapp/spacedrive/releases/download/${version}/Spacedrive-darwin-x86_64.dmg"; + hash = "sha256-h+B7tc6jXJUFNEMhG6ZNch+grtgUeAzfa37BDoZ6M8Q="; + }; + x86_64-linux = { + url = "https://github.com/spacedriveapp/spacedrive/releases/download/${version}/Spacedrive-linux-x86_64.deb"; + hash = "sha256-E1mOODG4YzBc0TPZJmKgrt/c5hp5LwzLaYPl+J5dnkg="; + }; + } + .${stdenv.system} or (throw "${pname}-${version}: ${stdenv.system} is unsupported."); meta = { description = "Open source file manager, powered by a virtual distributed filesystem"; homepage = "https://www.spacedrive.com"; changelog = "https://github.com/spacedriveapp/spacedrive/releases/tag/${version}"; - platforms = [ "aarch64-darwin" "x86_64-darwin" "x86_64-linux" ]; + platforms = [ + "aarch64-darwin" + "x86_64-darwin" + "x86_64-linux" + ]; license = lib.licenses.agpl3Plus; sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ]; - maintainers = with lib.maintainers; [ DataHearth heisfer mikaelfangel stepbrobd ]; + maintainers = with lib.maintainers; [ + DataHearth + heisfer + mikaelfangel + stepbrobd + ]; mainProgram = "spacedrive"; }; passthru.updateScript = nix-update-script { }; in -if stdenv.isDarwin then stdenv.mkDerivation -{ - inherit pname version src meta passthru; - - sourceRoot = "Spacedrive.app"; - - nativeBuildInputs = [ undmg ]; - - installPhase = '' - mkdir -p "$out/Applications/Spacedrive.app" - cp -r . "$out/Applications/Spacedrive.app" - mkdir -p "$out/bin" - ln -s "$out/Applications/Spacedrive.app/Contents/MacOS/Spacedrive" "$out/bin/spacedrive" - ''; -} -else appimageTools.wrapType2 { - inherit pname version src meta passthru; - - extraPkgs = pkgs: [ pkgs.libthai ]; - - extraInstallCommands = - let - appimageContents = appimageTools.extractType2 { inherit pname version src; }; - in - '' - # Install .desktop files - install -Dm444 ${appimageContents}/com.spacedrive.desktop -t $out/share/applications - install -Dm444 ${appimageContents}/spacedrive.png -t $out/share/pixmaps - substituteInPlace $out/share/applications/com.spacedrive.desktop \ - --replace 'Exec=usr/bin/spacedrive' 'Exec=spacedrive' +if stdenv.isDarwin then + stdenv.mkDerivation { + inherit + pname + version + src + meta + passthru + ; + + sourceRoot = "Spacedrive.app"; + + nativeBuildInputs = [ undmg ]; + + installPhase = '' + runHook preInstall + + mkdir -p "$out/Applications/Spacedrive.app" + cp -r . "$out/Applications/Spacedrive.app" + mkdir -p "$out/bin" + ln -s "$out/Applications/Spacedrive.app/Contents/MacOS/Spacedrive" "$out/bin/spacedrive" + + runHook postInstall + ''; + } + +else + stdenv.mkDerivation { + inherit + pname + version + src + meta + passthru + ; + + nativeBuildInputs = [ + autoPatchelfHook + dpkg + ]; + + # Depends: libc6, libxdo3, libwebkit2gtk-4.1-0, libgtk-3-0 + # Recommends: gstreamer1.0-plugins-ugly + # Suggests: gstreamer1.0-plugins-bad + buildInputs = [ + xdotool + glib + libsoup + webkitgtk_4_1 + gdk-pixbuf + gst_all_1.gst-plugins-ugly + gst_all_1.gst-plugins-bad + gst_all_1.gst-plugins-base + gst_all_1.gstreamer + ]; + + unpackPhase = '' + runHook preUnpack + + dpkg-deb -x $src . + + runHook postUnpack + ''; + + installPhase = '' + runHook preInstall + + mkdir -p $out/bin + cp -r usr/share $out/ + cp -r usr/lib $out/ + cp -r usr/bin $out/ + + runHook postInstall ''; -} + } diff --git a/pkgs/by-name/uc/uclibc-ng/package.nix b/pkgs/by-name/uc/uclibc-ng/package.nix index aee6f6f015f18..fb3e76c58b98c 100644 --- a/pkgs/by-name/uc/uclibc-ng/package.nix +++ b/pkgs/by-name/uc/uclibc-ng/package.nix @@ -1,5 +1,5 @@ { lib -, stdenv +, stdenvNoLibc , buildPackages , fetchurl , gitUpdater @@ -9,6 +9,7 @@ }: let + stdenv = stdenvNoLibc; isCross = (stdenv.buildPlatform != stdenv.hostPlatform); configParser = '' function parseconfig { diff --git a/pkgs/by-name/vi/violet/package.nix b/pkgs/by-name/vi/violet/package.nix index b7d89e7e48727..35e13eea544f8 100644 --- a/pkgs/by-name/vi/violet/package.nix +++ b/pkgs/by-name/vi/violet/package.nix @@ -10,13 +10,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "violet"; - version = "0.4.6"; + version = "0.5.0"; src = fetchFromGitHub { owner = "paullouisageneau"; repo = "violet"; rev = "v${finalAttrs.version}"; - hash = "sha256-a/WRFr6C6MWQBAG0PIDdSRVd4wnQgchPeTMoxUa2Qus="; + hash = "sha256-+cAgcGOMlhDdep8VuqP8DeELbMRXydRsD0xTyHqOuYM="; fetchSubmodules = true; }; diff --git a/pkgs/by-name/wl/wl-clipboard-rs/package.nix b/pkgs/by-name/wl/wl-clipboard-rs/package.nix index 509845a637ee2..2b881a35d2568 100644 --- a/pkgs/by-name/wl/wl-clipboard-rs/package.nix +++ b/pkgs/by-name/wl/wl-clipboard-rs/package.nix @@ -8,16 +8,16 @@ rustPlatform.buildRustPackage rec { pname = "wl-clipboard-rs"; - version = "0.8.1"; + version = "0.9.0"; src = fetchFromGitHub { owner = "YaLTeR"; repo = "wl-clipboard-rs"; rev = "v${version}"; - hash = "sha256-tNmpGBg21IuhKEzY15O2MKVpMB+eCjvRVwVUahADuJU="; + hash = "sha256-qwlR/PJivCgQTXe027zuQxq0iVJ3/BLg6LAD3w5tb9Y="; }; - cargoHash = "sha256-0Ix+fF1QO1KU8FIOb8EV4iYXe4S69sZOxCdxYccL8m0="; + cargoHash = "sha256-C3vhZq5IHtbfg2mYYdQRqaLSA0iSER8zRaKi72FCd+E="; cargoBuildFlags = [ "--package=wl-clipboard-rs" diff --git a/pkgs/data/documentation/man-pages/default.nix b/pkgs/data/documentation/man-pages/default.nix index 3ea67ac4501dd..1a58c4380a767 100644 --- a/pkgs/data/documentation/man-pages/default.nix +++ b/pkgs/data/documentation/man-pages/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "man-pages"; - version = "6.8"; + version = "6.9"; src = fetchurl { url = "mirror://kernel/linux/docs/man-pages/${pname}-${version}.tar.xz"; - hash = "sha256-ucawpCD4ORSL4EsvwTqFaSMTco1U1HxpyKE4N5Zl0iY="; + hash = "sha256-0Uyv9UzGYvNLG3C89i1OJ+TC/SYGcqNbbnSvcbP3H4g="; }; makeFlags = [ diff --git a/pkgs/desktops/cinnamon/xapp/default.nix b/pkgs/desktops/cinnamon/xapp/default.nix index b55830b56c45b..d6f4536eef8b3 100644 --- a/pkgs/desktops/cinnamon/xapp/default.nix +++ b/pkgs/desktops/cinnamon/xapp/default.nix @@ -22,7 +22,7 @@ stdenv.mkDerivation rec { pname = "xapp"; - version = "2.8.3"; + version = "2.8.4"; outputs = [ "out" "dev" ]; @@ -30,7 +30,7 @@ stdenv.mkDerivation rec { owner = "linuxmint"; repo = pname; rev = version; - hash = "sha256-uWBHCsKcW0vP2HYHQWXPrCSr5NsN2nYWAzBByxJBVrY="; + hash = "sha256-Q82UI2GEv2g01pcrvn8JBOf9FgjbG0c1qfSINx0CouQ="; }; # Recommended by upstream, which enables the build of xapp-debug. diff --git a/pkgs/desktops/mate/mate-panel/default.nix b/pkgs/desktops/mate/mate-panel/default.nix index 077abca208f2e..2762c0ce36057 100644 --- a/pkgs/desktops/mate/mate-panel/default.nix +++ b/pkgs/desktops/mate/mate-panel/default.nix @@ -25,11 +25,11 @@ stdenv.mkDerivation rec { pname = "mate-panel"; - version = "1.28.1"; + version = "1.28.2"; src = fetchurl { url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "UTPGT1lpro7uvm6LukUN6nkssL4G2a4cNuhWnS+FJLo="; + sha256 = "Z4pD6DeqJxhJQgT93xm7kGzwfl2A/S4d3nRfJtKtujM="; }; nativeBuildInputs = [ diff --git a/pkgs/development/compilers/ghc/8.10.7.nix b/pkgs/development/compilers/ghc/8.10.7.nix index cf867408dd315..c8669a2761f82 100644 --- a/pkgs/development/compilers/ghc/8.10.7.nix +++ b/pkgs/development/compilers/ghc/8.10.7.nix @@ -131,23 +131,44 @@ let targetCC = builtins.head toolsForTarget; - # Sometimes we have to dispatch between the bintools wrapper and the unwrapped - # derivation for certain tools depending on the platform. - bintoolsFor = { - # GHC needs install_name_tool on all darwin platforms. On aarch64-darwin it is - # part of the bintools wrapper (due to codesigning requirements), but not on - # x86_64-darwin. - install_name_tool = - if stdenv.targetPlatform.isAarch64 - then targetCC.bintools - else targetCC.bintools.bintools; - # Same goes for strip. - strip = - # TODO(@sternenseemann): also use wrapper if linker == "bfd" or "gold" - if stdenv.targetPlatform.isAarch64 && stdenv.targetPlatform.isDarwin - then targetCC.bintools - else targetCC.bintools.bintools; - }; + # toolPath calculates the absolute path to the name tool associated with a + # given `stdenv.cc` derivation, i.e. it picks the correct derivation to take + # the tool from (cc, cc.bintools, cc.bintools.bintools) and adds the correct + # subpath of the tool. + toolPath = name: cc: + let + tools = { + "cc" = cc; + "c++" = cc; + as = cc.bintools.bintools; + + ar = cc.bintools.bintools; + ranlib = cc.bintools.bintools; + nm = cc.bintools.bintools; + readelf = cc.bintools.bintools; + + ld = cc.bintools; + "ld.gold" = cc.bintools; + + otool = cc.bintools.bintools; + + # GHC needs install_name_tool on all darwin platforms. On aarch64-darwin it is + # part of the bintools wrapper (due to codesigning requirements), but not on + # x86_64-darwin. We decide based on target platform to have consistent tools + # across all GHC stages. + install_name_tool = + if stdenv.targetPlatform.isAarch64 + then cc.bintools + else cc.bintools.bintools; + # Same goes for strip. + strip = + # TODO(@sternenseemann): also use wrapper if linker == "bfd" or "gold" + if stdenv.targetPlatform.isAarch64 && stdenv.targetPlatform.isDarwin + then cc.bintools + else cc.bintools.bintools; + }.${name}; + in + "${tools}/bin/${tools.targetPrefix}${name}"; # Use gold either following the default, or to avoid the BFD linker due to some bugs / perf issues. # But we cannot avoid BFD when using musl libc due to https://sourceware.org/bugzilla/show_bug.cgi?id=23856 @@ -255,19 +276,19 @@ stdenv.mkDerivation (rec { done # GHC is a bit confused on its cross terminology, as these would normally be # the *host* tools. - export CC="${targetCC}/bin/${targetCC.targetPrefix}cc" - export CXX="${targetCC}/bin/${targetCC.targetPrefix}c++" + export CC="${toolPath "cc" targetCC}" + export CXX="${toolPath "c++" targetCC}" # Use gold to work around https://sourceware.org/bugzilla/show_bug.cgi?id=16177 - export LD="${targetCC.bintools}/bin/${targetCC.bintools.targetPrefix}ld${lib.optionalString useLdGold ".gold"}" - export AS="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}as" - export AR="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ar" - export NM="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}nm" - export RANLIB="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ranlib" - export READELF="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}readelf" - export STRIP="${bintoolsFor.strip}/bin/${bintoolsFor.strip.targetPrefix}strip" + export LD="${toolPath "ld${lib.optionalString useLdGold ".gold"}" targetCC}" + export AS="${toolPath "as" targetCC}" + export AR="${toolPath "ar" targetCC}" + export NM="${toolPath "nm" targetCC}" + export RANLIB="${toolPath "ranlib" targetCC}" + export READELF="${toolPath "readelf" targetCC}" + export STRIP="${toolPath "strip" targetCC}" '' + lib.optionalString (stdenv.targetPlatform.linker == "cctools") '' - export OTOOL="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}otool" - export INSTALL_NAME_TOOL="${bintoolsFor.install_name_tool}/bin/${bintoolsFor.install_name_tool.targetPrefix}install_name_tool" + export OTOOL="${toolPath "otool" targetCC}" + export INSTALL_NAME_TOOL="${toolPath "install_name_tool" targetCC}" '' + lib.optionalString useLLVM '' export LLC="${lib.getBin buildTargetLlvmPackages.llvm}/bin/llc" export OPT="${lib.getBin buildTargetLlvmPackages.llvm}/bin/opt" diff --git a/pkgs/development/compilers/ghc/9.4.8.fixme.nix b/pkgs/development/compilers/ghc/9.4.8.nix index a98d7404b7acf..a98d7404b7acf 100644 --- a/pkgs/development/compilers/ghc/9.4.8.fixme.nix +++ b/pkgs/development/compilers/ghc/9.4.8.nix diff --git a/pkgs/development/compilers/ghc/common-hadrian.nix b/pkgs/development/compilers/ghc/common-hadrian.nix index fcb5d43de7c0d..b5fef30332f7f 100644 --- a/pkgs/development/compilers/ghc/common-hadrian.nix +++ b/pkgs/development/compilers/ghc/common-hadrian.nix @@ -13,6 +13,7 @@ , pkgsBuildTarget , pkgsHostTarget , targetPackages +, fetchpatch # build-tools , bootPkgs @@ -170,6 +171,13 @@ then ./docs-sphinx-7-ghc98.patch else ./docs-sphinx-7.patch ) ] + ++ lib.optionals (lib.versionAtLeast version "9.6" && lib.versionOlder version "9.8") [ + (fetchpatch { + name = "fix-fully_static.patch"; + url = "https://gitlab.haskell.org/ghc/ghc/-/commit/1bb24432ff77e11a0340a7d8586e151e15bba2a1.diff"; + hash = "sha256-MpvTmFFsNiPDoOp9BhZyWeapeibQ77zgEV+xzZ1UAXs="; + }) + ] ++ lib.optionals (stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64) [ # Prevent the paths module from emitting symbols that we don't use # when building with separate outputs. @@ -259,23 +267,44 @@ let targetCC = builtins.head toolsForTarget; - # Sometimes we have to dispatch between the bintools wrapper and the unwrapped - # derivation for certain tools depending on the platform. - bintoolsFor = { - # GHC needs install_name_tool on all darwin platforms. On aarch64-darwin it is - # part of the bintools wrapper (due to codesigning requirements), but not on - # x86_64-darwin. - install_name_tool = - if stdenv.targetPlatform.isAarch64 - then targetCC.bintools - else targetCC.bintools.bintools; - # Same goes for strip. - strip = - # TODO(@sternenseemann): also use wrapper if linker == "bfd" or "gold" - if stdenv.targetPlatform.isAarch64 && stdenv.targetPlatform.isDarwin - then targetCC.bintools - else targetCC.bintools.bintools; - }; + # toolPath calculates the absolute path to the name tool associated with a + # given `stdenv.cc` derivation, i.e. it picks the correct derivation to take + # the tool from (cc, cc.bintools, cc.bintools.bintools) and adds the correct + # subpath of the tool. + toolPath = name: cc: + let + tools = { + "cc" = cc; + "c++" = cc; + as = cc.bintools.bintools; + + ar = cc.bintools.bintools; + ranlib = cc.bintools.bintools; + nm = cc.bintools.bintools; + readelf = cc.bintools.bintools; + + ld = cc.bintools; + "ld.gold" = cc.bintools; + + otool = cc.bintools.bintools; + + # GHC needs install_name_tool on all darwin platforms. On aarch64-darwin it is + # part of the bintools wrapper (due to codesigning requirements), but not on + # x86_64-darwin. We decide based on target platform to have consistent tools + # across all GHC stages. + install_name_tool = + if stdenv.targetPlatform.isAarch64 + then cc.bintools + else cc.bintools.bintools; + # Same goes for strip. + strip = + # TODO(@sternenseemann): also use wrapper if linker == "bfd" or "gold" + if stdenv.targetPlatform.isAarch64 && stdenv.targetPlatform.isDarwin + then cc.bintools + else cc.bintools.bintools; + }.${name}; + in + "${tools}/bin/${tools.targetPrefix}${name}"; # Use gold either following the default, or to avoid the BFD linker due to some bugs / perf issues. # But we cannot avoid BFD when using musl libc due to https://sourceware.org/bugzilla/show_bug.cgi?id=23856 @@ -321,19 +350,19 @@ stdenv.mkDerivation ({ done # GHC is a bit confused on its cross terminology, as these would normally be # the *host* tools. - export CC="${targetCC}/bin/${targetCC.targetPrefix}cc" - export CXX="${targetCC}/bin/${targetCC.targetPrefix}c++" + export CC="${toolPath "cc" targetCC}" + export CXX="${toolPath "c++" targetCC}" # Use gold to work around https://sourceware.org/bugzilla/show_bug.cgi?id=16177 - export LD="${targetCC.bintools}/bin/${targetCC.bintools.targetPrefix}ld${lib.optionalString useLdGold ".gold"}" - export AS="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}as" - export AR="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ar" - export NM="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}nm" - export RANLIB="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ranlib" - export READELF="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}readelf" - export STRIP="${bintoolsFor.strip}/bin/${bintoolsFor.strip.targetPrefix}strip" + export LD="${toolPath "ld${lib.optionalString useLdGold ".gold"}" targetCC}" + export AS="${toolPath "as" targetCC}" + export AR="${toolPath "ar" targetCC}" + export NM="${toolPath "nm" targetCC}" + export RANLIB="${toolPath "ranlib" targetCC}" + export READELF="${toolPath "readelf" targetCC}" + export STRIP="${toolPath "strip" targetCC}" '' + lib.optionalString (stdenv.targetPlatform.linker == "cctools") '' - export OTOOL="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}otool" - export INSTALL_NAME_TOOL="${bintoolsFor.install_name_tool}/bin/${bintoolsFor.install_name_tool.targetPrefix}install_name_tool" + export OTOOL="${toolPath "otool" targetCC}" + export INSTALL_NAME_TOOL="${toolPath "install_name_tool" targetCC}" '' + lib.optionalString useLLVM '' export LLC="${lib.getBin buildTargetLlvmPackages.llvm}/bin/llc" export OPT="${lib.getBin buildTargetLlvmPackages.llvm}/bin/opt" @@ -555,10 +584,6 @@ stdenv.mkDerivation ({ ] ++ lib.teams.haskell.members; timeout = 24 * 3600; inherit (ghc.meta) license platforms; - # https://github.com/NixOS/nixpkgs/issues/208959 - broken = - (lib.versionAtLeast version "9.6" && lib.versionOlder version "9.8") - && stdenv.targetPlatform.isStatic; }; dontStrip = targetPlatform.useAndroidPrebuilt || targetPlatform.isWasm; diff --git a/pkgs/development/compilers/ghc/common-make-native-bignum.nix b/pkgs/development/compilers/ghc/common-make-native-bignum.nix index 6142c76f64078..79fced444f562 100644 --- a/pkgs/development/compilers/ghc/common-make-native-bignum.nix +++ b/pkgs/development/compilers/ghc/common-make-native-bignum.nix @@ -136,23 +136,44 @@ let targetCC = builtins.head toolsForTarget; - # Sometimes we have to dispatch between the bintools wrapper and the unwrapped - # derivation for certain tools depending on the platform. - bintoolsFor = { - # GHC needs install_name_tool on all darwin platforms. On aarch64-darwin it is - # part of the bintools wrapper (due to codesigning requirements), but not on - # x86_64-darwin. - install_name_tool = - if stdenv.targetPlatform.isAarch64 - then targetCC.bintools - else targetCC.bintools.bintools; - # Same goes for strip. - strip = - # TODO(@sternenseemann): also use wrapper if linker == "bfd" or "gold" - if stdenv.targetPlatform.isAarch64 && stdenv.targetPlatform.isDarwin - then targetCC.bintools - else targetCC.bintools.bintools; - }; + # toolPath calculates the absolute path to the name tool associated with a + # given `stdenv.cc` derivation, i.e. it picks the correct derivation to take + # the tool from (cc, cc.bintools, cc.bintools.bintools) and adds the correct + # subpath of the tool. + toolPath = name: cc: + let + tools = { + "cc" = cc; + "c++" = cc; + as = cc.bintools.bintools; + + ar = cc.bintools.bintools; + ranlib = cc.bintools.bintools; + nm = cc.bintools.bintools; + readelf = cc.bintools.bintools; + + ld = cc.bintools; + "ld.gold" = cc.bintools; + + otool = cc.bintools.bintools; + + # GHC needs install_name_tool on all darwin platforms. On aarch64-darwin it is + # part of the bintools wrapper (due to codesigning requirements), but not on + # x86_64-darwin. We decide based on target platform to have consistent tools + # across all GHC stages. + install_name_tool = + if stdenv.targetPlatform.isAarch64 + then cc.bintools + else cc.bintools.bintools; + # Same goes for strip. + strip = + # TODO(@sternenseemann): also use wrapper if linker == "bfd" or "gold" + if stdenv.targetPlatform.isAarch64 && stdenv.targetPlatform.isDarwin + then cc.bintools + else cc.bintools.bintools; + }.${name}; + in + "${tools}/bin/${tools.targetPrefix}${name}"; # Use gold either following the default, or to avoid the BFD linker due to some bugs / perf issues. # But we cannot avoid BFD when using musl libc due to https://sourceware.org/bugzilla/show_bug.cgi?id=23856 @@ -265,19 +286,19 @@ stdenv.mkDerivation (rec { done # GHC is a bit confused on its cross terminology, as these would normally be # the *host* tools. - export CC="${targetCC}/bin/${targetCC.targetPrefix}cc" - export CXX="${targetCC}/bin/${targetCC.targetPrefix}c++" + export CC="${toolPath "cc" targetCC}" + export CXX="${toolPath "c++" targetCC}" # Use gold to work around https://sourceware.org/bugzilla/show_bug.cgi?id=16177 - export LD="${targetCC.bintools}/bin/${targetCC.bintools.targetPrefix}ld${lib.optionalString useLdGold ".gold"}" - export AS="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}as" - export AR="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ar" - export NM="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}nm" - export RANLIB="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ranlib" - export READELF="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}readelf" - export STRIP="${bintoolsFor.strip}/bin/${bintoolsFor.strip.targetPrefix}strip" + export LD="${toolPath "ld${lib.optionalString useLdGold ".gold"}" targetCC}" + export AS="${toolPath "as" targetCC}" + export AR="${toolPath "ar" targetCC}" + export NM="${toolPath "nm" targetCC}" + export RANLIB="${toolPath "ranlib" targetCC}" + export READELF="${toolPath "readelf" targetCC}" + export STRIP="${toolPath "strip" targetCC}" '' + lib.optionalString (stdenv.targetPlatform.linker == "cctools") '' - export OTOOL="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}otool" - export INSTALL_NAME_TOOL="${bintoolsFor.install_name_tool}/bin/${bintoolsFor.install_name_tool.targetPrefix}install_name_tool" + export OTOOL="${toolPath "otool" targetCC}" + export INSTALL_NAME_TOOL="${toolPath "install_name_tool" targetCC}" '' + lib.optionalString useLLVM '' export LLC="${lib.getBin buildTargetLlvmPackages.llvm}/bin/llc" export OPT="${lib.getBin buildTargetLlvmPackages.llvm}/bin/opt" diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix index cefce06d8431d..e1efb46422a37 100644 --- a/pkgs/development/haskell-modules/configuration-common.nix +++ b/pkgs/development/haskell-modules/configuration-common.nix @@ -234,10 +234,16 @@ self: super: { fused-effects-random = doJailbreak super.fused-effects-random; fused-effects-readline = doJailbreak super.fused-effects-readline; - # fix tests failure for base≥4.15 (https://github.com/kim/leveldb-haskell/pull/41) - leveldb-haskell = appendPatch (fetchpatch { - url = "https://github.com/kim/leveldb-haskell/commit/f5249081f589233890ddb1945ec548ca9fb717cf.patch"; - sha256 = "14gllipl28lqry73c5dnclsskzk1bsrrgazibl4lkl8z98j2csjb"; + leveldb-haskell = overrideCabal (drv: { + version = "2024-05-05-unstable"; + # Fix tests on mtl ≥ 2.3 + # https://github.com/kim/leveldb-haskell/pull/42 + src = pkgs.fetchFromGitHub { + owner = "kim"; + repo = "leveldb-haskell"; + rev = "3a505f3a7de0f5d14463538d7c2c9a9881a60eb9"; + sha256 = "sha256-okUn5ZuWcj8vPr0GWXvO1LygNCrDfttkDaUoOt+FLA0="; + }; }) super.leveldb-haskell; # Arion's test suite needs a Nixpkgs, which is cumbersome to do from Nixpkgs @@ -268,12 +274,6 @@ self: super: { sha256 = "1c7knpvxr7p8c159jkyk6w29653z5yzgjjqj11130bbb8mk9qhq7"; }) super.c2hsc; - # Some Hackage packages reference this attribute, which exists only in the - # GHCJS package set. We provide a dummy version here to fix potential - # evaluation errors. - ghcjs-base = null; - ghcjs-prim = null; - ghc-debug-client = doJailbreak super.ghc-debug-client; # Test failure. Tests also disabled in Stackage: @@ -971,12 +971,12 @@ self: super: { # See https://github.com/valderman/selda/issues/187 inherit (let mkSeldaPackage = name: overrideCabal (drv: { - version = "2023-02-05-unstable"; + version = "2024-05-05-unstable"; src = pkgs.fetchFromGitHub { owner = "valderman"; repo = "selda"; - rev = "ab9619db13b93867d1a244441bb4de03d3e1dadb"; - hash = "sha256-P0nqAYzbeTyEEgzMij/3mKcs++/p/Wgc7Y6bDudXt2U="; + rev = "50c3ba5c5da72bb758a4112363ba2fe1c0e968ea"; + hash = "sha256-LEAJsSsDL0mmVHntnI16fH8m5DmePfcU0hFw9ErqTgQ="; } + "/${name}"; }) super.${name}; in @@ -1367,18 +1367,17 @@ self: super: { ''; }) super.PortMidi; - # Fix for base >= 4.11 scat = overrideCabal (drv: { patches = [ - # Fix build with base >= 4.11 + # Fix build with base >= 4.11 (https://github.com/redelmann/scat/pull/6) (fetchpatch { url = "https://github.com/redelmann/scat/commit/429f22944b7634b8789cb3805292bcc2b23e3e9f.diff"; hash = "sha256-FLr1KfBaSYzI6MiZIBY1CkgAb5sThvvgjrSAN8EV0h4="; }) - # Fix build with vector >= 0.13 + # Fix build with vector >= 0.13, mtl >= 2.3 (https://github.com/redelmann/scat/pull/8) (fetchpatch { - url = "https://github.com/redelmann/scat/commit/e21cc9c17b5b605b5bc0aacad66d44bbe0beb8c4.diff"; - hash = "sha256-MifHb2EKZx8skOcs+2t54CzxAS4PaEC0OTEfq4yVXzk="; + url = "https://github.com/redelmann/scat/compare/e8e064f7e6a152fe25a6ccd743573a16974239d0..c6a3636548d628f32d8edc73a333188ce24141a7.patch"; + hash = "sha256-BU4MUn/TnZHpZBlX1vDHE7QZva5yhlLTb8zwpx7UScI"; }) ]; }) super.scat; @@ -1561,13 +1560,36 @@ self: super: { doJailbreak ]; - jsaddle-dom = overrideCabal (old: { - postPatch = old.postPatch or "" + '' - rm Setup.hs - ''; - }) super.jsaddle-dom; - jsaddle-hello = doJailbreak super.jsaddle-hello; - ghcjs-dom-hello = doJailbreak super.ghcjs-dom-hello; + ghcjs-dom-hello = appendPatches [ + (fetchpatch { + url = "https://github.com/ghcjs/ghcjs-dom-hello/commit/53991df6a4eba9f1e9633eb22f6a0486a79491c3.patch"; + sha256 = "sha256-HQeUgjvzYyY14+CDYiMahAMn7fBcy2d7p8/kqGq+rnI="; + }) + (fetchpatch { + url = "https://github.com/ghcjs/ghcjs-dom-hello/commit/d766d937121f7ea5c4c154bd533a1eae47f531c9.patch"; + sha256 = "sha256-QTkH+L+JMwGyuoqzHBnrokT7KzpHC4YiAWoeiaFBLUw="; + }) + (fetchpatch { + url = "https://github.com/ghcjs/ghcjs-dom-hello/commit/831464d995f4033c9aa84f9ed9fb37a268f34d4e.patch"; + sha256 = "sha256-hQMy+78geTuxd3kbdiyYqoAFrauu90HbpPi0EEKjMzM="; + }) + ] super.ghcjs-dom-hello; + + # Needs https://github.com/ghcjs/jsaddle-hello/pull/5 and hackage release + jsaddle-hello = appendPatches [ + (fetchpatch { + url = "https://github.com/ghcjs/jsaddle-hello/commit/c4de837675117b821c50a5079d20d84ec16ff26a.patch"; + sha256 = "sha256-NsM7QqNLt5V8i5bveYgMrawGnZVsIuAoJfBF75jBwV0="; + }) + (fetchpatch { + url = "https://github.com/ghcjs/jsaddle-hello/commit/5c437363833684ea951ec74a0d0fdf5b6fbaca85.patch"; + sha256 = "sha256-CUyZsts0FAQ3c8Z+zfvwbmlAJCMcidV80n8dA/SoRls="; + }) + (fetchpatch { + url = "https://github.com/ghcjs/jsaddle-hello/commit/e2da9e266fbfa8f7fcf3009ab6cfbf825a8bcf7a.patch"; + sha256 = "sha256-WL0CcnlMt6KI7MOZMg74fNN/I4gYSO3n+GiaXB2BOP0="; + }) + ] super.jsaddle-hello; # Too strict upper bounds on text lsql-csv = doJailbreak super.lsql-csv; @@ -1691,6 +1713,14 @@ self: super: { # Test suite fails to compile https://github.com/agrafix/Spock/issues/177 Spock = dontCheck super.Spock; + Spock-core = appendPatches [ + (fetchpatch { + url = "https://github.com/agrafix/Spock/commit/d0b51fa60a83bfa5c1b5fc8fced18001e7321701.patch"; + sha256 = "sha256-l9voiczOOdYVBP/BNEUvqARb21t0Rp2kpsNbRFUWSLg="; + stripLen = 1; + }) + ] (doJailbreak super.Spock-core); + # https://github.com/strake/filtrable.hs/issues/6 filtrable = doJailbreak super.filtrable; @@ -2647,18 +2677,6 @@ self: super: { # https://github.com/ngless-toolkit/ngless/issues/152 NGLess = dontCheck super.NGLess; - # Raise version bounds: https://github.com/well-typed/lens-sop/pull/4 - lens-sop = appendPatches [ - (fetchpatch { - url = "https://github.com/well-typed/lens-sop/commit/d8657f27c12191a7c0a91701c0fcd9a590e0090e.patch"; - sha256 = "sha256-9ODfbOb6Bs3EVTY9b7cUvkNmqzzZPWUmgmlAneaN3Tw="; - }) - (fetchpatch { - url = "https://github.com/well-typed/lens-sop/commit/b7ecffdeb836d19373871659e2f8cd24da6f7312.patch"; - sha256 = "sha256-hDUQ2fW9Qyom65YvtW9bsbz7XtueRmdsAbAB42D+gu4="; - }) - ] super.lens-sop; - # Raise version bounds: https://github.com/kosmikus/records-sop/pull/15 records-sop = appendPatch (fetchpatch { url = "https://github.com/kosmikus/records-sop/commit/fb149f453a816ff14d0cb20b3ea56b80ff49d9f1.patch"; diff --git a/pkgs/development/haskell-modules/configuration-darwin.nix b/pkgs/development/haskell-modules/configuration-darwin.nix index 5985d29f8b591..16e5d2613fb2e 100644 --- a/pkgs/development/haskell-modules/configuration-darwin.nix +++ b/pkgs/development/haskell-modules/configuration-darwin.nix @@ -323,6 +323,20 @@ self: super: ({ # Tests fail on macOS https://github.com/mrkkrp/zip/issues/112 zip = dontCheck super.zip; + warp = super.warp.overrideAttrs (drv: { + __darwinAllowLocalNetworking = true; + }); + + ghcjs-dom-hello = overrideCabal (drv: { + libraryHaskellDepends = with self; [ jsaddle jsaddle-warp ]; + executableHaskellDepends = with self; [ ghcjs-dom jsaddle-wkwebview ]; + }) super.ghcjs-dom-hello; + + jsaddle-hello = overrideCabal (drv: { + libraryHaskellDepends = with self; [ jsaddle lens ]; + executableHaskellDepends = with self; [ jsaddle-warp jsaddle-wkwebview ]; + }) super.jsaddle-hello; + jsaddle-wkwebview = overrideCabal (drv: { libraryFrameworkDepends = with pkgs.buildPackages.darwin.apple_sdk.frameworks; [ Cocoa WebKit ]; libraryHaskellDepends = with self; [ aeson data-default jsaddle ]; # cabal2nix doesn't add darwin-only deps diff --git a/pkgs/development/haskell-modules/configuration-ghc-9.8.x.nix b/pkgs/development/haskell-modules/configuration-ghc-9.8.x.nix index bf05ee9ef3ff7..c8750bc22631d 100644 --- a/pkgs/development/haskell-modules/configuration-ghc-9.8.x.nix +++ b/pkgs/development/haskell-modules/configuration-ghc-9.8.x.nix @@ -68,6 +68,7 @@ self: super: { stylish-haskell = self.stylish-haskell_0_14_6_0; hlint = self.hlint_3_8; ghc-syntax-highlighter = self.ghc-syntax-highlighter_0_0_11_0; + websockets = self.websockets_0_13_0_0; # A given major version of ghc-exactprint only supports one version of GHC. ghc-exactprint = self.ghc-exactprint_1_8_0_0; diff --git a/pkgs/development/haskell-modules/configuration-ghcjs.nix b/pkgs/development/haskell-modules/configuration-ghcjs-8.x.nix index c74fdb09232c2..3f6e399f795b8 100644 --- a/pkgs/development/haskell-modules/configuration-ghcjs.nix +++ b/pkgs/development/haskell-modules/configuration-ghcjs-8.x.nix @@ -24,6 +24,11 @@ self: super: aeson = self.aeson_1_5_6_0; }); + # Included in ghcjs itself + ghcjs-prim = null; + + ghcjs-websockets = markUnbroken super.ghcjs-websockets; + # GHCJS does not ship with the same core packages as GHC. # https://github.com/ghcjs/ghcjs/issues/676 stm = doJailbreak self.stm_2_5_3_1; diff --git a/pkgs/development/haskell-modules/configuration-ghcjs-9.x.nix b/pkgs/development/haskell-modules/configuration-ghcjs-9.x.nix new file mode 100644 index 0000000000000..3b1f8dc4558e1 --- /dev/null +++ b/pkgs/development/haskell-modules/configuration-ghcjs-9.x.nix @@ -0,0 +1,22 @@ +{ pkgs, haskellLib }: + +with haskellLib; + +# cabal2nix doesn't properly add dependencies conditional on arch(javascript) +(self: super: { + ghcjs-base = addBuildDepends (with self; [ + aeson + attoparsec + dlist + hashable + primitive + scientific + unordered-containers + vector + ]) super.ghcjs-base; + + ghcjs-dom = addBuildDepend self.ghcjs-dom-javascript super.ghcjs-dom; + ghcjs-dom-javascript = addBuildDepend self.ghcjs-base super.ghcjs-dom-javascript; + jsaddle = addBuildDepend self.ghcjs-base super.jsaddle; + jsaddle-dom = addBuildDepend self.ghcjs-base super.jsaddle-dom; +}) diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml index 7e743d3eacdf9..ebc065df7ef47 100644 --- a/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml +++ b/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml @@ -1995,11 +1995,11 @@ broken-packages: - ghc-internal # failure in job https://hydra.nixos.org/build/260723678 at 2024-05-25 - ghcitui # failure in job https://hydra.nixos.org/build/252737339 at 2024-03-16 - ghcjs-base-stub # timeout - - ghcjs-dom-javascript # failure in job https://hydra.nixos.org/build/255688382 at 2024-04-16 - ghcjs-dom-jsffi # failure in job https://hydra.nixos.org/build/233215225 at 2023-09-02 - ghcjs-fetch # timeout - ghcjs-promise # failure in job https://hydra.nixos.org/build/233243985 at 2023-09-02 - ghcjs-xhr # failure in job https://hydra.nixos.org/build/233235693 at 2023-09-02 + - ghcjs-websockets # Does not work on the js backend added in 9.6+, only on ghcjs, where we markUnbroken - ghc-justdoit # failure in job https://hydra.nixos.org/build/233221884 at 2023-09-02 - ghclive # failure in job https://hydra.nixos.org/build/233231592 at 2023-09-02 - ghc-man-completion # failure in job https://hydra.nixos.org/build/233245740 at 2023-09-02 @@ -2609,7 +2609,6 @@ broken-packages: - hledger-chart # failure in job https://hydra.nixos.org/build/233205387 at 2023-09-02 - hledger-diff # failure in job https://hydra.nixos.org/build/233199639 at 2023-09-02 - hledger-flow # failure in job https://hydra.nixos.org/build/233252169 at 2023-09-02 - - hledger-iadd # failure in updateAutotoolsGnuConfigScriptsPhase in job https://hydra.nixos.org/build/238288021 at 2023-10-21 - hledger-irr # failure in job https://hydra.nixos.org/build/233230276 at 2023-09-02 - hledger-makeitso # failure in job https://hydra.nixos.org/build/233213046 at 2023-09-02 - hledger-vty # failure in job https://hydra.nixos.org/build/233191782 at 2023-09-02 @@ -2897,7 +2896,6 @@ broken-packages: - HTicTacToe # failure in job https://hydra.nixos.org/build/233235397 at 2023-09-02 - htiled # failure in job https://hydra.nixos.org/build/233219305 at 2023-09-02 - htlset # failure in job https://hydra.nixos.org/build/233203886 at 2023-09-02 - - html-parse # failure in job https://hydra.nixos.org/build/233241759 at 2023-09-02 - html-rules # failure in job https://hydra.nixos.org/build/233200615 at 2023-09-02 - html-tokenizer # failure in job https://hydra.nixos.org/build/233243581 at 2023-09-02 - htoml # failure in job https://hydra.nixos.org/build/233246670 at 2023-09-02 @@ -3436,7 +3434,6 @@ broken-packages: - lens-process # failure in job https://hydra.nixos.org/build/233242948 at 2023-09-02 - lensref # failure in job https://hydra.nixos.org/build/233205479 at 2023-09-02 - lens-simple # failure in job https://hydra.nixos.org/build/233245452 at 2023-09-02 - - lens-sop # failure in job https://hydra.nixos.org/build/259961739 at 2024-05-19 - lens-tell # failure in job https://hydra.nixos.org/build/233234619 at 2023-09-02 - lens-text-encoding # failure in job https://hydra.nixos.org/build/233222713 at 2023-09-02 - lens-th-rewrite # failure in job https://hydra.nixos.org/build/233201025 at 2023-09-02 @@ -3448,7 +3445,6 @@ broken-packages: - lenz-template # failure in job https://hydra.nixos.org/build/233206822 at 2023-09-02 - less-arbitrary # failure in job https://hydra.nixos.org/build/233231412 at 2023-09-02 - Level0 # failure in job https://hydra.nixos.org/build/233220758 at 2023-09-02 - - leveldb-haskell # failure in job https://hydra.nixos.org/build/252739424 at 2024-03-16 - level-monad # failure in job https://hydra.nixos.org/build/233257036 at 2023-09-02 - levmar # failure in job https://hydra.nixos.org/build/233254731 at 2023-09-02 - lfst # failure in job https://hydra.nixos.org/build/233240622 at 2023-09-02 @@ -4813,7 +4809,6 @@ broken-packages: - pusher-ws # failure in job https://hydra.nixos.org/build/233204133 at 2023-09-02 - pushme # failure in job https://hydra.nixos.org/build/233212481 at 2023-09-02 - push-notifications # failure in job https://hydra.nixos.org/build/233199364 at 2023-09-02 - - push-notify-apn # failure in job https://hydra.nixos.org/build/260189652 at 2024-05-19 - pushover # failure in job https://hydra.nixos.org/build/252739908 at 2024-03-16 - putlenses # failure in job https://hydra.nixos.org/build/233197372 at 2023-09-02 - puzzle-draw # failure in job https://hydra.nixos.org/build/233204953 at 2023-09-02 @@ -5188,7 +5183,6 @@ broken-packages: - scale # failure in job https://hydra.nixos.org/build/233222189 at 2023-09-02 - scaleimage # failure in job https://hydra.nixos.org/build/233240688 at 2023-09-02 - scalendar # failure in job https://hydra.nixos.org/build/233206581 at 2023-09-02 - - scat # failure in job https://hydra.nixos.org/build/252730427 at 2024-03-16 - scc # failure in job https://hydra.nixos.org/build/233247446 at 2023-09-02 - scgi # failure in job https://hydra.nixos.org/build/233247314 at 2023-09-02 - schedevr # failure in job https://hydra.nixos.org/build/233240124 at 2023-09-02 @@ -5244,7 +5238,6 @@ broken-packages: - secure-sockets # failure in job https://hydra.nixos.org/build/233254170 at 2023-09-02 - secureUDP # failure in job https://hydra.nixos.org/build/233215410 at 2023-09-02 - SegmentTree # failure in job https://hydra.nixos.org/build/233216161 at 2023-09-02 - - selda # failure in job https://hydra.nixos.org/build/252735635 at 2024-03-16 - selda-postgresql # failure in job https://hydra.nixos.org/build/245539286 at 2024-01-02 - selectors # failure in job https://hydra.nixos.org/build/233227433 at 2023-09-02 - selenium # failure in job https://hydra.nixos.org/build/233214276 at 2023-09-02 @@ -5344,7 +5337,6 @@ broken-packages: - sessions # failure in job https://hydra.nixos.org/build/233214614 at 2023-09-02 - sessiontypes # failure in job https://hydra.nixos.org/build/233224975 at 2023-09-02 - setdown # failure in job https://hydra.nixos.org/build/241521053 at 2023-12-03 - - set-extra # failure in job https://hydra.nixos.org/build/252738545 at 2024-03-16 - setgame # failure in job https://hydra.nixos.org/build/233218664 at 2023-09-02 - set-of # failure in job https://hydra.nixos.org/build/233202960 at 2023-09-02 - setoid # failure in job https://hydra.nixos.org/build/233213744 at 2023-09-02 @@ -5607,7 +5599,6 @@ broken-packages: - splot # failure in job https://hydra.nixos.org/build/252715661 at 2024-03-16 - Spock-api-ghcjs # failure in job https://hydra.nixos.org/build/233246163 at 2023-09-02 - Spock-auth # failure in job https://hydra.nixos.org/build/233212125 at 2023-09-02 - - Spock-core # failure in job https://hydra.nixos.org/build/252720122 at 2024-03-16 - spoonutil # failure in job https://hydra.nixos.org/build/233257645 at 2023-09-02 - spotify # failure in job https://hydra.nixos.org/build/233254990 at 2023-09-02 - spoty # failure in job https://hydra.nixos.org/build/233233863 at 2023-09-02 diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml index 93eebf297e8e8..03dd4e728f4e4 100644 --- a/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml +++ b/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml @@ -152,6 +152,7 @@ package-maintainers: - ghcjs-dom - ghcjs-dom-hello - ghcjs-dom-javascript + - ghcjs-dom-jsaddle - haveibeenpwned - jsaddle - jsaddle-clib @@ -649,6 +650,24 @@ package-maintainers: - nix-tree zowoq: - ShellCheck + mpscholten: + - ihp-hsx + - push-notify-apn + - hs-pkpass + - raven-haskell + - stripe-concepts + - stripe-signature + - http2-client + - zip + - currencies + - string-random + - inflections + - pcre-heavy + - mmark + - mmark-ext + - typerep-map + - minio-hs + - smtp-mail unsupported-platforms: Allure: [ platforms.darwin ] @@ -670,7 +689,6 @@ unsupported-platforms: freenect: [ platforms.darwin ] FTGL: [ platforms.darwin ] fuzzytime: [ platforms.darwin ] # https://github.com/kamwitsta/fuzzytime/issues/2 - ghcjs-dom-hello: [ platforms.darwin ] ghc-gc-hook: [ platforms.darwin ] # requires C11 threads which Apple doesn't support gi-adwaita: [ platforms.darwin ] gi-dbusmenugtk3: [ platforms.darwin ] @@ -699,7 +717,6 @@ unsupported-platforms: intricacy: [ platforms.darwin ] # depends on mesa iwlib: [ platforms.darwin ] Jazzkell: [ platforms.darwin ] # depends on Euterpea - jsaddle-hello: [ platforms.darwin ] # depends on jsaddle-webkit2gtk jsaddle-webkit2gtk: [ platforms.darwin ] Kulitta: [ platforms.darwin ] # depends on Euterpea LambdaHack: [ platforms.darwin ] @@ -792,6 +809,8 @@ supported-platforms: geomancy: [ platforms.x86 ] # x86 intrinsics geomancy-layout: [ platforms.x86 ] # x86 intrinsics gi-gtkosxapplication: [ platforms.darwin ] + ghcjs-base: [ javascript-ghcjs ] + ghcjs-dom-javascript: [ javascript-ghcjs ] gtk-mac-integration: [ platforms.darwin ] gtk3-mac-integration: [ platforms.darwin ] halide-haskell: [ platforms.linux ] diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml index b048efbfb5455..02e2d5954d20f 100644 --- a/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml +++ b/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml @@ -378,11 +378,6 @@ dont-distribute-packages: - SourceGraph - SpacePrivateers - SpinCounter - - Spock - - Spock-api-server - - Spock-digestive - - Spock-lucid - - Spock-worker - StockholmAlignment - Strafunski-Sdf2Haskell - SybWidget @@ -670,7 +665,6 @@ dont-distribute-packages: - bip32 - birch-beer - bird - - bisc - biscuit-servant - bishbosh - bit-array @@ -2424,7 +2418,6 @@ dont-distribute-packages: - json-query - json-rpc-client - json-schema - - json-sop - json-spec-elm - json-spec-elm-servant - json-spec-openapi @@ -3575,8 +3568,6 @@ dont-distribute-packages: - secrm - sednaDBXML - seitz-symbol - - selda-json - - selda-sqlite - selenium-server - semantic-source - semantic-version diff --git a/pkgs/development/haskell-modules/default.nix b/pkgs/development/haskell-modules/default.nix index 3f8a0bb750c71..73ce1af7735a0 100644 --- a/pkgs/development/haskell-modules/default.nix +++ b/pkgs/development/haskell-modules/default.nix @@ -9,6 +9,7 @@ , configurationNix ? import ./configuration-nix.nix , configurationArm ? import ./configuration-arm.nix , configurationDarwin ? import ./configuration-darwin.nix +, configurationJS ? import ./configuration-ghcjs-9.x.nix }: let @@ -26,7 +27,10 @@ let (configurationArm { inherit pkgs haskellLib; }) ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ (configurationDarwin { inherit pkgs haskellLib; }) - ]; + ] ++ lib.optionals stdenv.hostPlatform.isGhcjs [ + (configurationJS { inherit pkgs haskellLib; }) + ] + ; extensions = lib.composeManyExtensions ([ (nonHackagePackages { inherit pkgs haskellLib; }) diff --git a/pkgs/development/haskell-modules/generic-builder.nix b/pkgs/development/haskell-modules/generic-builder.nix index 785ba249099bf..6c60efe1bce50 100644 --- a/pkgs/development/haskell-modules/generic-builder.nix +++ b/pkgs/development/haskell-modules/generic-builder.nix @@ -7,6 +7,13 @@ let isCross = stdenv.buildPlatform != stdenv.hostPlatform; + # Note that ghc.isGhcjs != stdenv.hostPlatform.isGhcjs. + # ghc.isGhcjs implies that we are using ghcjs, a project separate from GHC. + # (mere) stdenv.hostPlatform.isGhcjs means that we are using GHC's JavaScript + # backend. The latter is a normal cross compilation backend and needs little + # special accommodation. + outputsJS = ghc.isGhcjs or false || stdenv.hostPlatform.isGhcjs; + # Pass the "wrong" C compiler rather than none at all so packages that just # use the C preproccessor still work, see # https://github.com/haskell/cabal/issues/6466 for details. @@ -19,15 +26,11 @@ let fetchurl removeReferencesTo pkg-config coreutils gnugrep glibcLocales emscripten; + in { pname -# Note that ghc.isGhcjs != stdenv.hostPlatform.isGhcjs. -# ghc.isGhcjs implies that we are using ghcjs, a project separate from GHC. -# (mere) stdenv.hostPlatform.isGhcjs means that we are using GHC's JavaScript -# backend. The latter is a normal cross compilation backend and needs little -# special accommodation. -, dontStrip ? (ghc.isGhcjs or false || stdenv.hostPlatform.isGhcjs) +, dontStrip ? outputsJS , version, revision ? null , sha256 ? null , src ? fetchurl { url = "mirror://hackage/${pname}-${version}.tar.gz"; inherit sha256; } @@ -44,7 +47,7 @@ in , doHaddockQuickjump ? doHoogle , doInstallIntermediates ? false , editedCabalFile ? null -, enableLibraryProfiling ? !(ghc.isGhcjs or false) +, enableLibraryProfiling ? !outputsJS , enableExecutableProfiling ? false , profilingDetail ? "exported-functions" # TODO enable shared libs for cross-compiling @@ -223,7 +226,7 @@ let ] ++ optional (allPkgconfigDepends != []) "--with-pkg-config=${pkg-config.targetPrefix}pkg-config"; - parallelBuildingFlags = "-j$NIX_BUILD_CORES" + optionalString stdenv.isLinux " +RTS -A64M -RTS"; + makeGhcOptions = opts: lib.concatStringsSep " " (map (opt: "--ghc-option=${opt}") opts); buildFlagsString = optionalString (buildFlags != []) (" " + concatStringsSep " " buildFlags); @@ -241,8 +244,8 @@ let "--package-db=$packageConfDir" (optionalString (enableSharedExecutables && stdenv.isLinux) "--ghc-option=-optl=-Wl,-rpath=$out/${ghcLibdir}/${pname}-${version}") (optionalString (enableSharedExecutables && stdenv.isDarwin) "--ghc-option=-optl=-Wl,-headerpad_max_install_names") - (optionalString enableParallelBuilding "--ghc-options=${parallelBuildingFlags}") - (optionalString useCpphs "--with-cpphs=${cpphs}/bin/cpphs --ghc-options=-cpp --ghc-options=-pgmP${cpphs}/bin/cpphs --ghc-options=-optP--cpp") + (optionalString enableParallelBuilding (makeGhcOptions [ "-j$NIX_BUILD_CORES" "+RTS" "-A64M" "-RTS" ])) + (optionalString useCpphs ("--with-cpphs=${cpphs}/bin/cpphs " + (makeGhcOptions [ "-cpp" "-pgmP${cpphs}/bin/cpphs" "-optP--cpp" ]))) (enableFeature enableLibraryProfiling "library-profiling") (optionalString (enableExecutableProfiling || enableLibraryProfiling) "--profiling-detail=${profilingDetail}") (enableFeature enableExecutableProfiling "profiling") @@ -265,16 +268,14 @@ let ) ++ optionals enableSeparateBinOutput [ "--bindir=${binDir}" ] ++ optionals (doHaddockInterfaces && isLibrary) [ - "--ghc-options=-haddock" + "--ghc-option=-haddock" ]; postPhases = optional doInstallIntermediates "installIntermediatesPhase"; setupCompileFlags = [ (optionalString (!coreSetup) "-package-db=$setupPackageConfDir") - (optionalString enableParallelBuilding parallelBuildingFlags) "-threaded" # https://github.com/haskell/cabal/issues/2398 - "-rtsopts" # allow us to pass RTS flags to the generated Setup executable ]; isHaskellPkg = x: x ? isHaskellLibrary; diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix index 0a1efccb62a40..d05b86212b646 100644 --- a/pkgs/development/haskell-modules/hackage-packages.nix +++ b/pkgs/development/haskell-modules/hackage-packages.nix @@ -20331,7 +20331,6 @@ self: { ]; description = "Another Haskell web framework for rapid development"; license = lib.licenses.bsd3; - hydraPlatforms = lib.platforms.none; }) {}; "Spock-api" = callPackage @@ -20371,7 +20370,6 @@ self: { libraryHaskellDepends = [ base hvect mtl Spock-api Spock-core ]; description = "Another Haskell web framework for rapid development"; license = lib.licenses.bsd3; - hydraPlatforms = lib.platforms.none; }) {}; "Spock-auth" = callPackage @@ -20415,8 +20413,6 @@ self: { ]; description = "Another Haskell web framework for rapid development"; license = lib.licenses.bsd3; - hydraPlatforms = lib.platforms.none; - broken = true; }) {}; "Spock-digestive" = callPackage @@ -20433,7 +20429,6 @@ self: { ]; description = "Digestive functors support for Spock"; license = lib.licenses.mit; - hydraPlatforms = lib.platforms.none; }) {}; "Spock-lucid" = callPackage @@ -20445,7 +20440,6 @@ self: { libraryHaskellDepends = [ base lucid Spock transformers ]; description = "Lucid support for Spock"; license = lib.licenses.bsd3; - hydraPlatforms = lib.platforms.none; }) {}; "Spock-worker" = callPackage @@ -20463,7 +20457,6 @@ self: { testHaskellDepends = [ base containers HTF stm vector ]; description = "Background workers for Spock"; license = lib.licenses.mit; - hydraPlatforms = lib.platforms.none; }) {}; "SpreadsheetML" = callPackage @@ -50668,7 +50661,6 @@ self: { ]; description = "A small tool that clears cookies (and more)"; license = lib.licenses.gpl3Only; - hydraPlatforms = lib.platforms.none; mainProgram = "bisc"; }) {}; @@ -121353,6 +121345,7 @@ self: { sha256 = "1cx9jqpbr6b30qckp2zpsfk3swa58snjb79pq0l6485nvrxa9mls"; description = "base library for GHCJS"; license = lib.licenses.mit; + platforms = [ "javascript-ghcjs" ]; maintainers = [ lib.maintainers.alexfmpe ]; }) {}; @@ -121422,7 +121415,6 @@ self: { ]; description = "GHCJS DOM Hello World, an example package"; license = lib.licenses.mit; - badPlatforms = lib.platforms.darwin; maintainers = [ lib.maintainers.alexfmpe ]; }) {}; @@ -121434,9 +121426,8 @@ self: { sha256 = "0im7wn7bn43rhkblh0wn9angadbdvywsalfz0adr9pkwv6hvc8qs"; description = "DOM library using JSFFI and GHCJS"; license = lib.licenses.mit; - hydraPlatforms = lib.platforms.none; + platforms = [ "javascript-ghcjs" ]; maintainers = [ lib.maintainers.alexfmpe ]; - broken = true; }) {}; "ghcjs-dom-jsaddle" = callPackage @@ -121449,6 +121440,7 @@ self: { doHaddock = false; description = "DOM library that supports both GHCJS and GHC using jsaddle"; license = lib.licenses.mit; + maintainers = [ lib.maintainers.alexfmpe ]; }) {}; "ghcjs-dom-jsffi" = callPackage @@ -121573,6 +121565,8 @@ self: { ]; description = "Deprecated: use ghcjs-base's native websockets"; license = lib.licenses.mit; + hydraPlatforms = lib.platforms.none; + broken = true; }) {}; "ghcjs-xhr" = callPackage @@ -151711,9 +151705,7 @@ self: { testToolDepends = [ hspec-discover ]; description = "A terminal UI as drop-in replacement for hledger add"; license = lib.licenses.bsd3; - hydraPlatforms = lib.platforms.none; mainProgram = "hledger-iadd"; - broken = true; }) {}; "hledger-iadd_1_3_21" = callPackage @@ -151749,7 +151741,6 @@ self: { license = lib.licenses.bsd3; hydraPlatforms = lib.platforms.none; mainProgram = "hledger-iadd"; - broken = true; }) {}; "hledger-interest" = callPackage @@ -163899,8 +163890,6 @@ self: { ]; description = "A high-performance HTML tokenizer"; license = lib.licenses.bsd3; - hydraPlatforms = lib.platforms.none; - broken = true; }) {}; "html-parse-util" = callPackage @@ -178690,7 +178679,6 @@ self: { ]; description = "JSaddle Hello World, an example package"; license = lib.licenses.mit; - badPlatforms = lib.platforms.darwin; maintainers = [ lib.maintainers.alexfmpe ]; }) {}; @@ -179537,7 +179525,6 @@ self: { ]; description = "Generics JSON (de)serialization using generics-sop"; license = lib.licenses.bsd3; - hydraPlatforms = lib.platforms.none; maintainers = [ lib.maintainers.alexfmpe ]; }) {}; @@ -189161,9 +189148,7 @@ self: { ]; description = "Computing lenses generically using generics-sop"; license = lib.licenses.bsd3; - hydraPlatforms = lib.platforms.none; maintainers = [ lib.maintainers.alexfmpe ]; - broken = true; }) {}; "lens-tell" = callPackage @@ -189498,8 +189483,6 @@ self: { ]; description = "Haskell bindings to LevelDB"; license = lib.licenses.bsd3; - hydraPlatforms = lib.platforms.none; - broken = true; }) {inherit (pkgs) leveldb;}; "leveldb-haskell-fork" = callPackage @@ -249277,9 +249260,7 @@ self: { testHaskellDepends = [ aeson base hspec ]; description = "Send push notifications to mobile iOS devices"; license = lib.licenses.bsd3; - hydraPlatforms = lib.platforms.none; mainProgram = "sendapn"; - broken = true; }) {}; "push-notify-ccs" = callPackage @@ -267562,9 +267543,7 @@ self: { description = "Generates unique passwords for various websites from a single password"; license = lib.licenses.bsd3; platforms = lib.platforms.x86; - hydraPlatforms = lib.platforms.none; mainProgram = "scat"; - broken = true; }) {}; "scc" = callPackage @@ -269939,8 +269918,6 @@ self: { ]; description = "Multi-backend, high-level EDSL for interacting with SQL databases"; license = lib.licenses.mit; - hydraPlatforms = lib.platforms.none; - broken = true; }) {}; "selda-json" = callPackage @@ -269952,7 +269929,6 @@ self: { libraryHaskellDepends = [ aeson base bytestring selda text ]; description = "JSON support for the Selda database library"; license = lib.licenses.mit; - hydraPlatforms = lib.platforms.none; }) {}; "selda-postgresql" = callPackage @@ -269987,7 +269963,6 @@ self: { ]; description = "SQLite backend for the Selda database EDSL"; license = lib.licenses.mit; - hydraPlatforms = lib.platforms.none; }) {}; "select" = callPackage @@ -274945,8 +274920,6 @@ self: { libraryHaskellDepends = [ base containers mtl syb ]; description = "Functions that could be added to Data.Set."; license = lib.licenses.bsd3; - hydraPlatforms = lib.platforms.none; - broken = true; }) {}; "set-monad" = callPackage @@ -336488,7 +336461,6 @@ self: { ]; description = "Add CSP headers to Yesod apps"; license = lib.licenses.mit; - hydraPlatforms = lib.platforms.none; }) {}; "yesod-datatables" = callPackage diff --git a/pkgs/development/libraries/libdeltachat/Cargo.lock b/pkgs/development/libraries/libdeltachat/Cargo.lock index ae5294d3104f7..4f9efb6bec40c 100644 --- a/pkgs/development/libraries/libdeltachat/Cargo.lock +++ b/pkgs/development/libraries/libdeltachat/Cargo.lock @@ -17,9 +17,9 @@ dependencies = [ [[package]] name = "addr2line" -version = "0.21.0" +version = "0.22.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb" +checksum = "6e4503c46a5c0c7844e948c9a4d6acd9f50cccb4de1c48eb9e291ea17470c678" dependencies = [ "gimli", ] @@ -31,6 +31,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" [[package]] +name = "aead" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d122413f284cf2d62fb1b7db97e02edb8cda96d769b16e443a4f6195e35662b0" +dependencies = [ + "bytes", + "crypto-common", + "generic-array", +] + +[[package]] name = "aes" version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -55,9 +66,9 @@ dependencies = [ [[package]] name = "aho-corasick" -version = "1.1.2" +version = "1.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0" +checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" dependencies = [ "memchr", ] @@ -114,16 +125,58 @@ dependencies = [ ] [[package]] +name = "anstream" +version = "0.6.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d96bd03f33fe50a863e394ee9718a706f988b9079b20c3784fb726e7678b62fb" +dependencies = [ + "anstyle", + "anstyle-parse", + "anstyle-query", + "anstyle-wincon", + "colorchoice", + "utf8parse", +] + +[[package]] name = "anstyle" version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8901269c6307e8d93993578286ac0edf7f195079ffff5ebdeea6a59ffb7e36bc" [[package]] +name = "anstyle-parse" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c75ac65da39e5fe5ab759307499ddad880d724eed2f6ce5b5e8a26f4f387928c" +dependencies = [ + "utf8parse", +] + +[[package]] +name = "anstyle-query" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e28923312444cdd728e4738b3f9c9cac739500909bb3d3c94b43551b16517648" +dependencies = [ + "windows-sys 0.52.0", +] + +[[package]] +name = "anstyle-wincon" +version = "3.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1cd54b81ec8d6180e24654d0b371ad22fc3dd083b6ff8ba325b72e00c87660a7" +dependencies = [ + "anstyle", + "windows-sys 0.52.0", +] + +[[package]] name = "anyhow" -version = "1.0.80" +version = "1.0.86" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ad32ce52e4161730f7098c077cd2ed6229b5804ccf99e5366be1ab72a98b4e1" +checksum = "b3d1d046238990b9cf5bcde22a3fb3584ee5cf65fb2765f454ed428c7a0063da" dependencies = [ "backtrace", ] @@ -152,8 +205,24 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7f6fd5ddaf0351dff5b8da21b2fb4ff8e08ddd02857f0bf69c47639106c0fff0" dependencies = [ - "asn1-rs-derive", - "asn1-rs-impl", + "asn1-rs-derive 0.4.0", + "asn1-rs-impl 0.1.0", + "displaydoc", + "nom", + "num-traits", + "rusticata-macros", + "thiserror", + "time 0.3.34", +] + +[[package]] +name = "asn1-rs" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22ad1373757efa0f70ec53939aabc7152e1591cb485208052993070ac8d2429d" +dependencies = [ + "asn1-rs-derive 0.5.0", + "asn1-rs-impl 0.2.0", "displaydoc", "nom", "num-traits", @@ -171,7 +240,19 @@ dependencies = [ "proc-macro2", "quote", "syn 1.0.109", - "synstructure", + "synstructure 0.12.6", +] + +[[package]] +name = "asn1-rs-derive" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7378575ff571966e99a744addeff0bff98b8ada0dedf1956d59e634db95eaac1" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", + "synstructure 0.13.1", ] [[package]] @@ -186,6 +267,29 @@ dependencies = [ ] [[package]] +name = "asn1-rs-impl" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b18050c2cd6fe86c3a76584ef5e0baf286d038cda203eb6223df2cc413565f7" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "async-broadcast" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "258b52a1aa741b9f09783b2d86cf0aeeb617bbf847f6933340a39644227acbdb" +dependencies = [ + "event-listener 5.2.0", + "event-listener-strategy", + "futures-core", + "pin-project-lite", +] + +[[package]] name = "async-channel" version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -198,12 +302,11 @@ dependencies = [ [[package]] name = "async-channel" -version = "2.2.0" +version = "2.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f28243a43d821d11341ab73c80bed182dc015c514b951616cf79bd4af39af0c3" +checksum = "89b47800b0be77592da0afd425cc03468052844aff33b84e33cc696f64e77b6a" dependencies = [ "concurrent-queue", - "event-listener 5.2.0", "event-listener-strategy", "futures-core", "pin-project-lite", @@ -228,7 +331,7 @@ version = "0.9.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "98892ebee4c05fc66757e600a7466f0d9bfcde338f645d64add323789f26cb36" dependencies = [ - "async-channel 2.2.0", + "async-channel 2.3.1", "base64 0.21.7", "bytes", "chrono", @@ -267,9 +370,9 @@ dependencies = [ [[package]] name = "async-smtp" -version = "0.9.0" +version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8709c0d4432be428a88a06746689a9cb543e8e27ef7f61ca4d0455003a3d8c5b" +checksum = "928ea96f04e1260036cb01f82c1e5dc7c3b478e7b9463c87712297784ce3cdc6" dependencies = [ "anyhow", "base64 0.13.1", @@ -290,7 +393,7 @@ checksum = "c980ee35e870bd1a4d2c8294d4c04d0499e67bca1e4b5cefcc693c2fa00caea9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.66", ] [[package]] @@ -308,6 +411,17 @@ dependencies = [ ] [[package]] +name = "attohttpc" +version = "0.24.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8d9a9bf8b79a749ee0b911b91b671cc2b6c670bdbc7e3dfd537576ddc94bb2a2" +dependencies = [ + "http 0.2.12", + "log", + "url", +] + +[[package]] name = "autocfg" version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -315,9 +429,9 @@ checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" [[package]] name = "axum" -version = "0.7.4" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1236b4b292f6c4d6dc34604bb5120d85c3fe1d1aa596bd5cc52ca054d13e7b9e" +checksum = "3a6c9af12842a67734c9a2e355436e5d03b22383ed60cf13cd0c18fbfe3dcbcf" dependencies = [ "async-trait", "axum-core", @@ -341,7 +455,7 @@ dependencies = [ "serde_path_to_error", "serde_urlencoded", "sha1", - "sync_wrapper", + "sync_wrapper 1.0.0", "tokio", "tokio-tungstenite", "tower", @@ -365,17 +479,28 @@ dependencies = [ "mime", "pin-project-lite", "rustversion", - "sync_wrapper", + "sync_wrapper 0.1.2", "tower-layer", "tower-service", "tracing", ] [[package]] +name = "backoff" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b62ddb9cb1ec0a098ad4bbf9344d0713fa193ae1a80af55febcff2627b6a00c1" +dependencies = [ + "getrandom 0.2.12", + "instant", + "rand 0.8.5", +] + +[[package]] name = "backtrace" -version = "0.3.69" +version = "0.3.72" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837" +checksum = "17c6a35df3749d2e8bb1b7b21a976d82b15548788d2735b9d82f329268f71a11" dependencies = [ "addr2line", "cc", @@ -423,6 +548,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" [[package]] +name = "base64" +version = "0.22.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" + +[[package]] name = "base64ct" version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -456,6 +587,18 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf" [[package]] +name = "bitvec" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c" +dependencies = [ + "funty", + "radium", + "tap", + "wyz", +] + +[[package]] name = "blake3" version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -506,10 +649,16 @@ dependencies = [ ] [[package]] +name = "bounded-integer" +version = "0.5.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "78a6932c88f1d2c29533a3b8a5f5a2f84cc19c3339b431677c3160c5c2e6ca85" + +[[package]] name = "brotli" -version = "3.4.0" +version = "6.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "516074a47ef4bce09577a3b379392300159ce5b1ba2e501ff1c819950066100f" +checksum = "74f7971dbd9326d58187408ab83117d8ac1bb9c17b085fdacd1cf2f598719b6b" dependencies = [ "alloc-no-stdlib", "alloc-stdlib", @@ -518,9 +667,9 @@ dependencies = [ [[package]] name = "brotli-decompressor" -version = "2.5.1" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e2e4afe60d7dd600fdd3de8d0f08c2b7ec039712e3b6137ff98b7004e82de4f" +checksum = "e6221fe77a248b9117d431ad93761222e1cf8ff282d9d1d5d9f53d6299a1cf76" dependencies = [ "alloc-no-stdlib", "alloc-stdlib", @@ -568,6 +717,9 @@ name = "bytes" version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223" +dependencies = [ + "serde", +] [[package]] name = "camellia" @@ -627,12 +779,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.0.83" +version = "1.0.98" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0" -dependencies = [ - "libc", -] +checksum = "41c270e7540d725e65ac7f1b212ac8ce349719624d7bcff99f8e2e488e8cf03f" [[package]] name = "cfb-mode" @@ -650,6 +799,23 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" [[package]] +name = "cfg_aliases" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e" + +[[package]] +name = "chacha20" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3613f74bd2eac03dad61bd53dbe620703d4371614fe0bc3b9f04dd36fe4e818" +dependencies = [ + "cfg-if", + "cipher", + "cpufeatures", +] + +[[package]] name = "charset" version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -661,16 +827,17 @@ dependencies = [ [[package]] name = "chrono" -version = "0.4.34" +version = "0.4.38" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5bc015644b92d5890fab7489e49d21f879d5c990186827d42ec511919404f38b" +checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401" dependencies = [ "android-tzdata", "iana-time-zone", "js-sys", "num-traits", + "serde", "wasm-bindgen", - "windows-targets 0.52.4", + "windows-targets 0.52.5", ] [[package]] @@ -708,6 +875,7 @@ checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad" dependencies = [ "crypto-common", "inout", + "zeroize", ] [[package]] @@ -757,10 +925,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b" [[package]] +name = "colorchoice" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7" + +[[package]] name = "concurrent-queue" -version = "2.4.0" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d16048cd947b08fa32c24458a22f5dc5e835264f689f4f5653210c69fd107363" +checksum = "4ca0197aee26d1ae37445ee532fefce43251d24cc7c166799f4d46817f1d3973" dependencies = [ "crossbeam-utils", ] @@ -835,6 +1009,21 @@ dependencies = [ ] [[package]] +name = "crc" +version = "3.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "69e6e4d7b33a94f0991c26729976b10ebde1d34c3ee82408fb536164fa10d636" +dependencies = [ + "crc-catalog", +] + +[[package]] +name = "crc-catalog" +version = "2.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5" + +[[package]] name = "crc24" version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -949,10 +1138,43 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" dependencies = [ "generic-array", + "rand_core 0.6.4", "typenum", ] [[package]] +name = "crypto_box" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "16182b4f39a82ec8a6851155cc4c0cda3065bb1db33651726a29e1951de0f009" +dependencies = [ + "aead", + "chacha20", + "crypto_secretbox", + "curve25519-dalek 4.1.2", + "salsa20", + "serdect", + "subtle", + "zeroize", +] + +[[package]] +name = "crypto_secretbox" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9d6cf87adf719ddf43a805e92c6870a531aedda35ff640442cbaf8674e141e1" +dependencies = [ + "aead", + "chacha20", + "cipher", + "generic-array", + "poly1305", + "salsa20", + "subtle", + "zeroize", +] + +[[package]] name = "curve25519-dalek" version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -990,7 +1212,7 @@ checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.66", ] [[package]] @@ -1064,10 +1286,23 @@ dependencies = [ ] [[package]] +name = "dashmap" +version = "5.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856" +dependencies = [ + "cfg-if", + "hashbrown", + "lock_api", + "once_cell", + "parking_lot_core", +] + +[[package]] name = "data-encoding" -version = "2.5.0" +version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e962a19be5cfc3f3bf6dd8f61eb50107f356ad6270fbb3ed41476571db78be5" +checksum = "e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2" [[package]] name = "default-net" @@ -1075,33 +1310,35 @@ version = "0.14.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a4898b43aed56499fad6b294d15b3e76a51df68079bf492e5daae38ca084e003" dependencies = [ - "dlopen2", + "dlopen2 0.4.1", "libc", "memalloc", - "netlink-packet-core", - "netlink-packet-route", + "netlink-packet-core 0.5.0", + "netlink-packet-route 0.15.0", "netlink-sys", "once_cell", - "system-configuration", - "windows", + "system-configuration 0.5.1", + "windows 0.32.0", ] [[package]] name = "deltachat" -version = "1.136.3" +version = "1.140.2" dependencies = [ "ansi_term", "anyhow", - "async-channel 2.2.0", + "async-broadcast", + "async-channel 2.3.1", "async-imap", "async-native-tls", "async-smtp", "async_zip", "backtrace", - "base64 0.21.7", + "base64 0.22.1", "brotli", "chrono", "criterion", + "deltachat-contact-tools", "deltachat-time", "deltachat_derive", "email", @@ -1111,12 +1348,14 @@ dependencies = [ "fd-lock", "format-flowed", "futures", - "futures-lite", + "futures-lite 2.3.0", "hex", "hickory-resolver", "humansize", "image", "iroh", + "iroh-gossip", + "iroh-net", "kamadak-exif", "lettre_email", "libc", @@ -1127,21 +1366,19 @@ dependencies = [ "num-traits", "num_cpus", "once_cell", - "openssl-src", "parking_lot", "percent-encoding", "pgp", - "pin-project", "pretty_assertions", - "pretty_env_logger", "proptest", "qrcodegen", "quick-xml", + "quinn", "quoted_printable", "rand 0.8.5", "ratelimit", "regex", - "reqwest", + "reqwest 0.11.27", "rusqlite", "rust-hsluv", "sanitize-filename", @@ -1168,14 +1405,26 @@ dependencies = [ ] [[package]] +name = "deltachat-contact-tools" +version = "0.0.0" +dependencies = [ + "anyhow", + "chrono", + "once_cell", + "regex", + "rusqlite", +] + +[[package]] name = "deltachat-jsonrpc" -version = "1.136.3" +version = "1.140.2" dependencies = [ "anyhow", - "async-channel 2.2.0", + "async-channel 2.3.1", "axum", - "base64 0.21.7", + "base64 0.22.1", "deltachat", + "deltachat-contact-tools", "env_logger", "futures", "log", @@ -1193,33 +1442,33 @@ dependencies = [ [[package]] name = "deltachat-repl" -version = "1.136.3" +version = "1.140.2" dependencies = [ "ansi_term", "anyhow", "deltachat", "dirs", "log", - "pretty_env_logger", "rusqlite", "rustyline", "tokio", + "tracing-subscriber", ] [[package]] name = "deltachat-rpc-server" -version = "1.136.3" +version = "1.140.2" dependencies = [ "anyhow", "deltachat", "deltachat-jsonrpc", - "env_logger", - "futures-lite", + "futures-lite 2.3.0", "log", "serde", "serde_json", "tokio", "tokio-util", + "tracing-subscriber", "yerpc", ] @@ -1232,12 +1481,12 @@ name = "deltachat_derive" version = "2.0.0" dependencies = [ "quote", - "syn 2.0.52", + "syn 2.0.66", ] [[package]] name = "deltachat_ffi" -version = "1.136.3" +version = "1.140.2" dependencies = [ "anyhow", "deltachat", @@ -1260,7 +1509,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f1a467a65c5e759bce6e65eaf91cc29f466cdc57cb65777bd646872a8a1fd4de" dependencies = [ "const-oid", - "der_derive", + "der_derive 0.6.1", "pem-rfc7468 0.6.0", "zeroize", ] @@ -1272,6 +1521,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fffa369a668c8af7dbf8b5e56c9f744fbd399949ed171606040001947de40b1c" dependencies = [ "const-oid", + "der_derive 0.7.2", "pem-rfc7468 0.7.0", "zeroize", ] @@ -1282,7 +1532,21 @@ version = "8.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dbd676fbbab537128ef0278adb5576cf363cff6aa22a7b24effe97347cfab61e" dependencies = [ - "asn1-rs", + "asn1-rs 0.5.2", + "displaydoc", + "nom", + "num-bigint", + "num-traits", + "rusticata-macros", +] + +[[package]] +name = "der-parser" +version = "9.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5cd0a5c643689626bec213c4d8bd4d96acc8ffdb4ad4bb6bc16abf27d5f4b553" +dependencies = [ + "asn1-rs 0.6.1", "displaydoc", "nom", "num-bigint", @@ -1303,12 +1567,24 @@ dependencies = [ ] [[package]] +name = "der_derive" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5fe87ce4529967e0ba1dcf8450bab64d97dfd5010a6256187ffe2e43e6f0e049" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] name = "deranged" version = "0.3.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4" dependencies = [ "powerfmt", + "serde", ] [[package]] @@ -1356,6 +1632,27 @@ dependencies = [ ] [[package]] +name = "derive_more" +version = "1.0.0-beta.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f7abbfc297053be59290e3152f8cbcd52c8642e0728b69ee187d991d4c1af08d" +dependencies = [ + "derive_more-impl", +] + +[[package]] +name = "derive_more-impl" +version = "1.0.0-beta.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2bba3e9872d7c58ce7ef0fcf1844fcc3e23ef2a58377b50df35dd98e42a5726e" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", + "unicode-xid", +] + +[[package]] name = "des" version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -1441,7 +1738,7 @@ checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.66", ] [[package]] @@ -1457,6 +1754,17 @@ dependencies = [ ] [[package]] +name = "dlopen2" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09b4f5f101177ff01b8ec4ecc81eead416a8aa42819a2869311b3420fa114ffa" +dependencies = [ + "libc", + "once_cell", + "winapi", +] + +[[package]] name = "dlopen2_derive" version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -1484,6 +1792,24 @@ dependencies = [ ] [[package]] +name = "dtoa" +version = "1.0.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dcbb2bf8e87535c23f7a8a321e364ce21462d0ff10cb6407820e8e96dfff6653" + +[[package]] +name = "duct" +version = "0.13.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e4ab5718d1224b63252cd0c6f74f6480f9ffeb117438a2e0f5cf6d9a4798929c" +dependencies = [ + "libc", + "once_cell", + "os_pipe", + "shared_child", +] + +[[package]] name = "dyn-clone" version = "1.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -1532,6 +1858,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "115531babc129696a58c64a4fef0a8bf9e9698629fb97e9e40767d235cfbcd53" dependencies = [ "pkcs8 0.10.2", + "serde", "signature 2.2.0", ] @@ -1558,6 +1885,7 @@ checksum = "4a3daa8e81a3963a60642bcc1f90a670680bd4a77535faa384e9d1c79d620871" dependencies = [ "curve25519-dalek 4.1.2", "ed25519 2.2.3", + "rand_core 0.6.4", "serde", "sha2 0.10.8", "subtle", @@ -1750,7 +2078,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.66", ] [[package]] @@ -1763,20 +2091,50 @@ dependencies = [ "num-traits", "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.66", +] + +[[package]] +name = "enumflags2" +version = "0.7.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3278c9d5fb675e0a51dabcf4c0d355f692b064171535ba72361be1528a9d8e8d" +dependencies = [ + "enumflags2_derive", +] + +[[package]] +name = "enumflags2_derive" +version = "0.7.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c785274071b1b420972453b306eeca06acf4633829db4223b58a2a8c5953bc4" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "env_filter" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a009aa4810eb158359dda09d0c87378e4bbb89b5a801f016885a4707ba24f7ea" +dependencies = [ + "log", + "regex", ] [[package]] name = "env_logger" -version = "0.10.2" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4cd405aab171cb85d6735e5c8d9db038c17d3ca007a4d2c25f337935c3d90580" +checksum = "38b35839ba51819680ba087cd351788c9a3c476841207e0b8cee0b04722343b9" dependencies = [ + "anstream", + "anstyle", + "env_filter", "humantime", - "is-terminal", "log", - "regex", - "termcolor", ] [[package]] @@ -1786,6 +2144,21 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" [[package]] +name = "erased-serde" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c138974f9d5e7fe373eb04df7cae98833802ae4b11c24ac7039a21d5af4b26c" +dependencies = [ + "serde", +] + +[[package]] +name = "erased_set" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76a5aa24577083f8190ad401e376b55887c7cd9083ae95d83ceec5d28ea78125" + +[[package]] name = "errno" version = "0.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -1818,6 +2191,17 @@ checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0" [[package]] name = "event-listener" +version = "4.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67b215c49b2b248c855fb73579eb1f4f26c38ffdc12973e20e07b91d78d5646e" +dependencies = [ + "concurrent-queue", + "parking", + "pin-project-lite", +] + +[[package]] +name = "event-listener" version = "5.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2b5fb89194fa3cad959b833185b3063ba881dbfc7030680b314250779fb4cc91" @@ -1829,9 +2213,9 @@ dependencies = [ [[package]] name = "event-listener-strategy" -version = "0.5.0" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "feedafcaa9b749175d5ac357452a9d41ea2911da598fde46ce1fe02c37751291" +checksum = "0f214dc438f977e6d4e3500aaa277f5ad94ca83fbbd9b1a15713ce2344ccc5a1" dependencies = [ "event-listener 5.2.0", "pin-project-lite", @@ -1851,9 +2235,9 @@ checksum = "7360491ce676a36bf9bb3c56c1aa791658183a54d2744120f27285738d90465a" [[package]] name = "fast-socks5" -version = "0.9.5" +version = "0.9.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cbcc731f3c17a5053e07e6a2290918da75cd8b9b1217b419721f715674ac520c" +checksum = "f89f36d4ee12370d30d57b16c7e190950a1a916e7dbbb5fd5a412f5ef913fe84" dependencies = [ "anyhow", "async-trait", @@ -1874,6 +2258,15 @@ dependencies = [ [[package]] name = "fastrand" +version = "1.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be" +dependencies = [ + "instant", +] + +[[package]] +name = "fastrand" version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5" @@ -1993,6 +2386,12 @@ name = "format-flowed" version = "1.0.0" [[package]] +name = "funty" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" + +[[package]] name = "futures" version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -2008,6 +2407,17 @@ dependencies = [ ] [[package]] +name = "futures-buffered" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "02dcae03ee5afa5ea17b1aebc793806b8ddfc6dc500e0b8e8e1eb30b9dad22c0" +dependencies = [ + "futures-core", + "futures-util", + "pin-project-lite", +] + +[[package]] name = "futures-channel" version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -2018,6 +2428,20 @@ dependencies = [ ] [[package]] +name = "futures-concurrency" +version = "7.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "51ee14e256b9143bfafbf2fddeede6f396650bacf95d06fc1b3f2b503df129a0" +dependencies = [ + "bitvec", + "futures-core", + "futures-lite 1.13.0", + "pin-project", + "slab", + "smallvec", +] + +[[package]] name = "futures-core" version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -2042,11 +2466,26 @@ checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1" [[package]] name = "futures-lite" -version = "2.2.0" +version = "1.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "445ba825b27408685aaecefd65178908c36c6e96aaf6d8599419d46e624192ba" +checksum = "49a9d51ce47660b1e808d3c990b4709f2f415d928835a17dfd16991515c46bce" dependencies = [ - "fastrand", + "fastrand 1.9.0", + "futures-core", + "futures-io", + "memchr", + "parking", + "pin-project-lite", + "waker-fn", +] + +[[package]] +name = "futures-lite" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "52527eb5074e35e9339c6b4e8d12600c7128b68fb25dcb9fa9dec18f7c25f3a5" +dependencies = [ + "fastrand 2.0.1", "futures-core", "futures-io", "parking", @@ -2061,7 +2500,7 @@ checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" dependencies = [ "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.66", ] [[package]] @@ -2077,6 +2516,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004" [[package]] +name = "futures-timer" +version = "3.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f288b0a4f20f9a56b5d1da57e2227c661b7b16168e2f72365f57b63326e29b24" + +[[package]] name = "futures-util" version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -2095,6 +2540,22 @@ dependencies = [ ] [[package]] +name = "genawaiter" +version = "0.99.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c86bd0361bcbde39b13475e6e36cb24c329964aa2611be285289d1e4b751c1a0" +dependencies = [ + "futures-core", + "genawaiter-macro", +] + +[[package]] +name = "genawaiter-macro" +version = "0.99.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b32dfe1fdfc0bbde1f22a5da25355514b5e450c33a6af6770884c8750aedfbc" + +[[package]] name = "generic-array" version = "0.14.7" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -2141,9 +2602,35 @@ dependencies = [ [[package]] name = "gimli" -version = "0.28.1" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253" +checksum = "40ecd4077b5ae9fd2e9e169b102c6c330d0605168eb0e8bf79952b256dbefffd" + +[[package]] +name = "glob" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" + +[[package]] +name = "governor" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68a7f542ee6b35af73b06abc0dad1c1bae89964e4e253bc4b587b91c9637867b" +dependencies = [ + "cfg-if", + "dashmap", + "futures", + "futures-timer", + "no-std-compat", + "nonzero_ext", + "parking_lot", + "portable-atomic", + "quanta", + "rand 0.8.5", + "smallvec", + "spinning_top", +] [[package]] name = "group" @@ -2169,9 +2656,9 @@ dependencies = [ [[package]] name = "h2" -version = "0.3.24" +version = "0.3.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb2c4422095b67ee78da96fbb51a4cc413b3b25883c7717ff7ca1ab31022c9c9" +checksum = "81fe527a889e1532da5c525686d96d4c2e74cdd345badf8dfef9f6b39dd5f5e8" dependencies = [ "bytes", "fnv", @@ -2187,25 +2674,6 @@ dependencies = [ ] [[package]] -name = "h2" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31d030e59af851932b72ceebadf4a2b5986dba4c3b99dd2493f8273a0f151943" -dependencies = [ - "bytes", - "fnv", - "futures-core", - "futures-sink", - "futures-util", - "http 1.1.0", - "indexmap", - "slab", - "tokio", - "tokio-util", - "tracing", -] - -[[package]] name = "half" version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -2278,9 +2746,9 @@ dependencies = [ [[package]] name = "hickory-resolver" -version = "0.24.0" +version = "0.24.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35b8f021164e6a984c9030023544c57789c51760065cd510572fedcfb04164e8" +checksum = "28757f23aa75c98f254cf0405e6d8c25b831b32921b050a66692427679b1f243" dependencies = [ "cfg-if", "futures-util", @@ -2316,6 +2784,22 @@ dependencies = [ ] [[package]] +name = "hmac-sha1" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6b05da5b9e5d4720bfb691eebb2b9d42da3570745da71eac8a1f5bb7e59aab88" +dependencies = [ + "hmac", + "sha1", +] + +[[package]] +name = "hmac-sha256" +version = "1.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3688e69b38018fec1557254f64c8dc2cc8ec502890182f395dbb0aa997aa5735" + +[[package]] name = "home" version = "0.5.9" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -2336,6 +2820,12 @@ dependencies = [ ] [[package]] +name = "hostname-validator" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f558a64ac9af88b5ba400d99b579451af0d39c6d360980045b91aac966d705e2" + +[[package]] name = "http" version = "0.2.12" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -2405,9 +2895,9 @@ checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" [[package]] name = "human-panic" -version = "1.2.3" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4f016c89920bbb30951a8405ecacbb4540db5524313b9445736e7e1855cf370" +checksum = "a4c5d0e9120f6bca6120d142c7ede1ba376dd6bf276d69dd3dbe6cbeb7824179" dependencies = [ "backtrace", "os_info", @@ -2442,7 +2932,7 @@ dependencies = [ "futures-channel", "futures-core", "futures-util", - "h2 0.3.24", + "h2", "http 0.2.12", "http-body 0.4.6", "httparse", @@ -2465,7 +2955,6 @@ dependencies = [ "bytes", "futures-channel", "futures-util", - "h2 0.4.2", "http 1.1.0", "http-body 1.0.0", "httparse", @@ -2474,6 +2963,38 @@ dependencies = [ "pin-project-lite", "smallvec", "tokio", + "want", +] + +[[package]] +name = "hyper-rustls" +version = "0.24.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590" +dependencies = [ + "futures-util", + "http 0.2.12", + "hyper 0.14.28", + "rustls 0.21.11", + "tokio", + "tokio-rustls 0.24.1", +] + +[[package]] +name = "hyper-rustls" +version = "0.26.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a0bea761b46ae2b24eb4aef630d8d1c398157b6fc29e6350ecf090a0b70c952c" +dependencies = [ + "futures-util", + "http 1.1.0", + "hyper 1.2.0", + "hyper-util", + "rustls 0.22.4", + "rustls-pki-types", + "tokio", + "tokio-rustls 0.25.0", + "tower-service", ] [[package]] @@ -2496,6 +3017,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ca38ef113da30126bbff9cd1705f9273e15d45498615d138b0c20279ac7a76aa" dependencies = [ "bytes", + "futures-channel", "futures-util", "http 1.1.0", "http-body 1.0.0", @@ -2503,6 +3025,9 @@ dependencies = [ "pin-project-lite", "socket2", "tokio", + "tower", + "tower-service", + "tracing", ] [[package]] @@ -2516,7 +3041,7 @@ dependencies = [ "iana-time-zone-haiku", "js-sys", "wasm-bindgen", - "windows-core", + "windows-core 0.52.0", ] [[package]] @@ -2564,25 +3089,56 @@ dependencies = [ ] [[package]] +name = "igd-next" +version = "0.14.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "064d90fec10d541084e7b39ead8875a5a80d9114a2b18791565253bae25f49e4" +dependencies = [ + "async-trait", + "attohttpc", + "bytes", + "futures", + "http 0.2.12", + "hyper 0.14.28", + "log", + "rand 0.8.5", + "tokio", + "url", + "xmltree", +] + +[[package]] name = "image" -version = "0.24.9" +version = "0.25.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5690139d2f55868e080017335e4b94cb7414274c74f1669c84fb5feba2c9f69d" +checksum = "fd54d660e773627692c524beaad361aca785a4f9f5730ce91f42aabe5bce3d11" dependencies = [ "bytemuck", "byteorder", "color_quant", "gif", - "jpeg-decoder", + "image-webp", "num-traits", "png", + "zune-core", + "zune-jpeg", +] + +[[package]] +name = "image-webp" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a84a25dcae3ac487bc24ef280f9e20c79c9b1a3e5e32cbed3041d1c514aa87c" +dependencies = [ + "byteorder", + "thiserror", ] [[package]] name = "imap-proto" -version = "0.16.4" +version = "0.16.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22e70cd66882c8cb1c9802096ba75212822153c51478dc61621e1a22f6c92361" +checksum = "de555d9526462b6f9ece826a26fb7c67eca9a0245bd9ff84fa91972a5d5d8856" dependencies = [ "nom", ] @@ -2607,6 +3163,15 @@ dependencies = [ ] [[package]] +name = "instant" +version = "0.1.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c" +dependencies = [ + "cfg-if", +] + +[[package]] name = "ipconfig" version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -2615,7 +3180,7 @@ dependencies = [ "socket2", "widestring", "windows-sys 0.48.0", - "winreg", + "winreg 0.50.0", ] [[package]] @@ -2637,7 +3202,7 @@ dependencies = [ "bytes", "default-net", "der 0.6.1", - "derive_more", + "derive_more 0.99.17", "dirs-next", "ed25519-dalek 1.0.1", "futures", @@ -2648,13 +3213,13 @@ dependencies = [ "quic-rpc", "quinn", "rand 0.7.3", - "rcgen", + "rcgen 0.10.0", "ring 0.16.20", - "rustls", - "rustls-webpki", + "rustls 0.21.11", + "rustls-webpki 0.101.7", "serde", "serde-error", - "ssh-key", + "ssh-key 0.5.1", "tempfile", "thiserror", "tokio", @@ -2664,11 +3229,224 @@ dependencies = [ "tracing-futures", "tracing-subscriber", "walkdir", - "x509-parser", + "x509-parser 0.14.0", "zeroize", ] [[package]] +name = "iroh-base" +version = "0.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1be0b442ed44d20905cf77c673169906c883e05c829e3fb303b131e925139fc" +dependencies = [ + "aead", + "anyhow", + "crypto_box", + "data-encoding", + "derive_more 1.0.0-beta.6", + "ed25519-dalek 2.1.1", + "getrandom 0.2.12", + "hex", + "iroh-blake3", + "once_cell", + "postcard", + "rand 0.8.5", + "rand_core 0.6.4", + "serde", + "serde-error", + "ssh-key 0.6.6", + "thiserror", + "ttl_cache", + "url", + "zeroize", +] + +[[package]] +name = "iroh-blake3" +version = "1.4.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "efbba31f40a650f58fa28dd585a8ca76d8ae3ba63aacab4c8269004a0c803930" +dependencies = [ + "arrayref", + "arrayvec", + "cc", + "cfg-if", + "constant_time_eq", +] + +[[package]] +name = "iroh-gossip" +version = "0.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "857aa77a0b29283edf99224bd12cd739684c5873e639b85adb38b8d1d777162d" +dependencies = [ + "anyhow", + "bytes", + "derive_more 1.0.0-beta.6", + "ed25519-dalek 2.1.1", + "futures-lite 2.3.0", + "genawaiter", + "indexmap", + "iroh-base", + "iroh-blake3", + "iroh-metrics", + "iroh-net", + "postcard", + "rand 0.8.5", + "rand_core 0.6.4", + "serde", + "tokio", + "tokio-util", + "tracing", +] + +[[package]] +name = "iroh-metrics" +version = "0.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd54b9cf342b2618efc8d3ff6cdcd083fa5a2cf6cc78bb473bd32e228eabb40e" +dependencies = [ + "anyhow", + "erased_set", + "http-body-util", + "hyper 1.2.0", + "hyper-util", + "once_cell", + "prometheus-client", + "reqwest 0.12.4", + "serde", + "struct_iterable", + "time 0.3.34", + "tokio", + "tracing", +] + +[[package]] +name = "iroh-net" +version = "0.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4a744000e6c5704479eeb4751eb23b9b8e7e56a0fc484beb8831694fc93e378f" +dependencies = [ + "aead", + "anyhow", + "axum", + "backoff", + "base64 0.22.1", + "bytes", + "der 0.7.8", + "derive_more 1.0.0-beta.6", + "duct", + "flume", + "futures-buffered", + "futures-concurrency", + "futures-lite 2.3.0", + "futures-sink", + "futures-util", + "governor", + "hex", + "hickory-proto", + "hickory-resolver", + "hostname", + "http 1.1.0", + "http-body-util", + "hyper 1.2.0", + "hyper-util", + "igd-next", + "iroh-base", + "iroh-metrics", + "iroh-quinn", + "iroh-quinn-proto", + "iroh-quinn-udp", + "libc", + "netdev", + "netlink-packet-core 0.7.0", + "netlink-packet-route 0.17.1", + "netlink-sys", + "num_enum", + "once_cell", + "parking_lot", + "pin-project", + "pkarr", + "postcard", + "rand 0.8.5", + "rand_core 0.6.4", + "rcgen 0.12.1", + "reqwest 0.12.4", + "ring 0.17.8", + "rtnetlink", + "rustls 0.21.11", + "rustls-webpki 0.101.7", + "serde", + "smallvec", + "socket2", + "strum", + "stun-rs", + "surge-ping", + "thiserror", + "time 0.3.34", + "tokio", + "tokio-rustls 0.24.1", + "tokio-rustls-acme", + "tokio-util", + "tracing", + "url", + "watchable", + "webpki-roots 0.25.4", + "windows 0.51.1", + "wmi", + "x509-parser 0.15.1", + "z32", +] + +[[package]] +name = "iroh-quinn" +version = "0.10.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "906875956feb75d3d41d708ddaffeb11fdb10cd05f23efbcb17600037e411779" +dependencies = [ + "bytes", + "iroh-quinn-proto", + "iroh-quinn-udp", + "pin-project-lite", + "rustc-hash", + "rustls 0.21.11", + "thiserror", + "tokio", + "tracing", +] + +[[package]] +name = "iroh-quinn-proto" +version = "0.10.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c6bf92478805e67f2320459285496e1137edf5171411001a0d4d85f9bbafb792" +dependencies = [ + "bytes", + "rand 0.8.5", + "ring 0.17.8", + "rustc-hash", + "rustls 0.21.11", + "rustls-native-certs", + "slab", + "thiserror", + "tinyvec", + "tracing", +] + +[[package]] +name = "iroh-quinn-udp" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "edc7915b3a31f08ee0bc02f73f4d61a5d5be146a1081ef7f70622a11627fd314" +dependencies = [ + "bytes", + "libc", + "socket2", + "tracing", + "windows-sys 0.48.0", +] + +[[package]] name = "is-terminal" version = "0.4.12" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -2701,12 +3479,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c" [[package]] -name = "jpeg-decoder" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5d4a7da358eff58addd2877a45865158f0d78c911d43a5784ceb7bbf52833b0" - -[[package]] name = "js-sys" version = "0.3.69" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -2782,9 +3554,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.153" +version = "0.2.155" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd" +checksum = "97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c" [[package]] name = "libm" @@ -2854,9 +3626,9 @@ dependencies = [ [[package]] name = "mailparse" -version = "0.14.1" +version = "0.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d096594926cab442e054e047eb8c1402f7d5b2272573b97ba68aa40629f9757" +checksum = "3da03d5980411a724e8aaf7b61a7b5e386ec55a7fb49ee3d0ff79efc7e5e7c7e" dependencies = [ "charset", "data-encoding", @@ -2895,6 +3667,12 @@ dependencies = [ ] [[package]] +name = "md5" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "490cc448043f947bae3cbee9c203358d62dbee0db12107a74be5c30ccfd09771" + +[[package]] name = "memalloc" version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -2973,6 +3751,23 @@ dependencies = [ ] [[package]] +name = "netdev" +version = "0.25.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb353f5a5a852d5cc779c1c80bec0bd14a696ef832f3a761cb10091802c37109" +dependencies = [ + "dlopen2 0.5.0", + "libc", + "memalloc", + "netlink-packet-core 0.7.0", + "netlink-packet-route 0.17.1", + "netlink-sys", + "once_cell", + "system-configuration 0.6.0", + "windows 0.54.0", +] + +[[package]] name = "netlink-packet-core" version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -2985,6 +3780,17 @@ dependencies = [ ] [[package]] +name = "netlink-packet-core" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72724faf704479d67b388da142b186f916188505e7e0b26719019c525882eda4" +dependencies = [ + "anyhow", + "byteorder", + "netlink-packet-utils", +] + +[[package]] name = "netlink-packet-route" version = "0.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -2994,7 +3800,21 @@ dependencies = [ "bitflags 1.3.2", "byteorder", "libc", - "netlink-packet-core", + "netlink-packet-core 0.5.0", + "netlink-packet-utils", +] + +[[package]] +name = "netlink-packet-route" +version = "0.17.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "053998cea5a306971f88580d0829e90f270f940befd7cf928da179d4187a5a66" +dependencies = [ + "anyhow", + "bitflags 1.3.2", + "byteorder", + "libc", + "netlink-packet-core 0.7.0", "netlink-packet-utils", ] @@ -3011,14 +3831,31 @@ dependencies = [ ] [[package]] +name = "netlink-proto" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "86b33524dc0968bfad349684447bfce6db937a9ac3332a1fe60c0c5a5ce63f21" +dependencies = [ + "bytes", + "futures", + "log", + "netlink-packet-core 0.7.0", + "netlink-sys", + "thiserror", + "tokio", +] + +[[package]] name = "netlink-sys" version = "0.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6471bf08e7ac0135876a9581bf3217ef0333c191c128d34878079f42ee150411" dependencies = [ "bytes", + "futures", "libc", "log", + "tokio", ] [[package]] @@ -3032,16 +3869,40 @@ dependencies = [ [[package]] name = "nix" -version = "0.27.1" +version = "0.26.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "598beaf3cc6fdd9a5dfb1630c2800c7acd31df7aaf0f565796fba2b53ca1af1b" +dependencies = [ + "bitflags 1.3.2", + "cfg-if", + "libc", +] + +[[package]] +name = "nix" +version = "0.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2eb04e9c688eff1c89d72b407f168cf79bb9e867a9d3323ed6c01519eb9cc053" +checksum = "ab2156c4fce2f8df6c499cc1c763e4394b7482525bf2a9701c9d79d215f519e4" dependencies = [ "bitflags 2.4.2", "cfg-if", + "cfg_aliases", "libc", ] [[package]] +name = "no-std-compat" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b93853da6d84c2e3c7d730d6473e8817692dd89be387eb01b94d7f108ecb5b8c" + +[[package]] +name = "no-std-net" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43794a0ace135be66a25d3ae77d41b91615fb68ae937f904090203e81f755b65" + +[[package]] name = "nom" version = "7.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -3052,6 +3913,12 @@ dependencies = [ ] [[package]] +name = "nonzero_ext" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38bf9645c8b145698bb0b18a4637dcacbc421ea49bef2317e4fd8065a387cf21" + +[[package]] name = "ntapi" version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -3113,7 +3980,7 @@ checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202" dependencies = [ "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.66", ] [[package]] @@ -3138,9 +4005,9 @@ dependencies = [ [[package]] name = "num-traits" -version = "0.2.18" +version = "0.2.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a" +checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" dependencies = [ "autocfg", "libm", @@ -3174,14 +4041,14 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.66", ] [[package]] name = "object" -version = "0.32.2" +version = "0.35.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441" +checksum = "b8ec7ab813848ba4522158d5517a6093db1ded27575b070f4177b8d12b41db5e" dependencies = [ "memchr", ] @@ -3192,7 +4059,16 @@ version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9bedf36ffb6ba96c2eb7144ef6270557b52e54b20c0a8e1eb2ff99a6c6959bff" dependencies = [ - "asn1-rs", + "asn1-rs 0.5.2", +] + +[[package]] +name = "oid-registry" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1c958dd45046245b9c3c2547369bb634eb461670b2e7e0de552905801a648d1d" +dependencies = [ + "asn1-rs 0.6.1", ] [[package]] @@ -3215,9 +4091,9 @@ checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" [[package]] name = "openssl" -version = "0.10.63" +version = "0.10.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15c9d69dd87a29568d4d017cfe8ec518706046a05184e5aea92d0af890b803c8" +checksum = "95a0481286a310808298130d22dd1fef0fa571e05a8f44ec801801e84b216b1f" dependencies = [ "bitflags 2.4.2", "cfg-if", @@ -3236,7 +4112,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.66", ] [[package]] @@ -3247,18 +4123,18 @@ checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" [[package]] name = "openssl-src" -version = "300.1.6+3.1.4" +version = "300.3.0+3.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "439fac53e092cd7442a3660c85dde4643ab3b5bd39040912388dcdabf6b88085" +checksum = "eba8804a1c5765b18c4b3f907e6897ebabeedebc9830e1a0046c4a4cf44663e1" dependencies = [ "cc", ] [[package]] name = "openssl-sys" -version = "0.9.99" +version = "0.9.102" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22e1bf214306098e4832460f797824c05d25aacdf896f64a985fb0fd992454ae" +checksum = "c597637d56fbc83893a35eb0dd04b2b8e7a50c91e64e9493e398b5df4fb45fa2" dependencies = [ "cc", "libc", @@ -3285,6 +4161,16 @@ dependencies = [ ] [[package]] +name = "os_pipe" +version = "1.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57119c3b893986491ec9aa85056780d3a0f3cf4da7cc09dd3650dbd6c6738fb9" +dependencies = [ + "libc", + "windows-sys 0.52.0", +] + +[[package]] name = "overload" version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -3337,6 +4223,20 @@ dependencies = [ ] [[package]] +name = "p521" +version = "0.13.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fc9e2161f1f215afdfce23677034ae137bbd45016a880c2eb3ba8eb95f085b2" +dependencies = [ + "base16ct 0.2.0", + "ecdsa 0.16.9", + "elliptic-curve 0.13.8", + "primeorder", + "rand_core 0.6.4", + "sha2 0.10.8", +] + +[[package]] name = "parking" version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -3344,9 +4244,9 @@ checksum = "bb813b8af86854136c6922af0598d719255ecb2179515e6e7730d468f05c9cae" [[package]] name = "parking_lot" -version = "0.12.1" +version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" +checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27" dependencies = [ "lock_api", "parking_lot_core", @@ -3381,6 +4281,16 @@ dependencies = [ ] [[package]] +name = "pem" +version = "3.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e459365e590736a54c3fa561947c84837534b8e9af6fc5bf781307e82658fae" +dependencies = [ + "base64 0.22.1", + "serde", +] + +[[package]] name = "pem-rfc7468" version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -3405,6 +4315,51 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" [[package]] +name = "pest" +version = "2.7.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "560131c633294438da9f7c4b08189194b20946c8274c6b9e38881a7874dc8ee8" +dependencies = [ + "memchr", + "thiserror", + "ucd-trie", +] + +[[package]] +name = "pest_derive" +version = "2.7.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26293c9193fbca7b1a3bf9b79dc1e388e927e6cacaa78b4a3ab705a1d3d41459" +dependencies = [ + "pest", + "pest_generator", +] + +[[package]] +name = "pest_generator" +version = "2.7.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3ec22af7d3fb470a85dd2ca96b7c577a1eb4ef6f1683a9fe9a8c16e136c04687" +dependencies = [ + "pest", + "pest_meta", + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "pest_meta" +version = "2.7.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d7a240022f37c361ec1878d646fc5b7d7c4d28d5946e1a80ad5a7a4f4ca0bdcd" +dependencies = [ + "once_cell", + "pest", + "sha2 0.10.8", +] + +[[package]] name = "pgp" version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -3462,22 +4417,22 @@ dependencies = [ [[package]] name = "pin-project" -version = "1.1.4" +version = "1.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0302c4a0442c456bd56f841aee5c3bfd17967563f6fadc9ceb9f9c23cf3807e0" +checksum = "b6bf43b791c5b9e34c3d182969b4abb522f9343702850a2e57f460d00d09b4b3" dependencies = [ "pin-project-internal", ] [[package]] name = "pin-project-internal" -version = "1.1.4" +version = "1.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "266c042b60c9c76b8d53061e52b2e0d1116abc57cefc8c5cd671619a56ac3690" +checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965" dependencies = [ "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.66", ] [[package]] @@ -3493,6 +4448,23 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" [[package]] +name = "pkarr" +version = "1.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "242ae92dfb9d2ba3aaa9caf4723e72043bc50729ad05a763771771ba03196ffb" +dependencies = [ + "bytes", + "ed25519-dalek 2.1.1", + "rand 0.8.5", + "reqwest 0.11.27", + "self_cell", + "simple-dns", + "thiserror", + "url", + "z32", +] + +[[package]] name = "pkcs1" version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -3576,6 +4548,48 @@ dependencies = [ ] [[package]] +name = "pnet_base" +version = "0.34.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fe4cf6fb3ab38b68d01ab2aea03ed3d1132b4868fa4e06285f29f16da01c5f4c" +dependencies = [ + "no-std-net", +] + +[[package]] +name = "pnet_macros" +version = "0.34.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "688b17499eee04a0408aca0aa5cba5fc86401d7216de8a63fdf7a4c227871804" +dependencies = [ + "proc-macro2", + "quote", + "regex", + "syn 2.0.66", +] + +[[package]] +name = "pnet_macros_support" +version = "0.34.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eea925b72f4bd37f8eab0f221bbe4c78b63498350c983ffa9dd4bcde7e030f56" +dependencies = [ + "pnet_base", +] + +[[package]] +name = "pnet_packet" +version = "0.34.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a9a005825396b7fe7a38a8e288dbc342d5034dac80c15212436424fef8ea90ba" +dependencies = [ + "glob", + "pnet_base", + "pnet_macros", + "pnet_macros_support", +] + +[[package]] name = "png" version = "0.17.13" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -3589,6 +4603,17 @@ dependencies = [ ] [[package]] +name = "poly1305" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8159bd90725d2df49889a078b54f4f79e87f1f8a8444194cdca81d38f5393abf" +dependencies = [ + "cpufeatures", + "opaque-debug", + "universal-hash", +] + +[[package]] name = "portable-atomic" version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -3631,23 +4656,47 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" [[package]] -name = "pretty_assertions" -version = "1.4.0" +name = "precis-core" +version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af7cee1a6c8a5b9208b3cb1061f10c0cb689087b3d8ce85fb9d2dd7a29b6ba66" +checksum = "d73e9dd26361c32e7cd13d1032bb01c4e26a23287274e8a4e2f228cf2c9ff77b" dependencies = [ - "diff", - "yansi", + "precis-tools", + "ucd-parse", + "unicode-normalization", ] [[package]] -name = "pretty_env_logger" -version = "0.5.0" +name = "precis-profiles" +version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "865724d4dbe39d9f3dd3b52b88d859d66bcb2d6a0acfd5ea68a65fb66d4bdc1c" +checksum = "bde4bd6624c60cb0abe2bea1dbdbb9085f629a853861e64df4abb099f8076ad4" dependencies = [ - "env_logger", - "log", + "lazy_static", + "precis-core", + "precis-tools", + "unicode-normalization", +] + +[[package]] +name = "precis-tools" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d07ecadec70b0f560f09abf815ae0ee1a940d38d2354c938ba7229ac7c9f5f52" +dependencies = [ + "lazy_static", + "regex", + "ucd-parse", +] + +[[package]] +name = "pretty_assertions" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af7cee1a6c8a5b9208b3cb1061f10c0cb689087b3d8ce85fb9d2dd7a29b6ba66" +dependencies = [ + "diff", + "yansi", ] [[package]] @@ -3694,14 +4743,37 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.78" +version = "1.0.85" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2422ad645d89c99f8f3e6b88a9fdeca7fabeac836b1002371c4367c8f984aae" +checksum = "22244ce15aa966053a896d1accb3a6e68469b97c7f33f284b99f0d576879fc23" dependencies = [ "unicode-ident", ] [[package]] +name = "prometheus-client" +version = "0.22.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c1ca959da22a332509f2a73ae9e5f23f9dcfc31fd3a54d71f159495bd5909baa" +dependencies = [ + "dtoa", + "itoa", + "parking_lot", + "prometheus-client-derive-encode", +] + +[[package]] +name = "prometheus-client-derive-encode" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "440f724eba9f6996b75d63681b0a92b06947f1457076d503a4d2e2c8f56442b8" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] name = "proptest" version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -3724,6 +4796,21 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4339fc7a1021c9c1621d87f5e3505f2805c8c105420ba2f2a4df86814590c142" [[package]] +name = "quanta" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e5167a477619228a0b284fac2674e3c388cba90631d7b7de620e6f1fcd08da5" +dependencies = [ + "crossbeam-utils", + "libc", + "once_cell", + "raw-cpuid", + "wasi 0.11.0+wasi-snapshot-preview1", + "web-sys", + "winapi", +] + +[[package]] name = "quic-rpc" version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -3768,7 +4855,7 @@ dependencies = [ "quinn-proto", "quinn-udp", "rustc-hash", - "rustls", + "rustls 0.21.11", "thiserror", "tokio", "tracing", @@ -3784,7 +4871,7 @@ dependencies = [ "rand 0.8.5", "ring 0.16.20", "rustc-hash", - "rustls", + "rustls 0.21.11", "rustls-native-certs", "slab", "thiserror", @@ -3807,20 +4894,36 @@ dependencies = [ [[package]] name = "quote" -version = "1.0.35" +version = "1.0.36" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef" +checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7" dependencies = [ "proc-macro2", ] [[package]] +name = "quoted-string-parser" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0dc75379cdb451d001f1cb667a9f74e8b355e9df84cc5193513cbe62b96fc5e9" +dependencies = [ + "pest", + "pest_derive", +] + +[[package]] name = "quoted_printable" version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "79ec282e887b434b68c18fe5c121d38e72a5cf35119b59e54ec5b992ea9c8eb0" [[package]] +name = "radium" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" + +[[package]] name = "radix_trie" version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -3915,6 +5018,15 @@ name = "ratelimit" version = "1.0.0" [[package]] +name = "raw-cpuid" +version = "11.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e29830cbb1290e404f24c73af91c5d8d631ce7e128691e9477556b540cd01ecd" +dependencies = [ + "bitflags 2.4.2", +] + +[[package]] name = "rayon" version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -3940,13 +5052,25 @@ version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ffbe84efe2f38dea12e9bfc1f65377fdf03e53a18cb3b995faedf7934c7e785b" dependencies = [ - "pem", + "pem 1.1.1", "ring 0.16.20", "time 0.3.34", "yasna", ] [[package]] +name = "rcgen" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "48406db8ac1f3cbc7dcdb56ec355343817958a356ff430259bb07baf7607e1e1" +dependencies = [ + "pem 3.0.4", + "ring 0.17.8", + "time 0.3.34", + "yasna", +] + +[[package]] name = "redox_syscall" version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -3977,9 +5101,9 @@ dependencies = [ [[package]] name = "regex" -version = "1.10.3" +version = "1.10.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b62dbe01f0b06f9d8dc7d49e05a0785f153b00b2c227856282f671e0318c9b15" +checksum = "c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c" dependencies = [ "aho-corasick", "memchr", @@ -4008,6 +5132,12 @@ dependencies = [ ] [[package]] +name = "regex-lite" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "30b661b2f27137bdbc16f00eda72866a92bb28af1753ffbd56744fb6e2e9cd8e" + +[[package]] name = "regex-syntax" version = "0.6.29" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -4021,19 +5151,20 @@ checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f" [[package]] name = "reqwest" -version = "0.11.24" +version = "0.11.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6920094eb85afde5e4a138be3f2de8bbdf28000f0029e72c45025a56b042251" +checksum = "dd67538700a17451e7cba03ac727fb961abb7607553461627b97de0b89cf4a62" dependencies = [ "base64 0.21.7", "bytes", "encoding_rs", "futures-core", "futures-util", - "h2 0.3.24", + "h2", "http 0.2.12", "http-body 0.4.6", "hyper 0.14.28", + "hyper-rustls 0.24.2", "hyper-tls", "ipnet", "js-sys", @@ -4043,20 +5174,64 @@ dependencies = [ "once_cell", "percent-encoding", "pin-project-lite", - "rustls-pemfile", + "rustls 0.21.11", + "rustls-pemfile 1.0.4", "serde", "serde_json", "serde_urlencoded", - "sync_wrapper", - "system-configuration", + "sync_wrapper 0.1.2", + "system-configuration 0.5.1", "tokio", "tokio-native-tls", + "tokio-rustls 0.24.1", "tower-service", "url", "wasm-bindgen", "wasm-bindgen-futures", "web-sys", - "winreg", + "webpki-roots 0.25.4", + "winreg 0.50.0", +] + +[[package]] +name = "reqwest" +version = "0.12.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "566cafdd92868e0939d3fb961bd0dc25fcfaaed179291093b3d43e6b3150ea10" +dependencies = [ + "base64 0.22.1", + "bytes", + "futures-core", + "futures-util", + "http 1.1.0", + "http-body 1.0.0", + "http-body-util", + "hyper 1.2.0", + "hyper-rustls 0.26.0", + "hyper-util", + "ipnet", + "js-sys", + "log", + "mime", + "once_cell", + "percent-encoding", + "pin-project-lite", + "rustls 0.22.4", + "rustls-pemfile 2.1.2", + "rustls-pki-types", + "serde", + "serde_json", + "serde_urlencoded", + "sync_wrapper 0.1.2", + "tokio", + "tokio-rustls 0.25.0", + "tower-service", + "url", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", + "webpki-roots 0.26.1", + "winreg 0.52.0", ] [[package]] @@ -4164,6 +5339,7 @@ dependencies = [ "pkcs1 0.7.5", "pkcs8 0.10.2", "rand_core 0.6.4", + "sha2 0.10.8", "signature 2.2.0", "spki 0.7.3", "subtle", @@ -4171,6 +5347,24 @@ dependencies = [ ] [[package]] +name = "rtnetlink" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a552eb82d19f38c3beed3f786bd23aa434ceb9ac43ab44419ca6d67a7e186c0" +dependencies = [ + "futures", + "log", + "netlink-packet-core 0.7.0", + "netlink-packet-route 0.17.1", + "netlink-packet-utils", + "netlink-proto", + "netlink-sys", + "nix 0.26.4", + "thiserror", + "tokio", +] + +[[package]] name = "rusqlite" version = "0.31.0" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -4192,9 +5386,9 @@ checksum = "efe2374f2385cdd8755a446f80b2a646de603c9d8539ca38734879b5c71e378b" [[package]] name = "rustc-demangle" -version = "0.1.23" +version = "0.1.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" +checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f" [[package]] name = "rustc-hash" @@ -4235,23 +5429,38 @@ dependencies = [ [[package]] name = "rustls" -version = "0.21.10" +version = "0.21.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9d5a6813c0759e4609cd494e8e725babae6a2ca7b62a5536a13daaec6fcb7ba" +checksum = "7fecbfb7b1444f477b345853b1fce097a2c6fb637b2bfb87e6bc5db0f043fae4" dependencies = [ + "log", "ring 0.17.8", - "rustls-webpki", + "rustls-webpki 0.101.7", "sct", ] [[package]] +name = "rustls" +version = "0.22.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf4ef73721ac7bcd79b2b315da7779d8fc09718c6b3d2d1b2d94850eb8c18432" +dependencies = [ + "log", + "ring 0.17.8", + "rustls-pki-types", + "rustls-webpki 0.102.4", + "subtle", + "zeroize", +] + +[[package]] name = "rustls-native-certs" version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a9aace74cb666635c918e9c12bc0d348266037aa8eb599b5cba565709a8dff00" dependencies = [ "openssl-probe", - "rustls-pemfile", + "rustls-pemfile 1.0.4", "schannel", "security-framework", ] @@ -4266,6 +5475,22 @@ dependencies = [ ] [[package]] +name = "rustls-pemfile" +version = "2.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "29993a25686778eb88d4189742cd713c9bce943bc54251a33509dc63cbacf73d" +dependencies = [ + "base64 0.22.1", + "rustls-pki-types", +] + +[[package]] +name = "rustls-pki-types" +version = "1.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "976295e77ce332211c0d24d92c0e83e50f5c5f046d11082cea19f3df13a3562d" + +[[package]] name = "rustls-webpki" version = "0.101.7" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -4276,6 +5501,17 @@ dependencies = [ ] [[package]] +name = "rustls-webpki" +version = "0.102.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff448f7e92e913c4b7d4c6d8e4540a1724b319b4152b8aef6d4cf8339712b33e" +dependencies = [ + "ring 0.17.8", + "rustls-pki-types", + "untrusted 0.9.0", +] + +[[package]] name = "rustversion" version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -4283,9 +5519,9 @@ checksum = "7ffc183a10b4478d04cbbbfc96d0873219d962dd5accaff2ffbd4ceb7df837f4" [[package]] name = "rustyline" -version = "13.0.0" +version = "14.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02a2d683a4ac90aeef5b1013933f6d977bd37d51ff3f4dad829d4931a7e6be86" +checksum = "7803e8936da37efd9b6d4478277f4b2b9bb5cdb37a113e8d63222e58da647e63" dependencies = [ "bitflags 2.4.2", "cfg-if", @@ -4295,12 +5531,12 @@ dependencies = [ "libc", "log", "memchr", - "nix", + "nix 0.28.0", "radix_trie", "unicode-segmentation", "unicode-width", "utf8parse", - "winapi", + "windows-sys 0.52.0", ] [[package]] @@ -4310,6 +5546,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1" [[package]] +name = "salsa20" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97a22f5af31f73a954c10289c93e8a50cc23d971e80ee446f1f6f7137a088213" +dependencies = [ + "cipher", +] + +[[package]] name = "same-file" version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -4339,9 +5584,9 @@ dependencies = [ [[package]] name = "schemars" -version = "0.8.16" +version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45a28f4c49489add4ce10783f7911893516f15afe45d015608d41faca6bc4d29" +checksum = "09c024468a378b7e36765cd36702b7a90cc3cba11654f6685c8f233408e89e92" dependencies = [ "dyn-clone", "schemars_derive", @@ -4351,14 +5596,14 @@ dependencies = [ [[package]] name = "schemars_derive" -version = "0.8.16" +version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c767fd6fa65d9ccf9cf026122c1b555f2ef9a4f0cea69da4d7dbc3e258d30967" +checksum = "b1eee588578aff73f856ab961cd2f79e36bc45d7ded33a7562adba4667aecc0e" dependencies = [ "proc-macro2", "quote", "serde_derive_internals", - "syn 1.0.109", + "syn 2.0.66", ] [[package]] @@ -4445,9 +5690,9 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.197" +version = "1.0.203" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2" +checksum = "7253ab4de971e72fb7be983802300c30b5a7f0c2e56fab8abfc6a214307c0094" dependencies = [ "serde_derive", ] @@ -4472,31 +5717,31 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.197" +version = "1.0.203" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b" +checksum = "500cbc0ebeb6f46627f50f3f5811ccf6bf00643be300b4c3eabc0ef55dc5b5ba" dependencies = [ "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.66", ] [[package]] name = "serde_derive_internals" -version = "0.26.0" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85bf8229e7920a9f636479437026331ce11aa132b4dde37d121944a44d6e5f3c" +checksum = "330f01ce65a3a5fe59a60c82f3c9a024b573b8a6e875bd233fe5f934e71d54e3" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.66", ] [[package]] name = "serde_json" -version = "1.0.114" +version = "1.0.117" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c5f09b1bd632ef549eaa9f60a1f8de742bdbc698e6cee2095fc84dde5f549ae0" +checksum = "455182ea6142b14f93f4bc5320a2b31c1f266b66a4a5c858b013302a5d8cbfc3" dependencies = [ "itoa", "ryu", @@ -4515,9 +5760,9 @@ dependencies = [ [[package]] name = "serde_spanned" -version = "0.6.5" +version = "0.6.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb3622f419d1296904700073ea6cc23ad690adbd66f13ea683df73298736f0c1" +checksum = "79e674e01f999af37c49f70a6ede167a8a60b2503e56c5599532a65baa5969a0" dependencies = [ "serde", ] @@ -4535,6 +5780,16 @@ dependencies = [ ] [[package]] +name = "serdect" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a84f14a19e9a014bb9f4512488d9829a68e04ecabffb0f9904cd1ace94598177" +dependencies = [ + "base16ct 0.2.0", + "serde", +] + +[[package]] name = "sha-1" version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -4600,6 +5855,16 @@ dependencies = [ ] [[package]] +name = "shared_child" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b0d94659ad3c2137fef23ae75b03d5241d633f8acded53d672decfa0e6e0caef" +dependencies = [ + "libc", + "winapi", +] + +[[package]] name = "signal-hook-registry" version = "1.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -4635,6 +5900,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe" [[package]] +name = "simple-dns" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "01607fe2e61894468c6dc0b26103abb073fb08b79a3d9e4b6d76a1a341549958" +dependencies = [ + "bitflags 2.4.2", +] + +[[package]] name = "slab" version = "0.4.9" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -4645,9 +5919,9 @@ dependencies = [ [[package]] name = "smallvec" -version = "1.13.1" +version = "1.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6ecd384b10a64542d77071bd64bd7b231f4ed5940fba55e98c3de13824cf3d7" +checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" [[package]] name = "smawk" @@ -4681,6 +5955,15 @@ dependencies = [ ] [[package]] +name = "spinning_top" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d96d2d1d716fb500937168cc09353ffdc7a012be8475ac7308e1bdf0e3923300" +dependencies = [ + "lock_api", +] + +[[package]] name = "spki" version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -4701,6 +5984,16 @@ dependencies = [ ] [[package]] +name = "ssh-cipher" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "caac132742f0d33c3af65bfcde7f6aa8f62f0e991d80db99149eb9d44708784f" +dependencies = [ + "cipher", + "ssh-encoding 0.2.0", +] + +[[package]] name = "ssh-encoding" version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -4712,6 +6005,17 @@ dependencies = [ ] [[package]] +name = "ssh-encoding" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eb9242b9ef4108a78e8cd1a2c98e193ef372437f8c22be363075233321dd4a15" +dependencies = [ + "base64ct", + "pem-rfc7468 0.7.0", + "sha2 0.10.8", +] + +[[package]] name = "ssh-key" version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -4725,7 +6029,28 @@ dependencies = [ "sec1 0.3.0", "sha2 0.10.8", "signature 1.6.4", - "ssh-encoding", + "ssh-encoding 0.1.0", + "zeroize", +] + +[[package]] +name = "ssh-key" +version = "0.6.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca9b366a80cf18bb6406f4cf4d10aebfb46140a8c0c33f666a144c5c76ecbafc" +dependencies = [ + "ed25519-dalek 2.1.1", + "p256 0.13.2", + "p384 0.13.0", + "p521", + "rand_core 0.6.4", + "rsa 0.9.6", + "sec1 0.7.3", + "sha2 0.10.8", + "signature 2.2.0", + "ssh-cipher", + "ssh-encoding 0.2.0", + "subtle", "zeroize", ] @@ -4748,22 +6073,78 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" [[package]] +name = "struct_iterable" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "849a064c6470a650b72e41fa6c057879b68f804d113af92900f27574828e7712" +dependencies = [ + "struct_iterable_derive", + "struct_iterable_internal", +] + +[[package]] +name = "struct_iterable_derive" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8bb939ce88a43ea4e9d012f2f6b4cc789deb2db9d47bad697952a85d6978662c" +dependencies = [ + "erased-serde", + "proc-macro2", + "quote", + "struct_iterable_internal", + "syn 2.0.66", +] + +[[package]] +name = "struct_iterable_internal" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e9426b2a0c03e6cc2ea8dbc0168dbbf943f88755e409fb91bcb8f6a268305f4a" + +[[package]] name = "strum" -version = "0.26.1" +version = "0.26.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "723b93e8addf9aa965ebe2d11da6d7540fa2283fcea14b3371ff055f7ba13f5f" +checksum = "5d8cec3501a5194c432b2b7976db6b7d10ec95c253208b45f83f7136aa985e29" +dependencies = [ + "strum_macros", +] [[package]] name = "strum_macros" -version = "0.26.1" +version = "0.26.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a3417fc93d76740d974a01654a09777cb500428cc874ca9f45edfe0c4d4cd18" +checksum = "c6cf59daf282c0a494ba14fd21610a0325f9f90ec9d1231dea26bcb1d696c946" dependencies = [ "heck", "proc-macro2", "quote", "rustversion", - "syn 2.0.52", + "syn 2.0.66", +] + +[[package]] +name = "stun-rs" +version = "0.1.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0adebf9fb8fba5c39ee34092b0383f247e4d1255b98fcffec94b4b797b85b677" +dependencies = [ + "base64 0.22.1", + "bounded-integer", + "byteorder", + "crc", + "enumflags2", + "fallible-iterator", + "hmac-sha1", + "hmac-sha256", + "hostname-validator", + "lazy_static", + "md5", + "paste", + "precis-core", + "precis-profiles", + "quoted-string-parser", + "rand 0.8.5", ] [[package]] @@ -4773,6 +6154,22 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc" [[package]] +name = "surge-ping" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "efbf95ce4c7c5b311d2ce3f088af2b93edef0f09727fa50fbe03c7a979afce77" +dependencies = [ + "hex", + "parking_lot", + "pnet_packet", + "rand 0.8.5", + "socket2", + "thiserror", + "tokio", + "tracing", +] + +[[package]] name = "syn" version = "1.0.109" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -4785,9 +6182,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.52" +version = "2.0.66" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b699d15b36d1f02c3e7c69f8ffef53de37aefae075d8488d4ba1a7788d574a07" +checksum = "c42f3f41a2de00b01c0aaad383c5a45241efc8b2d1eda5661812fda5f3cdcff5" dependencies = [ "proc-macro2", "quote", @@ -4801,6 +6198,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" [[package]] +name = "sync_wrapper" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "384595c11a4e2969895cad5a8c4029115f5ab956a9e5ef4de79d11a426e5f20c" + +[[package]] name = "synstructure" version = "0.12.6" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -4813,6 +6216,17 @@ dependencies = [ ] [[package]] +name = "synstructure" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] name = "sysinfo" version = "0.26.9" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -4834,7 +6248,18 @@ checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7" dependencies = [ "bitflags 1.3.2", "core-foundation", - "system-configuration-sys", + "system-configuration-sys 0.5.0", +] + +[[package]] +name = "system-configuration" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "658bc6ee10a9b4fcf576e9b0819d95ec16f4d2c02d39fd83ac1c8789785c4a42" +dependencies = [ + "bitflags 2.4.2", + "core-foundation", + "system-configuration-sys 0.6.0", ] [[package]] @@ -4848,33 +6273,40 @@ dependencies = [ ] [[package]] +name = "system-configuration-sys" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e1d1b10ced5ca923a1fcb8d03e96b8d3268065d724548c0211415ff6ac6bac4" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] name = "tagger" version = "4.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "094c9f64d6de9a8506b1e49b63a29333b37ed9e821ee04be694d431b3264c3c5" [[package]] +name = "tap" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" + +[[package]] name = "tempfile" version = "3.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1" dependencies = [ "cfg-if", - "fastrand", + "fastrand 2.0.1", "rustix", "windows-sys 0.52.0", ] [[package]] -name = "termcolor" -version = "1.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755" -dependencies = [ - "winapi-util", -] - -[[package]] name = "testdir" version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -4901,22 +6333,22 @@ dependencies = [ [[package]] name = "thiserror" -version = "1.0.57" +version = "1.0.61" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e45bcbe8ed29775f228095caf2cd67af7a4ccf756ebff23a306bf3e8b47b24b" +checksum = "c546c80d6be4bc6a00c0f01730c08df82eaa7a7a61f11d656526506112cc1709" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.57" +version = "1.0.61" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a953cb265bef375dae3de6663da4d3804eee9682ea80d8e2542529b73c531c81" +checksum = "46c3384250002a6d5af4d114f2845d37b57521033f30d5c3f46c4d70e1197533" dependencies = [ "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.66", ] [[package]] @@ -4998,9 +6430,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.36.0" +version = "1.38.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61285f6515fa018fb2d1e46eb21223fff441ee8db5d0f1435e8ab4f5cdb80931" +checksum = "ba4f4a02a7a80d6f274636f0aa95c7e383b912d41fe721a31f29e29698585a4a" dependencies = [ "backtrace", "bytes", @@ -5027,13 +6459,13 @@ dependencies = [ [[package]] name = "tokio-macros" -version = "2.2.0" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b" +checksum = "5f5ae998a069d4b5aba8ee9dad856af7d520c3699e6159b185c2acd48155d39a" dependencies = [ "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.66", ] [[package]] @@ -5047,6 +6479,55 @@ dependencies = [ ] [[package]] +name = "tokio-rustls" +version = "0.24.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081" +dependencies = [ + "rustls 0.21.11", + "tokio", +] + +[[package]] +name = "tokio-rustls" +version = "0.25.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "775e0c0f0adb3a2f22a00c4745d728b479985fc15ee7ca6a2608388c5569860f" +dependencies = [ + "rustls 0.22.4", + "rustls-pki-types", + "tokio", +] + +[[package]] +name = "tokio-rustls-acme" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2ebc06d846f8367f24c3a8882328707d1a5e507ef4f40943723ddbe2c17b9f24" +dependencies = [ + "async-trait", + "base64 0.21.7", + "chrono", + "futures", + "log", + "num-bigint", + "pem 3.0.4", + "proc-macro2", + "rcgen 0.12.1", + "reqwest 0.11.27", + "ring 0.17.8", + "rustls 0.21.11", + "serde", + "serde_json", + "thiserror", + "tokio", + "tokio-rustls 0.24.1", + "url", + "webpki-roots 0.25.4", + "x509-parser 0.16.0", +] + +[[package]] name = "tokio-serde" version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -5063,9 +6544,9 @@ dependencies = [ [[package]] name = "tokio-stream" -version = "0.1.14" +version = "0.1.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "397c988d37662c7dda6d2208364a706264bf3d6138b11d436cbac0ad38832842" +checksum = "267ac89e0bec6e691e5813911606935d77c476ff49024f98abcea3e7b15e37af" dependencies = [ "futures-core", "pin-project-lite", @@ -5101,35 +6582,34 @@ dependencies = [ [[package]] name = "tokio-util" -version = "0.7.10" +version = "0.7.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5419f34732d9eb6ee4c3578b7989078579b7f039cbbb9ca2c4da015749371e15" +checksum = "9cf6b47b3771c49ac75ad09a6162f53ad4b8088b76ac60e8ec1455b31a189fe1" dependencies = [ "bytes", "futures-core", "futures-sink", "pin-project-lite", "tokio", - "tracing", ] [[package]] name = "toml" -version = "0.8.10" +version = "0.8.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a9aad4a3066010876e8dcf5a8a06e70a558751117a145c6ce2b82c2e2054290" +checksum = "a4e43f8cc456c9704c851ae29c67e17ef65d2c30017c17a9765b89c382dc8bba" dependencies = [ "serde", "serde_spanned", "toml_datetime", - "toml_edit 0.22.6", + "toml_edit 0.22.13", ] [[package]] name = "toml_datetime" -version = "0.6.5" +version = "0.6.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1" +checksum = "4badfd56924ae69bcc9039335b2e017639ce3f9b001c393c1b2d1ef846ce2cbf" dependencies = [ "serde", ] @@ -5147,9 +6627,9 @@ dependencies = [ [[package]] name = "toml_edit" -version = "0.22.6" +version = "0.22.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c1b5fd4128cc8d3e0cb74d4ed9a9cc7c7284becd4df68f5f940e1ad123606f6" +checksum = "c127785850e8c20836d49732ae6abfa47616e60bf9d9f57c43c250361a9db96c" dependencies = [ "indexmap", "serde", @@ -5206,7 +6686,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.66", ] [[package]] @@ -5265,6 +6745,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" [[package]] +name = "ttl_cache" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4189890526f0168710b6ee65ceaedf1460c48a14318ceec933cb26baa492096a" +dependencies = [ + "linked-hash-map", +] + +[[package]] name = "tungstenite" version = "0.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -5323,6 +6812,21 @@ dependencies = [ ] [[package]] +name = "ucd-parse" +version = "0.1.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c06ff81122fcbf4df4c1660b15f7e3336058e7aec14437c9f85c6b31a0f279b9" +dependencies = [ + "regex-lite", +] + +[[package]] +name = "ucd-trie" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed646292ffc8188ef8ea4d1e0e0150fb15a5c2e12ad9b8fc191ae7a8a7f3c4b9" + +[[package]] name = "unarray" version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -5374,6 +6878,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c" [[package]] +name = "universal-hash" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc1de2c688dc15305988b563c3854064043356019f97a4b46276fe734c4f07ea" +dependencies = [ + "crypto-common", + "subtle", +] + +[[package]] name = "untrusted" version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -5394,6 +6908,7 @@ dependencies = [ "form_urlencoded", "idna 0.5.0", "percent-encoding", + "serde", ] [[package]] @@ -5410,9 +6925,9 @@ checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a" [[package]] name = "uuid" -version = "1.7.0" +version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f00cc9702ca12d3c81455259621e676d0f7251cec66a21e98fe2e9a37db93b2a" +checksum = "a183cf7feeba97b4dd1c0d46788634f6221d87fa961b305bed08c851829efcc0" dependencies = [ "getrandom 0.2.12", "serde", @@ -5437,6 +6952,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" [[package]] +name = "waker-fn" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "317211a0dc0ceedd78fb2ca9a44aed3d7b9b26f81870d485c07122b4350673b7" + +[[package]] name = "walkdir" version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -5500,7 +7021,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.66", "wasm-bindgen-shared", ] @@ -5534,7 +7055,7 @@ checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.66", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -5546,6 +7067,18 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96" [[package]] +name = "watchable" +version = "1.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "45b42a2f611916b5965120a9cde2b60f2db4454826dd9ad5e6f47c24a5b3b259" +dependencies = [ + "event-listener 4.0.3", + "futures-util", + "parking_lot", + "thiserror", +] + +[[package]] name = "web-sys" version = "0.3.69" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -5556,6 +7089,21 @@ dependencies = [ ] [[package]] +name = "webpki-roots" +version = "0.25.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f20c57d8d7db6d3b86154206ae5d8fba62dd39573114de97c2cb0578251f8e1" + +[[package]] +name = "webpki-roots" +version = "0.26.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b3de34ae270483955a94f4b21bdaaeb83d508bb84a01435f393818edb0012009" +dependencies = [ + "rustls-pki-types", +] + +[[package]] name = "weezl" version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -5623,12 +7171,94 @@ dependencies = [ ] [[package]] +name = "windows" +version = "0.51.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca229916c5ee38c2f2bc1e9d8f04df975b4bd93f9955dc69fabb5d91270045c9" +dependencies = [ + "windows-core 0.51.1", + "windows-targets 0.48.5", +] + +[[package]] +name = "windows" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e48a53791691ab099e5e2ad123536d0fff50652600abaf43bbf952894110d0be" +dependencies = [ + "windows-core 0.52.0", + "windows-implement", + "windows-interface", + "windows-targets 0.52.5", +] + +[[package]] +name = "windows" +version = "0.54.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9252e5725dbed82865af151df558e754e4a3c2c30818359eb17465f1346a1b49" +dependencies = [ + "windows-core 0.54.0", + "windows-targets 0.52.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-core" version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" dependencies = [ - "windows-targets 0.52.4", + "windows-targets 0.52.5", +] + +[[package]] +name = "windows-core" +version = "0.54.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "12661b9c89351d684a50a8a643ce5f608e20243b9fb84687800163429f161d65" +dependencies = [ + "windows-result", + "windows-targets 0.52.5", +] + +[[package]] +name = "windows-implement" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "12168c33176773b86799be25e2a2ba07c7aab9968b37541f1094dbd7a60c8946" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "windows-interface" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d8dc32e0095a7eeccebd0e3f09e9509365ecb3fc6ac4d6f5f14a3f6392942d1" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "windows-result" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "749f0da9cc72d82e600d8d2e44cadd0b9eedb9038f71a1c58556ac1c5791813b" +dependencies = [ + "windows-targets 0.52.5", ] [[package]] @@ -5646,7 +7276,7 @@ version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" dependencies = [ - "windows-targets 0.52.4", + "windows-targets 0.52.5", ] [[package]] @@ -5666,17 +7296,18 @@ dependencies = [ [[package]] name = "windows-targets" -version = "0.52.4" +version = "0.52.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7dd37b7e5ab9018759f893a1952c9420d060016fc19a472b4bb20d1bdd694d1b" +checksum = "6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb" dependencies = [ - "windows_aarch64_gnullvm 0.52.4", - "windows_aarch64_msvc 0.52.4", - "windows_i686_gnu 0.52.4", - "windows_i686_msvc 0.52.4", - "windows_x86_64_gnu 0.52.4", - "windows_x86_64_gnullvm 0.52.4", - "windows_x86_64_msvc 0.52.4", + "windows_aarch64_gnullvm 0.52.5", + "windows_aarch64_msvc 0.52.5", + "windows_i686_gnu 0.52.5", + "windows_i686_gnullvm", + "windows_i686_msvc 0.52.5", + "windows_x86_64_gnu 0.52.5", + "windows_x86_64_gnullvm 0.52.5", + "windows_x86_64_msvc 0.52.5", ] [[package]] @@ -5687,9 +7318,9 @@ checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" [[package]] name = "windows_aarch64_gnullvm" -version = "0.52.4" +version = "0.52.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bcf46cf4c365c6f2d1cc93ce535f2c8b244591df96ceee75d8e83deb70a9cac9" +checksum = "7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263" [[package]] name = "windows_aarch64_msvc" @@ -5705,9 +7336,9 @@ checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" [[package]] name = "windows_aarch64_msvc" -version = "0.52.4" +version = "0.52.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da9f259dd3bcf6990b55bffd094c4f7235817ba4ceebde8e6d11cd0c5633b675" +checksum = "9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6" [[package]] name = "windows_i686_gnu" @@ -5723,9 +7354,15 @@ checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" [[package]] name = "windows_i686_gnu" -version = "0.52.4" +version = "0.52.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b474d8268f99e0995f25b9f095bc7434632601028cf86590aea5c8a5cb7801d3" +checksum = "88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670" + +[[package]] +name = "windows_i686_gnullvm" +version = "0.52.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9" [[package]] name = "windows_i686_msvc" @@ -5741,9 +7378,9 @@ checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" [[package]] name = "windows_i686_msvc" -version = "0.52.4" +version = "0.52.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1515e9a29e5bed743cb4415a9ecf5dfca648ce85ee42e15873c3cd8610ff8e02" +checksum = "db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf" [[package]] name = "windows_x86_64_gnu" @@ -5759,9 +7396,9 @@ checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" [[package]] name = "windows_x86_64_gnu" -version = "0.52.4" +version = "0.52.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5eee091590e89cc02ad514ffe3ead9eb6b660aedca2183455434b93546371a03" +checksum = "4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9" [[package]] name = "windows_x86_64_gnullvm" @@ -5771,9 +7408,9 @@ checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" [[package]] name = "windows_x86_64_gnullvm" -version = "0.52.4" +version = "0.52.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77ca79f2451b49fa9e2af39f0747fe999fcda4f5e241b2898624dca97a1f2177" +checksum = "852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596" [[package]] name = "windows_x86_64_msvc" @@ -5789,9 +7426,9 @@ checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" [[package]] name = "windows_x86_64_msvc" -version = "0.52.4" +version = "0.52.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32b752e52a2da0ddfbdbcc6fceadfeede4c939ed16d13e648833a61dfb611ed8" +checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0" [[package]] name = "winnow" @@ -5822,6 +7459,39 @@ dependencies = [ ] [[package]] +name = "winreg" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a277a57398d4bfa075df44f501a17cfdf8542d224f0d36095a2adc7aee4ef0a5" +dependencies = [ + "cfg-if", + "windows-sys 0.48.0", +] + +[[package]] +name = "wmi" +version = "0.13.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc2f0a4062ca522aad4705a2948fd4061b3857537990202a8ddd5af21607f79a" +dependencies = [ + "chrono", + "futures", + "log", + "serde", + "thiserror", + "windows 0.52.0", +] + +[[package]] +name = "wyz" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed" +dependencies = [ + "tap", +] + +[[package]] name = "x25519-dalek" version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -5839,13 +7509,47 @@ version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e0ecbeb7b67ce215e40e3cc7f2ff902f94a223acf44995934763467e7b1febc8" dependencies = [ - "asn1-rs", + "asn1-rs 0.5.2", "base64 0.13.1", "data-encoding", - "der-parser", + "der-parser 8.2.0", + "lazy_static", + "nom", + "oid-registry 0.6.1", + "rusticata-macros", + "thiserror", + "time 0.3.34", +] + +[[package]] +name = "x509-parser" +version = "0.15.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7069fba5b66b9193bd2c5d3d4ff12b839118f6bcbef5328efafafb5395cf63da" +dependencies = [ + "asn1-rs 0.5.2", + "data-encoding", + "der-parser 8.2.0", "lazy_static", "nom", - "oid-registry", + "oid-registry 0.6.1", + "rusticata-macros", + "thiserror", + "time 0.3.34", +] + +[[package]] +name = "x509-parser" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fcbc162f30700d6f3f82a24bf7cc62ffe7caea42c0b2cba8bf7f3ae50cf51f69" +dependencies = [ + "asn1-rs 0.6.1", + "data-encoding", + "der-parser 9.0.0", + "lazy_static", + "nom", + "oid-registry 0.7.0", "rusticata-macros", "thiserror", "time 0.3.34", @@ -5863,6 +7567,21 @@ dependencies = [ ] [[package]] +name = "xml-rs" +version = "0.8.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "791978798f0597cfc70478424c2b4fdc2b7a8024aaff78497ef00f24ef674193" + +[[package]] +name = "xmltree" +version = "0.10.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d7d8a75eaf6557bb84a65ace8609883db44a29951042ada9b393151532e41fcb" +dependencies = [ + "xml-rs", +] + +[[package]] name = "yansi" version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -5914,6 +7633,12 @@ dependencies = [ ] [[package]] +name = "z32" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "edb37266251c28b03d08162174a91c3a092e3bd4f476f8205ee1c507b78b7bdc" + +[[package]] name = "zerocopy" version = "0.7.32" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -5930,7 +7655,7 @@ checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.66", ] [[package]] @@ -5950,5 +7675,20 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.66", +] + +[[package]] +name = "zune-core" +version = "0.4.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f423a2c17029964870cfaabb1f13dfab7d092a62a29a89264f4d36990ca414a" + +[[package]] +name = "zune-jpeg" +version = "0.4.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec866b44a2a1fd6133d363f073ca1b179f438f99e7e5bfb1e33f7181facfe448" +dependencies = [ + "zune-core", ] diff --git a/pkgs/development/libraries/libdeltachat/default.nix b/pkgs/development/libraries/libdeltachat/default.nix index e11f18907055b..4f303ba3ff4b2 100644 --- a/pkgs/development/libraries/libdeltachat/default.nix +++ b/pkgs/development/libraries/libdeltachat/default.nix @@ -31,13 +31,13 @@ let }; in stdenv.mkDerivation rec { pname = "libdeltachat"; - version = "1.136.3"; + version = "1.140.2"; src = fetchFromGitHub { owner = "deltachat"; repo = "deltachat-core-rust"; rev = "v${version}"; - hash = "sha256-/ZWpPpxnOCLGswrfbEPvfUn1LpdBQeR5LecRAB0PEhI="; + hash = "sha256-BSbvgKiI89B+nxp5McBKTJAwgePt27C1QvSQLhTL7pQ="; }; patches = [ diff --git a/pkgs/development/libraries/libdeltachat/no-static-lib.patch b/pkgs/development/libraries/libdeltachat/no-static-lib.patch index 14ea1106138f9..9dc4ffd0ec074 100644 --- a/pkgs/development/libraries/libdeltachat/no-static-lib.patch +++ b/pkgs/development/libraries/libdeltachat/no-static-lib.patch @@ -1,33 +1,33 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt -index 44ca43e7..8b6960dd 100644 +index 5587e391..a18092f5 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -14,7 +14,6 @@ find_program(CARGO cargo) +@@ -20,7 +20,6 @@ endif() add_custom_command( OUTPUT -- "target/release/libdeltachat.a" - "target/release/libdeltachat.${DYNAMIC_EXT}" - "target/release/pkgconfig/deltachat.pc" +- "${CMAKE_BINARY_DIR}/target/release/libdeltachat.a" + "${CMAKE_BINARY_DIR}/target/release/libdeltachat.${DYNAMIC_EXT}" + "${CMAKE_BINARY_DIR}/target/release/pkgconfig/deltachat.pc" COMMAND -@@ -39,12 +38,10 @@ add_custom_target( +@@ -35,12 +34,10 @@ add_custom_target( lib_deltachat ALL DEPENDS -- "target/release/libdeltachat.a" - "target/release/libdeltachat.${DYNAMIC_EXT}" - "target/release/pkgconfig/deltachat.pc" +- "${CMAKE_BINARY_DIR}/target/release/libdeltachat.a" + "${CMAKE_BINARY_DIR}/target/release/libdeltachat.${DYNAMIC_EXT}" + "${CMAKE_BINARY_DIR}/target/release/pkgconfig/deltachat.pc" ) install(FILES "deltachat-ffi/deltachat.h" DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) --install(FILES "target/release/libdeltachat.a" DESTINATION ${CMAKE_INSTALL_LIBDIR}) - install(FILES "target/release/libdeltachat.${DYNAMIC_EXT}" DESTINATION ${CMAKE_INSTALL_LIBDIR}) - install(FILES "target/release/pkgconfig/deltachat.pc" DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig) +-install(FILES "${CMAKE_BINARY_DIR}/target/${ARCH_DIR}/release/libdeltachat.a" DESTINATION ${CMAKE_INSTALL_LIBDIR}) + install(FILES "${CMAKE_BINARY_DIR}/target/${ARCH_DIR}/release/libdeltachat.${DYNAMIC_EXT}" DESTINATION ${CMAKE_INSTALL_LIBDIR}) + install(FILES "${CMAKE_BINARY_DIR}/target/${ARCH_DIR}/release/pkgconfig/deltachat.pc" DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig) diff --git a/deltachat-ffi/Cargo.toml b/deltachat-ffi/Cargo.toml -index de0fbafe..120efec9 100644 +index d66cb00f..48347a48 100644 --- a/deltachat-ffi/Cargo.toml +++ b/deltachat-ffi/Cargo.toml -@@ -12,7 +12,7 @@ categories = ["cryptography", "std", "email"] +@@ -11,7 +11,7 @@ categories = ["cryptography", "std", "email"] [lib] name = "deltachat" diff --git a/pkgs/development/misc/or1k/newlib.nix b/pkgs/development/misc/or1k/newlib.nix index 92829896a27c8..127d84a82ea21 100644 --- a/pkgs/development/misc/or1k/newlib.nix +++ b/pkgs/development/misc/or1k/newlib.nix @@ -1,6 +1,6 @@ -{ stdenv, texinfo, flex, bison, fetchFromGitHub, crossLibcStdenv, buildPackages }: +{ stdenv, texinfo, flex, bison, fetchFromGitHub, stdenvNoLibc, buildPackages }: -crossLibcStdenv.mkDerivation { +stdenvNoLibc.mkDerivation { name = "newlib"; src = fetchFromGitHub { owner = "openrisc"; diff --git a/pkgs/development/misc/vc4/newlib.nix b/pkgs/development/misc/vc4/newlib.nix index e1a8b2eeaa6a7..48efd317d4c26 100644 --- a/pkgs/development/misc/vc4/newlib.nix +++ b/pkgs/development/misc/vc4/newlib.nix @@ -1,6 +1,6 @@ -{ stdenv, texinfo, flex, bison, fetchFromGitHub, crossLibcStdenv, buildPackages }: +{ stdenv, texinfo, flex, bison, fetchFromGitHub, stdenvNoLibc, buildPackages }: -crossLibcStdenv.mkDerivation { +stdenvNoLibc.mkDerivation { name = "newlib"; src = fetchFromGitHub { owner = "itszor"; diff --git a/pkgs/development/python-modules/adafruit-platformdetect/default.nix b/pkgs/development/python-modules/adafruit-platformdetect/default.nix index 81a48bcc62950..b9adcf95b0e9a 100644 --- a/pkgs/development/python-modules/adafruit-platformdetect/default.nix +++ b/pkgs/development/python-modules/adafruit-platformdetect/default.nix @@ -8,7 +8,7 @@ buildPythonPackage rec { pname = "adafruit-platformdetect"; - version = "3.70.1"; + version = "3.71.0"; pyproject = true; disabled = pythonOlder "3.7"; @@ -16,7 +16,7 @@ buildPythonPackage rec { src = fetchPypi { pname = "adafruit_platformdetect"; inherit version; - hash = "sha256-hbvTu3rVleM6OFQb70mq1OlJoe3xpfRJ7JA6djvMr7U="; + hash = "sha256-sgXU1m3SuEP2HIgIOKM2Sz8noLGSruzFe+zf0dA9p2A="; }; build-system = [ setuptools-scm ]; diff --git a/pkgs/development/python-modules/berkeleydb/default.nix b/pkgs/development/python-modules/berkeleydb/default.nix new file mode 100644 index 0000000000000..514a9b0c689ab --- /dev/null +++ b/pkgs/development/python-modules/berkeleydb/default.nix @@ -0,0 +1,38 @@ +{ + lib, + buildPythonPackage, + fetchPypi, + setuptools, + pkgs, + python, +}: + +buildPythonPackage rec { + pname = "berkeleydb"; + version = "18.1.8"; + pyproject = true; + + src = fetchPypi { + inherit pname version; + hash = "sha256-4YMaeQv9hVdA5cEvlS8Z9kbCaYBs/DYnda/Zh4zzJVc="; + }; + + build-system = [ setuptools ]; + + checkPhase = '' + ${python.interpreter} test.py + ''; + + # See: https://github.com/NixOS/nixpkgs/pull/311198/files#r1597746759 + env = { + BERKELEYDB_INCDIR = "${lib.getDev pkgs.db}/include"; + BERKELEYDB_LIBDIR = "${lib.getLib pkgs.db}/lib"; + }; + + meta = with lib; { + description = "Python bindings for Oracle Berkeley DB"; + homepage = "https://www.jcea.es/programacion/pybsddb.htm"; + license = with licenses; [ bsd3 ]; + maintainers = [ ]; + }; +} diff --git a/pkgs/development/python-modules/bsddb3/default.nix b/pkgs/development/python-modules/bsddb3/default.nix index fbf29c4f7eac0..af25971df03b8 100644 --- a/pkgs/development/python-modules/bsddb3/default.nix +++ b/pkgs/development/python-modules/bsddb3/default.nix @@ -1,11 +1,11 @@ { lib, buildPythonPackage, + pythonAtLeast, + python, fetchPypi, setuptools, pkgs, - python, - pythonOlder, }: buildPythonPackage rec { @@ -22,11 +22,9 @@ buildPythonPackage rec { buildInputs = [ pkgs.db ]; - doCheck = pythonOlder "3.12"; # distutils usage - - checkPhase = '' - ${python.interpreter} test.py - ''; + # See : https://github.com/NixOS/nixpkgs/pull/311198#discussion_r1599257522 + # More details here : https://www.jcea.es/programacion/pybsddb.htm + disabled = pythonAtLeast "3.10"; # Path to database need to be set. # Somehow the setup.py flag is not propagated. @@ -36,6 +34,16 @@ buildPythonPackage rec { export BERKELEYDB_DIR=${pkgs.db.dev}; ''; + postPatch = '' + substituteInPlace test3.py \ + --replace-fail "from distutils.util import get_platform" "from sysconfig import get_platform" \ + --replace-fail "sys.config[0:3]" "sys.implementation.cache_tag" + ''; + + checkPhase = '' + ${python.interpreter} test.py + ''; + meta = with lib; { description = "Python bindings for Oracle Berkeley DB"; homepage = "https://www.jcea.es/programacion/pybsddb.htm"; diff --git a/pkgs/development/python-modules/deltachat2/default.nix b/pkgs/development/python-modules/deltachat2/default.nix new file mode 100644 index 0000000000000..78d10679a3079 --- /dev/null +++ b/pkgs/development/python-modules/deltachat2/default.nix @@ -0,0 +1,42 @@ +{ lib +, fetchFromGitHub +, buildPythonPackage +, deltachat-rpc-server +, libdeltachat +, setuptools-scm +, substituteAll +}: + +buildPythonPackage rec { + pname = "deltachat2"; + version = "0.6.2"; + pyproject = true; + + src = fetchFromGitHub { + owner = "adbenitez"; + repo = "deltachat2"; + rev = "refs/tags/${version}"; + hash = "sha256-bp4bi+EeMaWP8zOaPp0eaPKn71F055QgMOOSDzIJUH4="; + }; + + patches = [ + (substituteAll { + src = ./paths.patch; + deltachatrpcserver = lib.getExe deltachat-rpc-server; + }) + ]; + + build-system = [ + setuptools-scm + ]; + + pythonImportsCheck = [ "deltachat2" ]; + + meta = { + description = "Client library for Delta Chat core JSON-RPC interface"; + homepage = "https://github.com/adbenitez/deltachat2"; + license = lib.licenses.mpl20; + mainProgram = "deltachat2"; + inherit (libdeltachat.meta) maintainers; + }; +} diff --git a/pkgs/development/python-modules/deltachat2/paths.patch b/pkgs/development/python-modules/deltachat2/paths.patch new file mode 100644 index 0000000000000..92cfe11fc6f0e --- /dev/null +++ b/pkgs/development/python-modules/deltachat2/paths.patch @@ -0,0 +1,13 @@ +diff --git a/deltachat2/transport.py b/deltachat2/transport.py +index a93dc7e..251947b 100644 +--- a/deltachat2/transport.py ++++ b/deltachat2/transport.py +@@ -71,7 +71,7 @@ class IOTransport: + # `process_group` is not supported before Python 3.11. + kwargs = {"preexec_fn": os.setpgrp, **self._kwargs} # noqa: PLW1509 + self.process = subprocess.Popen( # noqa: R1732 +- "deltachat-rpc-server", ++ "@deltachatrpcserver@", + stdin=subprocess.PIPE, + stdout=subprocess.PIPE, + **kwargs, diff --git a/pkgs/development/python-modules/env-canada/default.nix b/pkgs/development/python-modules/env-canada/default.nix index af882a3640e30..a8784aacb5dc2 100644 --- a/pkgs/development/python-modules/env-canada/default.nix +++ b/pkgs/development/python-modules/env-canada/default.nix @@ -17,7 +17,7 @@ buildPythonPackage rec { pname = "env-canada"; - version = "0.6.2"; + version = "0.7.0"; pyproject = true; disabled = pythonOlder "3.8"; @@ -26,7 +26,7 @@ buildPythonPackage rec { owner = "michaeldavie"; repo = "env_canada"; rev = "refs/tags/v${version}"; - hash = "sha256-2lrZpjOdijE/udGRzUXT63xI+f9yI+04arfWdt6fMSA="; + hash = "sha256-ND1QObDdn6tBGNlnnVadNv6ibYYpOoo2HZEXIMlfwyc="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/google-cloud-pubsub/default.nix b/pkgs/development/python-modules/google-cloud-pubsub/default.nix index f9ce73cf823c2..8ba2f84e072f3 100644 --- a/pkgs/development/python-modules/google-cloud-pubsub/default.nix +++ b/pkgs/development/python-modules/google-cloud-pubsub/default.nix @@ -18,14 +18,14 @@ buildPythonPackage rec { pname = "google-cloud-pubsub"; - version = "2.21.3"; + version = "2.21.4"; pyproject = true; disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - hash = "sha256-30THmk17+1rfpnVBPjuRu74G6R0nFaFfklFAsFcVu30="; + hash = "sha256-LLjHaYrb/qBEjbbIm3iqchf84HweN7RtPlNfoWM/OuY="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/hatch-odoo/default.nix b/pkgs/development/python-modules/hatch-odoo/default.nix new file mode 100644 index 0000000000000..91a0ef99efbd6 --- /dev/null +++ b/pkgs/development/python-modules/hatch-odoo/default.nix @@ -0,0 +1,40 @@ +{ + buildPythonPackage, + fetchFromGitHub, + hatch-vcs, + hatchling, + lib, + manifestoo-core, + pythonOlder, + tomli, +}: +buildPythonPackage rec { + pname = "hatch-odoo"; + version = "0.1"; + format = "pyproject"; + + src = fetchFromGitHub { + owner = "acsone"; + repo = pname; + rev = version; + sha256 = "sha256-+KM3tpeQ4e53bVhUeWUSfyuIzPRvWkjZi4S/gH4UHVY="; + }; + + buildInputs = [hatch-vcs]; + + propagatedBuildInputs = + [ + hatchling + manifestoo-core + ] + ++ lib.optionals (pythonOlder "3.11") [ + tomli + ]; + + meta = with lib; { + description = "A hatch plugin to develop and package Odoo projects"; + homepage = "https://github.com/acsone/hatch-odoo"; + license = licenses.mit; + maintainers = with maintainers; [yajo]; + }; +} diff --git a/pkgs/development/python-modules/llama-index-core/default.nix b/pkgs/development/python-modules/llama-index-core/default.nix index 542aa1e9e184b..729fc0ac0d626 100644 --- a/pkgs/development/python-modules/llama-index-core/default.nix +++ b/pkgs/development/python-modules/llama-index-core/default.nix @@ -46,7 +46,7 @@ in buildPythonPackage rec { pname = "llama-index-core"; - version = "0.10.46"; + version = "0.10.47"; pyproject = true; disabled = pythonOlder "3.8"; @@ -55,7 +55,7 @@ buildPythonPackage rec { owner = "run-llama"; repo = "llama_index"; rev = "refs/tags/v${version}"; - hash = "sha256-k9SltX3QvrCYszyJqfpzhuI0JwpzsVTMkK3pIX/wyrg="; + hash = "sha256-Rq7Mz9aN6SHLZ5UzDb2i90j7wP+SlYJa9b14Yu00Cuc="; }; sourceRoot = "${src.name}/${pname}"; diff --git a/pkgs/development/python-modules/pycrdt-websocket/default.nix b/pkgs/development/python-modules/pycrdt-websocket/default.nix index 3ad166d575155..4e727cc583162 100644 --- a/pkgs/development/python-modules/pycrdt-websocket/default.nix +++ b/pkgs/development/python-modules/pycrdt-websocket/default.nix @@ -19,7 +19,7 @@ buildPythonPackage rec { pname = "pycrdt-websocket"; - version = "0.13.4"; + version = "0.13.5"; pyproject = true; disabled = pythonOlder "3.8"; @@ -28,7 +28,7 @@ buildPythonPackage rec { owner = "jupyter-server"; repo = "pycrdt-websocket"; rev = "refs/tags/v${version}"; - hash = "sha256-nkm1ZQ6bYBRDDoREovhEthDZoHApYxzAnwVgDgpWW/s="; + hash = "sha256-dzlmgxrdQ97+DO/vDtoX7PIOpngEE+FGUGq1vdVmhNw="; }; build-system = [ hatchling ]; diff --git a/pkgs/development/python-modules/pyswitchbot/default.nix b/pkgs/development/python-modules/pyswitchbot/default.nix index 44a1bbf9fd227..2a3ed39294165 100644 --- a/pkgs/development/python-modules/pyswitchbot/default.nix +++ b/pkgs/development/python-modules/pyswitchbot/default.nix @@ -15,7 +15,7 @@ buildPythonPackage rec { pname = "pyswitchbot"; - version = "0.47.2"; + version = "0.48.0"; pyproject = true; disabled = pythonOlder "3.8"; @@ -24,7 +24,7 @@ buildPythonPackage rec { owner = "Danielhiversen"; repo = "pySwitchbot"; rev = "refs/tags/${version}"; - hash = "sha256-89bFP/7ovsPj7htFGXrYR4jhm1E/ph47f4qZCKf1hfY="; + hash = "sha256-UVLB1SdtYiMsXR3od2gIxNxiQ6wyW2ItAJQrxv0w1tk="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/rioxarray/default.nix b/pkgs/development/python-modules/rioxarray/default.nix index 5394906148c2a..1b3325e4576fd 100644 --- a/pkgs/development/python-modules/rioxarray/default.nix +++ b/pkgs/development/python-modules/rioxarray/default.nix @@ -1,18 +1,21 @@ { lib, buildPythonPackage, - fetchFromGitHub, - pytestCheckHook, pythonOlder, - - dask, - netcdf4, + fetchFromGitHub, + # build-system + setuptools, + # dependencies numpy, packaging, pyproj, rasterio, - setuptools, xarray, + # tests + dask, + netcdf4, + pytestCheckHook, + stdenv, }: buildPythonPackage rec { @@ -24,13 +27,13 @@ buildPythonPackage rec { src = fetchFromGitHub { owner = "corteva"; repo = "rioxarray"; - rev = version; + rev = "refs/tags/${version}"; hash = "sha256-bumFZQktgUqo2lyoLtDXkh6Vv5oS/wobqYpvNYy7La0="; }; build-system = [ setuptools ]; - propagatedBuildInputs = [ + dependencies = [ numpy packaging pyproj @@ -44,13 +47,20 @@ buildPythonPackage rec { pytestCheckHook ]; - disabledTests = [ "test_clip_geojson__no_drop" ]; + disabledTests = + [ "test_clip_geojson__no_drop" ] + ++ lib.optionals (stdenv.hostPlatform.system == "aarch64-linux") [ + # numerical errors + "test_clip_geojson" + "test_open_rasterio_mask_chunk_clip" + ]; pythonImportsCheck = [ "rioxarray" ]; meta = { description = "geospatial xarray extension powered by rasterio"; homepage = "https://corteva.github.io/rioxarray/"; + changelog = "https://github.com/corteva/rioxarray/releases/tag/${version}"; license = lib.licenses.asl20; maintainers = lib.teams.geospatial.members; }; diff --git a/pkgs/development/python-modules/vcard/default.nix b/pkgs/development/python-modules/vcard/default.nix index df882ae250caf..41fecf60da031 100644 --- a/pkgs/development/python-modules/vcard/default.nix +++ b/pkgs/development/python-modules/vcard/default.nix @@ -2,14 +2,19 @@ buildPythonPackage, fetchFromGitLab, lib, + nix-update-script, pytestCheckHook, python-dateutil, pythonAtLeast, pythonOlder, }: -buildPythonPackage rec { - pname = "vcard"; +let version = "0.15.4"; +in +buildPythonPackage { + inherit version; + + pname = "vcard"; format = "setuptools"; disabled = pythonOlder "3.8" || pythonAtLeast "3.12"; @@ -27,6 +32,8 @@ buildPythonPackage rec { pythonImportsCheck = [ "vcard" ]; + passthru.updateScript = nix-update-script { }; + meta = { homepage = "https://gitlab.com/engmark/vcard"; description = "vCard validator, class and utility functions"; diff --git a/pkgs/development/python-modules/weatherflow4py/default.nix b/pkgs/development/python-modules/weatherflow4py/default.nix index d3dd7c8fd6fb8..df85ba7d48c5e 100644 --- a/pkgs/development/python-modules/weatherflow4py/default.nix +++ b/pkgs/development/python-modules/weatherflow4py/default.nix @@ -15,7 +15,7 @@ buildPythonPackage rec { pname = "weatherflow4py"; - version = "0.2.20"; + version = "0.2.21"; pyproject = true; disabled = pythonOlder "3.11"; @@ -24,7 +24,7 @@ buildPythonPackage rec { owner = "jeeftor"; repo = "weatherflow4py"; rev = "refs/tags/v${version}"; - hash = "sha256-kkNGhFhciOfhrbjxLM01YC2IRmkdKEbk4EUyDJZJuxU="; + hash = "sha256-ah/PpYusrr1nxvKiSpUBYfkn4crX9pCNV9mjpDndMQE="; }; build-system = [ poetry-core ]; diff --git a/pkgs/development/python-modules/xiaomi-ble/default.nix b/pkgs/development/python-modules/xiaomi-ble/default.nix index 02f6bc25c86a1..e081f49cae91e 100644 --- a/pkgs/development/python-modules/xiaomi-ble/default.nix +++ b/pkgs/development/python-modules/xiaomi-ble/default.nix @@ -18,7 +18,7 @@ buildPythonPackage rec { pname = "xiaomi-ble"; - version = "0.29.0"; + version = "0.30.0"; pyproject = true; disabled = pythonOlder "3.9"; @@ -27,7 +27,7 @@ buildPythonPackage rec { owner = "Bluetooth-Devices"; repo = "xiaomi-ble"; rev = "refs/tags/v${version}"; - hash = "sha256-+zMjnLUzI8ctucvxXts7V4lN4Gp0ZQtArhpXUCBvhF0="; + hash = "sha256-pWTWzw1ZdXnxPERkJUHumBboSIVo0t5HqQFRXC90CpU="; }; postPatch = '' diff --git a/pkgs/development/python-modules/yalexs/default.nix b/pkgs/development/python-modules/yalexs/default.nix index f3ee1d05772da..39fefd923956b 100644 --- a/pkgs/development/python-modules/yalexs/default.nix +++ b/pkgs/development/python-modules/yalexs/default.nix @@ -20,7 +20,7 @@ buildPythonPackage rec { pname = "yalexs"; - version = "6.0.0"; + version = "6.4.0"; pyproject = true; disabled = pythonOlder "3.9"; @@ -29,7 +29,7 @@ buildPythonPackage rec { owner = "bdraco"; repo = "yalexs"; rev = "refs/tags/v${version}"; - hash = "sha256-xBBO0cXdOzt2ioMQzzdtSKB0WxOZBIb4PsiKoRrUUSc="; + hash = "sha256-b5R80l3+5mnxMFtISUxToufhSDoRmmCRAyoP5hbk08o="; }; postPatch = '' diff --git a/pkgs/development/tools/analysis/checkov/default.nix b/pkgs/development/tools/analysis/checkov/default.nix index 3b925694c93ca..ed663df264380 100644 --- a/pkgs/development/tools/analysis/checkov/default.nix +++ b/pkgs/development/tools/analysis/checkov/default.nix @@ -6,14 +6,14 @@ python3.pkgs.buildPythonApplication rec { pname = "checkov"; - version = "3.2.140"; + version = "3.2.141"; pyproject = true; src = fetchFromGitHub { owner = "bridgecrewio"; repo = "checkov"; rev = "refs/tags/${version}"; - hash = "sha256-CqmXUz58eBMNrgfTDP/7M03R8vw9ys9/devRfFvWbBw="; + hash = "sha256-1EKqqKm0QB9tS5uaS7xMPoK/KDWRkJH1uW7yGiHLbNU="; }; patches = [ ./flake8-compat-5.x.patch ]; diff --git a/pkgs/development/tools/buildkit/default.nix b/pkgs/development/tools/buildkit/default.nix index 436a8c9501bf8..89a1ea0e09867 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.14.0"; + version = "0.14.1"; src = fetchFromGitHub { owner = "moby"; repo = "buildkit"; rev = "v${version}"; - hash = "sha256-41e/S3TzDAJuvopd5JFMKvdDOmHwnwF+4wrdOvifyoU="; + hash = "sha256-I0r9ovydRmGdg5EB+b69Iv2BuvVy82Ydz40UWmStumc="; }; vendorHash = null; diff --git a/pkgs/development/tools/language-servers/nixd/default.nix b/pkgs/development/tools/language-servers/nixd/default.nix index 8d2c5c7c2b240..6803b0761c1b1 100644 --- a/pkgs/development/tools/language-servers/nixd/default.nix +++ b/pkgs/development/tools/language-servers/nixd/default.nix @@ -20,13 +20,13 @@ let common = rec { - version = "2.2.0"; + version = "2.2.1"; src = fetchFromGitHub { owner = "nix-community"; repo = "nixd"; rev = version; - hash = "sha256-/8Ty1I130vWFidedt+WEaaFHS/zMFVu9vpq4Z3EBjGw="; + hash = "sha256-Y5MB3BQBRkSe+10enlric1GTmJCN36clbOSos6fzoRM="; }; nativeBuildInputs = [ diff --git a/pkgs/development/tools/misc/arcanist/default.nix b/pkgs/development/tools/misc/arcanist/default.nix deleted file mode 100644 index 06c0f700ffe8c..0000000000000 --- a/pkgs/development/tools/misc/arcanist/default.nix +++ /dev/null @@ -1,88 +0,0 @@ -{ bison -, cacert -, fetchFromGitHub -, flex -, php -, lib, stdenv -, installShellFiles -, which -, python3 -}: - -# Make a custom wrapper. If `wrapProgram` is used, arcanist thinks .arc-wrapped is being -# invoked and complains about it being an unknown toolset. We could use `makeWrapper`, but -# then we’d need to still craft a script that does the `php libexec/arcanist/bin/...` dance -# anyway... So just do everything at once. -let makeArcWrapper = toolset: '' - cat << WRAPPER > $out/bin/${toolset} - #!$shell -e - export PATH='${php}/bin:${which}/bin'\''${PATH:+':'}\$PATH - exec ${php}/bin/php $out/libexec/arcanist/bin/${toolset} "\$@" - WRAPPER - chmod +x $out/bin/${toolset} -''; - -in -stdenv.mkDerivation { - pname = "arcanist"; - version = "20230530"; - - src = fetchFromGitHub { - owner = "phacility"; - repo = "arcanist"; - rev = "e50d1bc4eabac9c37e3220e9f3fb8e37ae20b957"; - hash = "sha256-u+HRsaCuAAyLrEihrZtLrdZ6NTVjPshieJATK3t5Fo4="; - }; - - patches = [ - ./dont-require-python3-in-path.patch - ./shellcomplete-strlen-null.patch - ]; - - buildInputs = [ php python3 ]; - - nativeBuildInputs = [ bison flex installShellFiles ]; - - postPatch = lib.optionalString stdenv.isAarch64 '' - substituteInPlace support/xhpast/Makefile \ - --replace "-minline-all-stringops" "" - ''; - - buildPhase = '' - runHook preBuild - make cleanall -C support/xhpast $makeFlags "''${makeFlagsArray[@]}" -j $NIX_BUILD_CORES - make xhpast -C support/xhpast $makeFlags "''${makeFlagsArray[@]}" -j $NIX_BUILD_CORES - runHook postBuild - ''; - - installPhase = '' - runHook preInstall - mkdir -p $out/bin $out/libexec - make install -C support/xhpast $makeFlags "''${makeFlagsArray[@]}" -j $NIX_BUILD_CORES - make cleanall -C support/xhpast $makeFlags "''${makeFlagsArray[@]}" -j $NIX_BUILD_CORES - cp -R . $out/libexec/arcanist - ln -sf ${cacert}/etc/ssl/certs/ca-bundle.crt $out/libexec/arcanist/resources/ssl/default.pem - - ${makeArcWrapper "arc"} - ${makeArcWrapper "phage"} - - $out/bin/arc shell-complete --generate -- - installShellCompletion --cmd arc --bash $out/libexec/arcanist/support/shell/rules/bash-rules.sh - installShellCompletion --cmd phage --bash $out/libexec/arcanist/support/shell/rules/bash-rules.sh - runHook postInstall - ''; - - doInstallCheck = true; - installCheckPhase = '' - $out/bin/arc help diff -- > /dev/null - $out/bin/phage help alias -- > /dev/null - ''; - - meta = { - description = "Command line interface to Phabricator"; - homepage = "https://www.phacility.com/"; - license = lib.licenses.asl20; - platforms = lib.platforms.unix; - maintainers = [ lib.maintainers.thoughtpolice ]; - }; -} diff --git a/pkgs/development/tools/misc/arcanist/dont-require-python3-in-path.patch b/pkgs/development/tools/misc/arcanist/dont-require-python3-in-path.patch deleted file mode 100644 index 5c127491bb844..0000000000000 --- a/pkgs/development/tools/misc/arcanist/dont-require-python3-in-path.patch +++ /dev/null @@ -1,26 +0,0 @@ -Don't require python3 in PATH - -Once packaged, the arcanoid.py script has an absolute path shebang to -python3, so there is no need to also require python3 in PATH. - -This prevents leaking in a python3 in PATH in the environment which arc -runs linters etc. - -Author: bjorn.forsman@gmail.com -diff -uNr arcanist.orig/src/workflow/ArcanistAnoidWorkflow.php arcanist.new/src/workflow/ArcanistAnoidWorkflow.php ---- arcanist.orig/src/workflow/ArcanistAnoidWorkflow.php 2022-03-31 13:23:30.865095192 +0200 -+++ arcanist.new/src/workflow/ArcanistAnoidWorkflow.php 2022-04-01 12:19:15.644159639 +0200 -@@ -24,13 +24,6 @@ - } - - public function runWorkflow() { -- if (!Filesystem::binaryExists('python3')) { -- throw new PhutilArgumentUsageException( -- pht( -- 'The "arc anoid" workflow requires "python3" to be available '. -- 'in your $PATH.')); -- } -- - $support_dir = phutil_get_library_root('arcanist'); - $support_dir = dirname($support_dir); - $support_dir = $support_dir.'/support/'; diff --git a/pkgs/development/tools/misc/arcanist/shellcomplete-strlen-null.patch b/pkgs/development/tools/misc/arcanist/shellcomplete-strlen-null.patch deleted file mode 100644 index 6911ce074e0cd..0000000000000 --- a/pkgs/development/tools/misc/arcanist/shellcomplete-strlen-null.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/src/toolset/workflow/ArcanistShellCompleteWorkflow.php b/src/toolset/workflow/ArcanistShellCompleteWorkflow.php -index 9c2fcf9a..307231c8 100644 ---- a/src/toolset/workflow/ArcanistShellCompleteWorkflow.php -+++ b/src/toolset/workflow/ArcanistShellCompleteWorkflow.php -@@ -92,7 +92,7 @@ EOTEXT - $argv = $this->getArgument('argv'); - - $is_generate = $this->getArgument('generate'); -- $is_shell = (bool)strlen($this->getArgument('shell')); -+ $is_shell = phutil_nonempty_string($this->getArgument('shell')); - $is_current = $this->getArgument('current'); - - if ($argv) { diff --git a/pkgs/development/tools/misc/astyle/default.nix b/pkgs/development/tools/misc/astyle/default.nix index ca714b393ee12..139233ef1f761 100644 --- a/pkgs/development/tools/misc/astyle/default.nix +++ b/pkgs/development/tools/misc/astyle/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "astyle"; - version = "3.4.16"; + version = "3.5"; src = fetchurl { url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.bz2"; - hash = "sha256-y3YENPfkYk1e6yd2rDNOeeARGb6kGfyYbt0sJNk4A2Q="; + hash = "sha256-3vwct7+oY77EcOg2wldDmhGZyiyLE6ZSoyf9eMj1kjw="; }; nativeBuildInputs = [ cmake ]; diff --git a/pkgs/development/tools/rain/default.nix b/pkgs/development/tools/rain/default.nix index e68b3802a5c9b..37fa945dd95a8 100644 --- a/pkgs/development/tools/rain/default.nix +++ b/pkgs/development/tools/rain/default.nix @@ -7,16 +7,16 @@ buildGoModule rec { pname = "rain"; - version = "1.10.0"; + version = "1.11.0"; src = fetchFromGitHub { owner = "aws-cloudformation"; repo = pname; rev = "v${version}"; - sha256 = "sha256-2+bbTHblACG9yLBgdQ4P6PHXF06tLeVpsnuKCju8fV0="; + sha256 = "sha256-2W/Ytdnzb0+EAPsuN6LXX0eLQMOu3qetJKYvKzgB0jM="; }; - vendorHash = "sha256-YDY9Acp8bi0Pvjdjn1hTzChCVs5E1yximIrgyd7J/7w="; + vendorHash = "sha256-Hpggkx707IX5ZUBuynQukCShk0pp12YEJYOF3eEN+5I="; subPackages = [ "cmd/rain" ]; diff --git a/pkgs/development/tools/vsce/default.nix b/pkgs/development/tools/vsce/default.nix index 9ad8d58b42bb3..a5002fdabc372 100644 --- a/pkgs/development/tools/vsce/default.nix +++ b/pkgs/development/tools/vsce/default.nix @@ -12,16 +12,16 @@ buildNpmPackage rec { pname = "vsce"; - version = "2.27.0"; + version = "2.28.0"; src = fetchFromGitHub { owner = "microsoft"; repo = "vscode-vsce"; rev = "v${version}"; - hash = "sha256-SmUH2YBVNEydGZLEeAjV6oO+DdbrfqraqnY9C+4GUFI="; + hash = "sha256-LMePEsNU62oSp/aaeUZY7A+0rTHiYOBqWBiqSpXUJOY="; }; - npmDepsHash = "sha256-pE94jQX5i576Lmm8ebAKPMpz95w9n4uGOeLXU8SHtcs="; + npmDepsHash = "sha256-Ml65YY4vqzntgCP9FoEGpR5rMkYL+alN9pSpbvR28E0="; postPatch = '' substituteInPlace package.json --replace '"version": "0.0.0"' '"version": "${version}"' diff --git a/pkgs/development/web/bun/default.nix b/pkgs/development/web/bun/default.nix index 28820426e109b..4fa21673a61d3 100644 --- a/pkgs/development/web/bun/default.nix +++ b/pkgs/development/web/bun/default.nix @@ -12,7 +12,7 @@ }: stdenvNoCC.mkDerivation rec { - version = "1.1.14"; + version = "1.1.15"; pname = "bun"; src = passthru.sources.${stdenvNoCC.hostPlatform.system} or (throw "Unsupported system: ${stdenvNoCC.hostPlatform.system}"); @@ -51,19 +51,19 @@ stdenvNoCC.mkDerivation rec { sources = { "aarch64-darwin" = fetchurl { url = "https://github.com/oven-sh/bun/releases/download/bun-v${version}/bun-darwin-aarch64.zip"; - hash = "sha256-JKUAmUW/Lh78RUZBOk1cXLpMrhxskXW6BO+WcYanWFs="; + hash = "sha256-T6V3B54rpdNmF60lX137Pau80+E/21aSl6LCa+6GHq4="; }; "aarch64-linux" = fetchurl { url = "https://github.com/oven-sh/bun/releases/download/bun-v${version}/bun-linux-aarch64.zip"; - hash = "sha256-kBkzOLG8O4OvjwKHiDiYFEvAe3QtDJDdoGKvMzSY5wA="; + hash = "sha256-ekWcoZxGsq1AtBLflzzhVQ2lVPwQt61Y86MVHtFJsUQ="; }; "x86_64-darwin" = fetchurl { url = "https://github.com/oven-sh/bun/releases/download/bun-v${version}/bun-darwin-x64.zip"; - hash = "sha256-zDngJ0zTRCQqufNmGRjwzi+77K4TpP6C/2lVqA4yEI0="; + hash = "sha256-o1NWjuWTwIQamLG10UU7LawZ9jB8RDuLWJKbCCEIdeU="; }; "x86_64-linux" = fetchurl { url = "https://github.com/oven-sh/bun/releases/download/bun-v${version}/bun-linux-x64.zip"; - hash = "sha256-LCfBxZMR+DI9HDvk3ZCJGFPtev+4U9AcxY/qDYbpOuA="; + hash = "sha256-PLGR7TEdy3sQ3S9rKWe8z8gjrmb8STyYPzbRPaJYSPI="; }; }; updateScript = writeShellScript "update-bun" '' diff --git a/pkgs/games/papermc/versions.json b/pkgs/games/papermc/versions.json index aaabc271f55f6..67fb3903da117 100644 --- a/pkgs/games/papermc/versions.json +++ b/pkgs/games/papermc/versions.json @@ -52,7 +52,11 @@ "version": "1.20.5-22" }, "1.20.6": { - "hash": "sha256-r9CmEycnEE4PpBHbzhaLamt3PykQSO0J+uXt6fIqV1k=", - "version": "1.20.6-137" + "hash": "sha256-JMWN40FTFg87RmxwyUr87Js9KyCmaBhj6Dnfe3vblZQ=", + "version": "1.20.6-147" + }, + "1.21": { + "hash": "sha256-LaQyYAlZ2GQKzT3GlOKr1RUhu0XQpILuqPcDHdczqcU=", + "version": "1.21-15" } } diff --git a/pkgs/games/steam/fhsenv.nix b/pkgs/games/steam/fhsenv.nix index 559aee92c9f34..a2157da80d6b9 100644 --- a/pkgs/games/steam/fhsenv.nix +++ b/pkgs/games/steam/fhsenv.nix @@ -280,7 +280,7 @@ in buildFHSEnv rec { WARNING: Steam is not set up. Add the following options to /etc/nixos/configuration.nix and then run \`sudo nixos-rebuild switch\`: { - hardware.opengl.driSupport32Bit = true; + hardware.graphics.enable32Bit = true; hardware.pulseaudio.support32Bit = true; } ** diff --git a/pkgs/kde/frameworks/ksvg/default.nix b/pkgs/kde/frameworks/ksvg/default.nix index 82dbce5c08294..0aa6053f00974 100644 --- a/pkgs/kde/frameworks/ksvg/default.nix +++ b/pkgs/kde/frameworks/ksvg/default.nix @@ -2,9 +2,19 @@ mkKdeDerivation, qtdeclarative, qtsvg, + fetchpatch, }: mkKdeDerivation { pname = "ksvg"; + patches = [ + # Backport patch for SVG rendering glitches with fractional scale + # FIXME: remove in 6.4 + (fetchpatch { + url = "https://invent.kde.org/frameworks/ksvg/-/commit/74f9f9cbd226407f8cde08c5cd5a711444e2775d.patch"; + hash = "sha256-i4Wcvo0CkpN2qdlTesnzUyd0mzG1VKbycP5Pd1rHPVg="; + }) + ]; + extraBuildInputs = [qtdeclarative qtsvg]; } diff --git a/pkgs/kde/gear/kdenlive/default.nix b/pkgs/kde/gear/kdenlive/default.nix index ad866db67a793..fe5f7e4c13b11 100644 --- a/pkgs/kde/gear/kdenlive/default.nix +++ b/pkgs/kde/gear/kdenlive/default.nix @@ -11,6 +11,7 @@ shared-mime-info, libv4l, frei0r, + fetchpatch, }: mkKdeDerivation { pname = "kdenlive"; @@ -23,6 +24,13 @@ mkKdeDerivation { ffmpeg = ffmpeg-full; } ) + + # Backport fix for crash after 5 minutes + # FIXME: remove in next release + (fetchpatch { + url = "https://invent.kde.org/multimedia/kdenlive/-/commit/8be0e826471332bb739344ebe1859298c46e9e0f.patch"; + hash = "sha256-5hLePH5NlO4Lx8lg9kjBPI4jTmP666RGplaVCmS/9TA="; + }) ]; extraBuildInputs = [ diff --git a/pkgs/os-specific/bsd/freebsd/default.nix b/pkgs/os-specific/bsd/freebsd/default.nix index e56c70c1d32d0..cfe6080b020a0 100644 --- a/pkgs/os-specific/bsd/freebsd/default.nix +++ b/pkgs/os-specific/bsd/freebsd/default.nix @@ -3,7 +3,6 @@ makeScopeWithSplicing', generateSplicesForMkScope, callPackage, - crossLibcStdenv, attributePathToSplice ? [ "freebsd" ], branch ? "release/14.0.0", }: @@ -24,41 +23,30 @@ let Branches can be selected by overriding the `branch` attribute on the freebsd package set. ''; - # `./package-set.nix` should never know the name of the package set we - # are constructing; just this function is allowed to know that. This - # is why we: - # - # - do the splicing for cross compilation here - # - # - construct the *anonymized* `buildFreebsd` attribute to be passed - # to `./package-set.nix`. - callFreeBSDWithAttrs = - extraArgs: - let - # we do not include the branch in the splice here because the branch - # parameter to this file will only ever take on one value - more values - # are provided through overrides. - otherSplices = generateSplicesForMkScope attributePathToSplice; - in - makeScopeWithSplicing' { - inherit otherSplices; - f = - self: - { - inherit branch; - } - // callPackage ./package-set.nix ( - { - sourceData = versions.${self.branch} or (throw (badBranchError self.branch)); - versionData = self.sourceData.version; - buildFreebsd = otherSplices.selfBuildHost; - patchesRoot = ./patches + "/${self.versionData.revision}"; - } - // extraArgs - ) self; - }; + # we do not include the branch in the splice here because the branch + # parameter to this file will only ever take on one value - more values + # are provided through overrides. + otherSplices = generateSplicesForMkScope attributePathToSplice; in -{ - freebsd = callFreeBSDWithAttrs { }; - freebsdCross = callFreeBSDWithAttrs { stdenv = crossLibcStdenv; }; +# `./package-set.nix` should never know the name of the package set we +# are constructing; just this function is allowed to know that. This +# is why we: +# +# - do the splicing for cross compilation here +# +# - construct the *anonymized* `buildFreebsd` attribute to be passed +# to `./package-set.nix`. +makeScopeWithSplicing' { + inherit otherSplices; + f = + self: + { + inherit branch; + } + // callPackage ./package-set.nix ({ + sourceData = versions.${self.branch} or (throw (badBranchError self.branch)); + versionData = self.sourceData.version; + buildFreebsd = otherSplices.selfBuildHost; + patchesRoot = ./patches + "/${self.versionData.revision}"; + }) self; } diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/mkDerivation.nix b/pkgs/os-specific/bsd/freebsd/pkgs/mkDerivation.nix index 12f2c9407e3c2..e20b94336d577 100644 --- a/pkgs/os-specific/bsd/freebsd/pkgs/mkDerivation.nix +++ b/pkgs/os-specific/bsd/freebsd/pkgs/mkDerivation.nix @@ -2,7 +2,7 @@ lib, stdenv, stdenvNoCC, - stdenvNoLibs, + stdenvNoLibc, overrideCC, buildPackages, versionData, @@ -28,7 +28,7 @@ lib.makeOverridable ( if attrs.noCC or false then stdenvNoCC else if attrs.noLibc or false then - stdenvNoLibs + stdenvNoLibc else if attrs.noLibcxx or false then overrideCC stdenv buildPackages.llvmPackages.clangNoLibcxx else @@ -58,12 +58,9 @@ lib.makeOverridable ( HOST_SH = stdenv'.shell; - # Since STRIP below is the flag - STRIPBIN = "${stdenv.cc.bintools.targetPrefix}strip"; - makeFlags = [ "STRIP=-s" # flag to install, not command - ] ++ lib.optional (!stdenv.hostPlatform.isFreeBSD) "MK_WERROR=no"; + ] ++ lib.optional (!stdenv'.hostPlatform.isFreeBSD) "MK_WERROR=no"; # amd64 not x86_64 for this on unlike NetBSD MACHINE_ARCH = freebsd-lib.mkBsdArch stdenv'; @@ -91,6 +88,9 @@ lib.makeOverridable ( // lib.optionalAttrs stdenv'.hasCC { # TODO should CC wrapper set this? CPP = "${stdenv'.cc.targetPrefix}cpp"; + + # Since STRIP in `makeFlags` has to be a flag, not the binary itself + STRIPBIN = "${stdenv'.cc.bintools.targetPrefix}strip"; } // lib.optionalAttrs stdenv'.isDarwin { MKRELRO = "no"; } // lib.optionalAttrs (stdenv'.cc.isClang or false) { diff --git a/pkgs/os-specific/bsd/netbsd/default.nix b/pkgs/os-specific/bsd/netbsd/default.nix index 5f5ec212f2698..7440666b4d795 100644 --- a/pkgs/os-specific/bsd/netbsd/default.nix +++ b/pkgs/os-specific/bsd/netbsd/default.nix @@ -1,5 +1,4 @@ { - stdenv, lib, stdenvNoCC, makeScopeWithSplicing', @@ -21,7 +20,9 @@ makeScopeWithSplicing' { defaultMakeFlags = [ "MKSOFTFLOAT=${ - if stdenv.hostPlatform.gcc.float or (stdenv.hostPlatform.parsed.abi.float or "hard") == "soft" then + if + stdenvNoCC.hostPlatform.gcc.float or (stdenvNoCC.hostPlatform.parsed.abi.float or "hard") == "soft" + then "yes" else "no" @@ -36,7 +37,6 @@ makeScopeWithSplicing' { # because of the splices. mkDerivation = self.callPackage ./pkgs/mkDerivation.nix { - inherit stdenv stdenvNoCC; inherit (buildPackages.netbsd) netbsdSetupHook makeMinimal @@ -129,7 +129,7 @@ makeScopeWithSplicing' { libpthread-headers = self.callPackage ./pkgs/libpthread/headers.nix { }; csu = self.callPackage ./pkgs/csu.nix { - inherit (self) headers sys ld_elf_so; + inherit (self) headers sys-headers ld_elf_so; inherit (buildPackages.netbsd) netbsdSetupHook makeMinimal diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/csu.nix b/pkgs/os-specific/bsd/netbsd/pkgs/csu.nix index a0d7ca419c1c4..ea78f338c5339 100644 --- a/pkgs/os-specific/bsd/netbsd/pkgs/csu.nix +++ b/pkgs/os-specific/bsd/netbsd/pkgs/csu.nix @@ -16,11 +16,12 @@ statHook, rsync, headers, - sys, + sys-headers, ld_elf_so, }: mkDerivation { + noLibc = true; path = "lib/csu"; meta.platforms = lib.platforms.netbsd; nativeBuildInputs = [ @@ -41,7 +42,7 @@ mkDerivation { ]; buildInputs = [ headers ]; extraPaths = [ - sys.path + sys-headers.path ld_elf_so.path ]; } diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/include.nix b/pkgs/os-specific/bsd/netbsd/pkgs/include.nix index 6df34b96095e7..a43a93847b23f 100644 --- a/pkgs/os-specific/bsd/netbsd/pkgs/include.nix +++ b/pkgs/os-specific/bsd/netbsd/pkgs/include.nix @@ -15,6 +15,7 @@ }: mkDerivation { + noLibc = true; path = "include"; nativeBuildInputs = [ bsdSetupHook diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/ld_elf_so.nix b/pkgs/os-specific/bsd/netbsd/pkgs/ld_elf_so.nix index 7f25ce097ff0d..4116312b9625c 100644 --- a/pkgs/os-specific/bsd/netbsd/pkgs/ld_elf_so.nix +++ b/pkgs/os-specific/bsd/netbsd/pkgs/ld_elf_so.nix @@ -6,6 +6,7 @@ }: mkDerivation { + noLibc = true; path = "libexec/ld.elf_so"; meta.platforms = lib.platforms.netbsd; LIBC_PIC = "${libc}/lib/libc_pic.a"; diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/libc.nix b/pkgs/os-specific/bsd/netbsd/pkgs/libc.nix index cf71857776d83..d6b14445acd46 100644 --- a/pkgs/os-specific/bsd/netbsd/pkgs/libc.nix +++ b/pkgs/os-specific/bsd/netbsd/pkgs/libc.nix @@ -24,6 +24,7 @@ }: mkDerivation { + noLibc = true; path = "lib/libc"; USE_FORT = "yes"; MKPROFILE = "no"; @@ -94,5 +95,8 @@ mkDerivation { make -C $BSDSRCDIR/lib/libcrypt $makeFlags make -C $BSDSRCDIR/lib/libcrypt $makeFlags install ''; - inherit (librt) postPatch; + postPatch = '' + sed -i 's,/usr\(/include/sys/syscall.h\),${headers}\1,g' \ + $BSDSRCDIR/lib/{libc,librt}/sys/Makefile.inc + ''; } diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/librt.nix b/pkgs/os-specific/bsd/netbsd/pkgs/librt.nix index 4e4bf0bc5ac4b..87cd3092f1b15 100644 --- a/pkgs/os-specific/bsd/netbsd/pkgs/librt.nix +++ b/pkgs/os-specific/bsd/netbsd/pkgs/librt.nix @@ -9,8 +9,5 @@ mkDerivation { path = "lib/librt"; meta.platforms = lib.platforms.netbsd; extraPaths = [ libc.path ] ++ libc.extraPaths; - postPatch = '' - sed -i 's,/usr\(/include/sys/syscall.h\),${headers}\1,g' \ - $BSDSRCDIR/lib/{libc,librt}/sys/Makefile.inc - ''; + inherit (libc) postPatch; } diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/mkDerivation.nix b/pkgs/os-specific/bsd/netbsd/pkgs/mkDerivation.nix index f4f103087587d..5fb082e9d17f9 100644 --- a/pkgs/os-specific/bsd/netbsd/pkgs/mkDerivation.nix +++ b/pkgs/os-specific/bsd/netbsd/pkgs/mkDerivation.nix @@ -2,7 +2,7 @@ lib, stdenv, stdenvNoCC, - crossLibcStdenv, + stdenvNoLibc, runCommand, rsync, source, @@ -23,7 +23,13 @@ lib.makeOverridable ( attrs: let - stdenv' = if attrs.noCC or false then stdenvNoCC else stdenv; + stdenv' = + if attrs.noCC or false then + stdenvNoCC + else if attrs.noLibc or false then + stdenvNoLibc + else + stdenv; in stdenv'.mkDerivation ( rec { diff --git a/pkgs/os-specific/bsd/openbsd/default.nix b/pkgs/os-specific/bsd/openbsd/default.nix index 00dba195b92f5..bfc88f097865f 100644 --- a/pkgs/os-specific/bsd/openbsd/default.nix +++ b/pkgs/os-specific/bsd/openbsd/default.nix @@ -1,16 +1,17 @@ { - stdenv, lib, - stdenvNoCC, makeScopeWithSplicing', generateSplicesForMkScope, - pkgs, buildPackages, - netbsd, }: -makeScopeWithSplicing' { +let otherSplices = generateSplicesForMkScope "openbsd"; + buildOpenbsd = otherSplices.selfBuildHost; +in + +makeScopeWithSplicing' { + inherit otherSplices; f = ( self: lib.packagesFromDirectoryRecursive { @@ -19,8 +20,8 @@ makeScopeWithSplicing' { } // { libc = self.callPackage ./pkgs/libc/package.nix { - inherit (self) csu include lorder; - inherit (buildPackages.openbsd) makeMinimal; + inherit (self) csu include; + inherit (buildOpenbsd) makeMinimal; inherit (buildPackages.netbsd) install gencat @@ -30,16 +31,16 @@ makeScopeWithSplicing' { }; makeMinimal = buildPackages.netbsd.makeMinimal.override { inherit (self) make-rules; }; mkDerivation = self.callPackage ./pkgs/mkDerivation.nix { - inherit stdenv; inherit (buildPackages.netbsd) install; + inherit (buildPackages.buildPackages) rsync; }; include = self.callPackage ./pkgs/include/package.nix { - inherit (buildPackages.openbsd) makeMinimal; + inherit (buildOpenbsd) makeMinimal; inherit (buildPackages.netbsd) install rpcgen mtree; }; csu = self.callPackage ./pkgs/csu.nix { inherit (self) include; - inherit (buildPackages.openbsd) makeMinimal; + inherit (buildOpenbsd) makeMinimal; inherit (buildPackages.netbsd) install; }; make-rules = self.callPackage ./pkgs/make-rules/package.nix { }; diff --git a/pkgs/os-specific/bsd/openbsd/pkgs/csu.nix b/pkgs/os-specific/bsd/openbsd/pkgs/csu.nix index a2b2153a729b1..03a7180425684 100644 --- a/pkgs/os-specific/bsd/openbsd/pkgs/csu.nix +++ b/pkgs/os-specific/bsd/openbsd/pkgs/csu.nix @@ -9,6 +9,7 @@ }: mkDerivation { + noLibc = true; path = "lib/csu"; nativeBuildInputs = [ bsdSetupHook diff --git a/pkgs/os-specific/bsd/openbsd/pkgs/libc/package.nix b/pkgs/os-specific/bsd/openbsd/pkgs/libc/package.nix index cf233c827840a..03fd256eee9d7 100644 --- a/pkgs/os-specific/bsd/openbsd/pkgs/libc/package.nix +++ b/pkgs/os-specific/bsd/openbsd/pkgs/libc/package.nix @@ -1,6 +1,6 @@ { lib, - stdenv, + stdenvNoLibc, mkDerivation, bsdSetupHook, openbsdSetupHook, @@ -10,7 +10,6 @@ byacc, gencat, rpcgen, - lorder, csu, include, ctags, @@ -19,7 +18,8 @@ fetchpatch, }: -mkDerivation rec { +mkDerivation { + noLibc = true; pname = "libc"; path = "lib/libc"; extraPaths = [ @@ -53,7 +53,6 @@ mkDerivation rec { gencat rpcgen ctags - lorder tsort ]; @@ -69,7 +68,9 @@ mkDerivation rec { # Suppress lld >= 16 undefined version errors # https://github.com/freebsd/freebsd-src/commit/2ba84b4bcdd6012e8cfbf8a0d060a4438623a638 - env.NIX_LDFLAGS = lib.optionalString (stdenv.hostPlatform.linker == "lld") "--undefined-version"; + env.NIX_LDFLAGS = lib.optionalString ( + stdenvNoLibc.hostPlatform.linker == "lld" + ) "--undefined-version"; makeFlags = [ "STRIP=-s" # flag to install, not command diff --git a/pkgs/os-specific/bsd/openbsd/pkgs/lorder.nix b/pkgs/os-specific/bsd/openbsd/pkgs/lorder.nix index 25ff1fcbd14f6..c923a84317682 100644 --- a/pkgs/os-specific/bsd/openbsd/pkgs/lorder.nix +++ b/pkgs/os-specific/bsd/openbsd/pkgs/lorder.nix @@ -8,6 +8,7 @@ }: mkDerivation { + noCC = true; path = "usr.bin/lorder"; nativeBuildInputs = [ bsdSetupHook diff --git a/pkgs/os-specific/bsd/openbsd/pkgs/make-rules/package.nix b/pkgs/os-specific/bsd/openbsd/pkgs/make-rules/package.nix index 1e7c705c0dfd0..fefa1136eb76d 100644 --- a/pkgs/os-specific/bsd/openbsd/pkgs/make-rules/package.nix +++ b/pkgs/os-specific/bsd/openbsd/pkgs/make-rules/package.nix @@ -2,7 +2,6 @@ fetchpatch, lib, mkDerivation, - stdenv, }: mkDerivation { diff --git a/pkgs/os-specific/bsd/openbsd/pkgs/mkDerivation.nix b/pkgs/os-specific/bsd/openbsd/pkgs/mkDerivation.nix index 6c5bc5cd17193..5d7b67502cf7a 100644 --- a/pkgs/os-specific/bsd/openbsd/pkgs/mkDerivation.nix +++ b/pkgs/os-specific/bsd/openbsd/pkgs/mkDerivation.nix @@ -2,6 +2,7 @@ lib, stdenv, stdenvNoCC, + stdenvNoLibc, runCommand, rsync, source, @@ -14,7 +15,13 @@ lib.makeOverridable ( attrs: let - stdenv' = if attrs.noCC or false then stdenvNoCC else stdenv; + stdenv' = + if attrs.noCC or false then + stdenvNoCC + else if attrs.noLibc or false then + stdenvNoLibc + else + stdenv; in stdenv'.mkDerivation ( rec { @@ -43,9 +50,6 @@ lib.makeOverridable ( HOST_SH = stdenv'.shell; - # Since STRIP below is the flag - STRIPBIN = "${stdenv.cc.bintools.targetPrefix}strip"; - makeFlags = [ "STRIP=-s" # flag to install, not command "-B" @@ -81,6 +85,9 @@ lib.makeOverridable ( // lib.optionalAttrs stdenv'.hasCC { # TODO should CC wrapper set this? CPP = "${stdenv'.cc.targetPrefix}cpp"; + + # Since STRIP in `makeFlags` has to be a flag, not the binary itself + STRIPBIN = "${stdenv'.cc.bintools.targetPrefix}strip"; } // lib.optionalAttrs (attrs.headersOnly or false) { installPhase = "includesPhase"; diff --git a/pkgs/os-specific/linux/amdgpu-pro/default.nix b/pkgs/os-specific/linux/amdgpu-pro/default.nix deleted file mode 100644 index ade6da99810b2..0000000000000 --- a/pkgs/os-specific/linux/amdgpu-pro/default.nix +++ /dev/null @@ -1,222 +0,0 @@ -{ lib -, stdenv -, fetchurl -, elfutils -, xorg -, patchelf -, libxcb -, libxshmfence -, perl -, zlib -, expat -, libffi_3_3 -, libselinux -, libdrm -, udev -, kernel ? null -}: - -with lib; - -let - - bitness = if stdenv.is64bit then "64" else "32"; - - libArch = - if stdenv.hostPlatform.system == "i686-linux" then - "i386-linux-gnu" - else if stdenv.hostPlatform.system == "x86_64-linux" then - "x86_64-linux-gnu" - else throw "amdgpu-pro is Linux only. Sorry ${stdenv.hostPlatform.system}."; - -in stdenv.mkDerivation rec { - - version = "21.30"; - pname = "amdgpu-pro"; - build = "${version}-1290604"; - - src = fetchurl { - url = "https://drivers.amd.com/drivers/linux/amdgpu-pro-${build}-ubuntu-20.04.tar.xz"; - sha256 = "sha256-WECqxjo2WLP3kMWeVyJgYufkvHTzwGaj57yeMGXiQ4I="; - curlOpts = "--referer https://www.amd.com/en/support/kb/release-notes/rn-amdgpu-unified-linux-21-30"; - }; - - postUnpack = '' - mkdir root - pushd $sourceRoot - for deb in *_all.deb *_${if stdenv.is64bit then "amd64" else "i386"}.deb - do - ar p $deb data.tar.xz | tar -C ../root -xJ - done - popd - # if we don't use a short sourceRoot, compilation can fail due to command - # line length - sourceRoot=root - ''; - - passthru = optionalAttrs (kernel != null) { - kmod = stdenv.mkDerivation rec { - inherit version src postUnpack; - name = "${pname}-${version}-kmod-${kernel.dev.version}"; - - postPatch = '' - pushd usr/src/amdgpu-* - patchShebangs amd/dkms/*.sh - substituteInPlace amd/dkms/pre-build.sh --replace "./configure" "./configure --with-linux=${kernel.dev}/lib/modules/${kernel.modDirVersion}/source --with-linux-obj=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build" - popd - ''; - - preConfigure = '' - pushd usr/src/amdgpu-* - makeFlags="$makeFlags M=$(pwd)" - amd/dkms/pre-build.sh ${kernel.version} - popd - ''; - - postBuild = '' - pushd usr/src/amdgpu-* - find -name \*.ko -exec xz {} \; - popd - ''; - - makeFlags = optionalString (kernel != null) "-C ${kernel.dev}/lib/modules/${kernel.modDirVersion}/build modules"; - - installPhase = '' - runHook preInstall - - pushd usr/src/amdgpu-* - find -name \*.ko.xz -exec install -Dm444 {} $out/lib/modules/${kernel.modDirVersion}/kernel/drivers/gpu/drm/{} \; - popd - - runHook postInstall - ''; - - # without this we get a collision with the ttm module from linux - meta.priority = 4; - }; - - fw = stdenv.mkDerivation rec { - inherit version src postUnpack; - name = "${pname}-${version}-fw"; - - installPhase = '' - runHook preInstall - - mkdir -p $out/lib - cp -r usr/src/amdgpu-*/firmware $out/lib/firmware - - runHook postInstall - ''; - }; - }; - - outputs = [ "out" "vulkan" ]; - - depLibPath = makeLibraryPath [ - stdenv.cc.cc.lib - zlib - libxcb - libxshmfence - elfutils - expat - libffi_3_3 - libselinux - # libudev is not listed in any dependencies, but is loaded dynamically - udev - xorg.libXext - xorg.libX11 - xorg.libXfixes - xorg.libXdamage - xorg.libXxf86vm - ]; - - installPhase = '' - runHook preInstall - - mkdir -p $out - - cp -r usr/lib/${libArch} $out/lib - cp -r usr/share $out/share - - mkdir -p $out/opt/amdgpu{,-pro} - cp -r opt/amdgpu-pro/lib/${libArch} $out/opt/amdgpu-pro/lib - cp -r opt/amdgpu/lib/${libArch} $out/opt/amdgpu/lib - - pushd $out/lib - ln -s ../opt/amdgpu-pro/lib/libGL.so* . - ln -s ../opt/amdgpu-pro/lib/libEGL.so* . - popd - - # short name to allow replacement below - ln -s lib/dri $out/dri - - '' + optionalString (stdenv.is64bit) '' - mkdir -p $out/etc - pushd etc - cp -r modprobe.d udev amd $out/etc - popd - - cp -r lib/udev/rules.d/* $out/etc/udev/rules.d - cp -r opt/amdgpu/lib/xorg $out/lib/xorg - cp -r opt/amdgpu-pro/lib/xorg/* $out/lib/xorg - cp -r opt/amdgpu/share $out/opt/amdgpu/share - '' + '' - - mkdir -p $vulkan/share/vulkan/icd.d - install opt/amdgpu-pro/etc/vulkan/icd.d/amd_icd${bitness}.json $vulkan/share/vulkan/icd.d - - runHook postInstall - ''; - - preFixup = (if stdenv.is64bit - # this could also be done with LIBGL_DRIVERS_PATH, but it would need to be - # set in the user session and for Xorg - then '' - expr1='s:/opt/amdgpu/lib/x86_64-linux-gnu/dri\0:/run/opengl-driver/lib/dri\0\0\0\0\0\0\0\0\0\0\0:g' - expr2='s:/usr/lib/x86_64-linux-gnu/dri[\0\:]:/run/opengl-driver/lib/dri\0\0\0\0:g' - perl -pi -e "$expr2" $out/lib/xorg/modules/extensions/libglx.so - '' - else '' - expr1='s:/opt/amdgpu/lib/i386-linux-gnu/dri\0:/run/opengl-driver-32/lib/dri\0\0\0\0\0\0:g' - # we replace a different path on 32-bit because it's the only one long - # enough to fit the target path :( - expr2='s:/usr/lib/i386-linux-gnu/dri[\0\:]:/run/opengl-driver-32/dri\0\0\0:g' - '') + '' - perl -pi -e "$expr1" \ - $out/opt/amdgpu/lib/libEGL.so.1.0.0 \ - $out/opt/amdgpu/lib/libgbm.so.1.0.0 \ - $out/opt/amdgpu/lib/libGL.so.1.2.0 - - perl -pi -e "$expr2" \ - $out/opt/amdgpu-pro/lib/libEGL.so.1 \ - $out/opt/amdgpu-pro/lib/libGL.so.1.2 \ - $out/opt/amdgpu-pro/lib/libGLX_amd.so.0 - - find $out -type f -exec perl -pi -e 's:/opt/amdgpu-pro/:/run/amdgpu-pro/:g' {} \; - find $out -type f -exec perl -pi -e 's:/opt/amdgpu/:/run/amdgpu/:g' {} \; - - substituteInPlace $vulkan/share/vulkan/icd.d/*.json --replace /opt/amdgpu-pro/lib/${libArch} "$out/opt/amdgpu-pro/lib" - ''; - - # doing this in post because shrinking breaks things that dynamically load - postFixup = '' - libPath="$out/opt/amdgpu/lib:$out/opt/amdgpu-pro/lib:$depLibPath" - find "$out" -name '*.so*' -type f -exec patchelf --set-rpath "$libPath" {} \; - ''; - - buildInputs = [ - libdrm - patchelf - perl - ]; - - enableParallelBuilding = true; - - meta = with lib; { - description = "AMDGPU-PRO drivers"; - homepage = "https://www.amd.com/en/support"; - license = licenses.unfree; - platforms = platforms.linux; - maintainers = with maintainers; [ corngood ]; - }; -} diff --git a/pkgs/os-specific/windows/default.nix b/pkgs/os-specific/windows/default.nix index 234abcde16117..7b9bbcc52f791 100644 --- a/pkgs/os-specific/windows/default.nix +++ b/pkgs/os-specific/windows/default.nix @@ -1,5 +1,5 @@ { lib, stdenv, buildPackages -, newScope, overrideCC, crossLibcStdenv, libcCross +, newScope, overrideCC, stdenvNoLibc, libcCross }: lib.makeScope newScope (self: with self; { @@ -14,11 +14,11 @@ lib.makeScope newScope (self: with self; { mingw_runtime = mingwrt; mingw_w64 = callPackage ./mingw-w64 { - stdenv = crossLibcStdenv; + stdenv = stdenvNoLibc; }; # FIXME untested with llvmPackages_16 was using llvmPackages_8 - crossThreadsStdenv = overrideCC crossLibcStdenv + crossThreadsStdenv = overrideCC stdenvNoLibc (if stdenv.hostPlatform.useLLVM or false then buildPackages.llvmPackages.clangNoLibcxx else buildPackages.gccWithoutTargetLibc.override (old: { diff --git a/pkgs/os-specific/windows/mingw-w64/default.nix b/pkgs/os-specific/windows/mingw-w64/default.nix index 706186c8e2f15..ba2b243a9408a 100644 --- a/pkgs/os-specific/windows/mingw-w64/default.nix +++ b/pkgs/os-specific/windows/mingw-w64/default.nix @@ -3,18 +3,12 @@ , windows , fetchurl , autoreconfHook +, mingw_w64_headers }: -let - version = "11.0.1"; -in stdenv.mkDerivation { +stdenv.mkDerivation { pname = "mingw-w64"; - inherit version; - - src = fetchurl { - url = "mirror://sourceforge/mingw-w64/mingw-w64-v${version}.tar.bz2"; - hash = "sha256-P2a84Gnui+10OaGhPafLkaXmfqYXDyExesf1eUYl7hA="; - }; + inherit (mingw_w64_headers) version src meta; outputs = [ "out" "dev" ]; @@ -30,8 +24,4 @@ in stdenv.mkDerivation { nativeBuildInputs = [ autoreconfHook ]; buildInputs = [ windows.mingw_w64_headers ]; hardeningDisable = [ "stackprotector" "fortify" ]; - - meta = { - platforms = lib.platforms.windows; - }; } diff --git a/pkgs/os-specific/windows/mingw-w64/headers.nix b/pkgs/os-specific/windows/mingw-w64/headers.nix index 1fd27a8c4573f..d5edaeaa2bd1e 100644 --- a/pkgs/os-specific/windows/mingw-w64/headers.nix +++ b/pkgs/os-specific/windows/mingw-w64/headers.nix @@ -1,11 +1,19 @@ -{ stdenvNoCC, mingw_w64 }: +{ lib, stdenvNoCC, fetchurl }: -stdenvNoCC.mkDerivation { - name = "${mingw_w64.name}-headers"; - inherit (mingw_w64) src meta; +stdenvNoCC.mkDerivation (finalAttrs: { + pname = "mingw_w64-headers"; + version = "11.0.1"; + + src = fetchurl { + url = "mirror://sourceforge/mingw-w64/mingw-w64-v${finalAttrs.version}.tar.bz2"; + hash = "sha256-P2a84Gnui+10OaGhPafLkaXmfqYXDyExesf1eUYl7hA="; + }; preConfigure = '' cd mingw-w64-headers ''; -} + meta = { + platforms = lib.platforms.windows; + }; +}) diff --git a/pkgs/os-specific/windows/mingw-w64/pthreads.nix b/pkgs/os-specific/windows/mingw-w64/pthreads.nix index 3b143efed1d70..3c5fab4fa708f 100644 --- a/pkgs/os-specific/windows/mingw-w64/pthreads.nix +++ b/pkgs/os-specific/windows/mingw-w64/pthreads.nix @@ -1,8 +1,8 @@ -{ stdenv, mingw_w64 }: +{ stdenv, mingw_w64_headers }: stdenv.mkDerivation { - name = "${mingw_w64.name}-pthreads"; - inherit (mingw_w64) src meta; + pname = "mingw_w64-pthreads"; + inherit (mingw_w64_headers) version src meta; configureFlags = [ # Rustc require 'libpthread.a' when targeting 'x86_64-pc-windows-gnu'. diff --git a/pkgs/servers/minio/default.nix b/pkgs/servers/minio/default.nix index 88901e88a7a72..93be1992f3a23 100644 --- a/pkgs/servers/minio/default.nix +++ b/pkgs/servers/minio/default.nix @@ -21,16 +21,16 @@ let in buildGoModule rec { pname = "minio"; - version = "2024-06-06T09-36-42Z"; + version = "2024-06-13T22-53-53Z"; src = fetchFromGitHub { owner = "minio"; repo = "minio"; rev = "RELEASE.${version}"; - hash = "sha256-oj8hFtHnU1b/9t9qxxO8UblRqfv6lxZNwqxTB2TBZN0="; + hash = "sha256-SqrL1fYVy7OylepQGmTm6p77q3vssNdWyJ5+9wZHehQ="; }; - vendorHash = "sha256-S+Afa7gC1vyH3KuzTce+bk7bt8wMJBjvEui58MM1QJk="; + vendorHash = "sha256-AK6PGX/ezkN/LAnOLd8fRGkzwhTE4BY63H9ebnXxEOA="; doCheck = false; diff --git a/pkgs/servers/sql/postgresql/ext/default.nix b/pkgs/servers/sql/postgresql/ext/default.nix index 6166bda6b41d7..383eee05b3ef8 100644 --- a/pkgs/servers/sql/postgresql/ext/default.nix +++ b/pkgs/servers/sql/postgresql/ext/default.nix @@ -74,6 +74,8 @@ self: super: { smlar = super.callPackage ./smlar.nix { }; + system_stats = super.callPackage ./system_stats.nix { }; + temporal_tables = super.callPackage ./temporal_tables.nix { }; timescaledb = super.callPackage ./timescaledb.nix { }; diff --git a/pkgs/servers/sql/postgresql/ext/system_stats.nix b/pkgs/servers/sql/postgresql/ext/system_stats.nix new file mode 100644 index 0000000000000..bc2a0973b95f3 --- /dev/null +++ b/pkgs/servers/sql/postgresql/ext/system_stats.nix @@ -0,0 +1,40 @@ +{ + fetchFromGitHub, + lib, + stdenv, + postgresql, +}: +stdenv.mkDerivation rec { + pname = "system_stats"; + version = "3.0"; + + buildInputs = [ postgresql ]; + + src = fetchFromGitHub { + owner = "EnterpriseDB"; + repo = "system_stats"; + rev = "v${version}"; + hash = "sha256-LuX7/LOi0rl6L/kjbjq7rr2zPcGIOYB7hdZBNJ9xqak="; + }; + + installPhase = '' + runHook preInstall + + mkdir -p $out/{lib,share/postgresql/extension} + + cp *${postgresql.dlSuffix} $out/lib + cp *.sql $out/share/postgresql/extension + cp *.control $out/share/postgresql/extension + + runHook postInstall + ''; + + meta = with lib; { + description = "A Postgres extension for exposing system metrics such as CPU, memory and disk information"; + homepage = "https://github.com/EnterpriseDB/system_stats"; + changelog = "https://github.com/EnterpriseDB/system_stats/raw/v${version}/CHANGELOG.md"; + maintainers = with maintainers; [ shivaraj-bh ]; + platforms = postgresql.meta.platforms; + license = licenses.postgresql; + }; +} diff --git a/pkgs/shells/powershell/default.nix b/pkgs/shells/powershell/default.nix index 4c8d60b679eab..715f33bbbf816 100644 --- a/pkgs/shells/powershell/default.nix +++ b/pkgs/shells/powershell/default.nix @@ -29,7 +29,7 @@ let in stdenv.mkDerivation rec { pname = "powershell"; - version = "7.4.2"; + version = "7.4.3"; src = passthru.sources.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}"); @@ -84,19 +84,19 @@ stdenv.mkDerivation rec { sources = { aarch64-darwin = fetchurl { url = "https://github.com/PowerShell/PowerShell/releases/download/v${version}/powershell-${version}-osx-arm64.tar.gz"; - hash = "sha256-Gg1wXIw/x/s0dgCkycZ4fC4eK+zIoduHr8nHvBOPFm4="; + hash = "sha256-n1A17psyDWY/BtwvmQn3SjYqhX/C5xZJnq83aA3mUJk="; }; aarch64-linux = fetchurl { url = "https://github.com/PowerShell/PowerShell/releases/download/v${version}/powershell-${version}-linux-arm64.tar.gz"; - hash = "sha256-AGAhaUqeDOliRX0jGJ48uIrgMIY7IhkH+PuJHflJeus="; + hash = "sha256-TuSjvi2aJz2jtwm4CRP99M4dhxzerTCdyOOI6FC8CN0="; }; x86_64-darwin = fetchurl { url = "https://github.com/PowerShell/PowerShell/releases/download/v${version}/powershell-${version}-osx-x64.tar.gz"; - hash = "sha256-jH4XY/XjYljkVV4DlOq+f8lwWDcFGA7yaVFKgGUVz+I="; + hash = "sha256-bMOVJ8TT8Rh79rD+vSJP/gxjNHXQE39qASvLAc9P4D8="; }; x86_64-linux = fetchurl { url = "https://github.com/PowerShell/PowerShell/releases/download/v${version}/powershell-${version}-linux-x64.tar.gz"; - hash = "sha256-NmBdw3l53lry4QeDv3DArYFQUh6B5tfJMiA267iX5/4="; + hash = "sha256-XPzCKK/T/85TbsRUGrr+l8Ypr81tyFyaIHEolLv2Wts="; }; }; tests.version = testers.testVersion { diff --git a/pkgs/shells/zsh/zsh-completions/default.nix b/pkgs/shells/zsh/zsh-completions/default.nix index 1873c38fb9a16..a32d56bedd1f3 100644 --- a/pkgs/shells/zsh/zsh-completions/default.nix +++ b/pkgs/shells/zsh/zsh-completions/default.nix @@ -22,8 +22,13 @@ stdenv.mkDerivation rec { meta = { description = "Additional completion definitions for zsh"; homepage = "https://github.com/zsh-users/zsh-completions"; - license = lib.licenses.free; - + license = with lib.licenses; [ + asl20 + bsd3 + isc + mit + zsh + ]; platforms = lib.platforms.unix; maintainers = [ lib.maintainers.olejorgenb ]; }; diff --git a/pkgs/stdenv/adapters.nix b/pkgs/stdenv/adapters.nix index 2304b3289b7eb..6a8b07b633efd 100644 --- a/pkgs/stdenv/adapters.nix +++ b/pkgs/stdenv/adapters.nix @@ -32,7 +32,11 @@ rec { # Override the compiler in stdenv for specific packages. - overrideCC = stdenv: cc: stdenv.override { allowedRequisites = null; cc = cc; }; + overrideCC = stdenv: cc: stdenv.override { + allowedRequisites = null; + cc = cc; + hasCC = cc != null; + }; # Add some arbitrary packages to buildInputs for specific packages. diff --git a/pkgs/stdenv/cross/default.nix b/pkgs/stdenv/cross/default.nix index 1cbbfeb6d2025..de7ae432f360a 100644 --- a/pkgs/stdenv/cross/default.nix +++ b/pkgs/stdenv/cross/default.nix @@ -41,25 +41,43 @@ in lib.init bootStages ++ [ if crossSystem.isStatic then buildPackages.stdenvAdapters.makeStatic else lib.id; + stdenvNoCC = adaptStdenv (buildPackages.stdenv.override (old: rec { + buildPlatform = localSystem; + hostPlatform = crossSystem; + targetPlatform = crossSystem; + + # Prior overrides are surely not valid as packages built with this run on + # a different platform, and so are disabled. + overrides = _: _: {}; + extraBuildInputs = [ ]; # Old ones run on wrong platform + allowedRequisites = null; + + cc = null; + hasCC = false; + + extraNativeBuildInputs = old.extraNativeBuildInputs + ++ lib.optionals + (hostPlatform.isLinux && !buildPlatform.isLinux) + [ buildPackages.patchelf ] + ++ lib.optional + (let f = p: !p.isx86 || builtins.elem p.libc [ "musl" "wasilibc" "relibc" ] || p.isiOS || p.isGenode; + in f hostPlatform && !(f buildPlatform) ) + buildPackages.updateAutotoolsGnuConfigScriptsHook + ; + })); in { inherit config; overlays = overlays ++ crossOverlays; selfBuild = false; + inherit stdenvNoCC; stdenv = let - baseStdenv = adaptStdenv (buildPackages.stdenv.override (old: rec { - buildPlatform = localSystem; - hostPlatform = crossSystem; - targetPlatform = crossSystem; - - # Prior overrides are surely not valid as packages built with this run on - # a different platform, and so are disabled. - overrides = _: _: {}; + inherit (stdenvNoCC) hostPlatform targetPlatform; + baseStdenv = stdenvNoCC.override { extraBuildInputs = [ ] # Old ones run on wrong platform ++ lib.optionals hostPlatform.isDarwin [ buildPackages.targetPackages.darwin.apple_sdk.frameworks.CoreFoundation ] ; - allowedRequisites = null; - hasCC = !targetPlatform.isGhcjs; + hasCC = !stdenvNoCC.targetPlatform.isGhcjs; cc = if crossSystem.useiOSPrebuilt or false then buildPackages.darwin.iosSdkPkgs.clang @@ -77,16 +95,7 @@ in lib.init bootStages ++ [ then buildPackages.llvmPackages.clang else buildPackages.gcc; - extraNativeBuildInputs = old.extraNativeBuildInputs - ++ lib.optionals - (hostPlatform.isLinux && !buildPlatform.isLinux) - [ buildPackages.patchelf ] - ++ lib.optional - (let f = p: !p.isx86 || builtins.elem p.libc [ "musl" "wasilibc" "relibc" ] || p.isiOS || p.isGenode; - in f hostPlatform && !(f buildPlatform) ) - buildPackages.updateAutotoolsGnuConfigScriptsHook - ; - })); + }; in if config ? replaceCrossStdenv then config.replaceCrossStdenv { inherit buildPackages baseStdenv; } else baseStdenv; }) diff --git a/pkgs/tools/filesystems/dupe-krill/default.nix b/pkgs/tools/filesystems/dupe-krill/default.nix index 09c7ac0e2f4cc..7c2594a8adef7 100644 --- a/pkgs/tools/filesystems/dupe-krill/default.nix +++ b/pkgs/tools/filesystems/dupe-krill/default.nix @@ -2,19 +2,19 @@ rustPlatform.buildRustPackage rec { pname = "dupe-krill"; - version = "1.4.8"; + version = "1.4.9"; src = fetchFromGitHub { owner = "kornelski"; repo = pname; rev = "v${version}"; - sha256 = "sha256-2fT9bw5LgJUQ0tm1T/vV5SaDjNH0OGKt7QUQLd7nmOs="; + sha256 = "sha256-ceeKG45OQLxiYcwq2Kumbpd+lkyY+W/og1/6Zdpd3zo="; postFetch = '' cp ${./Cargo.lock} $out/Cargo.lock ''; }; - cargoSha256 = "sha256-JUcIDUVzSLzblb2EbmSfuCAB+S0fyW6wpGF0b/xR+b0="; + cargoHash = "sha256-jEMvvFOcFij4lT/5Y5xARaVURT/evV9u1Vkqtm4al+g="; meta = with lib; { description = "Fast file deduplicator"; diff --git a/pkgs/tools/graphics/scrot/default.nix b/pkgs/tools/graphics/scrot/default.nix index 4deda64dc479a..d969024f2b5d8 100644 --- a/pkgs/tools/graphics/scrot/default.nix +++ b/pkgs/tools/graphics/scrot/default.nix @@ -15,13 +15,13 @@ stdenv.mkDerivation rec { pname = "scrot"; - version = "1.10"; + version = "1.11.1"; src = fetchFromGitHub { owner = "resurrecting-open-source-projects"; repo = pname; rev = version; - sha256 = "sha256-ypPUQt3N30qUw5ecVRhwz3Hnh9lTOnbAm7o5tdxjyds="; + sha256 = "sha256-MUmvzZMzzKKw5GjOUhpdrMIgKO9/i9RDqDtTsSghd18="; }; nativeBuildInputs = [ diff --git a/pkgs/tools/networking/aircrack-ng/default.nix b/pkgs/tools/networking/aircrack-ng/default.nix index b4cab28e3ebdf..6bfd3136dc984 100644 --- a/pkgs/tools/networking/aircrack-ng/default.nix +++ b/pkgs/tools/networking/aircrack-ng/default.nix @@ -1,34 +1,103 @@ -{ lib, stdenv, fetchurl, libpcap, openssl, zlib, wirelesstools -, iw, ethtool, pciutils, libnl, pkg-config, makeWrapper -, autoreconfHook, usbutils }: +{ lib +, stdenv +, fetchFromGitHub +, fetchzip +, makeWrapper +, autoreconfHook +, pkg-config +, openssl +, libgcrypt +, cmocka +, expect +, sqlite +, pcre2 + # Linux +, libpcap +, zlib +, wirelesstools +, iw +, ethtool +, pciutils +, libnl +, usbutils +, tcpdump +, hostapd +, wpa_supplicant +, screen + + # Cygwin +, libiconv + + # options +, enableExperimental ? true +, useGcrypt ? false +, enableAirolib ? true +, enableRegex ? true +, useAirpcap ? stdenv.isCygwin +}: +let + airpcap-sdk = fetchzip { + pname = "airpcap-sdk"; + version = "4.1.1"; + url = "https://support.riverbed.com/bin/support/download?sid=l3vk3eu649usgu3rj60uncjqqu"; + hash = "sha256-kJhnUvhnF9F/kIJx9NcbRUfIXUSX/SRaO/SWNvdkVT8="; + stripRoot = false; + extension = "zip"; + }; +in stdenv.mkDerivation rec { pname = "aircrack-ng"; version = "1.7"; - src = fetchurl { - url = "https://download.aircrack-ng.org/aircrack-ng-${version}.tar.gz"; - sha256 = "1hsq1gwmafka4bahs6rc8p98yi542h9a502h64bjlygpr3ih99q5"; + src = fetchFromGitHub { + owner = "aircrack-ng"; + repo = "aircrack-ng"; + rev = version; + hash = "sha256-niQDwiqi5GtBW5HIn0endnqPb/MqllcjsjXw4pTyFKY="; }; + postPatch = lib.optionalString stdenv.isLinux '' + substituteInPlace lib/osdep/linux.c --replace-warn /usr/local/bin ${lib.escapeShellArg (lib.makeBinPath [ + wirelesstools + ])} + ''; + + configureFlags = [ + (lib.withFeature enableExperimental "experimental") + (lib.withFeature useGcrypt "gcrypt") + (lib.withFeatureAs useAirpcap "airpcap" airpcap-sdk) + ]; + nativeBuildInputs = [ pkg-config makeWrapper autoreconfHook ]; - buildInputs = [ libpcap openssl zlib libnl iw ethtool pciutils ]; + buildInputs = + lib.singleton (if useGcrypt then libgcrypt else openssl) + ++ lib.optionals stdenv.isLinux [ libpcap zlib libnl iw ethtool pciutils ] + ++ lib.optional (stdenv.isCygwin && stdenv.isClang) libiconv + ++ lib.optional enableAirolib sqlite + ++ lib.optional enableRegex pcre2 + ++ lib.optional useAirpcap airpcap-sdk; - patchPhase = '' - sed -e 's@/usr/local/bin@'${wirelesstools}@ -i lib/osdep/linux.c - ''; + nativeCheckInputs = [ cmocka expect ]; - postFixup = '' - wrapProgram $out/bin/airmon-ng --prefix PATH : ${lib.makeBinPath [ - ethtool iw pciutils usbutils - ]} + postFixup = lib.optionalString stdenv.isLinux '' + wrapProgram "$out/bin/airmon-ng" --prefix PATH : ${lib.escapeShellArg (lib.makeBinPath [ + ethtool + iw + pciutils + usbutils + ])} ''; - meta = with lib; { - description = "Wireless encryption cracking tools"; - homepage = "http://www.aircrack-ng.org/"; - license = licenses.gpl2Plus; - maintainers = with maintainers; [ ]; - platforms = platforms.linux; + installCheckTarget = "integration"; + nativeInstallCheckInputs = [ cmocka expect ] ++ lib.optionals stdenv.isLinux [ tcpdump hostapd wpa_supplicant screen ]; + + meta = { + description = "WiFi security auditing tools suite"; + homepage = "https://www.aircrack-ng.org/"; + license = lib.licenses.gpl2Plus; + maintainers = with lib.maintainers; [ caralice ]; + platforms = with lib.platforms; builtins.concatLists [ linux darwin cygwin netbsd openbsd freebsd illumos ]; + changelog = "https://github.com/aircrack-ng/aircrack-ng/blob/${src.rev}/ChangeLog"; }; } diff --git a/pkgs/tools/networking/ghostunnel/default.nix b/pkgs/tools/networking/ghostunnel/default.nix index 85ffdefb74242..0de39a31bcb7f 100644 --- a/pkgs/tools/networking/ghostunnel/default.nix +++ b/pkgs/tools/networking/ghostunnel/default.nix @@ -7,13 +7,13 @@ buildGoModule rec { pname = "ghostunnel"; - version = "1.7.3"; + version = "1.8.0"; src = fetchFromGitHub { owner = "ghostunnel"; repo = "ghostunnel"; rev = "v${version}"; - hash = "sha256-6yGAXJOyXNj0xf+1vKxVcU6w3VMpSLh+6PC+yKzFbrs="; + hash = "sha256-TYicljKrKBWRKThJlMpMgmMBwesuGw4mC59Dm62PpKI="; }; vendorHash = null; diff --git a/pkgs/tools/networking/httping/default.nix b/pkgs/tools/networking/httping/default.nix deleted file mode 100644 index 1933dc41de0f1..0000000000000 --- a/pkgs/tools/networking/httping/default.nix +++ /dev/null @@ -1,63 +0,0 @@ -{ lib -, stdenv -, fetchFromGitHub -, fetchpatch -, fftw ? null -, gettext -, libintl -, ncurses -, openssl -}: - -stdenv.mkDerivation rec { - pname = "httping"; - version = "2.9"; - - src = fetchFromGitHub { - owner = "folkertvanheusden"; - repo = "HTTPing"; - rev = "v${version}"; - hash = "sha256-aExTXXtW03UKMuMjTMx1k/MUpcRMh1PdSPkDGH+Od70="; - }; - - patches = [ - # Pull upstream fix for missing <unistd.h> - # https://github.com/folkertvanheusden/HTTPing/pull/8 - (fetchpatch { - name = "add-unistd.patch"; - url = "https://github.com/folkertvanheusden/HTTPing/commit/aad3c275686344fe9a235faeac4ee3832f3aa8d5.patch"; - hash = "sha256-bz3AMQTSfSTwUyf9WbkAFWVmFo06ei+Qd55x+RRDREY="; - }) - ]; - - nativeBuildInputs = [ - gettext - ]; - - buildInputs = [ - fftw - libintl - ncurses - openssl - ]; - - makeFlags = [ - "DESTDIR=$(out)" - "PREFIX=" - ]; - - meta = with lib; { - homepage = "https://vanheusden.com/httping"; - description = "ping with HTTP requests"; - longDescription = '' - Give httping an url, and it'll show you how long it takes to connect, - send a request and retrieve the reply (only the headers). Be aware that - the transmission across the network also takes time! So it measures the - latency of the webserver + network. It supports IPv6. - ''; - license = licenses.agpl3Only; - maintainers = []; - platforms = platforms.linux ++ platforms.darwin; - mainProgram = "httping"; - }; -} diff --git a/pkgs/tools/networking/stevenblack-blocklist/default.nix b/pkgs/tools/networking/stevenblack-blocklist/default.nix index 0531a3d20b248..34f64cb5e4804 100644 --- a/pkgs/tools/networking/stevenblack-blocklist/default.nix +++ b/pkgs/tools/networking/stevenblack-blocklist/default.nix @@ -1,7 +1,7 @@ { lib, fetchFromGitHub }: let - version = "3.14.71"; + version = "3.14.79"; in fetchFromGitHub { name = "stevenblack-blocklist-${version}"; @@ -9,7 +9,7 @@ fetchFromGitHub { owner = "StevenBlack"; repo = "hosts"; rev = version; - hash = "sha256-33aDL+nJ+BOwOOSfiaAX3r8BdDM2rWCaeiz55nUXrd8="; + hash = "sha256-MfQGu+Y4/A0GKIu9d//U+yiP0fN/7cWhEo2dut4UvcE="; meta = with lib; { description = "Unified hosts file with base extensions"; @@ -18,6 +18,7 @@ fetchFromGitHub { maintainers = with maintainers; [ moni Guanran928 + frontear ]; }; } diff --git a/pkgs/tools/package-management/lix/common.nix b/pkgs/tools/package-management/lix/common.nix index d36742a007523..8c89cf9fefda6 100644 --- a/pkgs/tools/package-management/lix/common.nix +++ b/pkgs/tools/package-management/lix/common.nix @@ -220,7 +220,7 @@ stdenv.mkDerivation { echo "file binary-dist $out/bin/nix" >> $out/nix-support/hydra-build-products '' + lib.optionalString stdenv.isDarwin '' - for lib in libnixutil.dylib libnixexpr.dylib; do + for lib in liblixutil.dylib liblixexpr.dylib; do install_name_tool \ -change "${lib.getLib boost}/lib/libboost_context.dylib" \ "$out/lib/libboost_context.dylib" \ diff --git a/pkgs/tools/package-management/lix/default.nix b/pkgs/tools/package-management/lix/default.nix index c160e187241e6..c262bbac48c26 100644 --- a/pkgs/tools/package-management/lix/default.nix +++ b/pkgs/tools/package-management/lix/default.nix @@ -51,9 +51,9 @@ lib.makeExtensible (self: ({ lix_2_90 = ( common { - version = "2.90-beta.1"; - hash = "sha256-REWlo2RYHfJkxnmZTEJu3Cd/2VM+wjjpPy7Xi4BdDTQ="; - docCargoHash = "sha256-oH248kR4Of0MhcY2DYxNX0A+/XJ3L+UuIpBKn3sJt54="; + version = "2.90.0-rc1"; + hash = "sha256-WY7BGnu5PnbK4O8cKKv9kvxwzZIGbIQUQLGPHFXitI0="; + docCargoHash = "sha256-V/MEC2aRlVrt/IKozyYZvZTXENrtDS/wsV08/ao4TCw="; } ); diff --git a/pkgs/tools/security/cnspec/default.nix b/pkgs/tools/security/cnspec/default.nix index 2cd981a04bcf3..b02cc7ed4867e 100644 --- a/pkgs/tools/security/cnspec/default.nix +++ b/pkgs/tools/security/cnspec/default.nix @@ -6,18 +6,18 @@ buildGoModule rec { pname = "cnspec"; - version = "11.8.0"; + version = "11.9.0"; src = fetchFromGitHub { owner = "mondoohq"; repo = "cnspec"; rev = "refs/tags/v${version}"; - hash = "sha256-gRmOHDwhOV2dpDdBS+SpyLBq2deL0mVwwgEod4a8BCM="; + hash = "sha256-ry8VUMTswRwt0QViTi6ZnYxDN9P5wVdXLsNJlvhJ3yM="; }; proxyVendor = true; - vendorHash = "sha256-P0HRV7jRF8QZxruoQv2V6x/9v2rmZ3Xe5zZzZ3wj9x0="; + vendorHash = "sha256-csSdZifkohlAVD2vXe4P1J4nX+EJNFB+YaVXRZKBsKI="; subPackages = [ "apps/cnspec" ]; diff --git a/pkgs/tools/security/vault/default.nix b/pkgs/tools/security/vault/default.nix index d70f309376a34..6efce59221d89 100644 --- a/pkgs/tools/security/vault/default.nix +++ b/pkgs/tools/security/vault/default.nix @@ -6,16 +6,16 @@ buildGoModule rec { pname = "vault"; - version = "1.16.2"; + version = "1.17.0"; src = fetchFromGitHub { owner = "hashicorp"; repo = "vault"; rev = "v${version}"; - hash = "sha256-OFYUM6NFNwpx356y+G1yAOOgpinK8qOkLBtUMFPFXK8="; + hash = "sha256-jnX3sJJIe62y5p5w7xs5IQ5xE/9aWzM02H2x/p7E9gc="; }; - vendorHash = "sha256-pWteRqBGKHcqjN3wSxWuoy0YK7w2Zaz2BsiveG7UkVE="; + vendorHash = "sha256-r2tDPAPM8wPWRaArsjf5YcERyy3pwmIM4Wx2HSUdFEg="; proxyVendor = true; diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 6609a49b31914..33be186191994 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -82,6 +82,7 @@ mapAliases ({ apacheAnt_1_9 = throw "Ant 1.9 has been removed since it's not used in nixpkgs anymore"; # Added 2023-11-12 antimicroX = antimicrox; # Added 2021-10-31 appthreat-depscan = dep-scan; # Added 2024-04-10 + arcanist = throw "arcanist was removed as phabricator is not supported and does not accept fixes"; # Added 2024-06-07 arcanPackages = throw "arcanPackages was removed and its sub-attributes were promoted to top-level"; # Added 2023-11-26 archiveopteryx = throw "archiveopteryx depended on an unsupported version of OpenSSL and was unmaintained"; # Added 2024-01-03 ardour_6 = throw "ardour_6 has been removed in favor of newer versions"; # Added 2023-10-13 @@ -97,6 +98,7 @@ mapAliases ({ auditBlasHook = throw "'auditBlasHook' has been removed since it never worked"; # Added 2024-04-02 authy = throw "'authy' has been removed since it reached end of life"; # Added 2024-04-19 avldrums-lv2 = x42-avldrums; # Added 2020-03-29 + avrlibcCross = avrlibc; # Added 2024-06-18 awesome-4-0 = awesome; # Added 2022-05-05 aws-env = throw "aws-env has been removed as the upstream project was unmaintained"; # Added 2024-06-11 @@ -197,6 +199,7 @@ mapAliases ({ cope = throw "'cope' has been removed, as it is broken in nixpkgs since it was added, and fixing it is not trivial"; # Added 2024-04-12 cpp-ipfs-api = cpp-ipfs-http-client; # Project has been renamed. Added 2022-05-15 crispyDoom = crispy-doom; # Added 2023-05-01 + crossLibcStdenv = stdenvNoLibc; # Added 2024-06-18 cryptowatch-desktop = throw "Cryptowatch Desktop was sunset on September 30th 2023 and has been removed from nixpkgs"; # Added 2023-12-22 clash = throw "'clash' has been removed, upstream gone. Consider using 'mihomo' instead."; # added 2023-11-10 clasp = clingo; # added 2022-12-22 @@ -875,6 +878,7 @@ mapAliases ({ mpd_clientlib = libmpdclient; # Added 2021-02-11 mpdevil = plattenalbum; # Added 2024-05-22 mpg321 = throw "'mpg321' has been removed due to it being unmaintained by upstream. Consider using mpg123 instead."; # Added 2024-05-10 + msp430NewlibCross = msp430Newlib; # Added 2024-06-18 mumble_git = throw "'mumble_git' has been renamed to/replaced by 'pkgs.mumble'"; # Converted to throw 2023-09-10 murmur_git = throw "'murmur_git' has been renamed to/replaced by 'pkgs.murmur'"; # Converted to throw 2023-09-10 mutt-with-sidebar = mutt; # Added 2022-09-17 @@ -908,6 +912,8 @@ mapAliases ({ nagiosPluginsOfficial = monitoring-plugins; neochat = libsForQt5.kdeGear.neochat; # added 2022-05-10 neoload = throw "'neoload' has been removed as it is broken and unmaintained"; # Added 2024-03-02 + newlibCross = newlib; # Added 2024-06-18 + newlib-nanoCross = newlib-nano; # Added 2024-06-18 nitrokey-udev-rules = libnitrokey; # Added 2023-03-25 nix-direnv-flakes = nix-direnv; nix-repl = throw ( @@ -1331,6 +1337,8 @@ mapAliases ({ uade123 = uade; # Added 2022-07-30 uberwriter = apostrophe; # Added 2020-04-23 ubootBeagleboneBlack = ubootAmx335xEVM; # Added 2020-01-21 + uclibc = uclibc-ng; # Added 2022-06-16 + uclibcCross = uclibc-ng; # Added 2022-06-16 ue4 = throw "ue4 has been removed, because the package was broken for years"; # Added 2023-11-22 uhd3_5 = throw "uhd3_5 has been removed, because it was no longer needed"; # Added 2023-10-07 uhhyou.lv2 = throw "'uhhyou.lv2' has been removed, upstream gone"; # Added 2023-06-21 @@ -1468,6 +1476,10 @@ mapAliases ({ inherit (stdenv.hostPlatform) system; # Added 2021-10-22 inherit (stdenv) buildPlatform hostPlatform targetPlatform; # Added 2023-01-09 + freebsdCross = freebsd; # Added 2024-06-18 + netbsdCross = netbsd; # Added 2024-06-18 + openbsdCross = openbsd; # Added 2024-06-18 + # LLVM packages for (integration) testing that should not be used inside Nixpkgs: llvmPackages_latest = llvmPackages_18; llvmPackages_git = recurseIntoAttrs (callPackage ../development/compilers/llvm/git { diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index adba1c835f36e..36cdab06d6dca 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -31,19 +31,6 @@ with pkgs; # it's just the plain stdenv. stdenv_32bit = lowPrio (if stdenv.hostPlatform.is32bit then stdenv else multiStdenv); - stdenvNoCC = stdenv.override ( - { cc = null; hasCC = false; } - - // lib.optionalAttrs (stdenv.hostPlatform.isDarwin && (stdenv.hostPlatform != stdenv.buildPlatform)) { - # TODO: This is a hack to use stdenvNoCC to produce a CF when cross - # compiling. It's not very sound. The cross stdenv has: - # extraBuildInputs = [ targetPackages.darwin.apple_sdks.frameworks.CoreFoundation ] - # and uses stdenvNoCC. In order to make this not infinitely recursive, we - # need to exclude this extraBuildInput. - extraBuildInputs = []; - } - ); - mkStdenvNoLibs = stdenv: let bintools = stdenv.cc.bintools.override { libc = null; @@ -61,7 +48,7 @@ with pkgs; }; stdenvNoLibs = - if stdenv.hostPlatform != stdenv.buildPlatform && (stdenv.hostPlatform.isDarwin || stdenv.hostPlatform.useLLVM or false) + if stdenvNoCC.hostPlatform != stdenvNoCC.buildPlatform then # We cannot touch binutils or cc themselves, because that will cause # infinite recursion. So instead, we just choose a libc based on the @@ -74,7 +61,17 @@ with pkgs; # thing to to create an earlier thing (leading to infinite recursion) and # we also would still respect the stage arguments choices for these # things. - overrideCC stdenv buildPackages.llvmPackages.clangNoCompilerRt + (if stdenvNoCC.hostPlatform.isDarwin || stdenvNoCC.hostPlatform.useLLVM or false + then overrideCC stdenvNoCC buildPackages.llvmPackages.clangNoCompilerRt + else gccCrossLibcStdenv) + else mkStdenvNoLibs stdenv; + + stdenvNoLibc = + if stdenvNoCC.hostPlatform != stdenvNoCC.buildPlatform + then + (if stdenvNoCC.hostPlatform.isDarwin || stdenvNoCC.hostPlatform.useLLVM or false + then overrideCC stdenvNoCC buildPackages.llvmPackages.clangNoLibc + else gccCrossLibcStdenv) else mkStdenvNoLibs stdenv; gccStdenvNoLibs = mkStdenvNoLibs gccStdenv; @@ -1751,8 +1748,6 @@ with pkgs; copier = callPackage ../tools/misc/copier { }; - gabutdm = callPackage ../applications/networking/gabutdm { }; - gamemode = callPackage ../tools/games/gamemode { libgamemode32 = pkgsi686Linux.gamemode.lib; }; @@ -3060,8 +3055,6 @@ with pkgs; lilo = callPackage ../tools/misc/lilo { }; - logseq = callPackage ../applications/misc/logseq { }; - natls = callPackage ../tools/misc/natls { }; notion-app-enhanced = callPackage ../applications/office/notion-app-enhanced { }; @@ -3201,8 +3194,6 @@ with pkgs; arangodb = callPackage ../servers/nosql/arangodb { }; - arcanist = callPackage ../development/tools/misc/arcanist { php = php81; }; - arduino = arduino-core.override { withGui = true; }; arduino-ci = callPackage ../development/embedded/arduino/arduino-ci { }; @@ -3636,6 +3627,7 @@ with pkgs; dell-command-configure = callPackage ../tools/system/dell-command-configure { }; deltachat-desktop = callPackage ../applications/networking/instant-messengers/deltachat-desktop { + electron = electron_30; inherit (darwin.apple_sdk.frameworks) CoreServices; }; @@ -5695,6 +5687,11 @@ with pkgs; loccount = callPackage ../development/tools/misc/loccount { }; + logseq = callPackage ../by-name/lo/logseq/package.nix { + # electron version from: https://github.com/logseq/logseq/blob/d8c6ca264bdf9a6a0f03c46dbf3509210367624a/package.json#L116 + electron = electron_28; + }; + long-shebang = callPackage ../misc/long-shebang { }; lssecret = callPackage ../misc/lssecret {}; @@ -8960,8 +8957,6 @@ with pkgs; httpie = with python3Packages; toPythonApplication httpie; - httping = callPackage ../tools/networking/httping { }; - httplz = callPackage ../tools/networking/httplz { }; httpfs2 = callPackage ../tools/filesystems/httpfs { }; @@ -15461,12 +15456,7 @@ with pkgs; dontStrip = true; })); - gccCrossLibcStdenv = overrideCC stdenv buildPackages.gccWithoutTargetLibc; - - crossLibcStdenv = - if stdenv.hostPlatform.useLLVM or false || stdenv.hostPlatform.isDarwin - then overrideCC stdenv buildPackages.llvmPackages.clangNoLibc - else gccCrossLibcStdenv; + gccCrossLibcStdenv = overrideCC stdenvNoCC buildPackages.gccWithoutTargetLibc; # The GCC used to build libc for the target platform. Normal gccs will be # built with, and use, that cross-compiled libc. @@ -17634,9 +17624,8 @@ with pkgs; h3 = h3_3; - avrlibc = callPackage ../development/misc/avr/libc { }; - avrlibcCross = callPackage ../development/misc/avr/libc { - stdenv = crossLibcStdenv; + avrlibc = callPackage ../development/misc/avr/libc { + stdenv = stdenvNoLibc; }; avr8burnomat = callPackage ../development/misc/avr8-burn-omat { }; @@ -17710,10 +17699,7 @@ with pkgs; msp430GccSupport = callPackage ../development/misc/msp430/gcc-support.nix { }; - msp430Newlib = callPackage ../development/misc/msp430/newlib.nix { }; - msp430NewlibCross = callPackage ../development/misc/msp430/newlib.nix { - newlib = newlibCross; - }; + msp430Newlib = callPackage ../development/misc/msp430/newlib.nix { }; mspds = callPackage ../development/misc/msp430/mspds { }; mspds-bin = callPackage ../development/misc/msp430/mspds/binary.nix { }; @@ -20928,14 +20914,14 @@ with pkgs; }; muslCross = musl.override { - stdenv = crossLibcStdenv; + stdenv = stdenvNoLibc; }; # These are used when buiding compiler-rt / libgcc, prior to building libc. preLibcCrossHeaders = let inherit (stdenv.targetPlatform) libc; in if stdenv.targetPlatform.isMinGW then targetPackages.windows.mingw_w64_headers or windows.mingw_w64_headers - else if libc == "nblibc" then targetPackages.netbsdCross.headers or netbsdCross.headers + else if libc == "nblibc" then targetPackages.netbsd.headers or netbsd.headers else if libc == "libSystem" && stdenv.targetPlatform.isAarch64 then targetPackages.darwin.LibsystemCross or darwin.LibsystemCross else null; @@ -20946,13 +20932,13 @@ with pkgs; /**/ if name == null then null else if name == "glibc" then targetPackages.glibcCross or glibcCross else if name == "bionic" then targetPackages.bionic or bionic - else if name == "uclibc" then targetPackages.uclibcCross or uclibcCross - else if name == "avrlibc" then targetPackages.avrlibcCross or avrlibcCross - else if name == "newlib" && stdenv.targetPlatform.isMsp430 then targetPackages.msp430NewlibCross or msp430NewlibCross + else if name == "uclibc" then targetPackages.uclibc or uclibc + else if name == "avrlibc" then targetPackages.avrlibc or avrlibc + else if name == "newlib" && stdenv.targetPlatform.isMsp430 then targetPackages.msp430Newlib or msp430Newlib else if name == "newlib" && stdenv.targetPlatform.isVc4 then targetPackages.vc4-newlib or vc4-newlib else if name == "newlib" && stdenv.targetPlatform.isOr1k then targetPackages.or1k-newlib or or1k-newlib - else if name == "newlib" then targetPackages.newlibCross or newlibCross - else if name == "newlib-nano" then targetPackages.newlib-nanoCross or newlib-nanoCross + else if name == "newlib" then targetPackages.newlib or newlib + else if name == "newlib-nano" then targetPackages.newlib-nano or newlib-nano else if name == "musl" then targetPackages.muslCross or muslCross else if name == "msvcrt" then targetPackages.windows.mingw_w64 or windows.mingw_w64 else if name == "ucrt" then targetPackages.windows.mingw_w64 or windows.mingw_w64 @@ -20960,9 +20946,9 @@ with pkgs; if stdenv.targetPlatform.useiOSPrebuilt then targetPackages.darwin.iosSdkPkgs.libraries or darwin.iosSdkPkgs.libraries else targetPackages.darwin.LibsystemCross or (throw "don't yet have a `targetPackages.darwin.LibsystemCross for ${stdenv.targetPlatform.config}`") - else if name == "fblibc" then targetPackages.freebsdCross.libc or freebsdCross.libc - else if name == "oblibc" then targetPackages.openbsdCross.libc or openbsdCross.libc - else if name == "nblibc" then targetPackages.netbsdCross.libc or netbsdCross.libc + else if name == "fblibc" then targetPackages.freebsd.libc or freebsd.libc + else if name == "oblibc" then targetPackages.openbsd.libc or openbsd.libc + else if name == "nblibc" then targetPackages.netbsd.libc or netbsd.libc else if name == "wasilibc" then targetPackages.wasilibc or wasilibc else if name == "relibc" then targetPackages.relibc or relibc else throw "Unknown libc ${name}"; @@ -20978,7 +20964,7 @@ with pkgs; }; wasilibc = callPackage ../development/libraries/wasilibc { - stdenv = crossLibcStdenv; + stdenv = stdenvNoLibc; }; relibc = callPackage ../development/libraries/relibc { }; @@ -27967,14 +27953,6 @@ with pkgs; buildBarebox bareboxTools; - uclibc-ng-cross = uclibc-ng.override { - stdenv = crossLibcStdenv; - }; - - # Aliases - uclibc = uclibc-ng; - uclibcCross = uclibc-ng-cross; - eudev = callPackage ../by-name/eu/eudev/package.nix { util-linux = util-linuxMinimal; }; @@ -31565,8 +31543,6 @@ with pkgs; singularity-overriden-nixos ; - sfwbar = callPackage ../applications/misc/sfwbar { }; - skate = callPackage ../applications/misc/skate { }; slack = callPackage ../applications/networking/instant-messengers/slack { }; @@ -32298,13 +32274,11 @@ with pkgs; libreoffice-bin = callPackage ../applications/office/libreoffice/darwin { }; libreoffice = hiPrio libreoffice-still; + libreoffice-unwrapped = libreoffice.unwrapped; libreoffice-qt = hiPrio libreoffice-qt-still; - libreoffice-qt-unwrapped = libreoffice-qt.unwrapped; - libreoffice-unwrapped = libreoffice.unwrapped; - libreoffice-qt-fresh = lowPrio (callPackage ../applications/office/libreoffice/wrapper.nix { unwrapped = libsForQt5.callPackage ../applications/office/libreoffice { kdeIntegration = true; @@ -32321,6 +32295,9 @@ with pkgs; }); libreoffice-qt-still-unwrapped = libreoffice-qt-still.unwrapped; + libreoffice-qt6 = hiPrio libreoffice-qt6-still; + libreoffice-qt6-unwrapped = libreoffice-qt6.unwrapped; + libreoffice-qt6-fresh = lowPrio (callPackage ../applications/office/libreoffice/wrapper.nix { unwrapped = kdePackages.callPackage ../applications/office/libreoffice { kdeIntegration = true; @@ -40602,18 +40579,11 @@ with pkgs; name = "bsd-setup-hook"; } ../os-specific/bsd/setup-hook.sh; - inherit (callPackage ../os-specific/bsd/freebsd { }) - freebsd freebsdCross; + freebsd = callPackage ../os-specific/bsd/freebsd { }; netbsd = callPackage ../os-specific/bsd/netbsd { }; - netbsdCross = callPackage ../os-specific/bsd/netbsd { - stdenv = crossLibcStdenv; - }; openbsd = callPackage ../os-specific/bsd/openbsd { }; - openbsdCross = callPackage ../os-specific/bsd/openbsd { - stdenv = crossLibcStdenv; - }; powershell = callPackage ../shells/powershell { }; @@ -40637,18 +40607,14 @@ with pkgs; new-session-manager = callPackage ../applications/audio/new-session-manager { }; - newlib = callPackage ../development/misc/newlib { }; - newlibCross = callPackage ../development/misc/newlib { - stdenv = crossLibcStdenv; + newlib = callPackage ../development/misc/newlib { + stdenv = stdenvNoLibc; }; newlib-nano = callPackage ../development/misc/newlib { + stdenv = stdenvNoLibc; nanoizeNewlib = true; }; - newlib-nanoCross = callPackage ../development/misc/newlib { - nanoizeNewlib = true; - stdenv = crossLibcStdenv; - }; omnisharp-roslyn = callPackage ../development/tools/omnisharp-roslyn { }; diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix index 75f0e54d697cb..b924a29f26162 100644 --- a/pkgs/top-level/haskell-packages.nix +++ b/pkgs/top-level/haskell-packages.nix @@ -229,7 +229,7 @@ in { buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_12; llvmPackages = pkgs.llvmPackages_12; }; - ghc948 = callPackage ../development/compilers/ghc/9.4.8.fixme.nix { + ghc948 = callPackage ../development/compilers/ghc/9.4.8.nix { bootPkgs = # Building with 9.2 is broken due to # https://gitlab.haskell.org/ghc/ghc/-/issues/21914 @@ -568,7 +568,7 @@ in { buildHaskellPackages = ghc.bootPkgs; ghc = bh.compiler.ghcjs810; compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.10.x.nix { }; - packageSetConfig = callPackage ../development/haskell-modules/configuration-ghcjs.nix { }; + packageSetConfig = callPackage ../development/haskell-modules/configuration-ghcjs-8.x.nix { }; }; # The integer-simple attribute set contains package sets for all the GHC compilers diff --git a/pkgs/top-level/linux-kernels.nix b/pkgs/top-level/linux-kernels.nix index f26537876d6a0..cf4d860a82326 100644 --- a/pkgs/top-level/linux-kernels.nix +++ b/pkgs/top-level/linux-kernels.nix @@ -318,8 +318,6 @@ in { akvcam = callPackage ../os-specific/linux/akvcam { }; - amdgpu-pro = callPackage ../os-specific/linux/amdgpu-pro { }; - apfs = callPackage ../os-specific/linux/apfs { }; ax99100 = callPackage ../os-specific/linux/ax99100 {}; @@ -605,6 +603,7 @@ in { rtl8723bs = throw "rtl8723bs was added in mainline kernel version 4.12"; # Added 2023-06-14 vm-tools = self.mm-tools; xmm7360-pci = throw "Support for the XMM7360 WWAN card was added to the iosm kmod in mainline kernel version 5.18"; + amdgpu-pro = throw "amdgpu-pro was removed due to lack of maintenance"; # Added 2024-06-16 }); hardenedPackagesFor = kernel: overrides: packagesFor (hardenedKernelFor kernel overrides); diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 42562f4c3244c..b5d918e640c63 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -1514,6 +1514,8 @@ self: super: with self; { bentoml = callPackage ../development/python-modules/bentoml { }; + berkeleydb = callPackage ../development/python-modules/berkeleydb { }; + bespon = callPackage ../development/python-modules/bespon { }; betacode = callPackage ../development/python-modules/betacode { }; @@ -2957,6 +2959,8 @@ self: super: with self; { deltachat = callPackage ../development/python-modules/deltachat { }; + deltachat2 = callPackage ../development/python-modules/deltachat2 { }; + deluge-client = callPackage ../development/python-modules/deluge-client { }; demes = callPackage ../development/python-modules/demes { }; @@ -5341,6 +5345,8 @@ self: super: with self; { hatch-jupyter-builder = callPackage ../development/python-modules/hatch-jupyter-builder { }; + hatch-odoo = callPackage ../development/python-modules/hatch-odoo { }; + hatch-vcs = callPackage ../development/python-modules/hatch-vcs { }; hatch-nodejs-version = callPackage ../development/python-modules/hatch-nodejs-version { }; diff --git a/pkgs/top-level/stage.nix b/pkgs/top-level/stage.nix index 087b43c3cb145..025b6089f471b 100644 --- a/pkgs/top-level/stage.nix +++ b/pkgs/top-level/stage.nix @@ -49,6 +49,10 @@ in , # The standard environment to use for building packages. stdenv +, # `stdenv` without a C compiler. Passing in this helps avoid infinite + # recursions, and may eventually replace passing in the full stdenv. + stdenvNoCC ? stdenv.override { cc = null; hasCC = false; } + , # This is used because stdenv replacement and the stdenvCross do benefit from # the overridden configuration provided by the user, as opposed to the normal # bootstrapping stdenvs. @@ -141,7 +145,7 @@ let pkgs = self.pkgsHostTarget; targetPackages = self.pkgsTargetTarget; - inherit stdenv; + inherit stdenv stdenvNoCC; }; splice = self: super: import ./splice.nix lib self (adjacentPackages != null); |