Subhadip's Blog

My experience with the computing world!

Installing Debian Testing

After my previous post about why I chose Debian Testing as my current distribution, I wanted to share how I installed and configured Debian Testing. So that somebody out there looking for a guide to install their own Debian rolling system, will have at least a starting point.

Before I proceed with the post, please know that although I am a long time Linux user, with Debian, I just started my journey a couple of months back. And by no mean I am a seasoned Debian user. So whatever steps I am going to list in this post are the ones that I thought would be best suited for my requirement when I installed it on my system.

  1. Get the image: The Debian Free Software Guidelines (DFSG) does not allow to ship non-free software with the default cd-image. That means, if you are planning to install it on a Laptop and if your laptop has a wifi which is the case in most of the times, chances are that wifi will not work out of the box (OOTB) after your installation. Because the default cd image does not come with any non-free firmware and you need to install it separately after completing the default installation. Which may not be a great choice if wifi is the only way you can access the internet. But there is a better way. Debian also publishes separate cd images with the non-free firmware components. So if you also need wifi support OOTB, choose one of the latest stable release iso-dvd installers(current) from the location:
  2. Install the image: I am going to assume that you picked the non-free image and will skip the driver installation part after the installation. But the installation procedure is same irrespective of if you're using free or non-free image. I wrote the cd-image on a USB stick. The steps are fairly simple. Just follow the documentation. The installer is pretty standard and I am not going to explain the step by step installation procedure. You will be required to choose your desktop environment of choice during the installation procedure, the default is Gnome. Also I kept the root password blank because I wanted the root account to be disabled. I prefer to use sudo whenever root privilege is required. After you are done with the installation, restart your computer.
  3. Enabling USB keyboard: This step may not be required for you. I use a USB keyboard with my laptop as I am not very fond of my laptop keyboard. In Ubuntu, I didn't have to do anything special in order to have my keyboard detected but in Debian, you need to have certain kernel modules enabled to be able to use it. Follow the first option on this page and change the driver-policy to include most modules.
  4. Updating the apt sources: This is one of the most important steps after installation. After installation you will have something like below in your /etc/apt/sources.list:
deb stretch main non-free contrib
deb-src stretch main non-free contrib
deb stretch/updates main contrib non-free
deb-src stretch/updates main contrib non-free

deb stretch-updates main contrib non-free
deb-src stretch-updates main contrib non-free

Edit the file with root privilege and replace the word stretch with testing. Update and dist-upgrade your system.

sudo apt update && sudo apt dist-upgrade

After you reboot, you will have your system updated to the current testing branch of Debian. In my case, it was Buster.

  1. Enable tapping on touchpad: Although the touchpad on my Laptop was automatically detected, clicking by tapping was not enabled by default. Follow this link to add this configuration to /etc/X11/xorg.conf.d/40-libinput.conf and then restart lightdm to enable tapping on touchpad. If you are not using a laptop, then this step is not required.
  2. Installing latest Firefox: The current Debian testing version ie Buster repository does not contain the latest version of Firefox ie Firefox Quantum. It has the Firefox ESR which is the long term support version of Firefox and lags behind the current release. If your primary browser of choice is Chrome or Chromium, you can go ahead and install it very easily. The repo does contain the latest version of Chromium. The latest Firefox is available in the Debian unstable repository ie Sid. To install Firefox from the unstable repo, perform the below 2 steps:
Package: *
Pin: release a=testing
Pin-Priority: 900

Package: *
Pin: release o=Debian
Pin-Priority: -10
deb unstable main non-free contrib
deb-src unstable main non-free contrib

Then install Firefox.

sudo apt install firefox/unstable
  1. Install a couple of additional packages: These packages will warn you if there is any serious bug or important change in any of the packages you install or upgrade.
sudo apt install apt-listbugs apt-listchanges

That's it. You should now have a fully functional Debian testing system. Be sure to go through the links in the References section before you actually make the switch. If you have any question/suggestion, do let me know in the comments.