LINUX.ORG.RU

Какой вектор развития дистрибуции и пакетирования пользовательских программ вы считаете наиболее интересным и/или перспективным

 


0

1

В скобочках приведены примеры, чтобы лучше понимать суть.

  1. Пакетные менеджеры с поддержкой установки различных версий пакетов (nix) 177 (42%)

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

  2. Кроссдистрибутивные системы управления пакетами (flatpak) 113 (27%)

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

  3. Создание пакетов "всё-в-одном" (appimage) 110 (26%)

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

  4. Использование статической линковки для достижения кроссдистрибутивности 79 (19%)

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

  5. Другой 67 (16%)

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

  6. BSD (порты FreeBSD) 56 (13%)

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

  7. Кроссплатформенные веб-приложения (PWA, wasm) 54 (13%)

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

Всего голосов: 656, всего проголосовавших: 426

★★★

Проверено: Satori ()
Последнее исправление: fernandos (всего исправлений: 3)

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

Ты невнимательно прочёл мой комментарий. Я НЕ ВСЕ программы ставлю как AppImage, а только те, для которых мне нужны свежие версии. А это меньшинство. Возможно, 1-2 на всю систему.

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

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

Нет, достаточно шапке переехать на deb.

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

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

James_Holden ★★★
()
Ответ на: комментарий от ya-betmen

Нет, достаточно шапке переехать на deb.

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

Во-вторых формат тут вообще не решает. Пакет deb все равно будет ни с чем не совместим, если сохранять текущие подходы к организации репозиториев.

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

Даже в наших линуксах это обрабатывается через механизм связи приложений с типами файлов.

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

Как именно они установлены - для этого механизма не важно.

Вопрос то скорее принципиально-филосовский. Стоит ли оформлять приложение в виде обособленного пользовательского комбайна или пытаться встроить в некую системную среду? Если встраивть, то их надо и размещать рядом, и на модули разбивать, и часть функций делегировать зависимостям, и интерфейсы предоставлять чтобы другие могли дёргать. И косяков это может породить немеряно.

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

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

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

Но в андроиде этот механизм работает настолько непрозрачно

Я не спорю что в андроиде все как задница.

Стоит ли оформлять приложение в виде обособленного пользовательского комбайна или пытаться встроить в некую системную среду?

Встраивать можно по-разному. Если приложение является минимальным «кирпичиком» этой среды, то все равно будет 1 пакет - 1 приложение.

Если же мы разрезаем на более мелкие кирпичики, то мы получаем уже не пользовательскую систему, а среду разработки Delphi с палитрой компонентов. Которая непригодна для непрограммистов.

и интерфейсы предоставлять чтобы другие могли дёргать

Ну вот поперла среда разработки в полный рост. Это можно и нужно, но не сама система должна быть такой, а какой-нибудь Qt Creator. А он и так такой.

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

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

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

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

Я понимаю что для тебя это кажется какой-то элементарщиной, со знанием которой рождаются. Но для большинства людей это не так.

James_Holden ★★★
()

будущее за ебилдами

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

А в чем проблема то? Ты ещё жалуйся, что для запуска программы тебе нужны моник, клава, комп, да ещё и не какой попало, а чтобы поддерживаемый проц, достаточно оперативы, место на диске. И электричество! Несамодостаточный софт! Кошмар-кошмар!

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

Сведение ко бреду - неудачный риторический прием. Я тоже его часто использую, и еще ни разу не помогло.

Проблема в том, что приложение прибито к версии дистрибутива, под которую собрано.

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

Проблема в том, что приложение прибито к версии дистрибутива, под которую собрано.

Чем это принципиально отличается от проблемы, что приложение прибито к архитектуре процессора, под который собрано?

ya-betmen ★★★★★
()
Ответ на: комментарий от James_Holden

Ты о каком из? 11.04 не был лтс емнип, значит дожил только до 2012, 11.10 до 2013 соответственно и больше не менялись. Оставался бы на ком то из них.

Троллишь?

Пытаюсь указать на мисконцепт засевший в голове.

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

Оставался бы на ком то из них.

Зачем? Я что поехавший на старье сидеть? Я вообще весь этот период использую арч.

Пытаюсь указать на мисконцепт засевший в голове.

