Arch Linux Post-Install Guide

This document provides a complete post-installation setup guide for Arch Linux using dotfiles and automated scripts.

Quick Start

  1. Clone the dotfiles repository:
1
2
git clone https://github.com/Rukkhadevata123/dotfiles.git ~/.dotfiles
cd ~/.dotfiles
  1. Install dotfiles:
1
./scripts/install.sh
  1. Run setup scripts in order:
1
2
3
4
5
./scripts/01-system-setup.sh  # Requires reboot
./scripts/02-drivers-setup.sh # After reboot
./scripts/03-desktop-setup.sh # May require logout/login
./scripts/04-apps-setup.sh
./scripts/05-services-setup.sh # Requires logout/login

Manual Configuration

System Files (Requires sudo)

Before running 01-system-setup.sh, manually edit these files using the examples in system/ directory:

  1. Pacman Configuration
1
2
sudo vim /etc/pacman.conf
# Add archlinuxcn repository
1
2
3
4
5
6
7
8
9
10
11
[core]
Include = /etc/pacman.d/mirrorlist

[extra]
Include = /etc/pacman.d/mirrorlist

[multilib]
Include = /etc/pacman.d/mirrorlist

[archlinuxcn]
Server = https://mirrors.ustc.edu.cn/archlinuxcn/$arch
  1. Grub Configuration ⚠️
1
2
3
4
sudo vim /etc/default/grub
# Copy settings from system/grub/grub
# CAREFULLY REVIEW ALL SETTINGS - INCORRECT CONFIG CAN BREAK BOOT!
# Add this line for theme: GRUB_THEME="/usr/share/grub/themes/Hyacine/theme.txt"

IMPORTANT: Double-check all GRUB parameters, especially kernel parameters and boot options. Incorrect settings can prevent your system from booting properly.

Desktop Settings

After running the scripts, configure these manually in GNOME Settings:

  • User Avatar: Settings → Users → Change profile picture
  • Wallpaper: Settings → Background → Select wallpaper
  • Night Color: Settings → Displays → Night Light
  • Default Applications: Settings → Default Applications
  • Power Management: Settings → Power → Power settings
  • Refresh Rate: Settings → Displays → Refresh rate

Theme Configuration

For GTK theme customization (especially useful for Hyprland):

1
nwg-look

This tool allows you to easily configure GTK themes, icons, cursors, and fonts through a graphical interface.

For Qt applications, use Kvantum:

1
kvantummanager

Hyprland Launch

To start Hyprland from TTY:

1
systemd-cat -t uwsm_start uwsm start hyprland

Terminal Preference

Choose your preferred terminal by symlinking:

1
2
3
4
5
6
# For Alacritty (default)
# Already configured

# For Kitty
rm ~/.config/alacritty
# Kitty config already linked

Configuration Files Structure

All configuration files are stored in the dotfiles repository and linked to appropriate locations:

  • Shell: ~/.zshrcconfig/zsh/.zshrc
  • Hyprland: ~/.config/hypr/config/hypr/
  • Waybar: ~/.config/waybar/config/waybar/
  • Terminal: ~/.config/kitty/ or ~/.config/alacritty/
  • Notifications: ~/.config/swaync/config/swaync/
  • Application Launcher: ~/.config/wofi/config/wofi/
  • System Monitoring: ~/.config/conky/config/conky/
  • GTK Themes: ~/.config/gtk-3.0/ and ~/.config/gtk-4.0/config/gtk-*/
  • Qt Themes: ~/.config/Kvantum/config/Kvantum/
  • Logout Menu: ~/.config/wlogout/config/wlogout/
  • X11 Settings: ~/.config/xsettingsd/config/xsettingsd/

System Verification Commands

Graphics Drivers

1
2
3
4
lsmod | grep kvm
cat /proc/driver/nvidia/params | grep PreserveVideoMemoryAllocations
sudo cat /sys/module/nvidia_drm/parameters/fbdev
sudo cat /sys/module/nvidia_drm/parameters/modeset

Memory Management

1
2
free -h
zramctl

Audio

1
2
pactl info
pactl list sinks short

Useful Commands

Package Management

1
2
3
4
5
6
7
8
# List foreign packages
comm -23 <(pacman -Qq | sort) <(pacman -Sql archlinuxcn core extra multilib | sort)

# List archlinuxcn installed packages
LANG=en_US.UTF-8 pacman -Sl archlinuxcn | grep '\[installed\]'

# Remove orphaned packages
yay -Qtdq | yay -Rsn -

System Maintenance

1
2
3
4
5
6
7
8
9
10
11
12
# Update GRUB
sudo grub-mkconfig -o /boot/grub/grub.cfg

# Check running X11 applications
xlsclients -l

# Fix NTFS partition
sudo pacman -S ntfsprogs-ntfs3
sudo ntfsfix --clear-dirty /dev/nvme0n1p4

# Extract zip with Chinese filenames
unzip -O gbk file.zip

Gaming

Steam launch options for NVIDIA Optimus:

1
__NV_PRIME_RENDER_OFFLOAD=1 __VK_LAYER_NV_optimus=NVIDIA_only __GLX_VENDOR_LIBRARY_NAME=nvidia %command%

Windows Dual Boot

Set Windows to use UTC (run in Windows as Administrator):

1
reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation" /v RealTimeIsUniversal /d 1 /t REG_DWORD /f

Troubleshooting

Font Issues

1
2
fc-cache -fv
fc-match -s sans-serif:lang=zh-cn

Electron Applications

Electron flags are automatically applied to Chrome, Chromium, and VS Code through symlinks.

GTK Theme Issues

If GTK applications don’t follow the theme, ensure both gtk-3.0 and gtk-4.0 configurations are properly linked and xsettingsd is running.

Additional Resources

Notes

  • Don’t run: sudo npm install -g some_package (use local installs instead)
  • Some configurations require logout/login to take effect
  • GPU drivers may require reboot
  • Always verify system state after driver installations
  • GRUB Configuration: Always backup your working GRUB config before making changes
  • Wallpapers are included in the hypr/wallpapers directory
  • The GRUB theme Hyacine provides a modern boot experience with OS detection. (Maybe you are fond of her☺️)

Arch Linux Post-Install Guide
https://rukkhadevata123.github.io/2025/06/03/arch-post-install/
作者
Dawn Chirps
发布于
2025年6月3日
许可协议