about summary refs log tree commit diff
path: root/nixos/modules/services
diff options
context:
space:
mode:
authorromildo <malaquias@gmail.com>2016-11-01 17:06:39 -0200
committerromildo <malaquias@gmail.com>2016-11-01 17:06:39 -0200
commita25e6bc8dbeac64de77b81c46d9116989b2b483c (patch)
tree50d67a6f6b23b4917d128586a9564d1d860c1ff5 /nixos/modules/services
parentfa4167c0a13cbe0d97b9c88d91b86845a8c4e740 (diff)
downloadnixlib-a25e6bc8dbeac64de77b81c46d9116989b2b483c.tar
nixlib-a25e6bc8dbeac64de77b81c46d9116989b2b483c.tar.gz
nixlib-a25e6bc8dbeac64de77b81c46d9116989b2b483c.tar.bz2
nixlib-a25e6bc8dbeac64de77b81c46d9116989b2b483c.tar.lz
nixlib-a25e6bc8dbeac64de77b81c46d9116989b2b483c.tar.xz
nixlib-a25e6bc8dbeac64de77b81c46d9116989b2b483c.tar.zst
nixlib-a25e6bc8dbeac64de77b81c46d9116989b2b483c.zip
lumina: init at 1.1.0-p1
Diffstat (limited to 'nixos/modules/services')
-rw-r--r--nixos/modules/services/x11/desktop-managers/default.nix3
-rw-r--r--nixos/modules/services/x11/desktop-managers/lumina.nix52
2 files changed, 54 insertions, 1 deletions
diff --git a/nixos/modules/services/x11/desktop-managers/default.nix b/nixos/modules/services/x11/desktop-managers/default.nix
index 31412ae70142..144e4aada277 100644
--- a/nixos/modules/services/x11/desktop-managers/default.nix
+++ b/nixos/modules/services/x11/desktop-managers/default.nix
@@ -19,7 +19,8 @@ in
   # E.g., if KDE is enabled, it supersedes xterm.
   imports = [
     ./none.nix ./xterm.nix ./xfce.nix ./kde4.nix ./kde5.nix
-    ./lxqt.nix ./enlightenment.nix ./gnome3.nix ./kodi.nix
+    ./lumina.nix ./lxqt.nix ./enlightenment.nix ./gnome3.nix
+    ./kodi.nix
   ];
 
   options = {
diff --git a/nixos/modules/services/x11/desktop-managers/lumina.nix b/nixos/modules/services/x11/desktop-managers/lumina.nix
new file mode 100644
index 000000000000..f0b31a2acb01
--- /dev/null
+++ b/nixos/modules/services/x11/desktop-managers/lumina.nix
@@ -0,0 +1,52 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+
+  xcfg = config.services.xserver;
+  cfg = xcfg.desktopManager.lumina;
+
+in
+
+{
+  options = {
+
+    services.xserver.desktopManager.lumina.enable = mkOption {
+      type = types.bool;
+      default = false;
+      description = "Enable the Lumina desktop manager";
+    };
+
+  };
+
+
+  config = mkIf (xcfg.enable && cfg.enable) {
+
+    services.xserver.desktopManager.session = singleton {
+      name = "lumina";
+      start = ''
+        exec ${pkgs.lumina}/bin/start-lumina-desktop
+      '';
+    };
+
+    environment.systemPackages = [
+      pkgs.fluxbox
+      pkgs.kde5.kwindowsystem
+      pkgs.kde5.oxygen-icons5
+      pkgs.lumina
+      pkgs.numlockx
+      pkgs.qt5.qtsvg
+      pkgs.xscreensaver
+    ];
+
+    # Link some extra directories in /run/current-system/software/share
+    environment.pathsToLink = [
+      "/share/desktop-directories"
+      "/share/icons"
+      "/share/lumina"
+      "/share"
+    ];
+
+  };
+}