LINUX.ORG.RU

Какие форматы распространения программ вам НЕ нравятся?

 , , ,


0

3
  1. Snap 363 (69%)

    ********************************************************************************************************************************************************************************************************************************************************************************************************************************

  2. Flatpak 250 (47%)

    ****************************************************************************************************************************************************************************************************************************

  3. Docker 220 (42%)

    *************************************************************************************************************************************************************************************************

  4. npm, pip и прочие не системные ПМ 207 (39%)

    **************************************************************************************************************************************************************************************

  5. Программа установки/установочный скрипт 187 (35%)

    ********************************************************************************************************************************************************************

  6. .exe, .msi, .msix, .appx, .dmg :) 185 (35%)

    *******************************************************************************************************************************************************************

  7. AppImage 179 (34%)

    *************************************************************************************************************************************************************

  8. LXC 175 (33%)

    **********************************************************************************************************************************************************

  9. Обычный архив с двоичной сборкой 107 (20%)

    **********************************************************************************************

  10. Исходники 90 (17%)

    *******************************************************************************

  11. Таких нет, все устраивают 39 (7%)

    **********************************

  12. Классические пакеты 27 (5%)

    ***********************

Всего голосов: 2029, всего проголосовавших: 529



Проверено: hobbit ()
Последнее исправление: hobbit (всего исправлений: 18)

Классические пакеты

99% софта именно в них. Благодаря обширным репозиториям арча и AUR.

Flatpak/Snap

Ненужное ненужно

AppImage

В принципе нормально, но пакет всё-таки лучше. Своё я бы паковал именно в него (ну или в архив).

Архив с установочным скриптом

Не разу не сталкивался, все архивы, что я встречал — портабельные. В принципе, тоже терпимо. Виндузятники вон только так софт и устанавливают. А вот установщик отдельным файлом встречается.

Архив с исходниками

Очевидно, отличный вариант. Но не сильно удобный, поэтому лучше преобразовать в дистрибутивный пакет.

Ну и не хватает варианта «портабельный архив» (почти всё проприетарное распространяется именно таким образом).

Werenter ★★★
()

Классические пакеты - наше всё. Архивы качаю, когда версия в репах не устраивает или софтины в репах вовсе нет.

Flatpak/Snap/AppImage тоже нужны, но то, как они используются - квинтэссенция зла. Разработчикам Telegram лень собрать хотя бы DEB и RPM для миллионов пользователей (нас даже на онтопике миллионы) - в итоге Telegram валяется где угодно (обычно в ~/Downloads) и оттуда же прописывается в автозагрузку. Ubuntu насильно впихивает Snap, притягивая его через зависимости apt. Почему? Потому что мейнтейнерам лень по-человечески пакет собрать, а жёсткий диск у юзеров резиновый.

Хоть флатпаком не сильно злоупотребляют - и то хорошо.

Место подобным решениям - там, где пользовательская база небольшая или где надо развернуть решение на сотне компов с не всегда одинаковыми линуксами.

Жаль, что опрос удалят, потому что был недавно такой. О пакетах можно говорить бесконечно. @hobbit, перенеси, что ли, в Лолксы.

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

Архив с установочным скриптом

Не разу не сталкивался

Ну как же? Распаковываешь архив - а там файло и install.sh. Или только install.sh, который файло или из сети тянет, или внутри себя в base64 содержит.

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

Ну и не хватает варианта «портабельный архив»

Это как? Вот бывает, что архив с файлом install.sh, так распространяются к примеру продукты VMware и IntelliJ IDEA

А вот установщик отдельным файлом встречается

Он что ли запускаемый? А какого тогда формата? Я вот искал, чисто ради любопытства, какой формат исполняемых файлов в линукс (как .exe в винде), но что-то так ничего и не понял

MrCookie
() автор топика
Последнее исправление: MrCookie (всего исправлений: 1)

Есть ещё софт, распространяемый в виде контейнеров docker/lxc.

А ещё софт, распространяемый через pip/npm/cpan/etc.

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

Обычно такой установщик представляет собой shell-скрипт, где основной бинарный код упакован в base64.

