CachyOS Post Installation - ryzendew/Linux-Tips-and-Tricks GitHub Wiki
CachyOS Post-Installation Guide
This guide covers essential steps to take after installing CachyOS to optimize your system, install necessary software, and configure your setup for the best experience.
Table of Contents
- Initial System Update
- Configure Graphics Drivers
- Install Essential Software
- Configure System Services
- Set Up User Account
- Configure Desktop Environment
- Optimize System Performance
- Set Up Backup Strategy
- Security Configuration
- Additional Recommendations
Initial System Update
Why Update First?
After installation, you should update your system immediately because:
- Installation ISO may be older than current packages
- Security updates may be available
- Bug fixes and improvements are included
- Ensures you have the latest optimizations
How to Update
Update system (recommended method):
sudo pacman -Syu
What this does:
sudo: Runs with administrator privilegespacman: Arch Linux package manager-S: Synchronize (install/update packages)-y: Download fresh package database from servers-u: Upgrade installed packages to newer versions
Important: Always use -Syu together. Using -Sy without -u can cause dependency issues.
What this does:
-Syu: Synchronize, update package database, and upgrade all packages- Downloads and installs updates for all installed packages
- May take 5-30 minutes depending on updates available
Step 3: Verify update completed
# Check if any packages need updates
pacman -Qu
What this command does:
pacman: Package manager (no sudo needed - just checking, not installing)-Q: Query - check installed packages-u: Upgrades - show packages that can be upgraded
What happens:
- pacman compares your installed packages with available versions
- Shows you any packages that have updates available
- If no output, your system is fully up to date
Example output if updates are available:
firefox 120.0-1 -> 120.1-1
kernel 6.6.5-1 -> 6.6.6-1
Example output if system is up to date:
(no output - this means everything is current!)
If you see packages listed:
- Run
sudo pacman -Syuagain to update them - Or update specific packages:
sudo pacman -S package-name
Update Frequency
Recommended update schedule:
- Weekly: For regular users
- Monthly: For stable systems
- Before major changes: Always update before major configuration changes
Best practices:
- Read update announcements
- Check for breaking changes
- Backup before major updates
- Update during low-usage times
Configure Graphics Drivers
Why Configure Graphics Drivers?
Proper graphics drivers ensure:
- Best performance
- Hardware acceleration
- Proper display resolution
- Gaming performance
- Video playback acceleration
Using chwd (Recommended)
chwd automatically detects and installs correct drivers:
# Detect hardware and install drivers
sudo chwd -h -a nvidia # For NVIDIA
sudo chwd -h -a amd # For AMD (if needed)
What chwd does step-by-step:
- Scans your system: Detects what graphics card you have
- Looks at hardware connected to your computer
- Identifies the graphics card model
- Identifies drivers needed: Determines which driver packages to install
- Checks what drivers are available for your card
- Selects the appropriate driver version
- Downloads drivers: Gets driver packages from internet
- Connects to CachyOS package servers
- Downloads necessary driver files
- Installs drivers: Installs driver packages on your system
- Extracts and installs driver files
- Sets up driver configuration
- Configures system: Sets up configuration files
- Creates necessary config files
- Updates system settings
- Prepares for reboot: Tells you to reboot when done
- Drivers will be active after reboot
- System will use new drivers
Example output:
Detected hardware: NVIDIA GeForce RTX 3060
Installing: nvidia nvidia-utils nvidia-settings lib32-nvidia-utils
Configuring system...
Done! Please reboot for changes to take effect.
What the packages do:
nvidia: Main NVIDIA driver (kernel module - the actual driver)nvidia-utils: NVIDIA utilities and tools (helper programs)nvidia-settings: NVIDIA configuration tool (GUI application to configure GPU)lib32-nvidia-utils: 32-bit support (needed for Steam, some games, 32-bit applications)
See CachyOS Tools Guide for detailed chwd usage.
Manual Driver Installation
For NVIDIA:
# Install NVIDIA drivers
sudo pacman -S nvidia nvidia-utils nvidia-settings
# For 32-bit support (for Steam, etc.)
sudo pacman -S lib32-nvidia-utils
For AMD:
# AMD drivers usually work out of box
# But you can install additional packages:
sudo pacman -S mesa vulkan-radeon lib32-mesa lib32-vulkan-radeon
For Intel:
# Intel graphics usually work automatically
# Additional packages if needed:
sudo pacman -S mesa vulkan-intel lib32-mesa lib32-vulkan-intel
Verify Graphics Drivers
Check if drivers are working:
# Check graphics card
lspci | grep -i vga
What this command does:
lspci: Lists PCI devices (hardware connected to motherboard)| grep -i vga: Searches for VGA (video graphics adapter)- Shows your graphics card information
Example output:
01:00.0 VGA compatible controller: NVIDIA Corporation GA106 [GeForce RTX 3060] (rev a1)
What this tells you:
- Your graphics card is detected
- Shows model name (GeForce RTX 3060)
- Card is connected and recognized by system
# Check NVIDIA (if NVIDIA)
nvidia-smi
What this command does:
nvidia-smi: NVIDIA System Management Interface- Shows detailed NVIDIA GPU information
- Only works if NVIDIA drivers are installed and GPU is active
Example output:
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 535.xx Driver Version: 535.xx CUDA Version: 12.2 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 NVIDIA GeForce ... Off | 00000000:01:00.0 On | N/A |
| 0% 45C P8 15W / 170W | 1234MiB / 12288MiB | 0% Default |
+-----------------------------------------------------------------------------+
Understanding the output:
- Driver Version: NVIDIA driver version (535.xx)
- GPU 0: Your NVIDIA graphics card
- Name: GPU model (GeForce RTX 3060)
- Temp: GPU temperature (45°C - normal)
- Memory-Usage: How much GPU memory is used (1234MB / 12288MB)
- GPU-Util: GPU usage percentage (0% = idle)
If you see an error:
NVIDIA-SMI has failed: Drivers not installed or GPU not active- Solution: Install drivers:
sudo chwd -h -a nvidia
# Check OpenGL
glxinfo | grep "OpenGL renderer"
What this command does:
glxinfo: Shows OpenGL graphics information- OpenGL: Graphics API used by many applications and games
| grep "OpenGL renderer": Finds which GPU is being used
Example output (NVIDIA working):
OpenGL renderer string: NVIDIA GeForce RTX 3060/PCIe/SSE2
Example output (Intel working):
OpenGL renderer string: Mesa Intel(R) UHD Graphics 630 (CML GT2)
What this tells you:
- Shows which GPU is active for graphics
- If it shows your GPU model, drivers are working
- If it shows "llvmpipe" or "software", hardware acceleration isn't working
If command not found:
# Install mesa-utils (contains glxinfo)
sudo pacman -S mesa-utils
# Check Vulkan
vulkaninfo | grep "deviceName"
What this command does:
vulkaninfo: Shows Vulkan graphics API information- Vulkan: Modern graphics API (alternative to OpenGL, used by many games)
| grep "deviceName": Finds GPU name in Vulkan output
Example output:
deviceName = NVIDIA GeForce RTX 3060
What this tells you:
- Your GPU supports Vulkan
- Vulkan drivers are installed correctly
- Games using Vulkan will work properly
If command not found:
# Install vulkan-tools (contains vulkaninfo)
sudo pacman -S vulkan-tools
Reboot After Driver Installation
After installing graphics drivers:
sudo reboot
What this command does:
sudo: Administrator privileges (needed to reboot)reboot: Restarts your computer- System shuts down and starts up again
Why reboot is necessary:
- Kernel modules need to load: Graphics drivers are kernel modules that load at boot
- Kernel modules: Drivers that extend the Linux kernel
- They need to load when system starts
- X server/Wayland needs to restart: Display server must restart to use new drivers
- X server/Wayland: Software that handles graphics display
- Needs to reload with new driver configuration
- Changes take effect: New drivers become active after reboot
- Configuration changes are applied
- System recognizes and uses new drivers
What happens during reboot:
- System shuts down gracefully
- All services stop
- Kernel modules unload
- System powers off
- System powers on
- Kernel loads (with new graphics drivers)
- Display server starts (using new drivers)
- Desktop environment loads
- You log in
After reboot:
- Graphics drivers should be active
- You can verify with commands above
- Display should work at correct resolution
- Graphics performance should be improved
Install Essential Software
Package Managers
pacman (built-in):
# Search for packages
pacman -Ss package-name
# Install package
sudo pacman -S package-name
# Remove package
sudo pacman -R package-name
AUR helpers (for Arch User Repository):
# Install yay (popular AUR helper)
sudo pacman -S yay
# Or paru (another AUR helper)
sudo pacman -S paru
# Use AUR helper
yay -S package-name
Essential Software Categories
Web Browsers
Firefox:
sudo pacman -S firefox
Chromium:
sudo pacman -S chromium
Google Chrome (AUR):
yay -S google-chrome
Office Software
LibreOffice:
sudo pacman -S libreoffice-fresh
OnlyOffice (AUR):
yay -S onlyoffice-bin
Media Players
VLC:
sudo pacman -S vlc
MPV:
sudo pacman -S mpv
Code Editors
VS Code:
sudo pacman -S code
Neovim:
sudo pacman -S neovim
Development Tools
Git:
sudo pacman -S git
Build tools:
sudo pacman -S base-devel
Using CachyOS Hello
CachyOS Hello provides easy package installation:
- Launch CachyOS Hello
- Browse packages by category
- Select packages to install
- Click Install
See CachyOS Tools Guide for CachyOS Hello usage.
Configure System Services
Essential Services
NetworkManager (network management):
# Enable and start NetworkManager
sudo systemctl enable --now NetworkManager
Bluetooth:
# Enable and start Bluetooth
sudo systemctl enable --now bluetooth
Time synchronization:
# Enable systemd-timesyncd
sudo systemctl enable --now systemd-timesyncd
Optional Services
Printing (CUPS):
# Install CUPS
sudo pacman -S cups
# Enable CUPS service
sudo systemctl enable --now cups
SSH (remote access):
# Install OpenSSH
sudo pacman -S openssh
# Enable SSH service
sudo systemctl enable --now sshd
Firewall (ufw):
# Install ufw
sudo pacman -S ufw
# Enable firewall
sudo systemctl enable --now ufw
# Configure basic rules
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw enable
Check Service Status
List all services:
systemctl list-units --type=service --state=running
Check specific service:
systemctl status service-name
See Systemctl Troubleshooting Guide for service management.
Set Up User Account
User Account Configuration
Your user account was created during installation, but you may want to:
Add user to additional groups:
# Add user to wheel group (for sudo)
sudo usermod -aG wheel username
# Add user to audio group
sudo usermod -aG audio username
# Add user to video group
sudo usermod -aG video username
# Add user to docker group (if using Docker)
sudo usermod -aG docker username
Change user password:
# Change your password
passwd
Configure shell:
# List available shells
chsh -l
# Change shell (e.g., to zsh)
chsh -s /usr/bin/zsh
User Directory Setup
Create common directories:
# Create common directories
mkdir -p ~/Documents ~/Downloads ~/Pictures ~/Videos ~/Music
mkdir -p ~/Projects ~/Desktop
Set up SSH keys (if needed):
# Generate SSH key
ssh-keygen -t ed25519 -C "[email protected]"
# Copy public key (for GitHub, servers, etc.)
cat ~/.ssh/id_ed25519.pub
Configure Desktop Environment
KDE Plasma
Install additional KDE packages:
sudo pacman -S kde-applications
Configure KDE:
- System Settings → Appearance
- System Settings → Workspace Behavior
- System Settings → Shortcuts
Install themes and icons:
# Popular themes
sudo pacman -S kvantum-theme-arc-git
GNOME
Install GNOME extensions:
# Install extension manager
sudo pacman -S gnome-shell-extension-manager
Configure GNOME:
- Settings → Appearance
- Settings → Keyboard Shortcuts
- Tweaks (if installed)
i3 Window Manager
Configure i3:
# Edit i3 config
nano ~/.config/i3/config
# Reload i3
i3-msg reload
Install i3 utilities:
sudo pacman -S i3lock i3status dmenu
See Switching Desktop Environments for more DE configuration.
Optimize System Performance
Enable Performance Optimizations
Check CPU optimization level:
# Verify you're using optimized packages
pacman -Q | grep cachyos
See CachyOS Performance Guide for optimization details.
Configure Swap
Check swap:
# Check swap usage
free -h
# Check swap file/partition
swapon --show
Create swap file (if needed):
# Create 4GB swap file
sudo fallocate -l 4G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
# Make permanent
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
Optimize I/O Scheduler
Check current scheduler:
# Check I/O scheduler
cat /sys/block/sda/queue/scheduler
Change I/O scheduler (if needed):
# For SSDs, use none or mq-deadline
echo mq-deadline | sudo tee /sys/block/sda/queue/scheduler
# Make permanent (add to /etc/udev/rules.d/)
Disable Unnecessary Services
List running services:
systemctl list-units --type=service --state=running
Disable services you don't need:
sudo systemctl disable service-name
Set Up Backup Strategy
Why Backup?
Backups protect you from:
- Data loss
- System corruption
- Accidental deletion
- Hardware failure
Backup Tools
Timeshift (system snapshots):
# Install Timeshift
sudo pacman -S timeshift
# Create snapshot
sudo timeshift --create
rsync (file backup):
# Install rsync
sudo pacman -S rsync
# Backup home directory
rsync -av --delete ~/ /path/to/backup/
BorgBackup (deduplication):
# Install BorgBackup
sudo pacman -S borg
# Create backup
borg create /path/to/repo::backup-name ~/
Backup Schedule
Recommended:
- System snapshots: Weekly
- File backups: Daily or weekly
- Important files: Multiple copies
Best practices:
- Backup to external drive
- Use cloud storage for important files
- Test restore procedures
- Keep multiple backup copies
Security Configuration
Firewall Setup
Install and configure ufw:
# Install ufw
sudo pacman -S ufw
# Enable firewall
sudo systemctl enable --now ufw
# Basic configuration
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw enable
Automatic Security Updates
Enable automatic updates (optional):
# Install unattended-upgrades equivalent
# Or set up cron job for updates
Manual update check:
# Check for security updates (use -Syu for full update)
sudo pacman -Syu
pacman -Qu
User Permissions
Use sudo instead of root:
- Don't log in as root
- Use sudo for administrative tasks
- Configure sudoers if needed
Configure sudo:
# Edit sudoers (use visudo)
sudo visudo
Secure Boot (Optional)
If you want Secure Boot:
- See Secure Boot for CachyOS with Limine Loader
- Requires additional configuration
Additional Recommendations
Install Development Tools
If you're a developer:
# Install base development tools
sudo pacman -S base-devel git
# Install programming languages
sudo pacman -S python nodejs go rust
# Install IDEs
sudo pacman -S code neovim
Set Up Gaming
Install Steam:
sudo pacman -S steam
Install gaming dependencies:
sudo pacman -S wine-staging lutris
See CachyOS Gaming Configuration Guide for detailed gaming setup.
Configure Audio
Install audio packages:
# PulseAudio (usually pre-installed)
sudo pacman -S pulseaudio pulseaudio-alsa
# ALSA utilities
sudo pacman -S alsa-utils
# Audio codecs
sudo pacman -S gstreamer gst-plugins-good gst-plugins-bad gst-plugins-ugly
Set Up Printing
Install CUPS:
sudo pacman -S cups cups-pdf
# Enable CUPS
sudo systemctl enable --now cups
# Access web interface
# http://localhost:631
Configure Mirrors
Optimize package download speed:
# Install reflector
sudo pacman -S reflector
# Update mirrorlist
sudo reflector --country "United States" --latest 10 --sort rate --save /etc/pacman.d/mirrorlist
Or use CachyOS rate-mirrors:
# Use CachyOS tool
sudo cachyos-rate-mirrors
Install Media Codecs
Install codecs for media playback:
# Install codecs
sudo pacman -S gstreamer gst-plugins-good gst-plugins-bad gst-plugins-ugly
sudo pacman -S gst-libav
Set Up Flatpak (Optional)
Install Flatpak:
sudo pacman -S flatpak
# Add Flathub repository
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
Additional Resources
- CachyOS Getting Started Guide - System overview
- CachyOS Installation Guide - Installation instructions
- CachyOS Performance Guide - Performance optimizations
- CachyOS Tools Guide - System tools
- CachyOS FAQ & Troubleshooting - Common questions
- CachyOS Wiki: https://wiki.cachyos.org/
Summary
This guide covered:
- Initial system update - Keeping system current
- Graphics drivers - Proper hardware support
- Essential software - Installing needed applications
- System services - Configuring background services
- User account - Setting up user properly
- Desktop environment - Customizing your DE
- Performance optimization - Getting best performance
- Backup strategy - Protecting your data
- Security - Basic security configuration
- Additional recommendations - Extra useful setup
Key Takeaways:
- Always update system after installation
- Install proper graphics drivers for best performance
- Configure essential services
- Set up backups early
- Customize your desktop environment
- Optimize for your use case
Next Steps:
- Explore CachyOS features
- Customize your system
- Install software you need
- Join the CachyOS community
This guide is based on the CachyOS Wiki and expanded with detailed explanations for beginners. For the most up-to-date post-installation recommendations, always refer to the official CachyOS documentation.