CITKIT.ru - свободные мысли о свободном софте
Деловая газета CitCity.ru Библиотека CITForum.ru Форумы Курилка
Каталог софта Движение Open Source Дискуссионный клуб Дистрибутивы Окружение Приложения Заметки Разное
23.06.2017

Последние комментарии

ОСТОРОЖНО: ВИНДОФИЛИЯ! (2250)
24 December, 22:53
Kubuntu Feisty (15)
24 December, 18:42
Один на один с Windows XP (3758)
24 December, 11:46

Каталог софта

Статьи

Дискуссионный клуб
Linux в школе
Open Source и деньги
Open Source и жизнь
Windows vs Linux
Копирайт
Кто такие анонимусы
Лицензии
Нетбуки
Нужен ли русский Linux?
Пользователи
Дистрибутивы
Идеология
Выбор дистрибутива
Archlinux & CRUX
Debian
Fedora
Gentoo
LFS
LiveCD
Mandriva
OpenSolaris
Slackware
Zenwalk
Другие линуксы
BSD
MINIX
Движение Open Source
История
Классика жанра
Окружение
shell
Библиотеки UI
Графические среды
Шрифты
Приложения
Безопасность
Управление пакетами
Разное
Linuxformat. Колонки Алексея Федорчука
Заметки
Блогометки
Файловые системы
Заметки о ядре

Окружение :: Графические среды :: KDE

Установка KDE

Легко догадаться, что местом своего пребывания проект KDE имеет сайт http://www.kde.org, откуда может быть абсолютно безвозмездно скачана в виде исходных текстов (и бинарных пакетов для некоторых дистрибутивов Linux). Бинарники же KDE входят в состав практически любого дистрибутива Linux, претендующего на полнофункциональность (а во многих является и десктопом по умолчанию. Есть она в коллекциях бинарных пакетов и системах портов всех BSD-систем. Впрочем, для FreeBSD бинарники KDE лучше брать не из штатной поставки этой ОС, а с сайта http://freebsd.kde.org/ -там скорее всего будет более свежая версия.

Для установки KDE необходимо озаботиться еще и получением библиотеки Qt, свободно распространяемый (для некоммерческого использования) вариант которой берется в виде исходников с сайта разработчика http://www.trolltech.com/. Впрочем, есть она и в дистрибутивах Linux и BSD-систем - нужно только следить за соответствием версий - они обычно достаточно четко коррелируют с версиями KDE.

Необходимы для работы KDE система X, а также немало дополнительных компонентов, включая включая главные графические и мультимедийные библиотеки, некоторые из которых в качестве зависимостей неизбежно тащат за собой библиотеки Glib и Gtk. Однако и все это хозяйство имеется в дистрибутивах и, скорее всего, устанавливается из них по умолчанию. Да и многие из дополнительных компонентов связаны с KDE "мягкими" (необязательными) зависимостями - в KDE разделение "жестких" и "мягких" зависимостей проводится очень последовательно.

Конечно, процесс самостоятельной сборки KDE - дело не из самых простых, как из-за сложности зависимостей дополнительных компонентов, так и с точки зрения временных затрат. Однако это один из тех немногих случаев, когда индивидуальная сборка способна дать значимый прирост производительности. кроме того, она позволяет исключить явно ненужные пользователю зависимости из числа "мягких" - в большинстве пакетных дистрибутивов Linux все они по умолчанию задействованы в прекомпилированных сборках. Альтернатива полностью ручной сборке - использование портов BSD-систем и портообразных систем Source Based дистрибутивов Linux - все они допускают значительные вариации персональных настроек, включая отсечение необязательных зависимостей.

Сама по себе среда KDE в виде исходников включает в себя около полутора дюжин пакетов, список и состав которых несколько варьирует от версии к версии. В текущей на момент написания версии (3.3.1) он выглядит следующим образом:

