Commit graph

481 commits

Author SHA1 Message Date
Bjørn Forsman
6cd8f48327 nixos/filesystems: update /etc/fstab comment header 2016-08-24 20:40:58 +02:00
Jan Malakhovski
b267785c43 nixos: generalize copy-paste from stage-1 and zfs to utils 2016-08-23 18:14:06 +00:00
Jan Malakhovski
65d26c4dc1 nixos: apply toposort to fileSystems to support bind and move mounts
And use new `config.system.build.fileSystems` property everywhere.
2016-08-23 18:14:05 +00:00
Jan Malakhovski
2c8ca0d1bd nixos: tasks/fileSystems: cleanup 2016-08-23 18:02:07 +00:00
Bjørn Forsman
8b18f3814f treewide: update cifs-utils attr references (cifs_utils -> cifs-utils) 2016-08-22 17:28:26 +02:00
Nikolay Amiantov
5ff6e98486 modprobe service: drop kmod wrapper 2016-08-19 17:56:49 +03:00
Ricardo M. Correia
1cf9bcaa3f zfs: print the output of the zpool command (if any) when it succeeds 2016-08-18 17:27:57 +02:00
Svein Ove Aas
98b213a110 zfs: Keep trying root import until it works
Works around #11003.
2016-08-16 01:45:02 +01:00
Nikolay Amiantov
ddb75882b6 kbd task: fix colors in early initrd 2016-07-24 15:08:49 +03:00
Rok Garbas
db7b4fb073 Merge pull request #6846 from wizeman/u/zfs-auto-snap-flags
nixos: ZFS auto-snapshot improvements
2016-07-21 01:53:11 +02:00
Nikolay Amiantov
3cc54bbad9 Merge pull request #17082 from abbradar/fix-early-kbd
Use new early kbd-setting code in initrd and fix layouts from external packages
2016-07-20 23:52:45 +04:00
Svein Ove Aas
9a8e0d1c2e zfs: Force sync on shutdown (#16903) 2016-07-19 09:57:13 +02:00
Nikolay Amiantov
cf64a7ecc0 kbd module: fix keymaps search for loadkeys 2016-07-18 23:46:38 +03:00
Nikolay Amiantov
7bed3d0cb3 nixos stage-1: move keymap handling to kbd module 2016-07-18 23:27:45 +03:00
Nikolay Amiantov
d9aafc885f Merge branch 'early-kbd' into staging 2016-07-13 03:56:07 +03:00
Nikolay Amiantov
9e48baa716 kbd service: add support for early loading of fonts and keymaps 2016-07-08 20:44:01 +03:00
Nikolay Amiantov
803b1eedd6 kbd service: add system-wise console resources 2016-07-08 20:44:01 +03:00
Nikolay Amiantov
5622226d5b kbd service: drop a comment now when we do restart vconsole setup 2016-07-08 20:44:01 +03:00
Nikolay Amiantov
6c11d9dd55 kbd service: add system-wise console resources 2016-07-08 12:52:39 +03:00
Nikolay Amiantov
489bbf0609 kbd service: drop a comment now when we do restart vconsole setup 2016-07-03 03:28:29 +03:00
Scott Olson
6d5ed7d971 Make fileSystems example literal.
This fixes the attribute names showing up unquoted in the options documentation.
2016-06-19 01:21:22 -06:00
Eelco Dolstra
c726773f26 cpufreq: Fix "sh: modprobe: command not found" 2016-05-24 21:48:42 +02:00
Franz Pletz
e16851b900 networking module: Add some missing literalExample 2016-04-25 18:15:52 +02:00
Svein Ove Aas
f03dc59803 zfs: Update devNodes description 2016-04-15 17:25:32 +01:00
Vladimír Čunát
ab15a62c68 Merge branch 'master' into closure-size
Beware that stdenv doesn't build. It seems something more will be needed
than just resolution of merge conflicts.
2016-04-01 10:06:01 +02:00
Eelco Dolstra
b250ac9290 Remove setting non-existent sysctl options
(cherry picked from commit 1010ced00c9b65eb7099d10f2ad8502c093655e4)
2016-03-15 17:44:30 +01:00
Rickard Nilsson
6ff5821be6 nixos/filesystems: Fix fs options type error 2016-03-14 17:24:36 +01:00
Nikolay Amiantov
1111f73dde sw-raid: rename mdadmShutdown
See aac666e302
I've forgotten to add the change.
2016-03-09 21:06:27 +03:00
kklas
aac666e302 sw-raid: make mdmon start from initrd
Also add required systemd services for starting/stopping mdmon.

Closes #13447.
abbradar: fixed `mdadmShutdown` service name according to de facto conventions.
2016-03-09 21:03:49 +03:00
Vladimír Čunát
d039c87984 Merge branch 'master' into closure-size 2016-02-14 08:33:51 +01:00
Eelco Dolstra
928035378d Fix typo 2016-02-12 14:35:40 +01:00
Nikolay Amiantov
7ab80e8f79 kbd module: don't setup vconsoles if we are in a container 2016-02-10 13:38:27 +03:00
Aneesh Agrawal
3c5fca9618 filesystems: use list of strings for fs options
Allow usage of list of strings instead of a comma-separated string
for filesystem options. Deprecate the comma-separated string style
with a warning message; convert this to a hard error after 16.09.
15.09 was just released, so this provides a deprecation period during
the 16.03 release.

closes #10518

Signed-off-by: Robin Gloster <mail@glob.in>
2016-02-06 19:48:30 +00:00
Eelco Dolstra
b21ef9c9e6 Don't include wireless-tools/iw/rfkill when wireless is disabled
This is mostly to get rid of some useless stuff in VMs/containers.
2016-02-01 18:19:23 +01:00
Vladimír Čunát
716aac2519 Merge branch 'staging' into closure-size 2016-01-19 09:55:31 +01:00
Thomas Strobel
a04a7272aa Add missing 'type', 'defaultText' and 'literalExample' in module definitions
- add missing types in module definitions
- add missing 'defaultText' in module definitions
- wrap example with 'literalExample' where necessary in module definitions
2016-01-17 19:41:23 +01:00
rnhmjoj
641a951c61 i18n: Fix vconsole colorscheme generation
Close #12442.
abbradar: remove trailing spaces.
2016-01-17 20:24:45 +03:00
Pascal Wittmann
009f944b9f Merge pull request #12315 from tlevine/trackpoint-typo
trackpoint: fix typo in trackpoint speed description
2016-01-11 07:44:52 +01:00
Thomas Levine
2d6ebc9189 trackpoint: fix typo in configuration description
I fixed a typo in the description for hardware.trackpoint.speed.
2016-01-11 04:12:04 +00:00
Robin Gloster
88292fdf09 jobs -> systemd.services 2016-01-07 06:39:06 +00:00
William A. Kennington III
ce8c8f1e1b Merge pull request #11890 from Baughn/zfs
zfs:Add option for zpool import -d, and set it to /dev/disk/by-id.
2016-01-05 14:37:19 -08:00
Tobias Geerinckx-Rice
82419575aa btrfsProgs -> canonical btrfs-progs 2016-01-03 20:38:44 +01:00
Vladimír Čunát
f9f6f41bff Merge branch 'master' into closure-size
TODO: there was more significant refactoring of qtbase and plasma 5.5
on master, and I'm deferring pointing to correct outputs to later.
2015-12-31 09:53:02 +01:00
Timofei Kushnir
5925f9f709 Network script module fix 2015-12-25 03:43:49 +03:00
Svein Ove Aas
7688206a0b zfs:Change default for -d to /dev/disk/by-id 2015-12-23 00:33:06 +01:00
Svein Ove Aas
9a82dd87f7 zfs:Add zfs.devNodes option for zpool import -d 2015-12-23 00:32:25 +01:00
Svein Ove Aas
7e86e9a048 zfs:Always import from /dev/disk/by-id 2015-12-12 20:32:38 +00:00
Luca Bruno
5b0352a6a4 Merge branch 'master' into closure-size 2015-12-11 18:31:00 +01:00
Nikolay Amiantov
f3e8bb780c nixos/kbd: make systemd-vconsole-setup work with KMS 2015-12-03 22:54:24 +03:00
Luca Bruno
920b1d3591 Merge branch 'master' into closure-size 2015-11-29 16:50:26 +01:00
Kovacsics Robert (NixOS)
912f60c1e7 Revert part of #9982 to be in line with #9925
When creating PR #9982, I undid a line of PR #9925, that was some
cleanups and fixes, so this undoes that damage.
2015-11-26 14:40:31 +00:00
Luca Bruno
a412927924 Merge remote-tracking branch 'origin/master' into closure-size 2015-11-25 21:37:30 +01:00
Vladimír Čunát
333d69a5f0 Merge staging into closure-size
The most complex problems were from dealing with switches reverted in
the meantime (gcc5, gmp6, ncurses6).
It's likely that darwin is (still) broken nontrivially.
2015-11-20 14:32:58 +01:00
Jaka Hudoklin
22c61d3bfc Merge pull request #10218 from offlinehacker/nixos/format_options
add support for auto format, format options
2015-11-18 22:33:01 +01:00
Domen Kožar
0567714b99 Merge pull request #10610 from joachifm/scsi-link-pm
nixos: set scsi link power policy using udev
2015-11-16 13:21:36 +01:00
William A. Kennington III
6602f49495 Revert "Revert "Merge pull request #9543 from NixOS/staging.post-15.06""
This reverts commit 741bf840da.

This reverts the fallout from reverting the major changes.
2015-11-14 12:32:51 -08:00
William A. Kennington III
9579c9ec7f Merge commit 'cb21b77' into master.upstream
This is a partial merge of staging for builds which are working
2015-11-13 15:53:10 -08:00
rnhmjoj
2a0f9d40ff i18n: add color scheme option (close #9626) 2015-11-09 14:53:59 +01:00
William A. Kennington III
dd2de66d61 Merge branch 'master.upstream' into staging.upstream 2015-10-30 17:16:07 -07:00
Joachim Fasting
7b2b366552 nixos: set scsi link power policy using udev
Also improve option type checking by enumerating valid policy names.
2015-10-25 19:38:53 +01:00
Nikolay Amiantov
de8b8b35a4 nixos/swap: refactor, add randomEncryption option 2015-10-20 15:56:12 +03:00
William A. Kennington III
8a44a36ca4 Merge branch 'master.upstream' into staging.upstream 2015-10-15 10:22:28 -07:00
Robbin C
528ebb4e5e Fix typo in nixos/modules/tasks/filesystems/nfs.nix.
statd should be cfg.statd.
2015-10-14 08:48:34 +08:00
Thomas Strobel
acb1b3cdd0 networking module: wlanInterfaces: fix file name of udev rules 2015-10-06 20:12:39 +02:00
Thomas Strobel
881ec1efb8 networking module: vswitches: re-structure dependencies to systemd units 2015-10-06 20:12:39 +02:00
Eelco Dolstra
741bf840da Revert "Merge pull request #9543 from NixOS/staging.post-15.06"
This reverts commit f61176c539, reversing
changes made to a27ca029ee.

Conflicts:
	pkgs/development/libraries/ncurses/default.nix
2015-10-06 15:24:20 +02:00
Thomas Strobel
d286ac5887 networking module: restructure wlanInterfaces
Restructure internals of networking.wlanInterfaces option to generate
proper '.device' systemd targets for the WLAN interfaces.
2015-10-04 11:00:05 +02:00
Jaka Hudoklin
8a63ae526f add support for auto format, format options 2015-10-04 03:15:29 +02:00
Vladimír Čunát
f361938b21 Merge staging into closure-size
This makes gcc5 the default builder, etc.
2015-10-03 15:23:13 +02:00
Tuomas Tynkkynen
0e6d0a5868 unionfs-fuse: Fix the utillinux path hack for multiple-outputs
Double ugh.
2015-10-03 14:08:52 +02:00
Vladimír Čunát
5227fb1dd5 Merge commit staging+systemd into closure-size
Many non-conflict problems weren't (fully) resolved in this commit yet.
2015-10-03 13:33:37 +02:00
Thomas Strobel
213bb58752 networking module: fix for wlanInterfaces 2015-10-02 12:16:20 +02:00
Thomas Strobel
6dfb16730b networking module: fix DocBook tags 2015-10-01 17:50:42 +02:00
Thomas Strobel
c0248c0c1f networking module: init 'wlanInterfaces' option
Configuration option for setting up virtual WLAN interfaces.

If the hardware NIC supports it, then multiple virtual WLAN interfaces can be
configured through the options of the new 'networking.wlanInterfaces' module.
For example, the following configuration transforms the device with the persistent
udev name 'wlp6s0' into a managed and a ad hoc device with the device names
'wlan-managed0' and 'wlan-adhoc0', respectively:

networking.wlanInterfaces = {
    "wlan-managed0" = {
        type = "managed";
        device = "wlp6s0";
    };
    "wlan-adhoc0" = {
        type = "ibss";
        device = "wlp6s0";
    };
};

Internally, a udev rule is created that matches wlp6s0 and runs a script which adds
the missing virtual interfaces and re-configures the wlp6s0 interface accordingly.
Once the new interfaces are created by the Linux kernel, the configuration of the
interfaces is managed by udev and systemd in the usual way.
2015-10-01 15:35:30 +02:00
Eelco Dolstra
0e3c1e31b1 Remove zfs-git and spl-git
See https://github.com/NixOS/nixpkgs/pull/10042#commitcomment-13422343.
2015-09-29 14:54:12 +02:00
ts468
6d5a742c2e Merge pull request #10000 from ts468/upstream.vswitch
nixos networking: add vswitch option
2015-09-29 00:52:58 +02:00
Edward Tjörnhammar
a0918e2e62 Merge pull request #9982 from KoviRobi/fix-encrypted-non-root-devices
encrypted-devices service: Fix keyed mount, clarify descriptions.
2015-09-27 12:42:08 +02:00
Thomas Strobel
59bc47c9ed nixos networking: add vswitch option
Add a configuration option for Open vSwitch that is
similar to the option for the Linux kernel ethernet
bridge.
2015-09-25 11:55:27 +02:00
Eelco Dolstra
9d92bd7845 Add filesystem option to automatically grow to the maximum size
This is primarily for EC2 and other cloud environments, where the disk
may be bigger than the original image.
2015-09-24 19:59:44 +02:00
Eelco Dolstra
f40c7ed143 Remove relatime mount option
This has been the kernel default for a long time.
2015-09-24 19:58:41 +02:00
Kovacsics Robert (NixOS)
70fd4b4b02 encrypted-devices service: Fix keyed mount, clarify descriptions.
Not enough arguments were supplied to cryptsetup when a key-file was
specified. Also don't try to unlock keyedEncDevs with a password.
2015-09-22 09:49:28 +01:00
aszlig
f9766f885d
nixos/filesystems: Skip check for vboxsf.
We don't even have any means to check a VirtualBox shared folder, so
let's not even try to.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2015-09-21 22:32:14 +02:00
aszlig
cd4caed35a
nixos/filesystems: Improve vboxsf default options.
The default options for all file systems currently are
"defaults.relatime", which works well on file systems which support the
relatime option.

Unfortunately, this is not the case for the VirtualBox shared folder
filesystem, so until now, you need to set something like:

fileSystems."/foo" = {
  device = "foo";
  fsType = "vboxsf";
  options = "defaults";
};

Otherwise mounting the file system would fail.

Now, we provide only the "defaults" option to the "vboxsf" file system,
so something like this is enough:

fileSystems."/foo" = {
  device = "foo";
  fsType = "vboxsf";
};

An alternative to that could be to document that you need to set default
options, but we really should do what users expect instead of forcing
them to look up the documentation as to why this has failed.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2015-09-21 22:32:14 +02:00
Jaka Hudoklin
74209a4ca8
virtualbox service: add support for vboxsf guest filesystem
Closes #9358

Signed-off-by: Jaka Hudoklin <jakahudoklin@gmail.com>
Fix reference to bin/mount.vboxsf.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2015-09-21 22:32:13 +02:00
Jan Malakhovski
6eadb16022 nixos: fix some types 2015-09-18 18:48:50 +00:00
Eelco Dolstra
fab3090693 Don't include wireless tools in containers 2015-07-22 12:51:21 +02:00
Eelco Dolstra
6e6a96d42c Some more type cleanup 2015-06-15 18:18:46 +02:00
Nikolay Amiantov
7355066bfe nixos: add support for exfat filesystem 2015-05-27 18:59:33 +03:00
Aristid Breitkreuz
4835763e13 Trackpoint scrolling on T450s et al 2015-05-25 20:00:35 +02:00
Vladimír Čunát
375bc8def7 Merge staging into closure-size 2015-05-05 11:49:03 +02:00
Vladimír Čunát
e81e2785c7 xfsprogs: fix outputs and references 2015-04-21 09:02:40 +02:00
Eelco Dolstra
d5f187de03 Typo 2015-04-20 16:12:28 +02:00
Eelco Dolstra
d4d6b8cc61 Grmbl 2015-04-20 14:24:42 +02:00
Eelco Dolstra
fc91ba52df ntfs.nix: Remove copypasta jfs stuff
Thanks to @wizeman for spotting this!
2015-04-20 14:06:44 +02:00
Cray Elliott
479f5f4ae6 fix rebuild when using ntfs partitions
needed to define inInitrd, used vfat.nix as a template
2015-04-19 15:17:23 -07:00
Eelco Dolstra
2b6d011bec Include cifs-utils only when needed
Issue #7117.
2015-04-19 22:06:45 +02:00
Eelco Dolstra
57b05765c9 Don't include ntfs-3g by default
Issue #7117.
2015-04-19 22:06:45 +02:00
William A. Kennington III
9718561589 nixos/vfat: Readd fsck.reiserfs 2015-03-28 19:07:45 -07:00
William A. Kennington III
c379847fda nixos/vfat: Readd fsck.vfat 2015-03-28 19:06:43 -07:00
William A. Kennington III
4868649f03 nixos/initrd: Generic library copying 2015-03-28 18:37:29 -07:00
Ricardo M. Correia
6197fdc02d nixos/zfs: Refactor auto-snapshots and make them persistent
If you power off your machine frequently, you could miss the execution
of some snapshots.

This is more troublesome the more infrequently the snapshots are
triggered. For example, monthly snapshots only execute at exactly
midnight on the first day of the month.  If you only have your
machine powered on at that time with probability 50%, then half the
snapshots won't be triggered.

This means that if you wanted to keep 3 monthly snapshots, then instead
of keeping 3 months' worth of snapshotted data as you expected, you would
end up with snapshots spanning back 6 months.

Adding the "Persistent = yes" option to auto-snapshot timer units makes
a missed snapshot execute when booting up the machine.
2015-03-20 04:37:44 +01:00
Ricardo M. Correia
b0a51de6c1 nixos/zfs: Keep zero-sized auto snapshots by default
Otherwise, in certain cases, snapshots of infrequently-modified
filesystems can be kept for a much longer time than the user would
normally expect, and cause a large amount of extra disk space to be
consumed.

Also added flag to snapshot filesystems in parallel by default.

I've also added a configuration option for zfs-auto-snapshot flags, so
that the user can override them.

For example, the user may want to append --utc to the list of default
options, so that the snapshot names don't cause name conflicts or
apparent time reversals due to daylight savings or timezone changes.
2015-03-20 04:37:44 +01:00
Ricardo M. Correia
4d2317e6eb nixos/zfs: Don't default to git version for kernels >= 3.19
Stable version 0.6.3-1.3 works with kernels 3.19.x.
2015-03-19 19:37:33 +01:00
Robin Gloster
a8a350e679 Add Elanthec PS/2 Trackpoint (Thinkpad L430) 2015-03-15 00:09:04 +01:00
Joachim Fasting
d375550ead nixos: add a few missing type specifiers under boot.* 2015-02-28 09:19:23 +01:00
William A. Kennington III
e453f99446 nixos/networkd: Add an assertion for unsupported rstp 2015-02-24 13:09:34 -08:00
William A. Kennington III
35e9d3c112 nixos/zfs: Use the git version for kernels unsupported by 0.6.3 2015-02-11 15:11:56 -08:00
William A. Kennington III
0fa4c9d6d3 nixos/zfs: Fix references to zfs packages now that they are split 2015-02-07 15:07:39 -08:00
Ricardo M. Correia
1b66077205 nixos: Don't do filesystem checks on ZFS or NFS filesystems 2015-01-21 17:39:53 +01:00
William A. Kennington III
8e5ef7da54 nixos/network-interfaces: Fix rstp support 2015-01-14 10:34:28 -08:00
William A. Kennington III
9a7766e054 nixos/network-interfaces: Add mstpd support for bridges 2015-01-07 14:49:24 -08:00
Tobias Geerinckx-Rice
c64257b8e5 Fix user-facing typos (mainly in descriptions) 2014-12-30 03:31:03 +01:00
wmertens
5f7530a1d7 zfs hostId: Instructions to derive from machine-id 2014-12-18 22:52:29 +01:00
William A. Kennington III
1036c66d43 nixos/network-interfaces: Add ipv6 gateway support 2014-12-17 17:56:29 -08:00
Shea Levy
10751129d0 Don't require forcing utils to get to lib 2014-12-10 19:28:45 -05:00
Bjørn Forsman
f85ad2d378 nfs-utils: align attrname with pkgname
nfsUtils => nfs-utils. Keep copy of old attribute for backward
compatibility.
2014-12-06 17:01:05 +01:00
William A. Kennington III
8a94c06595 nixos: Add network-pre.target and adjust firewall start ordering 2014-12-01 17:19:44 -08:00
William A. Kennington III
2b06a92c2a nixos/nfs: Fix dependency ordering 2014-12-01 17:19:44 -08:00
William A. Kennington III
1c04e69bce nixos/networking: Fix more harmless errors 2014-12-01 01:18:32 -08:00
William A. Kennington III
74ed5eee41 nixos/network: Fix typo 2014-11-30 05:16:07 -08:00
William A. Kennington III
47d3db5c30 nixos/network: Only check slave interfaces which are configured 2014-11-30 05:12:49 -08:00
William A. Kennington III
01332149d4 nixos/networkd: Fix dhcp being enabled when it should be disabled 2014-11-30 04:46:59 -08:00
William A. Kennington III
4b9c5ebee6 nixos/networking: Fix dependencies for macvlan which should be on bridges 2014-11-30 01:25:09 -08:00
William A. Kennington III
a911f9989c nixos/networkd: Fix macvlan called with null mode 2014-11-30 01:19:54 -08:00
William A. Kennington III
16827ff287 nixos/nfs: Fix Test 2014-11-30 01:14:57 -08:00
William A. Kennington III
66f45268ab nixos/networking: Improve service ordering 2014-11-29 22:47:04 -08:00
William A. Kennington III
7ecb084b77 nixos/networking: More fixes 2014-11-29 22:35:03 -08:00
William A. Kennington III
299b59d1c4 nixos/network-interfaces: More fixes 2014-11-27 22:54:01 -08:00
William A. Kennington III
fbe9ac05d3 nixos/network-interfaces: Add maclvan support 2014-11-26 16:29:24 -08:00
William A. Kennington III
1860ee27b0 nixos/networking: Fixes 2014-11-26 16:29:24 -08:00
William A. Kennington III
4f2a041345 nixos/network-interfaces: Make it clear that networkd is experimental 2014-11-26 11:22:03 -08:00
William A. Kennington III
2c42738231 nixos/network-interfaces: Refactor scripts for reliability and dependency removal 2014-11-26 11:22:03 -08:00
William A. Kennington III
7005e289da nixos/network-interfaces: Promote secondary addresses when primary addresses expire 2014-11-26 11:22:03 -08:00
William A. Kennington III
c7d46687c5 nixos/network-interfaces: Support mac address and mtu universally 2014-11-26 11:22:03 -08:00
William A. Kennington III
2057d9087f nixos: Support network-online target in addition to ip-up 2014-11-26 11:22:03 -08:00
William A. Kennington III
8cffa37787 networkd: Support Host Resolvconf 2014-11-26 11:22:02 -08:00
William A. Kennington III
295a17f872 nixos/network-interfaces-scripted: Fix network-setup triggering 2014-11-26 11:22:02 -08:00
William A. Kennington III
59f512ef7d nixos/network-interfaces: Provide a networkd implementation 2014-11-26 11:22:02 -08:00
William A. Kennington III
a332c4eac5 systemd: Enable more network services 2014-11-26 11:22:02 -08:00
Ricardo M. Correia
e9affb4274 nixos: Add system-wide option to set the hostid
The old boot.spl.hostid option was not working correctly due to an
upstream bug.

Instead, now we will create the /etc/hostid file so that all applications
(including the ZFS kernel modules, ZFS user-space applications and other
unrelated programs) pick-up the same system-wide host id. Note that glibc
(and by extension, the `hostid` program) also respect the host id configured in
/etc/hostid, if it exists.

The hostid option is now mandatory when using ZFS because otherwise, ZFS will
require you to force-import your ZFS pools if you want to use them, which is
undesirable because it disables some of the checks that ZFS does to make sure it
is safe to import a ZFS pool.

The /etc/hostid file must also exist when booting the initrd, before the SPL
kernel module is loaded, so that ZFS picks up the hostid correctly.

The complexity in creating the /etc/hostid file is due to having to
write the host ID as a 32-bit binary value, taking into account the
endianness of the machine, while using only shell commands and/or simple
utilities (to avoid exploding the size of the initrd).
2014-11-12 22:31:49 +01:00
Ricardo M. Correia
12e77fdc3f nixos/zfs: Improve the ZFS boot process
It turns out that the upstream systemd services that import ZFS pools contain
serious bugs. The first major problem is that importing pools fails if there
are no pools to import. The second major problem is that if a pool ends up in
/etc/zfs/zpool.cache but it disappears from the system (e.g. if you
reboot but during the reboot you unplug your ZFS-formatted USB pen drive),
then the import service will always fail and it will be impossible to get rid
of the pool from the cache (unless you manually delete the cache).

Also, the upstream service would always import all available ZFS pools every
boot, which may not be what is desired in some cases.

This commit will solve these problems in the following ways:

1. Ignore /etc/zfs/zpool.cache. This seems to be a major source of
issues, and also does not play well with NixOS's philosophy of
reproducible configurations. Instead, on every boot NixOS will try to import
the set of pools that are specified in its configuration.  This is also the
direction that upstream is moving towards.

2. Instead of trying to import all ZFS pools, only import those that are
actually necessary. NixOS will automatically determine these from the
config.fileSystems.* option. Also, the user can import any additional
pools every boot by adding them to the config.boot.zfs.extraPools
option, but this is only necessary if their filesystems are not
specified in config.fileSystems.*.

3. Added options to configure if ZFS should force-import ZFS pools. This may
currently be necessary, especially if your pools have not been correctly
imported with a proper host id configuration (which is probably true for 99% of
current NixOS ZFS users). Once host id configuration becomes mandatory when
using ZFS in NixOS and we are sure that most users have updated their
configurations and rebooted at least once, we should disable force-import by
default. Probably, this shouldn't be done before the next stable release.

WARNING: This commit may change the order in which your non-ZFS vs ZFS
filesystems are mounted.  To avoid this problem (now or in the future)
it is recommended that you set the 'mountpoint' property of your ZFS
filesystems to 'legacy', and that you manage them using
config.fileSystems, just like any other non-ZFS filesystem is usually
managed in NixOS.
2014-11-12 22:31:49 +01:00
Ricardo M. Correia
3b0fa60a98 zfs: Enable systemd
Also remove custom zfs services from NixOS.  This makes NixOS more aligned with
upstream.

More importantly, it prepares the way for NixOS to use ZED (the ZFS event
daemon). This service will automatically be enabled but it is not possible to
configure it via configuration.nix yet.
2014-11-12 22:31:49 +01:00
Luca Bruno
b77d166b17 nixos: move bcache udev rule in a new bcache.nix module 2014-11-10 22:19:43 +01:00
Luca Bruno
31df4f70af nixos: Add boot.initrd.extraUdevRulesCommands 2014-11-10 22:19:43 +01:00
aszlig
23160383e3
nixos: Add a filesystem module for JFS.
I'm not using JFS, but this is to mainly make jfsutils available if you
have defined a JFS filesystem in your configuration.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2014-10-22 08:22:57 +02:00
William A. Kennington III
a5bed86fa4 zfs: zpool-import service must be wanted to start 2014-10-11 01:53:24 -07:00
William A. Kennington III
362699376a nixos/network-interfaces: Bond interface configuration must wait for the bond device service
Also fixes some formatting and removal of slave devices.
2014-10-07 23:07:10 -07:00
William A. Kennington III
f1572d37c3 network-interfaces: Bonding fixes 2014-10-04 18:37:00 -07:00
William A. Kennington III
93eb325004 network-interface: Add extra bond options 2014-10-04 17:59:10 -07:00
William A. Kennington III
d084245e74 iproute: Fix regressions introduced in 3.16.0
3.16.0 introduced a regression where vlan and veth devices could not be
created due to a check in the code for existing devices. This applies
the upstream patch which fixes the issue.

Additionally, this corrects the nixos network-interfaces task which now
needs to specify the name parameter when adding links.
2014-09-26 00:45:38 -07:00
Rickard Nilsson
66bbbc205d nixos/nfs: Fix configuration merge 2014-09-16 13:53:18 +02:00
aszlig
141cb70d5c
nixos/networking: Fix typo in ipv6prefixLength.
Within the module it's referenced with an uppercase "P" and ipv6Address
also begins with an uppercase "A" after the "6", so let's make it
consistent.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2014-09-05 02:54:39 +02:00
Michael Raskin
ab023cc559 Merge pull request #3843 from wkennington/master.iffix
nixos/network-interfaces: Sanitize sys-subsystem device names
2014-09-03 21:15:46 +04:00
Michael Raskin
c4d85240e5 Merge pull request #3267 from Mathnerd314/cpufreq_noise
Remove non-cpufreq_* modules since they are loaded by udev
2014-09-03 18:46:01 +04:00
William A. Kennington III
d48a7a17df nixos/network-interfaces: Sanitize sys-subsystem device names
Currently, nixos will allow for interface names with special characters
such as the hyphen to be used. This presents a problem when using
systemd device names as the namespace paths are separated using hyphens.
Within systemd, if a device name has a hyphen it should be replaced with
the escape sequence \x2d.

This patch sanitizes all interface names before they are used in a
systemd device string.
2014-09-03 00:31:38 -07:00
Michael Raskin
c3e7588367 Merge pull request #3747 from wkennington/master.explicit
nixos/network-interfaces: Allow explicit virtual interface type setting
2014-09-03 11:25:28 +04:00
William A. Kennington III
36614ff3e2 Revert "Revert "Merge pull request #2449 from wkennington/master.grub""
This reverts commit 94205f5f21.

Conflicts:
	nixos/modules/system/boot/loader/grub/install-grub.pl
2014-09-02 09:16:13 -07:00
Michael Raskin
5bbeba3d97 Merge pull request #3911 from vlstill/nfs-port_pullreq
nfsd: Make it possible to fix rpc.{mountd,statd,lockd} ports.
2014-09-02 00:53:52 +04:00
Vladimir Still
a735c308b6 nfsd: Make it possible to fix rpc.{mountd,statd,lockd} ports. 2014-08-31 22:00:16 +02:00
William A. Kennington III
02ecc98e87 nixos/network-interfaces: Fix bug in converting old ipAddresses 2014-08-31 09:47:18 -07:00
William A. Kennington III
3d037ebb94 Revert "Revert "Merge pull request #3182 from wkennington/master.ipv6""
This reverts commit ea8910652f.
2014-08-31 09:46:16 -07:00
Rob Vermaas
ea8910652f Revert "Merge pull request #3182 from wkennington/master.ipv6"
This reverts commit b23fd65854, reversing
changes made to 43654cba2c.
2014-08-31 10:58:54 +02:00
Michael Raskin
94205f5f21 Revert "Merge pull request #2449 from wkennington/master.grub"
This reverts commit 469f22d717, reversing
changes made to 0078bc5d8f.

Conflicts:
	nixos/modules/installer/tools/nixos-generate-config.pl
	nixos/modules/system/boot/loader/grub/install-grub.pl
	nixos/release.nix
	nixos/tests/installer.nix

I tried to keep apparently-safe code in conflicts.
2014-08-31 12:58:37 +04:00
William A. Kennington III
ef92afe0da nixos/network-interfaces: Fix vlan device coming up during switch 2014-08-30 08:20:14 -07:00
William A. Kennington III
ed6040fc8d nixos/network-interface: Append -netdev for all device units
Currently, device units are named directly after the name the user
specifies for the device. A bridge device named lan will be defined
within lan.service. This becomes a problem if you want your interface
named nginx but also want to run the nginx service.

This patch fixes the issue by appending netdev to all virtually created
network device units. Therefore, the lan bridge -> lan-netdev.service.
This naming convention is used for all types of network devices in order
to ensure that all network devices are unique.
2014-08-30 08:20:14 -07:00
William A. Kennington III
1c08efb8ab nixos/network-interfaces: Allow explicit virtual interface type setting 2014-08-30 08:20:14 -07:00
William A. Kennington III
4d8390be60 nixos/network-interfaces: Support the old ip configuration convention 2014-08-30 08:05:00 -07:00
William A. Kennington III
86c0f8c549 Refactor nixos files relying on the old ipAddress / prefixLength / subnetMask attributes 2014-08-30 07:33:38 -07:00
William A. Kennington III
1ff4b83875 nixos/network-interfaces: Add flush upon interface going down 2014-08-30 07:33:38 -07:00
William A. Kennington III
098c8f4c77 nixos/network-interfaces: Add support for multiple ipv4 / ipv6 addresses 2014-08-30 07:33:38 -07:00
William A. Kennington III
02ab48d0ee Enable grub zfsSupport if zfs is built into the initrd 2014-08-28 13:35:34 -07:00
Jaka Hudoklin
fd52ebd160 Merge pull request #3558 from geerds/trackpoint
Add "emulateWheel" option for trackpoint configuration
2014-08-27 13:50:26 +02:00
William A. Kennington III
40d88e9f80 nixos/network-interfaces: Add sit interfaces
Previously, we had no method for creating 6-to-4 tunneled interfaces.
This patch adds the option networking.sits, which allows the user to
create named 6-to-4 sit devices.
2014-08-14 14:06:56 -05:00
Jascha Geerds
6aa3888d97 trackpoint: Add emulateWheel option 2014-08-13 12:11:20 +02:00
Peter Simons
2d326e5032 Merge remote-tracking branch 'origin/master' into staging.
Conflicts:
	pkgs/desktops/e18/enlightenment.nix
2014-08-04 16:51:47 +02:00
lethalman
c6f9222a22 Merge pull request #3370 from geerds/trackpoint
Fix trackpoint configuration on some systems
2014-08-03 20:45:09 +02:00
Eelco Dolstra
e68b0c7f5f Mount unionfs-fuse filesystems using the normal fileSystems option 2014-07-30 16:04:15 +02:00
Eelco Dolstra
f94f659a31 Don't require a device for tmpfs filesystems 2014-07-30 13:18:33 +02:00
Eelco Dolstra
94ce6ec866 Print a sensible error message if no device is specified for a filesystem 2014-07-30 13:18:33 +02:00
Eelco Dolstra
b7c543136a Move CIFS support into a separate module 2014-07-30 12:39:35 +02:00
Jascha Geerds
ead06339b8 Add activationScript for TrackPoint configuration 2014-07-28 23:33:05 +02:00
Eelco Dolstra
cb7b871bd6 initrd: Include filesystem support for /nix, /var etc. 2014-07-28 22:31:18 +02:00
Jascha Geerds
6fe59796b2 Use a udev rule for trackpoint configuration 2014-07-25 17:40:13 +02:00
Jascha Geerds
49e6ef2a19 Fix trackpoint configuration on some systems 2014-07-25 14:01:06 +02:00
Mathnerd314
87b3e7a93c Remove non-cpufreq_* modules since they are loaded by udev. 2014-07-14 02:35:09 +02:00
Eelco Dolstra
95b828de42 Merge remote-tracking branch 'origin/master' into staging 2014-07-07 13:16:26 +02:00
Shea Levy
b3cfb9084b Get all lib functions from lib, not pkgs.lib, in modules 2014-07-02 12:28:18 -04:00
Eelco Dolstra
06fc1ec34d Merge remote-tracking branch 'origin/master' into staging
Conflicts:
	pkgs/servers/serfdom/default.nix
2014-07-01 11:25:41 +02:00
Eelco Dolstra
40f7b0f9df Another attempt to eradicate ensureDir
See c556a6ea46.
2014-06-30 14:56:10 +02:00
Bjørn Forsman
4def9a762f nixos: add some missing '.' in option descriptions 2014-06-24 21:25:11 +02:00
Michael Raskin
8007f32712 Merge pull request #2380 from wkennington/cache.search
network-interfaces: Add an option for specifying search to resolv.conf
2014-06-12 12:56:41 +04:00
Florian Friesdorf
0136fcb3df Merge pull request #2726 from pSub/trackpoint
Added an option to configure sensitivity and speed of trackpoints.
2014-06-07 13:09:26 +02:00
Michael Raskin
19ce0416f1 Merge pull request #2416 from edwtjo/encdev-module
Enable encrypted backing devices in fileystem configurations
2014-05-27 01:45:17 -07:00
Pascal Wittmann
128636ff24 Added an option to configure sensitivity and speed of trackpoints. 2014-05-23 10:18:03 +02:00
Emery Hemingway
c96d5fe170 nixos: f2fs filesystem module support (close #2085) 2014-05-11 13:53:26 +02:00
Rickard Nilsson
b87b6870f8 When auto-formatting ext devices, use the -F flag to make it work with unpartioned disks 2014-05-09 16:49:03 +02:00
William A. Kennington III
84a94ff006 network-interfaces: Add an option for specifying search to resolv.conf 2014-05-02 12:42:20 -05:00
Eelco Dolstra
f5cd4eef11 cpufreq: Don't fail if the CPU doesn't support frequency setting 2014-04-28 19:13:04 +02:00
Edward Tjörnhammar
22f73bfd85 Enable encrypted backing devices in fileystem configurations 2014-04-26 23:26:23 +02:00
Ricardo M. Correia
419a71e1e5 spl, zfs: Add git versions, based on recent commits
Upstream has not been tagging new versions for a long time, but we need
compatibility with newer kernels. The 0.6.2 versions already have a bunch of
backported compatibility patches, but 3.14 kernels need even more.

Also, the git versions have fixed a bunch of crashes and other bugs, so perhaps
we should just bite the bullet and just use recent git versions (as sometimes
upstream recommends, when people run into bugs).

This adds a new "boot.zfs.useGit" boolean option, so that a user can
easily opt into using the git versions.
2014-04-23 01:42:52 +02:00
Eelco Dolstra
21573af9fb Containers: Use /etc/resolv.conf supplied by the host
This used to work with systemd-nspawn 203, because it bind-mounted
/etc/resolv.conf (so openresolv couldn't overwrite it). Now it's just
copied, so we need some special handling.
2014-04-18 16:48:11 +02:00
Eelco Dolstra
179acfb664 Allow upstream systemd units to be extended
If you define a unit, and either systemd or a package in
systemd.packages already provides that unit, then we now generate a
file /etc/systemd/system/<unit>.d/overrides.conf. This makes it
possible to use upstream units, while allowing them to be customised
from the NixOS configuration. For instance, the module nix-daemon.nix
now uses the units provided by the Nix package. And all unit
definitions that duplicated upstream systemd units are finally gone.

This makes the baseUnit option unnecessary, so I've removed it.
2014-04-17 18:52:31 +02:00
Eelco Dolstra
8b7d73abba Don't run the cpufreq service in VMs 2014-04-16 10:36:16 +02:00
Eelco Dolstra
60a84019b4 Don't make containers depend on cpupower 2014-04-16 01:11:32 +02:00
William A. Kennington III
dd209e901c cpu-freq: Use cpupower instead of cpufrequtils
Additionally, put the powersave utility in charge of loading the
cpufrequency modules based on the governor specified in the
configuration.
2014-04-16 01:10:26 +02:00
Eelco Dolstra
e8eea659a0 Don't enable LVM2 in containers
It's a somewhat pointless dependency.
2014-04-15 23:43:39 +02:00
Eelco Dolstra
29027fd1e1 Rewrite ‘with pkgs.lib’ -> ‘with lib’
Using pkgs.lib on the spine of module evaluation is problematic
because the pkgs argument depends on the result of module
evaluation. To prevent an infinite recursion, pkgs and some of the
modules are evaluated twice, which is inefficient. Using ‘with lib’
prevents this problem.
2014-04-14 16:26:48 +02:00
Shea Levy
8b5c617237 Add fuse to env by default
Fixes #458
2014-04-03 21:36:13 -04:00
Ricardo M. Correia
bb188bbba7 nixos: Add ZFS auto-snapshotting module 2014-03-15 01:56:42 +01:00
Shea Levy
602cf8d78c Merge branch 'u/zfs-import' of git://github.com/wizeman/nixpkgs
zfs: Misc fixes
2014-03-14 19:40:34 -04:00
Shea Levy
8502d84bd2 Merge branch 'nixos/network-interfaces/ipv6' of git://github.com/offlinehacker/nixpkgs
nixos/network-interfaces: add support for static ipv6 addresses
2014-03-14 18:54:59 -04:00
Jaka Hudoklin
2297f31339 nixos/network-interfaces: do not try to enable or disable ipv6 in container 2014-03-10 12:39:22 +01:00
Ricardo M. Correia
02e2431661 zfs: Don't look for devices only in /dev
If we don't give out a directory to 'zpool import', it will use libblkid
to automatically find all existing ZFS devices.
2014-03-04 12:58:11 +01:00
William A. Kennington III
38bc05158d network-interfaces: Add the ability to create bond devices
This patch adds support for the creations of new bond devices, aggregate
pipes of physical devices for extra throughput or failover.

Additionally, add better correction at the startup of a bridge
of vlan interface (delete old, stale interfaces).
2013-12-31 09:28:52 -06:00
Mathijs Kwik
3668970f7f Merge pull request #1430 from wkennington/mtu
network-interfaces: Add mtu setting support
2013-12-30 00:53:45 -08:00
William A. Kennington III
c6ab810e37 network-interfaces: Add mtu setting support
Adds a setting to the network interface configuration for changing the
mtu for each specified interface.
2013-12-30 02:52:55 -06:00
William A. Kennington III
cabc0647d9 network-interfaces: Add support for creating vlans
This patch adds support for vlan creation at machine startup, so that we
can adjust interface settings for vlan devices using nix.
2013-12-29 21:54:24 -06:00
Eelco Dolstra
2b1f212494 Disable various services when running inside a container 2013-11-26 18:19:45 +01:00
Eelco Dolstra
dc87f8e080 Check whether fileSystems defines the root FS 2013-11-18 18:04:16 +01:00
Eelco Dolstra
f8a034172a Fix broken Conflicts options 2013-11-18 18:04:16 +01:00
Jaka Hudoklin
dd2dc699fa nixos/network-interfaces: add support for static ipv6 addresses 2013-11-13 13:10:07 +01:00
Bjørn Forsman
dc352536a8 nixos: capitalize a bunch of service descriptions
(systemd service descriptions that is, not service descriptions in "man
configuration.nix".)

Capitalizing each word in the description seems to be the accepted
standard.

Also shorten these descriptions:
 * "Munin node, the agent process" => "Munin Node"
 * "Planet Venus, an awesome ‘river of news’ feed reader" => "Planet Venus Feed Reader"
2013-11-09 20:45:50 +01:00
Eelco Dolstra
408b8b5725 Add lots of missing option types 2013-10-30 18:47:43 +01:00
William A. Kennington III
c2f35087d2 Add ZFS dependencies to the initrd so that the zpool command works.
Remove unneeded zfs mount, since zpool automatically mounts everything.

Close #1128.
2013-10-30 16:17:44 +02:00
Eelco Dolstra
862e3dd977 Substitute "types.uniq types.string" -> "types.str" 2013-10-30 14:57:42 +01:00
Eelco Dolstra
1d104c792b Remove the dhclient module
It's no longer used by NixOS (replaced by dhcpcd).
2013-10-29 17:39:32 +01:00
Eelco Dolstra
dbefab9cf4 Do not allow multiple definitions of IP addresses etc. within an interface 2013-10-28 22:45:57 +01:00
Eelco Dolstra
d5047faede Remove uses of the "merge" option attribute
It's redundant because you can (and should) specify an option type, or
an apply function.
2013-10-28 22:45:56 +01:00
Eelco Dolstra
7cf0e0bda8 Manual: Fix bad \" characters 2013-10-28 22:45:56 +01:00
Eelco Dolstra
3e001244e4 Load the xfs kernel module on demand 2013-10-13 17:35:57 +02:00
Eelco Dolstra
5c1f8cbc70 Move all of NixOS to nixos/ in preparation of the repository merge 2013-10-10 13:28:20 +02:00