Напомнило маниакальное стремление новичков паковать питоньи пакеты pyinstaller-ом, czfreez-ом и прочим гавном. На вопрос, а собственно, зачем, обычно так и отвечают - ну чтобы удобнее было. Почему это удобнее, чем установить пакет с помощью pip, начинаются сказки про бабушку без доступа к интерету которой любящий внук передаст своё гениальное творение на флешке, и всё заработает. Ну это еще как-то можно понять, а вот зачем похабить nix файлы скрещивая их с AppImage - решительно не ясно, чем они плохи сами по себе, без противоестественного секса с чем бы то ни было?
У AppImage своя ниша где он идеален пости. Оно не замена ПМ. Приблизительно то что ты хочешь было (а сейчас есть?) в SLAX. Где программы были независимыми модулями (или мне память изменяет с мозжечком).
Система будет огромной, если собирать как надо, а не опять наедятся на некую базовую систему (она и так предполагается, но я имею в виду расширенную в рамках такого дистра).
Чтобы их удобно скачивать/закачивать, меняться ими, продавать/покупать
AppImage – это неудобно. Но если тебе очень хочется обмазаться и дро^Wрадоваться жизни, то есть Nitrux. Он использует AppImage как основной формат пакетов.
Я думал установочный образ будет гигов 20 весить. Там прям можно взять любую программу скопировать и она запустится на убунте/дебиане/арче/федоре/слаке?
почему, если они все из себя такие независимые и распространяемые?
Потому что тебе надо самому руками их куда-то класть и обновлять потом.
Потому что они зачастую плохо интегрируются с основной системой.
Потому что все библиотеки тащатся прямо в пакете, а значит любая дыра в каком-нибудь сраном openSSL приведёт к необходимости обновлять и пересобирать всё.
Потому что туда можно запихнуть только софт с гуем и то не весь. Всякие демоны и прочий системный софт в AppImage совать подобно самоубийству.
Всё это чудовищно усложняет администрирование системы. AppImage удобен только чтобы скачать какой-нибудь новый плеер на потыкать, после чего либо закинуть мейнтейнерам дистра просьбу опакетить нормально, либо сделать это самому.
Ей богу, даже FlatPak лучше чем AppImage несмотря на всё убожество первого.
тебе надо самому руками их куда-то класть и обновлять потом
пакетный менеджер операционной системы мог бы делать это
Не мог бы. У AppImage нет централизированного репозитария.
они зачастую плохо интегрируются с основной системой
Специальнозаточенная под них операционная система могла бы интегрироваться с ними хорошо, почему нет?
Нет. Там проблема в том, что они тащат всё своё с собой. Для интеграции их пришлось бы патчить или выпиливать встроенные библиотеки в пользу системных, что полностью убивает всю идею AppImage.
любая дыра в каком-нибудь сраном openSSL приведёт к необходимости обновлять и пересобирать всё.
Для этого есть докер, чтобы перекрыть все дыры и открыть только нужные
Ну началось. Изобретаешь костыли для костылей прямо на ходу. Кстати, ты описал FlatPak вот сейчас.
Всякие демоны и прочий системный софт в AppImage совать подобно самоубийству
Демоны от приложений ничем особенным не отличаются, кроме способа запуска
Ещё как отличаются.
это чудовищно усложняет администрирование системы
Специализированная ОСь это нивелирует
Ну так запили её и охреней от количества костылей, которые придётся делать ради этой идеи. Но вообще ты реально FlatPak хочешь, похоже. Просто возьми любой дистр с FlatPak и радуйся жизни.
Идея хорошая, но как я понимаю, они не собирают софт, а их пакетный менеджер берет его с AppImagehub, где его полтора приложения. И разработчики тоже не собирают софт хоть каким-нибудь способом.
Ну, да. Я знаю, что FlatPak сосёт. Но с «AppImage для всего» ты хлебнёшь тех же проблем и ещё пару вёдер говна сверху.
Идея хорошая, но как я понимаю, они не собирают софт, а их пакетный менеджер берет его с AppImagehub, где его полтора приложения. И разработчики тоже не собирают софт хоть каким-нибудь способом.
Всё как ТС хотел! Потому что если дистр сам будет опакечивать всё, в AppImage нет вообще никакого смысла.
Разработчику - нет, НЕ УДОБНО изучать чуждый nix, чуждый appimage, пердолиться со сборкой, а потом и разбираться почему он не заработал у пользователя. Разработчику УДОБНО выложить исходники, в блобятине не мазаться и не тратить на неё время.
Пользователю - нет, НЕ УДОБНО в стиле вендоюзеров в 90-х искать по интернету, качать и ставить (и потом не обновлять) протрояненные блобы. Пользователю УДОБНО ставить и обновлять все пакеты одной командой по которой пакеты едут из доверенного источника.
Кому это может вообще понадобиться? Проприетарщикам (у этих кроме блобов вариантов нет), пользователям всякой тухлятины типа дебианов и центосей (эти никогда не разберутся нужно им «стабильное» старьё или всё-таки свежий софт) и начинающим авторам СПО, до которых ещё не дошло что блобы выпускать не только не нужно, но и вредно. В совокупности эта малочисленная и некомпетентная группа, которая породить какое-то широко применимое решение не способна.
Пользователю УДОБНО ставить и обновлять все пакеты одной командой по которой пакеты едут из доверенного источника.
И получаешь старьё, неизвестно какими руками и как собранное. Для невзыскательного копрофила наверное ОК. Хочешь что-то более другое - обновляй всю систему. Офигенно прям.
Давайте уже трезво будем смотреть, где реальные преимущества разных систем, а где религия и желание казаться инаковым.
Более того, у меня сейчас получилось собрать себе дистрибутив на основе gnustep со всеми концепциями. Т.е самодостаточные приложения, rootless, атомарные обновления, etc. Все знакомо и привычно как на маке.
Магия как раз в том что есть просто однозначная система в которой есть все что нужно. А чего нет поставляется вместе с приложениями. Если нет библиотеки то достаточно положить ее в Приложение_Нейм.app или в /System/Library. Система сама все поймет все загрузит куда надо.
И если бы не убогий UI, который я переделать в силу своих компетенций не могу, то это было бы то что нужно. Можно как раз подрезать имплементацию Cocoa API у ravynos она же AiryxOS. Ну и сделать рескин хотя бы.
Но опять же, я один, и делаю это в свободное от работы время.
Они тоже нужны, потому что не весь нужный софт свободен. Пусть те, кому нужны всякие автокады, не покупают хотя бы ОС для них.
пользователям всякой тухлятины типа дебианов и центосей (эти никогда не разберутся нужно им «стабильное» старьё или всё-таки свежий софт)
Нам и то и другое нужно. Софт должен быть и работоспособный и актуальный. Но дело даже не в этом. Компромиссная версия между работоспособностью и актуальностью может быть разной для разных программ. ПО разных времен бывает одновременно полезно. Что-то обновляется каждую неделю, как yt-dlp, а что-то остается актуальным десятилетиями, как какой-нибудь справочник физических величин.
Ну и вообще тут подмена тезиса, что типа пользователи не хотят обновлять. Они хотят ставить ПО, в т.ч. свободное, не занимаясь бесполезным трудом. Исходники в открытом доступе - хорошо, но они не являются технически хорошим форматом дистрибутива программы, потому что соберутся ли они, бабушка надвое сказала. И проприетарщина тут ни при чем. Вот в Android свободные приложения распространяются по-нормальному: можно из файла, можно из магазина. И из исходников они собираются по-нормальному: открыл в Android Studio, нажал кнопку, оно и собралось, нажал еще кнопку, оно прошилось в устройство.
Более того, у меня сейчас получилось собрать себе дистрибутив на основе gnustep со всеми концепциями. Т.е самодостаточные приложения, rootless, атомарные обновления, etc.
Да можно просто запаковать систему в архив и выложить куда-нибудь, я хочу посмотреть, как у тебя реализовано, потому что сам думаю над подобной концепцией
Моё любимое, это смена адресации в подсети. Все подсосали новые адреса по DHCP, но в винде перенастройка драйвера сетевого сканера превратилась в настоящие пляски и камлания. Незабываемый опыт.
Администрирование есть в любой системе, это понятно - настройка серверов, сетей и прочих NATов. И в Линуксе это обычно удобнее, чем в Винде. Просто пользователь (aka сам себе администратор) не должен собирать программы, если только он не хочет как-то кастомно их собрать или собрать то, что разработчик еще не выпустил или портировать или что-то еще такое. Но из-за людской глупости ему это приходится делать. И самое тут бесящее, что сборка программ, особенно в CLI преподносится как какой-то показатель крутости, хотя много интеллекта это не требует, это просто достаточно необычный опыт. Какая-нибудь математика или шахматы и умнее и интереснее.
Не всем приложениям нужно таскать с собой демонов.
Аппимидж избавляет пользователя гуйни от головной боли в виде «мне тут обновление софта в дистр не завезли, а там фича, которая мне нужна». Что особенно актуально для пользователей всяких там Ubuntu LTS и не только.
Вот прямо сейчас для наисвежайшего 23.04:
Kdenlive 22.12 вместо 23.04 (нет новых фич и багфиксов)
Musescore 3.2.3 вместо 4.0.2 (пропущен мажорный релиз с дохрена улучшений)
При этом ты можешь держать на компе несколько версий, если в каком-то обновлении что-то поломалось. Флэтпэк и репозитории тебе так откатиться назад не дадут.
Резюмирую: реальным пользователям аппимидж нужен, что бы ты там себе ни воображал.
Пользователю - нет, НЕ УДОБНО в стиле вендоюзеров в 90-х искать по интернету, качать и ставить (и потом не обновлять) протрояненные блобы. Пользователю УДОБНО ставить и обновлять все пакеты одной командой по которой пакеты едут из доверенного источника.
пользователю удобно командой
Лолшто? В реальной жизни скачать с официального сайта проекта их сборку в аппимидж и запустить её – абсолютно не проблема примерно ни для кого.