The Arch Linux & i3wm dotfiles!
This is the third version of my dotfiles, as I gain more experience I am able to create more profesional dotfiles.
However, if you want to check older version see v2 branch.
- OS: Arch Linux
- WM: i3-gaps
- Terminal: alacritty
- Bar: polybar
- Shell: zsh
- Compositor: picom
- Application Launcher: rofi
- Notification Deamon: dunst
git clone -b v3 --depth 1 https://www.github.com/keyitdev/dotfiles.git
cd dotfiles
chmod +x install-on-arch.sh
./install-on-arch.sh
Warning: Remember to always read the scripts you run from the internet first.
Note: Last time I tested the installation script on 31 July 2023, Everything worked fine.
-
Clone this repository.
git clone -b v3 --depth 1 https://www.github.com/keyitdev/dotfiles.git
-
Install an AUR helper (for example,
yay
in"$HOME"/.srcs
).git clone https://aur.archlinux.org/yay.git "$HOME"/.srcs/yay cd "$HOME"/.srcs/yay/ && makepkg -si
-
Install dependencies.
yay -S --needed acpi alsa-utils base-devel curl git pulseaudio pulseaudio-alsa xorg xorg-xinit alacritty btop code dunst feh ffcast firefox i3-gaps i3lock-color i3-resurrect libnotify light mpc mpd ncmpcpp nemo neofetch neovim oh-my-zsh-git pacman-contrib papirus-icon-theme picom polybar ranger rofi scrot slop xclip zathura zathura-pdf-mupdf zsh
-
Create default directories.
mkdir -p "$HOME"/.config mkdir -p /usr/local/bin mkdir -p /usr/share/themes mkdir -p "$HOME"/Pictures/wallpapers
-
Copy configs, scripts, fonts, wallpaper, vsc configs, zsh config.
cp -r ./config/* "$HOME"/.config sudo cp -r ./scripts/* /usr/local/bin sudo cp -r ./fonts/* /usr/share/fonts cp -r ./wallpapers/* "$HOME"/Pictures/wallpapers sudo cp ./keyitdev.zsh-theme /usr/share/oh-my-zsh/custom/themes cp ./.zshrc "$HOME"
-
Make Light executable, set zsh as default shell, update nvim extensions, refresh font cache.
sudo chmod +s /usr/bin/light chsh -s /bin/zsh sudo chsh -s /bin/zsh nvim +PackerSync fc-cache -fv
-
Install vsc theme.
code --install-extension zhuangtongfa.Material-theme cp ./vsc/settings.json "$HOME"/.config/Code\ -\ OSS/User
-
Install gtk theme.
mkdir -p "$HOME"/.config/gtk-4.0 git clone https://github.com/Fausto-Korpsvart/Rose-Pine-GTK-Theme sudo cp -r ./Rose-Pine-GTK-Theme/themes/RosePine-Main-BL /usr/share/themes/RosePine-Main sudo cp -r ./Rose-Pine-GTK-Theme/themes/RosePine-Main-BL/gtk-4.0/* "$HOME"/.config/gtk-4.0
-
Install sddm and sddm flower theme.
yay -S --needed qt5-graphicaleffects qt5-quickcontrols2 qt5-svg sddm sudo git clone https://github.com/keyitdev/sddm-flower-theme.git /usr/share/sddm/themes/sddm-flower-theme sudo cp /usr/share/sddm/themes/sddm-flower-theme/Fonts/* /usr/share/fonts/ echo "[Theme] Current=sddm-flower-theme" | sudo tee /etc/sddm.conf
Base: acpi alsa-utils base-devel curl git pulseaudio pulseaudio-alsa xorg xorg-xinit
Required: alacritty btop code dunst feh ffcast firefox i3-gaps i3lock-color i3-resurrect libnotify light mpc mpd ncmpcpp nemo neofetch neovim oh-my-zsh-git pacman-contrib papirus-icon-theme picom polybar ranger rofi scrot slop xclip zathura zathura-pdf-mupdf zsh
Sddm: qt5-graphicaleffects qt5-quickcontrols2 qt5-svg sddm
Emoji fonts:: noto-fonts noto-fonts-cjk noto-fonts-emoji noto-fonts-extra
- Music Player: mpd & ncmpcpp
- Editor: neovim / vscode
- Lockscreen: i3lock-color
- Display Manager: sddm
- File manager: ranger / nemo
- Pdf reader: zathura
- Monitor of Resources: btop
- Shell Framework: Oh-My-Zsh
- Vscode Theme: One dark pro
- Neovim Theme: AstroNvim
- Icons: Papirus dark
- GTK Theme: Rose Pine
- Display Manager Theme: Sddm-flower-theme
- Icons: Feather
- Interface Font: Open sans
- Monospace Font: Roboto mono
- Polybar Font: Iosevka nerd font
These are the basic keybinds. Read through the i3 config for more keybinds.
Note: Win
refers to the Super/Mod
key.
Keybind | Function |
---|---|
Win + Enter |
Launch terminal (alacritty) |
Win + Shift + Q |
Close window |
Win + Q |
Stacking layout |
Win + W |
Tabbed layout |
Win + E |
Default layout |
Win + R |
Resize mode |
Win + T |
Restore layout |
Win + Y |
Save layout |
Win + A |
Rofi open windows menu |
Win + S |
Rofi full menu |
Win + D |
Rofi menu |
Win + Z |
Rofi bookmarks |
Win + X |
Rofi powermenu |
Win + C |
Rofi screenshot script |
Win + G |
Gaps settings |
Win + V |
Set vertical orientation |
Win + H |
Set horizontal orientation |
Win + I |
Lock screen |
Win + O |
Show polybar |
Win + P |
Hide polybar |
Win + B |
Move workspace to another monitor |
Win + N |
Dual monitor mode |
Win + M |
Single monitor mode |
Win + arrows (jkl;) |
Resizing, moving windows |
Win + Shift + E |
Exit i3 |
Win + Shift + R |
Restart i3 |
-
Some polybar modules are not working?
- Try changing the variables.
- Open the polybar configuration
"$HOME"/.config/polybar/config.ini
. - Found
; Change it for yourself
line. - Follow the commands that are written below the
; Change it for yourself
line.
-
MPD not working?
- Check if any other program is using port 6600 (http://127.0.0.1:6600/).
-
Everything is lagging? Screen is tearing?
- Edit picom config.
- This can be hard to solve, because if picom does not work, the whole screen may be frozen or even dark. So first try to kill the picom process.
- (Blindly) click
Win+Enter
. - (Blindly) type
killall picom
. - (Blindly) press
Enter
. - Open picom configuration
"$HOME"/.config/picom/picom.conf
. - Change picom backend from
backend = "glx";
tobackend = "xrender";
. - Click
Win+Shift+R
.
You can support me simply by dropping a star on github or giving a subscription on YouTube.
Big thanks to: adi1090x, Totoro.
Thanks to all contributors! :D
Feel free to create issue or pull request.
If you need any help, you can ask questions here on discussions or contact me on discord / reddit.
Distributed under the GPLv3+ License.
Copyright (C) 2022 Keyitdev.