Zainstaluj na Macu programy z Linuksa, których nie da Ci Apple
Ta instrukcja przyda się przede wszystkim doświadczonym użytkownikom, którym w systemie OS X brakuje programów i bibliotek znanych z systemów uniksopodobnych. Jeśli ktoś tęskni za wgetem, zsh czy nawet całym KDE, dzięki opisanym niżej narzędziom może je mieć w każdej chwili.
08.10.2015 | aktual.: 08.10.2015 15:41
Rozwiązania te mają jednak kilka wad – przede wszystkim pobrane narzędzia i biblioteki będą kompilowane na Macu ze źródeł i nie ma gwarancji, że będą działać poprawnie. Ponadto mogą nie współpracować dobrze z systemem operacyjnym i podłączonym do Maca sprzętem, choć są to przypadki bardzo rzadkie. Programy z interfejsem graficznym będą wymagać instalacji XQuartz, dodatkowej konfiguracji, a do tego będą kiepsko wyglądać, więc często lepiej poszukać wersji dla OS X lub odpowiednika. Są jednak narzędzia niezastąpione i właśnie dla nich warto sięgnąć po źródła. Poniżej przedstawiam trzy sposoby, by to zrobić w miarę „bezboleśnie”.
Homebrew
Homebrew to sprytne połączenie skryptów w języku Ruby z możliwościami GitHuba przez twórców nazywane jest brakującym menedżerem pakietów dla Maków, choć jego repozytorium obejmuje tylko biblioteki i programy konsolowe. Instalacja Homebrew wymaga wpisania w terminalu jednego polecenia: ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" Pobrany skrypt przeprowadzi użytkownika przez proces instalacji i poinformuje o wszystkich podjętych krokach.
Obsługa Homebrew jest bardzo prosta, a menedżer pakietów nie ma wielu opcji – wszystkie można zobaczyć po wpisaniu polecenia brew help. Instalacja programu gnuplotwyglada tak: brew install gnuplot Jeśli w systemie nie ma narzędzi deweloperskich Xcode, przed instalacją pakietu pojawi się komunikat z informacją o tym. Niezbędne narzędzia można zainstalować poleceniem: xcode-select --install Wszystkie zainstalowane przez Homebrew pakiety zostaną zachowane we własnym folderze projektu, a korzystanie z nich będzie możliwe dzięki symbolicznym dowiązaniom, które znajdą się w katalogu /usr/local.
Homebrew sam zadba o zależności i pobierze powiązane z wybranym programem biblioteki.
Korzystanie z Homebrew wiąże się z jedną drobną niedogodnością – ograniczenia GitHuba zmuszają użytkownika do utworzenia własnego tokenu i ustawienia go w odpowiedniej zmiennej, na przykład tak: export HOMEBREW_GITHUB_API_TOKEN=6cf67149d2738f2badobreprogramyc22c7bf1e3.
Fink
Fink to kolejny menedżer pakietów, w którego repozytorium znajdziemy zarówno drobne konsolowe narzędzia, jak i programy ze środowisk Gnome i KDE. Projekt ten od wielu wersji nie ma instalatora, więc należy skompilować menedżera pakietów samodzielnie ze źródeł, które znajdziecie w naszej bazie programów. Do tego potrzebne będą konsolowe narzędzia deweloperskie, które można zainstalować poleceniem: xcode-select --install lub pobrać razem z programem Xcode z App Store, a także JDK (Java Developement Kit).
Kolejnym krokiem jest rozpakowanie źródeł i uruchomienie w ich głównym katalogu skryptu ./bootstrap. Po instalacji należy skonfigurować środowisko dla Finka poleceniem /sw/bin/pathsetup.sh i pobrać najnowszą listę pakietów poleceniem fink selfupdate-rsync;fink index -f. Wszystkie instrukcje dotyczące instalacji i używania Finka znajdują się w katalogu ze źródłami. Użytkownicy systemów OS X 10.9 i nowszych mogą także skorzystać ze skryptu instalacyjnego, który wykona wszystkie polecenia automatycznie.
Dalsza obsługa Finka jest dość intuicyjna. Aby znaleźć pakiet wget i dowiedzieć się, w jakiej wersji jest dostępny, należy wywołać polecenie fink list wget. Aby go zainstalować, należy wpisać fink install wget, aby odinstalować zaś fink remove wget. Aktualizację wszystkich pakietów można przeprowadzić poleceniem fink update-all. Na tym oczywiście obsługa Finka się nie kończy – więcej szczegółów można znaleźć w pliku USAGE, dostarczonym razem ze źródłami.
MacPorts
MacPorts to moim zdaniem najmniej problematyczny i najbardziej dopracowany z opisanych tu menedżerów pakietów. Jego repozytorium niewiele różni się od tego, co może dostarczyć Fink czy Homebrew. Ten menedżer do działania także wymaga obecności narzędzi konsolowych Xcode i już został przygotowany do pracy z OS X 10.11 El Capitan.
Instalator menedżera pakietów MacPorts można pobrać za darmo z naszej bazy programów. Po instalacji dostępne są narzędzia konsolowe, z których można korzystać do pobierania, instalacji, aktualizacji i usuwania oprogramowania. Wszelkie podpowiedzi wyświetli polecenie port help Oczywiście zaraz po instalacji należy pobrać aktualną listę dostępnych pakietów poleceniem sudo port self update Kolejne kroki są już proste: program wget można znaleźć poleceniem port search --name wget, także korzystając z wyrażeń regularnych. Za instalację pakietów odpowiada polecenie sudo port install wget, za usuwanie sudo port uninstall wget. Szczegóły dotyczące poleceń można uzyskać wpisując na przykład port help uninstall. Warto też zajrzeć do dokumentacji, gdzie znajdują się polecenia z przykładami użycia i sposoby na radzenie sobie z problemami.
Marble jednak działa bez problemów, choć instalacja z kompilacją Qt zajęła kilka godzin ;-).
W 2009 roku w ramach Google Summer of Code powstał interfejs graficzny o nazwie Pallet dla MacPorts (można go zainstalować z repozytorium). Niestety projekt wydaje się być martwy od czterech lat i przy pisaniu tego poradnika nie udało mi się go zainstalować. Powinien wyglądać tak:
Aby usunąć MacPorts i wszystkie zainstalowane pakiety należy wywołać dwa polecenia (pierwsze usuwa wszystkie pakiety, drugie pozostawione przez nie pliki): sudo port -fp uninstall installed sudo rm -rf /opt/local /Applications/DarwinPorts /Applications/MacPorts /Library/LaunchDaemons/org.macports.* /Library/Receipts/DarwinPorts*.pkg /Library/Receipts/MacPorts*.pkg /Library/StartupItems/DarwinPortsStartup /Library/Tcl/darwinports1.0 /Library/Tcl/macports1.0 ~/.macports