Commit Graph

95 Commits

Author SHA1 Message Date
Armijn Hemel
3dce29bb92 make /var/run in the installdisk, add some code for registering the copied
Nix store in the Nix database, still unfinished

svn path=/nixu/trunk/; revision=3690
2005-08-25 23:10:36 +00:00
Armijn Hemel
af61e91592 add /nix/var/nix/profiles and other nix related directories
svn path=/nixu/trunk/; revision=3680
2005-08-24 14:04:07 +00:00
Armijn Hemel
240a2de945 - make /lib/modules/<hash-part>-<kernelversion>
- make symlinks to "build" and "kernel" in those directories
- copy all modules.* files (like modules.dep). This is done so future add-on
modules can modify these files instead of the ones in the store...

Since the Nix hash is embedded in the path, this can still be considered
safe and it makes modprobe work automagically.

svn path=/nixu/trunk/; revision=3674
2005-08-23 23:07:49 +00:00
Armijn Hemel
52bc4c5681 get the kernel versioning right. Right now it's only printed, but it should be used for creating the /lib/modules/<kernel-version> stuff right
svn path=/nixu/trunk/; revision=3673
2005-08-23 21:00:45 +00:00
Armijn Hemel
d707a61ac2 add nano
svn path=/nixu/trunk/; revision=3670
2005-08-23 15:56:17 +00:00
Armijn Hemel
fe90fce5d1 mount /dev/pts, zo we've got PTYs (for screen)
svn path=/nixu/trunk/; revision=3661
2005-08-22 14:23:01 +00:00
Armijn Hemel
b1b5fdd7cd change root homedir to /root instead of /home/root
svn path=/nixu/trunk/; revision=3659
2005-08-21 23:15:24 +00:00
Armijn Hemel
f88a356cc6 make correct symlink to /bin/sh and /bin/bash
svn path=/nixu/trunk/; revision=3658
2005-08-21 22:41:22 +00:00
Armijn Hemel
fb451cc09f use the dhcp wrapper, add a directory needed for DHCP
svn path=/nixu/trunk/; revision=3656
2005-08-21 19:56:30 +00:00
Armijn Hemel
4c6230b0a6 add dhcp package. This doesn't work quite nicely though, needs some resolving...
svn path=/nixu/trunk/; revision=3653
2005-08-21 17:39:47 +00:00
Armijn Hemel
6e7614fdb0 use module-init-tools instead of modutils. Now we can insert modules :)
svn path=/nixu/trunk/; revision=3650
2005-08-20 21:49:53 +00:00
Armijn Hemel
49cd9fae36 make /lib/modules
svn path=/nixu/trunk/; revision=3643
2005-08-19 22:39:48 +00:00
Armijn Hemel
26ccf579e0 ssh wants /dev/urandom (or /dev/random, but urandom works too)
svn path=/nixu/trunk/; revision=3631
2005-08-17 20:51:19 +00:00
Armijn Hemel
0b4feb3a6c add hotplug here, temporarily disable e2fsck, so at least everything is mounted rw
svn path=/nixu/trunk/; revision=3630
2005-08-17 19:19:54 +00:00
Armijn Hemel
e8f7642f09 fix copying bug for real
svn path=/nixu/trunk/; revision=3588
2005-08-16 18:32:08 +00:00
Armijn Hemel
2389fc5bef copy /nixpkgs contents instead of just the link (fixes NIXOS-9)
svn path=/nixu/trunk/; revision=3586
2005-08-15 17:02:54 +00:00
Armijn Hemel
597f963528 more cleanups
- remove some debugging code
- add better descriptions for a few actions

