Repository navigation
Home
This wiki documents the configurations, optimizations, and customizations applied to my Arch Linux system, with an emphasis on performance, minimalism, and functionality. The system is managed with chezmoi for dotfile version control and reproducibility.
Note: This wiki assumes a working knowledge of Arch Linux, shell usage, and package management via
pacmanandyay. It is not a step-by-step beginner’s guide but explains the rationale and impact of each configuration.
- System Configuration
- User Interface and Desktop Environment
- Gaming and Performance Optimization
- Networking and Communication
- System Services and Security
- Power Management
- Useful Packages
- Repository Structure
- Philosophy
See: System Configuration
- AUR helper and makepkg configuration:
yay,/etc/makepkg.confconfiguration - Package manager configuration:
/etc/pacman.confconfiguration - Cache hooks:
paccache-hook,yaycache-hook - Compressed RAM block device configuration:
zram-generator - Additional kernel installation:
linux-zen,linux-cachyos - Shell and prompt configuration:
zsh,bash,powerlevel10k
See: User Interface and Desktop Environment
- System info:
fastfetch - Editor setup:
neovimwith NVChad, Wayland fix, environment variable config - RGB and peripheral control:
openrazer-daemon,polychromatic - Wayland/Electron/Brave Ozone compatibility flags
See: Gaming and Performance Optimization
- Graphics stack:
mesa,lib32-mesa,vulkan-radeon,xf86-video-amdgpu - HUD:
MangoHud, custom presets, environment variable config - GameMode setup:
gamemode,lib32-gamemode, GPU policy - CPU scheduling:
ananicy-cpp(exclusive from GameMode) - Binaural audio with OpenAL:
openal - Compatibility layers:
protontricks,lib32-fontconfig - Fixes:
lib32-libcanberrafor Steam Remote Play
See: Networking and Communication
- SSH configuration:
openssh - VPN:
zerotier-one - Communication:
discord, update-skip override insettings.json
See: System Services and Security
- Firewall daemon:
firewalldwith persistent enablement - Bluetooth service enablement via systemd
See: Power Management
- Audio chipset: disables autosuspend on
snd_hda_intel - USB autosuspend rule for selected device (e.g., Razer)
- Global autosuspend kernel parameter:
usbcore.autosuspend=-1
See: Useful Packages
- Screenshot utility:
flameshot - Archiving:
7zip,unrar - Java runtime:
jdk21-temurin - Diff utility:
kompare - Miscellaneous CLI tools and helpers
| Path | Description |
|---|---|
~/.alsoftrc |
OpenAL Soft configuration for binaural audio |
~/.bashrc |
Bash shell configuration |
~/.p10k.zsh |
Powerlevel10k prompt theme configuration |
~/.zshrc |
Zsh shell configuration |
~/.config/discord/settings.json |
Discord settings with update override |
~/.config/gtk-2.0/ |
GTK 2.0 theme and settings directory |
~/.config/gtk-3.0/ |
GTK 3.0 theme and settings directory |
~/.config/gtk-4.0/ |
GTK 4.0 theme and settings directory |
~/.config/fastfetch/config.conf |
Fastfetch customized system info display (256 color) |
~/.config/fastfetch/config-simple.conf |
Fastfetch customized system info display (TTY) |
~/.config/nvim/ |
Neovim configuration using NVChad |
~/.config/MangoHud/MangoHud.conf |
MangoHud main configuration file |
~/.config/MangoHud/presets.conf |
MangoHud presets for performance overlays |
~/.config/auroraerc |
Aurorae window decoration settings |
~/.config/brave-flags.conf |
Brave browser Wayland-specific flags |
~/.config/dolphinrc |
Dolphin file manager settings |
~/.config/electron-flags.conf |
Electron applications Wayland flags |
~/.config/katerc |
Kate editor configuration |
~/.config/kcminputrc |
Input device settings |
~/.config/kdeglobals |
Global KDE settings |
~/.config/kgammarc |
Gamma correction settings |
~/.config/kglobalshortcutsrc |
Global shortcuts configuration |
~/.config/khotkeysrc |
Custom user-defined hotkeys |
~/.config/konsolerc |
Konsole general settings |
~/.config/krunnerrc |
KRunner (launcher) settings |
~/.config/ksmserverrc |
Session management settings |
~/.config/ksplashrc |
Splash screen settings |
~/.config/kwinrc |
KWin window manager configuration |
~/.config/kwinrulesrc |
KWin custom window rules |
~/.config/okularrc |
Okular document viewer settings |
~/.config/plasma-localerc |
Localization and language settings |
~/.config/plasma-org.kde.plasma.desktop-appletsrc |
Plasma desktop layout configuration |
~/.config/plasmanotifyrc |
Plasma notification settings |
~/.config/plasmarc |
Plasma shell configuration |
~/.config/systemmonitorrc |
Plasma System Monitor configuration |
~/.config/systemsettingsrc |
KDE System Settings application config |
~/.local/share/aurorae/ |
User Aurorae themes |
~/.local/share/color-schemes/ |
KDE color schemes |
~/.local/share/icons/ |
Icon themes |
~/.local/share/plasma/ |
Plasma shell data (themes, layouts, panels) |
~/.local/share/kwin/ |
KWin scripts and window effects |
~/.local/share/user-places.xbel |
User-saved locations in file dialogs |
~/.local/share/fonts/ |
User-installed fonts |
~/.local/share/sddm/ |
SDDM login manager themes |
/etc/pacman.conf |
Pacman package manager configuration |
/etc/makepkg.conf |
Makepkg configuration with debug options disabled |
/etc/environment |
Environment variables, including MangoHud activation |
/etc/gamemode.ini |
GameMode configuration for performance tuning |
/etc/modprobe.d/audio_disable_powersave.conf |
Audio power-saving settings for snd_hda_intel |
/etc/udev/rules.d/50-usb_power_save.rules |
Udev rules to disable USB autosuspend for specific devices |
/boot/loader/entries/*.conf |
systemd-boot kernel entries with kernel parameters |
This system configuration adheres to the following principles:
- Minimalist system footprint with no redundant daemons or services
- Performance-conscious settings tailored for gaming and multimedia workloads
- Full reproducibility of configuration via
chezmoi - Explicit documentation of changes for ease of future maintenance
For complete configuration files, visit the main dotfiles repository.
1. System Configuration
1.1. AUR helper and makepkg configuration
1.1.1. AUR helper: yay
1.1.2. Makepkg optimization
1.1.2.1. Parallel compilation
1.1.2.2. Disable debug packages and LTO
1.2. Package manager configuration
1.2.1. Pacman utilities
1.2.2. Downgrading packages
1.2.3. Parallel downloads
1.2.4. Enabling the multilib repository
1.3. Cache hooks
1.3.1. Pacman cache hook
1.3.2. AUR helper (yay) cache hook
1.4. Compressed RAM block device
1.4.1. Creating zram device
1.4.2. Setting sysctl swappiness
1.4.3. Checking zram as swap status