Commit graph

2692 commits

Author SHA1 Message Date
Rob Vermaas 28f3d02c29 symlink /etc/localtime was broken, /etc/localtime now points to a location in tzdata in stead of glibc 2013-03-12 10:56:43 +01:00
Shea Levy d67d3b5b6a 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>
2013-03-12 05:51:45 -04:00
Rickard Nilsson 78f3da65ec Revert "nslcd: Require network.target"
This reverts commit af152556e3.

The network target is probably not really required, needs
further testing.
2013-03-12 09:38:22 +01:00
Jack Cummings 60e408dd6b need a newline in extraModprobeConfig 2013-03-11 02:02:10 -07:00
Peter Simons 415ff3c39a 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.
2013-03-10 01:19:44 +01:00
Shea Levy 763835e770 Console key map: Make option uniq
Signed-off-by: Shea Levy <shea@shealevy.com>
2013-03-09 06:27:27 -05:00
Vladimír Čunát a3d8e6eeba xfce: update the xinitrc path 2013-03-09 10:55:57 +01:00
Bjørn Forsman d89ba0697f Add Transmission BitTorrent service
Enable it with

  services.transmission.enable = true;

and optionally configure it

  services.transmission.settings =
    {
      download-dir = "/srv/torrents/";
      incomplete-dir = "/srv/torrents/.incomplete/";
      incomplete-dir-enabled = true;
      rpc-whitelist = "127.0.0.1,192.168.*.*";
      # for users in group "transmission" to have access to torrents
      umask = 2;
    };

The above settings are written/merged into settings.json each time the
service is about to start.
2013-03-08 16:47:09 +01:00
Shea Levy f1d48aec43 Don't mount /nix/store ro if it's a mountpoint
In principle this could work, but the current remount logic in nix fails
to remount mountpoints that are root in their own filesystem (as would
be the case with bind-mounting a mountpoint over itself). nixos/nix#98
is aimed at fixing this.

Signed-off-by: Shea Levy <shea@shealevy.com>
2013-03-08 10:42:34 -05:00
Shea Levy bc21ccc981 readonly-mountpoint: Remove unusued variable 2013-03-07 19:05:54 -05:00
Shea Levy 6d6d3d4228 readOnlyStore: Don't do a read-only bind-mount of an already read-only store.
Signed-off-by: Shea Levy <shea@shealevy.com>
2013-03-07 19:00:21 -05:00
Rickard Nilsson c948494342 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
2013-03-07 16:54:42 +01:00
Shea Levy 35093b8a28 Silence a harmless warning on kernels without the 'path' parameter for firmware_class. 2013-03-05 20:33:41 -05:00
Rickard Nilsson af152556e3 nslcd: Require network.target 2013-03-05 19:45:27 +01:00
Mathijs Kwik 09680dec6a read-only-store functionality should apply even when /nix/store is on a separate filesystem 2013-03-04 22:46:06 +01:00
Mathijs Kwik 134750f6ac gummiboot: fix typo 2013-03-04 22:46:06 +01:00
Mathijs Kwik e05a37d736 rename deprecated option 2013-03-04 22:46:06 +01:00
Lluís Batlle i Rossell a9b3dbf8ea Fixing the vaapiDrivers; it didn't work, with only one driver 2013-03-04 22:35:33 +01:00
Shea Levy bfe6c13f09 D'oh! 2013-03-04 10:03:01 -05:00
Shea Levy 0a81724a88 systemd-sysctl.service: Don't depend on basic.target 2013-03-04 09:57:24 -05:00
Shea Levy 70378ad2b7 Add our firmware path to the in-kernel lookup path
Newer kernels (since torvalds/linux@abb139e75c) try to
read firmware directly from the filesystem before falling back to a
userspace helper (udev) if firmware cannot be found (in even newer
kernels, the fallback path can be disabled altogether). By default, only
certain paths in /lib/firmware* are searched, so this was initially not
helpful for NixOS.

Since torvalds/linux@2760284206 (which,
based on the commit message, was implemented just for NixOS, go us!),
though, an extra path can be dynamically prepended to the search path.
So do that, in three ways:

1. Pass a kernel command line option in case the module is built-in
2. Add a line to modprobe.conf in case the module isn't yet loaded by
activation-time
3. Add an activation script to set the option in /sys in case the module
is already loaded by activation-time.
2013-03-04 09:42:03 -05:00
Rickard Nilsson 5737604b13 xfce: Set GTK_PATH to system.path/lib/gtk-2.0, so xfce can find all theme engines. 2013-03-04 10:51:33 +01:00
Bjørn Forsman 61c07244e8 Add lighttpd web server module 2013-03-03 20:16:44 +01:00
Domen Kozar 854a37aa7e add most basic nginx service 2013-03-03 12:12:17 +01:00
Eelco Dolstra d99fce2631 installation-cd-base.nix: Use boot.kernel.sysctl 2013-03-02 20:06:02 +01:00
Eelco Dolstra 7f7e18cfce Enable hardlink and symlink restrictions
This prevents many time-of-check-time-of-use security bugs.  Ubuntu
enables these by default as well so they shouldn't cause many
problems.
2013-03-02 20:06:02 +01:00
Eelco Dolstra 080bf5614f Add a module for setting sysctl parameters
This adds an option ‘boot.kernel.sysctl’ and generates a file
/etc/sysctl/nixos.conf read by systemd-sysctl.service.
2013-03-02 20:06:02 +01:00
Bjørn Forsman ec2378f07b systemd-logind: fix config file header: [Logind] => [Login]
man logind.conf clearly states that the header is [Login] (no 'd').
Without this fix services.logind.extraConfig does not take effect
because logind ignores the invalidly named section.
2013-03-02 19:45:47 +01:00
Shea Levy 7e10bcb4fd modules/testing/minimal-kernel: linuxPackagesFor no longer takes a 'self' argument 2013-03-02 09:10:58 -05:00
David Guibert ed6e0262e0 bring bridge interfaces up
The bridge is not becoming operational until it is brought into the UP state.
When the bridge is statically configured, this is mandatory.
2013-03-02 10:24:46 +01:00
Bjørn Forsman 08c9a0ad5e Add service.logind.extraConfig option
So that we can customize systemd-logind in configuration.nix.

Example:
  services.logind.extraConfig = "HandleLidSwitch=ignore";

See man logind.conf for available options.
2013-03-02 00:24:34 +01:00
Patrick Wheeler fc7c7ae91a Remove vmware comment 2013-03-01 11:05:00 -06:00
Patrick John Wheeler ea3eb991b7 Fix Xorg-server on vmware inconjunction with fix to
xf86videovmware[1].

Adds "vmware" to list of default options of
services.xerver.videoDrivers.

new default:
 [ "ati" "cirrus" "intel" "vesa" "vmware" ]

old default:
 [ "ati" "cirrus" "intel" "vesa" ]

