Post

Dotfiles: Customize Your Linux Desktop

A step-by-step guide to install and use the ultimate dotfiles for a personalized Linux experience.

Dotfiles: Customize Your Linux Desktop

Dotfiles: A Step Towards a Personalized Linux Desktop

Dotfiles are the heart of a customized Linux desktop environment. They store your configurations for various tools, window managers, and themes. In this post, I’ll guide you through installing and using my dotfiles to transform your desktop into a visually stunning and functional workspace.

The dotfiles are available on GitHub: dotfiles.

Rice Demo

Here’s a sneak peek of the desktop after applying these dotfiles:

Screenshot 1

Screenshot 2

Prerequisites

  • A Linux distribution (preferably Arch Linux).
  • Basic knowledge of terminal commands.
  • Internet connection.

Installation Steps

  1. Clone the Repository
    1
    
    git clone https://github.com/paulrounak/dotfiles.git
    
  2. Install an AUR Helper For example, yay can be installed in the "$HOME"/.srcs directory:
    1
    2
    
    git clone https://aur.archlinux.org/yay.git "$HOME"/.srcs/yay
    cd "$HOME"/.srcs/yay/ && makepkg -si
    
  3. Install Dependencies
    1
    
    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 pfetch picom polybar ranger rofi scrot slop xclip zathura zathura-pdf-mupdf zsh
    
  4. Create Default Directories
    1
    2
    3
    4
    
    mkdir -p "$HOME"/.config
    mkdir -p "$HOME"/Pictures/wallpapers
    mkdir -p /usr/local/bin
    mkdir -p /usr/share/themes
    
  5. Copy Configs, Scripts, Fonts, Wallpaper, and Zsh Config
    1
    2
    3
    4
    5
    6
    
    cp -r ./config/* "$HOME"/.config
    cp -r ./wallpapers/* "$HOME"/Pictures/wallpapers
    cp ./.zshrc "$HOME"
    sudo cp -r ./scripts/* /usr/local/bin
    sudo cp -r ./fonts/* /usr/share/fonts
    sudo cp ./paul.zsh-theme /usr/share/oh-my-zsh/custom/themes
    
  6. Set Permissions, Default Shell, and Refresh Font Cache
    1
    2
    3
    4
    
    sudo chmod +s /usr/bin/light
    chsh -s /bin/zsh
    sudo chsh -s /bin/zsh
    fc-cache -fv
    
  7. Install GTK Theme
    1
    2
    3
    4
    
    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
    

Keybinds

Here are the essential keybinds for quick navigation and actions:

Keybind Function
Win + Enter Launch terminal (alacritty)
Win + Shift + Q Close window
Win + R Resize mode
Win + A Rofi open windows menu
Win + D Rofi menu
Win + I Lock screen
Win + Shift + R Restart i3

For the full list of keybinds, refer to the i3 config file.

Troubleshooting

If some Polybar modules are not working:

  • Open the Polybar configuration file: $HOME/.config/polybar/config.ini.
  • Look for lines with ; Change it for yourself and follow the instructions provided below them.

Conclusion

With these dotfiles, you can create a polished, efficient, and personalized Linux desktop environment. Feel free to fork and adapt this repository to suit your preferences. If you like this setup, consider dropping a star on the GitHub repository!

Happy ricing!

This post is licensed under CC BY 4.0 by the author.