Here is my way of installing Arch Linux onto my Thinkpad 240 box. And, this is my fifth time of doing so.
Preparations of installation
To prepare installation, I need to boot computer into Arch Linux installation environment, and setup partitions for Arch Linux.
Boot without CD-ROM under Windows XP
I used UNetbootin and 2008.03-1 ftp installation ISO image (Archlinux-i686-2008.03-1-archboot.ftp.iso) to create an boot entry together with Windows XP.
Prepare disk
Fdisk
Use
fdisk /dev/sda
to create new partitions
Input n, fdisk askes which type of partition to create, choose 2 (primary partition), assign 3 as partition id, and give +16M to it.
/dev/sda3 /boot 16M
Input n, choose 1 (extended partition), assign rest of the space to it.
Input n, assign +192M to the first sub-partition inside the extended partition.
Input n, assign the rest of space to the second sub-partition inside the extended partition.
/dev/sda5 swap 192M
/dev/sda6 / rest
Format new partitions
Use
mke2fs /dev/sda3
to create ext2 filesystem on sda3
Use
mkswap /dev/sda5
to create swap filesystem on sda5
Use
mkreiserfs /dev/sda6
to create reiserfs filesystem on sda6
Configure network
Configure ethernet
ifconfig -a
ifconfig eth0 192.168.1.2
route add default gw 192.168.1.1
Configure name server
vi /etc/resolv.conf
nameserver 208.67.222.222
Mount 2008.03-1 core iso from usb thumbnail
cd /media
mkdir usb
mount /dev/sdb1 usb
cd usb
mount -o loop Arch*.core.iso /src
Install base system
/arch/setup
Choose installation media
choose installation media of cd or mounted file system
Prepare Hard Drive
Set Filesystem Mountpoints
/dev/sda5 swap
/dev/sda6 /
/dev/sda3 /boot
Select packages
"base" and "base-devel" are chosen.
Install packages
No need to keep them in cache, since most (or all) of those packages need to be updated.
Configure System
use 'hwdetect' for '/etc/rc.conf' and 'etc/mkinitcpio.conf'
all “no” for various booting options
/etc/rc.conf
TIMEZONE=”Asia/Saigon” #KEYMAP="no-latin1.map.gz" HOSTNAME=”fang.ntu.edu.vn” eth0=”eth0 192.168.1.155 netmask 255.255.255.0 broadcast 192.168.1.255” gateway=”default gw 192.168.1.1” ROUTES=(gateway)
/etc/fstab
Add # at the line of /dev/fd0
/etc/mkinitcpio.conf
/etc/modprobe.conf
/etc/resolv.conf
nameserver 208.67.222.222 nameserver 203.113.168.1
/etc/hosts
/etc/hosts.deny
/etc/hosts.allow
/etc/locale.gen
Enter into it, but do nothing and exit, system will automatically generates locales.
Root-Password
Pacman-Mirror
Install Bootloader
timeout 5 default 0 color light-blue/black light-cyan/blue # (0) Arch Linux title Arch Linux root (hd0,2) kernel /vmlinuz26 root=/dev/sda6 ro initrd /kernel26.img # (1) Arch Linux title Arch Linux Fallback root (hd0,2) kernel /vmlinuz26 root=/dev/sda6 ro initrd /kernel26-fallback.img # (2) Windows title Windows rootnoverify (hd0,0) makeactive chainloader +1
Reboot
reboot
Post system configuration
System Upgrade
Due to the error of upgrading klibc, a -f is used in the upgrade command, and the result showed that it has no consequence of using -f for the first system wide upgrade.
pacman -Syuf
X.org
pacman -S xorg xf86-video-neomagic
nano rc.conf
DAEMONS=(... hal ...)
pacman -S fluxbox
nano .initrc
exec startfluxbox
pacman -S slim
nano /etc/inittab
#id:3:initdefault id:5:initdefault #x:5:respawn:/usr/bin/xdm -nodaemon x:5:respawn:/usr/bin/slim >& /dev/null
User management
useradd -m -G wheel wen passwd wen pacman -Sy pacman -S sudo nano /etc/sudoers
uncomment on %wheel line
%wheel ALL=(ALL) ALL
Set default wm of new user to fluxbox
nano /home/wen/.xinitrc
exec startfluxbox
Softwares installation
Web Browser
sudo pacman -S arora-git nano ~/.fluxbox/usermenu
[exec] (Arora) {arora}
Text Editor
mkdir ~/builds cd ~/builds wget https://aur.archlinux.org/packages/juffed/juffed.tar.gz tar -xvzf juffed.tar.gz rm juffed.tar.gz cd juffed makepkg -s sudo pacman -U juffed-0.4-1-i686.pkg.tar.gz nano ~/.fluxbox/usermenu
[exec] (JuffEd) {juffed}
fluxbox-generate_menu
LyX Document Processor
pacman -S lyx
Reference Management Software
I chose KBib over KBibTex, because KBib is maintained by Thach Nguyen, a person with a Vietnamese name.
yazpp
cd ~/builds wget https://aur.archlinux.org/packages/yazpp/yazpp.tar.gz tar -xvzf yazpp.tar.gz rm yazpp.tar.gz cd yazpp makepkg -s sudo pacman -U yazpp-1.1.1-2-i686.pkg.tar.gz
KBib
cd ~/builds wget https://aur.archlinux.org/packages/kbib/kbib.tar.gz tar -xvzf kbib.tar.gz rm kbib.tar.gz cd kbib makepkg -s sudo pacman -U kbib-0.6.4-2-i686.pkg.tar.gz nano ~/.fluxbox/usermenu
[exec] (KBib) {/opt/kde/bin/kbib}
fluxbox-generate_menu
Xpdf
pacman -S xpdf fluxbox-generate_menu
KeePassX
pacman -S keepassx nano ~/.fluxbox/usermenu
[exec] (KeePassX) {keepassx}
fluxbox-generate_menu
kdesvn
Download latest PKGBUILD file from CVS (http://repos.archlinux.org/viewvc.cgi/community/kde/kdesvn/?root=community&pathrev=CURRENT)
cd ~/builds/kdesvn makepkg -s sudo pacman -U kdesvn-1.2.3-1-i686.pkg.tar.gz nano ~/.fluxbox/usermenu
[exec] (Kdesvn) {kdesvn}
fluxbox-generate_menu
vpnc
sudo pacman -S vpnc sudo nano /etc/vpnc/uit.conf
IPSec gateway 129.242.233.180 IPSec ID student.uit.no IPSec secret student.uit.no Xauth username USERNAME Xauth password PASSWORD NAT Traversal Mode cisco-udp
File Manager
Krusader is used here.
sudo pacman -S krusader fluxbox-generate_menu
Dictionary
QStarDict
sudo pacman -S qstardict nano ~/.fluxbox/usermenu
[exec] (QStarDict) {qstardict}
Dictionary
Get "http://xdxf.revdanica.com/down2/index.php?down_format=StarDict" from http://xdxf.revdanica.com/down2/index.php?down_format=StarDict
mkdir -p ~/.stardict/dic tar xzvf stardict-comn_dictd04_gcide-2.4.2.tar.bz2 -C ~/.stardict/dic
Chinese Input Method Engine
sudo pacman -S scim-pinyin nano ~/.xinitrc
export XMODIFIERS=’@im=SCIM’ export GTK_IM_MODULE=”scim” export QT_IM_MODULE=”scim” scim -d exec startfluxbox
