Instead it's enough to depend on
sys-subsystem-net-devices-<interface>.device, which in turn has a
"wants" dependency on the service (if any) that creates the interface.
For each statically configured interface, we now create a unit
‘<interface>-cfg.service’ which gets started as soon as the network
device comes up. Similarly, each bridge defined in
‘networking.bridges’ and virtual interface in ‘networking.interfaces’
is created by a service ‘<interface>.service’.
So if we have
networking.bridges.br0.interfaces = [ "eth0" "eth1" ];
networking.interfaces =
[ { name = "br0";
ipAddress = "192.168.1.1";
}
];
then there will be a unit ‘br0.service’ that depends on
‘sys-subsystem-net-devices-eth0.device’ and
‘sys-subsystem-net-devices-eth1.device’, and a unit ‘br0-cfg.service’
that depends on ‘sys-subsystem-net-devices-br0.device’.
It specifies what mingetty will be stopped, if a bad filesystem
triggers an emergency shell.
That should be ttyS0 on headless systems, and in that case,
nixos should stop the ttyS0 mingetty from getting in.
If passno is set, then systemd will instantiate a systemd-fsck unit,
which in turn will instantiate a <device>.device unit
(e.g. "none.device"). Since no such device exists, mounting will
fail. So don't set passno.
proxy_arp (and proxy_ndp for ipv6) can be turned on on a few
interfaces (at least 2).
This is mainly useful for creating pseudo-bridges between a real
interface and a virtual network such as VPN or a virtual machine for
interfaces that don't support real bridging (most wlan interfaces).
As ARP proxying acts slightly above the link-layer, below-ip traffic
isn't bridged, so things like DHCP won't work. The advantage above
using NAT lies in the fact that no IP addresses are shared, so all
hosts are reachable/routeable.
Systemd's systemd-vconsole-setup.service reads locale and console
font/keymap settings from these files. In particular, it sets the
virtual console to UTF-8 mode depending on the LANG setting.
This removed the need for the kbd job.
the device has no filesystem yet. Useful in Charon deployments.
The check for an uninitialised filesystem is kind of shaky now.
svn path=/nixos/trunk/; revision=34133
were redirecting output to /var/log/upstart/<job>, so it didn't work
properly.
* mountall-ip-up: send the USR1 signal to the mountall process by
looking up its PID, rather than doing "pkill -USR1 mountall". This
prevents a very subtle race condition where USR1 is delivered to a
child process of mountall (such as fsck), if pkill sees the child
just before its execve(). There is actually still a race condition
because mountall installs its USR1 handler *after* daemonising, so
mountall-ip-up could accidentally kill mountall. Should report this
to upstream.
svn path=/nixos/trunk/; revision=33236
running. The user won't see it, and the "console owner" stanza
breaks VT switching and causes the X server to go to 100% CPU time.
svn path=/nixos/trunk/; revision=33221
starts the given job and waits until it's running; "stop_check"
checks that the current job hasn't been asked to stop.
svn path=/nixos/trunk/; revision=33214
reiserfs now have separate modules that are conditional on
boot.supportedFilesystems and boot.initrd.supportedFilesystems.
By default, these include the filesystems specified in the fsType
attribute in fileSystems. Ext2/3/4 support is currently
unconditional.
Also unbreak the installer test (http://hydra.nixos.org/build/2272302).
svn path=/nixos/trunk/; revision=32954
many services depend on other services that bring up network interfaces.
Examples are ipv6 tunneling clients or VPNs.
As there are multiple choices for these network-interface-providing services,
it's not nice to hardcore these deps in every service.
This change sets up a generic config option for this purpose.
providers (gw6c/gogoclient/openvpn) can plug into this to signal they bring up
an important interface.
Daemons that need these interfaces, can then depend on the 'all-interfaces' event,
instead of the individual services.
By default, the event fires when network-interfaces completes.
svn path=/nixos/trunk/; revision=32764
As reported by Bryce L Nordgren.
Multi-disk btrfs filesystems need to get assembled first before they become mountable.
Enable this by explicitly assigning fsType = "btrfs" in the filesystems list in configuration.nix
svn path=/nixos/trunk/; revision=32682
default. See
http://www.codon.org.uk/~mjg59/power/good_practices.html
for the reasoning. (Basically, the ‘performance’ and ‘powersave’
governors don't actually provide extra performance or power savings
in most cases.)
It used to be that desktop environments like KDE were able to set
the governor through HAL (e.g. KDE could be configured to switch to
the powersave governor when the user unplugs his laptop). However,
this is no longer the case with upower — it is now expected that
everybody uses the ondemand governor. See
http://old.nabble.com/-PATCH--powerdevil-remove-cpufreq.patch-td27815354.html
* Rename ‘cpuFreqGovernor’ to ‘powerManagement.cpuFreqGovernor’.
* Include cpufreq-utils in the system path if a governor is set, since
we depend on it anyway.
svn path=/nixos/trunk/; revision=30991
cause the filesystems to be reordered. During stage 1, the ordering of
filesystems is sensitive. (In stage 2, mountall ensures that filesystems
are mounted in the right order.)
svn path=/nixos/trunk/; revision=30046
This way users won't need to add ttyBackgrounds.enable = false when upgrading to a new kernel, and if the kernel gets splashutils in the future ttyBackgrounds will be enabled automatically.
svn path=/nixos/trunk/; revision=27911
since the latter is rather deprecated and has been unmaintained
since 2001. Note that "ip" doesn't know about classful addressing,
so you can no longer get away with not specifying the subnet mask
for explicitly configured interfaces. So if you had
networking.interfaces =
[ { name = "eth0"; ipAddress = "192.168.1.1"; } ];
this should be changed to
networking.interfaces =
[ { name = "eth0";
ipAddress = "192.168.1.1";
subnetMask = "255.255.255.0";
}
];
otherwise you end up with a subnet mask of 255.255.255.255.
svn path=/nixos/trunk/; revision=26279
* Moved some scriptlets to the appropriate modules.
* Put the scriptlet that sets the default path at the start, since it
never makes sense not to have it there. It no longer needs to be
declared as a dependency.
* If a scriptlet has no dependencies, it can be denoted as a plain
string (i.e., `noDepEntry' is not needed anymore).
svn path=/nixos/trunk/; revision=23762
the ‘nfs-kernel-statd’ task.
* Work around an apparent bug in Upstart: the ‘mountall’ task cannot
be restarted because of the ‘starting mountall’ condition in the
statd task. So instead make ‘mountall’ depend on ‘started
nfs-kernel-statd’.
svn path=/nixos/trunk/; revision=22508
a daemon (it just starts some kernel threads). In the post-stop
script, stop the kernel threads.
* exportfs: fix the createMountPoints option.
* Mount the nfsd filesystem on /proc/fs/nfsd because mountd prefers
this.
svn path=/nixos/branches/boot-order/; revision=22187
during boot. Mountall ensures that these are done in the right
order. It's informed by udev about devices becoming available. It
emits some Upstart events upon reaching certain states, in
particular ‘local-filesystems’ after all local filesystems have been
mounted successfully, ‘remote-filesystems’ after all network
filesystems have been mounted, and ‘filesystem’ (sic) when all
filesystems have been mounted.
Currently, if a filesystem fails to mount or doesn't exist, then the
mingettys won't start and the boot will appear to hang. This is
because mountall doesn't emit an event for failing filesystems and
waits indefinitely for the filesystems to become available.
* The ‘filesystems’ and ‘swap’ Upstart jobs are gone. (Support for
encrypted swap devices is temporarily gone.)
* Generate a proper /etc/fstab from the ‘fileSystems’ and
‘swapDevices’ options.
svn path=/nixos/branches/boot-order/; revision=22148