LINUX.ORG.RU

Pipewire - неизбежная... победа!

 , ,


5

2

Есть snap, flatpak, wayland. Вроде хорошее дело, но - они добавляют изоляцию между приложениями, и такие штуки как jack, pulseaudio уже не могут работать как раньше. Надо что-то решать. И тут появляется надежда - pipewire. Но надежда ложная, потому что это катастрофа!

Нет, надежда все-таки есть.

Вот мои претензии (которые в итоге разрешились):

1. Обязательный ресемплинг. Как известно, pulseaudio поддерживало две частоты дискретизации микшера - основную и альтернативную. Это позволяло, в случае воспроизведения например только музыки со spotify переключать микшер на частоту дискретизации потока и УБРАТЬ ресемплинг! Если воспроизводит только одно приложение, ресемплинга быть НЕ ДОЛЖНО! Потому что он не нужен. Pipewire не позволяет, и похоже что реализовать это в той архитектуре, которую заложили, будет весьма непросто. На практике он всегда делает ресемплинг и всегда портит звук.

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

Переключение РАБОТАЕТ уже сейчас, на версии из Git! На релизе 0.3.33 у меня не работает.

КАК СДЕЛАТЬ:

В pipewire.conf пишем:

default.clock.rate          = 48000
default.clock.allowed-rates = [ 44100, 48000 ]

Можно перечислить в allowed-rates до 16 значений. Все!

ТЕПЕРЬ - если воспроизведения не было, и запустить на воспроизведение ОДНО приложение, pipewrire будет переводить себя и звуковую карту на частоту дискретизации этого приложения, и ресемплинга НЕ БУДЕТ.

2. При работе с jack клиентами может меняться размер буфера. Занавес! То есть я играю на гитаре, и тут мне меняют размер буфера? А ничего что это приведет к слышимому и чувствуемому изменению задержки звука? Как играть??? Так НЕЛЬЗЯ ДЕЛАТЬ, а надо делать ровно наоборот. Я уже молчу про то, что изменение на лету размера буфера может просто крашануть jack приложение, которое такого бреда не ожидало!

3. Для того, чтобы вообще хоть как-то задать размер буфера для jack клиентов, надо запускать приложение с переменной окружения PIPEWIRE_LATENCY. То есть мне теперь все приложения из консоли стартовать? Или все desktop файлы править? С настоящим jack это решается элементарно - программой управления типа qjackctl. Там просто выбирается какой буфер, и все приложения используют его. Должно быть ВОТ ТАК.

Решение:

pw-metadata -n settings 0 clock.force-quantum <size>

устанавливает фиксированный размер буфера.

Или в jack.conf:

node.lock-quantum = true

4. Нельзя нормальным образом поменять частоту дискретизации при работе с jack клиентом. Используется та, на которую настроен pipewire своим конфигом. С нормальным jack частота просто выбирается в qjackctl. А с pipewire что, мне править конфиг и перезапускать его, или как?

Решение, можно менять на лету:

pw-metadata -n settings 0 clock.force-rate <samplerate>

В итоге, имеем огромные практически нерешаемые проблемы на уровне архитектуры, из-за которых pipewire идет в противоположную от нужной сторону.

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

★★★★

Последнее исправление: James_Holden (всего исправлений: 4)
Ответ на: комментарий от sergej

jack не будет работать вообще. Например, во flatpak пакетах он принципиально работать не может. Не позволяет архитектура. А вместо него pipewire работает, но там вот такие проблемы.

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

Так это и до пипевире была проблема. Одна из причин почему всё кроме родного пакетного менеджера - извращенство.

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

Так это и до пипевире была проблема

В том и дело что была, из-за чего и делают pipewire. Но не туда пошли.

дна из причин почему всё кроме родного пакетного менеджера - извращенство.

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

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

Пакетный менеджер и централизованное управление программами - единственное преимущество линукса перед windows или osx. А теперь похоже одна FreeBSD адекватная осталась, но это не точно.

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

Пакетный менеджер и централизованное управление программами

Это две несвязанные вещи. Классический пакетный менеджер как раз очень мешает централизованному управлению программами, настолько что ломает его и скатывает в винду. Странно этого не видеть.

Поэтому чтобы раскрыть преимущества линукса надо использовать вещи типа флатпака. Тут преимущества встают в полный рост. На винде например такое не реализуемо никак.

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

Тут преимущества встают в полный рост

Ну вот они и встали. Pipewire, Вялый в котором запись экрана и скриншоты прикрутить не могут, даже с рутом, так как ломает безопасность 1111 (на самом деле копирастам очень DRM нормального хочется), наслаждайся как говорится.

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

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

пакетный менеджер тут не причем. Это проблемы порожденные изоляцией.

А по поводу изоляции все же должны знать, что монолитная архитектура намного проще модульной. Естественно если мы распилили приложения на самодостаточные песочницы и ввели механизм разрешений для доступа к API и файловой системе, то теперь надо немного шуршать мозгами а не просто фигачить все в кучу с одной извилиной, как в старом линуксе. Зато можно получить нормальную систему.

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

Например, во flatpak пакетах он принципиально работать не может.

ИМХО те, кому реально надо использовать jack не станут ставить в контейнер ни его самого, ни использующего его приложение, так как там жёстко следят за минимизацией и регулярностью величины задержки звука.

Но это мнение невтемного мимококодила.

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

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

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

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

4.2

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

Проще одним, тяжелее другим.

Похоже ты ничего не понял.

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

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

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

ИМХО те, кому реально надо использовать jack не станут ставить в контейнер ни его самого, ни использующего его приложение, так как там жёстко следят за минимизацией и регулярностью величины задержки звука.

Во-первых, контейнер это докер, или подман по хипстерски. Флатпак это не контейнер. В докер никто аудио софт пока не ставит.

Во-вторых во флатпаке задержки такие же, он никак на них не влияет. А вот

регулярностью величины задержки звука

pipewire не гарантирует и тут проблема.

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

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

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

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

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

Монолит это подход где нет изоляции между приложениями и все приложения распаковываются в одну папку при установке. То есть это твой любимый deb.

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

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

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

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

Так и в Flatpak тоже самое на практике. А не в какой-то теории.

