LINUX.ORG.RU

Linux Mint отказывается от libAdwaita и призывает остальных присоединиться к ним

 , ,


2

3

Разработчики Linux Mint в своем ежемесячном дайджесте новостей рассказали о ходе разработки Linux Mint 22 и, в том числе, поделились своим видением ситуации, связанной с развитием GNOME и приложений, разрабатываемых в рамках него.

В 2016 году разработчиками Linux Mint был запущен проект под названием XApps, направленный на создание универсальных приложений для традиционных настольных сред на базе GTK для замены базовых приложений GNOME. В их числе Xreader (форк Atrill, который, в свою очередь, форк Evince), Xplayer (форк Totem), Xviewer (форк Eye of Gnome) и другие. Более подробно о проекте можно узнать на их сайте.

В дайджесте заявляется, что разработчики планируют расширять список приложений, входящих в проект XApps, и призывают остальных присоединиться к работе над проектом. В первую очередь они обращаются к разработчикам Mate и XFCE, которые заинтересованы в развитии приложений, независимых от проекта GNOME, а также разработчиков дистрибутивов, которые в качестве своей базовой среды их используют. Почему-то упоминается в основном Xubuntu.

Причиной такого заявления, как и причиной создания проекта XApps, является все большее расхождение между разработчиками GNOME и остальными в понимании того, как должен строиться интерфейс пользовательских программ, и использование проектом GNOME библиотеки libAdwaita, которая является основой для построения интерфейсов в большинстве приложений в современном GNOME. По мнению разработчиков Linux Mint, указанная библиотека создавалась только для GNOME, и приложения GNOME все меньше и меньше подходят для работы где-либо еще, кроме самого GNOME.

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

По причинам такой несовместимости в будущем Linux Mint 22 был удален GNOME Font Viewer, а некоторые из программ были понижены до версии на GTK3, в частности:

  • Celluloid;
  • GNOME Calculator;
  • Simple Scan;
  • Baobab;
  • System Monitor;
  • GNOME Calendar;
  • File Roller;
  • Zenity.

От Zenity разработчики вообще планируют отказаться, а остальные развивать в виде форков.

Кроме этого, разработчики Mint считают нецелесообразным идти по пути Ubuntu, которая модифицирует библиотеку libAdwaita под свои темы оформления, потому тема Adwaita будет удалена из списка доступных в Cinnamon 6.2.

Разработчики считают, что проект XApps может решить проблему и заявляют для него в качестве основного принципа независимость от дистрибутива и окружения рабочего стола, будь то Cinnamon, XFCE, Mate или иной другой. XApps, по их мнению, должен быть отдельным проектом со своими репозиториями на GitHub, чатом, веб-сайтом, управлением и т. д.

>>> Подробности

★★★★★

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

Протокол уже причёсан, просто он только в KDE есть. В GNOME нет меню в принципе, у них вообще ничего нет. Перцам из wlroots вроде тоже не слишком нужно, хотя там могут и добавить.

Тот, о котором в треде говорят ещё в виде MR оформлен, как универсальный протокол для всех композиторов.

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

Три года страдают уже.

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

Расскажи это не мне, а Linux Mint’овцам.

И да, я таки нашёл. Я перепутал панельку с менюшкой. И дело было аж 10 лет назад.

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

https://igurublog.wordpress.com/2014/03/22/gtk-3-10-drops-menu-icons-and-mnemonics/

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

Хм…, а через что оно передает то?

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

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

А у них есть выбор?

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

То, что они говна поели, это правда. Но не потому что иксы такие плохие и криво спроектированные, а просто вся эта тусовка вокруг freedesktop.org – говноеды.

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

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

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

Три года страдают уже.

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

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

Объясните мне.

Приложение создаёт окно внутри иксов/вейланда.

Другое приложение тоже создаёт окно внутри иксов/вейланда.

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

как в этой цепочке умудрился появиться dbus и что он там забыл?

Конкретно в случае с меню, спрашивай Шаттлврота, libdbusmenu – его разработка из времён Unity и подвижек юбанты в сторону реализации HUD. Но вообще идея примерно такая: если на шине висит кто-то и слушает эндпоинт для рендеринга меню, то меню засылается ему. Если не висит, рисуем меню сами.

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

