Arch Linux Installation Guide
Using archinstall
Step 1: Boot from Installation Media
- Download the Arch Linux ISO from the official website.
Put it on a Ventoy USB
Step 2: Verify Internet Connection
- Check network connection:
ip a ping archlinux.org - If no connection, configure it using
iwctlfor Wi-Fi:iwctl # For a cabled connection, ensure the Ethernet cable is plugged in. # Then, use the following command to enable the connection: dhcpcd
Step 3: Update System Clock
timedatectl set-ntp true
Step 4: Start archinstall
- Run the guided installer:
archinstall - Follow the prompts to:
- Select a language.
- Choose a disk for installation.
- Configure partitions (automatic or manual).
- Set up users, passwords, and hostname.
- Select a desktop environment or base system.
- Configure additional options (e.g., bootloader, network).
Step 5: Reboot into Installed System
- Exit the installer after completion.
- Reboot the system:
reboot - Remove the installation media.
Step 6: Post-Installation
- Disable the mouse acceleration.
- Check your power management settings (it's a bit too conservative by default).
- Update the system:
sudo pacman -Syu
Step 7: Set Bash as the Default Shell (optional)
- Verify that Bash is installed:
konsole echo $0 - If it's not bash change the default shell:
chsh -s /bin/bash - Log out and log back in to apply the changes.
- Take care of your sudo
sudo echo "$USER ALL=(ALL:ALL) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/00_$USER
Step 8: Install Useful Utilities
- Update the package database:
sudo pacman -Syu - Install other useful utilities:
sudo pacman -Sy git btop wget curl base-devel - Optionally, install AUR helper like
yayfor additional packages:git clone https://aur.archlinux.org/yay.git cd yay makepkg -si - Install Brave browser:
yay brave - Install
zoxide(a smartercdcommand):yay zoxide echo 'eval "$(zoxide init --cmd cd bash)"' >> ~/.bashrc . ~/.bashrc - Enable sshd:
sudo systemctl enable sshd --now - Install
eza:yay eza echo "alias ll='eza -al --color=always --group-directories-first --icons'" >> ~/.bashrc - Install
bat:yay bat echo "alias cat='bat --style=header -Pfs'" >> ~/.bashrc . ~/.bashrc - Install
fdand "replace"find:yay fd echo "alias find='fd -ual -c always'" >> ~/.bashrc . ~/.bashrc - Install
Neovim(a modern Vim-based text editor):sudo pacman -Sy luarocks neovim rustup ripgrep lazygit bottom rustup default stable cargo install --locked tree-sitter-cli cd ~ git clone --depth 1 https://github.com/AstroNvim/template ~/.config/nvim rm -rf ~/.config/nvim/.git nvim - Configure starship:
yay starship echo "eval \$(starship init bash)" >> ~/.bashrc . ~/.bashrc