How to install non-free packages on Debian

Last updated on July 1, 2020 by Dan Nanni

Question: I need to install some proprietary device driver on Debian, which is part of a non-free package. However, I cannot find and install the package in my Debian box. How can I install non-free packages on Debian?

The Debian project is distributed as a collection of packages, 90,000 of them, as of Debian 10 "buster" release. These packages are categorized into three areas: main, contrib and non-free, mainly based on licensing requirements, e.g., Debian Free Software Guidelines (DFSG).

The main area contains free software that complies with DFSG. The contrib area contains free software that complies with DFSG, but relies on non-free software for compilation or execution. Finally, the non-free area contains non-free packages that are not compliant with DFSG but redistributable. The main repository is considered a part of Debian, but neither contrib or non-free repository is. The latter two are maintained and provided only as a convenience to users.

Enable Contrib and Non-free Repositories on Debian

If you want to install any non-free package maintained by Debian, you need to enable contrib and non-free repositories. To do so, open /etc/apt/sources.list with a text editor, and append "contrib non-free" to each source.

The following is an example of /etc/apt/sources.list for Debian 10 "buster" Release.

deb http://deb.debian.org/debian/ buster main contrib non-free
deb-src http://deb.debian.org/debian/ buster main contrib non-free

deb http://security.debian.org/debian-security buster/updates main contrib non-free
deb-src http://security.debian.org/debian-security buster/updates main contrib non-free

# buster-updates, previously known as 'volatile'
deb http://deb.debian.org/debian buster-updates main contrib non-free
deb-src http://deb.debian.org/debian buster-updates main contrib non-free

After modifying sources of packages, run the following command to download package index files for contrib and non-free repositories.

$ sudo apt update

If you are using aptitude, run the following instead.

$ sudo aptitude update

Now you are ready to search and install any non-free package on Debian.

$ apt search nonfree

Support Xmodulo

This website is made possible by minimal ads and your gracious donation via PayPal (Credit Card) or Bitcoin (1M161JGAkz3oaHNvTiPFjNYkeABox8rb4g).

Please note that this article is published by Xmodulo.com under a Creative Commons Attribution-ShareAlike 3.0 Unported License. If you would like to use the whole or any part of this article, you need to cite this web page at Xmodulo.com as the original source.

Xmodulo © 2021 ‒ AboutWrite for UsFeed ‒ Powered by DigitalOcean