Merge branch 'xorg-updates'
gnu: xorg-server: Update to 1.16.2.901, with many security fixes.
Includes fixes for CVE-2014-8091, CVE-2014-8092, CVE-2014-8093, CVE-2014-8094,
CVE-2014-8095, CVE-2014-8096, CVE-2014-8097, CVE-2014-8098, CVE-2014-8099,
CVE-2014-8100, CVE-2014-8101, CVE-2014-8102, and CVE-2014-8103.
See <http://www.x.org/wiki/Development/Security/Advisory-2014-12-09/>
* gnu/packages/xorg.scm (xorg-server): Update to 1.16.2.901. Move mesa,
resourceproto, scrnsaverproto, and xf86driproto from inputs to
propagated-inputs. Add dri3proto and presentproto to propagated-inputs.
Add eudev and libxshmfence to inputs. Add a 'pre-configure' phase instead
of modifying the 'configure' phase. Adapt substitution that avoids trying
to 'mkdir /var' to build system changes.
* gnu/services/xorg.scm (xserver.conf): Add xf86-input-evdev ModulePath line.
gnu: xf86-video-modesetting: Now uses the same libdrm as mesa.
* gnu/packages/xorg.scm (xf86-video-modesetting): Remove a comment stating
that the libdrm used in this driver is incompatible with the one in mesa,
because it is no longer true.
* gnu/services/xorg.scm (xserver.conf): Uncomment 'xf86-video-modesetting'
ModulePath and remove associated comment.
services: xorg: Make SLiM sessions configurable.
* gnu/services/xorg.scm (%default-xsessions): New variable.
(xsessions-directory): New procedure.
(slim-service): Add #:sessions and #:auto-login-session parameters.
[slim.cfg]: Honor #:sessions.
(xinitrc): Adjust accordingly.
services: static-networking-service: Switch to (guix build syscalls).
* gnu/services/networking.scm (static-networking-service): Remove
#:inetutils parameter. Rewrite using 'configure-network-interface'
and 'set-network-interface-flags'.
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.