И в Deb тоже самая проблема по разрезке. Какая-то Ubuntu или Debian тебе будут не рады со своими библиотеками.

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

Всмысле? Ты можешь из одного приложения попасть в песочницу другого? Можешь попасть например к системным кедам напрямую? Как это?

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

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

Какая-то Ubuntu или Debian тебе будут не рады со своими библиотеками.

Всмысле? Что ты городишь?

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

И там, и там в итоге разработчику надо петрушиться. Но в отличии от Flatpak, в Deb можно разработчику минимизировать петрушенье — сделав жирный DEB пакет, забив на дедовские постулаты.

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

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

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

С deb наоборот - надо думать, как обойти проблемы что твое приложение будет кинуто в папку со всеми остальными и принудительно тебя объединят со всей системой и ее библиотеками.

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

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

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

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

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

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

И в итоге все разработчик на эту фикцию поплёвывают.

Человек всегда будет делать как проще. Если проще наколхозить, (а это как правило проще), то будет вот так.

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

надо

Не надо. Ты лично можешь на свой сортир замки 🔒 в стиле Гудини навешивать — твоё право. Изоляция.

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

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

Ты лично можешь на свой сортир замки

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

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

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

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

значит все пошло не туда.

Конечно. Потому что схема разработки типа «процесс» — тестирование возможностей OSTree. А не продукт — «удобный десктоп для пользователя».

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

Потому что схема разработки типа «процесс» — тестирование возможностей OSTree

Видимо да. OSTree сама по себе то штука хорошая. Почему мне и нравится флатпак - что он на базе OSTree. Но то что сам флатпак как обвязку вокруг OSTree надо бы с умом переделать с нуля - это да. И при этом главное - поставить задачу «удобный десктоп для пользователя». Хотя бы один раз в истории линукса.

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

Нет, это просто у тебя извилин недостает это понять.

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

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

Это одинаковые сущности. Мы в юникс системе, прикинь. «Все есть файл» тебе ни о чем не говорит? Ты вендузятник?

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

Ядро системы и пакетный менеджер это одинаковые сущности? Ахаха што.

Тогда флатпак тоже монолитный - все его пакеты в /var/lib/flatpak лежат.

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

Ядро системы и пакетный менеджер это одинаковые сущности? Ахаха што.

Вот то, что извилин у тебя маловато, либо ты виндузятник. Это одно и то же. Модули ядра такие же «пакеты». Они так же имеют зависимости, так же кидаются в общее адресное пространство ядра как файлы классическим пакетным менеджером в /usr/bin. У них есть свой менеджер который отслеживает зависимости.

Тогда флатпак тоже монолитный - все его пакеты в /var/lib/flatpak лежат.

Ну да. Мы с тобой на одной планете лежим, поэтому мы одно целое. В одной вселенной живем.

Монолитность определяется не так. Попробуй пошевелить мозгами еще раз.

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

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

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

ТС - упорот

Нет, это вы все не лечитесь и как выясняется элементарной матчасти не знаете. У меня скоро инфаркт от этого форума будет.

Код из модулей ядра выполняется в общем адресном пространстве и с общими привилегиями

Нет, у них могут быть разные привилегии, в зависимости от лицензии на модуль.

Бинарники программ из пакетов выполняются в разных изолированных процессах.

Какая разница, они в общей файловой системе лежат и видят ее. Мы в юниксе, «все есть файл» ты про это тоже не слышал? Если все есть файл, и доступ ко всем файлам есть у всех - значит всем доступно все. Простая логика уровня детского сада. Неужели надо это объяснять…

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

Они выполняются в изолированных файловых системах. Поэтому это уже не монолит.

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

и как выясняется элементарной матчасти не знаете.

Давай, называй свою матчасть с авторами и названиями публикаций :)

Нет, у них могут быть разные привилегии, в зависимости от лицензии на модуль.

facepalm.jpg

Какая разница, они в общей файловой системе лежат и видят ее. Мы в юниксе, «все есть файл» ты про это тоже не слышал? Если все есть файл, и доступ ко всем файлам есть у всех - значит всем доступно все. Простая логика уровня детского сада. Неужели надо это объяснять…

По дефолту они имеют только права на чтение. Какие от этого проблемы?

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

Нет, у них могут быть разные привилегии, в зависимости от лицензии на модуль.

В общем адресном пространстве для программ на Си привилегии бесполезны и элементарно обходятся.

Если все есть файл, и доступ ко всем файлам есть у всех - значит всем доступно все.

4.2. Про атрибуты прав у файлов слышали?

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

Если все есть файл, и доступ ко всем файлам есть у всех - значит всем доступно все.

чуваак, ты про MAC слышал вообще?

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

Если все есть файл, и доступ ко всем файлам есть у всех - значит всем доступно все.

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

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

Давай, называй свою матчасть с авторами и названиями публикаций :)

www.linux.org.ru, мои посты.

По дефолту они имеют только права на чтение. Какие от этого проблемы?

Самые разные. Гигантские. И не надо писать ерунду, все что нужно и создает проблемы доступно на чтение, запись и выполнение.

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

Про атрибуты прав у файлов слышали?

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

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

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

Откуда такие вызывающе неверные утверждения?

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

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

Проблема не в том когда не слышал. А в том когда слышал, но ничего не понял как ты.

Эти инструменты есть, но они не используются в обычном, старом десктопном линуксе. Группы когда-то использовались, года до 2010 если не путаю, но потом и это выкинули.

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

Откуда такие вызывающе неверные утверждения?

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

Давай начнем с этого, самого простого.

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

Эти инструменты есть, но они не используются в обычном, старом десктопном линуксе. Группы когда-то использовались, года до 2010 если не путаю, но потом и это выкинули.

тебя жестоко обманули

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

Нет, у них могут быть разные привилегии, в зависимости от лицензии на модуль.

WAT. Это в каком микроядре?

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

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

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

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

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

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

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

WAT. Это в каком микроядре?

Это в разыгравшимся воображении ТС. Он видимо попутал лицензии модулей и рантайм защиту. Защита лицензий модулей работает через юристов, а не через код.

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

Как у тебя твои атрибуты файлов запрещают приложениям читать и писать в любое место хомяка пользователя?

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

