diff options
Diffstat (limited to 'nixos/modules/services')
10 files changed, 74 insertions, 23 deletions
diff --git a/nixos/modules/services/desktops/gnome3/evolution-data-server.nix b/nixos/modules/services/desktops/gnome3/evolution-data-server.nix index a8f8da0eed56..2db2e2fe1c34 100644 --- a/nixos/modules/services/desktops/gnome3/evolution-data-server.nix +++ b/nixos/modules/services/desktops/gnome3/evolution-data-server.nix @@ -37,6 +37,8 @@ in services.dbus.packages = [ gnome3.evolution_data_server ]; + systemd.packages = [ gnome3.evolution_data_server ]; + }; } diff --git a/nixos/modules/services/desktops/gnome3/gnome-terminal-server.nix b/nixos/modules/services/desktops/gnome3/gnome-terminal-server.nix new file mode 100644 index 000000000000..384cede679c6 --- /dev/null +++ b/nixos/modules/services/desktops/gnome3/gnome-terminal-server.nix @@ -0,0 +1,44 @@ +# GNOME Documents daemon. + +{ config, pkgs, lib, ... }: + +with lib; + +let + gnome3 = config.environment.gnome3.packageSet; +in +{ + + ###### interface + + options = { + + services.gnome3.gnome-terminal-server = { + + enable = mkOption { + type = types.bool; + default = false; + description = '' + Whether to enable GNOME Terminal server service, + needed for gnome-terminal. + ''; + }; + + }; + + }; + + + ###### implementation + + config = mkIf config.services.gnome3.gnome-terminal-server.enable { + + environment.systemPackages = [ gnome3.gnome_terminal ]; + + services.dbus.packages = [ gnome3.gnome_terminal ]; + + systemd.packages = [ gnome3.gnome_terminal ]; + + }; + +} diff --git a/nixos/modules/services/desktops/gnome3/gvfs.nix b/nixos/modules/services/desktops/gnome3/gvfs.nix index a07cdadbb12b..6bbabe8d3c56 100644 --- a/nixos/modules/services/desktops/gnome3/gvfs.nix +++ b/nixos/modules/services/desktops/gnome3/gvfs.nix @@ -37,6 +37,8 @@ in services.dbus.packages = [ gnome3.gvfs ]; + systemd.packages = [ gnome3.gvfs ]; + services.udev.packages = [ pkgs.libmtp.bin ]; }; diff --git a/nixos/modules/services/desktops/gnome3/tracker.nix b/nixos/modules/services/desktops/gnome3/tracker.nix index 8c5935a5ee3c..dcaa60103a3b 100644 --- a/nixos/modules/services/desktops/gnome3/tracker.nix +++ b/nixos/modules/services/desktops/gnome3/tracker.nix @@ -37,6 +37,8 @@ in services.dbus.packages = [ gnome3.tracker ]; + systemd.packages = [ gnome3.tracker ]; + }; } diff --git a/nixos/modules/services/mail/opensmtpd.nix b/nixos/modules/services/mail/opensmtpd.nix index fb94560e10aa..5856b4697553 100644 --- a/nixos/modules/services/mail/opensmtpd.nix +++ b/nixos/modules/services/mail/opensmtpd.nix @@ -1,17 +1,16 @@ { config, lib, pkgs, ... }: -with pkgs; with lib; let cfg = config.services.opensmtpd; - conf = writeText "smtpd.conf" cfg.serverConfiguration; + conf = pkgs.writeText "smtpd.conf" cfg.serverConfiguration; args = concatStringsSep " " cfg.extraServerArgs; sendmail = pkgs.runCommand "opensmtpd-sendmail" {} '' mkdir -p $out/bin - ln -s ${opensmtpd}/sbin/smtpctl $out/bin/sendmail + ln -s ${pkgs.opensmtpd}/sbin/smtpctl $out/bin/sendmail ''; in { @@ -48,21 +47,19 @@ in { }; serverConfiguration = mkOption { - type = types.string; - default = ""; + type = types.lines; example = '' listen on lo accept for any deliver to lmtp localhost:24 - ''; + ''; description = '' The contents of the smtpd.conf configuration file. See the - OpenSMTPD documentation for syntax information. If this option - is left empty, the OpenSMTPD server will not start. + OpenSMTPD documentation for syntax information. ''; }; procPackages = mkOption { - type = types.listOf types.path; + type = types.listOf types.package; default = []; description = '' Packages to search for filters, tables, queues, and schedulers. @@ -100,12 +97,11 @@ in { systemd.services.opensmtpd = let procEnv = pkgs.buildEnv { name = "opensmtpd-procs"; - paths = [ opensmtpd ] ++ cfg.procPackages; + paths = [ pkgs.opensmtpd ] ++ cfg.procPackages; pathsToLink = [ "/libexec/opensmtpd" ]; }; in { wantedBy = [ "multi-user.target" ]; - wants = [ "network.target" ]; after = [ "network.target" ]; preStart = '' mkdir -p /var/spool/smtpd diff --git a/nixos/modules/services/networking/networkmanager.nix b/nixos/modules/services/networking/networkmanager.nix index 65ffaece4772..8f353979d3fc 100644 --- a/nixos/modules/services/networking/networkmanager.nix +++ b/nixos/modules/services/networking/networkmanager.nix @@ -198,6 +198,9 @@ in { { source = "${networkmanager_l2tp}/etc/NetworkManager/VPN/nm-l2tp-service.name"; target = "NetworkManager/VPN/nm-l2tp-service.name"; } + { source = "${networkmanager_strongswan}/etc/NetworkManager/VPN/nm-strongswan-service.name"; + target = "NetworkManager/VPN/nm-strongswan-service.name"; + } ] ++ optional (cfg.appendNameservers == [] || cfg.insertNameservers == []) { source = overrideNameserversScript; target = "NetworkManager/dispatcher.d/02overridedns"; diff --git a/nixos/modules/services/web-servers/apache-httpd/trac.nix b/nixos/modules/services/web-servers/apache-httpd/trac.nix index 3196edc2838b..87ed36e35305 100644 --- a/nixos/modules/services/web-servers/apache-httpd/trac.nix +++ b/nixos/modules/services/web-servers/apache-httpd/trac.nix @@ -102,7 +102,6 @@ in pkgs.setuptools pkgs.pythonPackages.genshi pkgs.pythonPackages.psycopg2 - pkgs.python.modules.sqlite3 subversion ]; }; diff --git a/nixos/modules/services/x11/desktop-managers/gnome3.nix b/nixos/modules/services/x11/desktop-managers/gnome3.nix index dc71531759b8..5d1af09e7aa7 100644 --- a/nixos/modules/services/x11/desktop-managers/gnome3.nix +++ b/nixos/modules/services/x11/desktop-managers/gnome3.nix @@ -82,7 +82,7 @@ in { environment.gnome3.packageSet = mkOption { default = null; - example = literalExample "pkgs.gnome3_20"; + example = literalExample "pkgs.gnome3_22"; description = "Which GNOME 3 package set to use."; apply = p: if p == null then pkgs.gnome3 else p; }; @@ -108,6 +108,7 @@ in { services.gnome3.gnome-documents.enable = mkDefault true; services.gnome3.gnome-keyring.enable = true; services.gnome3.gnome-online-accounts.enable = mkDefault true; + services.gnome3.gnome-terminal-server.enable = mkDefault true; services.gnome3.gnome-user-share.enable = mkDefault true; services.gnome3.gvfs.enable = true; services.gnome3.seahorse.enable = mkDefault true; diff --git a/nixos/modules/services/x11/display-managers/gdm.nix b/nixos/modules/services/x11/display-managers/gdm.nix index 52847d2f8d2c..d3aa63fd4284 100644 --- a/nixos/modules/services/x11/display-managers/gdm.nix +++ b/nixos/modules/services/x11/display-managers/gdm.nix @@ -95,9 +95,8 @@ in services.xserver.displayManager.job = { environment = { - GDM_X_SERVER = "${cfg.xserverBin} ${cfg.xserverArgs}"; + GDM_X_SERVER_EXTRA_ARGS = "${cfg.xserverArgs}"; GDM_SESSIONS_DIR = "${cfg.session.desktops}"; - XDG_CONFIG_DIRS = "${gnome3.gnome_settings_daemon}/etc/xdg"; # Find the mouse XCURSOR_PATH = "~/.icons:${config.system.path}/share/icons"; }; @@ -108,10 +107,12 @@ in systemd.services.display-manager.wants = [ "systemd-machined.service" ]; systemd.services.display-manager.after = [ "systemd-machined.service" ]; - systemd.services.display-manager.path = [ gnome3.gnome_shell gnome3.caribou pkgs.xorg.xhost pkgs.dbus_tools ]; + systemd.services.display-manager.path = [ gnome3.gnome_session ]; services.dbus.packages = [ gdm ]; + systemd.user.services.dbus.wantedBy = [ "default.target" ]; + programs.dconf.profiles.gdm = "${gdm}/share/dconf/profile/gdm"; # Use AutomaticLogin if delay is zero, because it's immediate. diff --git a/nixos/modules/services/x11/xserver.nix b/nixos/modules/services/x11/xserver.nix index f5ed52338182..db60e47c3ea6 100644 --- a/nixos/modules/services/x11/xserver.nix +++ b/nixos/modules/services/x11/xserver.nix @@ -547,18 +547,19 @@ in }; }; - services.xserver.displayManager.xserverArgs = - [ "-terminate" + services.xserver.displayManager.xserverArgs = mkDefault ( + [ #"-terminate" "-config ${configFile}" "-xkbdir" "${cfg.xkbDir}" # Log at the default verbosity level to stderr rather than /var/log/X.*.log. - "-verbose" "3" "-logfile" "/dev/null" - ] ++ optional (cfg.display != null) ":${toString cfg.display}" - ++ optional (cfg.tty != null) "vt${toString cfg.tty}" + #"-verbose" "3" "-logfile" "/dev/null" + ] #++ optional (cfg.display != null) ":${toString cfg.display}" + #++ optional (cfg.tty != null) "vt${toString cfg.tty}" ++ optional (cfg.dpi != null) "-dpi ${toString cfg.dpi}" - ++ optional (!cfg.enableTCP) "-nolisten tcp" + #++ optional (!cfg.enableTCP) "-nolisten tcp"); ++ optional (cfg.autoRepeatDelay != null) "-ardelay ${toString cfg.autoRepeatDelay}" - ++ optional (cfg.autoRepeatInterval != null) "-arinterval ${toString cfg.autoRepeatInterval}"; + ++ optional (cfg.autoRepeatInterval != null) "-arinterval ${toString cfg.autoRepeatInterval}" +); services.xserver.modules = concatLists (catAttrs "modules" cfg.drivers) ++ |