Skip to content

Latest commit

 

History

230 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

pmmmwh@dotfiles

Getting Started

⚠️ WARNING ⚠️ - Proceed at your own risk.

The setup here have been tweaked to cater my personal workflow. They don't suit everyone, so please review the code to make sure the dotfiles fit your setup.

First, install mise, which will drive everything:

curl https://mise.run | sh

Then, run bootstrap:

mise bootstrap --from https://github.com/pmmmwh/dotfiles.git --yes

Personal Stuff

On my personal machines, -E personal is added to pull in extra apps and tools:

mise -E personal bootstrap --from https://github.com/pmmmwh/dotfiles.git --yes

This will install system packages, clone Zsh plugins, link the dotfiles, write macOS defaults and install tool chains.

macOS Settings

Some macOS settings cannot be expressed in mise, and they are applied as a separate step:

mise run macos-settings

Operations

Structure

Where What
mise.toml Machine setup - dotfiles, plugin repos, packages, defaults
mise.personal.toml Same as above, for personal machines
config/mise/config.toml Tools available everywhere, symlinked to ~/.config/mise
config/mise/config.personal.toml Sams as above, for personal machines
@macos/Brewfile Casks, App Store apps, and formulae from taps mise can't pour
@macos/settings.zsh Privileged, host-scoped and collection-valued macOS settings

Anything under @ is operating-system specific; anything under _ is not linked anywhere.

Inspecting

mise bootstrap status

This will report every managed part.

If you only care about one, you can use the narrower commands:

mise bootstrap dotfiles status
mise bootstrap packages status
mise bootstrap macos defaults status

To exit with non-zero when something is out of sync, add --missing to the commands.

Customisation

Any .zsh file inside .zshcustom is sourced at startup. If you have machine-local values that should not be committed, you can utilise unmanaged Zsh files in the directory (e.g. ~/.zshcustom/extras.zsh).

Reverting

mise bootstrap dotfiles unapply

This will remove all symlinks mise created, but not revert any installed packages and tools, or any applied macOS defaults.

If you need to uninstall packages:

brew uninstall

Acknowledgements

About

`pmmmwh@local dotfiles ﹪ █`

Topics

Resources

Stars

20 stars

Watchers

1 watching

Forks

Used by

Contributors

Languages