The commands and procedure discussed in this article have been tested in a Debian 10 Buster system.
Understanding the sources.list File
The /etc/apt/sources.list file looks like this:
This file contains the list of default sources for installing software on your system. In the /etc/apt/sources.list file above, you will see some lines starting with the “#” symbol. These are comments used to disable the repository or to add an explanation about the source. All the lines in this file are listed in a particular format.
Next, you will learn more about the content of the /etc/apt/sources.list file.
The /etc/apt/sources.list file contains the sources in the following format:
Type
The first term in the above format represents the type of the archive. The term “deb” indicates that it is the repository of binaries, which are pre-compiled files. The term “deb-src” indicates that it is the repository of packages in source file format, which requires compilation in order to use it in the system.
Repository URL
The next term in the above format represents the repository URL (HTTP, HTTPS, or FTP). This term represents the location of the repository from which you want to download the packages.
Distribution
The next term in the above format is either the short codename (i.e., Sid, Buster, Wheezy, Lenny, Jessie, etc.) of the release, or the development phase of the Debian release (stable, testing, and unstable).
Component
The final term in the above format represents the categories of the Debian package. The available categories of the Debian distribution are main, contrib, and non-free.
Main
This category contains packages that are released under a free license (BSD, GPL, etc.) and that meet the DFSG (Debian Free Software Guidelines). These packages also contain the source code within them, which can be modified and redistributed.
Contrib
This category contains the packages that meet the DFSG (Debian Free Software Guidelines. The packages in the Contrib category are open-source packages, but depend on non-free packages to work.
Non-free
This category contains the packages that do not meet the DFSG (Debian Free Software Guidelines). These packages have some strict license conditions that restrict the usage and redistribution of the software.
Adding a Repository Using the sources.list File
You can add a repository in Debian using the /etc/apt/sources.list file. Here, we will add the VirtualBox repository to the sources.list file.
To add a custom repository to the /etc/apt/sources.list file, follow the steps below:
1. Open the /etc/apt/sources.list file in any editor:
2. Add the VirtualBox repository in the file:
3. Save and close the file.
4. After adding the repository in the /etc/apt/sources.list file, run the “apt update” command to make the system aware of the added repository.
Now that the VirtualBox repository has been added, you can proceed with the installation procedure.
An alternative way to add repository in the Debian sources is by adding the repository in a separate file under the /etc/apt/sources.list.d/ directory. Follow the steps below to do so:
1. Create a file in the /etc/apt/sources/list.d/ directory with the .list suffix.
2. Add the VirtualBox repository in the file:
3. Save and close the file.
4. After adding the repository in a separate file under the /etc/apt/sources.list.d directory, run the “apt update” command to make the system aware of the added repository.
Now that the VirtualBox repository has been added, you can proceed with the installation procedure.
That is all there is to it! I hope you now have a clear understanding of what the sources.list file is and what each of the terms in the file means.