* Moving stuff around.

svn path=/nixos/trunk/; revision=7155
This commit is contained in:
Eelco Dolstra
2006-11-27 19:49:05 +00:00
parent 1a0fcfdf1a
commit 0817c307dc
68 changed files with 1 additions and 1682 deletions

View File

@@ -1,16 +0,0 @@
Making X work in NixOS (fixing guide)
Mouse
* for mouse support /dev/input/mice needs to be there. This device can be
created either automatically with udev, or manually with mknod.
Fonts
Right now fonts have to be copied from another machine and put into
/usr/X11R6/lib/X11/fonts
Config
in services/trunk/configurations/tyros.cs.uu.nl-xorg/ there is a Nix expression
which builds a working X configuration for use in VMware.

View File

@@ -1,25 +0,0 @@
Configuration in NixOS
Configuration in NixOS is not very straightforward. On other Linux
distribution site-specific information (password files, host files, and
so on) are stored with information that is rather generic for a lot of
operating systems. To be able to handle these in a gentle way I have decided
to seperate these two a bit more in NixOS.
In particular, in the /etc directory there is a Nix profile called "configs".
In this profile the generic configuration is kept. In time this can grow
to keep configuration which is site specific, but which can easily be kept
in the store, such as "profile" (default system wide Bourne shell profile)
Right now two packages should be in this profile:
* etcServices : installs a file called "services" (/etc/services should
point to this)
* etcProtocols : installs a file called "protocols" (/etc/protocols should
point to this)
During install time these packages should be installed and the right symlinks
should be made.
When NIX-40 is closed, we might consider making /etc itself a profile and
keep even more configuration information inside the Nix store.

117
doc/howto
View File

@@ -1,117 +0,0 @@
NixOS installation HOWTO -- August 28, 2006
This is small HOWTO of how to build and install the current version of
NixOS.
Building
Install Nix. Checkout nixpkgs from Subversion, as well as nixu. Adapt the
scripts in nixu to reflect the location of nixpkgs (default /nixpkgs).
Make sure mktemp is installed. Run ./make-disk.sh. Wait.
Burning
Use your favourite tool to burn the ISO image to a CD.
Installing
Currently NixOS can only be installed with machines that have a specific
hardware set up:
An ATA harddisk on the first ATA controller (hda) with:
- data partition
- swap partition
All data on these two partitions will be wiped and the bootloader in the
Master Boot Record (MBR) will be overwritten with GRUB.
The NixOS installer will drop you into a shell, from which you can run
fdisk. Then it expects to find a file called "disklayout" with three
variables:
SWAP :: partition to use as swap
INSTALLDEVICE :: partition that will be /root
TARGETDRIVE :: drive on which grub will be installed
This file will be read by the install script automatically when you launch
the script:
# sh fill-disk.sh
The configuration data that grub writes to disk might not be correct (should
be). When something goes wrong you probably won't have to reinstall. The
manual for grub is quite helpful in these cases.
Configuring
To get NixOS in a working state, do the following:
- load the networkdriver. This is machine dependent. On the labmachines (Dell
Optiplex GX-260) this is the e1000 driver:
# modprobe e1000
In vmware the driver is "pcnet32".
- bring the interface up:
# ifconfig eth0 up
If the interface is different (say, eth1) replace eth0 with the right
interface.
- if DHCP is used, run a DHCP client to obtain an IP address, routing
and resolving information:
# dhclient eth0
Otherwise, do this yourself:
# ifconfig eth0 <ip address> netmask <netmask>
# route add default gw <gateway ip address>
# vim /etc/resolv.conf
Making syslog work.
- copy /etc/services from a working Linux machine to /etc/services on the
NixOS machine (needed for sysklogd)
- copy /etc/syslog.conf from a working Linux machine to /etc/syslog.conf on the
NixOS machine (needed for sysklogd)
- launch sysklogd
Making logins on virtual consoles work.
Logins on virtual consoles are disabled by default. To make them work:
- edit /etc/inittab and outcomment the lines with "mingetty" in them
- copy /etc/login.defs from a working Linux machine to /etc/login.defs on the
NixOS machine (needed for mingetty). Alternatively, do:
# touch /etc/login.defs
- relaunch init
Making hotplugging work -- BROKEN RIGHT NOW
Many devices (USB, Firewire) are controlled by so called "hot plugging". The
kernel executes a program -- usually /sbin/hotplug, but this is configurable
at boottime by setting the right path in /proc/sys/kernel/hotplug -- when a
new device is added to the machine. This program makes sure the right kernel
modules are loaded and optionally, if enabled, sends a message to udev to
create the right device node in /dev (NOTE: this is not enabled in NixOS right
now).
- mount usbfs (for USB):
# mount -t usbfs usbfs /proc/bus/usb
- install hotplug package
- make symlinks /etc/hotplug, /etc/hotplug.d, /sbin/hotplug (TODO: make
this pure)
- make sure the kernel and additional modules are prepared well (currently
this is hackish, but workable: see kernelscripts/make-kernel.sh for an
example)
- (optionally:) install udev
- make a symlink to /etc/udev/udev.conf
- launch udev
- plug in a device