Zero Install

Zero Install — багатоплатформова децентралізована система розповсюдження і встановлення застосунків. Zero Install дозволяє розробникам застосунків організувати їхнє поширення безпосередньо зі своїх вебсайтів, надаючи при цьому такі можливості як автоматична установка оновлень, використання єдиного набору поділюваних бібліотек, обробку залежностей і верифікацію джерела пакунків за цифровими підписами. Код системи написаний на мові Python і розповсюджується під ліцензією LGPL.

Zero Install
Zero Install готовий запустити звантажену програму
Тип система керування пакунками
Розробник Thomas Leonard
Стабільний випуск 2.11.5 [1] (5 березня 2013 (2013-03-05))
Версії 2.12-1 (18 вересня 2016)[2]
Репозиторій github.com/0install/0install
Операційна система Linux, Unix, Mac OS X, Windows
Мова програмування Python
Ліцензія GNU Lesser General Public License
Вебсайт 0install.net

Станом на 2013 рік з використанням Zero Install підготовлено більше тисячі пакунків, які узагальнені в єдиному каталозі-дзеркалі.[3]

Пакунки можуть формуватися і поширюватися для різних операційних систем, включаючи дистрибутиви Linux, FreeBSD, Solaris, Mac OS X і Windows. При цьому Zero Install не ставить перед собою мети замінити вже використовувані в системі засоби управління пакунками, а лише доповнює їх і не перетинається з ними в роботі. Zero Install не визначає новий формат пакунків, а маніпулює звичайними tar.gz- або zip-архівами, що поставляються в поєднанні з мета-даними у форматі XML. У мета-даних визначаться вміст пакунків і залежності між пакунками.

Один файл з метаданими може використовуватися для опису пакунків для різних платформ і операційних систем. Склад пакунків формується на основі вже зібраних виконуваних файлів або архіву з сирцевими текстами (компіляція виконується на клієнтській системі, за аналогією з портами FreeBSD або портриджами Gentoo). З дистрибутивів в яких Zero Install використовується як основна система керування пакунками можна відзначити GoboLinux.

В Zero Install підтримується низка можливостей, не властивих звичайним локальним системам управління пакунками. Наприклад, підтримується одночасна установка різних версій однієї програми. Для роботи не потрібні привілеї суперкористувача (застосунки встановлюються в домашню теку користувача). Кожна програма встановлюється у свою підтеку, що спрощує організацію різних chroot-оточень і ізольованих контейнерів. При цьому дані теки розглядаються як кеш і можуть бути легко вилучені після того як у програмі більше немає необхідності.

Незважаючи на поділ по текам Zero Install намагається по можливості спільно використовувати бібліотеки між різними застосунками і враховує при аналізі залежностей вміст штатного репозиторію дистрибутиву і вже встановлених програм. Підтримується швидка установка експериментальних версій програм, котрі ще не вийшли, наприклад, можна встановити застосунок на основі зрізу Git-репозиторію, без будь-якої правки створених для релізу метаданих. Для контролю цілісності і перевірки валідності джерела застосунку використовується система цифрових підписів. Для підозрілих застосунків передбачена функція запуску в chroot-оточенні.

Примітки

Посилання

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.