Add /run/nss to LD_LIBRARY_PATH

This fixes issues with glibc-binaries (getent for example) that can't
find NSS modules that are not distributed with glibc.

See this discussion:
http://comments.gmane.org/gmane.linux.distributions.nixos/9940
smartd: change 'devices' option from "list of strings" to "list of attribute sets"

The smartd used to expect a list of devices to monitor. After this patch, it
expects a list of attribute sets, which may have two attributes:

 - device: path to the device (required)
 - options: smartd options to apply to this particular device (optional)

A concrete example configuration would be:

  services.smartd = {
    enable = true;
    devices = [ { device = "/dev/sda"; } { device = "/dev/sdb"; options = "-d sat"; } ];
  };

Furthermore, the config option 'deviceOpts' can be used to configure options
that are applied to *every* device.
need a newline in extraModprobeConfig
Merge pull request #119 from jcumming/zfs.130311

need a newline in extraModprobeConfig
Revert "nslcd: Require network.target"

This reverts commit af152556e3d23ff0285691b60870ef6ea7813df6.

The network target is probably not really required, needs
further testing.
extraModprobeConfig: set type to types.lines

This makes it so multiple definitions are merged by adding a newline
between each entry, to avoid the need to add a newline to the end of
every definition of extraModprobeConfig. See #119 for an example of an
issue this has caused.

Signed-off-by: Shea Levy <shea@shealevy.com>
symlink /etc/localtime was broken, /etc/localtime now points to a location in tzdata in stead of glibc
Merge pull request #116 from rickynils/nss

Add /run/nss to LD_LIBRARY_PATH
alsa-store.service: Ensure /var/lib/alsa exists

Signed-off-by: Shea Levy <shea@shealevy.com>
alsa-store.service: Avoid unnecessary shell

Signed-off-by: Shea Levy <shea@shealevy.com>
Merge hardware.pulseaudio and services.pulseaudio

More specifically, this removes services.pulseaudio and adds the option
hardware.pulseaudio.systemWide which defaults to false but can be used to turn
on the system-wide PulseAudio server (previously defined in
services.pulseaudio). Since the two PulseAudio modes are mutually exclusive
anyway (maybe not strictly true, but I don't think is a good idea combining
them) its nicer to be able to reuse server and ALSA configuration between them.

Also the system-wide PulseAudio service has been adjusted to systemd, and a few
things has been fixed (there was no alsa.conf before, for example).

The bottomline is that people that was using hardware.pulseaudio before should
be able to keep doing it in exactly the same way, and people that used
services.pulseaudio must switch over to hardware.pulseaudio.systemWide instead.
Merge pull request #106 from rickynils/pulseaudio

Merge hardware.pulseaudio and services.pulseaudio
Add module for rsyslog. Although rsyslog is supposed to be a drop-in
replacement for sysklogd, it lacks some support for certain arguments
used in the default syslog module of NixOS.
Add WorkingDirectory default configuration value for rsyslog.