Как они запрещают вообще любому приложению снести нахрен с диска мою диссертацию за день до защиты?

«Любое приложение» ставится из репозитория, а не неизвестного васянского флатпака. Это значит, что как минимум, у мэйнтейнера и других пользователей оно диссертацию из хомяка не удаляло.

Но никто тебе не запрещает завести отдельного пользователя со своим хомяком и редактировать диссертацию оттуда.

Как они в твоей системе разрешают, например, Kate видеть только те файлы которые ты открыл в редакторе?

Мне не нужны такие странные ограничения

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

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

GPL_ONLY flag

И какой существующий в суровой реальности процессор ограничивает выполнение кода на основе этого флага? :)

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

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

И сносить диссер за день до защиты. Занавес! И заметь - пока ты не опроверг мое «все могут все».

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

Отлично, как это опровергает «все могут все»?

Но никто тебе не запрещает завести отдельного пользователя со своим хомяком и редактировать диссертацию оттуда.

Лол. Лол. Лол. Там будут такие приложения. Они снесут там все точно так же. Набор установленых приложений в обычном линуксе, сюрприз, не зависит от пользователя! А с флатпаком зависит. И тут обломамс?

Но ты начинал не про хомяк, а про корневую систему.

Да? А как ты это понял? Придумал?

Утверждал, что якобы чуть ли не все пакеты кидают в корень файлы

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

с полными правами доступа для всех желающих.

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

В корне всего-то лишь полные права на чтение.

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

Там будут такие приложения. Они снесут там все точно так же.

так ты их не запускай, если их боишся и они тебе методично диссеры удаляют

или у тебя они в автозапуск сами прописываются? :)

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

так ты их не запускай, если их боишся и они тебе методично диссеры удаляют

А комп не включать, я правильно понял?

или у тебя они в автозапуск сами прописываются? :)

А им кто-то мешает прописаться? В линуксе это как-то ограничено? Нет, никак.

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

Лол. Лол. Лол. Там будут такие приложения.

Название пакета, который удаляет диссертации, в студию. Может уже и криповымогатели в репозитории завезли?

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

И сносить диссер за день до защиты

Нет бэкапов? -> Нет состродания.

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

Ну вот nvidia что-то не могла обойти.

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

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

Название пакета, который удаляет диссертации, в студию

Любой пакет на выбор. Никаких гарантий нет.

Может уже и криповымогатели в репозитории завезли?

Давно уже, просто кто-то все проспал. Ну не совсем в те репозитории, где софт маринуется по два года. В нормальные.

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

Если обойдут, то может быть иск.

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

Вы серьезно предлагаете варез пихать в ядро и это типа норма?

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

группы когда-то использовались, года до 2010 если не путаю, но потом и это выкинули.

$ ls -l /dev/video0 
crw-rw----+ 1 root video 81, 0 июл 31 10:16 /dev/video0
$ ls -l /dev/snd/
итого 0
drwxr-xr-x  2 root root       80 июл 31 10:16 by-path
crw-rw----+ 1 root audio 116,  7 июл 31 10:16 controlC0
crw-rw----+ 1 root audio 116,  9 июл 31 10:16 controlC1
crw-rw----+ 1 root audio 116,  6 июл 31 10:16 hwC0D0
crw-rw----+ 1 root audio 116,  3 июл 31 10:16 pcmC0D0c
crw-rw----+ 1 root audio 116,  2 июл 31 10:16 pcmC0D0p
crw-rw----+ 1 root audio 116,  4 июл 31 10:16 pcmC0D1p
crw-rw----+ 1 root audio 116,  5 июл 31 10:16 pcmC0D2c
crw-rw----+ 1 root audio 116,  8 июл 31 10:16 pcmC1D0c
crw-rw----+ 1 root audio 116,  1 июл 31 10:16 seq
crw-rw----+ 1 root audio 116, 33 июл 31 10:16 timer
$ groups
wheel audio cdrom video usb 1000

в моём гнулинуксе с группами всё нормально, чтобы издавать звук, нужно быть в группе audio, чтобы читать с камеры, нужно быть в группе video

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

Вы серьезно предлагаете варез пихать в ядро и это типа норма?

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

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

Ну значит повезло. В следующий раз не повезет.

Я вот ни разу не видел как из калаша убивают человека. Значит калаш не оружие, я правильно понял?

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

в моём гнулинуксе с группами всё нормально, чтобы издавать звук, нужно быть в группе audio, чтобы читать с камеры, нужно быть в группе video

Ты опять ничего не понял. Ты руками с камеры что-ли читаешь, лол? Это делает приложение. Ты от своего юзера запускаешь приложение для камеры. Для этого тебе надо войти в группу video. И тогда любое другое приложение, например Kate получает доступ к камере! Всем доступно все. Как я и говорю.

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

Или может ты предложишь мне перелогиниваться чтобы с камерой поработать? Хорошо что не в ДОС перезагружаться, как в винде 98 для игр.

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

Технически никто не мешает.

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

Я же не говорю что в ядре полный аналог dpkg. В целом, глобально принципы похожи. Там и там монолит. Частности реализации, конечно, разные. А вы к ним прицепились и не видите глобального.

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

Говно и шоколад тоже одно и то же. Из атомов и молекул состоят же.

И цвет похож. Вот, ты делаешь успехи.

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

И тогда любое другое приложение, например Kate получает доступ к камере! Всем доступно все. Как я и говорю.

Никто не запрещает тебе написать правила apparmor или SELinux и ограничить доступ к камере для Kate

Или может ты предложишь мне перелогиниваться чтобы с камерой поработать?

Зачем перелогиниваться, иксы позволяют несколько параллельных сеансов, переключаешься по Alt + F7..F12. Насчёт вейландов не знаю, может и поломали это.

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

Насчёт вейландов не знаю, может и поломали это.

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

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

Никто не запрещает тебе написать правила apparmor или SELinux и ограничить доступ к камере для Kate

О, ну вот и изоляцию подвезли. Так мы скоро придем к установке Snap, в котором изоляция как раз делается через AppArmor. Или «это другое»?

иксы позволяют несколько параллельных сеансов

Охренеть маразм.

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

в котором изоляция как раз делается через AppArmor. Или «это другое»?

