Skip to content

prmditya/dotfiles

Repository files navigation

My Dotfiles

Welcome to my dotfiles repository!
Here I store and manage my personal configurations for my Linux environment (specifically Arch Linux) using GNU Stow and Git.

The primary goal of this repository is to quickly bootstrap my development environment on new machines and maintain consistency across devices.


✨ Screenshots

Hyprland:

Hyprland screenshot

dwm (with patches: vanitygaps, attachbelow, alwayscenter, systray, xrdb):

dwm screenshot

📁 Directory Structure

.
├── archive/          # Archived/legacy configs (i3, polybar, etc.)
├── dunst/            # Notification daemon config
├── suckless/         # suckless software that im using
│   ├── dwm/          # dwm source and patches
│   │   └── patches/  # Custom patches used
│   └── st/           # st source and patches
│       └── patches/  # Custom patches used
├── fastfetch/
├── ghostty/
├── hypr/             # Hyprland setup
├── nvim/             # Neovim config
├── picom/            # Compositor settings
├── redshift/         # Color temperature config
├── rofi/             # Rofi launcher config
├── scripts/          # Utility shell scripts
│   └── scripts/
│       ├── screenshot.sh
│       ├── dwmbar.sh
│       ├── pick-wallpaper.sh
│       └── ...
├── vscode/           # Visual Studio Code settings
├── waybar/
├── wofi/
├── zed/
├── zellij/
├── zsh/
└── README.md

⚙️ Installation & Usage

This repository is designed to be used with GNU Stow to manage dotfiles via symlinks.

🔧 Prerequisites

Make sure the following are installed:

sudo pacman -S git stow

🚀 Setup Instructions

  1. Clone this repo to $HOME:

    git clone https://github.com/prmditya/dotfiles.git ~/dotfiles
    cd ~/dotfiles
  2. Remove existing config files that will be replaced by symlinks: Make sure to back them up or move them into your dotfiles folder structure.

    rm ~/.zshrc
    rm ~/.wezterm.lua
    rm ~/.config/Code/User/settings.json
    rm ~/.config/Code/User/keybindings.json
  3. Use stow to symlink configurations:

    stow zsh
    stow nvim
    stow dunst
    stow rofi
    stow scripts
    stow vscode
    stow hypr
    stow ghostty
  4. Reload your shell:

    source ~/.zshrc
  5. (Optional) Build dwm:

    stow dwm
    cd ~/dwm
    sudo make clean install

🧩 dwm Custom Patches

These patches have been applied to the dwm build:

All patches are stored in:
~/dwm/patches/ # after stow dwm or in ~/dotfiles/dwm/dwm/patches/


🪪 License

These dotfiles are for personal use and learning.
Some configurations include code from upstream open-source projects like Suckless.


Thanks for visiting!
Feel free to fork or star ⭐ this repo if you find it useful.