Werenter ★★★
()
  1. Классические пакеты (в т.ч. npm, pip…)

    Нужно! Потому что Flatpak может не всё. И не-системные пакетные менеджеры нужны, что бы не заниматься некрофилией и не завязываться на одну ОС. Актуально для фронтенда, например.

  2. Flatpak/Snap

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

  3. AppImage

    Не нужно. Нет автообновлений софта, что делает этот способ доставки пососным.

  4. Установочный скрипт/архив с ним

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

  5. Docker/LCX

    Нужно! Наконец-то можно не гадить в корень системы, а гонять проекты в контейнере!

  6. Архив с исходниками

    Не нужно. Барабанил я в рот что-то собирать руками, если оно есть в запакованном виде. Я слишком стар для этого. А если даже придётся, предпочту клон из git-а, нежели архивы.

anonymous-angler ★☆
()

Сделал мультивыбор

MrCookie
() автор топика

Смотря каких программ. В идеале:

  • Для опенсорса: классические пакеты (только что за убогие примеры в скобках? Где .pkg.tar.zst, .deb, .rpm) + исходники.
  • Для проприетарщины: AppImage или аналог.

Flatpak/Snap — ненужное ненужно.

Docker нужен, но не как способ распространения софта.

Установочные скрипты нормальному софту не нужны. Тупо архив с запускаемым бинарником и нужными файлами — для проприетарщины норм (например игры в основном так и распространяются), но AppImage всё же лучше.

CrX ★★★
()
Последнее исправление: CrX (всего исправлений: 1)

Архив со скриптом запуска (не установки, это лишнее, хочешь ставить в систему - собирай пакет, в хомяк же пользователь сам распакует)

mittorn ★★★★★
()

Предлагаю немного поменять заглавный вопрос:

Какие форматы распространения программ Вам не нравятся больше всего?

Kolins ★★★★
()

Flatpak/Snap

Разбить на 2 варианта, тут многие нейтрально относятся к flatpak, но большинство не переносит snap

Docker/LCX

Тоже разбить, lxc это больше про «легковестные виртуалки», а не распространение чего-либо.

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

только что за убогие примеры в скобках?

Там ключевые слова – «в том числе»

MrCookie
() автор топика

Nick: MrCookie
ID: 206000

Прикольно

Werenter ★★★
()

Какая вкуснота, глаза разбегаются.

t184256 ★★★★★
()
Последнее исправление: t184256 (всего исправлений: 1)

НЕ нравятся?

Все, кроме классических пакетов.

Gonzo ★★★★★
()

Что ты несёшь, пакеты и npm-ный мусор в один пункт объединять?

firkax ★★★★★
()

✔ Flatpak

✔ Snap

✔ Программа установки/установочный скрипт

✔ Docker (С каких пор это формат распространения программ?)

✔ LXC (тем более)

✔ npm, pip и прочие не системные ПМ

✔ .exe, .msi, .msix и .appx :)

Короче, рулят классические пакеты, исходники и AppImage. Ну или в крайнем случае просто архив с программой (так распространяются многие игры, например).

Ну и, наверное, стоит добавить вариант «Обычный архив». Либо для симметрии исходники переименовать с «Архив с исходниками» и добавить «Архив со скомпиллированной программой».

CrX ★★★
()

А где вариант для тех, кто не переживает из-за таких вещей? Типа «мне всё-равно». Всё-таки испытывать явные негативные эмоции к формату распространения программ вряд ли является нормой в обществе.

Ghostwolf ★★★★★
()

Где вариант «Те, которые устанавливаются мимо системного пм»?

u5er
()

Классические пакеты

Нужно.

Flatpak
Snap
AppImage

Ненужно, занимает много места, нативные библиотеки не использует из за чего тормозит, какие то ограничения из за чего ничего не работает

Программа установки/установочный скрипт

Ненужно, потом сиди вспоминай как это обновлять или удалять, и в каком порядке

Docker
LXC

Презираю и не использую, это для тех кто не может нужную версию собрать.

npm, pip

Ненужно, софтом на этом вообще стараюсь не пользоваться, один yt-dlp есть.

.exe, .msi, .msix, .appx, .dmg

Ненужно, ну тут сами понимаете.

Исходники

Нужно.

Обычный архив с двоичной сборкой

Терпимо.

MOPKOBKA ★★★★
()

Флатпак. Одни отрицательные ощущения от использования этого оверинженернутого высера

alex1101
()

flatpak snap appimage docker npm/pip

