Что такое KDE, GTK, GTK +, QT и / или GNOME?

60

Я новичок в Ubuntu (и Linux в целом). Иногда, когда я смотрю на программы в Центре программного обеспечения Ubuntu, я вижу, что программы «для среды GTK +» или «для GNOME», или множество других вещей. Все, что я знаю, это то, что у меня Ubuntu 12.04 LTS, и то, что я вижу через мой монитор, кажется спорным интерфейсом Unity.

Что еще упоминается в описании программ (например, KDE, GTK, QT, GNOME, GNOME 'shell' и т. Д.)? Являются ли они графическими интерфейсами Linux, которые являются альтернативой Unity? Это зависимости, которые мне нужны?

Последние несколько месяцев я привык к Ubuntu в его нынешнем виде (хотя, признаюсь, я играл с Compiz, что чертовски весело). Будут ли эти другие вещи полностью перевернуть мой мир, если я их использую?

HellHarvest
источник
Добро пожаловать в Спросите Ubuntu! Я понимаю, что все эти новые термины кажутся запутанными, когда вы начинаете использовать Ubuntu / Linux. Тем не менее, я также думаю, что ваш вопрос слишком широк, чтобы ответить. Как уже показывал @UriHerrera, информация уже есть и на этом сайте. Я голосую, чтобы закрыть этот вопрос. См. Также FAQ для получения дополнительной информации о том, какие вопросы подходят для этого сайта.
gertvdijk
2
Не за что извиняться :)
Flimm
3
В дополнение к тому, что они не извиняются, я также не согласен, что это слишком широкий вопрос, чтобы ответить. То есть, по нынешним стандартам, оно слишком широкое, поэтому нам, вероятно, не следует закрывать это как его дубликат. Это значительно уже и уже дает хорошие ответы.
Элия ​​Каган
1
@EliahKagan Это простое исключение из правила, которое прямо указано в верхней части вопроса. И я не согласен с вами по поводу того, что это более узкий вопрос, так как этот вопрос касается как DE, так и UI-инструментариев. По сути, это как минимум половина дубликата. И я мог бы написать книгу в качестве ответа, так что это определенно «слишком широкий» тип Q.
gertvdijk

Ответы:

51

GTK, GTK + и Qt являются инструментами GUI. Это библиотеки, которые разработчики используют для разработки графических интерфейсов, все они работают на X-сервере. Это те вещи, которые вам нужно установить как зависимости. Они Linux "эквивалентны" Windows GDI / GDI +. Когда приложение использует какой-либо из них, оно всегда будет иметь общий внешний вид.

GNOME и KDE являются средами рабочего стола. GNOME в основном использует инструментарий GTK +, в то время как KDE в основном использует инструментарий Qt. Существуют приложения, разработанные для GNOME или KDE, такие как меню настроек или музыкальный проигрыватель по умолчанию, обычно в соответствующем наборе инструментов. В этих средах рабочего стола есть набор утилит / оконных менеджеров / спецификаций дизайна для создания более унифицированного рабочего стола. Вы можете смешать их, если захотите, но у вас могут возникнуть проблемы с конфликтующими стандартами и приложениями (с которыми вы можете иногда сталкиваться в таких системах, как Arch).

Unity использует множество утилит GNOME (Nautilus, Rhythmbox и т. Д.), Поэтому Unity - это больше GNOME, чем KDE.

Kupiakos
источник
20

GTK + - это «GIMP Toolkit» ( http://en.wikipedia.org/wiki/GTK+ ); это относится к виджетам - битам, составляющим приложения с графическим интерфейсом, таким как кнопки, меню, раскрывающиеся списки и т. д. - и к базовым битам, которые вы не видите, например к библиотекам для хранения конфигурации.

Unity - это среда рабочего стола, основанная на Gnome. GNOME - это среда рабочего стола, использующая GTK + в качестве инструментария GUI. KDE - это еще одна среда рабочего стола. Это больше похоже на Windows в общем стиле и использует Qt в качестве инструментария GUI.

Хорошей новостью является то, что приложения Qt прекрасно работают в Unity.

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

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

Адриан
источник