From 8a2cec7d167c6cee27dfefef37fd453cca5835ef Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 1 Jan 2022 22:13:55 +0000 Subject: [PATCH 01/28] praat: 6.2.03 -> 6.2.04 --- pkgs/applications/audio/praat/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/audio/praat/default.nix b/pkgs/applications/audio/praat/default.nix index 3fd0619ec29c..89d5370fd003 100644 --- a/pkgs/applications/audio/praat/default.nix +++ b/pkgs/applications/audio/praat/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "praat"; - version = "6.2.03"; + version = "6.2.04"; src = fetchFromGitHub { owner = "praat"; repo = "praat"; rev = "v${version}"; - sha256 = "sha256-0WTbLEPEqPm7BI02mjlwcsewkrmIsHtNlhccqK1d6SI="; + sha256 = "sha256-xzEgj4pjW+y46CXtVq4myHKX6DImCibsUz8m0G6F+YQ="; }; configurePhase = '' From 695e255d030eb7efbdebc8f606659dcaf12a4f95 Mon Sep 17 00:00:00 2001 From: Dominik Schrempf Date: Mon, 17 Jan 2022 07:41:37 +0100 Subject: [PATCH 02/28] kodi.packages.arteplussept: fix dependencies See https://github.com/NixOS/nixpkgs/pull/154523#issuecomment-1014108470 --- pkgs/applications/video/kodi/addons/arteplussept/default.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/applications/video/kodi/addons/arteplussept/default.nix b/pkgs/applications/video/kodi/addons/arteplussept/default.nix index 51fda8098fd0..bec74dd46a97 100644 --- a/pkgs/applications/video/kodi/addons/arteplussept/default.nix +++ b/pkgs/applications/video/kodi/addons/arteplussept/default.nix @@ -1,4 +1,4 @@ -{ lib, buildKodiAddon, fetchzip, addonUpdateScript, requests, xbmcswift2 }: +{ lib, buildKodiAddon, fetchzip, addonUpdateScript, dateutil, requests, xbmcswift2 }: buildKodiAddon rec { pname = "arteplussept"; @@ -11,6 +11,7 @@ buildKodiAddon rec { }; propagatedBuildInputs = [ + dateutil requests xbmcswift2 ]; From e44f6ebdbd8d1379a5a17cfdfa197c4b57b56f1f Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 19 Jan 2022 23:40:35 +0000 Subject: [PATCH 03/28] python310Packages.imbalanced-learn: 0.8.1 -> 0.9.0 --- pkgs/development/python-modules/imbalanced-learn/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/imbalanced-learn/default.nix b/pkgs/development/python-modules/imbalanced-learn/default.nix index bb29504d63e6..b1e5e9197522 100644 --- a/pkgs/development/python-modules/imbalanced-learn/default.nix +++ b/pkgs/development/python-modules/imbalanced-learn/default.nix @@ -9,12 +9,12 @@ buildPythonPackage rec { pname = "imbalanced-learn"; - version = "0.8.1"; + version = "0.9.0"; disabled = isPy27; # scikit-learn>=0.21 doesn't work on python2 src = fetchPypi { inherit pname version; - sha256 = "eaf576b1ba3523a0facf3aaa483ca17e326301e53e7678c54d73b7e0250edd43"; + sha256 = "836a4c137cc3c10310d4f6cd5ec34600ff488d7f8c243a997c3f9b551c91d0b2"; }; propagatedBuildInputs = [ scikit-learn ]; From 1210dffb9537f8d159b1ccf1a420ec1890f59cb4 Mon Sep 17 00:00:00 2001 From: Robert Scott Date: Thu, 20 Jan 2022 01:02:24 +0000 Subject: [PATCH 04/28] wolfssl: enable tests --- pkgs/development/libraries/wolfssl/default.nix | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/pkgs/development/libraries/wolfssl/default.nix b/pkgs/development/libraries/wolfssl/default.nix index d2735f34b7f0..4cfd2548b538 100644 --- a/pkgs/development/libraries/wolfssl/default.nix +++ b/pkgs/development/libraries/wolfssl/default.nix @@ -2,6 +2,7 @@ , stdenv , fetchFromGitHub , autoreconfHook +, openssl }: stdenv.mkDerivation rec { @@ -15,6 +16,12 @@ stdenv.mkDerivation rec { sha256 = "sha256-/noS5cn8lllWoGyZ9QyjRmdiR6LXzfT4lYGEt+0+Bdw="; }; + postPatch = '' + patchShebangs ./scripts + # ocsp tests require network access + sed -i -e '/ocsp\.test/d' -e '/ocsp-stapling\.test/d' scripts/include.am + ''; + # Almost same as Debian but for now using --enable-all --enable-reproducible-build instead of --enable-distro to ensure options.h gets installed configureFlags = [ "--enable-all" @@ -36,6 +43,9 @@ stdenv.mkDerivation rec { autoreconfHook ]; + doCheck = true; + checkInputs = [ openssl ]; + postInstall = '' # fix recursive cycle: # wolfssl-config points to dev, dev propagates bin From 58da28ff043cfd5895a28b1eb28c34aa4521107d Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 20 Jan 2022 22:31:09 +0000 Subject: [PATCH 05/28] r2mod_cli: 1.2.0 -> 1.2.1 --- pkgs/games/r2mod_cli/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/games/r2mod_cli/default.nix b/pkgs/games/r2mod_cli/default.nix index 169385576ac5..607a53579c7e 100644 --- a/pkgs/games/r2mod_cli/default.nix +++ b/pkgs/games/r2mod_cli/default.nix @@ -8,13 +8,13 @@ stdenv.mkDerivation rec { pname = "r2mod_cli"; - version = "1.2.0"; + version = "1.2.1"; src = fetchFromGitHub { owner = "Foldex"; repo = "r2mod_cli"; rev = "v${version}"; - sha256 = "sha256-VNqdVDBR6+eNOeUthPXLfz+0VoaNfSj4f04HLvjg6/0="; + sha256 = "sha256-FS9P/uTZU4d6zpM3TlEW6i6PLGHxqqO2fc8D7VsPCig="; }; buildInputs = [ bashInteractive ]; From df6976b6cf12b263b986addd5b1600950cffeb52 Mon Sep 17 00:00:00 2001 From: LeixB Date: Sun, 26 Dec 2021 22:38:02 +0100 Subject: [PATCH 06/28] maintainers: add leixb --- maintainers/maintainer-list.nix | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index fde181933965..1b80ce3146f0 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -6794,6 +6794,17 @@ fingerprint = "CC50 F82C 985D 2679 0703 AF15 19B0 82B3 DEFE 5451"; }]; }; + leixb = { + email = "abone9999+nixpkgs@gmail.com"; + matrix = "@leix_b:matrix.org"; + github = "LeixB"; + githubId = 17183803; + name = "Aleix Boné"; + keys = [{ + longkeyid = "rsa4096/0xFC035BB2BB28E15D"; + fingerprint = "63D3 F436 EDE8 7E1F 1292 24AF FC03 5BB2 BB28 E15D"; + }]; + }; lejonet = { email = "daniel@kuehn.se"; github = "lejonet"; From cfe5cf106c499ba2a9154a086fc217ce5902a4db Mon Sep 17 00:00:00 2001 From: LeixB Date: Sun, 26 Dec 2021 22:38:49 +0100 Subject: [PATCH 07/28] headsetcontrol: init at 2.6 --- pkgs/tools/audio/headsetcontrol/default.nix | 44 +++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 46 insertions(+) create mode 100644 pkgs/tools/audio/headsetcontrol/default.nix diff --git a/pkgs/tools/audio/headsetcontrol/default.nix b/pkgs/tools/audio/headsetcontrol/default.nix new file mode 100644 index 000000000000..3a66791932d5 --- /dev/null +++ b/pkgs/tools/audio/headsetcontrol/default.nix @@ -0,0 +1,44 @@ +{ stdenv +, lib +, fetchFromGitHub +, cmake +, hidapi +}: + +stdenv.mkDerivation rec { + pname = "headsetcontrol"; + version = "2.6"; + + src = fetchFromGitHub { + owner = "Sapd"; + repo = "HeadsetControl"; + rev = version; + sha256 = "0a7zimzi71416pmn6z0l1dn1c2x8p702hkd0k6da9rsznff85a88"; + }; + + nativeBuildInputs = [ + cmake + ]; + + buildInputs = [ + hidapi + ]; + + /* + Test depends on having the apropiate headsets connected. + */ + doCheck = false; + + meta = with lib; { + description = "Sidetone and Battery status for Logitech G930, G533, G633, G933 SteelSeries Arctis 7/PRO 2019 and Corsair VOID (Pro)"; + longDescription = '' + A tool to control certain aspects of USB-connected headsets on Linux. Currently, + support is provided for adjusting sidetone, getting battery state, controlling + LEDs, and setting the inactive time. + ''; + homepage = "https://github.com/Sapd/HeadsetControl"; + license = licenses.gpl3Plus; + maintainers = with maintainers; [ leixb ]; + platforms = platforms.all; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a83f529f1f57..70796c712af2 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1013,6 +1013,8 @@ with pkgs; fwbuilder = libsForQt5.callPackage ../tools/security/fwbuilder { }; + headsetcontrol = callPackage ../tools/audio/headsetcontrol { }; + ksnip = libsForQt5.callPackage ../tools/misc/ksnip { }; linux-router = callPackage ../tools/networking/linux-router { }; From 36b052a6d5c3a0bff187105599de70c26702c83d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Fri, 21 Jan 2022 17:44:13 +0100 Subject: [PATCH 08/28] yt-dlp: 2021.12.27 -> 2022.1.21 --- pkgs/tools/misc/yt-dlp/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/misc/yt-dlp/default.nix b/pkgs/tools/misc/yt-dlp/default.nix index b8e838b4d228..3534769b86f9 100644 --- a/pkgs/tools/misc/yt-dlp/default.nix +++ b/pkgs/tools/misc/yt-dlp/default.nix @@ -20,12 +20,12 @@ buildPythonPackage rec { # The websites yt-dlp deals with are a very moving target. That means that # downloads break constantly. Because of that, updates should always be backported # to the latest stable release. - version = "2021.12.27"; + version = "2022.1.21"; src = fetchPypi { inherit pname; version = builtins.replaceStrings [ ".0" ] [ "." ] version; - sha256 = "sha256-IkTfN1l1FIfnlrI7ZyFr7pjnCDKjpDwlJrCw4Lv7y1s="; + sha256 = "sha256-Ig7EBzibXqcuJd/BHDDlQ0ibkAdcVTEdUlXiBF24qeI="; }; propagatedBuildInputs = [ websockets mutagen ] From 8283f2b1ae627f389199506e64cc2291748aed4a Mon Sep 17 00:00:00 2001 From: revol-xut Date: Fri, 21 Jan 2022 20:51:37 +0100 Subject: [PATCH 09/28] lingua-franca: add to top-level packages --- pkgs/top-level/all-packages.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 73af7d12723d..6e2198177fdd 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -12477,6 +12477,8 @@ with pkgs; graalvm11-ee; openshot-qt = libsForQt5.callPackage ../applications/video/openshot-qt { }; + + lingua-franca = callPackage ../development/compilers/lingua-franca { }; openspin = callPackage ../development/compilers/openspin { }; From c1d1cdfe13df3f0923d7b751981570808b07601f Mon Sep 17 00:00:00 2001 From: Philipp Woelfel Date: Thu, 20 Jan 2022 13:08:23 -0700 Subject: [PATCH 10/28] pdfstudio: refactor / use jdk11 --- pkgs/applications/misc/pdfstudio/default.nix | 112 +++++++++---------- 1 file changed, 54 insertions(+), 58 deletions(-) diff --git a/pkgs/applications/misc/pdfstudio/default.nix b/pkgs/applications/misc/pdfstudio/default.nix index 16ded8e2e8aa..6b93cfb19c52 100644 --- a/pkgs/applications/misc/pdfstudio/default.nix +++ b/pkgs/applications/misc/pdfstudio/default.nix @@ -1,82 +1,77 @@ -{ stdenv, - lib, - makeWrapper, - fetchurl, - dpkg, - makeDesktopItem, - copyDesktopItems, - autoPatchelfHook, - gst_all_1, - sane-backends, - xorg, - gnome2, - alsa-lib, - libgccjit, - jdk11 - }: +{ stdenv +, lib +, fetchurl +, libgccjit +, dpkg +, makeDesktopItem +, copyDesktopItems +, autoPatchelfHook +, sane-backends +, jdk11 +}: -let - year = "2021"; - major = "1"; - minor = "2"; -in stdenv.mkDerivation rec { +# See also package 'pdfstudioviewer' +# Differences are ${pname}, Download directory name (PDFStudio / PDFStudioViewer), +# sha256, and libgccjit (not needed for PDFStudioViewer) +let year = "2021"; +in +stdenv.mkDerivation rec { pname = "pdfstudio"; - version = "${year}.${major}.${minor}"; - autoPatchelfIgnoreMissingDeps = true; + version = "${year}.1.2"; + strictDeps = true; src = fetchurl { - url = "https://download.qoppa.com/${pname}/v${year}/PDFStudio_v${year}_${major}_${minor}_linux64.deb"; + url = "https://download.qoppa.com/${pname}/v${year}/PDFStudio_v${ + builtins.replaceStrings [ "." ] [ "_" ] version + }_linux64.deb"; sha256 = "1188ll2qz58rr2slavqxisbz4q3fdzidpasb1p33926z0ym3rk45"; }; - nativeBuildInputs = [ - gst_all_1.gst-libav - sane-backends - xorg.libXxf86vm - xorg.libXtst - gnome2.libgtkhtml - alsa-lib - libgccjit - autoPatchelfHook - makeWrapper - dpkg - copyDesktopItems - jdk11 # only for unpacking .jar.pack files + buildInputs = [ + libgccjit #for libstdc++.so.6 and libgomp.so.1 + sane-backends #for libsane.so.1 + jdk11 ]; - desktopItems = [(makeDesktopItem { - name = "${pname}${year}"; - desktopName = "PDF Studio"; - genericName = "View and edit PDF files"; - exec = "${pname} %f"; - icon = "${pname}${year}"; - comment = "Views and edits PDF files"; - mimeType = "application/pdf"; - categories = "Office"; - type = "Application"; - terminal = false; - })]; + nativeBuildInputs = [ + autoPatchelfHook + dpkg + copyDesktopItems + ]; + + desktopItems = [ + (makeDesktopItem { + name = "${pname}${year}"; + desktopName = "PDF Studio"; + genericName = "View and edit PDF files"; + exec = "${pname} %f"; + icon = "${pname}${year}"; + comment = "Views and edits PDF files"; + mimeType = "application/pdf"; + categories = "Office"; + type = "Application"; + terminal = false; + }) + ]; unpackPhase = "dpkg-deb -x $src ."; - dontConfigure = true; dontBuild = true; + postPatch = '' + substituteInPlace opt/${pname}${year}/${pname}${year} --replace "# INSTALL4J_JAVA_HOME_OVERRIDE=" "INSTALL4J_JAVA_HOME_OVERRIDE=${jdk11.out}" + substituteInPlace opt/${pname}${year}/updater --replace "# INSTALL4J_JAVA_HOME_OVERRIDE=" "INSTALL4J_JAVA_HOME_OVERRIDE=${jdk11.out}" + ''; + installPhase = '' runHook preInstall mkdir -p $out/bin mkdir -p $out/share - mkdir -p $out/share/applications mkdir -p $out/share/pixmaps cp -r opt/${pname}${year} $out/share/ + rm -rf $out/share/${pname}${year}/jre ln -s $out/share/${pname}${year}/.install4j/${pname}${year}.png $out/share/pixmaps/ - makeWrapper $out/share/${pname}${year}/${pname}${year} $out/bin/${pname} - - #Unpack jar files. Otherwise pdfstudio does this and fails due to read-only FS. - for pfile in $out/share/${pname}${year}/jre/lib/{,ext/}*.jar.pack; do - jar_file=`echo "$pfile" | awk '{ print substr($0,1,length($0)-5) }'` - unpack200 -r "$pfile" "$jar_file" - done + ln -s $out/share/${pname}${year}/${pname}${year} $out/bin/${pname} runHook postInstall ''; @@ -86,6 +81,7 @@ in stdenv.mkDerivation rec { description = "An easy to use, full-featured PDF editing software"; license = licenses.unfree; platforms = platforms.linux; + mainProgram = pname; maintainers = [ maintainers.pwoelfel ]; }; } From 29837fcf68ad18c4bbf757ae2a5cb09e33094948 Mon Sep 17 00:00:00 2001 From: revol-xut Date: Fri, 21 Jan 2022 21:00:48 +0100 Subject: [PATCH 11/28] lingua-franca: 0.1.0 -> 0.1.1 --- pkgs/development/compilers/lingua-franca/default.nix | 4 ++-- pkgs/top-level/all-packages.nix | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/compilers/lingua-franca/default.nix b/pkgs/development/compilers/lingua-franca/default.nix index b843fd5e850f..bb25853ee36d 100644 --- a/pkgs/development/compilers/lingua-franca/default.nix +++ b/pkgs/development/compilers/lingua-franca/default.nix @@ -7,8 +7,8 @@ stdenv.mkDerivation { src = fetchFromGitHub { owner = "revol-xut"; repo = "lingua-franca-nix-releases"; - rev = "11c6d5297cd63bf0b365a68c5ca31ec80083bd05"; - sha256 = "DgxunzC8Ep0WdwChDHWgG5QJbJZ8UgQRXtP1HZqL9Jg="; + rev = "d37bbfa530f0189c3e86ce0191134cdf42c6aec7"; + sha256 = "/qMBOjffvShCPcbh9rJ7aVgdgZQ1hilHakjLyEhSmgs="; }; buildInputs = [ jdk11_headless ]; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 6e2198177fdd..a887535896f0 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -12477,7 +12477,7 @@ with pkgs; graalvm11-ee; openshot-qt = libsForQt5.callPackage ../applications/video/openshot-qt { }; - + lingua-franca = callPackage ../development/compilers/lingua-franca { }; openspin = callPackage ../development/compilers/openspin { }; From 32368f32d1644257e961fd0c2b8271b045970e06 Mon Sep 17 00:00:00 2001 From: Julien Moutinho Date: Thu, 20 Jan 2022 23:17:32 +0100 Subject: [PATCH 12/28] nixos/redis: fix port option --- nixos/modules/services/databases/redis.nix | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/nixos/modules/services/databases/redis.nix b/nixos/modules/services/databases/redis.nix index c5513635392c..e0269a962fdd 100644 --- a/nixos/modules/services/databases/redis.nix +++ b/nixos/modules/services/databases/redis.nix @@ -87,8 +87,12 @@ in { port = mkOption { type = types.port; - default = 6379; - description = "The port for Redis to listen to."; + default = if name == "" then 6379 else 0; + defaultText = literalExpression ''if name == "" then 6379 else 0''; + description = '' + The TCP port to accept connections. + If port 0 is specified Redis will not listen on a TCP socket. + ''; }; openFirewall = mkOption { @@ -102,7 +106,7 @@ in { bind = mkOption { type = with types; nullOr str; default = if name == "" then "127.0.0.1" else null; - defaultText = "127.0.0.1 or null if name != \"\""; + defaultText = literalExpression ''if name == "" then "127.0.0.1" else null''; description = '' The IP interface to bind to. null means "all interfaces". @@ -253,7 +257,7 @@ in { }; config.settings = mkMerge [ { - port = if config.bind == null then 0 else config.port; + port = config.port; daemonize = false; supervised = "systemd"; loglevel = config.logLevel; From 93768bf840da0b43fc8cdafcf0cf0d4098b0a2e4 Mon Sep 17 00:00:00 2001 From: Mario Rodas Date: Sat, 22 Jan 2022 04:20:00 +0000 Subject: [PATCH 13/28] internetarchive: 2.2.0 -> 2.3.0 https://github.com/jjjake/internetarchive/releases/tag/v2.3.0 --- pkgs/development/python-modules/internetarchive/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/internetarchive/default.nix b/pkgs/development/python-modules/internetarchive/default.nix index b87892906072..d197ba9691bf 100644 --- a/pkgs/development/python-modules/internetarchive/default.nix +++ b/pkgs/development/python-modules/internetarchive/default.nix @@ -20,11 +20,11 @@ buildPythonPackage rec { pname = "internetarchive"; - version = "2.2.0"; + version = "2.3.0"; src = fetchPypi { inherit pname version; - sha256 = "ebd11ecd038c71e75a3aef8d87750b46480169ecaefb23074c4ae48440bf2836"; + sha256 = "fa89dc4be3e0a0aee24810a4a754e24adfd07edf710c645b4f642422c6078b8d"; }; propagatedBuildInputs = [ From ed49a25322877f16885c4bbed5333563b4dce1db Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 22 Jan 2022 05:16:08 +0000 Subject: [PATCH 14/28] tuptime: 5.0.2 -> 5.1.0 --- pkgs/tools/system/tuptime/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/system/tuptime/default.nix b/pkgs/tools/system/tuptime/default.nix index 0d3b6f4d6b82..14788ed46e5b 100644 --- a/pkgs/tools/system/tuptime/default.nix +++ b/pkgs/tools/system/tuptime/default.nix @@ -4,13 +4,13 @@ stdenv.mkDerivation rec { pname = "tuptime"; - version = "5.0.2"; + version = "5.1.0"; src = fetchFromGitHub { owner = "rfrail3"; repo = "tuptime"; rev = version; - sha256 = "sha256-2Q1czKvwdVq+2+64k4SOghw05CUlT5HdZpvKMRbGdDY="; + sha256 = "sha256-6N4dqgLOhWqVR8GqlBUxHWy10AHBZ4aZbdkw5SOxxBQ="; }; nativeBuildInputs = [ makeWrapper installShellFiles ]; From a3d9b17b5d17f4f59d1a4ce530127e80093d504e Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 22 Jan 2022 05:40:05 +0000 Subject: [PATCH 15/28] umockdev: 0.17.5 -> 0.17.6 --- pkgs/development/libraries/umockdev/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/umockdev/default.nix b/pkgs/development/libraries/umockdev/default.nix index f85834e85202..b00177960d3b 100644 --- a/pkgs/development/libraries/umockdev/default.nix +++ b/pkgs/development/libraries/umockdev/default.nix @@ -19,13 +19,13 @@ stdenv.mkDerivation rec { pname = "umockdev"; - version = "0.17.5"; + version = "0.17.6"; outputs = [ "bin" "out" "dev" "devdoc" ]; src = fetchurl { url = "https://github.com/martinpitt/umockdev/releases/download/${version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-9mNKYFiQtzkBTQEuVWIfR9+e2jAqDszlHGMEQpcRe8U="; + sha256 = "sha256-X60zN3orHU8lOfRVCfbHTdrleKxB7ILCIGvXSZLdoSk="; }; nativeBuildInputs = [ From 6e7fc6fb5071ebd6310c71ee18079ac45bdb2236 Mon Sep 17 00:00:00 2001 From: Evils Date: Sat, 22 Jan 2022 07:29:19 +0100 Subject: [PATCH 16/28] tuptime: pass through nixosTests.tuptime --- pkgs/tools/system/tuptime/default.nix | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pkgs/tools/system/tuptime/default.nix b/pkgs/tools/system/tuptime/default.nix index 0d3b6f4d6b82..61a74d46144f 100644 --- a/pkgs/tools/system/tuptime/default.nix +++ b/pkgs/tools/system/tuptime/default.nix @@ -1,6 +1,8 @@ { lib, stdenv, fetchFromGitHub , makeWrapper, installShellFiles -, python3, sqlite }: +, python3, sqlite +, nixosTests +}: stdenv.mkDerivation rec { pname = "tuptime"; @@ -34,6 +36,8 @@ stdenv.mkDerivation rec { --prefix PATH : "${lib.makeBinPath [ sqlite ]}" ''; + passthru.tests = nixosTests.tuptime; + meta = with lib; { description = "Total uptime & downtime statistics utility"; homepage = "https://github.com/rfrail3/tuptime"; From 361935877a1f63396403c0cac7d837db0938d5c0 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 22 Jan 2022 06:46:08 +0000 Subject: [PATCH 17/28] traefik: 2.5.6 -> 2.5.7 --- pkgs/servers/traefik/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/servers/traefik/default.nix b/pkgs/servers/traefik/default.nix index 962569d517e2..91a266427457 100644 --- a/pkgs/servers/traefik/default.nix +++ b/pkgs/servers/traefik/default.nix @@ -2,15 +2,15 @@ buildGoModule rec { pname = "traefik"; - version = "2.5.6"; + version = "2.5.7"; src = fetchzip { url = "https://github.com/traefik/traefik/releases/download/v${version}/traefik-v${version}.src.tar.gz"; - sha256 = "sha256-HHJTfAigUH7C0VuKUeGypqFlQwVdy05Ki/aTxDsl+tg="; + sha256 = "sha256-CQXrAKdfNqGKXw3Ds47uq6ALsDh6JRf+94axOvLzWbE="; stripRoot = false; }; - vendorSha256 = "sha256-DqjqJPyoFlCjIIaHYS5jrROQWDxZk+RGfccC2jYZ8LE="; + vendorSha256 = "sha256-aZemr1waV2hIujbI+1PrivXxa1RrT0Ams4xT4QxTQPY="; doCheck = false; From 6ac415468d30671e31fb3f1c8a95717018f32096 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 22 Jan 2022 07:21:00 +0000 Subject: [PATCH 18/28] sentry-cli: 1.71.0 -> 1.72.0 --- pkgs/development/tools/sentry-cli/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/tools/sentry-cli/default.nix b/pkgs/development/tools/sentry-cli/default.nix index c832f39b0832..a3e176216216 100644 --- a/pkgs/development/tools/sentry-cli/default.nix +++ b/pkgs/development/tools/sentry-cli/default.nix @@ -9,13 +9,13 @@ }: rustPlatform.buildRustPackage rec { pname = "sentry-cli"; - version = "1.71.0"; + version = "1.72.0"; src = fetchFromGitHub { owner = "getsentry"; repo = "sentry-cli"; rev = version; - sha256 = "0iw6skcxnqqa0vj5q1ra855gxgjj9a26hj85nm9p49ai5l85bkgv"; + sha256 = "sha256-2Aj2Y0c8JR8s6Ek7sZfU+5RENkoCVSAxtOvkHilfb48="; }; doCheck = false; @@ -25,7 +25,7 @@ rustPlatform.buildRustPackage rec { buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [ Security SystemConfiguration ]; nativeBuildInputs = [ pkg-config ]; - cargoSha256 = "0n9354mm97z3n001airipq8k58i7lg20p2m9yfx9y0zhsagyhmj8"; + cargoSha256 = "sha256-sSIQ7Wa0otbq82WELxP3oFYa1FoaoZz2jCB59Ob6zNM="; meta = with lib; { homepage = "https://docs.sentry.io/cli/"; From c9547469eb6600fb0db831a0e4f51b07192e5da5 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 22 Jan 2022 07:44:37 +0000 Subject: [PATCH 19/28] steampipe: 0.11.2 -> 0.12.0 --- pkgs/tools/misc/steampipe/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/misc/steampipe/default.nix b/pkgs/tools/misc/steampipe/default.nix index 8245f0561325..f018fdd35ee9 100644 --- a/pkgs/tools/misc/steampipe/default.nix +++ b/pkgs/tools/misc/steampipe/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "steampipe"; - version = "0.11.2"; + version = "0.12.0"; src = fetchFromGitHub { owner = "turbot"; repo = "steampipe"; rev = "v${version}"; - sha256 = "sha256-omg/MgCTKkj0p1vDvJs22/0Jhzim0CeISV0Kn9p5lh4="; + sha256 = "sha256-ApY3h6CqOJMWmIindp5TqWczSU50TBiS89lYzSzj8EM="; }; - vendorSha256 = "sha256-PYaq74NNEOJ1jZ6PoS6zcTiUN4JA9JDjO7GB9tqgT6c="; + vendorSha256 = "sha256-ikmcayOy87u6XMYjxxzFv35Rlp9oTteEKFOPr/+xc2Y="; # tests are failing for no obvious reasons doCheck = false; From 356869f27dcabb116c2f07eb8965cc0727eb8b6e Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 22 Jan 2022 09:10:21 +0000 Subject: [PATCH 20/28] tailscale: 1.20.1 -> 1.20.2 --- pkgs/servers/tailscale/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/servers/tailscale/default.nix b/pkgs/servers/tailscale/default.nix index 2149f7724361..ee768981f9bc 100644 --- a/pkgs/servers/tailscale/default.nix +++ b/pkgs/servers/tailscale/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "tailscale"; - version = "1.20.1"; + version = "1.20.2"; src = fetchFromGitHub { owner = "tailscale"; repo = "tailscale"; rev = "v${version}"; - sha256 = "sha256-n+94ipR1w63NS2tzMsJWY4oxeTBEWrp8e2gF+CTpvrI="; + sha256 = "sha256-uW/C4Bks7qGJEQhPoqd2LSk8MAD9gcDRsJbbowgsSuY="; }; nativeBuildInputs = lib.optionals stdenv.isLinux [ makeWrapper ]; From 1f7d88bba222e6cb297ae9da6b120db6cfba2c51 Mon Sep 17 00:00:00 2001 From: Michael Weiss Date: Sat, 8 Jan 2022 13:51:25 +0100 Subject: [PATCH 21/28] signal-desktop: 5.27.0 -> 5.27.1 Version 5.27.1 is the last version with working Ozone/Wayland support but we'll have to update to a more recent version soon. See [0] for more details. [0]: https://github.com/NixOS/nixpkgs/pull/154003 --- .../networking/instant-messengers/signal-desktop/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix b/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix index 384feaac635b..56c4d3a3e54f 100644 --- a/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix +++ b/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix @@ -24,7 +24,7 @@ let in stdenv.mkDerivation rec { pname = "signal-desktop"; - version = "5.27.0"; # Please backport all updates to the stable channel. + version = "5.27.1"; # Please backport all updates to the stable channel. # All releases have a limited lifetime and "expire" 90 days after the release. # When releases "expire" the application becomes unusable until an update is # applied. The expiration date for the current release can be extracted with: @@ -34,7 +34,7 @@ in stdenv.mkDerivation rec { src = fetchurl { url = "https://updates.signal.org/desktop/apt/pool/main/s/signal-desktop/signal-desktop_${version}_amd64.deb"; - sha256 = "1agxn4fcgln5lsccvw5b7g2psv6nv2y7qm5df201c9pbwjak74nm"; + sha256 = "0z0v7q0rpxdx7ic78jv7wp1hq8nrfp51jjdr6d85x0hsfdj0z1mc"; }; nativeBuildInputs = [ From 9970f3d56e3f25c2426036f3e186d08ab6c59350 Mon Sep 17 00:00:00 2001 From: Michael Weiss Date: Sat, 22 Jan 2022 12:06:09 +0100 Subject: [PATCH 22/28] chromiumDev: 99.0.4818.0 -> 99.0.4840.0 --- .../networking/browsers/chromium/upstream-info.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/pkgs/applications/networking/browsers/chromium/upstream-info.json b/pkgs/applications/networking/browsers/chromium/upstream-info.json index 1eaa5e01d1c6..37895b1b9f8d 100644 --- a/pkgs/applications/networking/browsers/chromium/upstream-info.json +++ b/pkgs/applications/networking/browsers/chromium/upstream-info.json @@ -32,15 +32,15 @@ } }, "dev": { - "version": "99.0.4818.0", - "sha256": "1k8xzmybrmwgcyg4n7x3gj486rpwic17m6i5ij9nmfzcxx7fbwlm", - "sha256bin64": "1jfqmv94ami3n6hzp9ycczqv3lh3wijsf555mg62rv4rdvw5adm6", + "version": "99.0.4840.0", + "sha256": "0l1azyd7an8nw2gjnn313gn6sljvw6lbd9g59s7d59lpn2bmbc7j", + "sha256bin64": "145qjhdmi39aaw0a3sarlgi67rjhik1xbm62rw7ba0wgnrbvvrjb", "deps": { "gn": { - "version": "2022-01-07", + "version": "2022-01-10", "url": "https://gn.googlesource.com/gn", - "rev": "f1b1412521b41e47118b29863224171e434a27a2", - "sha256": "1cxq991by7sa5k1hvb5xx98bfqgq7rdbw3cawhyyqq91a521wsb7" + "rev": "80a40b07305373617eba2d5878d353532af77da3", + "sha256": "1103lf38h7412949j6nrk48m2vv2rrxacn42sjg33lg88nyv7skv" } } }, From a3a799ca59ee223b8349f80b1bed39c61590f035 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Na=C3=AFm=20Favier?= Date: Sat, 22 Jan 2022 12:54:16 +0100 Subject: [PATCH 23/28] mpd: remove unknown build options --- pkgs/servers/mpd/default.nix | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/pkgs/servers/mpd/default.nix b/pkgs/servers/mpd/default.nix index 8f1a407bf56d..0833ede1bb46 100644 --- a/pkgs/servers/mpd/default.nix +++ b/pkgs/servers/mpd/default.nix @@ -71,7 +71,6 @@ let # Commercial services qobuz = [ curl libgcrypt yajl ]; soundcloud = [ curl yajl ]; - tidal = [ curl yajl ]; # Client support libmpdclient = [ libmpdclient ]; # Tag support @@ -196,7 +195,7 @@ in "lame" "libsamplerate" "shout" "libmpdclient" "id3tag" "expat" "pcre" "yajl" "sqlite" - "soundcloud" "qobuz" "tidal" + "soundcloud" "qobuz" ] ++ lib.optionals stdenv.isLinux [ "alsa" "systemd" "syslog" "io_uring" ] ++ lib.optionals (!stdenv.isDarwin) [ From 813f9da8ab69f106055dd4a8fead7bc0a21a251b Mon Sep 17 00:00:00 2001 From: Robert Hensing Date: Wed, 5 Jan 2022 13:54:34 +0100 Subject: [PATCH 24/28] pkgs.path: Avoid copying when used via flake --- flake.nix | 2 +- pkgs/top-level/all-packages.nix | 2 +- pkgs/top-level/config.nix | 14 ++++++++++++++ 3 files changed, 16 insertions(+), 2 deletions(-) diff --git a/flake.nix b/flake.nix index 29dffa9fa4e4..c2306768d6fe 100644 --- a/flake.nix +++ b/flake.nix @@ -62,7 +62,7 @@ }).nixos.manual.x86_64-linux; }; - legacyPackages = forAllSystems (system: import ./. { inherit system; }); + legacyPackages = forAllSystems (system: import ./. { inherit system; config.path = self.outPath; }); nixosModules = { notDetected = import ./nixos/modules/installer/scan/not-detected.nix; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 12c16ea3a5d0..3896088f7662 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -67,7 +67,7 @@ with pkgs; clangStdenvNoLibs = mkStdenvNoLibs clangStdenv; # For convenience, allow callers to get the path to Nixpkgs. - path = ../..; + path = config.path; ### Helper functions. diff --git a/pkgs/top-level/config.nix b/pkgs/top-level/config.nix index 7a5b4bdd1798..bb4f668d60f1 100644 --- a/pkgs/top-level/config.nix +++ b/pkgs/top-level/config.nix @@ -32,6 +32,20 @@ let feature = "run checkPhase by default"; }; + path = mkOption { + type = types.path; + default = ../..; + defaultText = lib.literalDocBook "a path expression"; + internal = true; + description = '' + A reference to Nixpkgs' own sources. + + This is overridable in order to avoid copying sources unnecessarily, + as a path expression that references a store path will not short-circuit + to the store path itself, but copy the store path instead. + ''; + }; + }; in { From 15a00be189be329f488986cd72d7315fa643b89a Mon Sep 17 00:00:00 2001 From: Robert Hensing Date: Wed, 5 Jan 2022 13:56:20 +0100 Subject: [PATCH 25/28] nixos/documentation: avoid copying nixpkgs subpaths, iteration 2 This kind of reverts commit 893ffee2866dbf9f2aa6e3128368e0cd5729e4b9. --- nixos/modules/misc/documentation.nix | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/nixos/modules/misc/documentation.nix b/nixos/modules/misc/documentation.nix index b7746ddc2115..361815b48d52 100644 --- a/nixos/modules/misc/documentation.nix +++ b/nixos/modules/misc/documentation.nix @@ -67,11 +67,19 @@ let (t == "directory" -> baseNameOf n != "tests") && (t == "file" -> hasSuffix ".nix" n) ); + # When working directly from a checkout, + # produce separate, smaller store paths + # When already in the store, + # avoid copying; reuse the whole nixpkgs sources + pull = dir: + if isStorePath pkgs.path + then "${pkgs.path}/${dir}" + else filter "${toString pkgs.path}/${dir}"; in pkgs.runCommand "lazy-options.json" { - libPath = filter "${toString pkgs.path}/lib"; - pkgsLibPath = filter "${toString pkgs.path}/pkgs/pkgs-lib"; - nixosPath = filter "${toString pkgs.path}/nixos"; + libPath = pull "lib"; + pkgsLibPath = pull "pkgs/pkgs-lib"; + nixosPath = pull "nixos"; modules = map (p: ''"${removePrefix "${modulesPath}/" (toString p)}"'') docModules.lazy; } '' export NIX_STORE_DIR=$TMPDIR/store From fecf32505984f4b8feae4c54663f322dcc8bd080 Mon Sep 17 00:00:00 2001 From: Robert Hensing Date: Wed, 5 Jan 2022 14:37:28 +0100 Subject: [PATCH 26/28] nixos/documentation.nix: Only use store non-flake pkgs.path directly when already copied --- nixos/modules/misc/documentation.nix | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/nixos/modules/misc/documentation.nix b/nixos/modules/misc/documentation.nix index 361815b48d52..59ded4b01888 100644 --- a/nixos/modules/misc/documentation.nix +++ b/nixos/modules/misc/documentation.nix @@ -71,8 +71,14 @@ let # produce separate, smaller store paths # When already in the store, # avoid copying; reuse the whole nixpkgs sources + # + # We can only avoid copying when pkgs.path is already a string. A path + # value can not be converted to a store path without rehashing it. + # builtins.storePath would be a solution but is currently off-limits + # because of https://github.com/NixOS/nix/issues/1888 + # and https://github.com/NixOS/nix/issues/5868 pull = dir: - if isStorePath pkgs.path + if builtins.typeOf pkgs.path == "string" && isStorePath pkgs.path then "${pkgs.path}/${dir}" else filter "${toString pkgs.path}/${dir}"; in From 0b222173dba00680074ef9e98a5bad224f62967e Mon Sep 17 00:00:00 2001 From: Robert Hensing Date: Wed, 5 Jan 2022 17:31:16 +0100 Subject: [PATCH 27/28] flake.nix: Set nixpkgs.config.path --- flake.nix | 4 ++++ nixos/modules/misc/nixpkgs.nix | 2 ++ 2 files changed, 6 insertions(+) diff --git a/flake.nix b/flake.nix index c2306768d6fe..39553cde0ab5 100644 --- a/flake.nix +++ b/flake.nix @@ -48,6 +48,10 @@ system.nixos.versionSuffix = ".${final.substring 0 8 (self.lastModifiedDate or self.lastModified or "19700101")}.${self.shortRev or "dirty"}"; system.nixos.revision = final.mkIf (self ? rev) self.rev; + + # NOTE: This assumes that `nixpkgs.config` is _not_ used when + # nixpkgs.pkgs is set OR _module.args.pkgs is set. + nixpkgs.config.path = self.outPath; } ]; }); diff --git a/nixos/modules/misc/nixpkgs.nix b/nixos/modules/misc/nixpkgs.nix index 69967c8a7601..14dd1d816dbe 100644 --- a/nixos/modules/misc/nixpkgs.nix +++ b/nixos/modules/misc/nixpkgs.nix @@ -59,6 +59,8 @@ let inherit (cfg) config overlays localSystem crossSystem; }; + # NOTE: flake.nix assumes that nixpkgs.config is only used with ../../.. + # as nixpkgs.config.path should be equivalent to ../../.. finalPkgs = if opt.pkgs.isDefined then cfg.pkgs.appendOverlays cfg.overlays else defaultPkgs; in From 5d29853c389b52d75104415060fbeb2cd170a8fa Mon Sep 17 00:00:00 2001 From: Robert Hensing Date: Sat, 22 Jan 2022 16:39:00 +0100 Subject: [PATCH 28/28] nixos/documentation.nix: Use builtins.storePath when appropriate --- nixos/modules/misc/documentation.nix | 82 +++++++++++++++++++++++----- 1 file changed, 68 insertions(+), 14 deletions(-) diff --git a/nixos/modules/misc/documentation.nix b/nixos/modules/misc/documentation.nix index 59ded4b01888..2afa43a3fe71 100644 --- a/nixos/modules/misc/documentation.nix +++ b/nixos/modules/misc/documentation.nix @@ -61,26 +61,80 @@ let in scrubbedEval.options; baseOptionsJSON = let - filter = + filterIntoStore = builtins.filterSource (n: t: (t == "directory" -> baseNameOf n != "tests") && (t == "file" -> hasSuffix ".nix" n) ); - # When working directly from a checkout, - # produce separate, smaller store paths - # When already in the store, - # avoid copying; reuse the whole nixpkgs sources + + # Figure out if Nix runs in pure evaluation mode. May return true in + # impure mode, but this is highly unlikely. + # We need to know because of https://github.com/NixOS/nix/issues/1888 + # and https://github.com/NixOS/nix/issues/5868 + isPureEval = builtins.getEnv "PATH" == "" && builtins.getEnv "_" == ""; + + # Return a nixpkgs subpath with minimal copying. # - # We can only avoid copying when pkgs.path is already a string. A path - # value can not be converted to a store path without rehashing it. - # builtins.storePath would be a solution but is currently off-limits - # because of https://github.com/NixOS/nix/issues/1888 - # and https://github.com/NixOS/nix/issues/5868 - pull = dir: - if builtins.typeOf pkgs.path == "string" && isStorePath pkgs.path - then "${pkgs.path}/${dir}" - else filter "${toString pkgs.path}/${dir}"; + # The sources for the base options json derivation can come in one of + # two forms: + # - single source: a store path with all of nixpkgs, postfix with + # subpaths to access various directories. This has the benefit of + # not creating copies of these subtrees in the Nix store, but + # can cause unnecessary rebuilds if you update the Nixpkgs `pkgs` + # tree often. + # - split sources: multiple store paths with subdirectories of + # nixpkgs that exclude the bulk of the pkgs directory. + # This requires more copying and hashing during evaluation but + # requires fewer files to be copied. This method produces fewer + # unnecessary rebuilds of the base options json. + # + # Flake + # + # Flakes always put a copy of the full nixpkgs sources in the store, + # so we can use the "single source" method. This method is ideal + # for using nixpkgs as a dependency, as the base options json will be + # substitutable from cache.nixos.org. + # + # This requires that the `self.outPath` is wired into `pkgs` correctly, + # which is done for you if `pkgs` comes from the `lib.nixosSystem` or + # `legacyPackages` flake attributes. + # + # Other Nixpkgs invocation + # + # If you do not use the known-correct flake attributes, but rather + # invoke Nixpkgs yourself, set `config.path` to the correct path value, + # e.g. `import nixpkgs { config.path = nixpkgs; }`. + # + # Choosing between single or split source paths + # + # We make assumptions based on the type and contents of `pkgs.path`. + # By passing a different `config.path` to Nixpkgs, you can influence + # how your documentation cache is evaluated and rebuilt. + # + # Single source + # - If pkgs.path is a string containing a store path, the code has no + # choice but to create this store path, if it hasn't already been. + # We assume that the "single source" method is most efficient. + # - If pkgs.path is a path value containing that is a store path, + # we try to convert it to a string with context without copying. + # This occurs for example when nixpkgs was fetched and using its + # default `config.path`, which is `./.`. + # Nix currently does not allow this conversion when evaluating in + # pure mode. If the conversion is not possible, we use the + # "split source" method. + # + # Split source + # - If pkgs.path is a path value that is not a store path, we assume + # that it's unlikely for all of nixpkgs to end up in the store for + # other reasons and try to keep both the copying and rebuilds low. + pull = + if builtins.typeOf pkgs.path == "string" && isStorePath pkgs.path then + dir: "${pkgs.path}/${dir}" + else if !isPureEval && isStorePath pkgs.path then + dir: "${builtins.storePath pkgs.path}/${dir}" + else + dir: filterIntoStore "${toString pkgs.path}/${dir}"; in pkgs.runCommand "lazy-options.json" { libPath = pull "lib";