Homebrew

Homebrew adalah pengelola paket (package manager) yang digunakan untuk memasang, memperbarui, dan menghapus perangkat lunak (software) di macOS dan Linux. Dengan Homebrew, pengguna dapat dengan mudah menginstal berbagai aplikasi, alat, dan library dari terminal, termasuk alat pengembang seperti Python, Ruby, dan Node.js.

Fungsi dari homebrew:

  • Kemudahan Instalasi: Memudahkan pengguna dalam memasang, memperbarui, dan menghapus perangkat lunak.

  • Sederhana: Proses instalasi dilakukan melalui terminal dengan perintah sederhana.

  • Kustomisasi: Pengguna dapat menyesuaikan instalasi perangkat lunak dengan kebutuhan.

  • Mencegah Konflik: Homebrew membantu mencegah konflik antara versi perangkat lunak yang berbeda.

  • Pengelolaan Ketergantungan: Homebrew secara otomatis menangani ketergantungan perangkat lunak, sehingga pengguna tidak perlu khawatir tentang masalah ketergantungan.

Instalasi

$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

Perintah Homebrew Umum

$ brew install <package>
# untuk instalasi aplikasi (software)

$ brew update
# update Homebrew dan database package nya

$ brew list
# list installed application

$ brew list --cask
# list installed application using homebrew cask

$ brew search <keyword>
# mencari packages sesuai kata kunci (keyword)

$ brew info <package>
# mendapatkan informasi mengenai spesifik packages

$ brew uninstall <package>
# menghapus package terpasang

$ brew doctor
# Mendiagnosis setiap masalah potensial pada pengaturan Homebrew.

Alternatif dari Homebrew

Ada berbagai alasan mengapa Homebrew tidak cocok untuk semua orang dalam hal pengelolaan paket. Berikut ini adalah daftar program alternatif yang tersedia di pasaran.

MacPorts

MacPorts menyederhanakan instalasi berbagai perangkat lunak sumber terbuka di MacOS. MacPorts menggunakan infrastruktur dan sistem port sendiri dan cenderung lebih berbasis sumber daripada Homebrew.

Fink

Fink adalah pengelola paket lain untuk MacOS yang menyediakan akses ke berbagai alat dan perangkat lunak Unix. Mirip dengan MacPorts dan menawarkan instalasi paket berbasis sumber dan berbasis biner.

Anaconda

Anaconda adalah distribusi bahasa pemrograman Python dan R yang menyertakan pengelola paket. Ini adalah opsi yang sedang tren di komunitas ilmu data dan komputasi ilmiah. Meskipun ini bukan pengelola paket umum seperti Homebrew, ini layak disebutkan bagi pengguna Python.

Nix

Nix adalah pengelola paket yang kuat yang bekerja di berbagai sistem mirip Unix, termasuk MacOS. Ia menggunakan pendekatan fungsional dan deklaratif untuk pengelolaan paket, yang memungkinkan lingkungan yang dapat direproduksi.

Terminologi

Homebrew adalah cara termudah dan paling fleksibel untuk menginstal perangkat UNIX yang tidak disertakan Apple dengan macOS. Homebrew juga dapat menginstal perangkat lunak yang tidak dikemas untuk distribusi Linux Anda tanpa memerlukan sudo.

Beberapa instilah umum dari Homebrew

formula

Definisi paket Homebrew yang dibangun dari upstream source

cask

Definisi paket Homebrew yang menginstal aplikasi asli macOS

prefix

jalur tempat Homebrew diinstal, misalnya /opt/homebrew atau /home/linuxbrew/.linuxbrew

keg

direktori tujuan instalasi versi formula tertentu, misalnya /opt/homebrew/Cellar/foo/0.1

rack

direktori yang berisi satu atau lebih keg versi, misalnya /opt/homebrew/Cellar/foo

keg-only

suatu formula hanya berlaku untuk keg jika tidak dihubungkan secara simbolik ke Homebrew prefix

opt prefix

tautan simbolik (symlink) ke versi aktif dari keg, misalnya /opt/homebrew/opt/foo

Cellar

direktori yang berisi satu atau lebih named rack, misalnya /opt/homebrew/Cellar

Caskroom

direktori yang berisi satu atau lebih named casks, misalnya /opt/homebrew/Caskroom

external command

subperintah brew didefinisikan di luar repositori GitHub Homebrew/brew

tap

direktori (dan biasanya repositori Git) formulae, cask dan/atau perintah eksternal

bottle

pre-built keg poured into a rack of the Cellar instead of building from upstream sources