LINUX.ORG.RU

Разработчики некоторых приложений Gnome просят не использовать темы в их приложениях

 , , ,


1

3

Группа независимых разработчиков приложений для Linux написала открытое письмо, в котором попросила сообщество Gnome прекратить использовать темы в их приложениях.

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

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

Главной технической проблемой с «темингом» GTK является то, что нет никакого API для тем GTK, только хаки и пользовательские таблицы стилей - нет никакой гарантии, что та или иная тема ничего не сломает.

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

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

«Вы не делаете то же самое с Blender, Atom, Telegram или другими сторонними приложениями. Тот факт, что наши приложения используют GTK, не означает, что мы согласны с тем, что их заменяют без нашего ведома», - продолжается в письме.

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

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

Прислушается ли сообщество Gnome к словам разработчиков? Время покажет.

Письмо

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

★★★

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

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

Проблема именно в том, что зафиксировали какой-то цвет текста, не зафиксировав цвет фона. Именно поэтому возникают ситуации в которых текст нечитаем.

Касаемо «средний, чтобы и на тёмной выглядел». Что-то мешает написать стиль и для светлой адвайты, и для тёмной? О.о

mogwai ★★★★
()
Ответ на: комментарий от Vsevolod-linuxoid

они пропихивают выгодные только им решения

Вообще странно, да? Должны же пропихивать невыгодные им.

заставляя других делать за них их работу.

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

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

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

так почему она цепляется если отключено?

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

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

Касаемо «средний, чтобы и на тёмной выглядел». Что-то мешает написать стиль и для светлой адвайты, и для тёмной? О.о

Да, изгаляются, всяко-разно. Но какой стиль собственной темы мне выбрать для темы POPOV_COOL_THEME? В рантайме распарсить CSS, найти стиль, который наложится на фон данного виджета и подобрать ту тему, в которой цвет будет достаточно контрастным?

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

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

15 лет так делали и тут бац, оказывается это плохо.

даже не получив явного согласия пользователя

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

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

А что мешает приложению не подгружать динамические библиотеки? Является ли это валидным ответом на вопрос: «какого хрена вы вместо libc подложили нечто несовместимое»? И потом, как сказано выше, если автор захардкодит адвайту, умный мейнтейнер может это убрать, ему же не нужен разнобой. Пока проблемы не вылезут, мейнтейнеры сильно смелые.

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

если очень хочется - можно и свою libc тащить

если автор захардкодит адвайту, умный мейнтейнер может это убрать

ну вот против этого пусть и митингуют, а примеры таких пакетов есть?

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

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

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

слишком много просят, коль их поделие ломается, пусть хардкодят и оставляют опцию для юзеров

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

если очень хочется - можно и свою libc тащить

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

ну вот против этого пусть и митингуют, а примеры таких пакетов есть?

Против этого они не имеют права митинговать. GPL же, меняй что хочешь.

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

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

Против этого они не имеют права митинговать. GPL же, меняй что хочешь.

пусть багрепорт в дистрибутиве открывают

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

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

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

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

Я не спорю с написаным в обращении, наоборот поддерживаю. Только приведённый скриншот приложения с нечитаемым текстом - вина и сапопикла, и девелопера, который захардкодил светлый фон, и не захардкодил тёмный текст. Сейчас это проблема их обоих. Как только разраб захардкодит контрастный текст и фон — кривой внешний вид станет исключительно проблемой космонавта.

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

даже адвайта дарк ставится через хак.

Не совсем хак, но да, я так понимаю она просто идёт в комплекте, чтобы некоторые приложения могли быть тёмными (например, gnome-terminal)

Это всё равно как если бы в убунте вместо /bin/sh положили tcsh, сказав что он лучше, нам надо выделиться и что везде внутри дистра нужно однообразие, поэтому вот у нас /bin/sh ссылается на tcsh, а не tcsh просто рядом лежит.

Емнип, в убунтах примерно так и делают, вместо /bin/sh по-умолчанию не /bin/bash, а /bin/dash :)

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

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

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

Так?

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

Здравый смысл? Приложение должно выглядеть нативно в окружении. Приложения в окружении должны выглядеть единообразно.

Несогласные могут установить себе over900 тем gtk\qt и перед запуском каждого приложения рандомно подставлять ему новую тему. Пожить так несколько месяцев, а потом рассказать, как каждому приложению нужен уникальный стиль.

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

Емнип, в убунтах примерно так и делают, вместо /bin/sh по-умолчанию не /bin/bash, а /bin/dash :)

Ну как сказать «вместо»... это везде вместо /bin/sh стоит ссылка на что-то улучшенное, в одном случае на баш, в другом на даш, но в общем в принципе возможно написать скрипт, работающий нормально и там и там. В случае гтк-тем это принципиально невозможно, внутри темы может оказаться абсолютно любая конструкция, и нет никаких соглашений о том, что там должно быть и чего там быть не должно ни в коем случае.

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

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

15 лет так делали и тут бац, оказывается это плохо.

У нас 15 лет внешний вид приложения это css окружения + дополнение и переопределение свойств в css приложения?

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

Зачем? Баг в категории UI и дистрибутив Ubuntu? Автоматом закрываем баг и отправляем пользователю ссылку на убунтофак.

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

mogwai ★★★★
()

А что, GTK не имеет какой-нибудь опции типа «Ignore system theme»?

Ну а вообще странно. Мне вот не очень понятно почему замена иконок/шрифтов вообще может ломать программу?

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

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

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

