The Missing Package Manager for macOS (or Linux)
Homebrew is a package manager for macOS and Linux that aims to make it easy and straightforward for users to install the software they need. Package definitions are written in easy-to-read Ruby scripts, making it easy for the community to contribute changes and updates to packages. Homebrew primarily distributes binary packages.
Homebrew is divided into several projects.
- Homebrew - The core package manager repository.
- Homebrew Cask - A tool to automate management of macOS GUI installers using the commandline.
- Homebrew-core - The package definitions used on macOS.
- Linuxbrew-core - The package definitions used on Linux.
Homebrew 2020 Projects
Add support for type checking using SorbetThe majority of the code in Homebrew is written in Ruby which is a dynamic language. This means that types are checked when the code is run. My...
Adding a livecheck Formula DSL and migrating Livecheckables to home-brew/coreDSLs or domain-specific languages are written in order to serve a highly specific purpose. Currently, Homebrew has DSLs for various purposes, in...
replace shell `patchelf` and `readelf` with ruby equivalentsRefactor keg, keg_relocate and elf.rb modules to use rbelftools and patchelf.rb instead of calling shell commands. Patchelf.rb is doesn't work well...