From ae1cb5ac93f6808be688a1e056d1e58572018f8d Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 7 Jul 2022 16:12:19 +0000 Subject: [PATCH 001/198] caf: 0.18.5 -> 0.18.6 --- pkgs/development/libraries/caf/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/caf/default.nix b/pkgs/development/libraries/caf/default.nix index 8640fb6b5c9c..515f66883d0b 100644 --- a/pkgs/development/libraries/caf/default.nix +++ b/pkgs/development/libraries/caf/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "actor-framework"; - version = "0.18.5"; + version = "0.18.6"; src = fetchFromGitHub { owner = "actor-framework"; repo = "actor-framework"; rev = version; - sha256 = "04b4kjisb5wzq6pilh8xzbxn7qcjgppl8k65hfv0zi0ja8fyp1xk"; + sha256 = "sha256-AW8AXX9t9vYv8tZvFJvrghmz6tZdfbX4hVc2QoBAvhQ="; }; nativeBuildInputs = [ cmake ]; From c926ca0ae0de876403330e72af12b5379084d4da Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 18 Dec 2022 00:34:38 +0000 Subject: [PATCH 002/198] snabb: 2022.10 -> 2022.12 --- pkgs/tools/networking/snabb/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/networking/snabb/default.nix b/pkgs/tools/networking/snabb/default.nix index 97d9ff33ddfc..676c3ae01001 100644 --- a/pkgs/tools/networking/snabb/default.nix +++ b/pkgs/tools/networking/snabb/default.nix @@ -7,13 +7,13 @@ with lib; stdenv.mkDerivation rec { pname = "snabb"; - version = "2022.10"; + version = "2022.12"; src = fetchFromGitHub { owner = "snabbco"; repo = "snabb"; rev = "v${version}"; - sha256 = "GIIW+2/1fuHTmYev/QvuO5Yb2ozbyw/45qQkym36US8="; + sha256 = "sha256-DPJ1GrqZQyiW2s5JBZszcB/Is0Is2f/O/6Riz/M3wAs="; }; installPhase = '' From 041910e6859e2a26ced91cf45789385b968ef926 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 22 Dec 2022 16:03:15 +0000 Subject: [PATCH 003/198] yquake2: 8.10 -> 8.20 --- pkgs/games/quake2/yquake2/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/games/quake2/yquake2/default.nix b/pkgs/games/quake2/yquake2/default.nix index 2e9c09bc62e3..522a8e39fd88 100644 --- a/pkgs/games/quake2/yquake2/default.nix +++ b/pkgs/games/quake2/yquake2/default.nix @@ -13,13 +13,13 @@ let yquake2 = stdenv.mkDerivation rec { pname = "yquake2"; - version = "8.10"; + version = "8.20"; src = fetchFromGitHub { owner = "yquake2"; repo = "yquake2"; rev = "QUAKE2_${builtins.replaceStrings ["."] ["_"] version}"; - sha256 = "sha256-/BbMR/ZPjHbKzQ+I1+Vgh3/zenLjW3TnmrKhKPR6Gdk="; + sha256 = "sha256-x1mk6qo03b438ZBS16/f7pzMCfugtQvaRcV+hg7Zc/w="; }; postPatch = '' From 9e6d466232c5f0ee0b661f14207077139662f93e Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Fri, 23 Dec 2022 01:51:21 +0000 Subject: [PATCH 004/198] geekbench: 5.4.5 -> 5.4.6 --- pkgs/tools/misc/geekbench/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/misc/geekbench/default.nix b/pkgs/tools/misc/geekbench/default.nix index ba9117a29722..77be76f2d2ed 100644 --- a/pkgs/tools/misc/geekbench/default.nix +++ b/pkgs/tools/misc/geekbench/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "geekbench"; - version = "5.4.5"; + version = "5.4.6"; src = fetchurl { url = "https://cdn.geekbench.com/Geekbench-${version}-Linux.tar.gz"; - sha256 = "sha256-JA9bvRb8u0qG6ZsQR9qJ3yaV9ni/MkdWo9xRtmPp92I="; + sha256 = "sha256-fCS6cSD3w2EbLL1yNfH+NKxswRUY4zyCR07gKGXW4Yc="; }; dontConfigure = true; From da47c1c26a48bb8bb7f906aac42c311eae4792f6 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 31 Dec 2022 01:14:23 +0000 Subject: [PATCH 005/198] zita-alsa-pcmi: 0.5.1 -> 0.6.1 --- pkgs/development/libraries/audio/zita-alsa-pcmi/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/audio/zita-alsa-pcmi/default.nix b/pkgs/development/libraries/audio/zita-alsa-pcmi/default.nix index 3d5d973eec55..fc5162b34e8d 100644 --- a/pkgs/development/libraries/audio/zita-alsa-pcmi/default.nix +++ b/pkgs/development/libraries/audio/zita-alsa-pcmi/default.nix @@ -2,10 +2,10 @@ stdenv.mkDerivation rec { pname = "zita-alsa-pcmi"; - version = "0.5.1"; + version = "0.6.1"; src = fetchurl { url = "http://kokkinizita.linuxaudio.org/linuxaudio/downloads/${pname}-${version}.tar.bz2"; - sha256 = "sha256-zyAKaO22She1e/+zPjiwSHeCctGLVYnT0vWgHODzSwc="; + sha256 = "sha256-iil6zj16R0Ex7T+jIQacExM3eFtWojfW8WjIXueW1Ww="; }; buildInputs = [ alsa-lib ]; From 42b3ad82ccbccfcf8196ed89ce2be2fe96260618 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 15 Jan 2023 10:15:07 +0000 Subject: [PATCH 006/198] callaudiod: 0.1.4 -> 0.1.7 --- pkgs/applications/audio/callaudiod/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/audio/callaudiod/default.nix b/pkgs/applications/audio/callaudiod/default.nix index 562a53fe5927..221febf35dcd 100644 --- a/pkgs/applications/audio/callaudiod/default.nix +++ b/pkgs/applications/audio/callaudiod/default.nix @@ -11,14 +11,14 @@ stdenv.mkDerivation rec { pname = "callaudiod"; - version = "0.1.4"; + version = "0.1.7"; src = fetchFromGitLab { domain = "gitlab.com"; owner = "mobian1"; repo = pname; rev = version; - sha256 = "sha256-71+9ALz55aqxXRBRwOcs9fwiQK31pJ9E72pGRmt0OkE="; + sha256 = "sha256-BDEu3ASlnovMK0lQC+CQvpXvtdt33BRntstPAWaAnsg="; }; strictDeps = true; From 912fc670f6dab8b7370430542c3afdf453d0417a Mon Sep 17 00:00:00 2001 From: ajs124 Date: Mon, 23 Jan 2023 00:31:49 +0100 Subject: [PATCH 007/198] mariadb: use openssl_3 for 105 compat was backported, but not to 104 --- pkgs/servers/sql/mariadb/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/servers/sql/mariadb/default.nix b/pkgs/servers/sql/mariadb/default.nix index 9eacea78a37e..13ef62b6576e 100644 --- a/pkgs/servers/sql/mariadb/default.nix +++ b/pkgs/servers/sql/mariadb/default.nix @@ -45,7 +45,7 @@ let ++ lib.optionals stdenv.hostPlatform.isDarwin [ CoreServices cctools perl libedit ] ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [ jemalloc ] ++ (if (lib.versionOlder version "10.5") then [ pcre ] else [ pcre2 ]) - ++ (if (lib.versionOlder version "10.6") + ++ (if (lib.versionOlder version "10.5") then [ openssl_1_1 (curl.override { openssl = openssl_1_1; }) ] else [ openssl curl ]); From 3f5fcc6eab9f05e374e8f93869d9d8ddff252ba0 Mon Sep 17 00:00:00 2001 From: ajs124 Date: Mon, 23 Jan 2023 00:34:34 +0100 Subject: [PATCH 008/198] mariadb_1010: init at 10.10.2 https://mariadb.com/kb/en/mariadb-10-10-2-release-notes/ --- pkgs/servers/sql/mariadb/default.nix | 7 +++++++ pkgs/top-level/all-packages.nix | 1 + 2 files changed, 8 insertions(+) diff --git a/pkgs/servers/sql/mariadb/default.nix b/pkgs/servers/sql/mariadb/default.nix index 13ef62b6576e..fe3e3fba8d2a 100644 --- a/pkgs/servers/sql/mariadb/default.nix +++ b/pkgs/servers/sql/mariadb/default.nix @@ -274,4 +274,11 @@ in inherit (self.darwin) cctools; inherit (self.darwin.apple_sdk.frameworks) CoreServices; }; + mariadb_1010 = self.callPackage generic { + # Supported until 2023-11 + version = "10.10.2"; + hash = "sha256-V8vQESsitZL2V81OuC4vNq2QE1Exe/jheElXjoA/PLI="; + inherit (self.darwin) cctools; + inherit (self.darwin.apple_sdk.frameworks) CoreServices; + }; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 1fc6d073d097..9a8fc0b391a3 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -24664,6 +24664,7 @@ with pkgs; mariadb_106 mariadb_108 mariadb_109 + mariadb_1010 ; mariadb = mariadb_106; mariadb-embedded = mariadb.override { withEmbedded = true; }; From 7e9f255717d06410596d79a776f016b3e51bf60a Mon Sep 17 00:00:00 2001 From: Sebastian Sellmeier Date: Fri, 27 Jan 2023 03:35:14 +0100 Subject: [PATCH 009/198] nwg-panel: 0.7.11 -> 0.7.16 --- pkgs/applications/misc/nwg-panel/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/misc/nwg-panel/default.nix b/pkgs/applications/misc/nwg-panel/default.nix index 7724976ebabf..f5ac2ed7e59f 100644 --- a/pkgs/applications/misc/nwg-panel/default.nix +++ b/pkgs/applications/misc/nwg-panel/default.nix @@ -14,13 +14,13 @@ python3Packages.buildPythonApplication rec { pname = "nwg-panel"; - version = "0.7.11"; + version = "0.7.16"; src = fetchFromGitHub { owner = "nwg-piotr"; repo = "nwg-panel"; rev = "refs/tags/v${version}"; - sha256 = "sha256-Esr1OPyQCCQIOfgkl6RIn93ZaJkF0O2RM9ObIgBlPi4="; + sha256 = "sha256-dwnDrFQZVz6Vxa8bX0gFPBZFQwRJ3+wUy6Rsxvb2dhw="; }; # No tests @@ -56,6 +56,6 @@ python3Packages.buildPythonApplication rec { description = "GTK3-based panel for Sway window manager"; license = licenses.mit; platforms = platforms.linux; - maintainers = with maintainers; [ berbiche ]; + maintainers = with maintainers; [ ]; }; } From d9f07dcee585db581688a72d3bcbea2b15794836 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Mon, 30 Jan 2023 16:52:43 +0100 Subject: [PATCH 010/198] nixos/envfs: use configured environment.usrbinenv and environment.binsh Taken from upstream https://github.com/Mic92/envfs/commit/d91aeefccb4485646be9415c9e5d1d3599eb5199 --- nixos/modules/tasks/filesystems/envfs.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nixos/modules/tasks/filesystems/envfs.nix b/nixos/modules/tasks/filesystems/envfs.nix index 450b805f0f58..df4ce12407bd 100644 --- a/nixos/modules/tasks/filesystems/envfs.nix +++ b/nixos/modules/tasks/filesystems/envfs.nix @@ -9,8 +9,8 @@ let options = [ "fallback-path=${pkgs.runCommand "fallback-path" {} '' mkdir -p $out - ln -s ${pkgs.coreutils}/bin/env $out/env - ln -s ${config.system.build.binsh}/bin/sh $out/sh + ln -s ${config.environment.usrbinenv} $out/env + ln -s ${config.environment.binsh} $out/sh ''}" ]; }; From c8bb1b66fd21c1d8d37ec8a177d01a7512a30a22 Mon Sep 17 00:00:00 2001 From: laalsaas Date: Mon, 23 Jan 2023 21:25:10 +0100 Subject: [PATCH 011/198] handbrake: 1.5.1 -> 1.6.1 Additionaly, use the ffmpeg patches from upstream and bump ffmpeg version to 5.1. Fixes #211297 --- pkgs/applications/video/handbrake/default.nix | 354 +++++++++--------- 1 file changed, 178 insertions(+), 176 deletions(-) diff --git a/pkgs/applications/video/handbrake/default.nix b/pkgs/applications/video/handbrake/default.nix index 7c06f6ddb859..bd15099b26ba 100644 --- a/pkgs/applications/video/handbrake/default.nix +++ b/pkgs/applications/video/handbrake/default.nix @@ -25,7 +25,7 @@ , numactl , writeText # Processing, video codecs, containers -, ffmpeg-full +, ffmpeg_5-full , nv-codec-headers , libogg , x264 @@ -34,6 +34,7 @@ , libtheora , dav1d , zimg +, svt-av1 # Codecs, audio , libopus , lame @@ -84,57 +85,55 @@ }: let - version = "1.5.1"; + version = "1.6.1"; src = fetchFromGitHub { owner = "HandBrake"; repo = "HandBrake"; rev = version; - sha256 = "1kk11zl1mk37d4cvbc75gfndmma7vy3vkp4gmkyl92kiz6zadhyy"; + sha256 = "sha256-0MJ1inMNA6s8l2S0wnpM2c7FxOoOHxs9u4E/rgKfjJo="; }; # Handbrake maintains a set of ffmpeg patches. In particular, these # patches are required for subtitle timing to work correctly. See: # https://github.com/HandBrake/HandBrake/issues/4029 - ffmpeg-version = "4.4.1"; - ffmpeg-hb = ffmpeg-full.overrideAttrs (old: { + ffmpeg-version = "5.1.1"; + ffmpeg-hb = ffmpeg_5-full.overrideAttrs (old: { version = ffmpeg-version; src = fetchurl { url = "https://www.ffmpeg.org/releases/ffmpeg-${ffmpeg-version}.tar.bz2"; - hash = "sha256-j8nyCsXtlRFanihWR63Q7t1cwamKA5raFMEyRS+YrEI="; + hash = "sha256-zQ4W+QNCEmbVzN3t97g7nldUrvS596fwbOnkyALwVFs="; }; - patches = old.patches or [] ++ [ - "${src}/contrib/ffmpeg/A01-qsv-scale-fix-green-stripes.patch" - "${src}/contrib/ffmpeg/A02-qsv-interpolation.patch" - "${src}/contrib/ffmpeg/A03-qsv-dx11-ffmpeg44.patch" - "${src}/contrib/ffmpeg/A04-configure-ensure-the-right-libmfx-version-is-used-wh.patch" - "${src}/contrib/ffmpeg/A05-qsv-add-includedir-mfx-to-the-search-path-for-old-ve.patch" - "${src}/contrib/ffmpeg/A06-qsv-load-user-plugin-for-MFX_VERSION-2.0.patch" - "${src}/contrib/ffmpeg/A07-qsv-build-audio-related-code-when-MFX_VERSION-2.0.patch" - "${src}/contrib/ffmpeg/A08-qsvenc-don-t-support-multi-frame-encode-when-MFX_VER.patch" - "${src}/contrib/ffmpeg/A09-qsvenc-don-t-support-MFX_RATECONTROL_LA_EXT-when-MFX.patch" - "${src}/contrib/ffmpeg/A10-qsv-don-t-support-OPAQUE-memory-when-MFX_VERSION-2.0.patch" - "${src}/contrib/ffmpeg/A11-qsv-opaque-deinterlace.patch" - "${src}/contrib/ffmpeg/A12-qsv-opaque-vpp.patch" - "${src}/contrib/ffmpeg/A13-qsv-opaque-hwcontext_qsv.patch" - "${src}/contrib/ffmpeg/A14-configure-check-mfxdefs.h-instead-of-mfxvp9.h-for-MF.patch" - "${src}/contrib/ffmpeg/A15-configure-allow-user-to-build-FFmpeg-against-oneVPL.patch" - "${src}/contrib/ffmpeg/A16-qsv-add-macro-QSV_ONEVPL-for-the-oneVPL-SDK.patch" - "${src}/contrib/ffmpeg/A17-qsv-use-a-new-method-to-create-mfx-session-when-usin.patch" - "${src}/contrib/ffmpeg/A18-qsv-new-method-hwcontext_qsv.patch" - "${src}/contrib/ffmpeg/A19-qsv-fix-session-for-d3d11-device.patch" - "${src}/contrib/ffmpeg/A20-mov-read-name-track-tag-written-by-movenc.patch" - "${src}/contrib/ffmpeg/A21-movenc-write-3gpp-track-titl-tag.patch" - "${src}/contrib/ffmpeg/A22-mov-read-3gpp-udta-tags.patch" - "${src}/contrib/ffmpeg/A23-movenc-write-3gpp-track-names-tags-for-all-available.patch" - "${src}/contrib/ffmpeg/A24-FFmpeg-devel-amfenc-Add-support-for-pict_type-field.patch" - "${src}/contrib/ffmpeg/A25-dvdsubdec-fix-processing-of-partial-packets.patch" - "${src}/contrib/ffmpeg/A26-ccaption_dec-return-number-of-bytes-used.patch" - "${src}/contrib/ffmpeg/A27-dvdsubdec-return-number-of-bytes-used.patch" - "${src}/contrib/ffmpeg/A28-dvdsubdec-use-pts-of-initial-packet.patch" - "${src}/contrib/ffmpeg/A29-matroskaenc-aac-extradata-updated.patch" - "${src}/contrib/ffmpeg/A30-ccaption_dec-fix-pts-in-real_time-mode.patch" - "${src}/contrib/ffmpeg/A32-qsv-fix-decode-10bit-hdr.patch" + patches = old.patches or [ ] ++ [ + "${src}/contrib/ffmpeg/A01-qsv-libavfilter-qsvvpp-change-the-output-frame-s-width-a.patch" + "${src}/contrib/ffmpeg/A02-qsv-configure-ensure-enable-libmfx-uses-libmfx-1.x.patch" + "${src}/contrib/ffmpeg/A03-qsv-configure-fix-the-check-for-MFX_CODEC_VP9.patch" + "${src}/contrib/ffmpeg/A04-qsv-remove-mfx-prefix-from-mfx-headers.patch" + "${src}/contrib/ffmpeg/A05-qsv-load-user-plugin-for-MFX_VERSION-2.0.patch" + "${src}/contrib/ffmpeg/A06-qsv-build-audio-related-code-when-MFX_VERSION-2.0.patch" + "${src}/contrib/ffmpeg/A07-qsvenc-support-multi-frame-encode-when-MFX_VERSION-2.patch" + "${src}/contrib/ffmpeg/A08-qsvenc-support-MFX_RATECONTROL_LA_EXT-when-MFX_VERSI.patch" + "${src}/contrib/ffmpeg/A09-qsv-support-OPAQUE-memory-when-MFX_VERSION-2.0.patch" + "${src}/contrib/ffmpeg/A10-qsv-configure-add-enable-libvpl-option.patch" + "${src}/contrib/ffmpeg/A11-qsv-use-a-new-method-to-create-mfx-session-when-usin.patch" + "${src}/contrib/ffmpeg/A12-qsv-fix-decode-10bit-hdr.patch" + "${src}/contrib/ffmpeg/A13-mov-read-name-track-tag-written-by-movenc.patch" + "${src}/contrib/ffmpeg/A14-movenc-write-3gpp-track-titl-tag.patch" + "${src}/contrib/ffmpeg/A15-mov-read-3gpp-udta-tags.patch" + "${src}/contrib/ffmpeg/A16-movenc-write-3gpp-track-names-tags-for-all-available.patch" + "${src}/contrib/ffmpeg/A17-FFmpeg-devel-amfenc-Add-support-for-pict_type-field.patch" + "${src}/contrib/ffmpeg/A18-dvdsubdec-fix-processing-of-partial-packets.patch" + "${src}/contrib/ffmpeg/A19-ccaption_dec-return-number-of-bytes-used.patch" + "${src}/contrib/ffmpeg/A20-dvdsubdec-return-number-of-bytes-used.patch" + "${src}/contrib/ffmpeg/A21-dvdsubdec-use-pts-of-initial-packet.patch" + "${src}/contrib/ffmpeg/A22-matroskaenc-aac-extradata-updated.patch" + "${src}/contrib/ffmpeg/A23-ccaption_dec-fix-pts-in-real_time-mode.patch" + "${src}/contrib/ffmpeg/A24-fix-eac3-dowmix.patch" + "${src}/contrib/ffmpeg/A25-enable-truehd-pass.patch" + "${src}/contrib/ffmpeg/A26-Update-the-min-version-to-1.4.23.0-for-AMF-SDK.patch" + "${src}/contrib/ffmpeg/A27-avcodec-amfenc-Fixes-the-color-information-in-the-ou.patch" + "${src}/contrib/ffmpeg/A28-avcodec-amfenc-HDR-metadata.patch" + "${src}/contrib/ffmpeg/A30-svt-av1-backports.patch" ]; }); @@ -151,148 +150,151 @@ let inherit (lib) optional optionals optionalString versions; in -let self = stdenv.mkDerivation rec { - pname = "handbrake"; - inherit version src; +let + self = stdenv.mkDerivation rec { + pname = "handbrake"; + inherit version src; - postPatch = '' - install -Dm444 ${versionFile} ${versionFile.name} + postPatch = '' + install -Dm444 ${versionFile} ${versionFile.name} - patchShebangs scripts + patchShebangs scripts - substituteInPlace libhb/hb.c \ - --replace 'return hb_version;' 'return "${version}";' + substituteInPlace libhb/hb.c \ + --replace 'return hb_version;' 'return "${version}";' - # Force using nixpkgs dependencies - sed -i '/MODULES += contrib/d' make/include/main.defs - sed -e 's/^[[:space:]]*\(meson\|ninja\|nasm\)[[:space:]]*= ToolProbe.*$//g' \ - -e '/ ## Additional library and tool checks/,/ ## MinGW specific library and tool checks/d' \ - -i make/configure.py - '' + optionalString stdenv.isDarwin '' - # Use the Nix-provided libxml2 instead of the patched version available on - # the Handbrake website. - substituteInPlace libhb/module.defs \ - --replace '$(CONTRIB.build/)include/libxml2' ${libxml2.dev}/include/libxml2 + # Force using nixpkgs dependencies + sed -i '/MODULES += contrib/d' make/include/main.defs + sed -e 's/^[[:space:]]*\(meson\|ninja\|nasm\)[[:space:]]*= ToolProbe.*$//g' \ + -e '/ ## Additional library and tool checks/,/ ## MinGW specific library and tool checks/d' \ + -i make/configure.py + '' + optionalString stdenv.isDarwin '' + # Use the Nix-provided libxml2 instead of the patched version available on + # the Handbrake website. + substituteInPlace libhb/module.defs \ + --replace '$(CONTRIB.build/)include/libxml2' ${libxml2.dev}/include/libxml2 - # Prevent the configure script from failing if xcodebuild isn't available, - # which it isn't in the Nix context. (The actual build goes fine without - # xcodebuild.) - sed -e '/xcodebuild = ToolProbe/s/abort=.\+)/abort=False)/' -i make/configure.py - '' + optionalString stdenv.isLinux '' - # Use the Nix-provided libxml2 instead of the system-provided one. - substituteInPlace libhb/module.defs \ - --replace /usr/include/libxml2 ${libxml2.dev}/include/libxml2 - ''; - - nativeBuildInputs = [ - autoconf - automake - libtool - m4 - pkg-config - python3 - ] - ++ optionals useGtk [ intltool wrapGAppsHook ]; - - buildInputs = [ - a52dec - dav1d - ffmpeg-hb - fontconfig - freetype - fribidi - harfbuzz - jansson - lame - libass - libbluray - libdvdcss - libdvdnav - libdvdread - libiconv - libjpeg_turbo - libogg - libopus - libsamplerate - libtheora - libvorbis - libvpx - libxml2 - speex - x264 - x265 - xz - zimg - ] - ++ optional (!stdenv.isDarwin) numactl - ++ optionals useGtk [ - dbus-glib - glib - gst_all_1.gst-plugins-base - gst_all_1.gstreamer - gtk3 - hicolor-icon-theme - libappindicator-gtk3 - libgudev - libnotify - udev - ] - ++ optional useFdk fdk_aac - ++ optionals stdenv.isDarwin [ AudioToolbox Foundation libobjc VideoToolbox ] - # NOTE: 2018-12-27: Handbrake supports nv-codec-headers for Linux only, - # look at ./make/configure.py search "enable_nvenc" - ++ optional stdenv.isLinux nv-codec-headers; - - configureFlags = [ - "--disable-df-fetch" - "--disable-df-verify" - "--disable-gtk-update-checks" - ] - ++ optional (!useGtk) "--disable-gtk" - ++ optional useFdk "--enable-fdk-aac" - ++ optional stdenv.isDarwin "--disable-xcode" - ++ optional stdenv.hostPlatform.isx86 "--harden"; - - # NOTE: 2018-12-27: Check NixOS HandBrake test if changing - NIX_LDFLAGS = [ "-lx265" ]; - - makeFlags = [ "--directory=build" ]; - - passthru.tests = { - basic-conversion = - let - # Big Buck Bunny example, licensed under CC Attribution 3.0. - testMkv = fetchurl { - url = "https://github.com/Matroska-Org/matroska-test-files/blob/cf0792be144ac470c4b8052cfe19bb691993e3a2/test_files/test1.mkv?raw=true"; - sha256 = "1hfxbbgxwfkzv85pvpvx55a72qsd0hxjbm9hkl5r3590zw4s75h9"; - }; - in - runCommand "${pname}-${version}-basic-conversion" { nativeBuildInputs = [ self ]; } '' - mkdir -p $out - cd $out - HandBrakeCLI -i ${testMkv} -o test.mp4 -e x264 -q 20 -B 160 - test -e test.mp4 - HandBrakeCLI -i ${testMkv} -o test.mkv -e x264 -q 20 -B 160 - test -e test.mkv - ''; - version = testers.testVersion { package = self; command = "HandBrakeCLI --version"; }; - }; - - meta = with lib; { - homepage = "https://handbrake.fr/"; - description = "A tool for converting video files and ripping DVDs"; - longDescription = '' - Tool for converting and remuxing video files - into selection of modern and widely supported codecs - and containers. Very versatile and customizable. - Package provides: - CLI - `HandbrakeCLI` - GTK GUI - `ghb` + # Prevent the configure script from failing if xcodebuild isn't available, + # which it isn't in the Nix context. (The actual build goes fine without + # xcodebuild.) + sed -e '/xcodebuild = ToolProbe/s/abort=.\+)/abort=False)/' -i make/configure.py + '' + optionalString stdenv.isLinux '' + # Use the Nix-provided libxml2 instead of the system-provided one. + substituteInPlace libhb/module.defs \ + --replace /usr/include/libxml2 ${libxml2.dev}/include/libxml2 ''; - license = licenses.gpl2Only; - maintainers = with maintainers; [ Anton-Latukha wmertens ]; - platforms = with platforms; unix; - broken = stdenv.isDarwin && lib.versionOlder stdenv.hostPlatform.darwinMinVersion "10.13"; + + nativeBuildInputs = [ + autoconf + automake + libtool + m4 + pkg-config + python3 + ] + ++ optionals useGtk [ intltool wrapGAppsHook ]; + + buildInputs = [ + a52dec + dav1d + ffmpeg-hb + fontconfig + freetype + fribidi + harfbuzz + jansson + lame + libass + libbluray + libdvdcss + libdvdnav + libdvdread + libiconv + libjpeg_turbo + libogg + libopus + libsamplerate + libtheora + libvorbis + libvpx + libxml2 + speex + svt-av1 + x264 + x265 + xz + zimg + ] + ++ optional (!stdenv.isDarwin) numactl + ++ optionals useGtk [ + dbus-glib + glib + gst_all_1.gst-plugins-base + gst_all_1.gstreamer + gtk3 + hicolor-icon-theme + libappindicator-gtk3 + libgudev + libnotify + udev + ] + ++ optional useFdk fdk_aac + ++ optionals stdenv.isDarwin [ AudioToolbox Foundation libobjc VideoToolbox ] + # NOTE: 2018-12-27: Handbrake supports nv-codec-headers for Linux only, + # look at ./make/configure.py search "enable_nvenc" + ++ optional stdenv.isLinux nv-codec-headers; + + configureFlags = [ + "--disable-df-fetch" + "--disable-df-verify" + "--disable-gtk-update-checks" + ] + ++ optional (!useGtk) "--disable-gtk" + ++ optional useFdk "--enable-fdk-aac" + ++ optional stdenv.isDarwin "--disable-xcode" + ++ optional stdenv.hostPlatform.isx86 "--harden"; + + # NOTE: 2018-12-27: Check NixOS HandBrake test if changing + NIX_LDFLAGS = [ "-lx265" ]; + + makeFlags = [ "--directory=build" ]; + + passthru.tests = { + basic-conversion = + let + # Big Buck Bunny example, licensed under CC Attribution 3.0. + testMkv = fetchurl { + url = "https://github.com/Matroska-Org/matroska-test-files/blob/cf0792be144ac470c4b8052cfe19bb691993e3a2/test_files/test1.mkv?raw=true"; + sha256 = "1hfxbbgxwfkzv85pvpvx55a72qsd0hxjbm9hkl5r3590zw4s75h9"; + }; + in + runCommand "${pname}-${version}-basic-conversion" { nativeBuildInputs = [ self ]; } '' + mkdir -p $out + cd $out + HandBrakeCLI -i ${testMkv} -o test.mp4 -e x264 -q 20 -B 160 + test -e test.mp4 + HandBrakeCLI -i ${testMkv} -o test.mkv -e x264 -q 20 -B 160 + test -e test.mkv + ''; + version = testers.testVersion { package = self; command = "HandBrakeCLI --version"; }; + }; + + meta = with lib; { + homepage = "https://handbrake.fr/"; + description = "A tool for converting video files and ripping DVDs"; + longDescription = '' + Tool for converting and remuxing video files + into selection of modern and widely supported codecs + and containers. Very versatile and customizable. + Package provides: + CLI - `HandbrakeCLI` + GTK GUI - `ghb` + ''; + license = licenses.gpl2Only; + maintainers = with maintainers; [ Anton-Latukha wmertens ]; + platforms = with platforms; unix; + broken = stdenv.isDarwin && lib.versionOlder stdenv.hostPlatform.darwinMinVersion "10.13"; + }; }; -}; -in self +in +self From 0ec33e6d27edcf4e1642a0f153d410605280aee8 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 2 Feb 2023 05:58:59 +0000 Subject: [PATCH 012/198] folly: 2022.11.28.00 -> 2023.01.30.00 --- pkgs/development/libraries/folly/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/folly/default.nix b/pkgs/development/libraries/folly/default.nix index 323a9a2f8b46..78d280b99133 100644 --- a/pkgs/development/libraries/folly/default.nix +++ b/pkgs/development/libraries/folly/default.nix @@ -22,13 +22,13 @@ stdenv.mkDerivation rec { pname = "folly"; - version = "2022.11.28.00"; + version = "2023.01.30.00"; src = fetchFromGitHub { owner = "facebook"; repo = "folly"; rev = "v${version}"; - sha256 = "sha256-TI3uMlkssKtTvxqj9Et12aAjbHoV9FVBvrZr7oCFlIo="; + sha256 = "sha256-p5IAbXPUrGtJotwabpEShNsUZNeF6ncHbDXaNabdaaY="; }; nativeBuildInputs = [ From 7ffa6e7d5d067e968d13386262a4c79d61ab3add Mon Sep 17 00:00:00 2001 From: datafoo <34766150+datafoo@users.noreply.github.com> Date: Thu, 2 Feb 2023 09:05:24 +0100 Subject: [PATCH 013/198] vscode-extensions.streetsidesoftware.code-spell-checker: 2.15.0 -> 2.16.0 --- pkgs/applications/editors/vscode/extensions/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/editors/vscode/extensions/default.nix b/pkgs/applications/editors/vscode/extensions/default.nix index 9e4548ad0fe1..41666183ce22 100644 --- a/pkgs/applications/editors/vscode/extensions/default.nix +++ b/pkgs/applications/editors/vscode/extensions/default.nix @@ -2580,8 +2580,8 @@ let mktplcRef = { name = "code-spell-checker"; publisher = "streetsidesoftware"; - version = "2.15.0"; - sha256 = "sha256-YfcO/01nO+92xZEJgYyLYAkqXMqfV/QDkcN9Dnjp5ZA="; + version = "2.16.0"; + sha256 = "sha256-Qr4cYAEvAkvvE6KytVeInJzcMQJZqr/e/KPfelVzjUA="; }; meta = with lib; { changelog = "https://marketplace.visualstudio.com/items/streetsidesoftware.code-spell-checker/changelog"; From 732cfc79473d57728e16dd71c5d80c7b7aaf9897 Mon Sep 17 00:00:00 2001 From: rewine Date: Mon, 9 Jan 2023 18:05:24 +0800 Subject: [PATCH 014/198] go-lib: init at 5.8.27 s --- pkgs/desktops/deepin/default.nix | 12 +++++ .../deepin/go-package/go-lib/default.nix | 45 +++++++++++++++++++ 2 files changed, 57 insertions(+) create mode 100644 pkgs/desktops/deepin/go-package/go-lib/default.nix diff --git a/pkgs/desktops/deepin/default.nix b/pkgs/desktops/deepin/default.nix index ec3302908a05..3e01b43f1ed3 100644 --- a/pkgs/desktops/deepin/default.nix +++ b/pkgs/desktops/deepin/default.nix @@ -3,6 +3,15 @@ let packages = self: let inherit (self) callPackage; + + replaceAll = x: y: '' + echo Replacing "${x}" to "${y}": + for file in $(grep -rl "${x}"); do + echo -- $file + substituteInPlace $file \ + --replace "${x}" "${y}" + done + ''; in { #### LIBRARIES dtkcommon = callPackage ./library/dtkcommon { }; @@ -25,6 +34,9 @@ let deepin-editor = callPackage ./apps/deepin-editor { }; deepin-terminal = callPackage ./apps/deepin-terminal { }; + #### Go Packages + go-lib = callPackage ./go-package/go-lib { inherit replaceAll; }; + #### ARTWORK dde-account-faces = callPackage ./artwork/dde-account-faces { }; deepin-icon-theme = callPackage ./artwork/deepin-icon-theme { }; diff --git a/pkgs/desktops/deepin/go-package/go-lib/default.nix b/pkgs/desktops/deepin/go-package/go-lib/default.nix new file mode 100644 index 000000000000..3a6a8f03dfb5 --- /dev/null +++ b/pkgs/desktops/deepin/go-package/go-lib/default.nix @@ -0,0 +1,45 @@ +{ stdenv +, lib +, fetchFromGitHub +, fetchpatch +, replaceAll +, runtimeShell +}: + +stdenv.mkDerivation rec { + pname = "go-lib"; + version = "5.8.27"; + + src = fetchFromGitHub { + owner = "linuxdeepin"; + repo = pname; + rev = version; + sha256 = "sha256-ZV5zWu7UvNKVcVo79/iKMhF4H09rGyDCvEL61H05lZc="; + }; + + patches = [ + (fetchpatch { + name = "fix_IsDir_for_symlink"; + url = "https://github.com/linuxdeepin/go-lib/commit/79239904679dc70a11e1ac8e65670afcfdd7c122.patch"; + sha256 = "sha256-RsN9hK26i/W6P/+e1l1spCLdlgIEWTehhIW6POBOvW4="; + }) + ]; + + postPatch = replaceAll "/bin/sh" "${runtimeShell}"; + + installPhase = '' + runHook preInstall + mkdir -p $out/share/gocode/src/github.com/linuxdeepin/go-lib + cp -a * $out/share/gocode/src/github.com/linuxdeepin/go-lib + rm -r $out/share/gocode/src/github.com/linuxdeepin/go-lib/debian + runHook postInstall + ''; + + meta = with lib; { + description = "Library containing many useful go routines for things such as glib, gettext, archive, graphic, etc"; + homepage = "https://github.com/linuxdeepin/go-lib"; + license = licenses.gpl3Plus; + platforms = platforms.linux; + maintainers = teams.deepin.members; + }; +} From ea00098756a2e2504ddee623c9849ce28ff04c42 Mon Sep 17 00:00:00 2001 From: rewine Date: Mon, 9 Jan 2023 18:09:01 +0800 Subject: [PATCH 015/198] go-gir-generator: init at 2.2.0 --- pkgs/desktops/deepin/default.nix | 1 + .../go-package/go-gir-generator/default.nix | 43 +++++++++++++++++++ 2 files changed, 44 insertions(+) create mode 100644 pkgs/desktops/deepin/go-package/go-gir-generator/default.nix diff --git a/pkgs/desktops/deepin/default.nix b/pkgs/desktops/deepin/default.nix index 3e01b43f1ed3..ac17a10fe1a0 100644 --- a/pkgs/desktops/deepin/default.nix +++ b/pkgs/desktops/deepin/default.nix @@ -36,6 +36,7 @@ let #### Go Packages go-lib = callPackage ./go-package/go-lib { inherit replaceAll; }; + go-gir-generator = callPackage ./go-package/go-gir-generator { }; #### ARTWORK dde-account-faces = callPackage ./artwork/dde-account-faces { }; diff --git a/pkgs/desktops/deepin/go-package/go-gir-generator/default.nix b/pkgs/desktops/deepin/go-package/go-gir-generator/default.nix new file mode 100644 index 000000000000..7f377d2a6e74 --- /dev/null +++ b/pkgs/desktops/deepin/go-package/go-gir-generator/default.nix @@ -0,0 +1,43 @@ +{ stdenv +, lib +, fetchFromGitHub +, go +, pkg-config +, libgudev +, gobject-introspection +}: + +stdenv.mkDerivation rec { + pname = "go-gir-generator"; + version = "2.2.0"; + + src = fetchFromGitHub { + owner = "linuxdeepin"; + repo = pname; + rev = version; + sha256 = "sha256-lFseui/M3+TyfYoa+rnS0cGhN6gdLrgpzgOwqzYcyPk="; + }; + + nativeBuildInputs = [ + pkg-config + go + ]; + + buildInputs = [ + libgudev + gobject-introspection + ]; + + makeFlags = [ + "PREFIX=${placeholder "out"}" + "GOCACHE=$(TMPDIR)/go-cache" + ]; + + meta = with lib; { + description = "Generate static golang bindings for GObject"; + homepage = "https://github.com/linuxdeepin/go-gir-generator"; + license = licenses.gpl3Plus; + platforms = platforms.linux; + maintainers = teams.deepin.members; + }; +} From cb3c159314b371afd48b153bcd6c0fa7f98f903d Mon Sep 17 00:00:00 2001 From: rewine Date: Mon, 9 Jan 2023 18:11:21 +0800 Subject: [PATCH 016/198] go-dbus-factory: init at 1.10.23 --- pkgs/desktops/deepin/default.nix | 1 + .../go-package/go-dbus-factory/default.nix | 26 +++++++++++++++++++ 2 files changed, 27 insertions(+) create mode 100644 pkgs/desktops/deepin/go-package/go-dbus-factory/default.nix diff --git a/pkgs/desktops/deepin/default.nix b/pkgs/desktops/deepin/default.nix index ac17a10fe1a0..c1fe29882c64 100644 --- a/pkgs/desktops/deepin/default.nix +++ b/pkgs/desktops/deepin/default.nix @@ -37,6 +37,7 @@ let #### Go Packages go-lib = callPackage ./go-package/go-lib { inherit replaceAll; }; go-gir-generator = callPackage ./go-package/go-gir-generator { }; + go-dbus-factory = callPackage ./go-package/go-dbus-factory { }; #### ARTWORK dde-account-faces = callPackage ./artwork/dde-account-faces { }; diff --git a/pkgs/desktops/deepin/go-package/go-dbus-factory/default.nix b/pkgs/desktops/deepin/go-package/go-dbus-factory/default.nix new file mode 100644 index 000000000000..4c12dce491d7 --- /dev/null +++ b/pkgs/desktops/deepin/go-package/go-dbus-factory/default.nix @@ -0,0 +1,26 @@ +{ stdenv +, lib +, fetchFromGitHub +}: + +stdenv.mkDerivation rec { + pname = "go-dbus-factory"; + version = "1.10.23"; + + src = fetchFromGitHub { + owner = "linuxdeepin"; + repo = pname; + rev = version; + sha256 = "sha256-6u9Bpoa80j/K1MipncfM378/qmSSMZAlx88jE4hHYBk="; + }; + + makeFlags = [ "PREFIX=${placeholder "out"}" ]; + + meta = with lib; { + description = "Generate go binding of D-Bus interfaces"; + homepage = "https://github.com/linuxdeepin/go-dbus-factory"; + license = licenses.gpl3Plus; + platforms = platforms.linux; + maintainers = teams.deepin.members; + }; +} From c700cb7b5efae55f46a9c70376f08861e5e1fec1 Mon Sep 17 00:00:00 2001 From: rewine Date: Wed, 11 Jan 2023 18:12:35 +0800 Subject: [PATCH 017/198] deepin-gettext-tools: init at 1.0.10 --- pkgs/desktops/deepin/default.nix | 3 ++ .../tools/deepin-gettext-tools/default.nix | 50 +++++++++++++++++++ 2 files changed, 53 insertions(+) create mode 100644 pkgs/desktops/deepin/tools/deepin-gettext-tools/default.nix diff --git a/pkgs/desktops/deepin/default.nix b/pkgs/desktops/deepin/default.nix index c1fe29882c64..abd6de544e6e 100644 --- a/pkgs/desktops/deepin/default.nix +++ b/pkgs/desktops/deepin/default.nix @@ -39,6 +39,9 @@ let go-gir-generator = callPackage ./go-package/go-gir-generator { }; go-dbus-factory = callPackage ./go-package/go-dbus-factory { }; + #### TOOLS + deepin-gettext-tools = callPackage ./tools/deepin-gettext-tools { }; + #### ARTWORK dde-account-faces = callPackage ./artwork/dde-account-faces { }; deepin-icon-theme = callPackage ./artwork/deepin-icon-theme { }; diff --git a/pkgs/desktops/deepin/tools/deepin-gettext-tools/default.nix b/pkgs/desktops/deepin/tools/deepin-gettext-tools/default.nix new file mode 100644 index 000000000000..d219e6d73b16 --- /dev/null +++ b/pkgs/desktops/deepin/tools/deepin-gettext-tools/default.nix @@ -0,0 +1,50 @@ +{ stdenv +, lib +, fetchFromGitHub +, gettext +, python3Packages +, perlPackages +}: + +stdenv.mkDerivation rec { + pname = "deepin-gettext-tools"; + version = "1.0.10"; + + src = fetchFromGitHub { + owner = "linuxdeepin"; + repo = pname; + rev = version; + sha256 = "sha256-5Dd2QU6JYwuktusssNDfA7IHa6HbFcWo9sZf5PS7NtI="; + }; + + postPatch = '' + substituteInPlace src/generate_mo.py --replace "sudo cp" "cp" + ''; + + nativeBuildInputs = [ python3Packages.wrapPython ]; + + buildInputs = [ + gettext + perlPackages.perl + perlPackages.ConfigTiny + perlPackages.XMLLibXML + ]; + + makeFlags = [ + "PREFIX=${placeholder "out"}" + ]; + + postFixup = '' + wrapPythonPrograms + wrapPythonProgramsIn "$out/lib/${pname}" + wrapProgram $out/bin/deepin-desktop-ts-convert --set PERL5LIB $PERL5LIB + ''; + + meta = with lib; { + description = "Translation file processing utils for DDE development"; + homepage = "https://github.com/linuxdeepin/deepin-gettext-tools"; + license = licenses.gpl2Plus; + platforms = platforms.linux; + maintainers = teams.deepin.members; + }; +} From dc0b701631888d5e08d5696c8343b15db40fa0a9 Mon Sep 17 00:00:00 2001 From: rewine Date: Thu, 12 Jan 2023 13:26:32 +0800 Subject: [PATCH 018/198] deepin-pw-check: init at 5.1.17 --- pkgs/desktops/deepin/default.nix | 1 + .../go-package/deepin-pw-check/default.nix | 84 +++++++++++++++++++ .../go-package/deepin-pw-check/deps.nix | 75 +++++++++++++++++ 3 files changed, 160 insertions(+) create mode 100644 pkgs/desktops/deepin/go-package/deepin-pw-check/default.nix create mode 100644 pkgs/desktops/deepin/go-package/deepin-pw-check/deps.nix diff --git a/pkgs/desktops/deepin/default.nix b/pkgs/desktops/deepin/default.nix index abd6de544e6e..68463c4fed8b 100644 --- a/pkgs/desktops/deepin/default.nix +++ b/pkgs/desktops/deepin/default.nix @@ -38,6 +38,7 @@ let go-lib = callPackage ./go-package/go-lib { inherit replaceAll; }; go-gir-generator = callPackage ./go-package/go-gir-generator { }; go-dbus-factory = callPackage ./go-package/go-dbus-factory { }; + deepin-pw-check = callPackage ./go-package/deepin-pw-check { }; #### TOOLS deepin-gettext-tools = callPackage ./tools/deepin-gettext-tools { }; diff --git a/pkgs/desktops/deepin/go-package/deepin-pw-check/default.nix b/pkgs/desktops/deepin/go-package/deepin-pw-check/default.nix new file mode 100644 index 000000000000..040c561d352e --- /dev/null +++ b/pkgs/desktops/deepin/go-package/deepin-pw-check/default.nix @@ -0,0 +1,84 @@ +{ stdenv +, lib +, fetchFromGitHub +, buildGoPackage +, pkg-config +, deepin-gettext-tools +, go-dbus-factory +, go-gir-generator +, go-lib +, gtk3 +, glib +, libxcrypt +, gettext +, iniparser +, cracklib +, linux-pam +}: + +buildGoPackage rec { + pname = "deepin-pw-check"; + version = "5.1.18"; + + goPackagePath = "github.com/linuxdeepin/deepin-pw-check"; + + src = fetchFromGitHub { + owner = "linuxdeepin"; + repo = pname; + rev = version; + sha256 = "sha256-v1Z4ArkrejjOCO1vD+BhfEl9pTfuvKgLM6Ont0IUCQk="; + }; + + goDeps = ./deps.nix; + + nativeBuildInputs = [ + pkg-config + gettext + deepin-gettext-tools + ]; + + buildInputs = [ + go-dbus-factory + go-gir-generator + go-lib + glib + libxcrypt + gtk3 + iniparser + cracklib + linux-pam + ]; + + postPatch = '' + sed -i 's|iniparser/||' */*.c + substituteInPlace misc/pkgconfig/libdeepin_pw_check.pc \ + --replace "/usr" "$out" + substituteInPlace misc/system-services/com.deepin.daemon.PasswdConf.service \ + --replace "/usr/lib/deepin-pw-check/deepin-pw-check" "$out/lib/deepin-pw-check/deepin-pw-check" + ''; + + buildPhase = '' + runHook preBuild + GOPATH="$GOPATH:${go-dbus-factory}/share/gocode" + GOPATH="$GOPATH:${go-gir-generator}/share/gocode" + GOPATH="$GOPATH:${go-lib}/share/gocode" + make -C go/src/${goPackagePath} + runHook postBuild + ''; + + installPhase = '' + runHook preInstall + make install PREFIX="$out" PKG_FILE_DIR=$out/lib/pkg-config PAM_MODULE_DIR=$out/etc/pam.d -C go/src/${goPackagePath} + # https://github.com/linuxdeepin/deepin-pw-check/blob/d5597482678a489077a506a87f06d2b6c4e7e4ed/debian/rules#L21 + ln -s $out/lib/libdeepin_pw_check.so $out/lib/libdeepin_pw_check.so.1 + runHook postInstall + ''; + + meta = with lib; { + description = "Tool to verify the validity of the password"; + homepage = "https://github.com/linuxdeepin/deepin-pw-check"; + license = licenses.gpl3Plus; + platforms = platforms.linux; + maintainers = teams.deepin.members; + }; +} diff --git a/pkgs/desktops/deepin/go-package/deepin-pw-check/deps.nix b/pkgs/desktops/deepin/go-package/deepin-pw-check/deps.nix new file mode 100644 index 000000000000..509940b6d570 --- /dev/null +++ b/pkgs/desktops/deepin/go-package/deepin-pw-check/deps.nix @@ -0,0 +1,75 @@ +[ + { + goPackagePath = "github.com/fsnotify/fsnotify"; + fetch = { + type = "git"; + url = "https://github.com/fsnotify/fsnotify"; + rev = "v1.5.1"; + sha256 = "sha256-B8kZ8yiWgallT7R2j1kSRJcJkSGFVf9ise+TpXa+7XY="; + }; + } + { + goPackagePath = "github.com/godbus/dbus"; + fetch = { + type = "git"; + url = "https://github.com/godbus/dbus"; + rev = "v5.1.0"; + sha256 = "sha256-JSPtmkGEStBEVrKGszeLCb7P38SzQKgMiDC3eDppXs0="; + }; + } + { + goPackagePath = "github.com/stretchr/testify"; + fetch = { + type = "git"; + url = "https://github.com/stretchr/testify"; + rev = "v1.7.1"; + sha256 = "sha256-disUVIHiIDSj/go3APtJH8awSl8QwKRRFLKI7LRnl0w="; + }; + } + { + goPackagePath = "golang.org/x/sys"; + fetch = { + type = "git"; + url = "https://github.com/golang/sys"; + rev = "289d7a0edf712062d9f1484b07bdf2383f48802f"; + sha256 = "sha256-AzS/J3OocI7mA0xsIfQzyskNKVija7F2yvuts+EFJBs="; + }; + } + { + goPackagePath = "gopkg.in/yaml.v3"; + fetch = { + type = "git"; + url = "https://github.com/go-yaml/yaml"; + rev = "496545a6307b2a7d7a710fd516e5e16e8ab62dbc"; + sha256 = "sha256-j8yDji+vqsitpRZirpb4w/Em8nstgf28wpwkcrOlxBk="; + }; + } + { + goPackagePath = "github.com/davecgh/go-spew"; + fetch = { + type = "git"; + url = "https://github.com/davecgh/go-spew"; + rev = "v1.1.1"; + sha256 = "sha256-nhzSUrE1fCkN0+RL04N4h8jWmRFPPPWbCuDc7Ss0akI="; + }; + } + { + goPackagePath = "github.com/stretchr/objx"; + fetch = { + type = "git"; + url = "https://github.com/stretchr/objx"; + rev = "v0.3.0"; + sha256 = "sha256-T753/EiD5Cpk6H2JFhd+s1gFvpNptG2XlEHxZF6dQaw="; + }; + } + { + goPackagePath = "github.com/pmezard/go-difflib"; + fetch = { + type = "git"; + url = "https://github.com/pmezard/go-difflib"; + rev = "5d4384ee4fb2527b0a1256a821ebfc92f91efefc"; + sha256 = "sha256-XA4Oj1gdmdV/F/+8kMI+DBxKPthZ768hbKsO3d9Gx90="; + }; + } +] + From 7dc8f2ab9fc712a6cde1ac4b12f9e4677d225e1b Mon Sep 17 00:00:00 2001 From: Guillaume Girol Date: Fri, 3 Feb 2023 12:00:00 +0000 Subject: [PATCH 019/198] evolutionWithPlugins: wrap with evolution schema See https://github.com/NixOS/nixpkgs/issues/140853#issuecomment-1416247760 --- .../mailreaders/evolution/evolution/wrapper.nix | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/pkgs/applications/networking/mailreaders/evolution/evolution/wrapper.nix b/pkgs/applications/networking/mailreaders/evolution/evolution/wrapper.nix index 7837393926f6..0a4a4a9d7797 100644 --- a/pkgs/applications/networking/mailreaders/evolution/evolution/wrapper.nix +++ b/pkgs/applications/networking/mailreaders/evolution/evolution/wrapper.nix @@ -7,10 +7,16 @@ symlinkJoin { nativeBuildInputs = [ makeWrapper ]; postBuild = '' + declare -a schemas; + for plugin in ${toString plugins}; do + for schema in $plugin/share/gsettings-schemas/*; do + schemas+=($schema); + done + done for i in $out/bin/* $out/libexec/**; do if [ ! -d $i ]; then echo wrapping $i - wrapProgram $i --set EDS_EXTRA_PREFIXES "${lib.concatStringsSep ":" plugins}" + wrapProgram $i --set EDS_EXTRA_PREFIXES "${lib.concatStringsSep ":" plugins}" --prefix XDG_DATA_DIRS : "''${schemas[@]}" fi done From 3364a1c1a1f7f394e2de48c424f3e95af71ee3f8 Mon Sep 17 00:00:00 2001 From: Matt McHenry Date: Thu, 2 Feb 2023 21:30:22 -0500 Subject: [PATCH 020/198] k3b: use cdrecord from cdrtools rather than cdrkit fixes this warning: cdrecord <= 2.01.01a05 will be run with root privileges on kernel >= 2.6.8 Since Linux kernel 2.6.8 cdrecord <= 2.01.01a05 will not work when run suid root for security reasons anymore. --- nixos/modules/programs/k3b.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nixos/modules/programs/k3b.nix b/nixos/modules/programs/k3b.nix index cdaed3cf70fb..5d19e4f1cc4f 100644 --- a/nixos/modules/programs/k3b.nix +++ b/nixos/modules/programs/k3b.nix @@ -28,7 +28,7 @@ with lib; k3b dvdplusrwtools cdrdao - cdrkit + cdrtools ]; security.wrappers = { @@ -44,7 +44,7 @@ with lib; owner = "root"; group = "cdrom"; permissions = "u+wrx,g+x"; - source = "${pkgs.cdrkit}/bin/cdrecord"; + source = "${pkgs.cdrtools}/bin/cdrecord"; }; }; From 66532182f511ac0e080791aa712f468d023cf3c9 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 4 Feb 2023 00:21:30 +0000 Subject: [PATCH 021/198] kotlin: 1.8.0 -> 1.8.10 --- pkgs/development/compilers/kotlin/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/compilers/kotlin/default.nix b/pkgs/development/compilers/kotlin/default.nix index cb78eb5c6b34..a07e724cbd7a 100644 --- a/pkgs/development/compilers/kotlin/default.nix +++ b/pkgs/development/compilers/kotlin/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "kotlin"; - version = "1.8.0"; + version = "1.8.10"; src = fetchurl { url = "https://github.com/JetBrains/kotlin/releases/download/v${version}/kotlin-compiler-${version}.zip"; - hash = "sha256-C7lBn6yYMqVqOhnK0oL48tbxI30tRn3I3+m9SipDxC4="; + hash = "sha256-TD+nvBu57zBYojGdi8w7cZYHn4jpL9zY0wSkb0trV4c="; }; propagatedBuildInputs = [ jre ] ; From 3cb6f8db35b63ed356f29d2033052fc92ae575f8 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 4 Feb 2023 08:47:09 +0000 Subject: [PATCH 022/198] hackrf: 2022.09.1 -> 2023.01.1 --- pkgs/applications/radio/hackrf/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/radio/hackrf/default.nix b/pkgs/applications/radio/hackrf/default.nix index 1180f5a941ae..647f3efd6706 100644 --- a/pkgs/applications/radio/hackrf/default.nix +++ b/pkgs/applications/radio/hackrf/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "hackrf"; - version = "2022.09.1"; + version = "2023.01.1"; src = fetchFromGitHub { owner = "greatscottgadgets"; repo = "hackrf"; rev = "v${version}"; - sha256 = "sha256-c+9DEMxioIbEDNTdLSOnxX1zpFk07K9rlGP9goEJMlU="; + sha256 = "sha256-zvSSCNtqHOZVlrBggjgxEyUTqTiAIAhdzUkm4Pm9b3k="; }; nativeBuildInputs = [ From e1f1b50085cc2cf8258c2dafadfcc6ba70f0ce77 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 4 Feb 2023 13:21:52 +0000 Subject: [PATCH 023/198] intel-media-sdk: 22.6.5 -> 23.1.0 --- pkgs/development/libraries/intel-media-sdk/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/intel-media-sdk/default.nix b/pkgs/development/libraries/intel-media-sdk/default.nix index 5e6f628aa68e..11cd887729a7 100644 --- a/pkgs/development/libraries/intel-media-sdk/default.nix +++ b/pkgs/development/libraries/intel-media-sdk/default.nix @@ -3,13 +3,13 @@ stdenv.mkDerivation rec { pname = "intel-media-sdk"; - version = "22.6.5"; + version = "23.1.0"; src = fetchFromGitHub { owner = "Intel-Media-SDK"; repo = "MediaSDK"; rev = "intel-mediasdk-${version}"; - sha256 = "sha256-W+lDqGZAenhRZ7tf4qfDNik/3rFNDM0DGSK/CdNRb8g="; + sha256 = "sha256-FTyjIWYKXFAzu3SR1EGN+aTzVbX617o/KWCD/DGv69o="; }; nativeBuildInputs = [ cmake pkg-config ]; From 67ebd8112558b7e15e0583a06860a6becceaf95b Mon Sep 17 00:00:00 2001 From: Vincent Haupert Date: Sat, 4 Feb 2023 17:09:58 +0100 Subject: [PATCH 024/198] iosevka: fix Darwin build --- pkgs/data/fonts/iosevka/default.nix | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/pkgs/data/fonts/iosevka/default.nix b/pkgs/data/fonts/iosevka/default.nix index 53a54f346db1..f64364eaab41 100644 --- a/pkgs/data/fonts/iosevka/default.nix +++ b/pkgs/data/fonts/iosevka/default.nix @@ -4,6 +4,7 @@ , buildNpmPackage , fetchFromGitHub , nodejs +, darwin , remarshal , ttfautohint-nox # Custom font set options. @@ -67,7 +68,14 @@ buildNpmPackage rec { npmDepsHash = "sha256-Ncf07ggyOnz/2SpgdmaYS2X/8Bad+J2sz8Yyx9Iri3E="; - nativeBuildInputs = [ nodejs remarshal ttfautohint-nox ]; + nativeBuildInputs = [ + nodejs + remarshal + ttfautohint-nox + ] ++ lib.optionals stdenv.isDarwin [ + # libtool + darwin.cctools + ]; buildPlan = if builtins.isAttrs privateBuildPlan then From 6dd324df0dd0da79fd58a4ae6f9ec2605e5745df Mon Sep 17 00:00:00 2001 From: Vincent Haupert Date: Sat, 4 Feb 2023 17:13:26 +0100 Subject: [PATCH 025/198] iosevka: remove superfluous inputs --- pkgs/data/fonts/iosevka/default.nix | 3 --- 1 file changed, 3 deletions(-) diff --git a/pkgs/data/fonts/iosevka/default.nix b/pkgs/data/fonts/iosevka/default.nix index f64364eaab41..f9609c6c485b 100644 --- a/pkgs/data/fonts/iosevka/default.nix +++ b/pkgs/data/fonts/iosevka/default.nix @@ -1,9 +1,7 @@ { stdenv , lib -, pkgs , buildNpmPackage , fetchFromGitHub -, nodejs , darwin , remarshal , ttfautohint-nox @@ -69,7 +67,6 @@ buildNpmPackage rec { npmDepsHash = "sha256-Ncf07ggyOnz/2SpgdmaYS2X/8Bad+J2sz8Yyx9Iri3E="; nativeBuildInputs = [ - nodejs remarshal ttfautohint-nox ] ++ lib.optionals stdenv.isDarwin [ From 25ae7df30eec92db8cfddaae9bdda45c070308a9 Mon Sep 17 00:00:00 2001 From: Sam Doshi Date: Sat, 4 Feb 2023 16:56:05 +0000 Subject: [PATCH 026/198] samba: 4.17.4 -> 4.17.5 --- pkgs/servers/samba/4.x.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/servers/samba/4.x.nix b/pkgs/servers/samba/4.x.nix index df235abe98c4..3f657bbeceaf 100644 --- a/pkgs/servers/samba/4.x.nix +++ b/pkgs/servers/samba/4.x.nix @@ -48,11 +48,11 @@ with lib; stdenv.mkDerivation rec { pname = "samba"; - version = "4.17.4"; + version = "4.17.5"; src = fetchurl { url = "mirror://samba/pub/samba/stable/${pname}-${version}.tar.gz"; - hash = "sha256-wFEgedtMrHB8zqTBiuu9ay6zrPbpBzXn9kWjJr4fRTc="; + hash = "sha256-67eIDUdP/AnXO1/He8vWV/YjWRAzczGpwk1/acoRRCs="; }; outputs = [ "out" "dev" "man" ]; From eedda7e8d87639c6ba65d0c177bbc5266a5fc790 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 5 Feb 2023 13:19:10 +0000 Subject: [PATCH 027/198] rust-analyzer-unwrapped: 2023-01-23 -> 2023-01-30 --- pkgs/development/tools/rust/rust-analyzer/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/tools/rust/rust-analyzer/default.nix b/pkgs/development/tools/rust/rust-analyzer/default.nix index a90ac2780e8a..80fbfe249d75 100644 --- a/pkgs/development/tools/rust/rust-analyzer/default.nix +++ b/pkgs/development/tools/rust/rust-analyzer/default.nix @@ -12,14 +12,14 @@ rustPlatform.buildRustPackage rec { pname = "rust-analyzer-unwrapped"; - version = "2023-01-23"; - cargoSha256 = "sha256-NSdHvWN5BIEXZMFiweKYbJayxDqlFmqJp+sIzeORhSU="; + version = "2023-01-30"; + cargoSha256 = "sha256-ONziMXbMPDoIb44mOJCg5O1QOo5o13kaGb+b6Qp3Ikk="; src = fetchFromGitHub { owner = "rust-lang"; repo = "rust-analyzer"; rev = version; - sha256 = "sha256-Uq6jngJnf2UqKrOzqMXtq5IVxkU3eNCkmORPdccLxp0="; + sha256 = "sha256-W8abw+8SuxSMMBH4ydfawdC6zwPHQwhHerFEXkB4oU4="; }; auditable = true; # TODO: remove when this is the default From faeefbe1b9931eb8f36e8f0638ba9a30088861d0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 5 Feb 2023 12:11:45 -0800 Subject: [PATCH 028/198] flare-signal: init at 0.6.0 Co-authored-by: Tom Fitzhenry --- .../flare-signal/default.nix | 59 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 61 insertions(+) create mode 100644 pkgs/applications/networking/instant-messengers/flare-signal/default.nix diff --git a/pkgs/applications/networking/instant-messengers/flare-signal/default.nix b/pkgs/applications/networking/instant-messengers/flare-signal/default.nix new file mode 100644 index 000000000000..a30bfa2dcb02 --- /dev/null +++ b/pkgs/applications/networking/instant-messengers/flare-signal/default.nix @@ -0,0 +1,59 @@ +{ lib +, stdenv +, fetchFromGitLab +, meson +, ninja +, pkg-config +, protobuf +, libsecret +, libadwaita +, rustPlatform +, desktop-file-utils +, wrapGAppsHook4 +}: + +stdenv.mkDerivation rec { + pname = "flare"; + version = "0.6.0"; + + src = fetchFromGitLab { + domain = "gitlab.com"; + owner = "Schmiddiii"; + repo = pname; + rev = version; + hash = "sha256-wY95sXWGDjEy8vvP79XliJOn5GQkAvDmOXKmRz0TPEw="; + }; + + cargoDeps = rustPlatform.fetchCargoTarball { + inherit src; + name = "${pname}-${version}"; + hash = "sha256-J3MGQlPYGjhZKH599vfW2WhkXx+Tdr53PviiVpye4R0="; + }; + + nativeBuildInputs = [ + desktop-file-utils # for update-desktop-database + meson + ninja + pkg-config + wrapGAppsHook4 + ] ++ (with rustPlatform; [ + cargoSetupHook + rust.cargo + rust.rustc + ]); + + buildInputs = [ + libadwaita + libsecret + protobuf + ]; + + meta = { + changelog = "https://gitlab.com/Schmiddiii/flare/-/blob/${src.rev}/CHANGELOG.md"; + description = "An unofficial Signal GTK client"; + homepage = "https://gitlab.com/Schmiddiii/flare"; + license = lib.licenses.agpl3Plus; + maintainers = with lib.maintainers; [ dotlambda tomfitzhenry ]; + platforms = lib.platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index f873d604445a..7e999edab024 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -776,6 +776,8 @@ with pkgs; flare-floss = callPackage ../tools/security/flare-floss { }; + flare-signal = callPackage ../applications/networking/instant-messengers/flare-signal { }; + prefer-remote-fetch = import ../build-support/prefer-remote-fetch; global-platform-pro = callPackage ../development/tools/global-platform-pro { }; From aa5b7e4571619199510e0d86c1a02562bf6e493b Mon Sep 17 00:00:00 2001 From: Shadaj Laddad Date: Mon, 6 Feb 2023 10:58:12 -0800 Subject: [PATCH 029/198] openvscode-server: 1.74.3 -> 1.75.0 --- pkgs/servers/openvscode-server/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/servers/openvscode-server/default.nix b/pkgs/servers/openvscode-server/default.nix index 1253a6ef8fc3..47ca62c6d01e 100644 --- a/pkgs/servers/openvscode-server/default.nix +++ b/pkgs/servers/openvscode-server/default.nix @@ -40,13 +40,13 @@ let in stdenv.mkDerivation rec { pname = "openvscode-server"; - version = "1.74.3"; + version = "1.75.0"; src = fetchFromGitHub { owner = "gitpod-io"; repo = "openvscode-server"; rev = "openvscode-server-v${version}"; - sha256 = "2+/5I0dpQsmoWA7Q0dCgPO85dkOKQWHeO34cueH4sjQ="; + sha256 = "ZR4gEE+bLVjcGxhoRYQqfxDjk0ulPmdb5IV041qf954="; }; yarnCache = stdenv.mkDerivation { @@ -69,7 +69,7 @@ in stdenv.mkDerivation rec { outputHashMode = "recursive"; outputHashAlgo = "sha256"; - outputHash = "sha256-4B/ESi4lM2p+pY0dfUKWgwmYkwqPYaNuCLJ99ByjwWE="; + outputHash = "sha256-KcGhHFglBJDyircYUxpsMLRtQblYx3u/BMQq35A0qhE="; }; nativeBuildInputs = [ From e3bec64e7fef8a8389967700be2bdbbefa1cd355 Mon Sep 17 00:00:00 2001 From: Thomas Gerbet Date: Mon, 6 Feb 2023 22:47:16 +0100 Subject: [PATCH 030/198] phpExtensions.opcache: fix test environment for darwin --- pkgs/top-level/php-packages.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkgs/top-level/php-packages.nix b/pkgs/top-level/php-packages.nix index 8b1bbecb249f..827985cab7e5 100644 --- a/pkgs/top-level/php-packages.nix +++ b/pkgs/top-level/php-packages.nix @@ -84,6 +84,7 @@ lib.makeScope pkgs.newScope (self: with self; { , zendExtension ? false , doCheck ? true , extName ? name + , allowLocalNetworking ? false , ... }@args: stdenv.mkDerivation ((builtins.removeAttrs args [ "name" ]) // { pname = "php-${name}"; @@ -103,6 +104,7 @@ lib.makeScope pkgs.newScope (self: with self; { ]; inherit configureFlags internalDeps buildInputs zendExtension doCheck; + __darwinAllowLocalNetworking = allowLocalNetworking; preConfigurePhases = [ "cdToExtensionRootPhase" @@ -412,7 +414,7 @@ lib.makeScope pkgs.newScope (self: with self; { ]; zendExtension = true; # Tests launch the builtin webserver. - __darwinAllowLocalNetworking = true; + allowLocalNetworking = true; } { name = "openssl"; From 4e6f4f630a4995076283e8487efeb75e0a2aa7b9 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 7 Feb 2023 00:58:41 +0000 Subject: [PATCH 031/198] drawio: 20.8.10 -> 20.8.16 --- pkgs/applications/graphics/drawio/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/graphics/drawio/default.nix b/pkgs/applications/graphics/drawio/default.nix index c26b2f46e7f6..5c5745646b59 100644 --- a/pkgs/applications/graphics/drawio/default.nix +++ b/pkgs/applications/graphics/drawio/default.nix @@ -11,11 +11,11 @@ stdenv.mkDerivation rec { pname = "drawio"; - version = "20.8.10"; + version = "20.8.16"; src = fetchurl { url = "https://github.com/jgraph/drawio-desktop/releases/download/v${version}/drawio-x86_64-${version}.rpm"; - sha256 = "118e9c9a328c92aeeda3c5925c8d8ed50d0993c07715726447ee720699958626"; + sha256 = "sha256-FBnyogqf5BHLRInjJzC2dENnAwFcWMHDvJ+F0I3ffVg="; }; nativeBuildInputs = [ From fad8de6ea191c4ce723d825bb7db6119cf8135ab Mon Sep 17 00:00:00 2001 From: Austin Butler Date: Mon, 6 Feb 2023 21:58:43 -0800 Subject: [PATCH 032/198] _1password-gui: 8.9.10 -> 8.9.14, 8.9.12-4.BETA -> 8.10.0-20.BETA --- .../misc/1password-gui/default.nix | 18 ++++---- .../applications/misc/1password-gui/update.sh | 46 +++++++++++++++++++ 2 files changed, 55 insertions(+), 9 deletions(-) create mode 100755 pkgs/applications/misc/1password-gui/update.sh diff --git a/pkgs/applications/misc/1password-gui/default.nix b/pkgs/applications/misc/1password-gui/default.nix index 3c08f1d8a9da..27adbfff713d 100644 --- a/pkgs/applications/misc/1password-gui/default.nix +++ b/pkgs/applications/misc/1password-gui/default.nix @@ -9,43 +9,43 @@ let pname = "1password"; - version = if channel == "stable" then "8.9.10" else "8.9.12-4.BETA"; + version = if channel == "stable" then "8.9.14" else "8.10.0-20.BETA"; sources = { stable = { x86_64-linux = { url = "https://downloads.1password.com/linux/tar/stable/x86_64/1password-${version}.x64.tar.gz"; - sha256 = "sha256-aoa00W5zvZQeHKd2Eqyrxl5Z1PwLMHc5lkMUskLiD74="; + sha256 = "sha256-rlLzPDPOmzamDnRxuvgrpAW0QrMINw/PsdLxOiBpMnA="; }; aarch64-linux = { url = "https://downloads.1password.com/linux/tar/stable/aarch64/1password-${version}.arm64.tar.gz"; - sha256 = "sha256-Zt64UGKI3+DayS6XP7jTE+pxv52tUUZbUHiuzjcm1JI="; + sha256 = "sha256-hJTqFr6/KOl4C+1oyo/zrnCbqvRQin6HjyLKOppUl/M="; }; x86_64-darwin = { url = "https://downloads.1password.com/mac/1Password-${version}-x86_64.zip"; - sha256 = "sha256-sx9eASpMcgkIH1GRzJMqSQa5Y5GJlYU/20CZFyFK+OU="; + sha256 = "sha256-3/aiUj+WYZfPItYrYNQKsUSpkRTgOhyb8L5gURt1O74="; }; aarch64-darwin = { url = "https://downloads.1password.com/mac/1Password-${version}-aarch64.zip"; - sha256 = "sha256-Z1cEynO9iWZra542CVGmefrTNerMe13OcTAzWXNi8jI="; + sha256 = "sha256-n0xqD5WbcC9B6spisa5V7JJRXGZubBwzJFUS8edvz/Q="; }; }; beta = { x86_64-linux = { url = "https://downloads.1password.com/linux/tar/beta/x86_64/1password-${version}.x64.tar.gz"; - sha256 = "sha256-/WXaLINqLFLft+wrmr+fV0kM9qS5w4etFiGltnzoVdo="; + sha256 = "sha256-r2MRyw0dfD3vGnCcPW624K5rSaNSCjTVW4cWFgPAIaY="; }; aarch64-linux = { url = "https://downloads.1password.com/linux/tar/beta/aarch64/1password-${version}.arm64.tar.gz"; - sha256 = "sha256-Zv9uHkFCZ0flBMAwQBjNhqFWhAXKyHBfZk733hbSag4="; + sha256 = "sha256-98sv4yLvLw8J5uQBB66qTV3lRWnyeZiifhEOW7shz8s="; }; x86_64-darwin = { url = "https://downloads.1password.com/mac/1Password-${version}-x86_64.zip"; - sha256 = "sha256-Vryk6nMQY+0NIgwJkZ2j3vrxyhrzxbe96jbyoNbPIR0="; + sha256 = "sha256-ezHk6OgUsmFfMfsY+yyWqn+6JgHSmpkFWGNCCaBv/Bo="; }; aarch64-darwin = { url = "https://downloads.1password.com/mac/1Password-${version}-aarch64.zip"; - sha256 = "sha256-74iOaNkuPRKUsTNNd7UTpy5ahjoMmxiNT84Op5ztRGk="; + sha256 = "sha256-JmCrEBucXGPpGbiKOxA8vu6bUVYsavfsYA5QY58Grnw="; }; }; }; diff --git a/pkgs/applications/misc/1password-gui/update.sh b/pkgs/applications/misc/1password-gui/update.sh new file mode 100755 index 000000000000..aab589fd37ea --- /dev/null +++ b/pkgs/applications/misc/1password-gui/update.sh @@ -0,0 +1,46 @@ +#!/usr/bin/env nix-shell +#!nix-shell -i bash -p jq +#shellcheck shell=bash + +CURRENT_HASH="" + +print_hash() { + OS="$1" + CHANNEL="$2" + ARCH="$3" + VERSION="$4" + + if [[ "$OS" == "linux" ]]; then + if [[ "$ARCH" == "x86_64" ]]; then + EXT="x64.tar.gz" + else + EXT="arm64.tar.gz" + fi + URL="https://downloads.1password.com/${OS}/tar/${CHANNEL}/${ARCH}/1password-${VERSION}.${EXT}" + else + EXT="$ARCH.zip" + URL="https://downloads.1password.com/${OS}/1Password-${VERSION}-${EXT}" + fi + + CURRENT_HASH=$(nix store prefetch-file "$URL" --json | jq -r '.hash') + + echo "$CHANNEL ${ARCH}-${OS}: $CURRENT_HASH" +} + +if [[ -z "$STABLE_VER" ]]; then + echo "No 'STABLE_VER' environment variable provided, skipping" +else + print_hash "linux" "stable" "x86_64" "$STABLE_VER" + print_hash "linux" "stable" "aarch64" "$STABLE_VER" + print_hash "mac" "stable" "x86_64" "$STABLE_VER" + print_hash "mac" "stable" "aarch64" "$STABLE_VER" +fi + +if [[ -z "$BETA_VER" ]]; then + echo "No 'BETA_VER' environment variable provided, skipping" +else + print_hash "linux" "beta" "x86_64" "$BETA_VER" + print_hash "linux" "beta" "aarch64" "$BETA_VER" + print_hash "mac" "beta" "x86_64" "$BETA_VER" + print_hash "mac" "beta" "aarch64" "$BETA_VER" +fi From 82a0b7d7df926b2b4411494dbfb0a92410213714 Mon Sep 17 00:00:00 2001 From: Nick Cao Date: Tue, 7 Feb 2023 17:08:57 +0800 Subject: [PATCH 033/198] python311Packages.python-zbar: fix build since Py_SIZE is turned into a function Python 3.11 turned Py_SIZE into a function, thus Py_SIZE(obj) will be a rvalue, we need to use Py_SET_SIZE to set size now. --- ...ython-enum-fix-build-for-Python-3.11.patch | 61 +++++++++++++++++++ .../python-modules/python-zbar/default.nix | 15 ++++- 2 files changed, 75 insertions(+), 1 deletion(-) create mode 100644 pkgs/development/python-modules/python-zbar/0001-python-enum-fix-build-for-Python-3.11.patch diff --git a/pkgs/development/python-modules/python-zbar/0001-python-enum-fix-build-for-Python-3.11.patch b/pkgs/development/python-modules/python-zbar/0001-python-enum-fix-build-for-Python-3.11.patch new file mode 100644 index 000000000000..11b554151790 --- /dev/null +++ b/pkgs/development/python-modules/python-zbar/0001-python-enum-fix-build-for-Python-3.11.patch @@ -0,0 +1,61 @@ +From 64de7911d2938fc3601fec39c08008465b9d4f6f Mon Sep 17 00:00:00 2001 +From: Nick Cao +Date: Tue, 7 Feb 2023 17:12:50 +0800 +Subject: [PATCH] python: enum: fix build for Python 3.11 +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Python 3.9 introduced Py_SET_SIZE function to set size instead of +relying on Py_SIZE() as a macro [3.9]. + +Python 3.10 started to encourage to use Py_SET_SIZE instead of +assigning into return value of Py_SIZE [3.10]. + +Python 3.11 flips the switch, turn Py_SIZE into a function [3.11], +thus Py_SIZE(obj) will be a rvalue. We need to use Py_SET_SIZE +to set size now. + +[3.9]: https://docs.python.org/3.9/c-api/structures.html#c.Py_SET_SIZE +[3.10]: https://docs.python.org/3.10/c-api/structures.html#c.Py_SIZE +[3.11]: https://docs.python.org/3.11/c-api/structures.html#c.Py_SIZE + +Adapted from https://github.com/mchehab/zbar/pull/231 + +Signed-off-by: Đoàn Trần Công Danh +Signed-off-by: Nick Cao +--- + python/enum.c | 8 ++++++++ + 1 file changed, 8 insertions(+) + +diff --git a/python/enum.c b/python/enum.c +index dfe1b1e..4833a20 100644 +--- a/python/enum.c ++++ b/python/enum.c +@@ -52,7 +52,11 @@ enumitem_new (PyTypeObject *type, + + /* we assume the "fast path" for a single-digit ints (see longobject.c) */ + /* this also holds if we get a small_int preallocated long */ ++#if PY_VERSION_HEX >= 0x030900A4 ++ Py_SET_SIZE(&self->val, Py_SIZE(longval)); ++#else + Py_SIZE(&self->val) = Py_SIZE(longval); ++#endif + self->val.ob_digit[0] = longval->ob_digit[0]; + Py_DECREF(longval); + #else +@@ -143,7 +147,11 @@ zbarEnumItem_New (PyObject *byname, + + /* we assume the "fast path" for a single-digit ints (see longobject.c) */ + /* this also holds if we get a small_int preallocated long */ ++#if PY_VERSION_HEX >= 0x030900A4 ++ Py_SET_SIZE(&self->val, Py_SIZE(longval)); ++#else + Py_SIZE(&self->val) = Py_SIZE(longval); ++#endif + self->val.ob_digit[0] = longval->ob_digit[0]; + Py_DECREF(longval); + +-- +2.39.1 + diff --git a/pkgs/development/python-modules/python-zbar/default.nix b/pkgs/development/python-modules/python-zbar/default.nix index 7ad125b26ef5..178b1899ef51 100644 --- a/pkgs/development/python-modules/python-zbar/default.nix +++ b/pkgs/development/python-modules/python-zbar/default.nix @@ -1,4 +1,10 @@ -{ lib , buildPythonPackage , fetchFromGitHub , pillow , zbar , pytestCheckHook }: +{ lib +, buildPythonPackage +, fetchFromGitHub +, pillow +, zbar +, pytestCheckHook +}: buildPythonPackage rec { pname = "python-zbar"; @@ -12,6 +18,13 @@ buildPythonPackage rec { sha256 = "sha256-FvV7TMc4JbOiRjWLka0IhtpGGqGm5fis7h870OmJw2U="; }; + patches = [ + # python: enum: fix build for Python 3.11 + # https://github.com/mchehab/zbar/pull/231 + # the patch is reworked as it does not cleanly apply + ./0001-python-enum-fix-build-for-Python-3.11.patch + ]; + propagatedBuildInputs = [ pillow ]; buildInputs = [ zbar ]; From 6b92d2f403d522d2ff91036495a27839f1a93ba4 Mon Sep 17 00:00:00 2001 From: superherointj <5861043+superherointj@users.noreply.github.com> Date: Sun, 5 Feb 2023 10:59:11 -0300 Subject: [PATCH 034/198] python311Packages.dvc-data: 0.36.2 -> 0.38.1 Release: https://github.com/iterative/dvc-data/releases/tag/0.38.1 Diff: https://github.com/iterative/dvc-data/compare/0.36.2...0.38.1 --- pkgs/development/python-modules/dvc-data/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/dvc-data/default.nix b/pkgs/development/python-modules/dvc-data/default.nix index 56a27acb6019..316e20f91d0e 100644 --- a/pkgs/development/python-modules/dvc-data/default.nix +++ b/pkgs/development/python-modules/dvc-data/default.nix @@ -15,7 +15,7 @@ buildPythonPackage rec { pname = "dvc-data"; - version = "0.36.2"; + version = "0.38.1"; format = "pyproject"; disabled = pythonOlder "3.8"; @@ -24,7 +24,7 @@ buildPythonPackage rec { owner = "iterative"; repo = pname; rev = "refs/tags/${version}"; - hash = "sha256-HKNltc5pWc0mU+yCj/PV9E6GYQ+3fbcacRRXtquGM4w="; + hash = "sha256-xuNxsG8wMpdwyA0BkEYepnGjIZGmUzTivN5paLtM68Q="; }; SETUPTOOLS_SCM_PRETEND_VERSION = version; From 73c0fd813b6449a8ab73483c4c7f06fa4c3f07cd Mon Sep 17 00:00:00 2001 From: superherointj <5861043+superherointj@users.noreply.github.com> Date: Tue, 7 Feb 2023 09:04:37 -0300 Subject: [PATCH 035/198] python311Packages.sqltrie: 0.0.27 -> 0.0.28 Release: https://github.com/iterative/sqltrie/releases/tag/0.0.28 Diff: https://github.com/iterative/sqltrie/compare/0.0.27...0.0.28 Co-authored-by: @fabaff --- pkgs/development/python-modules/sqltrie/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/sqltrie/default.nix b/pkgs/development/python-modules/sqltrie/default.nix index 76c1eb22b2dc..da465eb0ccb3 100644 --- a/pkgs/development/python-modules/sqltrie/default.nix +++ b/pkgs/development/python-modules/sqltrie/default.nix @@ -11,7 +11,7 @@ buildPythonPackage rec { pname = "sqltrie"; - version = "0.0.27"; + version = "0.0.28"; format = "pyproject"; disabled = pythonOlder "3.8"; @@ -20,7 +20,7 @@ buildPythonPackage rec { owner = "iterative"; repo = pname; rev = "refs/tags/${version}"; - hash = "sha256-8ymTdbJgRUf9BBNMEVF1lm29qA+N1629cekEohaxt0c="; + hash = "sha256-i1IFkibQ7VHrkD8KzeInBE4ZbjxAw8nQIeE6O4iYmbw="; }; SETUPTOOLS_SCM_PRETEND_VERSION = version; From 099a60d04e4fb75297c8013257cd2bd813445a60 Mon Sep 17 00:00:00 2001 From: superherointj <5861043+superherointj@users.noreply.github.com> Date: Tue, 7 Feb 2023 09:05:04 -0300 Subject: [PATCH 036/198] python311Packages.dvc-objects: 0.19.0 -> 0.19.3 Release: https://github.com/iterative/dvc-objects/releases/tag/0.19.3 Diff: https://github.com/iterative/dvc-objects/compare/0.19.0...0.19.3 --- pkgs/development/python-modules/dvc-objects/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/dvc-objects/default.nix b/pkgs/development/python-modules/dvc-objects/default.nix index c20540b8eeb3..a0ab592eaa90 100644 --- a/pkgs/development/python-modules/dvc-objects/default.nix +++ b/pkgs/development/python-modules/dvc-objects/default.nix @@ -16,7 +16,7 @@ buildPythonPackage rec { pname = "dvc-objects"; - version = "0.19.0"; + version = "0.19.3"; format = "pyproject"; disabled = pythonOlder "3.8"; @@ -25,7 +25,7 @@ buildPythonPackage rec { owner = "iterative"; repo = pname; rev = "refs/tags/${version}"; - hash = "sha256-jwjhRY1SMqiTZ5UJmoZb4odg3g8uC9ehPmxRU2VsH8U="; + hash = "sha256-oKK+BhOgdRPZZAACgxgmr9rlzEH9yWmvbmx09d42u/Y="; }; SETUPTOOLS_SCM_PRETEND_VERSION = version; From f87b50832aefeae63709504c1efc2672bea23ef6 Mon Sep 17 00:00:00 2001 From: Atemu Date: Tue, 7 Feb 2023 14:02:54 +0100 Subject: [PATCH 037/198] BeatSaberModManager: bump deps --- pkgs/games/BeatSaberModManager/deps.nix | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/pkgs/games/BeatSaberModManager/deps.nix b/pkgs/games/BeatSaberModManager/deps.nix index 1542b120c9af..e36521e19149 100644 --- a/pkgs/games/BeatSaberModManager/deps.nix +++ b/pkgs/games/BeatSaberModManager/deps.nix @@ -26,9 +26,9 @@ (fetchNuGet { pname = "HarfBuzzSharp.NativeAssets.Win32"; version = "2.8.2.1-preview.108"; sha256 = "0n6ymn9jqms3mk5hg0ar4y9jmh96myl6q0jimn7ahb1a8viq55k1"; }) (fetchNuGet { pname = "JetBrains.Annotations"; version = "10.3.0"; sha256 = "1grdx28ga9fp4hwwpwv354rizm8anfq4lp045q4ss41gvhggr3z8"; }) (fetchNuGet { pname = "MicroCom.Runtime"; version = "0.11.0"; sha256 = "0p9c3m0zk59x9dcqw077hzd2yk60myisbacvm36mnwpcjwzjkp2m"; }) - (fetchNuGet { pname = "Microsoft.AspNetCore.App.Ref"; version = "6.0.12"; sha256 = "0x8x922jhdn4zzbqqhlnzg5cmg69myn9zibk363py3yamkywcami"; }) - (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm64"; version = "6.0.12"; sha256 = "1zi1x4w51fawi8083s48mxrlpqzkc48qsvrq2h7xx58x48ml465s"; }) - (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-x64"; version = "6.0.12"; sha256 = "1wwciddbnykamlwl9i88l9081q27l0i17jmvymsxddbi0v9rr3sb"; }) + (fetchNuGet { pname = "Microsoft.AspNetCore.App.Ref"; version = "6.0.13"; sha256 = "1k49nrz5rw1yglkjypmmnclahib2qiwm838008yahk00ysy039f4"; }) + (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm64"; version = "6.0.13"; sha256 = "1a80w34yb700cvjzfcsq3c5sb32bk95ccgjfcvyqxkpzlgcc50xn"; }) + (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-x64"; version = "6.0.13"; sha256 = "1y2gnkrc788y9k79sygx7dmgkj674qwdajyrxizx0a70rwmjszmw"; }) (fetchNuGet { pname = "Microsoft.CodeAnalysis.Analyzers"; version = "3.0.0"; sha256 = "0bbl0jpqywqmzz2gagld1p2gvdfldjfjmm25hil9wj2nq1zc4di8"; }) (fetchNuGet { pname = "Microsoft.CodeAnalysis.Common"; version = "3.8.0"; sha256 = "12n7rvr39bzkf2maw7zplw8rwpxpxss4ich3bb2pw770rx4nyvyw"; }) (fetchNuGet { pname = "Microsoft.CodeAnalysis.CSharp"; version = "3.8.0"; sha256 = "1kmry65csvfn72zzc16vj1nfbfwam28wcmlrk3m5rzb8ydbzgylb"; }) @@ -36,11 +36,11 @@ (fetchNuGet { pname = "Microsoft.CodeAnalysis.Scripting.Common"; version = "3.8.0"; sha256 = "0hjgxcsj5zy27lqk0986m59n5dbplx2vjjla2lsvg4bwg8qa7bpk"; }) (fetchNuGet { pname = "Microsoft.CSharp"; version = "4.3.0"; sha256 = "0gw297dgkh0al1zxvgvncqs0j15lsna9l1wpqas4rflmys440xvb"; }) (fetchNuGet { pname = "Microsoft.CSharp"; version = "4.5.0"; sha256 = "01i28nvzccxbqmiz217fxs6hnjwmd5fafs37rd49a6qp53y6623l"; }) - (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm64"; version = "6.0.12"; sha256 = "0axj326a79h8762ahrxgpnzczivfvdjn2xa2np2djc7ybn6j3491"; }) - (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-x64"; version = "6.0.12"; sha256 = "0dfivz2wq18gsdn8b9d0v6q0lf2mvayl85nad7cvysfc93aw05jg"; }) - (fetchNuGet { pname = "Microsoft.NETCore.App.Ref"; version = "6.0.12"; sha256 = "00s1flhzvxsdhgn469vc1q63qkcv05g5zqx10p1gsnzxjpdx01in"; }) - (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm64"; version = "6.0.12"; sha256 = "1j615cjwkyjkvvc03pvwmfgqbh1z9aq08bvw0bnjkhs1qs6dz7x0"; }) - (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-x64"; version = "6.0.12"; sha256 = "1w7kfgld8wcbqqyb1cpbnd6b08f83jfny2q70vb1qdqfn5bgcb1h"; }) + (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm64"; version = "6.0.13"; sha256 = "1xy7x37mkdiv907xbxxc0aijjhgi2hli1s79adqn4adw8fbn2aki"; }) + (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-x64"; version = "6.0.13"; sha256 = "0ph1r2vhnqg7agk1zz4873983qy2i5nwa10q40ba3g96rdy2pg1f"; }) + (fetchNuGet { pname = "Microsoft.NETCore.App.Ref"; version = "6.0.13"; sha256 = "0ddygsnms3vfg6s7w2mcm7gqdmb4h7glrdj73hm1l42sndmn9p7v"; }) + (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm64"; version = "6.0.13"; sha256 = "0l1bq22d85sm36hrsmyf74hir1fj0msqv0c6d4ba0b64b3rwhvg0"; }) + (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-x64"; version = "6.0.13"; sha256 = "0in8sk9bl2r2dgjf3ncvmqzbdnyvy2329bzmykmvsrq511c76gh3"; }) (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.0.1"; sha256 = "01al6cfxp68dscl15z7rxfw9zvhm64dncsw09a1vmdkacsa2v6lr"; }) (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.1.0"; sha256 = "08vh1r12g6ykjygq5d3vq09zylgb84l63k49jc4v8faw9g93iqqm"; }) (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "2.1.2"; sha256 = "1507hnpr9my3z4w1r6xk5n0s1j3y6a2c2cnynj76za7cphxi1141"; }) From 500b491a25e8f0838c077f528d2cce661df9ecba Mon Sep 17 00:00:00 2001 From: Mostly Void <7rat13@gmail.com> Date: Tue, 7 Feb 2023 19:06:09 +0530 Subject: [PATCH 038/198] python3Packages.sentence-transformers: init at 2.2.2 --- .../sentence-transformers/default.nix | 53 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 55 insertions(+) create mode 100644 pkgs/development/python-modules/sentence-transformers/default.nix diff --git a/pkgs/development/python-modules/sentence-transformers/default.nix b/pkgs/development/python-modules/sentence-transformers/default.nix new file mode 100644 index 000000000000..4554b36d1207 --- /dev/null +++ b/pkgs/development/python-modules/sentence-transformers/default.nix @@ -0,0 +1,53 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, huggingface-hub +, nltk +, numpy +, scikit-learn +, scipy +, sentencepiece +, tokenizers +, torch +, torchvision +, tqdm +, transformers +}: + +buildPythonPackage rec { + pname = "sentence-transformers"; + version = "2.2.2"; + format = "setuptools"; + + src = fetchFromGitHub { + owner = "UKPLab"; + repo = "sentence-transformers"; + rev = "v${version}"; + hash = "sha256-hEYpDAL0lliaS1j+c5vaZ0q1hw802jfTUurx/FvgY9w="; + }; + + propagatedBuildInputs = [ + huggingface-hub + nltk + numpy + scikit-learn + scipy + sentencepiece + tokenizers + torch + torchvision + tqdm + transformers + ]; + + pythonImportsCheck = [ "sentence_transformers" ]; + + doCheck = false; # tests fail at build_ext + + meta = with lib; { + description = "Multilingual Sentence & Image Embeddings with BERT"; + homepage = "https://github.com/UKPLab/sentence-transformers"; + license = licenses.asl20; + maintainers = with maintainers; [ dit7ya ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index c672707b90ef..988f7e71981c 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -10413,6 +10413,8 @@ self: super: with self; { inherit (pkgs) sentencepiece; }; + sentence-transformers = callPackage ../development/python-modules/sentence-transformers { }; + sentinel = callPackage ../development/python-modules/sentinel { }; sentinels = callPackage ../development/python-modules/sentinels { }; From ea9515008223ad099e5a636450283d97083d6ecb Mon Sep 17 00:00:00 2001 From: Mostly Void <7rat13@gmail.com> Date: Tue, 7 Feb 2023 19:09:21 +0530 Subject: [PATCH 039/198] khoj: init at 0.2.5 --- pkgs/servers/search/khoj/default.nix | 75 ++++++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 77 insertions(+) create mode 100644 pkgs/servers/search/khoj/default.nix diff --git a/pkgs/servers/search/khoj/default.nix b/pkgs/servers/search/khoj/default.nix new file mode 100644 index 000000000000..db20f0e920cf --- /dev/null +++ b/pkgs/servers/search/khoj/default.nix @@ -0,0 +1,75 @@ +{ lib +, fetchFromGitHub +, python3Packages +, qt6 +}: + +python3Packages.buildPythonApplication rec { + pname = "khoj"; + version = "0.2.5"; + format = "setuptools"; + + src = fetchFromGitHub { + owner = "debanjum"; + repo = "khoj"; + rev = version; + hash = "sha256-cylZNRyHMFJiBjlEtKMpRjRjwQyb7pgOjMtxFhKFU4k="; + }; + + propagatedBuildInputs = with python3Packages; [ + aiofiles + dateparser + defusedxml + fastapi + huggingface-hub + jinja2 + numpy + openai + pillow + pydantic + pyqt6 + pyyaml + schedule + sentence-transformers + torch + torchvision + transformers + uvicorn + ]; + + buildInputs = with qt6; [ + qtwayland + ]; + + nativeBuildInputs = with qt6; [ + wrapQtAppsHook + ]; + + checkInputs = with python3Packages; [ + pytest + ]; + + postPatch = '' + substituteInPlace setup.py \ + --replace "aiofiles == 0.8.0" "aiofiles >= 0.8.0" \ + --replace "openai == 0.20.0" "openai >= 0.20.0" \ + --replace "pytest == 7.1.2" "pytest >= 7.1.2" \ + --replace "fastapi == 0.77.1" "fastapi >= 0.77.1" \ + --replace "numpy == 1.22.4" "numpy >= 1.22.4" \ + --replace "huggingface_hub == 0.8.1" "huggingface_hub >= 0.8.1" \ + --replace "dateparser == 1.1.1" "dateparser >= 1.1.1" \ + --replace "sentence-transformers == 2.1.0" "sentence-transformers >= 2.1.0" \ + --replace "transformers == 4.21.0" "transformers >= 4.21.0" \ + --replace "torchvision == 0.14.1" "torchvision" \ + --replace "pydantic == 1.9.1" "pydantic >= 1.9.1" \ + --replace "pyqt6 == 6.3.1" "pyqt6 >= 6.3.1" \ + --replace "uvicorn == 0.17.6" "uvicorn >= 0.17.6" + ''; + + meta = with lib; { + description = "Natural Language Search Assistant for your Org-Mode and Markdown notes, Beancount transactions and Photos"; + homepage = "https://github.com/debanjum/khoj"; + license = licenses.gpl3Only; + maintainers = with maintainers; [ dit7ya ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 170a9195d1f1..dd7b79297311 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -30628,6 +30628,8 @@ with pkgs; khal = callPackage ../applications/misc/khal { }; + khoj = callPackage ../servers/search/khoj { }; + khard = callPackage ../applications/misc/khard { }; kid3 = libsForQt5.callPackage ../applications/audio/kid3 { }; From 91dced3734fa7bd38ddbd9c81357dffdf528c5cd Mon Sep 17 00:00:00 2001 From: jopejoe1 Date: Tue, 7 Feb 2023 14:49:20 +0100 Subject: [PATCH 040/198] plasma5Packages.kimageformats: enable RAW image support --- pkgs/development/libraries/kde-frameworks/kimageformats.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/kde-frameworks/kimageformats.nix b/pkgs/development/libraries/kde-frameworks/kimageformats.nix index c221f3489112..beec3e13cf71 100644 --- a/pkgs/development/libraries/kde-frameworks/kimageformats.nix +++ b/pkgs/development/libraries/kde-frameworks/kimageformats.nix @@ -1,7 +1,7 @@ { mkDerivation, lib, extra-cmake-modules, - ilmbase, karchive, openexr, libavif, libheif, libjxl, qtbase + ilmbase, karchive, openexr, libavif, libheif, libjxl, libraw, qtbase }: let inherit (lib) getDev; in @@ -10,7 +10,7 @@ mkDerivation { pname = "kimageformats"; nativeBuildInputs = [ extra-cmake-modules ]; - buildInputs = [ karchive openexr libavif libheif libjxl qtbase ]; + buildInputs = [ karchive openexr libavif libheif libjxl libraw qtbase ]; outputs = [ "out" ]; # plugins only CXXFLAGS = "-I${getDev ilmbase}/include/OpenEXR"; cmakeFlags = [ From ce2fdc97662c8b11f26c097ba2478266009721ce Mon Sep 17 00:00:00 2001 From: superherointj <5861043+superherointj@users.noreply.github.com> Date: Wed, 1 Feb 2023 10:40:00 -0300 Subject: [PATCH 041/198] k3s: add multiple versions --- ...d-strip-downloading-just-package-CRD.patch | 41 +++ .../networking/cluster/k3s/1_23/default.nix | 331 ++++++++++++++++++ ...d-strip-downloading-just-package-CRD.patch | 41 +++ .../networking/cluster/k3s/1_24/default.nix | 329 +++++++++++++++++ ...d-strip-downloading-just-package-CRD.patch | 41 +++ .../networking/cluster/k3s/1_25/default.nix | 329 +++++++++++++++++ .../cluster/k3s/{ => 1_26}/chart-versions.nix | 0 .../cluster/k3s/{ => 1_26}/default.nix | 0 .../cluster/k3s/{ => 1_26}/update.sh | 0 pkgs/top-level/all-packages.nix | 6 +- 10 files changed, 1117 insertions(+), 1 deletion(-) create mode 100644 pkgs/applications/networking/cluster/k3s/1_23/0001-script-download-strip-downloading-just-package-CRD.patch create mode 100644 pkgs/applications/networking/cluster/k3s/1_23/default.nix create mode 100644 pkgs/applications/networking/cluster/k3s/1_24/0001-script-download-strip-downloading-just-package-CRD.patch create mode 100644 pkgs/applications/networking/cluster/k3s/1_24/default.nix create mode 100644 pkgs/applications/networking/cluster/k3s/1_25/0001-script-download-strip-downloading-just-package-CRD.patch create mode 100644 pkgs/applications/networking/cluster/k3s/1_25/default.nix rename pkgs/applications/networking/cluster/k3s/{ => 1_26}/chart-versions.nix (100%) rename pkgs/applications/networking/cluster/k3s/{ => 1_26}/default.nix (100%) rename pkgs/applications/networking/cluster/k3s/{ => 1_26}/update.sh (100%) diff --git a/pkgs/applications/networking/cluster/k3s/1_23/0001-script-download-strip-downloading-just-package-CRD.patch b/pkgs/applications/networking/cluster/k3s/1_23/0001-script-download-strip-downloading-just-package-CRD.patch new file mode 100644 index 000000000000..115fd6824772 --- /dev/null +++ b/pkgs/applications/networking/cluster/k3s/1_23/0001-script-download-strip-downloading-just-package-CRD.patch @@ -0,0 +1,41 @@ +From 6f53bd36a40da4c71486e3b79f6e32d53d6eea5d Mon Sep 17 00:00:00 2001 +From: Euan Kemp +Date: Thu, 3 Feb 2022 23:50:40 -0800 +Subject: [PATCH 2/2] scrips/download: strip downloading, just package CRD + +The CRD packaging is a complicated set of commands, so let's reuse it. +--- + scripts/download | 10 ++-------- + 1 file changed, 2 insertions(+), 8 deletions(-) + +diff --git a/scripts/download b/scripts/download +index 5effc0562a..82361803ee 100755 +--- a/scripts/download ++++ b/scripts/download +@@ -24,12 +24,6 @@ rm -rf ${CONTAINERD_DIR} + mkdir -p ${CHARTS_DIR} + mkdir -p ${DATA_DIR} + +-curl --compressed -sfL https://github.com/k3s-io/k3s-root/releases/download/${VERSION_ROOT}/k3s-root-${ARCH}.tar | tar xf - --exclude=bin/socat +- +-git clone --single-branch --branch=${VERSION_RUNC} --depth=1 https://github.com/opencontainers/runc ${RUNC_DIR} +- +-git clone --single-branch --branch=${VERSION_CONTAINERD} --depth=1 https://github.com/k3s-io/containerd ${CONTAINERD_DIR} +- + setup_tmp() { + TMP_DIR=$(mktemp -d --tmpdir=${CHARTS_DIR}) + cleanup() { +@@ -44,8 +38,8 @@ setup_tmp() { + + download_and_package_traefik () { + echo "Downloading Traefik Helm chart from ${TRAEFIK_URL}" +- curl -sfL ${TRAEFIK_URL} -o ${TMP_DIR}/${TRAEFIK_FILE} +- code=$? ++ # nixpkgs: copy in our known traefik chart instead ++ cp $TRAEFIK_CHART_FILE ${TMP_DIR}/${TRAEFIK_FILE} + + if [ $code -ne 0 ]; then + echo "Error: Failed to download Traefik Helm chart!" +-- +2.34.1 + diff --git a/pkgs/applications/networking/cluster/k3s/1_23/default.nix b/pkgs/applications/networking/cluster/k3s/1_23/default.nix new file mode 100644 index 000000000000..1fbe7687a006 --- /dev/null +++ b/pkgs/applications/networking/cluster/k3s/1_23/default.nix @@ -0,0 +1,331 @@ +{ stdenv +, lib +, makeWrapper +, socat +, iptables +, iproute2 +, bridge-utils +, btrfs-progs +, conntrack-tools +, buildGoModule +, runc +, rsync +, kmod +, libseccomp +, pkg-config +, ethtool +, util-linux +, fetchFromGitHub +, fetchurl +, fetchzip +, fetchgit +, zstd +, yq-go +, nixosTests +, k3s +, pkgsBuildBuild +}: + +with lib; + +# k3s is a kinda weird derivation. One of the main points of k3s is the +# simplicity of it being one binary that can perform several tasks. +# However, when you have a good package manager (like nix), that doesn't +# actually make much of a difference; you don't really care if it's one binary +# or 10 since with a good package manager, installing and running it is +# identical. +# Since upstream k3s packages itself as one large binary with several +# "personalities" (in the form of subcommands like 'k3s agent' and 'k3s +# kubectl'), it ends up being easiest to mostly mimic upstream packaging, with +# some exceptions. +# K3s also carries patches to some packages (such as containerd and cni +# plugins), so we intentionally use the k3s versions of those binaries for k3s, +# even if the upstream version of those binaries exist in nixpkgs already. In +# the end, that means we have a thick k3s binary that behaves like the upstream +# one for the most part. +# However, k3s also bundles several pieces of unpatched software, from the +# strongswan vpn software, to iptables, to socat, conntrack, busybox, etc. +# Those pieces of software we entirely ignore upstream's handling of, and just +# make sure they're in the path if desired. +let + k3sVersion = "1.23.6+k3s1"; # k3s git tag + k3sCommit = "418c3fa858b69b12b9cefbcff0526f666a6236b9"; # k3s git commit at the above version + k3sRepoSha256 = "0fmw491dn5mpi058mr7sij51i5m4qg2grx30cnl3h2v4s0sdkx2i"; + k3sVendorSha256 = "sha256-iHg5ySMaiSWXs98YGmxPwdZr4zdBIFma12dNEuf30Hs="; + + # taken from ./manifests/traefik.yaml, extracted from '.spec.chart' https://github.com/k3s-io/k3s/blob/v1.23.3%2Bk3s1/scripts/download#L9 + # The 'patch' and 'minor' versions are currently hardcoded as single digits only, so ignore the trailing two digits. Weird, I know. + traefikChartVersion = "10.19.3"; + traefikChartSha256 = "04zg5li957svgscdmkzmzjkwljaljyav68rzxmhakkwgav6q9058"; + + # taken from ./scripts/version.sh VERSION_ROOT https://github.com/k3s-io/k3s/blob/v1.23.3%2Bk3s1/scripts/version.sh#L47 + k3sRootVersion = "0.11.0"; + k3sRootSha256 = "016n56vi09xkvjph7wgzb2m86mhd5x65fs4d11pmh20hl249r620"; + + # taken from ./scripts/version.sh VERSION_CNIPLUGINS https://github.com/k3s-io/k3s/blob/v1.23.3%2Bk3s1/scripts/version.sh#L45 + k3sCNIVersion = "1.0.1-k3s1"; + k3sCNISha256 = "11ihlzzdnqf9p21y0a4ckpbxac016nm7746dcykhj26ym9zxyv92"; + + # taken from go.mod, the 'github.com/containerd/containerd' line + # run `grep github.com/containerd/containerd go.mod | head -n1 | awk '{print $4}'` + containerdVersion = "1.5.11-k3s2"; + containerdSha256 = "16132snvrg8r0vwm6c0lz0q6fx686s2ix53nm3aka9a83xs75vf2"; + + # run `grep github.com/kubernetes-sigs/cri-tools go.mod | head -n1 | awk '{print $4}'` in the k3s repo at the tag + criCtlVersion = "1.22.0-k3s1"; + + baseMeta = k3s.meta; + + # https://github.com/k3s-io/k3s/blob/5fb370e53e0014dc96183b8ecb2c25a61e891e76/scripts/build#L19-L40 + versionldflags = [ + "-X github.com/rancher/k3s/pkg/version.Version=v${k3sVersion}" + "-X github.com/rancher/k3s/pkg/version.GitCommit=${lib.substring 0 8 k3sCommit}" + "-X k8s.io/client-go/pkg/version.gitVersion=v${k3sVersion}" + "-X k8s.io/client-go/pkg/version.gitCommit=${k3sCommit}" + "-X k8s.io/client-go/pkg/version.gitTreeState=clean" + "-X k8s.io/client-go/pkg/version.buildDate=1970-01-01T01:01:01Z" + "-X k8s.io/component-base/version.gitVersion=v${k3sVersion}" + "-X k8s.io/component-base/version.gitCommit=${k3sCommit}" + "-X k8s.io/component-base/version.gitTreeState=clean" + "-X k8s.io/component-base/version.buildDate=1970-01-01T01:01:01Z" + "-X github.com/kubernetes-sigs/cri-tools/pkg/version.Version=v${criCtlVersion}" + "-X github.com/containerd/containerd/version.Version=v${containerdVersion}" + "-X github.com/containerd/containerd/version.Package=github.com/k3s-io/containerd" + ]; + + # bundled into the k3s binary + traefikChart = fetchurl { + url = "https://helm.traefik.io/traefik/traefik-${traefikChartVersion}.tgz"; + sha256 = traefikChartSha256; + }; + # so, k3s is a complicated thing to package + # This derivation attempts to avoid including any random binaries from the + # internet. k3s-root is _mostly_ binaries built to be bundled in k3s (which + # we don't care about doing, we can add those as build or runtime + # dependencies using a real package manager). + # In addition to those binaries, it's also configuration though (right now + # mostly strongswan configuration), and k3s does use those files. + # As such, we download it in order to grab 'etc' and bundle it into the final + # k3s binary. + k3sRoot = fetchzip { + # Note: marked as apache 2.0 license + url = "https://github.com/k3s-io/k3s-root/releases/download/v${k3sRootVersion}/k3s-root-amd64.tar"; + sha256 = k3sRootSha256; + stripRoot = false; + }; + k3sCNIPlugins = buildGoModule rec { + pname = "k3s-cni-plugins"; + version = k3sCNIVersion; + vendorSha256 = null; + + subPackages = [ "." ]; + + src = fetchFromGitHub { + owner = "rancher"; + repo = "plugins"; + rev = "v${version}"; + sha256 = k3sCNISha256; + }; + + postInstall = '' + mv $out/bin/plugins $out/bin/cni + ''; + + meta = baseMeta // { + description = "CNI plugins, as patched by rancher for k3s"; + }; + }; + # Grab this separately from a build because it's used by both stages of the + # k3s build. + k3sRepo = fetchgit { + url = "https://github.com/k3s-io/k3s"; + rev = "v${k3sVersion}"; + sha256 = k3sRepoSha256; + }; + # Stage 1 of the k3s build: + # Let's talk about how k3s is structured. + # One of the ideas of k3s is that there's the single "k3s" binary which can + # do everything you need, from running a k3s server, to being a worker node, + # to running kubectl. + # The way that actually works is that k3s is a single go binary that contains + # a bunch of bindata that it unpacks at runtime into directories (either the + # user's home directory or /var/lib/rancher if run as root). + # This bindata includes both binaries and configuration. + # In order to let nixpkgs do all its autostripping/patching/etc, we split this into two derivations. + # First, we build all the binaries that get packed into the thick k3s binary + # (and output them from one derivation so they'll all be suitably patched up). + # Then, we bundle those binaries into our thick k3s binary and use that as + # the final single output. + # This approach was chosen because it ensures the bundled binaries all are + # correctly built to run with nix (we can lean on the existing buildGoModule + # stuff), and we can again lean on that tooling for the final k3s binary too. + # Other alternatives would be to manually run the + # strip/patchelf/remove-references step ourselves in the installPhase of the + # derivation when we've built all the binaries, but haven't bundled them in + # with generated bindata yet. + + k3sServer = buildGoModule rec { + pname = "k3s-server"; + version = k3sVersion; + + src = k3sRepo; + vendorSha256 = k3sVendorSha256; + + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libseccomp ]; + + subPackages = [ "cmd/server" ]; + ldflags = versionldflags; + + # create the multicall symlinks for k3s + postInstall = '' + mv $out/bin/server $out/bin/k3s + pushd $out + # taken verbatim from https://github.com/k3s-io/k3s/blob/v1.23.3%2Bk3s1/scripts/build#L105-L113 + ln -s k3s ./bin/k3s-agent + ln -s k3s ./bin/k3s-server + ln -s k3s ./bin/k3s-etcd-snapshot + ln -s k3s ./bin/k3s-secrets-encrypt + ln -s k3s ./bin/k3s-certificate + ln -s k3s ./bin/kubectl + ln -s k3s ./bin/crictl + ln -s k3s ./bin/ctr + popd + ''; + + meta = baseMeta // { + description = "The various binaries that get packaged into the final k3s binary"; + }; + }; + k3sContainerd = buildGoModule { + pname = "k3s-containerd"; + version = containerdVersion; + src = fetchFromGitHub { + owner = "k3s-io"; + repo = "containerd"; + rev = "v${containerdVersion}"; + sha256 = containerdSha256; + }; + vendorSha256 = null; + buildInputs = [ btrfs-progs ]; + subPackages = [ "cmd/containerd" "cmd/containerd-shim-runc-v2" ]; + ldflags = versionldflags; + }; +in +buildGoModule rec { + pname = "k3s"; + version = k3sVersion; + + src = k3sRepo; + vendorSha256 = k3sVendorSha256; + + patches = [ + ./0001-script-download-strip-downloading-just-package-CRD.patch + ]; + + postPatch = '' + # Nix prefers dynamically linked binaries over static binary. + + substituteInPlace scripts/package-cli \ + --replace '"$LDFLAGS $STATIC" -o' \ + '"$LDFLAGS" -o' \ + --replace "STATIC=\"-extldflags \'-static\'\"" \ + "" + + # Upstream codegen fails with trimpath set. Removes "trimpath" for 'go generate': + + substituteInPlace scripts/package-cli \ + --replace '"''${GO}" generate' \ + 'GOFLAGS="" \ + GOOS="${pkgsBuildBuild.go.GOOS}" \ + GOARCH="${pkgsBuildBuild.go.GOARCH}" \ + CC="${pkgsBuildBuild.stdenv.cc}/bin/cc" \ + "''${GO}" generate' + ''; + + # Important utilities used by the kubelet, see + # https://github.com/kubernetes/kubernetes/issues/26093#issuecomment-237202494 + # Note the list in that issue is stale and some aren't relevant for k3s. + k3sRuntimeDeps = [ + kmod + socat + iptables + iproute2 + bridge-utils + ethtool + util-linux # kubelet wants 'nsenter' from util-linux: https://github.com/kubernetes/kubernetes/issues/26093#issuecomment-705994388 + conntrack-tools + ]; + + buildInputs = k3sRuntimeDeps; + + nativeBuildInputs = [ + makeWrapper + rsync + yq-go + zstd + ]; + + # embedded in the final k3s cli + propagatedBuildInputs = [ + k3sCNIPlugins + k3sContainerd + k3sServer + runc + ]; + + # We override most of buildPhase due to peculiarities in k3s's build. + # Specifically, it has a 'go generate' which runs part of the package. See + # this comment: + # https://github.com/NixOS/nixpkgs/pull/158089#discussion_r799965694 + # So, why do we use buildGoModule at all? For the `vendorSha256` / `go mod download` stuff primarily. + buildPhase = '' + patchShebangs ./scripts/package-cli ./scripts/download ./scripts/build-upload + + # copy needed 'go generate' inputs into place + mkdir -p ./bin/aux + rsync -a --no-perms ${k3sServer}/bin/ ./bin/ + ln -vsf ${runc}/bin/runc ./bin/runc + ln -vsf ${k3sCNIPlugins}/bin/cni ./bin/cni + ln -vsf ${k3sContainerd}/bin/* ./bin/ + rsync -a --no-perms --chmod u=rwX ${k3sRoot}/etc/ ./etc/ + mkdir -p ./build/static/charts + # Note, upstream's chart has a 00 suffix. This seems to not matter though, so we're ignoring that naming detail. + export TRAEFIK_CHART_FILE=${traefikChart} + # place the traefik chart using their code since it's complicated + # We trim the actual download, see patches + ./scripts/download + + export ARCH=$GOARCH + export DRONE_TAG="v${k3sVersion}" + export DRONE_COMMIT="${k3sCommit}" + # use ./scripts/package-cli to run 'go generate' + 'go build' + + ./scripts/package-cli + mkdir -p $out/bin + ''; + + # Otherwise it depends on 'getGoDirs', which is normally set in buildPhase + doCheck = false; + + installPhase = '' + # wildcard to match the arm64 build too + install -m 0755 dist/artifacts/k3s* -D $out/bin/k3s + wrapProgram $out/bin/k3s \ + --prefix PATH : ${lib.makeBinPath k3sRuntimeDeps} \ + --prefix PATH : "$out/bin" + ''; + + doInstallCheck = true; + installCheckPhase = '' + $out/bin/k3s --version | grep -F "v${k3sVersion}" >/dev/null + ''; + + # Fix-Me: Needs to be adapted specifically for 1.23 + # passthru.updateScript = ./update.sh; + + # Fix-Me: Needs to be adapted specifically for 1.23 + # passthru.tests = { inherit (nixosTests) k3s-single-node k3s-single-node-docker; }; + + meta = baseMeta; +} diff --git a/pkgs/applications/networking/cluster/k3s/1_24/0001-script-download-strip-downloading-just-package-CRD.patch b/pkgs/applications/networking/cluster/k3s/1_24/0001-script-download-strip-downloading-just-package-CRD.patch new file mode 100644 index 000000000000..115fd6824772 --- /dev/null +++ b/pkgs/applications/networking/cluster/k3s/1_24/0001-script-download-strip-downloading-just-package-CRD.patch @@ -0,0 +1,41 @@ +From 6f53bd36a40da4c71486e3b79f6e32d53d6eea5d Mon Sep 17 00:00:00 2001 +From: Euan Kemp +Date: Thu, 3 Feb 2022 23:50:40 -0800 +Subject: [PATCH 2/2] scrips/download: strip downloading, just package CRD + +The CRD packaging is a complicated set of commands, so let's reuse it. +--- + scripts/download | 10 ++-------- + 1 file changed, 2 insertions(+), 8 deletions(-) + +diff --git a/scripts/download b/scripts/download +index 5effc0562a..82361803ee 100755 +--- a/scripts/download ++++ b/scripts/download +@@ -24,12 +24,6 @@ rm -rf ${CONTAINERD_DIR} + mkdir -p ${CHARTS_DIR} + mkdir -p ${DATA_DIR} + +-curl --compressed -sfL https://github.com/k3s-io/k3s-root/releases/download/${VERSION_ROOT}/k3s-root-${ARCH}.tar | tar xf - --exclude=bin/socat +- +-git clone --single-branch --branch=${VERSION_RUNC} --depth=1 https://github.com/opencontainers/runc ${RUNC_DIR} +- +-git clone --single-branch --branch=${VERSION_CONTAINERD} --depth=1 https://github.com/k3s-io/containerd ${CONTAINERD_DIR} +- + setup_tmp() { + TMP_DIR=$(mktemp -d --tmpdir=${CHARTS_DIR}) + cleanup() { +@@ -44,8 +38,8 @@ setup_tmp() { + + download_and_package_traefik () { + echo "Downloading Traefik Helm chart from ${TRAEFIK_URL}" +- curl -sfL ${TRAEFIK_URL} -o ${TMP_DIR}/${TRAEFIK_FILE} +- code=$? ++ # nixpkgs: copy in our known traefik chart instead ++ cp $TRAEFIK_CHART_FILE ${TMP_DIR}/${TRAEFIK_FILE} + + if [ $code -ne 0 ]; then + echo "Error: Failed to download Traefik Helm chart!" +-- +2.34.1 + diff --git a/pkgs/applications/networking/cluster/k3s/1_24/default.nix b/pkgs/applications/networking/cluster/k3s/1_24/default.nix new file mode 100644 index 000000000000..18e0258432ee --- /dev/null +++ b/pkgs/applications/networking/cluster/k3s/1_24/default.nix @@ -0,0 +1,329 @@ +{ stdenv +, lib +, makeWrapper +, socat +, iptables +, iproute2 +, bridge-utils +, btrfs-progs +, conntrack-tools +, buildGoModule +, runc +, rsync +, kmod +, libseccomp +, pkg-config +, ethtool +, util-linux +, fetchFromGitHub +, fetchurl +, fetchzip +, fetchgit +, zstd +, yq-go +, nixosTests +, k3s +, pkgsBuildBuild +}: + +# k3s is a kinda weird derivation. One of the main points of k3s is the +# simplicity of it being one binary that can perform several tasks. +# However, when you have a good package manager (like nix), that doesn't +# actually make much of a difference; you don't really care if it's one binary +# or 10 since with a good package manager, installing and running it is +# identical. +# Since upstream k3s packages itself as one large binary with several +# "personalities" (in the form of subcommands like 'k3s agent' and 'k3s +# kubectl'), it ends up being easiest to mostly mimic upstream packaging, with +# some exceptions. +# K3s also carries patches to some packages (such as containerd and cni +# plugins), so we intentionally use the k3s versions of those binaries for k3s, +# even if the upstream version of those binaries exist in nixpkgs already. In +# the end, that means we have a thick k3s binary that behaves like the upstream +# one for the most part. +# However, k3s also bundles several pieces of unpatched software, from the +# strongswan vpn software, to iptables, to socat, conntrack, busybox, etc. +# Those pieces of software we entirely ignore upstream's handling of, and just +# make sure they're in the path if desired. +let + k3sVersion = "1.24.4+k3s1"; # k3s git tag + k3sCommit = "c3f830e9b9ed8a4d9d0e2aa663b4591b923a296e"; # k3s git commit at the above version + k3sRepoSha256 = "00ns6n7jxnacah8ahndhgdb160prgsqhswbb5809kkgvig7k8b27"; + k3sVendorSha256 = "sha256-ReZvJCgxqffG2H39JlynGPUBSV5ngPkRtAoZ++OQZZI="; + + # taken from ./manifests/traefik.yaml, extracted from '.spec.chart' https://github.com/k3s-io/k3s/blob/v1.23.3%2Bk3s1/scripts/download#L9 + # The 'patch' and 'minor' versions are currently hardcoded as single digits only, so ignore the trailing two digits. Weird, I know. + traefikChartVersion = "10.19.3"; + traefikChartSha256 = "04zg5li957svgscdmkzmzjkwljaljyav68rzxmhakkwgav6q9058"; + + # taken from ./scripts/version.sh VERSION_ROOT https://github.com/k3s-io/k3s/blob/v1.23.3%2Bk3s1/scripts/version.sh#L47 + k3sRootVersion = "0.11.0"; + k3sRootSha256 = "016n56vi09xkvjph7wgzb2m86mhd5x65fs4d11pmh20hl249r620"; + + # taken from ./scripts/version.sh VERSION_CNIPLUGINS https://github.com/k3s-io/k3s/blob/v1.23.3%2Bk3s1/scripts/version.sh#L45 + k3sCNIVersion = "1.1.1-k3s1"; + k3sCNISha256 = "14mb3zsqibj1sn338gjmsyksbm0mxv9p016dij7zidccx2rzn6nl"; + + # taken from go.mod, the 'github.com/containerd/containerd' line + # run `grep github.com/containerd/containerd go.mod | head -n1 | awk '{print $4}'` + containerdVersion = "1.5.13-k3s1"; + containerdSha256 = "09bj4ghwbsj9whkv1d5icqs52k64m449j8b73dmak2wz62fbzbvp"; + + # run `grep github.com/kubernetes-sigs/cri-tools go.mod | head -n1 | awk '{print $4}'` in the k3s repo at the tag + criCtlVersion = "1.24.0-k3s1"; + + baseMeta = k3s.meta; + + # https://github.com/k3s-io/k3s/blob/5fb370e53e0014dc96183b8ecb2c25a61e891e76/scripts/build#L19-L40 + versionldflags = [ + "-X github.com/rancher/k3s/pkg/version.Version=v${k3sVersion}" + "-X github.com/rancher/k3s/pkg/version.GitCommit=${lib.substring 0 8 k3sCommit}" + "-X k8s.io/client-go/pkg/version.gitVersion=v${k3sVersion}" + "-X k8s.io/client-go/pkg/version.gitCommit=${k3sCommit}" + "-X k8s.io/client-go/pkg/version.gitTreeState=clean" + "-X k8s.io/client-go/pkg/version.buildDate=1970-01-01T01:01:01Z" + "-X k8s.io/component-base/version.gitVersion=v${k3sVersion}" + "-X k8s.io/component-base/version.gitCommit=${k3sCommit}" + "-X k8s.io/component-base/version.gitTreeState=clean" + "-X k8s.io/component-base/version.buildDate=1970-01-01T01:01:01Z" + "-X github.com/kubernetes-sigs/cri-tools/pkg/version.Version=v${criCtlVersion}" + "-X github.com/containerd/containerd/version.Version=v${containerdVersion}" + "-X github.com/containerd/containerd/version.Package=github.com/k3s-io/containerd" + ]; + + # bundled into the k3s binary + traefikChart = fetchurl { + url = "https://helm.traefik.io/traefik/traefik-${traefikChartVersion}.tgz"; + sha256 = traefikChartSha256; + }; + # so, k3s is a complicated thing to package + # This derivation attempts to avoid including any random binaries from the + # internet. k3s-root is _mostly_ binaries built to be bundled in k3s (which + # we don't care about doing, we can add those as build or runtime + # dependencies using a real package manager). + # In addition to those binaries, it's also configuration though (right now + # mostly strongswan configuration), and k3s does use those files. + # As such, we download it in order to grab 'etc' and bundle it into the final + # k3s binary. + k3sRoot = fetchzip { + # Note: marked as apache 2.0 license + url = "https://github.com/k3s-io/k3s-root/releases/download/v${k3sRootVersion}/k3s-root-amd64.tar"; + sha256 = k3sRootSha256; + stripRoot = false; + }; + k3sCNIPlugins = buildGoModule rec { + pname = "k3s-cni-plugins"; + version = k3sCNIVersion; + vendorSha256 = null; + + subPackages = [ "." ]; + + src = fetchFromGitHub { + owner = "rancher"; + repo = "plugins"; + rev = "v${version}"; + sha256 = k3sCNISha256; + }; + + postInstall = '' + mv $out/bin/plugins $out/bin/cni + ''; + + meta = baseMeta // { + description = "CNI plugins, as patched by rancher for k3s"; + }; + }; + # Grab this separately from a build because it's used by both stages of the + # k3s build. + k3sRepo = fetchgit { + url = "https://github.com/k3s-io/k3s"; + rev = "v${k3sVersion}"; + sha256 = k3sRepoSha256; + }; + # Stage 1 of the k3s build: + # Let's talk about how k3s is structured. + # One of the ideas of k3s is that there's the single "k3s" binary which can + # do everything you need, from running a k3s server, to being a worker node, + # to running kubectl. + # The way that actually works is that k3s is a single go binary that contains + # a bunch of bindata that it unpacks at runtime into directories (either the + # user's home directory or /var/lib/rancher if run as root). + # This bindata includes both binaries and configuration. + # In order to let nixpkgs do all its autostripping/patching/etc, we split this into two derivations. + # First, we build all the binaries that get packed into the thick k3s binary + # (and output them from one derivation so they'll all be suitably patched up). + # Then, we bundle those binaries into our thick k3s binary and use that as + # the final single output. + # This approach was chosen because it ensures the bundled binaries all are + # correctly built to run with nix (we can lean on the existing buildGoModule + # stuff), and we can again lean on that tooling for the final k3s binary too. + # Other alternatives would be to manually run the + # strip/patchelf/remove-references step ourselves in the installPhase of the + # derivation when we've built all the binaries, but haven't bundled them in + # with generated bindata yet. + + k3sServer = buildGoModule rec { + pname = "k3s-server"; + version = k3sVersion; + + src = k3sRepo; + vendorSha256 = k3sVendorSha256; + + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libseccomp ]; + + subPackages = [ "cmd/server" ]; + ldflags = versionldflags; + + # create the multicall symlinks for k3s + postInstall = '' + mv $out/bin/server $out/bin/k3s + pushd $out + # taken verbatim from https://github.com/k3s-io/k3s/blob/v1.23.3%2Bk3s1/scripts/build#L105-L113 + ln -s k3s ./bin/k3s-agent + ln -s k3s ./bin/k3s-server + ln -s k3s ./bin/k3s-etcd-snapshot + ln -s k3s ./bin/k3s-secrets-encrypt + ln -s k3s ./bin/k3s-certificate + ln -s k3s ./bin/kubectl + ln -s k3s ./bin/crictl + ln -s k3s ./bin/ctr + popd + ''; + + meta = baseMeta // { + description = "The various binaries that get packaged into the final k3s binary"; + }; + }; + k3sContainerd = buildGoModule { + pname = "k3s-containerd"; + version = containerdVersion; + src = fetchFromGitHub { + owner = "k3s-io"; + repo = "containerd"; + rev = "v${containerdVersion}"; + sha256 = containerdSha256; + }; + vendorSha256 = null; + buildInputs = [ btrfs-progs ]; + subPackages = [ "cmd/containerd" "cmd/containerd-shim-runc-v2" ]; + ldflags = versionldflags; + }; +in +buildGoModule rec { + pname = "k3s"; + version = k3sVersion; + + src = k3sRepo; + vendorSha256 = k3sVendorSha256; + + patches = [ + ./0001-script-download-strip-downloading-just-package-CRD.patch + ]; + + postPatch = '' + # Nix prefers dynamically linked binaries over static binary. + + substituteInPlace scripts/package-cli \ + --replace '"$LDFLAGS $STATIC" -o' \ + '"$LDFLAGS" -o' \ + --replace "STATIC=\"-extldflags \'-static\'\"" \ + "" + + # Upstream codegen fails with trimpath set. Removes "trimpath" for 'go generate': + + substituteInPlace scripts/package-cli \ + --replace '"''${GO}" generate' \ + 'GOFLAGS="" \ + GOOS="${pkgsBuildBuild.go.GOOS}" \ + GOARCH="${pkgsBuildBuild.go.GOARCH}" \ + CC="${pkgsBuildBuild.stdenv.cc}/bin/cc" \ + "''${GO}" generate' + ''; + + # Important utilities used by the kubelet, see + # https://github.com/kubernetes/kubernetes/issues/26093#issuecomment-237202494 + # Note the list in that issue is stale and some aren't relevant for k3s. + k3sRuntimeDeps = [ + kmod + socat + iptables + iproute2 + bridge-utils + ethtool + util-linux # kubelet wants 'nsenter' from util-linux: https://github.com/kubernetes/kubernetes/issues/26093#issuecomment-705994388 + conntrack-tools + ]; + + buildInputs = k3sRuntimeDeps; + + nativeBuildInputs = [ + makeWrapper + rsync + yq-go + zstd + ]; + + # embedded in the final k3s cli + propagatedBuildInputs = [ + k3sCNIPlugins + k3sContainerd + k3sServer + runc + ]; + + # We override most of buildPhase due to peculiarities in k3s's build. + # Specifically, it has a 'go generate' which runs part of the package. See + # this comment: + # https://github.com/NixOS/nixpkgs/pull/158089#discussion_r799965694 + # So, why do we use buildGoModule at all? For the `vendorSha256` / `go mod download` stuff primarily. + buildPhase = '' + patchShebangs ./scripts/package-cli ./scripts/download ./scripts/build-upload + + # copy needed 'go generate' inputs into place + mkdir -p ./bin/aux + rsync -a --no-perms ${k3sServer}/bin/ ./bin/ + ln -vsf ${runc}/bin/runc ./bin/runc + ln -vsf ${k3sCNIPlugins}/bin/cni ./bin/cni + ln -vsf ${k3sContainerd}/bin/* ./bin/ + rsync -a --no-perms --chmod u=rwX ${k3sRoot}/etc/ ./etc/ + mkdir -p ./build/static/charts + # Note, upstream's chart has a 00 suffix. This seems to not matter though, so we're ignoring that naming detail. + export TRAEFIK_CHART_FILE=${traefikChart} + # place the traefik chart using their code since it's complicated + # We trim the actual download, see patches + ./scripts/download + + export ARCH=$GOARCH + export DRONE_TAG="v${k3sVersion}" + export DRONE_COMMIT="${k3sCommit}" + # use ./scripts/package-cli to run 'go generate' + 'go build' + + ./scripts/package-cli + mkdir -p $out/bin + ''; + + # Otherwise it depends on 'getGoDirs', which is normally set in buildPhase + doCheck = false; + + installPhase = '' + # wildcard to match the arm64 build too + install -m 0755 dist/artifacts/k3s* -D $out/bin/k3s + wrapProgram $out/bin/k3s \ + --prefix PATH : ${lib.makeBinPath k3sRuntimeDeps} \ + --prefix PATH : "$out/bin" + ''; + + doInstallCheck = true; + installCheckPhase = '' + $out/bin/k3s --version | grep -F "v${k3sVersion}" >/dev/null + ''; + + # Fix-Me: Needs to be adapted specifically for 1.24 + # passthru.updateScript = ./update.sh; + + # Fix-Me: Needs to be adapted specifically for 1.24 + # passthru.tests = nixosTests.k3s; + + meta = baseMeta; +} diff --git a/pkgs/applications/networking/cluster/k3s/1_25/0001-script-download-strip-downloading-just-package-CRD.patch b/pkgs/applications/networking/cluster/k3s/1_25/0001-script-download-strip-downloading-just-package-CRD.patch new file mode 100644 index 000000000000..115fd6824772 --- /dev/null +++ b/pkgs/applications/networking/cluster/k3s/1_25/0001-script-download-strip-downloading-just-package-CRD.patch @@ -0,0 +1,41 @@ +From 6f53bd36a40da4c71486e3b79f6e32d53d6eea5d Mon Sep 17 00:00:00 2001 +From: Euan Kemp +Date: Thu, 3 Feb 2022 23:50:40 -0800 +Subject: [PATCH 2/2] scrips/download: strip downloading, just package CRD + +The CRD packaging is a complicated set of commands, so let's reuse it. +--- + scripts/download | 10 ++-------- + 1 file changed, 2 insertions(+), 8 deletions(-) + +diff --git a/scripts/download b/scripts/download +index 5effc0562a..82361803ee 100755 +--- a/scripts/download ++++ b/scripts/download +@@ -24,12 +24,6 @@ rm -rf ${CONTAINERD_DIR} + mkdir -p ${CHARTS_DIR} + mkdir -p ${DATA_DIR} + +-curl --compressed -sfL https://github.com/k3s-io/k3s-root/releases/download/${VERSION_ROOT}/k3s-root-${ARCH}.tar | tar xf - --exclude=bin/socat +- +-git clone --single-branch --branch=${VERSION_RUNC} --depth=1 https://github.com/opencontainers/runc ${RUNC_DIR} +- +-git clone --single-branch --branch=${VERSION_CONTAINERD} --depth=1 https://github.com/k3s-io/containerd ${CONTAINERD_DIR} +- + setup_tmp() { + TMP_DIR=$(mktemp -d --tmpdir=${CHARTS_DIR}) + cleanup() { +@@ -44,8 +38,8 @@ setup_tmp() { + + download_and_package_traefik () { + echo "Downloading Traefik Helm chart from ${TRAEFIK_URL}" +- curl -sfL ${TRAEFIK_URL} -o ${TMP_DIR}/${TRAEFIK_FILE} +- code=$? ++ # nixpkgs: copy in our known traefik chart instead ++ cp $TRAEFIK_CHART_FILE ${TMP_DIR}/${TRAEFIK_FILE} + + if [ $code -ne 0 ]; then + echo "Error: Failed to download Traefik Helm chart!" +-- +2.34.1 + diff --git a/pkgs/applications/networking/cluster/k3s/1_25/default.nix b/pkgs/applications/networking/cluster/k3s/1_25/default.nix new file mode 100644 index 000000000000..dc34821fb255 --- /dev/null +++ b/pkgs/applications/networking/cluster/k3s/1_25/default.nix @@ -0,0 +1,329 @@ +{ stdenv +, lib +, makeWrapper +, socat +, iptables +, iproute2 +, bridge-utils +, btrfs-progs +, conntrack-tools +, buildGoModule +, runc +, rsync +, kmod +, libseccomp +, pkg-config +, ethtool +, util-linux +, fetchFromGitHub +, fetchurl +, fetchzip +, fetchgit +, zstd +, yq-go +, nixosTests +, pkgsBuildBuild +, k3s +}: + +# k3s is a kinda weird derivation. One of the main points of k3s is the +# simplicity of it being one binary that can perform several tasks. +# However, when you have a good package manager (like nix), that doesn't +# actually make much of a difference; you don't really care if it's one binary +# or 10 since with a good package manager, installing and running it is +# identical. +# Since upstream k3s packages itself as one large binary with several +# "personalities" (in the form of subcommands like 'k3s agent' and 'k3s +# kubectl'), it ends up being easiest to mostly mimic upstream packaging, with +# some exceptions. +# K3s also carries patches to some packages (such as containerd and cni +# plugins), so we intentionally use the k3s versions of those binaries for k3s, +# even if the upstream version of those binaries exist in nixpkgs already. In +# the end, that means we have a thick k3s binary that behaves like the upstream +# one for the most part. +# However, k3s also bundles several pieces of unpatched software, from the +# strongswan vpn software, to iptables, to socat, conntrack, busybox, etc. +# Those pieces of software we entirely ignore upstream's handling of, and just +# make sure they're in the path if desired. +let + k3sVersion = "1.25.3+k3s1"; # k3s git tag + k3sCommit = "f2585c1671b31b4b34bddbb3bf4e7d69662b0821"; # k3s git commit at the above version + k3sRepoSha256 = "0zwf3iwjcidx14zw36s1hr0q8wmmbfc0rfqwd7fmpjq597h8zkms"; + k3sVendorSha256 = "sha256-U67tJRGqPFk5AfRe7I50zKGC9HJ2oh+iI/C7qF/76BQ="; + + # taken from ./manifests/traefik.yaml, extracted from '.spec.chart' https://github.com/k3s-io/k3s/blob/v1.23.3%2Bk3s1/scripts/download#L9 + # The 'patch' and 'minor' versions are currently hardcoded as single digits only, so ignore the trailing two digits. Weird, I know. + traefikChartVersion = "12.0.0"; + traefikChartSha256 = "1sqmi71fi3ad5dh5fmsp9mv80x6pkgqwi4r9fr8l6i9sdnai6f1a"; + + # taken from ./scripts/version.sh VERSION_ROOT https://github.com/k3s-io/k3s/blob/v1.23.3%2Bk3s1/scripts/version.sh#L47 + k3sRootVersion = "0.11.0"; + k3sRootSha256 = "016n56vi09xkvjph7wgzb2m86mhd5x65fs4d11pmh20hl249r620"; + + # taken from ./scripts/version.sh VERSION_CNIPLUGINS https://github.com/k3s-io/k3s/blob/v1.23.3%2Bk3s1/scripts/version.sh#L45 + k3sCNIVersion = "1.1.1-k3s1"; + k3sCNISha256 = "14mb3zsqibj1sn338gjmsyksbm0mxv9p016dij7zidccx2rzn6nl"; + + # taken from go.mod, the 'github.com/containerd/containerd' line + # run `grep github.com/containerd/containerd go.mod | head -n1 | awk '{print $4}'` + containerdVersion = "1.5.13-k3s2"; + containerdSha256 = "1pfr2ji4aij9js90gf4a3hqnhyw5hshcjdccm62l700j68gs5z97"; + + # run `grep github.com/kubernetes-sigs/cri-tools go.mod | head -n1 | awk '{print $4}'` in the k3s repo at the tag + criCtlVersion = "1.25.0-k3s1"; + + baseMeta = k3s.meta; + + # https://github.com/k3s-io/k3s/blob/5fb370e53e0014dc96183b8ecb2c25a61e891e76/scripts/build#L19-L40 + versionldflags = [ + "-X github.com/rancher/k3s/pkg/version.Version=v${k3sVersion}" + "-X github.com/rancher/k3s/pkg/version.GitCommit=${lib.substring 0 8 k3sCommit}" + "-X k8s.io/client-go/pkg/version.gitVersion=v${k3sVersion}" + "-X k8s.io/client-go/pkg/version.gitCommit=${k3sCommit}" + "-X k8s.io/client-go/pkg/version.gitTreeState=clean" + "-X k8s.io/client-go/pkg/version.buildDate=1970-01-01T01:01:01Z" + "-X k8s.io/component-base/version.gitVersion=v${k3sVersion}" + "-X k8s.io/component-base/version.gitCommit=${k3sCommit}" + "-X k8s.io/component-base/version.gitTreeState=clean" + "-X k8s.io/component-base/version.buildDate=1970-01-01T01:01:01Z" + "-X github.com/kubernetes-sigs/cri-tools/pkg/version.Version=v${criCtlVersion}" + "-X github.com/containerd/containerd/version.Version=v${containerdVersion}" + "-X github.com/containerd/containerd/version.Package=github.com/k3s-io/containerd" + ]; + + # bundled into the k3s binary + traefikChart = fetchurl { + url = "https://helm.traefik.io/traefik/traefik-${traefikChartVersion}.tgz"; + sha256 = traefikChartSha256; + }; + # so, k3s is a complicated thing to package + # This derivation attempts to avoid including any random binaries from the + # internet. k3s-root is _mostly_ binaries built to be bundled in k3s (which + # we don't care about doing, we can add those as build or runtime + # dependencies using a real package manager). + # In addition to those binaries, it's also configuration though (right now + # mostly strongswan configuration), and k3s does use those files. + # As such, we download it in order to grab 'etc' and bundle it into the final + # k3s binary. + k3sRoot = fetchzip { + # Note: marked as apache 2.0 license + url = "https://github.com/k3s-io/k3s-root/releases/download/v${k3sRootVersion}/k3s-root-amd64.tar"; + sha256 = k3sRootSha256; + stripRoot = false; + }; + k3sCNIPlugins = buildGoModule rec { + pname = "k3s-cni-plugins"; + version = k3sCNIVersion; + vendorSha256 = null; + + subPackages = [ "." ]; + + src = fetchFromGitHub { + owner = "rancher"; + repo = "plugins"; + rev = "v${version}"; + sha256 = k3sCNISha256; + }; + + postInstall = '' + mv $out/bin/plugins $out/bin/cni + ''; + + meta = baseMeta // { + description = "CNI plugins, as patched by rancher for k3s"; + }; + }; + # Grab this separately from a build because it's used by both stages of the + # k3s build. + k3sRepo = fetchgit { + url = "https://github.com/k3s-io/k3s"; + rev = "v${k3sVersion}"; + sha256 = k3sRepoSha256; + }; + # Stage 1 of the k3s build: + # Let's talk about how k3s is structured. + # One of the ideas of k3s is that there's the single "k3s" binary which can + # do everything you need, from running a k3s server, to being a worker node, + # to running kubectl. + # The way that actually works is that k3s is a single go binary that contains + # a bunch of bindata that it unpacks at runtime into directories (either the + # user's home directory or /var/lib/rancher if run as root). + # This bindata includes both binaries and configuration. + # In order to let nixpkgs do all its autostripping/patching/etc, we split this into two derivations. + # First, we build all the binaries that get packed into the thick k3s binary + # (and output them from one derivation so they'll all be suitably patched up). + # Then, we bundle those binaries into our thick k3s binary and use that as + # the final single output. + # This approach was chosen because it ensures the bundled binaries all are + # correctly built to run with nix (we can lean on the existing buildGoModule + # stuff), and we can again lean on that tooling for the final k3s binary too. + # Other alternatives would be to manually run the + # strip/patchelf/remove-references step ourselves in the installPhase of the + # derivation when we've built all the binaries, but haven't bundled them in + # with generated bindata yet. + + k3sServer = buildGoModule rec { + pname = "k3s-server"; + version = k3sVersion; + + src = k3sRepo; + vendorSha256 = k3sVendorSha256; + + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libseccomp ]; + + subPackages = [ "cmd/server" ]; + ldflags = versionldflags; + + # create the multicall symlinks for k3s + postInstall = '' + mv $out/bin/server $out/bin/k3s + pushd $out + # taken verbatim from https://github.com/k3s-io/k3s/blob/v1.23.3%2Bk3s1/scripts/build#L105-L113 + ln -s k3s ./bin/k3s-agent + ln -s k3s ./bin/k3s-server + ln -s k3s ./bin/k3s-etcd-snapshot + ln -s k3s ./bin/k3s-secrets-encrypt + ln -s k3s ./bin/k3s-certificate + ln -s k3s ./bin/kubectl + ln -s k3s ./bin/crictl + ln -s k3s ./bin/ctr + popd + ''; + + meta = baseMeta // { + description = "The various binaries that get packaged into the final k3s binary"; + }; + }; + k3sContainerd = buildGoModule { + pname = "k3s-containerd"; + version = containerdVersion; + src = fetchFromGitHub { + owner = "k3s-io"; + repo = "containerd"; + rev = "v${containerdVersion}"; + sha256 = containerdSha256; + }; + vendorSha256 = null; + buildInputs = [ btrfs-progs ]; + subPackages = [ "cmd/containerd" "cmd/containerd-shim-runc-v2" ]; + ldflags = versionldflags; + }; +in +buildGoModule rec { + pname = "k3s"; + version = k3sVersion; + + src = k3sRepo; + vendorSha256 = k3sVendorSha256; + + patches = [ + ./0001-script-download-strip-downloading-just-package-CRD.patch + ]; + + postPatch = '' + # Nix prefers dynamically linked binaries over static binary. + + substituteInPlace scripts/package-cli \ + --replace '"$LDFLAGS $STATIC" -o' \ + '"$LDFLAGS" -o' \ + --replace "STATIC=\"-extldflags \'-static\'\"" \ + "" + + # Upstream codegen fails with trimpath set. Removes "trimpath" for 'go generate': + + substituteInPlace scripts/package-cli \ + --replace '"''${GO}" generate' \ + 'GOFLAGS="" \ + GOOS="${pkgsBuildBuild.go.GOOS}" \ + GOARCH="${pkgsBuildBuild.go.GOARCH}" \ + CC="${pkgsBuildBuild.stdenv.cc}/bin/cc" \ + "''${GO}" generate' + ''; + + # Important utilities used by the kubelet, see + # https://github.com/kubernetes/kubernetes/issues/26093#issuecomment-237202494 + # Note the list in that issue is stale and some aren't relevant for k3s. + k3sRuntimeDeps = [ + kmod + socat + iptables + iproute2 + bridge-utils + ethtool + util-linux # kubelet wants 'nsenter' from util-linux: https://github.com/kubernetes/kubernetes/issues/26093#issuecomment-705994388 + conntrack-tools + ]; + + buildInputs = k3sRuntimeDeps; + + nativeBuildInputs = [ + makeWrapper + rsync + yq-go + zstd + ]; + + # embedded in the final k3s cli + propagatedBuildInputs = [ + k3sCNIPlugins + k3sContainerd + k3sServer + runc + ]; + + # We override most of buildPhase due to peculiarities in k3s's build. + # Specifically, it has a 'go generate' which runs part of the package. See + # this comment: + # https://github.com/NixOS/nixpkgs/pull/158089#discussion_r799965694 + # So, why do we use buildGoModule at all? For the `vendorSha256` / `go mod download` stuff primarily. + buildPhase = '' + patchShebangs ./scripts/package-cli ./scripts/download ./scripts/build-upload + + # copy needed 'go generate' inputs into place + mkdir -p ./bin/aux + rsync -a --no-perms ${k3sServer}/bin/ ./bin/ + ln -vsf ${runc}/bin/runc ./bin/runc + ln -vsf ${k3sCNIPlugins}/bin/cni ./bin/cni + ln -vsf ${k3sContainerd}/bin/* ./bin/ + rsync -a --no-perms --chmod u=rwX ${k3sRoot}/etc/ ./etc/ + mkdir -p ./build/static/charts + # Note, upstream's chart has a 00 suffix. This seems to not matter though, so we're ignoring that naming detail. + export TRAEFIK_CHART_FILE=${traefikChart} + # place the traefik chart using their code since it's complicated + # We trim the actual download, see patches + ./scripts/download + + export ARCH=$GOARCH + export DRONE_TAG="v${k3sVersion}" + export DRONE_COMMIT="${k3sCommit}" + # use ./scripts/package-cli to run 'go generate' + 'go build' + + ./scripts/package-cli + mkdir -p $out/bin + ''; + + # Otherwise it depends on 'getGoDirs', which is normally set in buildPhase + doCheck = false; + + installPhase = '' + # wildcard to match the arm64 build too + install -m 0755 dist/artifacts/k3s* -D $out/bin/k3s + wrapProgram $out/bin/k3s \ + --prefix PATH : ${lib.makeBinPath k3sRuntimeDeps} \ + --prefix PATH : "$out/bin" + ''; + + doInstallCheck = true; + installCheckPhase = '' + $out/bin/k3s --version | grep -F "v${k3sVersion}" >/dev/null + ''; + + # Fix-Me: Needs to be adapted specifically for 1.25 + # passthru.updateScript = ./update.sh; + + # Fix-Me: Needs to be adapted specifically for 1.25 + # passthru.tests = nixosTests.k3s; + + meta = baseMeta; +} diff --git a/pkgs/applications/networking/cluster/k3s/chart-versions.nix b/pkgs/applications/networking/cluster/k3s/1_26/chart-versions.nix similarity index 100% rename from pkgs/applications/networking/cluster/k3s/chart-versions.nix rename to pkgs/applications/networking/cluster/k3s/1_26/chart-versions.nix diff --git a/pkgs/applications/networking/cluster/k3s/default.nix b/pkgs/applications/networking/cluster/k3s/1_26/default.nix similarity index 100% rename from pkgs/applications/networking/cluster/k3s/default.nix rename to pkgs/applications/networking/cluster/k3s/1_26/default.nix diff --git a/pkgs/applications/networking/cluster/k3s/update.sh b/pkgs/applications/networking/cluster/k3s/1_26/update.sh similarity index 100% rename from pkgs/applications/networking/cluster/k3s/update.sh rename to pkgs/applications/networking/cluster/k3s/1_26/update.sh diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 8ad2ba05d011..fc3d0343e6fb 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -30579,7 +30579,11 @@ with pkgs; jwm-settings-manager = callPackage ../applications/window-managers/jwm/jwm-settings-manager.nix { }; - k3s = callPackage ../applications/networking/cluster/k3s { }; + k3s_1_23 = callPackage ../applications/networking/cluster/k3s/1_23 { }; + k3s_1_24 = callPackage ../applications/networking/cluster/k3s/1_24 { }; + k3s_1_25 = callPackage ../applications/networking/cluster/k3s/1_25 { }; + k3s_1_26 = callPackage ../applications/networking/cluster/k3s/1_26 { }; + k3s = k3s_1_26; k3sup = callPackage ../applications/networking/cluster/k3sup {}; From e613d0cd72776fa67b31ab4c76201929bfd90e60 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Mon, 5 Sep 2022 16:19:08 +0200 Subject: [PATCH 042/198] nghttp3: add curlHTTP3 to passthru.tests --- pkgs/development/libraries/nghttp3/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/libraries/nghttp3/default.nix b/pkgs/development/libraries/nghttp3/default.nix index af83fb29c01e..2810114cb6ba 100644 --- a/pkgs/development/libraries/nghttp3/default.nix +++ b/pkgs/development/libraries/nghttp3/default.nix @@ -1,6 +1,7 @@ { lib, stdenv, fetchFromGitHub , autoreconfHook, pkg-config, file , cunit, ncurses +, curlHTTP3 }: stdenv.mkDerivation rec { @@ -26,6 +27,10 @@ stdenv.mkDerivation rec { doCheck = true; enableParallelBuilding = true; + passthru.tests = { + inherit curlHTTP3; + }; + meta = with lib; { homepage = "https://github.com/ngtcp2/nghttp3"; description = "nghttp3 is an implementation of HTTP/3 mapping over QUIC and QPACK in C."; From cb86d7d6626ceba84c2a7e1d17562342c92b524f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Mon, 5 Sep 2022 16:19:17 +0200 Subject: [PATCH 043/198] ngtcp2: add curlHTTP3 to passthru.tests --- pkgs/development/libraries/ngtcp2/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/libraries/ngtcp2/default.nix b/pkgs/development/libraries/ngtcp2/default.nix index d6cacc0aa7f7..c4b7dad90910 100644 --- a/pkgs/development/libraries/ngtcp2/default.nix +++ b/pkgs/development/libraries/ngtcp2/default.nix @@ -3,6 +3,7 @@ , libev, nghttp3, quictls , cunit, ncurses , withJemalloc ? false, jemalloc +, curlHTTP3 }: stdenv.mkDerivation rec { @@ -29,6 +30,10 @@ stdenv.mkDerivation rec { doCheck = true; enableParallelBuilding = true; + passthru.tests = { + inherit curlHTTP3; + }; + meta = with lib; { homepage = "https://github.com/ngtcp2/ngtcp2"; description = "ngtcp2 project is an effort to implement QUIC protocol which is now being discussed in IETF QUICWG for its standardization."; From a2093d3ff99d91468781c864f38767153c499e8a Mon Sep 17 00:00:00 2001 From: OPNA2608 Date: Sun, 5 Feb 2023 11:26:46 +0100 Subject: [PATCH 044/198] haguichi: Add passthru.updateScript The upstream repo has regular releases and elementaryOS-specific releases. We only want the regular releases, so filter out the elementaryOS ones in a custom updateScript. --- pkgs/tools/networking/haguichi/default.nix | 4 +++- pkgs/tools/networking/haguichi/update.sh | 13 +++++++++++++ 2 files changed, 16 insertions(+), 1 deletion(-) create mode 100755 pkgs/tools/networking/haguichi/update.sh diff --git a/pkgs/tools/networking/haguichi/default.nix b/pkgs/tools/networking/haguichi/default.nix index 34ba1da28e4a..deb51191306d 100644 --- a/pkgs/tools/networking/haguichi/default.nix +++ b/pkgs/tools/networking/haguichi/default.nix @@ -20,7 +20,7 @@ stdenv.mkDerivation rec { owner = "ztefn"; repo = "haguichi"; rev = version; - sha256 = "1kgjl9g9lyg00cfx4x28s4xyqsqk5057xv6k2cj6ckg9lkxaixvc"; + hash = "sha256-bPeo+qTpTWYkE9PsfgooE2vsO9FIdNIdA+B5ml6i8s0="; }; nativeBuildInputs = [ @@ -44,6 +44,8 @@ stdenv.mkDerivation rec { patchShebangs meson_post_install.py ''; + passthru.updateScript = ./update.sh; + meta = with lib; { description = "Graphical frontend for Hamachi on Linux"; homepage = "https://haguichi.net/"; diff --git a/pkgs/tools/networking/haguichi/update.sh b/pkgs/tools/networking/haguichi/update.sh new file mode 100755 index 000000000000..49a76a79d7ae --- /dev/null +++ b/pkgs/tools/networking/haguichi/update.sh @@ -0,0 +1,13 @@ +#!/usr/bin/env nix-shell +#!nix-shell -i bash -p curl jq common-updater-scripts + +set -euo pipefail + +version="$( + curl -s https://api.github.com/repos/ztefn/haguichi/releases | + jq '.[] | select(.target_commitish!="elementary") | .tag_name' --raw-output | + sort --version-sort --reverse | + head -n1 +)" + +update-source-version haguichi "$version" From afb99ad5d444beab408e996a3eed005a50558d18 Mon Sep 17 00:00:00 2001 From: Thiago Kenji Okada Date: Tue, 7 Feb 2023 09:56:44 +0000 Subject: [PATCH 045/198] graalvm*-ce: wrap native-image to pass -H:CLibraryPath, misc improvements Fixes issue #214922 by not adding C libraries to the default library path of GraalVM. This should reduce the closure size of native compiled binaries in nixpkgs again, e.g.: Before: ``` $ ldd ./result/bin/bb linux-vdso.so.1 (0x00007fff2669b000) libstdc++.so.6 => /nix/store/qbgfsaviwqi2p6jr7an1g2754sv3xqhn-gcc-11.3.0-lib/lib/libstdc++.so.6 (0x00007f77fc0cf000) libm.so.6 => /nix/store/l7vp7c9z03dspbmss3gq5wdwx5c6ifcq-graalvm11-ce-22.3.0/lib/svm/clibraries/linux-amd64/libm.so.6 (0x00007f77fbfef000) libpthread.so.0 => /nix/store/l7vp7c9z03dspbmss3gq5wdwx5c6ifcq-graalvm11-ce-22.3.0/lib/svm/clibraries/linux-amd64/libpthread.so.0 (0x00007f77fbfea000) libdl.so.2 => /nix/store/l7vp7c9z03dspbmss3gq5wdwx5c6ifcq-graalvm11-ce-22.3.0/lib/svm/clibraries/linux-amd64/libdl.so.2 (0x00007f77fbfe5000) librt.so.1 => /nix/store/l7vp7c9z03dspbmss3gq5wdwx5c6ifcq-graalvm11-ce-22.3.0/lib/svm/clibraries/linux-amd64/librt.so.1 (0x00007f77fbfde000) libc.so.6 => /nix/store/l7vp7c9z03dspbmss3gq5wdwx5c6ifcq-graalvm11-ce-22.3.0/lib/svm/clibraries/linux-amd64/libc.so.6 (0x00007f77fbdd5000) /nix/store/c35hf8g5b9vksadym9dbjrd6p2y11m8h-glibc-2.35-224/lib/ld-linux-x86-64.so.2 => /nix/store/9xfad3b5z4y00mzmk2wnn4900q0qmxns-glibc-2.35-224/lib64/ld-linux-x86-64.so.2 (0x00007f77fc2e7000) libgcc_s.so.1 => /nix/store/qbgfsaviwqi2p6jr7an1g2754sv3xqhn-gcc-11.3.0-lib/lib/libgcc_s.so.1 (0x00007f77fbdbb000) ``` After: ``` $ ldd ./result/bin/bb linux-vdso.so.1 (0x00007fffdfd4e000) libstdc++.so.6 => /nix/store/qbgfsaviwqi2p6jr7an1g2754sv3xqhn-gcc-11.3.0-lib/lib/libstdc++.so.6 (0x00007fc3a5658000) libm.so.6 => /nix/store/c35hf8g5b9vksadym9dbjrd6p2y11m8h-glibc-2.35-224/lib/libm.so.6 (0x00007fc3a5578000) libpthread.so.0 => /nix/store/c35hf8g5b9vksadym9dbjrd6p2y11m8h-glibc-2.35-224/lib/libpthread.so.0 (0x00007fc3a5573000) libdl.so.2 => /nix/store/c35hf8g5b9vksadym9dbjrd6p2y11m8h-glibc-2.35-224/lib/libdl.so.2 (0x00007fc3a556e000) librt.so.1 => /nix/store/c35hf8g5b9vksadym9dbjrd6p2y11m8h-glibc-2.35-224/lib/librt.so.1 (0x00007fc3a5569000) libc.so.6 => /nix/store/c35hf8g5b9vksadym9dbjrd6p2y11m8h-glibc-2.35-224/lib/libc.so.6 (0x00007fc3a535e000) /nix/store/c35hf8g5b9vksadym9dbjrd6p2y11m8h-glibc-2.35-224/lib/ld-linux-x86-64.so.2 => /nix/store/9xfad3b5z4y00mzmk2wnn4900q0qmxns-glibc-2.35-224/lib64/ld-linux-x86-64.so.2 (0x00007fc3a5870000) libgcc_s.so.1 => /nix/store/qbgfsaviwqi2p6jr7an1g2754sv3xqhn-gcc-11.3.0-lib/lib/libgcc_s.so.1 (0x00007fc3a5344000) ``` Also improves the installCheckPhase to include more tests and improve the old onest . --- .../build-graalvm-native-image/default.nix | 3 +- .../graalvm/community-edition/mkGraal.nix | 63 +++++++++++-------- 2 files changed, 39 insertions(+), 27 deletions(-) diff --git a/pkgs/build-support/build-graalvm-native-image/default.nix b/pkgs/build-support/build-graalvm-native-image/default.nix index f223009cba5c..64c6568e1bc2 100644 --- a/pkgs/build-support/build-graalvm-native-image/default.nix +++ b/pkgs/build-support/build-graalvm-native-image/default.nix @@ -10,7 +10,6 @@ # except in special cases. In most cases, use extraNativeBuildArgs instead , nativeImageBuildArgs ? [ "-jar" jar - "-H:CLibraryPath=${lib.getLib graalvm}/lib" (lib.optionalString stdenv.isDarwin "-H:-CheckToolchain") "-H:Name=${executable}" "--verbose" @@ -50,6 +49,8 @@ stdenv.mkDerivation (args // { runHook postInstall ''; + disallowedReferences = [ graalvmDrv ]; + meta = { # default to graalvm's platforms platforms = graalvmDrv.meta.platforms; diff --git a/pkgs/development/compilers/graalvm/community-edition/mkGraal.nix b/pkgs/development/compilers/graalvm/community-edition/mkGraal.nix index bd2d4413ec52..b66058d35c91 100644 --- a/pkgs/development/compilers/graalvm/community-edition/mkGraal.nix +++ b/pkgs/development/compilers/graalvm/community-edition/mkGraal.nix @@ -32,6 +32,8 @@ # Native Image (i.e.: `--static --libc=musl`). This will cause glibc static # builds to fail, so it should be used with care , useMusl ? false + # Extra libraries to be included in native-image using '-H:CLibraryPath' flag +, extraCLibs ? [ ] }: { stdenv @@ -76,6 +78,11 @@ let name = "graalvm${javaVersion}-ce"; sources = builtins.fromJSON (builtins.readFile sourcesPath); + cLibs = [ glibc zlib.static ] + ++ lib.optionals (!useMusl) [ glibc.static ] + ++ lib.optionals useMusl [ musl ] + ++ extraCLibs; + runtimeLibraryPath = lib.makeLibraryPath ([ cups ] ++ lib.optionals gtkSupport [ cairo glib gtk3 ]); @@ -118,6 +125,8 @@ let ++ lib.optional stdenv.hostPlatform.isLinux autoPatchelfHook; unpackPhase = '' + runHook preUnpack + unpack_jar() { jar=$1 unzip -q -o $jar -d $out @@ -164,13 +173,13 @@ let for jar in "''${arr[@]:1}"; do unpack_jar "$jar" done + + runHook postUnpack ''; - outputs = [ "out" "lib" ]; - installPhase = '' - # ensure that $lib/lib exists to avoid breaking builds - mkdir -p "$lib/lib" + runHook preInstall + # jni.h expects jni_md.h to be in the header search path. ln -s $out/include/linux/*_md.h $out/include/ @@ -181,26 +190,15 @@ let if [ -z "\''${JAVA_HOME-}" ]; then export JAVA_HOME=$out; fi EOF ${ - lib.optionalString (stdenv.isLinux) '' - # provide libraries needed for static compilation - ${ - if useMusl then - ''for f in "${musl.stdenv.cc.cc}/lib/"* "${musl}/lib/"* "${zlib.static}/lib/"*; do'' - else - ''for f in "${glibc}/lib/"* "${glibc.static}/lib/"* "${zlib.static}/lib/"*; do'' - } - ln -s "$f" "$out/lib/svm/clibraries/${platform.arch}/$(basename $f)" - done - - # add those libraries to $lib output too, so we can use them with - # `native-image -H:CLibraryPath=''${lib.getLib graalvmXX-ce}/lib ...` and reduce - # closure size by not depending on GraalVM $out (that is much bigger) - # we always use glibc here, since musl is only supported for static compilation - for f in "${glibc}/lib/"*; do - ln -s "$f" "$lib/lib/$(basename $f)" - done + # Wrap native-image binary to pass -H:CLibraryPath flag and find glibc + lib.optionalString (withNativeImageSvm && stdenv.isLinux) '' + wrapProgram $out/bin/native-image \ + ${lib.concatStringsSep " " + (map (l: "--add-flags '-H:CLibraryPath=${l}/lib'") cLibs)} '' } + + runHook postInstall ''; dontStrip = true; @@ -240,6 +238,8 @@ let doInstallCheck = true; installCheckPhase = '' + runHook preInstallCheck + echo ${ lib.escapeShellArg '' public class HelloWorld { @@ -252,16 +252,25 @@ let $out/bin/javac HelloWorld.java # run on JVM with Graal Compiler + echo "Testing GraalVM" $out/bin/java -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCI -XX:+UseJVMCICompiler HelloWorld | fgrep 'Hello World' + ${ + lib.optionalString withNativeImageSvm '' + echo "Ahead-Of-Time compilation" + $out/bin/native-image -H:-CheckToolchain -H:+ReportExceptionStackTraces HelloWorld + ./helloworld | fgrep 'Hello World' + '' + } + ${# --static flag doesn't work for darwin lib.optionalString (withNativeImageSvm && stdenv.isLinux && !useMusl) '' - echo "Ahead-Of-Time compilation" - $out/bin/native-image -H:-CheckToolchain -H:+ReportExceptionStackTraces --no-server HelloWorld + echo "Ahead-Of-Time compilation with -H:+StaticExecutableWithDynamicLibC" + $out/bin/native-image -H:+StaticExecutableWithDynamicLibC HelloWorld ./helloworld | fgrep 'Hello World' echo "Ahead-Of-Time compilation with --static" - $out/bin/native-image --no-server --static HelloWorld + $out/bin/native-image --static HelloWorld ./helloworld | fgrep 'Hello World' '' } @@ -269,7 +278,7 @@ let ${# --static flag doesn't work for darwin lib.optionalString (withNativeImageSvm && stdenv.isLinux && useMusl) '' echo "Ahead-Of-Time compilation with --static and --libc=musl" - $out/bin/native-image --no-server --libc=musl --static HelloWorld + $out/bin/native-image --libc=musl --static HelloWorld ./helloworld | fgrep 'Hello World' '' } @@ -302,6 +311,8 @@ let echo '1 + 1' | $out/bin/irb '' } + + runHook postInstallCheck ''; passthru = { From 3e8caec842f5402c2ce7656e03ab7f54875ec6fb Mon Sep 17 00:00:00 2001 From: Thiago Kenji Okada Date: Tue, 7 Feb 2023 17:04:03 +0000 Subject: [PATCH 046/198] mkGraal: move some parameters to be easier to override --- .../compilers/graalvm/community-edition/mkGraal.nix | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/pkgs/development/compilers/graalvm/community-edition/mkGraal.nix b/pkgs/development/compilers/graalvm/community-edition/mkGraal.nix index b66058d35c91..023fc81474ef 100644 --- a/pkgs/development/compilers/graalvm/community-edition/mkGraal.nix +++ b/pkgs/development/compilers/graalvm/community-edition/mkGraal.nix @@ -28,12 +28,6 @@ # Path for the sources file that will be used # See `update.nix` file for a description on how this file works , sourcesPath ? ./. + "/graalvm${javaVersion}-ce-sources.json" - # Use musl instead of glibc to allow true static builds in GraalVM's - # Native Image (i.e.: `--static --libc=musl`). This will cause glibc static - # builds to fail, so it should be used with care -, useMusl ? false - # Extra libraries to be included in native-image using '-H:CLibraryPath' flag -, extraCLibs ? [ ] }: { stdenv @@ -68,6 +62,12 @@ , gtk3 , jq , writeShellScript + # Use musl instead of glibc to allow true static builds in GraalVM's + # Native Image (i.e.: `--static --libc=musl`). This will cause glibc static + # builds to fail, so it should be used with care +, useMusl ? false + # Extra libraries to be included in native-image using '-H:CLibraryPath' flag +, extraCLibs ? [ ] }: assert useMusl -> stdenv.isLinux; From f0636c60556efb4c0330ba69a0ecdce4a6f60b93 Mon Sep 17 00:00:00 2001 From: John Ericson Date: Mon, 6 Feb 2023 23:16:20 -0500 Subject: [PATCH 047/198] treewide: Add `meta.pkgConfigModules` to a few packages Picking up where https://github.com/NixOS/nixpkgs/pull/214304 left off. --- pkgs/applications/graphics/ImageMagick/6.x.nix | 10 +++++++--- pkgs/applications/graphics/ImageMagick/default.nix | 8 +++++--- pkgs/applications/radio/soapysdr/default.nix | 10 +++++++--- .../libraries/libappindicator/default.nix | 13 ++++++++++--- pkgs/development/libraries/libdevil/default.nix | 10 +++++++--- .../linux/alsa-project/alsa-lib/default.nix | 10 +++++++--- 6 files changed, 43 insertions(+), 18 deletions(-) diff --git a/pkgs/applications/graphics/ImageMagick/6.x.nix b/pkgs/applications/graphics/ImageMagick/6.x.nix index 1f05f8e9fa66..a433cc6516de 100644 --- a/pkgs/applications/graphics/ImageMagick/6.x.nix +++ b/pkgs/applications/graphics/ImageMagick/6.x.nix @@ -21,6 +21,7 @@ , libde265Support ? true, libde265 , fftw , ApplicationServices, Foundation +, testers }: let @@ -33,14 +34,14 @@ let else null; in -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "imagemagick"; version = "6.9.12-68"; src = fetchFromGitHub { owner = "ImageMagick"; repo = "ImageMagick6"; - rev = version; + rev = finalAttrs.version; sha256 = "sha256-slQcA0cblxtG/1DiJx5swUh7Kfwgz5HG70eqJFLaQJI="; }; @@ -109,10 +110,13 @@ stdenv.mkDerivation rec { done ''; + passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage; + meta = with lib; { homepage = "https://legacy.imagemagick.org/"; changelog = "https://legacy.imagemagick.org/script/changelog.php"; description = "A software suite to create, edit, compose, or convert bitmap images"; + pkgConfigModules = [ "ImageMagick" "MagickWand" ]; platforms = platforms.linux ++ platforms.darwin; maintainers = with maintainers; [ ]; license = licenses.asl20; @@ -137,4 +141,4 @@ stdenv.mkDerivation rec { "CVE-2022-2719" ]; }; -} +}) diff --git a/pkgs/applications/graphics/ImageMagick/default.nix b/pkgs/applications/graphics/ImageMagick/default.nix index 5adb53b401c6..0ad522613308 100644 --- a/pkgs/applications/graphics/ImageMagick/default.nix +++ b/pkgs/applications/graphics/ImageMagick/default.nix @@ -45,14 +45,14 @@ let else null; in -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "imagemagick"; version = "7.1.0-61"; src = fetchFromGitHub { owner = "ImageMagick"; repo = "ImageMagick"; - rev = version; + rev = finalAttrs.version; hash = "sha256-g7WeqPpPd1gceU+s+vRDpb41IX1lzpiqh3cAYeFdUlg="; }; @@ -126,14 +126,16 @@ stdenv.mkDerivation rec { passthru.tests = { version = testers.testVersion { package = imagemagick; }; inherit (python3.pkgs) img2pdf; + pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage; }; meta = with lib; { homepage = "http://www.imagemagick.org/"; description = "A software suite to create, edit, compose, or convert bitmap images"; + pkgConfigModules = [ "ImageMagick" "MagickWand" ]; platforms = platforms.linux ++ platforms.darwin; maintainers = with maintainers; [ erictapen dotlambda ]; license = licenses.asl20; mainProgram = "magick"; }; -} +}) diff --git a/pkgs/applications/radio/soapysdr/default.nix b/pkgs/applications/radio/soapysdr/default.nix index adf997773ecc..59a1e0f59acc 100644 --- a/pkgs/applications/radio/soapysdr/default.nix +++ b/pkgs/applications/radio/soapysdr/default.nix @@ -5,7 +5,8 @@ , python ? null , ncurses, swig2 , extraPackages ? [] -} : +, testers +}: let @@ -14,7 +15,7 @@ let modulesPath = "lib/SoapySDR/modules" + modulesVersion; extraPackagesSearchPath = lib.makeSearchPath modulesPath extraPackages; -in stdenv.mkDerivation { +in stdenv.mkDerivation (finalAttrs: { pname = "soapysdr"; inherit version; @@ -58,12 +59,15 @@ in stdenv.mkDerivation { done ''; + passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage; + meta = with lib; { homepage = "https://github.com/pothosware/SoapySDR"; description = "Vendor and platform neutral SDR support library"; license = licenses.boost; maintainers = with maintainers; [ markuskowa ]; mainProgram = "SoapySDRUtil"; + pkgConfigModules = [ "SoapySDR" ]; platforms = platforms.unix; }; -} +}) diff --git a/pkgs/development/libraries/libappindicator/default.nix b/pkgs/development/libraries/libappindicator/default.nix index 9df992a5763d..d1d882dd4eb5 100644 --- a/pkgs/development/libraries/libappindicator/default.nix +++ b/pkgs/development/libraries/libappindicator/default.nix @@ -8,9 +8,10 @@ , gtk3, libindicator-gtk3, libdbusmenu-gtk3 , gtk-doc, vala, gobject-introspection , monoSupport ? false, mono, gtk-sharp-2_0 - }: +, testers +}: -stdenv.mkDerivation { +stdenv.mkDerivation (finalAttrs: { pname = let postfix = if gtkVersion == "2" && monoSupport then "sharp" else "gtk${gtkVersion}"; in "libappindicator-${postfix}"; version = "12.10.1+20.10.20200706.1"; @@ -54,11 +55,17 @@ stdenv.mkDerivation { "localstatedir=\${TMPDIR}" ]; + passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage; + meta = with lib; { description = "A library to allow applications to export a menu into the Unity Menu bar"; homepage = "https://launchpad.net/libappindicator"; license = with licenses; [ lgpl21 lgpl3 ]; + pkgConfigModules = { + "2" = [ "appindicator-0.1" ]; + "3" = [ "appindicator3-0.1" ]; + }.${gtkVersion} or []; platforms = platforms.linux; maintainers = [ maintainers.msteen ]; }; -} +}) diff --git a/pkgs/development/libraries/libdevil/default.nix b/pkgs/development/libraries/libdevil/default.nix index 35637512e0a5..0cba50c3a924 100644 --- a/pkgs/development/libraries/libdevil/default.nix +++ b/pkgs/development/libraries/libdevil/default.nix @@ -13,16 +13,17 @@ , OpenGL , runtimeShell , withXorg ? true +, testers }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "libdevil"; version = "1.7.8"; outputs = [ "out" "dev" ]; src = fetchurl { - url = "mirror://sourceforge/openil/DevIL-${version}.tar.gz"; + url = "mirror://sourceforge/openil/DevIL-${finalAttrs.version}.tar.gz"; sha256 = "1zd850nn7nvkkhasrv7kn17kzgslr5ry933v6db62s4lr0zzlbv8"; }; @@ -63,11 +64,14 @@ stdenv.mkDerivation rec { done ''; + passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage; + meta = with lib; { homepage = "https://openil.sourceforge.net/"; description = "An image library which can can load, save, convert, manipulate, filter and display a wide variety of image formats"; license = licenses.lgpl2; + pkgConfigModules = [ "IL" ]; platforms = platforms.mesaPlatforms; maintainers = with maintainers; [ ]; }; -} +}) diff --git a/pkgs/os-specific/linux/alsa-project/alsa-lib/default.nix b/pkgs/os-specific/linux/alsa-project/alsa-lib/default.nix index db8ede6feb81..d8fc4648029a 100644 --- a/pkgs/os-specific/linux/alsa-project/alsa-lib/default.nix +++ b/pkgs/os-specific/linux/alsa-project/alsa-lib/default.nix @@ -3,14 +3,15 @@ , fetchurl , alsa-topology-conf , alsa-ucm-conf +, testers }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "alsa-lib"; version = "1.2.7.2"; src = fetchurl { - url = "mirror://alsa/lib/${pname}-${version}.tar.bz2"; + url = "mirror://alsa/lib/${finalAttrs.pname}-${finalAttrs.version}.tar.bz2"; hash = "sha256-ijW3IY5Q8qLHk0LQ3pje2BQ5zhnhKAk4Xsm+lZbefC8="; }; @@ -31,6 +32,8 @@ stdenv.mkDerivation rec { outputs = [ "out" "dev" ]; + passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage; + meta = with lib; { homepage = "http://www.alsa-project.org/"; description = "ALSA, the Advanced Linux Sound Architecture libraries"; @@ -41,7 +44,8 @@ stdenv.mkDerivation rec { ''; license = licenses.lgpl21Plus; + pkgConfigModules = [ "alsa" "alsa-topology" ]; platforms = platforms.linux; maintainers = with maintainers; [ l-as ]; }; -} +}) From 2c1fc43a4331a91deb72c1fd1e711ce170e15d90 Mon Sep 17 00:00:00 2001 From: John Ericson Date: Tue, 7 Feb 2023 08:42:12 -0500 Subject: [PATCH 048/198] libappindicator: Clean up code a bit - Properly through on unsupported GTK versions. - Mark mono suport broken rather than just having a comment. --- .../libraries/libappindicator/default.nix | 36 ++++++++++++------- 1 file changed, 24 insertions(+), 12 deletions(-) diff --git a/pkgs/development/libraries/libappindicator/default.nix b/pkgs/development/libraries/libappindicator/default.nix index d1d882dd4eb5..0819d004017c 100644 --- a/pkgs/development/libraries/libappindicator/default.nix +++ b/pkgs/development/libraries/libappindicator/default.nix @@ -1,5 +1,3 @@ -# TODO: Resolve the issues with the Mono bindings. - { stdenv, fetchgit, lib , pkg-config, autoreconfHook , glib, dbus-glib @@ -7,12 +5,16 @@ , gtk2, libindicator-gtk2, libdbusmenu-gtk2 , gtk3, libindicator-gtk3, libdbusmenu-gtk3 , gtk-doc, vala, gobject-introspection -, monoSupport ? false, mono, gtk-sharp-2_0 +, monoSupport ? false, mono, gtk-sharp-2_0, gtk-sharp-3_0 , testers }: +let + throwBadGtkVersion = throw "unknown GTK version ${gtkVersion}"; +in + stdenv.mkDerivation (finalAttrs: { - pname = let postfix = if gtkVersion == "2" && monoSupport then "sharp" else "gtk${gtkVersion}"; + pname = let postfix = if monoSupport then "sharp" else "gtk${gtkVersion}"; in "libappindicator-${postfix}"; version = "12.10.1+20.10.20200706.1"; @@ -26,16 +28,24 @@ stdenv.mkDerivation (finalAttrs: { nativeBuildInputs = [ pkg-config autoreconfHook vala gobject-introspection gtk-doc ]; - propagatedBuildInputs = - if gtkVersion == "2" - then [ gtk2 libdbusmenu-gtk2 ] - else [ gtk3 libdbusmenu-gtk3 ]; + propagatedBuildInputs = { + "2" = [ gtk2 libdbusmenu-gtk2 ]; + "3" = [ gtk3 libdbusmenu-gtk3 ]; + }.${gtkVersion} or throwBadGtkVersion; buildInputs = [ glib dbus-glib - ] ++ (if gtkVersion == "2" - then [ libindicator-gtk2 ] ++ lib.optionals monoSupport [ mono gtk-sharp-2_0 ] - else [ libindicator-gtk3 ]); + { + "2" = libindicator-gtk2; + "3" = libindicator-gtk3; + }.${gtkVersion} or throwBadGtkVersion + ] ++ lib.optionals monoSupport [ + mono + { + "2" = gtk-sharp-2_0; + "3" = gtk-sharp-3_0; + }.${gtkVersion} or throwBadGtkVersion + ]; preAutoreconf = '' gtkdocize @@ -64,8 +74,10 @@ stdenv.mkDerivation (finalAttrs: { pkgConfigModules = { "2" = [ "appindicator-0.1" ]; "3" = [ "appindicator3-0.1" ]; - }.${gtkVersion} or []; + }.${gtkVersion} or throwBadGtkVersion; platforms = platforms.linux; maintainers = [ maintainers.msteen ]; + # TODO: Resolve the issues with the Mono bindings. + broken = monoSupport && (gtkVersion != "2"); }; }) From 18a0b827500f99c613d0a70d92f55fbd13e59474 Mon Sep 17 00:00:00 2001 From: John Ericson Date: Tue, 7 Feb 2023 09:19:50 -0500 Subject: [PATCH 049/198] bzip2: Add `meta.pkgConfigModules` and test --- pkgs/development/libraries/libappindicator/default.nix | 2 +- pkgs/tools/compression/bzip2/default.nix | 10 ++++++++-- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/libappindicator/default.nix b/pkgs/development/libraries/libappindicator/default.nix index 0819d004017c..8e68ea3f9cb6 100644 --- a/pkgs/development/libraries/libappindicator/default.nix +++ b/pkgs/development/libraries/libappindicator/default.nix @@ -78,6 +78,6 @@ stdenv.mkDerivation (finalAttrs: { platforms = platforms.linux; maintainers = [ maintainers.msteen ]; # TODO: Resolve the issues with the Mono bindings. - broken = monoSupport && (gtkVersion != "2"); + broken = monoSupport; }; }) diff --git a/pkgs/tools/compression/bzip2/default.nix b/pkgs/tools/compression/bzip2/default.nix index 3b48195d11d6..be456cf59442 100644 --- a/pkgs/tools/compression/bzip2/default.nix +++ b/pkgs/tools/compression/bzip2/default.nix @@ -1,6 +1,7 @@ { lib, stdenv, fetchurl , linkStatic ? with stdenv.hostPlatform; isStatic || isCygwin , autoreconfHook +, testers }: # Note: this package is used for bootstrapping fetchurl, and thus @@ -8,7 +9,9 @@ # cgit) that are needed here should be included directly in Nixpkgs as # files. -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: let + inherit (finalAttrs) version; +in { pname = "bzip2"; version = "1.0.8"; @@ -53,12 +56,15 @@ stdenv.mkDerivation rec { ln -s $out/lib/libbz2.so.1.0.* $out/lib/libbz2.so.1.0 ''; + passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage; + meta = with lib; { description = "High-quality data compression program"; homepage = "https://www.sourceware.org/bzip2"; changelog = "https://sourceware.org/git/?p=bzip2.git;a=blob;f=CHANGES;hb=HEAD"; license = licenses.bsdOriginal; + pkgConfigModules = [ "bzip2" ]; platforms = platforms.all; maintainers = with maintainers; [ mic92 ]; }; -} +}) From 6db1d3229c037810bd2a7f8b98ffc3d66d06e0e0 Mon Sep 17 00:00:00 2001 From: John Ericson Date: Tue, 7 Feb 2023 09:25:27 -0500 Subject: [PATCH 050/198] cairo: Add `meta.pkgConfigModules` and test --- pkgs/development/libraries/cairo/default.nix | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/cairo/default.nix b/pkgs/development/libraries/cairo/default.nix index c1e7b52c0403..ee8e436d2926 100644 --- a/pkgs/development/libraries/cairo/default.nix +++ b/pkgs/development/libraries/cairo/default.nix @@ -8,11 +8,14 @@ , libGL # libGLU libGL is no longer a big dependency , pdfSupport ? true , darwin +, testers }: let inherit (lib) optional optionals; -in stdenv.mkDerivation rec { +in stdenv.mkDerivation (finalAttrs: let + inherit (finalAttrs) pname version; +in { pname = "cairo"; version = "1.16.0"; @@ -132,6 +135,8 @@ in stdenv.mkDerivation rec { postInstall = lib.optionalString stdenv.isDarwin glib.flattenInclude; + passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage; + meta = with lib; { description = "A 2D graphics library with support for multiple output devices"; longDescription = '' @@ -147,6 +152,11 @@ in stdenv.mkDerivation rec { ''; homepage = "http://cairographics.org/"; license = with licenses; [ lgpl2Plus mpl10 ]; + pkgConfigModules = [ + "cairo-ps" + "cairo-svg" + ] ++ lib.optional gobjectSupport "cairo-gobject" + ++ lib.optional pdfSupport "cairo-gobject"; platforms = platforms.all; }; -} +}) From c8a7454a9a28152c44dc09837f5964a35659c50a Mon Sep 17 00:00:00 2001 From: John Ericson Date: Tue, 7 Feb 2023 09:59:04 -0500 Subject: [PATCH 051/198] libdbusmenu: Add `meta.pkgConfigModules` and test Odd that the pkg-config names contain these numbers, but they do. --- .../libraries/libdbusmenu/default.nix | 22 +++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/pkgs/development/libraries/libdbusmenu/default.nix b/pkgs/development/libraries/libdbusmenu/default.nix index 7b0fca858399..9efea659a651 100644 --- a/pkgs/development/libraries/libdbusmenu/default.nix +++ b/pkgs/development/libraries/libdbusmenu/default.nix @@ -3,13 +3,16 @@ , glib, dbus-glib, json-glib , gobject-introspection, vala , gtkVersion ? null, gtk2, gtk3 +, testers }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "libdbusmenu-${if gtkVersion == null then "glib" else "gtk${gtkVersion}"}"; version = "16.04.0"; - src = fetchurl { + src = let + inherit (finalAttrs) version; + in fetchurl { url = "https://launchpad.net/dbusmenu/${lib.versions.majorMinor version}/${version}/+download/libdbusmenu-${version}.tar.gz"; sha256 = "12l7z8dhl917iy9h02sxmpclnhkdjryn08r8i4sr8l3lrlm4mk5r"; }; @@ -18,7 +21,11 @@ stdenv.mkDerivation rec { buildInputs = [ glib dbus-glib json-glib - ] ++ lib.optional (gtkVersion != null) (if gtkVersion == "2" then gtk2 else gtk3); + ] ++ lib.optional (gtkVersion != null) + { + "2" = gtk2; + "3" = gtk3; + }.${gtkVersion} or (throw "unknown GTK version ${gtkVersion}"); postPatch = '' for f in {configure,ltmain.sh,m4/libtool.m4}; do @@ -37,6 +44,7 @@ stdenv.mkDerivation rec { "CFLAGS=-Wno-error" "--sysconfdir=/etc" "--localstatedir=/var" + # TODO use `lib.withFeatureAs` (if gtkVersion == null then "--disable-gtk" else "--with-gtk=${gtkVersion}") "--disable-scrollkeeper" ] ++ lib.optional (gtkVersion != "2") "--disable-dumper"; @@ -49,11 +57,17 @@ stdenv.mkDerivation rec { "typelibdir=${placeholder "out"}/lib/girepository-1.0" ]; + passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage; + meta = with lib; { description = "Library for passing menu structures across DBus"; homepage = "https://launchpad.net/dbusmenu"; license = with licenses; [ gpl3 lgpl21 lgpl3 ]; + pkgConfigModules = [ + "dbusmenu-glib-0.4" + "dbusmenu-jsonloader-0.4" + ] ++ lib.optional (gtkVersion == "3") "dbusmenu-gtk${gtkVersion}-0.4"; platforms = platforms.linux; maintainers = [ maintainers.msteen ]; }; -} +}) From 5855bcd7898dccb1b5a5fedc676e383290b0c61d Mon Sep 17 00:00:00 2001 From: John Ericson Date: Tue, 7 Feb 2023 10:03:54 -0500 Subject: [PATCH 052/198] libGL: Add `meta.pkgConfigModules` and test --- pkgs/development/libraries/mesa/stubs.nix | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/mesa/stubs.nix b/pkgs/development/libraries/mesa/stubs.nix index 753ad1b91966..f3ea263cc9ff 100644 --- a/pkgs/development/libraries/mesa/stubs.nix +++ b/pkgs/development/libraries/mesa/stubs.nix @@ -1,8 +1,10 @@ { stdenv , libglvnd, mesa -, OpenGL }: +, OpenGL +, testers +}: -stdenv.mkDerivation { +stdenv.mkDerivation (finalAttrs: { inherit (libglvnd) version; pname = "libGL"; outputs = [ "out" "dev" ]; @@ -72,4 +74,8 @@ stdenv.mkDerivation { genPkgConfig glesv1_cm GLESv1_CM genPkgConfig glesv2 GLESv2 ''; -} + + passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage; + + meta.pkgConfigModules = [ "gl" "egl" "glesv1_cm" "glesv2" ]; +}) From 237608ca1089c9e485b7ac44c8ff9a13ea56c1a2 Mon Sep 17 00:00:00 2001 From: Weijia Wang <9713184+wegank@users.noreply.github.com> Date: Tue, 7 Feb 2023 18:27:02 +0100 Subject: [PATCH 053/198] fxlinuxprint: fix src --- pkgs/misc/cups/drivers/fxlinuxprint/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/misc/cups/drivers/fxlinuxprint/default.nix b/pkgs/misc/cups/drivers/fxlinuxprint/default.nix index a5091c525d42..4edd8d0d85b6 100644 --- a/pkgs/misc/cups/drivers/fxlinuxprint/default.nix +++ b/pkgs/misc/cups/drivers/fxlinuxprint/default.nix @@ -10,7 +10,7 @@ stdenv.mkDerivation rec { version = "1.1.2-1"; src = fetchzip { - url = "https://onlinesupport.fujixerox.com/driver_downloads/fxlinuxpdf112119031.zip"; + url = "https://support-fb.fujifilm.com/driver_downloads/fxlinuxpdf112119031.zip"; sha256 = "1mv07ch6ysk9bknfmjqsgxb803sj6vfin29s9knaqv17jvgyh0n3"; curlOpts = "--user-agent Mozilla/5.0"; # HTTP 410 otherwise }; From d618eaa95a378f39191fda75f23132741fa3b731 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Tue, 7 Feb 2023 18:37:10 +0100 Subject: [PATCH 054/198] python310Packages.django-rq: 2.6.0 -> 2.7.0 https://github.com/rq/django-rq/releases/tag/v2.7.0 --- pkgs/development/python-modules/django-rq/default.nix | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/django-rq/default.nix b/pkgs/development/python-modules/django-rq/default.nix index d0894177c3f9..a0bfca2a8b2b 100644 --- a/pkgs/development/python-modules/django-rq/default.nix +++ b/pkgs/development/python-modules/django-rq/default.nix @@ -10,7 +10,7 @@ buildPythonPackage rec { pname = "django-rq"; - version = "2.6.0"; + version = "2.7.0"; format = "setuptools"; disabled = isPy27; @@ -18,7 +18,7 @@ buildPythonPackage rec { owner = "rq"; repo = pname; rev = "refs/tags/v${version}"; - sha256 = "sha256-Na/GeQc74LCoi7Dp3HcSnmUaLi1EjyYYgZTcFyzqOQM="; + hash = "sha256-MUIwgG8GKL+V5GgiC7gZXn5tlSVrmTj/IFiP+hVB7Ks="; }; propagatedBuildInputs = [ @@ -37,6 +37,7 @@ buildPythonPackage rec { meta = with lib; { description = "Simple app that provides django integration for RQ (Redis Queue)"; homepage = "https://github.com/rq/django-rq"; + changelog = "https://github.com/rq/django-rq/releases/tag/v${version}"; license = licenses.mit; maintainers = with maintainers; [ hexa ]; }; From 43da01b0c956fc11f62fc720e74ee3b828e6ef8d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Na=C3=AFm=20Favier?= Date: Tue, 7 Feb 2023 18:59:47 +0100 Subject: [PATCH 055/198] haskellPackages: remove unused patches --- .../amazonka-Allow-http-client-0.6.patch | 24 -- .../amazonka-core-Allow-http-client-0.6.patch | 26 -- ...darcs-2.14.2-Compile-against-GHC-8.8.patch | 333 --------------- .../haskell-modules/patches/darcs-setup.patch | 120 ------ .../patches/fix-dbus-for-ghc-8.10.x.patch | 383 ------------------ .../patches/ghc-paths-nix-ghcjs.patch | 65 --- .../haskell-modules/patches/hunspell.patch | 30 -- 7 files changed, 981 deletions(-) delete mode 100644 pkgs/development/haskell-modules/patches/amazonka-Allow-http-client-0.6.patch delete mode 100644 pkgs/development/haskell-modules/patches/amazonka-core-Allow-http-client-0.6.patch delete mode 100644 pkgs/development/haskell-modules/patches/darcs-2.14.2-Compile-against-GHC-8.8.patch delete mode 100644 pkgs/development/haskell-modules/patches/darcs-setup.patch delete mode 100644 pkgs/development/haskell-modules/patches/fix-dbus-for-ghc-8.10.x.patch delete mode 100644 pkgs/development/haskell-modules/patches/ghc-paths-nix-ghcjs.patch delete mode 100644 pkgs/development/haskell-modules/patches/hunspell.patch diff --git a/pkgs/development/haskell-modules/patches/amazonka-Allow-http-client-0.6.patch b/pkgs/development/haskell-modules/patches/amazonka-Allow-http-client-0.6.patch deleted file mode 100644 index 9e1eeb751602..000000000000 --- a/pkgs/development/haskell-modules/patches/amazonka-Allow-http-client-0.6.patch +++ /dev/null @@ -1,24 +0,0 @@ -From 657b70d174fe5cb61e56cb8b9c5e57f1ec216f2b Mon Sep 17 00:00:00 2001 -From: Mikhail Glushenkov -Date: Wed, 10 Apr 2019 17:42:57 +0100 -Subject: [PATCH] Allow http-client 0.6.*. - -Changelog doesn't list any silently breaking semantic changes. ---- - amazonka/amazonka.cabal | 2 +- - core/amazonka-core.cabal | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/amazonka/amazonka.cabal b/amazonka/amazonka.cabal -index e86713f11c..81c4cb7e48 100644 ---- a/amazonka.cabal -+++ b/amazonka.cabal -@@ -67,7 +67,7 @@ library - , conduit-extra >= 1.1 - , directory >= 1.2 - , exceptions >= 0.6 -- , http-client >= 0.4 && < 0.6 -+ , http-client >= 0.4 && < 0.7 - , http-conduit >= 2.1.7 && < 3 - , http-types >= 0.8 - , ini >= 0.3.5 diff --git a/pkgs/development/haskell-modules/patches/amazonka-core-Allow-http-client-0.6.patch b/pkgs/development/haskell-modules/patches/amazonka-core-Allow-http-client-0.6.patch deleted file mode 100644 index d99072d79c6e..000000000000 --- a/pkgs/development/haskell-modules/patches/amazonka-core-Allow-http-client-0.6.patch +++ /dev/null @@ -1,26 +0,0 @@ -From 657b70d174fe5cb61e56cb8b9c5e57f1ec216f2b Mon Sep 17 00:00:00 2001 -From: Mikhail Glushenkov -Date: Wed, 10 Apr 2019 17:42:57 +0100 -Subject: [PATCH] Allow http-client 0.6.*. - -Changelog doesn't list any silently breaking semantic changes. ---- - amazonka/amazonka.cabal | 2 +- - core/amazonka-core.cabal | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/core/amazonka-core.cabal b/core/amazonka-core.cabal -index 9796e007cf..eccb24e5bd 100644 ---- a/amazonka-core.cabal -+++ b/amazonka-core.cabal -@@ -90,7 +90,7 @@ library - , deepseq >= 1.4 - , exceptions >= 0.6 - , hashable >= 1.2 -- , http-client >= 0.4 && < 0.6 -+ , http-client >= 0.4 && < 0.7 - , http-conduit >= 2.1.4 && < 3 - , http-types >= 0.8 && (<0.11 || >=0.12) - , lens >= 4.4 --- -2.23.0 diff --git a/pkgs/development/haskell-modules/patches/darcs-2.14.2-Compile-against-GHC-8.8.patch b/pkgs/development/haskell-modules/patches/darcs-2.14.2-Compile-against-GHC-8.8.patch deleted file mode 100644 index 04ff068e1d02..000000000000 --- a/pkgs/development/haskell-modules/patches/darcs-2.14.2-Compile-against-GHC-8.8.patch +++ /dev/null @@ -1,333 +0,0 @@ -From 2490fa65eeba52699a7c0e303aa5cb9b78c2b1cf Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Niklas=20Hamb=C3=BCchen?= -Date: Fri, 17 Apr 2020 20:49:23 +0200 -Subject: [PATCH] Compile against GHC 8.8 - ---- - Setup.hs | 15 --------------- - src/Darcs/Patch/Depends.hs | 2 +- - src/Darcs/Patch/Match.hs | 12 ++++++------ - src/Darcs/Patch/PatchInfoAnd.hs | 2 +- - src/Darcs/Patch/Prim/V1/Apply.hs | 6 +++--- - src/Darcs/Patch/Prim/V1/Commute.hs | 1 + - src/Darcs/Patch/ReadMonads.hs | 1 + - src/Darcs/Patch/V1/Commute.hs | 1 + - src/Darcs/Repository/Diff.hs | 2 +- - src/Darcs/Repository/Match.hs | 2 +- - src/Darcs/Util/Tree/Monad.hs | 4 ++-- - 12 files changed, 30 insertions(+), 42 deletions(-) - -diff --git a/Setup.hs b/Setup.hs -index f5cc3e8..05caac4 100644 ---- a/Setup.hs -+++ b/Setup.hs -@@ -75,21 +75,6 @@ - postInst = \ _ flags pkg lbi -> - installManpage pkg lbi (fromFlag $ installVerbosity flags) NoCopyDest, - -- sDistHook = \ pkg lbi hooks flags -> do -- let pkgVer = packageVersion pkg -- verb = fromFlag $ sDistVerbosity flags -- x <- versionPatches verb pkgVer -- y <- context verb -- rewriteFileEx silent "release/distributed-version" $ show x -- rewriteFileEx silent "release/distributed-context" $ show y -- putStrLn "about to hand over" -- let pkg' = pkg { library = sanity (library pkg) } -- sanity (Just lib) = Just $ lib { libBuildInfo = sanity' $ libBuildInfo lib } -- sanity _ = error "eh" -- sanity' bi = bi { otherModules = [ m | m <- otherModules bi, toFilePath m /= "Version" ] } -- -- sDistHook simpleUserHooks pkg' lbi hooks flags -- , - postConf = \_ _ _ _ -> return () --- Usually this checked for external C - --- dependencies, but we already have performed such - --- check in the confHook ---- a/darcs.cabal 1970-01-01 01:00:01.000000000 +0100 -+++ b/darcs.cabal 2020-04-18 10:26:07.605129733 +0200 -@@ -1,6 +1,5 @@ - Name: darcs - version: 2.14.2 --x-revision: 1 - License: GPL-2 - License-file: COPYING - Author: David Roundy , -@@ -75,7 +74,7 @@ - description: Use libcurl for HTTP support. - - -- in future this could extend to any other external libraries, ---- e.g. libiconv -+-- e.g. libiconv - flag pkgconfig - description: Use pkgconfig to configure libcurl - default: False -@@ -113,7 +112,7 @@ - -- ---------------------------------------------------------------------- - - custom-setup -- setup-depends: base >= 4.9 && < 4.13, -+ setup-depends: base >= 4.9 && <5, - Cabal >= 1.24, - process >= 1.2.3.0 && < 1.7, - filepath >= 1.4.1 && < 1.5.0.0, -@@ -381,7 +380,7 @@ - else - build-depends: unix >= 2.7.1.0 && < 2.8 - -- build-depends: base >= 4.9 && < 4.13, -+ build-depends: base >= 4.9 && <5, - stm >= 2.1 && < 2.6, - binary >= 0.5 && < 0.10, - containers >= 0.5.6.2 && < 0.7, -@@ -402,19 +401,19 @@ - tar >= 0.5 && < 0.6, - data-ordlist == 0.4.*, - attoparsec >= 0.13.0.1 && < 0.14, -- zip-archive >= 0.3 && < 0.5, -+ zip-archive >= 0.3 && <1, - async >= 2.0.2 && < 2.3, -- sandi >= 0.4 && < 0.6, -+ sandi >= 0.4 && <1, - unix-compat >= 0.4.2 && < 0.6, - bytestring >= 0.10.6 && < 0.11, - old-time >= 1.1.0.3 && < 1.2, - time >= 1.5.0.1 && < 1.10, -- text >= 1.2.1.3 && < 1.3, -+ text >= 1.2.1.3 && <2, - directory >= 1.2.6.2 && < 1.4, - process >= 1.2.3.0 && < 1.7, - array >= 0.5.1.0 && < 0.6, - random >= 1.1 && < 1.2, -- hashable >= 1.2.3.3 && < 1.3, -+ hashable >= 1.2.3.3 && <2, - mmap >= 0.5.9 && < 0.6, - zlib >= 0.6.1.2 && < 0.7.0.0, - network-uri == 2.6.*, -@@ -443,7 +442,7 @@ - - -- The terminfo package cannot be built on Windows. - if flag(terminfo) && !os(windows) -- build-depends: terminfo >= 0.4.0.2 && < 0.5 -+ build-depends: terminfo >= 0.4.0.2 && <1 - cpp-options: -DHAVE_TERMINFO - - default-extensions: -@@ -500,7 +499,7 @@ - cc-options: -D_REENTRANT - - build-depends: darcs, -- base >= 4.9 && < 4.13 -+ base >= 4.9 && <5 - - -- ---------------------------------------------------------------------- - -- unit test driver -@@ -518,7 +517,7 @@ - build-depends: Win32 >= 2.3.1 && < 2.4 - - build-depends: darcs, -- base >= 4.9 && < 4.13, -+ base >= 4.9 && <5, - array >= 0.5.1.0 && < 0.6, - bytestring >= 0.10.6 && < 0.11, - cmdargs >= 0.10.10 && < 0.11, -@@ -527,15 +526,15 @@ - mtl >= 2.2.1 && < 2.3, - shelly >= 1.6.8 && < 1.9, - split >= 0.2.2 && < 0.3, -- text >= 1.2.1.3 && < 1.3, -+ text >= 1.2.1.3 && <2, - directory >= 1.2.6.2 && < 1.4, - FindBin >= 0.0.5 && < 0.1, -- QuickCheck >= 2.8.2 && < 2.13, -+ QuickCheck >= 2.8.2 && <3, - HUnit >= 1.3 && < 1.7, - test-framework >= 0.8.1.1 && < 0.9, - test-framework-hunit >= 0.3.0.2 && < 0.4, - test-framework-quickcheck2 >= 0.3.0.3 && < 0.4, -- zip-archive >= 0.3 && < 0.5 -+ zip-archive >= 0.3 && <1 - - -- https://github.com/yesodweb/Shelly.hs/issues/177 - if os(windows) -diff --git a/src/Darcs/Patch/Depends.hs b/src/Darcs/Patch/Depends.hs -index 8531294..a4c71cb 100644 ---- a/src/Darcs/Patch/Depends.hs -+++ b/src/Darcs/Patch/Depends.hs -@@ -251,7 +251,7 @@ splitOnTag _ (PatchSet NilRL NilRL) = Nothing - unwrapOneTagged :: (Monad m) => PatchSet rt p wX wY -> m (PatchSet rt p wX wY) - unwrapOneTagged (PatchSet (ts :<: Tagged t _ tps) ps) = - return $ PatchSet ts (tps :<: t +<+ ps) --unwrapOneTagged _ = fail "called unwrapOneTagged with no Tagged's in the set" -+unwrapOneTagged _ = error "called unwrapOneTagged with no Tagged's in the set" - - -- | @getUncovered ps@ returns the 'PatchInfo' for all the patches in - -- @ps@ that are not depended on by anything else *through explicit -diff --git a/src/Darcs/Patch/Match.hs b/src/Darcs/Patch/Match.hs -index aba6c7a..2b6f53a 100644 ---- a/src/Darcs/Patch/Match.hs -+++ b/src/Darcs/Patch/Match.hs -@@ -421,7 +421,7 @@ getNonrangeMatchS fs repo = - Just m -> if nonrangeMatcherIsTag fs - then getTagS m repo - else getMatcherS Exclusive m repo -- Nothing -> fail "Pattern not specified in getNonrangeMatch." -+ Nothing -> error "Pattern not specified in getNonrangeMatch." - - -- | @firstMatch fs@ tells whether @fs@ implies a "first match", that - -- is if we match against patches from a point in the past on, rather -@@ -441,7 +441,7 @@ getFirstMatchS fs repo = - Just (_,b) -> unpullLastN repo b -- b is chronologically earlier than a - Nothing -> - case firstMatcher fs of -- Nothing -> fail "Pattern not specified in getFirstMatchS." -+ Nothing -> error "Pattern not specified in getFirstMatchS." - Just m -> if firstMatcherIsTag fs - then getTagS m repo - else getMatcherS Inclusive m repo -@@ -462,7 +462,7 @@ checkMatchSyntax :: [MatchFlag] -> IO () - checkMatchSyntax opts = - case getMatchPattern opts of - Nothing -> return () -- Just p -> either fail (const $ return ()) (parseMatch p::Either String (MatchFun rt DummyPatch)) -+ Just p -> either error (const $ return ()) (parseMatch p::Either String (MatchFun rt DummyPatch)) - - getMatchPattern :: [MatchFlag] -> Maybe String - getMatchPattern [] = Nothing -@@ -718,7 +718,7 @@ getMatcherS :: (ApplyMonad (ApplyState p) m, Matchable p) => - getMatcherS ioe m repo = - if matchExists m repo - then applyInvToMatcher ioe m repo -- else fail $ "Couldn't match pattern "++ show m -+ else error $ "Couldn't match pattern "++ show m - - getTagS :: (ApplyMonad (ApplyState p) m, MonadProgress m, Matchable p) => - Matcher rt p -> PatchSet rt p Origin wX -> m () -diff --git a/src/Darcs/Patch/PatchInfoAnd.hs b/src/Darcs/Patch/PatchInfoAnd.hs -index 2da7ec8..1147410 100644 ---- a/src/Darcs/Patch/PatchInfoAnd.hs -+++ b/src/Darcs/Patch/PatchInfoAnd.hs -@@ -167,7 +167,7 @@ conscientiously er (PIAP pinf hp) = - - -- | @hopefullyM@ is a version of @hopefully@ which calls @fail@ in a - -- monad instead of erroring. --hopefullyM :: Monad m => PatchInfoAnd rt p wA wB -> m (WrappedNamed rt p wA wB) -+hopefullyM :: MonadFail m => PatchInfoAnd rt p wA wB -> m (WrappedNamed rt p wA wB) - hopefullyM (PIAP pinf hp) = case hopefully2either hp of - Right p -> return p - Left e -> fail $ renderString -diff --git a/src/Darcs/Patch/Prim/V1/Apply.hs b/src/Darcs/Patch/Prim/V1/Apply.hs -index bea7e41..7984d21 100644 ---- a/src/Darcs/Patch/Prim/V1/Apply.hs -+++ b/src/Darcs/Patch/Prim/V1/Apply.hs -@@ -41,13 +41,13 @@ instance Apply Prim where - apply (FP f (TokReplace t o n)) = mModifyFilePS f doreplace - where doreplace fc = - case tryTokReplace t (BC.pack o) (BC.pack n) fc of -- Nothing -> fail $ "replace patch to " ++ fn2fp f -+ Nothing -> error $ "replace patch to " ++ fn2fp f - ++ " couldn't apply." - Just fc' -> return fc' - apply (FP f (Binary o n)) = mModifyFilePS f doapply - where doapply oldf = if o == oldf - then return n -- else fail $ "binary patch to " ++ fn2fp f -+ else error $ "binary patch to " ++ fn2fp f - ++ " couldn't apply." - apply (DP d AddDir) = mCreateDirectory d - apply (DP d RmDir) = mRemoveDirectory d -@@ -115,7 +115,7 @@ applyHunk f h fc = - case applyHunkLines h fc of - Right fc' -> return fc' - Left msg -> -- fail $ -+ error $ - "### Error applying:\n" ++ renderHunk h ++ - "\n### to file " ++ fn2fp f ++ ":\n" ++ BC.unpack fc ++ - "### Reason: " ++ msg -diff --git a/src/Darcs/Patch/Prim/V1/Commute.hs b/src/Darcs/Patch/Prim/V1/Commute.hs -index 7639dbd..e1432e6 100644 ---- a/src/Darcs/Patch/Prim/V1/Commute.hs -+++ b/src/Darcs/Patch/Prim/V1/Commute.hs -@@ -58,6 +58,7 @@ instance Monad Perhaps where - Failed >>= _ = Failed - Unknown >>= _ = Unknown - return = Succeeded -+instance MonadFail Perhaps where - fail _ = Unknown - - instance Alternative Perhaps where -diff --git a/src/Darcs/Patch/ReadMonads.hs b/src/Darcs/Patch/ReadMonads.hs -index 62a4f81..e1cb149 100644 ---- a/src/Darcs/Patch/ReadMonads.hs -+++ b/src/Darcs/Patch/ReadMonads.hs -@@ -237,6 +237,7 @@ failSM _ = SM (\_ -> Nothing) - instance Monad SM where - (>>=) = bindSM - return = returnSM -+instance MonadFail SM where - fail = failSM - - instance ParserM SM where -diff --git a/src/Darcs/Patch/V1/Commute.hs b/src/Darcs/Patch/V1/Commute.hs -index 0bb41a3..c6c3382 100644 ---- a/src/Darcs/Patch/V1/Commute.hs -+++ b/src/Darcs/Patch/V1/Commute.hs -@@ -93,6 +93,7 @@ instance Monad Perhaps where - Failed >>= _ = Failed - Unknown >>= _ = Unknown - return = Succeeded -+instance MonadFail Perhaps where - fail _ = Unknown - - instance Alternative Perhaps where -diff --git a/src/Darcs/Repository/Diff.hs b/src/Darcs/Repository/Diff.hs -index 8078d49..e0e2341 100644 ---- a/src/Darcs/Repository/Diff.hs -+++ b/src/Darcs/Repository/Diff.hs -@@ -138,7 +138,7 @@ treeDiff da ft t1 t2 = do - do rmDirP <- diff p (Removed subtree) - addFileP <- diff p (Changed (File emptyBlob) b') - return $ joinGap (+>+) rmDirP addFileP -- diff p _ = fail $ "Missing case at path " ++ show p -+ diff p _ = error $ "Missing case at path " ++ show p - - text_diff p a b - | BL.null a && BL.null b = emptyGap NilFL -diff --git a/src/Darcs/Repository/Match.hs b/src/Darcs/Repository/Match.hs -index 08c9f13..f33cabe 100644 ---- a/src/Darcs/Repository/Match.hs -+++ b/src/Darcs/Repository/Match.hs -@@ -60,7 +60,7 @@ getNonrangeMatch :: (ApplyMonad (ApplyState p) DefaultIO, IsRepoType rt, RepoPat - getNonrangeMatch r = withRecordedMatch r . getMatch where - getMatch fs = case hasIndexRange fs of - Just (n, m) | n == m -> applyNInv (n-1) -- | otherwise -> fail "Index range is not allowed for this command." -+ | otherwise -> error "Index range is not allowed for this command." - _ -> getNonrangeMatchS fs - - getOnePatchset :: (IsRepoType rt, RepoPatch p) -diff --git a/src/Darcs/Util/Tree/Monad.hs b/src/Darcs/Util/Tree/Monad.hs -index 0e01d9b..296fdc4 100644 ---- a/src/Darcs/Util/Tree/Monad.hs -+++ b/src/Darcs/Util/Tree/Monad.hs -@@ -216,7 +216,7 @@ instance (Monad m) => TreeRO (TreeMonad m) where - t <- gets tree - let f = findFile t p' - case f of -- Nothing -> fail $ "No such file " ++ show p' -+ Nothing -> error $ "No such file " ++ show p' - Just x -> lift (readBlob x) - - currentDirectory = ask -@@ -251,7 +251,7 @@ instance (Monad m) => TreeRW (TreeMonad m) where - let item = find tr from' - found_to = find tr to' - unless (isNothing found_to) $ -- fail $ "Error renaming: destination " ++ show to ++ " exists." -+ error $ "Error renaming: destination " ++ show to ++ " exists." - unless (isNothing item) $ do - modifyItem from Nothing - modifyItem to item --- -2.23.1 - diff --git a/pkgs/development/haskell-modules/patches/darcs-setup.patch b/pkgs/development/haskell-modules/patches/darcs-setup.patch deleted file mode 100644 index fbc7efde428e..000000000000 --- a/pkgs/development/haskell-modules/patches/darcs-setup.patch +++ /dev/null @@ -1,120 +0,0 @@ ---- darcs-2.14.2/Setup.hs 2019-01-27 03:14:51.000000000 +1300 -+++ darcs.net/Setup.hs 2019-10-18 02:41:57.000000000 +1300 -@@ -11,7 +11,9 @@ - , TestSuite(testBuildInfo) - , updatePackageDescription - , cppOptions, ccOptions -- , library, libBuildInfo, otherModules ) -+ , library, libBuildInfo, otherModules -+ , ComponentName(CExeName) -+ ) - import Distribution.Package - ( packageVersion ) - import Distribution.Version( Version ) -@@ -21,24 +23,27 @@ - import Distribution.Simple.Setup - (buildVerbosity, copyDest, copyVerbosity, fromFlag, - haddockVerbosity, installVerbosity, sDistVerbosity, replVerbosity ) --import Distribution.Simple.BuildPaths ( autogenModulesDir ) -+import Distribution.Simple.BuildPaths ( autogenPackageModulesDir ) - import Distribution.System - ( OS(Windows), buildOS ) - import Distribution.Simple.Utils - (copyFiles, createDirectoryIfMissingVerbose, rawSystemStdout, -- rewriteFile ) -+ rewriteFileEx) -+import Distribution.Types.UnqualComponentName - import Distribution.Verbosity -- ( Verbosity ) -+ ( Verbosity, silent ) - import Distribution.Text - ( display ) --import Control.Monad ( unless, void ) - -+import Control.Monad ( unless, when, void ) - import System.Directory - ( doesDirectoryExist, doesFileExist ) - import System.IO - ( openFile, IOMode(..) ) - import System.Process (runProcess) - import Data.List( isInfixOf, lines ) -+import qualified Data.Map as M -+import Data.Maybe ( isJust ) - import System.FilePath ( () ) - import Foreign.Marshal.Utils ( with ) - import Foreign.Storable ( peek ) -@@ -75,8 +80,8 @@ - verb = fromFlag $ sDistVerbosity flags - x <- versionPatches verb pkgVer - y <- context verb -- rewriteFile "release/distributed-version" $ show x -- rewriteFile "release/distributed-context" $ show y -+ rewriteFileEx silent "release/distributed-version" $ show x -+ rewriteFileEx silent "release/distributed-context" $ show y - putStrLn "about to hand over" - let pkg' = pkg { library = sanity (library pkg) } - sanity (Just lib) = Just $ lib { libBuildInfo = sanity' $ libBuildInfo lib } -@@ -105,8 +110,7 @@ - littleEndian <- testEndianness - let args = ("-DPACKAGE_VERSION=" ++ show' version) : - [arg | (arg, True) <- -- include fst iff snd. -- [-- We have MAPI iff building on/for Windows. -- ("-DHAVE_MAPI", buildOS == Windows), -+ [ - ("-DLITTLEENDIAN", littleEndian), - ("-DBIGENDIAN", not littleEndian)]] - bi = emptyBuildInfo { cppOptions = args, ccOptions = args } -@@ -133,20 +137,26 @@ - -- man page - -- --------------------------------------------------------------------- - -+hasDarcsExe :: LocalBuildInfo -> Bool -+hasDarcsExe = isJust . M.lookup darcsExe . componentNameMap where -+ darcsExe = CExeName (mkUnqualComponentName "darcs") -+ - buildManpage :: LocalBuildInfo -> IO () --buildManpage lbi = do -- let darcs = buildDir lbi "darcs/darcs" -- manpage = buildDir lbi "darcs/darcs.1" -- manpageHandle <- openFile manpage WriteMode -- void $ runProcess darcs ["help","manpage"] -- Nothing Nothing Nothing (Just manpageHandle) Nothing -+buildManpage lbi = -+ when (hasDarcsExe lbi) $ do -+ let darcs = buildDir lbi "darcs/darcs" -+ manpage = buildDir lbi "darcs/darcs.1" -+ manpageHandle <- openFile manpage WriteMode -+ void $ runProcess darcs ["help","manpage"] -+ Nothing Nothing Nothing (Just manpageHandle) Nothing - --installManpage :: PackageDescription -> LocalBuildInfo -- -> Verbosity -> CopyDest -> IO () -+installManpage :: PackageDescription -> LocalBuildInfo -> Verbosity -> CopyDest -> IO () - installManpage pkg lbi verbosity copy = -- copyFiles verbosity -- (mandir (absoluteInstallDirs pkg lbi copy) "man1") -- [(buildDir lbi "darcs", "darcs.1")] -+ when (hasDarcsExe lbi) $ -+ copyFiles -+ verbosity -+ (mandir (absoluteInstallDirs pkg lbi copy) "man1") -+ [(buildDir lbi "darcs", "darcs.1")] - - -- --------------------------------------------------------------------- - -- version module -@@ -187,12 +197,13 @@ - generateVersionModule :: Verbosity -> LocalBuildInfo - -> String -> String -> IO () - generateVersionModule verbosity lbi version state = do -- let dir = autogenModulesDir lbi -+ let dir = autogenPackageModulesDir lbi - createDirectoryIfMissingVerbose verbosity True dir - ctx <- context verbosity - hash <- weakhash verbosity -- rewriteFile (dir "Version.hs") $ unlines -+ rewriteFileEx silent (dir "Version.hs") $ unlines - ["module Version where" -+ ,"import Darcs.Prelude" - ,"version, weakhash, context :: String" - ,"version = \"" ++ version ++ " (" ++ state ++ ")\"" - ,"weakhash = " ++ case hash of diff --git a/pkgs/development/haskell-modules/patches/fix-dbus-for-ghc-8.10.x.patch b/pkgs/development/haskell-modules/patches/fix-dbus-for-ghc-8.10.x.patch deleted file mode 100644 index 7ed390d3f237..000000000000 --- a/pkgs/development/haskell-modules/patches/fix-dbus-for-ghc-8.10.x.patch +++ /dev/null @@ -1,383 +0,0 @@ -Only in dbus-1.2.13-new: .codeclimate.yml -diff -ur dbus-1.2.13-old/dbus.cabal dbus-1.2.13-new/dbus.cabal ---- dbus-1.2.13-old/dbus.cabal 2020-04-25 19:29:27.372272952 +0200 -+++ dbus-1.2.13-new/dbus.cabal 2020-04-25 19:26:36.140991920 +0200 -@@ -1,172 +1,180 @@ --cabal-version: >=1.8 - name: dbus - version: 1.2.13 - license: Apache-2.0 - license-file: license.txt --maintainer: Andrey Sverdlichenko - author: John Millikin -+maintainer: Andrey Sverdlichenko -+build-type: Simple -+cabal-version: >= 1.8 -+category: Network, Desktop - stability: experimental - homepage: https://github.com/rblaze/haskell-dbus#readme -+ - synopsis: A client library for the D-Bus IPC system. - description: -- D-Bus is a simple, message-based protocol for inter-process -- communication, which allows applications to interact with other parts of -- the machine and the user's session using remote procedure calls. -- . -- D-Bus is a essential part of the modern Linux desktop, where it replaces -- earlier protocols such as CORBA and DCOP. -- . -- This library is an implementation of the D-Bus protocol in Haskell. It -- can be used to add D-Bus support to Haskell applications, without the -- awkward interfaces common to foreign bindings. -- . -- Example: connect to the session bus, and get a list of active names. -- . -- @ -- {-\# LANGUAGE OverloadedStrings \#-} -- . -- import Data.List (sort) -- import DBus -- import DBus.Client -- . -- main = do -- client <- connectSession -- // -- \-- Request a list of connected clients from the bus -- reply <- call_ client (methodCall \"\/org\/freedesktop\/DBus\" \"org.freedesktop.DBus\" \"ListNames\") -- { methodCallDestination = Just \"org.freedesktop.DBus\" -- } -- // -- \-- org.freedesktop.DBus.ListNames() returns a single value, which is -- \-- a list of names (here represented as [String]) -- let Just names = fromVariant (methodReturnBody reply !! 0) -- // -- \-- Print each name on a line, sorted so reserved names are below -- \-- temporary names. -- mapM_ putStrLn (sort names) -- @ -- . -- >$ ghc --make list-names.hs -- >$ ./list-names -- >:1.0 -- >:1.1 -- >:1.10 -- >:1.106 -- >:1.109 -- >:1.110 -- >ca.desrt.dconf -- >org.freedesktop.DBus -- >org.freedesktop.Notifications -- >org.freedesktop.secrets -- >org.gnome.ScreenSaver --category: Network, Desktop --build-type: Simple -+ D-Bus is a simple, message-based protocol for inter-process -+ communication, which allows applications to interact with other parts of -+ the machine and the user's session using remote procedure calls. -+ . -+ D-Bus is a essential part of the modern Linux desktop, where it replaces -+ earlier protocols such as CORBA and DCOP. -+ . -+ This library is an implementation of the D-Bus protocol in Haskell. It -+ can be used to add D-Bus support to Haskell applications, without the -+ awkward interfaces common to foreign bindings. -+ . -+ Example: connect to the session bus, and get a list of active names. -+ . -+ @ -+ {-\# LANGUAGE OverloadedStrings \#-} -+ . -+ import Data.List (sort) -+ import DBus -+ import DBus.Client -+ . -+ main = do -+ client <- connectSession -+ -+ -- Request a list of connected clients from the bus -+ reply <- call_ client (methodCall \"\/org\/freedesktop\/DBus\" \"org.freedesktop.DBus\" \"ListNames\") -+ { methodCallDestination = Just \"org.freedesktop.DBus\" -+ } -+ -+ -- org.freedesktop.DBus.ListNames() returns a single value, which is -+ -- a list of names (here represented as [String]) -+ let Just names = fromVariant (methodReturnBody reply !! 0) -+ -+ -- Print each name on a line, sorted so reserved names are below -+ -- temporary names. -+ mapM_ putStrLn (sort names) -+ @ -+ . -+ >$ ghc --make list-names.hs -+ >$ ./list-names -+ >:1.0 -+ >:1.1 -+ >:1.10 -+ >:1.106 -+ >:1.109 -+ >:1.110 -+ >ca.desrt.dconf -+ >org.freedesktop.DBus -+ >org.freedesktop.Notifications -+ >org.freedesktop.secrets -+ >org.gnome.ScreenSaver -+ -+ - extra-source-files: -- examples/dbus-monitor.hs -- examples/export.hs -- examples/introspect.hs -- examples/list-names.hs -- idlxml/dbus.xml -+ examples/dbus-monitor.hs -+ examples/export.hs -+ examples/introspect.hs -+ examples/list-names.hs -+ idlxml/dbus.xml - - source-repository head -- type: git -- location: https://github.com/rblaze/haskell-dbus -+ type: git -+ location: https://github.com/rblaze/haskell-dbus - - library -- exposed-modules: -- DBus -- DBus.Client -- DBus.Generation -- DBus.Internal.Address -- DBus.Internal.Message -- DBus.Internal.Types -- DBus.Internal.Wire -- DBus.Introspection -- DBus.Introspection.Parse -- DBus.Introspection.Render -- DBus.Introspection.Types -- DBus.Socket -- DBus.TH -- DBus.Transport -- hs-source-dirs: lib -- ghc-options: -W -Wall -- build-depends: -- base ==4.*, -- bytestring <0.11, -- cereal <0.6, -- conduit >=1.3.0 && <1.4, -- containers <0.7, -- deepseq <1.5, -- exceptions <0.11, -- filepath <1.5, -- lens <4.20, -- network >=3.0.1.0 && <3.2, -- parsec <3.2, -- random <1.2, -- split <0.3, -- template-haskell <2.16.0.0, -- text <1.3, -- th-lift <0.9, -- transformers <0.6, -- unix <2.8, -- vector <0.13, -- xml-conduit >=1.9.0.0 && <1.10.0.0, -- xml-types <0.4 -+ ghc-options: -W -Wall -+ hs-source-dirs: lib -+ -+ build-depends: -+ base >=4 && <5 -+ , bytestring -+ , cereal -+ , conduit >= 1.3.0 -+ , containers -+ , deepseq -+ , exceptions -+ , filepath -+ , lens < 4.20 -+ , network >= 3.0.1.0 && < 3.2 -+ , parsec -+ , random -+ , split -+ , template-haskell < 2.17.0.0 -+ , text -+ , th-lift < 0.9 -+ , transformers -+ , unix -+ , vector -+ , xml-conduit >= 1.9.0.0 && < 1.10.0.0 -+ , xml-types -+ -+ exposed-modules: -+ DBus -+ DBus.Client -+ DBus.Generation -+ DBus.Internal.Address -+ DBus.Internal.Message -+ DBus.Internal.Types -+ DBus.Internal.Wire -+ DBus.Introspection -+ DBus.Introspection.Parse -+ DBus.Introspection.Render -+ DBus.Introspection.Types -+ DBus.Socket -+ DBus.TH -+ DBus.Transport - - test-suite dbus_tests -- type: exitcode-stdio-1.0 -- main-is: DBusTests.hs -- hs-source-dirs: tests -- other-modules: -- DBusTests.Address -- DBusTests.BusName -- DBusTests.Client -- DBusTests.ErrorName -- DBusTests.Generation -- DBusTests.Integration -- DBusTests.InterfaceName -- DBusTests.Introspection -- DBusTests.MemberName -- DBusTests.Message -- DBusTests.ObjectPath -- DBusTests.Serialization -- DBusTests.Signature -- DBusTests.Socket -- DBusTests.TH -- DBusTests.Transport -- DBusTests.Util -- DBusTests.Variant -- DBusTests.Wire -- ghc-options: -W -Wall -fno-warn-orphans -- build-depends: -- dbus -any, -- base ==4.*, -- bytestring <0.11, -- cereal <0.6, -- containers <0.7, -- directory <1.4, -- extra <1.8, -- filepath <1.5, -- network >=3.0.1.0 && <3.2, -- parsec <3.2, -- process <1.7, -- QuickCheck <2.15, -- random <1.2, -- resourcet <1.3, -- tasty <1.3, -- tasty-hunit <0.11, -- tasty-quickcheck <0.11, -- text <1.3, -- transformers <0.6, -- unix <2.8, -- vector <0.13 -+ type: exitcode-stdio-1.0 -+ main-is: DBusTests.hs -+ hs-source-dirs: tests -+ ghc-options: -W -Wall -fno-warn-orphans -+ -+ build-depends: -+ dbus -+ , base >=4 && <5 -+ , bytestring -+ , cereal -+ , containers -+ , directory -+ , extra < 1.8 -+ , filepath -+ , network >= 3.0.1.0 && < 3.2 -+ , parsec -+ , process -+ , QuickCheck < 2.15 -+ , random -+ , resourcet -+ , tasty -+ , tasty-hunit -+ , tasty-quickcheck -+ , text -+ , transformers -+ , unix -+ , vector -+ -+ other-modules: -+ DBusTests.Address -+ DBusTests.BusName -+ DBusTests.Client -+ DBusTests.ErrorName -+ DBusTests.Generation -+ DBusTests.Integration -+ DBusTests.InterfaceName -+ DBusTests.Introspection -+ DBusTests.MemberName -+ DBusTests.Message -+ DBusTests.ObjectPath -+ DBusTests.Serialization -+ DBusTests.Signature -+ DBusTests.Socket -+ DBusTests.TH -+ DBusTests.Transport -+ DBusTests.Util -+ DBusTests.Variant -+ DBusTests.Wire - - benchmark dbus_benchmarks -- type: exitcode-stdio-1.0 -- main-is: DBusBenchmarks.hs -- hs-source-dirs: benchmarks -- ghc-options: -Wall -fno-warn-orphans -- build-depends: -- dbus -any, -- base ==4.*, -- criterion <1.6 -+ type: exitcode-stdio-1.0 -+ main-is: DBusBenchmarks.hs -+ hs-source-dirs: benchmarks -+ ghc-options: -Wall -fno-warn-orphans -+ -+ build-depends: -+ dbus -+ , base >=4 && <5 -+ , criterion -Only in dbus-1.2.13-new: .git -Only in dbus-1.2.13-new: .gitignore -diff -ur dbus-1.2.13-old/lib/DBus/Generation.hs dbus-1.2.13-new/lib/DBus/Generation.hs ---- dbus-1.2.13-old/lib/DBus/Generation.hs 2019-02-14 16:37:47.000000000 +0100 -+++ dbus-1.2.13-new/lib/DBus/Generation.hs 2020-04-25 19:26:36.144991997 +0200 -@@ -1,3 +1,4 @@ -+{-# LANGUAGE CPP #-} - {-# LANGUAGE OverloadedStrings #-} - {-# LANGUAGE TemplateHaskell #-} - module DBus.Generation where -@@ -26,6 +27,13 @@ - import Prelude hiding (mapM) - import System.Posix.Types (Fd(..)) - -+-- | Compatibility helper to create (total) tuple expressions -+mkTupE :: [Exp] -> Exp -+mkTupE = TupE -+#if MIN_VERSION_template_haskell(2,16,0) -+ . map Just -+#endif -+ - type ClientBusPathR a = ReaderT (Client, T.BusName, T.ObjectPath) IO a - - dbusInvoke :: (Client -> T.BusName -> T.ObjectPath -> a) -> ClientBusPathR a -@@ -232,8 +240,8 @@ - finalOutputNames <- buildOutputNames - let variantListExp = map makeToVariantApp methodArgNames - mapOrHead' = mapOrHead outputLength -- fromVariantExp = mapOrHead' makeFromVariantApp fromVariantOutputNames TupE -- finalResultTuple = mapOrHead' VarE finalOutputNames TupE -+ fromVariantExp = mapOrHead' makeFromVariantApp fromVariantOutputNames mkTupE -+ finalResultTuple = mapOrHead' VarE finalOutputNames mkTupE - maybeExtractionPattern = mapOrHead' makeJustPattern finalOutputNames TupP - getMethodCallDefDec = [d| - $( varP methodCallDefN ) = -@@ -432,7 +440,7 @@ - } - |] - let mapOrHead' = mapOrHead argCount -- fromVariantExp = mapOrHead' makeFromVariantApp fromVariantOutputNames TupE -+ fromVariantExp = mapOrHead' makeFromVariantApp fromVariantOutputNames mkTupE - maybeExtractionPattern = mapOrHead' makeJustPattern toHandlerOutputNames TupP - applyToName toApply n = AppE toApply $ VarE n - finalApplication = foldl applyToName (VarE handlerArgN) diff --git a/pkgs/development/haskell-modules/patches/ghc-paths-nix-ghcjs.patch b/pkgs/development/haskell-modules/patches/ghc-paths-nix-ghcjs.patch deleted file mode 100644 index 48cf6a035afb..000000000000 --- a/pkgs/development/haskell-modules/patches/ghc-paths-nix-ghcjs.patch +++ /dev/null @@ -1,65 +0,0 @@ -diff --git a/GHC/Paths.hs b/GHC/Paths.hs -index c87565d..88b3db4 100644 ---- a/GHC/Paths.hs -+++ b/GHC/Paths.hs -@@ -1,13 +1,35 @@ - {-# LANGUAGE CPP #-} -+{-# LANGUAGE ScopedTypeVariables #-} - - module GHC.Paths ( - ghc, ghc_pkg, libdir, docdir - ) where - -+import Control.Exception as E -+import Data.Maybe -+import System.Environment -+import System.IO.Unsafe -+ -+-- Yes, there's lookupEnv now, but we want to be compatible -+-- with older GHCs. -+checkEnv :: String -> IO (Maybe String) -+checkEnv var = E.catch (fmap Just (getEnv var)) -+ (\ (e :: IOException) -> return Nothing) -+ -+nixLibdir, nixDocdir, nixGhc, nixGhcPkg :: Maybe FilePath -+nixLibdir = unsafePerformIO (checkEnv "NIX_GHCJS_LIBDIR") -+nixDocdir = unsafePerformIO (checkEnv "NIX_GHCJS_DOCDIR") -+nixGhc = unsafePerformIO (checkEnv "NIX_GHCJS") -+nixGhcPkg = unsafePerformIO (checkEnv "NIX_GHCJSPKG") -+{-# NOINLINE nixLibdir #-} -+{-# NOINLINE nixDocdir #-} -+{-# NOINLINE nixGhc #-} -+{-# NOINLINE nixGhcPkg #-} -+ - libdir, docdir, ghc, ghc_pkg :: FilePath - --libdir = GHC_PATHS_LIBDIR --docdir = GHC_PATHS_DOCDIR -+libdir = fromMaybe GHC_PATHS_LIBDIR nixLibdir -+docdir = fromMaybe GHC_PATHS_DOCDIR nixDocdir - --ghc = GHC_PATHS_GHC --ghc_pkg = GHC_PATHS_GHC_PKG -+ghc = fromMaybe GHC_PATHS_GHC nixGhc -+ghc_pkg = fromMaybe GHC_PATHS_GHC_PKG nixGhcPkg -diff --git a/Setup.hs b/Setup.hs -index f2d1733..ca4792e 100644 ---- a/Setup.hs -+++ b/Setup.hs -@@ -39,13 +39,13 @@ main = defaultMainWithHooks simpleUserHooks { - #else - libdir_ <- rawSystemProgramStdoutConf (fromFlag (configVerbosity flags)) - #endif -- ghcProgram (withPrograms lbi) ["--print-libdir"] -+ ghcjsProgram (withPrograms lbi) ["--print-libdir"] - let libdir = reverse $ dropWhile isSpace $ reverse libdir_ - -- ghc_pkg = case lookupProgram ghcPkgProgram (withPrograms lbi) of -+ ghc_pkg = case lookupProgram ghcjsPkgProgram (withPrograms lbi) of - Just p -> programPath p - Nothing -> error "ghc-pkg was not found" -- ghc = case lookupProgram ghcProgram (withPrograms lbi) of -+ ghc = case lookupProgram ghcjsProgram (withPrograms lbi) of - Just p -> programPath p - Nothing -> error "ghc was not found" - diff --git a/pkgs/development/haskell-modules/patches/hunspell.patch b/pkgs/development/haskell-modules/patches/hunspell.patch deleted file mode 100644 index cc115029a7ad..000000000000 --- a/pkgs/development/haskell-modules/patches/hunspell.patch +++ /dev/null @@ -1,30 +0,0 @@ -diff -Naur hunspell-hs-0.1.0.0.orig/hunspell-hs.cabal hunspell-hs-0.1.0.0/hunspell-hs.cabal ---- hunspell-hs-0.1.0.0.orig/hunspell-hs.cabal 2018-08-26 20:23:33.053763300 +0200 -+++ hunspell-hs-0.1.0.0/hunspell-hs.cabal 2018-08-26 20:42:05.886074510 +0200 -@@ -37,7 +37,7 @@ - base >=4.7 && <5 - , stm - if os(linux) -- extra-libraries: -+ pkgconfig-depends: - hunspell - if os(darwin) - include-dirs: -@@ -63,7 +63,7 @@ - , hunspell-hs - , stm - if os(linux) -- extra-libraries: -+ pkgconfig-depends: - hunspell - if os(darwin) - include-dirs: -@@ -88,7 +88,7 @@ - , hunspell-hs - , stm - if os(linux) -- extra-libraries: -+ pkgconfig-depends: - hunspell - if os(darwin) - include-dirs: From d40de77d9763f5c044911fed3700ca3943ec092c Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Tue, 7 Feb 2023 18:23:48 +0100 Subject: [PATCH 056/198] zigbee2mqtt: 1.30.0 -> 1.30.1 Diff: https://github.com/Koenkk/zigbee2mqtt/compare/1.30.0...1.30.1 Changelog: https://github.com/Koenkk/zigbee2mqtt/releases/tag/1.30.1 --- pkgs/servers/zigbee2mqtt/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/servers/zigbee2mqtt/default.nix b/pkgs/servers/zigbee2mqtt/default.nix index b05b96378418..e24397773d51 100644 --- a/pkgs/servers/zigbee2mqtt/default.nix +++ b/pkgs/servers/zigbee2mqtt/default.nix @@ -8,16 +8,16 @@ buildNpmPackage rec { pname = "zigbee2mqtt"; - version = "1.30.0"; + version = "1.30.1"; src = fetchFromGitHub { owner = "Koenkk"; repo = "zigbee2mqtt"; rev = version; - hash = "sha256-BmkSpl+6aUTiueB9VILOcmJM+tCxK2NbqJvJYfoyvBo="; + hash = "sha256-e/pV2W9POUxKhuX5RT9INEqneC65V4dg66ywTR9YUyI="; }; - npmDepsHash = "sha256-ZrUbn/6hbbBRng+TJG6cxBUJ4Td4/P6MoeKVkInPmb4="; + npmDepsHash = "sha256-sHXTwT5gXi5CkfMU/eZDMgsX2qymMhvUEtfUo6MV3hA="; nativeBuildInputs = [ python3 From 315664758c2d6154d769eb9c664892f01c580ac1 Mon Sep 17 00:00:00 2001 From: Florian Date: Tue, 7 Feb 2023 19:07:46 +0100 Subject: [PATCH 057/198] teamviewer: 15.35.7 -> 15.38.3 * teamviewer: 15.35.7 -> 15.38.3 Signed-off-by: Florian Brandes --- pkgs/applications/networking/remote/teamviewer/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/networking/remote/teamviewer/default.nix b/pkgs/applications/networking/remote/teamviewer/default.nix index f127d7c53d32..759388cbd425 100644 --- a/pkgs/applications/networking/remote/teamviewer/default.nix +++ b/pkgs/applications/networking/remote/teamviewer/default.nix @@ -26,11 +26,11 @@ mkDerivation rec { pname = "teamviewer"; # teamviewer itself has not development files but the dev output removes propagated other dev outputs from runtime outputs = [ "out" "dev" ]; - version = "15.35.7"; + version = "15.38.3"; src = fetchurl { - url = "https://dl.tvcdn.de/download/linux/version_15x/teamviewer_${version}_amd64.deb"; - sha256 = "sha256-KNUhe0c6Th2pW7+Lmo62FYdOv+8t7Z5/eQkYPN8eusc="; + url = "https://dl.tvcdn.de/download/linux/version_${lib.versions.major version}x/teamviewer_${version}_amd64.deb"; + sha256 = "sha256-+GGpGV8rl15VQvPRA2PWngQI4VoxCrZ0ArEm9FgdOVE="; }; unpackPhase = '' From 825fb7750655f1db38a9f1a3ba6e843924ecf9da Mon Sep 17 00:00:00 2001 From: figsoda Date: Tue, 7 Feb 2023 12:26:30 -0500 Subject: [PATCH 058/198] sniffnet: 1.0.1 -> 1.1.0 Changelog: https://github.com/gyulyvgc/sniffnet/blob/main/CHANGELOG.md --- .../networking/sniffnet/default.nix | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/pkgs/applications/networking/sniffnet/default.nix b/pkgs/applications/networking/sniffnet/default.nix index 6dc59e1432ab..074d636ff821 100644 --- a/pkgs/applications/networking/sniffnet/default.nix +++ b/pkgs/applications/networking/sniffnet/default.nix @@ -1,9 +1,11 @@ { lib , rustPlatform -, fetchCrate +, fetchFromGitHub , pkg-config , libpcap , stdenv +, alsa-lib +, expat , fontconfig , libGL , xorg @@ -12,20 +14,24 @@ rustPlatform.buildRustPackage rec { pname = "sniffnet"; - version = "1.0.1"; + version = "1.1.0"; - src = fetchCrate { - inherit pname version; - sha256 = "sha256-8K774j04BOEuJjnFYjaSctPwBrKYYKqjFS2+PyxJ2FM="; + src = fetchFromGitHub { + owner = "gyulyvgc"; + repo = "sniffnet"; + rev = "v${version}"; + hash = "sha256-zqk0N1S0vylleyyXaSflIZyWncZV0+wbSy1oAbyLx/4="; }; - cargoSha256 = "sha256-096i4wDdoJCICd0L2QNY+7cKHQnijK22zj4XaQNuko8="; + cargoHash = "sha256-9CTA7Yh2O5S8DvRjwvkrb4ye0/8f+l0tsTxNBMmxLpQ="; nativeBuildInputs = [ pkg-config ]; buildInputs = [ libpcap ] ++ lib.optionals stdenv.isLinux [ + alsa-lib + expat fontconfig libGL xorg.libX11 @@ -34,6 +40,7 @@ rustPlatform.buildRustPackage rec { xorg.libXrandr ] ++ lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.AppKit + rustPlatform.bindgenHook ]; postFixup = lib.optionalString stdenv.isLinux '' From 1406dd02a9e00cf8d5ca755f29d1090a045c17a3 Mon Sep 17 00:00:00 2001 From: Will Fancher Date: Tue, 7 Feb 2023 13:53:02 -0500 Subject: [PATCH 059/198] sshd: Cyphers -> Ciphers --- nixos/doc/manual/from_md/release-notes/rl-2305.section.xml | 4 ++-- nixos/doc/manual/release-notes/rl-2305.section.md | 2 +- nixos/modules/services/networking/ssh/sshd.nix | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/nixos/doc/manual/from_md/release-notes/rl-2305.section.xml b/nixos/doc/manual/from_md/release-notes/rl-2305.section.xml index e0931abe3419..b4041c026129 100644 --- a/nixos/doc/manual/from_md/release-notes/rl-2305.section.xml +++ b/nixos/doc/manual/from_md/release-notes/rl-2305.section.xml @@ -577,8 +577,8 @@ - services.openssh.cyphers to - services.openssh.settings.Cyphers + services.openssh.ciphers to + services.openssh.settings.Ciphers diff --git a/nixos/doc/manual/release-notes/rl-2305.section.md b/nixos/doc/manual/release-notes/rl-2305.section.md index 9cf429847147..305458c66546 100644 --- a/nixos/doc/manual/release-notes/rl-2305.section.md +++ b/nixos/doc/manual/release-notes/rl-2305.section.md @@ -137,7 +137,7 @@ In addition to numerous new and upgraded packages, this release has the followin - `services.openssh.logLevel` to `services.openssh.settings.LogLevel` - `services.openssh.kexAlgorithms` to `services.openssh.settings.KexAlgorithms` - `services.openssh.macs` to `services.openssh.settings.Macs` - - `services.openssh.cyphers` to `services.openssh.settings.Cyphers` + - `services.openssh.ciphers` to `services.openssh.settings.Ciphers` - `services.openssh.gatewayPorts` to `services.openssh.settings.GatewayPorts` - `services.mastodon` gained a tootctl wrapped named `mastodon-tootctl` similar to `nextcloud-occ` which can be executed from any user and switches to the configured mastodon user with sudo and sources the environment variables. diff --git a/nixos/modules/services/networking/ssh/sshd.nix b/nixos/modules/services/networking/ssh/sshd.nix index b1a108be0cfa..095c7de0b7aa 100644 --- a/nixos/modules/services/networking/ssh/sshd.nix +++ b/nixos/modules/services/networking/ssh/sshd.nix @@ -106,7 +106,7 @@ in (mkRenamedOptionModule [ "services" "openssh" "permitRootLogin" ] [ "services" "openssh" "settings" "PermitRootLogin" ]) (mkRenamedOptionModule [ "services" "openssh" "logLevel" ] [ "services" "openssh" "settings" "LogLevel" ]) (mkRenamedOptionModule [ "services" "openssh" "macs" ] [ "services" "openssh" "settings" "Macs" ]) - (mkRenamedOptionModule [ "services" "openssh" "cyphers" ] [ "services" "openssh" "settings" "Cyphers" ]) + (mkRenamedOptionModule [ "services" "openssh" "ciphers" ] [ "services" "openssh" "settings" "Ciphers" ]) (mkRenamedOptionModule [ "services" "openssh" "kexAlgorithms" ] [ "services" "openssh" "settings" "KexAlgorithms" ]) (mkRenamedOptionModule [ "services" "openssh" "gatewayPorts" ] [ "services" "openssh" "settings" "GatewayPorts" ]) (mkRenamedOptionModule [ "services" "openssh" "forwardX11" ] [ "services" "openssh" "settings" "X11Forwarding" ]) From eec740325c942fc62d3e8d95c81244e867f1ecc5 Mon Sep 17 00:00:00 2001 From: Will Fancher Date: Tue, 7 Feb 2023 13:56:02 -0500 Subject: [PATCH 060/198] initrd-ssh: New sshd settings names --- nixos/modules/system/boot/initrd-ssh.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/nixos/modules/system/boot/initrd-ssh.nix b/nixos/modules/system/boot/initrd-ssh.nix index 701d242abc15..125f75d66706 100644 --- a/nixos/modules/system/boot/initrd-ssh.nix +++ b/nixos/modules/system/boot/initrd-ssh.nix @@ -128,13 +128,13 @@ in HostKey ${initrdKeyPath path} '')} - KexAlgorithms ${concatStringsSep "," sshdCfg.kexAlgorithms} - Ciphers ${concatStringsSep "," sshdCfg.ciphers} - MACs ${concatStringsSep "," sshdCfg.macs} + KexAlgorithms ${concatStringsSep "," sshdCfg.settings.KexAlgorithms} + Ciphers ${concatStringsSep "," sshdCfg.settings.Ciphers} + MACs ${concatStringsSep "," sshdCfg.settings.Macs} - LogLevel ${sshdCfg.logLevel} + LogLevel ${sshdCfg.settings.LogLevel} - ${if sshdCfg.useDns then '' + ${if sshdCfg.settings.UseDns then '' UseDNS yes '' else '' UseDNS no From fcfa4dd73bd84a038527a66c8e0a9d15c2af61fd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Tue, 7 Feb 2023 20:40:26 +0100 Subject: [PATCH 061/198] doc/contributing: remove last references to name pname+version should be used everywhere, so lets clean this up --- doc/contributing/coding-conventions.chapter.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/contributing/coding-conventions.chapter.md b/doc/contributing/coding-conventions.chapter.md index f6a0970165f5..2530b14a2f7b 100644 --- a/doc/contributing/coding-conventions.chapter.md +++ b/doc/contributing/coding-conventions.chapter.md @@ -204,13 +204,13 @@ The key words _must_, _must not_, _required_, _shall_, _shall not_, _should_, _s In Nixpkgs, there are generally three different names associated with a package: -- The `name` attribute of the derivation (excluding the version part). This is what most users see, in particular when using `nix-env`. +- The `pname` attribute of the derivation. This is what most users see, in particular when using `nix-env`. - The variable name used for the instantiated package in `all-packages.nix`, and when passing it as a dependency to other functions. Typically this is called the _package attribute name_. This is what Nix expression authors see. It can also be used when installing using `nix-env -iA`. - The filename for (the directory containing) the Nix expression. -Most of the time, these are the same. For instance, the package `e2fsprogs` has a `name` attribute `"e2fsprogs-version"`, is bound to the variable name `e2fsprogs` in `all-packages.nix`, and the Nix expression is in `pkgs/os-specific/linux/e2fsprogs/default.nix`. +Most of the time, these are the same. For instance, the package `e2fsprogs` has a `pname` attribute `"e2fsprogs"`, is bound to the variable name `e2fsprogs` in `all-packages.nix`, and the Nix expression is in `pkgs/os-specific/linux/e2fsprogs/default.nix`. There are a few naming guidelines: From 5373f99acef20bee3f56d792f808b4e6ec892f34 Mon Sep 17 00:00:00 2001 From: Yureka Date: Wed, 1 Feb 2023 22:26:33 +0100 Subject: [PATCH 062/198] element-desktop.seshat: 2.3.0 -> 2.3.3 --- .../networking/instant-messengers/element/seshat/pin.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/applications/networking/instant-messengers/element/seshat/pin.json b/pkgs/applications/networking/instant-messengers/element/seshat/pin.json index fdb5afe67a25..78d5156f54a4 100644 --- a/pkgs/applications/networking/instant-messengers/element/seshat/pin.json +++ b/pkgs/applications/networking/instant-messengers/element/seshat/pin.json @@ -1,6 +1,6 @@ { - "version": "2.3.0", - "srcHash": "JyqtM1CCRgxAAdhgQYaIUYPnxEcDrlW1SjDCmsrPL34=", - "yarnHash": "0bym6i1f0i3bs4fncbiwzwmbxp7j14rz1v4kyvsl02qs97qw1jac", - "cargoHash": "sha256-EjtH96SC2kgan631+wlu9LStGKm6ljCR4x3/WpCTS0E=" + "version": "2.3.3", + "srcHash": "HmKHWFoO8TQ9S/RcJnJ3h85/2uSkqGrgLnX82hkux4Q=", + "yarnHash": "1cbkv8ap7f8vxl5brzqb86d2dyxg555sz67cldrp0vgnk8sq6ibp", + "cargoHash": "sha256-WsgTbQ91aZZV5sIuFVjsccdiXivjtAUC1Zs/4uNk1zU=" } From 01b0b7989c55d974cf42a858afb27fb907b30a51 Mon Sep 17 00:00:00 2001 From: Yureka Date: Wed, 1 Feb 2023 22:28:04 +0100 Subject: [PATCH 063/198] element-desktop.keytar: 7.7.0 -> 7.9.0, switch to fetchNpmDeps --- .../element/keytar/default.nix | 31 +- .../element/keytar/pin.json | 6 +- .../element/keytar/update.sh | 8 +- .../element/keytar/yarn.lock | 2531 ----------------- 4 files changed, 15 insertions(+), 2561 deletions(-) delete mode 100644 pkgs/applications/networking/instant-messengers/element/keytar/yarn.lock diff --git a/pkgs/applications/networking/instant-messengers/element/keytar/default.nix b/pkgs/applications/networking/instant-messengers/element/keytar/default.nix index 362d7a096bfb..6e462ef24dbe 100644 --- a/pkgs/applications/networking/instant-messengers/element/keytar/default.nix +++ b/pkgs/applications/networking/instant-messengers/element/keytar/default.nix @@ -1,5 +1,5 @@ { lib, stdenv, fetchFromGitHub, nodejs, python3, callPackage, removeReferencesTo -, fixup_yarn_lock, yarn, pkg-config, libsecret, xcbuild, Security, AppKit, fetchYarnDeps }: +, pkg-config, libsecret, xcbuild, Security, AppKit, fetchNpmDeps, npmHooks }: let pinData = lib.importJSON ./pin.json; @@ -15,39 +15,26 @@ in stdenv.mkDerivation rec { sha256 = pinData.srcHash; }; - nativeBuildInputs = [ nodejs python3 yarn pkg-config ] + nativeBuildInputs = [ + nodejs python3 pkg-config + npmHooks.npmConfigHook + ] ++ lib.optional stdenv.isDarwin xcbuild; + buildInputs = lib.optionals (!stdenv.isDarwin) [ libsecret ] ++ lib.optionals stdenv.isDarwin [ Security AppKit ]; - npm_config_nodedir = nodejs; - - yarnOfflineCache = fetchYarnDeps { - yarnLock = ./yarn.lock; - sha256 = pinData.yarnHash; + npmDeps = fetchNpmDeps { + inherit src; + hash = pinData.npmHash; }; - buildPhase = '' - runHook preBuild - cp ${./yarn.lock} ./yarn.lock - chmod u+w . ./yarn.lock - export HOME=$PWD/tmp - mkdir -p $HOME - yarn config --offline set yarn-offline-mirror $yarnOfflineCache - ${fixup_yarn_lock}/bin/fixup_yarn_lock yarn.lock - yarn install --offline --frozen-lockfile --ignore-platform --ignore-scripts --no-progress --non-interactive - patchShebangs node_modules/ - node_modules/.bin/node-gyp rebuild - runHook postBuild - ''; - doCheck = false; installPhase = '' runHook preInstall shopt -s extglob rm -rf node_modules - rm -rf $HOME mkdir -p $out cp -r ./!(build) $out install -D -t $out/build/Release build/Release/keytar.node diff --git a/pkgs/applications/networking/instant-messengers/element/keytar/pin.json b/pkgs/applications/networking/instant-messengers/element/keytar/pin.json index fa2e95d4e1a0..dc7420ab4543 100644 --- a/pkgs/applications/networking/instant-messengers/element/keytar/pin.json +++ b/pkgs/applications/networking/instant-messengers/element/keytar/pin.json @@ -1,5 +1,5 @@ { - "version": "7.7.0", - "srcHash": "sd6h+vDJGvmXFhOm4MDAljb4dAOMBB8W1IL7JSfJWyo=", - "yarnHash": "1m75hvl06mcj260hicbmv75p94h73gw5d24zpm5wxwc0q8v8wzfl" + "version": "7.9.0", + "srcHash": "Mnl0Im2hZJXJEtyXb5rgMntekkUAnOG2MN1bwfgh0eg=", + "npmHash": "sha256-ldfRWV+HXBdBYO2ZiGbVFSHV4/bMG43U7w+sJ4kpVUY=" } diff --git a/pkgs/applications/networking/instant-messengers/element/keytar/update.sh b/pkgs/applications/networking/instant-messengers/element/keytar/update.sh index d18cc7d0e8bf..0ddfa0247263 100755 --- a/pkgs/applications/networking/instant-messengers/element/keytar/update.sh +++ b/pkgs/applications/networking/instant-messengers/element/keytar/update.sh @@ -1,5 +1,5 @@ #!/usr/bin/env nix-shell -#!nix-shell -I nixpkgs=../../../../../../ -i bash -p wget prefetch-yarn-deps yarn +#!nix-shell -I nixpkgs=../../../../../../ -i bash -p wget prefetch-npm-deps if [ "$#" -gt 1 ] || [[ "$1" == -* ]]; then echo "Regenerates packaging data for the keytar package." @@ -22,10 +22,8 @@ SRC="https://raw.githubusercontent.com/atom/node-keytar/v$version" wget "$SRC/package-lock.json" wget "$SRC/package.json" -rm -f yarn.lock -yarn import +npm_hash=$(prefetch-npm-deps package-lock.json) rm -rf node_modules package.json package-lock.json -yarn_hash=$(prefetch-yarn-deps yarn.lock) src_hash=$(nix-prefetch-github atom node-keytar --rev v${version} | jq -r .sha256) @@ -33,6 +31,6 @@ cat > pin.json << EOF { "version": "$version", "srcHash": "$src_hash", - "yarnHash": "$yarn_hash" + "npmHash": "$npm_hash" } EOF diff --git a/pkgs/applications/networking/instant-messengers/element/keytar/yarn.lock b/pkgs/applications/networking/instant-messengers/element/keytar/yarn.lock deleted file mode 100644 index 5a3abec6ded8..000000000000 --- a/pkgs/applications/networking/instant-messengers/element/keytar/yarn.lock +++ /dev/null @@ -1,2531 +0,0 @@ -# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. -# yarn lockfile v1 - - -"@ungap/promise-all-settled@1.1.2": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@ungap/promise-all-settled/-/promise-all-settled-1.1.2.tgz#aa58042711d6e3275dd37dc597e5d31e8c290a44" - integrity sha512-sL/cEvJWAnClXw0wHk85/2L0G6Sj8UB0Ctc1TEMbKSsmpRosqhwj9gWgFRZSrBr2f9tiXISwNhCPmlfqUqyb9Q== - -abbrev@1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.0.tgz#d0554c2256636e2f56e7c2e5ad183f859428d81f" - integrity sha1-0FVMIlZjbi9W58LlrRg/hZQo2B8= - -after@~0.8.1: - version "0.8.2" - resolved "https://registry.yarnpkg.com/after/-/after-0.8.2.tgz#fedb394f9f0e02aa9768e702bda23b505fae7e1f" - integrity sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8= - -ajv@^6.12.3: - version "6.12.4" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.4.tgz#0614facc4522127fa713445c6bfd3ebd376e2234" - integrity sha512-eienB2c9qVQs2KWexhkrdMLVDoIQCz5KSeLxwg9Lzk4DOfBtIK9PQwwufcsn1jjGuf9WZmqPMbGxOzfcuphJCQ== - dependencies: - fast-deep-equal "^3.1.1" - fast-json-stable-stringify "^2.0.0" - json-schema-traverse "^0.4.1" - uri-js "^4.2.2" - -amdefine@>=0.0.4: - version "1.0.1" - resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" - integrity sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU= - -ansi-colors@4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" - integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== - -ansi-regex@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" - integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= - -ansi-regex@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.0.tgz#388539f55179bf39339c81af30a654d69f87cb75" - integrity sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg== - -ansi-styles@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" - integrity sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4= - -ansi-styles@^4.0.0, ansi-styles@^4.1.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" - integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== - dependencies: - color-convert "^2.0.1" - -ansi@^0.3.0, ansi@~0.3.0, ansi@~0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/ansi/-/ansi-0.3.1.tgz#0c42d4fb17160d5a9af1e484bace1c66922c1b21" - integrity sha1-DELU+xcWDVqa8eSEus4cZpIsGyE= - -anymatch@~3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.1.tgz#c55ecf02185e2469259399310c173ce31233b142" - integrity sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg== - dependencies: - normalize-path "^3.0.0" - picomatch "^2.0.4" - -aproba@^1.0.3: - version "1.1.2" - resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.1.2.tgz#45c6629094de4e96f693ef7eab74ae079c240fc1" - integrity sha512-ZpYajIfO0j2cOFTO955KUMIKNmj6zhX8kVztMAxFsDaMwz+9Z9SV0uou2pC9HJqcfpffOsjnbrDMvkNy+9RXPw== - -are-we-there-yet@~1.0.0: - version "1.0.6" - resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.0.6.tgz#a2d28c93102aa6cc96245a26cb954de06ec53f0c" - integrity sha1-otKMkxAqpsyWJFomy5VN4G7FPww= - dependencies: - delegates "^1.0.0" - readable-stream "^2.0.0 || ^1.1.13" - -are-we-there-yet@~1.1.2: - version "1.1.4" - resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz#bb5dca382bb94f05e15194373d16fd3ba1ca110d" - integrity sha1-u13KOCu5TwXhUZQ3PRb9O6HKEQ0= - dependencies: - delegates "^1.0.0" - readable-stream "^2.0.6" - -argparse@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" - integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== - -array-index@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/array-index/-/array-index-1.0.0.tgz#ec56a749ee103e4e08c790b9c353df16055b97f9" - integrity sha1-7FanSe4QPk4Ix5C5w1PfFgVbl/k= - dependencies: - debug "^2.2.0" - es6-symbol "^3.0.2" - -asn1@~0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.3.tgz#dac8787713c9966849fc8180777ebe9c1ddf3b86" - integrity sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y= - -assert-plus@1.0.0, assert-plus@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" - integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU= - -assertion-error@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-1.1.0.tgz#e60b6b0e8f301bd97e5375215bda406c85118c0b" - integrity sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw== - -asynckit@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" - integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= - -aws-sign2@~0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" - integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg= - -aws4@^1.8.0: - version "1.10.1" - resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.10.1.tgz#e1e82e4f3e999e2cfd61b161280d16a111f86428" - integrity sha512-zg7Hz2k5lI8kb7U32998pRRFin7zJlkfezGJjUc2heaD4Pw2wObakCDVzkKztTm/Ln7eiVvYsjqak0Ed4LkMDA== - -babel-code-frame@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" - integrity sha1-Y/1D99weO7fONZR9uP42mj9Yx0s= - dependencies: - chalk "^1.1.3" - esutils "^2.0.2" - js-tokens "^3.0.2" - -babel-core@^6.26.0, babel-core@^6.26.3: - version "6.26.3" - resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.26.3.tgz#b2e2f09e342d0f0c88e2f02e067794125e75c207" - integrity sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA== - dependencies: - babel-code-frame "^6.26.0" - babel-generator "^6.26.0" - babel-helpers "^6.24.1" - babel-messages "^6.23.0" - babel-register "^6.26.0" - babel-runtime "^6.26.0" - babel-template "^6.26.0" - babel-traverse "^6.26.0" - babel-types "^6.26.0" - babylon "^6.18.0" - convert-source-map "^1.5.1" - debug "^2.6.9" - json5 "^0.5.1" - lodash "^4.17.4" - minimatch "^3.0.4" - path-is-absolute "^1.0.1" - private "^0.1.8" - slash "^1.0.0" - source-map "^0.5.7" - -babel-generator@^6.26.0: - version "6.26.1" - resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.1.tgz#1844408d3b8f0d35a404ea7ac180f087a601bd90" - integrity sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA== - dependencies: - babel-messages "^6.23.0" - babel-runtime "^6.26.0" - babel-types "^6.26.0" - detect-indent "^4.0.0" - jsesc "^1.3.0" - lodash "^4.17.4" - source-map "^0.5.7" - trim-right "^1.0.1" - -babel-helper-function-name@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz#d3475b8c03ed98242a25b48351ab18399d3580a9" - integrity sha1-00dbjAPtmCQqJbSDUasYOZ01gKk= - dependencies: - babel-helper-get-function-arity "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-helper-get-function-arity@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz#8f7782aa93407c41d3aa50908f89b031b1b6853d" - integrity sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0= - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-helper-remap-async-to-generator@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz#5ec581827ad723fecdd381f1c928390676e4551b" - integrity sha1-XsWBgnrXI/7N04HxySg5BnbkVRs= - dependencies: - babel-helper-function-name "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-helpers@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.24.1.tgz#3471de9caec388e5c850e597e58a26ddf37602b2" - integrity sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI= - dependencies: - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-messages@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e" - integrity sha1-8830cDhYA1sqKVHG7F7fbGLyYw4= - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-syntax-async-functions@^6.8.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz#cad9cad1191b5ad634bf30ae0872391e0647be95" - integrity sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU= - -babel-plugin-transform-async-to-generator@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz#6536e378aff6cb1d5517ac0e40eb3e9fc8d08761" - integrity sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E= - dependencies: - babel-helper-remap-async-to-generator "^6.24.1" - babel-plugin-syntax-async-functions "^6.8.0" - babel-runtime "^6.22.0" - -babel-register@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.26.0.tgz#6ed021173e2fcb486d7acb45c6009a856f647071" - integrity sha1-btAhFz4vy0htestFxgCahW9kcHE= - dependencies: - babel-core "^6.26.0" - babel-runtime "^6.26.0" - core-js "^2.5.0" - home-or-tmp "^2.0.0" - lodash "^4.17.4" - mkdirp "^0.5.1" - source-map-support "^0.4.15" - -babel-runtime@^6.22.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.23.0.tgz#0a9489f144de70efb3ce4300accdb329e2fc543b" - integrity sha1-CpSJ8UTecO+zzkMArM2zKeL8VDs= - dependencies: - core-js "^2.4.0" - regenerator-runtime "^0.10.0" - -babel-runtime@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" - integrity sha1-llxwWGaOgrVde/4E/yM3vItWR/4= - dependencies: - core-js "^2.4.0" - regenerator-runtime "^0.11.0" - -babel-template@^6.24.1, babel-template@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.26.0.tgz#de03e2d16396b069f46dd9fff8521fb1a0e35e02" - integrity sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI= - dependencies: - babel-runtime "^6.26.0" - babel-traverse "^6.26.0" - babel-types "^6.26.0" - babylon "^6.18.0" - lodash "^4.17.4" - -babel-traverse@^6.24.1, babel-traverse@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee" - integrity sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4= - dependencies: - babel-code-frame "^6.26.0" - babel-messages "^6.23.0" - babel-runtime "^6.26.0" - babel-types "^6.26.0" - babylon "^6.18.0" - debug "^2.6.8" - globals "^9.18.0" - invariant "^2.2.2" - lodash "^4.17.4" - -babel-types@^6.24.1: - version "6.25.0" - resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.25.0.tgz#70afb248d5660e5d18f811d91c8303b54134a18e" - integrity sha1-cK+ySNVmDl0Y+BHZHIMDtUE0oY4= - dependencies: - babel-runtime "^6.22.0" - esutils "^2.0.2" - lodash "^4.2.0" - to-fast-properties "^1.0.1" - -babel-types@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497" - integrity sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc= - dependencies: - babel-runtime "^6.26.0" - esutils "^2.0.2" - lodash "^4.17.4" - to-fast-properties "^1.0.3" - -babylon@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" - integrity sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ== - -balanced-match@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" - integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= - -base64-js@^1.3.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" - integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== - -bcrypt-pbkdf@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" - integrity sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4= - dependencies: - tweetnacl "^0.14.3" - -big-integer@^1.6.17: - version "1.6.48" - resolved "https://registry.yarnpkg.com/big-integer/-/big-integer-1.6.48.tgz#8fd88bd1632cba4a1c8c3e3d7159f08bb95b4b9e" - integrity sha512-j51egjPa7/i+RdiRuJbPdJ2FIUYYPhvYLjzoYbcMMm62ooO6F94fETG4MTs46zPAF9Brs04OajboA/qTGuz78w== - -binary-extensions@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" - integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== - -binary@~0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/binary/-/binary-0.3.0.tgz#9f60553bc5ce8c3386f3b553cff47462adecaa79" - integrity sha1-n2BVO8XOjDOG87VTz/R0Yq3sqnk= - dependencies: - buffers "~0.1.1" - chainsaw "~0.1.0" - -bl@^4.0.3: - version "4.0.3" - resolved "https://registry.yarnpkg.com/bl/-/bl-4.0.3.tgz#12d6287adc29080e22a705e5764b2a9522cdc489" - integrity sha512-fs4G6/Hu4/EE+F75J8DuN/0IpQqNjAdC7aEQv7Qt8MHGUH7Ckv2MwTEEeN9QehD0pfIDkMI1bkHYkKy7xHyKIg== - dependencies: - buffer "^5.5.0" - inherits "^2.0.4" - readable-stream "^3.4.0" - -bl@~3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/bl/-/bl-3.0.1.tgz#1cbb439299609e419b5a74d7fce2f8b37d8e5c6f" - integrity sha512-jrCW5ZhfQ/Vt07WX1Ngs+yn9BDqPL/gw28S7s9H6QK/gupnizNzJAss5akW20ISgOrbLTlXOOCTJeNUQqruAWQ== - dependencies: - readable-stream "^3.0.1" - -block-stream@*: - version "0.0.9" - resolved "https://registry.yarnpkg.com/block-stream/-/block-stream-0.0.9.tgz#13ebfe778a03205cfe03751481ebb4b3300c126a" - integrity sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo= - dependencies: - inherits "~2.0.0" - -bluebird@^3: - version "3.7.2" - resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f" - integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg== - -bluebird@~3.4.1: - version "3.4.7" - resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.4.7.tgz#f72d760be09b7f76d08ed8fae98b289a8d05fab3" - integrity sha1-9y12C+Cbf3bQjtj66Ysomo0F+rM= - -brace-expansion@^1.1.7: - version "1.1.8" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.8.tgz#c07b211c7c952ec1f8efd51a77ef0d1d3990a292" - integrity sha1-wHshHHyVLsH479Uad+8NHTmQopI= - dependencies: - balanced-match "^1.0.0" - concat-map "0.0.1" - -braces@~3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" - integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== - dependencies: - fill-range "^7.0.1" - -browser-stdout@1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.1.tgz#baa559ee14ced73452229bad7326467c61fabd60" - integrity sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw== - -buffer-from@^0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-0.1.2.tgz#15f4b9bcef012044df31142c14333caf6e0260d0" - integrity sha512-RiWIenusJsmI2KcvqQABB83tLxCByE3upSP8QU3rJDMVFGPWLvPQJt/O1Su9moRWeH7d+Q2HYb68f6+v+tw2vg== - -buffer-indexof-polyfill@~1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/buffer-indexof-polyfill/-/buffer-indexof-polyfill-1.0.2.tgz#d2732135c5999c64b277fcf9b1abe3498254729c" - integrity sha512-I7wzHwA3t1/lwXQh+A5PbNvJxgfo5r3xulgpYDB5zckTu/Z9oUK9biouBKQUjEqzaz3HnAT6TYoovmE+GqSf7A== - -buffer-shims@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/buffer-shims/-/buffer-shims-1.0.0.tgz#9978ce317388c649ad8793028c3477ef044a8b51" - integrity sha1-mXjOMXOIxkmth5MCjDR37wRKi1E= - -buffer@^5.5.0: - version "5.7.1" - resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0" - integrity sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ== - dependencies: - base64-js "^1.3.1" - ieee754 "^1.1.13" - -buffers@~0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/buffers/-/buffers-0.1.1.tgz#b24579c3bed4d6d396aeee6d9a8ae7f5482ab7bb" - integrity sha1-skV5w77U1tOWru5tmorn9Ugqt7s= - -camelcase@^2.0.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" - integrity sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8= - -camelcase@^6.0.0: - version "6.2.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.2.0.tgz#924af881c9d525ac9d87f40d964e5cea982a1809" - integrity sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg== - -caseless@~0.12.0: - version "0.12.0" - resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" - integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= - -chai@^4.2.0: - version "4.3.4" - resolved "https://registry.yarnpkg.com/chai/-/chai-4.3.4.tgz#b55e655b31e1eac7099be4c08c21964fce2e6c49" - integrity sha512-yS5H68VYOCtN1cjfwumDSuzn/9c+yza4f3reKXlE5rUg7SFcCEy90gJvydNgOYtblyf4Zi6jIWRnXOgErta0KA== - dependencies: - assertion-error "^1.1.0" - check-error "^1.0.2" - deep-eql "^3.0.1" - get-func-name "^2.0.0" - pathval "^1.1.1" - type-detect "^4.0.5" - -chainsaw@~0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/chainsaw/-/chainsaw-0.1.0.tgz#5eab50b28afe58074d0d58291388828b5e5fbc98" - integrity sha1-XqtQsor+WAdNDVgpE4iCi15fvJg= - dependencies: - traverse ">=0.3.0 <0.4" - -chalk@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" - integrity sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg= - dependencies: - ansi-styles "^2.2.1" - escape-string-regexp "^1.0.2" - has-ansi "^2.0.0" - strip-ansi "^3.0.0" - supports-color "^2.0.0" - -chalk@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.0.tgz#4e14870a618d9e2edd97dd8345fd9d9dc315646a" - integrity sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A== - dependencies: - ansi-styles "^4.1.0" - supports-color "^7.1.0" - -check-error@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.2.tgz#574d312edd88bb5dd8912e9286dd6c0aed4aac82" - integrity sha1-V00xLt2Iu13YkS6Sht1sCu1KrII= - -chokidar@3.5.1: - version "3.5.1" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.1.tgz#ee9ce7bbebd2b79f49f304799d5468e31e14e68a" - integrity sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw== - dependencies: - anymatch "~3.1.1" - braces "~3.0.2" - glob-parent "~5.1.0" - is-binary-path "~2.1.0" - is-glob "~4.0.1" - normalize-path "~3.0.0" - readdirp "~3.5.0" - optionalDependencies: - fsevents "~2.3.1" - -chownr@^1.1.1: - version "1.1.4" - resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" - integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== - -chownr@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/chownr/-/chownr-2.0.0.tgz#15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece" - integrity sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ== - -cliui@^3.0.3: - version "3.2.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d" - integrity sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0= - dependencies: - string-width "^1.0.1" - strip-ansi "^3.0.1" - wrap-ansi "^2.0.0" - -cliui@^7.0.2: - version "7.0.4" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" - integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== - dependencies: - string-width "^4.2.0" - strip-ansi "^6.0.0" - wrap-ansi "^7.0.0" - -cmake-js@~5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/cmake-js/-/cmake-js-5.2.0.tgz#6d72014269a5d23a754a6d170cde9ed2d75eb411" - integrity sha512-/HLhzoBEOLKGdE1FLwH5ggzRt67AWTb4IErg4rm+bTC+R0DKUobojDyp17dSswDVPosdoPmHXjKxbJiyBZfQeg== - dependencies: - bluebird "^3" - debug "^4" - fs-extra "^5.0.0" - is-iojs "^1.0.1" - lodash "^4" - memory-stream "0" - npmlog "^1.2.0" - rc "^1.2.7" - request "^2.54.0" - semver "^5.0.3" - splitargs "0" - tar "^4" - traceur "0.0.x" - unzipper "^0.8.13" - url-join "0" - which "^1.0.9" - yargs "^3.6.0" - -code-point-at@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" - integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= - -color-convert@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" - integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== - dependencies: - color-name "~1.1.4" - -color-name@~1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" - integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== - -colors@~0.6.2: - version "0.6.2" - resolved "https://registry.yarnpkg.com/colors/-/colors-0.6.2.tgz#2423fe6678ac0c5dae8852e5d0e5be08c997abcc" - integrity sha1-JCP+ZnisDF2uiFLl0OW+CMmXq8w= - -combined-stream@^1.0.6, combined-stream@~1.0.6: - version "1.0.8" - resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" - integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== - dependencies: - delayed-stream "~1.0.0" - -commander@2.9.x, commander@^2.9.0: - version "2.9.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.9.0.tgz#9c99094176e12240cb22d6c5146098400fe0f7d4" - integrity sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q= - dependencies: - graceful-readlink ">= 1.0.0" - -commander@~2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.2.0.tgz#175ad4b9317f3ff615f201c1e57224f55a3e91df" - integrity sha1-F1rUuTF/P/YV8gHB5XIk9Vo+kd8= - -concat-map@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" - integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= - -console-control-strings@^1.0.0, console-control-strings@~1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" - integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4= - -convert-source-map@^1.5.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.5.1.tgz#b8278097b9bc229365de5c62cf5fcaed8b5599e5" - integrity sha1-uCeAl7m8IpNl3lxiz1/K7YtVmeU= - -core-js@^2.4.0: - version "2.4.1" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.4.1.tgz#4de911e667b0eae9124e34254b53aea6fc618d3e" - integrity sha1-TekR5mew6ukSTjQlS1OupvxhjT4= - -core-js@^2.5.0: - version "2.5.7" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.7.tgz#f972608ff0cead68b841a16a932d0b183791814e" - integrity sha512-RszJCAxg/PP6uzXVXL6BsxSXx/B05oJAQ2vkJRjyjrEcNVycaqOmNb5OTxZPE3xa5gwZduqza6L9JOCenh/Ecw== - -core-util-is@~1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" - integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= - -d@1, d@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/d/-/d-1.0.1.tgz#8698095372d58dbee346ffd0c7093f99f8f9eb5a" - integrity sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA== - dependencies: - es5-ext "^0.10.50" - type "^1.0.1" - -dashdash@^1.12.0: - version "1.14.1" - resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" - integrity sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA= - dependencies: - assert-plus "^1.0.0" - -debug@4.3.1: - version "4.3.1" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.1.tgz#f0d229c505e0c6d8c49ac553d1b13dc183f6b2ee" - integrity sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ== - dependencies: - ms "2.1.2" - -debug@^2.2.0, debug@^2.6.8, debug@^2.6.9: - version "2.6.9" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" - integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== - dependencies: - ms "2.0.0" - -debug@^4: - version "4.2.0" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.2.0.tgz#7f150f93920e94c58f5574c2fd01a3110effe7f1" - integrity sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg== - dependencies: - ms "2.1.2" - -decamelize@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" - integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= - -decamelize@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-4.0.0.tgz#aa472d7bf660eb15f3494efd531cab7f2a709837" - integrity sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ== - -decompress-response@^4.2.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-4.2.1.tgz#414023cc7a302da25ce2ec82d0d5238ccafd8986" - integrity sha512-jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw== - dependencies: - mimic-response "^2.0.0" - -deep-eql@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-3.0.1.tgz#dfc9404400ad1c8fe023e7da1df1c147c4b444df" - integrity sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw== - dependencies: - type-detect "^4.0.0" - -deep-extend@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" - integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== - -delayed-stream@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" - integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= - -delegates@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" - integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= - -detect-indent@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-4.0.0.tgz#f76d064352cdf43a1cb6ce619c4ee3a9475de208" - integrity sha1-920GQ1LN9Docts5hnE7jqUdd4gg= - dependencies: - repeating "^2.0.0" - -detect-libc@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" - integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups= - -diff@5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/diff/-/diff-5.0.0.tgz#7ed6ad76d859d030787ec35855f5b1daf31d852b" - integrity sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w== - -duplexer2@~0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/duplexer2/-/duplexer2-0.0.2.tgz#c614dcf67e2fb14995a91711e5a617e8a60a31db" - integrity sha1-xhTc9n4vsUmVqRcR5aYX6KYKMds= - dependencies: - readable-stream "~1.1.9" - -duplexer2@~0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/duplexer2/-/duplexer2-0.1.4.tgz#8b12dab878c0d69e3e7891051662a32fc6bddcc1" - integrity sha1-ixLauHjA1p4+eJEFFmKjL8a93ME= - dependencies: - readable-stream "^2.0.2" - -each-series-async@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/each-series-async/-/each-series-async-1.0.1.tgz#7e3f8dfa5af934663960e5a17561362909b34328" - integrity sha512-G4zip/Ewpwr6JQxW7+2RNgkPd09h/UNec5UlvA/xKwl4qf5blyBNK6a/zjQc3MojgsxaOb93B9v3T92QU6IMVg== - -ecc-jsbn@~0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz#0fc73a9ed5f0d53c38193398523ef7e543777505" - integrity sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU= - dependencies: - jsbn "~0.1.0" - -emoji-regex@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" - integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== - -end-of-stream@^1.1.0, end-of-stream@^1.4.1: - version "1.4.4" - resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" - integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== - dependencies: - once "^1.4.0" - -env-paths@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/env-paths/-/env-paths-2.2.0.tgz#cdca557dc009152917d6166e2febe1f039685e43" - integrity sha512-6u0VYSCo/OW6IoD5WCLLy9JUGARbamfSavcNXry/eu8aHVFei6CD3Sw+VGX5alea1i9pgPHW0mbu6Xj0uBh7gA== - -es5-ext@^0.10.35, es5-ext@^0.10.50: - version "0.10.53" - resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.53.tgz#93c5a3acfdbef275220ad72644ad02ee18368de1" - integrity sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q== - dependencies: - es6-iterator "~2.0.3" - es6-symbol "~3.1.3" - next-tick "~1.0.0" - -es6-iterator@~2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.3.tgz#a7de889141a05a94b0854403b2d0a0fbfa98f3b7" - integrity sha1-p96IkUGgWpSwhUQDstCg+/qY87c= - dependencies: - d "1" - es5-ext "^0.10.35" - es6-symbol "^3.1.1" - -es6-symbol@^3.0.2, es6-symbol@^3.1.1, es6-symbol@~3.1.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.3.tgz#bad5d3c1bcdac28269f4cb331e431c78ac705d18" - integrity sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA== - dependencies: - d "^1.0.1" - ext "^1.1.2" - -escalade@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" - integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== - -escape-string-regexp@4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" - integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== - -escape-string-regexp@^1.0.2: - version "1.0.5" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" - integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= - -esutils@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" - integrity sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs= - -execspawn@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/execspawn/-/execspawn-1.0.1.tgz#8286f9dde7cecde7905fbdc04e24f368f23f8da6" - integrity sha1-gob53efOzeeQX73ATiTzaPI/jaY= - dependencies: - util-extend "^1.0.1" - -expand-template@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/expand-template/-/expand-template-2.0.3.tgz#6e14b3fcee0f3a6340ecb57d2e8918692052a47c" - integrity sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg== - -ext@^1.1.2: - version "1.4.0" - resolved "https://registry.yarnpkg.com/ext/-/ext-1.4.0.tgz#89ae7a07158f79d35517882904324077e4379244" - integrity sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A== - dependencies: - type "^2.0.0" - -extend@~3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" - integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== - -extsprintf@1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.0.2.tgz#e1080e0658e300b06294990cc70e1502235fd550" - integrity sha1-4QgOBljjALBilJkMxw4VAiNf1VA= - -fast-deep-equal@^3.1.1: - version "3.1.3" - resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" - integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== - -fast-json-stable-stringify@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2" - integrity sha1-1RQsDK7msRifh9OnYREGT4bIu/I= - -fill-range@^7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" - integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== - dependencies: - to-regex-range "^5.0.1" - -find-up@5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc" - integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng== - dependencies: - locate-path "^6.0.0" - path-exists "^4.0.0" - -flat@^5.0.2: - version "5.0.2" - resolved "https://registry.yarnpkg.com/flat/-/flat-5.0.2.tgz#8ca6fe332069ffa9d324c327198c598259ceb241" - integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ== - -forever-agent@~0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" - integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= - -form-data@~2.3.2: - version "2.3.3" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" - integrity sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ== - dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.6" - mime-types "^2.1.12" - -fs-constants@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/fs-constants/-/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad" - integrity sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow== - -fs-extra@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-5.0.0.tgz#414d0110cdd06705734d055652c5411260c31abd" - integrity sha512-66Pm4RYbjzdyeuqudYqhFiNBbCIuI9kgRqLPSHIlXHidW8NIQtVdkM1yeZ4lXwuhbTETv3EUGMNHAAw6hiundQ== - dependencies: - graceful-fs "^4.1.2" - jsonfile "^4.0.0" - universalify "^0.1.0" - -fs-minipass@^1.2.5: - version "1.2.7" - resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.7.tgz#ccff8570841e7fe4265693da88936c55aed7f7c7" - integrity sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA== - dependencies: - minipass "^2.6.0" - -fs-minipass@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb" - integrity sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg== - dependencies: - minipass "^3.0.0" - -fs.realpath@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" - integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= - -fsevents@~2.3.1: - version "2.3.2" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" - integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== - -fstream@^1.0.0, fstream@^1.0.12, fstream@~1.0.10: - version "1.0.12" - resolved "https://registry.yarnpkg.com/fstream/-/fstream-1.0.12.tgz#4e8ba8ee2d48be4f7d0de505455548eae5932045" - integrity sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg== - dependencies: - graceful-fs "^4.1.2" - inherits "~2.0.0" - mkdirp ">=0.5 0" - rimraf "2" - -gauge@~1.2.0, gauge@~1.2.5: - version "1.2.7" - resolved "https://registry.yarnpkg.com/gauge/-/gauge-1.2.7.tgz#e9cec5483d3d4ee0ef44b60a7d99e4935e136d93" - integrity sha1-6c7FSD09TuDvRLYKfZnkk14TbZM= - dependencies: - ansi "^0.3.0" - has-unicode "^2.0.0" - lodash.pad "^4.1.0" - lodash.padend "^4.1.0" - lodash.padstart "^4.1.0" - -gauge@~2.7.3: - version "2.7.4" - resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" - integrity sha1-LANAXHU4w51+s3sxcCLjJfsBi/c= - dependencies: - aproba "^1.0.3" - console-control-strings "^1.0.0" - has-unicode "^2.0.0" - object-assign "^4.1.0" - signal-exit "^3.0.0" - string-width "^1.0.1" - strip-ansi "^3.0.1" - wide-align "^1.1.0" - -get-caller-file@^2.0.5: - version "2.0.5" - resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" - integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== - -get-func-name@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/get-func-name/-/get-func-name-2.0.0.tgz#ead774abee72e20409433a066366023dd6887a41" - integrity sha1-6td0q+5y4gQJQzoGY2YCPdaIekE= - -getpass@^0.1.1: - version "0.1.7" - resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" - integrity sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo= - dependencies: - assert-plus "^1.0.0" - -ghreleases@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/ghreleases/-/ghreleases-3.0.2.tgz#1bdb6d31ec03a24a0d80f58f5e9a84a4db725818" - integrity sha512-QiR9mIYvRG7hd8JuQYoxeBNOelVuTp2DpdiByRywbCDBSJufK9Vq7VuhD8B+5uviMxZx2AEkCzye61Us9gYgnw== - dependencies: - after "~0.8.1" - ghrepos "~2.1.0" - ghutils "~3.2.0" - lodash.uniq "^4.5.0" - simple-mime "~0.1.0" - url-template "~2.0.6" - -ghrepos@~2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/ghrepos/-/ghrepos-2.1.0.tgz#abaf558b690b722c70c7ad45076f6f9be8e495e1" - integrity sha512-6GM0ohSDTAv7xD6GsKfxJiV/CajoofRyUwu0E8l29d1o6lFAUxmmyMP/FH33afA20ZrXzxxcTtN6TsYvudMoAg== - dependencies: - ghutils "~3.2.0" - -ghutils@~3.2.0: - version "3.2.6" - resolved "https://registry.yarnpkg.com/ghutils/-/ghutils-3.2.6.tgz#d43986e267da02787464d97a6489659e4609bb1f" - integrity sha512-WpYHgLQkqU7Cv147wKUEThyj6qKHCdnAG2CL9RRsRQImVdLGdVqblJ3JUnj3ToQwgm1ALPS+FXgR0448AgGPUg== - dependencies: - jsonist "~2.1.0" - xtend "~4.0.1" - -github-from-package@0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/github-from-package/-/github-from-package-0.0.0.tgz#97fb5d96bfde8973313f20e8288ef9a167fa64ce" - integrity sha1-l/tdlr/eiXMxPyDoKI75oWf6ZM4= - -glob-parent@~5.1.0: - version "5.1.2" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" - integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== - dependencies: - is-glob "^4.0.1" - -"glob@3 || 4 || 5 || 6 || 7", glob@7.1.6, glob@^7.0.3, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: - version "7.1.6" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" - integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.0.4" - once "^1.3.0" - path-is-absolute "^1.0.0" - -glob@5.0.x: - version "5.0.15" - resolved "https://registry.yarnpkg.com/glob/-/glob-5.0.15.tgz#1bc936b9e02f4a603fcc222ecf7633d30b8b93b1" - integrity sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E= - dependencies: - inflight "^1.0.4" - inherits "2" - minimatch "2 || 3" - once "^1.3.0" - path-is-absolute "^1.0.0" - -globals@^9.18.0: - version "9.18.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" - integrity sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ== - -graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.2, graceful-fs@^4.2.3: - version "4.2.3" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.3.tgz#4a12ff1b60376ef09862c2093edd908328be8423" - integrity sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ== - -"graceful-readlink@>= 1.0.0": - version "1.0.1" - resolved "https://registry.yarnpkg.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz#4cafad76bc62f02fa039b2f94e9a3dd3a391a725" - integrity sha1-TK+tdrxi8C+gObL5Tpo906ORpyU= - -growl@1.10.5: - version "1.10.5" - resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.5.tgz#f2735dc2283674fa67478b10181059355c369e5e" - integrity sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA== - -har-schema@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" - integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI= - -har-validator@~5.1.3: - version "5.1.5" - resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.5.tgz#1f0803b9f8cb20c0fa13822df1ecddb36bde1efd" - integrity sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w== - dependencies: - ajv "^6.12.3" - har-schema "^2.0.0" - -has-ansi@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" - integrity sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE= - dependencies: - ansi-regex "^2.0.0" - -has-flag@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" - integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== - -has-unicode@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" - integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk= - -he@1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" - integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== - -home-or-tmp@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz#e36c3f2d2cae7d746a857e38d18d5f32a7882db8" - integrity sha1-42w/LSyufXRqhX440Y1fMqeILbg= - dependencies: - os-homedir "^1.0.0" - os-tmpdir "^1.0.1" - -http-signature@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" - integrity sha1-muzZJRFHcvPZW2WmCruPfBj7rOE= - dependencies: - assert-plus "^1.0.0" - jsprim "^1.2.2" - sshpk "^1.7.0" - -hyperquest@~2.1.3: - version "2.1.3" - resolved "https://registry.yarnpkg.com/hyperquest/-/hyperquest-2.1.3.tgz#523127d7a343181b40bf324e231d2576edf52633" - integrity sha512-fUuDOrB47PqNK/BAMOS13v41UoaqIxqSLHX6CAbOD7OfT+/GCWO1/vPLfTNutOeXrv1ikuaZ3yux+33Z9vh+rw== - dependencies: - buffer-from "^0.1.1" - duplexer2 "~0.0.2" - through2 "~0.6.3" - -ieee754@^1.1.13: - version "1.2.1" - resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" - integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== - -inflight@^1.0.4: - version "1.0.6" - resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" - integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= - dependencies: - once "^1.3.0" - wrappy "1" - -inherits@2, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1, inherits@~2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" - integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= - -inherits@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" - integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== - -ini@~1.3.0: - version "1.3.7" - resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.7.tgz#a09363e1911972ea16d7a8851005d84cf09a9a84" - integrity sha512-iKpRpXP+CrP2jyrxvg1kMUpXDyRUFDWurxbnVT1vQPx+Wz9uCYsMIqYuSBLV+PAaZG/d7kRLKRFc9oDMsH+mFQ== - -invariant@^2.2.2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.2.tgz#9e1f56ac0acdb6bf303306f338be3b204ae60360" - integrity sha1-nh9WrArNtr8wMwbzOL47IErmA2A= - dependencies: - loose-envify "^1.0.0" - -invert-kv@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6" - integrity sha1-EEqOSqym09jNFXqO+L+rLXo//bY= - -is-binary-path@~2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" - integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== - dependencies: - binary-extensions "^2.0.0" - -is-extglob@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" - integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= - -is-finite@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa" - integrity sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko= - dependencies: - number-is-nan "^1.0.0" - -is-fullwidth-code-point@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" - integrity sha1-754xOG8DGn8NZDr4L95QxFfvAMs= - dependencies: - number-is-nan "^1.0.0" - -is-fullwidth-code-point@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" - integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== - -is-glob@^4.0.1, is-glob@~4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc" - integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg== - dependencies: - is-extglob "^2.1.1" - -is-iojs@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-iojs/-/is-iojs-1.1.0.tgz#4c11033b5d5d94d6eab3775dedc9be7d008325f1" - integrity sha1-TBEDO11dlNbqs3dd7cm+fQCDJfE= - -is-number@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" - integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== - -is-plain-obj@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287" - integrity sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA== - -is-typedarray@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" - integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= - -isarray@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" - integrity sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8= - -isarray@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" - integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= - -isexe@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" - integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= - -isstream@~0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" - integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= - -js-tokens@^3.0.0, js-tokens@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" - integrity sha1-mGbfOVECEw449/mWvOtlRDIJwls= - -js-yaml@4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.0.0.tgz#f426bc0ff4b4051926cd588c71113183409a121f" - integrity sha512-pqon0s+4ScYUvX30wxQi3PogGFAlUyH0awepWvwkj4jD4v+ova3RiYw8bmA6x2rDrEaj8i/oWKoRxpVNW+Re8Q== - dependencies: - argparse "^2.0.1" - -jsbn@~0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" - integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM= - -jsesc@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b" - integrity sha1-RsP+yMGJKxKwgz25vHYiF226s0s= - -json-schema-traverse@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" - integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== - -json-schema@0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" - integrity sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM= - -json-stringify-safe@~5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" - integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= - -json5@^0.5.1: - version "0.5.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" - integrity sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE= - -jsonfile@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" - integrity sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss= - optionalDependencies: - graceful-fs "^4.1.6" - -jsonist@~2.1.0: - version "2.1.2" - resolved "https://registry.yarnpkg.com/jsonist/-/jsonist-2.1.2.tgz#c1377311e8fc857abe7aa3df197116a911f95324" - integrity sha512-8yqmWJAC2VaYoSKQAbsfgCpGY5o/1etWzx6ZxaZrC4iGaHrHUZEo+a2MyF8w+2uTavTlHdLWaZUoR19UfBstxQ== - dependencies: - bl "~3.0.0" - hyperquest "~2.1.3" - json-stringify-safe "~5.0.1" - xtend "~4.0.1" - -jsprim@^1.2.2: - version "1.4.0" - resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.0.tgz#a3b87e40298d8c380552d8cc7628a0bb95a22918" - integrity sha1-o7h+QCmNjDgFUtjMdiigu5WiKRg= - dependencies: - assert-plus "1.0.0" - extsprintf "1.0.2" - json-schema "0.2.3" - verror "1.3.6" - -lcid@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835" - integrity sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU= - dependencies: - invert-kv "^1.0.0" - -listenercount@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/listenercount/-/listenercount-1.0.1.tgz#84c8a72ab59c4725321480c975e6508342e70937" - integrity sha1-hMinKrWcRyUyFIDJdeZQg0LnCTc= - -locate-path@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286" - integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw== - dependencies: - p-locate "^5.0.0" - -lodash.pad@^4.1.0: - version "4.5.1" - resolved "https://registry.yarnpkg.com/lodash.pad/-/lodash.pad-4.5.1.tgz#4330949a833a7c8da22cc20f6a26c4d59debba70" - integrity sha1-QzCUmoM6fI2iLMIPaibE1Z3runA= - -lodash.padend@^4.1.0: - version "4.6.1" - resolved "https://registry.yarnpkg.com/lodash.padend/-/lodash.padend-4.6.1.tgz#53ccba047d06e158d311f45da625f4e49e6f166e" - integrity sha1-U8y6BH0G4VjTEfRdpiX05J5vFm4= - -lodash.padstart@^4.1.0: - version "4.6.1" - resolved "https://registry.yarnpkg.com/lodash.padstart/-/lodash.padstart-4.6.1.tgz#d2e3eebff0d9d39ad50f5cbd1b52a7bce6bb611b" - integrity sha1-0uPuv/DZ05rVD1y9G1KnvOa7YRs= - -lodash.uniq@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" - integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M= - -lodash@^4, lodash@^4.17.4, lodash@^4.2.0: - version "4.17.19" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.19.tgz#e48ddedbe30b3321783c5b4301fbd353bc1e4a4b" - integrity sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ== - -log-symbols@4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-4.0.0.tgz#69b3cc46d20f448eccdb75ea1fa733d9e821c920" - integrity sha512-FN8JBzLx6CzeMrB0tg6pqlGU1wCrXW+ZXGH481kfsBqer0hToTIiHdjH4Mq8xJUbvATujKCvaREGWpGUionraA== - dependencies: - chalk "^4.0.0" - -loose-envify@^1.0.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.3.1.tgz#d1a8ad33fa9ce0e713d65fdd0ac8b748d478c848" - integrity sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg= - dependencies: - js-tokens "^3.0.0" - -memory-stream@0: - version "0.0.3" - resolved "https://registry.yarnpkg.com/memory-stream/-/memory-stream-0.0.3.tgz#ebe8dd1c3b8bc38c0e7941e9ddd5aebe6b4de83f" - integrity sha1-6+jdHDuLw4wOeUHp3dWuvmtN6D8= - dependencies: - readable-stream "~1.0.26-2" - -mime-db@1.44.0: - version "1.44.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.44.0.tgz#fa11c5eb0aca1334b4233cb4d52f10c5a6272f92" - integrity sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg== - -mime-types@^2.1.12, mime-types@~2.1.19: - version "2.1.27" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.27.tgz#47949f98e279ea53119f5722e0f34e529bec009f" - integrity sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w== - dependencies: - mime-db "1.44.0" - -mimic-response@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-2.1.0.tgz#d13763d35f613d09ec37ebb30bac0469c0ee8f43" - integrity sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA== - -"minimatch@2 || 3", minimatch@3, minimatch@3.0.4, minimatch@^3.0.2, minimatch@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" - integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== - dependencies: - brace-expansion "^1.1.7" - -minimist@^1.1.2, minimist@^1.2.0, minimist@^1.2.3, minimist@^1.2.5: - version "1.2.5" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" - integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== - -minipass@^2.6.0, minipass@^2.8.6, minipass@^2.9.0: - version "2.9.0" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6" - integrity sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg== - dependencies: - safe-buffer "^5.1.2" - yallist "^3.0.0" - -minipass@^3.0.0: - version "3.1.3" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.1.3.tgz#7d42ff1f39635482e15f9cdb53184deebd5815fd" - integrity sha512-Mgd2GdMVzY+x3IJ+oHnVM+KG3lA5c8tnabyJKmHSaG2kAGpudxuOf8ToDkhumF7UzME7DecbQE9uOZhNm7PuJg== - dependencies: - yallist "^4.0.0" - -minizlib@^1.2.1: - version "1.3.3" - resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.3.3.tgz#2290de96818a34c29551c8a8d301216bd65a861d" - integrity sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q== - dependencies: - minipass "^2.9.0" - -minizlib@^2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" - integrity sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg== - dependencies: - minipass "^3.0.0" - yallist "^4.0.0" - -mkdirp-classic@^0.5.2, mkdirp-classic@^0.5.3: - version "0.5.3" - resolved "https://registry.yarnpkg.com/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz#fa10c9115cc6d8865be221ba47ee9bed78601113" - integrity sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A== - -"mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1: - version "0.5.5" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" - integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== - dependencies: - minimist "^1.2.5" - -mkdirp@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" - integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== - -mocha@^8.0.1: - version "8.3.2" - resolved "https://registry.yarnpkg.com/mocha/-/mocha-8.3.2.tgz#53406f195fa86fbdebe71f8b1c6fb23221d69fcc" - integrity sha512-UdmISwr/5w+uXLPKspgoV7/RXZwKRTiTjJ2/AC5ZiEztIoOYdfKb19+9jNmEInzx5pBsCyJQzarAxqIGBNYJhg== - dependencies: - "@ungap/promise-all-settled" "1.1.2" - ansi-colors "4.1.1" - browser-stdout "1.3.1" - chokidar "3.5.1" - debug "4.3.1" - diff "5.0.0" - escape-string-regexp "4.0.0" - find-up "5.0.0" - glob "7.1.6" - growl "1.10.5" - he "1.2.0" - js-yaml "4.0.0" - log-symbols "4.0.0" - minimatch "3.0.4" - ms "2.1.3" - nanoid "3.1.20" - serialize-javascript "5.0.1" - strip-json-comments "3.1.1" - supports-color "8.1.1" - which "2.0.2" - wide-align "1.1.3" - workerpool "6.1.0" - yargs "16.2.0" - yargs-parser "20.2.4" - yargs-unparser "2.0.0" - -ms@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" - integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= - -ms@2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" - integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== - -ms@2.1.3: - version "2.1.3" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" - integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== - -nanoid@3.1.20: - version "3.1.20" - resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.20.tgz#badc263c6b1dcf14b71efaa85f6ab4c1d6cfc788" - integrity sha512-a1cQNyczgKbLX9jwbS/+d7W8fX/RfgYR7lVWwWOGIPNgK2m0MWvrGF6/m4kk6U3QcFMnZf3RIhL0v2Jgh/0Uxw== - -napi-build-utils@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/napi-build-utils/-/napi-build-utils-1.0.2.tgz#b1fddc0b2c46e380a0b7a76f984dd47c41a13806" - integrity sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg== - -next-tick@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.0.0.tgz#ca86d1fe8828169b0120208e3dc8424b9db8342c" - integrity sha1-yobR/ogoFpsBICCOPchCS524NCw= - -node-abi@^2.2.0, node-abi@^2.21.0: - version "2.21.0" - resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-2.21.0.tgz#c2dc9ebad6f4f53d6ea9b531e7b8faad81041d48" - integrity sha512-smhrivuPqEM3H5LmnY3KU6HfYv0u4QklgAxfFyRNujKUzbUcYZ+Jc2EhukB9SRcD2VpqhxM7n/MIcp1Ua1/JMg== - dependencies: - semver "^5.4.1" - -node-addon-api@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-3.1.0.tgz#98b21931557466c6729e51cb77cd39c965f42239" - integrity sha512-flmrDNB06LIl5lywUz7YlNGZH/5p0M7W28k8hzd9Lshtdh1wshD2Y+U4h9LD6KObOy1f+fEVdgprPrEymjM5uw== - -node-cpplint@~0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/node-cpplint/-/node-cpplint-0.4.0.tgz#35827fe7b95ccceff0cd7f46ede4cba44b8ef88c" - integrity sha1-NYJ/57lczO/wzX9G7eTLpEuO+Iw= - dependencies: - colors "~0.6.2" - commander "~2.2.0" - -node-gyp@^6.0.1: - version "6.1.0" - resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-6.1.0.tgz#64e31c61a4695ad304c1d5b82cf6b7c79cc79f3f" - integrity sha512-h4A2zDlOujeeaaTx06r4Vy+8MZ1679lU+wbCKDS4ZtvY2A37DESo37oejIw0mtmR3+rvNwts5B6Kpt1KrNYdNw== - dependencies: - env-paths "^2.2.0" - glob "^7.1.4" - graceful-fs "^4.2.2" - mkdirp "^0.5.1" - nopt "^4.0.1" - npmlog "^4.1.2" - request "^2.88.0" - rimraf "^2.6.3" - semver "^5.7.1" - tar "^4.4.12" - which "^1.3.1" - -node-gyp@^7.0.0: - version "7.1.2" - resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-7.1.2.tgz#21a810aebb187120251c3bcec979af1587b188ae" - integrity sha512-CbpcIo7C3eMu3dL1c3d0xw449fHIGALIJsRP4DDPHpyiW8vcriNY7ubh9TE4zEKfSxscY7PjeFnshE7h75ynjQ== - dependencies: - env-paths "^2.2.0" - glob "^7.1.4" - graceful-fs "^4.2.3" - nopt "^5.0.0" - npmlog "^4.1.2" - request "^2.88.2" - rimraf "^3.0.2" - semver "^7.3.2" - tar "^6.0.2" - which "^2.0.2" - -node-ninja@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/node-ninja/-/node-ninja-1.0.2.tgz#20a09e57b92e2df591993d4bf098ac3e727062b6" - integrity sha1-IKCeV7kuLfWRmT1L8JisPnJwYrY= - dependencies: - fstream "^1.0.0" - glob "3 || 4 || 5 || 6 || 7" - graceful-fs "^4.1.2" - minimatch "3" - mkdirp "^0.5.0" - nopt "2 || 3" - npmlog "0 || 1 || 2" - osenv "0" - path-array "^1.0.0" - request "2" - rimraf "2" - semver "2.x || 3.x || 4 || 5" - tar "^2.0.0" - which "1" - -noop-logger@^0.1.0, noop-logger@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/noop-logger/-/noop-logger-0.1.1.tgz#94a2b1633c4f1317553007d8966fd0e841b6a4c2" - integrity sha1-lKKxYzxPExdVMAfYlm/Q6EG2pMI= - -"nopt@2 || 3": - version "3.0.6" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-3.0.6.tgz#c6465dbf08abcd4db359317f79ac68a646b28ff9" - integrity sha1-xkZdvwirzU2zWTF/eaxopkayj/k= - dependencies: - abbrev "1" - -nopt@^4.0.1: - version "4.0.3" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.3.tgz#a375cad9d02fd921278d954c2254d5aa57e15e48" - integrity sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg== - dependencies: - abbrev "1" - osenv "^0.1.4" - -nopt@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-5.0.0.tgz#530942bb58a512fccafe53fe210f13a25355dc88" - integrity sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ== - dependencies: - abbrev "1" - -normalize-path@^3.0.0, normalize-path@~3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" - integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== - -npm-path@^2.0.2: - version "2.0.4" - resolved "https://registry.yarnpkg.com/npm-path/-/npm-path-2.0.4.tgz#c641347a5ff9d6a09e4d9bce5580c4f505278e64" - integrity sha512-IFsj0R9C7ZdR5cP+ET342q77uSRdtWOlWpih5eC+lu29tIDbNEgDbzgVJ5UFvYHWhxDZ5TFkJafFioO0pPQjCw== - dependencies: - which "^1.2.10" - -npm-which@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/npm-which/-/npm-which-3.0.1.tgz#9225f26ec3a285c209cae67c3b11a6b4ab7140aa" - integrity sha1-kiXybsOihcIJyuZ8OxGmtKtxQKo= - dependencies: - commander "^2.9.0" - npm-path "^2.0.2" - which "^1.2.10" - -"npmlog@0 || 1 || 2": - version "2.0.4" - resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-2.0.4.tgz#98b52530f2514ca90d09ec5b22c8846722375692" - integrity sha1-mLUlMPJRTKkNCexbIsiEZyI3VpI= - dependencies: - ansi "~0.3.1" - are-we-there-yet "~1.1.2" - gauge "~1.2.5" - -"npmlog@0 || 1 || 2 || 3 || 4", npmlog@^4.0.1, npmlog@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" - integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== - dependencies: - are-we-there-yet "~1.1.2" - console-control-strings "~1.1.0" - gauge "~2.7.3" - set-blocking "~2.0.0" - -npmlog@^1.2.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-1.2.1.tgz#28e7be619609b53f7ad1dd300a10d64d716268b6" - integrity sha1-KOe+YZYJtT960d0wChDWTXFiaLY= - dependencies: - ansi "~0.3.0" - are-we-there-yet "~1.0.0" - gauge "~1.2.0" - -number-is-nan@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" - integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= - -nw-gyp@^3.6.3: - version "3.6.5" - resolved "https://registry.yarnpkg.com/nw-gyp/-/nw-gyp-3.6.5.tgz#ccce42182229e44e7689da70675b4b8dd0ab0ab3" - integrity sha512-vYrOIYJEKpq9CfaHuiqEjV1rBYgr6uaUrPhPRiznb91LujkAUqGhQ5QqDC1bLdd+zo9jf2H0Zkl2M5zQB7+CuQ== - dependencies: - fstream "^1.0.0" - glob "^7.0.3" - graceful-fs "^4.1.2" - minimatch "^3.0.2" - mkdirp "^0.5.0" - nopt "2 || 3" - npmlog "0 || 1 || 2 || 3 || 4" - osenv "0" - request "2" - rimraf "2" - semver "~5.3.0" - tar "^2.0.0" - which "1" - -oauth-sign@~0.9.0: - version "0.9.0" - resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" - integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ== - -object-assign@^4.1.0: - version "4.1.1" - resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" - integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= - -once@^1.3.0, once@^1.3.1, once@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" - integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= - dependencies: - wrappy "1" - -os-homedir@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" - integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M= - -os-locale@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-1.4.0.tgz#20f9f17ae29ed345e8bde583b13d2009803c14d9" - integrity sha1-IPnxeuKe00XoveWDsT0gCYA8FNk= - dependencies: - lcid "^1.0.0" - -os-tmpdir@^1.0.0, os-tmpdir@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" - integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= - -osenv@0, osenv@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" - integrity sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g== - dependencies: - os-homedir "^1.0.0" - os-tmpdir "^1.0.0" - -p-limit@^3.0.2: - version "3.1.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" - integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== - dependencies: - yocto-queue "^0.1.0" - -p-locate@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834" - integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw== - dependencies: - p-limit "^3.0.2" - -path-array@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/path-array/-/path-array-1.0.1.tgz#7e2f0f35f07a2015122b868b7eac0eb2c4fec271" - integrity sha1-fi8PNfB6IBUSK4aLfqwOssT+wnE= - dependencies: - array-index "^1.0.0" - -path-exists@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" - integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== - -path-is-absolute@^1.0.0, path-is-absolute@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" - integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= - -pathval@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/pathval/-/pathval-1.1.1.tgz#8534e77a77ce7ac5a2512ea21e0fdb8fcf6c3d8d" - integrity sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ== - -performance-now@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" - integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= - -picomatch@^2.0.4, picomatch@^2.2.1: - version "2.2.2" - resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.2.tgz#21f333e9b6b8eaff02468f5146ea406d345f4dad" - integrity sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg== - -prebuild-install@^6.0.0: - version "6.1.1" - resolved "https://registry.yarnpkg.com/prebuild-install/-/prebuild-install-6.1.1.tgz#6754fa6c0d55eced7f9e14408ff9e4cba6f097b4" - integrity sha512-M+cKwofFlHa5VpTWub7GLg5RLcunYIcLqtY5pKcls/u7xaAb8FrXZ520qY8rkpYy5xw90tYCyMO0MP5ggzR3Sw== - dependencies: - detect-libc "^1.0.3" - expand-template "^2.0.3" - github-from-package "0.0.0" - minimist "^1.2.3" - mkdirp-classic "^0.5.3" - napi-build-utils "^1.0.1" - node-abi "^2.21.0" - noop-logger "^0.1.1" - npmlog "^4.0.1" - pump "^3.0.0" - rc "^1.2.7" - simple-get "^3.0.3" - tar-fs "^2.0.0" - tunnel-agent "^0.6.0" - -prebuild@^10.0.1: - version "10.0.1" - resolved "https://registry.yarnpkg.com/prebuild/-/prebuild-10.0.1.tgz#9d46a00f42b60ad1718479cc5e3d1ef4882b7f33" - integrity sha512-x0CkKDmHFwX49rTGEYJwB9jBQwJWxRzwUtP5PA9dP8khFGMm3oSFgYortxdlp0PkxB29EhWGp/KQE5g+adehYg== - dependencies: - cmake-js "~5.2.0" - detect-libc "^1.0.3" - each-series-async "^1.0.1" - execspawn "^1.0.1" - ghreleases "^3.0.2" - github-from-package "0.0.0" - glob "^7.1.6" - minimist "^1.1.2" - mkdirp "^0.5.1" - napi-build-utils "^1.0.1" - node-abi "^2.2.0" - node-gyp "^6.0.1" - node-ninja "^1.0.1" - noop-logger "^0.1.0" - npm-which "^3.0.1" - npmlog "^4.0.1" - nw-gyp "^3.6.3" - rc "^1.0.3" - run-waterfall "^1.1.6" - tar-stream "^2.1.0" - -private@^0.1.8: - version "0.1.8" - resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff" - integrity sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg== - -process-nextick-args@~1.0.6: - version "1.0.7" - resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3" - integrity sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M= - -psl@^1.1.28: - version "1.1.29" - resolved "https://registry.yarnpkg.com/psl/-/psl-1.1.29.tgz#60f580d360170bb722a797cc704411e6da850c67" - integrity sha512-AeUmQ0oLN02flVHXWh9sSJF7mcdFq0ppid/JkErufc3hGIV/AMa8Fo9VgDo/cT2jFdOWoFvHp90qqBH54W+gjQ== - -pump@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" - integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== - dependencies: - end-of-stream "^1.1.0" - once "^1.3.1" - -punycode@^2.1.0, punycode@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" - integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== - -qs@~6.5.2: - version "6.5.2" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" - integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== - -randombytes@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" - integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ== - dependencies: - safe-buffer "^5.1.0" - -rc@^1.0.3, rc@^1.2.7: - version "1.2.8" - resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" - integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== - dependencies: - deep-extend "^0.6.0" - ini "~1.3.0" - minimist "^1.2.0" - strip-json-comments "~2.0.1" - -"readable-stream@>=1.0.33-1 <1.1.0-0", readable-stream@~1.0.26-2: - version "1.0.34" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.0.34.tgz#125820e34bc842d2f2aaafafe4c2916ee32c157c" - integrity sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw= - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.1" - isarray "0.0.1" - string_decoder "~0.10.x" - -"readable-stream@^2.0.0 || ^1.1.13", readable-stream@^2.0.2, readable-stream@^2.0.6: - version "2.3.3" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.3.tgz#368f2512d79f9d46fdfc71349ae7878bbc1eb95c" - integrity sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ== - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.3" - isarray "~1.0.0" - process-nextick-args "~1.0.6" - safe-buffer "~5.1.1" - string_decoder "~1.0.3" - util-deprecate "~1.0.1" - -readable-stream@^3.0.1, readable-stream@^3.1.1, readable-stream@^3.4.0: - version "3.6.0" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" - integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== - dependencies: - inherits "^2.0.3" - string_decoder "^1.1.1" - util-deprecate "^1.0.1" - -readable-stream@~1.1.9: - version "1.1.14" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9" - integrity sha1-fPTFTvZI44EwhMY23SB54WbAgdk= - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.1" - isarray "0.0.1" - string_decoder "~0.10.x" - -readable-stream@~2.1.5: - version "2.1.5" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.1.5.tgz#66fa8b720e1438b364681f2ad1a63c618448c9d0" - integrity sha1-ZvqLcg4UOLNkaB8q0aY8YYRIydA= - dependencies: - buffer-shims "^1.0.0" - core-util-is "~1.0.0" - inherits "~2.0.1" - isarray "~1.0.0" - process-nextick-args "~1.0.6" - string_decoder "~0.10.x" - util-deprecate "~1.0.1" - -readdirp@~3.5.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.5.0.tgz#9ba74c019b15d365278d2e91bb8c48d7b4d42c9e" - integrity sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ== - dependencies: - picomatch "^2.2.1" - -regenerator-runtime@^0.10.0: - version "0.10.5" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz#336c3efc1220adcedda2c9fab67b5a7955a33658" - integrity sha1-M2w+/BIgrc7dosn6tntaeVWjNlg= - -regenerator-runtime@^0.11.0: - version "0.11.1" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9" - integrity sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg== - -repeating@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda" - integrity sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo= - dependencies: - is-finite "^1.0.0" - -request@2, request@^2.54.0, request@^2.88.0, request@^2.88.2: - version "2.88.2" - resolved "https://registry.yarnpkg.com/request/-/request-2.88.2.tgz#d73c918731cb5a87da047e207234146f664d12b3" - integrity sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw== - dependencies: - aws-sign2 "~0.7.0" - aws4 "^1.8.0" - caseless "~0.12.0" - combined-stream "~1.0.6" - extend "~3.0.2" - forever-agent "~0.6.1" - form-data "~2.3.2" - har-validator "~5.1.3" - http-signature "~1.2.0" - is-typedarray "~1.0.0" - isstream "~0.1.2" - json-stringify-safe "~5.0.1" - mime-types "~2.1.19" - oauth-sign "~0.9.0" - performance-now "^2.1.0" - qs "~6.5.2" - safe-buffer "^5.1.2" - tough-cookie "~2.5.0" - tunnel-agent "^0.6.0" - uuid "^3.3.2" - -require-directory@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" - integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= - -rimraf@2, rimraf@^2.6.3: - version "2.7.1" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" - integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== - dependencies: - glob "^7.1.3" - -rimraf@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" - integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== - dependencies: - glob "^7.1.3" - -rsvp@^3.0.13: - version "3.6.2" - resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-3.6.2.tgz#2e96491599a96cde1b515d5674a8f7a91452926a" - integrity sha512-OfWGQTb9vnwRjwtA2QwpG2ICclHC3pgXZO5xt8H2EfgDquO0qVdSb5T88L4qJVAEugbS56pAuV4XZM58UX8ulw== - -run-waterfall@^1.1.6: - version "1.1.7" - resolved "https://registry.yarnpkg.com/run-waterfall/-/run-waterfall-1.1.7.tgz#ae368b549b2f5171f86c2924492cab3352a6e9c5" - integrity sha512-iFPgh7SatHXOG1ClcpdwHI63geV3Hc/iL6crGSyBlH2PY7Rm/za+zoKz6FfY/Qlw5K7JwSol8pseO8fN6CMhhQ== - -safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@~5.1.0, safe-buffer@~5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853" - integrity sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg== - -safe-buffer@^5.1.2, safe-buffer@~5.2.0: - version "5.2.1" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" - integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== - -safer-buffer@^2.0.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" - integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== - -"semver@2.x || 3.x || 4 || 5", semver@^5.0.3, semver@^5.4.1, semver@^5.7.1: - version "5.7.1" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" - integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== - -semver@^4.3.3: - version "4.3.6" - resolved "https://registry.yarnpkg.com/semver/-/semver-4.3.6.tgz#300bc6e0e86374f7ba61068b5b1ecd57fc6532da" - integrity sha1-MAvG4OhjdPe6YQaLWx7NV/xlMto= - -semver@^7.3.2: - version "7.3.2" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.2.tgz#604962b052b81ed0786aae84389ffba70ffd3938" - integrity sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ== - -semver@~5.3.0: - version "5.3.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" - integrity sha1-myzl094C0XxgEq0yaqa00M9U+U8= - -serialize-javascript@5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-5.0.1.tgz#7886ec848049a462467a97d3d918ebb2aaf934f4" - integrity sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA== - dependencies: - randombytes "^2.1.0" - -set-blocking@~2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" - integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= - -setimmediate@~1.0.4: - version "1.0.5" - resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" - integrity sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU= - -signal-exit@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" - integrity sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0= - -simple-concat@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/simple-concat/-/simple-concat-1.0.1.tgz#f46976082ba35c2263f1c8ab5edfe26c41c9552f" - integrity sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q== - -simple-get@^3.0.3: - version "3.1.0" - resolved "https://registry.yarnpkg.com/simple-get/-/simple-get-3.1.0.tgz#b45be062435e50d159540b576202ceec40b9c6b3" - integrity sha512-bCR6cP+aTdScaQCnQKbPKtJOKDp/hj9EDLJo3Nw4y1QksqaovlW/bnptB6/c1e+qmNIDHRK+oXFDdEqBT8WzUA== - dependencies: - decompress-response "^4.2.0" - once "^1.3.1" - simple-concat "^1.0.0" - -simple-mime@~0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/simple-mime/-/simple-mime-0.1.0.tgz#95f517c4f466d7cff561a71fc9dab2596ea9ef2e" - integrity sha1-lfUXxPRm18/1YacfydqyWW6p7y4= - -slash@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55" - integrity sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU= - -source-map-support@^0.4.15: - version "0.4.18" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.18.tgz#0286a6de8be42641338594e97ccea75f0a2c585f" - integrity sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA== - dependencies: - source-map "^0.5.6" - -source-map-support@~0.2.8: - version "0.2.10" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.2.10.tgz#ea5a3900a1c1cb25096a0ae8cc5c2b4b10ded3dc" - integrity sha1-6lo5AKHByyUJagrozFwrSxDe09w= - dependencies: - source-map "0.1.32" - -source-map@0.1.32: - version "0.1.32" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.32.tgz#c8b6c167797ba4740a8ea33252162ff08591b266" - integrity sha1-yLbBZ3l7pHQKjqMyUhYv8IWRsmY= - dependencies: - amdefine ">=0.0.4" - -source-map@^0.5.6, source-map@^0.5.7: - version "0.5.7" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" - integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= - -splitargs@0: - version "0.0.7" - resolved "https://registry.yarnpkg.com/splitargs/-/splitargs-0.0.7.tgz#fe9f7ae657371b33b10cb80da143cf8249cf6b3b" - integrity sha1-/p965lc3GzOxDLgNoUPPgknPazs= - -sshpk@^1.7.0: - version "1.14.2" - resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.14.2.tgz#c6fc61648a3d9c4e764fd3fcdf4ea105e492ba98" - integrity sha1-xvxhZIo9nE52T9P8306hBeSSupg= - dependencies: - asn1 "~0.2.3" - assert-plus "^1.0.0" - dashdash "^1.12.0" - getpass "^0.1.1" - safer-buffer "^2.0.2" - optionalDependencies: - bcrypt-pbkdf "^1.0.0" - ecc-jsbn "~0.1.1" - jsbn "~0.1.0" - tweetnacl "~0.14.0" - -string-width@^1.0.1, string-width@^1.0.2, "string-width@^1.0.2 || 2": - version "1.0.2" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" - integrity sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M= - dependencies: - code-point-at "^1.0.0" - is-fullwidth-code-point "^1.0.0" - strip-ansi "^3.0.0" - -string-width@^4.1.0, string-width@^4.2.0: - version "4.2.2" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.2.tgz#dafd4f9559a7585cfba529c6a0a4f73488ebd4c5" - integrity sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA== - dependencies: - emoji-regex "^8.0.0" - is-fullwidth-code-point "^3.0.0" - strip-ansi "^6.0.0" - -string_decoder@^1.1.1: - version "1.3.0" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" - integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== - dependencies: - safe-buffer "~5.2.0" - -string_decoder@~0.10.x: - version "0.10.31" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" - integrity sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ= - -string_decoder@~1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.0.3.tgz#0fc67d7c141825de94282dd536bec6b9bce860ab" - integrity sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ== - dependencies: - safe-buffer "~5.1.0" - -strip-ansi@^3.0.0, strip-ansi@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" - integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= - dependencies: - ansi-regex "^2.0.0" - -strip-ansi@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.0.tgz#0b1571dd7669ccd4f3e06e14ef1eed26225ae532" - integrity sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w== - dependencies: - ansi-regex "^5.0.0" - -strip-json-comments@3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" - integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== - -strip-json-comments@~2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" - integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= - -supports-color@8.1.1: - version "8.1.1" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" - integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== - dependencies: - has-flag "^4.0.0" - -supports-color@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" - integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc= - -supports-color@^7.1.0: - version "7.2.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" - integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== - dependencies: - has-flag "^4.0.0" - -tar-fs@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-2.1.1.tgz#489a15ab85f1f0befabb370b7de4f9eb5cbe8784" - integrity sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng== - dependencies: - chownr "^1.1.1" - mkdirp-classic "^0.5.2" - pump "^3.0.0" - tar-stream "^2.1.4" - -tar-stream@^2.1.0, tar-stream@^2.1.4: - version "2.1.4" - resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-2.1.4.tgz#c4fb1a11eb0da29b893a5b25476397ba2d053bfa" - integrity sha512-o3pS2zlG4gxr67GmFYBLlq+dM8gyRGUOvsrHclSkvtVtQbjV0s/+ZE8OpICbaj8clrX3tjeHngYGP7rweaBnuw== - dependencies: - bl "^4.0.3" - end-of-stream "^1.4.1" - fs-constants "^1.0.0" - inherits "^2.0.3" - readable-stream "^3.1.1" - -tar@^2.0.0: - version "2.2.2" - resolved "https://registry.yarnpkg.com/tar/-/tar-2.2.2.tgz#0ca8848562c7299b8b446ff6a4d60cdbb23edc40" - integrity sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA== - dependencies: - block-stream "*" - fstream "^1.0.12" - inherits "2" - -tar@^4, tar@^4.4.12: - version "4.4.13" - resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.13.tgz#43b364bc52888d555298637b10d60790254ab525" - integrity sha512-w2VwSrBoHa5BsSyH+KxEqeQBAllHhccyMFVHtGtdMpF4W7IRWfZjFiQceJPChOeTsSDVUpER2T8FA93pr0L+QA== - dependencies: - chownr "^1.1.1" - fs-minipass "^1.2.5" - minipass "^2.8.6" - minizlib "^1.2.1" - mkdirp "^0.5.0" - safe-buffer "^5.1.2" - yallist "^3.0.3" - -tar@^6.0.2: - version "6.0.5" - resolved "https://registry.yarnpkg.com/tar/-/tar-6.0.5.tgz#bde815086e10b39f1dcd298e89d596e1535e200f" - integrity sha512-0b4HOimQHj9nXNEAA7zWwMM91Zhhba3pspja6sQbgTpynOJf+bkjBnfybNYzbpLbnwXnbyB4LOREvlyXLkCHSg== - dependencies: - chownr "^2.0.0" - fs-minipass "^2.0.0" - minipass "^3.0.0" - minizlib "^2.1.1" - mkdirp "^1.0.3" - yallist "^4.0.0" - -through2@~0.6.3: - version "0.6.5" - resolved "https://registry.yarnpkg.com/through2/-/through2-0.6.5.tgz#41ab9c67b29d57209071410e1d7a7a968cd3ad48" - integrity sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg= - dependencies: - readable-stream ">=1.0.33-1 <1.1.0-0" - xtend ">=4.0.0 <4.1.0-0" - -to-fast-properties@^1.0.1, to-fast-properties@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47" - integrity sha1-uDVx+k2MJbguIxsG46MFXeTKGkc= - -to-regex-range@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" - integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== - dependencies: - is-number "^7.0.0" - -tough-cookie@~2.5.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2" - integrity sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g== - dependencies: - psl "^1.1.28" - punycode "^2.1.1" - -traceur@0.0.x: - version "0.0.111" - resolved "https://registry.yarnpkg.com/traceur/-/traceur-0.0.111.tgz#c04de74d14696c3373427de4fc08ecaf913fc3a1" - integrity sha1-wE3nTRRpbDNzQn3k/Ajsr5E/w6E= - dependencies: - commander "2.9.x" - glob "5.0.x" - rsvp "^3.0.13" - semver "^4.3.3" - source-map-support "~0.2.8" - -"traverse@>=0.3.0 <0.4": - version "0.3.9" - resolved "https://registry.yarnpkg.com/traverse/-/traverse-0.3.9.tgz#717b8f220cc0bb7b44e40514c22b2e8bbc70d8b9" - integrity sha1-cXuPIgzAu3tE5AUUwisui7xw2Lk= - -trim-right@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" - integrity sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM= - -tunnel-agent@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" - integrity sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0= - dependencies: - safe-buffer "^5.0.1" - -tweetnacl@^0.14.3, tweetnacl@~0.14.0: - version "0.14.5" - resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" - integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q= - -type-detect@^4.0.0, type-detect@^4.0.5: - version "4.0.8" - resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" - integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== - -type@^1.0.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/type/-/type-1.2.0.tgz#848dd7698dafa3e54a6c479e759c4bc3f18847a0" - integrity sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg== - -type@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/type/-/type-2.1.0.tgz#9bdc22c648cf8cf86dd23d32336a41cfb6475e3f" - integrity sha512-G9absDWvhAWCV2gmF1zKud3OyC61nZDwWvBL2DApaVFogI07CprggiQAOOjvp2NRjYWFzPyu7vwtDrQFq8jeSA== - -universalify@^0.1.0: - version "0.1.2" - resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" - integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== - -unzipper@^0.8.13: - version "0.8.14" - resolved "https://registry.yarnpkg.com/unzipper/-/unzipper-0.8.14.tgz#ade0524cd2fc14d11b8de258be22f9d247d3f79b" - integrity sha512-8rFtE7EP5ssOwGpN2dt1Q4njl0N1hUXJ7sSPz0leU2hRdq6+pra57z4YPBlVqm40vcgv6ooKZEAx48fMTv9x4w== - dependencies: - big-integer "^1.6.17" - binary "~0.3.0" - bluebird "~3.4.1" - buffer-indexof-polyfill "~1.0.0" - duplexer2 "~0.1.4" - fstream "~1.0.10" - listenercount "~1.0.1" - readable-stream "~2.1.5" - setimmediate "~1.0.4" - -uri-js@^4.2.2: - version "4.2.2" - resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0" - integrity sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ== - dependencies: - punycode "^2.1.0" - -url-join@0: - version "0.0.1" - resolved "https://registry.yarnpkg.com/url-join/-/url-join-0.0.1.tgz#1db48ad422d3402469a87f7d97bdebfe4fb1e3c8" - integrity sha1-HbSK1CLTQCRpqH99l73r/k+x48g= - -url-template@~2.0.6: - version "2.0.8" - resolved "https://registry.yarnpkg.com/url-template/-/url-template-2.0.8.tgz#fc565a3cccbff7730c775f5641f9555791439f21" - integrity sha1-/FZaPMy/93MMd19WQflVV5FDnyE= - -util-deprecate@^1.0.1, util-deprecate@~1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" - integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= - -util-extend@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/util-extend/-/util-extend-1.0.3.tgz#a7c216d267545169637b3b6edc6ca9119e2ff93f" - integrity sha1-p8IW0mdUUWljeztu3GypEZ4v+T8= - -uuid@^3.3.2: - version "3.4.0" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" - integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== - -verror@1.3.6: - version "1.3.6" - resolved "https://registry.yarnpkg.com/verror/-/verror-1.3.6.tgz#cff5df12946d297d2baaefaa2689e25be01c005c" - integrity sha1-z/XfEpRtKX0rqu+qJoniW+AcAFw= - dependencies: - extsprintf "1.0.2" - -which@1, which@^1.0.9, which@^1.2.10, which@^1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" - integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== - dependencies: - isexe "^2.0.0" - -which@2.0.2, which@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" - integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== - dependencies: - isexe "^2.0.0" - -wide-align@1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457" - integrity sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA== - dependencies: - string-width "^1.0.2 || 2" - -wide-align@^1.1.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.2.tgz#571e0f1b0604636ebc0dfc21b0339bbe31341710" - integrity sha512-ijDLlyQ7s6x1JgCLur53osjm/UXUYD9+0PbYKrBsYisYXzCxN+HC3mYDNy/dWdmf3AwqwU3CXwDCvsNgGK1S0w== - dependencies: - string-width "^1.0.2" - -window-size@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.4.tgz#f8e1aa1ee5a53ec5bf151ffa09742a6ad7697876" - integrity sha1-+OGqHuWlPsW/FR/6CXQqatdpeHY= - -workerpool@6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-6.1.0.tgz#a8e038b4c94569596852de7a8ea4228eefdeb37b" - integrity sha512-toV7q9rWNYha963Pl/qyeZ6wG+3nnsyvolaNUS8+R5Wtw6qJPTxIlOP1ZSvcGhEJw+l3HMMmtiNo9Gl61G4GVg== - -wrap-ansi@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" - integrity sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU= - dependencies: - string-width "^1.0.1" - strip-ansi "^3.0.1" - -wrap-ansi@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" - integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== - dependencies: - ansi-styles "^4.0.0" - string-width "^4.1.0" - strip-ansi "^6.0.0" - -wrappy@1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" - integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= - -"xtend@>=4.0.0 <4.1.0-0", xtend@~4.0.1: - version "4.0.2" - resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" - integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== - -y18n@^3.2.0: - version "3.2.2" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.2.tgz#85c901bd6470ce71fc4bb723ad209b70f7f28696" - integrity sha512-uGZHXkHnhF0XeeAPgnKfPv1bgKAYyVvmNL1xlKsPYZPaIHxGti2hHqvOCQv71XMsLxu1QjergkqogUnms5D3YQ== - -y18n@^5.0.5: - version "5.0.5" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.5.tgz#8769ec08d03b1ea2df2500acef561743bbb9ab18" - integrity sha512-hsRUr4FFrvhhRH12wOdfs38Gy7k2FFzB9qgN9v3aLykRq0dRcdcpz5C9FxdS2NuhOrI/628b/KSTJ3rwHysYSg== - -yallist@^3.0.0, yallist@^3.0.3: - version "3.1.1" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" - integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== - -yallist@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" - integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== - -yargs-parser@20.2.4, yargs-parser@^20.2.2: - version "20.2.4" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.4.tgz#b42890f14566796f85ae8e3a25290d205f154a54" - integrity sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA== - -yargs-unparser@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/yargs-unparser/-/yargs-unparser-2.0.0.tgz#f131f9226911ae5d9ad38c432fe809366c2325eb" - integrity sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA== - dependencies: - camelcase "^6.0.0" - decamelize "^4.0.0" - flat "^5.0.2" - is-plain-obj "^2.1.0" - -yargs@16.2.0: - version "16.2.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" - integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== - dependencies: - cliui "^7.0.2" - escalade "^3.1.1" - get-caller-file "^2.0.5" - require-directory "^2.1.1" - string-width "^4.2.0" - y18n "^5.0.5" - yargs-parser "^20.2.2" - -yargs@^3.6.0: - version "3.32.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.32.0.tgz#03088e9ebf9e756b69751611d2a5ef591482c995" - integrity sha1-AwiOnr+edWtpdRYR0qXvWRSCyZU= - dependencies: - camelcase "^2.0.1" - cliui "^3.0.3" - decamelize "^1.1.1" - os-locale "^1.4.0" - string-width "^1.0.1" - window-size "^0.1.4" - y18n "^3.2.0" - -yocto-queue@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" - integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== From c774708a054538ea34868d4656d41fb6a198a569 Mon Sep 17 00:00:00 2001 From: laalsaas Date: Sat, 4 Feb 2023 15:44:34 +0100 Subject: [PATCH 064/198] svt-av1: unbreak on linux-aarch64 --- pkgs/tools/video/svt-av1/default.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/tools/video/svt-av1/default.nix b/pkgs/tools/video/svt-av1/default.nix index 32bc31346a00..8cf9dc849896 100644 --- a/pkgs/tools/video/svt-av1/default.nix +++ b/pkgs/tools/video/svt-av1/default.nix @@ -43,6 +43,7 @@ stdenv.mkDerivation (finalAttrs: { license = with licenses; [ aom bsd3 ]; maintainers = with maintainers; [ Madouura ]; platforms = platforms.unix; - broken = stdenv.isAarch64; # undefined reference to `cpuinfo_arm_linux_init' + # error: use of undeclared identifier 'kCVPixelFormatType_444YpCbCr16BiPlanarVideoRange' + broken = stdenv.isAarch64 && stdenv.isDarwin; }; }) From 258d80b66c1eed2a54bdb2a4cfd4156b7a5a9e9d Mon Sep 17 00:00:00 2001 From: amesgen Date: Tue, 7 Feb 2023 21:14:48 +0100 Subject: [PATCH 065/198] wizer: add amesgen as maintainer --- pkgs/development/tools/wizer/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/tools/wizer/default.nix b/pkgs/development/tools/wizer/default.nix index f79c96f54518..5c931770ac0a 100644 --- a/pkgs/development/tools/wizer/default.nix +++ b/pkgs/development/tools/wizer/default.nix @@ -26,7 +26,7 @@ rustPlatform.buildRustPackage rec { description = "The WebAssembly pre-initializer"; homepage = "https://github.com/bytecodealliance/wizer"; license = licenses.asl20; - maintainers = with maintainers; [ lucperkins ]; + maintainers = with maintainers; [ lucperkins amesgen ]; broken = stdenv.isx86_64 && stdenv.isDarwin; }; } From 4ddacf30c81fd94e50e24361a02e3e5995270286 Mon Sep 17 00:00:00 2001 From: amesgen Date: Tue, 7 Feb 2023 21:35:33 +0100 Subject: [PATCH 066/198] wizer: 1.4.0 -> 1.6.0 --- pkgs/development/tools/wizer/default.nix | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/pkgs/development/tools/wizer/default.nix b/pkgs/development/tools/wizer/default.nix index 5c931770ac0a..727b3f256d43 100644 --- a/pkgs/development/tools/wizer/default.nix +++ b/pkgs/development/tools/wizer/default.nix @@ -1,16 +1,20 @@ -{ lib, stdenv, rustPlatform, fetchCrate }: +{ lib, stdenv, rustPlatform, fetchFromGitHub }: rustPlatform.buildRustPackage rec { pname = "wizer"; - version = "1.4.0"; + version = "1.6.0"; - src = fetchCrate { - inherit pname version; - - sha256 = "sha256-3Hc3KKqtbZtvD+3lb/W7+AyrwPukJyxpUe94KGQlzBI="; + # the crate does not contain files which are necessary for the tests + # see https://github.com/bytecodealliance/wizer/commit/3a95e27ce42f1fdaef07b52988e4699eaa221e04 + src = fetchFromGitHub { + owner = "bytecodealliance"; + repo = "wizer"; + # see https://github.com/bytecodealliance/wizer/pull/62 + rev = "e74c6e59562c4b7edcda506674db8aead878a893"; + sha256 = "sha256-bVxjcb231Ygz+z+8D1U2YQqEdIKsostxISgYt2KecXc="; }; - cargoSha256 = "sha256-zv36/W7dNpIupYn8TS+NaF7uX+BVjrI6AW6Hrlqr8Xg="; + cargoSha256 = "sha256-S9h47aGG5UhwNoOnUHFrtEyByg8iCMC88Cspb/6tb8c="; cargoBuildFlags = [ "--bin" pname ]; @@ -27,6 +31,5 @@ rustPlatform.buildRustPackage rec { homepage = "https://github.com/bytecodealliance/wizer"; license = licenses.asl20; maintainers = with maintainers; [ lucperkins amesgen ]; - broken = stdenv.isx86_64 && stdenv.isDarwin; }; } From 49786f55e158fd4c8bc4c6f5ee96bede1250f646 Mon Sep 17 00:00:00 2001 From: John Ericson Date: Tue, 7 Feb 2023 10:16:33 -0500 Subject: [PATCH 067/198] fftw: Add `meta.pkgConfigModules` and test Add `fftwQuad` to `all-packages.nix` too so that variant is tested. Co-authored-by: Sandro --- pkgs/development/libraries/fftw/default.nix | 19 +++++++++++++++---- pkgs/top-level/all-packages.nix | 1 + 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/pkgs/development/libraries/fftw/default.nix b/pkgs/development/libraries/fftw/default.nix index c5edb5926209..9d83fdb4878e 100644 --- a/pkgs/development/libraries/fftw/default.nix +++ b/pkgs/development/libraries/fftw/default.nix @@ -12,18 +12,19 @@ , enableMpi ? false , mpi , withDoc ? stdenv.cc.isGNU +, testers }: assert lib.elem precision [ "single" "double" "long-double" "quad-precision" ]; -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "fftw-${precision}"; version = "3.3.10"; src = fetchurl { urls = [ - "https://fftw.org/fftw-${version}.tar.gz" - "ftp://ftp.fftw.org/pub/fftw/fftw-${version}.tar.gz" + "https://fftw.org/fftw-${finalAttrs.version}.tar.gz" + "ftp://ftp.fftw.org/pub/fftw/fftw-${finalAttrs.version}.tar.gz" ]; sha256 = "sha256-VskyVJhSzdz6/as4ILAgDHdCZ1vpIXnlnmIVs0DiZGc="; }; @@ -60,11 +61,21 @@ stdenv.mkDerivation rec { nativeCheckInputs = [ perl ]; + passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage; + meta = with lib; { description = "Fastest Fourier Transform in the West library"; homepage = "http://www.fftw.org/"; license = licenses.gpl2Plus; maintainers = [ maintainers.spwhitt ]; + pkgConfigModules = [ + { + "single" = "fftw3f"; + "double" = "fftw3"; + "long-double" = "fftw3l"; + "quad-precision" = "fftw3q"; + }.${precision} + ]; platforms = platforms.unix; }; -} +}) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index e2ff22c0ad24..7ff5ab82f3fc 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -19593,6 +19593,7 @@ with pkgs; fftwSinglePrec = fftw.override { precision = "single"; }; fftwFloat = fftwSinglePrec; # the configure option is just an alias fftwLongDouble = fftw.override { precision = "long-double"; }; + fftwQuad = fftw.override { precision = "quad-precision"; }; fftwMpi = fftw.override { enableMpi = true; }; filter-audio = callPackage ../development/libraries/filter-audio {}; From 51d4fa881b70be4723ad08bf43888a5e2e4fd8c8 Mon Sep 17 00:00:00 2001 From: John Ericson Date: Tue, 7 Feb 2023 10:23:02 -0500 Subject: [PATCH 068/198] ncurses: Add `meta.pkgConfigModules` and test Co-authored-by: Sandro --- pkgs/development/libraries/ncurses/default.nix | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/ncurses/default.nix b/pkgs/development/libraries/ncurses/default.nix index 4caf05ef3cfe..4e2c731d7e2b 100644 --- a/pkgs/development/libraries/ncurses/default.nix +++ b/pkgs/development/libraries/ncurses/default.nix @@ -8,14 +8,15 @@ , withCxx ? !stdenv.hostPlatform.useAndroidPrebuilt , mouseSupport ? false, gpm , unicodeSupport ? true +, testers }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { version = "6.4"; pname = "ncurses" + lib.optionalString (abiVersion == "5") "-abi5-compat"; src = fetchurl { - url = "https://invisible-island.net/archives/ncurses/ncurses-${version}.tar.gz"; + url = "https://invisible-island.net/archives/ncurses/ncurses-${finalAttrs.version}.tar.gz"; hash = "sha256-aTEoPZrIfFBz8wtikMTHXyFjK7T8NgOsgQCBK+0kgVk="; }; @@ -169,11 +170,20 @@ stdenv.mkDerivation rec { ANSI/POSIX-conforming UNIX. It has even been ported to OS/2 Warp! ''; license = licenses.mit; + pkgConfigModules = let + base = [ + "form" + "menu" + "ncurses" + "panel" + ] ++ lib.optional withCxx "ncurses++"; + in base ++ lib.optionals unicodeSupport (map (p: p + "w") base); platforms = platforms.all; }; passthru = { ldflags = "-lncurses"; inherit unicodeSupport abiVersion; + tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage; }; -} +}) From 79375858dd758bef33ddb59ca349a966fe660fcf Mon Sep 17 00:00:00 2001 From: amesgen Date: Tue, 7 Feb 2023 22:08:11 +0100 Subject: [PATCH 069/198] wizer: add version test --- pkgs/development/tools/wizer/default.nix | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/pkgs/development/tools/wizer/default.nix b/pkgs/development/tools/wizer/default.nix index 727b3f256d43..5f84e1e01ff0 100644 --- a/pkgs/development/tools/wizer/default.nix +++ b/pkgs/development/tools/wizer/default.nix @@ -1,4 +1,10 @@ -{ lib, stdenv, rustPlatform, fetchFromGitHub }: +{ lib +, stdenv +, rustPlatform +, fetchFromGitHub +, testers +, wizer +}: rustPlatform.buildRustPackage rec { pname = "wizer"; @@ -26,6 +32,10 @@ rustPlatform.buildRustPackage rec { export HOME=$(mktemp -d) ''; + passthru.tests = { + version = testers.testVersion { package = wizer; }; + }; + meta = with lib; { description = "The WebAssembly pre-initializer"; homepage = "https://github.com/bytecodealliance/wizer"; From 1ef9f06820b7ccfe59cc3f4df04e9b3b3df430cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rafael=20Fern=C3=A1ndez=20L=C3=B3pez?= Date: Tue, 7 Feb 2023 22:23:23 +0100 Subject: [PATCH 070/198] fastly: 5.1.1 -> 6.0.0 --- pkgs/misc/fastly/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/misc/fastly/default.nix b/pkgs/misc/fastly/default.nix index 1542ed14fafe..1a737ae3ab45 100644 --- a/pkgs/misc/fastly/default.nix +++ b/pkgs/misc/fastly/default.nix @@ -8,13 +8,13 @@ buildGoModule rec { pname = "fastly"; - version = "5.1.1"; + version = "6.0.0"; src = fetchFromGitHub { owner = "fastly"; repo = "cli"; rev = "refs/tags/v${version}"; - hash = "sha256-gPToEeLymKIRjL52wb5AjMpDM6vU0Yb0rbcpouev4rQ="; + hash = "sha256-meUKWAFKT6EgHtzgR6jjDCA8EUD1kVoT3reXaRheukw="; # The git commit is part of the `fastly version` original output; # leave that output the same in nixpkgs. Use the `.git` directory # to retrieve the commit SHA, and remove the directory afterwards, @@ -49,8 +49,8 @@ buildGoModule rec { ]; preBuild = let cliConfigToml = fetchurl { - url = "https://web.archive.org/web/20221224152051/https://developer.fastly.com/api/internal/cli-config"; - hash = "sha256-IjakfeqjHshlGoamRJTnhUC8cTVMIY63F3vO6I/ZHO4="; + url = "https://web.archive.org/web/20230207211120/https://developer.fastly.com/api/internal/cli-config"; + hash = "sha256-Vkl8V5AkiJMZLswSN0vTnz7S7/5lXftlWD5UZh//vUw="; }; in '' cp ${cliConfigToml} ./pkg/config/config.toml From a5b2cf49b93a4c5edb190fd216355dfde6d84280 Mon Sep 17 00:00:00 2001 From: fleaz Date: Tue, 7 Feb 2023 16:30:52 +0100 Subject: [PATCH 071/198] gcfflasher: init at 4.0.3-beta --- pkgs/applications/misc/gcfflasher/default.nix | 46 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 48 insertions(+) create mode 100644 pkgs/applications/misc/gcfflasher/default.nix diff --git a/pkgs/applications/misc/gcfflasher/default.nix b/pkgs/applications/misc/gcfflasher/default.nix new file mode 100644 index 000000000000..14bc6ad012e0 --- /dev/null +++ b/pkgs/applications/misc/gcfflasher/default.nix @@ -0,0 +1,46 @@ +{ lib +, stdenv +, fetchFromGitHub +, pkg-config +, libgpiod +, cmake +}: + +stdenv.mkDerivation rec { + pname = "gcfflasher"; + version = "4.0.3-beta"; + + src = fetchFromGitHub { + owner = "dresden-elektronik"; + repo = pname; + rev = "refs/tags/v${version}"; + hash = "sha256-m+iDBfsHo+PLYd3K8JaKwhIXcnj+Q8w7gIgmHp+0plk="; + }; + + nativeBuildInputs = [ + pkg-config + cmake + ]; + + postPatch = '' + substituteInPlace CMakeLists.txt \ + --replace 'main_windows.c' 'main_posix.c' + ''; + + buildInputs = lib.optionals stdenv.isLinux [ + libgpiod + ]; + + installPhase = '' + runHook preInstall + install -Dm0755 GCFFlasher $out/bin/GCFFlasher + runHook postInstall + ''; + + meta = with lib; { + description = "CFFlasher is the tool to program the firmware of dresden elektronik's Zigbee products"; + license = licenses.bsd3; + homepage = "https://github.com/dresden-elektronik/gcfflasher"; + maintainers = with maintainers; [ fleaz ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index e35f80aa819c..cafd2c68c3a3 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7353,6 +7353,8 @@ with pkgs; gtk = gtk2-x11; }; + gcfflasher = callPackage ../applications/misc/gcfflasher { }; + gdmap = callPackage ../tools/system/gdmap { }; gef = callPackage ../development/tools/misc/gef { }; From 93e438cc07e3dabb43595efe98c0d39f15630f26 Mon Sep 17 00:00:00 2001 From: Michael Weiss Date: Tue, 7 Feb 2023 23:08:06 +0100 Subject: [PATCH 072/198] chromium: 109.0.5414.119 -> 110.0.5481.77 https://chromereleases.googleblog.com/2023/02/stable-channel-update-for-desktop.html This update includes 15 security fixes. CVEs: CVE-2023-0696 CVE-2023-0697 CVE-2023-0698 CVE-2023-0699 CVE-2023-0700 CVE-2023-0701 CVE-2023-0702 CVE-2023-0703 CVE-2023-0704 CVE-2023-0705 --- .../browsers/chromium/upstream-info.json | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/pkgs/applications/networking/browsers/chromium/upstream-info.json b/pkgs/applications/networking/browsers/chromium/upstream-info.json index ead92ac3aec7..bd72ef447e3f 100644 --- a/pkgs/applications/networking/browsers/chromium/upstream-info.json +++ b/pkgs/applications/networking/browsers/chromium/upstream-info.json @@ -1,21 +1,21 @@ { "stable": { - "version": "109.0.5414.119", - "sha256": "0bdyb14v12izxkldq27jx532p0bid3wdwfpd1mwm7jqswxgfzkfb", - "sha256bin64": "0iap6i4zmflp4fsj16knwdp03gixsdkbys0scbvvzs3fzy2r5zkx", + "version": "110.0.5481.77", + "sha256": "1kl1k29sr5qw8pg7shvizw4b37fxjlgah56p57kq641iqhnsnj73", + "sha256bin64": "0jjdgfps6siy9hk2r553vvh0jmkn987ad77sv2zqs9gvx0vsrwgp", "deps": { "gn": { - "version": "2022-11-10", + "version": "2022-12-12", "url": "https://gn.googlesource.com/gn", - "rev": "1c4151ff5c1d6fbf7fa800b8d4bb34d3abc03a41", - "sha256": "02621c9nqpr4pwcapy31x36l5kbyd0vdgd0wdaxj5p8hrxk67d6b" + "rev": "5e19d2fb166fbd4f6f32147fbb2f497091a54ad8", + "sha256": "1b5fwldfmkkbpp5x63n1dxv0nc965hphc8rm8ah7zg44zscm9z30" } }, "chromedriver": { - "version": "109.0.5414.74", - "sha256_linux": "1mhnw4maixwfhrz3r3mhpr9bl9hn7cvr2ji6y6ai32hxa1ix9m6f", - "sha256_darwin": "0w46xd05m7irfxqsfnjwgd2v65c9vgnh8awaknqgh02wmdgx3nm0", - "sha256_darwin_aarch64": "0amb2kd4cq4clir9gqr1b1mdy46m8nwzka227xxjd2i14vwzckb0" + "version": "110.0.5481.30", + "sha256_linux": "08j28ahyahlgmy67hcm8b1vd4kilvf2yvc25746a46gdf8zz0nmw", + "sha256_darwin": "0xlq0fi9g15yvd6ysqcfkxpbr37av32h0f3af9vxl8vbywjfsxn4", + "sha256_darwin_aarch64": "03j47ha9janbawbjxy9n84sx70iisk6qr0bvb218cq5j1d5x058b" } }, "beta": { From b9f654c89c8acc5d46b5084d6fa8ad6cab44ce6c Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Tue, 7 Feb 2023 22:27:50 +0000 Subject: [PATCH 073/198] wallabag: 2.5.3 -> 2.5.4 https://github.com/wallabag/wallabag/releases/tag/2.5.4 Fixes: CVE-2023-0734, CVE-2023-0735, CVE-2023-0736, CVE-2022/0737 --- pkgs/servers/web-apps/wallabag/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/servers/web-apps/wallabag/default.nix b/pkgs/servers/web-apps/wallabag/default.nix index 956f33ca7404..1e6763c39c3e 100644 --- a/pkgs/servers/web-apps/wallabag/default.nix +++ b/pkgs/servers/web-apps/wallabag/default.nix @@ -16,7 +16,7 @@ let pname = "wallabag"; - version = "2.5.3"; + version = "2.5.4"; in stdenv.mkDerivation { inherit pname version; @@ -27,7 +27,7 @@ stdenv.mkDerivation { "https://static.wallabag.org/releases/wallabag-release-${version}.tar.gz" "https://github.com/wallabag/wallabag/releases/download/${version}/wallabag-${version}.tar.gz" ]; - hash = "sha256-3o5LFGPd4oFz3leKzCy7lIjQ3ELSLqZuIswptB7i24U="; + hash = "sha256-yVMQXjGB8Yv1klQaHEbDGMZmOtANRocFJnawKn10xhg="; }; patches = [ From 1e5f0e8eedf716335dc6e855981d7935b357230b Mon Sep 17 00:00:00 2001 From: Malo Bourgon Date: Tue, 7 Feb 2023 14:36:26 -0800 Subject: [PATCH 074/198] openai: 0.26.4 -> 0.26.5 Diff: https://github.com/openai/openai-python/compare/v0.26.4...v0.26.5 --- pkgs/development/python-modules/openai/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/openai/default.nix b/pkgs/development/python-modules/openai/default.nix index d4cedc80be11..ede1a7a3d84f 100644 --- a/pkgs/development/python-modules/openai/default.nix +++ b/pkgs/development/python-modules/openai/default.nix @@ -23,7 +23,7 @@ buildPythonPackage rec { pname = "openai"; - version = "0.26.4"; + version = "0.26.5"; format = "setuptools"; disabled = pythonOlder "3.7.1"; @@ -32,7 +32,7 @@ buildPythonPackage rec { owner = "openai"; repo = "openai-python"; rev = "v${version}"; - hash = "sha256-WcUH6zbb5kIH0qk67M+lUx9CbMEbYDXQm6IVzzuQo9w="; + hash = "sha256-eKU+WRFf7f1yH63vcoQ9dVeqhJXBqMJGpk/9AoEgR0M="; }; propagatedBuildInputs = [ From 03f85e9e938cb84791426f98890b5983437f9166 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stanis=C5=82aw=20Pitucha?= Date: Wed, 8 Feb 2023 10:03:21 +1100 Subject: [PATCH 075/198] chatterino2: fix darwin build Use the newer SDK to fix darwin build. --- pkgs/top-level/all-packages.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 7ff5ab82f3fc..f8d4d8b4e17d 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -33872,7 +33872,9 @@ with pkgs; pipewire = null; }; - chatterino2 = libsForQt5.callPackage ../applications/networking/instant-messengers/chatterino2 {}; + chatterino2 = libsForQt5.callPackage ../applications/networking/instant-messengers/chatterino2 { + stdenv = if stdenv.isDarwin then darwin.apple_sdk_11_0.stdenv else stdenv; + }; weston = callPackage ../applications/window-managers/weston { }; From 4c2b1301113fb836ec05a4a521f3af12179d5daf Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 7 Feb 2023 23:14:42 +0000 Subject: [PATCH 076/198] thunderbird-unwrapped: 102.7.1 -> 102.7.2 --- .../networking/mailreaders/thunderbird/packages.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/networking/mailreaders/thunderbird/packages.nix b/pkgs/applications/networking/mailreaders/thunderbird/packages.nix index 8fefcc1c3143..6c705d7cd362 100644 --- a/pkgs/applications/networking/mailreaders/thunderbird/packages.nix +++ b/pkgs/applications/networking/mailreaders/thunderbird/packages.nix @@ -5,13 +5,13 @@ rec { thunderbird-102 = (buildMozillaMach rec { pname = "thunderbird"; - version = "102.7.1"; + version = "102.7.2"; application = "comm/mail"; applicationName = "Mozilla Thunderbird"; binaryName = pname; src = fetchurl { url = "mirror://mozilla/thunderbird/releases/${version}/source/thunderbird-${version}.source.tar.xz"; - sha512 = "6310f3f122a1a61917ec2d0efe3a031b199ac13681e9fb4035abc0f4de0dbafb12accffbd63facb23f2cebf0124a13f7538a33176a2a513d1f685bee40db50ba"; + sha512 = "7371079d59cceb47fdd0e9661f79eae7510ab0f5bf8e80c21952dfb5fed3db72279a4ac9d3a3de3617194fb36a9420ae814a69ee19a93ba242d2aa2b921e3010"; }; extraPatches = [ # The file to be patched is different from firefox's `no-buildconfig-ffx90.patch`. From df4a5afec87f5a0fd1abbddc9590d8b61213b2aa Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 7 Feb 2023 23:22:33 +0000 Subject: [PATCH 077/198] python310Packages.rpy2: 3.5.7 -> 3.5.8 --- pkgs/development/python-modules/rpy2/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/rpy2/default.nix b/pkgs/development/python-modules/rpy2/default.nix index dd27a7ca110d..206c38cda762 100644 --- a/pkgs/development/python-modules/rpy2/default.nix +++ b/pkgs/development/python-modules/rpy2/default.nix @@ -24,13 +24,13 @@ }: buildPythonPackage rec { - version = "3.5.7"; + version = "3.5.8"; pname = "rpy2"; disabled = isPyPy; src = fetchPypi { inherit version pname; - sha256 = "sha256-h6QJA3m0/DTn86Q0cXMJBndsNzmIhwhqgDV9ZP3QZUs="; + sha256 = "sha256-ImEfIbxSeYCH+5gwlwXxolz76L/Sf7/u6gHz01L92yk="; }; patches = [ From 48cb3498fa1c8107ac743ab266af7960c774e9cf Mon Sep 17 00:00:00 2001 From: Ingo Ruhnke Date: Wed, 8 Feb 2023 00:45:08 +0100 Subject: [PATCH 078/198] dduper: Update btrfs-progs patch to v6.1 --- pkgs/tools/filesystems/dduper/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/filesystems/dduper/default.nix b/pkgs/tools/filesystems/dduper/default.nix index e7eecbf766ee..9c38852e4e90 100644 --- a/pkgs/tools/filesystems/dduper/default.nix +++ b/pkgs/tools/filesystems/dduper/default.nix @@ -5,8 +5,8 @@ let patches = [ (fetchpatch { name = "0001-Print-csum-for-a-given-file-on-stdout.patch"; - url = "https://raw.githubusercontent.com/Lakshmipathi/dduper/f45d04854a40cb52ae0e6736916d5955cb68b8ee/patch/btrfs-progs-v5.12.1/0001-Print-csum-for-a-given-file-on-stdout.patch"; - sha256 = "0c7dd44q2ww6k9nk5dh6m0f0wbd8x84vb2m61fk6a44nsv2fwz1x"; + url = "https://raw.githubusercontent.com/Lakshmipathi/dduper/ecc2664c380616ec75cfc1e600b5514cdff5c687/patch/btrfs-progs-v6.1/0001-Print-csum-for-a-given-file-on-stdout.patch"; + sha256 = "sha256-M4LT7G6gwBfSXf6EL4pxNoQJMyUTOA+ojxEJqw2yss4="; }) ]; }); From cfcf7d63e1f395cad310578a708c652b9d10ae2a Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 8 Feb 2023 00:03:11 +0000 Subject: [PATCH 079/198] python310Packages.yfinance: 0.2.9 -> 0.2.10 --- pkgs/development/python-modules/yfinance/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/yfinance/default.nix b/pkgs/development/python-modules/yfinance/default.nix index d2a113fb51d0..ac8c68239bf7 100644 --- a/pkgs/development/python-modules/yfinance/default.nix +++ b/pkgs/development/python-modules/yfinance/default.nix @@ -15,7 +15,7 @@ buildPythonPackage rec { pname = "yfinance"; - version = "0.2.9"; + version = "0.2.10"; format = "setuptools"; disabled = pythonOlder "3.7"; @@ -24,7 +24,7 @@ buildPythonPackage rec { owner = "ranaroussi"; repo = pname; rev = "refs/tags/${version}"; - hash = "sha256-CcvBVW9MdXVx1BnIcPB9b1PHGK2zw4Hg0vVNW6s87/Q="; + hash = "sha256-1LRnvyr3QNYR33qTyN/WepGH8InYmXWwO5gQfm20MP4="; }; propagatedBuildInputs = [ From 60ebc035de23fb531e4f656492308cc8d6efd456 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Wed, 8 Feb 2023 00:59:55 +0100 Subject: [PATCH 080/198] babeld: 1.12.1 -> 1.12.2 https://www.mail-archive.com/babel-users@alioth-lists.debian.net/msg00960.html --- pkgs/tools/networking/babeld/default.nix | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/pkgs/tools/networking/babeld/default.nix b/pkgs/tools/networking/babeld/default.nix index 5714a75e50e5..6e8c7669f0dd 100644 --- a/pkgs/tools/networking/babeld/default.nix +++ b/pkgs/tools/networking/babeld/default.nix @@ -1,17 +1,27 @@ -{ lib, stdenv, fetchurl, nixosTests }: +{ lib +, stdenv +, fetchurl +, nixosTests +}: stdenv.mkDerivation rec { pname = "babeld"; - version = "1.12.1"; + version = "1.12.2"; src = fetchurl { url = "https://www.irif.fr/~jch/software/files/${pname}-${version}.tar.gz"; - sha256 = "sha256-mrWdesdB82MN8j+cO2fGApTYs0q2IjmPm4l3OoeOyx4="; + hash = "sha256-HbIrYZMHDqJFChq1EZb9cvWKEyn3gMsDiOLksud2jLs="; }; - preBuild = '' - makeFlags="PREFIX=$out ETCDIR=$out/etc" - ''; + outputs = [ + "out" + "man" + ]; + + makeFlags = [ + "PREFIX=${placeholder "out"}" + "ETCDIR=${placeholder "out"}/etc" + ]; passthru.tests.babeld = nixosTests.babeld; From f80b895b153bf56d2cd712a78bcd43f38ef02f34 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 8 Feb 2023 00:17:08 +0000 Subject: [PATCH 081/198] librime: 1.8.4 -> 1.8.5 --- pkgs/development/libraries/librime/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/librime/default.nix b/pkgs/development/libraries/librime/default.nix index 0f0a311cdfac..a1daa89ef787 100644 --- a/pkgs/development/libraries/librime/default.nix +++ b/pkgs/development/libraries/librime/default.nix @@ -10,13 +10,13 @@ let in stdenv.mkDerivation rec { pname = "librime"; - version = "1.8.4"; + version = "1.8.5"; src = fetchFromGitHub { owner = "rime"; repo = pname; rev = version; - sha256 = "sha256-FcEthx5uaTROmW+wrWdpRoVT8o5Ok0HgkllMut/FEyM="; + sha256 = "sha256-FkkZIxSuqlFFOjABBpnE5ax2Vdo9tzP0prM7ATDIIdk="; }; nativeBuildInputs = [ cmake pkg-config ]; From 759bf66c38900482d043a91b6ff6541a2e7bfa4a Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 8 Feb 2023 00:17:53 +0000 Subject: [PATCH 082/198] erigon: 2.37.0 -> 2.38.1 --- pkgs/applications/blockchains/erigon/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/blockchains/erigon/default.nix b/pkgs/applications/blockchains/erigon/default.nix index a17bef8cae37..51b6d4d16b2b 100644 --- a/pkgs/applications/blockchains/erigon/default.nix +++ b/pkgs/applications/blockchains/erigon/default.nix @@ -2,7 +2,7 @@ let pname = "erigon"; - version = "2.37.0"; + version = "2.38.1"; in buildGoModule { inherit pname version; @@ -11,11 +11,11 @@ buildGoModule { owner = "ledgerwatch"; repo = pname; rev = "v${version}"; - sha256 = "sha256-r/mumt/f0wrOsXyEHo/NX0lJGt8zqXEVNC+9DWDkHAM="; + sha256 = "sha256-sLJMmSEUQNsodZ9Ms0ipDwN2QOYa9pZTlEqt4CF23Sc="; fetchSubmodules = true; }; - vendorSha256 = "sha256-vSJZ1wIx1CiLE04ZBDnQDQqM2v8BBLxw5qbAsixC3/U="; + vendorSha256 = "sha256-KESY+PSbWQHPJphop4GnVF4T8Q/MPb2GFDEko0ieXEM="; proxyVendor = true; # Build errors in mdbx when format hardening is enabled: From 92ea4539e79fb15e57f617515f145785e644d026 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 8 Feb 2023 00:28:35 +0000 Subject: [PATCH 083/198] velero: 1.10.0 -> 1.10.1 --- pkgs/applications/networking/cluster/velero/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/networking/cluster/velero/default.nix b/pkgs/applications/networking/cluster/velero/default.nix index bc4f1959eaac..dcb4dd9eb08d 100644 --- a/pkgs/applications/networking/cluster/velero/default.nix +++ b/pkgs/applications/networking/cluster/velero/default.nix @@ -2,14 +2,14 @@ buildGoModule rec { pname = "velero"; - version = "1.10.0"; + version = "1.10.1"; src = fetchFromGitHub { owner = "vmware-tanzu"; repo = "velero"; rev = "v${version}"; - sha256 = "sha256-PBCTVws5N42q68rKcMLW7GgZvdsQgmdlsKMpJ5bCF00="; + sha256 = "sha256-jN45chUeoGJGJWD6Rj6duNE36/QCzPqci8V3h1OHtw4="; }; ldflags = [ @@ -20,7 +20,7 @@ buildGoModule rec { "-X github.com/vmware-tanzu/velero/pkg/buildinfo.GitSHA=none" ]; - vendorSha256 = "sha256-5Po8TRCE6VP+RcaIJImYjElTMHHS/2JwbrHreeWLxio="; + vendorHash = "sha256-mvVwf4w/65L+F6aiTNf2jmJtaT1EpWCQJ6r9NHUUUqQ="; excludedPackages = [ "issue-template-gen" "release-tools" "v1" "velero-restic-restore-helper" ]; From d32f1286ce974eec0e65b5fd51a2017ff072d47c Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 8 Feb 2023 00:33:54 +0000 Subject: [PATCH 084/198] zef: 0.14.6 -> 0.15.0 --- pkgs/development/interpreters/rakudo/zef.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/interpreters/rakudo/zef.nix b/pkgs/development/interpreters/rakudo/zef.nix index cfdeac264cbd..efd08f7d85b7 100644 --- a/pkgs/development/interpreters/rakudo/zef.nix +++ b/pkgs/development/interpreters/rakudo/zef.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "zef"; - version = "0.14.6"; + version = "0.15.0"; src = fetchFromGitHub { owner = "ugexe"; repo = "zef"; rev = "v${version}"; - sha256 = "sha256-3FRzqHbzNhmYg3wRvajMzTWB7lOlgrxwQvvnB3fggGM="; + sha256 = "sha256-MJKG/8b8l2RqWec5JoWcYLYrEKI9zrhJMyLqVcvAY+g="; }; nativeBuildInputs = [ makeWrapper ]; From 87fc6ea2199417c00992902901144509664c77c9 Mon Sep 17 00:00:00 2001 From: superherointj <5861043+superherointj@users.noreply.github.com> Date: Tue, 7 Feb 2023 21:50:12 -0300 Subject: [PATCH 085/198] flexoptix-app: 5.13.3 -> 5.13.4 --- pkgs/tools/misc/flexoptix-app/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/misc/flexoptix-app/default.nix b/pkgs/tools/misc/flexoptix-app/default.nix index 50f51cfd7119..4cd81c8c640f 100644 --- a/pkgs/tools/misc/flexoptix-app/default.nix +++ b/pkgs/tools/misc/flexoptix-app/default.nix @@ -1,11 +1,11 @@ { lib, appimageTools, fetchurl, nodePackages }: let pname = "flexoptix-app"; - version = "5.13.3"; + version = "5.13.4"; src = fetchurl { name = "${pname}-${version}.AppImage"; url = "https://flexbox.reconfigure.me/download/electron/linux/x64/FLEXOPTIX%20App.${version}.AppImage"; - hash = "sha256-kDw9+Llqvq4NgN89Cw/HwEqYlv42wLbho1eHjI6wVSQ="; + hash = "sha256-W+9KmKZ1bPfQfv1DXCJrIswriw4ivBVZPW81tfvRBc0="; }; udevRules = fetchurl { @@ -47,7 +47,7 @@ in appimageTools.wrapAppImage { ''; meta = { - description = "Configure FLEXOPTIX Universal Transcievers in seconds"; + description = "Configure FLEXOPTIX Universal Transceivers in seconds"; homepage = "https://www.flexoptix.net"; changelog = "https://www.flexoptix.net/en/flexoptix-app/?os=linux#flexapp__modal__changelog"; license = lib.licenses.unfree; From cd16b0bdb85ce735a68cdbe4201a4ffdfcf16222 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 8 Feb 2023 01:08:16 +0000 Subject: [PATCH 086/198] python310Packages.pyutil: 3.3.0 -> 3.3.2 --- pkgs/development/python-modules/pyutil/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/pyutil/default.nix b/pkgs/development/python-modules/pyutil/default.nix index 3a6c3871a441..e6391349927c 100644 --- a/pkgs/development/python-modules/pyutil/default.nix +++ b/pkgs/development/python-modules/pyutil/default.nix @@ -9,11 +9,11 @@ buildPythonPackage rec { pname = "pyutil"; - version = "3.3.0"; + version = "3.3.2"; src = fetchPypi { inherit pname version; - sha256 = "8c4d4bf668c559186389bb9bce99e4b1b871c09ba252a756ccaacd2b8f401848"; + sha256 = "sha256-6hbSxVtvg0Eh3rYyp0VLCg+uJdXRMLFfa+l667B2yfw="; }; propagatedBuildInputs = [ simplejson ]; From 027df72b836ba071526a5f9c8092a916931c42a2 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 8 Feb 2023 01:16:30 +0000 Subject: [PATCH 087/198] python310Packages.pyathena: 2.19.0 -> 2.21.0 --- pkgs/development/python-modules/pyathena/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/pyathena/default.nix b/pkgs/development/python-modules/pyathena/default.nix index 8c6086092a71..2de176f2c690 100644 --- a/pkgs/development/python-modules/pyathena/default.nix +++ b/pkgs/development/python-modules/pyathena/default.nix @@ -11,14 +11,14 @@ buildPythonPackage rec { pname = "pyathena"; - version = "2.19.0"; + version = "2.21.0"; format = "setuptools"; disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - hash = "sha256-59NH4HIhgDOxwgSUJq71ewpQTn2sbpNNT9Q3nj8qJss="; + hash = "sha256-DhG8JdYVRrsRuXsmlUzp7HDRlBsI/pLMBDzYqIzmae4="; }; propagatedBuildInputs = [ From 8585096b79e3fb3c763894035be25bbd6c758716 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 8 Feb 2023 01:33:02 +0000 Subject: [PATCH 088/198] python310Packages.xknx: 2.3.0 -> 2.4.0 --- pkgs/development/python-modules/xknx/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/xknx/default.nix b/pkgs/development/python-modules/xknx/default.nix index 2d1cbab86c6d..af7f10e3fd8d 100644 --- a/pkgs/development/python-modules/xknx/default.nix +++ b/pkgs/development/python-modules/xknx/default.nix @@ -12,7 +12,7 @@ buildPythonPackage rec { pname = "xknx"; - version = "2.3.0"; + version = "2.4.0"; format = "setuptools"; disabled = pythonOlder "3.8"; @@ -21,7 +21,7 @@ buildPythonPackage rec { owner = "XKNX"; repo = pname; rev = "refs/tags/${version}"; - hash = "sha256-G4az6YmCDv1MPF30mBQVNBPZdebjZqd+0vxo5F5iDWY="; + hash = "sha256-MSk/c2qLztq5GQ6+CzK0Jw+rOJTClguaoL284YaBPjw="; }; propagatedBuildInputs = [ From 1ebe29e665d84c2b2dea2c0319810dd1c3288072 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 8 Feb 2023 01:56:22 +0000 Subject: [PATCH 089/198] snapcast: 0.26.0 -> 0.27.0 --- pkgs/applications/audio/snapcast/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/audio/snapcast/default.nix b/pkgs/applications/audio/snapcast/default.nix index 558948ab4a0d..aef561e692a6 100644 --- a/pkgs/applications/audio/snapcast/default.nix +++ b/pkgs/applications/audio/snapcast/default.nix @@ -9,13 +9,13 @@ assert pulseaudioSupport -> libpulseaudio != null; stdenv.mkDerivation rec { pname = "snapcast"; - version = "0.26.0"; + version = "0.27.0"; src = fetchFromGitHub { owner = "badaix"; repo = "snapcast"; rev = "v${version}"; - sha256 = "sha256-CCifn9OEFM//Hk1PJj8T3MXIV8pXCTdBBXPsHuZwLyQ="; + sha256 = "sha256-dlK1xQQqst4VQjioC7MZzqXwMC+JfqtvnD5lrOqGhYI="; }; nativeBuildInputs = [ cmake pkg-config ]; From 0be7779b4be40c902faf0987b070dd89706ab5cd Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 8 Feb 2023 02:44:28 +0000 Subject: [PATCH 090/198] python310Packages.aesedb: 0.1.0 -> 0.1.1 --- pkgs/development/python-modules/aesedb/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/aesedb/default.nix b/pkgs/development/python-modules/aesedb/default.nix index cb9db9a886fa..982525e4bd43 100644 --- a/pkgs/development/python-modules/aesedb/default.nix +++ b/pkgs/development/python-modules/aesedb/default.nix @@ -11,14 +11,14 @@ buildPythonPackage rec { pname = "aesedb"; - version = "0.1.0"; + version = "0.1.1"; format = "setuptools"; disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - hash = "sha256-TetXhDrWG6MECm/nhsZDUwcOJwP5drFO+YLarGC2pak="; + hash = "sha256-pnbzPVXr3qgBH7t5wNR+jbTdQGMdnLpV+xfgQjdc+7A="; }; propagatedBuildInputs = [ From 6949cfdcb4c7ff9f59e5e00f2ddef180d17d0f92 Mon Sep 17 00:00:00 2001 From: Aaron Jheng Date: Wed, 8 Feb 2023 03:01:37 +0000 Subject: [PATCH 091/198] temporal: 1.17.5 -> 1.19.1 --- .../applications/networking/cluster/temporal/default.nix | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/networking/cluster/temporal/default.nix b/pkgs/applications/networking/cluster/temporal/default.nix index 0b1077443a49..6a2c39de113c 100644 --- a/pkgs/applications/networking/cluster/temporal/default.nix +++ b/pkgs/applications/networking/cluster/temporal/default.nix @@ -2,16 +2,18 @@ buildGoModule rec { pname = "temporal"; - version = "1.17.5"; + version = "1.19.1"; src = fetchFromGitHub { owner = "temporalio"; repo = "temporal"; rev = "v${version}"; - sha256 = "sha256-u8GyaXpiVZdPDoPAqIa+TY+JQFZeSGOLrUy+e3E4kig="; + hash = "sha256-j2+K/ZDDNakofrToxhyA1gh534l3Eq6G/fNXE0ktceY="; }; - vendorSha256 = "sha256-MT/BmGTdyEzmXjuwlA6WhLIWlrQz3Wc4Tl5dMI1587Q="; + vendorHash = "sha256-KkgyL37VJy1DhfCB5RJpjczBPbzQwt1xsovQ0xCXGr4="; + + excludedPackages = [ "./build" ]; CGO_ENABLED = 0; @@ -26,6 +28,7 @@ buildGoModule rec { install -Dm755 "$GOPATH/bin/server" -T $out/bin/temporal-server install -Dm755 "$GOPATH/bin/cassandra" -T $out/bin/temporal-cassandra-tool install -Dm755 "$GOPATH/bin/sql" -T $out/bin/temporal-sql-tool + install -Dm755 "$GOPATH/bin/tdbg" -T $out/bin/tdbg runHook postInstall ''; From 41463817adead6cd168d061752afa06fc8057367 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 8 Feb 2023 03:05:32 +0000 Subject: [PATCH 092/198] python310Packages.types-requests: 2.28.11.11 -> 2.28.11.12 --- pkgs/development/python-modules/types-requests/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/types-requests/default.nix b/pkgs/development/python-modules/types-requests/default.nix index a6d685a5371e..1d22826b6eea 100644 --- a/pkgs/development/python-modules/types-requests/default.nix +++ b/pkgs/development/python-modules/types-requests/default.nix @@ -6,12 +6,12 @@ buildPythonPackage rec { pname = "types-requests"; - version = "2.28.11.11"; + version = "2.28.11.12"; format = "setuptools"; src = fetchPypi { inherit pname version; - sha256 = "sha256-GWIqzjWl2hg47pytDfSlDH46Qg+KN+g1fOhw/tSS+oE="; + sha256 = "sha256-/VMKqz/E8F7jZAavFo8INubwDx7lGguWtzEfgstnUjA="; }; propagatedBuildInputs = [ From 48915f8317be5bd9d2f7853959ee970e2cd4183b Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 8 Feb 2023 03:20:27 +0000 Subject: [PATCH 093/198] zoom-us: 5.13.5.431 -> 5.13.7.683 --- .../instant-messengers/zoom-us/default.nix | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/pkgs/applications/networking/instant-messengers/zoom-us/default.nix b/pkgs/applications/networking/instant-messengers/zoom-us/default.nix index d18761689ee3..cb132610d0c2 100644 --- a/pkgs/applications/networking/instant-messengers/zoom-us/default.nix +++ b/pkgs/applications/networking/instant-messengers/zoom-us/default.nix @@ -48,23 +48,23 @@ let # and often with different versions. We write them on three lines # like this (rather than using {}) so that the updater script can # find where to edit them. - versions.aarch64-darwin = "5.13.6.14918"; - versions.x86_64-darwin = "5.13.6.14918"; - versions.x86_64-linux = "5.13.5.431"; + versions.aarch64-darwin = "5.13.7.15481"; + versions.x86_64-darwin = "5.13.7.15481"; + versions.x86_64-linux = "5.13.7.683"; srcs = { aarch64-darwin = fetchurl { url = "https://zoom.us/client/${versions.aarch64-darwin}/zoomusInstallerFull.pkg?archType=arm64"; name = "zoomusInstallerFull.pkg"; - hash = "sha256-QY9z1bTKtL32HE4XWnBIvCNmDF+3x5N9BdfqJA+24fA="; + hash = "sha256-lCg8xCEuZSWnd4fieug9xjudE9q6pNICRsbvA4ATVK8="; }; x86_64-darwin = fetchurl { url = "https://zoom.us/client/${versions.x86_64-darwin}/zoomusInstallerFull.pkg"; - hash = "sha256-eSPKzxDPXCbME0eTTDlfsI5KM5qRm79JTtnGJvpiS98="; + hash = "sha256-jmMpkqUga/KQJfXFbGURcWQudnCKlIi5NGY6LuekjKw="; }; x86_64-linux = fetchurl { url = "https://zoom.us/client/${versions.x86_64-linux}/zoom_x86_64.pkg.tar.xz"; - hash = "sha256-R0IMV/+R7AGFy/ZvNyyvIBv10t1x1U1X6jdHoo6UHKY="; + hash = "sha256-1aA3W9eXYhjxr39PoTSAVG7mToFInF7uz8MCiJhk/10="; }; }; From fca22e9a3e7e4dce55212d0032611e4d03ced187 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 8 Feb 2023 03:25:56 +0000 Subject: [PATCH 094/198] python310Packages.karton-core: 5.0.0 -> 5.0.1 --- pkgs/development/python-modules/karton-core/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/karton-core/default.nix b/pkgs/development/python-modules/karton-core/default.nix index 65c56cbae18c..e62b7cee010b 100644 --- a/pkgs/development/python-modules/karton-core/default.nix +++ b/pkgs/development/python-modules/karton-core/default.nix @@ -8,13 +8,13 @@ buildPythonPackage rec { pname = "karton-core"; - version = "5.0.0"; + version = "5.0.1"; src = fetchFromGitHub { owner = "CERT-Polska"; repo = "karton"; rev = "refs/tags/v${version}"; - hash = "sha256-0B2u2xnrGc3iQ8B9iAQ3fcovQQCPqdFsn5evgdDwg5M="; + hash = "sha256-TKO0l0AKsC9MMB58ao/EXcJ9k/J3y3S9tc127H7vA6w="; }; propagatedBuildInputs = [ From 7baf69753479602fddc2aa7d6ac54758698ac4f0 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 8 Feb 2023 03:35:57 +0000 Subject: [PATCH 095/198] cubiomes-viewer: 3.0.1 -> 3.1.0 --- pkgs/applications/misc/cubiomes-viewer/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/misc/cubiomes-viewer/default.nix b/pkgs/applications/misc/cubiomes-viewer/default.nix index 3912e8d221e9..f6035b3c6c49 100644 --- a/pkgs/applications/misc/cubiomes-viewer/default.nix +++ b/pkgs/applications/misc/cubiomes-viewer/default.nix @@ -9,13 +9,13 @@ stdenv.mkDerivation rec { pname = "cubiomes-viewer"; - version = "3.0.1"; + version = "3.1.0"; src = fetchFromGitHub { owner = "Cubitect"; repo = pname; rev = version; - sha256 = "sha256-UPphXaxq/Hnt1U3J+lgwa0lp3vX1B/Ou8eqD9rHe3sw="; + sha256 = "sha256-pA+SWktSjgH7lRqK14yJX2ziLoKpxMCpEIh0H6slpxw="; fetchSubmodules = true; }; From 4d396483629b109f9ed01089d2ee4dc6b38504c2 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 8 Feb 2023 03:55:00 +0000 Subject: [PATCH 096/198] klayout: 0.28.4 -> 0.28.5 --- pkgs/applications/misc/klayout/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/misc/klayout/default.nix b/pkgs/applications/misc/klayout/default.nix index dd3e5406ca32..4348afb0205b 100644 --- a/pkgs/applications/misc/klayout/default.nix +++ b/pkgs/applications/misc/klayout/default.nix @@ -5,13 +5,13 @@ mkDerivation rec { pname = "klayout"; - version = "0.28.4"; + version = "0.28.5"; src = fetchFromGitHub { owner = "KLayout"; repo = "klayout"; rev = "v${version}"; - hash = "sha256-6RIzgC/PA2DqO24vKu+d/+GttufUbIH+k9GZe09M0vM="; + hash = "sha256-fjKxQ3oVtnFwzLeeE6kN0jKE5PIfBZubTF54KO+k/DE="; }; postPatch = '' From b2d04c115552eea5c3b0b1e0669a3667695ae817 Mon Sep 17 00:00:00 2001 From: Winter Date: Tue, 7 Feb 2023 20:35:32 -0500 Subject: [PATCH 097/198] nixos/luksroot: build pbkdf2-sha512 binary in its own derivation Since this feature's inception, we've compiled a binary that uses OpenSSL to perform PBKDF-SHA512 during the extra-utils build. In addition to this being inefficient, it broke as of 6ea1a2a1be4e93f938ff084863eab1bd13292f65, which switched the extra-utils derivation to use stdenvNoCC. For now, I think the path of least resistence is to move the pbkdf-sha512 build to its own derivation, to fix the breakage, as well as improving the efficiency of the extra-utils build. (I do believe that at some point, we should revisit this binary -- perhaps rewriting it -- as Clang even just on its default settings emits more warnings than you'd want to see in a security-related codebase when compiling it.) --- nixos/modules/system/boot/luksroot.nix | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/nixos/modules/system/boot/luksroot.nix b/nixos/modules/system/boot/luksroot.nix index 03d03cb348e8..cdb5d8bf3c26 100644 --- a/nixos/modules/system/boot/luksroot.nix +++ b/nixos/modules/system/boot/luksroot.nix @@ -929,7 +929,14 @@ in ++ (if builtins.elem "xts" luks.cryptoModules then ["ecb"] else []); # copy the cryptsetup binary and it's dependencies - boot.initrd.extraUtilsCommands = mkIf (!config.boot.initrd.systemd.enable) '' + boot.initrd.extraUtilsCommands = let + pbkdf2-sha512 = pkgs.runCommandCC "pbkdf2-sha512" { buildInputs = [ pkgs.openssl ]; } '' + mkdir -p "$out/bin" + cc -O3 -lcrypto ${./pbkdf2-sha512.c} -o "$out/bin/pbkdf2-sha512" + strip -s "$out/bin/pbkdf2-sha512" + ''; + in + mkIf (!config.boot.initrd.systemd.enable) '' copy_bin_and_libs ${pkgs.cryptsetup}/bin/cryptsetup copy_bin_and_libs ${askPass}/bin/cryptsetup-askpass sed -i s,/bin/sh,$out/bin/sh, $out/bin/cryptsetup-askpass @@ -939,9 +946,7 @@ in copy_bin_and_libs ${pkgs.yubikey-personalization}/bin/ykinfo copy_bin_and_libs ${pkgs.openssl.bin}/bin/openssl - cc -O3 -I${pkgs.openssl.dev}/include -L${lib.getLib pkgs.openssl}/lib ${./pbkdf2-sha512.c} -o pbkdf2-sha512 -lcrypto - strip -s pbkdf2-sha512 - copy_bin_and_libs pbkdf2-sha512 + copy_bin_and_libs ${pbkdf2-sha512}/bin/pbkdf2-sha512 mkdir -p $out/etc/ssl cp -pdv ${pkgs.openssl.out}/etc/ssl/openssl.cnf $out/etc/ssl From 9ef3416184c1c74a98fb1d9bee6a400a808875a1 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 8 Feb 2023 04:11:45 +0000 Subject: [PATCH 098/198] kube-bench: 0.6.10 -> 0.6.11 --- pkgs/tools/security/kube-bench/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/security/kube-bench/default.nix b/pkgs/tools/security/kube-bench/default.nix index 9492475aadb5..80be86403adf 100644 --- a/pkgs/tools/security/kube-bench/default.nix +++ b/pkgs/tools/security/kube-bench/default.nix @@ -2,15 +2,15 @@ buildGoModule rec { pname = "kube-bench"; - version = "0.6.10"; + version = "0.6.11"; src = fetchFromGitHub { owner = "aquasecurity"; repo = pname; rev = "v${version}"; - sha256 = "sha256-0rhs5MZzf9E848FxYuZdXTarYG1BwnfS9HDz9iYR/vo="; + sha256 = "sha256-fh7kVYajpn8DKteyvAJf3dk1UrSXFX2gKtTAvuiOjpY="; }; - vendorSha256 = "sha256-uaFEtWI5tdL0egaJPTKh7k66Kyjq+N8YDlUGJDtFRqY="; + vendorHash = "sha256-PM8VnPNMLhDhRVy6xafW0kuTHgd374r0Ol2U9k8LNIw="; nativeBuildInputs = [ installShellFiles ]; From ab41e13f6ce7bd032920440db104e05ff76c0d12 Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Wed, 8 Feb 2023 01:08:25 +0000 Subject: [PATCH 099/198] sourcehut.dispatchsrht: respect allowAliases Nixpkgs convention is to only add attributes for deprecation throws when config.allowAliases hasn't been explicitly disabled. This is useful as it makes it easy to test building all non-deprecated packages: nix-build --arg config '{ allowAliases = false; }' -A sourcehut Precedent for this convention in Nixpkgs is easy to find by grepping for "config.allowAliases". --- .../version-management/sourcehut/default.nix | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/pkgs/applications/version-management/sourcehut/default.nix b/pkgs/applications/version-management/sourcehut/default.nix index 7faca39e2fe4..9c9f6f403330 100644 --- a/pkgs/applications/version-management/sourcehut/default.nix +++ b/pkgs/applications/version-management/sourcehut/default.nix @@ -2,6 +2,7 @@ , callPackage , recurseIntoAttrs , nixosTests +, config }: # To expose the *srht modules, they have to be a python module so we use `buildPythonModule` @@ -28,12 +29,10 @@ let }; }; in -with python.pkgs; recurseIntoAttrs { +with python.pkgs; recurseIntoAttrs ({ inherit python; coresrht = toPythonApplication srht; buildsrht = toPythonApplication buildsrht; - # Added 2022-10-29 - dispatchsrht = throw "dispatch is deprecated. See https://sourcehut.org/blog/2022-08-01-dispatch-deprecation-plans/ for more information."; gitsrht = toPythonApplication gitsrht; hgsrht = toPythonApplication hgsrht; hubsrht = toPythonApplication hubsrht; @@ -46,4 +45,7 @@ with python.pkgs; recurseIntoAttrs { passthru.tests = { nixos-sourcehut = nixosTests.sourcehut; }; -} +} // lib.optionalAttrs config.allowAliases { + # Added 2022-10-29 + dispatchsrht = throw "dispatch is deprecated. See https://sourcehut.org/blog/2022-08-01-dispatch-deprecation-plans/ for more information."; +}) From ca4904aa828daf954587cbda85902e24252a0390 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 8 Feb 2023 04:16:59 +0000 Subject: [PATCH 100/198] golangci-lint: 1.51.0 -> 1.51.1 --- pkgs/development/tools/golangci-lint/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/tools/golangci-lint/default.nix b/pkgs/development/tools/golangci-lint/default.nix index ccd230cc5f5c..f3a54a83a636 100644 --- a/pkgs/development/tools/golangci-lint/default.nix +++ b/pkgs/development/tools/golangci-lint/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "golangci-lint"; - version = "1.51.0"; + version = "1.51.1"; src = fetchFromGitHub { owner = "golangci"; repo = "golangci-lint"; rev = "v${version}"; - hash = "sha256-mmnzbgnu/S9DhFY5JQSs8U5tvsGqIcDaX5Y7dhCgr68="; + hash = "sha256-BkkC23dO40gnEQ6sJcbLR2UzdigMrta2+NnZA2bk3E8="; }; - vendorHash = "sha256-QoUxZBl0wOpbD2xPCQAeTNiLxdtXZ3+KWB/TLSt53v4="; + vendorHash = "sha256-CS9Z3nvOleKTYjw89IKybsUI33w0If/mYDUpQHLO58U="; doCheck = false; From b73e720c40f984ab08ea9b38a465a9df8464ec8d Mon Sep 17 00:00:00 2001 From: Mario Rodas Date: Wed, 8 Feb 2023 04:20:00 +0000 Subject: [PATCH 101/198] libfyaml: 0.7.12 -> 0.8 --- pkgs/development/libraries/libfyaml/default.nix | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/libfyaml/default.nix b/pkgs/development/libraries/libfyaml/default.nix index 9384a7c97603..6fe2f398b25e 100644 --- a/pkgs/development/libraries/libfyaml/default.nix +++ b/pkgs/development/libraries/libfyaml/default.nix @@ -2,17 +2,19 @@ stdenv.mkDerivation rec { pname = "libfyaml"; - version = "0.7.12"; + version = "0.8"; src = fetchFromGitHub { owner = "pantoniou"; repo = pname; rev = "v${version}"; - sha256 = "sha256-gmVjiwf8PsDYRt8jmXNrd+hJSL099hbLjq8Z0c1u2HE="; + hash = "sha256-b/jRKe23NIVSydoczI+Ax2VjBJLfAEwF8SW61vIDTwA="; }; nativeBuildInputs = [ autoreconfHook pkg-config ]; + outputs = [ "bin" "dev" "out" "man" ]; + doCheck = true; preCheck = '' From 10e9b8203c4b8ab6dd72971f607c18ab55ba6067 Mon Sep 17 00:00:00 2001 From: Mario Rodas Date: Wed, 8 Feb 2023 04:20:00 +0000 Subject: [PATCH 102/198] python310Packages.jupyter-book: 0.13.1 -> 0.13.2 https://github.com/executablebooks/jupyter-book/releases/tag/v0.13.2 --- .../python-modules/jupyter-book/default.nix | 36 +++++++++---------- 1 file changed, 17 insertions(+), 19 deletions(-) diff --git a/pkgs/development/python-modules/jupyter-book/default.nix b/pkgs/development/python-modules/jupyter-book/default.nix index 44f88d56d953..ac2a6c8125df 100644 --- a/pkgs/development/python-modules/jupyter-book/default.nix +++ b/pkgs/development/python-modules/jupyter-book/default.nix @@ -3,6 +3,7 @@ , fetchPypi , pythonOlder , flit-core +, pythonRelaxDepsHook , click , docutils , jinja2 @@ -25,7 +26,7 @@ buildPythonPackage rec { pname = "jupyter-book"; - version = "0.13.1"; + version = "0.13.2"; format = "flit"; @@ -33,24 +34,13 @@ buildPythonPackage rec { src = fetchPypi { inherit pname version; - sha256 = "sha256-RgpC/H4J3kbdZsKuwYu7EOKCqcgM2v4uUsm6PVFknQE="; + sha256 = "sha256-wJWY0tBrlCkOFDfGZS4xWvv87sOlyrNl3fiGqgayqTs="; }; - postPatch = '' - substituteInPlace pyproject.toml \ - --replace "jsonschema<4" "jsonschema" \ - --replace "sphinx-external-toc~=0.2.3" "sphinx-external-toc" \ - --replace "sphinx-jupyterbook-latex~=0.4.6" "sphinx-jupyterbook-latex" \ - --replace "sphinx-thebe~=0.1.1" "sphinx-thebe" \ - --replace "sphinx>=4,<5" "sphinx" \ - --replace "sphinx_book_theme~=0.3.2" "sphinx_book_theme" \ - --replace "myst-nb~=0.13.1" "myst-nb" \ - --replace "docutils>=0.15,<0.18" "docutils" \ - --replace "sphinx-design~=0.1.0" "sphinx-design" \ - --replace "linkify-it-py~=1.0.1" "linkify-it-py" - ''; - - nativeBuildInputs = [ flit-core ]; + nativeBuildInputs = [ + flit-core + pythonRelaxDepsHook + ]; propagatedBuildInputs = [ click @@ -73,11 +63,19 @@ buildPythonPackage rec { sphinx-multitoc-numbering ]; - pythonImportsCheck = [ "jupyter_book" ]; + pythonRelaxDeps = [ + "docutils" + "myst-nb" + "sphinx" + ]; + + pythonImportsCheck = [ + "jupyter_book" + ]; meta = with lib; { description = "Build a book with Jupyter Notebooks and Sphinx"; - homepage = "https://executablebooks.org/"; + homepage = "https://jupyterbook.org/"; license = licenses.bsd3; maintainers = with maintainers; [ marsam ]; }; From cf87e23f9278795c32648df173566bbf825e6546 Mon Sep 17 00:00:00 2001 From: Mario Rodas Date: Wed, 8 Feb 2023 04:20:00 +0000 Subject: [PATCH 103/198] bazel-buildtools: 5.1.0 -> 6.0.1 https://github.com/bazelbuild/buildtools/releases/tag/6.0.0 https://github.com/bazelbuild/buildtools/releases/tag/6.0.1 --- .../tools/build-managers/bazel/buildtools/default.nix | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/pkgs/development/tools/build-managers/bazel/buildtools/default.nix b/pkgs/development/tools/build-managers/bazel/buildtools/default.nix index cd313a5bc50b..693ecce9d1e1 100644 --- a/pkgs/development/tools/build-managers/bazel/buildtools/default.nix +++ b/pkgs/development/tools/build-managers/bazel/buildtools/default.nix @@ -2,21 +2,23 @@ buildGoModule rec { pname = "bazel-buildtools"; - version = "5.1.0"; + version = "6.0.1"; src = fetchFromGitHub { owner = "bazelbuild"; repo = "buildtools"; rev = version; - sha256 = "sha256-PNIqsP5p+OdYH0JgOmjqvge9zVOrAcNg0FMflXFJHwQ="; + hash = "sha256-WXzrGJaulcwg4MnyfY5jWBEVxCXryqMK+/R7J/gFI38="; }; - vendorSha256 = "sha256-9WUjQhXWkpSEJj9Xq+9rOe3I1VZ7nqMTnX7DPl+rxsU="; + vendorHash = "sha256-DigTREfI6I48wxRpGp/bfH1NbUZ4E1B5UTQXpI0LY1A="; preBuild = '' rm -r warn/docs ''; + proxyVendor = true; + doCheck = false; excludedPackages = [ "generatetables" ]; From 312979b055a9c4eb9e89f8d747334d1fd853c5f3 Mon Sep 17 00:00:00 2001 From: Mario Rodas Date: Wed, 8 Feb 2023 04:20:00 +0000 Subject: [PATCH 104/198] libpg_query: 15-4.1.0 -> 15-4.2.0 https://github.com/pganalyze/libpg_query/releases/tag/15-4.2.0 --- pkgs/development/libraries/libpg_query/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/libpg_query/default.nix b/pkgs/development/libraries/libpg_query/default.nix index 254e5ca51e99..95d615c5d24d 100644 --- a/pkgs/development/libraries/libpg_query/default.nix +++ b/pkgs/development/libraries/libpg_query/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "libpg_query"; - version = "15-4.1.0"; + version = "15-4.2.0"; src = fetchFromGitHub { owner = "pganalyze"; repo = "libpg_query"; rev = version; - hash = "sha256-uZdszDE0UJVeegU1bi0ISYooC4ztNv7W4UQ2gWIjrH8="; + hash = "sha256-2fPdvsfuXKaRwkPjsPsBBfP0+yUgYXEUzQNFZfhyvGk="; }; nativeBuildInputs = [ which ]; From 250a8eb77398734f4cbe8cd03d6ec503ba0c5f3a Mon Sep 17 00:00:00 2001 From: Mario Rodas Date: Wed, 8 Feb 2023 04:20:00 +0000 Subject: [PATCH 105/198] scheme-manpages: 2022-07-04 -> 2023-02-06 --- pkgs/data/documentation/scheme-manpages/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/data/documentation/scheme-manpages/default.nix b/pkgs/data/documentation/scheme-manpages/default.nix index f839ce0c6dcd..59620b16a6cc 100644 --- a/pkgs/data/documentation/scheme-manpages/default.nix +++ b/pkgs/data/documentation/scheme-manpages/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "scheme-manpages"; - version = "unstable-2022-07-04"; + version = "unstable-2023-02-06"; src = fetchFromGitHub { owner = "schemedoc"; repo = "manpages"; - rev = "0b95de112857b185b83141ac9324fb0e786c56df"; - sha256 = "sha256-HWkZJd4t7gsbbSGiQ92Lav9EMBPMLXmXFT6HVfyFLSI="; + rev = "ccaa76761a1b100e99287c120196bd5f32d4a403"; + hash = "sha256-RL/94dQiZJ60cXHQ9r4P3hRBqe55oUissCmSp4XLM+o="; }; dontBuild = true; From 65a5907b83338c61cf3b1a900c7ff20073fa7555 Mon Sep 17 00:00:00 2001 From: Mario Rodas Date: Wed, 8 Feb 2023 04:20:00 +0000 Subject: [PATCH 106/198] caf: 0.18.6 -> 0.18.7 https://github.com/actor-framework/actor-framework/releases/tag/0.18.7 --- pkgs/development/libraries/caf/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/caf/default.nix b/pkgs/development/libraries/caf/default.nix index 515f66883d0b..f05f55cd8c92 100644 --- a/pkgs/development/libraries/caf/default.nix +++ b/pkgs/development/libraries/caf/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "actor-framework"; - version = "0.18.6"; + version = "0.18.7"; src = fetchFromGitHub { owner = "actor-framework"; repo = "actor-framework"; rev = version; - sha256 = "sha256-AW8AXX9t9vYv8tZvFJvrghmz6tZdfbX4hVc2QoBAvhQ="; + hash = "sha256-y1RE6AnyOrUN/z4md/xjlVwlIcL97ZEcKEOf8ZsCf+U="; }; nativeBuildInputs = [ cmake ]; From 98232c145a5266c3c07819e451806f0717491cee Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 8 Feb 2023 04:33:00 +0000 Subject: [PATCH 107/198] rssguard: 4.3.1 -> 4.3.2 --- pkgs/applications/networking/feedreaders/rssguard/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/networking/feedreaders/rssguard/default.nix b/pkgs/applications/networking/feedreaders/rssguard/default.nix index f1225f87eefb..57cf5e20bcd5 100644 --- a/pkgs/applications/networking/feedreaders/rssguard/default.nix +++ b/pkgs/applications/networking/feedreaders/rssguard/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "rssguard"; - version = "4.3.1"; + version = "4.3.2"; src = fetchFromGitHub { owner = "martinrotter"; repo = pname; rev = version; - sha256 = "sha256-hfUtxPGPhPC2VgGLLIaYHlEMpXHAPZ5fkLL0glhyQcY="; + sha256 = "sha256-2h9fVah0WZ8X0GsCLtiUWRan1Gkl4WBxuEQ3gx4FFBo="; }; buildInputs = [ qtwebengine qttools ]; From a3a254e22ed47d34eac1a02b1be22efe61f867ca Mon Sep 17 00:00:00 2001 From: Aaron Jheng Date: Wed, 8 Feb 2023 05:32:31 +0000 Subject: [PATCH 108/198] glab: 1.24.1 -> 1.25.3 --- pkgs/applications/version-management/glab/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/version-management/glab/default.nix b/pkgs/applications/version-management/glab/default.nix index 9d6bbbd13f67..a789a35f7a5d 100644 --- a/pkgs/applications/version-management/glab/default.nix +++ b/pkgs/applications/version-management/glab/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "glab"; - version = "1.24.1"; + version = "1.25.3"; src = fetchFromGitLab { owner = "gitlab-org"; repo = "cli"; rev = "v${version}"; - sha256 = "sha256-CUchYPMBTINkMJg8TC8rKMVkrcj/Gy+ZxV7jbtMFvpg="; + hash = "sha256-x/VH6cRrJZ2t2iftBPC86FcgIwjRNzV11MwLG2y+Paw="; }; - vendorSha256 = "sha256-NuK63ibb1t+HnSR/gCFS7HWVtfGLazVx2M+qxRNCR1I="; + vendorHash = "sha256-FZ1CiR8Rj/sMoCnQm6ArGQfRTlvmD14EZDmufnlTSTk="; ldflags = [ "-s" From 5d580276e92966ee2b1fe792c1e8735fc01046a3 Mon Sep 17 00:00:00 2001 From: Weijia Wang <9713184+wegank@users.noreply.github.com> Date: Wed, 8 Feb 2023 07:08:47 +0100 Subject: [PATCH 109/198] python310Packages.soundfile: fix build on x86_64-darwin --- pkgs/development/python-modules/soundfile/default.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkgs/development/python-modules/soundfile/default.nix b/pkgs/development/python-modules/soundfile/default.nix index 5847dc2a63f9..91b4e2ec7a42 100644 --- a/pkgs/development/python-modules/soundfile/default.nix +++ b/pkgs/development/python-modules/soundfile/default.nix @@ -29,6 +29,10 @@ buildPythonPackage rec { propagatedBuildInputs = [ numpy libsndfile cffi ]; propagatedNativeBuildInputs = [ cffi ]; + preConfigure = lib.optionalString (stdenv.isDarwin && stdenv.isx86_64) '' + export PYSOUNDFILE_ARCHITECTURE=x86_64 + ''; + meta = { description = "An audio library based on libsndfile, CFFI and NumPy"; license = lib.licenses.bsd3; From 79ed5244c132d3b0e418986d3311acbc18d81a82 Mon Sep 17 00:00:00 2001 From: Alexis Hildebrandt Date: Wed, 8 Feb 2023 06:35:50 +0100 Subject: [PATCH 110/198] gh: 2.22.1 -> 2.23.0 --- pkgs/applications/version-management/gh/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/version-management/gh/default.nix b/pkgs/applications/version-management/gh/default.nix index 9018635ad9b8..3f154f0350c4 100644 --- a/pkgs/applications/version-management/gh/default.nix +++ b/pkgs/applications/version-management/gh/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "gh"; - version = "2.22.1"; + version = "2.23.0"; src = fetchFromGitHub { owner = "cli"; repo = "cli"; rev = "v${version}"; - hash = "sha256-TREy2pzVAHClwbryfEgX2WqtQ8+RmJtCNrESeaHDHMs="; + hash = "sha256-91TmPIjFOCeZmbobn3mIJis5qofJFmNGuX19+Cyo8Ck="; }; - vendorHash = "sha256-OjTl43UQGGHqCrw0kMBShuS8aonjWczfzQGmGJLhdrU="; + vendorHash = "sha256-NiXC0ooUkAqFCLp3eRBpryazQU94gSnw0gYFwQNeCo4="; nativeBuildInputs = [ installShellFiles ]; From 48c9598791b204ea99c02c20d78228821bbaab6e Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 8 Feb 2023 03:15:09 +0000 Subject: [PATCH 111/198] =?UTF-8?q?terraform-providers.tencentcloud:=201.7?= =?UTF-8?q?9.7=20=E2=86=92=201.79.8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../networking/cluster/terraform-providers/providers.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/networking/cluster/terraform-providers/providers.json b/pkgs/applications/networking/cluster/terraform-providers/providers.json index b7587ebd0677..ee6f1145ef1a 100644 --- a/pkgs/applications/networking/cluster/terraform-providers/providers.json +++ b/pkgs/applications/networking/cluster/terraform-providers/providers.json @@ -1091,11 +1091,11 @@ "vendorHash": "sha256-2wPmLpjhG6QgG+BUCO0oIzHjBOWIOYuptgdtSIm9TZw=" }, "tencentcloud": { - "hash": "sha256-QJUxLwKG3XabACbAvLLKBG9+cmCYRQFpRTWRU6rKwfI=", + "hash": "sha256-yVI1f86Gpkwl3jCAs5d54rZS8lM7cjbwWq+HUXwi8EU=", "homepage": "https://registry.terraform.io/providers/tencentcloudstack/tencentcloud", "owner": "tencentcloudstack", "repo": "terraform-provider-tencentcloud", - "rev": "v1.79.7", + "rev": "v1.79.8", "spdx": "MPL-2.0", "vendorHash": null }, From 29a22901dfb3da433928e98422da78fca73e95d0 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 8 Feb 2023 03:15:48 +0000 Subject: [PATCH 112/198] =?UTF-8?q?terraform-providers.oci:=204.105.0=20?= =?UTF-8?q?=E2=86=92=204.106.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../networking/cluster/terraform-providers/providers.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/networking/cluster/terraform-providers/providers.json b/pkgs/applications/networking/cluster/terraform-providers/providers.json index ee6f1145ef1a..ffd23a5ca7ff 100644 --- a/pkgs/applications/networking/cluster/terraform-providers/providers.json +++ b/pkgs/applications/networking/cluster/terraform-providers/providers.json @@ -812,11 +812,11 @@ "vendorHash": "sha256-LRIfxQGwG988HE5fftGl6JmBG7tTknvmgpm4Fu1NbWI=" }, "oci": { - "hash": "sha256-L8y00f+57hndpVevliJ2kNqpGeNR2Jv/FHbqkAUIRMI=", + "hash": "sha256-ecel4aXOqkPmeOzG5G/D8vmjo2HP9TG+c8H27pCYn2g=", "homepage": "https://registry.terraform.io/providers/oracle/oci", "owner": "oracle", "repo": "terraform-provider-oci", - "rev": "v4.105.0", + "rev": "v4.106.0", "spdx": "MPL-2.0", "vendorHash": null }, From d60172380e03bac79f8a3774bf37f0a3792932f5 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 8 Feb 2023 06:56:23 +0000 Subject: [PATCH 113/198] rt-tests: 2.4 -> 2.5 --- pkgs/os-specific/linux/rt-tests/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/rt-tests/default.nix b/pkgs/os-specific/linux/rt-tests/default.nix index 67000776256c..6185bf9912dd 100644 --- a/pkgs/os-specific/linux/rt-tests/default.nix +++ b/pkgs/os-specific/linux/rt-tests/default.nix @@ -8,11 +8,11 @@ stdenv.mkDerivation rec { pname = "rt-tests"; - version = "2.4"; + version = "2.5"; src = fetchurl { url = "https://git.kernel.org/pub/scm/utils/rt-tests/rt-tests.git/snapshot/${pname}-${version}.tar.gz"; - sha256 = "sha256-yuSfeYTaCZ0F1GXQkDnH8PBvyzR2w/XDitN8csHB9xE="; + sha256 = "sha256-LzN3YB3Lb7tjyEplrFaNYtiGwHUUTztZBsMrUndd2cU="; }; nativeBuildInputs = [ makeWrapper ]; From 0de24eafa9c95b259322375f9572c5dc263968bd Mon Sep 17 00:00:00 2001 From: oluceps Date: Wed, 8 Feb 2023 15:00:05 +0800 Subject: [PATCH 114/198] hysteria: 1.3.2 -> 1.3.3 --- pkgs/tools/networking/hysteria/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/networking/hysteria/default.nix b/pkgs/tools/networking/hysteria/default.nix index bd8e6e6d31c7..94365191cdc3 100644 --- a/pkgs/tools/networking/hysteria/default.nix +++ b/pkgs/tools/networking/hysteria/default.nix @@ -4,16 +4,16 @@ }: buildGoModule rec { pname = "hysteria"; - version = "1.3.2"; + version = "1.3.3"; src = fetchFromGitHub { owner = "HyNetwork"; repo = pname; rev = "v${version}"; - sha256 = "sha256-9ib/29yCfI4oS2yZQUePzZ+5FVTevvJCPjpTXmKnKeA="; + sha256 = "sha256-CQgCFtvQDvhHTk10gpxfAvEJLz/i+CXXyzGrxi26hBk="; }; - vendorSha256 = "sha256-sRPnPKVuvcUHEldKVpgmGFGpwOSK5qh4EfeUQMFdMw8="; + vendorSha256 = "sha256-sN+2XYoC+dDs6QKxwxuBCW4dOf4elSNKdOrbMxjOtSY="; proxyVendor = true; ldflags = [ From 900cf6ed74dd30449ccd340af67fea0b66d793f2 Mon Sep 17 00:00:00 2001 From: Rouven Czerwinski Date: Tue, 7 Feb 2023 19:46:03 +0100 Subject: [PATCH 115/198] xwayland: 22.1.7 -> 22.1.8 Changelog: https://lists.x.org/archives/xorg-announce/2023-February/003322.html --- pkgs/servers/x11/xorg/xwayland.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/servers/x11/xorg/xwayland.nix b/pkgs/servers/x11/xorg/xwayland.nix index ae3025461449..582ec11231cd 100644 --- a/pkgs/servers/x11/xorg/xwayland.nix +++ b/pkgs/servers/x11/xorg/xwayland.nix @@ -43,11 +43,11 @@ stdenv.mkDerivation rec { pname = "xwayland"; - version = "22.1.7"; + version = "22.1.8"; src = fetchurl { url = "mirror://xorg/individual/xserver/${pname}-${version}.tar.xz"; - sha256 = "sha256-1Tr6xscZU/XPZtA9KJ2s2JYdpb0wnB3/El1ZVdnbX3Y="; + sha256 = "sha256-0R7u5zKQuI6o2kKn2TUN7fq6hWzkrkTljARa2eyqL3M="; }; depsBuildBuild = [ From dda83f54001bdad3dff1cbe4a8a5f328607334f3 Mon Sep 17 00:00:00 2001 From: Jonas Heinrich Date: Wed, 8 Feb 2023 08:05:38 +0100 Subject: [PATCH 116/198] nextcloud-client: 3.6.6 -> 3.7.1 --- ...xplicitly-copy-dbus-files-into-the-store-dir.patch | 11 +++-------- .../networking/nextcloud-client/default.nix | 4 ++-- 2 files changed, 5 insertions(+), 10 deletions(-) diff --git a/pkgs/applications/networking/nextcloud-client/0001-Explicitly-copy-dbus-files-into-the-store-dir.patch b/pkgs/applications/networking/nextcloud-client/0001-Explicitly-copy-dbus-files-into-the-store-dir.patch index ab7cb9bffa45..260a7dd4ddd7 100644 --- a/pkgs/applications/networking/nextcloud-client/0001-Explicitly-copy-dbus-files-into-the-store-dir.patch +++ b/pkgs/applications/networking/nextcloud-client/0001-Explicitly-copy-dbus-files-into-the-store-dir.patch @@ -8,18 +8,13 @@ Subject: [PATCH] Explicitly copy dbus files into the store dir 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/shell_integration/libcloudproviders/CMakeLists.txt b/shell_integration/libcloudproviders/CMakeLists.txt -index 1f35335..7f76951 100644 +index 2e7349ef7..512d4b188 100644 --- a/shell_integration/libcloudproviders/CMakeLists.txt +++ b/shell_integration/libcloudproviders/CMakeLists.txt -@@ -19,7 +19,7 @@ MACRO(PKGCONFIG_GETVAR _package _var _output_variable) - ENDMACRO(PKGCONFIG_GETVAR _package _var _output_variable) - +@@ -1,5 +1,6 @@ macro(dbus_add_activation_service _sources) -- PKGCONFIG_GETVAR(dbus-1 session_bus_services_dir _install_dir) + pkg_get_variable(_install_dir dbus-1 session_bus_services_dir) + set(_install_dir "${CMAKE_INSTALL_DATADIR}/dbus-1/service") foreach (_i ${_sources}) get_filename_component(_service_file ${_i} ABSOLUTE) string(REGEX REPLACE "\\.service.*$" ".service" _output_file ${_i}) --- -2.19.2 - diff --git a/pkgs/applications/networking/nextcloud-client/default.nix b/pkgs/applications/networking/nextcloud-client/default.nix index e409551f1232..24d0cdab722e 100644 --- a/pkgs/applications/networking/nextcloud-client/default.nix +++ b/pkgs/applications/networking/nextcloud-client/default.nix @@ -26,7 +26,7 @@ mkDerivation rec { pname = "nextcloud-client"; - version = "3.6.6"; + version = "3.7.1"; outputs = [ "out" "dev" ]; @@ -34,7 +34,7 @@ mkDerivation rec { owner = "nextcloud"; repo = "desktop"; rev = "v${version}"; - sha256 = "sha256-P3LSgrcMZZM0OY3yQz8t3Cf5spJJTB+JTIpoT9U3+xc="; + sha256 = "sha256-MbxGS1Msb3xCW0z8FrIZEY3XaBa4BmN+JFBkV/Pf79A="; }; patches = [ From d482d7fef1ac5b3c9aac826ca70cc41431843904 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 8 Feb 2023 07:18:28 +0000 Subject: [PATCH 117/198] jackett: 0.20.2986 -> 0.20.3004 --- pkgs/servers/jackett/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/servers/jackett/default.nix b/pkgs/servers/jackett/default.nix index dc93a7977ad8..ae8b8eacabe4 100644 --- a/pkgs/servers/jackett/default.nix +++ b/pkgs/servers/jackett/default.nix @@ -9,13 +9,13 @@ buildDotnetModule rec { pname = "jackett"; - version = "0.20.2986"; + version = "0.20.3004"; src = fetchFromGitHub { owner = pname; repo = pname; rev = "v${version}"; - hash = "sha512-IbcIn2n5Cob+Ewp0lkkIENuo00HBlNy6V5pKARC6EgBDRKbB+YXETDX1Ko3Dsl0x6mxZgoTCbzEIPxD+Y2J4Rw=="; + hash = "sha512-UNGkcCQeeMxonJ9Kf1SDMTgSC8uTM2gD377qA+ViSfpWoOGQCY003EZ0c3c0q6oSGVbiIma1wvyW/T/ILLi5yw=="; }; projectFile = "src/Jackett.Server/Jackett.Server.csproj"; From 99682c8588e3e726b8416bbe8615b6b6c9a9c700 Mon Sep 17 00:00:00 2001 From: Austin Butler Date: Tue, 7 Feb 2023 23:59:39 -0800 Subject: [PATCH 118/198] yubikey-manager: 5.0.0 -> 5.0.1 --- pkgs/tools/misc/yubikey-manager/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/tools/misc/yubikey-manager/default.nix b/pkgs/tools/misc/yubikey-manager/default.nix index 730dfabe00f2..5487d9835cd5 100644 --- a/pkgs/tools/misc/yubikey-manager/default.nix +++ b/pkgs/tools/misc/yubikey-manager/default.nix @@ -3,14 +3,14 @@ python3Packages.buildPythonPackage rec { pname = "yubikey-manager"; - version = "5.0.0"; + version = "5.0.1"; format = "pyproject"; src = fetchFromGitHub { repo = "yubikey-manager"; rev = "refs/tags/${version}"; owner = "Yubico"; - sha256 = "sha256-ZQQhRiUsQwLaOY8NCzSc/PTmRewTL0ECBKj7Uj+6Gn8="; + sha256 = "sha256-Dj3ftyFeVgM0YMFI8cbiH5dmc8SKi2SBbScnc0+ad0M="; }; postPatch = '' @@ -23,7 +23,7 @@ python3Packages.buildPythonPackage rec { nativeBuildInputs = with python3Packages; [ poetry-core ]; propagatedBuildInputs = - with python3Packages; ([ + with python3Packages; [ click cryptography pyscard @@ -31,7 +31,7 @@ python3Packages.buildPythonPackage rec { six fido2 keyring - ]) ++ [ + ] ++ [ libu2f-host libusb1 yubikey-personalization From 4b5b453266adffb794dc56d1771587e70edb7156 Mon Sep 17 00:00:00 2001 From: Austin Butler Date: Wed, 8 Feb 2023 00:00:03 -0800 Subject: [PATCH 119/198] yubioath-flutter: 6.0.2 -> 6.1.0 --- pkgs/applications/misc/yubioath-flutter/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/applications/misc/yubioath-flutter/default.nix b/pkgs/applications/misc/yubioath-flutter/default.nix index bac11b6899b3..e4369a7ab9fd 100644 --- a/pkgs/applications/misc/yubioath-flutter/default.nix +++ b/pkgs/applications/misc/yubioath-flutter/default.nix @@ -10,19 +10,19 @@ }: let vendorHashes = { - x86_64-linux = "sha256-BwhWA8N0S55XkljDKPNkDhsj0QSpmJJ5MwEnrPjymS8="; - aarch64-linux = "sha256-T1aGz3+2Sls+rkUVDUo39Ky2igg+dxGSUaf3qpV7ovQ="; + x86_64-linux = "sha256-Upe0cEDG02RJD50Ht9VNMwkelsJHX8zOuJZssAhMuMY="; + aarch64-linux = "sha256-Upe0cEDG02RJD50Ht9VNMwkelsJHX8zOuJZssAhMuMY="; }; in flutter.mkFlutterApp rec { pname = "yubioath-flutter"; - version = "6.0.2"; + version = "6.1.0"; src = fetchFromGitHub { owner = "Yubico"; repo = "yubioath-flutter"; rev = version; - sha256 = "13nh5qpq02c6azfdh4cbzhlrq0hs9is45q5z5cnxg84hrx26hd4k"; + sha256 = "sha256-N9/qwC79mG9r+zMPLHSPjNSQ+srGtnXuKsf0ijtH7CI="; }; passthru.helper = python3.pkgs.callPackage ./helper.nix { inherit src version meta; }; From c3ad496c12b4108e4879c279a1b313cd4062581f Mon Sep 17 00:00:00 2001 From: superherointj <5861043+superherointj@users.noreply.github.com> Date: Wed, 8 Feb 2023 05:47:03 -0300 Subject: [PATCH 120/198] cryptodev: unpin kernel --- pkgs/top-level/all-packages.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 9713f167e427..f26ed6f0bcb2 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -26055,7 +26055,7 @@ with pkgs; linux-doc = callPackage ../os-specific/linux/kernel/htmldocs.nix { }; - cryptodev = linuxKernel.packages.linux_4_9.cryptodev; + cryptodev = linuxPackages.cryptodev; dpdk = callPackage ../os-specific/linux/dpdk { kernel = null; # dpdk modules are in linuxPackages.dpdk.kmod From a112c3d50fcf1ad915bd6e1326d91836c85fe0e6 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 8 Feb 2023 08:51:32 +0000 Subject: [PATCH 121/198] python310Packages.types-pyyaml: 6.0.12.3 -> 6.0.12.4 --- pkgs/development/python-modules/types-pyyaml/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/types-pyyaml/default.nix b/pkgs/development/python-modules/types-pyyaml/default.nix index f0b4056e2b58..710e1ad32cd5 100644 --- a/pkgs/development/python-modules/types-pyyaml/default.nix +++ b/pkgs/development/python-modules/types-pyyaml/default.nix @@ -5,13 +5,13 @@ buildPythonPackage rec { pname = "types-pyyaml"; - version = "6.0.12.3"; + version = "6.0.12.4"; format = "setuptools"; src = fetchPypi { pname = "types-PyYAML"; inherit version; - sha256 = "sha256-F84Xs+rY8G5BajsdW43cbLgqQiuyACVN2LRpQ0sEX/w="; + sha256 = "sha256-rebjKKWj34FsR8kSwuHpRq4rrOkHRKpzER7mg0sDoxQ="; }; # Module doesn't have tests From 7e07464c250c9478f4398e81550d7222db5340ac Mon Sep 17 00:00:00 2001 From: Weijia Wang <9713184+wegank@users.noreply.github.com> Date: Wed, 8 Feb 2023 10:26:51 +0100 Subject: [PATCH 122/198] yubioath-flutter: fix build on aarch64-linux --- pkgs/applications/misc/yubioath-flutter/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/applications/misc/yubioath-flutter/default.nix b/pkgs/applications/misc/yubioath-flutter/default.nix index e4369a7ab9fd..dde9f3b69862 100644 --- a/pkgs/applications/misc/yubioath-flutter/default.nix +++ b/pkgs/applications/misc/yubioath-flutter/default.nix @@ -11,7 +11,7 @@ let vendorHashes = { x86_64-linux = "sha256-Upe0cEDG02RJD50Ht9VNMwkelsJHX8zOuJZssAhMuMY="; - aarch64-linux = "sha256-Upe0cEDG02RJD50Ht9VNMwkelsJHX8zOuJZssAhMuMY="; + aarch64-linux = "sha256-lKER4+gcyFqnCvgBl/qdVBCbUpocWUnXGLXsX82MSy4="; }; in flutter.mkFlutterApp rec { From fe585e398899151d7aa329fd10e90cb73a028995 Mon Sep 17 00:00:00 2001 From: K900 Date: Wed, 8 Feb 2023 12:35:13 +0300 Subject: [PATCH 123/198] kio-admin: init at 1.0.0 --- pkgs/tools/filesystems/kio-admin/default.nix | 17 +++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 19 insertions(+) create mode 100644 pkgs/tools/filesystems/kio-admin/default.nix diff --git a/pkgs/tools/filesystems/kio-admin/default.nix b/pkgs/tools/filesystems/kio-admin/default.nix new file mode 100644 index 000000000000..f7f7484cc00c --- /dev/null +++ b/pkgs/tools/filesystems/kio-admin/default.nix @@ -0,0 +1,17 @@ +{ stdenv, fetchFromGitLab, cmake, extra-cmake-modules, qtbase, wrapQtAppsHook, kio, ki18n, polkit-qt }: + +stdenv.mkDerivation rec { + pname = "kio-admin"; + version = "1.0.0"; + + src = fetchFromGitLab { + domain = "invent.kde.org"; + owner = "system"; + repo = "kio-admin"; + rev = "v${version}"; + hash = "sha256-llnUsOttqFJVArJdZS9s6qHS9eGbdtdoaPMXKHtsUn4="; + }; + + nativeBuildInputs = [ cmake extra-cmake-modules wrapQtAppsHook ]; + buildInputs = [ qtbase kio ki18n polkit-qt ]; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 3a2404b7e402..6458e9b71680 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8791,6 +8791,8 @@ with pkgs; kibi = callPackage ../applications/editors/kibi { }; + kio-admin = libsForQt5.callPackage ../tools/filesystems/kio-admin { }; + kio-fuse = libsForQt5.callPackage ../tools/filesystems/kio-fuse { }; kismet = callPackage ../applications/networking/sniffers/kismet { }; From 4a514c67547e0f1f1638b0f6fa95a7e7aae04596 Mon Sep 17 00:00:00 2001 From: K900 Date: Wed, 8 Feb 2023 12:35:30 +0300 Subject: [PATCH 124/198] nixos/plasma5: install kio-admin for desktop --- nixos/modules/services/x11/desktop-managers/plasma5.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/nixos/modules/services/x11/desktop-managers/plasma5.nix b/nixos/modules/services/x11/desktop-managers/plasma5.nix index eb0373c686c5..181db01ad88e 100644 --- a/nixos/modules/services/x11/desktop-managers/plasma5.nix +++ b/nixos/modules/services/x11/desktop-managers/plasma5.nix @@ -448,6 +448,7 @@ in dolphin-plugins ffmpegthumbs kdegraphics-thumbnailers + pkgs.kio-admin kio-extras ]; optionalPackages = [ From ba1f0de69499dfba97fcd29bb22106537d2768c0 Mon Sep 17 00:00:00 2001 From: Damien Cassou Date: Thu, 2 Feb 2023 16:03:27 +0100 Subject: [PATCH 125/198] borgmatic: 1.7.2 -> 1.7.6 --- pkgs/tools/backup/borgmatic/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/backup/borgmatic/default.nix b/pkgs/tools/backup/borgmatic/default.nix index dc77b5de403f..dcc4caaa6362 100644 --- a/pkgs/tools/backup/borgmatic/default.nix +++ b/pkgs/tools/backup/borgmatic/default.nix @@ -2,11 +2,11 @@ python3Packages.buildPythonApplication rec { pname = "borgmatic"; - version = "1.7.2"; + version = "1.7.6"; src = python3Packages.fetchPypi { inherit pname version; - sha256 = "sha256-0o2tKg7BfhkNt/k8XdZ1agaSJxKO5OxB5aaRgV9IPeU="; + sha256 = "sha256-TNh0laNAyHkIZLC51hzchSIDvsHst2aPxoRdI6Mdr84="; }; nativeCheckInputs = with python3Packages; [ flexmock pytestCheckHook pytest-cov ]; From b33d6407cc37c9f4fe112692fb0b74a45fc7e7a3 Mon Sep 17 00:00:00 2001 From: Yueh-Shun Li <44064051+ShamrockLee@users.noreply.github.com> Date: Sun, 29 Jan 2023 01:02:47 +0800 Subject: [PATCH 126/198] singularity-tool: format expression --- .../singularity-tools/default.nix | 57 ++++++++++--------- 1 file changed, 31 insertions(+), 26 deletions(-) diff --git a/pkgs/build-support/singularity-tools/default.nix b/pkgs/build-support/singularity-tools/default.nix index 46df792bdf6c..bf542e307008 100644 --- a/pkgs/build-support/singularity-tools/default.nix +++ b/pkgs/build-support/singularity-tools/default.nix @@ -10,8 +10,8 @@ , gawk , util-linux , runtimeShell -, e2fsprogs }: - +, e2fsprogs +}: rec { shellScript = name: text: writeScript name '' @@ -20,35 +20,39 @@ rec { ${text} ''; - mkLayer = { - name, - contents ? [], - }: - runCommand "singularity-layer-${name}" { - inherit contents; - } '' + mkLayer = + { name + , contents ? [ ] + , + }: + runCommand "singularity-layer-${name}" + { + inherit contents; + } '' mkdir $out for f in $contents ; do cp -ra $f $out/ done ''; - buildImage = { - name, - contents ? [], - diskSize ? 1024, - runScript ? "#!${stdenv.shell}\nexec /bin/sh", - runAsRoot ? null, - memSize ? 512 - }: - let layer = mkLayer { - inherit name; - contents = contents ++ [ bash runScriptFile ]; - }; - runAsRootFile = shellScript "run-as-root.sh" runAsRoot; - runScriptFile = shellScript "run-script.sh" runScript; - result = vmTools.runInLinuxVM ( - runCommand "singularity-image-${name}.img" { + buildImage = + { name + , contents ? [ ] + , diskSize ? 1024 + , runScript ? "#!${stdenv.shell}\nexec /bin/sh" + , runAsRoot ? null + , memSize ? 512 + }: + let + layer = mkLayer { + inherit name; + contents = contents ++ [ bash runScriptFile ]; + }; + runAsRootFile = shellScript "run-as-root.sh" runAsRoot; + runScriptFile = shellScript "run-script.sh" runScript; + result = vmTools.runInLinuxVM ( + runCommand "singularity-image-${name}.img" + { buildInputs = [ singularity e2fsprogs util-linux gawk ]; layerClosure = writeReferencesToFile layer; preVM = vmTools.createEmptyImage { @@ -106,5 +110,6 @@ rec { TMPDIR=$(pwd -P) singularity build $out ./img ''); - in result; + in + result; } From 136bbe260598e4497cd6c8973480277e8a030274 Mon Sep 17 00:00:00 2001 From: Yueh-Shun Li <44064051+ShamrockLee@users.noreply.github.com> Date: Sun, 29 Jan 2023 01:02:47 +0800 Subject: [PATCH 127/198] nixos/modules/programs/singularity.nix: format expression --- nixos/modules/programs/singularity.nix | 27 ++++++++++++++------------ 1 file changed, 15 insertions(+), 12 deletions(-) diff --git a/nixos/modules/programs/singularity.nix b/nixos/modules/programs/singularity.nix index 9648d0c27874..e1530e604fe6 100644 --- a/nixos/modules/programs/singularity.nix +++ b/nixos/modules/programs/singularity.nix @@ -3,32 +3,35 @@ with lib; let cfg = config.programs.singularity; - singularity = pkgs.singularity.overrideAttrs (attrs : { + singularity = pkgs.singularity.overrideAttrs (attrs: { installPhase = attrs.installPhase + '' mv $out/libexec/singularity/bin/starter-suid $out/libexec/singularity/bin/starter-suid.orig ln -s /run/wrappers/bin/singularity-suid $out/libexec/singularity/bin/starter-suid ''; }); -in { +in +{ + options.programs.singularity = { enable = mkEnableOption (lib.mdDoc "Singularity"); }; config = mkIf cfg.enable { - environment.systemPackages = [ singularity ]; - security.wrappers.singularity-suid = - { setuid = true; + environment.systemPackages = [ singularity ]; + security.wrappers.singularity-suid = + { + setuid = true; owner = "root"; group = "root"; source = "${singularity}/libexec/singularity/bin/starter-suid.orig"; }; - systemd.tmpfiles.rules = [ - "d /var/singularity/mnt/session 0770 root root -" - "d /var/singularity/mnt/final 0770 root root -" - "d /var/singularity/mnt/overlay 0770 root root -" - "d /var/singularity/mnt/container 0770 root root -" - "d /var/singularity/mnt/source 0770 root root -" - ]; + systemd.tmpfiles.rules = [ + "d /var/singularity/mnt/session 0770 root root -" + "d /var/singularity/mnt/final 0770 root root -" + "d /var/singularity/mnt/overlay 0770 root root -" + "d /var/singularity/mnt/container 0770 root root -" + "d /var/singularity/mnt/source 0770 root root -" + ]; }; } From ef09cfec0bbba5a4adc4745981053654c6c170f2 Mon Sep 17 00:00:00 2001 From: Yueh-Shun Li <44064051+ShamrockLee@users.noreply.github.com> Date: Sun, 29 Jan 2023 01:02:47 +0800 Subject: [PATCH 128/198] all-packages.nix: move the line of singularity per alphabetical ordering --- pkgs/top-level/all-packages.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 3a2404b7e402..d4895b725213 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -30196,6 +30196,8 @@ with pkgs; shepherd = nodePackages."@nerdwallet/shepherd"; + singularity = callPackage ../applications/virtualization/singularity { }; + skate = callPackage ../applications/misc/skate { }; slack = callPackage ../applications/networking/instant-messengers/slack { }; @@ -30206,8 +30208,6 @@ with pkgs; slweb = callPackage ../applications/misc/slweb { }; - singularity = callPackage ../applications/virtualization/singularity { }; - sonixd = callPackage ../applications/audio/sonixd { }; sosreport = python3Packages.callPackage ../applications/logging/sosreport { }; From 26546353f50a54e43e112d861b289391605fbf35 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Wed, 8 Feb 2023 10:52:40 +0100 Subject: [PATCH 129/198] python310Packages.archinfo: 9.2.36 -> 9.2.37 --- pkgs/development/python-modules/archinfo/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/archinfo/default.nix b/pkgs/development/python-modules/archinfo/default.nix index 22a460cc2741..7f7aff682bed 100644 --- a/pkgs/development/python-modules/archinfo/default.nix +++ b/pkgs/development/python-modules/archinfo/default.nix @@ -8,7 +8,7 @@ buildPythonPackage rec { pname = "archinfo"; - version = "9.2.36"; + version = "9.2.37"; format = "pyproject"; disabled = pythonOlder "3.8"; @@ -17,7 +17,7 @@ buildPythonPackage rec { owner = "angr"; repo = pname; rev = "v${version}"; - hash = "sha256-anZsvDIH1AWaFUG5UTuyQiOKeoUB/+MSbu5pjPZJxag="; + hash = "sha256-WGc6FmrS0aVmiY5s8fUVHCT6cqcmj52H6FD2TR1HyK0="; }; nativeBuildInputs = [ From 9fa09eab2e871c1202255d029f193b368b364ec1 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Wed, 8 Feb 2023 10:52:44 +0100 Subject: [PATCH 130/198] python310Packages.ailment: 9.2.36 -> 9.2.37 --- pkgs/development/python-modules/ailment/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/ailment/default.nix b/pkgs/development/python-modules/ailment/default.nix index 2e878b014cc2..81f73d324b1d 100644 --- a/pkgs/development/python-modules/ailment/default.nix +++ b/pkgs/development/python-modules/ailment/default.nix @@ -8,7 +8,7 @@ buildPythonPackage rec { pname = "ailment"; - version = "9.2.36"; + version = "9.2.37"; format = "pyproject"; disabled = pythonOlder "3.8"; @@ -17,7 +17,7 @@ buildPythonPackage rec { owner = "angr"; repo = pname; rev = "v${version}"; - hash = "sha256-PEX2SanglMqjtJHuH+gA5dnikh7qqLFiXbmrcIzs1+A="; + hash = "sha256-MFQiLOCqEAKzST7voMIQH0TYGuwICSVBcQZwUkk9S1Q="; }; nativeBuildInputs = [ From 748a4c726a05f4a3187ae7e25fad81a733f472ec Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Wed, 8 Feb 2023 10:52:47 +0100 Subject: [PATCH 131/198] python310Packages.pyvex: 9.2.36 -> 9.2.37 --- pkgs/development/python-modules/pyvex/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/pyvex/default.nix b/pkgs/development/python-modules/pyvex/default.nix index 58523a13b066..20d7da5f4883 100644 --- a/pkgs/development/python-modules/pyvex/default.nix +++ b/pkgs/development/python-modules/pyvex/default.nix @@ -13,14 +13,14 @@ buildPythonPackage rec { pname = "pyvex"; - version = "9.2.36"; + version = "9.2.37"; format = "pyproject"; disabled = pythonOlder "3.8"; src = fetchPypi { inherit pname version; - hash = "sha256-KV/fkgYUt8hfpGxDO3CNNrC91BaI9W8T2mr2H4eJdxo="; + hash = "sha256-JGTfOE16tycBkbsihKPgSZPlfqun1vr/86kAlNwrSZA="; }; nativeBuildInputs = [ From 5c4a77c4392288b565c47a98b8d17e9adacb6f7d Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Wed, 8 Feb 2023 10:52:54 +0100 Subject: [PATCH 132/198] python310Packages.claripy: 9.2.36 -> 9.2.37 --- pkgs/development/python-modules/claripy/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/claripy/default.nix b/pkgs/development/python-modules/claripy/default.nix index a8811d7f37ac..05ff5762bb35 100644 --- a/pkgs/development/python-modules/claripy/default.nix +++ b/pkgs/development/python-modules/claripy/default.nix @@ -13,7 +13,7 @@ buildPythonPackage rec { pname = "claripy"; - version = "9.2.36"; + version = "9.2.37"; format = "pyproject"; disabled = pythonOlder "3.8"; @@ -22,7 +22,7 @@ buildPythonPackage rec { owner = "angr"; repo = pname; rev = "refs/tags/v${version}"; - hash = "sha256-gF8T1ZTvTjyt+kEOxI3ryDJOZv4go54VTxSGEdUyGt4="; + hash = "sha256-8kABsLp3Nrzjn7staiNfU6HdQTu1x6DNQzilMceqKVY="; }; nativeBuildInputs = [ From af2d3b2e91c8ea95d6112c6f74f79c111c7c1d35 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Wed, 8 Feb 2023 10:52:59 +0100 Subject: [PATCH 133/198] python310Packages.cle: 9.2.36 -> 9.2.37 --- pkgs/development/python-modules/cle/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/cle/default.nix b/pkgs/development/python-modules/cle/default.nix index e1f022c1a463..8ed14ba28cc3 100644 --- a/pkgs/development/python-modules/cle/default.nix +++ b/pkgs/development/python-modules/cle/default.nix @@ -16,7 +16,7 @@ let # The binaries are following the argr projects release cycle - version = "9.2.36"; + version = "9.2.37"; # Binary files from https://github.com/angr/binaries (only used for testing and only here) binaries = fetchFromGitHub { @@ -38,7 +38,7 @@ buildPythonPackage rec { owner = "angr"; repo = pname; rev = "v${version}"; - hash = "sha256-XqoBFV87m/uz0proGDtbaewsoY8vsA6ToGwdv7xvO9Y="; + hash = "sha256-vgH8UAR8B4l29RH0dwMlGVjOHgdcOTfLMHPiKN9Z36s="; }; nativeBuildInputs = [ From 498a1c28a0f96318a7d7a917417ae91ff32f9099 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Wed, 8 Feb 2023 10:53:05 +0100 Subject: [PATCH 134/198] python310Packages.angr: 9.2.36 -> 9.2.37 --- pkgs/development/python-modules/angr/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/angr/default.nix b/pkgs/development/python-modules/angr/default.nix index 4abcad0e7c9b..a164cd284c57 100644 --- a/pkgs/development/python-modules/angr/default.nix +++ b/pkgs/development/python-modules/angr/default.nix @@ -31,7 +31,7 @@ buildPythonPackage rec { pname = "angr"; - version = "9.2.36"; + version = "9.2.37"; format = "pyproject"; disabled = pythonOlder "3.8"; @@ -40,7 +40,7 @@ buildPythonPackage rec { owner = pname; repo = pname; rev = "v${version}"; - hash = "sha256-KVIrhzd3EoDIVImshfjZrBAiNkCtlFAd6Ox9ATsvPTY="; + hash = "sha256-sl3GzNMN90ez1Zks43B2How7QTaaJZbxOxK2hl/UzdQ="; }; propagatedBuildInputs = [ From b1e672e63943ff0e60b65330e98f8378b3dc597d Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Wed, 8 Feb 2023 10:54:55 +0100 Subject: [PATCH 135/198] python310Packages.aiohomekit: 2.4.6 -> 2.5.0 Diff: https://github.com/Jc2k/aiohomekit/compare/refs/tags/2.4.6...2.5.0 Changelog: https://github.com/Jc2k/aiohomekit/releases/tag/2.5.0 --- pkgs/development/python-modules/aiohomekit/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/aiohomekit/default.nix b/pkgs/development/python-modules/aiohomekit/default.nix index e19f613e301a..e9b27ea7a83e 100644 --- a/pkgs/development/python-modules/aiohomekit/default.nix +++ b/pkgs/development/python-modules/aiohomekit/default.nix @@ -18,7 +18,7 @@ buildPythonPackage rec { pname = "aiohomekit"; - version = "2.4.6"; + version = "2.5.0"; format = "pyproject"; disabled = pythonOlder "3.9"; @@ -27,7 +27,7 @@ buildPythonPackage rec { owner = "Jc2k"; repo = pname; rev = "refs/tags/${version}"; - hash = "sha256-QCPZaxVCQSckZ7qjV9wF7YqgTOFPbRy4xOQVDvReav4="; + hash = "sha256-uFmQLeGPnFDABA4Uu1sL/2uUJnL+feclpGyJyISJx2E="; }; nativeBuildInputs = [ From 9819ff90674d381007103d90b106837d016a74c2 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Wed, 8 Feb 2023 10:56:53 +0100 Subject: [PATCH 136/198] python310Packages.peaqevcore: 11.1.2 -> 11.2.0 --- pkgs/development/python-modules/peaqevcore/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/peaqevcore/default.nix b/pkgs/development/python-modules/peaqevcore/default.nix index b8b5f092dcb2..3e1776b97b49 100644 --- a/pkgs/development/python-modules/peaqevcore/default.nix +++ b/pkgs/development/python-modules/peaqevcore/default.nix @@ -6,14 +6,14 @@ buildPythonPackage rec { pname = "peaqevcore"; - version = "11.1.2"; + version = "11.2.0"; format = "setuptools"; disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - hash = "sha256-ZuXc/7xCCFl20+GAMpL1c4iavjr7iR0pTvAoDCMnxx4="; + hash = "sha256-L4QUQsLdFwJPGq8ZdpTHRv5dNn1o6lc1q37LVNNCOOM="; }; postPatch = '' From 50788d2fb00e79c3f3ef720edbb5218d561c8ce7 Mon Sep 17 00:00:00 2001 From: Yueh-Shun Li <44064051+ShamrockLee@users.noreply.github.com> Date: Sun, 29 Jan 2023 01:02:47 +0800 Subject: [PATCH 137/198] apptainer, singularity: fix defaultPath and reflect upstream changes Upstream changes: singularity 3.8.7 (the legacy) -> apptainer 1.1.3 (the renamed) / singularity 3.10.4 (Sylabs's fork) Build process: * Share between different sources * Fix the sed regexp to make defaultPath patch work * allowGoReference is now true * Provied input parameter removeCompat (default to false) that removes the compatible "*singularity*" symbolic links and related autocompletion files when projectName != "singularity" * Change localstatedir to /var/lib * Format with nixpkgs-fmt * Fix the defaultPath patching and use it instead of the ` path` config directive deprecated in Apptainer * Provide dependencies for new functionalities such as squashfuse (unprivileged squashfs mount) * Provide an attribute `defaultPathInputs` to override prefix of container runtime default PATH NixOS module programs.singularity: * Allow users to specify packages * Place related directories to /var/lib * Format with nixpkgs-fmt singularity-tools: * Allow users to specify packages * Place related directories to /var/lib when building images in VM --- .../from_md/release-notes/rl-2305.section.xml | 36 +++ .../manual/release-notes/rl-2305.section.md | 10 + nixos/modules/programs/singularity.nix | 84 +++++-- .../virtualization/singularity/default.nix | 73 ------ .../virtualization/singularity/generic.nix | 222 ++++++++++++++++++ .../virtualization/singularity/packages.nix | 70 ++++++ .../singularity-tools/default.nix | 29 ++- pkgs/top-level/all-packages.nix | 4 +- 8 files changed, 423 insertions(+), 105 deletions(-) delete mode 100644 pkgs/applications/virtualization/singularity/default.nix create mode 100644 pkgs/applications/virtualization/singularity/generic.nix create mode 100644 pkgs/applications/virtualization/singularity/packages.nix diff --git a/nixos/doc/manual/from_md/release-notes/rl-2305.section.xml b/nixos/doc/manual/from_md/release-notes/rl-2305.section.xml index b4041c026129..3c240585b987 100644 --- a/nixos/doc/manual/from_md/release-notes/rl-2305.section.xml +++ b/nixos/doc/manual/from_md/release-notes/rl-2305.section.xml @@ -922,6 +922,42 @@ as general purpose ephemeral block devices has been removed. + + + As Singularity has renamed to + Apptainer + to distinguish from + an + un-renamed fork by Sylabs Inc., there are now two + packages of Singularity/Apptainer: + + + + + apptainer: From + github.com/apptainer/apptainer, which + is the new repo after renaming. + + + + + singularity: From + github.com/sylabs/singularity, which is + the fork by Sylabs Inc.. + + + + + programs.singularity got a new + package option to specify which package to + use. + + + singularity-tools.buildImage got a new + input argument singularity to specify which + package to use. + + The unifi-poller package and corresponding diff --git a/nixos/doc/manual/release-notes/rl-2305.section.md b/nixos/doc/manual/release-notes/rl-2305.section.md index 305458c66546..81a029bf891b 100644 --- a/nixos/doc/manual/release-notes/rl-2305.section.md +++ b/nixos/doc/manual/release-notes/rl-2305.section.md @@ -225,6 +225,16 @@ In addition to numerous new and upgraded packages, this release has the followin - The `zramSwap` is now implemented with `zram-generator`, and the option `zramSwap.numDevices` for using ZRAM devices as general purpose ephemeral block devices has been removed. +- As Singularity has renamed to [Apptainer](https://apptainer.org/news/community-announcement-20211130) + to distinguish from [an un-renamed fork by Sylabs Inc.](https://sylabs.io/2021/05/singularity-community-edition), + there are now two packages of Singularity/Apptainer: + * `apptainer`: From `github.com/apptainer/apptainer`, which is the new repo after renaming. + * `singularity`: From `github.com/sylabs/singularity`, which is the fork by Sylabs Inc.. + + `programs.singularity` got a new `package` option to specify which package to use. + + `singularity-tools.buildImage` got a new input argument `singularity` to specify which package to use. + - The `unifi-poller` package and corresponding NixOS module have been renamed to `unpoller` to match upstream. - The new option `services.tailscale.useRoutingFeatures` controls various settings for using Tailscale features like exit nodes and subnet routers. If you wish to use your machine as an exit node, you can set this setting to `server`, otherwise if you wish to use an exit node you can set this setting to `client`. The strict RPF warning has been removed as the RPF will be loosened automatically based on the value of this setting. diff --git a/nixos/modules/programs/singularity.nix b/nixos/modules/programs/singularity.nix index e1530e604fe6..097c7a7f842b 100644 --- a/nixos/modules/programs/singularity.nix +++ b/nixos/modules/programs/singularity.nix @@ -3,34 +3,78 @@ with lib; let cfg = config.programs.singularity; - singularity = pkgs.singularity.overrideAttrs (attrs: { - installPhase = attrs.installPhase + '' - mv $out/libexec/singularity/bin/starter-suid $out/libexec/singularity/bin/starter-suid.orig - ln -s /run/wrappers/bin/singularity-suid $out/libexec/singularity/bin/starter-suid - ''; - }); in { options.programs.singularity = { - enable = mkEnableOption (lib.mdDoc "Singularity"); + enable = mkEnableOption (mdDoc "singularity") // { + description = mdDoc '' + Whether to install Singularity/Apptainer with system-level overriding such as SUID support. + ''; + }; + package = mkOption { + type = types.package; + default = pkgs.singularity; + defaultText = literalExpression "pkgs.singularity"; + example = literalExpression "pkgs.apptainer"; + description = mdDoc '' + Singularity/Apptainer package to override and install. + ''; + }; + packageOverriden = mkOption { + type = types.nullOr types.package; + default = null; + description = mdDoc '' + This option provides access to the overriden result of `programs.singularity.package`. + + For example, the following configuration makes all the Nixpkgs packages use the overriden `singularity`: + ```Nix + { config, lib, pkgs, ... }: + { + nixpkgs.overlays = [ + (final: prev: { + _singularity-orig = prev.singularity; + singularity = config.programs.singularity.packageOverriden; + }) + ]; + programs.singularity.enable = true; + programs.singularity.package = pkgs._singularity-orig; + } + ``` + + Use `lib.mkForce` to forcefully specify the overriden package. + ''; + }; + enableSuid = mkOption { + type = types.bool; + default = true; + example = false; + description = mdDoc '' + Whether to enable the SUID support of Singularity/Apptainer. + ''; + }; }; config = mkIf cfg.enable { - environment.systemPackages = [ singularity ]; - security.wrappers.singularity-suid = - { - setuid = true; - owner = "root"; - group = "root"; - source = "${singularity}/libexec/singularity/bin/starter-suid.orig"; - }; + programs.singularity.packageOverriden = (cfg.package.override ( + optionalAttrs cfg.enableSuid { + enableSuid = true; + starterSuidPath = "/run/wrappers/bin/${cfg.package.projectName}-suid"; + } + )); + environment.systemPackages = [ cfg.packageOverriden ]; + security.wrappers."${cfg.packageOverriden.projectName}-suid" = mkIf cfg.enableSuid { + setuid = true; + owner = "root"; + group = "root"; + source = "${cfg.packageOverriden}/libexec/${cfg.packageOverriden.projectName}/bin/starter-suid.orig"; + }; systemd.tmpfiles.rules = [ - "d /var/singularity/mnt/session 0770 root root -" - "d /var/singularity/mnt/final 0770 root root -" - "d /var/singularity/mnt/overlay 0770 root root -" - "d /var/singularity/mnt/container 0770 root root -" - "d /var/singularity/mnt/source 0770 root root -" + "d /var/lib/${cfg.packageOverriden.projectName}/mnt/session 0770 root root -" + "d /var/lib/${cfg.packageOverriden.projectName}/mnt/final 0770 root root -" + "d /var/lib/${cfg.packageOverriden.projectName}/mnt/overlay 0770 root root -" + "d /var/lib/${cfg.packageOverriden.projectName}/mnt/container 0770 root root -" + "d /var/lib/${cfg.packageOverriden.projectName}/mnt/source 0770 root root -" ]; }; diff --git a/pkgs/applications/virtualization/singularity/default.nix b/pkgs/applications/virtualization/singularity/default.nix deleted file mode 100644 index 5ec5b19ce042..000000000000 --- a/pkgs/applications/virtualization/singularity/default.nix +++ /dev/null @@ -1,73 +0,0 @@ -{ lib -, fetchurl -, util-linux -, gpgme -, openssl -, libuuid -, coreutils -, which -, makeWrapper -, cryptsetup -, squashfsTools -, buildGoPackage}: - -with lib; - -buildGoPackage rec { - pname = "singularity"; - version = "3.8.7"; - - src = fetchurl { - url = "https://github.com/hpcng/singularity/releases/download/v${version}/singularity-${version}.tar.gz"; - sha256 = "sha256-Myny5YP4SoNDyywDgKHWy86vrn0eYztcvK33FD6shZs="; - }; - - goPackagePath = "github.com/sylabs/singularity"; - - buildInputs = [ gpgme openssl libuuid ]; - nativeBuildInputs = [ util-linux which makeWrapper cryptsetup ]; - propagatedBuildInputs = [ coreutils squashfsTools ]; - - postPatch = '' - substituteInPlace internal/pkg/build/files/copy.go \ - --replace /bin/cp ${coreutils}/bin/cp - ''; - - postConfigure = '' - cd go/src/github.com/sylabs/singularity - - patchShebangs . - sed -i 's|defaultPath := "[^"]*"|defaultPath := "${lib.makeBinPath propagatedBuildInputs}"|' cmd/internal/cli/actions.go - - ./mconfig -V ${version} -p $out --localstatedir=/var - - # Don't install SUID binaries - sed -i 's/-m 4755/-m 755/g' builddir/Makefile - ''; - - buildPhase = '' - runHook preBuild - make -C builddir - runHook postBuild - ''; - - installPhase = '' - runHook preInstall - make -C builddir install LOCALSTATEDIR=$out/var - chmod 755 $out/libexec/singularity/bin/starter-suid - - # Explicitly configure paths in the config file - sed -i 's|^# mksquashfs path =.*$|mksquashfs path = ${lib.makeBinPath [squashfsTools]}/mksquashfs|' $out/etc/singularity/singularity.conf - sed -i 's|^# cryptsetup path =.*$|cryptsetup path = ${lib.makeBinPath [cryptsetup]}/cryptsetup|' $out/etc/singularity/singularity.conf - - runHook postInstall - ''; - - meta = with lib; { - homepage = "http://www.sylabs.io/"; - description = "Application containers for linux"; - license = licenses.bsd3; - platforms = platforms.linux; - maintainers = [ maintainers.jbedo ]; - }; -} diff --git a/pkgs/applications/virtualization/singularity/generic.nix b/pkgs/applications/virtualization/singularity/generic.nix new file mode 100644 index 000000000000..6910674b93e1 --- /dev/null +++ b/pkgs/applications/virtualization/singularity/generic.nix @@ -0,0 +1,222 @@ +# Configurations that should only be overrided by +# overrideAttrs +{ pname +, version +, src +, projectName # "apptainer" or "singularity" +, vendorHash ? null +, deleteVendor ? false +, proxyVendor ? false +, extraConfigureFlags ? [ ] +, extraDescription ? "" +, extraMeta ? { } +}: + +let + # Workaround for vendor-related attributes not overridable (#86349) + # should be removed when the issue is resolved + _defaultGoVendorArgs = { + inherit + vendorHash + deleteVendor + proxyVendor + ; + }; +in +{ lib +, buildGoModule + # Native build inputs +, makeWrapper +, pkg-config +, util-linux +, which + # Build inputs +, bash +, conmon +, coreutils +, cryptsetup +, fakeroot +, go +, gpgme +, libseccomp +, libuuid + # This is for nvidia-container-cli +, nvidia-docker +, openssl +, squashfsTools +, squashfuse + # Overridable configurations +, enableNvidiaContainerCli ? true + # Compile with seccomp support + # SingularityCE 3.10.0 and above requires explicit --without-seccomp when libseccomp is not available. +, enableSeccomp ? true + # Whether the configure script treat SUID support as default +, defaultToSuid ? true + # Whether to compile with SUID support +, enableSuid ? false +, starterSuidPath ? null + # Remove the symlinks to `singularity*` when projectName != "singularity" +, removeCompat ? false + # Workaround #86349 + # should be removed when the issue is resolved +, vendorHash ? _defaultGoVendorArgs.vendorHash +, deleteVendor ? _defaultGoVendorArgs.deleteVendor +, proxyVendor ? _defaultGoVendorArgs.proxyVendor +}: + +let + defaultPathOriginal = "/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/local/sbin"; +in +buildGoModule { + inherit pname version src; + + # Override vendorHash with the output got from + # nix-prefetch -E "{ sha256 }: ((import ./. { }).apptainer.override { vendorHash = sha256; }).go-modules" + # or with `null` when using vendored source tarball. + inherit vendorHash deleteVendor proxyVendor; + + # go is used to compile extensions when building container images + allowGoReference = true; + + strictDeps = true; + + passthru = { + inherit + enableSeccomp + enableSuid + projectName + removeCompat + starterSuidPath + ; + }; + + nativeBuildInputs = [ + makeWrapper + pkg-config + util-linux + which + ]; + + buildInputs = [ + bash # To patch /bin/sh shebangs. + conmon + cryptsetup + gpgme + libuuid + openssl + squashfsTools + squashfuse + ] + ++ lib.optional enableNvidiaContainerCli nvidia-docker + ++ lib.optional enableSeccomp libseccomp + ; + + configureScript = "./mconfig"; + + configureFlags = [ + "--localstatedir=/var/lib" + "--runstatedir=/var/run" + ] + ++ lib.optional (!enableSeccomp) "--without-seccomp" + ++ lib.optional (defaultToSuid && !enableSuid) "--without-suid" + ++ lib.optional (!defaultToSuid && enableSuid) "--with-suid" + ++ extraConfigureFlags + ; + + # Packages to prefix to the Apptainer/Singularity container runtime default PATH + # Use overrideAttrs to override + defaultPathInputs = [ + bash + coreutils + cryptsetup # cryptsetup + go + squashfsTools # mksquashfs unsquashfs # Make / unpack squashfs image + squashfuse # squashfuse_ll squashfuse # Mount (without unpacking) a squashfs image without privileges + ] + ++ lib.optional enableNvidiaContainerCli nvidia-docker + ; + + postPatch = '' + if [[ ! -e .git || ! -e VERSION ]]; then + echo "${version}" > VERSION + fi + # Patch shebangs for script run during build + patchShebangs --build "$configureScript" makeit e2e scripts mlocal/scripts + # Patching the hard-coded defaultPath by prefixing the packages in defaultPathInputs + substituteInPlace cmd/internal/cli/actions.go \ + --replace "defaultPath = \"${defaultPathOriginal}\"" "defaultPath = \"''${defaultPathInputs// /\/bin:}''${defaultPathInputs:+/bin:}${defaultPathOriginal}\"" + ''; + + postConfigure = '' + # Code borrowed from pkgs/stdenv/generic/setup.sh configurePhase() + + # set to empty if unset + : ''${configureFlags=} + + # shellcheck disable=SC2086 + $configureScript -V ${version} "''${prefixKey:---prefix=}$prefix" $configureFlags "''${configureFlagsArray[@]}" + + # End of the code from pkgs/stdenv/generic/setup.sh configurPhase() + ''; + + buildPhase = '' + runHook preBuild + make -C builddir -j"$NIX_BUILD_CORES" + runHook postBuild + ''; + + installPhase = '' + runHook preInstall + make -C builddir install LOCALSTATEDIR="$out/var/lib" + runHook postInstall + ''; + + postFixup = '' + substituteInPlace "$out/bin/run-singularity" \ + --replace "/usr/bin/env ${projectName}" "$out/bin/${projectName}" + wrapProgram "$out/bin/${projectName}" \ + --prefix PATH : "${lib.makeBinPath [ + fakeroot + squashfsTools # Singularity (but not Apptainer) expects unsquashfs from the host PATH + ]}" + # Make changes in the config file + ${lib.optionalString enableNvidiaContainerCli '' + substituteInPlace "$out/etc/${projectName}/${projectName}.conf" \ + --replace "use nvidia-container-cli = no" "use nvidia-container-cli = yes" + ''} + ${lib.optionalString (removeCompat && (projectName != "singularity")) '' + unlink "$out/bin/singularity" + for file in "$out"/share/man/man?/singularity*.gz; do + if [[ -L "$file" ]]; then + unlink "$file" + fi + done + for file in "$out"/share/*-completion/completions/singularity; do + if [[ -e "$file" ]] + rm "$file" + done + ''} + ${lib.optionalString enableSuid (lib.warnIf (isNull starterSuidPath) "${projectName}: Null starterSuidPath when enableSuid produces non-SUID-ed starter-suid and run-time permission denial." '' + chmod +x $out/libexec/${projectName}/bin/starter-suid + '')} + ${lib.optionalString (enableSuid && !isNull starterSuidPath) '' + mv "$out"/libexec/${projectName}/bin/starter-suid{,.orig} + ln -s ${lib.escapeShellArg starterSuidPath} "$out/libexec/${projectName}/bin/starter-suid" + ''} + ''; + + meta = with lib; { + description = "Application containers for linux" + extraDescription; + longDescription = '' + Singularity (the upstream) renamed themselves to Apptainer + to distinguish themselves from a fork made by Sylabs Inc.. See + + https://sylabs.io/2021/05/singularity-community-edition + https://apptainer.org/news/community-announcement-20211130 + ''; + license = licenses.bsd3; + platforms = platforms.linux; + maintainers = with maintainers; [ jbedo ShamrockLee ]; + mainProgram = projectName; + } // extraMeta; +} diff --git a/pkgs/applications/virtualization/singularity/packages.nix b/pkgs/applications/virtualization/singularity/packages.nix new file mode 100644 index 000000000000..c0f0d79d43f7 --- /dev/null +++ b/pkgs/applications/virtualization/singularity/packages.nix @@ -0,0 +1,70 @@ +{ callPackage +, fetchFromGitHub +, conmon +}: + +{ + apptainer = callPackage + (import ./generic.nix rec { + pname = "apptainer"; + # TODO: Upgrade to 1.1.4 only after https://github.com/apptainer/apptainer/pull/967 get merge + # and https://github.com/apptainer/apptainer/issues/958 get fixed + version = "1.1.3"; + projectName = "apptainer"; + + src = fetchFromGitHub { + owner = "apptainer"; + repo = "apptainer"; + rev = "v${version}"; + hash = "sha256-QFg6RC77OE/a6Qlzn6Zi5I7Iaq/U3/m0eI9yLArzuNc="; + }; + + # Update by running + # nix-prefetch -E "{ sha256 }: ((import ./. { }).apptainer.override { vendorHash = sha256; }).go-modules" + # at the root directory of the Nixpkgs repository + vendorHash = "sha256-tAnh7A8Lw5KtY7hq+sqHMEUlgXvgeeCKKIfRZFoRtug="; + + extraDescription = " (previously known as Singularity)"; + extraMeta.homepage = "https://apptainer.org"; + }) + { + # Apptainer doesn't depend on conmon + conmon = null; + + # defaultToSuid becomes false since Apptainer 1.1.0 + # https://github.com/apptainer/apptainer/pull/495 + # https://github.com/apptainer/apptainer/releases/tag/v1.1.0 + defaultToSuid = false; + }; + + singularity = callPackage + (import ./generic.nix rec { + pname = "singularity-ce"; + version = "3.10.4"; + projectName = "singularity"; + + src = fetchFromGitHub { + owner = "sylabs"; + repo = "singularity"; + rev = "v${version}"; + hash = "sha256-bUnQXQVwaVA3Lkw3X9TBWqNBgiPxAVCHnkq0vc+CIsM="; + }; + + # Update by running + # nix-prefetch -E "{ sha256 }: ((import ./. { }).singularity.override { vendorHash = sha256; }).go-modules" + # at the root directory of the Nixpkgs repository + vendorHash = "sha256-K8helLcOuz3E4LzBE9y3pnZqwdwhO/iMPTN1o22ipVg="; + + # Do not build conmon from the Git submodule source, + # Use Nixpkgs provided version + extraConfigureFlags = [ + "--without-conmon" + ]; + + extraDescription = " (Sylabs Inc's fork of Singularity, a.k.a. SingularityCE)"; + extraMeta.homepage = "https://sylabs.io/"; + }) + { + defaultToSuid = true; + }; +} diff --git a/pkgs/build-support/singularity-tools/default.nix b/pkgs/build-support/singularity-tools/default.nix index bf542e307008..9689e4124590 100644 --- a/pkgs/build-support/singularity-tools/default.nix +++ b/pkgs/build-support/singularity-tools/default.nix @@ -23,9 +23,10 @@ rec { mkLayer = { name , contents ? [ ] - , + # May be "apptainer" instead of "singularity" + , projectName ? (singularity.projectName or "singularity") }: - runCommand "singularity-layer-${name}" + runCommand "${projectName}-layer-${name}" { inherit contents; } '' @@ -36,28 +37,34 @@ rec { ''; buildImage = + let + defaultSingularity = singularity; + in { name , contents ? [ ] , diskSize ? 1024 , runScript ? "#!${stdenv.shell}\nexec /bin/sh" , runAsRoot ? null , memSize ? 512 + , singularity ? defaultSingularity }: let + projectName = singularity.projectName or "singularity"; layer = mkLayer { inherit name; contents = contents ++ [ bash runScriptFile ]; + inherit projectName; }; runAsRootFile = shellScript "run-as-root.sh" runAsRoot; runScriptFile = shellScript "run-script.sh" runScript; result = vmTools.runInLinuxVM ( - runCommand "singularity-image-${name}.img" + runCommand "${projectName}-image-${name}.img" { buildInputs = [ singularity e2fsprogs util-linux gawk ]; layerClosure = writeReferencesToFile layer; preVM = vmTools.createEmptyImage { size = diskSize; - fullName = "singularity-run-disk"; + fullName = "${projectName}-run-disk"; }; inherit memSize; } @@ -96,18 +103,18 @@ rec { if [ ! -e bin/sh ]; then ln -s ${runtimeShell} bin/sh fi - mkdir -p .singularity.d - ln -s ${runScriptFile} .singularity.d/runscript + mkdir -p .${projectName}.d + ln -s ${runScriptFile} .${projectName}.d/runscript - # Fill out .singularity.d - mkdir -p .singularity.d/env - touch .singularity.d/env/94-appsbase.sh + # Fill out .${projectName}.d + mkdir -p .${projectName}.d/env + touch .${projectName}.d/env/94-appsbase.sh cd .. - mkdir -p /var/singularity/mnt/{container,final,overlay,session,source} + mkdir -p /var/lib/${projectName}/mnt/{container,final,overlay,session,source} echo "root:x:0:0:System administrator:/root:/bin/sh" > /etc/passwd echo > /etc/resolv.conf - TMPDIR=$(pwd -P) singularity build $out ./img + TMPDIR=$(pwd -P) ${projectName} build $out ./img ''); in diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d4895b725213..d0aa674ac8f5 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -30196,7 +30196,9 @@ with pkgs; shepherd = nodePackages."@nerdwallet/shepherd"; - singularity = callPackage ../applications/virtualization/singularity { }; + inherit (callPackage ../applications/virtualization/singularity/packages.nix { }) + apptainer + singularity; skate = callPackage ../applications/misc/skate { }; From 71a89291ee0643b23b87aba090c885324d30bc45 Mon Sep 17 00:00:00 2001 From: Yueh-Shun Li <44064051+ShamrockLee@users.noreply.github.com> Date: Sun, 29 Jan 2023 01:02:48 +0800 Subject: [PATCH 138/198] apptainer, singularity: enable non-FHS --fakeroot support This patch provides input arguments `newuidmapPath` and `newgidmapPath` for apptainer and singularity to specify the path to the SUID-ed executables newuidmap and newgidmap where they are not available from the FHS PATH. As NixOS places those suided executables in a non-FHS position (/run/wrapper/bin), this patch provides programs.singularity.enableFakeroot option and implement with the above input parameters. --- .../from_md/release-notes/rl-2305.section.xml | 10 ++++++++++ nixos/doc/manual/release-notes/rl-2305.section.md | 2 ++ nixos/modules/programs/singularity.nix | 13 ++++++++++++- .../virtualization/singularity/generic.nix | 14 ++++++++++++++ 4 files changed, 38 insertions(+), 1 deletion(-) diff --git a/nixos/doc/manual/from_md/release-notes/rl-2305.section.xml b/nixos/doc/manual/from_md/release-notes/rl-2305.section.xml index 3c240585b987..6936fdd2605f 100644 --- a/nixos/doc/manual/from_md/release-notes/rl-2305.section.xml +++ b/nixos/doc/manual/from_md/release-notes/rl-2305.section.xml @@ -958,6 +958,16 @@ package to use. + + + The new option + programs.singularity.enableFakeroot, if set + to true, provides + --fakeroot support for + apptainer and + singularity. + + The unifi-poller package and corresponding diff --git a/nixos/doc/manual/release-notes/rl-2305.section.md b/nixos/doc/manual/release-notes/rl-2305.section.md index 81a029bf891b..b7614c0788cf 100644 --- a/nixos/doc/manual/release-notes/rl-2305.section.md +++ b/nixos/doc/manual/release-notes/rl-2305.section.md @@ -235,6 +235,8 @@ In addition to numerous new and upgraded packages, this release has the followin `singularity-tools.buildImage` got a new input argument `singularity` to specify which package to use. +- The new option `programs.singularity.enableFakeroot`, if set to `true`, provides `--fakeroot` support for `apptainer` and `singularity`. + - The `unifi-poller` package and corresponding NixOS module have been renamed to `unpoller` to match upstream. - The new option `services.tailscale.useRoutingFeatures` controls various settings for using Tailscale features like exit nodes and subnet routers. If you wish to use your machine as an exit node, you can set this setting to `server`, otherwise if you wish to use an exit node you can set this setting to `client`. The strict RPF warning has been removed as the RPF will be loosened automatically based on the value of this setting. diff --git a/nixos/modules/programs/singularity.nix b/nixos/modules/programs/singularity.nix index 097c7a7f842b..4884e5bdf2dd 100644 --- a/nixos/modules/programs/singularity.nix +++ b/nixos/modules/programs/singularity.nix @@ -45,6 +45,14 @@ in Use `lib.mkForce` to forcefully specify the overriden package. ''; }; + enableFakeroot = mkOption { + type = types.bool; + default = true; + example = false; + description = mdDoc '' + Whether to enable the `--fakeroot` support of Singularity/Apptainer. + ''; + }; enableSuid = mkOption { type = types.bool; default = true; @@ -57,7 +65,10 @@ in config = mkIf cfg.enable { programs.singularity.packageOverriden = (cfg.package.override ( - optionalAttrs cfg.enableSuid { + optionalAttrs cfg.enableFakeroot { + newuidmapPath = "/run/wrappers/bin/newuidmap"; + newgidmapPath = "/run/wrappers/bin/newgidmap"; + } // optionalAttrs cfg.enableSuid { enableSuid = true; starterSuidPath = "/run/wrappers/bin/${cfg.package.projectName}-suid"; } diff --git a/pkgs/applications/virtualization/singularity/generic.nix b/pkgs/applications/virtualization/singularity/generic.nix index 6910674b93e1..562781b09a31 100644 --- a/pkgs/applications/virtualization/singularity/generic.nix +++ b/pkgs/applications/virtualization/singularity/generic.nix @@ -25,6 +25,7 @@ let in { lib , buildGoModule +, runCommandLocal # Native build inputs , makeWrapper , pkg-config @@ -55,6 +56,12 @@ in # Whether to compile with SUID support , enableSuid ? false , starterSuidPath ? null + # newuidmapPath and newgidmapPath are to support --fakeroot + # where those SUID-ed executables are unavailable from the FHS system PATH. + # Path to SUID-ed newuidmap executable +, newuidmapPath ? null + # Path to SUID-ed newgidmap executable +, newgidmapPath ? null # Remove the symlinks to `singularity*` when projectName != "singularity" , removeCompat ? false # Workaround #86349 @@ -66,6 +73,12 @@ in let defaultPathOriginal = "/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/local/sbin"; + privileged-un-utils = if ((isNull newuidmapPath) && (isNull newgidmapPath)) then null else + (runCommandLocal "privileged-un-utils" { } '' + mkdir -p "$out/bin" + ln -s ${lib.escapeShellArg newuidmapPath} "$out/bin/newuidmap" + ln -s ${lib.escapeShellArg newgidmapPath} "$out/bin/newgidmap" + ''); in buildGoModule { inherit pname version src; @@ -130,6 +143,7 @@ buildGoModule { coreutils cryptsetup # cryptsetup go + privileged-un-utils squashfsTools # mksquashfs unsquashfs # Make / unpack squashfs image squashfuse # squashfuse_ll squashfuse # Mount (without unpacking) a squashfs image without privileges ] From d35f5c2695ee27e69229b870e74b7fb0c5e976e8 Mon Sep 17 00:00:00 2001 From: Yueh-Shun Li <44064051+ShamrockLee@users.noreply.github.com> Date: Sun, 29 Jan 2023 01:02:48 +0800 Subject: [PATCH 139/198] apptainer-overriden-nixos,singularity-overriden-nixos: init --- .../virtualization/singularity/packages.nix | 28 +++++++++++++++++-- pkgs/top-level/all-packages.nix | 5 +++- 2 files changed, 30 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/virtualization/singularity/packages.nix b/pkgs/applications/virtualization/singularity/packages.nix index c0f0d79d43f7..06c8c4fcc0da 100644 --- a/pkgs/applications/virtualization/singularity/packages.nix +++ b/pkgs/applications/virtualization/singularity/packages.nix @@ -1,9 +1,9 @@ { callPackage , fetchFromGitHub +, nixos , conmon }: - -{ +let apptainer = callPackage (import ./generic.nix rec { pname = "apptainer"; @@ -67,4 +67,28 @@ { defaultToSuid = true; }; + + genOverridenNixos = package: packageName: (nixos { + programs.singularity = { + enable = true; + inherit package; + }; + }).config.programs.singularity.packageOverriden.overrideAttrs (oldAttrs: { + meta = oldAttrs.meta // { + description = ""; + longDescription = '' + This package produces identical store derivations to `pkgs.${packageName}` + overriden and installed by the NixOS module `programs.singularity` + with default configuration. + + This is for binary substitutes only. Use pkgs.${packageName} instead. + ''; + }; + }); +in +{ + inherit apptainer singularity; + + apptainer-overriden-nixos = genOverridenNixos apptainer "apptainer"; + singularity-overriden-nixos = genOverridenNixos singularity "singularity"; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d0aa674ac8f5..c599f7f51059 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -30198,7 +30198,10 @@ with pkgs; inherit (callPackage ../applications/virtualization/singularity/packages.nix { }) apptainer - singularity; + singularity + apptainer-overriden-nixos + singularity-overriden-nixos + ; skate = callPackage ../applications/misc/skate { }; From 09d1372cb900186ac865132b1ac6f0125c4026fd Mon Sep 17 00:00:00 2001 From: Phillip Seeber Date: Mon, 6 Feb 2023 17:10:55 +0100 Subject: [PATCH 140/198] harminv: init at 1.4.2 --- .../science/chemistry/harminv/default.nix | 42 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 44 insertions(+) create mode 100644 pkgs/development/libraries/science/chemistry/harminv/default.nix diff --git a/pkgs/development/libraries/science/chemistry/harminv/default.nix b/pkgs/development/libraries/science/chemistry/harminv/default.nix new file mode 100644 index 000000000000..54c0d03979ab --- /dev/null +++ b/pkgs/development/libraries/science/chemistry/harminv/default.nix @@ -0,0 +1,42 @@ +{ lib +, stdenv +, fetchFromGitHub +, autoreconfHook +, gfortran +, blas +, lapack +}: + +assert !blas.isILP64; +assert !lapack.isILP64; + +stdenv.mkDerivation rec { + pname = "harminv"; + version = "1.4.2"; + + src = fetchFromGitHub { + owner = "NanoComp"; + repo = pname; + rev = "v${version}"; + hash = "sha256-EXEt7l69etcBdDdEDlD1ODOdhTBZCVjgY1jhRUDd/W0="; + }; + + # File is missing in the git checkout but required by autotools + postPatch = '' + touch ChangeLog + ''; + + nativeBuildInputs = [ autoreconfHook gfortran ]; + + buildInputs = [ blas lapack ]; + + configureFlags = [ "--enable-shared" ]; + + meta = with lib; { + description = "Harmonic inversion algorithm of Mandelshtam: decompose signal into sum of decaying sinusoids"; + homepage = "https://github.com/NanoComp/harminv"; + license = with licenses; [ gpl2Only ]; + maintainers = with maintainers; [ sheepforce markuskowa ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 3a2404b7e402..226314f9f199 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7899,6 +7899,8 @@ with pkgs; gyb = callPackage ../tools/backup/gyb { }; + harminv = callPackage ../development/libraries/science/chemistry/harminv { }; + igrep = callPackage ../tools/text/igrep { inherit (darwin.apple_sdk.frameworks) Security; }; From 4c45a5f874b50df05ae812afea91e0c7311c5b85 Mon Sep 17 00:00:00 2001 From: Phillip Seeber Date: Mon, 6 Feb 2023 13:29:29 +0100 Subject: [PATCH 141/198] libGDSII: init at 0.21 --- .../science/chemistry/libGDSII/default.nix | 32 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 34 insertions(+) create mode 100644 pkgs/development/libraries/science/chemistry/libGDSII/default.nix diff --git a/pkgs/development/libraries/science/chemistry/libGDSII/default.nix b/pkgs/development/libraries/science/chemistry/libGDSII/default.nix new file mode 100644 index 000000000000..c3257bad3e26 --- /dev/null +++ b/pkgs/development/libraries/science/chemistry/libGDSII/default.nix @@ -0,0 +1,32 @@ +{ lib +, stdenv +, fetchFromGitHub +, autoreconfHook +}: + +stdenv.mkDerivation rec { + pname = "libGDSII"; + version = "0.21"; + + src = fetchFromGitHub { + owner = "HomerReid"; + repo = pname; + rev = "v${version}"; + hash = "sha256-EXEt7l69etcBdDdEDlD1ODOdhTBZCVjgY1jhRUDd/W0="; + }; + + # File is missing in the repo but automake requires it + postPatch = '' + touch ChangeLog + ''; + + nativeBuildInputs = [ autoreconfHook ]; + + meta = with lib; { + description = "Library and command-line utility for reading GDSII geometry files"; + homepage = "https://github.com/HomerReid/libGDSII"; + license = [ licenses.gpl2Only ]; + maintainers = with maintainers; [ sheepforce markuskowa ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 226314f9f199..af044d10f32b 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -27322,6 +27322,8 @@ with pkgs; ledger-udev-rules = callPackage ../os-specific/linux/ledger-udev-rules {}; + libGDSII = callPackage ../development/libraries/science/chemistry/libGDSII { }; + inherit (callPackages ../data/fonts/liberation-fonts { }) liberation_ttf_v1 liberation_ttf_v2 From bd09beae9e9ce65b61fd445c976316ef1df3017a Mon Sep 17 00:00:00 2001 From: Phillip Seeber Date: Wed, 8 Feb 2023 11:28:15 +0100 Subject: [PATCH 142/198] meep: init at 1.25.0 meep: more comments --- .../python-modules/meep/default.nix | 151 ++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 153 insertions(+) create mode 100644 pkgs/development/python-modules/meep/default.nix diff --git a/pkgs/development/python-modules/meep/default.nix b/pkgs/development/python-modules/meep/default.nix new file mode 100644 index 000000000000..021121a44ac2 --- /dev/null +++ b/pkgs/development/python-modules/meep/default.nix @@ -0,0 +1,151 @@ +{ stdenv +, lib +, buildPythonPackage +, fetchFromGitHub +, autoreconfHook +, pkg-config +, gfortran +, mpi +, blas +, lapack +, fftw +, hdf5-mpi +, swig +, gsl +, harminv +, libctl +, libGDSII +, openssh +, guile +, python +, numpy +, scipy +, matplotlib +, h5py-mpi +, cython +, autograd +, mpi4py +}: + +assert !blas.isILP64; +assert !lapack.isILP64; + +buildPythonPackage rec { + pname = "meep"; + version = "1.25.0"; + + src = fetchFromGitHub { + owner = "NanoComp"; + repo = pname; + rev = "v${version}"; + hash = "sha256-4rIz2RXLSWzZbRuv8d4nidOa0ULYc4QHIdaYrGu1WkI="; + }; + + format = "other"; + + # MPI is needed in nativeBuildInputs too, otherwise MPI libs will be missing + # at runtime + nativeBuildInputs = [ + autoreconfHook + gfortran + pkg-config + swig + mpi + ]; + + buildInputs = [ + gsl + blas + lapack + fftw + hdf5-mpi + harminv + libctl + libGDSII + guile + gsl + ]; + + propagatedBuildInputs = [ + mpi + numpy + scipy + matplotlib + h5py-mpi + cython + autograd + mpi4py + ]; + + propagatedUserEnvPkgs = [ mpi ]; + + dontUseSetuptoolsBuild = true; + dontUsePipInstall = true; + dontUseSetuptoolsCheck = true; + + enableParallelBuilding = true; + + preConfigure = '' + export HDF5_MPI=ON + export PYTHON=${python}/bin/${python.executable}; + ''; + + configureFlags = [ + "--without-libctl" + "--enable-shared" + "--with-mpi" + "--with-openmp" + "--enable-maintainer-mode" + ]; + + passthru = { inherit mpi; }; + + /* + This test is taken from the MEEP tutorial "Fields in a Waveguide" at + . + It is important, that the test actually performs a calculation + (calls `sim.run()`), as only then MPI will be initialised and MPI linking + errors can be caught. + */ + doCheck = true; + checkPhase = '' + export PATH=$PATH:${openssh}/bin + export PYTHONPATH="$out/lib/${python.libPrefix}/site-packages:$PYTHONPATH" + + export OMP_NUM_THREADS=1 + + # Fix to make mpich run in a sandbox + export HYDRA_IFACE=lo + export OMPI_MCA_rmaps_base_oversubscribe=1 + + # Generate a python test script + cat > test.py << EOF + import meep as mp + cell = mp.Vector3(16,8,0) + geometry = [mp.Block(mp.Vector3(mp.inf,1,mp.inf), + center=mp.Vector3(), + material=mp.Medium(epsilon=12))] + sources = [mp.Source(mp.ContinuousSource(frequency=0.15), + component=mp.Ez, + center=mp.Vector3(-7,0))] + pml_layers = [mp.PML(1.0)] + resolution = 10 + sim = mp.Simulation(cell_size=cell, + boundary_layers=pml_layers, + geometry=geometry, + sources=sources, + resolution=resolution) + sim.run(until=200) + EOF + + ${mpi}/bin/mpiexec -np 2 python3 test.py + ''; + + meta = with lib; { + description = "Free finite-difference time-domain (FDTD) software for electromagnetic simulations"; + homepage = "https://meep.readthedocs.io/en/latest/"; + license = licenses.gpl2Only; + platforms = platforms.linux; + maintainers = with maintainers; [ sheepforce markuskowa ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 988f7e71981c..79fd78f9d70b 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -5804,6 +5804,8 @@ self: super: with self; { mediapy = callPackage ../development/python-modules/mediapy { }; + meep = callPackage ../development/python-modules/meep { }; + meilisearch = callPackage ../development/python-modules/meilisearch { }; meinheld = callPackage ../development/python-modules/meinheld { }; From ee0eef3c84967939a3a9d9bc9fd2d2a81976b938 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 8 Feb 2023 11:37:52 +0000 Subject: [PATCH 143/198] quickemu: 4.5 -> 4.6 --- pkgs/development/quickemu/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/quickemu/default.nix b/pkgs/development/quickemu/default.nix index d5b56f585eca..25cb3b4d7eb8 100644 --- a/pkgs/development/quickemu/default.nix +++ b/pkgs/development/quickemu/default.nix @@ -50,13 +50,13 @@ in stdenv.mkDerivation rec { pname = "quickemu"; - version = "4.5"; + version = "4.6"; src = fetchFromGitHub { owner = "quickemu-project"; repo = "quickemu"; rev = version; - hash = "sha256-31f4BIIYCh2acbueUtGZShKnlhctd1FfKkFqsNiUqrI="; + hash = "sha256-C/3zyHnxAxCu8rrR4Znka47pVPp0vvaVGyd4TVQG3qg="; }; postPatch = '' From 4db65d131e0d54105bf66475ca584362e5f2104b Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 8 Feb 2023 11:47:14 +0000 Subject: [PATCH 144/198] fend: 1.1.4 -> 1.1.5 --- pkgs/tools/misc/fend/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/misc/fend/default.nix b/pkgs/tools/misc/fend/default.nix index 18ffdb71cde4..6d96c33e5eef 100644 --- a/pkgs/tools/misc/fend/default.nix +++ b/pkgs/tools/misc/fend/default.nix @@ -9,16 +9,16 @@ rustPlatform.buildRustPackage rec { pname = "fend"; - version = "1.1.4"; + version = "1.1.5"; src = fetchFromGitHub { owner = "printfn"; repo = pname; rev = "v${version}"; - sha256 = "sha256-jg2rMiFXtN3oLru1gTaTyIo5eBEI23paKJiDV6KZZE4="; + sha256 = "sha256-9qvIxKg/fj08wYY2fK5J1nWzojStUb9ArXwvA/cTOcQ="; }; - cargoHash = "sha256-9Gri/EBaUiCpFBL0f132JDD4Zl5v40e8JmlRvm019S4="; + cargoHash = "sha256-kVnA8w2YVg6+h1V1O4cvciuB7GM4/LULFsGrzy8xUMQ="; nativeBuildInputs = [ pandoc installShellFiles ]; buildInputs = lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Security ]; From 3c178e21d78fe8053e88c78b11d5147fb4ea1a56 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 8 Feb 2023 11:51:18 +0000 Subject: [PATCH 145/198] hyperrogue: 12.1h -> 12.1i --- pkgs/games/hyperrogue/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/games/hyperrogue/default.nix b/pkgs/games/hyperrogue/default.nix index f8f0d55fb9c3..1eabfe77a7ae 100644 --- a/pkgs/games/hyperrogue/default.nix +++ b/pkgs/games/hyperrogue/default.nix @@ -3,13 +3,13 @@ stdenv.mkDerivation rec { pname = "hyperrogue"; - version = "12.1h"; + version = "12.1i"; src = fetchFromGitHub { owner = "zenorogue"; repo = "hyperrogue"; rev = "v${version}"; - sha256 = "sha256-9ChPO0YCsrAyQ81TAbKCMJSgSXoUtkvvNPMTPimPBUo="; + sha256 = "sha256-TMPumyTEzDbV/31UgwXJwr7zt7ufENX3ESxlcBEnaSc="; }; CXXFLAGS = [ From 84d8894b2b9de245ffa3f14fafb935cbe6c755de Mon Sep 17 00:00:00 2001 From: Anthony Roussel Date: Wed, 8 Feb 2023 13:33:29 +0100 Subject: [PATCH 146/198] yubico-piv-tool: 2.3.0 -> 2.3.1 --- pkgs/tools/misc/yubico-piv-tool/default.nix | 31 +++++++++++++++++++-- 1 file changed, 28 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/misc/yubico-piv-tool/default.nix b/pkgs/tools/misc/yubico-piv-tool/default.nix index 60fc7c2ac709..a8a7dfd3ee68 100644 --- a/pkgs/tools/misc/yubico-piv-tool/default.nix +++ b/pkgs/tools/misc/yubico-piv-tool/default.nix @@ -1,14 +1,26 @@ -{ lib, stdenv, fetchurl, pkg-config, openssl, check, pcsclite, PCSC, gengetopt, cmake +{ lib +, stdenv +, fetchurl +, pkg-config +, openssl +, check +, pcsclite +, PCSC +, gengetopt +, cmake , withApplePCSC ? stdenv.isDarwin +, gitUpdater +, testers +, yubico-piv-tool }: stdenv.mkDerivation rec { pname = "yubico-piv-tool"; - version = "2.3.0"; + version = "2.3.1"; src = fetchurl { url = "https://developers.yubico.com/yubico-piv-tool/Releases/yubico-piv-tool-${version}.tar.gz"; - hash = "sha256-oCoS2VRdHvehuZhgbYm3tlWl9aFDdzbPUdsIP4dvVak="; + hash = "sha256-2ona/YthhapjU0Z1P53bKa8pvEq9kt2B832dZWC11k4="; }; postPatch = '' @@ -29,8 +41,21 @@ stdenv.mkDerivation rec { configureFlags = [ "--with-backend=${if withApplePCSC then "macscard" else "pcsc"}" ]; + passthru = { + updateScript = gitUpdater { + url = "https://github.com/Yubico/yubico-piv-tool.git"; + rev-prefix = "yubico-piv-tool-"; + }; + tests.version = testers.testVersion { + inherit version; + package = yubico-piv-tool; + command = "yubico-piv-tool --version"; + }; + }; + meta = with lib; { homepage = "https://developers.yubico.com/yubico-piv-tool/"; + changelog = "https://developers.yubico.com/yubico-piv-tool/Release_Notes.html"; description = '' Used for interacting with the Privilege and Identification Card (PIV) application on a YubiKey From 9347d7d26588710d7c8277cb97bf394b67d7f7b2 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 8 Feb 2023 12:49:16 +0000 Subject: [PATCH 147/198] polymake: 4.8 -> 4.9 --- pkgs/applications/science/math/polymake/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/science/math/polymake/default.nix b/pkgs/applications/science/math/polymake/default.nix index 0eecff0a1798..4dc11db532fd 100644 --- a/pkgs/applications/science/math/polymake/default.nix +++ b/pkgs/applications/science/math/polymake/default.nix @@ -25,13 +25,13 @@ stdenv.mkDerivation rec { pname = "polymake"; - version = "4.8"; + version = "4.9"; src = fetchurl { # "The minimal version is a packager friendly version which omits # the bundled sources of cdd, lrs, libnormaliz, nauty and jReality." url = "https://polymake.org/lib/exe/fetch.php/download/polymake-${version}-minimal.tar.bz2"; - sha256 = "sha256-GfsAypJBpHwpvoEl/IzJ1gQfeMcYwB7oNe01xWJ+86w="; + sha256 = "sha256-BMkLgms6JsWmPhi+MZv/Eqie8BKL+KaPtk3xBZSyWfM="; }; nativeBuildInputs = [ From b4b4d8db8d43329c23b7f92348683c8ac50c314c Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 8 Feb 2023 12:49:53 +0000 Subject: [PATCH 148/198] exploitdb: 2022-11-22 -> 2023-02-03 --- pkgs/tools/security/exploitdb/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/security/exploitdb/default.nix b/pkgs/tools/security/exploitdb/default.nix index 9718f0095d02..a710daca6013 100644 --- a/pkgs/tools/security/exploitdb/default.nix +++ b/pkgs/tools/security/exploitdb/default.nix @@ -6,13 +6,13 @@ stdenv.mkDerivation rec { pname = "exploitdb"; - version = "2022-11-22"; + version = "2023-02-03"; src = fetchFromGitLab { owner = "exploit-database"; repo = pname; rev = "refs/tags/${version}"; - hash = "sha256-G871FvwekcF5uMq7NRoWuIb9UqzIbMniboKlUzgCaeI="; + hash = "sha256-uTyUACY9Pm+gMuLrttGCNZ/UQaOW/h12ysY/noTkw7A="; }; nativeBuildInputs = [ From 4d89637b5d8870c62032c5484c0e0552e2a45669 Mon Sep 17 00:00:00 2001 From: Enno Richter Date: Wed, 8 Feb 2023 13:50:11 +0100 Subject: [PATCH 149/198] python3Packages.watchfiles: fix build on Darwin --- pkgs/development/python-modules/watchfiles/default.nix | 8 +++++++- pkgs/top-level/python-packages.nix | 4 +++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/watchfiles/default.nix b/pkgs/development/python-modules/watchfiles/default.nix index c31aa264bd84..82060561a8d4 100644 --- a/pkgs/development/python-modules/watchfiles/default.nix +++ b/pkgs/development/python-modules/watchfiles/default.nix @@ -11,6 +11,8 @@ , pytest-timeout , pytestCheckHook , python +, CoreServices +, libiconv }: buildPythonPackage rec { @@ -33,6 +35,11 @@ buildPythonPackage rec { hash = "sha256-IWONA3o+2emJ7cKEw5xYSMdWzGuUSwn1B70zUDzj7Cw="; }; + buildInputs = lib.optionals stdenv.isDarwin [ + CoreServices + libiconv + ]; + nativeBuildInputs = [ ] ++ (with rustPlatform; [ cargoSetupHook @@ -69,6 +76,5 @@ buildPythonPackage rec { homepage = "https://watchfiles.helpmanual.io/"; license = licenses.mit; maintainers = with maintainers; [ fab ]; - broken = stdenv.isDarwin; }; } diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 988f7e71981c..9c54f9e4a9b8 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -12183,7 +12183,9 @@ self: super: with self; { inherit (pkgs.darwin.apple_sdk.frameworks) CoreServices; }; - watchfiles = callPackage ../development/python-modules/watchfiles { }; + watchfiles = callPackage ../development/python-modules/watchfiles { + inherit (pkgs.darwin.apple_sdk.frameworks) CoreServices; + }; watchgod = callPackage ../development/python-modules/watchgod { }; From dbe669d8fb8be4d1a5262a624cd368a6279e93eb Mon Sep 17 00:00:00 2001 From: superherointj <5861043+superherointj@users.noreply.github.com> Date: Tue, 7 Feb 2023 19:52:22 -0300 Subject: [PATCH 150/198] SDL2_image: 2.0.5 -> 2.6.3 SDL2_image_2_0_5: pinned for pygame, toppler Fixes #187685 Release: https://github.com/libsdl-org/SDL_image/releases/tag/release-2.6.3 --- pkgs/development/libraries/SDL2_image/default.nix | 11 ++++++++--- pkgs/top-level/all-packages.nix | 4 ++++ 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/SDL2_image/default.nix b/pkgs/development/libraries/SDL2_image/default.nix index 4ff02ffb7b2e..a8824904aea8 100644 --- a/pkgs/development/libraries/SDL2_image/default.nix +++ b/pkgs/development/libraries/SDL2_image/default.nix @@ -1,15 +1,20 @@ { lib, stdenv, fetchurl , pkg-config , SDL2, libpng, libjpeg, libtiff, giflib, libwebp, libXpm, zlib, Foundation +, version ? "2.6.3" +, hash ? "sha256-kxyb5b8dfI+um33BV4KLfu6HTiPH8ktEun7/a0g2MSw=" }: -stdenv.mkDerivation rec { +let pname = "SDL2_image"; - version = "2.0.5"; +in + +stdenv.mkDerivation { + inherit pname version; src = fetchurl { url = "https://www.libsdl.org/projects/SDL_image/release/${pname}-${version}.tar.gz"; - sha256 = "1l0864kas9cwpp2d32yxl81g98lx40dhbdp03dz7sbv84vhgdmdx"; + inherit hash; }; nativeBuildInputs = [ pkg-config ]; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 3a2404b7e402..aaad642f6b84 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -23047,6 +23047,10 @@ with pkgs; SDL2_image = callPackage ../development/libraries/SDL2_image { inherit (darwin.apple_sdk.frameworks) Foundation; }; + SDL2_image_2_0_5 = SDL2_image.override({ # Pinned for pygame, toppler + version = "2.0.5"; + hash = "sha256-vdX24CZoL31+G+C2BRsgnaL0AqLdi9HEvZwlrSYxCNA"; + }); SDL2_mixer = callPackage ../development/libraries/SDL2_mixer { inherit (darwin.apple_sdk.frameworks) CoreServices AudioUnit AudioToolbox; From 2379d34aa028ea79f0e7ce805669007650b57aa3 Mon Sep 17 00:00:00 2001 From: Markus Kowalewski Date: Wed, 8 Feb 2023 14:10:27 +0100 Subject: [PATCH 151/198] gromacs: 2022.4 -> 2023 --- .../science/molecular-dynamics/gromacs/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/science/molecular-dynamics/gromacs/default.nix b/pkgs/applications/science/molecular-dynamics/gromacs/default.nix index 5093a586a85a..26e6ab12ab04 100644 --- a/pkgs/applications/science/molecular-dynamics/gromacs/default.nix +++ b/pkgs/applications/science/molecular-dynamics/gromacs/default.nix @@ -19,11 +19,11 @@ let in stdenv.mkDerivation rec { pname = "gromacs"; - version = "2022.4"; + version = "2023"; src = fetchurl { url = "ftp://ftp.gromacs.org/pub/gromacs/gromacs-${version}.tar.gz"; - sha256 = "sha256-xRG+YC/ylAIGW1CQaEHe+YdSY5uSqV8bChBg2bXicpc="; + sha256 = "sha256-rJLG2nL7vMpBT9io2Xnlbs8XxMHNq+0tpc+05yd7e6g="; }; nativeBuildInputs = [ cmake ]; From 655b5be0ceafea054bda74d63a3fdfef6c9d890f Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 8 Feb 2023 13:16:07 +0000 Subject: [PATCH 152/198] python310Packages.requests-aws4auth: 1.2.1 -> 1.2.2 --- pkgs/development/python-modules/requests-aws4auth/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/requests-aws4auth/default.nix b/pkgs/development/python-modules/requests-aws4auth/default.nix index d67f8f364ea2..b240aa81509c 100644 --- a/pkgs/development/python-modules/requests-aws4auth/default.nix +++ b/pkgs/development/python-modules/requests-aws4auth/default.nix @@ -11,7 +11,7 @@ buildPythonPackage rec { pname = "requests-aws4auth"; - version = "1.2.1"; + version = "1.2.2"; format = "setuptools"; disabled = pythonOlder "3.7"; @@ -20,7 +20,7 @@ buildPythonPackage rec { owner = "tedder"; repo = pname; rev = "refs/tags/v${version}"; - hash = "sha256-Dr3i+5xTKLKOMjGkCdKhkK2BCV8/FgTGMtGsYtvB5s8="; + hash = "sha256-RbaRFMyvK3y7xN+xwNi/lHJjx+xIlpfizJj9BIn6cT4="; }; propagatedBuildInputs = [ From ba0b9791c0f26ac4de79840a431c581bf3c70fc4 Mon Sep 17 00:00:00 2001 From: Markus Kowalewski Date: Wed, 8 Feb 2023 14:20:19 +0100 Subject: [PATCH 153/198] mvapich: 2.3.6 -> 2.3.7 --- pkgs/development/libraries/mvapich/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/mvapich/default.nix b/pkgs/development/libraries/mvapich/default.nix index 0f358c279628..987f4022f511 100644 --- a/pkgs/development/libraries/mvapich/default.nix +++ b/pkgs/development/libraries/mvapich/default.nix @@ -14,11 +14,11 @@ assert builtins.elem network [ "ethernet" "infiniband" "omnipath" ]; stdenv.mkDerivation rec { pname = "mvapich"; - version = "2.3.6"; + version = "2.3.7"; src = fetchurl { url = "http://mvapich.cse.ohio-state.edu/download/mvapich/mv2/mvapich2-${version}.tar.gz"; - sha256 = "0jd28vy9ivl3rcpkxmhw73b6krzm0pd9jps8asw92wa00lm2z9mk"; + sha256 = "sha256-w5pEkvS+UN9hAHhXSLoolOI85FCpQSgYHVFtpXV3Ua4="; }; nativeBuildInputs = [ pkg-config bison makeWrapper gfortran ]; From 9c30624f1a8aee562ebf4b6d62f0948b4c7db5f2 Mon Sep 17 00:00:00 2001 From: superherointj <5861043+superherointj@users.noreply.github.com> Date: Wed, 8 Feb 2023 06:31:11 -0300 Subject: [PATCH 154/198] python310Packages.pygame: pin SDL2_image to 2.0.5 https://github.com/pygame/pygame/issues/3430#issuecomment-1279955564 --- pkgs/top-level/python-packages.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 988f7e71981c..dd0f400580b5 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -8070,6 +8070,7 @@ self: super: with self; { pygame = callPackage ../development/python-modules/pygame { inherit (pkgs.darwin.apple_sdk.frameworks) AppKit; + SDL2_image = pkgs.SDL2_image_2_0_5; }; pygame_sdl2 = callPackage ../development/python-modules/pygame_sdl2 { }; From 162dcb9b00ca13b22ffa11328f0b19b52e550753 Mon Sep 17 00:00:00 2001 From: superherointj <5861043+superherointj@users.noreply.github.com> Date: Wed, 8 Feb 2023 09:55:49 -0300 Subject: [PATCH 155/198] toppler: pin SDL2_image to 2.0.5 --- pkgs/top-level/all-packages.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index aaad642f6b84..a61bae9dfdb8 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -35746,7 +35746,9 @@ with pkgs; tome4 = callPackage ../games/tome4 { }; - toppler = callPackage ../games/toppler { }; + toppler = callPackage ../games/toppler { + SDL2_image = SDL2_image_2_0_5; + }; torus-trooper = callPackage ../games/torus-trooper { }; From 85dac16ffb10ba0f848c056c54d855d6e0f53cdd Mon Sep 17 00:00:00 2001 From: K900 Date: Wed, 8 Feb 2023 16:37:47 +0300 Subject: [PATCH 156/198] kio-admin: add meta --- pkgs/tools/filesystems/kio-admin/default.nix | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/pkgs/tools/filesystems/kio-admin/default.nix b/pkgs/tools/filesystems/kio-admin/default.nix index f7f7484cc00c..7e4a97fa255a 100644 --- a/pkgs/tools/filesystems/kio-admin/default.nix +++ b/pkgs/tools/filesystems/kio-admin/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitLab, cmake, extra-cmake-modules, qtbase, wrapQtAppsHook, kio, ki18n, polkit-qt }: +{ lib, stdenv, fetchFromGitLab, cmake, extra-cmake-modules, qtbase, wrapQtAppsHook, kio, ki18n, polkit-qt }: stdenv.mkDerivation rec { pname = "kio-admin"; @@ -14,4 +14,12 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ cmake extra-cmake-modules wrapQtAppsHook ]; buildInputs = [ qtbase kio ki18n polkit-qt ]; + + meta = with lib; { + description = "Manage files as administrator using the admin:// KIO protocol."; + homepage = "https://invent.kde.org/system/kio-admin"; + license = licenses.gpl2Plus; + platforms = platforms.linux; + maintainers = with maintainers; [ k900 ]; + }; } From 7932c9c05598aff843295215c53e2c54c4e0419f Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 8 Feb 2023 13:42:51 +0000 Subject: [PATCH 157/198] python310Packages.pontos: 23.2.0 -> 23.2.4 --- pkgs/development/python-modules/pontos/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/pontos/default.nix b/pkgs/development/python-modules/pontos/default.nix index ae3b4c551dd4..9383bdbf100e 100644 --- a/pkgs/development/python-modules/pontos/default.nix +++ b/pkgs/development/python-modules/pontos/default.nix @@ -16,7 +16,7 @@ buildPythonPackage rec { pname = "pontos"; - version = "23.2.0"; + version = "23.2.4"; format = "pyproject"; disabled = pythonOlder "3.7"; @@ -25,7 +25,7 @@ buildPythonPackage rec { owner = "greenbone"; repo = pname; rev = "refs/tags/v${version}"; - hash = "sha256-4GIfXHDY2g6dhvymYzunK2UWxJcO37dXQbI2jxOIwCw="; + hash = "sha256-tunFd+hgaRx5wc1gRwZaNUEX550Rl1NR9rZfEWUw6H4="; }; nativeBuildInputs = [ From edccae739ac95d97b29bbedb164241a3d0c956a7 Mon Sep 17 00:00:00 2001 From: pennae Date: Sun, 5 Feb 2023 07:48:49 +0100 Subject: [PATCH 158/198] nixos-render-docs: add a test for running mypy pulling mypy into the build closure is unfortunately not reasonable, the closure for mypy is rather large and takes a long time to build. if we have the type checks hooked into CI we'll get most of the benefit though. --- pkgs/tools/nix/nixos-render-docs/default.nix | 34 ++++++++++++++++---- 1 file changed, 28 insertions(+), 6 deletions(-) diff --git a/pkgs/tools/nix/nixos-render-docs/default.nix b/pkgs/tools/nix/nixos-render-docs/default.nix index 55bbbd9ffa56..312bc8058245 100644 --- a/pkgs/tools/nix/nixos-render-docs/default.nix +++ b/pkgs/tools/nix/nixos-render-docs/default.nix @@ -2,6 +2,7 @@ , stdenv , python3 , python3Minimal +, runCommand }: let @@ -21,9 +22,23 @@ let markdown-it-py = markdown-it-py-no-tests; disableTests = true; }; + + makeDeps = pkgs: small: + [ pkgs.frozendict ] + ++ ( + if small + then [ + markdown-it-py-no-tests + mdit-py-plugins-no-tests + ] + else [ + pkgs.markdown-it-py + pkgs.mdit-py-plugins + ] + ); in -python.pkgs.buildPythonApplication { +python.pkgs.buildPythonApplication rec { pname = "nixos-render-docs"; version = "0.0"; format = "pyproject"; @@ -47,14 +62,21 @@ python.pkgs.buildPythonApplication { python.pkgs.pytestCheckHook ]; - propagatedBuildInputs = [ - markdown-it-py-no-tests - mdit-py-plugins-no-tests - python.pkgs.frozendict - ]; + propagatedBuildInputs = makeDeps python.pkgs true; pytestFlagsArray = [ "-vvrP" "tests/" ]; + # NOTE this is a CI test rather than a build-time test because we want to keep the + # build closures small. mypy has an unreasonably large build closure for docs builds. + passthru.tests.typing = runCommand "${pname}-mypy" { + nativeBuildInputs = [ + (python3.withPackages (p: [ p.mypy p.pytest ] ++ makeDeps p false)) + ]; + } '' + mypy --strict ${src} + touch $out + ''; + meta = with lib; { description = "Renderer for NixOS manual and option docs"; license = licenses.mit; From 2f9d71afdb892f399d78d454d3de8188caf259fa Mon Sep 17 00:00:00 2001 From: pennae Date: Wed, 1 Feb 2023 00:23:43 +0100 Subject: [PATCH 159/198] nixos/x11: fix some docs links the docbook stylesheets duplicated the target of these untitled links into their label, but we should do that in markdown instead. --- nixos/modules/services/x11/extra-layouts.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nixos/modules/services/x11/extra-layouts.nix b/nixos/modules/services/x11/extra-layouts.nix index 574657a50c82..9c88d12ca6f2 100644 --- a/nixos/modules/services/x11/extra-layouts.nix +++ b/nixos/modules/services/x11/extra-layouts.nix @@ -106,9 +106,9 @@ in description = lib.mdDoc '' Extra custom layouts that will be included in the xkb configuration. Information on how to create a new layout can be found here: - [](https://www.x.org/releases/current/doc/xorg-docs/input/XKB-Enhancing.html#Defining_New_Layouts). + . For more examples see - [](https://wiki.archlinux.org/index.php/X_KeyBoard_extension#Basic_examples) + ''; }; From bf4c0c19002fc2fa88d64b585497ae5a1c36287f Mon Sep 17 00:00:00 2001 From: pennae Date: Wed, 1 Feb 2023 06:12:57 +0100 Subject: [PATCH 160/198] nixos/*: remove trailing period in mkEnableOptions MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit those are added by mkEnableOption, and .. is replaced to … by markdown processing. --- nixos/modules/config/stevenblack.nix | 2 +- nixos/modules/programs/proxychains.nix | 2 +- nixos/modules/security/polkit.nix | 2 +- nixos/modules/services/backup/zfs-replication.nix | 2 +- .../services/cluster/kubernetes/addon-manager.nix | 2 +- .../services/cluster/kubernetes/kubelet.nix | 2 +- .../desktops/gnome/evolution-data-server.nix | 4 ++-- nixos/modules/services/development/zammad.nix | 2 +- nixos/modules/services/games/freeciv.nix | 2 +- nixos/modules/services/hardware/udisks2.nix | 2 +- nixos/modules/services/mail/dovecot.nix | 14 +++++++------- nixos/modules/services/misc/atuin.nix | 2 +- nixos/modules/services/misc/input-remapper.nix | 2 +- nixos/modules/services/misc/sourcehut/default.nix | 2 +- .../modules/services/monitoring/mackerel-agent.nix | 2 +- .../monitoring/prometheus/exporters/unpoller.nix | 6 +++--- nixos/modules/services/monitoring/uptime-kuma.nix | 4 ++-- .../services/network-filesystems/moosefs.nix | 6 +++--- .../services/networking/blockbook-frontend.nix | 2 +- nixos/modules/services/security/kanidm.nix | 2 +- nixos/modules/services/web-apps/cloudlog.nix | 2 +- nixos/modules/services/web-apps/dokuwiki.nix | 2 +- nixos/modules/services/web-apps/galene.nix | 2 +- nixos/modules/services/web-apps/hledger-web.nix | 2 +- nixos/modules/services/web-apps/jirafeau.nix | 2 +- nixos/modules/services/web-apps/limesurvey.nix | 2 +- nixos/modules/system/boot/kernel.nix | 2 +- 27 files changed, 39 insertions(+), 39 deletions(-) diff --git a/nixos/modules/config/stevenblack.nix b/nixos/modules/config/stevenblack.nix index ec6868484942..07a0aa339a56 100644 --- a/nixos/modules/config/stevenblack.nix +++ b/nixos/modules/config/stevenblack.nix @@ -15,7 +15,7 @@ let in { options.networking.stevenblack = { - enable = mkEnableOption (mdDoc "Enable the stevenblack hosts file blocklist."); + enable = mkEnableOption (mdDoc "Enable the stevenblack hosts file blocklist"); block = mkOption { type = types.listOf (types.enum [ "fakenews" "gambling" "porn" "social" ]); diff --git a/nixos/modules/programs/proxychains.nix b/nixos/modules/programs/proxychains.nix index 0771f03c77d3..a52783aa6698 100644 --- a/nixos/modules/programs/proxychains.nix +++ b/nixos/modules/programs/proxychains.nix @@ -86,7 +86,7 @@ in { description = lib.mdDoc "Proxy DNS requests - no leak for DNS data."; }; - quietMode = mkEnableOption (lib.mdDoc "Quiet mode (no output from the library)."); + quietMode = mkEnableOption (lib.mdDoc "Quiet mode (no output from the library)"); remoteDNSSubnet = mkOption { type = types.enum [ 10 127 224 ]; diff --git a/nixos/modules/security/polkit.nix b/nixos/modules/security/polkit.nix index f33898578b81..de427ccb295b 100644 --- a/nixos/modules/security/polkit.nix +++ b/nixos/modules/security/polkit.nix @@ -14,7 +14,7 @@ in security.polkit.enable = mkEnableOption (lib.mdDoc "polkit"); - security.polkit.debug = mkEnableOption (lib.mdDoc "debug logs from polkit. This is required in order to see log messages from rule definitions."); + security.polkit.debug = mkEnableOption (lib.mdDoc "debug logs from polkit. This is required in order to see log messages from rule definitions"); security.polkit.extraConfig = mkOption { type = types.lines; diff --git a/nixos/modules/services/backup/zfs-replication.nix b/nixos/modules/services/backup/zfs-replication.nix index ce914003c622..8e7059e5b59d 100644 --- a/nixos/modules/services/backup/zfs-replication.nix +++ b/nixos/modules/services/backup/zfs-replication.nix @@ -9,7 +9,7 @@ let in { options = { services.zfs.autoReplication = { - enable = mkEnableOption (lib.mdDoc "ZFS snapshot replication."); + enable = mkEnableOption (lib.mdDoc "ZFS snapshot replication"); followDelete = mkOption { description = lib.mdDoc "Remove remote snapshots that don't have a local correspondent."; diff --git a/nixos/modules/services/cluster/kubernetes/addon-manager.nix b/nixos/modules/services/cluster/kubernetes/addon-manager.nix index 7aa2a8323b1d..dc851688fbec 100644 --- a/nixos/modules/services/cluster/kubernetes/addon-manager.nix +++ b/nixos/modules/services/cluster/kubernetes/addon-manager.nix @@ -62,7 +62,7 @@ in ''; }; - enable = mkEnableOption (lib.mdDoc "Kubernetes addon manager."); + enable = mkEnableOption (lib.mdDoc "Kubernetes addon manager"); }; ###### implementation diff --git a/nixos/modules/services/cluster/kubernetes/kubelet.nix b/nixos/modules/services/cluster/kubernetes/kubelet.nix index 3ede1cb80e85..8e935d621be4 100644 --- a/nixos/modules/services/cluster/kubernetes/kubelet.nix +++ b/nixos/modules/services/cluster/kubernetes/kubelet.nix @@ -146,7 +146,7 @@ in default = "unix:///run/containerd/containerd.sock"; }; - enable = mkEnableOption (lib.mdDoc "Kubernetes kubelet."); + enable = mkEnableOption (lib.mdDoc "Kubernetes kubelet"); extraOpts = mkOption { description = lib.mdDoc "Kubernetes kubelet extra command line options."; diff --git a/nixos/modules/services/desktops/gnome/evolution-data-server.nix b/nixos/modules/services/desktops/gnome/evolution-data-server.nix index 0006ba1a7bad..a8db7dce8fdf 100644 --- a/nixos/modules/services/desktops/gnome/evolution-data-server.nix +++ b/nixos/modules/services/desktops/gnome/evolution-data-server.nix @@ -27,7 +27,7 @@ with lib; options = { services.gnome.evolution-data-server = { - enable = mkEnableOption (lib.mdDoc "Evolution Data Server, a collection of services for storing addressbooks and calendars."); + enable = mkEnableOption (lib.mdDoc "Evolution Data Server, a collection of services for storing addressbooks and calendars"); plugins = mkOption { type = types.listOf types.package; default = [ ]; @@ -35,7 +35,7 @@ with lib; }; }; programs.evolution = { - enable = mkEnableOption (lib.mdDoc "Evolution, a Personal information management application that provides integrated mail, calendaring and address book functionality."); + enable = mkEnableOption (lib.mdDoc "Evolution, a Personal information management application that provides integrated mail, calendaring and address book functionality"); plugins = mkOption { type = types.listOf types.package; default = [ ]; diff --git a/nixos/modules/services/development/zammad.nix b/nixos/modules/services/development/zammad.nix index 7de11b08b7e7..0faeb4c0e9fa 100644 --- a/nixos/modules/services/development/zammad.nix +++ b/nixos/modules/services/development/zammad.nix @@ -28,7 +28,7 @@ in options = { services.zammad = { - enable = mkEnableOption (lib.mdDoc "Zammad, a web-based, open source user support/ticketing solution."); + enable = mkEnableOption (lib.mdDoc "Zammad, a web-based, open source user support/ticketing solution"); package = mkOption { type = types.package; diff --git a/nixos/modules/services/games/freeciv.nix b/nixos/modules/services/games/freeciv.nix index 8b340bb161a5..f33ea5c08a27 100644 --- a/nixos/modules/services/games/freeciv.nix +++ b/nixos/modules/services/games/freeciv.nix @@ -54,7 +54,7 @@ in default = 0; description = lib.mdDoc "Set debug log level."; }; - options.exit-on-end = mkEnableOption (lib.mdDoc "exit instead of restarting when a game ends."); + options.exit-on-end = mkEnableOption (lib.mdDoc "exit instead of restarting when a game ends"); options.Guests = mkEnableOption (lib.mdDoc "guests to login if auth is enabled"); options.Newusers = mkEnableOption (lib.mdDoc "new users to login if auth is enabled"); options.port = mkOption { diff --git a/nixos/modules/services/hardware/udisks2.nix b/nixos/modules/services/hardware/udisks2.nix index 7368845dafd5..d5c71bb821df 100644 --- a/nixos/modules/services/hardware/udisks2.nix +++ b/nixos/modules/services/hardware/udisks2.nix @@ -19,7 +19,7 @@ in services.udisks2 = { - enable = mkEnableOption (lib.mdDoc "udisks2, a DBus service that allows applications to query and manipulate storage devices."); + enable = mkEnableOption (lib.mdDoc "udisks2, a DBus service that allows applications to query and manipulate storage devices"); settings = mkOption rec { type = types.attrsOf settingsFormat.type; diff --git a/nixos/modules/services/mail/dovecot.nix b/nixos/modules/services/mail/dovecot.nix index f6a167572f72..21bafd859c3c 100644 --- a/nixos/modules/services/mail/dovecot.nix +++ b/nixos/modules/services/mail/dovecot.nix @@ -171,11 +171,11 @@ in options.services.dovecot2 = { enable = mkEnableOption (lib.mdDoc "the dovecot 2.x POP3/IMAP server"); - enablePop3 = mkEnableOption (lib.mdDoc "starting the POP3 listener (when Dovecot is enabled)."); + enablePop3 = mkEnableOption (lib.mdDoc "starting the POP3 listener (when Dovecot is enabled)"); - enableImap = mkEnableOption (lib.mdDoc "starting the IMAP listener (when Dovecot is enabled).") // { default = true; }; + enableImap = mkEnableOption (lib.mdDoc "starting the IMAP listener (when Dovecot is enabled)") // { default = true; }; - enableLmtp = mkEnableOption (lib.mdDoc "starting the LMTP listener (when Dovecot is enabled)."); + enableLmtp = mkEnableOption (lib.mdDoc "starting the LMTP listener (when Dovecot is enabled)"); protocols = mkOption { type = types.listOf types.str; @@ -300,9 +300,9 @@ in description = lib.mdDoc "Path to the server's private key."; }; - enablePAM = mkEnableOption (lib.mdDoc "creating a own Dovecot PAM service and configure PAM user logins.") // { default = true; }; + enablePAM = mkEnableOption (lib.mdDoc "creating a own Dovecot PAM service and configure PAM user logins") // { default = true; }; - enableDHE = mkEnableOption (lib.mdDoc "enable ssl_dh and generation of primes for the key exchange.") // { default = true; }; + enableDHE = mkEnableOption (lib.mdDoc "enable ssl_dh and generation of primes for the key exchange") // { default = true; }; sieveScripts = mkOption { type = types.attrsOf types.path; @@ -310,7 +310,7 @@ in description = lib.mdDoc "Sieve scripts to be executed. Key is a sequence, e.g. 'before2', 'after' etc."; }; - showPAMFailure = mkEnableOption (lib.mdDoc "showing the PAM failure message on authentication error (useful for OTPW)."); + showPAMFailure = mkEnableOption (lib.mdDoc "showing the PAM failure message on authentication error (useful for OTPW)"); mailboxes = mkOption { type = with types; coercedTo @@ -326,7 +326,7 @@ in description = lib.mdDoc "Configure mailboxes and auto create or subscribe them."; }; - enableQuota = mkEnableOption (lib.mdDoc "the dovecot quota service."); + enableQuota = mkEnableOption (lib.mdDoc "the dovecot quota service"); quotaPort = mkOption { type = types.str; diff --git a/nixos/modules/services/misc/atuin.nix b/nixos/modules/services/misc/atuin.nix index c94852e3aad9..508e2862b63f 100644 --- a/nixos/modules/services/misc/atuin.nix +++ b/nixos/modules/services/misc/atuin.nix @@ -8,7 +8,7 @@ in { options = { services.atuin = { - enable = mkEnableOption (mdDoc "Enable server for shell history sync with atuin."); + enable = mkEnableOption (mdDoc "Enable server for shell history sync with atuin"); openRegistration = mkOption { type = types.bool; diff --git a/nixos/modules/services/misc/input-remapper.nix b/nixos/modules/services/misc/input-remapper.nix index 6353966f5c3f..3f6d97f85738 100644 --- a/nixos/modules/services/misc/input-remapper.nix +++ b/nixos/modules/services/misc/input-remapper.nix @@ -6,7 +6,7 @@ let cfg = config.services.input-remapper; in { options = { services.input-remapper = { - enable = mkEnableOption (lib.mdDoc "input-remapper, an easy to use tool to change the mapping of your input device buttons."); + enable = mkEnableOption (lib.mdDoc "input-remapper, an easy to use tool to change the mapping of your input device buttons"); package = mkPackageOptionMD pkgs "input-remapper" { }; enableUdevRules = mkEnableOption (lib.mdDoc "udev rules added by input-remapper to handle hotplugged devices. Currently disabled by default due to https://github.com/sezanzeb/input-remapper/issues/140"); serviceWantedBy = mkOption { diff --git a/nixos/modules/services/misc/sourcehut/default.nix b/nixos/modules/services/misc/sourcehut/default.nix index b2cadbf0c436..d4391bc49e31 100644 --- a/nixos/modules/services/misc/sourcehut/default.nix +++ b/nixos/modules/services/misc/sourcehut/default.nix @@ -438,7 +438,7 @@ in }; options."lists.sr.ht" = commonServiceSettings "lists" // { - allow-new-lists = mkEnableOption (lib.mdDoc "Allow creation of new lists."); + allow-new-lists = mkEnableOption (lib.mdDoc "Allow creation of new lists"); notify-from = mkOption { description = lib.mdDoc "Outgoing email for notifications generated by users."; type = types.str; diff --git a/nixos/modules/services/monitoring/mackerel-agent.nix b/nixos/modules/services/monitoring/mackerel-agent.nix index 4185cd76c4eb..67dc1bc19edd 100644 --- a/nixos/modules/services/monitoring/mackerel-agent.nix +++ b/nixos/modules/services/monitoring/mackerel-agent.nix @@ -11,7 +11,7 @@ in { # the upstream package runs as root, but doesn't seem to be strictly # necessary for basic functionality - runAsRoot = mkEnableOption (lib.mdDoc "Whether to run as root."); + runAsRoot = mkEnableOption (lib.mdDoc "Whether to run as root"); autoRetirement = mkEnableOption (lib.mdDoc '' Whether to automatically retire the host upon OS shutdown. diff --git a/nixos/modules/services/monitoring/prometheus/exporters/unpoller.nix b/nixos/modules/services/monitoring/prometheus/exporters/unpoller.nix index 5cd1e2c65e90..3b7f978528cd 100644 --- a/nixos/modules/services/monitoring/prometheus/exporters/unpoller.nix +++ b/nixos/modules/services/monitoring/prometheus/exporters/unpoller.nix @@ -24,9 +24,9 @@ in { inherit (options.services.unpoller.unifi) controllers; inherit (options.services.unpoller) loki; log = { - debug = mkEnableOption (lib.mdDoc "debug logging including line numbers, high resolution timestamps, per-device logs."); - quiet = mkEnableOption (lib.mdDoc "startup and error logs only."); - prometheusErrors = mkEnableOption (lib.mdDoc "emitting errors to prometheus."); + debug = mkEnableOption (lib.mdDoc "debug logging including line numbers, high resolution timestamps, per-device logs"); + quiet = mkEnableOption (lib.mdDoc "startup and error logs only"); + prometheusErrors = mkEnableOption (lib.mdDoc "emitting errors to prometheus"); }; }; diff --git a/nixos/modules/services/monitoring/uptime-kuma.nix b/nixos/modules/services/monitoring/uptime-kuma.nix index 886e14b5f6c9..5f803d57b5e9 100644 --- a/nixos/modules/services/monitoring/uptime-kuma.nix +++ b/nixos/modules/services/monitoring/uptime-kuma.nix @@ -11,7 +11,7 @@ in options = { services.uptime-kuma = { - enable = mkEnableOption (mdDoc "Uptime Kuma, this assumes a reverse proxy to be set."); + enable = mkEnableOption (mdDoc "Uptime Kuma, this assumes a reverse proxy to be set"); package = mkOption { type = types.package; @@ -20,7 +20,7 @@ in description = lib.mdDoc "Uptime Kuma package to use."; }; - appriseSupport = mkEnableOption (mdDoc "apprise support for notifications."); + appriseSupport = mkEnableOption (mdDoc "apprise support for notifications"); settings = lib.mkOption { type = lib.types.submodule { freeformType = with lib.types; attrsOf str; }; diff --git a/nixos/modules/services/network-filesystems/moosefs.nix b/nixos/modules/services/network-filesystems/moosefs.nix index ab82a2a07dd4..49cbc89d5a91 100644 --- a/nixos/modules/services/network-filesystems/moosefs.nix +++ b/nixos/modules/services/network-filesystems/moosefs.nix @@ -85,7 +85,7 @@ in { description = lib.mdDoc "Run daemons as user moosefs instead of root."; }; - client.enable = mkEnableOption (lib.mdDoc "Moosefs client."); + client.enable = mkEnableOption (lib.mdDoc "Moosefs client"); master = { enable = mkOption { @@ -131,7 +131,7 @@ in { }; metalogger = { - enable = mkEnableOption (lib.mdDoc "Moosefs metalogger daemon."); + enable = mkEnableOption (lib.mdDoc "Moosefs metalogger daemon"); settings = mkOption { type = types.submodule { @@ -149,7 +149,7 @@ in { }; chunkserver = { - enable = mkEnableOption (lib.mdDoc "Moosefs chunkserver daemon."); + enable = mkEnableOption (lib.mdDoc "Moosefs chunkserver daemon"); openFirewall = mkOption { type = types.bool; diff --git a/nixos/modules/services/networking/blockbook-frontend.nix b/nixos/modules/services/networking/blockbook-frontend.nix index ab784563e4ac..46b26195d211 100644 --- a/nixos/modules/services/networking/blockbook-frontend.nix +++ b/nixos/modules/services/networking/blockbook-frontend.nix @@ -10,7 +10,7 @@ let options = { - enable = mkEnableOption (lib.mdDoc "blockbook-frontend application."); + enable = mkEnableOption (lib.mdDoc "blockbook-frontend application"); package = mkOption { type = types.package; diff --git a/nixos/modules/services/security/kanidm.nix b/nixos/modules/services/security/kanidm.nix index 55120799c993..5583c39368f7 100644 --- a/nixos/modules/services/security/kanidm.nix +++ b/nixos/modules/services/security/kanidm.nix @@ -55,7 +55,7 @@ in options.services.kanidm = { enableClient = lib.mkEnableOption (lib.mdDoc "the Kanidm client"); enableServer = lib.mkEnableOption (lib.mdDoc "the Kanidm server"); - enablePam = lib.mkEnableOption (lib.mdDoc "the Kanidm PAM and NSS integration."); + enablePam = lib.mkEnableOption (lib.mdDoc "the Kanidm PAM and NSS integration"); serverSettings = lib.mkOption { type = lib.types.submodule { diff --git a/nixos/modules/services/web-apps/cloudlog.nix b/nixos/modules/services/web-apps/cloudlog.nix index ffd1085bde65..9c6284fd1b57 100644 --- a/nixos/modules/services/web-apps/cloudlog.nix +++ b/nixos/modules/services/web-apps/cloudlog.nix @@ -68,7 +68,7 @@ let in { options.services.cloudlog = with types; { - enable = mkEnableOption (mdDoc "Whether to enable Cloudlog."); + enable = mkEnableOption (mdDoc "Whether to enable Cloudlog"); dataDir = mkOption { type = str; default = "/var/lib/cloudlog"; diff --git a/nixos/modules/services/web-apps/dokuwiki.nix b/nixos/modules/services/web-apps/dokuwiki.nix index 54cd5fd33bef..215372083654 100644 --- a/nixos/modules/services/web-apps/dokuwiki.nix +++ b/nixos/modules/services/web-apps/dokuwiki.nix @@ -148,7 +148,7 @@ let ]; options = { - enable = mkEnableOption (lib.mdDoc "DokuWiki web application."); + enable = mkEnableOption (lib.mdDoc "DokuWiki web application"); package = mkOption { type = types.package; diff --git a/nixos/modules/services/web-apps/galene.nix b/nixos/modules/services/web-apps/galene.nix index 15ef09aa0b87..747b85f94c65 100644 --- a/nixos/modules/services/web-apps/galene.nix +++ b/nixos/modules/services/web-apps/galene.nix @@ -12,7 +12,7 @@ in { options = { services.galene = { - enable = mkEnableOption (lib.mdDoc "Galene Service."); + enable = mkEnableOption (lib.mdDoc "Galene Service"); stateDir = mkOption { default = defaultstateDir; diff --git a/nixos/modules/services/web-apps/hledger-web.nix b/nixos/modules/services/web-apps/hledger-web.nix index 86716a02649c..0fc283ff5219 100644 --- a/nixos/modules/services/web-apps/hledger-web.nix +++ b/nixos/modules/services/web-apps/hledger-web.nix @@ -7,7 +7,7 @@ in { enable = mkEnableOption (lib.mdDoc "hledger-web service"); - serveApi = mkEnableOption (lib.mdDoc "Serve only the JSON web API, without the web UI."); + serveApi = mkEnableOption (lib.mdDoc "Serve only the JSON web API, without the web UI"); host = mkOption { type = types.str; diff --git a/nixos/modules/services/web-apps/jirafeau.nix b/nixos/modules/services/web-apps/jirafeau.nix index 293cbb3af425..b2e274167164 100644 --- a/nixos/modules/services/web-apps/jirafeau.nix +++ b/nixos/modules/services/web-apps/jirafeau.nix @@ -36,7 +36,7 @@ in description = lib.mdDoc "Location of Jirafeau storage directory."; }; - enable = mkEnableOption (lib.mdDoc "Jirafeau file upload application."); + enable = mkEnableOption (lib.mdDoc "Jirafeau file upload application"); extraConfig = mkOption { type = types.lines; diff --git a/nixos/modules/services/web-apps/limesurvey.nix b/nixos/modules/services/web-apps/limesurvey.nix index 7093d1de0dac..dd51174c8b8e 100644 --- a/nixos/modules/services/web-apps/limesurvey.nix +++ b/nixos/modules/services/web-apps/limesurvey.nix @@ -32,7 +32,7 @@ in # interface options.services.limesurvey = { - enable = mkEnableOption (lib.mdDoc "Limesurvey web application."); + enable = mkEnableOption (lib.mdDoc "Limesurvey web application"); database = { type = mkOption { diff --git a/nixos/modules/system/boot/kernel.nix b/nixos/modules/system/boot/kernel.nix index 8f203b2c8b32..0298e28f3289 100644 --- a/nixos/modules/system/boot/kernel.nix +++ b/nixos/modules/system/boot/kernel.nix @@ -20,7 +20,7 @@ in ###### interface options = { - boot.kernel.enable = mkEnableOption (lib.mdDoc "the Linux kernel. This is useful for systemd-like containers which do not require a kernel.") // { + boot.kernel.enable = mkEnableOption (lib.mdDoc "the Linux kernel. This is useful for systemd-like containers which do not require a kernel") // { default = true; }; From 8fe19590c36dc4c5a9409c55ec466321203d5c54 Mon Sep 17 00:00:00 2001 From: pennae Date: Wed, 1 Feb 2023 06:45:22 +0100 Subject: [PATCH 161/198] nixos/make-options-doc: fix related packages link label the pkgs path literal surely shouldn't include the title, right? --- nixos/lib/make-options-doc/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/lib/make-options-doc/default.nix b/nixos/lib/make-options-doc/default.nix index 271af9ba1801..09b0191d2bb8 100644 --- a/nixos/lib/make-options-doc/default.nix +++ b/nixos/lib/make-options-doc/default.nix @@ -78,7 +78,7 @@ let title = args.title or null; name = args.name or (lib.concatStringsSep "." args.path); in '' - - [`${lib.optionalString (title != null) "${title} aka "}pkgs.${name}`]( + - [${lib.optionalString (title != null) "${title} aka "}`pkgs.${name}`]( https://search.nixos.org/packages?show=${name}&sort=relevance&query=${name} )${ lib.optionalString (args ? comment) "\n\n ${args.comment}" From 5a5255983bcd9fdb95697f93f21a0582d0dde4a0 Mon Sep 17 00:00:00 2001 From: pennae Date: Wed, 1 Feb 2023 20:30:53 +0100 Subject: [PATCH 162/198] nixos-render-docs: calculate list end indices that'll be useful to calculate the width of list item heads, which we'll ned to render manpages. --- .../nix/nixos-render-docs/src/nixos_render_docs/md.py | 9 ++++++++- .../nix/nixos-render-docs/src/tests/test_lists.py | 10 ++++++---- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/md.py b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/md.py index c08675870f6a..3274d6de2fda 100644 --- a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/md.py +++ b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/md.py @@ -1,7 +1,7 @@ from abc import ABC from collections.abc import Mapping, MutableMapping, Sequence from frozendict import frozendict # type: ignore[attr-defined] -from typing import Any, Callable, Optional +from typing import Any, Callable, cast, Optional import re @@ -364,14 +364,21 @@ class Converter(ABC): # of each item to hidden. this is not useful for our stylesheets, which # signify this with a special css class on list elements instead. wide_stack = [] + end_stack = [] for i in range(0, len(tokens)): if tokens[i].type in [ 'bullet_list_open', 'ordered_list_open' ]: wide_stack.append([i, True]) + end_stack.append([i, cast(int, tokens[i].attrs.get('start', 1))]) elif tokens[i].type in [ 'bullet_list_close', 'ordered_list_close' ]: (idx, compact) = wide_stack.pop() tokens[idx].attrs['compact'] = compact + (idx, end) = end_stack.pop() + if tokens[i].type == 'ordered_list_close': + tokens[idx].meta['end'] = end - 1 elif len(wide_stack) > 0 and tokens[i].type == 'paragraph_open' and not tokens[i].hidden: wide_stack[-1][1] = False + elif tokens[i].type == 'list_item_open': + end_stack[-1][1] += 1 return tokens diff --git a/pkgs/tools/nix/nixos-render-docs/src/tests/test_lists.py b/pkgs/tools/nix/nixos-render-docs/src/tests/test_lists.py index 0f5d28407367..af284c9d3abe 100644 --- a/pkgs/tools/nix/nixos-render-docs/src/tests/test_lists.py +++ b/pkgs/tools/nix/nixos-render-docs/src/tests/test_lists.py @@ -13,9 +13,10 @@ def test_list_wide(ordered: bool) -> None: ("ordered", "ol", ".", "1.", "2.", "1", "2") if ordered else ("bullet", "ul", "-", "-", "-", "", "") ) c = Converter({}) + meta = { 'end': int(e2[:-1]) } if ordered else {} assert c._parse(f"{e1} a\n\n{e2} b") == [ Token(type=f'{t}_list_open', tag=tag, nesting=1, attrs={'compact': False}, map=[0, 3], level=0, - children=None, content='', markup=m, info='', meta={}, block=True, hidden=False), + children=None, content='', markup=m, info='', meta=meta, block=True, hidden=False), Token(type='list_item_open', tag='li', nesting=1, attrs={}, map=[0, 2], level=1, children=None, content='', markup=m, info=i1, meta={}, block=True, hidden=False), Token(type='paragraph_open', tag='p', nesting=1, attrs={}, map=[0, 1], level=2, children=None, @@ -54,9 +55,10 @@ def test_list_narrow(ordered: bool) -> None: ("ordered", "ol", ".", "1.", "2.", "1", "2") if ordered else ("bullet", "ul", "-", "-", "-", "", "") ) c = Converter({}) + meta = { 'end': int(e2[:-1]) } if ordered else {} assert c._parse(f"{e1} a\n{e2} b") == [ Token(type=f'{t}_list_open', tag=tag, nesting=1, attrs={'compact': True}, map=[0, 2], level=0, - children=None, content='', markup=m, info='', meta={}, block=True, hidden=False), + children=None, content='', markup=m, info='', meta=meta, block=True, hidden=False), Token(type='list_item_open', tag='li', nesting=1, attrs={}, map=[0, 1], level=1, children=None, content='', markup=m, info=i1, meta={}, block=True, hidden=False), Token(type='paragraph_open', tag='p', nesting=1, attrs={}, map=[0, 1], level=2, children=None, @@ -90,7 +92,7 @@ def test_list_narrow(ordered: bool) -> None: ] assert c._parse(f"{e1} - a\n{e2} b") == [ Token(type=f'{t}_list_open', tag=tag, nesting=1, attrs={'compact': True}, map=[0, 2], level=0, - children=None, content='', markup=m, info='', meta={}, block=True, hidden=False), + children=None, content='', markup=m, info='', meta=meta, block=True, hidden=False), Token(type='list_item_open', tag='li', nesting=1, attrs={}, map=[0, 1], level=1, children=None, content='', markup=m, info=i1, meta={}, block=True, hidden=False), Token(type='bullet_list_open', tag='ul', nesting=1, attrs={'compact': True}, map=[0, 1], level=2, @@ -132,7 +134,7 @@ def test_list_narrow(ordered: bool) -> None: ] assert c._parse(f"{e1} - a\n{e2} - b") == [ Token(type=f'{t}_list_open', tag=tag, nesting=1, attrs={'compact': True}, map=[0, 2], level=0, - children=None, content='', markup=m, info='', meta={}, block=True, hidden=False), + children=None, content='', markup=m, info='', meta=meta, block=True, hidden=False), Token(type='list_item_open', tag='li', nesting=1, attrs={}, map=[0, 1], level=1, children=None, content='', markup=m, info=i1, meta={}, block=True, hidden=False), Token(type='bullet_list_open', tag='ul', nesting=1, attrs={'compact': True}, map=[0, 1], level=2, From 11daebd2d92e972ead541cdfa04afc8f191379cb Mon Sep 17 00:00:00 2001 From: pennae Date: Wed, 1 Feb 2023 21:04:28 +0100 Subject: [PATCH 163/198] nixos-render-docs: add block and inline joiners these work together with render and renderInline to produce an output from either of the two. rendering manpages will need both: to join blocks with newlines, and to run some postprocessing and the rendered inlines. --- .../nix/nixos-render-docs/src/nixos_render_docs/md.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/md.py b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/md.py index 3274d6de2fda..104a43d9edfd 100644 --- a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/md.py +++ b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/md.py @@ -1,7 +1,7 @@ from abc import ABC from collections.abc import Mapping, MutableMapping, Sequence from frozendict import frozendict # type: ignore[attr-defined] -from typing import Any, Callable, cast, Optional +from typing import Any, Callable, cast, Iterable, Optional import re @@ -79,6 +79,11 @@ class Renderer(markdown_it.renderer.RendererProtocol): } self._admonition_stack = [] + def _join_block(self, ls: Iterable[str]) -> str: + return "".join(ls) + def _join_inline(self, ls: Iterable[str]) -> str: + return "".join(ls) + def admonition_open(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, env: MutableMapping[str, Any]) -> str: tag = token.info.strip() @@ -98,7 +103,7 @@ class Renderer(markdown_it.renderer.RendererProtocol): return self.rules[token.type](tokens[i], tokens, i, options, env) else: raise NotImplementedError("md token not supported yet", token) - return "".join(map(lambda arg: do_one(*arg), enumerate(tokens))) + return self._join_block(map(lambda arg: do_one(*arg), enumerate(tokens))) def renderInline(self, tokens: Sequence[Token], options: OptionsDict, env: MutableMapping[str, Any]) -> str: def do_one(i: int, token: Token) -> str: @@ -106,7 +111,7 @@ class Renderer(markdown_it.renderer.RendererProtocol): return self.rules[token.type](tokens[i], tokens, i, options, env) else: raise NotImplementedError("md token not supported yet", token) - return "".join(map(lambda arg: do_one(*arg), enumerate(tokens))) + return self._join_inline(map(lambda arg: do_one(*arg), enumerate(tokens))) def text(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, env: MutableMapping[str, Any]) -> str: From 32136b1b01e1766737884fe48d8b0b035e0cb994 Mon Sep 17 00:00:00 2001 From: pennae Date: Wed, 1 Feb 2023 21:24:58 +0100 Subject: [PATCH 164/198] nixos-render-docs: don't render empty descriptions at all --- .../nix/nixos-render-docs/src/nixos_render_docs/options.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/options.py b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/options.py index 3667c7bbcdeb..b53d50c97ed9 100644 --- a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/options.py +++ b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/options.py @@ -107,9 +107,9 @@ class BaseConverter(Converter): def _render_description(self, desc: str | dict[str, str]) -> list[str]: if isinstance(desc, str) and self._markdown_by_default: - return [ self._render(desc) ] + return [ self._render(desc) ] if desc else [] elif isinstance(desc, dict) and desc.get('_type') == 'mdDoc': - return [ self._render(desc['text']) ] + return [ self._render(desc['text']) ] if desc['text'] else [] else: raise Exception("description has unrecognized type", desc) From 09411102f60e241a65d5ce708d369fdfcad3e977 Mon Sep 17 00:00:00 2001 From: pennae Date: Wed, 1 Feb 2023 22:34:30 +0100 Subject: [PATCH 165/198] nixos-render-docs: add option block separators this will be necessary for manpages, which separate option declarations not with external tags but by interspersing mandoc spacing instructions. --- .../src/nixos_render_docs/options.py | 28 ++++++++++++------- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/options.py b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/options.py index b53d50c97ed9..8550dc26809d 100644 --- a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/options.py +++ b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/options.py @@ -22,6 +22,8 @@ def option_is(option: Option, key: str, typ: str) -> Optional[dict[str, str]]: return option[key] # type: ignore[return-value] class BaseConverter(Converter): + __option_block_separator__: str + _options: dict[str, RenderedOption] def __init__(self, manpage_urls: dict[str, str], @@ -117,26 +119,31 @@ class BaseConverter(Converter): def _related_packages_header(self) -> list[str]: raise NotImplementedError() def _convert_one(self, option: dict[str, Any]) -> list[str]: - result = [] + blocks: list[list[str]] = [] if desc := option.get('description'): - result += self._render_description(desc) + blocks.append(self._render_description(desc)) if typ := option.get('type'): ro = " *(read only)*" if option.get('readOnly', False) else "" - result.append(self._render(f"*Type:* {md_escape(typ)}{ro}")) + blocks.append([ self._render(f"*Type:*\n{md_escape(typ)}{ro}") ]) - result += self._render_code(option, 'default') - result += self._render_code(option, 'example') + if option.get('default'): + blocks.append(self._render_code(option, 'default')) + if option.get('example'): + blocks.append(self._render_code(option, 'example')) if related := option.get('relatedPackages'): - result += self._related_packages_header() - result.append(self._render(related)) + blocks.append(self._related_packages_header()) + blocks[-1].append(self._render(related)) if decl := option.get('declarations'): - result += self._render_decl_def("Declared by", decl) + blocks.append(self._render_decl_def("Declared by", decl)) if defs := option.get('definitions'): - result += self._render_decl_def("Defined by", defs) + blocks.append(self._render_decl_def("Defined by", defs)) - return result + for part in [ p for p in blocks[0:-1] if p ]: + part.append(self.__option_block_separator__) + + return [ l for part in blocks for l in part ] def add_options(self, options: dict[str, Any]) -> None: for (name, option) in options.items(): @@ -168,6 +175,7 @@ class OptionsDocBookRenderer(DocBookRenderer): class DocBookConverter(BaseConverter): __renderer__ = OptionsDocBookRenderer + __option_block_separator__ = "" def _render_code(self, option: dict[str, Any], key: str) -> list[str]: if lit := option_is(option, key, 'literalDocBook'): From b2a5b4d7899138eb9cc8af31fc1f296af582a4ce Mon Sep 17 00:00:00 2001 From: pennae Date: Tue, 7 Feb 2023 07:14:12 +0100 Subject: [PATCH 166/198] nixos-render-docs: move list-is-compact attr to meta Token.attr is a dict[str, str | int | float], meta has no restriction on the value type. attrs is ostensibly meant for html attributes, meta for any information whatsoever. --- .../src/nixos_render_docs/docbook.py | 4 ++-- .../src/nixos_render_docs/md.py | 2 +- .../src/nixos_render_docs/options.py | 4 ++-- .../nixos-render-docs/src/tests/test_lists.py | 22 ++++++++++--------- 4 files changed, 17 insertions(+), 15 deletions(-) diff --git a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/docbook.py b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/docbook.py index bad36e57a2f3..28c4425d8c08 100644 --- a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/docbook.py +++ b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/docbook.py @@ -103,7 +103,7 @@ class DocBookRenderer(Renderer): # HACK open and close para for docbook change size. remove soon. def bullet_list_open(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, env: MutableMapping[str, Any]) -> str: - spacing = ' spacing="compact"' if token.attrs.get('compact', False) else '' + spacing = ' spacing="compact"' if token.meta.get('compact', False) else '' return f"\n" def bullet_list_close(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, env: MutableMapping[str, Any]) -> str: @@ -218,7 +218,7 @@ class DocBookRenderer(Renderer): def ordered_list_open(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, env: MutableMapping[str, Any]) -> str: start = f' startingnumber="{token.attrs["start"]}"' if 'start' in token.attrs else "" - spacing = ' spacing="compact"' if token.attrs.get('compact', False) else '' + spacing = ' spacing="compact"' if token.meta.get('compact', False) else '' return f"" def ordered_list_close(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, env: MutableMapping[str, Any]) -> str: diff --git a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/md.py b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/md.py index 104a43d9edfd..16e473e97ade 100644 --- a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/md.py +++ b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/md.py @@ -376,7 +376,7 @@ class Converter(ABC): end_stack.append([i, cast(int, tokens[i].attrs.get('start', 1))]) elif tokens[i].type in [ 'bullet_list_close', 'ordered_list_close' ]: (idx, compact) = wide_stack.pop() - tokens[idx].attrs['compact'] = compact + tokens[idx].meta['compact'] = compact (idx, end) = end_stack.pop() if tokens[i].type == 'ordered_list_close': tokens[idx].meta['end'] = end - 1 diff --git a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/options.py b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/options.py index 8550dc26809d..68c753507e99 100644 --- a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/options.py +++ b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/options.py @@ -166,11 +166,11 @@ class OptionsDocBookRenderer(DocBookRenderer): # TODO keep optionsDocBook diff small. remove soon if rendering is still good. def ordered_list_open(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, env: MutableMapping[str, Any]) -> str: - token.attrs['compact'] = False + token.meta['compact'] = False return super().ordered_list_open(token, tokens, i, options, env) def bullet_list_open(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, env: MutableMapping[str, Any]) -> str: - token.attrs['compact'] = False + token.meta['compact'] = False return super().bullet_list_open(token, tokens, i, options, env) class DocBookConverter(BaseConverter): diff --git a/pkgs/tools/nix/nixos-render-docs/src/tests/test_lists.py b/pkgs/tools/nix/nixos-render-docs/src/tests/test_lists.py index af284c9d3abe..660c410a85cc 100644 --- a/pkgs/tools/nix/nixos-render-docs/src/tests/test_lists.py +++ b/pkgs/tools/nix/nixos-render-docs/src/tests/test_lists.py @@ -14,8 +14,9 @@ def test_list_wide(ordered: bool) -> None: ) c = Converter({}) meta = { 'end': int(e2[:-1]) } if ordered else {} + meta['compact'] = False assert c._parse(f"{e1} a\n\n{e2} b") == [ - Token(type=f'{t}_list_open', tag=tag, nesting=1, attrs={'compact': False}, map=[0, 3], level=0, + Token(type=f'{t}_list_open', tag=tag, nesting=1, attrs={}, map=[0, 3], level=0, children=None, content='', markup=m, info='', meta=meta, block=True, hidden=False), Token(type='list_item_open', tag='li', nesting=1, attrs={}, map=[0, 2], level=1, children=None, content='', markup=m, info=i1, meta={}, block=True, hidden=False), @@ -56,8 +57,9 @@ def test_list_narrow(ordered: bool) -> None: ) c = Converter({}) meta = { 'end': int(e2[:-1]) } if ordered else {} + meta['compact'] = True assert c._parse(f"{e1} a\n{e2} b") == [ - Token(type=f'{t}_list_open', tag=tag, nesting=1, attrs={'compact': True}, map=[0, 2], level=0, + Token(type=f'{t}_list_open', tag=tag, nesting=1, attrs={}, map=[0, 2], level=0, children=None, content='', markup=m, info='', meta=meta, block=True, hidden=False), Token(type='list_item_open', tag='li', nesting=1, attrs={}, map=[0, 1], level=1, children=None, content='', markup=m, info=i1, meta={}, block=True, hidden=False), @@ -91,12 +93,12 @@ def test_list_narrow(ordered: bool) -> None: content='', markup=m, info='', meta={}, block=True, hidden=False) ] assert c._parse(f"{e1} - a\n{e2} b") == [ - Token(type=f'{t}_list_open', tag=tag, nesting=1, attrs={'compact': True}, map=[0, 2], level=0, + Token(type=f'{t}_list_open', tag=tag, nesting=1, attrs={}, map=[0, 2], level=0, children=None, content='', markup=m, info='', meta=meta, block=True, hidden=False), Token(type='list_item_open', tag='li', nesting=1, attrs={}, map=[0, 1], level=1, children=None, content='', markup=m, info=i1, meta={}, block=True, hidden=False), - Token(type='bullet_list_open', tag='ul', nesting=1, attrs={'compact': True}, map=[0, 1], level=2, - children=None, content='', markup='-', info='', meta={}, block=True, hidden=False), + Token(type='bullet_list_open', tag='ul', nesting=1, attrs={}, map=[0, 1], level=2, + children=None, content='', markup='-', info='', meta={'compact': True}, block=True, hidden=False), Token(type='list_item_open', tag='li', nesting=1, attrs={}, map=[0, 1], level=3, children=None, content='', markup='-', info='', meta={}, block=True, hidden=False), Token(type='paragraph_open', tag='p', nesting=1, attrs={}, map=[0, 1], level=4, children=None, @@ -133,12 +135,12 @@ def test_list_narrow(ordered: bool) -> None: content='', markup=m, info='', meta={}, block=True, hidden=False) ] assert c._parse(f"{e1} - a\n{e2} - b") == [ - Token(type=f'{t}_list_open', tag=tag, nesting=1, attrs={'compact': True}, map=[0, 2], level=0, + Token(type=f'{t}_list_open', tag=tag, nesting=1, attrs={}, map=[0, 2], level=0, children=None, content='', markup=m, info='', meta=meta, block=True, hidden=False), Token(type='list_item_open', tag='li', nesting=1, attrs={}, map=[0, 1], level=1, children=None, content='', markup=m, info=i1, meta={}, block=True, hidden=False), - Token(type='bullet_list_open', tag='ul', nesting=1, attrs={'compact': True}, map=[0, 1], level=2, - children=None, content='', markup='-', info='', meta={}, block=True, hidden=False), + Token(type='bullet_list_open', tag='ul', nesting=1, attrs={}, map=[0, 1], level=2, + children=None, content='', markup='-', info='', meta={'compact': True}, block=True, hidden=False), Token(type='list_item_open', tag='li', nesting=1, attrs={}, map=[0, 1], level=3, children=None, content='', markup='-', info='', meta={}, block=True, hidden=False), Token(type='paragraph_open', tag='p', nesting=1, attrs={}, map=[0, 1], level=4, children=None, @@ -159,8 +161,8 @@ def test_list_narrow(ordered: bool) -> None: content='', markup=m, info='', meta={}, block=True, hidden=False), Token(type='list_item_open', tag='li', nesting=1, attrs={}, map=[1, 2], level=1, children=None, content='', markup=m, info=i2, meta={}, block=True, hidden=False), - Token(type='bullet_list_open', tag='ul', nesting=1, attrs={'compact': True}, map=[1, 2], level=2, - children=None, content='', markup='-', info='', meta={}, block=True, hidden=False), + Token(type='bullet_list_open', tag='ul', nesting=1, attrs={}, map=[1, 2], level=2, + children=None, content='', markup='-', info='', meta={'compact': True}, block=True, hidden=False), Token(type='list_item_open', tag='li', nesting=1, attrs={}, map=[1, 2], level=3, children=None, content='', markup='-', info='', meta={}, block=True, hidden=False), Token(type='paragraph_open', tag='p', nesting=1, attrs={}, map=[1, 2], level=4, children=None, From 56f1d99b161a8665b7df57984af5f76dc842be9b Mon Sep 17 00:00:00 2001 From: pennae Date: Thu, 2 Feb 2023 06:05:34 +0100 Subject: [PATCH 167/198] nixos-render-docs: factor out sorting of options list --- .../src/nixos_render_docs/options.py | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/options.py b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/options.py index 68c753507e99..9603b5726897 100644 --- a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/options.py +++ b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/options.py @@ -40,6 +40,12 @@ class BaseConverter(Converter): self._id_prefix = id_prefix self._markdown_by_default = markdown_by_default + def _sorted_options(self) -> list[tuple[str, RenderedOption]]: + keys = list(self._options.keys()) + keys.sort(key=lambda opt: [ (0 if p.startswith("enable") else 1 if p.startswith("package") else 2, p) + for p in self._options[opt].loc ]) + return [ (k, self._options[k]) for k in keys ] + def _format_decl_def_loc(self, loc: OptionLoc) -> tuple[Optional[str], str]: # locations can be either plain strings (specific to nixpkgs), or attrsets # { name = "foo/bar.nix"; url = "https://github.com/....."; } @@ -215,10 +221,6 @@ class DocBookConverter(BaseConverter): return [ "" ] def finalize(self) -> str: - keys = list(self._options.keys()) - keys.sort(key=lambda opt: [ (0 if p.startswith("enable") else 1 if p.startswith("package") else 2, p) - for p in self._options[opt].loc ]) - result = [] result.append('') @@ -235,7 +237,7 @@ class DocBookConverter(BaseConverter): f' xml:id="{self._varlist_id}">', ] - for name in keys: + for (name, opt) in self._sorted_options(): id = make_xml_id(self._id_prefix + name) result += [ "", @@ -244,7 +246,7 @@ class DocBookConverter(BaseConverter): f""), "" ] - result += self._options[name].lines + result += opt.lines result += [ "", "" From 10a4f0daca909e580df687426ced8e0d39056297 Mon Sep 17 00:00:00 2001 From: pennae Date: Tue, 31 Jan 2023 04:19:28 +0100 Subject: [PATCH 168/198] nixos-render-docs: add options manpage converter mdoc is just too slow to render on groff, and semantic markup doesn't help us any for generated pages. this produces a lot of changes to configuration.nix.5, but only few rendering changes. most of those seem to be place losing a space where docbook emitted roff code that did not faithfully represent the input text, though a few places also gained space where docbook dropped them. notably we also don't need the compatibility code docbook-xsl emitted because that problem was fixed over a decade ago. this will handle block quotes, which the docbook stylesheets turned into a mess of roff requests that ended up showing up in the output instead of being processed. --- nixos/doc/manual/default.nix | 35 +- .../src/nixos_render_docs/manpage.py | 316 ++++++++++++++++++ .../src/nixos_render_docs/md.py | 4 +- .../src/nixos_render_docs/options.py | 141 +++++++- .../src/tests/test_manpage.py | 29 ++ .../src/tests/test_options.py | 2 +- 6 files changed, 505 insertions(+), 22 deletions(-) create mode 100644 pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/manpage.py create mode 100644 pkgs/tools/nix/nixos-render-docs/src/tests/test_manpage.py diff --git a/nixos/doc/manual/default.nix b/nixos/doc/manual/default.nix index 342834e257a2..9dab1738abed 100644 --- a/nixos/doc/manual/default.nix +++ b/nixos/doc/manual/default.nix @@ -21,6 +21,8 @@ let withManOptDedupPatch = true; }; + manpageUrls = pkgs.path + "/doc/manpage-urls.json"; + # We need to strip references to /nix/store/* from options, # including any `extraSources` if some modules came from elsewhere, # or else the build will fail. @@ -72,7 +74,7 @@ let nativeBuildInputs = [ pkgs.nixos-render-docs ]; } '' nixos-render-docs manual docbook \ - --manpage-urls ${pkgs.path + "/doc/manpage-urls.json"} \ + --manpage-urls ${manpageUrls} \ "$out" \ --section \ --section-id modules \ @@ -255,9 +257,12 @@ in rec { manpages = runCommand "nixos-manpages" { inherit sources; nativeBuildInputs = [ + buildPackages.installShellFiles + ] ++ lib.optionals allowDocBook [ buildPackages.libxml2.bin buildPackages.libxslt.bin - buildPackages.installShellFiles + ] ++ lib.optionals (! allowDocBook) [ + buildPackages.nixos-render-docs ]; allowedReferences = ["out"]; } @@ -265,14 +270,24 @@ in rec { # Generate manpages. mkdir -p $out/share/man/man8 installManPage ${./manpages}/* - xsltproc --nonet \ - --maxdepth 6000 \ - --param man.output.in.separate.dir 1 \ - --param man.output.base.dir "'$out/share/man/'" \ - --param man.endnotes.are.numbered 0 \ - --param man.break.after.slash 1 \ - ${docbook_xsl_ns}/xml/xsl/docbook/manpages/docbook.xsl \ - ${manual-combined}/man-pages-combined.xml + ${if allowDocBook + then '' + xsltproc --nonet \ + --maxdepth 6000 \ + --param man.output.in.separate.dir 1 \ + --param man.output.base.dir "'$out/share/man/'" \ + --param man.endnotes.are.numbered 0 \ + --param man.break.after.slash 1 \ + ${docbook_xsl_ns}/xml/xsl/docbook/manpages/docbook.xsl \ + ${manual-combined}/man-pages-combined.xml + '' + else '' + mkdir -p $out/share/man/man5 + nixos-render-docs options manpage \ + --revision ${lib.escapeShellArg revision} \ + ${optionsJSON}/share/doc/nixos/options.json \ + $out/share/man/man5/configuration.nix.5 + ''} ''; } diff --git a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/manpage.py b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/manpage.py new file mode 100644 index 000000000000..8188cfb9871b --- /dev/null +++ b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/manpage.py @@ -0,0 +1,316 @@ +from collections.abc import Mapping, MutableMapping, Sequence +from dataclasses import dataclass +from typing import Any, cast, Iterable, Optional + +import re + +import markdown_it +from markdown_it.token import Token +from markdown_it.utils import OptionsDict + +from .md import Renderer + +# roff(7) says: +# +# > roff documents may contain only graphable 7-bit ASCII characters, the space character, +# > and, in certain circumstances, the tab character. The backslash character ‘\’ indicates +# > the start of an escape sequence […] +# +# mandoc_char(7) says about the `'~^ characters: +# +# > In prose, this automatic substitution is often desirable; but when these characters have +# > to be displayed as plain ASCII characters, for example in source code samples, they require +# > escaping to render as follows: +# +# since we don't want these to be touched anywhere (because markdown will do all substituations +# we want to have) we'll escape those as well. we also escape " (macro metacharacter), - (might +# turn into a typographic hyphen), and . (roff request marker at SOL, changes spacing semantics +# at EOL). groff additionally does not allow unicode escapes for codepoints below U+0080, so +# those need "proper" roff escapes/replacements instead. +_roff_unicode = re.compile(r'''[^\n !#$%&()*+,\-./0-9:;<=>?@A-Z[\\\]_a-z{|}]''', re.ASCII) +_roff_escapes = { + ord('"'): "\\(dq", + ord("'"): "\\(aq", + ord('-'): "\\-", + ord('.'): "\\&.", + ord('\\'): "\\e", + ord('^'): "\\(ha", + ord('`'): "\\(ga", + ord('~'): "\\(ti", + ord('…'): "...", # TODO docbook compat, remove later +} +def man_escape(s: str) -> str: + s = s.translate(_roff_escapes) + return _roff_unicode.sub(lambda m: f"\\[u{ord(m[0]):04X}]", s) + +# remove leading and trailing spaces from links and condense multiple consecutive spaces +# into a single space for presentation parity with html. this is currently easiest with +# regex postprocessing and some marker characters. since we don't want to drop spaces +# from code blocks we will have to specially protect *inline* code (luckily not block code) +# so normalization can turn the spaces inside it into regular spaces again. +_normalize_space_re = re.compile(r'''\u0000 < *| *>\u0000 |(?<= ) +''') +def _normalize_space(s: str) -> str: + return _normalize_space_re.sub("", s).replace("\0p", " ") + +def _protect_spaces(s: str) -> str: + return s.replace(" ", "\0p") + +@dataclass(kw_only=True) +class List: + width: int + next_idx: Optional[int] = None + compact: bool + first_item_seen: bool = False + +# this renderer assumed that it produces a set of lines as output, and that those lines will +# be pasted as-is into a larger output. no prefixing or suffixing is allowed for correctness. +# +# NOTE that we output exclusively physical markup. this is because we have to use the older +# mandoc(7) format instead of the newer mdoc(7) format due to limitations in groff: while +# using mdoc in groff works fine it is not a native format and thus very slow to render on +# manpages as large as configuration.nix.5. mandoc(1) renders both really quickly, but with +# groff being our predominant manpage viewer we have to optimize for groff instead. +# +# while we do use only physical markup (adjusting indentation with .RS and .RE, adding +# vertical spacing with .sp, \f[BIRP] escapes for bold/italic/roman/$previous font, \h for +# horizontal motion in a line) we do attempt to copy the style of mdoc(7) semantic requests +# as appropriate for each markup element. +class ManpageRenderer(Renderer): + __output__ = "man" + + _href_targets: dict[str, str] + + _do_parbreak_stack: list[bool] + _list_stack: list[List] + _font_stack: list[str] + + def __init__(self, manpage_urls: Mapping[str, str], href_targets: dict[str, str], + parser: Optional[markdown_it.MarkdownIt] = None): + super().__init__(manpage_urls, parser) + self._href_targets = href_targets + self._do_parbreak_stack = [] + self._list_stack = [] + self._font_stack = [] + + def _join_block(self, ls: Iterable[str]) -> str: + return "\n".join([ l for l in ls if len(l) ]) + def _join_inline(self, ls: Iterable[str]) -> str: + return _normalize_space(super()._join_inline(ls)) + + def _enter_block(self) -> None: + self._do_parbreak_stack.append(False) + def _leave_block(self) -> None: + self._do_parbreak_stack.pop() + self._do_parbreak_stack[-1] = True + def _maybe_parbreak(self, suffix: str = "") -> str: + result = f".sp{suffix}" if self._do_parbreak_stack[-1] else "" + self._do_parbreak_stack[-1] = True + return result + + def _admonition_open(self, kind: str) -> str: + self._enter_block() + return ( + '.sp\n' + '.RS 4\n' + f'\\fB{kind}\\fP\n' + '.br' + ) + def _admonition_close(self) -> str: + self._leave_block() + return ".RE" + + def render(self, tokens: Sequence[Token], options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + self._do_parbreak_stack = [ False ] + self._font_stack = [ "\\fR" ] + return super().render(tokens, options, env) + + def text(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + return man_escape(token.content) + def paragraph_open(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + return self._maybe_parbreak() + def paragraph_close(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + return "" + def hardbreak(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + return ".br" + def softbreak(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + return " " + def code_inline(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + return _protect_spaces(man_escape(token.content)) + def code_block(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + return self.fence(token, tokens, i, options, env) + def link_open(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + href = cast(str, token.attrs['href']) + (text, font) = ("", "\\fB") + if tokens[i + 1].type == 'link_close' and href in self._href_targets: + # TODO error or warning if the target can't be resolved + text = self._href_targets[href] + elif href in self._href_targets: + font = "\\fR" # TODO docbook renders these links differently for some reason + self._font_stack.append(font) + return f"{font}{text}\0 <" + def link_close(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + self._font_stack.pop() + return f">\0 {self._font_stack[-1]}" + def list_item_open(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + self._enter_block() + lst = self._list_stack[-1] + maybe_space = '' if not lst.first_item_seen else '.sp\n' + lst.first_item_seen = True + head = "•" + if lst.next_idx is not None: + head = f" {lst.next_idx}." + lst.next_idx += 1 + return ( + f'{maybe_space}' + f'.RS {lst.width}\n' + f"\\h'-{lst.width}'{man_escape(head)}\\h'{lst.width - len(head)}'\\c" + ) + def list_item_close(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + self._leave_block() + return ".RE" + def bullet_list_open(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + self._list_stack.append(List(width=4, compact=False)) + return self._maybe_parbreak() + def bullet_list_close(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + self._list_stack.pop() + return "" + def em_open(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + self._font_stack.append("\\fI") + return "\\fI" + def em_close(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + self._font_stack.pop() + return self._font_stack[-1] + def strong_open(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + self._font_stack.append("\\fB") + return "\\fB" + def strong_close(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + self._font_stack.pop() + return self._font_stack[-1] + def fence(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + s = man_escape(token.content).rstrip('\n') + return ( + '.sp\n' + '.RS 4\n' + '.nf\n' + f'{s}\n' + '.fi\n' + '.RE' + ) + def blockquote_open(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + maybe_par = self._maybe_parbreak("\n") + self._enter_block() + return ( + f"{maybe_par}" + ".RS 4\n" + f"\\h'-3'\\fI\\(lq\\(rq\\fP\\h'1'\\c" + ) + def blockquote_close(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + self._leave_block() + return ".RE" + def note_open(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + return self._admonition_open("Note") + def note_close(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + return self._admonition_close() + def caution_open(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + return self._admonition_open( "Caution") + def caution_close(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + return self._admonition_close() + def important_open(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + return self._admonition_open( "Important") + def important_close(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + return self._admonition_close() + def tip_open(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + return self._admonition_open( "Tip") + def tip_close(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + return self._admonition_close() + def warning_open(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + return self._admonition_open( "Warning") + def warning_close(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + return self._admonition_close() + def dl_open(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + return "" + def dl_close(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + return "" + def dt_open(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + return ".PP" + def dt_close(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + return "" + def dd_open(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + self._enter_block() + return ".RS 4" + def dd_close(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + self._leave_block() + return ".RE" + def myst_role(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + if token.meta['name'] in [ 'command', 'env', 'option' ]: + return f'\\fB{man_escape(token.content)}\\fP' + elif token.meta['name'] == 'file': + return f'{man_escape(token.content)}' + elif token.meta['name'] == 'var': + return f'\\fI{man_escape(token.content)}\\fP' + elif token.meta['name'] == 'manpage': + [page, section] = [ s.strip() for s in token.content.rsplit('(', 1) ] + section = section[:-1] + return f'\\fB{man_escape(page)}\\fP\\fR({man_escape(section)})\\fP' + else: + raise NotImplementedError("md node not supported yet", token) + def inline_anchor(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + return "" # mdoc knows no anchors + def heading_open(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + raise RuntimeError("md token not supported in manpages", token) + def heading_close(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + raise RuntimeError("md token not supported in manpages", token) + def ordered_list_open(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + # max item head width for a number, a dot, and one leading space and one trailing space + width = 3 + len(str(cast(int, token.meta['end']))) + self._list_stack.append( + List(width = width, + next_idx = cast(int, token.attrs.get('start', 1)), + compact = bool(token.meta['compact']))) + return self._maybe_parbreak() + def ordered_list_close(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, + env: MutableMapping[str, Any]) -> str: + self._list_stack.pop() + return "" diff --git a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/md.py b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/md.py index 16e473e97ade..5bc16e65933c 100644 --- a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/md.py +++ b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/md.py @@ -391,7 +391,7 @@ class Converter(ABC): tokens = self._md.parse(src, env if env is not None else {}) return self._post_parse(tokens) - def _render(self, src: str) -> str: - env: dict[str, Any] = {} + def _render(self, src: str, env: Optional[MutableMapping[str, Any]] = None) -> str: + env = {} if env is None else env tokens = self._parse(src, env) return self._md.renderer.render(tokens, self._md.options, env) # type: ignore[no-any-return] diff --git a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/options.py b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/options.py index 9603b5726897..364fb6dc2c3a 100644 --- a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/options.py +++ b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/options.py @@ -2,13 +2,16 @@ import argparse import json from abc import abstractmethod -from collections.abc import MutableMapping, Sequence +from collections.abc import Mapping, MutableMapping, Sequence from markdown_it.utils import OptionsDict from markdown_it.token import Token from typing import Any, Optional from xml.sax.saxutils import escape, quoteattr +import markdown_it + from .docbook import DocBookRenderer, make_xml_id +from .manpage import ManpageRenderer, man_escape from .md import Converter, md_escape from .types import OptionLoc, Option, RenderedOption @@ -28,16 +31,10 @@ class BaseConverter(Converter): def __init__(self, manpage_urls: dict[str, str], revision: str, - document_type: str, - varlist_id: str, - id_prefix: str, markdown_by_default: bool): super().__init__(manpage_urls) self._options = {} self._revision = revision - self._document_type = document_type - self._varlist_id = varlist_id - self._id_prefix = id_prefix self._markdown_by_default = markdown_by_default def _sorted_options(self) -> list[tuple[str, RenderedOption]]: @@ -183,6 +180,17 @@ class DocBookConverter(BaseConverter): __renderer__ = OptionsDocBookRenderer __option_block_separator__ = "" + def __init__(self, manpage_urls: dict[str, str], + revision: str, + markdown_by_default: bool, + document_type: str, + varlist_id: str, + id_prefix: str): + super().__init__(manpage_urls, revision, markdown_by_default) + self._document_type = document_type + self._varlist_id = varlist_id + self._id_prefix = id_prefix + def _render_code(self, option: dict[str, Any], key: str) -> list[str]: if lit := option_is(option, key, 'literalDocBook'): return [ f"{key.capitalize()}: {lit['text']}" ] @@ -258,6 +266,101 @@ class DocBookConverter(BaseConverter): return "\n".join(result) +class OptionsManpageRenderer(ManpageRenderer): + pass + +class ManpageConverter(BaseConverter): + def __renderer__(self, manpage_urls: Mapping[str, str], + parser: Optional[markdown_it.MarkdownIt] = None) -> OptionsManpageRenderer: + return OptionsManpageRenderer(manpage_urls, self._options_by_id, parser) + + __option_block_separator__ = ".sp" + + _options_by_id: dict[str, str] + + def __init__(self, revision: str, markdown_by_default: bool): + self._options_by_id = {} + super().__init__({}, revision, markdown_by_default) + + def add_options(self, options: dict[str, Any]) -> None: + for (k, v) in options.items(): + self._options_by_id[f'#{make_xml_id(f"opt-{k}")}'] = k + return super().add_options(options) + + def _render_code(self, option: dict[str, Any], key: str) -> list[str]: + if lit := option_is(option, key, 'literalDocBook'): + raise RuntimeError("can't render manpages in the presence of docbook") + else: + return super()._render_code(option, key) + + def _render_description(self, desc: str | dict[str, Any]) -> list[str]: + if isinstance(desc, str) and not self._markdown_by_default: + raise RuntimeError("can't render manpages in the presence of docbook") + else: + return super()._render_description(desc) + + def _related_packages_header(self) -> list[str]: + return [ + '\\fIRelated packages:\\fP', + '.sp', + ] + + def _decl_def_header(self, header: str) -> list[str]: + return [ + f'\\fI{man_escape(header)}:\\fP', + ] + + def _decl_def_entry(self, href: Optional[str], name: str) -> list[str]: + return [ + '.RS 4', + f'\\fB{man_escape(name)}\\fP', + '.RE' + ] + + def _decl_def_footer(self) -> list[str]: + return [] + + def finalize(self) -> str: + result = [] + + result += [ + r'''.TH "CONFIGURATION\&.NIX" "5" "01/01/1980" "NixOS" "NixOS Reference Pages"''', + r'''.\" disable hyphenation''', + r'''.nh''', + r'''.\" disable justification (adjust text to left margin only)''', + r'''.ad l''', + r'''.\" enable line breaks after slashes''', + r'''.cflags 4 /''', + r'''.SH "NAME"''', + self._render('{file}`configuration.nix` - NixOS system configuration specification'), + r'''.SH "DESCRIPTION"''', + r'''.PP''', + self._render('The file {file}`/etc/nixos/configuration.nix` contains the ' + 'declarative specification of your NixOS system configuration. ' + 'The command {command}`nixos-rebuild` takes this file and ' + 'realises the system configuration specified therein.'), + r'''.SH "OPTIONS"''', + r'''.PP''', + self._render('You can use the following options in {file}`configuration.nix`.'), + ] + + for (name, opt) in self._sorted_options(): + result += [ + ".PP", + f"\\fB{man_escape(name)}\\fR", + ".RS 4", + ] + result += opt.lines + result.append(".RE") + + result += [ + r'''.SH "AUTHORS"''', + r'''.PP''', + r'''Eelco Dolstra and the Nixpkgs/NixOS contributors''', + ] + + return "\n".join(result) + def _build_cli_db(p: argparse.ArgumentParser) -> None: p.add_argument('--manpage-urls', required=True) p.add_argument('--revision', required=True) @@ -268,27 +371,47 @@ def _build_cli_db(p: argparse.ArgumentParser) -> None: p.add_argument("infile") p.add_argument("outfile") +def _build_cli_manpage(p: argparse.ArgumentParser) -> None: + p.add_argument('--revision', required=True) + p.add_argument("infile") + p.add_argument("outfile") + def _run_cli_db(args: argparse.Namespace) -> None: with open(args.manpage_urls, 'r') as manpage_urls: md = DocBookConverter( json.load(manpage_urls), revision = args.revision, + markdown_by_default = args.markdown_by_default, document_type = args.document_type, varlist_id = args.varlist_id, - id_prefix = args.id_prefix, - markdown_by_default = args.markdown_by_default) + id_prefix = args.id_prefix) with open(args.infile, 'r') as f: md.add_options(json.load(f)) with open(args.outfile, 'w') as f: f.write(md.finalize()) +def _run_cli_manpage(args: argparse.Namespace) -> None: + md = ManpageConverter( + revision = args.revision, + # manpage rendering only works if there's no docbook, so we can + # also set markdown_by_default with no ill effects. + markdown_by_default = True) + + with open(args.infile, 'r') as f: + md.add_options(json.load(f)) + with open(args.outfile, 'w') as f: + f.write(md.finalize()) + def build_cli(p: argparse.ArgumentParser) -> None: formats = p.add_subparsers(dest='format', required=True) _build_cli_db(formats.add_parser('docbook')) + _build_cli_manpage(formats.add_parser('manpage')) def run_cli(args: argparse.Namespace) -> None: if args.format == 'docbook': _run_cli_db(args) + elif args.format == 'manpage': + _run_cli_manpage(args) else: raise RuntimeError('format not hooked up', args) diff --git a/pkgs/tools/nix/nixos-render-docs/src/tests/test_manpage.py b/pkgs/tools/nix/nixos-render-docs/src/tests/test_manpage.py new file mode 100644 index 000000000000..0ccd33f1be41 --- /dev/null +++ b/pkgs/tools/nix/nixos-render-docs/src/tests/test_manpage.py @@ -0,0 +1,29 @@ +import nixos_render_docs + +from typing import Mapping, Optional + +import markdown_it + +class Converter(nixos_render_docs.md.Converter): + def __renderer__(self, manpage_urls: Mapping[str, str], + parser: Optional[markdown_it.MarkdownIt] = None + ) -> nixos_render_docs.manpage.ManpageRenderer: + return nixos_render_docs.manpage.ManpageRenderer(manpage_urls, self.options_by_id, parser) + + def __init__(self, manpage_urls: Mapping[str, str], options_by_id: dict[str, str] = {}): + self.options_by_id = options_by_id + super().__init__(manpage_urls) + +def test_inline_code() -> None: + c = Converter({}) + assert c._render("1 `x a x` 2") == "1 x a x 2" + +def test_fonts() -> None: + c = Converter({}) + assert c._render("*a **b** c*") == "\\fIa \\fBb\\fI c\\fR" + assert c._render("*a [1 `2`](3) c*") == "\\fIa \\fB1 2\\fI c\\fR" + +def test_expand_link_targets() -> None: + c = Converter({}, { '#foo1': "bar", "#foo2": "bar" }) + assert (c._render("[a](#foo1) [](#foo2) [b](#bar1) [](#bar2)") == + "\\fRa\\fR \\fBbar\\fR \\fBb\\fR \\fB\\fR") diff --git a/pkgs/tools/nix/nixos-render-docs/src/tests/test_options.py b/pkgs/tools/nix/nixos-render-docs/src/tests/test_options.py index 5a02fabde0fb..9608ed639218 100644 --- a/pkgs/tools/nix/nixos-render-docs/src/tests/test_options.py +++ b/pkgs/tools/nix/nixos-render-docs/src/tests/test_options.py @@ -4,7 +4,7 @@ from markdown_it.token import Token import pytest def test_option_headings() -> None: - c = nixos_render_docs.options.DocBookConverter({}, 'local', 'none', 'vars', 'opt-', False) + c = nixos_render_docs.options.DocBookConverter({}, 'local', False, 'none', 'vars', 'opt-') with pytest.raises(RuntimeError) as exc: c._render("# foo") assert exc.value.args[0] == 'md token not supported in options doc' From 5c5dadd382c983cc626c930fc14df798f957d72c Mon Sep 17 00:00:00 2001 From: pennae Date: Thu, 2 Feb 2023 02:57:28 +0100 Subject: [PATCH 169/198] nixos-render-docs: support compact lists in manpages most of the lists in option docs are actually compact, but docbook to manpage processing always rendered them as non-compact. compactifying these lists improves readability somewhat since most lists and their contents are pretty short. --- .../nix/nixos-render-docs/src/nixos_render_docs/manpage.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/manpage.py b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/manpage.py index 8188cfb9871b..b64e06a97df3 100644 --- a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/manpage.py +++ b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/manpage.py @@ -165,7 +165,7 @@ class ManpageRenderer(Renderer): env: MutableMapping[str, Any]) -> str: self._enter_block() lst = self._list_stack[-1] - maybe_space = '' if not lst.first_item_seen else '.sp\n' + maybe_space = '' if lst.compact or not lst.first_item_seen else '.sp\n' lst.first_item_seen = True head = "•" if lst.next_idx is not None: @@ -182,7 +182,7 @@ class ManpageRenderer(Renderer): return ".RE" def bullet_list_open(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, env: MutableMapping[str, Any]) -> str: - self._list_stack.append(List(width=4, compact=False)) + self._list_stack.append(List(width=4, compact=bool(token.meta['compact']))) return self._maybe_parbreak() def bullet_list_close(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, env: MutableMapping[str, Any]) -> str: From 3a3274231ef6b8febbf72b9e5fb04dc0b59aeaa2 Mon Sep 17 00:00:00 2001 From: pennae Date: Thu, 2 Feb 2023 04:14:08 +0100 Subject: [PATCH 170/198] nixos-render-docs: always render links bold in manpages no reason to differentiate between links by source of their label. this feature seems to be mostly used to change labels of links to other options, but this should ultimately be done by auto-linking from {option}`...`. at some point we may want to introduce a warning when this pattern is encountered, but there's a lot to work out still before we can do that. --- .../nixos-render-docs/src/nixos_render_docs/manpage.py | 8 +++----- .../tools/nix/nixos-render-docs/src/tests/test_manpage.py | 2 +- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/manpage.py b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/manpage.py index b64e06a97df3..15fb258b4a0a 100644 --- a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/manpage.py +++ b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/manpage.py @@ -149,14 +149,12 @@ class ManpageRenderer(Renderer): def link_open(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, env: MutableMapping[str, Any]) -> str: href = cast(str, token.attrs['href']) - (text, font) = ("", "\\fB") + text = "" if tokens[i + 1].type == 'link_close' and href in self._href_targets: # TODO error or warning if the target can't be resolved text = self._href_targets[href] - elif href in self._href_targets: - font = "\\fR" # TODO docbook renders these links differently for some reason - self._font_stack.append(font) - return f"{font}{text}\0 <" + self._font_stack.append("\\fB") + return f"\\fB{text}\0 <" def link_close(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, env: MutableMapping[str, Any]) -> str: self._font_stack.pop() diff --git a/pkgs/tools/nix/nixos-render-docs/src/tests/test_manpage.py b/pkgs/tools/nix/nixos-render-docs/src/tests/test_manpage.py index 0ccd33f1be41..409c292fd5e4 100644 --- a/pkgs/tools/nix/nixos-render-docs/src/tests/test_manpage.py +++ b/pkgs/tools/nix/nixos-render-docs/src/tests/test_manpage.py @@ -26,4 +26,4 @@ def test_fonts() -> None: def test_expand_link_targets() -> None: c = Converter({}, { '#foo1': "bar", "#foo2": "bar" }) assert (c._render("[a](#foo1) [](#foo2) [b](#bar1) [](#bar2)") == - "\\fRa\\fR \\fBbar\\fR \\fBb\\fR \\fB\\fR") + "\\fBa\\fR \\fBbar\\fR \\fBb\\fR \\fB\\fR") From f33e360f675949751c85bec50eb692ae1b74b8b3 Mon Sep 17 00:00:00 2001 From: pennae Date: Wed, 1 Feb 2023 06:24:38 +0100 Subject: [PATCH 171/198] nixos-render-docs: remove the ... escape in manpages this is a holdover from docbook stylesheets. not really sure why they did that. --- .../tools/nix/nixos-render-docs/src/nixos_render_docs/manpage.py | 1 - 1 file changed, 1 deletion(-) diff --git a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/manpage.py b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/manpage.py index 15fb258b4a0a..8adae2c8a0b0 100644 --- a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/manpage.py +++ b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/manpage.py @@ -37,7 +37,6 @@ _roff_escapes = { ord('^'): "\\(ha", ord('`'): "\\(ga", ord('~'): "\\(ti", - ord('…'): "...", # TODO docbook compat, remove later } def man_escape(s: str) -> str: s = s.translate(_roff_escapes) From 29252d1477dd224e88af915ff7e13cadd52838fb Mon Sep 17 00:00:00 2001 From: pennae Date: Wed, 1 Feb 2023 03:01:27 +0100 Subject: [PATCH 172/198] nixos-render-docs: add quotes to inline code in manpages MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit other output types already have markings for inline code, manpages do not. this can be somewhat confusing, so we'll do the least intrusive thing: surrounding inline code blocks in ‘’. doing so separates inline code from the rest of the text and is unlikely to collide with the quoted contents. it's also what mdoc does with its Ql macro. --- .../nixos-render-docs/src/nixos_render_docs/manpage.py | 8 +++++++- .../nixos-render-docs/src/nixos_render_docs/options.py | 7 ++++++- .../tools/nix/nixos-render-docs/src/tests/test_manpage.py | 4 ++-- 3 files changed, 15 insertions(+), 4 deletions(-) diff --git a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/manpage.py b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/manpage.py index 8adae2c8a0b0..5a16884a67df 100644 --- a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/manpage.py +++ b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/manpage.py @@ -77,6 +77,11 @@ class List: class ManpageRenderer(Renderer): __output__ = "man" + # whether to emit mdoc .Ql equivalents for inline code or just the contents. this is + # mainly used by the options manpage converter to not emit extra quotes in defaults + # and examples where it's already clear from context that the following text is code. + inline_code_is_quoted: bool = True + _href_targets: dict[str, str] _do_parbreak_stack: list[bool] @@ -141,7 +146,8 @@ class ManpageRenderer(Renderer): return " " def code_inline(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, env: MutableMapping[str, Any]) -> str: - return _protect_spaces(man_escape(token.content)) + s = _protect_spaces(man_escape(token.content)) + return f"\\fR\\(oq{s}\\(cq\\fP" if self.inline_code_is_quoted else s def code_block(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, env: MutableMapping[str, Any]) -> str: return self.fence(token, tokens, i, options, env) diff --git a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/options.py b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/options.py index 364fb6dc2c3a..a613ada1e68b 100644 --- a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/options.py +++ b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/options.py @@ -291,7 +291,12 @@ class ManpageConverter(BaseConverter): if lit := option_is(option, key, 'literalDocBook'): raise RuntimeError("can't render manpages in the presence of docbook") else: - return super()._render_code(option, key) + assert isinstance(self._md.renderer, OptionsManpageRenderer) + try: + self._md.renderer.inline_code_is_quoted = False + return super()._render_code(option, key) + finally: + self._md.renderer.inline_code_is_quoted = True def _render_description(self, desc: str | dict[str, Any]) -> list[str]: if isinstance(desc, str) and not self._markdown_by_default: diff --git a/pkgs/tools/nix/nixos-render-docs/src/tests/test_manpage.py b/pkgs/tools/nix/nixos-render-docs/src/tests/test_manpage.py index 409c292fd5e4..5bd374dba406 100644 --- a/pkgs/tools/nix/nixos-render-docs/src/tests/test_manpage.py +++ b/pkgs/tools/nix/nixos-render-docs/src/tests/test_manpage.py @@ -16,12 +16,12 @@ class Converter(nixos_render_docs.md.Converter): def test_inline_code() -> None: c = Converter({}) - assert c._render("1 `x a x` 2") == "1 x a x 2" + assert c._render("1 `x a x` 2") == "1 \\fR\\(oqx a x\\(cq\\fP 2" def test_fonts() -> None: c = Converter({}) assert c._render("*a **b** c*") == "\\fIa \\fBb\\fI c\\fR" - assert c._render("*a [1 `2`](3) c*") == "\\fIa \\fB1 2\\fI c\\fR" + assert c._render("*a [1 `2`](3) c*") == "\\fIa \\fB1 \\fR\\(oq2\\(cq\\fP\\fI c\\fR" def test_expand_link_targets() -> None: c = Converter({}, { '#foo1': "bar", "#foo2": "bar" }) From 1e4bafdbc5dbdad9542be6aa42febb7766dea918 Mon Sep 17 00:00:00 2001 From: pennae Date: Wed, 1 Feb 2023 03:03:14 +0100 Subject: [PATCH 173/198] nixos-render-docs: style file literals in manpages similar to inline code these were indistinguishale from other text. render then in italic font instead, like mdoc .Pa does. --- .../nix/nixos-render-docs/src/nixos_render_docs/manpage.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/manpage.py b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/manpage.py index 5a16884a67df..29a2981e51b8 100644 --- a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/manpage.py +++ b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/manpage.py @@ -285,9 +285,7 @@ class ManpageRenderer(Renderer): env: MutableMapping[str, Any]) -> str: if token.meta['name'] in [ 'command', 'env', 'option' ]: return f'\\fB{man_escape(token.content)}\\fP' - elif token.meta['name'] == 'file': - return f'{man_escape(token.content)}' - elif token.meta['name'] == 'var': + elif token.meta['name'] in [ 'file', 'var' ]: return f'\\fI{man_escape(token.content)}\\fP' elif token.meta['name'] == 'manpage': [page, section] = [ s.strip() for s in token.content.rsplit('(', 1) ] From f47adfcb6f8bdb617c78579d51bc3e0dc25ac74a Mon Sep 17 00:00:00 2001 From: pennae Date: Wed, 1 Feb 2023 03:10:02 +0100 Subject: [PATCH 174/198] nixos-render-docs: make manpage deflists a little nicer indent the entire list by 4, just like each definition is already indented by 4. this matches rendering in html, which indents terms once and indents definitions twice. --- .../nix/nixos-render-docs/src/nixos_render_docs/manpage.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/manpage.py b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/manpage.py index 29a2981e51b8..d1cd8c95a7c7 100644 --- a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/manpage.py +++ b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/manpage.py @@ -263,10 +263,10 @@ class ManpageRenderer(Renderer): return self._admonition_close() def dl_open(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, env: MutableMapping[str, Any]) -> str: - return "" + return ".RS 4" def dl_close(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, env: MutableMapping[str, Any]) -> str: - return "" + return ".RE" def dt_open(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, env: MutableMapping[str, Any]) -> str: return ".PP" From 3c7fd940ba22a735cfc267bb641e0bce4e23677e Mon Sep 17 00:00:00 2001 From: pennae Date: Fri, 3 Feb 2023 01:57:42 +0100 Subject: [PATCH 175/198] nixos-render-docs: indent and embolden list item heads in manpages this matches what html outputs do more closely, and feels like it'll be easier to read because it looks less like just another paragraph. --- .../nix/nixos-render-docs/src/nixos_render_docs/manpage.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/manpage.py b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/manpage.py index d1cd8c95a7c7..c6836ade33be 100644 --- a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/manpage.py +++ b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/manpage.py @@ -172,12 +172,12 @@ class ManpageRenderer(Renderer): lst.first_item_seen = True head = "•" if lst.next_idx is not None: - head = f" {lst.next_idx}." + head = f"{lst.next_idx}." lst.next_idx += 1 return ( f'{maybe_space}' f'.RS {lst.width}\n' - f"\\h'-{lst.width}'{man_escape(head)}\\h'{lst.width - len(head)}'\\c" + f"\\h'-{len(head) + 1}'\\fB{man_escape(head)}\\fP\\h'1'\\c" ) def list_item_close(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, env: MutableMapping[str, Any]) -> str: From 78052a22cbd1d33a88b1a46461b3b7f7ad41ac63 Mon Sep 17 00:00:00 2001 From: pennae Date: Thu, 2 Feb 2023 06:15:59 +0100 Subject: [PATCH 176/198] nixos-render-docs: track links in manpages for the longest time we completely dropped link targets in configuration.nix.5. let's stop doing this now and instead provide a footnote for each link in a given option, numbered locally per option. we will currently duplicate the link for because it makes it easier to get the collection of all links in a given option. this may not be useful enough, so over time we might decide to drop the footnotes for such links. --- .../src/nixos_render_docs/manpage.py | 15 +++++++++- .../src/nixos_render_docs/options.py | 30 ++++++++++++++++--- .../src/nixos_render_docs/types.py | 6 ++-- .../src/tests/test_manpage.py | 14 +++++++++ 4 files changed, 58 insertions(+), 7 deletions(-) diff --git a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/manpage.py b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/manpage.py index c6836ade33be..24d0e8f3d699 100644 --- a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/manpage.py +++ b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/manpage.py @@ -81,9 +81,11 @@ class ManpageRenderer(Renderer): # mainly used by the options manpage converter to not emit extra quotes in defaults # and examples where it's already clear from context that the following text is code. inline_code_is_quoted: bool = True + link_footnotes: Optional[list[str]] = None _href_targets: dict[str, str] + _link_stack: list[str] _do_parbreak_stack: list[bool] _list_stack: list[List] _font_stack: list[str] @@ -92,6 +94,7 @@ class ManpageRenderer(Renderer): parser: Optional[markdown_it.MarkdownIt] = None): super().__init__(manpage_urls, parser) self._href_targets = href_targets + self._link_stack = [] self._do_parbreak_stack = [] self._list_stack = [] self._font_stack = [] @@ -154,6 +157,7 @@ class ManpageRenderer(Renderer): def link_open(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, env: MutableMapping[str, Any]) -> str: href = cast(str, token.attrs['href']) + self._link_stack.append(href) text = "" if tokens[i + 1].type == 'link_close' and href in self._href_targets: # TODO error or warning if the target can't be resolved @@ -162,8 +166,17 @@ class ManpageRenderer(Renderer): return f"\\fB{text}\0 <" def link_close(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, env: MutableMapping[str, Any]) -> str: + href = self._link_stack.pop() + text = "" + if self.link_footnotes is not None: + try: + idx = self.link_footnotes.index(href) + 1 + except ValueError: + self.link_footnotes.append(href) + idx = len(self.link_footnotes) + text = "\\fR" + man_escape(f"[{idx}]") self._font_stack.pop() - return f">\0 {self._font_stack[-1]}" + return f">\0 {text}{self._font_stack[-1]}" def list_item_open(self, token: Token, tokens: Sequence[Token], i: int, options: OptionsDict, env: MutableMapping[str, Any]) -> str: self._enter_block() diff --git a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/options.py b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/options.py index a613ada1e68b..95091d3cdd28 100644 --- a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/options.py +++ b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/options.py @@ -148,12 +148,15 @@ class BaseConverter(Converter): return [ l for part in blocks for l in part ] + def _render_option(self, name: str, option: dict[str, Any]) -> RenderedOption: + try: + return RenderedOption(option['loc'], self._convert_one(option)) + except Exception as e: + raise Exception(f"Failed to render option {name}") from e + def add_options(self, options: dict[str, Any]) -> None: for (name, option) in options.items(): - try: - self._options[name] = RenderedOption(option['loc'], self._convert_one(option)) - except Exception as e: - raise Exception(f"Failed to render option {name}") from e + self._options[name] = self._render_option(name, option) @abstractmethod def finalize(self) -> str: raise NotImplementedError() @@ -277,11 +280,19 @@ class ManpageConverter(BaseConverter): __option_block_separator__ = ".sp" _options_by_id: dict[str, str] + _links_in_last_description: Optional[list[str]] = None def __init__(self, revision: str, markdown_by_default: bool): self._options_by_id = {} super().__init__({}, revision, markdown_by_default) + def _render_option(self, name: str, option: dict[str, Any]) -> RenderedOption: + assert isinstance(self._md.renderer, OptionsManpageRenderer) + links = self._md.renderer.link_footnotes = [] + result = super()._render_option(name, option) + self._md.renderer.link_footnotes = None + return result._replace(links=links) + def add_options(self, options: dict[str, Any]) -> None: for (k, v) in options.items(): self._options_by_id[f'#{make_xml_id(f"opt-{k}")}'] = k @@ -356,6 +367,17 @@ class ManpageConverter(BaseConverter): ".RS 4", ] result += opt.lines + if links := opt.links: + result.append(self.__option_block_separator__) + md_links = "" + for i in range(0, len(links)): + md_links += "\n" if i > 0 else "" + if links[i].startswith('#opt-'): + md_links += f"{i+1}. see the {{option}}`{self._options_by_id[links[i]]}` option" + else: + md_links += f"{i+1}. " + md_escape(links[i]) + result.append(self._render(md_links)) + result.append(".RE") result += [ diff --git a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/types.py b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/types.py index 7814b3a4854b..d20e056aacdc 100644 --- a/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/types.py +++ b/pkgs/tools/nix/nixos-render-docs/src/nixos_render_docs/types.py @@ -7,7 +7,9 @@ from markdown_it.utils import OptionsDict OptionLoc = str | dict[str, str] Option = dict[str, str | dict[str, str] | list[OptionLoc]] -RenderedOption = NamedTuple('RenderedOption', [('loc', list[str]), - ('lines', list[str])]) +class RenderedOption(NamedTuple): + loc: list[str] + lines: list[str] + links: Optional[list[str]] = None RenderFn = Callable[[Token, Sequence[Token], int, OptionsDict, MutableMapping[str, Any]], str] diff --git a/pkgs/tools/nix/nixos-render-docs/src/tests/test_manpage.py b/pkgs/tools/nix/nixos-render-docs/src/tests/test_manpage.py index 5bd374dba406..92073edf557b 100644 --- a/pkgs/tools/nix/nixos-render-docs/src/tests/test_manpage.py +++ b/pkgs/tools/nix/nixos-render-docs/src/tests/test_manpage.py @@ -27,3 +27,17 @@ def test_expand_link_targets() -> None: c = Converter({}, { '#foo1': "bar", "#foo2": "bar" }) assert (c._render("[a](#foo1) [](#foo2) [b](#bar1) [](#bar2)") == "\\fBa\\fR \\fBbar\\fR \\fBb\\fR \\fB\\fR") + +def test_collect_links() -> None: + c = Converter({}, { '#foo': "bar" }) + assert isinstance(c._md.renderer, nixos_render_docs.manpage.ManpageRenderer) + c._md.renderer.link_footnotes = [] + assert c._render("[a](link1) [b](link2)") == "\\fBa\\fR[1]\\fR \\fBb\\fR[2]\\fR" + assert c._md.renderer.link_footnotes == ['link1', 'link2'] + +def test_dedup_links() -> None: + c = Converter({}, { '#foo': "bar" }) + assert isinstance(c._md.renderer, nixos_render_docs.manpage.ManpageRenderer) + c._md.renderer.link_footnotes = [] + assert c._render("[a](link) [b](link)") == "\\fBa\\fR[1]\\fR \\fBb\\fR[1]\\fR" + assert c._md.renderer.link_footnotes == ['link'] From 702e1fc743cfe66f9ccb38ca7bfcc1f5aae8279b Mon Sep 17 00:00:00 2001 From: pennae Date: Sun, 5 Feb 2023 01:27:08 +0100 Subject: [PATCH 177/198] nixos-render-docs: add all-features manpage renderer test now that the renderer produces the output we want to keep for the future we can add a test that checks all of its features. this test notably does not include markdown headings since we don't want to have those in manpages (at least right now), but tests for other converters may add headings for themselves. --- .../nixos-render-docs/src/tests/sample_md.py | 62 ++++++++ .../src/tests/test_manpage.py | 134 ++++++++++++++++++ 2 files changed, 196 insertions(+) create mode 100644 pkgs/tools/nix/nixos-render-docs/src/tests/sample_md.py diff --git a/pkgs/tools/nix/nixos-render-docs/src/tests/sample_md.py b/pkgs/tools/nix/nixos-render-docs/src/tests/sample_md.py new file mode 100644 index 000000000000..73a64fde8364 --- /dev/null +++ b/pkgs/tools/nix/nixos-render-docs/src/tests/sample_md.py @@ -0,0 +1,62 @@ +sample1 = """\ +:::: {.warning} +foo +::: {.note} +nested +::: +:::: + +[ + multiline +](link) + +{manpage}`man(1)` reference + +[some [nested]{#a} anchors]{#b} + +*emph* **strong** *nesting emph **and strong** and `code`* + +- wide bullet + +- list + +1. wide ordered + +2. list + +- narrow bullet +- list + +1. narrow ordered +2. list + +> quotes +>> with *nesting* +>> +>> nested code block +> +> - and lists +> - ``` +> containing code +> ``` +> +> and more quote + +100. list starting at 100 +1. goes on + +deflist +: > with a quote + > and stuff + + code block + + ``` + fenced block + ``` + + text + +more stuff in same deflist +: foo +""" diff --git a/pkgs/tools/nix/nixos-render-docs/src/tests/test_manpage.py b/pkgs/tools/nix/nixos-render-docs/src/tests/test_manpage.py index 92073edf557b..fbfd21358a85 100644 --- a/pkgs/tools/nix/nixos-render-docs/src/tests/test_manpage.py +++ b/pkgs/tools/nix/nixos-render-docs/src/tests/test_manpage.py @@ -1,5 +1,7 @@ import nixos_render_docs +from sample_md import sample1 + from typing import Mapping, Optional import markdown_it @@ -41,3 +43,135 @@ def test_dedup_links() -> None: c._md.renderer.link_footnotes = [] assert c._render("[a](link) [b](link)") == "\\fBa\\fR[1]\\fR \\fBb\\fR[1]\\fR" assert c._md.renderer.link_footnotes == ['link'] + +def test_full() -> None: + c = Converter({ 'man(1)': 'http://example.org' }) + assert c._render(sample1) == """\ +.sp +.RS 4 +\\fBWarning\\fP +.br +foo +.sp +.RS 4 +\\fBNote\\fP +.br +nested +.RE +.RE +.sp +\\fBmultiline\\fR +.sp +\\fBman\\fP\\fR(1)\\fP reference +.sp +some nested anchors +.sp +\\fIemph\\fR \\fBstrong\\fR \\fInesting emph \\fBand strong\\fI and \\fR\\(oqcode\\(cq\\fP\\fR +.sp +.RS 4 +\\h'-2'\\fB\\[u2022]\\fP\\h'1'\\c +wide bullet +.RE +.sp +.RS 4 +\\h'-2'\\fB\\[u2022]\\fP\\h'1'\\c +list +.RE +.sp +.RS 4 +\\h'-3'\\fB1\\&.\\fP\\h'1'\\c +wide ordered +.RE +.sp +.RS 4 +\\h'-3'\\fB2\\&.\\fP\\h'1'\\c +list +.RE +.sp +.RS 4 +\\h'-2'\\fB\\[u2022]\\fP\\h'1'\\c +narrow bullet +.RE +.RS 4 +\\h'-2'\\fB\\[u2022]\\fP\\h'1'\\c +list +.RE +.sp +.RS 4 +\\h'-3'\\fB1\\&.\\fP\\h'1'\\c +narrow ordered +.RE +.RS 4 +\\h'-3'\\fB2\\&.\\fP\\h'1'\\c +list +.RE +.sp +.RS 4 +\\h'-3'\\fI\\(lq\\(rq\\fP\\h'1'\\c +quotes +.sp +.RS 4 +\\h'-3'\\fI\\(lq\\(rq\\fP\\h'1'\\c +with \\fInesting\\fR +.sp +.RS 4 +.nf +nested code block +.fi +.RE +.RE +.sp +.RS 4 +\\h'-2'\\fB\\[u2022]\\fP\\h'1'\\c +and lists +.RE +.RS 4 +\\h'-2'\\fB\\[u2022]\\fP\\h'1'\\c +.sp +.RS 4 +.nf +containing code +.fi +.RE +.RE +.sp +and more quote +.RE +.sp +.RS 6 +\\h'-5'\\fB100\\&.\\fP\\h'1'\\c +list starting at 100 +.RE +.RS 6 +\\h'-5'\\fB101\\&.\\fP\\h'1'\\c +goes on +.RE +.RS 4 +.PP +deflist +.RS 4 +.RS 4 +\\h'-3'\\fI\\(lq\\(rq\\fP\\h'1'\\c +with a quote and stuff +.RE +.sp +.RS 4 +.nf +code block +.fi +.RE +.sp +.RS 4 +.nf +fenced block +.fi +.RE +.sp +text +.RE +.PP +more stuff in same deflist +.RS 4 +foo +.RE +.RE""" From 5e9d0077cdf4f6a360b27d17a3c3d5ebc127c44b Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 8 Feb 2023 14:29:32 +0000 Subject: [PATCH 178/198] python310Packages.azure-mgmt-datalake-store: 0.5.0 -> 1.0.0 --- .../python-modules/azure-mgmt-datalake-store/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/azure-mgmt-datalake-store/default.nix b/pkgs/development/python-modules/azure-mgmt-datalake-store/default.nix index b2b96ec2994e..18665f4dbb6e 100644 --- a/pkgs/development/python-modules/azure-mgmt-datalake-store/default.nix +++ b/pkgs/development/python-modules/azure-mgmt-datalake-store/default.nix @@ -9,12 +9,12 @@ buildPythonPackage rec { pname = "azure-mgmt-datalake-store"; - version = "0.5.0"; + version = "1.0.0"; src = fetchPypi { inherit pname version; extension = "zip"; - sha256 = "sha256-k3bTVJVmHRn4rMVgT2ewvFlJOxg1u8SA+aGVL5ABekw="; + sha256 = "sha256-GrmVK97M+iojevPLVTuLmfQRLxvrHtr9DRHymJvLYHE="; }; propagatedBuildInputs = [ From cc08236d06867feba6f382ca30910fff8c27bfe0 Mon Sep 17 00:00:00 2001 From: Arjan Schrijver Date: Wed, 8 Feb 2023 14:26:02 +0100 Subject: [PATCH 179/198] oh-my-posh: 13.8.0 -> 14.2.3 Diff: https://github.com/jandedobbeleer/oh-my-posh/compare/refs/tags/v13.8.0...v14.2.3 Changelog: https://github.com/JanDeDobbeleer/oh-my-posh/releases/tag/v14.2.3 --- pkgs/development/tools/oh-my-posh/default.nix | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/pkgs/development/tools/oh-my-posh/default.nix b/pkgs/development/tools/oh-my-posh/default.nix index b4843ddc1030..fae74f6f13fc 100644 --- a/pkgs/development/tools/oh-my-posh/default.nix +++ b/pkgs/development/tools/oh-my-posh/default.nix @@ -6,16 +6,16 @@ buildGoModule rec { pname = "oh-my-posh"; - version = "13.8.0"; + version = "14.2.3"; src = fetchFromGitHub { owner = "jandedobbeleer"; repo = pname; rev = "refs/tags/v${version}"; - hash = "sha256-mplWF/lmgRfYd1Gg2loZI5NIfmTHR8quG1/KcZj5W54="; + hash = "sha256-PghWKyZG19MVmc2fQSQN/BCMbF7YOZWybUSKiQzUxl8="; }; - vendorHash = "sha256-WiH4qu8DODEhAkxUm6VDcBwFyQO7kNjaiaWPDHCHj9E="; + vendorHash = "sha256-ehG71B351u+LoXDuKQkuEdEpUdHslVU2HcPKUz6FAnQ="; sourceRoot = "source/src"; @@ -35,6 +35,11 @@ buildGoModule rec { "static_build" ]; + postPatch = '' + # this test requires internet access + rm engine/migrate_glyphs_test.go + ''; + postInstall = '' mv $out/bin/{src,oh-my-posh} mkdir -p $out/share/oh-my-posh From 79553c2d0d56992f304b9ed411f16c509f1d0cc3 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 8 Feb 2023 14:38:56 +0000 Subject: [PATCH 180/198] v2ray-geoip: 202302020047 -> 202302081046 --- pkgs/data/misc/v2ray-geoip/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/data/misc/v2ray-geoip/default.nix b/pkgs/data/misc/v2ray-geoip/default.nix index be7466674259..40d915dace26 100644 --- a/pkgs/data/misc/v2ray-geoip/default.nix +++ b/pkgs/data/misc/v2ray-geoip/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "v2ray-geoip"; - version = "202302020047"; + version = "202302081046"; src = fetchFromGitHub { owner = "v2fly"; repo = "geoip"; - rev = "9ab244ed78fea88a1ce5bf789fb31bbcd81e8d17"; - sha256 = "sha256-2NYuvzOU0W3qZqWZMr3rTNqX+0rH3fhIr1zCD5dSdWc="; + rev = "d85771a99440dd75294bfd9d00011307b7596d0d"; + sha256 = "sha256-gVL7koUG3BgY8HAYWa2fTwTJIE3svGUgauwI1jlA2/M="; }; installPhase = '' From 1c664befd4c198db2c6993f8afde709024bcec6d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Mon, 30 Jan 2023 16:53:08 +0100 Subject: [PATCH 181/198] nixos/envfs: add extraFallbackPathCommands options this is mainly useful for restricted platforms like wsl which require some extra entries in /bin/ --- nixos/modules/tasks/filesystems/envfs.nix | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/nixos/modules/tasks/filesystems/envfs.nix b/nixos/modules/tasks/filesystems/envfs.nix index df4ce12407bd..76344f5f87ea 100644 --- a/nixos/modules/tasks/filesystems/envfs.nix +++ b/nixos/modules/tasks/filesystems/envfs.nix @@ -7,11 +7,11 @@ let device = "none"; fsType = "envfs"; options = [ - "fallback-path=${pkgs.runCommand "fallback-path" {} '' + "fallback-path=${pkgs.runCommand "fallback-path" {} ('' mkdir -p $out ln -s ${config.environment.usrbinenv} $out/env ln -s ${config.environment.binsh} $out/sh - ''}" + '' + cfg.extraFallbackPathCommands)}" ]; }; "/bin" = { @@ -31,11 +31,19 @@ in { etc. ''; }; + package = lib.mkOption { type = lib.types.package; - description = lib.mdDoc "Which package to use for the envfs."; default = pkgs.envfs; defaultText = lib.literalExpression "pkgs.envfs"; + description = lib.mdDoc "Which package to use for the envfs."; + }; + + extraFallbackPathCommands = lib.mkOption { + type = lib.types.lines; + default = ""; + example = "ln -s $''{pkgs.bash}/bin/bash $out/bash"; + description = lib.mdDoc "Extra commands to run in the package that contains fallback executables in case not other executable is found"; }; }; }; From a8ffe9162466325733a0bc0ff1b0e22cbbfb0b80 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 8 Feb 2023 14:56:57 +0000 Subject: [PATCH 182/198] python310Packages.browser-cookie3: 0.16.5 -> 0.17.0 --- pkgs/development/python-modules/browser-cookie3/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/browser-cookie3/default.nix b/pkgs/development/python-modules/browser-cookie3/default.nix index cd596cecbb9f..52ef0cd8ec20 100644 --- a/pkgs/development/python-modules/browser-cookie3/default.nix +++ b/pkgs/development/python-modules/browser-cookie3/default.nix @@ -12,14 +12,14 @@ buildPythonPackage rec { pname = "browser-cookie3"; - version = "0.16.5"; + version = "0.17.0"; format = "setuptools"; disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - hash = "sha256-i2Ib7OGnoimiZ2R/vGe6phPhA8lEP0BJ/gP1q9RVeiU="; + hash = "sha256-fyyZ7pkNlD6MH1+SRUYjU0mXMUsZJ3qhOqJrcmJ/hgc="; }; propagatedBuildInputs = [ From 7da5418f1d20665113c1530f3bb72a65ca008ac7 Mon Sep 17 00:00:00 2001 From: Martin Milata Date: Wed, 8 Feb 2023 12:09:32 +0100 Subject: [PATCH 183/198] torq: build frontend --- .../applications/blockchains/torq/default.nix | 28 ++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/pkgs/applications/blockchains/torq/default.nix b/pkgs/applications/blockchains/torq/default.nix index cf7722238ef7..4b786168bce3 100644 --- a/pkgs/applications/blockchains/torq/default.nix +++ b/pkgs/applications/blockchains/torq/default.nix @@ -1,9 +1,10 @@ { lib , buildGoModule +, buildNpmPackage , fetchFromGitHub }: -buildGoModule rec { +let pname = "torq"; version = "0.17.3"; @@ -14,6 +15,27 @@ buildGoModule rec { hash = "sha256-fqHJZi1NQCrZqsa+N+FVYZ8s9o0D555Sqn5qNlJ1MmI="; }; + web = buildNpmPackage { + pname = "${pname}-frontend"; + inherit version; + src = "${src}/web"; + npmDepsHash = "sha256-8mUfTFzPjQlQvhC3zZf+WruDBkYnmGt3yckNi0CPWs0="; + + # copied from upstream Dockerfile + npmInstallFlags = [ "--legacy-peer-deps" ]; + TSX_COMPILE_ON_ERROR="true"; + ESLINT_NO_DEV_ERRORS="true"; + + # override npmInstallHook, we only care about the build/ directory + installPhase = '' + mkdir $out + cp -r build $out/ + ''; + }; +in +buildGoModule rec { + inherit pname version src; + vendorHash = "sha256-HETN2IMnpxnTyg6bQDpoD0saJu+gKocdEf0VzEi12Gs="; subPackages = [ "cmd/torq" ]; @@ -24,6 +46,10 @@ buildGoModule rec { "-X github.com/lncapital/torq/build.version=v${version}" ]; + postInstall = '' + ln -s ${web} $out/web + ''; + meta = with lib; { description = "Capital management tool for lightning network nodes"; license = licenses.mit; From ea4693ba9157746f64f3e8ef28b232998c2556b0 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 8 Feb 2023 15:24:51 +0000 Subject: [PATCH 184/198] git-machete: 3.14.3 -> 3.15.0 --- pkgs/applications/version-management/git-machete/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/version-management/git-machete/default.nix b/pkgs/applications/version-management/git-machete/default.nix index 24fc850b31b0..9667e7bd2fee 100644 --- a/pkgs/applications/version-management/git-machete/default.nix +++ b/pkgs/applications/version-management/git-machete/default.nix @@ -12,13 +12,13 @@ buildPythonApplication rec { pname = "git-machete"; - version = "3.14.3"; + version = "3.15.0"; src = fetchFromGitHub { owner = "virtuslab"; repo = pname; rev = "v${version}"; - hash = "sha256-VOny8r00JYUT4Z7LukvWTH9ZTn86vn2Dc1YhPmtdE5s="; + hash = "sha256-HSgCvHjSOrMPsdOPtgFUeK6b0ioVnwTtg2oHGg4BrZw="; }; nativeBuildInputs = [ installShellFiles ]; From 5494775bb3b134b1cd3ae7e92b7e8e50ba4efaf0 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 8 Feb 2023 15:30:23 +0000 Subject: [PATCH 185/198] python310Packages.pyisy: 3.1.11 -> 3.1.13 --- pkgs/development/python-modules/pyisy/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/pyisy/default.nix b/pkgs/development/python-modules/pyisy/default.nix index 472bf727edca..892c44b0b3b2 100644 --- a/pkgs/development/python-modules/pyisy/default.nix +++ b/pkgs/development/python-modules/pyisy/default.nix @@ -11,7 +11,7 @@ buildPythonPackage rec { pname = "pyisy"; - version = "3.1.11"; + version = "3.1.13"; format = "setuptools"; disabled = pythonOlder "3.7"; @@ -20,7 +20,7 @@ buildPythonPackage rec { owner = "automicus"; repo = "PyISY"; rev = "refs/tags/v${version}"; - hash = "sha256-RYC0mfskDcCU9O2pSKRL9ulPUaJQO9UKp7WANXZWJ60="; + hash = "sha256-FjreG+xjX8f68nUq/4HHEaYcUYjU/9sYvzmIN6kXezU="; }; SETUPTOOLS_SCM_PRETEND_VERSION = version; From b88f8c9713b7083ea06d6e4b5c45b5fa5f0b5dbe Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 8 Feb 2023 15:41:37 +0000 Subject: [PATCH 186/198] python310Packages.py-synologydsm-api: 2.1.2 -> 2.1.4 --- .../development/python-modules/py-synologydsm-api/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/py-synologydsm-api/default.nix b/pkgs/development/python-modules/py-synologydsm-api/default.nix index 2437aba73a13..0ae3cf8bd0d1 100644 --- a/pkgs/development/python-modules/py-synologydsm-api/default.nix +++ b/pkgs/development/python-modules/py-synologydsm-api/default.nix @@ -11,7 +11,7 @@ buildPythonPackage rec { pname = "py-synologydsm-api"; - version = "2.1.2"; + version = "2.1.4"; format = "pyproject"; disabled = pythonOlder "3.8"; @@ -20,7 +20,7 @@ buildPythonPackage rec { owner = "mib1185"; repo = "py-synologydsm-api"; rev = "refs/tags/v${version}"; - hash = "sha256-dugWA/Ruc/BhPBbo2bTXf225YndDl0t2vc+NeutaO58="; + hash = "sha256-37JzdhMny6YDTBO9NRzfrZJAVAOPnpcr95fOKxisbTg="; }; nativeBuildInputs = [ From 9a11fad34fa16831beae989e3255b0adb3ef2ec6 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Wed, 8 Feb 2023 18:25:37 +0100 Subject: [PATCH 187/198] python310Packages.inkbird-ble: 0.5.5 -> 0.5.6 Diff: https://github.com/Bluetooth-Devices/inkbird-ble/compare/v0.5.5...v0.5.6 --- pkgs/development/python-modules/inkbird-ble/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/inkbird-ble/default.nix b/pkgs/development/python-modules/inkbird-ble/default.nix index 2172a8841140..4c39d264ce75 100644 --- a/pkgs/development/python-modules/inkbird-ble/default.nix +++ b/pkgs/development/python-modules/inkbird-ble/default.nix @@ -12,7 +12,7 @@ buildPythonPackage rec { pname = "inkbird-ble"; - version = "0.5.5"; + version = "0.5.6"; format = "pyproject"; disabled = pythonOlder "3.9"; @@ -21,7 +21,7 @@ buildPythonPackage rec { owner = "Bluetooth-Devices"; repo = pname; rev = "v${version}"; - hash = "sha256-KUBOjeFM4h2Qt9eT0mQKPFYJJ8OWdbYy9+AiHsJWNyU="; + hash = "sha256-re5HjPtssFkpcltCr0HEJmJyHbXJdkr2wDgaAHfy2Tk="; }; nativeBuildInputs = [ From acf02f40d83d2bf5de4c60c13e55c2975cf68404 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Wed, 8 Feb 2023 18:26:07 +0100 Subject: [PATCH 188/198] python310Packages.jaraco-abode: 3.2.1 -> 3.3.0 Diff: https://github.com/jaraco/jaraco.abode/compare/refs/tags/v3.2.1...v3.3.0 --- pkgs/development/python-modules/jaraco-abode/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/jaraco-abode/default.nix b/pkgs/development/python-modules/jaraco-abode/default.nix index 15ac7c63a7f1..8ddb8f4b493c 100644 --- a/pkgs/development/python-modules/jaraco-abode/default.nix +++ b/pkgs/development/python-modules/jaraco-abode/default.nix @@ -25,7 +25,7 @@ buildPythonPackage rec { pname = "jaraco-abode"; - version = "3.2.1"; + version = "3.3.0"; disabled = pythonOlder "3.7"; @@ -35,7 +35,7 @@ buildPythonPackage rec { owner = "jaraco"; repo = "jaraco.abode"; rev = "refs/tags/v${version}"; - hash = "sha256-ZDdZba1oTOPaUm+r4fWC5E3ni/k8kXo6t5AWQTvfd5E="; + hash = "sha256-LnbWzIST+GMtdsHDKg67WWt9GmHUcSuGZ5Spei3nEio="; }; postPatch = '' From c1c48c028975dca7d88f70841760b3d26c12c896 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Wed, 8 Feb 2023 18:30:57 +0100 Subject: [PATCH 189/198] python310Packages.pyrainbird: 1.1.1 -> 2.0.0 https://github.com/allenporter/pyrainbird/releases/tag/2.0.0 --- .../python-modules/pyrainbird/default.nix | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/pyrainbird/default.nix b/pkgs/development/python-modules/pyrainbird/default.nix index 899e1cfd7b60..8d9c546213f8 100644 --- a/pkgs/development/python-modules/pyrainbird/default.nix +++ b/pkgs/development/python-modules/pyrainbird/default.nix @@ -1,11 +1,17 @@ { lib , buildPythonPackage , fetchFromGitHub +, freezegun +, ical , parameterized , pycryptodome , pydantic , pytest-aiohttp +, pytest-asyncio +, pytest-golden +, pytest-mock , pytestCheckHook +, python-dateutil , pythonOlder , pyyaml , requests @@ -15,7 +21,7 @@ buildPythonPackage rec { pname = "pyrainbird"; - version = "1.1.1"; + version = "2.0.0"; format = "setuptools"; disabled = pythonOlder "3.9"; @@ -24,7 +30,7 @@ buildPythonPackage rec { owner = "allenporter"; repo = pname; rev = "refs/tags/${version}"; - hash = "sha256-e+neyzH+sGTzGwdy/N7n6GUvctHlHQgwDkRQsnzL7Jw="; + hash = "sha256-fQHWamtGA1Cz/9Hbxbns5lDd08Q01nIvaMXp9PWrelM="; }; postPatch = '' @@ -36,15 +42,21 @@ buildPythonPackage rec { ''; propagatedBuildInputs = [ + ical pycryptodome pydantic + python-dateutil pyyaml requests ]; nativeCheckInputs = [ + freezegun parameterized pytest-aiohttp + pytest-asyncio + pytest-golden + pytest-mock pytestCheckHook requests-mock responses From dfd3e6e1e56043ede66463aceb2e9c3bffdcb537 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Wed, 8 Feb 2023 18:32:12 +0100 Subject: [PATCH 190/198] home-assistant: 2022.2.2 -> 2022.2.3 https://github.com/home-assistant/core/releases/tag/2023.2.3 --- pkgs/servers/home-assistant/component-packages.nix | 2 +- pkgs/servers/home-assistant/default.nix | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix index 51a694006528..8abe197bee7d 100644 --- a/pkgs/servers/home-assistant/component-packages.nix +++ b/pkgs/servers/home-assistant/component-packages.nix @@ -2,7 +2,7 @@ # Do not edit! { - version = "2023.2.2"; + version = "2023.2.3"; components = { "3_day_blinds" = ps: with ps; [ ]; diff --git a/pkgs/servers/home-assistant/default.nix b/pkgs/servers/home-assistant/default.nix index 07bb320e7112..94ab3ab5b509 100644 --- a/pkgs/servers/home-assistant/default.nix +++ b/pkgs/servers/home-assistant/default.nix @@ -271,7 +271,7 @@ let extraPackagesFile = writeText "home-assistant-packages" (lib.concatMapStringsSep "\n" (pkg: pkg.pname) extraBuildInputs); # Don't forget to run parse-requirements.py after updating - hassVersion = "2023.2.2"; + hassVersion = "2023.2.3"; in python.pkgs.buildPythonApplication rec { pname = "homeassistant"; @@ -289,7 +289,7 @@ in python.pkgs.buildPythonApplication rec { owner = "home-assistant"; repo = "core"; rev = "refs/tags/${version}"; - hash = "sha256-HEL8e/2zoWPjeJL9iaCRu8aIldE3uTw9Yu9Q06Nyvz4="; + hash = "sha256-cRdxlmlgkKTnrtqGQPbSpBLHf+vfI9T6sdETcGshN9M="; }; nativeBuildInputs = with python3.pkgs; [ From f4a93aa86fb3cccf91de7831b7a49707674d770f Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 8 Feb 2023 19:03:24 +0000 Subject: [PATCH 191/198] gfold: 4.2.0 -> 4.3.0 --- pkgs/applications/version-management/gfold/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/version-management/gfold/default.nix b/pkgs/applications/version-management/gfold/default.nix index dcce6f7f3c00..92e8d9095b72 100644 --- a/pkgs/applications/version-management/gfold/default.nix +++ b/pkgs/applications/version-management/gfold/default.nix @@ -12,7 +12,7 @@ let pname = "gfold"; - version = "4.2.0"; + version = "4.3.0"; in rustPlatform.buildRustPackage { inherit pname version; @@ -21,10 +21,10 @@ rustPlatform.buildRustPackage { owner = "nickgerace"; repo = pname; rev = version; - sha256 = "sha256-cH4FhXrdT0ejpyt8G2rSGw9WE9sfOXRkSA9+FVwRmtQ="; + sha256 = "sha256-yvMp5x1uiJGkWHnwfONx4pVotSSE6sTW4uqWpI2AFXg="; }; - cargoSha256 = "sha256-NmVmqBzRUdumWQ9MzolZTo0VQW9JTjIyYRwUTzGiQZ4="; + cargoHash = "sha256-MBWaNjs840twU9SQLvgVcXTT0RN2QJ7PiaAohiiQu3s="; buildInputs = lib.optionals stdenv.isDarwin [ libiconv Security ]; From 17970a6ad96b117589e9514fd9b6fea0152988d6 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 8 Feb 2023 19:12:42 +0000 Subject: [PATCH 192/198] oxker: 0.2.1 -> 0.2.3 --- pkgs/applications/misc/oxker/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/misc/oxker/default.nix b/pkgs/applications/misc/oxker/default.nix index 56490754e172..ba8324a02fb3 100644 --- a/pkgs/applications/misc/oxker/default.nix +++ b/pkgs/applications/misc/oxker/default.nix @@ -2,14 +2,14 @@ rustPlatform.buildRustPackage rec { pname = "oxker"; - version = "0.2.1"; + version = "0.2.3"; src = fetchCrate { inherit pname version; - sha256 = "sha256-CsfzQN7n/LsNIivJShDG02cHwPktkXl/0udBSPz0i2U="; + sha256 = "sha256-J+3wi1nqkxR3ZDfR+F3rvFjUz1DJ7/jhjmcvFdMzWYc="; }; - cargoHash = "sha256-FSuhG+ZSQzwj1YB3xs3A1uFWPhwK8FIfVfUY9V/J2Z8="; + cargoHash = "sha256-oQPCUm/X2vt6wN5AKhtgq8tzQQrp0H42bBK7Az+I9BE="; meta = with lib; { description = "A simple tui to view & control docker containers"; From ebc58683192cef317d556a7d24366ba3365adc4f Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 8 Feb 2023 19:16:39 +0000 Subject: [PATCH 193/198] moosefs: 3.0.116 -> 3.0.117 --- pkgs/tools/filesystems/moosefs/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/filesystems/moosefs/default.nix b/pkgs/tools/filesystems/moosefs/default.nix index 898ba9ed3c15..55b796ec3254 100644 --- a/pkgs/tools/filesystems/moosefs/default.nix +++ b/pkgs/tools/filesystems/moosefs/default.nix @@ -9,13 +9,13 @@ stdenv.mkDerivation rec { pname = "moosefs"; - version = "3.0.116"; + version = "3.0.117"; src = fetchFromGitHub { owner = pname; repo = pname; rev = "v${version}"; - sha256 = "sha256-/+l4BURvL1R6te6tlXRJx7YBDyYuMrGnzzhMc9XeXKc="; + sha256 = "sha256-6zBMAi9ruPPlcnpdgqwl35QZ5u4MyFPUa70yvGTkHpo="; }; nativeBuildInputs = [ From fc36e212fbe0e58020ef3300fb0cd89d1514ddf8 Mon Sep 17 00:00:00 2001 From: Mauricio Collares Date: Wed, 8 Feb 2023 21:18:25 +0100 Subject: [PATCH 194/198] bliss: build on aarch64-linux --- pkgs/applications/science/math/bliss/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/applications/science/math/bliss/default.nix b/pkgs/applications/science/math/bliss/default.nix index fe68d9d245c5..4fccc3a46403 100644 --- a/pkgs/applications/science/math/bliss/default.nix +++ b/pkgs/applications/science/math/bliss/default.nix @@ -32,6 +32,6 @@ stdenv.mkDerivation rec { description = "An open source tool for computing automorphism groups and canonical forms of graphs. It has both a command line user interface as well as C++ and C programming language APIs"; homepage = "http://www.tcs.hut.fi/Software/bliss/"; license = licenses.lgpl3; - platforms = [ "i686-linux" "x86_64-linux" ]; + platforms = [ "i686-linux" "x86_64-linux" "aarch64-linux" ]; }; } From ea41744b5ca62b7f1e9dfc38e9b69735fc3b5416 Mon Sep 17 00:00:00 2001 From: 3JlOy_PYCCKUI <3jl0y_pycckui@riseup.net> Date: Wed, 4 Jan 2023 20:14:32 +0300 Subject: [PATCH 195/198] ttdl: init at 3.6.3 --- pkgs/applications/misc/ttdl/default.nix | 26 +++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 28 insertions(+) create mode 100644 pkgs/applications/misc/ttdl/default.nix diff --git a/pkgs/applications/misc/ttdl/default.nix b/pkgs/applications/misc/ttdl/default.nix new file mode 100644 index 000000000000..9f098efef8a0 --- /dev/null +++ b/pkgs/applications/misc/ttdl/default.nix @@ -0,0 +1,26 @@ +{ lib +, rustPlatform +, fetchFromGitHub +}: + +rustPlatform.buildRustPackage rec { + pname = "ttdl"; + version = "3.6.3"; + + src = fetchFromGitHub { + owner = "VladimirMarkelov"; + repo = "ttdl"; + rev = "v${version}"; + sha256 = "sha256-IR0cDXQHnMDI71Vg50atS98YorqAQKc95EF1+m9cxFY="; + }; + + cargoSha256 = "sha256-658mN3R3opjvqfnIDcbh11ZSOTDbpYnhCgGGx46Mrrc="; + + meta = with lib; { + description = "A CLI tool to manage todo lists in todo.txt format"; + homepage = "https://github.com/VladimirMarkelov/ttdl"; + changelog = "https://github.com/VladimirMarkelov/ttdl/blob/v${version}/changelog"; + license = with licenses; [ mit ]; + maintainers = with maintainers; [ _3JlOy-PYCCKUi ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index c8d00d31611a..e730a6b97d4d 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -12450,6 +12450,8 @@ with pkgs; tthsum = callPackage ../applications/misc/tthsum { }; + ttdl = callPackage ../applications/misc/ttdl { }; + ttp = with python3.pkgs; toPythonApplication ttp; trace-cmd = callPackage ../os-specific/linux/trace-cmd { }; From bc58d7444f846e4452487cc7dd361e79617a0bab Mon Sep 17 00:00:00 2001 From: Michael Weiss Date: Wed, 8 Feb 2023 23:19:48 +0100 Subject: [PATCH 196/198] chromiumDev: 111.0.5563.8 -> 111.0.5563.19 --- .../networking/browsers/chromium/upstream-info.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/networking/browsers/chromium/upstream-info.json b/pkgs/applications/networking/browsers/chromium/upstream-info.json index bd72ef447e3f..1eeec11742a6 100644 --- a/pkgs/applications/networking/browsers/chromium/upstream-info.json +++ b/pkgs/applications/networking/browsers/chromium/upstream-info.json @@ -32,9 +32,9 @@ } }, "dev": { - "version": "111.0.5563.8", - "sha256": "0gflrk5i6dr5vrywhxab73044gryxj49px59blgl6nyphw7swpwy", - "sha256bin64": "1dgfjz9pnziy1zymk7g15i5zdb002g77q8kqhkwgi4m0fndknpmj", + "version": "111.0.5563.19", + "sha256": "0hrapzi45jpkb1b87nzlb896jd2h2jbz1mq91md5r2y6ag6fc55w", + "sha256bin64": "02aaqny23dcdp611n6jr7swkjnx1wd0lb8dgxq53b806f0s374cp", "deps": { "gn": { "version": "2022-12-12", From 5a2b689d2549748e6b4c4e863788d8b5d4ffe7f2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 19 Dec 2022 09:59:48 -0800 Subject: [PATCH 197/198] python310Packages.docformatter: 1.5.0 -> 1.5.1 https://github.com/PyCQA/docformatter/blob/v1.5.1/CHANGELOG.md --- .../python-modules/docformatter/default.nix | 27 +++++++++++++++-- .../docformatter/test-path.patch | 29 +++++++++++++++++++ 2 files changed, 53 insertions(+), 3 deletions(-) create mode 100644 pkgs/development/python-modules/docformatter/test-path.patch diff --git a/pkgs/development/python-modules/docformatter/default.nix b/pkgs/development/python-modules/docformatter/default.nix index f7be25f61509..0eb7506a2ce1 100644 --- a/pkgs/development/python-modules/docformatter/default.nix +++ b/pkgs/development/python-modules/docformatter/default.nix @@ -2,6 +2,9 @@ , buildPythonPackage , pythonOlder , fetchFromGitHub +, poetry-core +, charset-normalizer +, tomli , untokenize , mock , pytestCheckHook @@ -9,20 +12,37 @@ buildPythonPackage rec { pname = "docformatter"; - version = "1.5.0"; + version = "1.5.1"; disabled = pythonOlder "3.6"; - format = "setuptools"; + format = "pyproject"; src = fetchFromGitHub { owner = "PyCQA"; repo = pname; rev = "refs/tags/v${version}"; - hash = "sha256-GSfsM6sPSLOIH0YJYFVTB3SigI62/ps51mA2iZ7GOEg="; + hash = "sha256-r+8FOl9Rrfi3V8f8wD41bRsaqDb+UrOBWuR3goK43xY="; }; + patches = [ + ./test-path.patch + ]; + + postPatch = '' + substituteInPlace pyproject.toml \ + --replace 'charset_normalizer = "^2.0.0"' 'charset_normalizer = ">=2.0.0"' + substituteInPlace tests/conftest.py \ + --subst-var-by docformatter $out/bin/docformatter + ''; + + nativeBuildInputs = [ + poetry-core + ]; + propagatedBuildInputs = [ + charset-normalizer + tomli untokenize ]; @@ -34,6 +54,7 @@ buildPythonPackage rec { pythonImportsCheck = [ "docformatter" ]; meta = { + changelog = "https://github.com/PyCQA/docformatter/blob/${src.rev}/CHANGELOG.md"; description = "Formats docstrings to follow PEP 257"; homepage = "https://github.com/myint/docformatter"; license = lib.licenses.mit; diff --git a/pkgs/development/python-modules/docformatter/test-path.patch b/pkgs/development/python-modules/docformatter/test-path.patch new file mode 100644 index 000000000000..bd61c0ca829b --- /dev/null +++ b/pkgs/development/python-modules/docformatter/test-path.patch @@ -0,0 +1,29 @@ +diff --git a/tests/conftest.py b/tests/conftest.py +index 5f5a9aa..3289222 100644 +--- a/tests/conftest.py ++++ b/tests/conftest.py +@@ -92,21 +92,9 @@ def run_docformatter(arguments, temporary_file): + + Return subprocess object. + """ +- if "DOCFORMATTER_COVERAGE" in os.environ and int( +- os.environ["DOCFORMATTER_COVERAGE"] +- ): +- DOCFORMATTER_COMMAND = [ +- "coverage", +- "run", +- "--branch", +- "--parallel", +- "--omit=*/site-packages/*", +- os.environ["VIRTUAL_ENV"] + "/bin/docformatter", +- ] +- else: +- DOCFORMATTER_COMMAND = [ +- os.environ["VIRTUAL_ENV"] + "/bin/docformatter", +- ] # pragma: no cover ++ DOCFORMATTER_COMMAND = [ ++ "@docformatter@" ++ ] + + if "-" not in arguments: + arguments.append(temporary_file) From dcf4487fc79fcdc1b3adba6e9b3d70eeec27f527 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sat, 4 Feb 2023 15:48:44 -0800 Subject: [PATCH 198/198] python310Packages.xsdata: use docformatter 1.5.1 --- pkgs/development/python-modules/xsdata/default.nix | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/pkgs/development/python-modules/xsdata/default.nix b/pkgs/development/python-modules/xsdata/default.nix index 6ad48ac12364..d3d06d407493 100644 --- a/pkgs/development/python-modules/xsdata/default.nix +++ b/pkgs/development/python-modules/xsdata/default.nix @@ -2,6 +2,7 @@ , buildPythonPackage , pythonOlder , fetchPypi +, fetchpatch , click , click-default-group , docformatter @@ -25,6 +26,16 @@ buildPythonPackage rec { hash = "sha256-o9Xxt7b/+MkW94Jcg26ihaTn0/OpTcu+0OY7oV3JRGY="; }; + patches = [ + # https://github.com/tefra/xsdata/pull/741 + (fetchpatch { + name = "use-docformatter-1.5.1.patch"; + url = "https://github.com/tefra/xsdata/commit/040692db47e6e51028fd959c793e757858c392d7.patch"; + excludes = [ "setup.cfg" ]; + hash = "sha256-ncecMJLJUiUb4lB8ys+nyiGU/UmayK++o89h3sAwREQ="; + }) + ]; + postPatch = '' substituteInPlace setup.cfg \ --replace "--benchmark-skip" ""