* Moving stuff around.
svn path=/nixos/trunk/; revision=7155
This commit is contained in:
16
doc/X-howto
16
doc/X-howto
@@ -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.
|
||||
@@ -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
117
doc/howto
@@ -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
|
||||
Reference in New Issue
Block a user