Commit graph

359 commits

Author SHA1 Message Date
Eelco Dolstra b52117c34d Treat init-script as a boot loader 2012-07-25 11:30:16 -04:00
Eelco Dolstra 8b91a5f2ff Move boot loader modules to modules/system/boot/loader 2012-07-25 10:59:03 -04:00
Eelco Dolstra b15e1fbb08 Boot loader refactoring
- Renamed system.build.menuBuilder to system.build.installBootLoader.

- ‘install-grub.pl’ (formerly grub-menu-builder.pl) now generates the
  GRUB menu *and* installs GRUB (if necessary).

- ‘switch-to-configuration.sh’ has no boot loader specific knowledge
  anymore.  It just calls installBootLoader.
2012-07-25 10:47:32 -04:00
Eelco Dolstra 1b743526bd grub.nix: Handle null values
http://hydra.nixos.org/build/2894714
2012-07-25 09:27:51 -04:00
Eelco Dolstra be4c4d79cf grub-menu-builder: GRUB now installs unicode.pf2 automatically 2012-07-24 22:37:16 -04:00
Eelco Dolstra fb15b1894e Add missing progress message 2012-07-24 19:27:16 -04:00
Eelco Dolstra f07f221f0e Replace grub-menu-builder with a much faster version
The old GRUB menu builder script is quite slow, typically taking
several seconds.  This is a real annoyance since it's run every time
you switch to a new configuration.  Therefore this patch replaces the
Bash script with a much faster Perl script.  In a VirtualBox test, the
execution time went from 2.7s to 0.1s.  The Perl version is also more
correct because it uses XML to get the GRUB configuration (through
builtins.toXML), so there are no shell escaping issues.

The new script currently lacks support for subconfigurations defined
through "nesting.children".
2012-07-24 19:16:27 -04:00
Shea Levy 0f65521df2 Merge pull request #17 from MarcWeber/fix-init-script-builder
fix init-script-builder
2012-07-23 17:44:37 -07:00
Marc Weber 3221159f5f fix init-script-builder 2012-07-21 19:26:36 +02:00
Eelco Dolstra 73532c3855 Global replace /var/run/current-system -> /run/current-system 2012-07-16 11:34:21 -04:00
Mathijs Kwik a630b1f6f6 EFI shell got updated upstream, reflecting new hash 2012-07-05 08:31:44 +02:00
Eelco Dolstra 348691645d Remove broken "nopipefail" option
http://hydra.nixos.org/build/2751337
2012-07-02 10:57:36 -04:00
Eelco Dolstra 76c74cd7c7 initrd: Detect filesystem type before doing fsck/mount
BusyBox doesn't handle the "auto" filesystem type very well: fsck will
just ignore such filesystems, and mount will only work properly if the
required kernel module is already loaded.  Therefore, use blkid to
determine the filesystem type.

Also generate an /etc/fstab in the initrd rootfs on the fly.  This is
useful if you're dropped into an emergency shell since it allows you
to say "fsck /dev/sda1" or "mount /dev/sda" and have the right thing
happen.
2012-06-28 10:55:44 -04:00
viric 7acfd8ec20 Merge pull request #9 from viric/pull-pipefail
nixos-rebuild: make 'pull' fail in case it did not pull anything.
2012-06-28 01:20:22 -07:00
Lluís Batlle i Rossell 34e8f68056 system-tarball-pc: not use boot.initrd.extraTools anymore
Eelco removed the option recently, making the default initrd have the full
busybox.

