The NCCP software architecture is not so complicated. It has an operating system, few drivers and the user software. In this post I will explain what kind of operating system I choose and show how it is configured. Everything is basic, nothing is extra.
First of all, I chose the Debian Squeeze version with the actually default kernel (for my hardware) and this is the 2.6.32-5-486.
Let's go, do it:
- Download the Debian NetInstall CD image from here. (Direct link to the i386 iso file.)
- Burn to a CD
- Boot up the hardware from the CD. (Need to play a little bit in the BIOS to set the first boot device to the CD-ROM)
- Set up the default system.
Do not forget to enable the root user during the installation process and create a standard user as well.
Of course — because this is a net(work) installation, it needs a living internet access. I just connected to my home's rooter with a LAN cable. Up to the internet connection's speed, the network install takes a half an hour.
You could ask why I choose the network install for my setup. Because I always want to reduce the amount of computer components on my desk. This tiny VIA board is nice and small and not so nice looking together with an 1€ CD-ROM driver on its side. (Did I told already all of my components are low-cost stuffs?) This old CD drive is loud and always shaking my desk when it needs to read something from the disk. That's why I decided to use as less as need.
After the basic Debian setup, need to tune a little bit the system to be ready to set the kernel source dependencies and compile the driver for the Sitecom USB WiFi adapter.
- Download and install Midnight Commander
- Download and install ssh
- Download the kernel-package
- Download the kernel source for the actual kernel
- Download and install the kernel headers (They are important to build any driver.)
# apt-get update
# apt-get install mc
# apt-get install ssh
# apt-get install kernel-package
If you did not select during the installation add contrib and non-free to your source.list file. This file is in the /etc/apt/ directory of the root filesystem. Here is mine:
#
# deb cdrom:[Debian GNU/Linux 6.0.3 _Squeeze_ - Official i386 NETINST Binary-1 20111008-19:55]/ squeeze main
#deb cdrom:[Debian GNU/Linux 6.0.3 _Squeeze_ - Official i386 NETINST Binary-1 20111008-19:55]/ squeeze main
deb http://debian.tu-bs.de/debian/ squeeze main contrib non-free
deb-src http://debian.tu-bs.de/debian/ squeeze main
deb http://security.debian.org/ squeeze/updates main
deb-src http://security.debian.org/ squeeze/updates main
# squeeze-updates, previously known as 'volatile'
deb http://debian.tu-bs.de/debian/ squeeze-updates main
deb-src http://debian.tu-bs.de/debian/ squeeze-updates main
To have a "ready" kernel sources and headers need to do this few steps.
Download the kernel headers and source packages:
# apt-get install linux-source-2.6.32
# apt-get install linux-headers-2.6.32-5-486
Unpack it:
# cd /usr/src
# tar -xjvf linux-source-2.6.32.tar.bz2
Install the correct config-file:
# cd linux-source-2.6.32
# cp /boot/config-2.6.32-5-486 .config
Generate dependencies and Makefiles:
# make-kpkg --append-to-version "-5-486" --revision 2.6.32-5 --config old configure
Check build link:
# rm -f /lib/modules/2.6.32-5-486/build
# ln -s /usr/src/linux-source-2.6.32 /lib/modules/2.6.32-5-486/build
Most drivers will use the build link to find the correct kernel source tree for include files and Makefiles.
With this in place many drivers can be installed with a simple “make install”.
Because I have not so much free space on my CF card, I decided to delete all of the unnecessary files and packages:
# cd /usr/src
# rm linux-source-2.6.32.tar.bz2
# apt-get clean
Two usefull commands are the df and the free.