Урок за Homebrew: Как да използвате Homebrew за MacOS

В началото беше командният ред. Това е вярно за почти всички операционни системи, но някъде по пътя графичният потребителски интерфейс се превърна в „лицето“ на компютъра и само стари хакери или посветени дори знаеха как да отворят конзола или терминал на командния ред.

Много потребители на Mac могат да се справят чудесно, без никога да отварят приложението Terminal, още по-малко да въвеждат команди в черупката на Bash. Ако прекарвате деня си в редактиране на неподвижни изображения с Lightroom, командният ред на MacOS вероятно няма много полезна програма за вас.

Повече технически потребители, и особено разработчици на софтуер, трябва да работят в обвивката поне от време на време, ако не и ежедневно. Техническите потребители с някакъв фон на Unix или Linux ще открият, че не всички обичайни помощни програми са инсталирани в MacOS, тъй като идва от фабриката, въпреки че MacOS е в основата си BSD Unix система.

Като разработчик на софтуер и рецензент на софтуер, често срещам този проблем. Първият път, когато се случи, следвах инструкции за онлайн инсталиране, за които се предполагаше, че работят на Linux и подобни на Linux системи (като Mac OS X, както беше известно по това време), но всъщност бяха тествани само на един или два дистрибутора на Linux. Предоставената команда за инсталиране се основава на wgetпомощна програма за неинтерактивно изтегляне на файлове от мрежата.

За съжаление за мен wgetне се инсталира на Mac, въпреки че малко подобната curlпомощна програма го прави. Превеждането на wgetопции в curlопции беше досадна допълнителна стъпка, от която нямах нужда; Липсата на рекурсивни изтегляния curlбеше пълна програма за изтегляне на HTML документацията.

Apple няма официални механизми за добавяне на нови помощни програми от командния ред. Това, което има за мениджъра на пакети, е App Store, но това е само за приложения (приложения). Когато потърсих в мрежата „wget not found mac“, бързо открих, че има няколко начина за решаване на проблема ми, включително изграждане wgetот изходния код. От тях най-често се препоръчва Homebrew.

Какво е Homebrew?

Homebrew се нарича „ Липсващият мениджър на пакети за MacOS“ (акцентът е мой). Това е жалко, но малко по-кавалерско. Homebrew със сигурност е мениджър на пакети за MacOS, но има и други, като MacPorts и Fink. В този смисъл App Store е мениджър на пакети, макар и специализиран за приложенията от App Store. Независимо от това, Homebrew е най-популярният мениджър на пакети на трети страни за MacOS и предлага функционалност, липсваща в App Store.

Можете да използвате Homebrew ( brew), за да инсталирате, деинсталирате и надстроите някоя от хилядите „формули“ (т.е. дефиниции на пакети) от нейното основно публично хранилище, както и всички хранилища за докосване, които искате да използвате. Можете също да използвате съоръжението Homebrew cask ( brew-cask) като начин за инсталиране, деинсталиране и надграждане на предварително компилирани двоични файлове на MacOS (като приложения, но не приложения от App Store) от командния ред. Ако желаете, можете да създадете свои собствени пакети Homebrew и да напишете свои собствени формули Homebrew.

Инсталирайте Homebrew

Тъй като самият Homebrew е само за MacOS, той има доста прости инструкции за инсталиране - поне ако версията на вашата OS е по-нова от OS X Lion 10.7. Homebrew по принцип просто изпълнява Ruby скрипт, след като го изтегли от GitHub; ще забележите на екранната снимка по-долу, че Homebrew използва curlза изтеглянето, а не wgetпоради причини, които обсъдих по-рано.

Homebrew също се ограничава до кода на Ruby, поддържан от версията на Ruby, която се доставя с най-старата версия на X X, която поддържа, 10.5 Leopard.

/ usr / bin / ruby ​​-e "$ (curl -fsSL //raw.githubusercontent.com/Homebrew/install/master/install)"

Възможно е инсталацията на Homebrew да ви помоли да инсталирате Xcode или инструментите на командния ред за Xcode. Дали го прави и кое предлага, ще зависи от вашата версия на операционната система и версиите на компилаторите C и C ++, инсталирани на вашата система.

Според страницата за инсталиране на Homebrew, ако имате по-стара версия на Mac OS X (Lion 10.7 или по-нова версия), тогава трябва да добавите --insecureаргумента (или еквивалентно -k, като направите пълния списък с аргументи -fsSLk) към curlкомандата. Това е така, защото версията на curlвашата система няма успешно да говори с GitHub, използвайки HTTPS. Homebrew ще поправи това, ако го инсталирате и след това поискате да актуализира себе си и своите зависимости с brew update.

Ако изтеглите скрипта за инсталиране и го прочетете, ще видите, че включва логика за прекъсване, ако версията на Mac OS X е по-малка от 10,5. Ако това задейства, скриптът ще ви насочи към TigerBrew, който е експериментална вилица на Homebrew, която добавя поддръжка за PowerPC Mac и Mac, работещи с Tiger.

Има и предупреждение „ние не поддържаме тази версия“, което ще задейства за версии на MacOS, които са твърде стари или твърде нови, в момента са определени на 10.11 и 10.13. Това не означава, че Homebrew няма да работи върху тези версии; това най-вече означава, че разработчиците не тестват срещу тях.

Използвайте Homebrew, за да инсталирате пакет

Като основен пример, нека опитаме да инсталираме wgetс Homebrew. Първо стартирайте Терминал.

Командата инсталация е просто, както е посочено в изображението по-горе: brew install wget. На моята машина той даде доста дълъг изход по-долу. Обърнете внимание, че инсталацията започна с автоматично актуализиране на Homebrew, след това инсталираните wgetзависимости и след това най-накрая се инсталира wget.