by Douglas Orchard. Contributed by permission.
My workstation is a Debian Sid system. however the selection of packages makes it a “Slim System”.
This tutorial is just my notes on how I made a slim system.
After 5 years of building Debian and Slackware systems, I have found my favorite packages, and I have a list of them.
These are the packages I use daily or my first choice when a specific task comes up. I have not installed redundant packages (eg. joe and kate).
My install starts by downloading a small iso file. This file is usually the latest “Stable” release, from http://cdimage.debian.org/debian-cd/3.1_r0a/i386/iso-cd/
The businesscard.iso image has a size of some 30-40 MB. It is small enough to fit on business card-shaped CDs. This image contains just the bare necessities to start a Debian installation, i.e. those parts of the installer which are necessary to configure networking and download the rest of the installation system.
At the beginning the installer prompts for the usual information (eg. your keyboard and timezone), just like all the other installers. When the installer has all the necessary information (including your internet conection details), it starts to install all the packages essential to complete the install from the internet (especially “apt-get”).
Near the end of the installation you are prompted to use “tasksel or dselect” to choose additional packages, I skip both. You are also prompted to “choose additional sources”, I pick “html” (not CD or ftp or network), and then select my local mirror from the list that is provided.
I then reboot and login as root and modify some features in the config files:
I then login as my user and mount my latest backup CD, and copy some files to the harddrive. These files include such things as my favorite bash prompt, how to install truetype fonts in debian, my favorite Blackbox style and my bbkeysrc file. Also copied in are the three files that make my system a Slim System:
Excerpts from the bash script are shown here to illustrate the way the script works (the entire script is available here).
#!/bin/bash echo echo " This script will now install Debian GNU/Linux" echo " you may select some programs" echo echo echo " Do you wish to install the Base packages? (y,n)" echo " YOU MUST DO THIS BEFORE ANYTHING ELSE!!!" echo " Only if you have done this already may you say NO" read basic # Blackbox echo echo " Do you wish to install X, Blackbox and some gui programs? (y,n)" read blackbox echo .... if [ "$basic" = "y" ]; then echo " Now installing the Base Packages" for myfile in $(cat programs.cli); do echo " Now installing $myfile" apt-get -y install $myfile echo echo done fi if [ "$blackbox" = "y" ]; then echo " Now installing the graphical desktop" for myfile in $(cat programs.gui); do echo " Now installing $myfile" apt-get -y install $myfile echo echo done fi
a2ps adduser apcd apsfilter bin86 bsdmainutils bsdutils bind build-essential bzip2 chkrootkit cdrecord epic4 aspell aspell-en aspell-doc mutt gawk gcc hdpar html2ps less libncurses5-dev links make mc mkisofs nfs-common ntpdate python shellutils smbfs ssh strace tcpdump traceroute util-linux unzip vim wget whiptail xutils
x-window-system blackbox bbkeys bbtime bbdate bbpager xnee bluefish feh gs ghostview gimp gimp-help-en gtop libmikmod2 libvorbis0 numlockx qcad rxvt ttmkfdir fttools freetype2 java-common libdockapp1 libmotif3 xchat xpdf xli aumix xmms xmms-cdread xine smpeg-xmms spider mah-jong
#!/bin/bash echo echo " This script will now install Debian GNU/Linux" echo " you may select some programs" echo echo echo " Do you wish to install the Base packages? (y,n)" echo " YOU MUST DO THIS BEFORE ANYTHING ELSE!!!" echo " Only if you have done this already may you say NO" read basic # Server echo echo " If you wish to use this machine as a server, you" echo " must install NFS and/or Samba or Apache" echo echo " Do you wish to install NFS? (y,n)" read nfs echo " Do you wish to install Samba? (y,n)" read samba echo " Do you wish to install Apache? (y,n)" read apache echo # Blackbox echo echo " Do you wish to install X, Blackbox and some gui programs? (y,n)" read blackbox echo # Laptop echo echo " If this is a laptop, you should have a battery monitor? (y,n)" read laptop echo # Varicad echo echo " Do you wish to install the libraries for Varicad? (y,n)" echo " Varicad must be installed before upgrading from Woody." read varicad echo # Wine echo echo " Do you wish to install Wine and Wine libraries? (y,n)" read wine echo # FlightGear echo echo " Do you wish to install FlightGear? (y,n)" read flightgear echo # PPP echo echo " If you do NOT have a modem, you cant use PPP" echo " Can I remove PPP? (y,n)" read ppp echo echo if [ "$basic" = "y" ]; then echo " Now installing the Base Packages" for myfile in $(cat programs.cli); do echo " Now installing $myfile" apt-get -y install $myfile echo echo done fi if [ "$nfs" = "y" ]; then echo " Now installing NFS" apt-get -y install nfs-user-server echo echo fi if [ "$samba" = "y" ]; then echo " Now installing Samba" apt-get -y install samba echo echo fi if [ "$apache" = "y" ]; then echo " Now installing apache" apt-get -y install apache echo echo fi if [ "$ppp" = "y" ]; then echo " Now removing PPP" apt-get -y remove ppp pppconfig echo echo fi if [ "$blackbox" = "y" ]; then echo " Now installing the graphical desktop" for myfile in $(cat programs.gui); do echo " Now installing $myfile" apt-get -y install $myfile echo echo done fi if [ "$wine" = "y" ]; then echo " Now installing Wine" apt-get -y install wine wine-utils wine-doc winesetuptk libwine libwine-dev echo echo fi if [ "$laptop" = "y" ]; then echo " Now installing Xbat" apt-get -y install xbat echo echo fi if [ "$varicad" = "y" ]; then echo " Now installing the Varicad libraries" apt-get -y install kdelibs3 libqt2-gl libstdc++2.9-glibc2.1 echo echo fi if [ "$flightgear" = "y" ]; then echo " Now installing FlightGear and Joystick" apt-get -y install flightgear joystick echo echo fi echo echo echo echo " This script has only installed the Links web browser" echo " You must install by hand the following packages" echo " Varicad dpkg -i varicad-en_9.0.1.0-1_i386.deb" echo " Opera dpkg -i opera_7.54-20040803.5-shared-qu_en_i386.deb" echo " Open Office tar xvzf OOo_1.1.3_LinuxIntel_install.tar.gz" echo echo echo echo " All done Bye" exit
Copyright (c) by the authors.
Prior to editing, authors agreed to license their contributions by the terms of the GPL.
See our licensing page for details.
Linux® is a registered trademark of Linus Torvalds.