This is a guide for myself with all the steps that I have to follow in order to install and configure Debian 12 in my old but reliable PC.
Pre-requisites
First of all, to make sure everything works, update and upgrade packages, and install
vim
to edit files:
sudo apt update
sudo apt upgrade
Basic packages:
sudo apt install vim
sudo apt install lua5.4 luarocks
sudo apt install make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev curl wget git libncursesw5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev
KDE Plasma and Wayland
Then, install my favorite desktop environment, KDE:
sudo apt install plasma-workspace-wayland
sudo apt install kde-full
Enable backports
To be able to have 120Hz in my monitor, I need to
sudo vim /etc/apt/sources.list.d/debian-backports.sources
Enable backports repositories, the file should look like:
Types: deb deb-src
URIs: http://deb.debian.org/debian
Suites: stable-backports
Components: main
Enabled: yes
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg
Update the sources:
sudo apt update
sudo apt upgrade
Install kernel and mesa from backports
With the backports activated, then I have to install the Linux kernel and the mesa drivers:
sudo apt install -t bookworm-backports linux-image-amd64
sudo apt install -t bookworm-backports mesa-utils
sudo apt install firmware-amd-graphics
Install NTP for date and time
By default, the time and date are not updated using Internet. To be able to do that,
I have to install ntp
:
sudo apt install ntp
sudo systemctl status ntp
RAID
In my PC I have a set of hard disk configured as a RAID 5, using the capabilities of my motherboard.
To mount it, first I have to create mount point:
sudo mkdir -p /mnt/storage/
sudo chown marcos:marcos /mnt/storage/
Check disks:
sudo apt install fdisk
sudo fdisk -l
The RAID volume is:
...
Disco /dev/md126: 18,19 TiB, 20003922378752 bytes, 39070160896 sectores
Unidades: sectores de 1 * 512 = 512 bytes
Tamaño de sector (lógico/físico): 512 bytes / 4096 bytes
Tamaño de E/S (mínimo/óptimo): 65536 bytes / 327680 bytes
Tipo de etiqueta de disco: gpt
Identificador del disco: 5A97A530-5A8B-499C-9B06-4A9F380B63F4
...
Install the NTFS driver:
sudo apt install ntfs-3g
sudo vim /etc/fstab
Append to fstab:
# Mount RAID
/dev/md126p2 /mnt/storage ntfs-3g defaults,uid=1000,gid=1001,umask=002,windows_names,locale=en_US.UTF-8 0 2
Flatpack
Some applications are more useful installed from Flatpack, like Telegram.
sudo apt install flatpak
sudo apt install plasma-discover-backend-flatpak
flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
Development environments
Node and Pyright
Used by NeoVIM to be able to use pyright
as LSP.
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/i
nstall.sh | bash
Add the following to the bash/zsh init script:
# nvm for node versions
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
Install the latest version of Node LTS:
nvm use --lts
nvm install 22
Install pyright:
npm i -g pyright
pipx
Install pipx
from backports:
sudo apt install -t bookworm-backports pipx
Enable SSH server
sudo apt install openssh-server mosh
Mosh is used to improve the connectivity from mobile clients (like Blink). Remember to
open the ports 60000:61000/udp
for mosh
compatibility.