Ну в иксах есть способы.

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

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

А какие ещё универсальные средства IPC у тебя есть?

Что такое «универсальные» средства IPC и с каких пор dbus стал таковым?

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

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

Я обожаю все эти рассуждения от людей, не участвовавших в процессе. Разработчики KDE участвовали, им не понравилось. Но тут конечно же придут LOR’овцы и расскажут что они все говноеды и все неправильно делали и вот они бы сами все сделали правильно но не будут.

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

Что такое «универсальные» средства IPC и с каких пор dbus стал таковым?

Лет 15 как dbus стал универсальной шиной для GUI приложений в Linux. Добро пожаловать.

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

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

Я обожаю все эти рассуждения от людей, не участвовавших в процессе.

Кто тебе сказал, что я не участвовал? Иксы я тащемта пытался пилить лет 10 назад. Мне тоже не понравилось, в основном в силу социальных проблем, которые я описал выше.

Разработчики KDE участвовали, им не понравилось.

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

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

с каких пор dbus стал таковым?

по определению

D-Bus is a message bus system, a simple way for applications to talk to one another. In addition to interprocess communication, D-Bus helps coordinate process lifecycle; it makes it simple and reliable to code a «single instance» application or daemon, and to launch applications and daemons on demand when their services are needed.

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

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

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

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

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

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

Странно выглядит это все.

Выглядит ровно так, как исторически было наговнокожено.

  1. dbus прибит к локальному сеансу пользователя
  2. окна в иксах могут принадлежать любым приложениям, не обязательно от данного сеанса, не обязательно вообще с этой машины

думай

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

А какие ещё универсальные средства IPC у тебя есть?

Что такое «универсальные» средства IPC и с каких пор dbus стал таковым?

Лет 15 как dbus стал универсальной шиной для GUI приложений в Linux. Добро пожаловать.

Ты отвечаешь не на поставленный вопрос.

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

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

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

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

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

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

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

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

Ты отвечаешь не на поставленный вопрос.

Отвечаю, ты просто дурочку из себя строишь.

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

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

Ну ты сказал. Что-то изменилось?

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

не вижу тут ничего про «универсальный IPC»

А что ты хочешь увидеть? D-Bus умеют все актуальные тулкиты, протокол общения стандартизирован, ты можешь из программы A сходить в программу B понятным способом с маршалингом данных и прочим. Ничего подобного больше нет.

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

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

Ну ты сказал. Что-то изменилось?

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

Но мы не обо мне. Мы о том, что Нейту из кед не то чтобы стоит верить по этому поводу. Там этакая смесь confirmation bias и wishful thinking.

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

Но мы не обо мне. Мы о том, что Нейту из кед не то чтобы стоит верить по этому поводу. Там этакая смесь confirmation bias и wishful thinking.

Это у тебя пруфы есть или тебе хочется в это верить?

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

Но мы не обо мне. Мы о том, что Нейту из кед не то чтобы стоит верить по этому поводу. Там этакая смесь confirmation bias и wishful thinking.

Это у тебя пруфы есть или тебе хочется в это верить?

Отсутствие даже паритета по функционалу между иксами и вяляндом спустя 15 лет разработки самого вялянда и 10+ лет разработки его версии в KDE – это не пруф, что ли?

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

Я ничего не хочу увидеть, мне ситуация с dbus ясная, это ты блуждаешь в трёх соснах. Ты ляпнул про какой-то «универсальный IPC», а когда я тебя спросил, что это, то включил дурочку.

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

Отсутствие даже паритета по функционалу между иксами и вяляндом спустя 15 лет разработки – это не пруф, что ли?

Паритета? Ты что-то кроме global hotkeys, global menu, группировка окон одного приложения и color management можешь вспомнить?

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

Я ничего не хочу увидеть, мне ситуация с dbus ясная, это ты блуждаешь в трёх соснах. Ты ляпнул про какой-то «универсальный IPC», а когда я тебя спросил, что это, то включил дурочку.

Ещё ты очень красивый и совсем не толстый.

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

Я устал отвечать на какие-то абсурдные провокации, прости.

У тебя каждый раз, когда случается когнитивный диссонанс, то оказывается, что ты устал.

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

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