kdeaccessibility-3.3.1.tar.bz2
kdeaddons-3.3.1.tar.bz2
kdeadmin-3.3.1.tar.bz2
kdeartwork-3.3.1.tar.bz2
kdebase-3.3.1.tar.bz2
kdebindings-3.3.1.tar.bz2
kdeedu-3.3.1.tar.bz2
kdegames-3.3.1.tar.bz2
kdegraphics-3.3.1.tar.bz2
kdelibs-3.3.1.tar.bz2
kdemultimedia-3.3.1.tar.bz2
kdenetwork-3.3.1.tar.bz2
kdepim-3.3.1.tar.bz2
kdesdk-3.3.1.tar.bz2
kdetoys-3.3.1.tar.bz2
kdeutils-3.3.1.tar.bz2
kdewebdev-3.3.1.tar.bz2

Кроме того, в KDE входят пакеты arts и kdevelop, имеющие свою нумерацию версий, а также пакет kde-i18n, обеспечивающий интернационализацию среды, а также пакеты локализации для отдельных языков, в числе коих - почти все мыслимые (хотя локализация для них выполнена с очень разной полнотой и качеством).

Все это хозяйство, включая библиотеку Qt, в исходниках тянет почти на три сотни мегабайт. Что не может не вызвать воспоминаний о монстроидальности KDE. Однако далеко не все перечисленное обязательно к установке и, соответственно, скачиванию. Правда, во многих пакетных дистрибутивах Linux все компоненты KDE связаны кросс-пакетными зависимостями (включающими все необязательные), и их приходится устанавливать все. Но во FreeBSD, SB Linux'ах и тем более при ручной сборке можно обойтись только на самом деле нужными.

Первый, и бесспорный, кандидат к отчислению из списка - пакет kde-i18n (а это уже более 100 Мбайт исходников): очевидно, что никому не нужна поддержка доброй полусотни языков одновременно. Достаточно отдельного пакета для своего, родного (в наших условиях это kde-i18n-ru), в крайнем случае - еще пары-тройки дружественных.

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

Для начала - о пакетах, обязательных к установке в любом случае. Как можно догадаться, их два - kdelibs и kdebase. Первый - набор специфичных для KDE библиотечных функций, дополняющих базовую библиотеку Qt. Второй же включает основные компоненты KDE - собственно оконный менеджер KWM и его аксессуары, минимальный набор тем и основные приложения - файловый менеджер, он же браузер, konqueror, набор текстовых редакторов (kwrite, kedit, kate), эмулятор терминала konsole.

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

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

  • kdenetwork - сетевые компоненты, среди которых - прекрасная звонилка kppp и kget - ftp-клиент, сам по себе ничем не выдающийся, но в интеграции с файловым менеджером/браузером konqueror весьма способствующий облегчению, жизни;
  • kdepim - пакет персональных помощников, в который не вполне, на мой взгляд, логично, включены почтовый клиент kmail и дополняющая его адресная книга;
  • kdewebdev - пакет разработки web-материалов, основу которого составляет превосходный редактор html-кода Quanta Plus, гармонично дополняемый вспомогательными средствами, такими, как средство проверки целостности ссылок (klinkstatus) и создания ссылочных карт (kimagemapeditor);
  • kdegraphics - пакет включает пару вьюверов графических файлов, очень удобную программу съемки скриншотов, простенький, но неплохой редактор графики kolourpaint (плюс еще два, средней паршивости);
  • kdemultimedia - в составе пакета очень приличный медиаплейер noatun (хотя и похуже mplayer, тем более в KDE-ипостаси - но ее в штатной поставке не имеется), микшер, рекодер и т.д.;
  • kdeutils - в его состав, помимо всякой бижутерии, входит калькулятор, штука нужная;
  • kdeadmin - пакет утилит системного администрирования, требующих, за редким исключением, полномочий суперпользователя; я им не пользуюсь, хотя почему-то обычно устанавливаю.

