Arch Linux GUI setup (I3WM Termite Nerd fonts) - Pipe-Runner/dotfile-manager GitHub Wiki
With a basic installation ready, we can now finally start to install xserver and a functional UI.
1. XServer and Xinit installation
sudo pacman -S xorg
To start window managers / desktop environments manually without a display manager, one can make use of startx command. To make use of it, install the following package:
sudo pacman -S xorg-xinit
Users can optionally make changes to the ~/.xinitrc file to start WMs/DEs by default with the startx command.
2. i3WM
Start by installing the i3 group:
sudo pacman -S i3
pip install --user i3ipc
Note: i3-gaps will be installed by default.
Now create a new file in the home directory with the name of .xinitrc with the following content:
exec i3
This will start i3 by default by using the startx
command.
Install Polybar
yay -S polybar
Note Don't forget to make install.sh in polybar config folder executable.
Install utilities
This includes a dmenu alternative, a file explorer, a wallpaper and screenshot tool and a window compositor.
sudo pacman -S rofi nautilus gvfs-mtp feh screenfetch compton
Go ahead and install a tty toy too:
yay -S tty-clock figlet lolcat
sudo pacman -S neofetch
3. Fonts
We will make use of the patched fonts. I am a big fan of the Fira Code and we need a variant that comes patched with Nerd Fonts so that we can make use of the Glyph in i3 and the zsh shell.
https://github.com/ryanoasis/nerd-fonts/pull/356
A GUI font-manager
Having a GUI based font manager will make changing and testing new fonts a hell lot easier. We will install one from Arch
yay -S font-manager
Note: While using font names, use whatever name the GUI tool shows.
Install all necessary fonts from AUR
Most of the basic fonts get installed while installing VS Code, Browser and other such UI based applications, but specific fonts need to be downloaded via AUR. We will use Fira-Code Nerd Fonts for our code editor, i3wm and GTK applications.
yay -S nerd-fonts-fira-code
To use it, we have to look for FuraCode Nerd Font.
4. Terminal emulator
sudo pacman -S termite
Add this ~/.config/gtk-3.0/gtk.css with the following content to adjust padding in termite:
VteTerminal, vte-terminal {
padding: 16px;
}
5. Install and configure ZSH
sudo pacman -S zsh
chsh -s /usr/bin/zsh
Note: Now users are required to use .zshrc and .zprofile
Install oh-my-zsh
git clone https://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh
Note: Users should make sure the $ZSH is point to the right directory in .zshrc for this to work correctly.
Install Space-ship prompt Theme for ZSH
https://github.com/denysdovhan/spaceship-prompt.git "$ZSH_CUSTOM/themes/spaceship-prompt"
ln -s "$ZSH_CUSTOM/themes/spaceship-prompt/spaceship.zsh-theme" "$ZSH_CUSTOM/themes/spaceship.zsh-theme"
and then add the following to .zshrc
ZSH_THEME="spaceship"
Use https://denysdovhan.com/spaceship-prompt/ for reference.
Installing PowerLevel10k for ZSH theme (optional)
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git $ZSH_CUSTOM/themes/powerlevel10k
6. Copy / Paste Config files for i3, rofi, termite and more
7. Install lxappearance (GTK3+)
This tool will allow us to change the themes and icons being used by GTK2 and GTK3 bases apps on a system wide level.
sudo pacman -S community/lxappearance-gtk3
Then download the theme and icon pack as needed from AUR. It will get listed in the menu.
Note: I would recommend using Paper icons and Numix dark-blue theme.
Also Qt based applications will automatically use GTK2 themes.
8. Install audio utilities
We will install audio drivers and a GUI tool to adjust audio related properties.
sudo pacman -S alsa-utils pulseaudio pavucontrol
This will let you use the alsamixer TUI utility to control audio. This will also allow us to use the PulseAudio Volume Controls GUI tool.
If it fails to connect to pulseaudio, use the follow and try again:
pulseaudio --check
pulseaudio -D
10. Install i3 lock
sudo pacman -S fortune-mod
git clone https://github.com/AakashMallik/fortune-i3lock.git
11. Install video player
sudo pacman -S vlc
12. Web browser and Discord
sudo pacman -S brave-bin
sudo pacman -S discord
13. Install OBS, Kdenlive and GIMP
sudo pacman -S obs-studio
sudo pacman -S kdenlive
sudo pacman -S gimp
14. Install Spotify
yay -S spotify