Höfundur bruggsins er að þróa nýtt pakkastjórate

Max Howell, höfundur vinsæla macOS pakkastjórnunarkerfisins bruggsins (Homebrew), er að þróa nýjan pakkastjóra sem heitir Tea, staðsettur sem framhald þróunar bruggsins, fer lengra en pakkastjórnunarkerfið og býður upp á sameinað pakkastjórnunarinnviði sem virkar með dreifðum geymslum. Verkefnið er upphaflega þróað sem fjölvettvangsverkefni (macOS og Linux eru nú studd, Windows stuðningur er í þróun). Verkefniskóðinn er skrifaður í TypeScript og dreift undir Apache 2.0 leyfinu (brugg var skrifað í Ruby og dreift undir BSD leyfinu).

Te er hugmyndafræðilega ekki eins og hefðbundnir pakkastjórar og í stað „Ég vil setja upp pakka“ hugmyndafræðina notar það „Ég vil nota pakka“ hugmyndafræðina. Sérstaklega hefur Tea ekki skipun til að setja upp pakka sem slíkan, en notar þess í stað umhverfisframleiðslu til að framkvæma pakkainnihaldið sem skarast ekki við núverandi kerfi. Pakkar eru settir í sérstaka ~/.tea möppu og eru ekki bundnir algjörum slóðum (hægt að færa þá).

Tvær aðalaðgerðaaðferðir eru í boði: að fara í skipanaskel með aðgang að umhverfinu með uppsettum pakka og hringja beint í pakkatengdar skipanir. Til dæmis, þegar „tea +gnu.org/wget“ er keyrt, mun pakkastjórinn hlaða niður wget tólinu og öllum nauðsynlegum ósjálfstæðum og veita síðan skel aðgang í umhverfinu þar sem uppsett wget tólið er tiltækt. Annar valmöguleikinn felur í sér beina ræsingu - "tea +gnu.org/wget wget https://some_webpage", þar sem wget tólið verður sett upp og ræst strax í sérstöku umhverfi. Það er hægt að semja flóknar keðjur, til dæmis til að hlaða niður white-paper.pdf skránni og vinna hana með glóa tólinu, þú getur notað eftirfarandi smíði (ef wget og glow vantar verða þau sett upp): tea + gnu.org/wget wget -qO- https:/ /tea.xyz/white-paper.pdf | te +charm.sh/glow glow - eða þú getur notað einfaldari setningafræði: te -X wget -qO- tea.xyz/white-paper | te -X ljóma -

Á svipaðan hátt geturðu keyrt forskriftir, kóðadæmi og einlínu beint og hlaðið sjálfkrafa inn nauðsynlegum verkfærum fyrir rekstur þeirra. Til dæmis, að keyra "te https://gist.githubusercontent.com/i0bj/…/raw/colors.go -yellow" mun setja upp Go verkfærakistuna og keyra colors.go forskriftina með röksemdinni "-gulur".

Til þess að kalla ekki te skipunina í hvert skipti, er hægt að tengja hana sem alhliða stjórnandi sýndarumhverfis og meðhöndlun fyrir vantar forrit. Í þessu tilviki, ef keyrandi forritið er ekki tiltækt, verður það sett upp og ef það var sett upp áður verður það ræst í umhverfi sínu. $ deno zsh: skipun fannst ekki: deno $ cd my-project $ deno tea: setur upp deno.land^1.22 deno 1.27.0 > ^D

Í núverandi formi er pakkunum sem eru í boði fyrir Tea safnað í tvö söfn - pantry.core og pantry.extra, sem innihalda lýsigögn sem lýsa niðurhalsuppsprettum pakka, smíða forskriftir og ósjálfstæði. Pantry.core safnið inniheldur helstu bókasöfn og tól, viðhaldið uppfært og prófað af Tea verktaki. Pantry.extra inniheldur pakka sem eru ekki nógu stöðugir eða sem meðlimir samfélagsins hafa lagt til. Vefviðmót er til staðar til að fletta í gegnum pakkana.

Ferlið við að búa til pakka fyrir Tea er mjög einfaldað og kemur niður á því að búa til eina alhliða package.yml skrá (dæmi), sem þarf ekki að laga pakkann fyrir hverja nýja útgáfu. Pakki getur tengst GitHub til að uppgötva nýjar útgáfur og hlaða niður kóðanum þeirra. Skráin lýsir einnig ósjálfstæði og býður upp á byggingarforskriftir fyrir studda vettvang. Uppsettu ósjálfstæðin eru óbreytanleg (útgáfan er föst), sem útilokar endurtekningu á aðstæðum svipaðar atvikinu á vinstri púðanum.

Í framtíðinni er fyrirhugað að búa til dreifðar geymslur sem eru ekki bundnar við neina sérstaka geymslu og nota dreifða blokkakeðju fyrir lýsigögn og dreifða innviði til að geyma pakka. Útgáfur verða vottaðar beint af viðhaldsaðilum og yfirfarnar af hagsmunaaðilum. Það er hægt að dreifa dulritunargjaldmiðlamerkjum fyrir framlag til viðhalds, stuðnings, dreifingar og sannprófunar pakka.

Höfundur bruggsins er að þróa nýtt pakkastjórate


Heimild: opennet.ru

Bæta við athugasemd