НЯП не мейнтейнер, а разработчик скринсейвера.

баг, которого давно нет в актуальной
Самому исправить баг … в голову не пришло

/0

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

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

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

Vsevolod-linuxoid ★★★★★
()
Ответ на: комментарий от h578b1bde

НЯП не мейнтейнер, а разработчик скринсейвера.

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

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

Майнтейнер может наложить патч, который возвращает системную тему.

Приведи хоть один пример подобного.

Да, давай всё опять спихнём на пользователя. Вдруг что-нибудь хорошее получится, а если на самом деле нет — пользователь и виноват, а чего он галки ставит.

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

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

Что-то работает. Этим пользуются очень многие люди.

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

khrundel ★★★★
()
Ответ на: комментарий от Vsevolod-linuxoid

Ведь никто им не мешает по примеру кучи других приложений (того же GIMP, Chromium, Firefox, Blender...)

Хромой, огнелис, блендер и подобные — мимо, у них свой тулкит (который может использовать один из системных, а может и нет). Гимп и тёмныйстол — тоже мимо. Они вынуждены использовать свою тему, т.к. им нужна возможность создать нейтральное окружение, которое не повлияет на восприятие цветов пользователем. Тому же гимпу можно включить системный css, но тогда мы получим то же ужас, который задолбал авторов петиции.

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

К кому они пишут это письмо?

К мейтейнерам дистрибутивов, чтобы те не считали себя умнее разработчиков DE и засунули свои дизайнерские замашки туда, где солнце никогда не светит. Были бы их «темы» лучше дефолта, апстрим давно бы их принял к себе.

Губа не треснет?

А у Дениски губа не треснет, чтобы каждый разработчик себе в софт писал «если болгенос, то»? Ты забыл, какая жесть была в вебе, когда на каждой странице были десятки блоков <!--[if IE 7]><![endif]-->? Такого же хочешь разработчикам десктопного софта?

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

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

Vsevolod-linuxoid ★★★★★
()
Ответ на: комментарий от khrundel

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

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

Просто проблема-то — чисто техническая. Ведь никто им не мешает по примеру кучи других приложений (того же GIMP, Chromium, Firefox, Blender...) попросту отключить применение темы, которая используется в DE пользователя, ну или сделать дополнительную настройку.

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

khrundel ★★★★
()
Ответ на: комментарий от Vsevolod-linuxoid

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

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

«ну пожалуйста, не ломайте моё приложение» должна получить решительный отпор?

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

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

Ну нас 15 лет внешний вид приложения это css окружения + дополнение и переопределение свойств в css приложения?

Ну ладно, 10 лет.

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

И дальше что? Открыли, блядь, Америку. Этой проблеме уже четверть века — она как минимум на Win95 появилась.

Есть стандартное, проверенное временем решение — если твое ПО требует специфичной темы оформления, то и используй её.

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

Vsevolod-linuxoid ★★★★★
()
Ответ на: комментарий от Polugnom

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

Не в силах. Вот тупо принципиально нерешаема задача. Это CSS. Отсюда и проблема, тупые пользователи, которые не знают, как оно работает, считают, что «вот тут вылезло» - это мелкий баг, который как 2 пальца, а умные программисты понимают, что чиня этот мелкий баг ты чинишь ровно один случай, именно эту тему именно этой версии, и при этом рискуешь починкой сломать другую тему. Единственный способ не иметь такой проблемы - написать настолько популярное приложение, чтоб проблемы с совместимостью с ней решали авторы темы, а не ты сам.

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

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

Я ж и говорю: слышал звон...

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

Вот такие у вас аргументы - взагали по загалям.

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

Не в силах.

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

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

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

Вот это я понимаю хуцпа.

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

разработчики GTK создали тулкит

а теперь хотят запретить

Где ты там разработчиков GTK увидел?

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

Мне вот не очень понятно почему замена иконок/шрифтов вообще может ломать программу?

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

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

А что, GTK не имеет какой-нибудь опции типа «Ignore system theme»?

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

mogwai ★★★★
()
Ответ на: комментарий от Vsevolod-linuxoid

Ещё раз: ты видел где-нибудь в настройках гнома возможность выбора хотя бы тёмной адвайты, я уж не говорю о подгрузки своей темы? Нет такого. Не предусмотрено. Даже тему назвали адвайтой, что на каком-то означает типа «единственная». Вся эта опупея с темами - грязный хак. Как пользовательскую css'ку в браузере править чтоб сайты лучше выглядели. Никто не предлагает темы менять. Даже авторы убунты такую возможность не добавили, всё рассчитано на то, что есть одна тема и небольшие патчи, которые себе приложение добавляет. Люди просят авторов дистров не использовать грязный хак ради выпендрёжа.

khrundel ★★★★
()
Ответ на: комментарий от Vsevolod-linuxoid

Разработчики этих приложений из списка — часть команды GNOME, а они и за GTK отвечают.

А ещё разработчики этих приложений из списка - люди, а они и за XFCE отвечают. Всё, мы нашли виновника!

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

У пользователя возможность самостоятельно установить css и указать его в настройках окружения ни кто не отбирает. Кому надо будет — зайдут на <de>-look.org и скачают.

Что-то работает. В церковь ходят очень многие люди. Следовательно, доказывать нужно обратное — что бога не существует, чем доказывать его существование.

Нет уж, сначала ты докажи, что мейтейнеру надо менять тему, и это есть хорошо.

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