У меня мисконцепта нет, он у всех вокруг тут. Здесь многие пока не осознают что репы с десктопного линукса пора выкидывать на помойку.

James_Holden ★★★
()
Ответ на: комментарий от ya-betmen

Троллишь реально? Ты не видишь разницы между хардом и софтом? Первый раз сталкиваюсь с таким… Что только на лоре не бывает.

James_Holden ★★★
()
Ответ на: комментарий от ya-betmen

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

Ты в курсе что железо стоит денег? А что линукс НЕ стоит денег?

Так какие причины я должен иметь чтобы не менять софт, если эта замена ничего не стоит?

Потому что это, блина, СОФТ. Он поэтому так и называется, прикинь.

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

Ты в курсе что железо стоит денег? А что линукс НЕ стоит денег?

Так какие причины я должен иметь чтобы не менять софт, если эта замена ничего не стоит?

А теперь перечитай, что написал выше. Ты отдаешь деньги и получаешь одну версию на веки вечные. Ты не отдаешь ничего и получаешь несколько версий. Ты уверен, что требовать ещё больше версий во втором случае это, гм... нормально?

Я могу тебе помочь, давай ты когда будешь скачивать новые версии софта будешь переводить мне деньги, ну типа покупать. Вдруг эта странная шиза отпадёт?

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

ЯННП. Вообще ничего понять невозможно.

давай ты когда будешь скачивать новые версии софта будешь переводить мне деньги, ну типа покупать

Ты издеваешься? Так и скажи.

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

Ты можешь мысль сформулировать?

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

ЯННП

Давай совсем просто. У тебя нездоровая тяга к новым версиям если они бесплатны. Я предлагаю избавить тебя от этого (невроза?). Тебя же не беспокоит что у тебя старый проц, т.к. он стоит денег. Если ты будешь отдавать деньги, при скачивании нового софта (бесплатного), например мне, то выход новых версий софта тебя тоже перестанет беспокоить.

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

В целом ты просто бредишь. Поясню по пунктам.

У тебя нездоровая тяга к новым версиям если они бесплатны

Нет, у меня совершенно здоровая тяга. А вот человеку, который на полном серьезе советует использовать софт 10-летней давности я бы порекомендовал лечиться.

Если ты будешь отдавать деньги, при скачивании нового софта (бесплатного), например мне

Понимаешь в чем подвох. Когда я покупаю железо, я отдаю деньги тому кто мне его продает, потому что это его работа - продавать, и он тоже платит деньги и так далее по цепочке до производителя.

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

То есть, по простому - ты вводишь для меня искусственное ограничение, которое совершенно не имеет смысла и не осовано ни на чем. Вопрос - а зачем мне это ограничение нужно?

Реальность такова, что я могу обновляться бесплатно. Поэтому я буду обновляться бесплатно, и никаких проблем тут нет. А то что мне искусственно мешает - deb например, я буду убирать.

James_Holden ★★★
()

Я считаю наиболее перспективным вектор вечного бардака, зоопарка и страдания. Требую добавить мой вариант в опрос, а остальные удалить как маловероятные.

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

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

Да, если табличка с формулами и тем более сложными макросами — это программирование. Не уровня профессионального программиста, конечно, но программирование.

hobbit ★★★★★
()

Будущее это статическая линковка, MojoSetup и установка в ~ двойным кликом по .run файлу.

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

Ты в курсе что железо стоит денег? А что линукс НЕ стоит денег?

Бгг. Ещё как стоит. Лично тебе он достался бесплатно, но это немного другое.

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

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

А вот человеку, который на полном серьезе советует использовать софт 10-летней давности я бы порекомендовал лечиться.

Ох уж эти медики-самоучки.

Сюрприз 1: есть такой софт 10-летней давности, который просто работает.

Сюрприз 2: в официальных репозиториях далеко не весь софт 10-летней давности. Например, Firefox в репах Debian Stable регулярно обновляется. Не на ночную сборку, конечно. Но на версию, которой обычному пользователю (не профессиональному вебмастеру) за глаза хватает. Мне, например, хватало, пока не купил новый комп и не поставил на него Манжару.