I saw this evaluation error in the hydra nixos trunk page.
2012-06-27 22:26:27 +02:00
Lluís Batlle i Rossell de87b07bb3 nixos-rebuild: fail if any case of pull fails. 2012-06-27 21:57:15 +02:00
Lluís Batlle i Rossell 5b7c019e2a nixos-rebuild: make 'pull' fail in case it did not pull anything. 2012-06-27 21:36:46 +02:00
Eelco Dolstra cc357c7e64 nixos-rebuild: Add a convenience option ‘--upgrade’
This is equivalent to running ‘nix-channel --update nixos’ before
running ‘nixos-rebuild’.
2012-06-25 16:17:34 -04:00
Eelco Dolstra 1da7cea223 Add Busybox to the installation CD
This is mostly to get the automated tests to succeed.
2012-06-22 14:16:55 -04:00
Eelco Dolstra 598adfee3e Fix booting from the CD-ROM
So it turns out that BusyBox doesn't auto-load modules for filesystems
that have type "auto", e.g. it doesn't figure out that it should load
the "iso9660" module should be loaded when mounting the CD-ROM.  We
don't want to give the root FS on the CD type "iso9660", because that
breaks booting from a USB stick created by unetbootin.  So make sure
the "iso9660" module is loaded.
2012-06-22 11:55:23 -04:00
Eelco Dolstra 7b54922227 Don't include klibc in the installation CD 2012-06-22 11:39:27 -04:00
Lluís Batlle i Rossell 31f30722d6 Small comment fix on the system-tarball-sheevaplug.
svn path=/nixos/trunk/; revision=34418
2012-06-10 14:45:30 +00:00
Eelco Dolstra f2a33809c1 * Check for .git instead of .svn.
svn path=/nixos/trunk/; revision=34350
2012-06-04 15:57:32 +00:00
Eelco Dolstra a0cc181117 * nixos-checkout: get the NixOS/Nixpkgs sources from GitHub.
svn path=/nixos/trunk/; revision=34347
2012-06-04 15:39:07 +00:00
Eelco Dolstra c4c68f97d1 * The volume ID is too long again. Shorten it to make it fit (just
barely) inside the 32 character limit.

  http://hydra.nixos.org/build/2660387

svn path=/nixos/trunk/; revision=34346
2012-06-04 15:02:37 +00:00
Eelco Dolstra f81eb12d41 * Now hopefully a proper fix for the problem in
http://hydra.nixos.org/build/2645533 (which I can't reproduce btw -
  so much for reproducibility...).

svn path=/nixos/trunk/; revision=34243
2012-05-25 14:06:46 +00:00
Eelco Dolstra d0786fd3e7 * Cache nix-pull calls in nixos-install.
svn path=/nixos/trunk/; revision=34241
2012-05-25 13:32:30 +00:00
Lluís Batlle i Rossell 22fc2bdb24 Fixing the evaluation of the system-tarball-pc.
It complained that grub device wasn't defined, and I guess it wanted some
fileSystems too. I copied those details from the sheevaplug expression, that I
made evaluate some minutes ago.


svn path=/nixos/trunk/; revision=34238
2012-05-25 08:09:25 +00:00
Lluís Batlle i Rossell 4157166f8a Making the sheevaplug system tarball evaluate fine again. It had some pieces not up to date:
fileSystems definition, kernel version, ...


