Installer-SH
Installer-SH — это, по заверениям создателя, универсальный установочный пакет приложений для Linux, который должен решить все проблемы красноглазых, задолбавшихся плясать с бубном вокруг пакетных менеджеров. Родился сей вундерваффе в недрах местечкового дистрибутива Chimbalix, но, как водится, амбиции автора по имени Chimbal быстро переросли масштаб его личной песочницы.
Зачем оно надо?[править]
По легенде, создатель Installer-SH однажды преисполнился праведного гнева, узрев всю глубину той клоаки, в которую превратилось распространение софта под пингвином. DEB, RPM, Flatpak, Snap, AppImage — весь этот зоопарк, по мнению автора, есть не что иное, как «хлам», требующий перманентных танцев с бубном, особенно если твой комп волею судеб оказался оффлайн, а репозитории, как водится, «мертвы».
Желаете потанцевать с бубном и зависимостями, рискуя в очередной раз сломать линукс так и не установив желаемое приложение? Вперёд и с песней…
Вот тут-то на сцену и выходит Installer-SH, белый и пушистый, как первый снег на Эвересте. Главный козырь — автономность. Мол, скачал один раз SH-пакет, закинул на флешку (да-да, ту самую, с хентайными картинками и дистрибутивом оффтопика), и можешь ставить софтину даже после Термоядерной войны, когда все репозитории Убунты и Debian превратятся в радиоактивный пепел.
Ещё одна «фича» — Installer-SH принципиально не умеет ставить системные библиотеки. И это, внезапно, преподносится как плюс! Дескать, так оно «защищает систему пользователя от типичного для линуксов ада зависимостей». Ну да, зачем лечить болезнь, если можно просто ампутировать ногу? Зато не споткнёшься!
Версия 2.0: Больше контроля и костылей![править]
С выходом второй версии, проект, по словам автора, «взял под контроль графическое оформление». Это значит, что теперь псевдографический интерфейс установщика в терминале должен выглядеть одинаково неказисто на всех системах, включая те, где с оформлением терминала всё настолько плохо, что лучше бы его и не было (привет, GNOME!). Особый шик — использование по умолчанию 8-битной палитры, потому что линуксы образца 2013 года (живее всех живых) не осиливают богомерзкий RGB. Но не волнуйся, Анон, опцию включить RGB для илитных систем таки оставили.
Улучшили определение рабочего окружения, потому что старые линуксы, видимо, врут о себе напропалую через стандартные переменные. Добавили проверку архитектуры, чтобы какой-нибудь безумец не попытался вкорячить ARM-сборку на свой x86-калькулятор (хотя, зная линуксоидов…).
Из интересного — экспериментальная фича установки «данных пользователя». Автор, заглянув в свой $HOME, ужаснулся типичной «Linux-помойке», где каждая программа гадит конфигами куда ей вздумается, игнорируя несчастные .local/share и .config. Решение? Гениально простое: создать рядом с установленным приложением ещё один каталог и складывать весь пользовательский мусор туда!
Как бы сказать… Посмотрел я однажды в свой домашний каталог и увидел характерную Linux-помойку… К чему приводит смешение файлов конфигурации от разных версий софта, полагаю, рассказывать нет смысла… В итоге я решил проблему просто разместив «домашний каталог» рядом с установленным приложением в специальном подкаталоге.
Это, якобы, решает проблему конфликта версий конфигов (ведь Installer-SH позволяет ставить несколько версий одной программы) и позволяет легко бэкапить/переносить софтину вместе с настройками, просто скопировав папку. Правда, в системном режиме эта фича не работает из-за прав доступа, да и любая интеграция с системой глубже созданных ярлыков идёт лесом. Но кого волнуют такие мелочи, когда на кону борьба с помойкой?
Практическое применение: Установка 0 A.D. через тернии[править]
Дабы доказать состоятельность своего творения, автор решил упаковать в Installer-SH опенсорсную RTS 0 A.D.. Естественно, брать её из «вечно недоразвитых и тухлых репозиториев Linux» — ниже его достоинства. Путь лежал на официальный сайт, где после продирания сквозь страницы мануалов, забитых инструкциями для пакетных менеджеров, был найден «наиболее адекватный» способ — AppImage. Который, впрочем, тоже не избежал критики за свои «технические и практические проблемы».
Далее последовали ритуальные пляски: распаковка AppImage (в Chimbalix это делается «элементарно, через контекстное меню»), проверка работоспособности, настройка Installer-SH (с обязательным использованием той самой фичи «выноса пользовательских данных»), создание ярлыков (много ярлыков!), и, конечно же, оптимизация сжатия с помощью встроенного 7-Zip. Автор долго подбирал размер словаря LZMA2, балансируя между размером пакета и требованиями к ОЗУ при установке, дабы сэкономить пару мегабайт по сравнению с AppImage. Лулз в том, что Installer-SH по сути своей — самораспаковывающийся архив на стероидах со скриптами-обвязками.
Настало время тестов. Попытка установить игру на древний Debian 7 провалилась с треском — классический ад зависимостей передал пламенный привет в виде требования свежей версии GLIBC. Пришлось переключиться на Debian 12, где игра запустилась, но куда-то пропала панель задач («не моя проблема, а разработчиков дистрибутива» — заявляет автор Installer-SH). На EndeavourOS и Manjaro тоже всё заработало. Итог: пакет готов, занимает 1.3 GiB против 1.6 GiB у AppImage, и его можно скачать с GitHub. Профит!
Так нужно или нет?[править]
С одной стороны, Installer-SH пытается решить реальные проблемы линуксового десктопа: зоопарк форматов, зависимостную иглу репозиториев и неудобство оффлайн-установки. Идея автономного пакета, не трогающего систему, сама по себе не нова и вполне здрава.
С другой — это явный NIH-синдром в терминальной стадии, сдобренный изрядной долей ЧСВ автора и ненавистью ко всему существующему. Вместо того чтобы допиливать тот же AppImage или участвовать в развитии Flatpak/Snap, создаётся ещё один формат, со своими костылями (вроде ручного управления графикой терминала и выноса хомяка в подпапку). Продвигается он в основном через личный блог автора на Overclockers.ru (sic!) и личный же репозиторий на GitHub.
Взлетит ли? Как обычно, вопрос риторический. Скорее всего, останется уделом автора, его дистрибутива Chimbalix и горстки энтузиастов, разделяющих его презрение к мейнстримным решениям. А рядовой Анон так и будет дальше пользоваться пакетным менеджером своего дистра, флатпаками или просто качать AppImage, изредка матерясь на зависимости, но в целом живя дальше.