aoberoi / dotbot-brew

Install brew packages using dotbot

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Dotbot-brew

macOS Ubuntu

This is a plugin for dotbot that adds brew, cask, tap, brewfile, and install-brew directives. It allows installation of packages using either brew or brew --cask.

Features

This plugin features an exceptionally fast check for installed packages, and can handle hundreds of packages in a second or two. This is much faster than brew itself which takes 1-2 seconds per package (through brew list package_name). Please note that installing packages still takes the normal amount of time.

This plugin can also install brew from scratch (through the install-brew directive). This directive will succeed if brew is already installed.

Installation

Add it as submodule of your dotfiles repository (per the dotbot plugin installation guidelines).

git submodule add https://github.com/wren/dotbot-brew.git

Modify your install script, so it automatically enables brew plugin.

"${BASEDIR}/${DOTBOT_DIR}/${DOTBOT_BIN}" -d "${BASEDIR}" --plugin-dir dotbot-brew -c "${CONFIG}" "${@}"

Usage

In your install.conf.yaml use brew directive to list all packages to be installed using brew. The same works with cask and brewfile.

Also, if you plan on having multiple directives, you should consider using defaults to set your preferred settings.

For example, your config might look something like:

# Sets default config for certain directives
- defaults:
    - brewfile:
        - stdout: true,
    - brew:
        - stderr: False,
        - stdout: False,

# Installs brew if missing
- install-brew: true

# Reads brewfile for packages to install
- brewfile:
    - Brewfile
    - brew/Brewfile

# Adds a tap
- tap:
    - caskroom/fonts

# Installs certain brew packages
- brew:
    - age
    - git
    - git-lfs
    - jrnl
    - neovim --HEAD
    - yq
    - zsh

# Installs certain casks
- cask:
    - signal
    - vlc
    - font-fira-code-nerd-font

Special Thanks

This project owes special thanks to d12frosted and miguelandres for their work in their own versions of dotbot-brew (which this project was originally forked from).

About

Install brew packages using dotbot

License:MIT License


Languages

Language:Python 88.3%Language:Shell 11.7%