Jedną z rzeczy niewątpliwie przydatną dla korzystających z MacOS’a jest Homebrew – aplikacja pozwalająca na instalowanie innych aplikacji w katalogu domowym użytkownika, bez konieczności przełączania się na konto administracyjne. W systemach Linux również da się skompilować i zainstalować aplikację w katalogu domowym użytkownika, ale z reguły jest to zadanie dla bardziej zaawansowanych użytkowników systemu Linux.

Nie wszyscy jednak wiedzą, że całkiem podobne narzędzie występuje zarówno dla Linuxa, jak i dla systemów Windows (dla WSL’a). Hombrew, bo o nim mowa, możemy uruchomić na serwerze Linux lub komputerze z tym systemem czy Windowsie z WSL, co umożliwia instalowanie aplikacji wprost do swojego katalogu domowego za pomocą szybkich komend, a aplikacja zrobi za nas całą resztę.

W tym artykule pokażę, jak skonfigurować i uruchomić do pracy właśnie Homebrew’a w systemie operacyjnym Debian. Co ważne, według deklaracji producenta oprogramowania, nie korzysta ono z żadnych systemowych bibliotek poza glibc i gcc do działania. Dla tych, dla których istotna jest kwestia bezpieczeństwa, będzie mieć to na pewno duże znaczenie.

Możliwości Hombrew dla systemu Linux:

  • możliwość zainstalowania aplikacji bezpośrednio w katalogu domowym użytkownika –  przy czym nie wymaga do działania np. sudo;
  • możliwość zainstalowania najnowszych wersji aplikacji, nawet jeśli masz starszą wersję systemu operacyjnego;
  • możliwość zainstalowania szybkim poleceniem oprogramowania, którego nie ma w Twojej dystrybucji i w Twoim menadżerze pakietów;
  • korzyści w postacie używania tego samego menadżera pakietów na wszystkich Twoich systemach: Linux, MacOS, Windows z WSL.

Przygotowanie do instalacji

Homebrew zainstaluje się w katalogu /home/linuxbrew. Po instalacji nie będzie on wymagał sudo do poprawnego działania, dzięki czemu każdy użytkownik systemu będzie mógł w swoim własnym katalogu instalować swoje aplikacje.

Do instalacji najlepiej wykorzystać konto użytkownika, który jest dodany do grupy sudoers. Potem już nie będziemy musieli z niego korzystać. Aplikacji nie uda się zainstalować z konta użytkownika root.

Wymagania

GCC 4.7.0 lub nowsze
Linux Kernel 2.6.32 lub nowszy
Biblioteka glibc 2.13 lub nowsza
Architektura 64 bitowa

Niezbędne paczki dla systemu Debian:

sudo apt-get install build-essential procps curl file git

Dla systemów Fedora, CentOS, Redhat:

sudo yum groupinstall 'Development Tools'
sudo yum install procps-ng curl file git
sudo yum install libxcrypt-compat – dla systemu Fedora 30 i nowszej

Instalacja Homebrew w katalogu użytkownika

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

W zależności od tego, jak szybkie mamy łącze i mocny sprzęt, po kilku chwilach Homebrew zostanie zainstalowany w naszym katalogu domowym.

Po zainstalowaniu musimy wykonać postinstalacyjne komendy, aby dodać homebrew do naszego PATH’a.

W moim przypadku użytkownik: azug będzie miał homepath /home/azug, ale w przypadku innego użytkownika trzeba podstawić swojego użytkownika.

echo 'eval "$(/home/azug/.linuxbrew/bin/brew shellenv)"' >> /home/azug/.profile
eval "$(/home/azug/.linuxbrew/bin/brew shellenv)"

Po instalacji Homebrew i wykonaniu komend dodatkowych, zalecane jest zainstalowanie gcc we własnym katalogu domowym. Użyjemy do tego właśnie zainstalowanego Homebrew w katalogu naszego użytkownika.

brew install gcc

Po kilku chwilach, w zależności od szybkości naszego sprzętu i łącza, zostanie zainstalowany gcc wraz z potrzebnymi zależnościami:

Warto zwrócić uwagę na to, że nie musimy tu kompilować ręcznie podając PATH, przełączniki niczego. Brew zrobi to za nas:

Doda automatycznie niezbędne przełączniki wskazujące na nasz katalog domowy.

Warto zwrócić tu też uwagę na to, że dzięki Brew nie będziemy musieli ręcznie rekompilować pakietów jeśli wyjdzie nowa wersja – tak jak robiliśmy to kiedyś. Dzięki temu narzędziu, możemy utrzymywać w naszym katalogu domowym aktualne pakiety dzięki kilku komendom.

Inna architektura

Brew z powodzeniem możemy zainstalować nie tylko na Linuxie, ale także na 32 bitowej architekturze ARM (np. Raspberry PI).

Brew nie zadziała natomiast na procesorach 32bitowych na platformie x86.

Przydatne w codziennej pracy

W codziennej pracy z tym narzędziem przydatne może okazać się kilka komend, które powinniśmy znać (jak make, configure itd.):

  • brew search – wyszukiwanie dostępnych pakietów do instalacji;
  • brew info – informacje o dostępnej wersji pakietu;
  • brew update – aktualizacja menadżera brew;
  • brew upgrade – aktualizacja wybranego pakietu jeśli dostępna jest nowa wersja;
  • brew list – informacja o zainstalowanych już pakietach, lista pakietów;
  • brew uninstall – odinstalowanie pakietu zainstalowanego wcześniej poprzez brew.