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 242596d28c6..4d847e280f4 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 00000000000..1e6157cfb9a --- /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 ac655751e7c..60745a22452 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 4cd65277771..61612a2c236 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 b6afe0aa44e..854f1c3484e 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 61612a2c236..53a8ef6271a 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 6494acb50da..4e26eeda8d3 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 948f9e5d2a2..370f77c3831 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 6db7e00be9b..1ab0ca74819 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 495b63abd44..84657177f89 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 76e5ca480b4..bb0b8424b4e 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 9cb23ad35ac..714f636341d 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 24f93ee0af7..c6a4e36c82d 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 b70f4977f58..9e4ab1d4102 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 4fb5583a8ff..399205da6ca 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 1a6cc9442b9..001c1e6cbcb 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 517cb072f74..6d29d6e6d8c 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 36d46f43966..545b1a2b69e 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 7f2c284ad74..9c248f199a5 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 1a800525255..441a150ee17 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 21e84dff05f..7da9739aad1 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 0cc78c69aec..b5158bfd154 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 015c86bc7d1..ea7393e7226 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 9deb1a3c015..8bc0ec87361 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 789206a1639..c2f2abcd32d 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 e93804bd885..ece32e3ee05 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 69849f75751..6016cfd090c 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 b3444e97532..a02e7b08aa6 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 c0ab4ff947e..216586076ae 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 341d54a6388..6a71529eb0f 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 976bd634e66..577beb8d5ec 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 6f3db970b94..d2b4dbde8ac 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 2f85454eb67..352fd129ce9 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 fb4323455b7..4bac765dc4b 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 a6784982580..9f1ab4d2811 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 23cbdf28477..220cd6a16d5 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 dbdc5ba474b..b8ccd9415ef 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 858addcd3ff..b680a088a6e 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 3eafd80cacf..36edffb4eab 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 96bd6dd542e..3d480db6bc1 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 2948075f696..e42c25e7463 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 669a38e37ca..0560fc9da01 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 8049c6d11b4..9d9762523d9 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 807b3508b95..8262febad7a 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 3bf80f4abf5..1e5a43f3521 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 4a29acd1e7c..fec85644aa7 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 51e3391b8e7..2055d7bd36b 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 cc0c15a9e06..5fafd2e1eff 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 979ca7e2f45..de0be7ea49a 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 dd17345c5f1..0cd858ea6e0 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 209647a4791..adc232f091d 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 c3a8659a735..af29ff41681 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 b1e0461a959..745316fbaf9 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 eadb27f05bc..d51b7e99ce6 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 6709a1f072a..d52989d3ffc 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 51994c2868d..f2f56304222 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 f13e1f66795..c1a2270641b 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 9998418ff8a..613a159a792 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 40153af70e8..896c202529a 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 45362d556a7..bb5cd80bca2 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 274ff7cdeab..986faceb82d 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 c9ce9c2bf76..1fd83700f85 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 d5fcd44887a..ab817481180 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 bb3119ed6d4..6396b7c6c51 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 31bce026daa..2014b00b1e5 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 92d57158e32..3149c220662 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 9484dece57e..81369d4ce83 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 53a8ef6271a..ba0aba1959b 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 4e26eeda8d3..ce0599dda0e 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 2dd9edcf5d2..db1367f6fba 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 b74d5e08680..9abd9fabc95 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 8717b94545b..436fe463307 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 999d69ce683..3ef0ea191a7 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 60c1d2754d7..36e1948f09e 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 4b7f63855bb..d8641cb29d9 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 2dc2c3230a8..95b89093a88 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 98a924e4027..00000000000 --- 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 9389d2d5e68..38e96c7f098 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 e351cea9fdb..f2909658b4c 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 a91bb273f3e..5e474f81f18 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 3e21dade83a..b3d0d876aec 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 5a1fdc1e75f..a5519d96a9d 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 8b3da95ba91..64c0821eaba 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 2d6745c8a21..f2b5825c0e5 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 eefde7c6b03..2243565b394 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 cf55085b78a..4e2f01ade36 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 890930ba89a..6a705959a11 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 f9a716cecb5..72474d39147 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 06ceccb793a..d8948b08672 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 04a672f2e5a..910814b1777 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 1c9a6a1e2ac..e204fa92bfd 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 68801883df9..d177f7369a0 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 04a672f2e5a..043d3cac860 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 68f1bac49e9..d6d9075997a 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 04a672f2e5a..be7bf5a0ef1 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 5ae80c745bd..d8788c559e0 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 5d03b208372..512ac86210a 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 5cbb4fe1ba9..a018a5e56ab 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 b669950c5c1..8004993a209 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 00000000000..140d20c2aad --- /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 d5afcac86cd..44b54111fd3 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 b0aa2ab4f9f..c7a4fa6f362 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 5075e42e710..776a88833e2 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 17327efb401..9c7951c75d1 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 d8788c559e0..e9200c0db32 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 6821fdffdb2..ab2ac805745 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 5eac208cc31..77397f9b722 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 f2909658b4c..f34baa8a831 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 d7d5df59a4e..c3d9f43f745 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 {