Первые четыре - чушь и мусор по самой сути, последнее - не нужны потому что пытаются локально подменять системный пакетный менеджер.

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 1)

snap и flatpak на помойку. Зачем софт в lxc и docker распространять не совсем понимаю.

Есть пакетный менеджер или из исходников можно собрать, на крайний случай AppImage.

ggrn ★★★★★
()

pacman: 857
AUR: 3
архив со сборкой: 6

Все остальное не использую.

dmitry237 ★★★
()

Мне не очень нравится докер. Но не «вообще не нравится», я понимаю, что есть случаи, когда докер очень полезен — разработка, перенос какой-то сложной серверной конфигурации. Мне не нравится, когда его используют не к месту, именно как «формат распространения программ», всё равно каких.

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

Мне не нравится, когда его используют не к месту, именно как «формат распространения программ», всё равно каких.

Ну не скажи. Для распространения веб приложений докер может быть очень даже полезен. Например в арче пакет pgadmin долгое время был безнадежно сломан из-за несовместимых версий питонячьих зависимостей. В конце концов его вообще выпилили из репозиториев. Поэтому приходилось использовать докер контейнер с pgadmin. Как вариант, его можно было поставить через pip и тоже все работало. Это кстати к вопросу о пользе несистемных пакетных менеджеров вроде pip или npm.

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

Это кстати к вопросу о пользе несистемных пакетных менеджеров вроде pip или npm.

Это это к вопросу о неадекватности питоновской версионной политики.

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 1)
Ответ на: комментарий от hobbit

+100500. Тот случай, когда настолько согласен по всем пунктам, что считаю просто реакцию недостаточной.

Докер нужен — именно для контейнеризации. Для переноса и развёртывания одинакового контейнера на разных серверах (ну или десктопах), плюсом изоляция контейнеров одного от другого, и вот это вот всё. Естественно, правильное использование докера — это делать контейнер самому, а не качать где-то у Васяна. Но в последнее время его пихают везде где не попадя, воспринимая как способ «простого распространения программ», что является каким-то лютым переусложнением ради переусложнения.

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

Я слишком стар
пососный способ
Барабанил я в рот

Я бы сказал, что ты не стар, а скорее молод и горяч :-).

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

В обществе мамкиных технарей явные негативные эмоции к «неправильным» техническим решениям это нормальная норма :).

Virtuos86 ★★★★★
()

Всё устраивает, ибо «на вкус и цвет»...

sparkie ★★★★
()
Последнее исправление: sparkie (всего исправлений: 1)

Не нравятся разве что установочные скрипты, т.к. они обычно гадят в систему

Gary ★★★★★
()
Последнее исправление: Gary (всего исправлений: 1)

Не понимаю откуда столько хейта к докеру. Куча софта (серверного) идеально подходит для использования в докере.

Тот же например nextcloud для домашнего подкроватного сервера, если через пакеты ставить - то при апдейте будет много интересно потраченного времени на поиск каких-то ошибок

И таких примеров куча, особенно когда надо какие-то сервисы ставить в парах, типа qbittorrent+sonarr+radarr+какой+то индексер для них. С докером просто сохраняешь себе конфиг файл и одной командой все ставится за минуту. Такой же лёгкий перенос этого всего куда-то ещё.

Если я вижу, что пакет может устанавливаться через npm или docker (для серверного пользования), то приоритет всегда будет ко второму.

P.s. для десктопа докер не нужен

trader1601
()
Последнее исправление: trader1601 (всего исправлений: 1)
Ответ на: комментарий от Virtuos86

Согласен, но ответ всё-равно добавили, за что спасибо.

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

Просто опрос кривой. Разные решения решающие разные проблемы намешаны в одну кучу, будто бы все приведённые варианты ответов преподоносятся как равнозначные альтернативы друг другу. Как итог, каждый голосует исходя из наихудшего варианта, который вы в PS и обозначили.

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

А dmg тут каким боком? По этой логике надо и iso добавлять

bigc ★★
()

Не нравится всё, кроме классических пакетов и исходников

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

не нужны потому что пытаются локально подменять системный пакетный менеджер

Как что-то плохое.

Мне вот не нравится, как системные менеджеры работают с пакетами LaTeX. По сути куча нужного и ненужного лично мне объединено в огромные системные пакеты. Свежесть пакетов LaTeX из дистрибутивов тоже иногда вызывает сомнения. Скорее, системный пакетный менеджер подменяет отсутствующий специализированный и при этом справляется так себе.

