diff options
Diffstat (limited to 'nixos/modules/services/x11')
12 files changed, 47 insertions, 29 deletions
diff --git a/nixos/modules/services/x11/desktop-managers/gnome3.nix b/nixos/modules/services/x11/desktop-managers/gnome3.nix index b9c97a54fd2..55d7fd80cf9 100644 --- a/nixos/modules/services/x11/desktop-managers/gnome3.nix +++ b/nixos/modules/services/x11/desktop-managers/gnome3.nix @@ -62,6 +62,7 @@ in { }; environment.gnome3.packageSet = mkOption { + type = types.nullOr types.package; default = null; example = literalExample "pkgs.gnome3_16"; description = "Which GNOME 3 package set to use."; diff --git a/nixos/modules/services/x11/desktop-managers/kde4.nix b/nixos/modules/services/x11/desktop-managers/kde4.nix index 21b6243ba18..29cca248cde 100644 --- a/nixos/modules/services/x11/desktop-managers/kde4.nix +++ b/nixos/modules/services/x11/desktop-managers/kde4.nix @@ -66,6 +66,7 @@ in kdeWorkspacePackage = mkOption { internal = true; default = pkgs.kde4.kde_workspace; + defaultText = "pkgs.kde4.kde_workspace"; type = types.package; description = "Custom kde-workspace, used for NixOS rebranding."; }; diff --git a/nixos/modules/services/x11/desktop-managers/kde5.nix b/nixos/modules/services/x11/desktop-managers/kde5.nix index 2aeb4f67d77..e8c768e41fa 100644 --- a/nixos/modules/services/x11/desktop-managers/kde5.nix +++ b/nixos/modules/services/x11/desktop-managers/kde5.nix @@ -102,6 +102,7 @@ in kde5.gwenview kde5.kate kde5.kdegraphics-thumbnailers + kde5.kio-extras kde5.konsole kde5.okular kde5.print-manager @@ -125,6 +126,7 @@ in ++ 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 config.services.samba.enable [ kde5.kdenetwork-filesharing pkgs.samba ] ++ lib.optionals cfg.phonon.gstreamer.enable [ diff --git a/nixos/modules/services/x11/display-managers/kdm.nix b/nixos/modules/services/x11/display-managers/kdm.nix index 558f5e8cfc7..9b937ff7ee1 100644 --- a/nixos/modules/services/x11/display-managers/kdm.nix +++ b/nixos/modules/services/x11/display-managers/kdm.nix @@ -57,6 +57,7 @@ let kdmrc = pkgs.stdenv.mkDerivation { name = "kdmrc"; config = defaultConfig + cfg.extraConfig; + preferLocalBuild = true; buildCommand = '' echo "$config" > $out diff --git a/nixos/modules/services/x11/display-managers/lightdm-greeters/gtk.nix b/nixos/modules/services/x11/display-managers/lightdm-greeters/gtk.nix index 4b598ca48b0..543dd628ce6 100644 --- a/nixos/modules/services/x11/display-managers/lightdm-greeters/gtk.nix +++ b/nixos/modules/services/x11/display-managers/lightdm-greeters/gtk.nix @@ -67,8 +67,9 @@ in theme = { package = mkOption { - type = types.path; + type = types.package; default = pkgs.gnome3.gnome_themes_standard; + defaultText = "pkgs.gnome3.gnome_themes_standard"; description = '' The package path that contains the theme given in the name option. ''; @@ -87,8 +88,9 @@ in iconTheme = { package = mkOption { - type = types.path; + type = types.package; default = pkgs.gnome3.defaultIconTheme; + defaultText = "pkgs.gnome3.defaultIconTheme"; description = '' The package path that contains the icon theme given in the name option. ''; diff --git a/nixos/modules/services/x11/display-managers/lightdm.nix b/nixos/modules/services/x11/display-managers/lightdm.nix index ded694d90d5..9460395f86d 100644 --- a/nixos/modules/services/x11/display-managers/lightdm.nix +++ b/nixos/modules/services/x11/display-managers/lightdm.nix @@ -69,7 +69,7 @@ in greeter = { package = mkOption { - type = types.path; + type = types.package; description = '' The LightDM greeter to login via. The package should be a directory containing a .desktop file matching the name in the 'name' option. @@ -86,6 +86,7 @@ in }; background = mkOption { + type = types.path; description = '' The background image or color to use. ''; diff --git a/nixos/modules/services/x11/display-managers/slim.nix b/nixos/modules/services/x11/display-managers/slim.nix index e3db0230d3b..ce44c9f54a3 100644 --- a/nixos/modules/services/x11/display-managers/slim.nix +++ b/nixos/modules/services/x11/display-managers/slim.nix @@ -61,6 +61,10 @@ in url = "https://github.com/jagajaga/nixos-slim-theme/archive/2.0.tar.gz"; sha256 = "0lldizhigx7bjhxkipii87y432hlf5wdvamnfxrryf9z7zkfypc8"; }; + defaultText = ''pkgs.fetchurl { + url = "https://github.com/jagajaga/nixos-slim-theme/archive/2.0.tar.gz"; + sha256 = "0lldizhigx7bjhxkipii87y432hlf5wdvamnfxrryf9z7zkfypc8"; + }''; example = literalExample '' pkgs.fetchurl { url = "mirror://sourceforge/slim.berlios/slim-wave.tar.gz"; diff --git a/nixos/modules/services/x11/redshift.nix b/nixos/modules/services/x11/redshift.nix index 6614be261e5..4318a17a4fa 100644 --- a/nixos/modules/services/x11/redshift.nix +++ b/nixos/modules/services/x11/redshift.nix @@ -76,6 +76,7 @@ in { package = mkOption { type = types.package; default = pkgs.redshift; + defaultText = "pkgs.redshift"; description = '' redshift derivation to use. ''; diff --git a/nixos/modules/services/x11/terminal-server.nix b/nixos/modules/services/x11/terminal-server.nix index 810cc0c4688..09d0ab07751 100644 --- a/nixos/modules/services/x11/terminal-server.nix +++ b/nixos/modules/services/x11/terminal-server.nix @@ -9,19 +9,6 @@ with lib; -let - - # Wrap Xvfb to set some flags/variables. - xvfbWrapper = pkgs.writeScriptBin "Xvfb" - '' - #! ${pkgs.stdenv.shell} - export XKB_BINDIR=${pkgs.xorg.xkbcomp}/bin - export XORG_DRI_DRIVER_PATH=${pkgs.mesa}/lib/dri - exec ${pkgs.xorg.xorgserver.out}/bin/Xvfb "$@" -xkbdir ${pkgs.xkeyboard_config}/etc/X11/xkb - ''; - -in - { config = { @@ -54,7 +41,7 @@ in { description = "Terminal Server"; path = - [ xvfbWrapper pkgs.gawk pkgs.which pkgs.openssl pkgs.xorg.xauth + [ pkgs.xorgserver.out pkgs.gawk pkgs.which pkgs.openssl pkgs.xorg.xauth pkgs.nettools pkgs.shadow pkgs.procps pkgs.utillinux pkgs.bash ]; diff --git a/nixos/modules/services/x11/window-managers/windowlab.nix b/nixos/modules/services/x11/window-managers/windowlab.nix new file mode 100644 index 00000000000..fb891a39fa4 --- /dev/null +++ b/nixos/modules/services/x11/window-managers/windowlab.nix @@ -0,0 +1,22 @@ +{lib, pkgs, config, ...}: + +let + cfg = config.services.xserver.windowManager.windowlab; +in + +{ + options = { + services.xserver.windowManager.windowlab.enable = + lib.mkEnableOption "windowlab"; + }; + + config = lib.mkIf cfg.enable { + services.xserver.windowManager = { + session = + [{ name = "windowlab"; + start = "${pkgs.windowlab}/bin/windowlab"; + }]; + }; + environment.systemPackages = [ pkgs.windowlab ]; + }; +} diff --git a/nixos/modules/services/x11/xfs.nix b/nixos/modules/services/x11/xfs.nix index 196f3beb41e..ea7cfa1aa43 100644 --- a/nixos/modules/services/x11/xfs.nix +++ b/nixos/modules/services/x11/xfs.nix @@ -30,20 +30,17 @@ in ###### implementation config = mkIf config.services.xfs.enable { - assertions = singleton { assertion = config.fonts.enableFontDir; message = "Please enable fonts.enableFontDir to use the X Font Server."; }; - jobs.xfs = - { description = "X Font Server"; - - startOn = "started networking"; - - exec = "${pkgs.xorg.xfs}/bin/xfs -config ${configFile}"; - }; - + systemd.services.xfs = { + description = "X Font Server"; + after = [ "network.target" ]; + wantedBy = [ "multi-user.target" ]; + path = [ pkgs.xorg.xfs ]; + script = "xfs -config ${configFile}"; + }; }; - } diff --git a/nixos/modules/services/x11/xserver.nix b/nixos/modules/services/x11/xserver.nix index aec6fb0cc04..86f0641b0e3 100644 --- a/nixos/modules/services/x11/xserver.nix +++ b/nixos/modules/services/x11/xserver.nix @@ -13,7 +13,6 @@ let # Map video driver names to driver packages. FIXME: move into card-specific modules. knownVideoDrivers = { - unichrome = { modules = [ pkgs.xorgVideoUnichrome ]; }; virtualbox = { modules = [ kernelPackages.virtualboxGuestAdditions ]; driverName = "vboxvideo"; }; ati = { modules = [ pkgs.xorg.xf86videoati pkgs.xorg.glamoregl ]; }; intel-testing = { modules = with pkgs.xorg; [ xf86videointel-testing glamoregl ]; driverName = "intel"; }; @@ -503,7 +502,7 @@ in systemd.services.display-manager = { description = "X11 Server"; - after = [ "systemd-udev-settle.service" "local-fs.target" "acpid.service" ]; + after = [ "systemd-udev-settle.service" "local-fs.target" "acpid.service" "systemd-logind.service" ]; restartIfChanged = false; |