summary refs log tree commit diff
diff options
context:
space:
mode:
authorThomas Tuegel <ttuegel@gmail.com>2015-12-16 09:44:07 -0600
committerThomas Tuegel <ttuegel@gmail.com>2015-12-16 10:22:43 -0600
commitcc058eff7052be3e2cfdfc2eef5203521e34444e (patch)
tree50243424ac50fe6df01c94e0128d58ae45695960
parentda89338993f649eb342df5a8e29f5c009126514a (diff)
downloadnixlib-cc058eff7052be3e2cfdfc2eef5203521e34444e.tar
nixlib-cc058eff7052be3e2cfdfc2eef5203521e34444e.tar.gz
nixlib-cc058eff7052be3e2cfdfc2eef5203521e34444e.tar.bz2
nixlib-cc058eff7052be3e2cfdfc2eef5203521e34444e.tar.lz
nixlib-cc058eff7052be3e2cfdfc2eef5203521e34444e.tar.xz
nixlib-cc058eff7052be3e2cfdfc2eef5203521e34444e.tar.zst
nixlib-cc058eff7052be3e2cfdfc2eef5203521e34444e.zip
kde5_latest: merge all package sets
The three KDE package sets now have circular dependencies between them,
so they can only be built if they are merged into a single package set
during evaluation.
-rw-r--r--nixos/modules/services/x11/desktop-managers/kde5.nix104
-rw-r--r--pkgs/applications/kde-apps-15.12/default.nix15
-rw-r--r--pkgs/desktops/plasma-5.5/default.nix50
-rw-r--r--pkgs/development/libraries/kde-frameworks-5.17/default.nix44
-rw-r--r--pkgs/top-level/all-packages.nix107
5 files changed, 157 insertions, 163 deletions
diff --git a/nixos/modules/services/x11/desktop-managers/kde5.nix b/nixos/modules/services/x11/desktop-managers/kde5.nix
index 06fc622325f7..933efa08fa35 100644
--- a/nixos/modules/services/x11/desktop-managers/kde5.nix
+++ b/nixos/modules/services/x11/desktop-managers/kde5.nix
@@ -8,9 +8,7 @@ let
   cfg = xcfg.desktopManager.kde5;
   xorg = pkgs.xorg;
 
-  kf5 = pkgs.kf5_stable;
-  plasma5 = pkgs.plasma5_stable;
-  kdeApps = pkgs.kdeApps_stable;
+  kde5 = pkgs.kde5;
 
 in
 