Еще два пакета я также ставлю всегда - это kdeaddons (ИМХО абсолютно необходим, так как включает, помимо прочего, plug-in'ы для редактора kate, konqueror и прочих) и kdeartwork, в который входят дополнительные украшательства рабочего стола (обои, иконы и т.д.), жизнь без которых была бы скучна. А еще - kdegames, в нем можно найти несколько пасьянсов и пару вариаций на тему бессмертного тетриса - а больше ни в какие игры я не играю.

Осталось упомянуть пакеты, которые я никогда не ставлю и потому о содержании коих имею смутное представление: kdeedu (как можно догадаться, нечто имеющее отношение к образованию (чего или кого - не знаю), kdetoys - какие-то прибамбасы, kdeaccessibility - так называемые спецвозможности, ну и kdesdk - набор скриптов и утилит для разработчика.

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

Сам по себе процесс сборки KDE также особых сложностей не представляет - нужно только выдерживать последовательность сборки пакетов: сначала собирается библиотека Qt, потому звуковая система arts, потом - библиотека kdelibs, а за ней - kdebase. Прочие пакеты, при необходимости, собираются после этих остальных - и более-менее в любом порядке.

Для сборки библиотеки Qt тарбалл ее исходников распаковывается в тот каталог, в котором мы хотим ее видеть в дальнейшем - по умолчанию это /usr/local, по последннее время Qt часто помещается в каталог /opt, в любом случае в результате образуется подкаталог вида qt-vesion. Его надлежит переименовать:

$ mv qt-version qt

и в профильный файл - общесистемный или пользовательский, то есть root'овый, - вносятся коррективы в значения переменных описания путей (подробно это описано в сопроводительной документации). Для sh-совместимого сепейства это выглядит примерно так:

	QTDIR=/usr/local/qt
	PATH=$QTDIR/bin:$PATH
	MANPATH=$QTDIR/man:$MANPATH
	LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
	export QTDIR PATH MANPATH LD_LIBRARY_PATH

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

$ ./configure && make

- и Qt можно считать установленной. По умолчанию бинарники библиотеки собираются в тот же каталог, что и исходники, так что необходимости в команде make install.

Из опций конфигурирования не лишней представляется минимум одна - -qt-gif, включающая поддержку GIF-графики (по умолчанию, как ни странно, это не подразумевается).

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

Сборка каждого из пакетов собственно KDE выполняется посредством трех традиционных сакральных действ -

$ ./configure && make && make install

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

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

./configure --help

По умолчанию Qt и пакеты KDE устанавливаются в собственные ветки каталога /usr/local - /usr/local/qt и /usr/local/kde. Однако в последнее время во многих дистрибутивах Linux просматривается тенденция перемещать такие крупные программные комплексы в каталог /opt (и это приветствуется Стандартом иерархии файловой системы Linux). Для следования этой тенденции при выполнении конфигурационного скрипта необходимо задать соответствующие опции:

./configure --prefix=/opt --with-qt-dir=/opt/qt

После сборки Qt и kdelibs (и перед сборкой остальных пакетов KDE) необходимо сделать соответствующие библиотеки общедоступными для всех приложений. Для этого нужно вписать в файл /etc/ld.so.conf строки

/opt/qt/lib
/opt/kde/lib

и запустить команду

$ ldconfig

Теперь об оптимизации. KDE (как и Qt) написана на Си++, и, соответственно для оптимизации требуется не флаг CFLAGS, а CXXFLAGS. Впрочем, их можно приравнять друг другу -

export CXXFLAGS="$CFLAGS"

Ну о возможных значениях CFLAGS мы поговорим как-нибудь в другой раз.




Комментарии

Страницы комментариев: 1 :: 2 :: следующая

аноним, Sun Jul 12 11:48:41 2009:
анонимный аноним, пятница, 10 июля 2009 г. 12:45:45:
А вот интересно, можно ли запустить KDE из-под
Gnome (и наоборот)?

Разве гном приложение кде? (или наоборот). У них даже либы разные. То, что написал бред - это запск разного графического окружения и под одной ос, как приложений к ней.
Bren74, Sun Jul 12 01:50:52 2009:
To анонимный аноним, пятница, 10 июля 2009 г. 12:45:45:
----------
Можно установить на один дистр несколько десктопов.
К примеру, GNOME vs KDE vs XFCe vs OpenBox...и так сколько захочешь.
Лишь бы места на жёстком хватило ;)
анонимный аноним, Fri Jul 10 12:45:45 2009:
>Elrock, четверг, 8 ноября 2007 г. 15:08:55:
Что интересно - почти все дистрибутивы, разрабатываемые сообществом тяготеют к KDE, а "фирменные" кроме разве Mandriva ставят на Gnome.

А вот интересно, можно ли запустить KDE из-под
Gnome (и наоборот)?
аноним, Fri Jul 10 11:19:44 2009:
Спасибо, очень хорошая статья)
гг, Mon Sep 29 18:52:06 2008:
а четвертые кеды на кубунте я так и не могу установить...
Алексей Федорчук, Thu Nov 8 18:55:45 2007:
2 аноним, четверг, 8 ноября 2007 г. 14:59:21:20762Удалить
> Интересно было бы почитать статью "Удаление KDE". :)
___
Дык какие проблемы? Напишите - и читайте в свое удовольствие
Алексей Федорчук, Thu Nov 8 18:54:55 2007:
2 Байан
> Впрочем, для FreeBSD бинарники KDE лучше брать не из штатной поставки этой ОС, а с сайта http://anime.org/ -там скорее всего будет более свежая версия.
___
Да, Вы правы, там они уже пропатчены. Но когда писалась эта статья, еще не было заветов Президента Назарбаева, как это делать.
Алексей Федорчук, Thu Nov 8 17:09:46 2007:
2 Elrock еще раз
> Для меня KDE вообще лучший рабочий стол.
___
Где-то тут лежит статья KDE vs GNOME. Я ее написал в откровенно провокационном стиле.
В надежде на то, что кто-нибудь из поклонников GNOME возмутится и напишет ответ.
Из которого я наконе-то смогу понять, есть ли у GNOME хоть какие достоинства, кроме недостатков.
Прошел примерно год
Перчатка пока не поднята
Алексей Федорчук, Thu Nov 8 17:06:53 2007:
2 Elrock
> Что интересно - почти все дистрибутивы, разрабатываемые сообществом тяготеют к KDE, а "фирменные" кроме разве Mandriva ставят на Gnome.
___
Сообществом разрабатываются дистрибутивы "для себя и своих", фирмами - "для всех, в т.ч. и блондинок", которым настройки KDE ниасилить.
Изначально Матяша Эттрих сочинил KDE, чтобы его девушке было удобно работать - ну, то есть, можно сказать, "для себя".
А Иказа сотоварищи сочинили GNOME для того, чтобы показать, какие они крутые программеры.

