summary refs log tree commit diff
path: root/nixos
diff options
context:
space:
mode:
authorJoachim F <joachifm@users.noreply.github.com>2016-10-07 14:00:54 +0200
committerGitHub <noreply@github.com>2016-10-07 14:00:54 +0200
commit030a298406b935abb695f775a3ea9e18fa81efab (patch)
tree5abb8c17392ff3c6df5f9ebe3c96a8d9ef48604e /nixos
parent908ad09fd61cee0d646ece0f2ae8baee223aa871 (diff)
parenta5bbe8970ff04d0589d5b2ad93db41917d86d41b (diff)
downloadnixlib-030a298406b935abb695f775a3ea9e18fa81efab.tar
nixlib-030a298406b935abb695f775a3ea9e18fa81efab.tar.gz
nixlib-030a298406b935abb695f775a3ea9e18fa81efab.tar.bz2
nixlib-030a298406b935abb695f775a3ea9e18fa81efab.tar.lz
nixlib-030a298406b935abb695f775a3ea9e18fa81efab.tar.xz
nixlib-030a298406b935abb695f775a3ea9e18fa81efab.tar.zst
nixlib-030a298406b935abb695f775a3ea9e18fa81efab.zip
Merge pull request #19212 from romildo/new.lxqt
lxqt: init at 0.11
Diffstat (limited to 'nixos')
-rw-r--r--nixos/modules/services/x11/desktop-managers/default.nix2
-rw-r--r--nixos/modules/services/x11/desktop-managers/lxqt.nix78
2 files changed, 79 insertions, 1 deletions
diff --git a/nixos/modules/services/x11/desktop-managers/default.nix b/nixos/modules/services/x11/desktop-managers/default.nix
index 1ea7b5ccf16a..31412ae70142 100644
--- a/nixos/modules/services/x11/desktop-managers/default.nix
+++ b/nixos/modules/services/x11/desktop-managers/default.nix
@@ -19,7 +19,7 @@ in
   # E.g., if KDE is enabled, it supersedes xterm.
   imports = [
     ./none.nix ./xterm.nix ./xfce.nix ./kde4.nix ./kde5.nix
-    ./enlightenment.nix ./gnome3.nix ./kodi.nix
+    ./lxqt.nix ./enlightenment.nix ./gnome3.nix ./kodi.nix
   ];
 
   options = {
diff --git a/nixos/modules/services/x11/desktop-managers/lxqt.nix b/nixos/modules/services/x11/desktop-managers/lxqt.nix
new file mode 100644
index 000000000000..810b0125a22d
--- /dev/null
+++ b/nixos/modules/services/x11/desktop-managers/lxqt.nix
@@ -0,0 +1,78 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+
+  xcfg = config.services.xserver;
+  cfg = xcfg.desktopManager.lxqt;
+
+in
+
+{
+  options = {
+
+    services.xserver.desktopManager.lxqt.enable = mkOption {
+      type = types.bool;
+      default = false;
+      description = "Enable the LXQt desktop manager";
+    };
+
+  };
+
+
+  config = mkIf (xcfg.enable && cfg.enable) {
+
+    services.xserver.desktopManager.session = singleton {
+      name = "lxqt";
+      start = ''
+        exec ${pkgs.lxqt.lxqt-common}/bin/startlxqt
+      '';
+    };
+
+    environment.systemPackages = [
+      pkgs.kde5.kwindowsystem # provides some QT5 plugins needed by lxqt-panel
+      pkgs.kde5.libkscreen # provides plugins for screen management software
+      pkgs.kde5.oxygen-icons5 # default icon theme
+      pkgs.libfm
+      pkgs.libfm-extra
+      pkgs.lxmenu-data
+      pkgs.lxqt.compton-conf
+      pkgs.lxqt.libfm-qt
+      pkgs.lxqt.liblxqt
+      pkgs.lxqt.libqtxdg
+      pkgs.lxqt.libsysstat
+      pkgs.lxqt.lxqt-about
+      pkgs.lxqt.lxqt-admin
+      pkgs.lxqt.lxqt-common
+      pkgs.lxqt.lxqt-config
+      pkgs.lxqt.lxqt-globalkeys
+      pkgs.lxqt.lxqt-l10n
+      pkgs.lxqt.lxqt-notificationd
+      pkgs.lxqt.lxqt-openssh-askpass
+      pkgs.lxqt.lxqt-panel
+      pkgs.lxqt.lxqt-policykit
+      pkgs.lxqt.lxqt-powermanagement
+      pkgs.lxqt.lxqt-qtplugin
+      pkgs.lxqt.lxqt-runner
+      pkgs.lxqt.lxqt-session
+      pkgs.lxqt.lxqt-sudo
+      pkgs.lxqt.obconf-qt
+      pkgs.lxqt.pavucontrol-qt
+      pkgs.lxqt.pcmanfm-qt
+      pkgs.lxqt.qterminal
+      pkgs.lxqt.qtermwidget
+      pkgs.menu-cache
+      pkgs.openbox # default window manager
+      pkgs.qt5.qtsvg # provides QT5 plugins for svg icons
+    ];
+
+    # Link some extra directories in /run/current-system/software/share
+    environment.pathsToLink = [
+      "/share/desktop-directories"
+      "/share/icons"
+      "/share/lxqt"
+    ];
+
+  };
+}