Commit graph

440 commits

Author SHA1 Message Date
Shea Levy
722d8497e7 nixos-install: Respect /home/shlevy/src:/nix/var/nix/profiles/per-user/root/channels/nixos:nixpkgs=/etc/nixos/nixpkgs:nixos=/etc/nixos/nixos:nixos-config=/etc/nixos/configuration.nix:services=/etc/nixos/services to find the nixos and nixpkgs sources, only copy the nixos channel if it exists 2013-02-04 07:46:31 -05:00
Shea Levy
9db243b4aa nixos-install: Respect host $NIX_CONF_DIR and don't assume nix.conf exists 2013-02-04 07:46:31 -05:00
Shea Levy
c384ea26e4 Update iso_efi to use gummiboot 2013-02-02 00:54:05 -05:00
Eelco Dolstra
6d19777455 nixos-install: Handle /nix/var/nix/db being on a separate filesystem
This is the case on S3-backed EC2 instances.
2013-01-25 16:00:47 +01:00
Eelco Dolstra
314adf9648 nixos-rebuild: Don't rely on $SHELL
Fixes #74.
2013-01-23 11:31:48 +01:00
Eelco Dolstra
fc14a31f2c unionfs: Increase the open file limit
The default (1024) is way too low, e.g. to start KDE on the
installation CD.
2013-01-22 13:31:08 +01:00
Eelco Dolstra
1aaa726e75 Merge remote-tracking branch 'origin/systemd' 2013-01-21 12:45:50 +01:00
Eelco Dolstra
6e7b0a0c0e Fix ‘nixos-rebuikd dry-run’ 2013-01-16 16:11:51 +01:00
Eelco Dolstra
e65a49f00f Add missing file 2013-01-16 16:06:50 +01:00
Eelco Dolstra
b35fe01f02 Set the NixOS version to something useful when building from Git 2013-01-16 14:40:41 +01:00
Eelco Dolstra
ea358b4eae nixos-rebuild: Use ‘[ ... ]’ instead of ‘test’ 2013-01-16 13:21:59 +01:00
Lluís Batlle i Rossell
ceedc50009 Fixing the fuloong2f system tarball 2012-12-22 18:46:15 +01:00
Eelco Dolstra
45f0de21f0 nixos-rebuild: Fix the check for running nix-daemon 2012-12-21 00:18:12 +01:00
Shea Levy
75ec5c609e Merge remote-tracking branch 'upstream/master' into systemd
Conflicts:
	maintainers/scripts/ec2/create-ebs-amis.py
2012-12-17 13:03:56 -05:00
Shea Levy
d19c223ba6 Simplify unionfs-chroot bind-mounting 2012-12-16 13:07:42 -05:00
Shea Levy
e34024d998 Refactor common unionfs-fuse initrd prep into a separate module 2012-12-16 12:33:36 -05:00
Shea Levy
be4f69519b iso-image: Use unionfs-fuse instead of aufs 2012-12-16 11:31:52 -05:00
Lluís Batlle i Rossell
dacd7d5a58 Setting iso_new_kernel to use linux 3.7.
It was using 3.2, the same kernel as the other isos.
2012-12-16 16:05:50 +01:00
Florian Friesdorf
14483c0bf9 update nixos channel path 2012-12-14 18:24:41 +01:00
Eelco Dolstra
97ae408e83 Merge remote-tracking branch 'origin/master' into systemd 2012-12-11 17:40:39 +01:00
Eelco Dolstra
13617b803b Use the binary cache in the installer
Also remove "nixos-rebuild pull".
2012-12-08 19:00:06 +01:00
Eelco Dolstra
b1da38f564 Merge remote-tracking branch 'origin/master' into systemd 2012-11-30 16:12:04 +01:00
Lluís Batlle i Rossell
04963cf802 system-tarball-pc: fixing the readme inclusion 2012-11-29 11:29:15 +01:00
Eelco Dolstra
994a15bc25 nixos-rebuild: Handle options with spaces in them
Like ‘--option binary-caches "http://foo http://bar"’
2012-11-22 12:04:00 +01:00
Eelco Dolstra
f44d27a96c Make the installer work on systemd
Systemd mounts the root filesystem as a shared subtree, which breaks
recursive bind mounts.
2012-11-15 22:53:57 +01:00
Eelco Dolstra
08e6c0cb7c Update channel URLs 2012-11-12 09:19:25 +01:00
Lluís Batlle i Rossell
64540fb453 Adding quick instructions in system-tarball-pc to use it as chroot.
I also split the readme into a file apart.
2012-11-04 22:13:19 +01:00
Eelco Dolstra
458f36f5f1 Turn fileSystems into an attribute set
So now you can write

  fileSystems =
    [ { mountPoint = "/";
        device = "/dev/sda1";
      }
    ];

as

  fileSystems."/".device = "/dev/sda1";
2012-11-02 18:02:12 +01:00
Eelco Dolstra
74be2d9707 ISO image: Fix graphical GRUB menu 2012-10-04 16:14:44 -04:00
Eelco Dolstra
75583c7984 nixos-rebuild: Support --option 2012-09-14 13:23:19 -04:00
Shea Levy
15a1efe023 find modules/ -name \*.nix -print0 | xargs -0 sed -i 's/RT73Firmware/RalinkFirmware/g' 2012-08-11 12:34:35 -04:00
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
Eelco Dolstra
395d73db70 * nixos-rebuild: don't do a pull of the manifest by default anymore.
It's not necessary when using the NixOS channel.  "nixos-rebuild
  pull" now pulls from the NixOS channel.