(Кстати, где в вариантах ответа «развитие роллинг-модели»? Если роллинг хорошо вылизывается (как в Манжаре той же), это тоже решение проблем свежего софта. У меня за 7 месяцев полёта серьёзные проблемы возникали ровно два раза и оба раза они решались перегрузкой системы с выбором в GRUB LTS-ядра. После этого я с большим недоверием отношусь к лоровским рассказам про «красноглазых арчешкольников», ибо манжара — тот же арч, только хорошо вылизанный.)

А вот Kdenlive в дебиане меня не устраивал, поэтому я скачал AppImage. Но таких программ, ещё раз говорю, у меня было раз-два и обчёлся. Когда новая версия нужна именно потому, что там добавили что-то новое, а не из-за зуда «старыми версиями пользуются только лохи» и «Я что поехавший на старье сидеть», оно именно так и работает.

Или ты просто тупо троллишь? Вот эту тему у тебя было читать одно удовольствие. Как два разных человека писали.

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

Какой из этих подходов решает следующие задачи.

1. Дистрибуция питоновой проги с указанными различными версиями библиотек без оверхеда по занимаемому месту.

2. openFOAM+CFDcoupling, тут подход - много маленьких бинарников+прописывание переменных в пользовательский bashrc. И необходимо держать несколько версий этого Ктулху. И да, собирается это счастье только на несвежих мейнстрим дистрибутивах.

einhander ★★★★★
()

Стандартизированный набор либ, а всё что в него не вписывается должно линковаться статически

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

Или ты просто тупо троллишь?

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

Ну серьезно, я не пишу чего-то неординарного, вроде азбучные вещи излагаю, не более того. И такие обвинения.

Если ты возьмёшь за правило (сам, без насилия) донатить людям, которые именно пишут те самые свежие версии?

Дело вот в этом - «без насилия». Основное свойство софта в том, что его намного легче заменить, чем железо. Поэтому он и называется «софт». Платно, не платно, на донаты или нет - это частности. Все равно это по определению гораздо менее затратно чем заменить хард.

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

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

Итого - основное свойство софта говорит мне о том, что я должен иметь максимум возможностей по его замене. (А кто против замен - тот тивоизатор банальный, это такой вам намек).

На практике имеем deb - репозиторий, который организован как: все связано со всем, поэтому заменить один компонент не меняя всей системы весьма проблематично. Заменить всю систему, оставив одно приложение - еще проблематичнее. Я же не из пальца это высасываю, это реальные ситуации с которыми я сталкиваюсь. GuitarPro например выпустили под Ubuntu, а через полгода этот выпуск превратился в тыкву, с выходом новой убунту. И нету больше GuitarPro.

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

А теперь представим что в системе куча таких пакетов. Получается фигня, о которой ты и пишешь - тотальное дублирование библиотек. Это разве хорошо? Нет конечно. Поэтому разумнее так не делать, а применить механизм дедупликации между пакетами. И тут мы вспоминаем, что в линуксе есть замечательная вещь - хардлинки. Логически файл лежит в каждом пакете, физически - он лежит только один раз. Это же красота! Вот где начинает проявляться мощь и гибкость линукса как ОС - там где можно делать вот такие вещи.

И вот, делают flatpak на этих принципах. Чем это плохо? Пока мне никто так и не объяснил, чем же так насолил flatpak и почему альтернативные решения, которые не обеспечивают дедупликации (типа AppImage) это лучше.

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

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

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

Если роллинг хорошо вылизывается (как в Манжаре той же), это тоже решение проблем свежего софта.

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

Касательно роллинга. С ним возникает обратная проблема - все новое получишь легко, а если некоторый софт надо оставить старым то приехали. И опять наступаем на те же грабли. Почему так? Потому что опять же - все связано со всем. Пакет не существует вне системы.

Только в случае с убунту у нас система живет полгода, а в случае с роллингом - система живет час. А потом никаких гарантий уже нет.

То есть роллинг не решает проблемы, о которых я пишу, а только усугубляет.

James_Holden ★★★
()

Использование статической линковки для достижения кроссдистрибутивности

Можно (и нужно) динамически линковаться как к системным библиотекам имеющим стабильный API/ABI – таким как GTK или LIBC, так и к библиотекам внутри бандла, и при всем этом иметь кросс-дистрибутивность. поэтому проголосовал за этот пункт, и за «другой».

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

