about summary refs log tree commit diff
path: root/nixos/modules/services/x11
diff options
context:
space:
mode:
authorLuca Bruno <lucabru@src.gnome.org>2014-05-19 00:17:13 +0200
committerLuca Bruno <lucabru@src.gnome.org>2014-05-20 13:41:39 +0200
commitf07fd89111a0dd3da11ad764064df454399332e6 (patch)
tree5b61ddf72e718d9bfa2c7330dd6fcbe2c2054108 /nixos/modules/services/x11
parent02934df3ee7b7e75fdaf19b2d2874b350165756a (diff)
downloadnixlib-f07fd89111a0dd3da11ad764064df454399332e6.tar
nixlib-f07fd89111a0dd3da11ad764064df454399332e6.tar.gz
nixlib-f07fd89111a0dd3da11ad764064df454399332e6.tar.bz2
nixlib-f07fd89111a0dd3da11ad764064df454399332e6.tar.lz
nixlib-f07fd89111a0dd3da11ad764064df454399332e6.tar.xz
nixlib-f07fd89111a0dd3da11ad764064df454399332e6.tar.zst
nixlib-f07fd89111a0dd3da11ad764064df454399332e6.zip
Allow specifying the gnome3 packages to use for the xserver service
Diffstat (limited to 'nixos/modules/services/x11')
-rw-r--r--nixos/modules/services/x11/desktop-managers/gnome3.nix12
1 files changed, 9 insertions, 3 deletions
diff --git a/nixos/modules/services/x11/desktop-managers/gnome3.nix b/nixos/modules/services/x11/desktop-managers/gnome3.nix
index 3f48035f6bba..63f39ec0d3af 100644
--- a/nixos/modules/services/x11/desktop-managers/gnome3.nix
+++ b/nixos/modules/services/x11/desktop-managers/gnome3.nix
@@ -4,13 +4,13 @@ with lib;
 
 let
   cfg = config.services.xserver.desktopManager.gnome3;
-  gnome3 = pkgs.gnome3;
+  gnome3 = config.environment.gnome3.packageSet;
 
   # Remove packages of ys from xs, based on their names
   removePackagesByName = xs: ys:
     let
       pkgName = drv: (builtins.parseDrvName drv.name).name;
-	  ysNames = map pkgName ys;
+      ysNames = map pkgName ys;
       res = (filter (x: !(builtins.elem (pkgName x) ysNames)) xs);
     in
       filter (x: !(builtins.elem (pkgName x) ysNames)) xs;
@@ -35,6 +35,12 @@ in {
       description = "Enable Gnome 3 desktop manager.";
     };
 
+    environment.gnome3.packageSet = mkOption {
+      default = pkgs.gnome3;
+      example = literalExample "pkgs.gnome3_12";
+      description = "Which Gnome 3 package set to use.";
+    };
+    
     environment.gnome3.excludePackages = mkOption {
       default = [];
       example = "[ pkgs.gnome3.totem ]";
@@ -80,7 +86,7 @@ in {
 
           # Don't let epiphany depend upon gnome-shell
           # Override default mimeapps
-          export XDG_DATA_DIRS=$XDG_DATA_DIRS''${XDG_DATA_DIRS:+:}${pkgs.gnome3.gnome_shell}/share/gsettings-schemas/${pkgs.gnome3.gnome_shell.name}:${mimeAppsList}/share
+          export XDG_DATA_DIRS=$XDG_DATA_DIRS''${XDG_DATA_DIRS:+:}${gnome3.gnome_shell}/share/gsettings-schemas/${gnome3.gnome_shell.name}:${mimeAppsList}/share
 
           # Let gnome-control-center find gnome-shell search providers
           export GNOME_SEARCH_PROVIDERS_DIR=${config.system.path}/share/gnome-shell/search-providers/