Tea il nuovo gestore di pacchetti creatore di birra

Tè

tea sta creando nuove tecnologie che cambieranno il modo in cui il codice viene distribuito

Max Howell, autore del popolare sistema di gestione dei pacchetti infuso (Homebrew) di macOS, lo ha rivelato sta lavorando allo sviluppo di un nuovo gestore di pacchetti, chiamato Tea, che si posiziona come una continuazione dello sviluppo di brew, andando oltre il gestore di pacchetti e offrendo un'infrastruttura di gestione dei pacchetti unificata che funziona con repository decentralizzati.

Il tè non è concettualmente come i tradizionali gestori di pacchetti., e invece del paradigma "Voglio installare un pacchetto", usa l'approccio "Voglio usare un pacchetto".

In particolare, Tea non ha un comando di installazione del pacchetto in quanto tale, ma utilizza invece la generazione dell'ambiente per eseguire i contenuti del pacchetto che non si sovrappongono al sistema corrente. I pacchetti vengono inseriti in una directory ~/.tea separata e non vengono assegnati a percorsi assoluti (possono essere spostati).

In Tea sono disponibili due modalità di base dell'operazione: salta in una shell dei comandi con accesso a un ambiente con i pacchetti installati e richiama direttamente i comandi relativi ai pacchetti. Ad esempio, eseguendo "tea +gnu.org/wget", il gestore di pacchetti scaricherà l'utilità wget e tutte le dipendenze necessarie, quindi fornirà l'accesso alla shell in un ambiente in cui è disponibile l'utilità wget installata.

La seconda opzione prevede un lancio diretto: «tea +gnu.org/wget -qO- tea.xyz/white-paper | tè + charm.sh/bagliore bagliore – ", che installerà l'utility wget e la eseguirà immediatamente in un ambiente separato, scaricando un file che verrà reso con glow. È possibile un concatenamento complesso, ad esempio per scaricare il file white-paper.pdf ed elaborarlo con l'utilità glow, è possibile utilizzare il seguente costrutto (se wget e glow non sono presenti, verranno installati).

Analogamente, puoi eseguire direttamente gli script, esempi di codice e one-liner, caricando automaticamente gli strumenti necessari per il lavoro.

Per nessun esempio, eseguire:

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

Installerà il toolkit della lingua Go ed eseguirà lo script colors.go con "–yellow" come argomento.

Per non chiamare ogni volta il comando tea, è possibile collegarlo come gestore universale di ambienti virtuali e un driver di programmi mancanti. In questo caso, se il programma in esecuzione non è disponibile, verrà installato e, se precedentemente installato, verrà avviato nel proprio ambiente.

Nella sua forma attuale, le confezioni disponibili per il Tè sono raccolte in due collezioni, dispensa.core e dispensa.extra, che include i metadati che descrivono le fonti di download dei pacchetti, gli script di compilazione e le dipendenze.

La collezione pantry.core include librerie e utilità di base che gli sviluppatori di Tea aggiornati e testati. pantry.extra contiene pacchetti che non sono ben stabilizzati o suggeriti dalla community. Viene fornita un'interfaccia Web per navigare tra i pacchetti.

Il processo di creazione dei pacchetti per Tea è notevolmente semplificato e ridotto alla creazione di un file package.yml universale (esempio), che non richiede l'adattamento del pacchetto per ogni nuova versione. Per scoprire nuove versioni e scaricare il suo codice, il pacchetto può essere collegato a GitHub.

Il file descrive anche le dipendenze e fornisce script di compilazione per le piattaforme supportate. Le dipendenze installate sono immutabili (la versione è fissa), il che elimina situazioni ripetitive simili all'incidente del pad sinistro.

In futuro, si prevede di creare repository decentralizzati cheue non sono legati ad alcuna memoria separata e utilizzano una blockchain distribuita per i metadati e un'infrastruttura decentralizzata per archiviare i pacchetti. Le versioni saranno certificate direttamente dai manutentori e revisionate dalle parti interessate. È possibile distribuire token di criptovaluta per contribuire alla manutenzione, al supporto, alla distribuzione e alla verifica dei pacchetti.

Infine, vale la pena ricordare che attualmente il progetto è inizialmente sviluppato come multipiattaforma (macOS e Linux sono attualmente supportati, il supporto di Windows è in fase di sviluppo.) Il codice del progetto è scritto in TypeScript ed è rilasciato con licenza Apache 2.0 (brew è stato scritto in Ruby e distribuito con licenza BSD).

Se sei interessato a poter saperne di più, puoi consultare i dettagli e il manuale d'uso di Tea all'indirizzo seguente link


Lascia un tuo commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati con *

*

*

  1. Responsabile dei dati: Miguel Ángel Gatón
  2. Scopo dei dati: controllo SPAM, gestione commenti.
  3. Legittimazione: il tuo consenso
  4. Comunicazione dei dati: I dati non saranno oggetto di comunicazione a terzi se non per obbligo di legge.
  5. Archiviazione dati: database ospitato da Occentus Networks (UE)
  6. Diritti: in qualsiasi momento puoi limitare, recuperare ed eliminare le tue informazioni.