а что мешает поставлять правила AppArmor внутри пакетов из репозитория? убунта так и делала

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

У меня для вас плохие новости

Ну я не сильно в курсе как на винде. Там есть аналог pivot_root и mount –bind уже? Есть пруф?

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

контейнер это докер

Закусывать надо.

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

Монолитная архитектура это классические репы

Правильно. Вся нагрузка на мейнтейнеров.

Модульная - это флатпак.

Вся нагрузка на разработчиков, притом не на прикладных, а на системных, которые ключевые штуки пилят, вроде звуковой подсистемы или видеоподсистемы. А теперь внимание вопрос, кого у нас больше, разработчиков или мейнтейнеров (этих вообще слишком много вон сколько дистрибутивов клепают, у ядра столько форков нету)? Кем проще стать?

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

Правильно, но у нас очень жесткий дефицит тех кто может включать башку и при этом как-то повлияет на картину в целом (имеет имя, время и желание на это). Так что отказ от монолита - шаг в бездну. Сам Линукс и взлетел, а не стал Minix-ом, который спустя много лет занял очень специфичную нишу железного бекдора в интеловских процах именно за счёт отказа от модульности.

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

Вся нагрузка на мейнтейнеров.

Вся нагрузка на разработчиков

Ты задаешь интересный вопрос. Но давай разберемся.

а на системных, которые ключевые штуки пилят, вроде звуковой подсистемы или видеоподсистемы

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

А теперь внимание вопрос, кого у нас больше, разработчиков или мейнтейнеров

Казалось бы, логично. Но это какая -то странная логика. У каждого приложения внезапно есть разработчик. Уже есть. Их не надо еще десять чтобы собрать пакет. Или тут как в анекдоте, сколько электриков надо чтобы закрутить лампочку?

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

Согласен. Интересная мысль.

Так что отказ от монолита - шаг в бездну

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

Сейчас некий переломный момент. Вяленый постепенно одерживает победу. Флатпако-снап не особо одерживает. Контейнеры на серверах победили. Атомарная базовая система - на уровне экспериментов пока.

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

Тут важно еще вот что. Snap по сути собирается на базе deb. То есть внутри сборочной среды все равно остаются старые пакеты. Flatpak - нет, собирает с нуля сам в своей песочнице. Он как бы в стороне. Атомарная базовая система (OSTree) - тоже старыми пакетами собирается, а иначе замучаешься ее поддерживать. Докер - внутри опять же пакетная система. Надо же как-то ставить зависимости в контейнере.

То есть если не брать флатпак, который стоит неким особняком (а точнее flathub, сам флатпак не запрещает все хоть из deb перепаковывать), то вся новизна это просто слой поверх старой пакетной системы. Слой, который скрывает от пользователя пакеты и зависимости. Но не от разработчика.

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

У каждого приложения внезапно есть разработчик. Уже есть. Их не надо еще десять чтобы собрать пакет. Или тут как в анекдоте, сколько электриков надо чтобы закрутить лампочку?

Вообще-то надо. Разработчик по дефолту умеет собирать только своё приложение. Совсем не факт, что у него хватает квалификации правильно собирать все зависимости.

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

Совсем не факт, что у него хватает квалификации правильно собирать все зависимости.

Вот за это долбят флатпак по сравнению со снапом. Там ты по сути берешь убунту, ставишь через apt все зависимости для сборки, собираешь приложение как для deb пакета обычного, и потом все упаковывается в Snap пакет. Это проще.

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

Ну я думаю что это редко когда бывает так уж сложно. Это не сборка базовой системы с нуля.

К тому же учти, что здесь не надо решать вопросы совместимости с другими приложениями, потому что все в песочнице.

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

Совсем не факт, что у него хватает квалификации правильно собирать все зависимости.

Проще говоря - все зависимости он собирать не будет. Только то, чего не хватает в рантайме.

Если у тебя Qt приложение, то Qt собирать не надо.

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

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

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

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

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

Проблемы которые ты обозначил - проистекают от разницы между целевой системой и системой разработчика. Флатпак, снап, как и докер, специально сделаны так чтобы этой разницы не было автоматически. Поэтому собрать так, чтобы «нормально работает только на машине разработчика» можно только с классическими репами.

Почему я и долблю что это фуфло устарело.

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

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

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

Не позорься, OBS запускается нативно в Wayland, а захват экрана был запилен еще раньше, сразу после появления необходимого механизма в pipewire.

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

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

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

Т.е. на 11 году разработки они смогли сделать захват экрана и на 13 году прикладной софт таки смог в него. Что же, это похвально, ещё лет 10 и Wayland-ом станет можно пользоваться.

Вcё правильно. Иксы стали юзабельны тоже когда им 25+ лет исполнилось.

PS

Как раз ещё через 30 лет сделают полный интерфейс на веб технологиях. Когда ядро будет через электрон всё рендерить.

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

Как раз ещё через 30 лет сделают полный интерфейс на веб технологиях.

Скорее всего …

Поживем, увидим

К сожалению большая проблема - ДУРАКИ

А их победить НЕ ВОЗМОЖНО
anonymous
()
Ответ на: комментарий от peregrine

Есть такая штука, называется DeepPavlov.

А причем тут зависимости? Она не работает из-за железа. Это не относится к предмету разговора.

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

Флатпак это не контейнер.

Да ну? Такой же контейнер, создаётся с помощью bwrap, принципы что и у docker'а, т.е. пространства имён используются. Какая тут принципиальная разница? Разве что файловая система устроена проще, не «слоёный пирог» из кучи образов.

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

Принципиальной разницы нет. Это почти одно и то же.

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

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

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

Открытость как бы тоже, ещё FHS.

@peregrine

Открытость и FHS намного важнее, чем централизованное управление пакетами в нынешнем виде. Это управление даже изначально и не предполагалось, оно больше мешает чем приносит пользы. У него есть только одно большое преимущество по сравнению с, например, виндой - пакетный менеджер хоть и кидает все валом в систему, но следит чтобы не было конфликтов.

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

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

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

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

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

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

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

Нужно просто относиться к нему соответвующе, оно нужно для обеспечения целостности системы.

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

На десктопах я лично не виду ничего лучше AppImage, но паковать в него действительно сложно

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

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