Развитие может происходить посредством создания и улучшения инструментов / SDK для создания кросс-дистрибутивных бандлов, и хорошей документации про то как в линуксах собирать и линковать библиотеки с правильными rpath.

waker ★★★★★
()

Пакетные менеджеры с поддержкой установки различных версий пакетов

Это оверинжиниринг

Psilocybe ★★★★
()

А можно ставить «антиголос»?

Считаю что вот это никогда не должно стать основным способом распространения софта, иначе это убъет Линукс.

Создание пакетов «всё-в-одном» (appimage)

Использование статической линковки для достижения кроссдистрибутивности

Kroz ★★★★★
()

Пакетные менеджеры с поддержкой установки различных версий пакетов

Зачем оно на десктопе? Сколько сижу на линуксах - ни разу не требовалось держать несколько версий одних и тех же пакетов.

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

иначе это убъет Линукс.

Какая-то хотя бы минимальная логика за этим высказыванием есть?

Почему на двух остальных системах сделано так изначально, и это их не только не убило, но и позволило иметь на 1-2 порядка большую долю рынка, а линукс, который не может преодолеть 2% доли благодаря замечательной системе репов, исправление в нужную сторону обязательно убьет?

Это какая-то странная антилогика.

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

Зачем оно на десктопе?

Затем, что поставь OpenModelica в арче и ты поймешь. Когда оно начнет требовать для сборки по каждой библиотеке не ту версию, что у тебя в системе.

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

Понимаешь в чем подвох. Когда я покупаю железо, я отдаю деньги тому кто мне его продает, потому что это его работа - продавать, и он тоже платит деньги и так далее по цепочке до производителя.

Надеюсь ты не считаешь что софт самозарождается на хардах разработчиков?

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

Это вполне естественное ограниение, я просто пытаюсь продемонстрировать это более наглядно.

А то что мне искусственно мешает - deb например, я буду убирать.

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

ya-betmen ★★★★★
()
Ответ на: комментарий от snake266

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

fernandos ★★★
() автор топика
Ответ на: комментарий от ya-betmen

Надеюсь ты не считаешь что софт самозарождается на хардах разработчиков?

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

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

Это вполне естественное ограниение

Нет, этого ограничения нет в природе. Я использую линукс не год и не десять лет, не надо меня лечить какими-то ограничениями. Как будто я не знаю как тут все.

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

Опять ложная аналогия. Этот дом расположен неудачно. Как он внутри построен - это совершенно не относится к проблеме.

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

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

@James_Holden

Различные версии компиляторов/интерпретаторов

Ну наверно это, только насколько я знаю, используют только старый gcc. Не слышал, чтобы использовали старый clang.

Если программа старая, то она может не работать с новыми версиями необходимых зависимостей.

У меня была только проблема с Octave (Symbolic) и sympy, там Symbolic не работает с sympy c версией >1.5.1, но тут проблема в том, что почему бы не засунуть нужную библиотеку прямо Symbolic. Ну либо обновить информацию на сайте о версии библиотек с sympy (≥ 1.2) на sympy (<= 1.5.1 && >= 1.2)

Затем, что поставь OpenModelica в арче и ты поймешь. Когда оно начнет требовать для сборки по каждой библиотеке не ту версию, что у тебя в системе.

Для таких программ, которые тянут старые библиотеки можно и AppImage взять, нет?

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

Для таких программ, которые тянут старые библиотеки можно и AppImage взять, нет?

Так о чем и речь. Именно поэтому эта движуха против старых репов и пошла.

Взять AppImage можно, но неэффективно. Как же вы все не понимаете. Ведь flatpak делает то же самое только намного эффективнее.

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

Ведь flatpak делает то же самое только намного эффективнее.

Нет. На практике для разработчика ПО — это лишний трах-бабах со всем этим барахлом.

А про сказочную теорию можно долго рассуждать — да, звучит хорошо, но смысла нет.

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

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

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

Я думал предложить flatpak, но разве flatpak не тянет свое окружение тоже с определёнными версиями библиотек, относительно которых приложения могут протухнуть?

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