Skip to content

jwilner/macos-dotfiles

Repository files navigation

my macos dotfiles

Dependencies and config for my MacOS development environment.

overview

The repository's structure is overlaid on my ${HOME} directory; thus, .config maps to the ${HOME}/.config on my dev machine.

Highlights:

I generally use Solarized for theming, which probably dates me to the wrong side of 30, but such is life.

installation

Installed from a bare git module inspired by this.

curl -fsSL https://raw.githubusercontent.com/jwilner/macos-dotfiles/main/bin/config | bash -s -- sync

This will (idempotently):

  1. git clone the repo
  2. checkout the worktree, positioning the files as appropriate (backing up any conflicts),
  3. set up git config
  4. install Brew
  5. Brew install all dependencies
  6. register the upgraded version of bash and set the default shell to it

At this point you should probably switch to kitty from whatever terminal you were using before.

follow up: gitconfig overrides

Optionally, set up a specific work email for git.

$ cat <<EOF > .gitconfig.overrides
[user]
    email = [email protected]
EOF

follow up: GPG

Insert yubikey and then:

$ gpg --edit-card
gpg/card> fetch
...
gpg/card> quit

$ gpg --edit-key
gpg> trust
Your decision? 5
Do you really want to set this key to ultimate trust? (y/N) y
gpg> quit

follow up: language envs

Rather than explicitly installing languages with Brew, I use brew to install common language environment management tools and leave configuring the language itself for later.

Language environment managers:

Golang I just download and use the built in management approach.

config management

config is mainly used as an alias to git for tracking any changes to dotfiles -- e.g. config add .bashrc.

However, it has a few more useful commands in it

Run:

  • config switch-gpg-yubikey -- switch gpg yubikey stubs
  • config brew dump --force -- update .Brewfile
  • config brew cleanup -- remove anything not in .Brewfile

About

personal dotfiles

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •