How-To Ultimate Gaming Linux Desktop On Debian 2026
This is my guide for creating the Ultimate Linux Desktop with Debian, and
for general desktop usage, and gaming in particular, and goes through
the entire process, of actually creating a rock-solid, super stable,
and high performance configuration of the entire system. After distro
hopping for many years, using Linux since Ubuntu first came out, and
learning as much as I possibly could, this is my own personal method
for making the Ultimate Linux Desktop. Instead of going through
my reasoning for everything, I decided to attempt to keep the guide
as concise as possible, while comprehensively covering the top-bottom
configuration of my own ideal Ultimate Linux Desktop.
To be clear, I use a Windows 11 based gaming PC, with gaming hardware,
so this guide demonstrates how to install/configure such a system, with Nvidia,
to do gaming and get similar performance to Windows 11, with Gnu/Linux, on Debian 13+Xfce/Xorg. It's not meant to be a guide for newbies, or to explain every little detail, because it would take a very long time to do so.
# hashtags are comments
$ dollar signs indicate commands at a command prompt
# hashtags also indicate commands to run as the root user
-> arrows indicate using the mouse to navigate gui interfaces
Create an Installation/Rescue USB
# Ventoy
https://sourceforge.net/projects/ventoy/files/
https://sourceforge.net/projects/ventoy ... z/download
# Debian Install Cd (XFCE)(XORG!)
https://cdimage.debian.org/debian-cd/cu ... 4-xfce.iso
# Rescue Tools
https://clonezilla.org/downloads.php
https://www.system-rescue.org/Download/
Configuring UEFI/BIOS
# disable stuff I don't use
Installation
# use cpufreq.default_governor=performance on the grub command line
# to speed up installation, and disconnect the computer from the internet
First Boot+Initial Configuration
Applications -> Settings-> Display Settings -> Max Refresh Rate
Applications -> Settings -> Window Manager Tweaks -> Disable Shadows
Applications -> Settings -> Workspaces -> 1
Applications -> Settings -> Settings Editor -> xsettings -> CursorBlink -> off
Applications -> Settings -> Appearance -> Fonts -> Disable anti-aliasing/hinting/subpixel
# this is how to get rid of rainbow colored fonts (will configure them more later)
Applications -> Settings -> Power Manager -> Put To Sleep/Switch Off -> Never
Editing Sources
$ sudo mousepad /etc/apt/sources.list
# See https://wiki.debian.org/SourcesList for more information.
deb http://deb.debian.org/debian trixie main contrib non-free non-free-firmware
#deb-src http://deb.debian.org/debian trixie main non-free-firmware
deb http://deb.debian.org/debian trixie-updates main contrib non-free non-free-firmware
#deb-src http://deb.debian.org/debian trixie-updates main non-free-firmware
deb http://security.debian.org/debian-security/ trixie-security main contrib non-free non-free-firmware
#deb-src http://security.debian.org/debian-security/ trixie-security main non-free-firmware
# Backports allow you to install newer versions of software made available for this release
#deb http://deb.debian.org/debian trixie-backports main contirb non-free non-free-firmware
#deb-src http://deb.debian.org/debian trixie-backports main non-free-firmware
Initial Grub Configuration
$ sudo mousepad /etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT='cpufreq.default_governor=performance'
$ sudo update-grub
First System Upgrade
$ sudo dpkg --add-architecture i386
$ sudo apt update
$ sudo apt upgrade
Creating The Root Account
$ sudo passwd
## First Reboot
$ sudo poweroff
Initial Package Installation
# dependencies for building the Linux kernel
$ sudo apt install bc binutils bison dwarves flex gcc git gnupg2 gzip libelf-dev libncurses5-dev libssl-dev make openssl perl-base rsync tar xz-utils pahole
# the best video/music player
$ sudo apt install vlc && sudo apt remove exfalso quodlibet parole
# useful utilities
$ sudo apt install wget git galculator traceroute tcpdump dnsutils yt-dlp gparted transmission
# graphical editing
$ sudo apt install krita
# a pdf viewer with broader support
$ sudo apt install okular okular-extra-backends
# packages for gaming
$ sudo apt install lutris steam playonlinux pulseeffects mangohud gamemode
# packages for gaming+nvidia
$ sudo apt install libvulkan1 libvulkan1:i386 vulkan-tools pkg-config
# a firewall
$ sudo apt install gufw
Applications -> Settings -> Firewall Configuration -> Enabled
# updating firefox
# https://support.mozilla.org/en-US/kb/in ... efox-linux
# See the section "Install Firefox .deb package for Debian-based distributions"
# after installing firefox from their own debian repository, you can
# remove debians firefox-esr (sudo apt remove firefox-esr)
Further System Configuration
Applications -> Session and Startup -> Application -> Autostart
Geoclue, Im-launch, KDE-Connect, Print-Queue, Screen Locker, Spice vdagent -> disabled
$ sudo service --status-all
$ sudo systemctl disable --now apparmor cron cups cups-browsed
$ sudo systemctl disable --now cups.socket cups.path
$ sudo systemctl disable --now avahi-daemon
$ sudo systemctl disable avahi-daemon.socket
$ sudo systemctl list-timers
$ sudo systemctl disable anacron anacron.timer apt-daily.timer apt-daily-upgrade.timer e2scrub_all.timer xfs_scrub_all.timer
$ sudo sysctl --system
$ sudo rm /usr/lib/sysctl.d/*
$ sudo mousepad /etc/sysctl.conf
kernel.randomize_va_space=0
kernel.dmesg_restrict=1
kernel.kptr_restrict=1
kernel.nmi_watchdog=0
kernel.soft_watchdog=0
kernel.watchdog=0
net.ipv4.icmp_echo_ignore_broadcasts=1
net.ipv4.conf.default.rp_filter=0
net.ipv4.conf.all.rp_filter=0
net.ipv4.ip_forward=0
net.ipv4.conf.all.forwarding=0
net.ipv6.conf.all.forwarding=0
net.ipv6.conf.default.forwarding=0
net.ipv4.conf.all.accept_redirects=0
net.ipv4.conf.default.accept_redirects=0
net.ipv4.conf.all.secure_redirects=0
net.ipv4.conf.all.send_redirects=0
net.ipv6.conf.all.accept_redirects=0
net.ipv6.conf.default.accept_redirects=0
net.ipv4.conf.all.log_martians=0
net.ipv4.conf.all.accept_source_route=0
net.ipv4.conf.default.accept_source_route=0
net.ipv6.conf.all.accept_source_route=0
net.ipv6.conf.default.accept_source_route=0
vm.vfs_cache_pressure=75
vm.dirty_background_ratio=5
vm.swappiness=10
vm.dirty_ratio=10
#vm.max_map_count=16777216
#vm.max_map_count=1048576
vm.max_map_count=524288
$ sudo mousepad /etc/systemd/journald.conf
Storage=none
Audit=no
$ sudo mousepad /etc/systemd/system.conf
DefaultLimitNOFILE=1024:524288
DefaultCPUAccounting=no
DefaultIOAccounting=no
DefaultIPAccounting=no
DefaultMemoryAccounting=no
DefaultTasksAccounting=no
$ sudo mousepad /etc/systemd/user.conf
DefaultLimitNOFILE=1024:524288
$ sudo mousepad /etc/security/limits.conf
# esync
user hard nofile 524288
# gamemode
user hard nice -20
$ sudo mousepad /etc/environment
# for games to show fps
DXVK_HUD=fps
# make menuconfig theme (for building the kernel)
MENUCONFIG_COLOR=blackbg
# for nvidia
__GL_LOG_MAX_ANISO=0
__GL_SYNC_TO_VBLANK=0
__GL_MaxFramesAllowed=1
$ sudo nano -w /etc/fstab
UUID=537cbbc6-fe24-442b-a16d-0e4c64887fcj / ext4 defaults,lazytime 0 1
Last reboot
$ sudo poweroff
Preparing for custom gaming kernel(6.18), and nvidia graphics driver
# right now we have to get a specific version of nvidia to use with xfce
# or it will break the window manager/compositor, and that also,
# requires the right kernel version which will build with it
$ cd ~
$ wget https://cdn.kernel.org/pub/linux/kernel ... .13.tar.xz
# https://www.nvidia.com/en-us/geforce/dr ... ts/257493/
$ mv ~/Downloads/NVIDIA-Linux-x86_64-580.105.08.run ~/nvidia_580.run
Building/Installing Custom Gaming Kernel With Cachy Patches For Debian
# become root to build/install the custom kernel
$ su
# tar -xf linux-6.18.13.tar.xz
# cd linux-6.18.13
# cp /boot/config-6.12.73+deb13-amd64 .config
# make olddefconfig
# patching with cachy os patches
# Source: https://github.com/CachyOS/linux-cachyo ... e/.SRCINFO
# wget https://raw.githubusercontent.com/cachy ... -all.patch
# wget https://raw.githubusercontent.com/cachy ... achy.patch
# wget https://raw.githubusercontent.com/cachy ... i915.patch
# patch -p1 < 0001-cachyos-base-all.patch
# patch -p1 < 0001-bore-cachy.patch
# patch -p1 < 0001-rt-i915.patch
# disabling module signing
# ./scripts/config --file .config --disable MODULE_SIG
# make menuconfig
General Setup ->
-> Local Version -> (enter whatever name you like)
-> Automatically append version information -> on
-> Timers subsystem -> periodic timer ticks
-> Preemption model -> low latency Desktop
-> Fully preemptible kernel (Real-Time) -> on
-> cpu/task time and stats accounting -> simple accounting
-> Control Group support -> CPU controller -> SCHED_RR/FIFO -> on
-> Profiling/Kexec -> disabled
Processor type and features ->
-> Build and optimize for local/native CPU -> on
-> Supported proccesor vendors -> Intel/AMD
-> TSX mode -> on
-> Software Guard eXtensions -> off
-> x86 userspace shadow stack -> off
-> Timer Frequency -> 1000 HZ
-> Randomize the address of the Kernel Image (KASLR) -> off
-> Kernel Live Patching -> off
Mitigations -> off
Power Management and ACPI ->
Suspend/Hibernate -> off
Binary Emulations ->
-> IA32 Emulation -> on
-> x32 ABI for 65-bit mode -> on
Virtualization -> off(on optional)
General architecture-dependent options ->
-> Stack protector buffer overflow detection -> off
-> Default state of kernel stack offset randomization -> off
Memory Management ->
-> Slab allocator options ->
-> Randomize slab freelist -> off
-> Harden slab freelist metadata -> off
-> Enable per cpu partial caches -> off
-> Page allocator randomization -> off
-> disable heap randomization -> on
-> Memory hotplug -> off
Security Options -> disable everything
Kernel Hacking -> disable Scheduler Debugging
Save -> .config -> exit
# make -j$(nproc) && make modules && make modules_install && make headers_install && make install && sudo poweroff
# it will take awhile to build/install the kernel
Installing the Nvidia graphics driver (580.105.08) after the new linux kernel is installed/rebooted
https://www.nvidia.com/en-us/geforce/dr ... ts/257493/
$ sudo IGNORE_PREEMPT_RT_PRESENCE=1 sh nvidia_580.run --no-x-check
follow the prompts -> select open kernel modules -> select continue installion
install 32 bit compatibility libraries? -> yes
rebuild initramfs -> yes
run xconfig? -> yes
# reboot
$ sudo poweroff
Themeing the entire desktop with catppuccin
# important sources/info
# https://wiki.archlinux.org/title/Unifor ... plications
# https://github.com/catppuccin/catppuccin
# https://github.com/catppuccin/gtk
# https://github.com/catppuccin/gtk/relea ... efault.zip
# https://github.com/catppuccin/gtk/relea ... efault.zip
# mocha is darker, frappe is lighter
$ sudo cp -r catppuccin-frappe-lavender-standard+default-dark/ /usr/share/themes/.
Settings -> Appearance -> Catppuccin -> on ( set matching xfwm4 theme -> off)
# https://github.com/catppuccin/xfce4-ter ... appe.theme
$ sudo cp catppuccin-frappe.theme /usr/share/xfce4/terminal/colorschemes/.
# reload terminal
xfce terminal -> edit -> preferences -> Colors -> Presets -> Catpuccin
$ mousepad ~/.bashrc
if [ "$color_prompt" = yes ]; then
# PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
#else
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
fi
unset color_prompt force_color_prompt
# reload terminal
# note these colors somewhere to help configure other apps to match catpuccin
background: #303446
foreground(text): #c6d0f5
# set desktop background to darker color from catppuccin palette #11111b
# darker background, with light foreground elements (stuff you use)
# makes the desktop comfortable to use.
use krita to make custom matching wallpapers
load an image you want to transform -> https://images.wallpapersden.com/image/ ... Wdma2U.jpg
grab a reference image -> https://github.com/zhichaoh/catppuccin- ... vender.png
Open the first image in krita -> Filter -> Color Transfer ->
and add the second image as the reference image
save as -> My_New_Custom_Catppuccin_Wallpaper.png
start adding some transparency
Applications -> Settings -> Window Manager Tweaks ->
Opacity of window decorations -> 80%
Opacity of inactive windows -> 50%-70%
Opacity of windows during move -> 50%
Opacity of windows during resize -> 50%
Opacity of popup windows -> 90%-100%
Theme firefox
# grab addons like no-script, adblock plus
edit -> settings -> Override colors -> custom
Text/links: #c6d0f5
background: #303446
# sometimes pages wont view properly with custom colors,
# so don't forget, and if you can't view a page,
# just turn off custom colors temporarily.
# disable rainbow font pixels in firefox
url box -> about:config ->
gfx.webrender.enable-subpixel-aa -> false
gfx.font_rendering.ahem_antialias_none-> true
# grab custom fonts to use system wide.
# https://fonts.google.com/specimen/Space+Mono
# get fonts -> download
# I chose space mono because it actually has a correctly shaped a
# that isn't upside down like most fonts. what's important is
# installing a font to use system wide, to make all the fonts uniform
$ unzip Space_Mono.zip
$ sudo cp ./*ttf /usr/share/fonts/.
final reboot (to change the fonts everywhere)
sudo poweroff
# because I disabled anti-aliasing to get rid of the rainbow pixels
# in the fonts, have to use a larger or medium/bold font to make them look good
Applications -> Settings -> Appearance -> Fonts -> Space Mono 13
Applications -> Settings -> Window Manager -> Title Font -> Space Mono 13
Terminal -> edit -> preferences -> appearance -> font -> Space Mono 13
Mousepad -> edit -> preferences -> font -> Space Mono 13
Firefox -> edit -> settings -> Fonts -> Space Mono 17
Firefox -> edit -> settings -> Fonts(advanced) -> Space Mono 17
-> Allow pages to choose their own fonts -> disabled
Setting matching Grub Theme
$ sudo cp Catppuccin_Wallpaper.png /boot/.
$ sudo mousepad /etc/default/grub
GRUB_BACKGROUND="/boot/Catppuccin_Wallpaper.png"
$ sudo update-grub
*attempting to theme qt apps
$ sudo apt install qt5-gtk-platformtheme
$ sudo mousepad /etc/environment
# QT_QPA_PLATFORMTHEME=gtk3
# idk why this doesn't work, it used to work with the older one,
# and setting it as gtk2
# can also do...
$ sudo apt install adwaita-qt
$ sudo mousepad /etc/environment
QT_STYLE_OVERRIDE=adwaita-dark
vlc -> tools -> preferences use a dark palette
okular -> accessibility -> change colors -> change dark and light colors
dark color: #c6d0f5
light color: #303446
Setting catppuccin icons
$ sudo apt install papirus-icon-theme
# papirus is the base icon set
# https://github.com/catppuccin/papirus-folders
# follow instructions on github page for lavender dark icons
( this part is like this: ./papirus-folders -C cat-frappe-lavender --theme Papirus-Dark)
Applications -> Settings -> Appearance -> Icons -> Papirus-Dark
can reboot again, to finally apply all the theme/font stuff
# and after setting up the base system to my liking, then it's time,
# to reload the installation/rescue cd from the start, and to
# use clonezilla to make a backup of my perfect/custom Debian installation,
# to safe external storage, before installing any large gaming apps,
# Right now when the system is perfect, configured to my liking,
# and still somewhat small, is the perfect time to make a backup,
# and if anything goes wrong in the future, or if I simply want
# to start over from a clean base, I have the backup to work with.
(plain text link to this post without forum formating: https://paste.debian.net/hidden/dd4899af)
# This guide, was made 2/25/26 as I set up my own system for fun, and so
# as of this writing everything is working for me, but over time things can change,
# and everyone has different systems, so some advice may not be applicable, or
# require alteration to get working
This is my guide for creating the Ultimate Linux Desktop with Debian, and
for general desktop usage, and gaming in particular, and goes through
the entire process, of actually creating a rock-solid, super stable,
and high performance configuration of the entire system. After distro
hopping for many years, using Linux since Ubuntu first came out, and
learning as much as I possibly could, this is my own personal method
for making the Ultimate Linux Desktop. Instead of going through
my reasoning for everything, I decided to attempt to keep the guide
as concise as possible, while comprehensively covering the top-bottom
configuration of my own ideal Ultimate Linux Desktop.
To be clear, I use a Windows 11 based gaming PC, with gaming hardware,
so this guide demonstrates how to install/configure such a system, with Nvidia,
to do gaming and get similar performance to Windows 11, with Gnu/Linux, on Debian 13+Xfce/Xorg. It's not meant to be a guide for newbies, or to explain every little detail, because it would take a very long time to do so.
# hashtags are comments
$ dollar signs indicate commands at a command prompt
# hashtags also indicate commands to run as the root user
-> arrows indicate using the mouse to navigate gui interfaces
Create an Installation/Rescue USB
# Ventoy
https://sourceforge.net/projects/ventoy/files/
https://sourceforge.net/projects/ventoy ... z/download
# Debian Install Cd (XFCE)(XORG!)
https://cdimage.debian.org/debian-cd/cu ... 4-xfce.iso
# Rescue Tools
https://clonezilla.org/downloads.php
https://www.system-rescue.org/Download/
Configuring UEFI/BIOS
# disable stuff I don't use
Installation
# use cpufreq.default_governor=performance on the grub command line
# to speed up installation, and disconnect the computer from the internet
First Boot+Initial Configuration
Applications -> Settings-> Display Settings -> Max Refresh Rate
Applications -> Settings -> Window Manager Tweaks -> Disable Shadows
Applications -> Settings -> Workspaces -> 1
Applications -> Settings -> Settings Editor -> xsettings -> CursorBlink -> off
Applications -> Settings -> Appearance -> Fonts -> Disable anti-aliasing/hinting/subpixel
# this is how to get rid of rainbow colored fonts (will configure them more later)
Applications -> Settings -> Power Manager -> Put To Sleep/Switch Off -> Never
Editing Sources
$ sudo mousepad /etc/apt/sources.list
# See https://wiki.debian.org/SourcesList for more information.
deb http://deb.debian.org/debian trixie main contrib non-free non-free-firmware
#deb-src http://deb.debian.org/debian trixie main non-free-firmware
deb http://deb.debian.org/debian trixie-updates main contrib non-free non-free-firmware
#deb-src http://deb.debian.org/debian trixie-updates main non-free-firmware
deb http://security.debian.org/debian-security/ trixie-security main contrib non-free non-free-firmware
#deb-src http://security.debian.org/debian-security/ trixie-security main non-free-firmware
# Backports allow you to install newer versions of software made available for this release
#deb http://deb.debian.org/debian trixie-backports main contirb non-free non-free-firmware
#deb-src http://deb.debian.org/debian trixie-backports main non-free-firmware
Initial Grub Configuration
$ sudo mousepad /etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT='cpufreq.default_governor=performance'
$ sudo update-grub
First System Upgrade
$ sudo dpkg --add-architecture i386
$ sudo apt update
$ sudo apt upgrade
Creating The Root Account
$ sudo passwd
## First Reboot
$ sudo poweroff
Initial Package Installation
# dependencies for building the Linux kernel
$ sudo apt install bc binutils bison dwarves flex gcc git gnupg2 gzip libelf-dev libncurses5-dev libssl-dev make openssl perl-base rsync tar xz-utils pahole
# the best video/music player
$ sudo apt install vlc && sudo apt remove exfalso quodlibet parole
# useful utilities
$ sudo apt install wget git galculator traceroute tcpdump dnsutils yt-dlp gparted transmission
# graphical editing
$ sudo apt install krita
# a pdf viewer with broader support
$ sudo apt install okular okular-extra-backends
# packages for gaming
$ sudo apt install lutris steam playonlinux pulseeffects mangohud gamemode
# packages for gaming+nvidia
$ sudo apt install libvulkan1 libvulkan1:i386 vulkan-tools pkg-config
# a firewall
$ sudo apt install gufw
Applications -> Settings -> Firewall Configuration -> Enabled
# updating firefox
# https://support.mozilla.org/en-US/kb/in ... efox-linux
# See the section "Install Firefox .deb package for Debian-based distributions"
# after installing firefox from their own debian repository, you can
# remove debians firefox-esr (sudo apt remove firefox-esr)
Further System Configuration
Applications -> Session and Startup -> Application -> Autostart
Geoclue, Im-launch, KDE-Connect, Print-Queue, Screen Locker, Spice vdagent -> disabled
$ sudo service --status-all
$ sudo systemctl disable --now apparmor cron cups cups-browsed
$ sudo systemctl disable --now cups.socket cups.path
$ sudo systemctl disable --now avahi-daemon
$ sudo systemctl disable avahi-daemon.socket
$ sudo systemctl list-timers
$ sudo systemctl disable anacron anacron.timer apt-daily.timer apt-daily-upgrade.timer e2scrub_all.timer xfs_scrub_all.timer
$ sudo sysctl --system
$ sudo rm /usr/lib/sysctl.d/*
$ sudo mousepad /etc/sysctl.conf
kernel.randomize_va_space=0
kernel.dmesg_restrict=1
kernel.kptr_restrict=1
kernel.nmi_watchdog=0
kernel.soft_watchdog=0
kernel.watchdog=0
net.ipv4.icmp_echo_ignore_broadcasts=1
net.ipv4.conf.default.rp_filter=0
net.ipv4.conf.all.rp_filter=0
net.ipv4.ip_forward=0
net.ipv4.conf.all.forwarding=0
net.ipv6.conf.all.forwarding=0
net.ipv6.conf.default.forwarding=0
net.ipv4.conf.all.accept_redirects=0
net.ipv4.conf.default.accept_redirects=0
net.ipv4.conf.all.secure_redirects=0
net.ipv4.conf.all.send_redirects=0
net.ipv6.conf.all.accept_redirects=0
net.ipv6.conf.default.accept_redirects=0
net.ipv4.conf.all.log_martians=0
net.ipv4.conf.all.accept_source_route=0
net.ipv4.conf.default.accept_source_route=0
net.ipv6.conf.all.accept_source_route=0
net.ipv6.conf.default.accept_source_route=0
vm.vfs_cache_pressure=75
vm.dirty_background_ratio=5
vm.swappiness=10
vm.dirty_ratio=10
#vm.max_map_count=16777216
#vm.max_map_count=1048576
vm.max_map_count=524288
$ sudo mousepad /etc/systemd/journald.conf
Storage=none
Audit=no
$ sudo mousepad /etc/systemd/system.conf
DefaultLimitNOFILE=1024:524288
DefaultCPUAccounting=no
DefaultIOAccounting=no
DefaultIPAccounting=no
DefaultMemoryAccounting=no
DefaultTasksAccounting=no
$ sudo mousepad /etc/systemd/user.conf
DefaultLimitNOFILE=1024:524288
$ sudo mousepad /etc/security/limits.conf
# esync
user hard nofile 524288
# gamemode
user hard nice -20
$ sudo mousepad /etc/environment
# for games to show fps
DXVK_HUD=fps
# make menuconfig theme (for building the kernel)
MENUCONFIG_COLOR=blackbg
# for nvidia
__GL_LOG_MAX_ANISO=0
__GL_SYNC_TO_VBLANK=0
__GL_MaxFramesAllowed=1
$ sudo nano -w /etc/fstab
UUID=537cbbc6-fe24-442b-a16d-0e4c64887fcj / ext4 defaults,lazytime 0 1
Last reboot
$ sudo poweroff
Preparing for custom gaming kernel(6.18), and nvidia graphics driver
# right now we have to get a specific version of nvidia to use with xfce
# or it will break the window manager/compositor, and that also,
# requires the right kernel version which will build with it
$ cd ~
$ wget https://cdn.kernel.org/pub/linux/kernel ... .13.tar.xz
# https://www.nvidia.com/en-us/geforce/dr ... ts/257493/
$ mv ~/Downloads/NVIDIA-Linux-x86_64-580.105.08.run ~/nvidia_580.run
Building/Installing Custom Gaming Kernel With Cachy Patches For Debian
# become root to build/install the custom kernel
$ su
# tar -xf linux-6.18.13.tar.xz
# cd linux-6.18.13
# cp /boot/config-6.12.73+deb13-amd64 .config
# make olddefconfig
# patching with cachy os patches
# Source: https://github.com/CachyOS/linux-cachyo ... e/.SRCINFO
# wget https://raw.githubusercontent.com/cachy ... -all.patch
# wget https://raw.githubusercontent.com/cachy ... achy.patch
# wget https://raw.githubusercontent.com/cachy ... i915.patch
# patch -p1 < 0001-cachyos-base-all.patch
# patch -p1 < 0001-bore-cachy.patch
# patch -p1 < 0001-rt-i915.patch
# disabling module signing
# ./scripts/config --file .config --disable MODULE_SIG
# make menuconfig
General Setup ->
-> Local Version -> (enter whatever name you like)
-> Automatically append version information -> on
-> Timers subsystem -> periodic timer ticks
-> Preemption model -> low latency Desktop
-> Fully preemptible kernel (Real-Time) -> on
-> cpu/task time and stats accounting -> simple accounting
-> Control Group support -> CPU controller -> SCHED_RR/FIFO -> on
-> Profiling/Kexec -> disabled
Processor type and features ->
-> Build and optimize for local/native CPU -> on
-> Supported proccesor vendors -> Intel/AMD
-> TSX mode -> on
-> Software Guard eXtensions -> off
-> x86 userspace shadow stack -> off
-> Timer Frequency -> 1000 HZ
-> Randomize the address of the Kernel Image (KASLR) -> off
-> Kernel Live Patching -> off
Mitigations -> off
Power Management and ACPI ->
Suspend/Hibernate -> off
Binary Emulations ->
-> IA32 Emulation -> on
-> x32 ABI for 65-bit mode -> on
Virtualization -> off(on optional)
General architecture-dependent options ->
-> Stack protector buffer overflow detection -> off
-> Default state of kernel stack offset randomization -> off
Memory Management ->
-> Slab allocator options ->
-> Randomize slab freelist -> off
-> Harden slab freelist metadata -> off
-> Enable per cpu partial caches -> off
-> Page allocator randomization -> off
-> disable heap randomization -> on
-> Memory hotplug -> off
Security Options -> disable everything
Kernel Hacking -> disable Scheduler Debugging
Save -> .config -> exit
# make -j$(nproc) && make modules && make modules_install && make headers_install && make install && sudo poweroff
# it will take awhile to build/install the kernel
Installing the Nvidia graphics driver (580.105.08) after the new linux kernel is installed/rebooted
https://www.nvidia.com/en-us/geforce/dr ... ts/257493/
$ sudo IGNORE_PREEMPT_RT_PRESENCE=1 sh nvidia_580.run --no-x-check
follow the prompts -> select open kernel modules -> select continue installion
install 32 bit compatibility libraries? -> yes
rebuild initramfs -> yes
run xconfig? -> yes
# reboot
$ sudo poweroff
Themeing the entire desktop with catppuccin
# important sources/info
# https://wiki.archlinux.org/title/Unifor ... plications
# https://github.com/catppuccin/catppuccin
# https://github.com/catppuccin/gtk
# https://github.com/catppuccin/gtk/relea ... efault.zip
# https://github.com/catppuccin/gtk/relea ... efault.zip
# mocha is darker, frappe is lighter
$ sudo cp -r catppuccin-frappe-lavender-standard+default-dark/ /usr/share/themes/.
Settings -> Appearance -> Catppuccin -> on ( set matching xfwm4 theme -> off)
# https://github.com/catppuccin/xfce4-ter ... appe.theme
$ sudo cp catppuccin-frappe.theme /usr/share/xfce4/terminal/colorschemes/.
# reload terminal
xfce terminal -> edit -> preferences -> Colors -> Presets -> Catpuccin
$ mousepad ~/.bashrc
if [ "$color_prompt" = yes ]; then
# PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
#else
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
fi
unset color_prompt force_color_prompt
# reload terminal
# note these colors somewhere to help configure other apps to match catpuccin
background: #303446
foreground(text): #c6d0f5
# set desktop background to darker color from catppuccin palette #11111b
# darker background, with light foreground elements (stuff you use)
# makes the desktop comfortable to use.
use krita to make custom matching wallpapers
load an image you want to transform -> https://images.wallpapersden.com/image/ ... Wdma2U.jpg
grab a reference image -> https://github.com/zhichaoh/catppuccin- ... vender.png
Open the first image in krita -> Filter -> Color Transfer ->
and add the second image as the reference image
save as -> My_New_Custom_Catppuccin_Wallpaper.png
start adding some transparency
Applications -> Settings -> Window Manager Tweaks ->
Opacity of window decorations -> 80%
Opacity of inactive windows -> 50%-70%
Opacity of windows during move -> 50%
Opacity of windows during resize -> 50%
Opacity of popup windows -> 90%-100%
Theme firefox
# grab addons like no-script, adblock plus
edit -> settings -> Override colors -> custom
Text/links: #c6d0f5
background: #303446
# sometimes pages wont view properly with custom colors,
# so don't forget, and if you can't view a page,
# just turn off custom colors temporarily.
# disable rainbow font pixels in firefox
url box -> about:config ->
gfx.webrender.enable-subpixel-aa -> false
gfx.font_rendering.ahem_antialias_none-> true
# grab custom fonts to use system wide.
# https://fonts.google.com/specimen/Space+Mono
# get fonts -> download
# I chose space mono because it actually has a correctly shaped a
# that isn't upside down like most fonts. what's important is
# installing a font to use system wide, to make all the fonts uniform
$ unzip Space_Mono.zip
$ sudo cp ./*ttf /usr/share/fonts/.
final reboot (to change the fonts everywhere)
sudo poweroff
# because I disabled anti-aliasing to get rid of the rainbow pixels
# in the fonts, have to use a larger or medium/bold font to make them look good
Applications -> Settings -> Appearance -> Fonts -> Space Mono 13
Applications -> Settings -> Window Manager -> Title Font -> Space Mono 13
Terminal -> edit -> preferences -> appearance -> font -> Space Mono 13
Mousepad -> edit -> preferences -> font -> Space Mono 13
Firefox -> edit -> settings -> Fonts -> Space Mono 17
Firefox -> edit -> settings -> Fonts(advanced) -> Space Mono 17
-> Allow pages to choose their own fonts -> disabled
Setting matching Grub Theme
$ sudo cp Catppuccin_Wallpaper.png /boot/.
$ sudo mousepad /etc/default/grub
GRUB_BACKGROUND="/boot/Catppuccin_Wallpaper.png"
$ sudo update-grub
*attempting to theme qt apps
$ sudo apt install qt5-gtk-platformtheme
$ sudo mousepad /etc/environment
# QT_QPA_PLATFORMTHEME=gtk3
# idk why this doesn't work, it used to work with the older one,
# and setting it as gtk2
# can also do...
$ sudo apt install adwaita-qt
$ sudo mousepad /etc/environment
QT_STYLE_OVERRIDE=adwaita-dark
vlc -> tools -> preferences use a dark palette
okular -> accessibility -> change colors -> change dark and light colors
dark color: #c6d0f5
light color: #303446
Setting catppuccin icons
$ sudo apt install papirus-icon-theme
# papirus is the base icon set
# https://github.com/catppuccin/papirus-folders
# follow instructions on github page for lavender dark icons
( this part is like this: ./papirus-folders -C cat-frappe-lavender --theme Papirus-Dark)
Applications -> Settings -> Appearance -> Icons -> Papirus-Dark
can reboot again, to finally apply all the theme/font stuff
# and after setting up the base system to my liking, then it's time,
# to reload the installation/rescue cd from the start, and to
# use clonezilla to make a backup of my perfect/custom Debian installation,
# to safe external storage, before installing any large gaming apps,
# Right now when the system is perfect, configured to my liking,
# and still somewhat small, is the perfect time to make a backup,
# and if anything goes wrong in the future, or if I simply want
# to start over from a clean base, I have the backup to work with.
(plain text link to this post without forum formating: https://paste.debian.net/hidden/dd4899af)
# This guide, was made 2/25/26 as I set up my own system for fun, and so
# as of this writing everything is working for me, but over time things can change,
# and everyone has different systems, so some advice may not be applicable, or
# require alteration to get working
Statistics: Posted by GamingOnLinux — 2026-02-25 21:21