Отсутствие даже паритета по функционалу между иксами и вяляндом спустя 15 лет разработки – это не пруф, что ли?

Паритета? Ты что-то кроме global hotkeys, global menu, группировка окон одного приложения и color management можешь вспомнить?

Даже не знаю. Дай-ка подумать…

Ну например, вообще всё accessibility! Его просто нет. Вообще. Напрочь выкинуто на мороз. В треде ниже я троллировал гнумеров, конечно же, но в KDE ситуация не сильно лучше.

GTK и Wayland против слепых

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

Информацией обмениваются не приложения, а конкретное окно задаёт некоторую информацию.

то есть это как? Окно без приложения?

Ты же размеры окна и его заголовок через dbus не предлагаешь пересылать в WM?

Есть такое слово «Инкапсуляция». Приложения вызывают публичные методы друг-друга, им не надо знать все внутренние детали. Если одно приложение, просит другое изменить параметры своего окна, то этот запрос отлично ложится на RPC over D-Bus.

думай

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

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

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

Конечно. В какой-то момент ты начинаешь тыкать пальцами и говорить «а докажите что dbus это универсальный IPC в Linux». Нет, спасибо, ищи другого клоуна.

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

Есть такое слово «Инкапсуляция». Приложения вызывают публичные методы друг-друга, им не надо знать все внутренние детали. Если одно приложение, просит другое изменить параметры своего окна, то этот запрос отлично ложится на RPC over D-Bus.

И как вызвать этот RPC, если у меня приложение запущено на машине A, а окна оно отображает на машине B?

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

не вижу тут ничего про «универсальный IPC»

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

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

Конечно. В какой-то момент ты начинаешь тыкать пальцами и говорить «а докажите что dbus это универсальный IPC в Linux». Нет, спасибо, ищи другого клоуна.

Бгг. Я вообще ничего не говорил про универсальный IPC. Ты сам придумал это словосочетание и носишься с ним. Попутно путая IPC и RPC.

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

Ну например, вообще всё accessibility! Его просто нет. Вообще. Напрочь выкинуто на мороз.

Потому что их никто не написал. Но написать-то их ничего не мешает.

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

Семафоры уже перестали быть средством IPC? И разделяемая память? Как насчёт обычных TCP- и unix-сокетов? Как насчёт сигналов?

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

Бгг. Я вообще ничего не говорил про универсальный IPC. Ты сам придумал это словосочетание и носишься с ним. Попутно путая IPC и RPC.

Как скажешь, бро, как скажешь.

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

Ну например, вообще всё accessibility! Его просто нет. Вообще. Напрочь выкинуто на мороз.

Потому что их никто не написал. Но написать-то их ничего не мешает.

@hateyoufeel: Паритета по функционалу между X и Wayland нет даже спустя 15 лет разработки.

@cumvillain: Ололо! Каких именно фич тебе не хватает?

@hateyoufeel: В Wayland есть жирная проблема с accessibility, оно напрочь отсутствует и никто не торопится делать.

@cumvillain: Ну, это потому что никто это всё не написал!

Я не понимаю, ты персонаж из фильма Уве Болла, что ли? Там очень похожие диалоги были.

Процитирую ныне забаненного @posixbit:

Ещё год-полтора назад я крайне положительно высказывался о Wayland и очень надеялся на прогресс в этой области у wayland-композиторов в сравнении с иксами (можно прочитать мои комментарии на этом сайте, оставленные 1-2 года назад). Когда я начинаю говорить о таких проблемах, УМВР-щики ставят мне клоуна или говорят «не нравится — сделай сам». Я чего-то не понимаю и сейчас вышеописанное считается конструктивным?

Отсюда: GTK и Wayland против слепых (комментарий)

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

На, просвещайся: https://en.wikipedia.org/wiki/Inter-process_communication

Напомнил мне, как вчера на форуме тут один показывал мне код на JS с лямбдой и орал: «где тут лямба! где лямбда, покажи мне!»

Немножко адекватность надо включать.

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

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

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

Согласен, спорить с общепринятыми терминами, которые даже в википедии расписаны – это очень жирно.

Особенно когда там написано, что dbus «utilizes IPC mechanisms but doesn’t implement IPC themselves».

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