From 786216dfcb12fa850a8d79b18a44f0c03fe23df1 Mon Sep 17 00:00:00 2001 From: Anders Kaseorg Date: Fri, 10 Jun 2022 11:41:37 -0700 Subject: [PATCH 01/30] top-level: Ignore Emacs lock files when looking for overlays While an Emacs user edits a file foo.nix, Emacs creates a lock file .#foo.nix as a broken symlink to USER@HOSTNAME.PID:TIMESTAMP. https://www.gnu.org/software/emacs/manual/html_node/emacs/Interlocking.html If the file is in the overlays directory, this breaks all nixpkgs imports with this error, until the user saves the file: error: getting status of '/home/user/.config/nixpkgs/overlays/user@hostname.683628:1654370645': No such file or directory Fix this by ignoring filenames beginning with .# in overlay directories. Signed-off-by: Anders Kaseorg --- pkgs/top-level/impure.nix | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/pkgs/top-level/impure.nix b/pkgs/top-level/impure.nix index 242596d28c6b..4d847e280f4b 100644 --- a/pkgs/top-level/impure.nix +++ b/pkgs/top-level/impure.nix @@ -47,7 +47,12 @@ in # it's a directory, so the set of overlays from the directory, ordered lexicographically let content = builtins.readDir path; in map (n: import (path + ("/" + n))) - (builtins.filter (n: builtins.match ".*\\.nix" n != null || builtins.pathExists (path + ("/" + n + "/default.nix"))) + (builtins.filter + (n: + (builtins.match ".*\\.nix" n != null && + # ignore Emacs lock files (.#foo.nix) + builtins.match "\\.#.*" n == null) || + builtins.pathExists (path + ("/" + n + "/default.nix"))) (builtins.attrNames content)) else # it's a file, so the result is the contents of the file itself From b946787204aea4d67126c31ac4851dee618125df Mon Sep 17 00:00:00 2001 From: Jiajie Chen Date: Wed, 26 Oct 2022 23:11:52 +0800 Subject: [PATCH 02/30] spark2014: init at unstable-2022-05-25 --- .../libraries/ada/spark2014/default.nix | 71 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 73 insertions(+) create mode 100644 pkgs/development/libraries/ada/spark2014/default.nix diff --git a/pkgs/development/libraries/ada/spark2014/default.nix b/pkgs/development/libraries/ada/spark2014/default.nix new file mode 100644 index 000000000000..1e6157cfb9a2 --- /dev/null +++ b/pkgs/development/libraries/ada/spark2014/default.nix @@ -0,0 +1,71 @@ +{ stdenv +, lib +, fetchFromGitHub +, gnat12 +, gnatcoll-core +, gprbuild +, python3 +, why3 +, ocaml +, ocamlPackages +, makeWrapper +}: + +stdenv.mkDerivation rec { + pname = "spark2014"; + version = "unstable-2022-05-25"; + + src = fetchFromGitHub { + owner = "AdaCore"; + repo = "spark2014"; + # commit on fsf-12 branch + rev = "ab34e07080a769b63beacc141707b5885c49d375"; + sha256 = "sha256-7pe3eWitpxmqzjW6qEIEuN0qr2IR+kJ7Ssc9pTBcCD8="; + fetchSubmodules = true; + }; + + nativeBuildInputs = [ + gnat12 + gprbuild + python3 + ocaml + makeWrapper + ]; + + buildInputs = [ + gnatcoll-core + ocamlPackages.camlzip + ocamlPackages.findlib + ocamlPackages.menhir + ocamlPackages.menhirLib + ocamlPackages.num + ocamlPackages.yojson + ocamlPackages.zarith + ]; + + postPatch = '' + # gnat2why/gnat_src points to the GNAT sources + tar xf ${gnat12.cc.src} gcc-12.2.0/gcc/ada + mv gcc-12.2.0/gcc/ada gnat2why/gnat_src + ''; + + configurePhase = '' + make setup + ''; + + postInstall = '' + cp -a ./install/. $out + # help gnatprove to locate why3server + wrapProgram "$out/bin/gnatprove" \ + --prefix PATH : "${why3}/lib/why3" + ''; + + meta = with lib; { + description = "a software development technology specifically designed for engineering high-reliability applications"; + homepage = "https://github.com/AdaCore/spark2014"; + maintainers = [ maintainers.jiegec ]; + license = licenses.gpl3; + platforms = platforms.all; + }; +} + diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index ac655751e7c3..60745a224526 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -15850,6 +15850,8 @@ with pkgs; sparkleshare = callPackage ../applications/version-management/sparkleshare { }; + spark2014 = callPackage ../development/libraries/ada/spark2014 { }; + spidermonkey_78 = callPackage ../development/interpreters/spidermonkey/78.nix { inherit (darwin) libobjc; }; From 84d67f05746038382426c3d72ebb7daf3fab1557 Mon Sep 17 00:00:00 2001 From: Weijia Wang <9713184+wegank@users.noreply.github.com> Date: Thu, 27 Oct 2022 22:45:22 +0200 Subject: [PATCH 03/30] licenses: remove fdl11 --- lib/licenses.nix | 5 ----- pkgs/applications/networking/newsreaders/pan/default.nix | 2 +- 2 files changed, 1 insertion(+), 6 deletions(-) diff --git a/lib/licenses.nix b/lib/licenses.nix index 4cd65277771f..61612a2c236f 100644 --- a/lib/licenses.nix +++ b/lib/licenses.nix @@ -985,11 +985,6 @@ in mkLicense lset) ({ fullName = "GNU Affero General Public License v3.0"; deprecated = true; }; - fdl11 = { - spdxId = "GFDL-1.1"; - fullName = "GNU Free Documentation License v1.1"; - deprecated = true; - }; fdl12 = { spdxId = "GFDL-1.2"; fullName = "GNU Free Documentation License v1.2"; diff --git a/pkgs/applications/networking/newsreaders/pan/default.nix b/pkgs/applications/networking/newsreaders/pan/default.nix index b6afe0aa44e0..854f1c3484ec 100644 --- a/pkgs/applications/networking/newsreaders/pan/default.nix +++ b/pkgs/applications/networking/newsreaders/pan/default.nix @@ -58,6 +58,6 @@ stdenv.mkDerivation rec { homepage = "http://pan.rebelbase.com/"; maintainers = [ maintainers.eelco ]; platforms = platforms.linux; - license = with licenses; [ gpl2Only fdl11 ]; + license = with licenses; [ gpl2Only fdl11Only ]; }; } From 06d0490ab3f6b7e65b30916ffc394ebd07215fbb Mon Sep 17 00:00:00 2001 From: Weijia Wang <9713184+wegank@users.noreply.github.com> Date: Thu, 27 Oct 2022 22:47:29 +0200 Subject: [PATCH 04/30] licenses: remove fdl12 --- lib/licenses.nix | 5 ----- maintainers/scripts/nix-generate-from-cpan.pl | 2 +- pkgs/applications/kde/akonadi-import-wizard.nix | 2 +- pkgs/applications/kde/akonadi-notes.nix | 2 +- pkgs/applications/kde/akonadi-search.nix | 2 +- pkgs/applications/kde/akonadiconsole.nix | 2 +- pkgs/applications/kde/akregator.nix | 2 +- pkgs/applications/kde/calendarsupport.nix | 2 +- pkgs/applications/kde/dolphin.nix | 2 +- pkgs/applications/kde/dragon.nix | 2 +- pkgs/applications/kde/eventviews.nix | 2 +- pkgs/applications/kde/grantleetheme/default.nix | 2 +- pkgs/applications/kde/gwenview.nix | 2 +- pkgs/applications/kde/incidenceeditor.nix | 2 +- pkgs/applications/kde/kaddressbook.nix | 2 +- pkgs/applications/kde/kcalutils.nix | 2 +- pkgs/applications/kde/kdepim-runtime/default.nix | 2 +- pkgs/applications/kde/kdialog.nix | 2 +- pkgs/applications/kde/keditbookmarks.nix | 2 +- pkgs/applications/kde/kidentitymanagement.nix | 2 +- pkgs/applications/kde/kimap.nix | 2 +- pkgs/applications/kde/kldap.nix | 2 +- pkgs/applications/kde/kleopatra.nix | 2 +- pkgs/applications/kde/kmail-account-wizard.nix | 2 +- pkgs/applications/kde/kmail.nix | 2 +- pkgs/applications/kde/kmailtransport.nix | 2 +- pkgs/applications/kde/kmbox.nix | 2 +- pkgs/applications/kde/kmix.nix | 2 +- pkgs/applications/kde/kmousetool.nix | 2 +- pkgs/applications/kde/kmplot.nix | 2 +- pkgs/applications/kde/konsole.nix | 2 +- pkgs/applications/kde/kontact.nix | 2 +- pkgs/applications/kde/kontactinterface.nix | 2 +- pkgs/applications/kde/korganizer.nix | 2 +- pkgs/applications/kde/kpat.nix | 2 +- pkgs/applications/kde/kpimtextedit.nix | 2 +- pkgs/applications/kde/kqtquickcharts.nix | 2 +- pkgs/applications/kde/krdc.nix | 2 +- pkgs/applications/kde/krfb.nix | 2 +- pkgs/applications/kde/ksmtp/default.nix | 2 +- pkgs/applications/kde/ktnef.nix | 2 +- pkgs/applications/kde/libgravatar.nix | 2 +- pkgs/applications/kde/libkdepim.nix | 2 +- pkgs/applications/kde/libkgapi.nix | 2 +- pkgs/applications/kde/libkleo.nix | 2 +- pkgs/applications/kde/libksieve.nix | 2 +- pkgs/applications/kde/mailcommon.nix | 2 +- pkgs/applications/kde/mailimporter.nix | 2 +- pkgs/applications/kde/mbox-importer.nix | 2 +- pkgs/applications/kde/messagelib.nix | 2 +- pkgs/applications/kde/okular.nix | 2 +- pkgs/applications/kde/pim-data-exporter.nix | 2 +- pkgs/applications/kde/pim-sieve-editor.nix | 2 +- pkgs/applications/kde/pimcommon.nix | 2 +- pkgs/applications/kde/rocs.nix | 2 +- pkgs/applications/video/kmplayer/default.nix | 2 +- pkgs/data/documentation/std-man-pages/default.nix | 2 +- pkgs/desktops/mate/mate-user-guide/default.nix | 2 +- pkgs/desktops/plasma-5/default.nix | 2 +- pkgs/development/libraries/kde-frameworks/default.nix | 2 +- pkgs/development/libraries/kde-frameworks/kdav.nix | 2 +- pkgs/development/libraries/kde-frameworks/kholidays.nix | 2 +- 62 files changed, 61 insertions(+), 66 deletions(-) diff --git a/lib/licenses.nix b/lib/licenses.nix index 61612a2c236f..53a8ef6271aa 100644 --- a/lib/licenses.nix +++ b/lib/licenses.nix @@ -985,11 +985,6 @@ in mkLicense lset) ({ fullName = "GNU Affero General Public License v3.0"; deprecated = true; }; - fdl12 = { - spdxId = "GFDL-1.2"; - fullName = "GNU Free Documentation License v1.2"; - deprecated = true; - }; fdl13 = { spdxId = "GFDL-1.3"; fullName = "GNU Free Documentation License v1.3"; diff --git a/maintainers/scripts/nix-generate-from-cpan.pl b/maintainers/scripts/nix-generate-from-cpan.pl index 6494acb50da5..4e26eeda8d34 100755 --- a/maintainers/scripts/nix-generate-from-cpan.pl +++ b/maintainers/scripts/nix-generate-from-cpan.pl @@ -61,7 +61,7 @@ Readonly::Hash my %LICENSE_MAP => ( # GNU Free Documentation License, Version 1.2. gfdl_1_2 => { - licenses => [qw( fdl12 )] + licenses => [qw( fdl12Plus )] }, # GNU Free Documentation License, Version 1.3. diff --git a/pkgs/applications/kde/akonadi-import-wizard.nix b/pkgs/applications/kde/akonadi-import-wizard.nix index 948f9e5d2a23..370f77c38318 100644 --- a/pkgs/applications/kde/akonadi-import-wizard.nix +++ b/pkgs/applications/kde/akonadi-import-wizard.nix @@ -9,7 +9,7 @@ mkDerivation { pname = "akonadi-import-wizard"; meta = { - license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; diff --git a/pkgs/applications/kde/akonadi-notes.nix b/pkgs/applications/kde/akonadi-notes.nix index 6db7e00be9b0..1ab0ca74819f 100644 --- a/pkgs/applications/kde/akonadi-notes.nix +++ b/pkgs/applications/kde/akonadi-notes.nix @@ -7,7 +7,7 @@ mkDerivation { pname = "akonadi-notes"; meta = { - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; diff --git a/pkgs/applications/kde/akonadi-search.nix b/pkgs/applications/kde/akonadi-search.nix index 495b63abd443..84657177f891 100644 --- a/pkgs/applications/kde/akonadi-search.nix +++ b/pkgs/applications/kde/akonadi-search.nix @@ -8,7 +8,7 @@ mkDerivation { pname = "akonadi-search"; meta = { - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; diff --git a/pkgs/applications/kde/akonadiconsole.nix b/pkgs/applications/kde/akonadiconsole.nix index 76e5ca480b47..bb0b8424b4e4 100644 --- a/pkgs/applications/kde/akonadiconsole.nix +++ b/pkgs/applications/kde/akonadiconsole.nix @@ -9,7 +9,7 @@ mkDerivation { pname = "akonadiconsole"; meta = { - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; diff --git a/pkgs/applications/kde/akregator.nix b/pkgs/applications/kde/akregator.nix index 9cb23ad35ac5..714f636341da 100644 --- a/pkgs/applications/kde/akregator.nix +++ b/pkgs/applications/kde/akregator.nix @@ -14,7 +14,7 @@ mkDerivation { meta = { homepage = "https://apps.kde.org/akregator/"; description = "KDE feed reader"; - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; diff --git a/pkgs/applications/kde/calendarsupport.nix b/pkgs/applications/kde/calendarsupport.nix index 24f93ee0af75..c6a4e36c82d4 100644 --- a/pkgs/applications/kde/calendarsupport.nix +++ b/pkgs/applications/kde/calendarsupport.nix @@ -8,7 +8,7 @@ mkDerivation { pname = "calendarsupport"; meta = { - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; diff --git a/pkgs/applications/kde/dolphin.nix b/pkgs/applications/kde/dolphin.nix index b70f4977f587..9e4ab1d41027 100644 --- a/pkgs/applications/kde/dolphin.nix +++ b/pkgs/applications/kde/dolphin.nix @@ -13,7 +13,7 @@ mkDerivation { meta = { homepage = "https://apps.kde.org/dolphin/"; description = "KDE file manager"; - license = with lib.licenses; [ gpl2 fdl12 ]; + license = with lib.licenses; [ gpl2Plus fdl12Plus ]; maintainers = [ lib.maintainers.ttuegel ]; broken = lib.versionOlder qtbase.version "5.14"; }; diff --git a/pkgs/applications/kde/dragon.nix b/pkgs/applications/kde/dragon.nix index 4fb5583a8ff9..399205da6caa 100644 --- a/pkgs/applications/kde/dragon.nix +++ b/pkgs/applications/kde/dragon.nix @@ -11,7 +11,7 @@ mkDerivation { pname = "dragon"; meta = { homepage = "https://apps.kde.org/dragonplayer/"; - license = with lib.licenses; [ gpl2 fdl12 ]; + license = with lib.licenses; [ gpl2Plus fdl12Plus ]; description = "A simple media player for KDE"; maintainers = [ lib.maintainers.jonathanreeve ]; }; diff --git a/pkgs/applications/kde/eventviews.nix b/pkgs/applications/kde/eventviews.nix index 1a6cc9442b96..001c1e6cbcb9 100644 --- a/pkgs/applications/kde/eventviews.nix +++ b/pkgs/applications/kde/eventviews.nix @@ -8,7 +8,7 @@ mkDerivation { pname = "eventviews"; meta = { - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; diff --git a/pkgs/applications/kde/grantleetheme/default.nix b/pkgs/applications/kde/grantleetheme/default.nix index 517cb072f74d..6d29d6e6d8c1 100644 --- a/pkgs/applications/kde/grantleetheme/default.nix +++ b/pkgs/applications/kde/grantleetheme/default.nix @@ -7,7 +7,7 @@ mkDerivation { pname = "grantleetheme"; meta = { - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; broken = lib.versionOlder qtbase.version "5.13.0"; }; diff --git a/pkgs/applications/kde/gwenview.nix b/pkgs/applications/kde/gwenview.nix index 36d46f43966d..545b1a2b69e7 100644 --- a/pkgs/applications/kde/gwenview.nix +++ b/pkgs/applications/kde/gwenview.nix @@ -11,7 +11,7 @@ mkDerivation { meta = { homepage = "https://apps.kde.org/gwenview/"; description = "KDE image viewer"; - license = with lib.licenses; [ gpl2 fdl12 ]; + license = with lib.licenses; [ gpl2Plus fdl12Plus ]; maintainers = [ lib.maintainers.ttuegel ]; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; diff --git a/pkgs/applications/kde/incidenceeditor.nix b/pkgs/applications/kde/incidenceeditor.nix index 7f2c284ad74d..9c248f199a5d 100644 --- a/pkgs/applications/kde/incidenceeditor.nix +++ b/pkgs/applications/kde/incidenceeditor.nix @@ -8,7 +8,7 @@ mkDerivation { pname = "incidenceeditor"; meta = { - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; diff --git a/pkgs/applications/kde/kaddressbook.nix b/pkgs/applications/kde/kaddressbook.nix index 1a800525255c..441a150ee170 100644 --- a/pkgs/applications/kde/kaddressbook.nix +++ b/pkgs/applications/kde/kaddressbook.nix @@ -12,7 +12,7 @@ mkDerivation { meta = { homepage = "https://apps.kde.org/kaddressbook/"; description = "KDE contact manager"; - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; diff --git a/pkgs/applications/kde/kcalutils.nix b/pkgs/applications/kde/kcalutils.nix index 21e84dff05ff..7da9739aad1d 100644 --- a/pkgs/applications/kde/kcalutils.nix +++ b/pkgs/applications/kde/kcalutils.nix @@ -8,7 +8,7 @@ mkDerivation { pname = "kcalutils"; meta = { - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; diff --git a/pkgs/applications/kde/kdepim-runtime/default.nix b/pkgs/applications/kde/kdepim-runtime/default.nix index 0cc78c69aec7..b5158bfd1549 100644 --- a/pkgs/applications/kde/kdepim-runtime/default.nix +++ b/pkgs/applications/kde/kdepim-runtime/default.nix @@ -12,7 +12,7 @@ mkDerivation { pname = "kdepim-runtime"; meta = { - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; }; nativeBuildInputs = [ extra-cmake-modules kdoctools shared-mime-info ]; diff --git a/pkgs/applications/kde/kdialog.nix b/pkgs/applications/kde/kdialog.nix index 015c86bc7d12..ea7393e72261 100644 --- a/pkgs/applications/kde/kdialog.nix +++ b/pkgs/applications/kde/kdialog.nix @@ -10,7 +10,7 @@ mkDerivation { meta = { homepage = "https://apps.kde.org/kdialog/"; description = "Display dialog boxes from shell scripts"; - license = with lib.licenses; [ gpl2 fdl12 ]; + license = with lib.licenses; [ gpl2Plus fdl12Plus ]; maintainers = with lib.maintainers; [ peterhoeg ]; }; diff --git a/pkgs/applications/kde/keditbookmarks.nix b/pkgs/applications/kde/keditbookmarks.nix index 9deb1a3c0158..8bc0ec873613 100644 --- a/pkgs/applications/kde/keditbookmarks.nix +++ b/pkgs/applications/kde/keditbookmarks.nix @@ -10,7 +10,7 @@ mkDerivation { buildInputs = [ kio kparts kwindowsystem ]; meta = with lib; { homepage = "http://www.kde.org"; - license = with licenses; [ gpl2 lgpl21 fdl12 bsd3 ]; + license = with licenses; [ gpl2Plus lgpl21Plus fdl12Plus bsd3 ]; maintainers = with maintainers; [ peterhoeg ]; platforms = platforms.linux; }; diff --git a/pkgs/applications/kde/kidentitymanagement.nix b/pkgs/applications/kde/kidentitymanagement.nix index 789206a16390..c2f2abcd32d0 100644 --- a/pkgs/applications/kde/kidentitymanagement.nix +++ b/pkgs/applications/kde/kidentitymanagement.nix @@ -8,7 +8,7 @@ mkDerivation { pname = "kidentitymanagement"; meta = { - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; diff --git a/pkgs/applications/kde/kimap.nix b/pkgs/applications/kde/kimap.nix index e93804bd885d..ece32e3ee057 100644 --- a/pkgs/applications/kde/kimap.nix +++ b/pkgs/applications/kde/kimap.nix @@ -7,7 +7,7 @@ mkDerivation { pname = "kimap"; meta = { - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; diff --git a/pkgs/applications/kde/kldap.nix b/pkgs/applications/kde/kldap.nix index 69849f757514..6016cfd090c8 100644 --- a/pkgs/applications/kde/kldap.nix +++ b/pkgs/applications/kde/kldap.nix @@ -7,7 +7,7 @@ mkDerivation { pname = "kldap"; meta = { - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; diff --git a/pkgs/applications/kde/kleopatra.nix b/pkgs/applications/kde/kleopatra.nix index b3444e97532f..a02e7b08aa65 100644 --- a/pkgs/applications/kde/kleopatra.nix +++ b/pkgs/applications/kde/kleopatra.nix @@ -18,7 +18,7 @@ mkDerivation { meta = { homepage = "https://apps.kde.org/kleopatra/"; description = "Certificate manager and unified crypto GUI"; - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; }; } diff --git a/pkgs/applications/kde/kmail-account-wizard.nix b/pkgs/applications/kde/kmail-account-wizard.nix index c0ab4ff947e9..216586076aec 100644 --- a/pkgs/applications/kde/kmail-account-wizard.nix +++ b/pkgs/applications/kde/kmail-account-wizard.nix @@ -9,7 +9,7 @@ mkDerivation { pname = "kmail-account-wizard"; meta = { - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; }; nativeBuildInputs = [ extra-cmake-modules kdoctools shared-mime-info ]; diff --git a/pkgs/applications/kde/kmail.nix b/pkgs/applications/kde/kmail.nix index 341d54a6388a..6a71529eb0f1 100644 --- a/pkgs/applications/kde/kmail.nix +++ b/pkgs/applications/kde/kmail.nix @@ -55,7 +55,7 @@ mkDerivation { meta = { homepage = "https://apps.kde.org/kmail2/"; description = "Mail client"; - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; diff --git a/pkgs/applications/kde/kmailtransport.nix b/pkgs/applications/kde/kmailtransport.nix index 976bd634e66a..577beb8d5ec8 100644 --- a/pkgs/applications/kde/kmailtransport.nix +++ b/pkgs/applications/kde/kmailtransport.nix @@ -9,7 +9,7 @@ mkDerivation { pname = "kmailtransport"; meta = { - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; diff --git a/pkgs/applications/kde/kmbox.nix b/pkgs/applications/kde/kmbox.nix index 6f3db970b942..d2b4dbde8ac4 100644 --- a/pkgs/applications/kde/kmbox.nix +++ b/pkgs/applications/kde/kmbox.nix @@ -7,7 +7,7 @@ mkDerivation { pname = "kmbox"; meta = { - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; diff --git a/pkgs/applications/kde/kmix.nix b/pkgs/applications/kde/kmix.nix index 2f85454eb67e..352fd129ce94 100644 --- a/pkgs/applications/kde/kmix.nix +++ b/pkgs/applications/kde/kmix.nix @@ -10,7 +10,7 @@ mkDerivation { meta = { homepage = "https://apps.kde.org/kmix/"; description = "Sound mixer"; - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = [ lib.maintainers.rongcuid ]; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; diff --git a/pkgs/applications/kde/kmousetool.nix b/pkgs/applications/kde/kmousetool.nix index fb4323455b79..4bac765dc4b9 100644 --- a/pkgs/applications/kde/kmousetool.nix +++ b/pkgs/applications/kde/kmousetool.nix @@ -28,7 +28,7 @@ mkDerivation { meta = { homepage = "https://github.com/KDE/kmousetool"; description = "Program that clicks the mouse for you"; - license = with lib.licenses; [ gpl2 fdl12 ]; + license = with lib.licenses; [ gpl2Plus fdl12Plus ]; maintainers = [ lib.maintainers.jayesh-bhoot ]; }; } diff --git a/pkgs/applications/kde/kmplot.nix b/pkgs/applications/kde/kmplot.nix index a6784982580f..9f1ab4d28119 100644 --- a/pkgs/applications/kde/kmplot.nix +++ b/pkgs/applications/kde/kmplot.nix @@ -7,7 +7,7 @@ mkDerivation { meta = { homepage = "https://apps.kde.org/kmplot/"; description = "Mathematical function plotter"; - license = with lib.licenses; [ gpl2Plus fdl12 ]; + license = with lib.licenses; [ gpl2Plus fdl12Plus ]; maintainers = [ lib.maintainers.orivej ]; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; diff --git a/pkgs/applications/kde/konsole.nix b/pkgs/applications/kde/konsole.nix index 23cbdf28477d..220cd6a16d57 100644 --- a/pkgs/applications/kde/konsole.nix +++ b/pkgs/applications/kde/konsole.nix @@ -12,7 +12,7 @@ mkDerivation { meta = { homepage = "https://apps.kde.org/konsole/"; description = "KDE terminal emulator"; - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = with lib.maintainers; [ ttuegel turion ]; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; diff --git a/pkgs/applications/kde/kontact.nix b/pkgs/applications/kde/kontact.nix index dbdc5ba474b1..b8ccd9415efb 100644 --- a/pkgs/applications/kde/kontact.nix +++ b/pkgs/applications/kde/kontact.nix @@ -12,7 +12,7 @@ mkDerivation { meta = { homepage = "https://apps.kde.org/kontact/"; description = "Personal information manager"; - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; diff --git a/pkgs/applications/kde/kontactinterface.nix b/pkgs/applications/kde/kontactinterface.nix index 858addcd3ffa..b680a088a6ea 100644 --- a/pkgs/applications/kde/kontactinterface.nix +++ b/pkgs/applications/kde/kontactinterface.nix @@ -7,7 +7,7 @@ mkDerivation { pname = "kontactinterface"; meta = { - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; diff --git a/pkgs/applications/kde/korganizer.nix b/pkgs/applications/kde/korganizer.nix index 3eafd80cacf6..36edffb4eabd 100644 --- a/pkgs/applications/kde/korganizer.nix +++ b/pkgs/applications/kde/korganizer.nix @@ -15,7 +15,7 @@ mkDerivation { meta = { homepage = "https://apps.kde.org/korganizer/"; description = "Personal organizer"; - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; diff --git a/pkgs/applications/kde/kpat.nix b/pkgs/applications/kde/kpat.nix index 96bd6dd542ec..3d480db6bc13 100644 --- a/pkgs/applications/kde/kpat.nix +++ b/pkgs/applications/kde/kpat.nix @@ -21,7 +21,7 @@ mkDerivation { freecell-solver ]; meta = { - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = with lib.maintainers; [ rnhmjoj ]; }; } diff --git a/pkgs/applications/kde/kpimtextedit.nix b/pkgs/applications/kde/kpimtextedit.nix index 2948075f6963..e42c25e7463d 100644 --- a/pkgs/applications/kde/kpimtextedit.nix +++ b/pkgs/applications/kde/kpimtextedit.nix @@ -9,7 +9,7 @@ mkDerivation { pname = "kpimtextedit"; meta = { - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; broken = lib.versionOlder qtbase.version "5.13.0"; }; diff --git a/pkgs/applications/kde/kqtquickcharts.nix b/pkgs/applications/kde/kqtquickcharts.nix index 669a38e37ca6..0560fc9da01d 100644 --- a/pkgs/applications/kde/kqtquickcharts.nix +++ b/pkgs/applications/kde/kqtquickcharts.nix @@ -7,7 +7,7 @@ mkDerivation { pname = "kqtquickcharts"; meta = { - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = [ lib.maintainers.ttuegel ]; }; nativeBuildInputs = [ extra-cmake-modules ]; diff --git a/pkgs/applications/kde/krdc.nix b/pkgs/applications/kde/krdc.nix index 8049c6d11b49..9d9762523d97 100644 --- a/pkgs/applications/kde/krdc.nix +++ b/pkgs/applications/kde/krdc.nix @@ -19,7 +19,7 @@ mkDerivation { meta = with lib; { homepage = "http://www.kde.org"; description = "Remote desktop client"; - license = with licenses; [ gpl2 lgpl21 fdl12 bsd3 ]; + license = with licenses; [ gpl2Plus lgpl21Plus fdl12Plus bsd3 ]; maintainers = with maintainers; [ peterhoeg ]; platforms = platforms.linux; broken = lib.versionOlder qtbase.version "5.14"; diff --git a/pkgs/applications/kde/krfb.nix b/pkgs/applications/kde/krfb.nix index 807b3508b95a..8262febad7af 100644 --- a/pkgs/applications/kde/krfb.nix +++ b/pkgs/applications/kde/krfb.nix @@ -11,7 +11,7 @@ mkDerivation { meta = { homepage = "https://apps.kde.org/krfb/"; description = "Desktop sharing (VNC)"; - license = with lib.licenses; [ gpl2 fdl12 ]; + license = with lib.licenses; [ gpl2Plus fdl12Plus ]; maintainers = with lib.maintainers; [ jerith666 ]; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; diff --git a/pkgs/applications/kde/ksmtp/default.nix b/pkgs/applications/kde/ksmtp/default.nix index 3bf80f4abf52..1e5a43f35213 100644 --- a/pkgs/applications/kde/ksmtp/default.nix +++ b/pkgs/applications/kde/ksmtp/default.nix @@ -7,7 +7,7 @@ mkDerivation { pname = "ksmtp"; meta = { - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; diff --git a/pkgs/applications/kde/ktnef.nix b/pkgs/applications/kde/ktnef.nix index 4a29acd1e7cf..fec85644aa71 100644 --- a/pkgs/applications/kde/ktnef.nix +++ b/pkgs/applications/kde/ktnef.nix @@ -7,7 +7,7 @@ mkDerivation { pname = "ktnef"; meta = { - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; diff --git a/pkgs/applications/kde/libgravatar.nix b/pkgs/applications/kde/libgravatar.nix index 51e3391b8e77..2055d7bd36b3 100644 --- a/pkgs/applications/kde/libgravatar.nix +++ b/pkgs/applications/kde/libgravatar.nix @@ -7,7 +7,7 @@ mkDerivation { pname = "libgravatar"; meta = { - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; diff --git a/pkgs/applications/kde/libkdepim.nix b/pkgs/applications/kde/libkdepim.nix index cc0c15a9e060..5fafd2e1effc 100644 --- a/pkgs/applications/kde/libkdepim.nix +++ b/pkgs/applications/kde/libkdepim.nix @@ -9,7 +9,7 @@ mkDerivation { pname = "libkdepim"; meta = { - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; diff --git a/pkgs/applications/kde/libkgapi.nix b/pkgs/applications/kde/libkgapi.nix index 979ca7e2f458..de0be7ea49ad 100644 --- a/pkgs/applications/kde/libkgapi.nix +++ b/pkgs/applications/kde/libkgapi.nix @@ -8,7 +8,7 @@ mkDerivation { pname = "libkgapi"; meta = { - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; broken = lib.versionOlder qtbase.version "5.14.0"; }; diff --git a/pkgs/applications/kde/libkleo.nix b/pkgs/applications/kde/libkleo.nix index dd17345c5f17..0cd858ea6e0a 100644 --- a/pkgs/applications/kde/libkleo.nix +++ b/pkgs/applications/kde/libkleo.nix @@ -8,7 +8,7 @@ mkDerivation { pname = "libkleo"; meta = { - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; diff --git a/pkgs/applications/kde/libksieve.nix b/pkgs/applications/kde/libksieve.nix index 209647a4791f..adc232f091d6 100644 --- a/pkgs/applications/kde/libksieve.nix +++ b/pkgs/applications/kde/libksieve.nix @@ -9,7 +9,7 @@ mkDerivation { pname = "libksieve"; meta = { - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; }; outputs = [ "out" "dev" ]; diff --git a/pkgs/applications/kde/mailcommon.nix b/pkgs/applications/kde/mailcommon.nix index c3a8659a735b..af29ff41681e 100644 --- a/pkgs/applications/kde/mailcommon.nix +++ b/pkgs/applications/kde/mailcommon.nix @@ -9,7 +9,7 @@ mkDerivation { pname = "mailcommon"; meta = { - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; diff --git a/pkgs/applications/kde/mailimporter.nix b/pkgs/applications/kde/mailimporter.nix index b1e0461a9593..745316fbaf9a 100644 --- a/pkgs/applications/kde/mailimporter.nix +++ b/pkgs/applications/kde/mailimporter.nix @@ -8,7 +8,7 @@ mkDerivation { pname = "mailimporter"; meta = { - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; diff --git a/pkgs/applications/kde/mbox-importer.nix b/pkgs/applications/kde/mbox-importer.nix index eadb27f05bc9..d51b7e99ce60 100644 --- a/pkgs/applications/kde/mbox-importer.nix +++ b/pkgs/applications/kde/mbox-importer.nix @@ -7,7 +7,7 @@ mkDerivation { pname = "mbox-importer"; meta = { - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; diff --git a/pkgs/applications/kde/messagelib.nix b/pkgs/applications/kde/messagelib.nix index 6709a1f072a5..d52989d3ffc0 100644 --- a/pkgs/applications/kde/messagelib.nix +++ b/pkgs/applications/kde/messagelib.nix @@ -11,7 +11,7 @@ mkDerivation { pname = "messagelib"; meta = { - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; diff --git a/pkgs/applications/kde/okular.nix b/pkgs/applications/kde/okular.nix index 51994c2868dd..f2f563042224 100644 --- a/pkgs/applications/kde/okular.nix +++ b/pkgs/applications/kde/okular.nix @@ -30,7 +30,7 @@ mkDerivation { meta = with lib; { homepage = "http://www.kde.org"; description = "KDE document viewer"; - license = with licenses; [ gpl2 lgpl21 fdl12 bsd3 ]; + license = with licenses; [ gpl2Plus lgpl21Plus fdl12Plus bsd3 ]; maintainers = with maintainers; [ ttuegel turion ]; platforms = lib.platforms.linux; }; diff --git a/pkgs/applications/kde/pim-data-exporter.nix b/pkgs/applications/kde/pim-data-exporter.nix index f13e1f667957..c1a2270641bd 100644 --- a/pkgs/applications/kde/pim-data-exporter.nix +++ b/pkgs/applications/kde/pim-data-exporter.nix @@ -12,7 +12,7 @@ mkDerivation { meta = { homepage = "https://apps.kde.org/pimdataexporter/"; description = "Saves and restores all data from PIM apps"; - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; diff --git a/pkgs/applications/kde/pim-sieve-editor.nix b/pkgs/applications/kde/pim-sieve-editor.nix index 9998418ff8a3..613a159a7929 100644 --- a/pkgs/applications/kde/pim-sieve-editor.nix +++ b/pkgs/applications/kde/pim-sieve-editor.nix @@ -8,7 +8,7 @@ mkDerivation { pname = "pim-sieve-editor"; meta = { - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; diff --git a/pkgs/applications/kde/pimcommon.nix b/pkgs/applications/kde/pimcommon.nix index 40153af70e83..896c202529a6 100644 --- a/pkgs/applications/kde/pimcommon.nix +++ b/pkgs/applications/kde/pimcommon.nix @@ -10,7 +10,7 @@ mkDerivation { pname = "pimcommon"; meta = { - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = kdepimTeam; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; diff --git a/pkgs/applications/kde/rocs.nix b/pkgs/applications/kde/rocs.nix index 45362d556a72..bb5cd80bca23 100644 --- a/pkgs/applications/kde/rocs.nix +++ b/pkgs/applications/kde/rocs.nix @@ -11,7 +11,7 @@ mkDerivation { meta = with lib; { homepage = "https://edu.kde.org/rocs/"; description = "A graph theory IDE."; - license = with licenses; [ gpl2 lgpl21 fdl12 ]; + license = with licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; platforms = lib.platforms.linux; maintainers = with maintainers; [ knairda ]; }; diff --git a/pkgs/applications/video/kmplayer/default.nix b/pkgs/applications/video/kmplayer/default.nix index 274ff7cdeab7..986faceb82d0 100644 --- a/pkgs/applications/video/kmplayer/default.nix +++ b/pkgs/applications/video/kmplayer/default.nix @@ -41,7 +41,7 @@ mkDerivation rec { meta = with lib; { description = "MPlayer front-end for KDE"; - license = with licenses; [ gpl2 lgpl2 fdl12 ]; + license = with licenses; [ gpl2Plus lgpl2Plus fdl12Plus ]; homepage = "https://kmplayer.kde.org/"; maintainers = with maintainers; [ sander zraexy ]; }; diff --git a/pkgs/data/documentation/std-man-pages/default.nix b/pkgs/data/documentation/std-man-pages/default.nix index c9ce9c2bf764..1fd83700f85a 100644 --- a/pkgs/data/documentation/std-man-pages/default.nix +++ b/pkgs/data/documentation/std-man-pages/default.nix @@ -19,7 +19,7 @@ stdenv.mkDerivation rec { meta = with lib; { description = "GCC C++ STD manual pages"; homepage = "https://gcc.gnu.org/"; - license = with licenses; [ fdl12Plus ]; + license = with licenses; [ fdl13Plus ]; platforms = platforms.unix; }; } diff --git a/pkgs/desktops/mate/mate-user-guide/default.nix b/pkgs/desktops/mate/mate-user-guide/default.nix index d5fcd44887ac..ab8174811806 100644 --- a/pkgs/desktops/mate/mate-user-guide/default.nix +++ b/pkgs/desktops/mate/mate-user-guide/default.nix @@ -39,7 +39,7 @@ stdenv.mkDerivation rec { meta = with lib; { description = "MATE User Guide"; homepage = "https://mate-desktop.org"; - license = with licenses; [ gpl2Plus fdl12 ]; + license = with licenses; [ gpl2Plus fdl11Plus ]; platforms = platforms.unix; maintainers = teams.mate.members; }; diff --git a/pkgs/desktops/plasma-5/default.nix b/pkgs/desktops/plasma-5/default.nix index bb3119ed6d45..6396b7c6c51e 100644 --- a/pkgs/desktops/plasma-5/default.nix +++ b/pkgs/desktops/plasma-5/default.nix @@ -43,7 +43,7 @@ let mit gpl2Plus gpl3Plus - fdl12 + fdl12Plus ]; srcs = import ./srcs.nix { diff --git a/pkgs/development/libraries/kde-frameworks/default.nix b/pkgs/development/libraries/kde-frameworks/default.nix index 31bce026daa0..2014b00b1e54 100644 --- a/pkgs/development/libraries/kde-frameworks/default.nix +++ b/pkgs/development/libraries/kde-frameworks/default.nix @@ -32,7 +32,7 @@ let broken = lib.versionOlder libsForQt5.qtbase.version minQtVersion; maintainers = with lib.maintainers; [ ttuegel nyanloutre ]; license = with lib.licenses; [ - lgpl21Plus lgpl3Plus bsd2 mit gpl2Plus gpl3Plus fdl12 + lgpl21Plus lgpl3Plus bsd2 mit gpl2Plus gpl3Plus fdl12Plus ]; srcs = import ./srcs.nix { diff --git a/pkgs/development/libraries/kde-frameworks/kdav.nix b/pkgs/development/libraries/kde-frameworks/kdav.nix index 92d57158e320..3149c2206625 100644 --- a/pkgs/development/libraries/kde-frameworks/kdav.nix +++ b/pkgs/development/libraries/kde-frameworks/kdav.nix @@ -7,7 +7,7 @@ mkDerivation { pname = "kdav"; meta = { - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; buildInputs = [ kcoreaddons kio qtxmlpatterns ]; diff --git a/pkgs/development/libraries/kde-frameworks/kholidays.nix b/pkgs/development/libraries/kde-frameworks/kholidays.nix index 9484dece57ed..81369d4ce83d 100644 --- a/pkgs/development/libraries/kde-frameworks/kholidays.nix +++ b/pkgs/development/libraries/kde-frameworks/kholidays.nix @@ -7,7 +7,7 @@ mkDerivation { pname = "kholidays"; meta = { - license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + license = with lib.licenses; [ gpl2Plus lgpl21Plus fdl12Plus ]; maintainers = with lib.maintainers; [ bkchr ]; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; From 79f517445587287d330355a6047a7a9883ffc5e5 Mon Sep 17 00:00:00 2001 From: Weijia Wang <9713184+wegank@users.noreply.github.com> Date: Thu, 27 Oct 2022 22:48:13 +0200 Subject: [PATCH 05/30] licenses: remove fdl13 --- lib/licenses.nix | 5 ----- maintainers/scripts/nix-generate-from-cpan.pl | 2 +- pkgs/development/libraries/qt-5/modules/qtbase.nix | 2 +- pkgs/development/libraries/qt-5/qtModule.nix | 2 +- pkgs/development/libraries/qt-6/modules/qtbase.nix | 2 +- pkgs/development/libraries/qt-6/qtModule.nix | 2 +- pkgs/development/libraries/qt-mobility/default.nix | 2 +- 7 files changed, 6 insertions(+), 11 deletions(-) diff --git a/lib/licenses.nix b/lib/licenses.nix index 53a8ef6271aa..ba0aba1959bc 100644 --- a/lib/licenses.nix +++ b/lib/licenses.nix @@ -985,11 +985,6 @@ in mkLicense lset) ({ fullName = "GNU Affero General Public License v3.0"; deprecated = true; }; - fdl13 = { - spdxId = "GFDL-1.3"; - fullName = "GNU Free Documentation License v1.3"; - deprecated = true; - }; gpl2 = { spdxId = "GPL-2.0"; fullName = "GNU General Public License v2.0"; diff --git a/maintainers/scripts/nix-generate-from-cpan.pl b/maintainers/scripts/nix-generate-from-cpan.pl index 4e26eeda8d34..ce0599dda0e7 100755 --- a/maintainers/scripts/nix-generate-from-cpan.pl +++ b/maintainers/scripts/nix-generate-from-cpan.pl @@ -66,7 +66,7 @@ Readonly::Hash my %LICENSE_MAP => ( # GNU Free Documentation License, Version 1.3. gfdl_1_3 => { - licenses => [qw( fdl13 )] + licenses => [qw( fdl13Plus )] }, # GNU General Public License, Version 1. diff --git a/pkgs/development/libraries/qt-5/modules/qtbase.nix b/pkgs/development/libraries/qt-5/modules/qtbase.nix index 2dd9edcf5d23..db1367f6fba5 100644 --- a/pkgs/development/libraries/qt-5/modules/qtbase.nix +++ b/pkgs/development/libraries/qt-5/modules/qtbase.nix @@ -368,7 +368,7 @@ stdenv.mkDerivation { meta = with lib; { homepage = "https://www.qt.io/"; description = "A cross-platform application framework for C++"; - license = with licenses; [ fdl13 gpl2 lgpl21 lgpl3 ]; + license = with licenses; [ fdl13Plus gpl2Plus lgpl21Plus lgpl3Plus ]; maintainers = with maintainers; [ qknight ttuegel periklis bkchr ]; platforms = platforms.unix; # Qt5 is broken on aarch64-darwin diff --git a/pkgs/development/libraries/qt-5/qtModule.nix b/pkgs/development/libraries/qt-5/qtModule.nix index b74d5e086802..9abd9fabc957 100644 --- a/pkgs/development/libraries/qt-5/qtModule.nix +++ b/pkgs/development/libraries/qt-5/qtModule.nix @@ -70,7 +70,7 @@ mkDerivation (args // { meta = { homepage = "https://www.qt.io"; description = "A cross-platform application framework for C++"; - license = with licenses; [ fdl13 gpl2 lgpl21 lgpl3 ]; + license = with licenses; [ fdl13Plus gpl2Plus lgpl21Plus lgpl3Plus ]; maintainers = with maintainers; [ qknight ttuegel periklis bkchr ]; platforms = platforms.unix; } // (args.meta or {}); diff --git a/pkgs/development/libraries/qt-6/modules/qtbase.nix b/pkgs/development/libraries/qt-6/modules/qtbase.nix index 8717b94545b6..436fe4633075 100644 --- a/pkgs/development/libraries/qt-6/modules/qtbase.nix +++ b/pkgs/development/libraries/qt-6/modules/qtbase.nix @@ -257,7 +257,7 @@ stdenv.mkDerivation rec { meta = with lib; { homepage = "https://www.qt.io/"; description = "A cross-platform application framework for C++"; - license = with licenses; [ fdl13 gpl2 lgpl21 lgpl3 ]; + license = with licenses; [ fdl13Plus gpl2Plus lgpl21Plus lgpl3Plus ]; maintainers = with maintainers; [ milahu nickcao LunNova ]; platforms = platforms.linux; }; diff --git a/pkgs/development/libraries/qt-6/qtModule.nix b/pkgs/development/libraries/qt-6/qtModule.nix index 999d69ce683a..3ef0ea191a76 100644 --- a/pkgs/development/libraries/qt-6/qtModule.nix +++ b/pkgs/development/libraries/qt-6/qtModule.nix @@ -81,7 +81,7 @@ stdenv.mkDerivation (args // { meta = with lib; { homepage = "https://www.qt.io/"; description = "A cross-platform application framework for C++"; - license = with licenses; [ fdl13 gpl2 lgpl21 lgpl3 ]; + license = with licenses; [ fdl13Plus gpl2Plus lgpl21Plus lgpl3Plus ]; maintainers = with maintainers; [ milahu nickcao ]; platforms = platforms.linux; } // (args.meta or { }); diff --git a/pkgs/development/libraries/qt-mobility/default.nix b/pkgs/development/libraries/qt-mobility/default.nix index 60c1d2754d70..36e1948f09ec 100644 --- a/pkgs/development/libraries/qt-mobility/default.nix +++ b/pkgs/development/libraries/qt-mobility/default.nix @@ -47,7 +47,7 @@ stdenv.mkDerivation rec { homepage = "http://qt.nokia.com/products/qt-addons/mobility"; maintainers = [ maintainers.qknight ]; platforms = platforms.linux; - license = with licenses; [ bsd3 fdl13 gpl3 lgpl21 ]; + license = with licenses; [ bsd3 fdl13Plus gpl3Plus lgpl21Plus ]; }; } From d3b690da9b7a75dcd6c7d589e37a8c28845c12d8 Mon Sep 17 00:00:00 2001 From: Anders Kaseorg Date: Thu, 27 Oct 2022 16:22:06 -0400 Subject: [PATCH 06/30] =?UTF-8?q?mozillavpn:=202.9.0=20=E2=86=92=202.10.1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Anders Kaseorg --- pkgs/tools/networking/mozillavpn/default.nix | 57 ++++++++++++++++---- 1 file changed, 46 insertions(+), 11 deletions(-) diff --git a/pkgs/tools/networking/mozillavpn/default.nix b/pkgs/tools/networking/mozillavpn/default.nix index 4b7f63855bb2..d8641cb29d94 100644 --- a/pkgs/tools/networking/mozillavpn/default.nix +++ b/pkgs/tools/networking/mozillavpn/default.nix @@ -21,26 +21,38 @@ let pname = "mozillavpn"; - version = "2.9.0"; + version = "2.10.1"; src = fetchFromGitHub { owner = "mozilla-mobile"; repo = "mozilla-vpn-client"; rev = "v${version}"; fetchSubmodules = true; - hash = "sha256-arz8hTgQfPFSZesSddcnZoyLfoLQsQT8LIsl+3ZfA0M="; + hash = "sha256-am2acceDig7tjhkO5GiWfvkq0Mabyxedbc8mR49SXBU="; }; netfilter-go-modules = (buildGoModule { inherit pname version src; - vendorSha256 = "KFYMim5U8WlJHValvIBQgEN+17SDv0JVbH03IiyfDc0="; modRoot = "linux/netfilter"; + vendorHash = "sha256-Cmo0wnl0z5r1paaEf1MhCPbInWeoMhGjnxCxGh0cyO8="; }).go-modules; - cargoRoot = "extension/bridge"; + extensionBridgeDeps = rustPlatform.fetchCargoTarball { + inherit src; + name = "${pname}-${version}-extension-bridge"; + preBuild = "cd extension/bridge"; + hash = "sha256-sw6iylh3SgCDA1z/xvwNGWrCU2xr7IVPUL4fdOi43lc="; + }; + + signatureDeps = rustPlatform.fetchCargoTarball { + inherit src; + name = "${pname}-${version}-signature"; + preBuild = "cd signature"; + hash = "sha256-gBJIzTTo6i415aHwUsBriokUt2K/r55QCpC6Tv8GXh4="; + }; in stdenv.mkDerivation { - inherit pname version src cargoRoot; + inherit pname version src; buildInputs = [ polkit @@ -65,12 +77,18 @@ stdenv.mkDerivation { wrapQtAppsHook ]; - cargoDeps = rustPlatform.fetchCargoTarball { - inherit src; - name = "${pname}-${version}"; - preBuild = "cd ${cargoRoot}"; - hash = "sha256-lJfDLyoVDSFiZyWcBTI085MorWHPcNW4i7ua1+Ip3rA="; - }; + postUnpack = '' + pushd source/extension/bridge + cargoDeps='${extensionBridgeDeps}' cargoSetupPostUnpackHook + extensionBridgeDepsCopy="$cargoDepsCopy" + popd + + pushd source/signature + cargoDeps='${signatureDeps}' cargoSetupPostUnpackHook + signatureDepsCopy="$cargoDepsCopy" + popd + ''; + dontCargoSetupPostUnpack = true; postPatch = '' for file in linux/*.service linux/extra/*.desktop src/platforms/linux/daemon/*.service; do @@ -82,12 +100,28 @@ stdenv.mkDerivation { --replace 'rcc = os.path.join(qtbinpath, rcc_bin)' 'rcc = "${qtbase.dev}/libexec/rcc"' substituteInPlace src/cmake/linux.cmake \ + --replace '/etc/xdg/autostart' "$out/etc/xdg/autostart" \ + --replace '${"$"}{POLKIT_POLICY_DIR}' "$out/share/polkit-1/actions" \ + --replace '/usr/share/dbus-1' "$out/share/dbus-1" \ --replace '${"$"}{SYSTEMD_UNIT_DIR}' "$out/lib/systemd/system" + substituteInPlace extension/CMakeLists.txt \ + --replace '/etc' "$out/etc" + substituteInPlace src/connectionbenchmark/benchmarktaskdownload.cpp \ --replace 'QT_VERSION >= 0x060400' 'false' ln -s '${netfilter-go-modules}' linux/netfilter/vendor + + pushd extension/bridge + cargoDepsCopy="$extensionBridgeDepsCopy" cargoSetupPostPatchHook + popd + + pushd signature + cargoDepsCopy="$signatureDepsCopy" cargoSetupPostPatchHook + popd + + cargoSetupPostPatchHook() { true; } ''; cmakeFlags = [ @@ -95,6 +129,7 @@ stdenv.mkDerivation { "-DQT_LUPDATE_EXECUTABLE=${qttools.dev}/bin/lupdate" "-DQT_LRELEASE_EXECUTABLE=${qttools.dev}/bin/lrelease" ]; + dontFixCmake = true; qtWrapperArgs = [ "--prefix" "PATH" ":" (lib.makeBinPath [ wireguard-tools ]) ]; From b8f23688058053b84e25728556712a5573df0811 Mon Sep 17 00:00:00 2001 From: Damjan Georgievski Date: Sat, 29 Oct 2022 15:22:48 +0200 Subject: [PATCH 07/30] uwsgi: 2.0.20 -> 2.0.21 changelog: https://uwsgi-docs.readthedocs.io/en/latest/Changelog-2.0.21.html the `missing-arginfo-php8.patch` is removed, since it's already been merged upstream. additionally, when php is enabled, make sure uwsgi loads the ...php-with-extensions-/lib/php.ini file so that it will load all the extensions lastly, change the source to fetchFromGitHub, it seems the project web site is not that well maintained --- pkgs/servers/uwsgi/default.nix | 21 +++++--- pkgs/servers/uwsgi/missing-arginfo-php8.patch | 49 ------------------- 2 files changed, 14 insertions(+), 56 deletions(-) delete mode 100644 pkgs/servers/uwsgi/missing-arginfo-php8.patch diff --git a/pkgs/servers/uwsgi/default.nix b/pkgs/servers/uwsgi/default.nix index 2dc2c3230a82..95b89093a880 100644 --- a/pkgs/servers/uwsgi/default.nix +++ b/pkgs/servers/uwsgi/default.nix @@ -1,4 +1,4 @@ -{ stdenv, nixosTests, lib, fetchurl, pkg-config, jansson, pcre, libxcrypt +{ stdenv, nixosTests, lib, pkg-config, jansson, pcre, libxcrypt # plugins: list of strings, eg. [ "python2" "python3" ] , plugins ? [] , pam, withPAM ? stdenv.isLinux @@ -6,6 +6,7 @@ , libcap, withCap ? stdenv.isLinux , python2, python3, ncurses , ruby, php +, makeWrapper, fetchFromGitHub }: let php-embed = php.override { @@ -59,20 +60,21 @@ in stdenv.mkDerivation rec { pname = "uwsgi"; - version = "2.0.20"; + version = "2.0.21"; - src = fetchurl { - url = "https://projects.unbit.it/downloads/${pname}-${version}.tar.gz"; - sha256 = "1yfz5h07rxzrqf1rdj5fzhk47idgglxj7kqr8zl8lgcpv1kriaw8"; + src = fetchFromGitHub { + owner = "unbit"; + repo = "uwsgi"; + rev = version; + sha256 = "sha256-TUASYDyG+p1tlhmqi+ivaC7aW6UZBrPTFQUTYys5ICE="; }; patches = [ ./no-ext-session-php_session.h-on-NixOS.patch ./additional-php-ldflags.patch - ./missing-arginfo-php8.patch # https://github.com/unbit/uwsgi/issues/2356 ]; - nativeBuildInputs = [ python3 pkg-config ]; + nativeBuildInputs = [ python3 pkg-config makeWrapper ]; buildInputs = [ jansson pcre libxcrypt ] ++ lib.optional withPAM pam @@ -126,6 +128,11 @@ stdenv.mkDerivation rec { ${lib.concatMapStringsSep "\n" (x: x.install or "") needed} ''; + postFixup = lib.optionalString (builtins.any (x: x.name == "php") needed) + '' + wrapProgram $out/bin/uwsgi --set PHP_INI_SCAN_DIR ${php-embed}/lib + ''; + meta = with lib; { homepage = "https://uwsgi-docs.readthedocs.org/en/latest/"; description = "A fast, self-healing and developer/sysadmin-friendly application container server coded in pure C"; diff --git a/pkgs/servers/uwsgi/missing-arginfo-php8.patch b/pkgs/servers/uwsgi/missing-arginfo-php8.patch deleted file mode 100644 index 98a924e40279..000000000000 --- a/pkgs/servers/uwsgi/missing-arginfo-php8.patch +++ /dev/null @@ -1,49 +0,0 @@ -diff --git a/plugins/php/php_plugin.c b/plugins/php/php_plugin.c -index ca0ef6c1..00c39b09 100644 ---- a/plugins/php/php_plugin.c -+++ b/plugins/php/php_plugin.c -@@ -257,6 +257,9 @@ PHP_MINIT_FUNCTION(uwsgi_php_minit) { - return SUCCESS; - } - -+ZEND_BEGIN_ARG_INFO_EX(arginfo_void, 0, 0, 0) -+ZEND_END_ARG_INFO() -+ - PHP_FUNCTION(uwsgi_version) { - RETURN_STRING(UWSGI_VERSION); - } -@@ -488,20 +491,20 @@ PHP_FUNCTION(uwsgi_signal) { - } - - zend_function_entry uwsgi_php_functions[] = { -- PHP_FE(uwsgi_version, NULL) -- PHP_FE(uwsgi_setprocname, NULL) -- PHP_FE(uwsgi_worker_id, NULL) -- PHP_FE(uwsgi_masterpid, NULL) -- PHP_FE(uwsgi_signal, NULL) -- -- PHP_FE(uwsgi_rpc, NULL) -- -- PHP_FE(uwsgi_cache_get, NULL) -- PHP_FE(uwsgi_cache_set, NULL) -- PHP_FE(uwsgi_cache_update, NULL) -- PHP_FE(uwsgi_cache_del, NULL) -- PHP_FE(uwsgi_cache_clear, NULL) -- PHP_FE(uwsgi_cache_exists, NULL) -+ PHP_FE(uwsgi_version, arginfo_void) -+ PHP_FE(uwsgi_setprocname, arginfo_void) -+ PHP_FE(uwsgi_worker_id, arginfo_void) -+ PHP_FE(uwsgi_masterpid, arginfo_void) -+ PHP_FE(uwsgi_signal, arginfo_void) -+ -+ PHP_FE(uwsgi_rpc, arginfo_void) -+ -+ PHP_FE(uwsgi_cache_get, arginfo_void) -+ PHP_FE(uwsgi_cache_set, arginfo_void) -+ PHP_FE(uwsgi_cache_update, arginfo_void) -+ PHP_FE(uwsgi_cache_del, arginfo_void) -+ PHP_FE(uwsgi_cache_clear, arginfo_void) -+ PHP_FE(uwsgi_cache_exists, arginfo_void) - { NULL, NULL, NULL}, - }; - From 47ac939ed1a55a0daa3c6329b0bd3edc250a8234 Mon Sep 17 00:00:00 2001 From: Alexis Hildebrandt Date: Thu, 3 Nov 2022 10:05:34 +0100 Subject: [PATCH 08/30] musikcube: split dev output --- pkgs/applications/audio/musikcube/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/applications/audio/musikcube/default.nix b/pkgs/applications/audio/musikcube/default.nix index 9389d2d5e68f..38e96c7f098e 100644 --- a/pkgs/applications/audio/musikcube/default.nix +++ b/pkgs/applications/audio/musikcube/default.nix @@ -36,6 +36,8 @@ stdenv.mkDerivation rec { sha256 = "sha256-pnAdlCCqWzR0W8dF9CE48K8yHMVIx3egZlXvibxU18A="; }; + outputs = [ "out" "dev" ]; + nativeBuildInputs = [ cmake pkg-config From eb0b83a10495948fa0226d7dd73f9079e6870611 Mon Sep 17 00:00:00 2001 From: Alexis Hildebrandt Date: Fri, 4 Nov 2022 09:39:16 +0100 Subject: [PATCH 09/30] victor-mono: Move LICENSE.txt to fonts directory --- pkgs/data/fonts/victor-mono/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/data/fonts/victor-mono/default.nix b/pkgs/data/fonts/victor-mono/default.nix index e351cea9fdb4..f2909658b4cd 100644 --- a/pkgs/data/fonts/victor-mono/default.nix +++ b/pkgs/data/fonts/victor-mono/default.nix @@ -21,6 +21,7 @@ fetchzip { mv $out/OTF $out/share/fonts/opentype mv $out/TTF $out/share/fonts/truetype + mv $out/LICENSE.txt $out/share/fonts/$name-LICENSE.txt rm -r $out/{EOT,WOFF,WOFF2} ''; From 1df9c7e0ec20c679aae8a832fab5677f28dc5d77 Mon Sep 17 00:00:00 2001 From: Jiajie Chen Date: Mon, 7 Nov 2022 23:41:01 +0800 Subject: [PATCH 10/30] mucommander: 0.9.3-3 -> 1.1.0-1 --- .../file-managers/mucommander/default.nix | 95 ++++++++++++------- 1 file changed, 59 insertions(+), 36 deletions(-) diff --git a/pkgs/applications/file-managers/mucommander/default.nix b/pkgs/applications/file-managers/mucommander/default.nix index a91bb273f3e6..5e474f81f187 100644 --- a/pkgs/applications/file-managers/mucommander/default.nix +++ b/pkgs/applications/file-managers/mucommander/default.nix @@ -1,86 +1,109 @@ -{ lib, stdenv, fetchFromGitHub, gradle_6, perl, makeWrapper, jdk11, gsettings-desktop-schemas }: +{ lib +, stdenv +, fetchFromGitHub +, gradle_7 +, perl +, makeWrapper +, writeText +, jdk11 +, gsettings-desktop-schemas +}: let - version = "0.9.3-3"; + version = "1.1.0-1"; src = fetchFromGitHub { owner = "mucommander"; repo = "mucommander"; rev = version; - sha256 = "1zhglsx3b5k6np3ppfkkrqz9wg0j7ip598xxfgn75gjl020w0can"; + sha256 = "sha256-sCBbY3aBSuJmyOuy36pg8X2jX6hXwW8SW2UzYyp/isM="; }; postPatch = '' # there is no .git anyway substituteInPlace build.gradle \ - --replace "git = org.ajoberstar.grgit.Grgit.open(file('.'))" "" \ - --replace "revision = git.head().id" "revision = 'abcdefgh'" \ - --replace "proguard.enabled =" "// proguard.enabled =" \ - --replace "version = '0.9.4'" "version = '${version}'" - - # disable gradle plugins with native code and their targets - perl -i.bak1 -pe "s#(^\s*id '.+' version '.+'$)#// \1#" build.gradle - perl -i.bak2 -pe "s#(.*)#// \1# if /^(buildscript|task portable|task nsis|task proguard|task tgz|task\(afterEclipseImport\)|launch4j|macAppBundle|buildRpm|buildDeb|shadowJar)/ ... /^}/" build.gradle - - # fix source encoding - find . -type f -name build.gradle \ - -exec perl -i.bak3 -pe "s#(repositories\.jcenter\(\))# - \1 - compileJava.options.encoding = 'UTF-8' - compileTestJava.options.encoding = 'UTF-8' - #" {} \; + --replace "git = grgit.open(dir: project.rootDir)" "" \ + --replace "id 'org.ajoberstar.grgit' version '3.1.1'" "" \ + --replace "revision = git.head().id" "revision = '${version}'" ''; # fake build to pre-download deps into fixed-output derivation deps = stdenv.mkDerivation { pname = "mucommander-deps"; inherit version src postPatch; - nativeBuildInputs = [ gradle_6 perl ]; + nativeBuildInputs = [ gradle_7 perl ]; buildPhase = '' export GRADLE_USER_HOME=$(mktemp -d) - gradle --no-daemon build + gradle --no-daemon tgz ''; # perl code mavenizes pathes (com.squareup.okio/okio/1.13.0/a9283170b7305c8d92d25aff02a6ab7e45d06cbe/okio-1.13.0.jar -> com/squareup/okio/okio/1.13.0/okio-1.13.0.jar) + # reproducible by sorting installPhase = '' find $GRADLE_USER_HOME/caches/modules-2 -type f -regex '.*\.\(jar\|pom\)' \ + | LC_ALL=C sort \ | perl -pe 's#(.*/([^/]+)/([^/]+)/([^/]+)/[0-9a-f]{30,40}/([^/\s]+))$# ($x = $2) =~ tr|\.|/|; "install -Dm444 $1 \$out/$x/$3/$4/$5" #e' \ | sh + # copy maven-metadata.xml for commons-codec + # thankfully there is only one xml + cp $GRADLE_USER_HOME/caches/modules-2/resources-2.1/*/*/maven-metadata.xml $out/commons-codec/commons-codec/maven-metadata.xml ''; outputHashAlgo = "sha256"; outputHashMode = "recursive"; - outputHash = "1v5a76pvk7llbyv2rg50wlxc2wf468l2cslz1vi20aihycbyky7j"; + outputHash = "sha256-15ThPkvcmOfa5m/HMJzjrOOUi/BYbd57p5bBfj5/3n4="; }; -in stdenv.mkDerivation { +in +stdenv.mkDerivation rec { pname = "mucommander"; inherit version src postPatch; - nativeBuildInputs = [ gradle_6 perl makeWrapper ]; + nativeBuildInputs = [ gradle_7 perl makeWrapper ]; + + # Point to our local deps repo + gradleInit = writeText "init.gradle" '' + logger.lifecycle 'Replacing Maven repositories with ${deps}...' + gradle.projectsLoaded { + rootProject.allprojects { + buildscript { + repositories { + clear() + maven { url '${deps}' } + } + } + repositories { + clear() + maven { url '${deps}' } + } + } + } + settingsEvaluated { settings -> + settings.pluginManagement { + repositories { + maven { url '${deps}' } + } + } + } + ''; buildPhase = '' export GRADLE_USER_HOME=$(mktemp -d) - # point to offline repo - find . -type f -name build.gradle \ - -exec perl -i.bak3 -pe "s#repositories\.jcenter\(\)# - repositories { mavenLocal(); maven { url '${deps}' } } - #" {} \; - - gradle --offline --no-daemon distTar + gradle --offline --init-script ${gradleInit} --no-daemon tgz ''; installPhase = '' - mkdir $out - tar xvf build/distributions/mucommander-${version}.tar --directory=$out --strip=1 - wrapProgram $out/bin/mucommander \ + mkdir -p $out/share/mucommander + tar xvf build/distributions/mucommander-*.tgz --directory=$out/share/mucommander + + makeWrapper $out/share/mucommander/mucommander.sh $out/bin/mucommander \ --prefix XDG_DATA_DIRS : ${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name} \ --set JAVA_HOME ${jdk11} ''; meta = with lib; { - homepage = "http://www.mucommander.com/"; + homepage = "https://www.mucommander.com/"; description = "Cross-platform file manager"; license = licenses.gpl3; - maintainers = with maintainers; [ ]; + maintainers = with maintainers; [ jiegec ]; platforms = platforms.all; }; } From cbda4425eccd61e4ab2d2833342507a310c417c3 Mon Sep 17 00:00:00 2001 From: Nick Cao Date: Tue, 8 Nov 2022 13:22:46 +0800 Subject: [PATCH 11/30] linuxPackages.nvidia_x11.open: set platforms to only x86_64-linux --- pkgs/os-specific/linux/nvidia-x11/open.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/os-specific/linux/nvidia-x11/open.nix b/pkgs/os-specific/linux/nvidia-x11/open.nix index 3e21dade83ae..b3d0d876aec6 100644 --- a/pkgs/os-specific/linux/nvidia-x11/open.nix +++ b/pkgs/os-specific/linux/nvidia-x11/open.nix @@ -33,7 +33,7 @@ stdenv.mkDerivation { description = "NVIDIA Linux Open GPU Kernel Module"; homepage = "https://github.com/NVIDIA/open-gpu-kernel-modules"; license = with licenses; [ gpl2Plus mit ]; - platforms = platforms.linux; + platforms = [ "x86_64-linux" ]; maintainers = with maintainers; [ nickcao ]; inherit broken; }; From 6ee6ee226baa77082b1bfdc851e34af6a2283731 Mon Sep 17 00:00:00 2001 From: Nick Cao Date: Tue, 8 Nov 2022 13:31:56 +0800 Subject: [PATCH 12/30] julia: refresh patches, disable failing Zlib_jll version test --- .../patches/1.8/0001-skip-symlink-system-libraries.patch | 6 +++--- .../julia/patches/1.8/0002-skip-building-doc.patch | 6 +++--- .../julia/patches/1.8/0003-skip-failing-tests.patch | 8 ++++---- .../0004-ignore-absolute-path-when-loading-library.patch | 6 +++--- 4 files changed, 13 insertions(+), 13 deletions(-) diff --git a/pkgs/development/compilers/julia/patches/1.8/0001-skip-symlink-system-libraries.patch b/pkgs/development/compilers/julia/patches/1.8/0001-skip-symlink-system-libraries.patch index 5a1fdc1e75fd..a5519d96a9d2 100644 --- a/pkgs/development/compilers/julia/patches/1.8/0001-skip-symlink-system-libraries.patch +++ b/pkgs/development/compilers/julia/patches/1.8/0001-skip-symlink-system-libraries.patch @@ -1,4 +1,4 @@ -From f342b6bfab5eee9c7fea9ddc8804d9a5ff6953eb Mon Sep 17 00:00:00 2001 +From 1faa30525c9671ffd3a08901896b521a040d7e5c Mon Sep 17 00:00:00 2001 From: Nick Cao Date: Tue, 20 Sep 2022 18:42:08 +0800 Subject: [PATCH 1/4] skip symlink system libraries @@ -8,7 +8,7 @@ Subject: [PATCH 1/4] skip symlink system libraries 1 file changed, 2 deletions(-) diff --git a/base/Makefile b/base/Makefile -index 23a9c40..12f92aa 100644 +index 23a9c4011..12f92aa05 100644 --- a/base/Makefile +++ b/base/Makefile @@ -181,7 +181,6 @@ $$(build_private_libdir)/$$(libname_$2): @@ -28,5 +28,5 @@ index 23a9c40..12f92aa 100644 endif -- -2.37.2 +2.38.1 diff --git a/pkgs/development/compilers/julia/patches/1.8/0002-skip-building-doc.patch b/pkgs/development/compilers/julia/patches/1.8/0002-skip-building-doc.patch index 8b3da95ba915..64c0821eaba8 100644 --- a/pkgs/development/compilers/julia/patches/1.8/0002-skip-building-doc.patch +++ b/pkgs/development/compilers/julia/patches/1.8/0002-skip-building-doc.patch @@ -1,4 +1,4 @@ -From 6a7723be33261cdc302e0f7bdb37fb50d30cc5fc Mon Sep 17 00:00:00 2001 +From 05c008dcabaf94f5623f2f7e267005eef0a8c5fc Mon Sep 17 00:00:00 2001 From: Nick Cao Date: Tue, 20 Sep 2022 18:42:31 +0800 Subject: [PATCH 2/4] skip building doc @@ -8,7 +8,7 @@ Subject: [PATCH 2/4] skip building doc 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile -index d38311d..a775d36 100644 +index d38311dce..a775d36e1 100644 --- a/Makefile +++ b/Makefile @@ -227,7 +227,7 @@ define stringreplace @@ -21,5 +21,5 @@ index d38311d..a775d36 100644 @$(MAKE) $(QUIET_MAKE) all else -- -2.37.2 +2.38.1 diff --git a/pkgs/development/compilers/julia/patches/1.8/0003-skip-failing-tests.patch b/pkgs/development/compilers/julia/patches/1.8/0003-skip-failing-tests.patch index 2d6745c8a215..f2b5825c0e5e 100644 --- a/pkgs/development/compilers/julia/patches/1.8/0003-skip-failing-tests.patch +++ b/pkgs/development/compilers/julia/patches/1.8/0003-skip-failing-tests.patch @@ -1,4 +1,4 @@ -From a57c582eabc4703ed627b32f7f11893db9676fb6 Mon Sep 17 00:00:00 2001 +From 756d4e977f8f224e20effa82c612e5a9cc14d82e Mon Sep 17 00:00:00 2001 From: Nick Cao Date: Tue, 20 Sep 2022 18:42:59 +0800 Subject: [PATCH 3/4] skip failing tests @@ -8,7 +8,7 @@ Subject: [PATCH 3/4] skip failing tests 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/Makefile b/test/Makefile -index 24e137a..0e82acf 100644 +index 24e137a5b..c17ccea8a 100644 --- a/test/Makefile +++ b/test/Makefile @@ -23,7 +23,7 @@ default: @@ -16,10 +16,10 @@ index 24e137a..0e82acf 100644 $(TESTS): @cd $(SRCDIR) && \ - $(call PRINT_JULIA, $(call spawn,$(JULIA_EXECUTABLE)) --check-bounds=yes --startup-file=no --depwarn=error ./runtests.jl $@) -+ $(call PRINT_JULIA, $(call spawn,$(JULIA_EXECUTABLE)) --check-bounds=yes --startup-file=no --depwarn=error ./runtests.jl --skip LibGit2_jll --skip MozillaCACerts_jll --skip NetworkOptions --skip nghttp2_jll $@) ++ $(call PRINT_JULIA, $(call spawn,$(JULIA_EXECUTABLE)) --check-bounds=yes --startup-file=no --depwarn=error ./runtests.jl --skip LibGit2_jll --skip MozillaCACerts_jll --skip NetworkOptions --skip nghttp2_jll --skip Zlib_jll $@) $(addprefix revise-, $(TESTS)): revise-% : @cd $(SRCDIR) && \ -- -2.37.2 +2.38.1 diff --git a/pkgs/development/compilers/julia/patches/1.8/0004-ignore-absolute-path-when-loading-library.patch b/pkgs/development/compilers/julia/patches/1.8/0004-ignore-absolute-path-when-loading-library.patch index eefde7c6b03b..2243565b394e 100644 --- a/pkgs/development/compilers/julia/patches/1.8/0004-ignore-absolute-path-when-loading-library.patch +++ b/pkgs/development/compilers/julia/patches/1.8/0004-ignore-absolute-path-when-loading-library.patch @@ -1,4 +1,4 @@ -From a60100f06f48fbb4697aced65175bf3d41185e3e Mon Sep 17 00:00:00 2001 +From c0e587f4c50bd7bedfe6e5102e9b47c9704fac9b Mon Sep 17 00:00:00 2001 From: Nick Cao Date: Tue, 20 Sep 2022 18:43:15 +0800 Subject: [PATCH 4/4] ignore absolute path when loading library @@ -8,7 +8,7 @@ Subject: [PATCH 4/4] ignore absolute path when loading library 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/cli/loader_lib.c b/cli/loader_lib.c -index 0301b6e..5cbda61 100644 +index 0301b6eed..5cbda61af 100644 --- a/cli/loader_lib.c +++ b/cli/loader_lib.c @@ -50,9 +50,7 @@ static void * load_library(const char * rel_path, const char * src_dir, int err) @@ -23,5 +23,5 @@ index 0301b6e..5cbda61 100644 #if defined(_OS_WINDOWS_) wchar_t wpath[2*JL_PATH_MAX + 1] = {0}; -- -2.37.2 +2.38.1 From 04a590b89aafd5d7d415bc6b89808474531280c9 Mon Sep 17 00:00:00 2001 From: OPNA2608 Date: Tue, 8 Nov 2022 21:14:28 +0100 Subject: [PATCH 13/30] np2kai: Fix build --- pkgs/applications/emulators/np2kai/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/applications/emulators/np2kai/default.nix b/pkgs/applications/emulators/np2kai/default.nix index cf55085b78a1..4e2f01ade369 100644 --- a/pkgs/applications/emulators/np2kai/default.nix +++ b/pkgs/applications/emulators/np2kai/default.nix @@ -124,7 +124,7 @@ stdenv.mkDerivation rec { configurePhase = '' export GIT_VERSION=${builtins.substring 0 7 src.rev} - buildFlags="$buildFlags ''${enableParallelBuilding:+-j$NIX_BUILD_CORES" + buildFlags="$buildFlags ''${enableParallelBuilding:+-j$NIX_BUILD_CORES}" '' + optionalString enableX11 '' cd x11 substituteInPlace Makefile.am \ From 379fc293524cc53eae19c9088e2481d820056534 Mon Sep 17 00:00:00 2001 From: Raphael Robatsch Date: Tue, 8 Nov 2022 09:44:09 +0000 Subject: [PATCH 14/30] pkgsi686Linux.mumble: fix build Fixes 'static assertion failed: static_assert(sizeof(CCameraAngles) == 0x408, "");' when compiling pkgsi686Linux.mumble, which is a dependency of x64 mumble_overlay. --- pkgs/applications/networking/mumble/default.nix | 13 ++++++++++++- pkgs/applications/networking/mumble/overlay.nix | 1 + 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/pkgs/applications/networking/mumble/default.nix b/pkgs/applications/networking/mumble/default.nix index 890930ba89a2..6a705959a11e 100644 --- a/pkgs/applications/networking/mumble/default.nix +++ b/pkgs/applications/networking/mumble/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchFromGitHub, pkg-config, qt5, cmake +{ lib, stdenv, fetchFromGitHub, fetchpatch, pkg-config, qt5, cmake , avahi, boost, libopus, libsndfile, protobuf, speex, libcap , alsa-lib, python3 , rnnoise @@ -108,6 +108,17 @@ let sha256 = "sha256-SYsGCuj3HeyAQRUecGLaRdJR9Rm7lbaM54spY/zx0jU="; fetchSubmodules = true; }; + + patches = [ + # fixes 'static assertion failed: static_assert(sizeof(CCameraAngles) == 0x408, "");' + # when compiling pkgsi686Linux.mumble, which is a dependency of x64 mumble_overlay + # https://github.com/mumble-voip/mumble/pull/5850 + # Remove with next version update + (fetchpatch { + url = "https://github.com/mumble-voip/mumble/commit/13c051b36b387356815cff5d685bc628b74ba136.patch"; + hash = "sha256-Rq8fb6NFd4DCNWm6OOMYIP7tBllufmQcB5CSxPU4qqg="; + }) + ]; }; in { mumble = client source; diff --git a/pkgs/applications/networking/mumble/overlay.nix b/pkgs/applications/networking/mumble/overlay.nix index f9a716cecb55..72474d391477 100644 --- a/pkgs/applications/networking/mumble/overlay.nix +++ b/pkgs/applications/networking/mumble/overlay.nix @@ -8,6 +8,7 @@ in stdenv.mkDerivation { version = mumble.version; inherit (mumble) src; + patches = mumble.patches or []; installPhase = '' mkdir -p $out/lib From 341b9f80d2d94a8170139919a4eec317390460c8 Mon Sep 17 00:00:00 2001 From: ajs124 Date: Wed, 9 Nov 2022 01:58:00 +0100 Subject: [PATCH 15/30] libmysqlconnectorcpp: 8.0.30 -> 8.0.31 --- pkgs/development/libraries/libmysqlconnectorcpp/default.nix | 4 ++-- pkgs/top-level/all-packages.nix | 4 +--- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/pkgs/development/libraries/libmysqlconnectorcpp/default.nix b/pkgs/development/libraries/libmysqlconnectorcpp/default.nix index 06ceccb793aa..d8948b08672c 100644 --- a/pkgs/development/libraries/libmysqlconnectorcpp/default.nix +++ b/pkgs/development/libraries/libmysqlconnectorcpp/default.nix @@ -8,11 +8,11 @@ stdenv.mkDerivation rec { pname = "libmysqlconnectorcpp"; - version = "8.0.30"; + version = "8.0.31"; src = fetchurl { url = "https://cdn.mysql.com/Downloads/Connector-C++/mysql-connector-c++-${version}-src.tar.gz"; - sha256 = "sha256-WyzuvjmG/m1rDG8ptpEss6HKv5mNLExBJ0UnaN51qws="; + hash = "sha256-HSF7yEybmzzDQvl1cwUZ/mlXqVXxnIHqg2a/HfJtELA="; }; nativeBuildInputs = [ diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 04a672f2e5a8..910814b17773 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -20406,9 +20406,7 @@ with pkgs; libmysofa = callPackage ../development/libraries/audio/libmysofa { }; - libmysqlconnectorcpp = callPackage ../development/libraries/libmysqlconnectorcpp { - openssl = openssl_1_1; - }; + libmysqlconnectorcpp = callPackage ../development/libraries/libmysqlconnectorcpp {}; libnatpmp = callPackage ../development/libraries/libnatpmp { }; From a054dab33ed58ec162c38c043d85b2ab0f1b2fce Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stanis=C5=82aw=20Pitucha?= Date: Wed, 9 Nov 2022 12:50:47 +1100 Subject: [PATCH 16/30] log4shib: fix darwin build --- pkgs/development/libraries/log4shib/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/libraries/log4shib/default.nix b/pkgs/development/libraries/log4shib/default.nix index 1c9a6a1e2ac7..e204fa92bfd1 100644 --- a/pkgs/development/libraries/log4shib/default.nix +++ b/pkgs/development/libraries/log4shib/default.nix @@ -12,7 +12,7 @@ stdenv.mkDerivation { nativeBuildInputs = [ autoreconfHook ]; - NIX_CFLAGS_COMPILE = [ "-std=c++11" ]; + CXXFLAGS = "-std=c++11"; meta = with lib; { description = "A forked version of log4cpp that has been created for the Shibboleth project"; From d00d56fedf027ec5d010e7d6bd453eaa28160da8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stanis=C5=82aw=20Pitucha?= Date: Wed, 9 Nov 2022 13:01:05 +1100 Subject: [PATCH 17/30] libftdi: fix darwin build --- pkgs/development/libraries/libftdi/default.nix | 11 +++++++++-- pkgs/top-level/all-packages.nix | 5 ++++- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/libftdi/default.nix b/pkgs/development/libraries/libftdi/default.nix index 68801883df9d..d177f7369a04 100644 --- a/pkgs/development/libraries/libftdi/default.nix +++ b/pkgs/development/libraries/libftdi/default.nix @@ -1,4 +1,11 @@ -{lib, stdenv, fetchurl, libusb-compat-0_1}: +{ lib +, stdenv +, fetchurl +, libusb-compat-0_1 +, Security +, IOKit +, libobjc +}: stdenv.mkDerivation rec { pname = "libftdi"; @@ -9,7 +16,7 @@ stdenv.mkDerivation rec { sha256 = "13l39f6k6gff30hsgh0wa2z422g9pyl91rh8a8zz6f34k2sxaxii"; }; - buildInputs = [ libusb-compat-0_1 ]; + buildInputs = [ libusb-compat-0_1 ] ++ lib.optionals stdenv.isDarwin [ libobjc Security IOKit ]; propagatedBuildInputs = [ libusb-compat-0_1 ]; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 04a672f2e5a8..043d3cac8609 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -20271,7 +20271,10 @@ with pkgs; inherit (darwin) libobjc; }; - libftdi = callPackage ../development/libraries/libftdi { }; + libftdi = callPackage ../development/libraries/libftdi { + inherit (darwin) libobjc; + inherit (darwin.apple_sdk.frameworks) IOKit Security; + }; libftdi1 = callPackage ../development/libraries/libftdi/1.x.nix { }; From d4965f6ef8ae3e8a4dec73eabea21ed4debfc78f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stanis=C5=82aw=20Pitucha?= Date: Wed, 9 Nov 2022 16:52:11 +1100 Subject: [PATCH 18/30] butler: fix darwin build --- pkgs/games/itch/butler.nix | 17 ++++++++++++++++- pkgs/top-level/all-packages.nix | 4 +++- 2 files changed, 19 insertions(+), 2 deletions(-) diff --git a/pkgs/games/itch/butler.nix b/pkgs/games/itch/butler.nix index 68f1bac49e90..d6d9075997a3 100644 --- a/pkgs/games/itch/butler.nix +++ b/pkgs/games/itch/butler.nix @@ -1,6 +1,9 @@ { lib , buildGoModule , fetchFromGitHub +, stdenv +, Cocoa +, fetchpatch }: buildGoModule rec { @@ -14,9 +17,21 @@ buildGoModule rec { sha256 = "sha256-vciSmXR3wI3KcnC+Uz36AgI/WUfztA05MJv1InuOjJM="; }; + buildInputs = lib.optionals stdenv.isDarwin [ + Cocoa + ]; + + patches = [ + # update x/sys dependency for darwin build https://github.com/itchio/butler/pull/245 + (fetchpatch { + url = "https://github.com/itchio/butler/pull/245/commits/ef651d373e3061fda9692dd44ae0f7ce215e9655.patch"; + hash = "sha256-rZZn/OGiv3mRyy89uORyJ99zWN21kZCCQAlFvSKxlPU="; + }) + ]; + proxyVendor = true; - vendorSha256 = "sha256-EIl0ZFDKbZopUR22hp5a2vRUu0O1h1O953NrtoNa2x8="; + vendorSha256 = "sha256-CtBwc5mcgLvl2Bvg5gI+ULJMQEEibx1aN3IpmRNUtwE="; doCheck = false; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 04a672f2e5a8..be7bf5a0ef10 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1285,7 +1285,9 @@ with pkgs; asleap = callPackage ../tools/networking/asleap { }; - butler = callPackage ../games/itch/butler.nix { }; + butler = callPackage ../games/itch/butler.nix { + inherit (darwin.apple_sdk.frameworks) Cocoa; + }; cf-vault = callPackage ../tools/admin/cf-vault { }; From 5d5c6ded1a57c8c8d0d74ef8d5e4d664ec4fbcd5 Mon Sep 17 00:00:00 2001 From: Weijia Wang <9713184+wegank@users.noreply.github.com> Date: Wed, 9 Nov 2022 18:19:45 +0100 Subject: [PATCH 19/30] root: 6.26.06 -> 6.26.08 --- pkgs/applications/science/misc/root/default.nix | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/pkgs/applications/science/misc/root/default.nix b/pkgs/applications/science/misc/root/default.nix index 5ae80c745bdc..d8788c559e00 100644 --- a/pkgs/applications/science/misc/root/default.nix +++ b/pkgs/applications/science/misc/root/default.nix @@ -1,6 +1,6 @@ { stdenv , lib -, fetchurl +, fetchFromGitHub , fetchpatch , makeWrapper , cmake @@ -44,7 +44,7 @@ let _llvm_9 = llvm_9.overrideAttrs (prev: { - patches = (prev.patches or []) ++ [ + patches = (prev.patches or [ ]) ++ [ (fetchpatch { url = "https://github.com/root-project/root/commit/a9c961cf4613ff1f0ea50f188e4a4b0eb749b17d.diff"; stripLen = 3; @@ -57,11 +57,13 @@ in stdenv.mkDerivation rec { pname = "root"; - version = "6.26.06"; + version = "6.26.08"; - src = fetchurl { - url = "https://root.cern.ch/download/root_v${version}.source.tar.gz"; - hash = "sha256-sfc8l2pYClxWyMigFSWCod/FYLTdgOG3VFI3tl5sics="; + src = fetchFromGitHub { + owner = "root-project"; + repo = "root"; + rev = "v${builtins.replaceStrings [ "." ] [ "-" ] version}"; + sha256 = "sha256-cNd1GvEbO/a+WdDe8EHYGmdlw3TrOT2fWaSk+s7fw7U="; }; nativeBuildInputs = [ makeWrapper cmake pkg-config git ]; From 4e96b3488e59c6c1f403b992567e753cc1349cc7 Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Mon, 31 Oct 2022 22:15:52 +0000 Subject: [PATCH 20/30] =?UTF-8?q?sublime4-dev:=204137=20=E2=86=92=204141?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pkgs/applications/editors/sublime/4/packages.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/editors/sublime/4/packages.nix b/pkgs/applications/editors/sublime/4/packages.nix index 5d03b2083728..512ac86210aa 100644 --- a/pkgs/applications/editors/sublime/4/packages.nix +++ b/pkgs/applications/editors/sublime/4/packages.nix @@ -11,9 +11,9 @@ in } {}; sublime4-dev = common { - buildVersion = "4137"; + buildVersion = "4141"; dev = true; - x64sha256 = "oGBPoqVwTIQfIzh/8fEOOrZkrbzT0tG23ASeHbN/OMk="; - aarch64sha256 = "7mqYSoggfrcRoDh+QfA4rW0qvF2ZpiUY5yVxhxZKsfE="; + x64sha256 = "eFo9v4hSrp1gV56adVyFB9sOApOXlKNvVBW0wbFYG4g="; + aarch64sha256 = "MmwSptvSH507+X9GT8GC4tzZFzEfT2pKc+/Qu5SbMkM="; } {}; } From 444a64008a10a0566c6999f88fa9cd0ed4d0d9d2 Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Wed, 9 Nov 2022 16:58:15 +0000 Subject: [PATCH 21/30] =?UTF-8?q?sublime-merge-dev:=202076=20=E2=86=92=202?= =?UTF-8?q?078?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../applications/version-management/sublime-merge/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/version-management/sublime-merge/default.nix b/pkgs/applications/version-management/sublime-merge/default.nix index 5cbb4fe1ba9f..a018a5e56ab2 100644 --- a/pkgs/applications/version-management/sublime-merge/default.nix +++ b/pkgs/applications/version-management/sublime-merge/default.nix @@ -9,8 +9,8 @@ in { } {}; sublime-merge-dev = common { - buildVersion = "2076"; - x64sha256 = "k43D+TqS1DImpJKzYuf3LqmsxF3XF9Fwqn2txL13xAA="; + buildVersion = "2078"; + x64sha256 = "33oJOnsOUr9W+OGMetafaGtXUa+CHxxLjmtDoZliw0k="; dev = true; } {}; } From 544af65981cb2d7609f8ac585258e55c19918c16 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 9 Nov 2022 18:53:24 +0000 Subject: [PATCH 22/30] jackett: 0.20.2175 -> 0.20.2225 --- 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 b669950c5c14..8004993a2094 100644 --- a/pkgs/servers/jackett/default.nix +++ b/pkgs/servers/jackett/default.nix @@ -9,13 +9,13 @@ buildDotnetModule rec { pname = "jackett"; - version = "0.20.2175"; + version = "0.20.2225"; src = fetchFromGitHub { owner = pname; repo = pname; rev = "v${version}"; - sha256 = "MkMEsD8hU23RPvLJvEN2IT5BiuE1ySuVRLmPK2Yqsa0="; + sha256 = "HrI0B5gvN/UC9TmErwsmRc85aqCXfYYEQfPkRchHY5Q="; }; projectFile = "src/Jackett.Server/Jackett.Server.csproj"; From ef527a4a2bbdc1b496500a4a38b12637c8fe21d3 Mon Sep 17 00:00:00 2001 From: Andrew Morgan <1342360+anoadragon453@users.noreply.github.com> Date: Wed, 9 Nov 2022 19:46:13 +0000 Subject: [PATCH 23/30] ardour: 6.9 -> 7.1 (#196290) --- pkgs/applications/audio/ardour/6.nix | 191 +++++++++++++++++++++ pkgs/applications/audio/ardour/default.nix | 49 ++++-- pkgs/top-level/all-packages.nix | 1 + 3 files changed, 223 insertions(+), 18 deletions(-) create mode 100644 pkgs/applications/audio/ardour/6.nix diff --git a/pkgs/applications/audio/ardour/6.nix b/pkgs/applications/audio/ardour/6.nix new file mode 100644 index 000000000000..140d20c2aad5 --- /dev/null +++ b/pkgs/applications/audio/ardour/6.nix @@ -0,0 +1,191 @@ +{ lib, stdenv +, fetchgit +, alsa-lib +, aubio +, boost +, cairomm +, cppunit +, curl +, dbus +, doxygen +, ffmpeg +, fftw +, fftwSinglePrec +, flac +, glibc +, glibmm +, graphviz +, gtkmm2 +, harvid +, itstool +, libarchive +, libjack2 +, liblo +, libogg +, libpulseaudio +, librdf_raptor +, librdf_rasqal +, libsamplerate +, libsigcxx +, libsndfile +, libusb1 +, libuv +, libwebsockets +, libxml2 +, libxslt +, lilv +, lrdf +, lv2 +, makeWrapper +, pango +, perl +, pkg-config +, python3 +, readline +, rubberband +, serd +, sord +, soundtouch +, sratom +, suil +, taglib +, vamp-plugin-sdk +, wafHook +, xjadeo +, videoSupport ? true +}: +stdenv.mkDerivation rec { + pname = "ardour"; + version = "6.9"; + + # We can't use `fetchFromGitea` here, as attempting to fetch release archives from git.ardour.org + # result in an empty archive. See https://tracker.ardour.org/view.php?id=7328 for more info. + src = fetchgit { + url = "git://git.ardour.org/ardour/ardour.git"; + rev = version; + sha256 = "0vlcbd70y0an881zv87kc3akmaiz4w7whsy3yaiiqqjww35jg1mm"; + }; + + patches = [ + # AS=as in the environment causes build failure https://tracker.ardour.org/view.php?id=8096 + ./as-flags.patch + ]; + + nativeBuildInputs = [ + doxygen + graphviz # for dot + itstool + makeWrapper + perl + pkg-config + python3 + wafHook + ]; + + buildInputs = [ + alsa-lib + aubio + boost + cairomm + cppunit + curl + dbus + ffmpeg + fftw + fftwSinglePrec + flac + glibmm + gtkmm2 + itstool + libarchive + libjack2 + liblo + libogg + libpulseaudio + librdf_raptor + librdf_rasqal + libsamplerate + libsigcxx + libsndfile + libusb1 + libuv + libwebsockets + libxml2 + libxslt + lilv + lrdf + lv2 + pango + perl + python3 + readline + rubberband + serd + sord + soundtouch + sratom + suil + taglib + vamp-plugin-sdk + ] ++ lib.optionals videoSupport [ harvid xjadeo ]; + + wafConfigureFlags = [ + "--cxx11" + "--docs" + "--freedesktop" + "--no-phone-home" + "--optimize" + "--ptformat" + "--run-tests" + "--test" + ]; + # removed because it fixes https://tracker.ardour.org/view.php?id=8161 and https://tracker.ardour.org/view.php?id=8437 + # "--use-external-libs" + + # Ardour's wscript requires git revision and date to be available. + # Since they are not, let's generate the file manually. + postPatch = '' + printf '#include "libs/ardour/ardour/revision.h"\nnamespace ARDOUR { const char* revision = "${version}"; const char* date = ""; }\n' > libs/ardour/revision.cc + sed 's|/usr/include/libintl.h|${glibc.dev}/include/libintl.h|' -i wscript + patchShebangs ./tools/ + substituteInPlace libs/ardour/video_tools_paths.cc \ + --replace 'ffmpeg_exe = X_("");' 'ffmpeg_exe = X_("${ffmpeg}/bin/ffmpeg");' \ + --replace 'ffprobe_exe = X_("");' 'ffprobe_exe = X_("${ffmpeg}/bin/ffprobe");' + ''; + + postInstall = '' + # wscript does not install these for some reason + install -vDm 644 "build/gtk2_ardour/ardour.xml" \ + -t "$out/share/mime/packages" + install -vDm 644 "build/gtk2_ardour/ardour6.desktop" \ + -t "$out/share/applications" + for size in 16 22 32 48 256 512; do + install -vDm 644 "gtk2_ardour/resources/Ardour-icon_''${size}px.png" \ + "$out/share/icons/hicolor/''${size}x''${size}/apps/ardour6.png" + done + install -vDm 644 "ardour.1"* -t "$out/share/man/man1" + '' + lib.optionalString videoSupport '' + # `harvid` and `xjadeo` must be accessible in `PATH` for video to work. + wrapProgram "$out/bin/ardour6" \ + --prefix PATH : "${lib.makeBinPath [ harvid xjadeo ]}" + ''; + + LINKFLAGS = "-lpthread"; + + meta = with lib; { + description = "Multi-track hard disk recording software"; + longDescription = '' + Ardour is a digital audio workstation (DAW), You can use it to + record, edit and mix multi-track audio and midi. Produce your + own CDs. Mix video soundtracks. Experiment with new ideas about + music and sound. + + Please consider supporting the ardour project financially: + https://community.ardour.org/donate + ''; + homepage = "https://ardour.org/"; + license = licenses.gpl2Plus; + platforms = platforms.linux; + maintainers = with maintainers; [ goibhniu magnetophon mitchmindtree ]; + }; +} diff --git a/pkgs/applications/audio/ardour/default.nix b/pkgs/applications/audio/ardour/default.nix index d5afcac86cd4..44b54111fd36 100644 --- a/pkgs/applications/audio/ardour/default.nix +++ b/pkgs/applications/audio/ardour/default.nix @@ -1,5 +1,7 @@ -{ lib, stdenv +{ lib +, stdenv , fetchgit +, fetchzip , alsa-lib , aubio , boost @@ -56,13 +58,21 @@ }: stdenv.mkDerivation rec { pname = "ardour"; - version = "6.9"; + version = "7.1"; - # don't fetch releases from the GitHub mirror, they are broken + # We can't use `fetchFromGitea` here, as attempting to fetch release archives from git.ardour.org + # result in an empty archive. See https://tracker.ardour.org/view.php?id=7328 for more info. src = fetchgit { url = "git://git.ardour.org/ardour/ardour.git"; rev = version; - sha256 = "0vlcbd70y0an881zv87kc3akmaiz4w7whsy3yaiiqqjww35jg1mm"; + hash = "sha256-eLF9n71tjdPA+ks0B8UonmPZqRgcZEA7ok79+m9PioU="; + }; + + bundledContent = fetchzip { + url = "https://web.archive.org/web/20221026200824/http://stuff.ardour.org/loops/ArdourBundledMedia.zip"; + hash = "sha256-IbPQWFeyMuvCoghFl1ZwZNNcSvLNsH84rGArXnw+t7A="; + # archive does not contain a single folder at the root + stripRoot = false; }; patches = [ @@ -70,6 +80,17 @@ stdenv.mkDerivation rec { ./as-flags.patch ]; + # Ardour's wscript requires git revision and date to be available. + # Since they are not, let's generate the file manually. + postPatch = '' + printf '#include "libs/ardour/ardour/revision.h"\nnamespace ARDOUR { const char* revision = "${version}"; const char* date = ""; }\n' > libs/ardour/revision.cc + sed 's|/usr/include/libintl.h|${glibc.dev}/include/libintl.h|' -i wscript + patchShebangs ./tools/ + substituteInPlace libs/ardour/video_tools_paths.cc \ + --replace 'ffmpeg_exe = X_("");' 'ffmpeg_exe = X_("${ffmpeg}/bin/ffmpeg");' \ + --replace 'ffprobe_exe = X_("");' 'ffprobe_exe = X_("${ffmpeg}/bin/ffprobe");' + ''; + nativeBuildInputs = [ doxygen graphviz # for dot @@ -141,31 +162,23 @@ stdenv.mkDerivation rec { # removed because it fixes https://tracker.ardour.org/view.php?id=8161 and https://tracker.ardour.org/view.php?id=8437 # "--use-external-libs" - # Ardour's wscript requires git revision and date to be available. - # Since they are not, let's generate the file manually. - postPatch = '' - printf '#include "libs/ardour/ardour/revision.h"\nnamespace ARDOUR { const char* revision = "${version}"; const char* date = ""; }\n' > libs/ardour/revision.cc - sed 's|/usr/include/libintl.h|${glibc.dev}/include/libintl.h|' -i wscript - patchShebangs ./tools/ - substituteInPlace libs/ardour/video_tools_paths.cc \ - --replace 'ffmpeg_exe = X_("");' 'ffmpeg_exe = X_("${ffmpeg}/bin/ffmpeg");' \ - --replace 'ffprobe_exe = X_("");' 'ffprobe_exe = X_("${ffmpeg}/bin/ffprobe");' - ''; - postInstall = '' # wscript does not install these for some reason install -vDm 644 "build/gtk2_ardour/ardour.xml" \ -t "$out/share/mime/packages" - install -vDm 644 "build/gtk2_ardour/ardour6.desktop" \ + install -vDm 644 "build/gtk2_ardour/ardour${lib.versions.major version}.desktop" \ -t "$out/share/applications" for size in 16 22 32 48 256 512; do install -vDm 644 "gtk2_ardour/resources/Ardour-icon_''${size}px.png" \ - "$out/share/icons/hicolor/''${size}x''${size}/apps/ardour6.png" + "$out/share/icons/hicolor/''${size}x''${size}/apps/ardour${lib.versions.major version}.png" done install -vDm 644 "ardour.1"* -t "$out/share/man/man1" + + # install additional bundled beats, chords and progressions + cp -rp "${bundledContent}"/* "$out/share/ardour${lib.versions.major version}/media" '' + lib.optionalString videoSupport '' # `harvid` and `xjadeo` must be accessible in `PATH` for video to work. - wrapProgram "$out/bin/ardour6" \ + wrapProgram "$out/bin/ardour${lib.versions.major version}" \ --prefix PATH : "${lib.makeBinPath [ harvid xjadeo ]}" ''; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index b0aa2ab4f9f3..c7a4fa6f3629 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -27260,6 +27260,7 @@ with pkgs; aqemu = libsForQt5.callPackage ../applications/virtualization/aqemu { }; + ardour_6 = callPackage ../applications/audio/ardour/6.nix { }; ardour = callPackage ../applications/audio/ardour { }; arelle = with python3Packages; toPythonApplication arelle; From 293cbc467dc69cc9bfd344975d1bdc125355743b Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 9 Nov 2022 19:47:07 +0000 Subject: [PATCH 24/30] matrix-synapse-tools.synadm: 0.36 -> 0.37.1 --- pkgs/servers/matrix-synapse/tools/synadm.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/servers/matrix-synapse/tools/synadm.nix b/pkgs/servers/matrix-synapse/tools/synadm.nix index 5075e42e710b..776a88833e22 100644 --- a/pkgs/servers/matrix-synapse/tools/synadm.nix +++ b/pkgs/servers/matrix-synapse/tools/synadm.nix @@ -4,12 +4,12 @@ with python3Packages; buildPythonApplication rec { pname = "synadm"; - version = "0.36"; + version = "0.37.1"; format = "setuptools"; src = fetchPypi { inherit pname version; - sha256 = "sha256-OMXUbfAC927qJw0B5sq1lGJQRkFAUdohIOkCYUbZumI="; + sha256 = "sha256-6RlgPiYxbnTGJBpNIM1dzAuGTbvydnXkfywSsI0G/oc="; }; postPatch = '' From 27f703b1f863b839c3ccf6d420c01e681333114c Mon Sep 17 00:00:00 2001 From: Someone Serge Date: Wed, 9 Nov 2022 21:55:34 +0200 Subject: [PATCH 25/30] cudaPackages_11_8: fix missing manifest ...fixes missing attributes, like cudaPackages_11_8.libcublas --- pkgs/development/compilers/cudatoolkit/redist/extension.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/compilers/cudatoolkit/redist/extension.nix b/pkgs/development/compilers/cudatoolkit/redist/extension.nix index 17327efb4013..9c7951c75d13 100644 --- a/pkgs/development/compilers/cudatoolkit/redist/extension.nix +++ b/pkgs/development/compilers/cudatoolkit/redist/extension.nix @@ -12,6 +12,7 @@ final: prev: let "11.5" = ./manifests/redistrib_11.5.2.json; "11.6" = ./manifests/redistrib_11.6.2.json; "11.7" = ./manifests/redistrib_11.7.0.json; + "11.8" = ./manifests/redistrib_11.8.0.json; }; # Function to build a single cudatoolkit redist package From d474e39f7d577eb509f3f39369fac575c0a04fdc Mon Sep 17 00:00:00 2001 From: Weijia Wang <9713184+wegank@users.noreply.github.com> Date: Wed, 9 Nov 2022 21:03:59 +0100 Subject: [PATCH 26/30] root: fix build on aarch64-darwin --- pkgs/applications/science/misc/root/default.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkgs/applications/science/misc/root/default.nix b/pkgs/applications/science/misc/root/default.nix index d8788c559e00..e9200c0db324 100644 --- a/pkgs/applications/science/misc/root/default.nix +++ b/pkgs/applications/science/misc/root/default.nix @@ -127,6 +127,8 @@ stdenv.mkDerivation rec { # Eliminate impure reference to /System/Library/PrivateFrameworks substituteInPlace core/CMakeLists.txt \ --replace "-F/System/Library/PrivateFrameworks" "" + '' + lib.optionalString (stdenv.isDarwin && lib.versionAtLeast stdenv.hostPlatform.darwinMinVersion "11") '' + MACOSX_DEPLOYMENT_TARGET=10.16 ''; cmakeFlags = [ @@ -202,6 +204,6 @@ stdenv.mkDerivation rec { # See https://github.com/NixOS/nixpkgs/pull/192581#issuecomment-1256860426 # for some context on issues on aarch64. - broken = stdenv.isAarch64; + broken = stdenv.isAarch64 && stdenv.isLinux; }; } From e57d034401b321839a53428b551f2eb667a9154a Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 9 Nov 2022 20:29:51 +0000 Subject: [PATCH 27/30] joker: 1.0.2 -> 1.1.0 --- pkgs/development/interpreters/joker/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/interpreters/joker/default.nix b/pkgs/development/interpreters/joker/default.nix index 6821fdffdb23..ab2ac8057453 100644 --- a/pkgs/development/interpreters/joker/default.nix +++ b/pkgs/development/interpreters/joker/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "joker"; - version = "1.0.2"; + version = "1.1.0"; src = fetchFromGitHub { rev = "v${version}"; owner = "candid82"; repo = "joker"; - sha256 = "sha256-u8wxyFYlqKL+NsSh+rM634MA9XsR9aJUJ+OtQ61uAFo="; + sha256 = "sha256-ERkK4T+nUTf18OoEctSugeK4i/f6k0naBKxzn+6pe38="; }; vendorSha256 = "sha256-AYoespfzFLP/jIIxbw5K653wc7sSfLY8K7di8GZ64wA="; From e94d54dd864062a18aaf75510600c8264353ccb8 Mon Sep 17 00:00:00 2001 From: John Ericson Date: Wed, 9 Nov 2022 15:52:01 -0500 Subject: [PATCH 28/30] build-support/rust/lib: Add `toTargetFamily` Taken from https://github.com/kolloch/crate2nix/pull/255/files, it belongs in Nixpkgs not crate2nix. I have been using that P.R. for a few months without incident. --- pkgs/build-support/rust/lib/default.nix | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/pkgs/build-support/rust/lib/default.nix b/pkgs/build-support/rust/lib/default.nix index 5eac208cc31c..77397f9b7220 100644 --- a/pkgs/build-support/rust/lib/default.nix +++ b/pkgs/build-support/rust/lib/default.nix @@ -15,6 +15,21 @@ rec { else if platform.isDarwin then "macos" else platform.parsed.kernel.name; + # https://doc.rust-lang.org/reference/conditional-compilation.html#target_family + toTargetFamily = platform: + if platform ? rustc.platform.target-family + then + ( + # Since https://github.com/rust-lang/rust/pull/84072 + # `target-family` is a list instead of single value. + let + f = platform.rustc.platform.target-family; + in + if builtins.isList f then f else [ f ] + ) + else lib.optional platform.isUnix "unix" + ++ lib.optional platform.isWindows "windows"; + # Returns the name of the rust target, even if it is custom. Adjustments are # because rust has slightly different naming conventions than we do. toRustTarget = platform: let From ac77d54ab28629ccada90dc23357305f31c70ddd Mon Sep 17 00:00:00 2001 From: Alexis Hildebrandt Date: Wed, 9 Nov 2022 23:08:28 +0100 Subject: [PATCH 29/30] victor-mono: Remove LICENSE.txt MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit as "appropriate machine-readable metadata fields within text […] can be easily viewed by the user", e.g.: nix eval "nixpkgs#victor-mono.meta.license" --json | jq --- pkgs/data/fonts/victor-mono/default.nix | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/pkgs/data/fonts/victor-mono/default.nix b/pkgs/data/fonts/victor-mono/default.nix index f2909658b4cd..f34baa8a8314 100644 --- a/pkgs/data/fonts/victor-mono/default.nix +++ b/pkgs/data/fonts/victor-mono/default.nix @@ -21,9 +21,8 @@ fetchzip { mv $out/OTF $out/share/fonts/opentype mv $out/TTF $out/share/fonts/truetype - mv $out/LICENSE.txt $out/share/fonts/$name-LICENSE.txt - rm -r $out/{EOT,WOFF,WOFF2} + rm -r $out/{EOT,WOFF,WOFF2,LICENSE.txt} ''; sha256 = "sha256-1si0d2lpuXaDcSc3giVMMMbZc/eKbHKU3wmwfYHZ8o0="; From 255ac994b8dcde49c22e5b7b9251630db53ff72c Mon Sep 17 00:00:00 2001 From: Guillaume Girol Date: Sun, 30 Oct 2022 12:00:00 +0000 Subject: [PATCH 30/30] nixos/firefox-syncserver: fix setup failure due to duplicate key in some circumstances, the setup service would fail with: ERROR 1062 (23000) at line 5: Duplicate entry '1' for key 'PRIMARY' so let's use an upsert instead of insert. This also simplifies the script. Besides, also fix that when the setup script changes, the corresponding script is not restarted as it is usually not active, so we trigger a restart of the main systemd service. --- .../networking/firefox-syncserver.nix | 90 +++++++++---------- 1 file changed, 40 insertions(+), 50 deletions(-) diff --git a/nixos/modules/services/networking/firefox-syncserver.nix b/nixos/modules/services/networking/firefox-syncserver.nix index d7d5df59a4eb..c3d9f43f7457 100644 --- a/nixos/modules/services/networking/firefox-syncserver.nix +++ b/nixos/modules/services/networking/firefox-syncserver.nix @@ -32,6 +32,44 @@ let }; }; configFile = format.generate "syncstorage.toml" (lib.recursiveUpdate settings cfg.settings); + setupScript = pkgs.writeShellScript "firefox-syncserver-setup" '' + set -euo pipefail + shopt -s inherit_errexit + + schema_configured() { + mysql ${cfg.database.name} -Ne 'SHOW TABLES' | grep -q services + } + + update_config() { + mysql ${cfg.database.name} <<"EOF" + BEGIN; + + INSERT INTO `services` (`id`, `service`, `pattern`) + VALUES (1, 'sync-1.5', '{node}/1.5/{uid}') + ON DUPLICATE KEY UPDATE service='sync-1.5', pattern='{node}/1.5/{uid}'; + INSERT INTO `nodes` (`id`, `service`, `node`, `available`, `current_load`, + `capacity`, `downed`, `backoff`) + VALUES (1, 1, '${cfg.singleNode.url}', ${toString cfg.singleNode.capacity}, + 0, ${toString cfg.singleNode.capacity}, 0, 0) + ON DUPLICATE KEY UPDATE node = '${cfg.singleNode.url}', capacity=${toString cfg.singleNode.capacity}; + + COMMIT; + EOF + } + + + for (( try = 0; try < 60; try++ )); do + if ! schema_configured; then + sleep 2 + else + update_config + exit 0 + fi + done + + echo "Single-node setup failed" + exit 1 + ''; in { @@ -210,6 +248,7 @@ in wantedBy = [ "multi-user.target" ]; requires = lib.mkIf dbIsLocal [ "mysql.service" ]; after = lib.mkIf dbIsLocal [ "mysql.service" ]; + restartTriggers = lib.optional cfg.singleNode.enable setupScript; environment.RUST_LOG = cfg.logLevel; serviceConfig = { User = defaultUser; @@ -255,56 +294,7 @@ in requires = [ "firefox-syncserver.service" ] ++ lib.optional dbIsLocal "mysql.service"; after = [ "firefox-syncserver.service" ] ++ lib.optional dbIsLocal "mysql.service"; path = [ config.services.mysql.package ]; - script = '' - set -euo pipefail - shopt -s inherit_errexit - - schema_configured() { - mysql ${cfg.database.name} -Ne 'SHOW TABLES' | grep -q services - } - - services_configured() { - [ 1 != $(mysql ${cfg.database.name} -Ne 'SELECT COUNT(*) < 1 FROM `services`') ] - } - - create_services() { - mysql ${cfg.database.name} <<"EOF" - BEGIN; - - INSERT INTO `services` (`id`, `service`, `pattern`) - VALUES (1, 'sync-1.5', '{node}/1.5/{uid}'); - INSERT INTO `nodes` (`id`, `service`, `node`, `available`, `current_load`, - `capacity`, `downed`, `backoff`) - VALUES (1, 1, '${cfg.singleNode.url}', ${toString cfg.singleNode.capacity}, - 0, ${toString cfg.singleNode.capacity}, 0, 0); - - COMMIT; - EOF - } - - update_nodes() { - mysql ${cfg.database.name} <<"EOF" - UPDATE `nodes` - SET `capacity` = ${toString cfg.singleNode.capacity} - WHERE `id` = 1; - EOF - } - - for (( try = 0; try < 60; try++ )); do - if ! schema_configured; then - sleep 2 - elif services_configured; then - update_nodes - exit 0 - else - create_services - exit 0 - fi - done - - echo "Single-node setup failed" - exit 1 - ''; + serviceConfig.ExecStart = [ "${setupScript}" ]; }; services.nginx.virtualHosts = lib.mkIf cfg.singleNode.enableNginx {