[1] Pull request for xf86videovmware found at
https://github.com/NixOS/nixpkgs/pull/338.
2013-03-01 02:53:08 +01:00
Rickard Nilsson 568683316b mpd: Start service with exec 2013-02-28 19:26:19 +01:00
Lluís Batlle i Rossell 8a7b44a5e7 xfs wants 'crc32c', to be able to mount anything
Like btrfs.
2013-02-27 22:22:12 +01:00
Shea Levy 7ac425a22f Merge pull request #102 from iElectric/deluge
Add deluged and deluge.web services
2013-02-27 11:19:08 -08:00
Domen Kozar c50d7cbc8d use ExecStart instead of script, this way we get rid of systemd wrapper scripts 2013-02-27 20:13:14 +01:00
Domen Kozar bb89f2eb99 We don't need an explicit uid/gid. We also don't need web to depend
on deluged, since it can be started before it.
2013-02-27 20:06:10 +01:00
Shea Levy f3d4d24d6b dd-agent: Run as a separate user 2013-02-27 09:25:37 -05:00
Domen Kozar 71f4330d3f use path to deluge script correctly 2013-02-27 10:58:28 +01:00
Domen Kozar 99edd5d575 run deluge under deluge user/group 2013-02-26 22:53:52 +01:00
Eelco Dolstra 85188d19c5 nix-daemon: Restart when nix.conf changes 2013-02-26 03:15:29 +01:00
Domen Kozar 259fd8e34a don't use quotes when setting example to true 2013-02-25 22:39:47 +01:00
Rickard Nilsson cc3549fa34 Add ActiveMQ service 2013-02-25 16:50:10 +01:00
Rickard Nilsson e44021494c mongodb: Add initialisation service
The mongodb service runs as user mongodb, and therefore
the preStart-script has no permissions to set up mongodb
directories. This is solved by adding an initialisation
service that runs as root and just sets up the required
directories.
2013-02-25 09:04:31 +01:00
Domen Kozar a6f0d984fe Add deluge and deluge web services 2013-02-24 17:33:48 +01:00
Rickard Nilsson b0f33f2052 Add options for setting theme and setup-script in KDM 2013-02-22 09:34:36 +01:00
Rok Garbas f2a0710bee Merge pull request #97 from iElectric/mpd.mkdir
mkdir musicDirecotry for mpd before startnig the service
2013-02-21 20:00:48 -08:00
Domen Kozar a953ed57c9 mkdir musicDirecotry for mpd before startnig the service 2013-02-21 23:05:40 +01:00
Shea Levy e0f35b77d8 rename.nix: Remove annoying traces 2013-02-21 14:43:02 -05:00
Shea Levy 497aeabd23 systemd automatically mounts securityfs (if it's enabled) 2013-02-21 14:22:18 -05:00
Shea Levy fb7b7a2887 Update EFI installation CD to meet the requirements of the new gummiboot 2013-02-21 13:30:42 -05:00
Shea Levy 5f29704861 gummiboot-builder.py: Update to latest gummiboot 2013-02-21 12:40:33 -05:00
Eelco Dolstra 7b8958b6c5 Fix the boot.hardwareScan option
Fixes #95.
2013-02-21 11:32:51 +01:00
viric f43729298d Merge pull request #93 from aristidb/master
Implementation: services.xserver.driSupport32Bits: Intel support via mesa (#92)
2013-02-20 11:52:22 -08:00
Shea Levy e80cfe7d2d gummiboot-builder.py: Not rewriting entries probably doesn't save much time, and is problematic in the case where you delete the latest generation before your rebuild 2013-02-19 20:47:23 -05:00
Shea Levy 6c6d40452f Stage 1 mounts securityfs, so require that in the kernel 2013-02-19 20:47:23 -05:00
Vladimír Čunát 9de455cf2e Merge pull request #53 from jcumming/zfs.121204
add a zfs module
2013-02-19 11:35:20 -08:00
Vladimír Čunát 8e765363d5 Merge pull request #86 from maggesi/blcr-updates
blcr module: fix (and simplify)
2013-02-19 11:30:52 -08:00
Vladimír Čunát c2a213e559 Merge pull request #70 from cpages/master
Support driSupport32Bit for nvidia legacy 304
2013-02-19 11:29:14 -08:00
Aristid Breitkreuz 37be1c8982 x11/mesa: driSupport32Bit for the mesa implementation 2013-02-19 18:28:25 +01:00
Shea Levy 338ef594c7 Add boot.initrd.compressor option 2013-02-19 11:55:39 -05:00
Shea Levy b83be79adf default-websockify: Stop when reconfigured (i.e. new ports added/removed) 2013-02-18 11:55:46 -05:00
Shea Levy 762ea5c578 websockify: Add unit descriptions 2013-02-18 11:55:10 -05:00
Shea Levy 969fe07be6 Websockify: End descriptions with a period. 2013-02-18 11:51:33 -05:00
Eelco Dolstra 18e8724e64 Log the configuration when booting / switching 2013-02-18 15:39:47 +01:00
Eelco Dolstra 202340e3f6 nixos-rebuild build-vm: Override filesystems defined in the normal config 2013-02-18 15:39:47 +01:00
Peter Simons a5e443295b Merge pull request #90 from iElectric/xbmc
Add xbmc window manager
2013-02-18 01:31:43 -08:00
Peter Simons 09bfc9a53e modules/config/fonts.nix: revert "export GDFONTPATH in /etc/profile"
This reverts commit 2802538dc2. The idea
was good, but unfortunately $GDFONTPATH has a different format, i.e.
programs that use this variable don't descend into the directories
listed here like fontconfig does, so we cannot use the same values for
both settings.
2013-02-17 23:13:27 +01:00
Peter Simons 2802538dc2 modules/config/fonts.nix: export GDFONTPATH in /etc/profile
Set the environment variable GDFONTPATH to the list of directories where fonts
are expected to be installed. This is search path is used by same GD-based
applications, such as Gnuplot.

Alternatively, we could rely on fontconfig to achieve the same thing, i.e. by
running

  for n in $(fc-list | sed -r -e 's|^([^:]+):.*$|\1|'); do echo $(dirname "$n"); done | sort | uniq

to get that list at run-time, but the static approach feels more deterministic.
2013-02-17 22:47:08 +01:00
Domen Kozar 4a66331625 add xbmc window manager 2013-02-16 23:19:09 +01:00
Eelco Dolstra 233cc2fdaa Add a module for MiniDLNA
Now my NixOS machine can serve videos to my Bluray player!
2013-02-16 23:08:53 +01:00
Shea Levy 08fdc234c8 Fix manual build 2013-02-15 14:36:20 -05:00
Shea Levy 59a4df3159 Add websockify service 2013-02-14 21:50:41 -05:00
Shea Levy 3ad424632b Linux 3.6 has been EOL'd, hopefully 3.7 works for the fuloong2f 2013-02-14 14:37:00 -05:00
Shea Levy b669633d63 gummiboot-builder.py: Handle the case where there's no /etc/machine-id.
Bug hit by add^_ in IRC when installing from the livecd, as there's no /mnt/etc/machine-id
2013-02-12 10:47:52 -05:00
Eelco Dolstra 46b7ddf402 Add option to disable predictable network interface naming 2013-02-11 16:01:01 +01:00
Evgeny Egorochkin aaffb21f25 bluetooth: add the systemd unit needed for activation by recent bluez versions 2013-02-10 20:30:02 +02:00
Evgeny Egorochkin 06f90c6ffc Tor-privoxy: quick and dirty fix for activation under systemd 2013-02-10 20:29:17 +02:00
Marco Maggesi c593065585 Fix (and simplify) the blcr module. 2013-02-08 08:57:42 +01:00
Shea Levy 12d77805ef nixos-install: Unset NIX_REMOTE 2013-02-06 12:20:52 -05:00
Shea Levy 5e88e9b2ff nixos-install: Fully resolve symlinks in the paths to nixos/nixpkgs sources. 2013-02-05 10:37:50 -05:00
Shea Levy 98b7253b29 nixos-install: Append the default nixos-channel path to $NIX_PATH 2013-02-05 09:44:00 -05:00
Shea Levy 05f01685a0 D'oh 2013-02-05 06:39:18 -05:00
Eelco Dolstra 8ef4074811 Use nss_myhostname from systemd 2013-02-04 15:50:37 +01:00
Shea Levy 6199d4bb8e nixos-install: Don't grep nix.conf directly, use nix perl bindings instead 2013-02-04 09:44:32 -05:00
Shea Levy 99623e9940 nixos-install: If NIX_CONF_DIR is unset, use /etc/nix 2013-02-04 09:27:56 -05:00
Shea Levy e83f946f9e nixos-install: Respect the build-users-group of the host 2013-02-04 07:46:31 -05:00
Shea Levy 722d8497e7 nixos-install: Respect /home/shlevy/src:/nix/var/nix/profiles/per-user/root/channels/nixos:nixpkgs=/etc/nixos/nixpkgs:nixos=/etc/nixos/nixos:nixos-config=/etc/nixos/configuration.nix:services=/etc/nixos/services to find the nixos and nixpkgs sources, only copy the nixos channel if it exists 2013-02-04 07:46:31 -05:00
Shea Levy 9db243b4aa nixos-install: Respect host $NIX_CONF_DIR and don't assume nix.conf exists 2013-02-04 07:46:31 -05:00
Eelco Dolstra 979117b6b8 Selectively allow /etc files to be disabled
For instance, if you don't want NixOS to emit /etc/hosts, you
can say:

  environment.etc.hosts.enable = false;
2013-02-03 14:28:18 +01:00
Eelco Dolstra 1daab1ebf5 environment.etc: Add convenience option 'text'
This allows writing

  environment.etc.hosts.text = "127.0.0.1 localhost";

instead of

  environment.etc.hosts.source = pkgs.writeText "hosts" "127.0.0.1 localhost";
2013-02-03 14:28:18 +01:00
Eelco Dolstra ab238804b8 Turn environment.etc into an attribute set
This provides a more convenient syntax and allows easier overriding.

For example,

  environment.etc = singleton
    { target = "vconsole.conf";
      source = vconsoleConf;
    };

can now be written as

  environment.etc."vconsole.conf".source = vconsoleConf;
2013-02-03 14:28:18 +01:00
Eelco Dolstra 73152e1702 etc.nix: Fix style 2013-02-03 14:28:17 +01:00
Shea Levy 36088abb39 gummiboot-builder: Only read /etc/machine-id once per invocation 2013-02-02 21:16:12 -05:00
Shea Levy d57df55566 gummiboot-builder: When NIXOS_INSTALL_GRUB is set and efibootmgr is used, prepend the gummiboot entry to the boot entries list 2013-02-02 21:10:09 -05:00
Shea Levy c384ea26e4 Update iso_efi to use gummiboot 2013-02-02 00:54:05 -05:00
Shea Levy 3f37031c4f Merge branch 'gummiboot' into upstream-master 2013-02-02 00:04:31 -05:00
Shea Levy 02e209b139 Add gummiboot module.
We should probably eventually get rid of the old direct boot stub approach.
2013-02-02 00:03:45 -05:00
Eelco Dolstra 88e4569147 systemd: Allow whitespace in environment values 2013-02-01 13:40:44 +01:00