Simplify the process of moving into a new workstation by automatically furnishing it with your favorite app(liance)s and setting up power(ful) tools to maintain it.
Warning
My dotfiles are open source to serve as a blueprint and inspiration for others. Please feel free to explore the contents and copy what you like, but I do not recommend forking because my setup is both custom and highly volatile.
β¨ TL;DR | ποΈ Contents | π¦ Unpack | π οΈ Maintain | π‘ Inspiration
The floor plan at a glance:
| Operating System | |
|---|---|
| Package Manager | |
| Launcher | |
| Window Tiling Manager | |
| Web Browser | |
| Password Manager | |
| Env, Alias, PATH & Dotfile Manager | |
| Terminal Emulator & Mux | |
| Shell | |
| Editor | |
| Version Control System | |
| Typeface | Space Mono |
| Colorscheme | |
| Programming Langauges |
The main contents of this repo are organized into a few high-level directories:
- ποΈ bin - Custom executables to append to the user's
PATH - π¨ config - Package and app configs to be symlinked into place
- π οΈ util - System specific setup scripts and configs to be unpacked
unpack.sh is the main installation script. The unpack script
explains what it will do, prompts the user before each step, and is idempotent.
This means it can be safely run multiple times to keep the system in sync
without compounding changes or breaking.
In brief, unpacking...
- β Verifies system compatibility
- π Checks and prompts for system updates
- β¬οΈ Installs or updates user packages and apps
- π Symlinks user package and app configs
- βοΈ Applies user system settings
Warning
Before unpacking, review the repo contents and backup any pre-existing configs.
Manually clone this repo and run unpack.sh.
git clone https://github.com/boldandbrad/dotfiles.git ~/Dotfiles
cd ~/Dotfiles && ./unpack.shTo make system maintanence simpler after unpacking, a handful of convenient cli tools are provided. See bin and aliae for more details. They should be automatically available after unpacking.
| Command | Description |
|---|---|
mac |
Install dependencies and view system info |
dots |
Manage dotfile symlinks |
tidyup |
Clean system caches and app data |
dep-check |
Check if all apps and dependencies are installed |
dep-refresh |
Install/update all apps and dependencies |
dep-prune |
Uninstall apps and dependencies that aren't needed |
There are plenty of great dotfile repos and machine setup resources out there. In particular, I took inspiration from these gems:
- Dotfiles Community π - a great collection of dotfile resources
- dotfyle π - discover neovim plugins and configurations, including mine
- dotfile repos π - my favorite github dotfile repositories
The wallpaper assets found in this repo have been copied from the following sources:
- catppuccin-waves-4k.png - Credit zhichaoh/catppuccin-wallpapers
- OS Wallpapers. Credit thismoon/catppuccin-wallpapers
Copyright (c) 2021-present Bradley Wojcik. Released under the MIT License. See LICENSE for details.