svn path=/nixos/trunk/; revision=33825
2012-04-18 11:46:16 +00:00
Eelco Dolstra
e3879fe365 * Store the NixOS version in the top-level derivation.
* Change the name of the top-level derivation from "system" to
  "nixos-<version>".
* Show the NixOS version in the GRUB boot menu instead of the kernel
  version.

svn path=/nixos/trunk/; revision=33785
2012-04-14 17:09:59 +00:00
Lluís Batlle i Rossell
918edf8612 I think this makes the memtest module work on grub1.
But I can't test it because grub-install fails for me for grub1.

I tested it works for grub2.


svn path=/nixos/trunk/; revision=33739
2012-04-10 22:20:20 +00:00
Eelco Dolstra
fb0a54b803 * In nixos-install, do a nix-pull from
http://nixos.org/releases/nixos/nixos-<version> to ensure we're
  getting the right binaries.

svn path=/nixos/trunk/; revision=33738
2012-04-10 22:17:37 +00:00
Eelco Dolstra
322a0ff7cd * Set the version properly in the source tree in the ISO.
svn path=/nixos/trunk/; revision=33736
2012-04-10 21:42:47 +00:00
Lluís Batlle i Rossell
2ca7e8a43e Reverting 33692, because memtest in the iso was failing.
I set the grub entry for memtest to read "Memtest86", as suggested by Eelco.

I run:
svn merge -c -33692 ^/nixos/trunk
And edited the change a bit.


svn path=/nixos/trunk/; revision=33734
2012-04-10 21:18:48 +00:00
Eelco Dolstra
c02240082a * Add missing file.
svn path=/nixos/trunk/; revision=33733
2012-04-10 21:17:43 +00:00
Eelco Dolstra
dccd99b564 * Disable "nixos-gen-seccure-keys": it's not clear what it's for, it's
not documented, and it doesn't seem to be used anywhere.

svn path=/nixos/trunk/; revision=33732
2012-04-10 21:11:11 +00:00
Eelco Dolstra
907df082dc * Including the Nixpkgs revision made the ISO volume label slightly
too long.  So make it shorter.

svn path=/nixos/trunk/; revision=33731
2012-04-10 21:08:10 +00:00
Eelco Dolstra
096b7723c8 * Add a command "nixos-version" that prints the version of the
currently activated NixOS.  This is "0.1pre-svn" when built from a
  SVN tree, but contains the actual revision when installed from the
  NixOS channel or from the ISO.

svn path=/nixos/trunk/; revision=33730
2012-04-10 20:56:38 +00:00
Eelco Dolstra
f9ac67c67f * Copying manifests is slightly tricky because
download-using-manifests expects that the files in
  /nix/var/nix/manifests are symlinks into the store.

svn path=/nixos/trunk/; revision=33727
2012-04-10 15:36:50 +00:00
Eelco Dolstra
f37b453b19 * nixos-install: Ensure that builds are done by the nixbld users
rather than root.  Also copy all manifests into the chroot so that
  any nix-pull done outside the chroot is "inherited".

svn path=/nixos/trunk/; revision=33725
2012-04-10 14:39:12 +00:00
Eelco Dolstra
f9e8e735bb * Remove debug line.
svn path=/nixos/trunk/; revision=33723
2012-04-10 13:28:48 +00:00
Eelco Dolstra
5c06c66b68 * Clear more locale-related variables in the installer.
svn path=/nixos/trunk/; revision=33722
2012-04-10 13:28:17 +00:00
Eelco Dolstra
b2025c4687 * Use "umount -l" to clean up.
svn path=/nixos/trunk/; revision=33721
2012-04-10 13:25:55 +00:00
Eelco Dolstra
5409e76353 * Disable wicd in the installation CD for now, because it causes
dhcpcd to segfault randomly or give corrupt output.  See e.g.

    http://hydra.nixos.org/build/2380666/nixlog/1/raw

  The problem seems to be that wicd sends a "-k" command to dhcpcd to
  release the interface, which doesn't work well with a dhcpcd that
  handles all interfaces in one process.

svn path=/nixos/trunk/; revision=33720
2012-04-10 13:09:56 +00:00
Lluís Batlle i Rossell
849d136aa6 Making also the system-tarball-pc show the memtest entry as the
pkgs.memtest86.name.


svn path=/nixos/trunk/; revision=33693
2012-04-09 20:37:54 +00:00
Lluís Batlle i Rossell
9017ccf9fe Removing the special memtest.nix module for the isos, and using
the same as the usual nixos. I think this trivial change works;
I checked the grub.cfg output generated in the iso_minimal.


svn path=/nixos/trunk/; revision=33692
2012-04-09 20:36:26 +00:00
Lluís Batlle i Rossell
6e281e46b7 I update the name of the memtest entry in grub of the iso images,
because it can be overriden choosing another memtest86.

As an effect of a change in nixpgks, the isos will include
memtest86 4.0a instead of memtest86+ 4.20, only because the 
former is released later, and I deduce it should work better.


svn path=/nixos/trunk/; revision=33691
2012-04-09 20:30:14 +00:00