Skip to content

Latest commit

 

History

58 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TarMac

TarMac is a very simple shell script with no dependency meant to install a per-user homebrew on a blank macOS.

It does surface a couple of homebrew configuration nooks, will nag for git and xcode command-line tools, and will seed .profile.

TL;DR

Run:

bash -c "$(curl -fsSL https://raw.github.com/farcloser/tarmac/master/init)"

# Alternatively, get a specific version:
# bash -c "$(curl -fsSL https://raw.github.com/farcloser/tarmac/v1.0.0/init)"

... or clone it the git way, then call ./init inside the clone.

You will be prompted for a GitHub token, and optionally a bin, tmp, cache and log path.

Non-interactive

You can alternatively set the following environment variables:

  • HOMEBREW_GITHUB_API_TOKEN: GitHub personal token to be used by brew
  • POSH_BIN: install location, for eg ~/Applications
  • POSH_TMP: temporary directory to be used for temporary files, for eg ~/transient/tmp
  • POSH_CACHE: temporary directory to be used for cache files, for eg ~/transient/cache
  • POSH_LOG: temporary directory to be used for log files, for eg ~/transient/log

Then call the script.

After that...

Typically, you may migrate / seed stuff from a template or another machine dump.

Dump it: brew bundle dump --file=MigrateBrewfile

Load it: brew bundle install --file=MigrateBrewfile

Or any other way to set up the rest of your laptop environment on top of brew.

Development

You need shellcheck (brew install shellcheck).

Note that -o errtrace -o functrace are not recognized by zsh, and that -o nounset will trip brew bash completion.

Finally, tarmac will not enable bash completion unless POSH_SHELL is set (to bash). This is typically achieved with ps -p $$ -ocomm= (but mind the leading dash in some cases). Out of scope for here.

About

Preconfigure brew & cask on a fresh mac for dev

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

1 watching

Forks

Releases

Sponsor this project

Packages

Used by

Contributors

Languages