My overbaked, labour of love dotfiles for both osx / archlinux, mostly everything I need to bootstrap a machine into a productive state
- atuin — syncable, searchable shell history
- ghostty — gpu-accelerated terminal
- kitty — hackable, scriptable terminal emulator
- oh my zsh — zsh framework and plugins
- starship — fast, cross-shell prompt
- tmux — terminal multiplexer
- tmux-plugin-manager (tpm) — plugin manager for tmux; installs configured plugins
- zellij — terminal workspace / tmux alternative
- zsh — default interactive shell
- bash — up-to-date bash shell
- bat — syntax-highlighting
catreplacement - coreutils — gnu core utilities
- diffutils — gnu
diffwith color support - dua-cli — disk usage analyzer (
ncdualternative) - eza — modern
lsreplacement - fd — user-friendly
findreplacement - fzf — fuzzy finder for files, history, and more
- gawk — gnu awk
- git — version control
- glow — terminal markdown viewer
- ispell — spell checker
- less — pager
- lesspipe — preprocessors for
lesson many file types - lsd —
lsreplacement with icons - readline — line-editing library
- ripgrep — fast recursive grep
- rsync — up-to-date file sync utility
- tealdeer — fast
tldrcommunity man-page summaries - the silver searcher — code search (
ag) - thefuck — suggests fixes after mistyped commands
- wget — non-interactive http downloads
- zoxide — smart directory jumping (
z)
- cheat — customizable cheat sheets (like tldr)
- cheat community cheatsheets — upstream cheat sheet collection
- neovim — modal text editor
- obsidian — markdown notes and knowledge base
- pandoc — universal document converter
- visual studio code — gui editor / ide
- awscli — aws api command-line interface
- bruno — open-source api client (collections on disk)
- btop — resource monitor in the terminal
- ctags — tag indexes for source navigation
- entr — run commands when files change
- gh — github cli
- ghq — clone and organize remote repos locally
- git-delta — syntax-highlighted git diffs and pagers
- gnupg — encryption and signing
- just — command runner / makefile alternative
- lazygit — terminal ui for git
- mise — polyglot runtime and tool version manager
- nmap — network discovery and port scanning
- orbstack — fast docker and linux vms
- pgcli — postgres repl with autocomplete
- pnpm — fast node package manager
- postico — postgres gui client
- redis — in-memory data store for local development
- ruby-build — ruby version definitions for mise
- sqlite — embedded sql database
- uv — fast python package installer
- aria2 — lightweight multi-protocol downloader
- borgbackup — deduplicating encrypted backups
- fx — interactive json explorer
- gemini-cli — gemini ai from the terminal
- grex — generate regexes from example strings
- imagemagick — image manipulation (e.g. pywal)
- jdupes — fast duplicate file finder
- jq — json processor for the shell
- lnav — log file viewer with sql and highlights
- md5deep — hashing and auditing file trees
- p7zip — 7zip archiver
- poppler — pdf utilities (used by lesspipe)
- pv — pipe viewer (throughput and progress)
- w3m — text-mode web browser
- xh — httpie-style curl alternative
- csvkit — cli tools for working with csv files
- osx-colors — change system accent and highlight colors from the cli
- posting — terminal http/api client
- python-dotenv — load
.envfiles into the environment - pywal16 — generate color schemes from wallpapers
- socket — cli for safer dependency auditing
- brave browser — chromium-based browser with ad blocking
- tor browser — anonymous browsing over tor
- zen browser — privacy- and productivity-focused browser
- 1password — password and secrets manager
- caffeine — prevent display sleep during long tasks
- defaultkeybinding.dict — custom emacs-style key bindings in cocoa text fields
- dockutil — manage dock items from the cli
- google drive — cloud file sync client
- karabiner-elements — keyboard remapping and complex modifications
- raycast — launcher / spotlight replacement
- rectangle — keyboard-driven window snapping
- switchaudio-osx — switch audio input/output from the cli
- uninstallpkg — inspect and remove installer packages
- zappy — screenshot and screen recording tool
- fira code — monospaced font with ligatures
- hack — monospaced programming font
- jetbrains mono — monospaced font tuned for ides
- mackup — symlink application configs into
$HOME - osx-defaults.sh — applies system preference defaults (not a package install)
Use the bootstrap script to install any depedencies and run the playbook
$ bash <(curl -s https://raw.githubusercontent.com/yuhonas/dotfiles/master/bootstrap.sh)
This repo uses molecule and docker to lint, provision and test the playbook(s)
molecule test
There is a reusable LLM prompt summarize_playbooks.md that will generate & categorize the software being installed from the ansible playbooks and insert it into this README
Every test run molecule generates a minimal docker base image which is then published & can be found under releases
See also
