Debian GNU/Linux –Testing Distribution - Installation Guide
Author: Rodd Ahrenstorff version: 1.3 modified: 10/16/04
Linux user groups and private individuals can use this tutorial and the included script text
to assist interested persons install and configure a Debian GNU/Linux system. This is an
easy to understand starting point suitable for new to intermediate users. The suggested
method for deployment is described below:
1. Modify the intel.install.script (and create a similar amd.install.script for AMD
processors with appropriate verbage and kernel install) to include/exclude
packages deemed necessary and customize for increased automation if desired.
Update the wget commands to reflect the correct host IP address.
2. Locate the best Debian repository mirror or create a mirror for public/private use.
3. Modify the sources.list file to include a local mirror for the Debian repository.
4. Host the all the files: install scripts, sources.list, preferences, install guide on an
5. Modify this guide to accommodate changes as required.
The text for the intel.install.script, sources.list, and preferences files can be located at the
end of this document. A simple review of the intel.install.script will reveal how the
installation proceeds. NOTE: These files must be customized before use! The idea is to
give new users interested in Debian GNU/Linux a reliable method for installation, 100%
compatability with Debian repositories, and a custom but “known” system-state post-
install. All while maintaining some educational value for the initial experience. The ideal
process would include a local LUG, ISP or educational institution providing a Debian
mirror, a web host for the installer scripts/files and a similar how-to guide providing
assistance. This example may provide a starting point.
There are many alternative Debian installers, but allowing the installation of an easliy
modified custom package set is not common among them. By simply selecting “manual
package selection”, the new Debian installer provides unique flexibility.
This tutorial will describe how to install the Debian GNU/Linux testing distribution with
a Gnome desktop using this newly developed installation iso:
The home page for this developing installer with documentation:
The tutorial will then proceed with the updating and configuring of this new system for
desktop productivity. This install guide assumes using the entire hard drive for the Debian
system and does not include dual-boot configuration steps. This guide also assumes some
basic knowledge of Linux and the command line.
First, some very useful links concerned with Debian GNU/Linux and Gnome:
Apt how-to http://newbiedoc.sourceforge.net/system/apt-get-intro.html
Debian home: www.debian.org
Debian Source Forge: http://alioth.debian.org
Debian news web log: www.debianplanet.org
Debian US FTP: http://ftp.us.debian.org/debian
Debian package listing: http://www.debian.org/distrib/packages
Debian package tracking: http://packages.qa.debian.org/common/index.html
Debian incoming FTP: http://incoming.debian.org
Debian people: http://people.debian.org
Debian RSS aggregator: http://planet.debian.org
Debian shop & info: http://debianshop.com
Debian info & help: http://debianlinux.net/debian.html
Debian info & help: http://aboutdebian.com
Debian Wiki: http://wiki.debian.net
Debian Wiki: http://en.wikipedia.org/wiki/debian
Debian desktop guide:
Gnome home: http://www.gnome.org
Gnome art: http://www.themedepot.org
Gnome files: http://www.gnomefiles.org
Gnome art: http://gnome-look.org
Gnome art: http://art.gnome.org
Gnome desktop: http://gnomedesktop.org
Gnome support: http://gnomesupport.org
Gnome theme: http://librsvg.sourceforge.net/theme.php
Gnome desklets: http://gdesklets.gnomedesktop.org
Gnome desklets FAQ: http://gurb.ton.tut.fi/gdesklets/book1.htm
Some hardware manufacturers do not fully support Linux, so it’s recommended to use a
computer that does not contain unique hardware for this initial installation. After burning
the iso file, boot from this new CD and proceed with the installation.
Installation screens for this procedure are described below. This list is derived from
choices made during this particular installation. However, hardware detection, package
selection, varied options, etc… may change this numerical list. The responses to options
selected during this particular installation are listed below the corresponding screen
number and located inside the < > signs. Choose responses appropriate to your
installation. NOTE: if the installation is unattended for some period of time, the monitor
screen may go blank. To reactivate the screen, please press the Ctrl key since using other
keys (Space bar or Enter) may accidentally select an option where the cursor is residing.
Also, use the Tab and Arrow keys to navigate through the various screen options.
1. Boot screen
2. Choose language
3. Choose country or region
4. Select keyboard layout
5. Detecting hardware to find CDROM drives (progress bar)
6. Loading components of the Debian installer (progress bar)
7. Detecting network hardware (progress bar) NOTE: if DHCP is available on the
network, the installer will automatically configure the network interface. If no
DHCP server is found, a manual network entry screen will be displayed.
8. Configuring the network with DHCP (progress bar)
9. Configure the network (host)
10. Configure the network (domain)
11. Detecting disks and other hardware
12. Starting up the partitioner
13. Partition disks (disk method)
<Erase entire disk – (disk name)>
14. Partition disks (scheme method)
<All files in one partition> or <Separate partition for home directories> NOTE:
the first option is recommended for new users
15. Guided partitioning (progress bar)
16. Partition disks (overview)
<Finish partitioning and write changes to disk>
17. Partition disks (erase entire disk and write confirm)
18. Installing the Debian base system (progress bar)
19. Install the GRUB boot loader (confirm)
20. Installing the GRUB boot loader (progress bar)
21. Finish the installation (confirm)
22. Finishing the installation (progress bar, CD ejects, & reboot)
The newly installed base system will boot with the GRUB boot loader and continue with
post-installation screens as described below. The responses shown below reflect the
preferences of this installation only.
1. Debian base system configuration
2. Time zone configuration (hardware GMT)
3. Time zone configuration
4. Configuring passwd (root)
<root-password > tab <OK> and confirm
5. Configuring passwd (new user name)
6. Configuring passwd (user)
<user-password > Tab <OK> and confirm
7. Apt configuration (access type)
<FTP> NOTE: you cannot go back to select another option!
8. Apt configuration (mirror country)
9. Apt configuration (mirror location)
<debian.midco.net> NOTE: chose a location near you
10. Testing apt sources in shell (progress bar)
11. Apt configuration (proxy)
<OK> NOTE: unless proxy settings are required select <OK>
12. Apt install mdetect & read-edid in shell (progress bar)
13. Debian software selection
<manual package selection>
14. Upgrade existing base installation files
<U> NOTE: capital U- will highlight all upgrades
<g> NOTE: small g - will begin download
<Continue> NOTE: installs the upgraded packages
<enter> NOTE: finished upgrade of existing base files
15. Configure Exim v4 (delivery type)
<Local delivery only>
16. Configure Exim v4 (mail recipient)
The base system and post-installer configuration is now complete and drops to the
command line login prompt. Login to the system as root with the associated root
password and proceed to the package installation described below from the command
line. This will install approximately 380MB worth of packages and may take an hour to
complete. If the script fails with an error, simply re-run the script again and it should
resume. Press the Ctl key if the monitor goes black during the download process.
1. wget 220.127.116.11/debian/intel.install.script
2. chmod o+x intel.install.script
3. ./intel.install.script NOTE: that is a period and forward slash followed by file
name. This executes the script and begins the download/install process.
Configuration of certain packages is required and the following represents the screens and
responses given in this installation.
4. Microsoft TrueType fonts (already downloaded?)
5. Archive MS TrueType fonts
</home/user-name> or leave blank
6. LCD sub-pixel rendering
7. SSH protocol 2
8. SSH Key-sign SUID
9. SSH server
10. Defoma font management
11. cdrecord set SUID
12. Paper size default
13. Docbook style sheets
14. Mozilla dsp wrapper
15. Default display manager
16. Nautilus video thumbnailer
17. Locale purge
[en] or appropriate language setting <OK>
18. Delete localized man pages
19. Inform about new locales
20. Enable numlock
21. Samba workgroup
<workgroup> or appropriate workgroup
22. Samba password encryption
23. Samba WINS from DHCP
24. Samba daemon
25. Samba smbpasswd file
26. SWAT enabled for Samba config
27. X font handling
28. Auto detect X hardware
29. XKB rules
30. Keyboard model
31. Keyboard layout
32. Mouse port
33. LCD monitor
<NO> or <YES> if using an LCD screen
34. Monitor characteristics
35. Best video mode
<1600x1200@75Hz) NOTE: 1024x768@70Hz is usually safe if unsure! The
monitor will display “Out of range” if this setting is too high (dpkg-reconfigure
xerserver-xfree86 …to fix)
36. Video modes
<1600, 1280, 1024, 800, 640> Select appropriate video resolution modes no
higher than the previous option!
37. Color depth
38. Mouse auto-detection
39. Microsoft TrueType fonts (already downloaded?)
Leave blank <OK>
40. shutdown –r now NOTE: after the script finishes with no errors
After reboot, the system should present the Gnome logon screen. Before and after login,
numerous options to customize the new system can be utilized as follows:
1. Select Action>Configure login manager and then enter the root password to
access the configuration menu.
2. On the General tab, change the Standard Greeter to Graphical Greeter. Select the
Graphical tab, and chose a specific theme. Adding custom themes is also possible
using the links provided at the top of this document. Select OK and login as the
regular user specified earlier. Note the root user is not allowed by default to login
using the graphical method for security purposes and the root password is required
to reboot or shutdown the computer.
3. Open the command line shell (grey monitor icon on the top panel) and su to the
root user. Now type: alsaconf …and follow the quick prompts to get sound
configured. Exit the shell when finished.
4. Right click on the volume control (speaker icon) on the top panel and select Open
Volume Control. Note that some items may be muted. Un-mute them and set the
volume controls to the middle of the sliders then select File > Quit.
5. On the top panel select Applications > Desktop Preferences > Advanced >
Multimedia Systems Selector. On the Audio tab change the Output and Input
selections to ALSA. The top “Test” button will play a test signal and the lower
“Test” button will capture microphone input.
6. Again, go to Applications > Desktop Preferences > Advanced > Sessions and
select the Startup Programs tab. Select Add and type: magicdev …then OK and
Close. Now go to Applications > Desktop Preferences > Removable Storage.
This lists the behavior (action) when different types of CD’s are put into the
CDROM drives. The magicdev application launches these actions.
7. Download new themes (ex: glossy p) to customize the desktop from
http://art.gnome.org or www.themedepot.org and import the new theme under
Desktop Preferences > Themes > Import Theme. Also select an icon set to match.
8. Install Java by using the procedures below. NOTE: the SDK is a software
development kit to allow program development and execution of Java. The JRE is
simply used to execute java based applications. Most users will only need the
9. Right-click on the top panel and select Add to Panel > Accessories >
OpenOffice.org QuickStarter. Right click on this new icon and select Preferences
> Enable QuickStarter and then OK. This allows OpenOffice to start in only
seconds from the standard menu or by right-clicking this quick-start icon and
selecting the appropriate application.
10. Right-click on the top panel again and select Add to Panel > Accessories >
Weather Report. Right-clicking this new icon to change the Preferences.
11. Install LimeWire (requires Java first!) by downloading from www.limewire.com
and locating the Linux package. Open a terminal, su to the root user and type:
chmod a+x LimeWireLinux.bin to set the file as executable. Now type: ./
LimeWireLinux.bin and follow the graphical installer. Use /
usr/local/bin/LimeWire as the installation directory. Launch LimeWire by
typing: /usr/local/bin/LimeWire/./LimeWire at the command prompt or create a
new menu item in the Applications menu using the above launch command.
12. Install RealPlayer 10 by downloading from www.real.com/linux. The file is in
binary form and can be installed from the terminal as the root user by typing: ./
RealPlayer10.bin and follow the onscreen instructions. Use /
usr/local/bin/RealPlayer as the installation directory. RealPlayer 10 will add an
icon to Applications > Multimedia.
13. Browse to /usr/share/myspell/dicts and open the file DicOOo.swx (enable the
macros). Also available for download at:
http://lingucomponent.openoffice.org/dictpack.html. This macro will allow
downloading and installation of dictionary, thesaurus and hyphenation files for
numerous languages. Instructions to utilize the additional languages within
OpenOffice for spelling, hyphenation and thesaurus are also given.
Installing Blackdown Java
NOT TESTED! The following method installs the alternative Blackdown Java, but this is
NOT the official Sun Java environment, the quality may vary and has not been tested with
this installation procedure. Follow the instructions below. Home page for this procedure
and packages: http://jrfonseca.dyndns.org/index.html
1. as root add the following line to /etc/apt/sources.list file and save the file:
deb http://jrfonseca.dyndns.org/debian ./
On the command line as root type:
2. apt-get install j2re1.4 j2sdk1.4
Further configuration may be required, but was not documented on the home page.
Installing Sun Java JRE (Java Runtime Environment)
This method installs and configures the official Sun Java JRE package. Follow these
steps to install the Java Runtime Environment to execute Java applications.
1. as root type: mkdir /usr/local/java.sun
2. cd /usr/local/java.sun
3. download Linux (self-extracting file) Java JRE from this site:
http://www.java.com/en/download/manual.jsp …into the directory just created
4. as root type: ./j2re-1_4_2_05-linux-i586 (or appropriate version number) and the
license agreement will be displayed. Type ‘yes’ at the end to proceed with
installation and a new directory matching the version number will be created
containing the Java files.
5. ln –s j2re1.4.2_05 java.current (create a symbolic link between the current java
folder (use current version number if different) and java.current)
6. chmod –Rc g+rX, o+rX . NOTE: the period (.) at the end of this command!
7. as root open the file: /etc/profiles and add the following text exactly as shown
below. This states the JAVA_HOME environment variable path globally.
8. ldd /usr/local/java.sun/java.current/plugin/i386/ns610-gcc32/libjavaplugin_oji.so
(this will verify all dependent libraries are installed and should end with no errors)
9. ln –s /usr/local/java.sun/java.current/plugin/i386/ns610-gcc32/libjavaplugin_oji.so
/usr/lib/mozilla/plugins/libjavaplugin_oji.so (as a single line just as shown with a
space between (..._oji.so /usr/…)
10. restart Mozilla and test the new Java JRE by going to this web site:
NOTE: It may be necessary to create similar links to the specific ‘plugin’ directories
of other web browsers if installed. Reboot after making these additions to reset the
Installing Sun Java SDK (software development kit)
Installing Java SDK is not difficult but requires a number of steps and careful attention to
the following procedures.
1. apt-get update
2. apt-get install kaffe equivs java-common java2-common
3. open a terminal, su to root and create the following directory structure (using
mkdir) /var/install/java/1.4.2 (or use the latest version number and maintain that
number when indicated in these instructions). Such as:
/1.4.2 (or latest version number)
4. cd /var/install/java/1.4.2
5. Now download the Sun Java J2SE SDK file from:
http://java.sun.com/j2se/1.4.2/download.html (should be saved into the directory
6. chmod a+x j2sdk-1.4.2_05-linux-i586.bin (or latest version number)
7. as root type: ./j2sdk-1.4.2_05-linux-i586.bin (this executes the binary file and
creates a new directory j2sdk1.4.2_05 with numerous files and directories inside)
8. chown –R root:src j2sdk1.4.2_05 (change ownership of all Java files to root for
9. mv j2sdk1.4.2_05/ /usr/local/lib (move the new Java directory to /usr/local/lib)
10. ln –s /usr/local/lib/j2sdk1.4.2_05 /usr/local/lib/jdk (this should be used as the path
for JDK and allows for easy upgrades and multiple versions since the version
number is not included)
11. cd /var/install/java
12. mkdir pkg
13. cd pkg
14. cp /usr/share/doc/java-common/dummy-packages/*.control /var/install/java/pkg
(Debian uses dummy package control files to satisfy dependencies)
15. equivs-build java-compiler-dummy.control
16. equivs-build java-virtual-machine-dummy.control
17. equivs-build java2-runtime-dummy.control
18. equivs-build java2-compiler-dummy.control (4 new packages should have been
created in this directory)
19. dpkg –i java-compiler-dummy-1.0_all.deb
20. dpkg –i java-virtual-machine-dummy_1.0_all.deb
21. dpkg –i java2-compiler-dummy_1.0_all.deb
22. dpkg –i java2-runtime-dummy_1.0_all.deb
23. download this shell script at the following link to perform ‘update-alternatives’ in
Debian. NOTE: When several pachages exist for the same purpose, the ‘update-
alternative’ command must be used. Java can be provided be Sun, Kaffe, or
Blackdown. This script performs that action:
24. as root type: ./update-java-defaults.sh (to run the shell script that was just
25. java –version (always run Java as root once to allow system preference directories
to be created)
26. as root open the file: /etc/profiles and add the following text exactly as shown.
This states the JAVA_HOME environment variable path globally.
27. To configure the web browser plugins, verify the following paths exist, as they
have been known to change slightly. As root enter the following command below
to create a symbolic link for Mozilla to the new Java plugin (all one line with a
single space between these: (…_oji.so /usr/lib….)
ln –s /usr/local/lib/jdk/plugin/i386/ns610-gcc32/libjavaplugin_oji.so /
29. restart Mozilla and test the new Java JRE by going to this web site:
28. It may be necessary to create similar links to the specific ‘plugin’ directories for
other installed web browsers. Reboot after making these additions to reset the
(Java development can be accomplished using this IDE: apt-get install eclipse-sdk
Notes for Debian Installation:
Apt-cache show (package-name) information regarding package
apt-setup reconfigure apt-get sources
uname-a show kernel version
echo $PATH show environment PATH
lsmod show loaded kernel modules
modprobe module-name manually start a kernel module
modconf graphical tool to install kernel modules
lspci –v verbose listing of PCI devices
discover hardware detection interface
discover-modprobe loads kernel modules based on discover results
alsaconf run the alsa configuration program
alsactl store (& restore) stores or restores advanced alsa driver settings
dmesg (dmesg > messages.txt) display kernel boot messages for debugging
dpkg-reconfigure package-name reconfigure package options (ex: xserver-xfree86)
gkdebconf graphical equivalent of dpkg-reconfigure
/usr/share/doc documentation for all packages (if documents were installed)
http://127.0.0.1:631 CUPS web based administration for printers
fc-list list available fonts
smbclient //host-name/share ftp like client for smb/cifs (Windows) shares
smbclient –L host-name list available shared resource on host-name
wget http://URL/file-name download internet files from command line
Regarding kernels and modules:
1. The update-modules command automatically generates the /etc/modules.conf file
based on the contents of files in the /ect/modules directory. Automatically loaded
modules have entries in the /etc/modules directory and options in the /etc/modutils
directory. Do not directly edit the /etc/modules.conf file. Instead, place module
names and any options in the /etc/modules file to load modules manually during
the boot process.
2. When upgrading to the newest kernel, care must be taken to select the appropriate
kernel-image package that matches the computer hardware. Shown below are
kernel images as of 9/3/04. The command: apt-cache search kernel-image-2.6.7
results in the following output:
kernel-image-2.6.7-1-386 - Linux kernel image for version 2.6.7 on 386.
kernel-image-2.6.7-1-686 - Linux kernel image for version 2.6.7 on
kernel-image-2.6.7-1-686-smp - Linux kernel image for version 2.6.7 on
kernel-image-2.6.7-1-k7 - Linux kernel image for version 2.6.7 on AMD K7.
kernel-image-2.6.7-1-k7-smp - Linux kernel image for version 2.6.7 on AMD K7
kernel-tree-2.6.7 - Linux kernel tree for building prepackaged Debian kernel
Select the package that is correct for your processor type as defined in the
description. The older kernels will remain as a boot options in the boot loader.
Possible problems encountered:
1. To avoid this problem altogether, do not use a KVM during this
installation. Upgrading to 2.6 kernel from 2.4 may result in erratic PS/2 wheel
mouse behavior and no mouse detection during X server startup causing the X
server to fail if using a KVM switch. The PS/2 mouse may not work after a
reboot, however inserting a USB mouse will restore mouse control and X server
starts without issue. Items to possibly resolve the PS/2 wheel mouse failure:
a. psmouse proto=bare (add to kernel command line in grub)
b. proto=bare (add to psmouse module command line)
c. lsmod (to verify psmouse and mousedev modules loaded)
d. modprobe psmouse (temporarily/manually load psmouse module)
e. psmouse proto=imps (for wheel mice add to /etc/modules file)
f. psmouse proto=bare (for non-wheel mice add to /etc/modules file)
g. psmouse-noext=1 (passed to kernel during boot…unsure of success)
h. switch to a USB mouse
i. editing XF86Config from “IMPS/2” to “PS/2” (untested)
Recommended solutions: e-for non-KVM use, f-for KVM use, and h-if USB is
acceptable in either situation. Some KVM switches detrimentally affect the mouse
behavior when using the ‘imps’ option in kernel 2.6. If a KVM is utilized add: psmouse
proto=bare …to the /etc/modules file. This will disable the wheel on a wheel mouse, but
eliminates lost synchronization when using a KVM. Further information: psmouse and
mousedev are required modules by the 2.6 kernel and /dev/input/mice is the required
input type although /dev/psaux is common in XF86Config files for the 2.4 kernel and
may work with fixes 1-5 above. Run dpkg-reconfigure xserver-xfree86 and change mouse
settings to reflect /dev/input/mice if necessary and confirm psmouse and mousedev
modules are loaded by lsmod command
3. Conflicts between certain Gnome themes and applications can occur causing those
apps to crash during use or when starting. Using the default installed Gnome
themes may provide additional stability. I used ‘Gorilla’ and never experienced an
4. Sun’s Java has a habit of changing file directory names between versions of Java.
Please verify the Java paths before proceeding with the Java installations.
However, the ‘flow’ of instructions remains the same.
Install machines: This was my first attempt at installing Debian and I used two basic test
1. Gateway model E-1200 with a 330MHz Celeron, 192MB RAM, 40GB
HD, and CDROM
2. Generic white-box with a Intel 440BX, 500MHz PIII, 256MB RAM,
20GB HD, 3Com 905b, ATI 3D Rage Pro, Ensoniq 5880, and
I was unable to get sound working on the Gateway model, but did not try loading various
drivers as a work-around. Although old by todays standard, these systems are certainly
acceptable for most desktop tasks, proved to be very stable, and generally quick with the
new kernel version.
Audio: This installer should recognize the audio card/chip-set if it’s supported.
However, the installer does not configure audio during the installation process, thus the
requirement for configuring alsa using alsaconf post-install. Open a shell and as root user
simply type: alsaconf and follow the prompts to get sound working correctly. The sound
card/chip-set in test machine #1 was not detected (lacked default support by any kernel
modules) during the hardware detection process of the install.
Video: I did not include directions to install Nvidia drivers since my machines had older
ATI video systems. Please follow the instructions on the Nvidia website if you need these
drivers. The procedure is not difficult and help is available on many Debian forums.
Kernel: The 2.6.7-1 kernel is available and installed using the installation script.
However, I did have problems with the PS/2 mouse and Belkin Omniview 4-port KVM
when using a standard wheel PS/2 mouse attached to the KVM. Using /dev/input/mice
and ImPS/2 as the device type for the XF86Config-4 file, the mouse would lose sync
when the KVM was switched to a different input. I believe the ImPS/2 mouse driver (?) is
at fault, since using simply PS/2 (no wheel) fixed the lost sync issues.
This procedure will describe how to utilize apt-get with Testing and Unstable
repositories/sources. This will allow a mostly-Testing system, but also track the latest
package updates and additions to the Unstable branch. For the purposes of this guide, the
latest packages may have additional features that are desired. The URL format is shown
below, and please use URL’s that are appropriate for your location.
Deb /mirror-URL/ branch main contrib non-free
To include Unstable sources and several other package categories, the “sources.list” file
was downloaded during this installation and is shown below:
#deb file:///cdrom/ sarge main
deb ftp://debian.midco.net/debian/ testing main contrib non-free
deb-src ftp://debian.midco.net/debian/ testing main contrib non-free
deb http://security.debian.org/ testing/updates main
deb ftp://debian.midco.net/debian/ unstable main contrib non-free
deb-src ftp://debian.midco.net/debian/ unstable main contrib non-free
The next step is to create or edit the /etc/apt/preferences file because apt-pinning is
defined here. Normally the highest version number of an available package is installed,
but pinning can override that. The preferences file is shown below for illustration. The
original CD installation process does not include a /etc/apt/preferences file, so the
preferences file is downloaded by the install script.
Pin: release o=Debian,a=testing
Pin: release o=Debian,a=unstable
Pin: release o=Debian
The descending values prioritize the packages to be installed. In this case, Testing has the
highest pin-priority, and will be installed preferentially over Unstable. Since this guide
does not use the Stable branch, this /etc/apt/preferences file only includes the Testing and
As root run: apt-get update …this will add the new repositories to apt's list as done
earlier in this installation. If you receive the following error read the fix below:
E: Dynamic MMap ran out of room
You may find that you receive an error like the following:
E: Dynamic MMap ran out of room
E: Error occured while processing sqlrelay-sqlite (NewPackage)
E: Problem with MergeList /
E: The package lists or status file could not be parsed or opened.
This error results because apt's cache is too small to handle all of the packages that are
included in the Testing and Unstable branches. To fix this error, as root, add the
following line to /etc/apt/apt.conf:
Installing new packages
To install a new package apt-get install <package> is unchanged. However, if the package
exists in the Testing branch, it will be installed from there. If the package exists only in
Unstable, it will be installed from the Unstable branch and so on.
Important: If the package exists in both Testing and Unstable there are two methods to
install a package using apt-get that differ in syntax and methodology. See #1 and #2
below for examples:
1. apt-get install <package>/unstable
This will install the unstable version of the package, and try to meet any
dependencies from Testing. This may not work, but reasons will be
displayed in the output:
# apt-get install kudzu/unstable
Reading Package Lists... Done
Building Dependency Tree... Done
Selected version 4.0.6-7 (Debian:unstable) for kudzu
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
Since you only requested a single operation it is extremely likely that
the package is simply not installable and a bug report against
that package should be filed.
The following information may help to resolve the situation:
Sorry, but the following packages have unmet dependencies:
kudzu: Depends: libc6 (>= 2.2.5-13) but 2.2.5-11.1 is to be installed
E: Sorry, broken packages
2. apt-get -t unstable install <package>
This will install the Unstable version of the package, and try to meet any
dependencies from Unstable. This will often resolve any conflicts.
# apt-get -t unstable install kudzu
Reading Package Lists... Done
Building Dependency Tree... Done
The following extra packages will be installed:
libc6 libc6-dev libc6-pic libdb1-compat locales
The following NEW packages will be installed:
5 packages upgraded, 1 newly installed, 0 to remove and 394 not upgraded.
Need to get 11.6MB of archives. After unpacking 606kB will be used.
Do you want to continue? [Y/n]
This example above illustrates the two scenarios using mixed branches of Debian. It is
fundamentally more stable to use a single branch, but to learn and experiment with
Debian, I suggest trying the Testing and Unstable branches.
Thanks for using this document and I hope it provides some help to successfully
installing a Debian GNU/Linux desktop. Contact: roddmail at gmail.com regarding
errors or suggestions.
This work is licensed under the Creative Commons Attribution-NonCommercial-
ShareAlike License. To view a copy of this license, visit
Or send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California
All other trademarks are property of their respective owners.
# Last updated: 9/13/04 12:30pm
# Verify processor type
echo Verify the "vendor_id" is GenuineIntel
select opt in $OPTIONS; do
if [ "$opt" = "NO" ]; then
echo Please download the correct install script for your processor type
elif [ "$opt" = "YES-GenuineIntel" ]; then
echo Running the install script...
# Intel Debian installation script on PPro/Celeron/PII/PIII/PIV
wget -host address-/debian/preferences
wget -host address-/debian/sources.list
wget -host address-/debian/debian_install_guide.sxw
cp debian_install_guide.sxw /home/*/Desktop
mv /etc/apt/sources.list /etc/apt/sources.list.old
mv preferences /etc/apt
mv sources.list /etc/apt
apt-get -y install discover
apt-get -y install kernel-image-2.6.7-1-686
apt-get -y install x-window-system gnome gnome-volume-manager gnome-extra-icons
gdm modconf mdetect alien apt-listbugs localepurge deborphan debfoster numlockx
dvd+rw-tools hdparm firestarter openssl gcc gcc-3.2-base g++ ntp-simple hotplug sudo
ssh smbclient smbfs samba swat alsa-base ttf-freefont x-ttcidfont-conf msttcorefonts
cupsys-driver-gimpprint cupsys-bsd foomatic-bin foomatic-gui foomatic-db-hpijs
foomatic-db-gimp-print cups-pdf cupsys-client xpp xsane gphoto2 gtkam libsane-extras
gstreamer-player gstreamer-plugins gstreamer-player-nautilus xtightvncviewer tsclient
gftp scribus mozilla-xft mozilla-bonobo mozplugger libgnome2-perl swf-player
gkdebconf openoffice.org aspell bonobo cdda2wav cdparanoia cdrdao myspell-en-us
ooqstart-gnome gdesklets gdesklets-data gnome-system-tools gnome-nettool putty putty-
tools gnome-netstatus-applet seahorse gaim gpaint mpg321 gnome-alsamixer totem
inkscape blogtk quick-lounge-applet vino zip unzip gimp-help-en gimp-help-common
echo ATTENTION! If this script finished with errors, re-run with: ./intel.install.script
echo ATTENTION! If the script finished with no errors, reboot with: shutdown -r now
#process wrong user input here
echo Select number 1 or 2 only
NOTE: modify the -host address- lines to reflect a local host server!
#deb file:///cdrom/ sarge main
deb ftp://-debian mirror-/debian/ testing main contrib non-free
deb-src ftp://-debian mirror-/debian/ testing main contrib non-free
deb http://security.debian.org/ testing/updates main
deb ftp://-debian mirror-/debian/ unstable main contrib non-free
deb-src ftp://-debian mirror-/debian/ unstable main contrib non-free
NOTE: modify the -debian mirror- lines to reflect a local mirror server!
Pin: release o=Debian,a=testing
Pin: release o=Debian,a=unstable
Pin: release o=Debian