Debian
Releases
Debian major version | codename | Release date |
---|---|---|
6.0 | Squeeze | 2011 |
7.0 | Wheezy | 2013 |
8.0 | Jessie | 2015 |
9.0 | Stretch | 2017 |
10.0 | Buster | 2019 |
11 | Bullseye | Not yet |
Sid - The unstable distribution
The code name for Debian's development distribution is sid, aliased to unstable. Most of the development work that is done in Debian, is uploaded to this distribution. This distribution will never get released; instead, packages from it will propagate into testing and then into a real release.
Please note that security updates for unstable distribution are not managed by the security team. Hence, unstable does not get security updates in a timely manner. For more information please see the Security Team's FAQ.
sid is subject to massive changes and in-place library updates. This can result in a very unstable system which contains packages that cannot be installed due to missing libraries, dependencies that cannot be fulfilled etc. Use it at your own risk! source
Apt
Package manager
Available package(s)
apt update
apt-cache search sendmail
apt-cache search --names-only 'icedtea?'
Installed package version
apt show gitlab-ee | grep -i version
Available versions
Show availables versions for a given package.
apt-cache madison curl
apt-cache madison gitlab-ee | grep 13.3.5-ee.0
gitlab-ee | 13.3.5-ee.0 | https://packages.gitlab.com/gitlab/gitlab-ee/debian buster/main amd64 Packages
Dependencies
Show dependencies for a given package
apt depends sendmail
Clean cache
Clean cache space in /var/cache/apt/archives/
apt-get clean
Pin version
cat /etc/apt/preferences.d/pin-gitlab-ee.pref
Explanation: Prefer GitLab provided packages over the Debian native ones
Package: gitlab-ee
Pin: version 13.3.5-ee.0
Pin-Priority: 1001
GPG
Packages vendors provide some https endpoints to get package content. The ones acquired by apt install gitlab-ee
.
Example for gitlab-ee
the given official URL by gitlab is https://packages.gitlab.com/gitlab/gitlab-ee/debian/
.
That's what we see in the apt source list config
cat /etc/apt/sources.list.d/gitlab_gitlab-ee.list
# this file was generated by packages.gitlab.com for
# the repository at https://packages.gitlab.com/gitlab/gitlab-ee
deb https://packages.gitlab.com/gitlab/gitlab-ee/debian/ jessie main
deb-src https://packages.gitlab.com/gitlab/gitlab-ee/debian/ jessie main
But, to prove the ownership of their package, vendors sign them with GPG key
.
For example gitlab enterprise edition GPG public key
can be acquired here : https://packages.gitlab.com/gitlab/gitlab-ee/gpgkey
That's why before beeing able to install them, you have to add vendor key into apt key store
.
Example : Add gitlab-ee to apt key store
curl -L https://packages.gitlab.com/gitlab/gitlab-ee/gpgkey | sudo apt-key add -
Example : Add yarn to apt key store
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
The vendor GPG public key is always easy to find on the vendor website under install
or gpg
section :)
Update-alternatives
Default system software (Debian)
update-alternatives - maintain symbolic links determining default commands
List existing selections and list the one you wanna see
update-alternatives --get-selections
update-alternatives --list x-www-browser
Modify existing selection interactively
sudo update-alternatives --config x-terminal-emulator
Create a new selection
update-alternatives --install /usr/bin/x-window-manager x-window-manager /usr/bin/i3 20
Change default terminal or browser will prompt you an interactive console to chose among recognized software
sudo update-alternatives --config x-terminal-emulator
sudo update-alternatives --config x-www-browser