svn path=/nixos/trunk/; revision=34237
2012-05-25 07:52:12 +00:00
Eelco Dolstra a3e04ba0aa * Fix problems with repeated installations due to the immutable bit
(http://hydra.nixos.org/build/2645533).

svn path=/nixos/trunk/; revision=34235
2012-05-25 02:30:52 +00:00
Eelco Dolstra b11770373a * Work properly if /root/.nix-defexpr/channels already exists.
svn path=/nixos/trunk/; revision=34233
2012-05-24 23:37:06 +00:00
Eelco Dolstra a6892051ef * Allow building with boot.loader.grub.enable set to "false".
svn path=/nixos/trunk/; revision=34218
2012-05-23 15:52:29 +00:00
Mathijs Kwik 7fca5408f3 Revert "Provided a workaround for grub's missing-devices check, so nested child configurations can still build."
This reverts commit a89e8831e3d95bcf3ddc19ee34b938db7e8aa572.

svn path=/nixos/trunk/; revision=34163
2012-05-18 06:17:05 +00:00
Eelco Dolstra 801cd7402c * Don't use ‘chown user.group’ since that syntax is not officially
supported (you're supposed to say ‘chown user:group’).

svn path=/nixos/trunk/; revision=34161
2012-05-17 19:43:32 +00:00
Mathijs Kwik 88b3c4b82e Provided a workaround for grub's missing-devices check, so nested child configurations can still build.
svn path=/nixos/trunk/; revision=34153
2012-05-17 10:17:32 +00:00
Eelco Dolstra 560262dae0 * Fix "error: the group nixbld' specified in build-users-group' does
not exist" during nixos-install.

svn path=/nixos/trunk/; revision=34103
2012-05-15 13:50:36 +00:00
Eelco Dolstra 29b05fb62a * nixos-checkout: add an argument to specify the directory where the
sources should be stored.  E.g. "nixos-checkout /home/eelco/srcs"
  will check out to /home/eelco/srcs/{nixos,nixpkgs}.  Probably the
  /etc/nixos default should be removed eventually because /etc is a
  pretty weird place to keep large source trees.

svn path=/nixos/trunk/; revision=34086
2012-05-14 04:12:43 +00:00
Eelco Dolstra 8d568e5a71 * nixos-option: clean up the English and the generated file.
svn path=/nixos/trunk/; revision=34082
2012-05-14 01:56:42 +00:00
Eelco Dolstra 3dd0718939 * Give an error at evaluation time if boot.loader.grub.device or
boot.loader.grub.devices are not set, rather than complaining about
  it when it's too late.

svn path=/nixos/trunk/; revision=34081
2012-05-14 01:53:47 +00:00
Shea Levy 1a0c9ce201 The efibootmgr bricking problem was fixed in 2.6.39
svn path=/nixos/trunk/; revision=33990
2012-05-05 15:43:28 +00:00
Shea Levy c716747cce Need a slighty bigger boot image to contain the efi shell
svn path=/nixos/trunk/; revision=33986
2012-05-05 14:23:51 +00:00
Shea Levy 3aae8bfa61 Switch to using efi shell + startup.nsh as the
removable media efi boot option.

svn path=/nixos/trunk/; revision=33984
2012-05-04 22:16:35 +00:00
Sander van der Burg 4b650026bf The <> syntax has to be applied properly, in order to find build-vms.nix
svn path=/nixos/trunk/; revision=33981
2012-05-03 12:31:01 +00:00
Eelco Dolstra 4d07f159a1 * Create /nix/var/nix/profiles/per-user with the right permissions.
Fixes NixOS/149.

svn path=/nixos/trunk/; revision=33929
2012-04-26 13:16:58 +00:00
Eelco Dolstra ac4a059f8a * Put old NixOS configurations in a GRUB submenu. Contributed by
Andreas Källberg.

svn path=/nixos/trunk/; revision=33891
2012-04-23 15:47:03 +00:00
Eelco Dolstra 6c1bb54483 * In the installation CD, make the NixOS/Nixpkgs available as if they
were obtained from the NixOS channel.  "nixos-install" copies this
  to the installed system as well.
* In the installation CD, set GC_INITIAL_HEAP_SIZE to a low value for
  the benefit of memory-constrained environments.

svn path=/nixos/trunk/; revision=33887
2012-04-23 00:41:37 +00:00
Eelco Dolstra 72990dae37 * Add some missing GRUB modules.
svn path=/nixos/trunk/; revision=33886
2012-04-23 00:30:48 +00:00
Eelco Dolstra f8e36664a6 * Subtle: since nix-env processes flags in order, any ‘-I’ flag should
come before ‘-f <nixos>’.

svn path=/nixos/trunk/; revision=33831
2012-04-18 15:01:42 +00:00
Eelco Dolstra cb74284b75 * Handle the case where there is no GRUB 1 splash image.
svn path=/nixos/trunk/; revision=33830
2012-04-18 14:28:30 +00:00
Eelco Dolstra b4afefcc40 * Typo.
svn path=/nixos/trunk/; revision=33826
2012-04-18 12:32:17 +00:00