https://github.com/boldandbrad/dotfiles
💻 Automated macOS setup and .file management
https://github.com/boldandbrad/dotfiles
aliae brewfile catppuccin-theme dotfiles git-config lazygit lsp macos-setup neovim-config oh-my-posh tmux-conf wezterm-config xdg zshrc
Last synced: 3 months ago
JSON representation
💻 Automated macOS setup and .file management
- Host: GitHub
- URL: https://github.com/boldandbrad/dotfiles
- Owner: boldandbrad
- License: mit
- Created: 2021-11-05T03:42:04.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2025-06-19T19:39:17.000Z (4 months ago)
- Last Synced: 2025-07-02T13:16:26.009Z (3 months ago)
- Topics: aliae, brewfile, catppuccin-theme, dotfiles, git-config, lazygit, lsp, macos-setup, neovim-config, oh-my-posh, tmux-conf, wezterm-config, xdg, zshrc
- Language: Shell
- Homepage:
- Size: 5.74 MB
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 3
-
Metadata Files:
- Readme: .github/README.md
- License: LICENSE
- Roadmap: .github/ROADMAP.md
Awesome Lists containing this project
README
# 🏠 boldandbrad's humble dotfiles

---
## 🗝️ Welcome `$HOME`
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](#contents) and copy what
> you like, but
> [I do not recommend forking](https://github.com/lissy93/dotfiles?tab=readme-ov-file#so-copy-paste-right)
> because my setup is both custom and highly
> [volatile](https://github.com/boldandbrad/dotfiles/commits/main/).---
[✨ TL;DR](#tldr) | [🛋️ Contents](#contents) | [📦 Unpack](#unpack) |
[🛠️ Maintain](#maintain) | [💡 Inspiration](#inspiration)---
## ✨ TL;DR
The floor plan at a glance:
| Operating System |  |  * |
| ---------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------- |
| Launcher & Window Tiler |   | NA |
| Web Browser |   | NA |
| Package Manager |  |  |
| Env, Alias, PATH & Dotfile Manager |  |  |
| Terminal Emulator & Mux |  | NA |
| Shell |   | |
| Editor |   |  |
| Version Control System |   |   |
| Typeface || NA |
| Theme / Colorsheme |  | |
| Programming Langauges |     | |\* experimental container support
---
## 🛋️ Contents
The main contents of this repo are organized into a handful of high level
directories: `bin/`, `config/`, and `util/`. Follow the links below to read the
docs for each.- 🗄️ [bin](../bin/README.md) - Custom executables to append to the user's `PATH`
- 🎨 [config](../config/README.md) - Package and app configs to be symlinked
into place
- 🛠️ [util](../util/README.md) - System specific scripts and configs used while
unpacking---
## 📦 Unpack
The [contents](#contents) of this repo can be automatically installed with
[`unpack.sh`](../unpack.sh). 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 does the following:
- ✅ 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](#contents) and backup any
> pre-existing configs.### Get it Delivered
Automatically download and run [`ship.sh`](../ship.sh), which clones this repo
to `~/Dotfiles` (if not present) and then prompts you to run
[`unpack.sh`](../unpack.sh).```sh
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/boldandbrad/dotfiles/main/ship.sh)"
```### Haul it Yourself
Manually clone this repo and run [`unpack.sh`](../unpack.sh).
```sh
git clone https://github.com/boldandbrad/dotfiles.git ~/Dotfiles
cd ~/Dotfiles && ./unpack.sh
```### Mobile Home
> [!NOTE]
> Container support is a work in progress and considered experimental.A taste of home when you're on the road goes a long way. Spin up a simplified
version of this setup in a cozy alpine linux container (requires podman).```sh
git clone https://github.com/boldandbrad/dotfiles.git ~/Dotfiles
cd ~/Dotfiles/bin
./dots --run
```---
## 🛠️ Maintain
To make system maintanence simpler after unpacking, a handful of convenient
[aliases](../config/aliae/aliae.yaml) are provided. Invoke these from anywhere.| Command | Description |
| ------------- | ----------------------------------------------------------- |
| `sys-clean` | Clean system caches and app data (❌ Coming soon) |
| `dot-commit` | Persist current dotfiles to github (❌ Coming soon) |
| `dot-relink` | Relink installed dotfiles |
| `zsh-reload` | Reload shell environment ([`.zshrc`](../config/zsh/.zshrc)) |
| `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 |---
## 💡 Inspiration
There are tons of great dotfile and machine setup repos and resources out there.
In particular, I took inspiration from these gems:- [Dotfiles Community 🔗](https://dotfiles.github.io/) - a great collection of
dotfile resources
- [dotfyle 🔗](https://dotfyle.com/) - discover neovim plugins and
configurations, including [mine](https://dotfyle.com/boldandbrad/)
- [dreamsofcode-io/dotfiles](https://github.com/dreamsofcode-io/dotfiles) - nvim
and tmux configs
- [lissy93/dotfiles](https://github.com/lissy93/dotfiles) - install scripts and
repo structure
- [stefanzweifel/dotfiles](https://github.com/stefanzweifel/dotfiles)
- [superatomic/dotfiles](https://github.com/superatomic/dotfiles)
- [webpro/dotfiles](https://github.com/webpro/dotfiles)### Wallpaper Credits
The wallpaper assets found in this repo have been copied from the following
sources:- [catppuccin-waves-4k.png](./wallpapers/catppuccin-waves-4k.png) - Credit
[zhichaoh/catppuccin-wallpapers](https://github.com/zhichaoh/catppuccin-wallpapers/blob/main/waves/cat-waves.png)
- OS Wallpapers. Credit
[thismoon/catppuccin-wallpapers](https://github.com/thismoon/catppuccin-wallpapers/tree/main/os)---
## ⚖️ License
Copyright (c) 2021-present Bradley Wojcik. Released under the MIT License. See
[LICENSE](../LICENSE) for details.