services: Make 'nscd-service' configurable; cache hosts/services by default.
Before that, as it was given an empty configuration file, nscd would
actually have all its caches disabled.
* gnu/services/base.scm (<nscd-configuration>, <nscd-cache>): New record
types.
(%nscd-default-caches, %nscd-default-configuration): New variables.
(nscd.conf-file): New procedure.
(nscd-service): Add 'config' parameter. Use 'nscd.conf-file', and
pass its result as the '-f' parameter of nscd.
* doc/guix.texi (Base Services): Update 'nscd-service' documentation
accordingly. Document 'nscd-configuration', 'nscd-cache',
'%nscd-default-configuration', and '%nscd-default-caches'.
services: xorg: Run the window manager from a login shell.
This is a followup to 1d18d87, which fixes <http://bugs.gnu.org/19119>.
* gnu/services/xorg.scm (xinitrc)[builder]: Add 'exec-from-login-shell'
procedure. Use it instead of 'execl' when launching XSESSION, WMAKER,
or RATPOISON.
services: xorg: Add 'xf86-video-sis'.
* gnu/services/xorg.scm (xorg-start-command)[xserver.conf]: Add
ModulePath for 'xf86-video-sis'.
doc: Add xrefs to the lsh manual.
Suggested by Adam Pribyl <pribyl@lowlevel.cz>.
* gnu/services/ssh.scm (lsh-service): Update docstring with xrefs to
the lsh manual. Fix typos.
* doc/guix.texi (Networking Services): Synchronize.
services: user-unmount: Change directory to "/" before unmounting.
* gnu/services/base.scm (user-unmount-service): Add 'chdir' call.
services: xorg: Set argv[0] for the window manager.
* gnu/services/xorg.scm (xinitrc): Set argv[0] when invoking ratpoison
or wmaker.
gnu: Introduce (gnu artwork) module.
* gnu/artwork.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
* gnu/services/xorg.scm: Use it.
(%artwork-repository): Remove.
* gnu/system/grub.scm: Use it.
(%artwork-repository): Remove.
gnu: xorg: Add SLiM theme based on work by Felipe López.
* gnu/services/xorg.scm (%artwork-repository, %default-slim-theme,
%default-slim-theme-name): New variables.
(slim-service): Add #:theme and #:theme-name parameters.
[slim.cfg]: Honor #:theme-name.
Honor #:theme by setting the "SLIM_THEMESDIR" environment variable.
* doc/guix.texi (X Window): Adjust 'slim-service' documentation
accordingly. Document '%default-slim-theme' and
'%default-slim-theme-name'.
services: xorg: Don't pass "-ac" to X.
This had pretty much no effects given "-nolisten tcp".
* gnu/services/xorg.scm (xorg-start-command): Remove "-ac" option.
services: Add 'auto-start?' field to <service>.
* gnu/services.scm (<service>)[auto-start?]: New field.
* gnu/services/dmd.scm (dmd-configuration-file): Honor it.
* gnu/system/install.scm (cow-store-service): Add 'auto-start?' field.
services: Add 'user-unmount-service' as an essential service.
* gnu/services/base.scm (user-unmount-service): New procedure.
* gnu/system.scm (essential-services): Use it.
* gnu/system/install.scm (cow-store-service): Mention it in comment.
services: udev: Make /dev/kvm 666 as a workaround.
* gnu/services/base.scm (kvm-udev-rule): Change /dev/kvm mode to 666 to
work around <http://bugs.gnu.org/18994>.
services: xorg: Add argv[0] in X invocation.
* gnu/services/xorg.scm (xorg-start-command): Add missing argv[0] in
'execl' call.
services: xorg: Allow users to specify a list of resolutions.
* gnu/services/xorg.scm (xorg-start-command): Add #:resolutions
parameter and 'screen-section' procedure. Use it.
* doc/guix.texi (X Window): Adjust accordingly.
services: xorg: Allow users to specify the drivers to use.
* gnu/services/xorg.scm (xorg-start-command): Add #:drivers parameter.
Add 'device-section' procedure, and use it in 'xserver.conf'.
* doc/guix.texi (X Window): Document it.
services: xorg: Fix typo in xserver.conf.
* gnu/services/xorg.scm (xorg-start-command)[xserver.conf]: Add missing
double-quote in AllowMouseOpenFail.
gnu: Add xf86-video-modesetting.
* gnu/packages/xorg.scm (xf86-video-modesetting): New variable.
* gnu/services/xorg.scm (xorg-start-command)[xserver.conf]: Add
ModulePath line for XF86-VIDEO-MODESETTING, commented out.
services: Add NTP service.
* gnu/services/networking.scm (ntp-service): New procedure.
* doc/guix.texi (Networking Services): Document it.
services: Increase delay before SIGKILL is sent when halting.
* gnu/services/base.scm (user-processes-service): Increase the default
value of 'grace-delay'. This leaves more time for processes to clean
up their PID files, /tmp/.X0-lock, etc.