Еще с AppImage учти такие недостатки.

  1. Не только при сборке, но и при запуске он использует библиотеки с хоста, поэтому легко может не запуститься.

  2. Его разработчик страдает каким-то луддизмом и отказывается пилить поддержку wayland.

  3. Обновляться может только целиком, нет дедупликации между пакетами. Там может дублироваться что угодно.

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

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

Флатпак это по сути OSTree репозиторий, а не образ, не пакет в виде архива. Его нельзя так просто взять как файлик и таскать, класть куда хочешь и оттуда запускать. В отличие от AppImage. Отсюда проблемы - прибито к /var/lib/flatpak, без интернета это все почти теряет смысл, перетаскивание пакета на флешке через адовые костыли.

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

Что важнее? Для меня то, что дает флатпак. Но это заметно снижает универсальность. Еще учтем, что если у тебя IDE или другая программа запущена из флатпака, то она не может запустить докер, AppImage и даже сам флатпак! Не может собирать пакеты самого же флатпака через flatpak-builder. Потому что песочница.

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

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

Обновляться может только целиком, нет дедупликации между пакетами. Там может дублироваться что угодно

Так это и не требуется. Места сейчас у всех полно, рамы тоже. Дедупликация ведёт к зависимостям, зависимости ведут к неуниверсалтности, а полноценное управление зависимостями возвращает к пакетным менеджерам.

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

Дедупликация ведёт к зависимостям

Не ведет. Зависимости - это только один из методов дедупликации. В OSTree другой метод. Есть общее хранилище файлов, где в кучу, все вместе, лежат вообще все файлы из всех пакетов. Каждый файл имеет имя - его контрольная сумма. Двух одинаковых файлов в хранилище быть не может - у них совпадет контрольная сумма и значит имя.

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

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

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

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

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

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

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

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

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

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

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

Опять фантазируешь. Все приложения будут с разными версиями Qt.

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

С AppImage - да. С флатпаком один раз. Вот на практике, которую ты так любишь у меня такие рантаймы

pdftricks переводы       ….github.muriloventuroso.pdftricks.Locale          stable
AndroidStudio переводы   com.google.AndroidStudio.Locale                    stable
Gpredict переводы        net.oz9aec.Gpredict.Locale                         stable
Ardour переводы          org.ardour.Ardour.Locale                           stable
Codecs                   org.blender.Blender.Codecs                         stable
Blender переводы         org.blender.Blender.Locale                         stable
FreeCAD переводы         org.freecadweb.FreeCAD.Locale                      stable
Guitarix LV2             ….freedesktop.LinuxAudio.Plugins.Guitarix 0.42.1   20.08 
KapitonovPluginsPack     ….LinuxAudio.Plugins.KapitonovPluginsPack 1.2.1    20.08 
Freedesktop Platform     org.freedesktop.Platform                  20.08.14 20.08 
Mesa                     org.freedesktop.Platform.GL.default       21.1.4   20.08 
Intel                    org.freedesktop.Platform.VAAPI.Intel               20.08 
ffmpeg-full              org.freedesktop.Platform.ffmpeg-full               20.08 
openh264                 org.freedesktop.Platform.openh264         2.1.0    2.0   
Freedesktop SDK          org.freedesktop.Sdk                       20.08.14 20.08 
i386                     org.freedesktop.Sdk.Compat.i386                    20.08 
Python3_9_6              org.freedesktop.Sdk.Extension.Python3_9_6          20.08 
gcc_arm_none_eabi        …edesktop.Sdk.Extension.gcc_arm_none_eabi          20.08 
GNOME Application Platf… org.gnome.Platform                                 40    
Guitarix переводы        org.guitarix.Guitarix.Locale                       stable
Inkscape переводы        org.inkscape.Inkscape.Locale                       stable
Adwaita theme            org.kde.KStyle.Adwaita                             5.15  
KDE Application Platform org.kde.Platform                                   5.15  
KDE Software Developmen… org.kde.Sdk                                        5.15  
digikam переводы         org.kde.digikam.Locale                             stable
kdevelop переводы        org.kde.kdevelop.Locale                            stable
KiCad Footprint Librari… org.kicad.KiCad.Library.Footprints                 stable
KiCad 3D Model Libraries org.kicad.KiCad.Library.Packages3D                 stable
KiCad Schematic Symbol … org.kicad.KiCad.Library.Symbols                    stable
KiCad Templates          org.kicad.KiCad.Library.Templates                  stable
KiCad переводы           org.kicad.KiCad.Locale                             stable
LibreOffice переводы     org.libreoffice.LibreOffice.Locale                 stable
firefox переводы         org.mozilla.firefox.Locale                         stable
desktop переводы         org.telegram.desktop.Locale                        stable

Нету двух разных версий даже. А ты говоришь десять.

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

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

@Harald

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

Протри глаза. Qt находится в рантайме KDE. Он - один. Значит и Qt установлено один раз.

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

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

Если быть точным, мы оба не правы. Полностью Qt никто из тех пакетов что у меня стоят не дублирует, но некоторые пакеты тянут либо плагины, либо QtWebEngine которого нету в рантайме.

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

Мне неинтересно, что там у тебя (даже если там совпало, что нет Qt софта). В общем ситуация не такая.

А ты там рантаймы чисто вывел… Ну тем более не интересно. Какую-то чушь постоянно пишешь.

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

Ну давай любой пример приложения, которое тянет свое Qt. Хотя бы какой минимальный пруф своим словам приводи.

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

Да, телеграм какого-то рожна использует freedesktop рантайм а не kde, и тянет Qt такой же как в KDE рантайме, но не факт что файлы точно такие же и будет дедупликация.

Ну вот что ж у них руки то кривые.

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

У меня стоит несколько Qt приложений, Digikam, kdevelop например. Они свой Qt не тянут, только либы которых нет в рантайме.

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

Там честно говоря Qt софт еще отрыть надо. Из того что нашел:

1 Clementine - не тянет

2 kdenlive - не тянет

3 VMPK - не тянет

4 VLC - не тянет

5 kcachegrind - не тянет

6 KLayout - не тянет

7 Notepadqq - не тянет

8 FreeCAD - не тянет

9 - … Kalzium, Kanagram, KGeography и т. д. на букву K - не тянут.

