Skip to content

Aashutosh31/dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

    ___              __          __             __
   /   | ____ ______/ /_  __  __/ /_____  _____/ /_
  / /| |/ __ `/ ___/ __ \/ / / / __/ __ \/ ___/ __ \
 / ___ / /_/ (__  ) / / / /_/ / /_/ /_/ (__  ) / / /
/_/  |_\__,_/____/_/ /_/\__,_/\__/\____/____/_/ /_/

Arch Linux · Omarchy · Hyprland — my daily driver, versioned.

Arch Linux Hyprland Omarchy Shell License: MIT


$ cat table_of_contents.txt


📸 Screenshots

Desktop Terminal
Desktop Terminal
Hyprland + Waybar + Tokyo Night Ghostty + Fastfetch + Starship
Neovim Yazi
Neovim Yazi
LazyVim, Tokyo Night File manager in action

✨ Features

🖥️ WM Hyprland on Omarchy
🎨 Theme Tokyo Night, applied system-wide
System Info Fastfetch
Prompt Starship
📝 Editor Neovim (LazyVim)
📂 File Manager Yazi
🐚 Shell Zsh
👻 Terminal Ghostty
📊 Monitor Btop
🎵 Audio Wiremix
🔊 OSD SwayOSD
🚀 Bar Waybar
🖼️ Wallpapers Curated collection included

📦 Included Configurations

alacritty · atuin · btop · fastfetch · ghostty · hyprland · kitty
lazydocker · lazygit · mise · mpv · neovim · starship · swayosd
tmux · voxtype · walker · waybar · wiremix · yazi · zellij · zsh

📥 Installation

Option A — One-shot bootstrap (fresh machine)

curl -fsSL https://raw.githubusercontent.com/Aashutosh31/dotfiles/main/bootstrap.sh | bash

Handles everything: installs git/yay if missing, clones the repo, and runs the installer.

Option B — Manual (already have the repo cloned, or want to review first)

git clone https://github.com/Aashutosh31/dotfiles.git
cd dotfiles
chmod +x install.sh
./install.sh

🔍 What install.sh Actually Does

Click to expand the step-by-step breakdown
  1. Resolves the repo path — works regardless of where you run it from ($REPO = script's own directory).
  2. Syncs official packages — runs pacman -Syu --needed against packages/pacman.txt.
  3. Installs AUR packages — if yay is present, installs everything in packages/aur.txt non-interactively (--answerclean None --answerdiff None). Skips gracefully if yay isn't found.
  4. Creates a timestamped backup at ~/.dotfiles-backup/<YYYY><MM><DD>-<HHMMSS>/ — see Backups & Rollback below.
  5. Backs up and replaces each config — for every tool in the list (alacritty, atuin, btop, fastfetch, ghostty, hypr, kitty, lazydocker, lazygit, mise, mpv, nvim, starship, swayosd, tmux, voxtype, walker, waybar, wiremix, yazi, zellij):
    • if a matching config exists in this repo, your current ~/.config/<tool> is backed up first, then replaced.
  6. Backs up and replaces dotfiles~/.zshrc and ~/.XCompose get the same backup-then-overwrite treatment.
  7. Prints the backup location so you always know exactly where your previous setup went.

Nothing is deleted without a backup first. Every overwrite is preceded by a copy (cp -a) into the timestamped backup folder.


🥾 What bootstrap.sh Actually Does

Click to expand

Bootstrap is for a brand-new machine that doesn't have this repo (or possibly git/yay) yet:

  1. Verifies you're on Arch — checks for pacman, exits cleanly otherwise (no Arch, no dice).
  2. Installs Git if missing.
  3. Installs yay if missing — clones and builds it from the AUR via makepkg -si.
  4. Clones or updates the repo — clones fresh to ~/dotfiles if it doesn't exist, or git pulls if it does.
  5. Makes scripts executableinstall.sh and everything in scripts/.
  6. Hands off to install.sh to do the actual config installation described above.

In short: bootstrap.sh gets a bare Arch install to the point where install.sh can run — then runs it.


📂 Repository Structure

.
├── alacritty/
├── atuin/
├── btop/
├── fastfetch/
├── ghostty/
├── home/          # ~/.zshrc, ~/.XCompose
├── hypr/
├── kitty/
├── lazydocker/
├── lazygit/
├── mise/
├── mpv/
├── nvim/
├── omarchy/
├── packages/       # pacman.txt, aur.txt
├── scripts/
├── starship/
├── swayosd/
├── tmux/
├── voxtype/
├── walker/
├── wallpapers/
├── waybar/
├── wiremix/
├── yazi/
└── zellij/

🛠 Requirements

  • Arch Linux
  • Omarchy
  • yay (auto-installed by bootstrap.sh if missing)
  • Git

🔄 Backups & Rollback

Every run of install.sh creates a fresh timestamped snapshot before touching anything:

~/.dotfiles-backup/20260701-143022/

To roll back a specific config manually:

cp -a ~/.dotfiles-backup/<timestamp>/.config/<tool> ~/.config/


🖼️ Wallpaper Credits

The wallpapers in this repo are sourced from michaelScopic/Wallpapers — a large, curated wallpaper collection pulled largely from the r/unixporn community.

⚠️ That repo is archived on GitHub and development has moved to Codeberg: codeberg.org/michaelScopic/Wallpapers

All credit for the wallpaper collection goes to the original author and contributors — only a subset is mirrored here for use with this setup.


📜 License

MIT License

built in the terminal, for the terminal

About

Personal Arch Linux + Omarchy + Hyprland dotfiles with a production-ready development environment.

Topics

Resources

License

Stars

1 star

Watchers

0 watching

Forks

Packages

 
 
 

Contributors