From 7ca977ec3ba3f288b91f5ef473b7d4dfb1b34042 Mon Sep 17 00:00:00 2001 From: Jeffrey Lau Date: Fri, 28 Jan 2022 02:47:07 +0800 Subject: [PATCH 01/28] rnp: 0.15.2 -> 0.16.0 --- pkgs/tools/security/rnp/cmake_nogit.patch | 51 ----------------------- pkgs/tools/security/rnp/default.nix | 6 +-- 2 files changed, 2 insertions(+), 55 deletions(-) delete mode 100644 pkgs/tools/security/rnp/cmake_nogit.patch diff --git a/pkgs/tools/security/rnp/cmake_nogit.patch b/pkgs/tools/security/rnp/cmake_nogit.patch deleted file mode 100644 index 733b093de5ea..000000000000 --- a/pkgs/tools/security/rnp/cmake_nogit.patch +++ /dev/null @@ -1,51 +0,0 @@ -diff --git i/cmake/version.cmake w/cmake/version.cmake -index 0ed123b5..4348e7e1 100644 ---- i/cmake/version.cmake -+++ w/cmake/version.cmake -@@ -90,41 +90,12 @@ function(determine_version source_dir var_prefix) - else() - message(STATUS "Found no version.txt.") - endif() -- # for GIT_EXECUTABLE -- find_package(Git REQUIRED) -- # get a description of the version, something like: -- # v1.9.1-0-g38ffe82 (a tagged release) -- # v1.9.1-0-g38ffe82-dirty (a tagged release with local modifications) -- # v1.9.0-3-g5b92266 (post-release snapshot) -- # v1.9.0-3-g5b92266-dirty (post-release snapshot with local modifications) -- _git(version describe --abbrev=${GIT_REV_LEN} --match "v[0-9]*" --long --dirty) -- if (NOT _git_ec EQUAL 0) -- # no annotated tags, fake one -- message(STATUS "Found no annotated tags.") -- _git(revision rev-parse --short=${GIT_REV_LEN} --verify HEAD) -- if (_git_ec EQUAL 0) -- set(version "v${base_version}-0-g${revision}") -- # check if dirty (this won't detect untracked files, but should be ok) -- _git(changes diff-index --quiet HEAD --) -- if (NOT _git_ec EQUAL 0) -- string(APPEND version "-dirty") -- endif() -- # append the commit timestamp of the most recent commit (only -- # in non-release branches -- typically master) -- _git(commit_timestamp show -s --format=%ct) -- if (_git_ec EQUAL 0) -- string(APPEND version "+${commit_timestamp}") -- endif() -- elseif(has_version_txt) -- # Nothing to get from git - so use version.txt completely -- set(version "${version_file}") -- else() -- # Sad case - no git, no version.txt -- set(version "v${base_version}") -- endif() -+ if(has_version_txt) -+ # Nothing to get from git - so use version.txt completely -+ set(version "${version_file}") - else() -- set(has_release_tag YES) -- message(STATUS "Found annotated tag ${version}") -+ # Sad case - no git, no version.txt -+ set(version "v${base_version}") - endif() - extract_version_info("${version}" "${local_prefix}") - if ("${has_version_txt}" AND NOT ${base_version} STREQUAL ${local_prefix}_VERSION) diff --git a/pkgs/tools/security/rnp/default.nix b/pkgs/tools/security/rnp/default.nix index 38e6c80428fc..a18571c80404 100644 --- a/pkgs/tools/security/rnp/default.nix +++ b/pkgs/tools/security/rnp/default.nix @@ -15,17 +15,15 @@ stdenv.mkDerivation rec { pname = "rnp"; - version = "0.15.2"; + version = "0.16.0"; src = fetchFromGitHub { owner = "rnpgp"; repo = "rnp"; rev = "v${version}"; - sha256 = "1jph69nsz245fbv04nalh1qmhniyh88sacsf3nxv1vxm190314i9"; + sha256 = "u0etVslTBF9fBqnpVBofYsm0uC/eR6gO3lhwzqua5Qw="; }; - patches = [ ./cmake_nogit.patch ]; - buildInputs = [ zlib bzip2 json_c botan2 ]; cmakeFlags = [ From 42af4fe04512ce2313894842e8169816606ddf37 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 29 Jan 2022 07:52:59 +0000 Subject: [PATCH 02/28] super-productivity: 7.10.0 -> 7.10.1 --- pkgs/applications/office/super-productivity/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/office/super-productivity/default.nix b/pkgs/applications/office/super-productivity/default.nix index d9f77cb560f1..ccb4cea95ecb 100644 --- a/pkgs/applications/office/super-productivity/default.nix +++ b/pkgs/applications/office/super-productivity/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "super-productivity"; - version = "7.10.0"; + version = "7.10.1"; src = fetchurl { url = "https://github.com/johannesjo/super-productivity/releases/download/v${version}/superProductivity-${version}.AppImage"; - sha256 = "sha256-Aa0orJpsin7XntUVpW6VLcbGiTSeyySDCGNFOERtgvg="; + sha256 = "sha256-jhCsC5G8epyclp2+DYpot1UMjo5mkMa0UO0bQZ1T0Ug="; name = "${pname}-${version}.AppImage"; }; From d4867eca678c5a5c44a27aec3f4fe5e8e88128ad Mon Sep 17 00:00:00 2001 From: Ruud van Asseldonk Date: Sat, 29 Jan 2022 12:12:12 +0100 Subject: [PATCH 03/28] butane: 0.13.1 -> 0.14.0 --- pkgs/development/tools/butane/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/tools/butane/default.nix b/pkgs/development/tools/butane/default.nix index 094aa5fe026c..4570faa96f26 100644 --- a/pkgs/development/tools/butane/default.nix +++ b/pkgs/development/tools/butane/default.nix @@ -4,13 +4,13 @@ with lib; buildGoModule rec { pname = "butane"; - version = "0.13.1"; + version = "0.14.0"; src = fetchFromGitHub { owner = "coreos"; repo = "butane"; rev = "v${version}"; - sha256 = "sha256-wrz9+McHW2NNMsB3uOZIceykYBlSgl2WErAT8bMlkXo="; + sha256 = "sha256-rS1/LQ5R3WY9ot1pgtN+6t/ZChr9SxPzrsNio7WWNqQ="; }; vendorSha256 = null; From 3c889e14238fdcf203a91813dabc1c8031de277d Mon Sep 17 00:00:00 2001 From: Matthias Thym Date: Sat, 29 Jan 2022 13:12:11 +0100 Subject: [PATCH 04/28] qownnotes: 22.1.10.1 -> 22.1.11 --- pkgs/applications/office/qownnotes/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/office/qownnotes/default.nix b/pkgs/applications/office/qownnotes/default.nix index 2f2446169891..50f74330ecc3 100644 --- a/pkgs/applications/office/qownnotes/default.nix +++ b/pkgs/applications/office/qownnotes/default.nix @@ -5,13 +5,13 @@ mkDerivation rec { pname = "qownnotes"; - version = "22.1.10.1"; + version = "22.1.11"; src = fetchurl { url = "https://download.tuxfamily.org/${pname}/src/${pname}-${version}.tar.xz"; # Fetch the checksum of current version with curl: # curl https://download.tuxfamily.org/qownnotes/src/qownnotes-.tar.xz.sha256 - sha256 = "sha256-uXDkLDDIRGSxXCczG9TQxtcLFjjOjKtyl/LRMax7JX4="; + sha256 = "7fa21ca9b8b0df6f1bda7a7dc21d53642eccf8de6a31a9a29a251e0a17c00c83"; }; nativeBuildInputs = [ qmake qttools ]; From 32d45883a8c34cf9d4e98c14ac601a2c4ecf8313 Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Sat, 29 Jan 2022 12:35:39 +0000 Subject: [PATCH 05/28] libf2c: explicitly disable parallel builds Attempt to enable build parallelism exposes missing dependency: libf2c> main.c:4:10: fatal error: signal1.h: No such file or directory libf2c> 4 | #include "signal1.h" libf2c> | ^~~~~~~~~~~ --- pkgs/development/libraries/libf2c/default.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkgs/development/libraries/libf2c/default.nix b/pkgs/development/libraries/libf2c/default.nix index 5a5d8b93057a..a2cb4d2bd246 100644 --- a/pkgs/development/libraries/libf2c/default.nix +++ b/pkgs/development/libraries/libf2c/default.nix @@ -27,6 +27,10 @@ stdenv.mkDerivation rec { hardeningDisable = [ "format" ]; + # Makefile is missing depepdencies on generated headers: + # main.c:4:10: fatal error: signal1.h: No such file or directory + enableParallelBuilding = false; + meta = { description = "F2c converts Fortran 77 source code to C"; homepage = "http://www.netlib.org/f2c/"; From 47691ae272fe811dcf53d946eb2756da7c3434cb Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Sat, 29 Jan 2022 22:46:13 +0800 Subject: [PATCH 06/28] pantheon.elementary-music: remove unneeded inputs After the LastFM plugin is removed, those inputs are no longer needed. --- .../apps/elementary-music/default.nix | 61 +++++++------------ 1 file changed, 23 insertions(+), 38 deletions(-) diff --git a/pkgs/desktops/pantheon/apps/elementary-music/default.nix b/pkgs/desktops/pantheon/apps/elementary-music/default.nix index d71835a6531a..843830427761 100644 --- a/pkgs/desktops/pantheon/apps/elementary-music/default.nix +++ b/pkgs/desktops/pantheon/apps/elementary-music/default.nix @@ -3,31 +3,25 @@ , fetchFromGitHub , fetchpatch , nix-update-script -, pkg-config +, desktop-file-utils , meson , ninja -, vala -, desktop-file-utils -, gtk3 -, granite +, pkg-config , python3 -, libgee -, clutter-gtk -, json-glib +, vala +, wrapGAppsHook +, elementary-icon-theme +, glib +, granite +, gst_all_1 +, gtk3 , libgda +, libgee , libgpod , libhandy -, libnotify , libpeas -, libsoup -, zeitgeist -, gst_all_1 , taglib -, libdbusmenu -, libsignon-glib -, libaccounts-glib -, elementary-icon-theme -, wrapGAppsHook +, zeitgeist }: stdenv.mkDerivation rec { @@ -66,34 +60,25 @@ stdenv.mkDerivation rec { wrapGAppsHook ]; - buildInputs = with gst_all_1; [ - clutter-gtk + buildInputs = [ elementary-icon-theme + glib granite + gtk3 + libgda + libgee + libgpod + libhandy + libpeas + taglib + zeitgeist + ] ++ (with gst_all_1; [ gst-plugins-bad gst-plugins-base gst-plugins-good gst-plugins-ugly gstreamer - gtk3 - json-glib - libaccounts-glib - libdbusmenu - libgda - libgee - libgpod - libhandy - libnotify - libpeas - libsignon-glib - libsoup - taglib - zeitgeist - ]; - - mesonFlags = [ - "-Dplugins=audioplayer,cdrom,ipod" - ]; + ]); postPatch = '' chmod +x meson/post_install.py From 0991408d6f048e86189c72bd2a4864f2700c426f Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Sun, 30 Jan 2022 10:46:17 +0800 Subject: [PATCH 07/28] pkgs/pantheon: update meta.license Based on project_license from appdata. --- pkgs/desktops/pantheon/apps/elementary-screenshot/default.nix | 2 +- pkgs/desktops/pantheon/apps/elementary-terminal/default.nix | 2 +- pkgs/desktops/pantheon/artwork/elementary-gtk-theme/default.nix | 2 +- .../desktops/pantheon/artwork/elementary-icon-theme/default.nix | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/desktops/pantheon/apps/elementary-screenshot/default.nix b/pkgs/desktops/pantheon/apps/elementary-screenshot/default.nix index 9e65a562875a..7629da0f734f 100644 --- a/pkgs/desktops/pantheon/apps/elementary-screenshot/default.nix +++ b/pkgs/desktops/pantheon/apps/elementary-screenshot/default.nix @@ -71,7 +71,7 @@ stdenv.mkDerivation rec { meta = with lib; { description = "Screenshot tool designed for elementary OS"; homepage = "https://github.com/elementary/screenshot"; - license = licenses.lgpl3; + license = licenses.lgpl3Plus; platforms = platforms.linux; maintainers = teams.pantheon.members; mainProgram = "io.elementary.screenshot"; diff --git a/pkgs/desktops/pantheon/apps/elementary-terminal/default.nix b/pkgs/desktops/pantheon/apps/elementary-terminal/default.nix index f3402299ff78..e796a2a344a9 100644 --- a/pkgs/desktops/pantheon/apps/elementary-terminal/default.nix +++ b/pkgs/desktops/pantheon/apps/elementary-terminal/default.nix @@ -86,7 +86,7 @@ stdenv.mkDerivation rec { smart copy/paste, and little to no configuration. ''; homepage = "https://github.com/elementary/terminal"; - license = licenses.lgpl3; + license = licenses.lgpl3Plus; platforms = platforms.linux; maintainers = teams.pantheon.members; mainProgram = "io.elementary.terminal"; diff --git a/pkgs/desktops/pantheon/artwork/elementary-gtk-theme/default.nix b/pkgs/desktops/pantheon/artwork/elementary-gtk-theme/default.nix index 304e07749c85..558c61d986ad 100644 --- a/pkgs/desktops/pantheon/artwork/elementary-gtk-theme/default.nix +++ b/pkgs/desktops/pantheon/artwork/elementary-gtk-theme/default.nix @@ -35,7 +35,7 @@ stdenv.mkDerivation rec { meta = with lib; { description = "GTK theme designed to be smooth, attractive, fast, and usable"; homepage = "https://github.com/elementary/stylesheet"; - license = licenses.gpl3; + license = licenses.gpl3Plus; platforms = platforms.linux; maintainers = teams.pantheon.members; }; diff --git a/pkgs/desktops/pantheon/artwork/elementary-icon-theme/default.nix b/pkgs/desktops/pantheon/artwork/elementary-icon-theme/default.nix index 40522bbf02a6..046f1fbdc979 100644 --- a/pkgs/desktops/pantheon/artwork/elementary-icon-theme/default.nix +++ b/pkgs/desktops/pantheon/artwork/elementary-icon-theme/default.nix @@ -61,7 +61,7 @@ stdenv.mkDerivation rec { An original set of vector icons designed specifically for elementary OS and its desktop environment: Pantheon. ''; homepage = "https://github.com/elementary/icons"; - license = licenses.gpl3; + license = licenses.gpl3Plus; platforms = platforms.linux; maintainers = teams.pantheon.members; }; From 422471d1b064839879d03dcfa9b8b3530c5be744 Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Sun, 30 Jan 2022 10:58:46 +0800 Subject: [PATCH 08/28] pkgs/pantheon: remove unneeded elementary-gtk-theme User may choose their own gtk theme, and elementary-gtk-theme has been added to the pantheon module by default. --- pkgs/desktops/pantheon/apps/appcenter/default.nix | 2 -- pkgs/desktops/pantheon/apps/elementary-feedback/default.nix | 2 -- pkgs/desktops/pantheon/apps/sideload/default.nix | 2 -- .../desktops/pantheon/desktop/elementary-onboarding/default.nix | 2 -- 4 files changed, 8 deletions(-) diff --git a/pkgs/desktops/pantheon/apps/appcenter/default.nix b/pkgs/desktops/pantheon/apps/appcenter/default.nix index bdc2fbca591a..c0c1513e784f 100644 --- a/pkgs/desktops/pantheon/apps/appcenter/default.nix +++ b/pkgs/desktops/pantheon/apps/appcenter/default.nix @@ -5,7 +5,6 @@ , appstream-glib , dbus , desktop-file-utils -, elementary-gtk-theme , elementary-icon-theme , fetchFromGitHub , flatpak @@ -61,7 +60,6 @@ stdenv.mkDerivation rec { buildInputs = [ appstream - elementary-gtk-theme elementary-icon-theme flatpak glib diff --git a/pkgs/desktops/pantheon/apps/elementary-feedback/default.nix b/pkgs/desktops/pantheon/apps/elementary-feedback/default.nix index 9b760515ff8f..6d9fe808d8d3 100644 --- a/pkgs/desktops/pantheon/apps/elementary-feedback/default.nix +++ b/pkgs/desktops/pantheon/apps/elementary-feedback/default.nix @@ -14,7 +14,6 @@ , libgee , libhandy , elementary-icon-theme -, elementary-gtk-theme , gettext , wrapGAppsHook , appstream @@ -55,7 +54,6 @@ stdenv.mkDerivation rec { elementary-icon-theme granite gtk3 - elementary-gtk-theme libgee libhandy glib diff --git a/pkgs/desktops/pantheon/apps/sideload/default.nix b/pkgs/desktops/pantheon/apps/sideload/default.nix index d93b158168f9..6069fb854781 100644 --- a/pkgs/desktops/pantheon/apps/sideload/default.nix +++ b/pkgs/desktops/pantheon/apps/sideload/default.nix @@ -2,7 +2,6 @@ , stdenv , desktop-file-utils , nix-update-script -, elementary-gtk-theme , elementary-icon-theme , fetchFromGitHub , flatpak @@ -44,7 +43,6 @@ stdenv.mkDerivation rec { ]; buildInputs = [ - elementary-gtk-theme elementary-icon-theme flatpak glib diff --git a/pkgs/desktops/pantheon/desktop/elementary-onboarding/default.nix b/pkgs/desktops/pantheon/desktop/elementary-onboarding/default.nix index c5c8810c6c5e..3355ee09299f 100644 --- a/pkgs/desktops/pantheon/desktop/elementary-onboarding/default.nix +++ b/pkgs/desktops/pantheon/desktop/elementary-onboarding/default.nix @@ -14,7 +14,6 @@ , granite , libgee , elementary-icon-theme -, elementary-gtk-theme , elementary-settings-daemon , gettext , libhandy @@ -57,7 +56,6 @@ stdenv.mkDerivation rec { ]; buildInputs = [ - elementary-gtk-theme elementary-icon-theme elementary-settings-daemon # settings schema glib From e1aa7d7609f7be23f973f8221fdd5fb07cca4063 Mon Sep 17 00:00:00 2001 From: teutat3s <10206665+teutat3s@users.noreply.github.com> Date: Sat, 29 Jan 2022 13:57:48 +0100 Subject: [PATCH 09/28] qMasterPassword: 1.2.2 -> git master --- .../misc/qMasterPassword/default.nix | 20 +++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/pkgs/applications/misc/qMasterPassword/default.nix b/pkgs/applications/misc/qMasterPassword/default.nix index d3449da97f36..f557a8bf9944 100644 --- a/pkgs/applications/misc/qMasterPassword/default.nix +++ b/pkgs/applications/misc/qMasterPassword/default.nix @@ -1,18 +1,18 @@ -{ lib, stdenv, mkDerivation, fetchFromGitHub, qtbase, qmake, libX11, libXtst, openssl, libscrypt }: +{ lib, stdenv, mkDerivation, fetchFromGitHub, qtbase, qmake, qttools, libX11, libXtst, openssl, libscrypt }: mkDerivation rec { - name = "qMasterPassword"; - version = "1.2.2"; + pname = "qMasterPassword-unstable"; + version = "2022-01-28"; src = fetchFromGitHub { owner = "bkueng"; - repo = name; - rev = "v${version}"; - sha256 = "0l0jarvfdc69rcjl2wa0ixq8gp3fmjsy9n84m38sxf3n9j2bh13c"; + repo = "qMasterPassword"; + rev = "7ade33952531731c266c2597f4212c93aca68c59"; + sha256 = "sha256-MdV6AkRh072++sKoeuwvhgqLEfUkTF34xt6OH9n59Q0="; }; buildInputs = [ qtbase libX11 libXtst openssl libscrypt ]; - nativeBuildInputs = [ qmake ]; + nativeBuildInputs = [ qmake qttools ]; # Upstream install is mostly defunct. It hardcodes target.path and doesn't # install anything but the binary. @@ -22,12 +22,16 @@ mkDerivation rec { ln -s ../Applications/qMasterPassword.app/Contents/MacOS/qMasterPassword "$out"/bin/qMasterPassword '' else '' mkdir -p $out/bin - mkdir -p $out/share/{applications,doc/qMasterPassword,icons/qmasterpassword,icons/hicolor/512x512/apps} + mkdir -p $out/share/{applications,doc/qMasterPassword,icons/qmasterpassword,icons/hicolor/512x512/apps,qMasterPassword/translations} mv qMasterPassword $out/bin mv data/qMasterPassword.desktop $out/share/applications mv LICENSE README.md $out/share/doc/qMasterPassword mv data/icons/app_icon.png $out/share/icons/hicolor/512x512/apps/qmasterpassword.png mv data/icons/* $out/share/icons/qmasterpassword + lrelease ./data/translations/translation_de.ts + lrelease ./data/translations/translation_pl.ts + mv ./data/translations/translation_de.qm $out/share/qMasterPassword/translations/translation_de.qm + mv ./data/translations/translation_pl.qm $out/share/qMasterPassword/translations/translation_pl.qm ''; meta = with lib; { From 1cd734f2d3aa1331fbed06729295ab89386a4ae9 Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Sun, 30 Jan 2022 11:14:01 +0800 Subject: [PATCH 10/28] pantheon.elementary-photos: remove unneeded inputs Looks like scour is no needed since 2.7.x. --- .../apps/elementary-photos/default.nix | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/pkgs/desktops/pantheon/apps/elementary-photos/default.nix b/pkgs/desktops/pantheon/apps/elementary-photos/default.nix index 12f6242eaafd..55a42f806447 100644 --- a/pkgs/desktops/pantheon/apps/elementary-photos/default.nix +++ b/pkgs/desktops/pantheon/apps/elementary-photos/default.nix @@ -8,7 +8,6 @@ , vala , desktop-file-utils , gtk3 -, libaccounts-glib , libexif , libgee , libhandy @@ -24,7 +23,6 @@ , libsoup , sqlite , python3 -, scour , webkitgtk , libwebp , appstream @@ -54,19 +52,13 @@ stdenv.mkDerivation rec { wrapGAppsHook ]; - buildInputs = with gst_all_1; [ + buildInputs = [ elementary-icon-theme geocode-glib gexiv2 granite - gst-plugins-bad - gst-plugins-base - gst-plugins-good - gst-plugins-ugly - gstreamer gtk3 json-glib - libaccounts-glib libexif libgee libgphoto2 @@ -76,10 +68,15 @@ stdenv.mkDerivation rec { librest libsoup libwebp - scour sqlite webkitgtk - ]; + ] ++ (with gst_all_1; [ + gst-plugins-bad + gst-plugins-base + gst-plugins-good + gst-plugins-ugly + gstreamer + ]); mesonFlags = [ "-Dplugins=false" From 9d8a23f66e4742969483efdea17b5fb9c0182269 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Sun, 30 Jan 2022 04:32:15 +0100 Subject: [PATCH 11/28] nixos/smartctl-exporter: fix typo in rawio capab --- .../services/monitoring/prometheus/exporters/smartctl.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nixos/modules/services/monitoring/prometheus/exporters/smartctl.nix b/nixos/modules/services/monitoring/prometheus/exporters/smartctl.nix index 9e49601ce1a7..bac98364538d 100644 --- a/nixos/modules/services/monitoring/prometheus/exporters/smartctl.nix +++ b/nixos/modules/services/monitoring/prometheus/exporters/smartctl.nix @@ -42,11 +42,11 @@ in { serviceOpts = { serviceConfig = { AmbientCapabilities = [ - "CAP_RAW_SYSIO" + "CAP_SYS_RAWIO" "CAP_SYS_ADMIN" ]; CapabilityBoundingSet = [ - "CAP_RAW_SYSIO" + "CAP_SYS_RAWIO" "CAP_SYS_ADMIN" ]; DevicePolicy = "closed"; From 3fd6c227c6e1cb183adf4e480ba6bb414e511c29 Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Sun, 30 Jan 2022 11:43:38 +0800 Subject: [PATCH 12/28] pantheon.elementary-files: remove unneeded inputs libdbusmenu-gtk3 is only needed by plank for enable_dbusmenu meson option. --- pkgs/desktops/pantheon/apps/elementary-files/default.nix | 2 -- 1 file changed, 2 deletions(-) diff --git a/pkgs/desktops/pantheon/apps/elementary-files/default.nix b/pkgs/desktops/pantheon/apps/elementary-files/default.nix index 4b829321c37e..4fb8f975dbca 100644 --- a/pkgs/desktops/pantheon/apps/elementary-files/default.nix +++ b/pkgs/desktops/pantheon/apps/elementary-files/default.nix @@ -21,7 +21,6 @@ , elementary-dock , bamf , sqlite -, libdbusmenu-gtk3 , zeitgeist , glib-networking , elementary-icon-theme @@ -74,7 +73,6 @@ stdenv.mkDerivation rec { gtk3 libcanberra libcloudproviders - libdbusmenu-gtk3 libgee libgit2-glib libhandy From 90964d30baf9088d2444dcdf3c2fa6a4c7ad1301 Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Sun, 30 Jan 2022 12:40:25 +0800 Subject: [PATCH 13/28] pantheon.switchboard-plug-about: introduces a wallpaper meson flag After some thought, it doesn't make sense to just keep the wallpaper. --- .../about/add-wallpaper-option.patch | 82 +++++++++++++++++++ .../apps/switchboard-plugs/about/default.nix | 15 ++-- .../about/fix-background-path.patch | 13 --- 3 files changed, 91 insertions(+), 19 deletions(-) create mode 100644 pkgs/desktops/pantheon/apps/switchboard-plugs/about/add-wallpaper-option.patch delete mode 100644 pkgs/desktops/pantheon/apps/switchboard-plugs/about/fix-background-path.patch diff --git a/pkgs/desktops/pantheon/apps/switchboard-plugs/about/add-wallpaper-option.patch b/pkgs/desktops/pantheon/apps/switchboard-plugs/about/add-wallpaper-option.patch new file mode 100644 index 000000000000..657ea7a260c9 --- /dev/null +++ b/pkgs/desktops/pantheon/apps/switchboard-plugs/about/add-wallpaper-option.patch @@ -0,0 +1,82 @@ +From cc47fa33893e6840463ef8d59f9f4de4b7563726 Mon Sep 17 00:00:00 2001 +From: Bobby Rong +Date: Sat, 4 Dec 2021 22:00:38 +0800 +Subject: [PATCH] Add meson option for overlaying logo on wallpaper + +--- + meson.build | 8 ++++++++ + meson_options.txt | 1 + + src/Views/OperatingSystemView.vala | 8 ++++++++ + 3 files changed, 17 insertions(+) + create mode 100644 meson_options.txt + +diff --git a/meson.build b/meson.build +index 2125de6e..cbe3cadd 100644 +--- a/meson.build ++++ b/meson.build +@@ -20,6 +20,14 @@ add_project_arguments( + vapi_dir = join_paths(meson.current_source_dir(), 'vapi') + add_project_arguments(['--vapidir', vapi_dir], language: 'vala') + ++vala_flags = [] ++ ++if get_option('wallpaper') ++ vala_flags += ['--define', 'WALLPAPER'] ++endif ++ ++add_project_arguments(vala_flags, language: 'vala') ++ + subdir('data') + subdir('src') + subdir('po') +diff --git a/meson_options.txt b/meson_options.txt +new file mode 100644 +index 00000000..8cef0bb3 +--- /dev/null ++++ b/meson_options.txt +@@ -0,0 +1 @@ ++option('wallpaper', type : 'boolean', value : true, description : 'Overlay logo on default wallpaper') +diff --git a/src/Views/OperatingSystemView.vala b/src/Views/OperatingSystemView.vala +index fdb92e7e..6110d1aa 100644 +--- a/src/Views/OperatingSystemView.vala ++++ b/src/Views/OperatingSystemView.vala +@@ -39,6 +39,7 @@ public class About.OperatingSystemView : Gtk.Grid { + logo_icon_name = "distributor-logo"; + } + ++#if WALLPAPER + var logo = new Hdy.Avatar (128, "", false) { + // In case the wallpaper can't be loaded, we don't want an icon or text + icon_name = "invalid-icon-name", +@@ -53,6 +54,7 @@ public class About.OperatingSystemView : Gtk.Grid { + } + }); + logo.get_style_context ().add_provider (style_provider, Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION); ++#endif + + var icon = new Gtk.Image () { + icon_name = logo_icon_name + "-symbolic", +@@ -64,9 +66,11 @@ public class About.OperatingSystemView : Gtk.Grid { + icon_style_context.add_class ("logo"); + icon_style_context.add_provider (style_provider, Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION); + ++#if WALLPAPER + var logo_overlay = new Gtk.Overlay (); + logo_overlay.add (logo); + logo_overlay.add_overlay (icon); ++#endif + + // Intentionally not using GLib.OsInfoKey.PRETTY_NAME here because we + // want more granular control over text formatting +@@ -145,7 +149,11 @@ public class About.OperatingSystemView : Gtk.Grid { + valign = Gtk.Align.CENTER, + vexpand = true + }; ++#if WALLPAPER + software_grid.attach (logo_overlay, 0, 0, 1, 4); ++#else ++ software_grid.attach (icon, 0, 0, 1, 4); ++#endif + software_grid.attach (title, 1, 0, 3); + + software_grid.attach (kernel_version_label, 1, 2, 3); diff --git a/pkgs/desktops/pantheon/apps/switchboard-plugs/about/default.nix b/pkgs/desktops/pantheon/apps/switchboard-plugs/about/default.nix index 03964284ed73..29fce055f5f4 100644 --- a/pkgs/desktops/pantheon/apps/switchboard-plugs/about/default.nix +++ b/pkgs/desktops/pantheon/apps/switchboard-plugs/about/default.nix @@ -2,7 +2,6 @@ , stdenv , fetchFromGitHub , nix-update-script -, substituteAll , meson , ninja , pkg-config @@ -30,11 +29,10 @@ stdenv.mkDerivation rec { }; patches = [ - # Use NixOS's default wallpaper - (substituteAll { - src = ./fix-background-path.patch; - default_wallpaper = "${nixos-artwork.wallpapers.simple-dark-gray.gnomeFilePath}"; - }) + # Introduces a wallpaper meson flag. + # The wallpapaper path does not exist on NixOS, let's just remove the wallpaper. + # https://github.com/elementary/switchboard-plug-about/pull/236 + ./add-wallpaper-option.patch ]; nativeBuildInputs = [ @@ -55,6 +53,11 @@ stdenv.mkDerivation rec { switchboard ]; + mesonFlags = [ + # This option is introduced in add-wallpaper-option.patch + "-Dwallpaper=false" + ]; + passthru = { updateScript = nix-update-script { attrPath = "pantheon.${pname}"; diff --git a/pkgs/desktops/pantheon/apps/switchboard-plugs/about/fix-background-path.patch b/pkgs/desktops/pantheon/apps/switchboard-plugs/about/fix-background-path.patch deleted file mode 100644 index 6fea88691331..000000000000 --- a/pkgs/desktops/pantheon/apps/switchboard-plugs/about/fix-background-path.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/src/Views/OperatingSystemView.vala b/src/Views/OperatingSystemView.vala -index fdb92e7e..4161538e 100644 ---- a/src/Views/OperatingSystemView.vala -+++ b/src/Views/OperatingSystemView.vala -@@ -47,7 +47,7 @@ public class About.OperatingSystemView : Gtk.Grid { - }; - logo.set_image_load_func ((size) => { - try { -- return new Gdk.Pixbuf.from_file_at_scale ("/usr/share/backgrounds/elementaryos-default", -1, size, true); -+ return new Gdk.Pixbuf.from_file_at_scale ("@default_wallpaper@", -1, size, true); - } catch (Error e) { - critical (e.message); - } From 544586a9b32a29e642c9d971182c21f4dfdf153f Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Sat, 29 Jan 2022 20:12:08 +0800 Subject: [PATCH 14/28] pantheon.granite: drop passthru.updateScript, disable bot update granite 7 has been ported to GTK 4 and introduces some breaking API changes. Following what is done in elementary OS, we maintain pantheon.granite7 as a new package and keep pantheon.granite on 6.x. To make sure this package will never be updated to 7.x by accident, let's disable the bot (r-ryantm) update with: nixpkgs-update: no auto update See also https://github.com/ryantm/nixpkgs-update/blob/58c5426a5b122d7bc6a5bf456cd9e9baf43eacd7/src/Skiplist.hs#L131 --- pkgs/desktops/pantheon/granite/default.nix | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/pkgs/desktops/pantheon/granite/default.nix b/pkgs/desktops/pantheon/granite/default.nix index ec2255bbbc19..f817a3017b7a 100644 --- a/pkgs/desktops/pantheon/granite/default.nix +++ b/pkgs/desktops/pantheon/granite/default.nix @@ -1,7 +1,6 @@ { lib , stdenv , fetchFromGitHub -, nix-update-script , python3 , meson , ninja @@ -18,7 +17,7 @@ stdenv.mkDerivation rec { pname = "granite"; - version = "6.2.0"; + version = "6.2.0"; # nixpkgs-update: no auto update outputs = [ "out" "dev" ]; @@ -52,12 +51,6 @@ stdenv.mkDerivation rec { patchShebangs meson/post_install.py ''; - passthru = { - updateScript = nix-update-script { - attrPath = "pantheon.${pname}"; - }; - }; - meta = with lib; { description = "An extension to GTK used by elementary OS"; longDescription = '' From 5161b59fe09c4296c31532b1e2af1ca6f9e88f2b Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Sun, 30 Jan 2022 12:46:19 +0800 Subject: [PATCH 15/28] wingpanel-indicator-ayatana: add passthru.updateScript Upstream doesn't tag release, we use unstableGitUpdater. --- .../third-party/wingpanel-indicator-ayatana/default.nix | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pkgs/desktops/pantheon/third-party/wingpanel-indicator-ayatana/default.nix b/pkgs/desktops/pantheon/third-party/wingpanel-indicator-ayatana/default.nix index 6e3fbf5777bc..7e153293bbc0 100644 --- a/pkgs/desktops/pantheon/third-party/wingpanel-indicator-ayatana/default.nix +++ b/pkgs/desktops/pantheon/third-party/wingpanel-indicator-ayatana/default.nix @@ -1,6 +1,7 @@ { lib , stdenv , fetchFromGitHub +, unstableGitUpdater , substituteAll , meson , ninja @@ -45,6 +46,12 @@ stdenv.mkDerivation rec { pantheon.wingpanel ]; + passthru = { + updateScript = unstableGitUpdater { + url = "https://github.com/Lafydev/wingpanel-indicator-ayatana.git"; + }; + }; + meta = with lib; { description = "Ayatana Compatibility Indicator for Wingpanel"; homepage = "https://github.com/Lafydev/wingpanel-indicator-ayatana"; From 60b8276d825b510de3a7bdedee254d352e56b515 Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Sun, 30 Jan 2022 15:51:50 +0800 Subject: [PATCH 16/28] pantheon.file-roller-contract: fix version, add passthru.updateScript Upstream doesn't tag release, we use unstableGitUpdater. --- .../pantheon/desktop/file-roller-contract/default.nix | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/pkgs/desktops/pantheon/desktop/file-roller-contract/default.nix b/pkgs/desktops/pantheon/desktop/file-roller-contract/default.nix index 9f4d275f2462..c9a24b4906c7 100644 --- a/pkgs/desktops/pantheon/desktop/file-roller-contract/default.nix +++ b/pkgs/desktops/pantheon/desktop/file-roller-contract/default.nix @@ -1,13 +1,14 @@ { lib , stdenv , fetchFromGitHub +, unstableGitUpdater , substituteAll , file-roller }: stdenv.mkDerivation rec { pname = "file-roller-contract"; - version = "unstable-2021-02-23"; + version = "unstable-2021-02-22"; src = fetchFromGitHub { owner = "elementary"; @@ -36,6 +37,12 @@ stdenv.mkDerivation rec { runHook postInstall ''; + passthru = { + updateScript = unstableGitUpdater { + url = "https://github.com/elementary/file-roller-contract.git"; + }; + }; + meta = with lib; { description = "Contractor extension for File Roller"; homepage = "https://github.com/elementary/file-roller-contract"; From 60e289a6d067842b339bc6b1a0b4d59b53796d10 Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Sun, 30 Jan 2022 15:54:06 +0800 Subject: [PATCH 17/28] pantheon.gnome-bluetooth-contract: fix version, add passthru.updateScript Upstream doesn't tag release, we use unstableGitUpdater. --- .../desktop/gnome-bluetooth-contract/default.nix | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/pkgs/desktops/pantheon/desktop/gnome-bluetooth-contract/default.nix b/pkgs/desktops/pantheon/desktop/gnome-bluetooth-contract/default.nix index 36f4d3e539f0..e1a25eea4a63 100644 --- a/pkgs/desktops/pantheon/desktop/gnome-bluetooth-contract/default.nix +++ b/pkgs/desktops/pantheon/desktop/gnome-bluetooth-contract/default.nix @@ -1,13 +1,14 @@ { lib , stdenv , fetchFromGitHub +, unstableGitUpdater , substituteAll , gnome-bluetooth }: stdenv.mkDerivation rec { pname = "gnome-bluetooth-contract"; - version = "unstable-2021-02-23"; + version = "unstable-2021-02-22"; src = fetchFromGitHub { owner = "elementary"; @@ -36,6 +37,12 @@ stdenv.mkDerivation rec { runHook postInstall ''; + passthru = { + updateScript = unstableGitUpdater { + url = "https://github.com/elementary/gnome-bluetooth-contract.git"; + }; + }; + meta = with lib; { description = "Contractor extension for GNOME Bluetooth"; homepage = "https://github.com/elementary/gnome-bluetooth-contract"; From 1be885d10757ed5969422348763055636da61eec Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Sun, 30 Jan 2022 16:06:59 +0800 Subject: [PATCH 18/28] pantheon.elementary-calendar: remove unneeded inputs Upstream is using GLib.Notification since 5.x, also removes libgdata from args. --- .../apps/elementary-calendar/default.nix | 29 +++++++++---------- 1 file changed, 13 insertions(+), 16 deletions(-) diff --git a/pkgs/desktops/pantheon/apps/elementary-calendar/default.nix b/pkgs/desktops/pantheon/apps/elementary-calendar/default.nix index 8cb9dcd18c62..70b092d3f2c3 100644 --- a/pkgs/desktops/pantheon/apps/elementary-calendar/default.nix +++ b/pkgs/desktops/pantheon/apps/elementary-calendar/default.nix @@ -2,28 +2,26 @@ , stdenv , fetchFromGitHub , nix-update-script -, pkg-config +, appstream-glib +, desktop-file-utils , meson , ninja +, pkg-config +, python3 , vala -, desktop-file-utils -, gtk3 +, wrapGAppsHook +, clutter +, elementary-icon-theme +, evolution-data-server +, folks +, geoclue2 +, geocode-glib , granite +, gtk3 +, libchamplain , libgee , libhandy -, geoclue2 -, libchamplain -, clutter -, folks -, geocode-glib -, python3 -, libnotify , libical -, libgdata -, evolution-data-server -, appstream-glib -, elementary-icon-theme -, wrapGAppsHook }: stdenv.mkDerivation rec { @@ -61,7 +59,6 @@ stdenv.mkDerivation rec { libgee libhandy libical - libnotify ]; postPatch = '' From cd9779b9cbd9651ea282b7922962807574334d13 Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Sun, 30 Jan 2022 16:15:46 +0800 Subject: [PATCH 19/28] pantheon.elementary-camera: remove unneeded inputs Clutter support is removed in 6.0 in favor of native Gtk element from GStreamer --- .../apps/elementary-camera/default.nix | 42 ++++++++++--------- 1 file changed, 22 insertions(+), 20 deletions(-) diff --git a/pkgs/desktops/pantheon/apps/elementary-camera/default.nix b/pkgs/desktops/pantheon/apps/elementary-camera/default.nix index 7135795914d9..94bbc69047dd 100644 --- a/pkgs/desktops/pantheon/apps/elementary-camera/default.nix +++ b/pkgs/desktops/pantheon/apps/elementary-camera/default.nix @@ -3,25 +3,24 @@ , fetchFromGitHub , fetchpatch , nix-update-script -, pkg-config -, meson -, ninja -, vala +, appstream , desktop-file-utils -, python3 , gettext , libxml2 -, gtk3 +, meson +, ninja +, pkg-config +, python3 +, vala +, wrapGAppsHook +, elementary-icon-theme +, glib , granite +, gst_all_1 +, gtk3 +, libcanberra , libgee , libhandy -, gst_all_1 -, libcanberra -, clutter-gtk -, clutter-gst -, elementary-icon-theme -, appstream -, wrapGAppsHook }: stdenv.mkDerivation rec { @@ -58,19 +57,22 @@ stdenv.mkDerivation rec { ]; buildInputs = [ - clutter-gst - clutter-gtk elementary-icon-theme + glib granite - gst_all_1.gst-plugins-bad - gst_all_1.gst-plugins-base - (gst_all_1.gst-plugins-good.override { gtkSupport = true; }) - gst_all_1.gstreamer gtk3 libcanberra libgee libhandy - ]; + ] ++ (with gst_all_1; [ + gst-plugins-bad + gst-plugins-base + # gtkSupport needed for gtksink + # https://github.com/elementary/camera/issues/181 + (gst-plugins-good.override { gtkSupport = true; }) + gst-plugins-ugly + gstreamer + ]); postPatch = '' chmod +x meson/post_install.py From d33c073216f13f3d88a290632ce6f493795e0ea8 Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Sun, 30 Jan 2022 16:26:08 +0800 Subject: [PATCH 20/28] pantheon.elementary-code: remove unneeded inputs The browser preview plugin has been removed in 6.0, ctags has been added to PATH already. --- .../pantheon/apps/elementary-code/default.nix | 29 +++++++++---------- 1 file changed, 13 insertions(+), 16 deletions(-) diff --git a/pkgs/desktops/pantheon/apps/elementary-code/default.nix b/pkgs/desktops/pantheon/apps/elementary-code/default.nix index 073ea45cbc9b..4087168feb06 100644 --- a/pkgs/desktops/pantheon/apps/elementary-code/default.nix +++ b/pkgs/desktops/pantheon/apps/elementary-code/default.nix @@ -3,29 +3,28 @@ , fetchFromGitHub , fetchpatch , nix-update-script -, pkg-config +, appstream +, desktop-file-utils , meson , ninja -, vala +, pkg-config +, polkit , python3 -, desktop-file-utils -, gtk3 -, granite -, libgee -, libhandy -, elementary-icon-theme -, appstream -, libpeas +, vala +, wrapGAppsHook , editorconfig-core-c +, elementary-icon-theme +, granite +, gtk3 , gtksourceview4 , gtkspell3 +, libgee +, libgit2-glib +, libhandy +, libpeas , libsoup , vte -, webkitgtk , ctags -, libgit2-glib -, wrapGAppsHook -, polkit }: stdenv.mkDerivation rec { @@ -61,7 +60,6 @@ stdenv.mkDerivation rec { ]; buildInputs = [ - ctags editorconfig-core-c elementary-icon-theme granite @@ -74,7 +72,6 @@ stdenv.mkDerivation rec { libpeas libsoup vte - webkitgtk ]; # ctags needed in path by outline plugin From 83e96efd141413352d0a40695738a3cfb2897642 Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Sun, 30 Jan 2022 16:31:03 +0800 Subject: [PATCH 21/28] pkgs/pantheon: remove unused args --- pkgs/desktops/pantheon/apps/elementary-calculator/default.nix | 1 - pkgs/desktops/pantheon/apps/switchboard-plugs/about/default.nix | 1 - .../pantheon/desktop/elementary-gsettings-schemas/default.nix | 1 - 3 files changed, 3 deletions(-) diff --git a/pkgs/desktops/pantheon/apps/elementary-calculator/default.nix b/pkgs/desktops/pantheon/apps/elementary-calculator/default.nix index 115622e81435..2356d362f6b6 100644 --- a/pkgs/desktops/pantheon/apps/elementary-calculator/default.nix +++ b/pkgs/desktops/pantheon/apps/elementary-calculator/default.nix @@ -1,7 +1,6 @@ { lib , stdenv , fetchFromGitHub -, fetchpatch , nix-update-script , pkg-config , meson diff --git a/pkgs/desktops/pantheon/apps/switchboard-plugs/about/default.nix b/pkgs/desktops/pantheon/apps/switchboard-plugs/about/default.nix index 29fce055f5f4..82eece370dd8 100644 --- a/pkgs/desktops/pantheon/apps/switchboard-plugs/about/default.nix +++ b/pkgs/desktops/pantheon/apps/switchboard-plugs/about/default.nix @@ -14,7 +14,6 @@ , switchboard , fwupd , appstream -, nixos-artwork }: stdenv.mkDerivation rec { diff --git a/pkgs/desktops/pantheon/desktop/elementary-gsettings-schemas/default.nix b/pkgs/desktops/pantheon/desktop/elementary-gsettings-schemas/default.nix index 1f8c811d9d10..dd6b10f5c830 100644 --- a/pkgs/desktops/pantheon/desktop/elementary-gsettings-schemas/default.nix +++ b/pkgs/desktops/pantheon/desktop/elementary-gsettings-schemas/default.nix @@ -2,7 +2,6 @@ , runCommand , mutter , elementary-default-settings -, nixos-artwork , glib , gala , epiphany From 9b89009bf7532be3cc841c0c1106430ce985fce5 Mon Sep 17 00:00:00 2001 From: FliegendeWurst <2012gdwu+github@posteo.de> Date: Sun, 30 Jan 2022 11:04:20 +0100 Subject: [PATCH 22/28] fcitx-engines.libpinyin: 0.5.3 -> 0.5.4 --- .../inputmethods/fcitx-engines/fcitx-libpinyin/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/inputmethods/fcitx-engines/fcitx-libpinyin/default.nix b/pkgs/tools/inputmethods/fcitx-engines/fcitx-libpinyin/default.nix index 2767b4c7c0ef..422b1148d05b 100644 --- a/pkgs/tools/inputmethods/fcitx-engines/fcitx-libpinyin/default.nix +++ b/pkgs/tools/inputmethods/fcitx-engines/fcitx-libpinyin/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "fcitx-libpinyin"; - version = "0.5.3"; + version = "0.5.4"; src = fetchurl { url = "http://download.fcitx-im.org/fcitx-libpinyin/${pname}-${version}.tar.xz"; - sha256 = "196c229ckib3xvafkk4n3n3jk9rpksfcjsbbwka6a9k2f34qrjj6"; + sha256 = "1wvsc21imbgq3chlxfw4aycmkb2vi1bkjj9frvhga2m5b5pq82k5"; }; nativeBuildInputs = [ cmake pkg-config ]; From 4b27d4f9f8f5396d0d6688d567568241e8bc34f9 Mon Sep 17 00:00:00 2001 From: Linus Heckemann Date: Sun, 23 Jan 2022 11:58:30 +0100 Subject: [PATCH 23/28] nixos/systemd: only use cryptsetup units if systemd was built with it --- nixos/modules/system/boot/systemd.nix | 2 ++ pkgs/os-specific/linux/systemd/default.nix | 22 +++++++++++++--------- 2 files changed, 15 insertions(+), 9 deletions(-) diff --git a/nixos/modules/system/boot/systemd.nix b/nixos/modules/system/boot/systemd.nix index ec5dea075bbc..c52a834ac771 100644 --- a/nixos/modules/system/boot/systemd.nix +++ b/nixos/modules/system/boot/systemd.nix @@ -25,9 +25,11 @@ let "nss-lookup.target" "nss-user-lookup.target" "time-sync.target" + ] ++ (optionals cfg.package.withCryptsetup [ "cryptsetup.target" "cryptsetup-pre.target" "remote-cryptsetup.target" + ]) ++ [ "sigpwr.target" "timers.target" "paths.target" diff --git a/pkgs/os-specific/linux/systemd/default.nix b/pkgs/os-specific/linux/systemd/default.nix index 3c11c03dfdc2..23e75e861242 100644 --- a/pkgs/os-specific/linux/systemd/default.nix +++ b/pkgs/os-specific/linux/systemd/default.nix @@ -596,16 +596,20 @@ stdenv.mkDerivation { rm -rf $out/share/doc ''; - # The interface version prevents NixOS from switching to an - # incompatible systemd at runtime. (Switching across reboots is - # fine, of course.) It should be increased whenever systemd changes - # in a backwards-incompatible way. If the interface version of two - # systemd builds is the same, then we can switch between them at - # runtime; otherwise we can't and we need to reboot. - passthru.interfaceVersion = 2; + passthru = { + # The interface version prevents NixOS from switching to an + # incompatible systemd at runtime. (Switching across reboots is + # fine, of course.) It should be increased whenever systemd changes + # in a backwards-incompatible way. If the interface version of two + # systemd builds is the same, then we can switch between them at + # runtime; otherwise we can't and we need to reboot. + interfaceVersion = 2; - passthru.tests = { - inherit (nixosTests) switchTest; + inherit withCryptsetup; + + tests = { + inherit (nixosTests) switchTest; + }; }; meta = with lib; { From 6b3a2e6c3f7a483fcf41b73611cee248d10ae558 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= Date: Sun, 30 Jan 2022 12:28:55 +0100 Subject: [PATCH 24/28] nixUnstable: pre20220124 -> pre20220127 fixes https://github.com/NixOS/nix/issues/5998 and https://github.com/NixOS/nix/issues/5980 --- pkgs/tools/package-management/nix/common.nix | 3 +++ pkgs/tools/package-management/nix/default.nix | 6 +++--- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/package-management/nix/common.nix b/pkgs/tools/package-management/nix/common.nix index ba95e0ddbf43..fb4398322acb 100644 --- a/pkgs/tools/package-management/nix/common.nix +++ b/pkgs/tools/package-management/nix/common.nix @@ -9,6 +9,7 @@ assert (sha256 == null) -> (src != null); let atLeast24 = lib.versionAtLeast version "2.4pre"; atLeast25 = lib.versionAtLeast version "2.5pre"; + atLeast27 = lib.versionAtLeast version "2.7pre"; in { stdenv , autoconf-archive @@ -100,6 +101,8 @@ stdenv.mkDerivation { lowdown ] ++ lib.optionals (atLeast24 && stdenv.isx86_64) [ libcpuid + ] ++ lib.optional (atLeast27) [ + nlohmann_json ] ++ lib.optionals withLibseccomp [ libseccomp ] ++ lib.optionals withAWS [ diff --git a/pkgs/tools/package-management/nix/default.nix b/pkgs/tools/package-management/nix/default.nix index 51f09e5dc437..f389da8b4b0b 100644 --- a/pkgs/tools/package-management/nix/default.nix +++ b/pkgs/tools/package-management/nix/default.nix @@ -67,12 +67,12 @@ in lib.makeExtensible (self: { unstable = lib.lowPrio (common rec { version = "2.7"; - suffix = "pre20220124_${lib.substring 0 7 src.rev}"; + suffix = "pre20220127_${lib.substring 0 7 src.rev}"; src = fetchFromGitHub { owner = "NixOS"; repo = "nix"; - rev = "0a70b37b5694c769fb855c1afe7642407d1db64f"; - sha256 = "sha256-aOM9MPNlnWNMobx4CuD4JIXH2poRlG8AKkuxY7FysWg="; + rev = "558c4ee3e370c9f9a6ea293df54ed6914a999f1c"; + sha256 = "sha256-hMzKQflpgf3P7OdYKSnD1VMBSnF48XSRjaNX3bUJct4="; }; }); }) From a817568b0f88055e064d20279982e6906e14ea3d Mon Sep 17 00:00:00 2001 From: Nick Cao Date: Sun, 30 Jan 2022 19:41:10 +0800 Subject: [PATCH 25/28] nix: fix default value of enableDocumentation --- pkgs/tools/package-management/nix/common.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/tools/package-management/nix/common.nix b/pkgs/tools/package-management/nix/common.nix index ba95e0ddbf43..2358fa935b28 100644 --- a/pkgs/tools/package-management/nix/common.nix +++ b/pkgs/tools/package-management/nix/common.nix @@ -44,7 +44,7 @@ in , util-linuxMinimal , xz -, enableDocumentation ? atLeast24 || stdenv.hostPlatform == stdenv.buildPlatform +, enableDocumentation ? !atLeast24 || stdenv.hostPlatform == stdenv.buildPlatform , enableStatic ? stdenv.hostPlatform.isStatic , withAWS ? !enableStatic && (stdenv.isLinux || stdenv.isDarwin), aws-sdk-cpp , withLibseccomp ? lib.meta.availableOn stdenv.hostPlatform libseccomp, libseccomp From 0a16b05ea9a12e367cfe96db77429c7daf798481 Mon Sep 17 00:00:00 2001 From: Jess Schallenberg Date: Sun, 30 Jan 2022 13:59:56 +0100 Subject: [PATCH 26/28] nixos/nftables: Allow use with iptables (#121517) * nixos/nftables: Allow use with iptables Since iptables and nftables do not actually conflict with each other, there's no real reason to artificially prevent people from combining them. In fact, this practice is known to cause issues like #88643, which is fixed by this commit. --- nixos/modules/services/networking/nftables.nix | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/nixos/modules/services/networking/nftables.nix b/nixos/modules/services/networking/nftables.nix index eb74d373b0af..b911f97491eb 100644 --- a/nixos/modules/services/networking/nftables.nix +++ b/nixos/modules/services/networking/nftables.nix @@ -25,9 +25,10 @@ in for more information. There are other programs that use iptables internally too, such as - libvirt. + libvirt. For information on how the two firewalls interact, see [2]. [1]: https://github.com/NixOS/nixpkgs/issues/24318#issuecomment-289216273 + [2]: https://wiki.nftables.org/wiki-nftables/index.php/Troubleshooting#Question_4._How_do_nftables_and_iptables_interact_when_used_on_the_same_system.3F ''; }; networking.nftables.ruleset = mkOption { @@ -118,20 +119,11 @@ in flush ruleset include "${cfg.rulesetFile}" ''; - checkScript = pkgs.writeScript "nftables-check" '' - #! ${pkgs.runtimeShell} -e - if $(${pkgs.kmod}/bin/lsmod | grep -q ip_tables); then - echo "Unload ip_tables before using nftables!" 1>&2 - exit 1 - else - ${rulesScript} - fi - ''; in { Type = "oneshot"; RemainAfterExit = true; - ExecStart = checkScript; - ExecReload = checkScript; + ExecStart = rulesScript; + ExecReload = rulesScript; ExecStop = "${pkgs.nftables}/bin/nft flush ruleset"; }; }; From 81c46ad9e83bf1cfa8048302613da942c4c05941 Mon Sep 17 00:00:00 2001 From: sternenseemann Date: Thu, 27 Jan 2022 15:09:28 +0100 Subject: [PATCH 27/28] chroma: 0.9.4 -> 0.10.0 --- pkgs/tools/text/chroma/default.nix | 4 ++-- pkgs/tools/text/chroma/src.json | 8 ++++---- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/pkgs/tools/text/chroma/default.nix b/pkgs/tools/text/chroma/default.nix index 42784d65a739..8b8a8a7b7753 100644 --- a/pkgs/tools/text/chroma/default.nix +++ b/pkgs/tools/text/chroma/default.nix @@ -6,7 +6,7 @@ in buildGoModule rec { pname = "chroma"; - version = "0.9.4"; + version = "0.10.0"; # To update: # nix-prefetch-git --rev v${version} https://github.com/alecthomas/chroma.git > src.json @@ -17,7 +17,7 @@ buildGoModule rec { inherit (srcInfo) sha256; }; - vendorSha256 = "1l5ryhwifhff41r4z1d2lifpvjcc4yi1vzrzlvkx3iy9dmxqcssl"; + vendorSha256 = "09b718vjd6npg850fr7z6srs2sc5vsr7byzlz5yb5qx0vm3ajxpf"; modRoot = "./cmd/chroma"; diff --git a/pkgs/tools/text/chroma/src.json b/pkgs/tools/text/chroma/src.json index 9bfc8d9c2c73..224bb4328d71 100644 --- a/pkgs/tools/text/chroma/src.json +++ b/pkgs/tools/text/chroma/src.json @@ -1,9 +1,9 @@ { "url": "https://github.com/alecthomas/chroma.git", - "rev": "6520148857c2ae3106ff371e527abea815b23915", - "date": "2021-10-17T08:46:20+11:00", - "path": "/nix/store/0s8a46d1nyjl3yhsgni2jz5vdv95cka8-chroma", - "sha256": "1iy6mymdjxbl5wbll1mivv7gqdyqhl6xpfqps99z307m7y38r1ni", + "rev": "36bdd4b98823bd1d7be96767cde3dd575e60b406", + "date": "2022-01-12T21:49:38+11:00", + "path": "/nix/store/951ya4wlxp217a2j3qdni29zwqfq0z7v-chroma", + "sha256": "0hjzb61m5lzx95xss82wil9s8f9hbw1zb3jj73ljfwkq5lqk76zq", "fetchLFS": false, "fetchSubmodules": false, "deepClone": false, From 372468425f35be282788576d3fc427012579103f Mon Sep 17 00:00:00 2001 From: Johannes Arnold Date: Sun, 30 Jan 2022 15:21:18 +0100 Subject: [PATCH 28/28] imagemagick: build with potrace --- pkgs/applications/graphics/ImageMagick/7.0.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/graphics/ImageMagick/7.0.nix b/pkgs/applications/graphics/ImageMagick/7.0.nix index 76490682477a..e45ae5482f63 100644 --- a/pkgs/applications/graphics/ImageMagick/7.0.nix +++ b/pkgs/applications/graphics/ImageMagick/7.0.nix @@ -1,7 +1,7 @@ { lib, stdenv, fetchFromGitHub, fetchpatch, pkg-config, libtool , bzip2, zlib, libX11, libXext, libXt, fontconfig, freetype, ghostscript, libjpeg, djvulibre , lcms2, openexr, libjxl, libpng, liblqr1, libraw, librsvg, libtiff, libxml2, openjpeg, libwebp, libheif -, ApplicationServices +, potrace, ApplicationServices , Foundation , testVersion, imagemagick }: @@ -59,7 +59,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ pkg-config libtool ]; buildInputs = - [ zlib fontconfig freetype ghostscript + [ zlib fontconfig freetype ghostscript potrace liblqr1 libpng libraw libtiff libxml2 libheif djvulibre ] # libjxl is broken on aarch64 (see meta.broken in libjxl) for now,