Доброго дня вам, ЛОРчане!
Что такое этот мифический «Unix-way»? Вероятно, однозначно на этот вопрос не ответит никто, т.к. каждый понимает под данным термином что-то своё, и определение не имеет чётких границ. Поэтому для установления общего базиса в данной теме предлагаю заглянуть в Wikipedia. Кроме трёх базовых понятий о программах делающих что-то одно, работающих вместе и использующих текст (Malcolm Douglas McIlroy), там есть такие мысли, как:
- «Избегайте пользовательских интерфейсов, ограничивающих возможности пользователя по взаимодействию с системой» - Mike Gancarz
- «Позвольте пользователю настраивать окружение» - Mike Gancarz
- «Правило прозрачности: Разрабатывайте прозрачные программы для облегчения последующего пересмотра и отладки» - Eric S. Raymond
С настраиваемостью и GNOME, думаю, давно всё понятно. Разработчики явно решили, что многообразие опций напугает пользователя. А что с прозрачностью? На мой взгляд, неоспоримым преимуществом систем GNU/Linux по сравнению с Windows и macOS является то, что в случае поломки пользователь может разобраться в её причинах прямо здесь, на месте. Либо, если ему интересно, может узнать что и как устроено внутри. Пользователь GNU/Linux в праве ожидать от программ ясных и подробных логов, тогда как в Windows чаще можно увидеть «Произошла ошибка 0xBADS0F1. Обратитесь к системному администратору». Я уже как-то писал на ЛОРе, что GNOME развивается в сторону от прозрачности системы. Проблема заключалась в отображении грустного смайлика (выглядит это вот так) вместо нормального сообщения об ошибке, и это сообщение показывал не «обновлятор» Ubuntu, а GNOME. Самое стрёмное тут это невозможность отказаться от завершения сеанса. Т.е. другие программы могут вполне работать, но поверх их висит окно, которое блокирует весь ввод. Я сам так же попадал в подобную ситуацию, когда пользовался QEMU. При том не было даже никакой ошибки, просто QEMU захватил ввод, я решил переключиться на другую виртуальную консоль (Ctrl+Alt+F3) и обратно, а GNOME почему-то решил, что ему стало плохо. После этого я с воплями убежал на KDE. Это было не единственным примером, а скорее, последней каплей. До этого я ещё стойко терпел выпиливания функционала. Достаточно сравнить диалоги выбора файлов в GNOME и KDE - вполне наглядный пример.
И вот, некоторое время назад мне опять понадобилось писать ПО с использованием GTK. К слову, к самому GTK я пока отношусь положительно. Достаточно неплохой тулкит, нормальная идея с GObject introspection и привязками к другим языкам. Хотя уже закрадываются сомнения... Раньше я уже использовал Glade, чтобы нарисовать интерфейс. Местами плевался от него, но в целом ничего. А сейчас решил попробовать GNOME Builder. Запустил, открыл в нём пример приложения (одна из причин зачем ставил - потыкать разные примеры в одном месте, а не собирать их по GitHub, документация разработчика для GTK как-то не очень). Builder попросил поставить некоторые SDK. По названиям я предполагаю, что это делается через Flatpak. Хотя не факт. В общем, у него это не получилось. Да, ошибки в ПО встречаются, этого не избежать. Где нормальное сообщение об ошибке? Почему вместо него вот это. Конечно, я нагуглю и разберусь, что там случилось. Но, почему? Это ведь уже не текстовый редактор, где «важно» (хотя на самом деле не важно и даже вредно, пользователь должен знать) не напугать неподготовленного пользователя обилием опций и сообщениями с подробностями. Это IDE для разработчика. Всё, что тут можно сделать - нажать на кнопку, которая убирает пункт из списка. Зато есть удобное меню-гамбургер, а там есть пункт «Generate support log». Ура? Нет, это было бы слишком просто. В логе нет ничего по теме ошибки. В окне с «Failed to install» даже текст нельзя выделись и скопировать. Казалось бы, при разработке интерфейса надо просто поставить галочку «Selectable». Мелочь, но сколько раздражения доставляет. Вообще, что мешало в интерфейс выдать сразу какую-то внутреннюю ошибку? Ведь она там есть. Место закончилось или прав не хватило? Запустить Builder через sudo? Или что? Хоть бы errno показывали...
По итогу всего написанного выше, вангую, из GNOME побегут не только пользователи, которых лишили опций и настроек, но и разработчики сторонних приложений, т.к. создатели GNOME из нормальной среды времён второй версии устроили какой-то мирок с розовыми очками, где только они сами и могут обитать.