10 - Digikam - не тянет

11 - KDevelop - не тянет

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

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

А речь не только про Qt шла. Да тебе хоть кол чеши/не чеши.

Все равно фанатику фанатикову.

Это не вина моего предмета обалдения и УМВР.

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

А речь не только про Qt шла

Что-то мне подсказывает что это «не только» закончится тем же - единичным примером, на который ты натыкаешься и все, истерика.

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

Максимальная тут проблема это что в рантайме питон 3.8 а некоторые приложения используют 3.9 и там реально дублирование тогда.

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

Тебя воообще тяжело понять.

VLC не на Qt написан? Clementine тоже Qt-шный и отошёл от KDE.

Или там все Qt приложения в ногу идут с одной Qt версией?

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

VLC написан на Qt. Использует Qt из рантайма KDE, единого для всех. Clementine использует Qt из рантайма KDE, единого для всех.

И так все которые я перечислил.

То есть - идут в ногу. Telegram пакует свой Qt - вот он не идет в ногу.

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

Или там все Qt приложения в ногу идут с одной Qt версией?

Там или 4 или 5. Или уже 5 или 6. И всё. Тащить нужно только последнюю или последние две из реп. А изолированное приложение тащит свою по sha256 проверяет. Вероятно даже более старое и уязвимое. Просто это подход a’La Windows – всё ложиться целиком на автора приложения. И он решает это обычным путём – как Хром – тащит с собой.

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

Так минорные версии Qt ещё есть.

Плевать на минорщину. Отваливается что-то только если qt5quickcontrols not installed/found или типа того. Это когда пятёрка только появилась такие были ситуации. И какая там минорная версия никто не проверяет. Линкер на это не смотрит.

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

Линкер на это не смотрит.

Или как там его правильнее назвать.

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

FHS

не нужен и не несёт смысла в случае отказа от реп и перехода на флаптаки и иже с ними, которые по факту сводятся к Program Files и сами решают что и как хранить внутри. На самом деле надо стандартизировать наименование файлов разных версий и их хранение в рамках FHS + обеспечить при этом управление файлами, что пытается сделать nix (но он не смог в совместимость с FHS).

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

перехода на флаптаки и иже с ними, которые по факту сводятся к Program Files

Нет, флатпаки не имеют никакого отношения к Program Files. Приложение флатпака запускается не на реальной ФС хоста, а на «искусственной» внутри песочницы, где воссоздана та же FHS за исключением того что само приложение в /app а не в /usr.

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

Если говорить о ФС хоста а не внутри флатпак песочницы, то на хосте пока вся базовая система и DE, и тут тоже особо не поломаешь.

На самом деле надо стандартизировать наименование файлов разных версий и их хранение в рамках FHS

Это технически невозможно нормально сделать - ты сразу теряешь тогда возможность обновить библиотеку не обновляя программу. Что и наблюдается в Nix - любое обновление библиотеки влечет пересборку и перезалив всего что от нее зависит.

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

Нет, флатпаки не имеют никакого отношения к Program Files.

С точки зрения приложения - в файловой системе есть только оно одно.

Т.е. запустить другое приложение из приложения – тащить его с собой? Это хуже Program Files.

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

Т.е. запустить другое приложение из приложения – тащить его с собой?

Не надо ничего тащить. Запускается через dbus.

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

Нет, флатпаки не имеют никакого отношения к Program Files. Приложение флатпака запускается не на реальной ФС хоста, а на «искусственной»

Да хоть на HDFS, роли это никакой не играет. Смысл один и тот же.

Это технически невозможно нормально сделать - ты сразу теряешь тогда возможность обновить библиотеку не обновляя программу. Что и наблюдается в Nix - любое обновление библиотеки влечет пересборку и перезалив всего что от нее зависит.

Технически возможно, но придётся всем сделать очень больно и поменять кучу стандартов, которые нынче за китов считаются, а именно поддерживать разные версии библиотек с разными названиями. Не libastral.so a libastral.0.0.25.so + Юзерские и патченные версии и т.д.. с возможностью настройки в конфиге для каждого приложения, какую версию пытаться использовать.

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

Не libastral.so a libastral.0.0.25.so + Юзерские и патченные версии и т.д.. с возможностью настройки в конфиге для каждого приложения, какую версию пытаться использовать.

Погоди, вот тут я тебя не понял.

Сейчас в классических дистрибутивах как. Кладется библиотека с именем libastral.0.0.25.so, потом на нее создается симлинк с именем libastral.so. Все приложения линкуются с именем libastral.so, то есть с симлинком. Если мы заменяем libastral.0.0.25.so на libastral.0.0.26.so и меняем симлинк сохраняя его имя, то приложение не замечает подмены и работает уже с новой версией библиотеки.

При таком раскладе ничего не мешает иметь сколько угодно версий libastral, в любом дистрибутиве, хоть в дебиане. Надо только обеспечить гибкое переключение симлинков на нужную версию.

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

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

Если мы заменяем libastral.0.0.25.so на libastral.0.0.26.so и меняем симлинк сохраняя его имя, то приложение не замечает подмены и работает уже с новой версией библиотеки

Потом в libastral.0.0.27.so ломают API/ABI и армагеддец.

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

Потом в libastral.0.0.27.so ломают API/ABI и армагеддец.

А почему дебиан при таком подходе за столько лет не постиг армагеддец?

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

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

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

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

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

Если нужно что бы вся система страдала какой-то малоосмысленной дичью с кашей из разных версий одних и тех же библиотек, проще взять nixos

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

Вот и я про то же, но в NixOS не создают симлинки на каждую библиотеку, а просто прилинковывают напрямую. Что имеет как плюсы, так и минусы.

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

Потому что, если API/ABI ломается, они героически пытаются или тянуть старые версии, накладывая патчи для сборки с ними, или просто морозят версию и бэкпортируют по-возможности security-патчи.

Собственно поэтом и идёт всё к тому, что какие-нибудь браузеры будут только во flatpak/snap. Потому что зависимостей куча, API в них ломают часто (вспомнить теже libpng, или ffmpeg, у которого стабильный API вообще отсутствует как класс) и для LTS веток (10 лет) или для debian (вечный slowpoke) приходится

  • или держать старые версии (минус фичи, плюс уязвимости)
  • или бандлить либы (что противоречит политике debian, и в частности на этом обломали deadbeef)
  • или самому мейнтейнить все зависимости (надо быть RedHat-ом, иначе лютый геморрой)
  • или идти во flatpak/snap
