Commit graph

440 commits

Author SHA1 Message Date
Nicolas Pierron
923f58794a Add --rollback option to nixos-rebuild.
svn path=/nixos/trunk/; revision=16771
2009-08-19 15:04:19 +00:00
Eelco Dolstra
89ef5c979b * New nixos-rebuild action: "nixos-rebuild build-vm" builds a virtual
machine containing a replica (minus the state) of the system
  configuration.  This is mostly useful for testing configuration
  changes prior to doing an actual "nixos-rebuild switch" (or even
  "nixos-rebuild test").  The VM can be started as follows:

  $ nixos-rebuild build-vm
  $ ./result/bin/run-*-vm

  which starts a KVM/QEMU instance.  Additional QEMU options can be
  passed through the QEMU_OPTS environment variable
  (e.g. QEMU_OPTS="-redir tcp:8080::80" to forward a host port to the
  guest).  The fileSystem attribute of the regular system
  configuration is ignored (using mkOverride), because obviously we
  can't allow the VM to access the host's block devices.  Instead, at
  startup the VM creates an empty disk image in ./<hostname>.qcow2 to
  store the VM's root filesystem.

  Building a VM in this way is efficient because the VM shares its Nix
  store with the host (through a CIFS mount).  However, because the
  Nix store of the host is mounted read-only in the guest, you cannot
  run Nix build actions inside the VM.  Therefore the VM can only be
  reconfigured by re-running "nixos-rebuild build-vm" on the host and
  restarting the VM.

svn path=/nixos/trunk/; revision=16662
2009-08-11 01:35:56 +00:00
Eelco Dolstra
32bb5b2d0f * Bring back the options to enable/disable the Intel firmwares.
svn path=/nixos/branches/modular-nixos/; revision=16574
2009-08-04 08:50:02 +00:00
Eelco Dolstra
383370f782 * Don't create a temporary file in $HOME.
svn path=/nixos/branches/modular-nixos/; revision=16561
2009-08-03 12:44:45 +00:00
Eelco Dolstra
6802a75076 * nixos-rebuild: replaced some environment variables with options
(e.g. --install-grub instead of $NIXOS_INSTALL_GRUB).  Also support
  some nix-build options (e.g. --show-trace and -j).

svn path=/nixos/branches/modular-nixos/; revision=16560
2009-08-03 12:36:15 +00:00
Michael Raskin
bef1dc8bd5 Update RC kernel for rescue CD: includes some BtrFS fixes
svn path=/nixos/branches/modular-nixos/; revision=16515
2009-07-30 04:20:56 +00:00
Michael Raskin
8f7b33c87d I thought squashfs would not require loop.ko
svn path=/nixos/branches/modular-nixos/; revision=16388
2009-07-16 10:28:58 +00:00
Michael Raskin
fac9d09941 Oops, forgot FS modules
svn path=/nixos/branches/modular-nixos/; revision=16387
2009-07-16 10:06:53 +00:00
Michael Raskin
e155a46516 Forgot all-module fixes for the correct booting in rescue CD
svn path=/nixos/branches/modular-nixos/; revision=16386
2009-07-16 09:48:22 +00:00
Michael Raskin
a7f24fd4bb Trying to build a good rescue CD..
svn path=/nixos/branches/modular-nixos/; revision=16385
2009-07-16 09:22:40 +00:00
Eelco Dolstra
da996583ee * Include the NixOS manpages in the system environment. Actually
there is only one currently: configuration.nix(5), which contains a
  list of all the options.

svn path=/nixos/branches/modular-nixos/; revision=16360
2009-07-14 16:27:46 +00:00
Eelco Dolstra
1803c67d13 * Leave out HAL and d-bus (not needed).
svn path=/nixos/branches/modular-nixos/; revision=16032
2009-06-24 09:11:26 +00:00
Eelco Dolstra
74995fe553 * The CD volume label was just over the limit of 32 characters.
svn path=/nixos/branches/modular-nixos/; revision=16027
2009-06-22 16:38:11 +00:00
Eelco Dolstra
97a4e1fcb3 * Rename the CD modules to something more sensible.
* Make sure that reconfiguration in the live CD works properly by
  including the proper configuration module in
  /etc/nixos/configuration.nix.  Ugly.

svn path=/nixos/branches/modular-nixos/; revision=16016
2009-06-22 10:03:58 +00:00
Eelco Dolstra
fc3eecad91 * Remove some references to the services tree.
svn path=/nixos/branches/modular-nixos/; revision=16015
2009-06-22 10:01:14 +00:00
Eelco Dolstra
c46dc8ad10 * Fix nixos-hardware-scan. BTW the model is now to do something like
$ nixos-hardware-scan > /etc/nixos/hardware.nix

  and import the hardware.nix module in /etc/nixos/configuration.nix.
  That way you can easily rescan for new hardware.

