Debian desktop
Table of Contents
1. Description
Notes about Debian on desktop
2. Download
- Download the
netinstimage: https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/ - Verify the download: notes:verify-iso-files
3. Automatic configuration
4. The contrib and non-free archive areas
- https://www.debian.org/doc/debian-policy/ch-archive
- https://www.debian.org/doc/debian-policy/ch-archive.html#the-contrib-archive-area
- https://www.debian.org/doc/debian-policy/ch-archive.html#the-non-free-archive-area
- https://www.debian.org/doc/manuals/debian-reference/ch02#_debian_archive_basics
- notes:debian#New format for configuring APT sources
The apt-file command (from the package of the same name) can be used
to find firmware packages, see notes:apt-file.
5. Network
- https://www.debian.org/doc/manuals/debian-reference/ch05.en.html
- https://debian-handbook.info/browse/stable/sect.network-config.html
nmtui is a program to configure the network (found in the
network-manager package).
5.1. Unmanaged devices and /etc/network/interfaces
Network devices which are configured in
/etc/network/interfaceswill typically be managed by ifupdown. NetworkManager respects such a configuration and will ignore those devices and mark them as “unmanaged”.If you want to have a network interface managed by NetworkManager it is thus recommended to manually remove any configuration for that interface from
/etc/network/interfaces. You need to restart NetworkManager afterwards viasystemctl restart NetworkManager.
Debian and Ubuntu modified
NetworkManagerso that it would not manage any devices listed in/etc/network/interfaces. If you open this file and comment out the lines for the interfaces you want to manage and reboot;NetworkManagerwill see them. Do not comment out lo
6. Installing packages
sudo apt install $(cat ~/.dotfiles/.pkg-debian)
7. Firewall
See notes:ufw
8. Flatpak
Install the flatpak package and enable Flathub per-user installation
of flatpaks.
flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
9. Virtualization
10. AMDGPU drivers
Nothing to do, since packages are already installed as dependencies of
packages like steam-installer (see note in Install Steam section),
mpv, vlc, xwayland and any desktop environment etc.
Since Debian 12 (bullseye) the installer handle installing non-free firmware package like firmware-amd-graphics if needed (see archive section).
11. Nvidia proprietary drivers
11.1. Requirements
Install the kernel headers for the NVIDIA driver to build with.
sudo apt install linux-headers-amd64
11.2. Install the drivers
Make sure Debian is configured with the contrib and non-free
archive areas (see archive section) to install the nvidia-driver and
firmware packages.
sudo apt install firmware-misc-nonfree nvidia-driver
11.3. 32-bit Nvidia libraries
- https://debian-handbook.info/browse/en-US/stable/sect.manipulating-packages-with-dpkg.html#sect.multi-arch
- https://wiki.debian.org/Multiarch/HOWTO
Enable 32-bit Multi-Arch support required for some games and Steam.
sudo dpkg --add-architecture i386
Update the list of available packages.
sudo apt update
Install the 32-bit version of the NVIDIA libraries package.
sudo apt install nvidia-driver-libs:i386
12. Steam
12.1. Requirements
Make sure Debian is configured with the contrib and non-free
archive areas (see archive section).
12.2. Install Steam
- https://debian-handbook.info/browse/en-US/stable/sect.manipulating-packages-with-dpkg.html#sect.multi-arch
- https://wiki.debian.org/Multiarch/HOWTO
Enable 32-bit Multi-Arch support required for Steam.
sudo dpkg --add-architecture i386
Update the list of available packages.
sudo apt update
Install the steam-installer package.
sudo apt install steam-installer
We only need to install the steam-installer package because it
depends on both steam-libs:amd64 and steam-libs:i386 which depends
on Vulkan libraries [1]. See notes:apt-cache on how to check that.
12.3. User permissions
You must be sure that the regular user that will run Steam games is at least at groups
videoandaudio.
Add user to groups (see notes:usermod).
sudo usermod -aG audio,video alan
13. Booting into single-user mode
Append single on the linux line in Grub.
Shutdown the system under the single-user mode with poweroff -i -f.
13.1. When root password is locked
Press e in Grub to edit the cmdline then on the linux line append
init=/bin/sh -c '/sbin/sulogin --force'.
If the root account is locked and
--forceis specified, no password is required. [..] Only use the-e(--force) option if you are sure the console is physically protected against unauthorized access.