svn path=/nixu/trunk/; revision=3582
2005-08-14 15:08:15 +00:00
Armijn Hemel
08ad69d2dc some cleanups:
- umount the filesystem after installing (so it's clean)
- some hardcoded paths gone
- 

svn path=/nixu/trunk/; revision=3581
2005-08-14 14:34:46 +00:00
Armijn Hemel
ea3b3356ba add right devices in /dev
NixOS now boots, but mounts the filesystem read-only, filesystem is dirty,
etc.

svn path=/nixu/trunk/; revision=3579
2005-08-14 13:50:29 +00:00
Armijn Hemel
c7bd0ec473 get grub right, also copy all the packages needed for a nice booting system
svn path=/nixu/trunk/; revision=3575
2005-08-14 01:40:36 +00:00
Armijn Hemel
fdab68ff43 make a /boot directory on the targetdrive
svn path=/nixu/trunk/; revision=3566
2005-08-12 23:51:12 +00:00
Armijn Hemel
a866ceef3e add grub to the path
svn path=/nixu/trunk/; revision=3564
2005-08-12 23:40:12 +00:00
Armijn Hemel
edbd58ca43 search for NixOS CD, mount it, copy packages onto the target disk for real
now. Only IDE drives supported so far.

svn path=/nixu/trunk/; revision=3559
2005-08-12 16:26:51 +00:00
Armijn Hemel
592b736d33 add modutils, start with code that will find the right CD player our install CD is in.
svn path=/nixu/trunk/; revision=3540
2005-08-09 16:51:26 +00:00
Armijn Hemel
bc3ffa3458 get NixOS more towards an installable state. Stuff now actually gets installed on the disk itself. Missing is functionality to detect the right drive with
the install CD in it.

svn path=/nixu/trunk/; revision=3531
2005-08-05 13:48:22 +00:00
Armijn Hemel
8151b78162 add necessary packages. Now it works and we have to decide:
- either add the device with mknod
- use hotplug to build all devices dynamically

svn path=/nixu/trunk/; revision=3525
2005-08-04 14:45:27 +00:00
Armijn Hemel
93bcd71b15 This update fixes a few critical errors:
- cd to the right directory when making the initramfs image (stupid stupid stupid mistake, cost me a day of work!)
- make a bunch of devices inside the ramdisk
- copy the kernel and all modules to the CD image
- set the #! line in fill-disk to the right place (as in, append /bin/sh, another stupidity, which was luckily easily spot after fixing the first mistake, which was far more important)


svn path=/nixu/trunk/; revision=3523
2005-08-03 17:59:23 +00:00
Armijn Hemel
45492df16b reduce the size of the initrd a lot
svn path=/nixu/trunk/; revision=3514
2005-08-03 12:00:42 +00:00
Armijn Hemel
9c56696e75 support for initrd. Right now the image is *WAY* too big, so it boots with
a kernel panic. initrd should be brought back to a few megabytes instead
so it can be safely unzipped in memory.

Ideas:
- klibc instead of glibc
- leave out a lot of packages in the initrd:
  - gcc
  - linux-headers
  - ...
- have a minimal "stage 1", which mounts the CD (figure out how) and
remounts part of the CD on /nix and /nixpkgs

svn path=/nixu/trunk/; revision=3502
2005-08-01 17:30:45 +00:00
Armijn Hemel
8f7215a779 various improvements + stubs for later work, definitely not production ready
svn path=/nixu/trunk/; revision=3473
2005-07-29 16:54:36 +00:00
Armijn Hemel
62882b6d0a use right path
svn path=/nixu/trunk/; revision=3368
2005-07-19 16:02:17 +00:00
Armijn Hemel
200251da1a fix tpyos
svn path=/nixu/trunk/; revision=3367
2005-07-19 16:00:34 +00:00
Armijn Hemel
5c6d52dbd8 - add more directories
- make /dev/null inside a chroot to install

svn path=/nixu/trunk/; revision=3366
2005-07-19 15:39:32 +00:00
Armijn Hemel
c05605e316 disable NIX_ROOT, use things like NIX_STATE_DIR instead
svn path=/nixu/trunk/; revision=3338
2005-07-14 16:57:39 +00:00
Armijn Hemel
5432cd148b copy the right packages into the diskimage, copy nixpkgs
svn path=/nixu/trunk/; revision=3313
2005-07-11 17:59:19 +00:00
Armijn Hemel
59456f9366 run the Nix scripts for installing everything from the Nix built Nix.
svn path=/nixu/trunk/; revision=3303
2005-07-08 10:06:41 +00:00
Armijn Hemel
9380bf77d8 rewrite make-disk.sh and have it parameterize fill-disk.sh with the location
of sysvinit and the boot scripts that will be used.

svn path=/nixu/trunk/; revision=3299
2005-07-06 16:00:20 +00:00
Armijn Hemel
f763a7c40a change to new packages, with new nix, new bash, new everything! It's shiny and new!
svn path=/nixu/trunk/; revision=1730
2004-11-09 10:28:21 +00:00
Armijn Hemel
511b3fd83f add more packages that are necessary for a complete build
svn path=/nixu/trunk/; revision=1246
2004-08-06 17:22:24 +00:00
Armijn Hemel
8c3de58259 add a directory, touch a few files
svn path=/nixu/trunk/; revision=1242
2004-08-06 13:50:42 +00:00
Eelco Dolstra
91a5fe9eb0 * Networking now works in the UML machine. Masquerading for the tun
device should be enabled on the host in order for the UML machine to
  be able to talk to the Internet.

svn path=/nixu/trunk/; revision=806
2004-02-19 12:49:00 +00:00
Eelco Dolstra
3514c5658b * Proper sysvinit boot/halt. At runlevel 2, creates login shells at
virtual consoles 0 and 1.  To shutdown, do `init 0' (`halt' and
  `shutdown' don't work because they call /sbin/init).

svn path=/nixu/trunk/; revision=803
2004-02-18 14:56:32 +00:00
Eelco Dolstra
1e87e75d07 * Use sysvinit's init to start the system. This has the happy
side-effect of initialising the console properly (i.e., enabling
  Ctrl-[C, Z]).

svn path=/nixu/trunk/; revision=801
2004-02-18 10:56:07 +00:00
Eelco Dolstra
1f7a8c8ae9 * Started setting up a proper init environment.
svn path=/nixu/trunk/; revision=785
2004-02-16 09:41:00 +00:00
Eelco Dolstra
e019265ec9 * Scripts to set up and run the absolute minimal pure Nix
environment; that is, an operating system environment in which there
  is (essentially) only a store.

  The script `make-disk.sh' creates an ext2 disk image, creates a Nix
  store in it, and copies the closure of the bash package (from
  nixpkgs) to it.  The script `run.sh' then starts bash in a UML
  virtual machine.

  The contents of the image after creation look like this:

  $ ls -l
  drwxr-xr-x    2 root     root         1024 2004-02-14 19:13 dev
  lrwxrwxrwx    1 root     root           61 2004-02-14 23:34 init -> /nix/store/e40873ece7a010752ad72b4262b23d28-bash-2.05b/bin/sh
  drwx------    2 root     root        12288 2004-02-14 19:13 lost+found
  drwxr-xr-x    4 root     root         1024 2004-02-14 19:13 nix
  drwxr-xr-x    2 root     root         1024 2004-02-14 19:13 proc
  drwxrwxrwt    2 root     root         1024 2004-02-14 19:13 tmp

  The next step is to add all the other stuff that goes into a working
  system (coreutils, etc.).  BTW, if you don't have `ls' you can still
  list directories by doing `echo *' :-)

  Nix itself should also be Nixified so that it can be put into the
  store.

svn path=/nixu/trunk/; revision=783
2004-02-14 22:56:51 +00:00