@@ -57,12 +55,12 @@ in
     services.xserver.desktopManager.session = singleton {
       name = "kde5";
       bgSupport = true;
-      start = ''exec ${plasma5.plasma-workspace}/bin/startkde;'';
+      start = ''exec ${kde5.plasma-workspace}/bin/startkde;'';
     };
 
     security.setuidOwners = singleton {
       program = "kcheckpass";
-      source = "${plasma5.plasma-workspace}/lib/libexec/kcheckpass";
+      source = "${kde5.plasma-workspace}/lib/libexec/kcheckpass";
       owner = "root";
       group = "root";
       setuid = true;
@@ -72,61 +70,61 @@ in
       [
         pkgs.qt4 # qtconfig is the only way to set Qt 4 theme
 
-        kf5.frameworkintegration
-        kf5.kinit
-
-        plasma5.breeze
-        plasma5.kde-cli-tools
-        plasma5.kdeplasma-addons
-        plasma5.kgamma5
-        plasma5.khelpcenter
-        plasma5.khotkeys
-        plasma5.kinfocenter
-        plasma5.kmenuedit
-        plasma5.kscreen
-        plasma5.ksysguard
-        plasma5.kwayland
-        plasma5.kwin
-        plasma5.kwrited
-        plasma5.milou
-        plasma5.oxygen
-        plasma5.polkit-kde-agent
-        plasma5.systemsettings
-
-        plasma5.plasma-desktop
-        plasma5.plasma-workspace
-        plasma5.plasma-workspace-wallpapers
-
-        kdeApps.ark
-        kdeApps.dolphin
-        kdeApps.dolphin-plugins
-        kdeApps.ffmpegthumbs
-        kdeApps.gwenview
-        kdeApps.kate
-        kdeApps.kdegraphics-thumbnailers
-        kdeApps.konsole
-        kdeApps.okular
-        kdeApps.print-manager
+        kde5.frameworkintegration
+        kde5.kinit
+
+        kde5.breeze
+        kde5.kde-cli-tools
+        kde5.kdeplasma-addons
+        kde5.kgamma5
+        kde5.khelpcenter
+        kde5.khotkeys
+        kde5.kinfocenter
+        kde5.kmenuedit
+        kde5.kscreen
+        kde5.ksysguard
+        kde5.kwayland
+        kde5.kwin
+        kde5.kwrited
+        kde5.milou
+        kde5.oxygen
+        kde5.polkit-kde-agent
+        kde5.systemsettings
+
+        kde5.plasma-desktop
+        kde5.plasma-workspace
+        kde5.plasma-workspace-wallpapers
+
+        kde5.ark
+        kde5.dolphin
+        kde5.dolphin-plugins
+        kde5.ffmpegthumbs
+        kde5.gwenview
+        kde5.kate
+        kde5.kdegraphics-thumbnailers
+        kde5.konsole
+        kde5.okular
+        kde5.print-manager
 
         # Oxygen icons moved to KDE Frameworks 5.16 and later.
-        (kdeApps.oxygen-icons or kf5.oxygen-icons5)
+        (kde5.oxygen-icons or kde5.oxygen-icons5)
         pkgs.hicolor_icon_theme
 
-        plasma5.kde-gtk-config
+        kde5.kde-gtk-config
       ]
 
       # Plasma 5.5 and later has a Breeze GTK theme.
       # If it is not available, Orion is very similar to Breeze.
-      ++ lib.optional (!(lib.hasAttr "breeze-gtk" plasma5)) pkgs.orion
+      ++ lib.optional (!(lib.hasAttr "breeze-gtk" kde5)) pkgs.orion
 
       # Install Breeze icons if available
-      ++ lib.optional (lib.hasAttr "breeze-icons" kf5) kf5.breeze-icons
+      ++ lib.optional (lib.hasAttr "breeze-icons" kde5) kde5.breeze-icons
 
       # Optional hardware support features
-      ++ lib.optional config.hardware.bluetooth.enable plasma5.bluedevil
-      ++ lib.optional config.networking.networkmanager.enable plasma5.plasma-nm
-      ++ lib.optional config.hardware.pulseaudio.enable plasma5.plasma-pa
-      ++ lib.optional config.powerManagement.enable plasma5.powerdevil
+      ++ lib.optional config.hardware.bluetooth.enable kde5.bluedevil
+      ++ lib.optional config.networking.networkmanager.enable kde5.plasma-nm
+      ++ lib.optional config.hardware.pulseaudio.enable kde5.plasma-pa
+      ++ lib.optional config.powerManagement.enable kde5.powerdevil
 
       ++ lib.optionals cfg.phonon.gstreamer.enable
         [
@@ -167,13 +165,13 @@ in
       };
 
     # Enable GTK applications to load SVG icons
-    environment.variables = mkIf (lib.hasAttr "breeze-icons" kf5) {
+    environment.variables = mkIf (lib.hasAttr "breeze-icons" kde5) {
       GDK_PIXBUF_MODULE_FILE = "${pkgs.librsvg}/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache";
     };
 
-    fonts.fonts = [ (plasma5.oxygen-fonts or pkgs.noto-fonts) ];
+    fonts.fonts = [ (kde5.oxygen-fonts or pkgs.noto-fonts) ];
 
-    programs.ssh.askPassword = "${plasma5.ksshaskpass}/bin/ksshaskpass";
+    programs.ssh.askPassword = "${kde5.ksshaskpass}/bin/ksshaskpass";
 
     # Enable helpful DBus services.
     services.udisks2.enable = true;
@@ -185,8 +183,8 @@ in
     services.xserver.displayManager.sddm = {
       theme = "breeze";
       themes = [
-        plasma5.plasma-workspace
-        (kdeApps.oxygen-icons or kf5.oxygen-icons5)
+        kde5.plasma-workspace
+        (kde5.oxygen-icons or kde5.oxygen-icons5)
       ];
     };
 
diff --git a/pkgs/applications/kde-apps-15.12/default.nix b/pkgs/applications/kde-apps-15.12/default.nix
index a89f88b58faf..d5c0aa446683 100644
--- a/pkgs/applications/kde-apps-15.12/default.nix
+++ b/pkgs/applications/kde-apps-15.12/default.nix
@@ -21,12 +21,13 @@ let
   srcs = import ./srcs.nix { inherit (pkgs) fetchurl; inherit mirror; };
   mirror = "mirror://kde";
 
-  kdeApp = import ./kde-app.nix {
-    inherit stdenv lib;
-    inherit debug srcs;
-  };
-
   packages = self: with self; {
+
+    kdeApp = import ./kde-app.nix {
+      inherit stdenv lib;
+      inherit debug srcs;
+    };
+
     kdelibs = callPackage ./kdelibs { inherit (pkgs) attica phonon; };
 
     ark = callPackage ./ark.nix {};
@@ -49,6 +50,4 @@ let
     l10n = pkgs.recurseIntoAttrs (import ./l10n.nix { inherit callPackage lib pkgs; });
   };
 
-  newScope = scope: pkgs.kf517.newScope ({ inherit kdeApp; } // scope);
-
-in lib.makeScope newScope packages
+in packages
diff --git a/pkgs/desktops/plasma-5.5/default.nix b/pkgs/desktops/plasma-5.5/default.nix
index 812c70c2b004..c9fcbdd8e6a0 100644
--- a/pkgs/desktops/plasma-5.5/default.nix
+++ b/pkgs/desktops/plasma-5.5/default.nix
@@ -16,33 +16,33 @@ let
   srcs = import ./srcs.nix { inherit (pkgs) fetchurl; inherit mirror; };
   mirror = "mirror://kde";
 
-  plasmaPackage = args:
-    let
-      inherit (args) name;
-      sname = args.sname or name;
-      inherit (srcs."${sname}") src version;
-    in stdenv.mkDerivation (args // {
-      name = "${name}-${version}";
-      inherit src;
+  packages = self: with self; {
+    plasmaPackage = args:
+      let
+        inherit (args) name;
+        sname = args.sname or name;
+        inherit (srcs."${sname}") src version;
+      in stdenv.mkDerivation (args // {
+        name = "${name}-${version}";
+        inherit src;
 
-      setupHook = args.setupHook or ./setup-hook.sh;
+        setupHook = args.setupHook or ./setup-hook.sh;
 
-      cmakeFlags =
-        (args.cmakeFlags or [])
-        ++ [ "-DBUILD_TESTING=OFF" ]
-        ++ lib.optional debug "-DCMAKE_BUILD_TYPE=Debug";
+        cmakeFlags =
+          (args.cmakeFlags or [])
+          ++ [ "-DBUILD_TESTING=OFF" ]
+          ++ lib.optional debug "-DCMAKE_BUILD_TYPE=Debug";
 
-      meta = {
-        license = with lib.licenses; [
-          lgpl21Plus lgpl3Plus bsd2 mit gpl2Plus gpl3Plus fdl12
-        ];
-        platforms = lib.platforms.linux;
-        maintainers = with lib.maintainers; [ ttuegel ];
-        homepage = "http://www.kde.org";
-      } // (args.meta or {});
-    });
+        meta = {
+          license = with lib.licenses; [
+            lgpl21Plus lgpl3Plus bsd2 mit gpl2Plus gpl3Plus fdl12
+          ];
+          platforms = lib.platforms.linux;
+          maintainers = with lib.maintainers; [ ttuegel ];
+          homepage = "http://www.kde.org";
+        } // (args.meta or {});
+      });
 
-  addPackages = self: with self; {
     bluedevil = callPackage ./bluedevil.nix {};
     breeze-gtk = callPackage ./breeze-gtk.nix {};
     breeze-qt4 = callPackage ./breeze-qt4.nix {};
@@ -81,6 +81,4 @@ let
     systemsettings = callPackage ./systemsettings.nix {};
   };
 
-  newScope = scope: kdeApps.newScope ({ inherit plasmaPackage; } // scope);
-
-in lib.makeScope newScope addPackages
+in packages
diff --git a/pkgs/development/libraries/kde-frameworks-5.17/default.nix b/pkgs/development/libraries/kde-frameworks-5.17/default.nix
index 6c2889aa5981..3a865b9d4040 100644
--- a/pkgs/development/libraries/kde-frameworks-5.17/default.nix
+++ b/pkgs/development/libraries/kde-frameworks-5.17/default.nix
@@ -14,29 +14,29 @@ let
   mirror = "mirror://kde";
   srcs = import ./srcs.nix { inherit (pkgs) fetchurl; inherit mirror; };
 
-  kdeFramework = args:
-    let
-      inherit (args) name;
-      inherit (srcs."${name}") src version;
-    in stdenv.mkDerivation (args // {
-      name = "${name}-${version}";
-      inherit src;
+  packages = self: with self; {
+    kdeFramework = args:
+      let
+        inherit (args) name;
+        inherit (srcs."${name}") src version;
+      in stdenv.mkDerivation (args // {
+        name = "${name}-${version}";
+        inherit src;
 
-      cmakeFlags =
-        (args.cmakeFlags or [])
-        ++ [ "-DBUILD_TESTING=OFF" ]
-        ++ lib.optional debug "-DCMAKE_BUILD_TYPE=Debug";
+        cmakeFlags =
+          (args.cmakeFlags or [])
+          ++ [ "-DBUILD_TESTING=OFF" ]
+          ++ lib.optional debug "-DCMAKE_BUILD_TYPE=Debug";
 
-      meta = {
-        license = with lib.licenses; [
-          lgpl21Plus lgpl3Plus bsd2 mit gpl2Plus gpl3Plus fdl12
-        ];
-        platforms = lib.platforms.linux;
-        homepage = "http://www.kde.org";
-      } // (args.meta or {});
-    });
+        meta = {
+          license = with lib.licenses; [
+            lgpl21Plus lgpl3Plus bsd2 mit gpl2Plus gpl3Plus fdl12
+          ];
+          platforms = lib.platforms.linux;
+          homepage = "http://www.kde.org";
+        } // (args.meta or {});
+      });
 
-  addPackages = self: with self; {
     attica = callPackage ./attica.nix {};
     baloo = callPackage ./baloo.nix {};
     bluez-qt = callPackage ./bluez-qt.nix {};
@@ -109,6 +109,4 @@ let
     threadweaver = callPackage ./threadweaver.nix {};
   };
 
-  newScope = scope: pkgs.qt55Libs.newScope ({ inherit kdeFramework; } // scope);
-
-in lib.makeScope newScope addPackages
+in packages
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index efc59b70340f..b5a17114a4b1 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -6859,54 +6859,10 @@ let
   };
 
   kf515 = recurseIntoAttrs (import ../development/libraries/kde-frameworks-5.15 { inherit pkgs; });
-  kf517 = recurseIntoAttrs (import ../development/libraries/kde-frameworks-5.17 { inherit pkgs; });
+  kf517 = import ../development/libraries/kde-frameworks-5.17 { inherit pkgs; };
   kf5_stable = kf515;
   kf5_latest = kf517;
 
-  kf5PackagesFun = self: with self; {
-
-    fcitx-qt5 = callPackage ../tools/inputmethods/fcitx/fcitx-qt5.nix { };
-
-    k9copy = callPackage ../applications/video/k9copy {};
-
-    quassel = callPackage ../applications/networking/irc/quassel/qt-5.nix {
-      monolithic = true;
-      daemon = false;
-      client = false;
-      withKDE = true;
-      dconf = gnome3.dconf;
-      tag = "-kf5";
-    };
-
-    quasselClient = quassel.override {
-      monolithic = false;
-      client = true;
-      tag = "-client-kf5";
-    };
-
-    quassel_qt5 = quassel.override {
-      withKDE = false;
-      tag = "-qt5";
-    };
-
-    quasselClient_qt5 = quasselClient.override {
-      withKDE = false;
-      tag = "-client-qt5";
-    };
-
-    quasselDaemon = quassel.override {
-      monolithic = false;
-      daemon = true;
-      tag = "-daemon-qt5";
-      withKDE = false;
-    };
-
-  };
-
-  kf515Packages = lib.makeScope kf515.newScope kf5PackagesFun;
-  kf517Packages = lib.makeScope kf517.newScope kf5PackagesFun;
-  kf5Packages = kf515Packages;
-
   kinetic-cpp-client = callPackage ../development/libraries/kinetic-cpp-client { };
 
   krb5Full = callPackage ../development/libraries/kerberos/krb5.nix {
@@ -12250,7 +12206,7 @@ let
   };
 
   kdeApps_15_08 = recurseIntoAttrs (import ../applications/kde-apps-15.08 { inherit pkgs; });
-  kdeApps_15_12 = recurseIntoAttrs (import ../applications/kde-apps-15.12 { inherit pkgs; });
+  kdeApps_15_12 = import ../applications/kde-apps-15.12 { inherit pkgs; };
   kdeApps_stable = kdeApps_15_08;
   kdeApps_latest = kdeApps_15_12;
 
@@ -14756,11 +14712,56 @@ let
   numix-gtk-theme = callPackage ../misc/themes/gtk3/numix-gtk-theme { };
 
   plasma54 = recurseIntoAttrs (import ../desktops/plasma-5.4 { inherit pkgs; });
-  plasma55 = recurseIntoAttrs (import ../desktops/plasma-5.5 { inherit pkgs; });
+  plasma55 = import ../desktops/plasma-5.5 { inherit pkgs; };
   plasma5_stable = plasma54;
   plasma5_latest = plasma55;
 
-  kde5 = kf5_stable // plasma5_stable // kdeApps_stable;
+  kde5PackagesFun = self: with self; {
+
+    fcitx-qt5 = callPackage ../tools/inputmethods/fcitx/fcitx-qt5.nix { };
+
+    k9copy = callPackage ../applications/video/k9copy {};
+
+    quassel = callPackage ../applications/networking/irc/quassel/qt-5.nix {
+      monolithic = true;
+      daemon = false;
+      client = false;
+      withKDE = true;
+      dconf = gnome3.dconf;
+      tag = "-kf5";
+    };
+
+    quasselClient = quassel.override {
+      monolithic = false;
+      client = true;
+      tag = "-client-kf5";
+    };
+
+    quassel_qt5 = quassel.override {
+      withKDE = false;
+      tag = "-qt5";
+    };
+
+    quasselClient_qt5 = quasselClient.override {
+      withKDE = false;
+      tag = "-client-qt5";
+    };
+
+    quasselDaemon = quassel.override {
+      monolithic = false;
+      daemon = true;
+      tag = "-daemon-qt5";
+      withKDE = false;
+    };
+
+  };
+
+  kde5 = kf5_stable // plasma5_stable // kdeApps_stable // kde5PackagesFun kde5;
+
+  kde5_latest =
+    recurseIntoAttrs
+    (lib.makeScope qt55Libs.newScope (self:
+      kf5_latest self // plasma5_latest self // kdeApps_latest self // kde5PackagesFun self));
 
   theme-vertex = callPackage ../misc/themes/vertex { };
 
@@ -15784,11 +15785,11 @@ aliases = with self; rec {
   lttngTools = lttng-tools;  # added 2014-07-31
   lttngUst = lttng-ust;  # added 2014-07-31
   nfsUtils = nfs-utils;  # added 2014-12-06
-  quassel_qt5 = kf5Packages.quassel_qt5; # added 2015-09-30
-  quasselClient_qt5 = kf5Packages.quasselClient_qt5; # added 2015-09-30
-  quasselDaemon_qt5 = kf5Packages.quasselDaemon; # added 2015-09-30
-  quassel_kf5 = kf5Packages.quassel; # added 2015-09-30
-  quasselClient_kf5 = kf5Packages.quasselClient; # added 2015-09-30
+  quassel_qt5 = kde5.quassel_qt5; # added 2015-09-30
+  quasselClient_qt5 = kde5.quasselClient_qt5; # added 2015-09-30
+  quasselDaemon_qt5 = kde5.quasselDaemon; # added 2015-09-30
+  quassel_kf5 = kde5.quassel; # added 2015-09-30
+  quasselClient_kf5 = kde5.quasselClient; # added 2015-09-30
   rdiff_backup = rdiff-backup;  # added 2014-11-23
   rssglx = rss-glx; #added 2015-03-25
   rxvt_unicode_with-plugins = rxvt_unicode-with-plugins; # added 2015-04-02