zsh · vscode · kitty · starship · git · gh · uSql
git clone https://github.com/GourangaDasSamrat/dotfiles.git ~/dotfiles
cd ~/dotfiles/scripts && ./install.shdetects your os · installs every tool · symlinks every config · done
want control?
./setup.shlets you pick exactly what to run.
| command | what it does |
|---|---|
ls |
eza — icons, git status, long format. no flags needed |
tab |
fzf-tab — fuzzy search with live previews while you type |
mkdir |
asks to git init, creates README, makes the first commit |
rm |
shows what dies. asks before it runs |
extract |
detects and unpacks any archive format. just point at it |
compress |
fzf menu picks the format. then it compresses |
serve |
python http server with port conflict detection |
backup |
timestamped .tar.gz of anything. one command |
env-save |
encrypts .env into pass at any custom path. multi-line safe |
env-load |
pulls secrets from pass into .env or any custom filename |
lock-vault |
clears GPG agent cache immediately. locks your secret store |
dzw |
Use dzw [key] domain.com to perform a filtered WHOIS lookup, either via a predefined server key or the default system server. |
isup |
checks if a site is live. follows redirects and handles connection errors gracefully |
inspect |
deep-dives into headers. extracts server info, security headers, and content types |
myip |
fetches public info and show IP address, city, region, and ISP |
t |
show timestamps before log |
expose |
expose localhost port on internet using slim tunnel |
prefix ctrl+a splits | and -
navigate h · j · k · l windows alt + 1–5
mouse on persist auto-save every 5 min
tmux-resurrect + tmux-continuum restore your exact layout, panes, and working directories after every reboot.
| profile | formatter |
|---|---|
| frontend | prettier + eslint |
| backend | prettier + eslint |
| c / c++ | clangd |
| go | gopls + goimports |
| database | prettier-sql |
| wiki | prettier |
| rust | rust-analyzer |
font stack → Operator Mono · Cartograph CF · JetBrains Mono — with italic keywords and full ligatures.
snippets for C++ (main, competitive programming, leetcode template) and Go (main, package, iferr, interface).
a commit-msg hook blocks any message that doesn't match type(scope): subject.
you get a clear error, valid types, and examples — every time.
a pre-push hook blocks push without password, you can expose the password on you shell script nameed with ,GIT_PUSH_PASS.
git lg # pretty graph log
git today # commits since midnight
git yesterday # yesterday's commits
git mine # your commits only
git undo # soft reset the last commit
git unstage # unstage all staged files
git last # full detail of the last commit# --- Present (Current Activity) ---
gh today # Every commit with timestamps since midnight (all repos)
gh today-summary # Repo-wise summary + total commit count for today
gh today-stats # Full profile-style contributions for today
gh this-month-summary # Accurate monthly report (handles 1000+ commits)
gh this-month-stats # Full profile-style contributions for this month
gh this-year-summary # Total commits this year (handles 1200+ accurately)
gh this-year-stats # Full profile-style contributions for this year
gh this-year-languages # Top 5 languages used this year (by bytes)
gh streak # Calculate your current and longest commit streak
# --- Past (Historical Activity) ---
gh yesterday # Every commit with timestamps from yesterday (all repos)
gh yesterday-summary # Repo-wise summary + total commit count for yesterday
gh yesterday-stats # Full profile-style contributions for yesterday
gh last-month-summary # Accurate monthly report for previous month
gh last-month-stats # Full profile-style contributions for last month
gh last-year-summary # Full contribution summary for the previous year
gh last-year-stats # Full profile-style contributions for last year
gh last-year-languages # Top 5 languages used in the previous year
# --- Utilities ---
gh prs # Your PRs in the current repo with status
gh open # Open the current repo in your default browser
gh co # Interactive PR checkout
Starship — two-line prompt. directory + git on line one. language modules inline — node, go, python, rust, java, and more. shows vs code version in any directory.
| dev essentials | git · gh · git-lfs · build-essential · stow · jq · httpie |
| terminal utilities | starship · curl · wget · whois · pass · openssl · moreutils |
| shell & files | zsh · eza · bat · fzf · fd · ripgrep |
| editors & tools | helix · alacritty · mpv |
| code formatters | shfmt · just |
| shell plugins | oh-my-zsh · autosuggestions · syntax-highlighting · fzf-tab |
| tmux plugins | tpm · catppuccin · resurrect · continuum |
| go tools (opt) | goimports · gopls · golangci-lint · govulncheck · gotests · air · goreleaser · usql · slim · eget · sheets · roumon |
| python tools (opt) | ytm-player (via uv) |
| rust tools (opt) | cargo-watch · cargo-cache · cargo-dist · cargo-modules |
# automated — install everything
./install.sh
# interactive — choose what to run
./setup.shscripts/
├── install.sh full automated setup (runs lib/ scripts)
├── setup.sh interactive menu — pick and choose
│
├── lib/ modular setup scripts (standalone)
│ ├── softwares.sh install base tools & language runtimes
│ ├── plugins.sh oh-my-zsh · tpm · zsh & tmux plugins
│ ├── wallpapers.sh clone wallpapers repository
│ ├── fonts.sh use apples's font on linux
│ └── dotfiles.sh symlink configs with gnu stow
│
├── sdk-tools/ optional language-specific installers
│ ├── cargo-tools.sh rust cli tools (cargo-watch, cargo-cache, etc.)
│ ├── go-tools.sh go dev tools (gopls, golangci-lint, goreleaser, etc.)
│ └── uv-tools.sh python cli tools via uv package manager
│
├── utils/
│ └── detect.sh os · package manager · sudo detection
│
└── config/
└── wallpapers.url wallpapers repository url
Every script in lib/ and sdk-tools/ runs standalone. Source only what you need.
./install.sh — Full automated setup
- runs
lib/softwares.sh→ base tools + language runtimes - runs
lib/plugins.sh→ shell plugins - runs
lib/wallpapers.sh→ wallpapers repo - runs
lib/fonts.sh→ apple fonts - runs
lib/dotfiles.sh→ symlink configs - ⏭️ skips optional sdk-tools
./setup.sh — Interactive menu
- displays all available scripts (lib/ + sdk-tools/)
- you choose which ones to run
- includes optional language tools (Go, Rust, Python)
Optional Language Tools — Run individually
./sdk-tools/go-tools.sh # install go dev tools
./sdk-tools/cargo-tools.sh # install rust cli tools (requires cargo)
./sdk-tools/uv-tools.sh # install python tools (requires uv)Add --update flag to force reinstall: ./sdk-tools/go-tools.sh --update
| Category | Documentation |
|---|---|
| git | send-email setup |
| setup | manual install guide |
| vs code | extensions · keybindings · termux setup |
| helix | language servers |
| termux | native desktop · proot debian |
git · homebrew (macOS only) — brew.sh