- Install the config
- Dependencies
- Neovim
- Fonts
- ZSH
- Screen
- Wallpapers
- VSCode
- Basic shortcuts
- Full dependencies
- Documentation
git clone https://github.com/souli-a/dotfiles.git
cd dotfiles
rm -rf .git
cp -R . ~/NOTE: Be sure to have git and nano or any text editor installed.
To download the needed dependencies, you must uncomment all libraries from the /etc/pacman.conf file if you haven't done it yet.
Uncomment every libraries at the bottom of the file:
sudo nano /etc/pacman.confThis should be looking like this for every libraries:
[...]
Include = [...]
Also, you can uncomment ParallelDownloads (in the same /etc/pacman.conf file) and put a bigger number if you have a good internet connexion, for example:
ParallelDownloads = 50Run this to download the dependencies (these one from the official repository):
sudo pacman -S sof-firmware nano git dunst rofi pamixer slurp \
pipewire pipewire-alsa pipewire-pulse pipewire-jack \
wireplumber zsh alacritty polkit polkit-gnome \
libnotify gnome-themes-extra xdg-desktop-portal \
xdg-desktop-portal-gtk xdg-desktop-portal-hyprland \
hyprland neovim typescript ripgrep fd prettier mdformat \
python python-pip eslint stylua man-db xdg-utils \
feh mpv noto-fonts-extra noto-fonts-emoji hyprpaper \Install yay if you haven't done it:
git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -siRun this to download the dependencies (these ones from the AUR repository):
yay -S waybar-hyprland-git wlr-randr visual-studio-code-binRun this for certain needed dependencies:
python3 -m pip install --user --upgrade pynvimAnd run this too, to update and install everything in Neovim:
nvim +"lua require('lazy').sync({wait=true}); vim.cmd('qa!')" &&
nvim -c ":TSUpdate" +qa &&
nvim -c ":MasonUpdate" +qaNOTE: Shortcuts for Neovim are present in configuration files, feel free to explore it.
If you want to use the default font for this custom DE, you will need to run this, in order to scan all the fonts directories and inform the system of the roboto-mono font folder here ~/.local/share/fonts/roboto-mono/:
fc-cacheIn the ~/.zshrc file there are 2 things activated:
- A zsh theme.
- A history search plugin.
If you want to use them, you need to install them by executing this:
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ~/.config/zsh/powerlevel10k/
git clone --depth=1 https://github.com/zsh-users/zsh-history-substring-search.git ~/.config/zsh/zsh-history-substring-search/After this, you will run this to use zsh as the default shell:
chsh -s /usr/bin/zshAnd to reload the zsh configuration from the ~/.zshrc file, run this:
source ~/.zshrcMy screen name for Wayland is HDMI-A-2 so I put it in ~/.config/hypr/hyprpaper.conf and ~/.config/hypr/hyprland.conf.
If your screen name is different, you need to change it in these two files, hyprpaper.conf and hypr.conf.
This is the command to know your screen name (be sure to have wlr-randr installed):
wlr-randr | grep "VGA\|HDMI\|DisplayPort\|DVI"To change the wallpaper, you just need to change the directory where you store the wallpapers in ~/.config/hypr/hyprpaper.conf:
nano ~/.config/hypr/hyprpaper.confpreload = ~/<the-path-of-your-wallpaper>
wallpaper = HDMI-A-2,~/<the-path-of-your-wallpaper>
For the VSCode theming and options related to ~/.config/Code/User/settings.json, install this (icons theme) and this (color theme).
-
Shutdown the PC:
SUPER + SHIFT + PARENRIGHT -
Reboot the PC:
SUPER + SHIFT + EQUAL. -
Launch Alacritty (terminal):
SUPER + G. -
Launch Rofi (search apps):
SUPER + A. -
Launch VSCode:
SUPER + E. -
Launch Google Chrome:
SUPER + D. -
Put the window in fullscreen:
SUPER + SHIFT + F. -
Kill the window (close):
SUPER + SPACE.
You can edit and see all the Hyprland shortcuts in the ~/.config/hypr/hyprland.conf file.
You can also modify you keyboard layout in hyprland.conf.
NOTE: Don't install it if you don't know what you are doing.
This is my full Arch installation dependencies:
# AUR repository
pnpm anki google-chrome waybar-hyprland-git wlr-randr visual-studio-code-bin# Official repository
ntfs-3g ffmpeg4.4 dunst rofi mesa lib32-mesa pamixer \
htop slurp qt5-wayland qt6-wayland obsidian otf-opendyslexic-nerd \
pipewire pipewire-alsa pipewire-pulse pipewire-jack \
wireplumber nodejs zsh alacritty polkit polkit-gnome \
libnotify gammastep gnome-themes-extra xdg-desktop-portal \
xdg-desktop-portal-gtk xdg-desktop-portal-hyprland \
hyprland neovim mdformat prettier typescript ripgrep fd eslint stylua \
python python-pip wl-clipboard \
man-db nnn xdg-utils feh yt-dlp mpv gnu-free-fonts \
noto-fonts-extra noto-fonts-emoji thunar hyprpaper tree \
base linux-zen linux-firmware sof-firmware base-devel \
efibootmgr nano intel-ucode gitFor all the specific options present in each tool configuration, please consult the corresponding documentation.
