I min strävan att ”automatisera alla saker” har jag varit på en resa för att hantera min Mac-bärbara dator som koden i sig är. Istället för att peka och klicka för att manuellt hantera mina applikationer och verktyg, föredrar jag att använda pakethanteringsprogramvara för att installera, uppdatera och ta bort onödig programvara.
Det är en utmaning för Mac-användare. En plats där Mac operativsystem, macOS, har alltid varit bakom Linux i pakethantering. Det finns ingen standardpakethanterare för Mac-användare, medan Linux-användare har många alternativ – från de välbekanta yum
och apt
till det moderna valet av Flatpak. Men hur är det med oss?
Det är här Homebrew kommer in. Homebrew fyller tomrummet som de facto-pakethanteraren för macOS (och som ett annat alternativ för Linux). Det ger en otroligt smidig och okomplicerad upplevelse för alla som är bekanta med kommandoraden, och det är ett bra sätt att lära sig kommandoraden om du är ny på den.
Om du är på en Mac och inte redan har Homebrew, du kan installera den med:
Detta kommando kör i nstaller-skript tillhandahållet av Homebrew-teamet. Om du föredrar att vara mer försiktig kan du curl
filen och sedan köra den manuellt efter att ha granskat den:
Hantera dina kommandoradsverktyg med brygg
Homebrew skryter med att det ”installerar de saker du behöver som Apple (eller ditt Linux-system) inte” t ”installerade som standard. Installationen sker med kommandot brew
som ger oss tillgång till tusentals kommandoradsverktyg, men inte mer komplexa applikationer.
För oss nördar inkluderar verktygen som passar in i ”de saker du behöver” den praktiska tree
-kommando som visar katalogstrukturer och pyenv
, som jag använder för att hantera flera versioner av Python.
Du kan se alla ”formler” som är tillgängliga från Homebrew med kommandot search
, och jag använder kommandot wc
visar hur många formler det finns:
# -l counts the number of lines
$ brew search | wc -l
5013
Det finns över 5000 formler, vilket är en otrolig mängden programvara. Så det är bäst att ha en uppfattning om vad du vill innan du söker i den enorma listan. Tack och lov är det enkelt att bläddra igenom. Formler kodas och centraliseras i kärnförvaren som är uppdelade efter operativsystem (Mac i Homebrew Core och Linux i Linux Core). De är också tillgängliga via Homebrew API och listas på webbplatsen.
Word of mouth är en annan bra metod för att hitta användningsområden. Med detta i åtanke är här några av mina favoriter om du ”letar efter inspiration:
-
pyenv
,rbenv
ochnodenv
för att hantera versionerna av Python, Ruby och Node.js (respektive) -
imagemagick
för skriptbara bildredigeringar -
pandoc
för skriptbara konverteringar (jag byter ofta från .docx till .md eller .html) -
hub
för en bättre Git-upplevelse för GitHub-användare -
tldr
för exempel på hur man använder en kommandoli ne utility
Ta ett exempel på tldr-sidor, ett användarvänligt alternativ till att bläddra igenom programmets man-sidor. Du kan bekräfta att det är tillgängligt genom att köra search
igen:
$ brew search tldr
==> Formulae
tldr ✔
Framgång! Bockmarkeringen låter dig veta det Nu kan du installera det:
Homebrew, tack och lov, förbyggar binärfilerna så att du inte behöver bygga från källkoden på din lokala maskin. Det sparar mycket tid och CPU-fläktbrus. En annan sak som jag uppskattar med Homebrew är att du kan uppskatta den här funktionen utan att förstå exakt vad den betyder.
Men om du gillar det kan det vara kul att titta på komplexiteten. Kör info
på tldr
, och du kan se all beroendeshantering, källkoden och till och med offentlig analys:
Slutligen, som i någon bra pakethanterare är Homebrew ”s brew uninstall
tillgänglig för att snabbt rengöra och ta bort oanvända verktyg.
Hantera dina applikationer med bryggfat
Kommandoradsverktyg är bra, men hur är det med fullblåsta applikationer? Homebrew håller sina standardkommandon enkla och installerar endast applikationer med en fil genom standard brew
kommandoradsgränssnitt. Applikationer passar inte den strukturen. De har en mer komplex kataloghierarki som är mycket mer än en enda binär.
Lyckligtvis innehåller Homebrew på Mac en underkommando som kallas ”casks” för mer komplexa multikatalogstrukturer .Det som är särskilt trevligt är att cask
använder en liknande kommandostruktur som standard brew
-kommandon, så att du kan använda liknande search
, install
och info
steg:
brew search --cask | wc -l
4772
Oj, det finns nästan 5 000 fler applikationer att surfa på, vilket är lättare att läsa på Homebrews webbplats.
Jag går igenom cask
med ett av mina nya favoritapplikationer: Meld (som jag läste om på Opensource.com). Det är en funktionsrik redigerare som hjälper till att hantera sammanfogningskonflikter. Det finns en nedladdning på webbplatsen, och jag skulle kunna köra igenom installationsprogrammet och dra och släppa den i min applikationsmapp, men det gör jag inte längre. Jag använder Homebrew.
Först, jag bekräfta att den är tillgänglig via en lite annan syntax:
$ brew search --casks meld
==> Casks
meld
Sedan använder jag cask
underkommando för att installera det:
Homebrew installerar inte bara programmet utan gör det också tillgängligt i min nuvarande sökväg under /usr/local/bin/
. Nu kan jag köra meld
från kommandoraden eller starta applikationen från applikationsmappen.
Uppdatera allt med brygguppgradering
Huvudet anledningen till att jag konsekvent använder en pakethanterare är så att jag konsekvent kan uppgradera min programvara för att undvika kända säkerhetsfel och se till att jag alltid har de senaste funktionerna. Om jag installerar allt för hand måste jag hålla ett öga på varje verktyg och applikation för att veta om det har en automatisk uppdatering och, om inte, dra ner de senaste utgåvorna själv.
Uppgraderingar är så bra pakethantering lyser. Eftersom jag inte har några speciella versionskrav kör jag bara ett kommando för att uppdatera allt smidigt:
Om du har mer komplexa behov eller vill hålla koll på uppgraderingar innan du installerar dem finns det gott om tillgängliga flaggor. Till exempel -n
erbjuder en ”torr körning” som visar tillgängliga uppgraderingar utan att installera dem. Du kan också ”fästa” en applikationsversion för att förhindra uppgraderingar.
Säkerhetskopiera installationen
Kommandoradsverktyget och applikationshanteringen hoppar till en helt ny nivå när verktyg låter dig säkerhetskopiera installationen som alla andra punkter i versionskontrollen. Homebrew har den typen av funktion som är tillgänglig att använda under dump
underkommando. Den genererar en Brewfile
, vilket är en återanvändbar lista över alla för närvarande installerade verktyg. en från din installation, gå in i din önskade mapp och kör:
$ cd ~/Development/dotfiles # This is my dotfile folder
$ brew bundle dump
När jag byter maskin och vill t för att installera samma applikationer med Homebrew, går jag till mappen med Brewfile och kör:
Den installerar alla listade formler och fat på min ny maskin.
Gå till Homebrew för pakethantering
Homebrew är min go-to-manager för kommandoradsverktyg och applikationer. Det håller mig organiserad och uppdaterad, och dess design är en vacker balans mellan användarvänlighet och funktionsdjup. Homebrew minimerar pakethanteringsuppgifterna till bara det du behöver veta, och de flesta användare kommer att dra nytta av det.
Om du redan är bekväm med Linux-pakethanterare kanske du tycker att Homebrew är för enkelt, men misstag inte Homebrew s användarvänlighet på grund av brist på funktioner. Att titta lite djupare avslöjar många avancerade alternativ som går långt utöver vad jag visade dig här. Lägga till -h
till alla brew
underkommando visar de rika funktioner som finns tillgängliga för att uppgradera, ta bort, felsöka och till och med bidra med nya formler med hjälp av mallar.