Commit graph

788 commits

Author SHA1 Message Date
Eelco Dolstra da0d5c5645 * Use config.system.build.grub rather than pkgs.grub to get the right
GRUB when version 2 is enabled.

svn path=/nixos/branches/boot-order/; revision=22479
2010-07-05 14:33:11 +00:00
Eelco Dolstra 4225181fa1 * Ensure that the ‘mount-failed’ and ‘emergency-shell’ tasks don't get
started by ‘switch-to-configuration.sh’.

svn path=/nixos/branches/boot-order/; revision=22473
2010-07-05 09:28:22 +00:00
Eelco Dolstra d43d321e86 * Sync with the trunk.
svn path=/nixos/branches/boot-order/; revision=22349
2010-06-20 20:54:31 +00:00
Eelco Dolstra 061ea1674f * Increase the CIFS timeout here as well.
svn path=/nixos/branches/boot-order/; revision=22348
2010-06-20 20:52:42 +00:00
Eelco Dolstra 593a110c47 * Make sure that kernel log messages appear in the VM output. The
comment was incorrect - when klogd is running, kernel messages no
  longer appear on the serial port.

svn path=/nixos/branches/boot-order/; revision=22346
2010-06-20 19:22:23 +00:00
Eelco Dolstra 20a88efffa * Fix networking in the installer test.
* If connecting to the host fails in the guest, then shutdown
  immediately.

svn path=/nixos/branches/boot-order/; revision=22341
2010-06-20 15:33:44 +00:00
Eelco Dolstra 363806e89b * To establish the connection to the root shell in the guest, let the
guest connect to a Unix domain socket on the host rather than the
  other way around.  The former is a QEMU feature (guestfwd to a
  socket) while the latter requires a patch (which we can now get rid
  of).

svn path=/nixos/branches/boot-order/; revision=22331
2010-06-18 19:31:02 +00:00
Eelco Dolstra 200a8b9a56 * Change the priority to make the NAT and Bittorrent tests work.
svn path=/nixos/branches/boot-order/; revision=22329
2010-06-18 18:53:13 +00:00
Eelco Dolstra ac22e5369f * Prevent tests from accessing the host's network accidentally. For
instance, `nixos-rebuild' in the installer test does a `nix-pull'
  from nixos.org.

svn path=/nixos/branches/boot-order/; revision=22325
2010-06-18 13:21:01 +00:00
Eelco Dolstra a65b5ec81c * Added an option boot.loader.grub.extraConfig to add commands to
grub.cfg before the menu entries.  (This could also be done using
  `extraEntriesBeforeNixOS', but then you can't have entries *after*
  the main entry anymore.)
* In the installer test, redirect GRUB output to the serial port.

svn path=/nixos/branches/boot-order/; revision=22300
2010-06-16 22:18:26 +00:00
Eelco Dolstra 69c7175404 * During shutdown, don't unmount mount points that don't exist (in the
current namespace).  This prevents warnings about the aufs/tmpfs
  mounts from the initrd used by the installation CD.

svn path=/nixos/branches/boot-order/; revision=22299
2010-06-16 22:16:43 +00:00
Eelco Dolstra 46ac1375a7 * Don't use -smb and -no-kvm-irqchip. Maybe this makes VM builds more
reliable.

svn path=/nixos/branches/boot-order/; revision=22280
2010-06-15 16:15:17 +00:00
Eelco Dolstra e2dbfbdcf4 * Use writeback caching for virtual disks instead of writethrough
caching.  This makes a huge performance difference (e.g. from 4 MB/s
  `dd' throughput to 140 MB/s on the Hydra machines).  As the QEMU
  manual says: "Some block drivers perform badly with
  ‘cache=writethrough’, most notably, qcow2."

svn path=/nixos/branches/boot-order/; revision=22248
2010-06-13 23:36:55 +00:00
Eelco Dolstra 03f77ca82b * PostgreSQL / MySQL: depend on the "filesystem" event.
svn path=/nixos/branches/boot-order/; revision=22247
2010-06-13 20:59:49 +00:00
Eelco Dolstra a5c433696c * Put all of /var/run (not just /var/run/nscd) on a tmpfs to simplify
shutdown.  (Portmap and statd are needed during shutdown to unmount
  NFS volumes but have open files in /var/run.)
* In the shutdown job, don't kill PIDs belonging to Upstart jobs that
  are still running.  If they don't stop on the "starting shutdown"
  event, then they're needed during shutdown (such as portmap and
  statd).
* NFS test: test whether the shutdown quickly unmounts NFS volumes
  (i.e. whether portmap and statd are still running).

