megabyte-labs.homebrew

Homebrew - A Package Manager for macOS/Linux

Created by Megabyte Labs

Homepage Contributing Guide Slack Chat Gitter Community GitHub Mirror GitLab Repository

An Ansible role that installs Homebrew (a package management system) on macOS and Linux systems


Table of Contents


Overview

This project is an Ansible role designed to install Homebrew, a package management system for macOS and Linux. Homebrew makes it easy to install software on these operating systems.

Features

Homebrew Installation:

  • Verifies if Homebrew is already installed
  • Installs Homebrew on macOS and Linux
  • Updates your .bashrc file to include Homebrew in your PATH

Package Management:

  • Keeps Homebrew and its packages up-to-date
  • Installs a customizable list of Homebrew packages
  • Updates pre-installed Homebrew casks
  • Installs customizable Homebrew casks on macOS

Quick Start

To install Homebrew without using Ansible, run the following command for your OS:

For Linux/macOS:

curl -sS https://install.doctor/homebrew | bash

For Windows:

Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://install.doctor/homebrew?os=win'))

Important Note: Before running the above commands, check the URL to ensure it's safe.

Alternatively, you can visit Install Doctor, an app we created that simplifies the installation process.

Supported Operating Systems

We have tested this role on the following operating systems:

OS Family OS Version Status
Ubuntu 18.04 - 21.10
Windows 10
Other OS variants Various Possible, not tested

Idempotent: Running this role multiple times should not change the system after the first run.

Dependencies

Some roles depend on other roles and collections published on Ansible Galaxy. Make sure to install all dependencies before running the role:

if type poetry &> /dev/null; then poetry install --no-root; else pip3 install -r .config/assets/requirements.txt; fi
ansible-galaxy install -r requirements.yml

Or simply run: bash .config/scripts/start.sh to install everything needed.

Required Python Packages

Package Description
ansible For configuration management
docker To manage Docker containers
python-vagrant For provisioning Vagrant VMs
pywinrm For managing Windows machines with WinRM

Example Playbook

To use this role in your playbook:

- hosts: all
  roles:
    - professormanhattan.homebrew

You can find an example playbook that incorporates this role in our main project Gas Station.

Contributing

We welcome contributions! Check the issues page and the contributing guide for more information.

License

This project is licensed under the MIT License by Megabyte LLC. For more details, read the LICENSE.

Installa
ansible-galaxy install megabyte-labs.homebrew
Licenza
other
Download
7.9k
Proprietario
Free open-source developer tools for managing massive amounts of code