Креаторот на пијалакот развива нов чај за менаџер на пакувања

Макс Хауел, авторот на популарниот систем за управување со пакети macOS (Homebrew), развива нов менаџер на пакети наречен Tea, позициониран како продолжение на развојот на пиво, надминувајќи го менаџерот на пакети и нуди унифицирана инфраструктура за управување со пакети која работи со децентрализирани складишта. Проектот првично се развива како проект со повеќе платформи (моментално се поддржани macOS и Linux, поддршката за Windows е во развој). Кодот на проектот е напишан во TypeScript и се дистрибуира под лиценцата Apache 2.0 (препаратот беше напишан во Ruby и дистрибуиран под лиценцата BSD).

Чајот концептуално не е како традиционалните менаџери на пакети и наместо парадигмата „Сакам да инсталирам пакет“, ја користи парадигмата „Сакам да користам пакет“. Особено, Tea нема команда да инсталира пакет како таков, туку наместо тоа користи генерирање на околина за извршување на содржината на пакетот што не се преклопува со тековниот систем. Пакетите се сместени во посебен директориум ~/.tea и не се врзани за апсолутни патеки (тие можат да се преместат).

Обезбедени се два главни начини на работа: одење до командна школка со пристап до околината со инсталирани пакети и директно повикување команди поврзани со пакетот. На пример, кога се извршува „tea +gnu.org/wget“, менаџерот на пакети ќе ја преземе алатката wget и сите потребни зависности, а потоа ќе обезбеди пристап до школка во околината во која е достапна инсталираната алатка за wget. Втората опција вклучува директно стартување - „tea +gnu.org/wget wget https://some_webpage“, во која алатката wget ќе се инсталира и веднаш ќе се стартува во посебна средина. Можно е да составите сложени синџири, на пример, да ја преземете датотеката white-paper.pdf и да ја обработите со помошта за сјај, можете да ја користите следнава конструкција (ако недостасуваат wget и сјај, тие ќе се инсталираат): чај + gnu.org/wget wget -qO- https:/ /tea.xyz/white-paper.pdf | чај +charm.sh/glow glow - или можете да користите поедноставна синтакса: чај -X wget -qO- чај.xyz/white-paper | чај - X сјај -

На сличен начин, можете директно да извршите скрипти, примери на кодови и еднослојни линии, автоматски вчитувајќи ги алатките неопходни за нивното работење. На пример, со извршувањето на „tea https://gist.githubusercontent.com/i0bj/…/raw/colors.go -yellow“ ќе се инсталира комплетот со алатки Go и ќе се изврши скриптата colors.go со аргументот „-yellow“.

За да не ја повикувате командата чај секој пат, можно е да се поврзете како универзален менаџер на виртуелни средини и управувач за програми што недостасуваат. Во овој случај, ако програмата што работи не е достапна, таа ќе се инсталира, а ако е претходно инсталирана, ќе се стартува во нејзината околина. $ deno zsh: командата не е пронајдена: deno $ cd my-project $ deno tea: се инсталира deno.land^1.22 deno 1.27.0 > ^D

Во неговата сегашна форма, пакетите достапни за Tea се собрани во две колекции - pantry.core и pantry.extra, кои вклучуваат метаподатоци што ги опишуваат изворите за преземање пакети, скрипти за градење и зависности. Колекцијата pantry.core ги вклучува главните библиотеки и алатки, ажурирани и тестирани од развивачите на Tea. Pantry.extra содржи пакети кои не се доволно стабилизирани или кои се предложени од членовите на заедницата. Обезбеден е веб-интерфејс за навигација низ пакетите.

Процесот на креирање пакети за Tea е значително поедноставен и се сведува на создавање на една универзална датотека package.yml (пример), која не бара прилагодување на пакетот за секоја нова верзија. Пакетот може да се поврзе до GitHub за да открие нови верзии и да го преземе нивниот код. Датотеката, исто така, ги опишува зависностите и обезбедува скрипти за градење за поддржаните платформи. Инсталираните зависности се непроменливи (верзијата е фиксна), што го елиминира повторувањето на ситуации слични на инцидентот со левата подлога.

Во иднина се планира да се создадат децентрализирани складишта кои не се врзани за посебно складирање и да користат дистрибуиран блокчејн за метаподатоци и децентрализирана инфраструктура за складирање на пакети. Изданијата ќе бидат сертифицирани директно од одржувачите и ќе бидат разгледани од засегнатите страни. Можно е да се дистрибуираат токени за криптовалути за придонеси за одржување, поддршка, дистрибуција и верификација на пакетите.

Креаторот на пијалакот развива нов чај за менаџер на пакувања


Извор: opennet.ru

Додадете коментар