|
Выпущена новая версия формата распространения ПО Installer-SH, созданного для решения проблемы распространения программ в дистрибутивах Linux и FreeBSD (desktop-сегмент). Изначально Installer-SH разрабатывался для внутреннего использования в дистрибутиве Chimbalix, однако по мере совершенствования превратился в универсальный установочный пакет для дистрибутивов Linux, а позже обзавёлся поддержкой платформы FreeBSD и возможностью поставки сборок для разных процессорных архитектур в одном пакете.
По сравнению с использованием обычных архивов или формата AppImage в Installer-SH проведена оптимизация алгоритмов сжатия, позволившая снизить объём трафика при передаче по сети и сократить место, занимаемое на локальных дисках. Пакет по умолчанию работает в домашнем каталоге и не требует root-прав для установки и удаления ПО. Однако пользователь может выбрать режим установки "для всех пользователей", который задействует системные каталоги и требует root-прав. По умолчанию Installer-SH выносит файлы конфигурации и кэш в отдельную директорию рядом с программой, чтобы избежать конфликтов файлов конфигурации при установке разных версий одной и той же программы. Тем не менее, пользователь может вернуться к классической схеме работы, когда для хранения конфигурации, кэша и прочих файлов используется основной домашний каталог.
Упаковщик может отключить лишние этапы настройки перед установкой, так как не все приложения используют домашний каталог и не любые программы могут корректно работать при установке в системном режиме с root-правами. Разработчик может обновлять однажды созданный и настроенный пакет, заменяя файлы ПО, обновляя базовую информацию и запуская заново процесс упаковки и очистки от мусора. Большинство рутинных задач автоматизировано и сводится к вызову инсталлятора с нужными аргументами (краткая справка доступна при запуске с аргументами -h, -help или --help).
Благодаря возможностям изоляции формата можно создавать распространяемые пакеты даже для приложений, требующих наличия специфических файлов в домашнем каталоге. В таком случае следует разместить все необходимые для работы файлы в выделенном каталоге "userdata" рядом с программой и отключить соответствующий этап настройки, чтобы пользователь случайно ничего не сломал. Удаление ненужных программ происходит с помощью встроенного в каждую программу деинсталлятора.
Формат Installer-SH действует согласно спецификациям XDG Desktop и PortSoft и не зависит от конкретного рабочего окружения ОС, соответствующего спецификациям XDG Desktop. Спецификации PortSoft изначально разрабатывались для дистрибутива Chimbalix и предназначены для структурированной установки ПО в выделенный каталог, чтобы предотвратить неразбериху среди установленных приложений разных архитектур и версий.
Так как в отличие от XDG Desktop спецификации PortSoft весьма новая разработка, формат Installer-SH самодостаточно несёт в себе всё необходимое для развёртывания спецификаций PortSoft и подготовки выделенного раздела в меню приложений. Выделенный раздел в меню приложений необходим для того, чтобы структурировать установленные приложения и предоставить доступ для запуска и обслуживания каждой программы в отдельности.
Хотя формат ориентирован на desktop-сегмент, возможно производить установку ПО в дистрибутивах, у которых отсутствует графическая оболочка. Но такой сценарий использования не тестировался в реальных условиях.
Пользователь может сделать резервную копию любой правильно собранной программы, и она сохранит работоспособность после копирования на другой компьютер (ярлыки таким образом скопировать не выйдет, потому что они раскладываются согласно спецификациям XDG по трём разным местам в файловой системе). Каждый распространяемый установочный пакет с ПО является полноценным носителем формата Installer-SH. На основе уже существующих установочных пакетов можно восстановить формат и создавать новые установочные пакеты с другими приложениями.
Первый многоплатформенный установочный пакет с игрой "2048" в формате Installer-SH 2.8 поддерживает архитектуры x86, x86_64, amd64 и платформы Linux и FreeBSD. Размер установочного файла составляет 2.1 мегабайта. Данный пакет успешно прошёл тестирование в дистрибутивах Debian 7 (GNOME, x86_64), Fedora 20 (Xfce, x86_64), Gentoo (i686), Manjaro 20 (x86_64), openSUSE 13.1 (KDE, i686), Slackware 15 (x86_64), FuryBSD 12.1 (amd64) и NomadBSD 14.1 (i386). Помимо этого доступно ещё несколько десятков пакетов.
|