Introduction A default installation of Debian is fully functional and easy to use, but configuring the system afterwards requires a little knowledge, which is why Debian is usually referred to as an “intermediate distribution.” Fortunately, the Debian web site has copious documentation for users to consult. Answers can be found there for almost all questions one might have. The two sources of information a new user should develop a habit of consulting are the Reference Manual and the wiki. The documentation is there to be used and is very helpful. Using it will make your life much easier. Wireless and Video Drivers An important aspect of Debian that new users need to understand is the political philosophy. Debian is dedicated to the cause of free software. The Debian Social Contract is essential reading for prospective users. Software that has any kind of restrictive licence is not included in the official release. This policy is the cause of the most frequent difficulty encountered by new users: wireless internet and video drivers. Most wireless hardware requires proprietary firmware and some computers require proprietary video drivers. Because this software has restrictive licences, it will not be included in your installation ISO. All is not lost though. There is an unofficial “non-free” package repository that includes this evil software. Wireless The hard way If a wireless connection during installation is essential, the firmware for the device can be downloaded. Follow the links in the Installation Manual to find the firmware you need. Installation will require using the installation disc and a USB device. The easy way If a wireless connection is not essential, the easiest procedure is to first install the system. If an internet connection is needed during installation, use a wired connection. After the system is installed, add the non-free repository to your sources.list*, update and upgrade, then install the firmware. (* If you do not know what that is, information follows later in the guide.) Video Drivers Like wireless, the needed driver can be downloaded before installation and placed on a USB device to be used during installation. In my opinion, the easiest procedure is to install the system without a GUI. During installation, at the point where you are asked which options to install (server, desktop, etc,) remove the * in front of “Desktop Environment.” When you boot into your new system it will not have a GUI. It will boot into a command line interface (CLI, terminal). Add the non-free repository, update and upgrade, install the video driver, then install your desired GUI. Live Disc Another option is a live disc that includes non-free firmware and drivers. It can be found by navigating the links on the Debian web site. It should make installing the system a single easy procedure. However, it is not a recommended way to install the system, because it is an unofficial product with the default configuration tailored for live use. Some of those settings are not the best for a system installed onto the hard-drive. Package Sources 1 - Branches Behind setting up wireless, the most frequent difficulty encountered by new users is the sources.list. Many people neglect to read the documentation on the Debian web site before installing the system. While navigating the site, before reaching the point where the ISOs are downloaded, for some reason many people neglect to read about what is available. The information on the site clearly states that there are three “branches”: Stable, Testing and Unstable; and what their purposes are. Simply put, Stable is the current Debian release. If you are unfamiliar with Debian use Stable. Testing and Unstable are parts of the development process. Their purpose is to introduce new packages, and identify and fix bugs. People who use Testing and Unstable are helping to develop the next release (Stable). It is assumed that people using those branches know what they are doing, especially Unstable. If you are new to Debian, use Stable. If you desire to use Testing or Unstable, use Stable until you are familiar with system, then upgrade. Few thing annoy Debian users more than, “I have never used Debian. I just installed Testing (or Unstable) a few days (or weeks) ago, but 'this whatever' is not working. How do I fix it?” 2 – Repositories a. Branches Each branch has its own repository of packages. DO NOT MIX PACKAGES FROM TESTING OR UNSTABLE WITH STABLE! Most new users who experience trouble with their system cause the trouble by installing a Stable system and then adding packages from the Testing and/or Unstable repositories. Some even add packages from the repositories of other operating systems, usually Ubuntu and Mint. Stable does not change. Other than security updates, the current Debian release will never change. As already explained, Testing and Unstable are the development branches. That is where new packages are added. As Stable gets older, the difference between it and Testing/Unstable increases. Adding packages from Testing or Unstable will break the system. It is a question of when, not a question of if. Likewise, do not add packages from the repositories of other operating systems. Many Linux newbies believe Linux is Linux, so a package from one distribution will work on every other distribution. Wrong. Each distribution modifies packages to integrate them into that system. With only a few exceptions, adding packages from non-Debian repositories will break the system. Again, other than a few exceptions, it is a question of when, not if. Non-Debian packages can be added to the system by compiling from source, but that is an advanced procedure. Fortunately, with 40,000 packages in Debian's repositories, the need for third-party packages is rare. b. – sources.list We began with installing non-free software for wireless and video drivers. The instructions included adding the non-free repository to the sources.list. The best way to familiarise yourself with this important part of the system is to read the relevant section of the wiki. The basics: it is a file in the /etc/apt directory that tells APT where to look for packages. The easiest way to edit this file is to log in as root using su. Entering the command Code: # nano /etc/apt/sources.list will open the file with the nano text editor. Follow the instructions in the wiki to add the non-free repository. Then Code: # apt-get update && apt-get upgrade You are now ready to download the required firmware or driver. Log out of the root account with Code: # exit One thing many newbies do not do is disable the sources.list entry for the installation disc. If not done, APT will want to install packages from the disc. If the disc is not in the tray, APT will complain that it cannot find the packages. If you plan to download packages from the internet repositories, the first thing that you should do is put a # in front of the two CD or DVD entries. APT will then ignore those entries and search the other repositories in your sources.list. General Tips How many discs? A common question is, “How many discs do I need to install Debian?” The answer is one. CD1, KDE-CD1, LXDE-CD1, XFCE-CD1, DVD1, netinstall. Any ONE of those discs will install the system. GUI Unlike many distributions, Debian is not GUI-specific. It is not tailored to run best with a certain GUI. As such, there is no Debian Gnome, Debian KDE, etc. There is only one Debian, and any GUI can be easily installed and used. The choice is yours. Terminal Because different GUIs have different features, learning how to do basic things with a terminal is of great help. Two tools one should become familiar with are APT and dpkg. APT has many features. Among them are: 1 - Updating the system. As root use either: Code: # apt-get update followed by Code: # apt-get upgrade or Code: # aptitude update followed by Code: # aptitude upgrade If you are more comfortable doing things with a single action, use Code: # apt-get update && apt-get upgrade or Code: # aptitude update && aptitude upgrade 2- Add and remove packages. As root, use either Code: # apt-get install <package name> # apt-get remove <package name> or Code: aptitude install <package name> aptitude remove <package name> 3 – apt-cache is useful for searching for package information. Tow examples: Code: $ apt-cache show <package name> and Code: $ apt-cache policy <package name> apt-cache is not run as root, but by the regular user. I leave it to you to read more and experiment. The details of the package management system are in the Debian wiki. dpkg is another very useful command line tool. Among its many uses are changing locales and time setting. The wiki and Code: $ man dpkg can both provide the details.