Tea the new brew creator package manager

Te

tea skaper nye teknologier som vil endre måten kode distribueres på

Max Howell, forfatter av det populære pakkehåndteringssystemet brygge (Homebrew) av macOS, avslørte det jobber med utviklingen av en ny pakkebehandler, kalt Tea, som er posisjonert som en fortsettelse av bryggeutvikling, som går utover pakkebehandleren og tilbyr en enhetlig pakkehåndteringsinfrastruktur som fungerer med desentraliserte arkiver.

Te er ikke konseptuelt som tradisjonelle pakkeforvaltere., og i stedet for "Jeg vil installere en pakke"-paradigmet, bruker den tilnærmingen "Jeg vil bruke en pakke".

Spesielt Tea har ikke en pakkeinstalleringskommando som sådan, men bruker i stedet miljøgenerering for å kjøre pakkeinnhold som ikke overlapper det gjeldende systemet. Pakker er plassert i en egen ~/.tea-katalog og er ikke tilordnet absolutte baner (de kan flyttes).

To grunnleggende moduser er gitt i Tea operasjon: Hopp inn i et kommandoskall med tilgang til et miljø med pakker installert og påkall direkte pakkerelaterte kommandoer. For eksempel, ved å kjøre "tea +gnu.org/wget", vil pakkebehandleren laste ned wget-verktøyet og alle nødvendige avhengigheter, og deretter gi shell-tilgang i et miljø der det installerte wget-verktøyet er tilgjengelig.

Det andre alternativet innebærer en direkte lansering: «te +gnu.org/wget -qO- tea.xyz/white-paper | te +charm.sh/glow glød – ", som vil installere wget-verktøyet og kjøre det umiddelbart i et eget miljø, og laste ned en fil som vil bli gjengitt med glød. Kompleks kjetting er mulig, for eksempel for å laste ned white-paper.pdf-filen og behandle den med glow-verktøyet, kan du bruke følgende konstruksjon (hvis wget og glow ikke er til stede, vil de bli installert).

Tilsvarende, du kan kjøre skript direkte, kodeeksempler og one-liners, laster automatisk inn verktøyene som trengs for jobben.

For ingen eksempel, kjør:

tea https://gist.githubusercontent.com/i0bj/2b3afbe07a44179250474b5f36e7bd9b/raw/colors.go --yellow
tea: installing go 1.18.3
go: installing deps
go: running colors.go
…

Den vil installere Go-språkverktøysettet og kjøre colors.go-skriptet med "–gul" som argument.

For ikke å ringe te-kommandoen hver gang, er det mulig å koble den til som en universell leder av virtuelle miljøer og en driver for manglende programmer. I dette tilfellet, hvis det kjørende programmet ikke er tilgjengelig, vil det bli installert, og hvis det er installert tidligere, vil det starte i ditt miljø.

I sin nåværende form, pakkene som er tilgjengelige for te er samlet i to samlinger, pantry.core og pantry.extra, som inkluderer metadata som beskriver kilder for pakkenedlasting, byggeskript og avhengigheter.

Samlingen pantry.core inkluderer kjernebiblioteker og verktøy som Tea-utviklere holdt seg oppdatert og testet. pantry.extra inneholder pakker som ikke er godt stabilisert eller som er foreslått av fellesskapet. Et nettgrensesnitt er tilgjengelig for å navigere gjennom pakkene.

Prosessen med å lage pakker for Tea er kraftig forenklet og redusert til å lage en universell package.yml-fil (eksempel), som ikke krever at pakken tilpasses for hver nye versjon. For å oppdage nye versjoner og laste ned koden, kan pakken kobles til GitHub.

Filen beskriver også avhengigheter og gir byggeskript for støttede plattformer. Installerte avhengigheter er uforanderlige (versjonen er løst), noe som eliminerer gjentatte situasjoner som ligner på hendelsen på venstre pad.

I fremtiden er det planlagt å lage desentraliserte depoter somue er ikke knyttet til noen separat lagring og bruker en distribuert blokkjede for metadata og en desentralisert infrastruktur for å lagre pakker. Versjonene vil bli direkte sertifisert av vedlikeholderne og gjennomgått av interesserte parter. Det er mulig å distribuere kryptovaluta-tokens for å bidra til vedlikehold, støtte, distribusjon og verifisering av pakker.

Til slutt er det verdt å nevne at for øyeblikket prosjektet er i utgangspunktet utviklet som tverrplattform (macOS og Linux støttes for øyeblikket, Windows-støtte er under utvikling.) Prosjektets kode er skrevet i TypeScript og er utgitt under Apache 2.0-lisensen (brygget ble skrevet i Ruby og sendt under en BSD-lisens).

Hvis du er interessert i å kunne lære mer om det, kan du se Teas detaljer og brukerhåndbok på følgende lenke.


Legg til som foretrukket kilde i Google