summary refs log tree commit diff
path: root/nixos
diff options
context:
space:
mode:
authorDomen Kožar <domen@dev.si>2014-02-07 00:37:17 +0100
committerDomen Kožar <domen@dev.si>2014-02-07 00:37:17 +0100
commit506a030b910fe7ff619a0ec3cc8a4a59cbbb5bfe (patch)
tree940db5c04e9928351974bd06229388a08a577c10 /nixos
parent65a28e8b7312a4c7c493378c1cbdda7b17fceba1 (diff)
downloadnixlib-506a030b910fe7ff619a0ec3cc8a4a59cbbb5bfe.tar
nixlib-506a030b910fe7ff619a0ec3cc8a4a59cbbb5bfe.tar.gz
nixlib-506a030b910fe7ff619a0ec3cc8a4a59cbbb5bfe.tar.bz2
nixlib-506a030b910fe7ff619a0ec3cc8a4a59cbbb5bfe.tar.lz
nixlib-506a030b910fe7ff619a0ec3cc8a4a59cbbb5bfe.tar.xz
nixlib-506a030b910fe7ff619a0ec3cc8a4a59cbbb5bfe.tar.zst
nixlib-506a030b910fe7ff619a0ec3cc8a4a59cbbb5bfe.zip
gnome3: add missing files
Diffstat (limited to 'nixos')
-rw-r--r--nixos/modules/services/x11/desktop-managers/gnome3.nix58
1 files changed, 58 insertions, 0 deletions
diff --git a/nixos/modules/services/x11/desktop-managers/gnome3.nix b/nixos/modules/services/x11/desktop-managers/gnome3.nix
new file mode 100644
index 000000000000..6c43112c8137
--- /dev/null
+++ b/nixos/modules/services/x11/desktop-managers/gnome3.nix
@@ -0,0 +1,58 @@
+{ config, pkgs, ... }:
+
+with pkgs.lib;
+
+let
+  cfg = config.services.xserver.desktopManager.gnome3;
+  gnome3 = pkgs.gnome3;
+in {
+
+  options = {
+
+    services.xserver.desktopManager.gnome3.enable = mkOption {
+      default = false;
+      example = true;
+      description = "Enable Gnome 3 desktop manager.";
+    };
+
+  };
+
+  config = mkIf cfg.enable {
+
+    # Enable helpful DBus services.
+    security.polkit.enable = true;
+    services.udisks2.enable = true;
+    networking.networkmanager.enable = true;
+    services.upower.enable = config.powerManagement.enable;
+
+    fonts.extraFonts = [ pkgs.dejavu_fonts ];
+
+    services.xserver.desktopManager.session = singleton
+      { name = "gnome3";
+        start = ''
+          # Set GTK_DATA_PREFIX so that GTK+ can find the themes
+          export GTK_DATA_PREFIX=${config.system.path}
+
+          # find theme engines
+          export GTK_PATH=${config.system.path}/lib/gtk-3.0:{config.system.path}/lib/gtk-2.0
+
+          export XDG_MENU_PREFIX=gnome
+
+          ${gnome3.gnome_session}/bin/gnome-session&
+          waitPID=$!
+        '';
+      };
+
+    environment.systemPackages =
+      [ gnome3.evince
+        gnome3.eog
+        pkgs.ibus
+        gnome3.gnome_shell
+        gnome3.gnome_settings_daemon
+        gnome3.gnome_terminal
+        gnome3.gnome_icon_theme
+        gnome3.gnome_themes_standard
+      ];
+  };
+
+}