А вообще, мне кажется, проблема в лицензионных опасениях: фирмачи побаиваются, что однажды Тролльтех возьмет и изменит условия распространения и начнет требовать денег.
В далеких 90-х Рэд Хат озвучил это открытым текстом.

И плюс география:
пока Suse была немецкой яирмой, она не только предпочитала KDE, но и активно финансировала проект. Как только она стала Novell'ом - началась переориентация на GNOME.

А с третьей стороны, совсем уж коммерческие дистры, изначально ориентировавшиеся на продажу, а не на поддержку (Linspire, Xandros, Vector, MEPIS) ничего кроме KDE не признают. О причинах нетрудно догадаться любому непредубежденному - не обязательно любителю KDE.
Elrock, Thu Nov 8 15:08:55 2007:
Что интересно - почти все дистрибутивы, разрабатываемые сообществом тяготеют к KDE, а "фирменные" кроме разве Mandriva ставят на Gnome.

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

Страницы комментариев: 1 :: 2 :: следующая

Комментарии заморожены.

Новости:

Все новости на CitCity.ru

Компании месяца

 
Последние комментарии
Почему школам следует использовать только свободные программы (101)
20 Декабрь, 14:51
ОСТОРОЖНО: ВИНДОФИЛИЯ! (2250)

24 Декабрь, 22:53
Linux в школе: мифы про школу и информатику (334)
24 Декабрь, 22:43
Kubuntu Feisty (15)
24 Декабрь, 18:42
Software is like sex: it's better when it's free.
©Linus Torvalds