Commit Graph

50 Commits

Author SHA1 Message Date
Armijn Hemel
142cef0a9e switch to dietlibc coreutils in the initrams. Use thit up until a certain point, after which we switch to the normal coreutils. Oh, this should really be refactored...
svn path=/nixu/trunk/; revision=3738
2005-08-28 16:56:48 +00:00
Armijn Hemel
de289092b2 - various cleanups
- have mingetty listen on tty2 (but this still fails because of missing /dev/log
- get rid of /init on the targetdrive, solely use /sbin/init (and even that has to go one day)
- use dietlibc statically linked e2fsprogs for the installer. More to come :)

svn path=/nixu/trunk/; revision=3734
2005-08-28 00:51:34 +00:00
Armijn Hemel
fff45e114e - register all valid paths inside the Nix database. The .drv files are not included, this is a purely binary deployment.
- add grub to the initial environment

svn path=/nixu/trunk/; revision=3717
2005-08-27 00:36:07 +00:00
Armijn Hemel
789f716808 use tar for copying nixpkgs instead of cp to speed up installation process.
Commit 3700 :)

svn path=/nixu/trunk/; revision=3700
2005-08-26 16:06:52 +00:00
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
9c75e2cb14 fill-disk wants grep
svn path=/nixu/trunk/; revision=3671
2005-08-23 16:53:39 +00:00
Armijn Hemel
d707a61ac2 add nano
svn path=/nixu/trunk/; revision=3670
2005-08-23 15:56:17 +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
b39fca2ade - add udev (not yet in use)
- clean up 100 MB of unused stuff on the CD

svn path=/nixu/trunk/; revision=3637
2005-08-19 15:26:01 +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
38cb12017a fix typo, add some more echo statements, minor cleanup
svn path=/nixu/trunk/; revision=3591
2005-08-16 21:46:08 +00:00
Armijn Hemel
91b9cabf9b svn export nixpkgs, don't copy it (gets rid of about 34 MB)
svn path=/nixu/trunk/; revision=3589
2005-08-16 18:58:23 +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
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
655ef5ac38 actually build grub too
svn path=/nixu/trunk/; revision=3565
2005-08-12 23:41:57 +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
8aaf4e9a75 touch a file "NIXOS" so we can more easily find the NixOS install CD
svn path=/nixu/trunk/; revision=3546
2005-08-11 14:06:04 +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
81bfae51f7 - set timeout for isolinux to 1 minute
- copy util-linux to ramdisk
  TODO:
   - do this with other tools as well in a bit more generic way

svn path=/nixu/trunk/; revision=3524
2005-08-03 18:14:47 +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
e6b3f223f6 whoops, not just query for, but actually *build* syslinux :o
svn path=/nixu/trunk/; revision=3511
2005-08-02 12:29:23 +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
96776b9065 use "vmlinuz" instead of "linux", small cosmetic thing
svn path=/nixu/trunk/; revision=3483
2005-07-31 19:04:58 +00:00
Armijn Hemel
16de9c1c61 add configuration for isolinux
svn path=/nixu/trunk/; revision=3482
2005-07-31 19:01:59 +00:00
Armijn Hemel
ec898a881e build kernel and copy it to the diskimage. Now all there is left is an
initial ramdisk.

svn path=/nixu/trunk/; revision=3481
2005-07-31 15:25:39 +00:00
Armijn Hemel
cc0935ebe8 - added some more comments, generate ISO file
- added stubs for making a bootable CD with isolinux. Still missing are
kernel, boot configuration and more

svn path=/nixu/trunk/; revision=3480
2005-07-31 13:11:44 +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
001302e0f8 touch something to keep chmod happy
svn path=/nixu/trunk/; revision=3370
2005-07-19 16:55:44 +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
8122aebd19 add grub
svn path=/nixu/trunk/; revision=3353
2005-07-18 09:47:42 +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
1054efb792 apart from nixpkgs also copy the NixU scripts
svn path=/nixu/trunk/; revision=3298
2005-07-06 14:42:41 +00:00
Armijn Hemel
b31d4e8079 copy nixpkgs, so it reflects what was built. This code uses a simple "cp -a"
so there is a race condition (nixpkgs being altered after the build). However,
with a bit of care and "policy" this should work ;-)

Also push all packages we want to push at once.

svn path=/nixu/trunk/; revision=3292
2005-07-05 14:39:12 +00:00
Armijn Hemel
1e607c9221 rewrite nixu scripts to use nix-push. Install the whole NixU environment in
two main steps:

1 - first build everything (nix-push)
2 - install everything on a seperate disk/machine (nix-pull)

svn path=/nixu/trunk/; revision=3291
2005-07-05 13:52:49 +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
85bbb5e447 add a whole bunch of packages to make NixU a bit more useful:
- ssh
- shadowutils
- ping
- vim
- less
- strace
- ...

svn path=/nixu/trunk/; revision=1243
2004-08-06 13:52:39 +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