svn path=/nixos/branches/boot-order/; revision=22204
2010-06-09 22:29:06 +00:00
Eelco Dolstra 94088e9b48 * Daemonise mountd/statd.
svn path=/nixos/branches/boot-order/; revision=22198
2010-06-09 13:45:51 +00:00
Eelco Dolstra 645ed8d3b4 * Start NFS daemons in the right order as described in the nfs-utils
README (i.e. for the server: exportfs, mountd, statd, nfsd,
  sm-notify; for the client: statd / sm-notify before mountall).  This
  is important to allow locking to work correctly.

svn path=/nixos/branches/boot-order/; revision=22196
2010-06-09 13:18:01 +00:00
Eelco Dolstra 156ba2def2 * Don't use the "kvm-clock" clock source because it's unreliable.
When starting multiple VMs, some will have perfectly synchronised
  clocks, while others will have their clocks run much slower (say, a
  factor of 5).

svn path=/nixos/branches/boot-order/; revision=22195
2010-06-09 13:15:15 +00:00
Eelco Dolstra d837ae4914 * portmap: don't use the -f flag to ensure that when the job reaches
the "started" state, portmap is actually up.

svn path=/nixos/branches/boot-order/; revision=22192
2010-06-09 11:15:25 +00:00
Eelco Dolstra c1ecdf708f * Put the hostname of the VM in the window title.
svn path=/nixos/branches/boot-order/; revision=22191
2010-06-09 10:51:05 +00:00
Eelco Dolstra 5ddaf9b963 * Set `services.nfsKernel.client.enable' automatically if there is a
filesystem with type "nfs" or "nfs4".

svn path=/nixos/branches/boot-order/; revision=22189
2010-06-08 16:14:41 +00:00
Eelco Dolstra a9e8bf6491 * nfsd: run rpc.nfsd from the pre-start script since it's not actually
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
2010-06-08 16:01:31 +00:00
Eelco Dolstra 3eac003800 * Maintain /var/log/wtmp correctly during boot/shutdown.
svn path=/nixos/branches/boot-order/; revision=22182
2010-06-08 12:48:16 +00:00
Eelco Dolstra 7c3ae9e716 * During shutdown, warn explicitly about filesystems that could not be
unmounted or remounted read-only.
* Don't try to unmount / or /nix/store.

svn path=/nixos/branches/boot-order/; revision=22181
2010-06-08 11:52:16 +00:00
Eelco Dolstra 23cc979f61 * Run `swapoff -a' during shutdown. Otherwise filesystems containing
swapfiles cannot be unmounted or even remounted read-only.
* In the remount, pass `-t none' to get a more informative error
  message if the filesystem is in use.

svn path=/nixos/branches/boot-order/; revision=22179
2010-06-08 10:06:00 +00:00
Eelco Dolstra 48fdc931a4 * Run udevtrigger in a separate job. This speeds up booting because
it allows the `mountall' task to start mounting filesystems as soon
  as udev is running and devices become available (i.e. it doesn't
  have to wait for all devices).  This means that some jobs should
  depend on "stopped udevtrigger" instead of "started udev".

svn path=/nixos/branches/boot-order/; revision=22167
2010-06-07 12:39:50 +00:00
Eelco Dolstra 085a47c88a * Bind mounts should have filesystem type "none" to prevent an
invocation of "fsck.auto" at boot time.

svn path=/nixos/branches/boot-order/; revision=22166
2010-06-07 12:16:59 +00:00
Eelco Dolstra 6290788247 * If mountall fails to mount all filesystems, start an emergency shell
to allow the user to fix or ignore the problem.

