LINUX.ORG.RU

Релиз Zero Install 2.0

 , ,


1

2

Спустя два года после предыдущего релиза представлена новая версия мультиплатформенной децентрализованной системы управления приложениями Zero Install, распространяющейся под лицензией LGPL.

Zero Install позволяет разработчикам распространять приложения непосредственно со своих веб-узлов, одновременно предоставляя такие возможности, как автоматические обновления, разделяемые библиотеки, обработка зависимостей, верификация источников по цифровым подписям. Zero Install не заменяет собой традиционные системы управления пакетами и не пересекается с ними, он дополняет их. Также он не создаёт новый формат пакетов, он оперирует привычными архивами tar.gz/zip в комплекте с метаданными в формате XML. На данный момент на зеркале Zero Install доступно более тысячи пакетов для операционных систем Linux, Windows, MacOS X, FreeBSD и Solaris. Более того, в дистрибутиве GoboLinux Zero Install используется в качестве основного средства управления пакетами.

В Zero Install поддерживается ряд возможностей, не свойственных обычным локальным системам управления пакетами. Например, поддерживается одновременная установка разных версий одной программы. Для работы не требуются привилегии суперпользователя — приложения устанавливаются в домашний каталог пользователя. Каждая программа устанавливается в свой подкаталог, что упрощает организацию различных chroot-окружений и изолированных контейнеров для подозрительных приложений. Несмотря на разделение по каталогам Zero Install старается по возможности совместно использовать библиотеки между разными приложениями и учитывает при анализе зависимостей содержимое штатного репозитория дистрибутива и уже установленных программ. Поддерживается быстрая установка ещё не вышедших экспериментальных версий программ, например, можно установить приложение на основании среза Git-репозитория, без какой-либо правки созданных для релиза метаданных.

Новшества версии 2.0:

  • Возможность использования штатного пакетного менеджера для доустановки зависимостей, т. е. если для пакета требуется доустановить зависимости, то они будут установлены в первую очередь из основного репозитория дистрибутива, если в нём есть пакет с нужной библиотекой или приложением. Поддержка доустановки зависимостей обеспечена для пакетных менеджеров из состава Arch Linux, Cygwin, Darwin, Debian, Fink, портов FreeBSD и Gentoo, MacPorts, Mint, openSUSE, Red Hat, Slackware и Windows.
  • Внесены многочисленные улучшения в синтаксис XML-метаданных, используемых для определения зависимостей и описания пакетов.
  • Добавлена поддержка новых платформ Arch, Cygwin, Darwin, Fink и MacPorts.
  • Вместо псевдонимов отныне используется концепция Apps.
  • Расширены средства диагностики проблем с разрешением зависимостей.
  • Исправлен баг с использованием PyGTK 2.22+.

О Zero Install

>>> Подробности

anonymous

Проверено: Shaman007 ()

Ответ на: комментарий от gBopHuk

Из /home давно можно было запускать что угодно.

Quasar ★★★★★ ()
Ответ на: комментарий от anonymous

логичнее всего было бы класть их в /home/bin

anonymous ()
Ответ на: комментарий от anonymous

на мой субъективный взгляд, сабж - очень недооценённый продукт, который с успехом может заменить такие сущности, как AUR, PPA и иже с ними

Лорчую.

geekless ★★ ()
Ответ на: комментарий от anonymous

Логично, с учетом что (общей) поюзерной иерархии нигде больше нет. С другой стороны, можно поизгаляться — ставим сабж из реп, а он создает /opt/zeroinstall/$UID/*. С одной стороны срач еще тот, с другой можно оставить любимый noexec на хомяк (хоть он для скриптов и не ага).

А вообще, дать возможность переопределения переменной окружения / опцией в конфиге, с дефолтом в /home/bin и ладно.

anonymous ()

В линухе Zero Install бесполезен.

Ни разу не смог установить из него пакет. Традиционно, libc не подходит и ядро не той системы, каких-то Python компонентов не хватает, которых нет в репозитарии.

Проблема в самом линухе. Ну не предназначен он для распространения программ. Разрабочик должен говняшиться, и пилить сборку под каждый дистр. Ведь совместимость - это нонсенс, и никому не нужна.

Xintrea ★★★★★ ()

GoboLinux опередил сам Линукс лет на 10 - именно столько пройдёт, пока все эти «менеджеры пакетов» сдохнут в бесконечных попытках облегчать судьбу хомячков. Слаку любили за простоту. Гобу - тоже полюбят, только вот кактусов нажрутся....

matumba ★★★★★ ()

Вообще, с последними тенденциями в развитии Linux (systemd, wayland, lightdm и другие новомодные кулуарно-разрабатываемые системные нововведения, с которыми очень тяжело разбираться и которые меняются каждый год, что затрудняет поддержку актуальности системы), начал присматриваться к альтернативным пакетным менеджерам: guix/nix, portage, теперь вот 0install (про него, естественно, давно знал, но сейчас новость представила его так, как я сам представляю себя идеальный пакетный менеджер).

Захотелось даже написать свой пакетный менеджер, сочетающий лучшие фичи вышеназванных:

  • Возможность ставить свой софт в $HOME (с дедупликацией библиотек), даже без желания рута, если нет преград вроде noexec флага.
  • Установка как бинарных прекомпилированных пакетов, так и компиляция из исходников
  • Возможность как слабосвязанных зависимостей («требует пакет P версии от x.y.z до X.Y.Z»), так и сильных (функциональных криптографических) зависимостей в стиле guix/nix (например, когда надо поставить связку циклически зависимых пакетов, которые точно друг с другом работают)
  • Возможность написания инсталляционных скриптов на обычном shell, как в portage, если не требуется сильных зависимостей.
  • Причём метаданные хорошо бы иметь возможность переопределять локально («пакет X версии k.l.m конфликтует с пакетом Y версии K.L.M»), а также иметь возможность импортировать (pull) метаданные других пользователей/с других машин
  • Возможность следить за изменением доступных метаданных того или иного пакета по определённому адресу (децентрализованный аналог PPA/AUR)
  • Возможность администрировать boot+initrd, системный раздел (/, /usr) и домашние проги единообразно, с возможностью дедупликации при получении повышенных прав (что бы затестить софт от имени левого пользователя, а при
  • Поддежка «поколений» (в терминах nix) - возможность легко тестировать и откатываться, независимо на уровне ядра+boot+initrd, на системном и пользовательском.

Плюс необязательные продвинутые фичи, по сути дела реализующую философию пользовательской свободы GNU Hurd:

  • Управлять не только вручную пользователю, но и программе, которой нужны развесистые системы плагинов/скриптов
  • Инструмент для работы на системах, где доступ к загрузчику ограничен - наличие API для доступа к эмуляторам функционала ядра, недоступного на данной машине
  • Стандартизация API для доступа к ресурсам/фичам, предоставляемым частными пакетами: имён файлов в файловой системе, адресов сокетов/серверов.
  • Автоматическое разрешение конфликтов путём поднятия виртуализации юзерспейса (хотя бы chroot) для частей системы, конфликтующих с остальной системой + автоматизирующий инструмент для дедупликации/деконфликтизации системы (завязанный с механизмом поколений, для возможности тестирования).
  • Прозрачная поддержка кросскомпиляции и возможность выделения удалённого сервера сборки.

Интересно, кому-нибудь ещё такой инструмент интересен? Подсматривали уже аналоги?

allter149 ()
Ответ на: комментарий от allter149

Открой для себя набор утилит Debian'а.

PS: Сабж не нужен. Второсортные поделки (на питоне) тем более не нужны.

anonymous ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.