SkyMaverick ★★★★★
()
Ответ на: комментарий от SkyMaverick

Собственно поэтом и идёт всё к тому, что какие-нибудь браузеры будут только во flatpak/snap

Да, то есть идея собирать весь софт в дистрибутиве на фиксированном единственном наборе библиотек давно провалилась. Только не все тут это понимают.

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

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

Поэтому для дистров тут ровно два варианта:

  • делать роллинги, а-ля Arch (ну или полу-роллинги, вроде промежуточных Ubuntu).
  • делать базовую систему по олдскулу (на пакетах), и пользовательское окружение вокруг какой-нибудь более универсальной дистрибуции (flatpak/snap/«ещё какая-нибудь хрень, которую потом придумают»)
SkyMaverick ★★★★★
()
Ответ на: комментарий от SkyMaverick

делать роллинги, а-ля Arch

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

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

Арч-у, насколько я в курсе, положить на бандлы. Т.е. нужные библиотеки в принципе можно забандлить на нужной версии (что неприемлимо в debian). Основные системные (типа glibc и даже, как ни странно, GTK+) имеют более-менее стабильный API (в GTK3 его вынужденно ломали только 1 раз - версия 3.10).

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

James_Holden тоже кастану, так как сюда удобнее ответить моё мнение.

или держать старые версии (минус фичи, плюс уязвимости)

чем flatpak/snap со старыми версиями облегчит жизнь? Тем что вместо одной уязвимости в одной библиотеки в системе будет 5 разных приложений с 5 разными наборами уязвимостей из-за того что в них условно разные версии libcurl.so, чтобы уж наверняка через одну из них можно было прописать зловреда/ломануть комп? Бесполезный аргуемнт, скорее даже не в пользу flatpak/snap

или бандлить либы (что противоречит политике debian, и в частности на этом обломали deadbeef)

А вот это надо в любом случае делать.

или самому мейнтейнить все зависимости (надо быть RedHat-ом, иначе лютый геморрой)

Часть зависимостей однозначно мейнтейнить самому

Что действительно даёт flatpak/snap, это убирает с маргинальных дистрибутивов необходимость майнтейнить самому репы и сваливает всю ответственность за дыры/уязвимости на разработчиков приложения в надежде что они то и осилят опакечивание в flatpak/snap, раз в deb/rpm не осилили (не осилят и этим будут заниматься вообще левые люди, не имеющие отношения ни к разработчикам, ни к авторам дистрибутивов). Таким образом вся безопасность в линуксах идёт лесом, вот прямо совсем. Прямо как с PPA в Ubuntu, с одним исключением, PPA это редкая штука, когда очень надо что-то конкретное, таким образом массово распространять заразу сложно, ppa с условным PCManFM будет использовать 1,5 человека, т.к. PCManFM есть в репах большинства дистрибутивов и только ради какой-то конкретной фичи может быть нужна какая-то совсем новая/патченная версия. Но с рассветом flatpak/snap репы отомрут и будет куча мутных flatpak/snap репозиториев на 1-2 пакета, за которые вообще непонятно кто и как отвечает. Более того, даже найти того кто что-то нехорошее сделает будет так же трудно, как найти хакера который сайт задефейсил.

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

Будет опять многобукаф, извиняюсь но что делать. Прошу вникнуть.

чем flatpak/snap со старыми версиями облегчит жизнь? Тем что вместо одной уязвимости в одной библиотеки в системе будет 5 разных приложений с 5 разными наборами уязвимостей из-за того что в них условно разные версии libcurl.so, чтобы уж наверняка через одну из них можно было прописать зловреда/ломануть комп?

Ты несколько преувеличиваешь опасность взлома. Речь идет о десктопе, мы пока не пихаем flatpak на сервера. Десктоп, находящийся за несколькими NAT даже при наличии уязвимости так ломануть весьма проблематично. Сюда добавим еще изоляцию, которую наворачивают flatpak и snap (и которой в дебиане вообще нету из коробки).

На андроиде apk это близкий аналог снапа. Уязвимостей - вагонище. С обновлениями даже системы - полное дно. Но катастрофы и массового взлома мобил не наблюдается. Так федора+флатпак на фоне этого - крепость.

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

Флатпак и OSTree обеспечивают целостность постоянно. Система - это как коммит в гите, каждый файл под контрольными суммами, и не в пакете, а уже после установки! Вот это очень важно! Плюс - все монтируется read only.

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

Таким образом вся безопасность в линуксах идёт лесом, вот прямо совсем.

Ты сильно преувеличиваешь. Безопасность даже может вырасти.

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

Это репозиторий на GitHub, где хранятся манифесты для сборки всех флатпак пакетов. Вот эти манифесты ты и добавляешь на флатхаб, если решаешь добавить туда пакет. Далее - инфраструктура сборки собирает этот пакет. У них, не у васяна.

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

Проблемы будут с проприетарщиной, но тут как ни крути, как ни изголяйся, но в дебиане у тебя точно так же проприетарщина будет дырами светить, только еще и без изоляции!

будет куча мутных flatpak/snap репозиториев на 1-2 пакета

Да, будут, они уже есть - например Viber. Пока они для проприетарщины, но будут появляться и специально мошенические, с майнерами, шпионами. Это проблема, но ее можно сильно поуменьшить банальной защитой от дурака - дефолтным запретом подключать левые репы.

В snap и того жестче - можно использовать только магазин Canonical, сторонние репы вообще штатно не предусмотрены.

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

Десктоп, находящийся за несколькими NAT

Но ведь нет этих NAT, ipv6 шагает по планете

На андроиде apk это близкий аналог снапа. Уязвимостей - вагонище. С обновлениями даже системы - полное дно. Но катастрофы и массового взлома мобил не наблюдается. Так федора+флатпак на фоне этого - крепость.

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

Это репозиторий на GitHub, где хранятся манифесты для сборки всех флатпак пакетов. Вот эти манифесты ты и добавляешь на флатхаб, если решаешь добавить туда пакет. Далее - инфраструктура сборки собирает этот пакет. У них, не у васяна.