svn path=/nixos/branches/boot-order/; revision=22165
2010-06-07 12:15:55 +00:00
Eelco Dolstra 5702557a65 * Put e2fsprogs etc. in mountall's $PATH so that fsck works.
svn path=/nixos/branches/boot-order/; revision=22151
2010-06-04 15:35:32 +00:00
Eelco Dolstra dbadf6e9c2 * Use mountall to mount all filesystems and activate all swap devices
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
2010-06-04 14:22:11 +00:00
Eelco Dolstra 5316059442 * Revert an unintended commit.
svn path=/nixos/trunk/; revision=22145
2010-06-04 14:00:56 +00:00
Eelco Dolstra 7f41d2bb86 svn path=/nixos/trunk/; revision=22126 2010-06-03 14:32:23 +00:00
Eelco Dolstra 6676bbe61d svn path=/nixos/trunk/; revision=22111 2010-06-02 23:02:09 +00:00
Eelco Dolstra 0cdce12006 * Rename the pwdutils' module to shadow'.
svn path=/nixos/trunk/; revision=22109
2010-06-02 21:16:27 +00:00
Eelco Dolstra c089738bdc * Use the shadow' package instead of pwdutils', `pam_login' and
`su'.
* The `usermod' from `shadow' allows setting a supplementary group
  equal to the user's primary group, so the special hack for the
  `nixbld' group is no longer needed.
* Removed /etc/default/passwd since it's not used by the new passwd.
  The hash is configured in pam_unix.
* Move some values for `security.setuidPrograms' and
  `security.pam.services' to the appropriate modules.

svn path=/nixos/trunk/; revision=22107
2010-06-02 21:10:48 +00:00
Eelco Dolstra 876954d15d * Use pam_unix (from the PAM package) instead of pam_unix2. All the
functionality we needed from pam_unix2 (more secure hashes, and,
  uh...) has been merged into pam_unix.

svn path=/nixos/trunk/; revision=22106
2010-06-02 19:59:44 +00:00
Eelco Dolstra 8b308272df * We don't use pam_console anymore.
svn path=/nixos/trunk/; revision=22104
2010-06-02 17:11:20 +00:00
Eelco Dolstra d67e6e6285 * Remove some `stopOn = "ip-down"' declarations since they probably
don't do the right thing (e.g. they don't distinguish between
  network interfaces).

svn path=/nixos/trunk/; revision=22102
2010-06-02 16:19:48 +00:00
Eelco Dolstra d317d83ba8 * Remove `stopOn = "shutdown"' which doesn't work.
svn path=/nixos/trunk/; revision=22101
2010-06-02 16:05:09 +00:00
Eelco Dolstra 8519e72ccc * Don't stop tty-backgrounds during shutdown.
svn path=/nixos/trunk/; revision=22100
2010-06-02 16:04:30 +00:00
Eelco Dolstra ad93acc295 * Make all Upstart jobs shut down on the `starting shutdown' event.
This ensures that they're gone by the time the shutdown job runs, so
  it doesn't have to stop them itself.
* Don't respawn tasks, as it doesn't seem useful (if they fail they're
  likely to fail again if they're restarted).

svn path=/nixos/trunk/; revision=22099
2010-06-02 16:04:08 +00:00
Eelco Dolstra b135e38bea * atd's postStop action should be unnecessary.
svn path=/nixos/trunk/; revision=22095
2010-06-01 20:42:33 +00:00
Eelco Dolstra 94b2268192 * Start "exec" jobs using the "script" stanza to allow redirects in
the job's "exec" to work properly.

svn path=/nixos/trunk/; revision=22094
2010-06-01 20:41:59 +00:00
Eelco Dolstra 95a9c5dd77 * Log the standard output/error of Upstart jobs to
/var/log/upstart/<jobname> rather than spamming the console with it.

svn path=/nixos/trunk/; revision=22093
2010-06-01 19:44:23 +00:00
Eelco Dolstra e450e4551f * tty-backgrounds: don't do a setcfg action on the console if the
current theme is the same.  This prevents the console from being
  blanked during boot.

svn path=/nixos/trunk/; revision=22092
2010-06-01 18:30:17 +00:00
Eelco Dolstra 18fd0a61de * Add `sleep' to the initrd.
svn path=/nixos/trunk/; revision=22089
2010-06-01 17:09:34 +00:00
Eelco Dolstra 9c900ee15c * Updates for the dynamically linked splash helper.
svn path=/nixos/trunk/; revision=22087
2010-06-01 16:38:42 +00:00
Eelco Dolstra dc49a0ce3f * Don't use klibc in the initrd. It's simpler (and slightly smaller)
to use the standard (coreutils) tools.
* Use util-linux's `switch_root' to switch over to the target root
  FS.  It automatically moves over the /dev, /proc and /sys from stage
  1, so stage 2 doesn't need to set them up again.

svn path=/nixos/trunk/; revision=22085
2010-06-01 15:53:24 +00:00
Eelco Dolstra eb4c33eeca * Added an option to enable support for 32-bit binaries (such as Wine
or Google Earth) on 64-bit NixOS on NVIDIA hardware.  The 32-bit
  OpenGL library is symlinked from /var/run/opengl-driver-32, which is
  added to the LD_LIBRARY_PATH so that 32-bit binaries can find it.

svn path=/nixos/trunk/; revision=22062
2010-05-30 22:00:52 +00:00
Eelco Dolstra 540c673364 * Enable the `chfn' program. Note that by default non-root users are
still not permitted to change their account information, as
  specified in login.defs.

svn path=/nixos/trunk/; revision=22049
2010-05-28 14:59:34 +00:00