svn path=/nixos/branches/modular-nixos/; revision=15979
2009-06-17 10:41:17 +00:00
Eelco Dolstra
c3ea825c23 * Fix installing from the modular branch. system/system.nix no longer
exists.  $NIXPKGS needs to be set, otherwise NixOS can't find
  Nixpkgs (because in the chroot it's in /mnt/etc/nixos/nixpkgs).
  Also clear LANG to shut up Perl warnings about the locale.

svn path=/nixos/branches/modular-nixos/; revision=15978
2009-06-17 10:07:31 +00:00
Eelco Dolstra
03760c0c03 * `installation-cd-big.nix' builds a NixOS installation CD containing
an X server and KDE 4.  Thanks to squashfs it's only 466 MiB large.
  `installation-cd-small.nix' builds the original, text-only
  installation CD.

svn path=/nixos/branches/modular-nixos/; revision=15934
2009-06-11 09:51:27 +00:00
Eelco Dolstra
cd1e4aefc1 * Break the cyclic dependency between the system derivation and
Grub's menu.lst.

svn path=/nixos/branches/modular-nixos/; revision=15931
2009-06-10 21:46:42 +00:00
Eelco Dolstra
1cea6b09ef * Compress the Nix store on the CD using squashfs. This reduces the
size of the i686-linux ISO image from 463 MiB to 147 MiB.  Hopefully
  it also speeds up installation due to reduced seek time and larger
  block sizes, but I haven't tested that yet (on real hardware).

svn path=/nixos/branches/modular-nixos/; revision=15930
2009-06-10 16:29:48 +00:00
Eelco Dolstra
135240e05f * Sigh. The nix-env call has to come after nix-store --load-db.
Should really allow an ordering between postBootCommands.

svn path=/nixos/branches/modular-nixos/; revision=15923
2009-06-10 12:51:16 +00:00
Eelco Dolstra
463cf8efdd * Provide a /etc/nixos/configuration.nix in the booted CD to make
nixos-rebuild work.  This makes it a true live CD.

svn path=/nixos/branches/modular-nixos/; revision=15922
2009-06-10 12:34:58 +00:00
Eelco Dolstra
1f8602afd2 * Get rid of the old CD/DVD expressions. live-dvd.nix is basically
rescue-dvd.nix (not tested though), i.e. it has all its extra
  packages and includes the build-time dependencies.

svn path=/nixos/branches/modular-nixos/; revision=15917
2009-06-10 11:00:29 +00:00
Eelco Dolstra
ba43b5d000 * Set the CD volume ID and the ISO filename.
svn path=/nixos/branches/modular-nixos/; revision=15912
2009-06-09 15:23:03 +00:00
Eelco Dolstra
803d8b646f * Option isoImage.storeContents to add extra paths to the Nix store on
the CD.

svn path=/nixos/branches/modular-nixos/; revision=15906
2009-06-09 13:27:50 +00:00
Eelco Dolstra
45e6fe420c svn path=/nixos/branches/modular-nixos/; revision=15905 2009-06-09 13:14:43 +00:00
Eelco Dolstra
6023722135 * Provide Memtest86 as a module.
svn path=/nixos/branches/modular-nixos/; revision=15904
2009-06-09 12:02:52 +00:00
Eelco Dolstra
37edcf4fae * Provide an option to add more files to the ISO image.
svn path=/nixos/branches/modular-nixos/; revision=15903
2009-06-09 12:01:31 +00:00
Eelco Dolstra
ca061eb628 * Include the NixOS/Nixpkgs trees on the CD.
svn path=/nixos/branches/modular-nixos/; revision=15897
2009-06-08 22:45:45 +00:00
Eelco Dolstra
606a8c87a1 svn path=/nixos/branches/modular-nixos/; revision=15894 2009-06-08 22:43:41 +00:00
Eelco Dolstra
eb8b534173 * Include only the en_US locale on the CD. This saves 75 MiB or so.
svn path=/nixos/branches/modular-nixos/; revision=15883
2009-06-05 17:19:30 +00:00
Eelco Dolstra
0a0260514d * Renamed boot.localCommands to boot.postBootCommands since it wasn't
such a good name (local to what?).

svn path=/nixos/branches/modular-nixos/; revision=15879
2009-06-05 16:02:58 +00:00
Eelco Dolstra
5cf8604b1e * Module that contains the configuration for the NixOS installation CD
(not yet complete).

svn path=/nixos/branches/modular-nixos/; revision=15878
2009-06-05 15:10:15 +00:00
Eelco Dolstra
e4e408293e * Modularise the building of the installation CD/DVD. The module
iso-image.nix contains the minimal stuff necessary to build a
  bootable ISO image containing the given configuration.  The idea is
  that this can be customised by providing additional modules, e.g. to
  add extra packages to the image.

  The ISO image is exported in the configuration attribute
  system.build.isoImage.  So it can be built as follows:

  $ nix-build lib/eval-config.nix \
      --arg configuration 'import ./modules/installer/cd-dvd/iso-image.nix' \
      -A config.system.build.isoImage


svn path=/nixos/branches/modular-nixos/; revision=15871
2009-06-05 13:35:27 +00:00
Eelco Dolstra
548fb6a1a5 * Move the optional parts of the system path to the appropriate
modules.

svn path=/nixos/branches/modular-nixos/; revision=15791
2009-05-29 13:15:31 +00:00
Eelco Dolstra
0da38f14f5 * Forgot to commit.
svn path=/nixos/branches/modular-nixos/; revision=15789
2009-05-29 12:43:29 +00:00
Eelco Dolstra
f36643b6c2 * Move the installer tools to modules/installer/tools.
svn path=/nixos/branches/modular-nixos/; revision=15788
2009-05-29 12:41:29 +00:00
Eelco Dolstra
df96e5c456 * Move nixos-checkout into its own module.
svn path=/nixos/branches/modular-nixos/; revision=15787
2009-05-29 12:24:48 +00:00
Eelco Dolstra
3c6ae39a0d * Refactoring: moved some options out of system/options.nix (almost
empty now), do more of bashrc.sh declaratively, and moved nsswitch
  generation to modules/config/nsswitch.nix.

svn path=/nixos/branches/modular-nixos/; revision=15754
2009-05-27 23:14:38 +00:00
Eelco Dolstra
a65aae0140 * Moved more modules.
svn path=/nixos/branches/modular-nixos/; revision=15722
2009-05-25 13:42:46 +00:00