Зевса с гитхаба убрали уже? Как бы вообще ботнет, но его там можно найти...

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

Но ведь нет этих NAT, ipv6 шагает по планете

Я думаю что открывать каждому пользователю все порты снаружи это совсем плохая идея для провайдера, хоть и ipv6. Ну можно системный файрволл дефолтный воткнуть.

Зевса с гитхаба убрали уже? Как бы вообще ботнет, но его там можно найти…

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

Суть в том что и Snapcraft, и Flathub это не менее централизованные репозитории чем другие.

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

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

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

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

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

Но ведь нет этих NAT, ipv6 шагает по планете

Это разные плоскости. NAT не для того нужен, чтобы раздавать по одному IP-ишнику многим. Это тема безопасности и прочего. В основном это про открытые порты на устройствах. За NAT снаружи их не видно. А значит никто не будет их бомбить. IPv6 NAT никак не отменяет. Он отменяет UDP hole-punching, TURN- и STUN-сервера и так далее. Вот из какой это оперы.

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

Этот контроль еще надо реализовать.

Ну да, если root-а получит какой-то вендовый школ, то Флатпак от его неуклюжих попыток что-то кулцхакнуть защитить сможет. Это однозначно победа.

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

какие-нибудь браузеры будут только во flatpak/snap

Они кагбэ давно существуют бинарными самообновляемыми тарболами (Program Files, ага). Но тенденция нехорошая, попробуйте-ка Anbox или FluffyChat бинарным тарболом найти.

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

Почему единственном-то?

Вот у Нас спокойно разные версии сосуществуют.

root@localhost:~# apt rdepends --installed libicu60 2>/devnull|wc -l
^C
root@localhost:~# apt rdepends --installed libicu60 2>/dev/null|wc -l
6
root@localhost:~# apt rdepends --installed libicu63 2>/dev/null|wc -l
8
root@localhost:~# apt rdepends --installed libicu67 2>/dev/null|wc -l
54
root@localhost:~# apt rdepends --installed libgstreamer0.10-0 2>/dev/null|wc -l
16
root@localhost:~# apt rdepends --installed libgstreamer1.0-0 2>/dev/null|wc -l
120

Без никсопомойки.

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

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

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

исключение

Сфига?

Пакетов с версиями в названии дохренища.

И работает это, заметьте, давно, некоторые подобные либы уже и из реп-то выкинули давно, а у Нас так и стоят вместе с поставленным лет 8 назад софтом. Если надумаем ставить его с нуля на свежую систему — будет боль :P Но в никсе эта проблема тем более не решена, они архив некропакетов не ведут, в бедиане хоть какой-то есть (в крайнем случае, придётся из образов старых дистрибутивов пакеты выковыривать).

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

некоторые подобные либы уже и из реп-то выкинули давно

Если надумаем ставить его с нуля на свежую систему

А че так, все ж так радужно - ставь какие хочешь версии.

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

Ага, под вантуз или ведройд их хоть на помойках найти можно, старательно собранные и проархивированные :P А под лялипс кто таким занимается…

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

Поэтому чтобы раскрыть преимущества линукса надо использовать вещи типа флатпака.

Понимаю что флатпак (он лучший среди аналогов snap, AppImage) это будущее, но сейчас он работает не очень, программы из него и snap значительно тормозят систему.
Причины я думаю: дублирование библиотек (экономия памяти), fuse.
Что удивительно cgroup, lxc, не так тормозят систему.
Поэтому пока лучше скачать - собрать или установить из репозитория.

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

программы из него и snap значительно тормозят систему

Snap тормозит, flatpak нет.

Я пишу сейчас с ноутбука 11-летней давности, с 4 Гб памяти и HDD 5400 оборотов. Большинство участников этого форума посчитают такую машину мусором.

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

Прямое сравнение показывает, что flatpak не тормозит.

Еще года два назад, был спор и мы прямо в треде замеряли время запуска гимпа из репов и из флатпака. Даже на моей дохлой машине разница была микроскопическая.

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

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

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

Проблема называется - «Hell dll» и она решаема …

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

Проблема называется - «Hell dll» и она решаема

Не так. Проблема репов - это dependency hell. Dll hell это как раз когда репов нету + ума нету (как в ранней винде).

Решается она отказом от классических репов и переходом на что-то более осмысленное типа Nix либо контейнеризации.

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

Не так. Проблема репов - это dependency hell.

А я о чем?
https://ru.wikipedia.org/wiki/DLL_hell

Эту проблему давно нужно устранить.
Возможны разные подходы к этому.
У Microsoft кстати вполне приемлемый /но не панацея/ подход …

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

Snap тормозит, flatpak нет.
Еще года два назад, был спор и мы прямо в треде замеряли время запуска гимпа из репов и из флатпака. Даже на моей дохлой машине разница была микроскопическая.

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

Я пишу сейчас с ноутбука 11-летней давности, с 4 Гб памяти и HDD 5400 оборотов. Большинство участников этого форума посчитают такую машину мусором.

Машина тогда наверно была слабее 11 летнего, прошлогодний Asus VivoBook X540YA-DM801D с процессором Е2 1гГц (иногда ), озу 4Гб, hdd 1Tb, экран 1960х1080.
Сейчас нарадоваться не могу, перешёл на 12 летний Thinkpad T420.

Но на flatpak пока не готов переходить, без видимой причины.

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

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

Да! Как сказал когда-то Dementy,

Chromium из Debian Buster в Ubuntu 20.04

Самая полезная команда для сокращения времени загрузки Ubuntu - sudo apt purge snapd.

Snap действительно тормозит. И так, и, особенно, загрузку. Загрузку тормозит так, что это чувствуется без systemd-analyze. Да, тормозит просто так, из любви тормозить, даже без установленных snap-пакетов, вполне самостоятельно.

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

snap, hdd, 12 лет железу

Тут да. Только боль с таким сочетанием.

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

ещё лет 10 и Wayland-ом станет можно пользоваться.

Как раз к этому времени решат писать новый велосипед, который исправит все фатальные недостатки вяленого. Традиция такая в опенсорсе.

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