Automated dotfiles management and system setup for Fedora KDE and macOS using Chezmoi.
Ensure you have standard tools installed and are logged into your password manager:
- macOS: Install XCode Command Line Tools (
xcode-select --install) - Fedora: Ensure you have
gitandcurl(sudo dnf install git curl).
git clone https://github.com/dolfbarr/dotfiles.git ~/Projects/dolfbarr/dotfiles
cd ~/Projects/dolfbarr/dotfilesCopy the example environment file and fill in your API keys (these will be safely ignored by Git):
cp .env.example ~/.env
nano ~/.envExecute the bootstrap script to automatically install Chezmoi, link the repo, install your terminal UI (gum), migrate shell history, and apply OS-specific setups.
./bootstrap.sh--profile <work|personal|all>: Determines which software to install.work: Skips games, Steam, ProtonVPN, 1Password, Spotify.personal: Skips strictly corporate tools.all(default): Installs everything.
-vor--verbose: Disables the animatedgumspinners and prints all installation output directly to stdout for debugging.-yor--yes: Automatically bypass all confirmation prompts.--dry-run: Preview what the script would do without making any changes.
Example:
./bootstrap.sh --profile work --verboseThis repository includes helpful utility scripts located in the scripts/ directory:
scripts/maintenance.sh: Run this periodically to update DNF/Homebrew/Flatpak, trim SSDs, vacuum journals, prune Docker, check for uncommitted dotfile changes (chezmoi status), and use AI (agy) to analyze recent system crashes.scripts/sync_projects.sh: Scans your~/Projectsfolder to find local git repos that are missing a remote origin or missing.gittracking entirely, and interactively helps you sync, pull, or stash changes across all projects.scripts/setup_folders.sh: Enforces a strict, clean XDG Base Directory structure (e.g. creating~/Pictures/Screenshots,~/Downloads/Browser) and cleans up unused default folders.
- Zsh & Starship: Custom shell with auto-suggestions, syntax highlighting, and a lightning fast prompt.
- Micro & Zed: Terminal text editing and blazing fast GUI coding.
- Chezmoi: Seamless, robust dotfiles synchronization.