Когда я впервые столкнулся с pip, тоже недоумевал: какого хрена? Но если подумать, всё правильно сделано. Мейнтейнерам дистрибутивов не нужна возня с пакетами на Python, кроме самых ходовых. Зато сообществу Python очень интересна поддержка общего репозитория. А поскольку язык не зависит от системы и платформы, всё это действительно лучше сделать один раз для всех, а не в каждом дистрибутиве отдельно.

Vidrele ★★
()
Последнее исправление: Vidrele (всего исправлений: 1)
Ответ на: комментарий от archie

Например в арче пакет pgadmin долгое время был безнадежно сломан из-за несовместимых версий питонячьих зависимостей.
Это кстати к вопросу о пользе несистемных пакетных менеджеров вроде pip или npm.

Это к вопросу о том, что не всегда новая версия системы/программы работает лучше чем предыдущая (если вообще работает).

Тем не менее, принцип пакетных менеджеров базируется на предположении, что более новая версия программы - лучшая. И поэтому все Linux-пользователи вынуждены постоянно обновляться, вытягивают все обновления по зависимостям, и постоянно утыкаются в то, что вместе с исправлением в одном месте они получили кучу проблем и ошибок в другом месте. Они бы и рады оставаться на старых версиях, но принцип консистентности пакетной базы, уходящий корнями в зависимости библиотек, не дает им такую возможность.

И пока эти взаимоисключающие параграфы не будут просто и удобно разрешены, пользователей в Linux не прибавится.

Xintrea ★★★★★
()

тлять, выбрал те, что нравятся… надо было сформулировать вопрос иначе.

Gonzo ★★★★★
()

.exe это в основном «программа установки/скрипт» и не должен быть в одном ряду с .msi и остальными. Ну и конечно оффтоп :)

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

Свежесть пакетов LaTeX из дистрибутивов тоже иногда вызывает сомнения

Не представляю зачем там может понадобиться «свежесть», правила разметки документов за последние 20 лет вряд ли заметно менялись.

А поскольку язык не зависит от системы и платформы,

Так почти про все языки можно сказать.

всё это действительно лучше сделать один раз для всех, а не в каждом дистрибутиве отдельно.

Дистр это и есть попытка «сделать один раз для всех». Только желающих «сделать один раз для всех» оказалось больше одного - вот и получилось несколько разных раз для всех.

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

Не представляю зачем там может понадобиться «свежесть», правила разметки документов за последние 20 лет вряд ли заметно менялись.

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

MOPKOBKA ★★★★
()
Последнее исправление: MOPKOBKA (всего исправлений: 1)

Самое неудобное - сорцы, конечно. Особенно, когда софтина легко собирается только на дебиане или только на шапке. Автообновление такого софта любым способом отсутствует в принципе.

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

npm, pip и прочее «для программирования» - немного рвёт мозг, как это в итоге взаимодействует с системой и штатным ПМ

yu-boot ★★★★
()

Все кроме исходников и Nix-выражений.

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

Не представляю зачем там может понадобиться «свежесть», правила разметки документов за последние 20 лет вряд ли заметно менялись.

Типографика сама по себе консервативна, в общем и целом кодовая база старая. Но пакеты продолжают обновляться. Во-первых, багфиксы. Во-вторых, новые фичи. В-третьих, меняется контекст: людям хочется юникод во все поля, стандартные шрифты на кривых Безье, какую-нибудь новомодную инфографику, которая постоянно появляется.

Так почти про все языки можно сказать.

Любой язык, который интерпретируется, компилируется в байт-код или документ, - отдельный мир, который слабо пересекается с миром компилируемых бинарников.

Дистр это и есть попытка «сделать один раз для всех». Только желающих «сделать один раз для всех» оказалось больше одного - вот и получилось несколько разных раз для всех.

Нет. Теперь уже нет. Любой дистростроитель знает свою ЦА.

Vidrele ★★
()
Ответ на: комментарий от yu-boot

npm, pip и прочее «для программирования» - немного рвёт мозг, как это в итоге взаимодействует с системой и штатным ПМ

И как оно взаимодействует с системой и штатным ПМ?

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