Gnome3
Материал из База знаний проекта Russian Fedora
Gnome3.6 на Fedora18 абстрагирован от предыдущих релизов, пора менять статью.
Gnome Shell
С внешним видом и возможностями Gnome 3 можно ознакомиться посмотрев ролики на официальном сайте http://gnome3.org/
Далее обсудим недочеты, неоднозначные улучшения и способы их исправления.
Прежде чем перейти к собственно настрокам, упомянем две полезные команды:
- Для перезагрузки gnome-shell без выхода из сеанса нужно в меню быстрого запуска (Alt-F2) набрать команду r.
- Для доступа в программу отладки расширений LookingGlass - наберите Alt-F2 lg.
Dconf-editor и gsettings
dconf-editor это графическая утилита (она пришла на смену устаревшей утилиты gconf-editor), которая позволяет просматривать и изменять gsettings. Gsettings консольная утилита делает то же самое, только в командной строке. Обратите внимание, что эти инструменты всегда работают в текущей базе данных пользователей gsettings.
Для того чтобы изменить значение ключа gsettings необходим запущенный сервис dbus. Поэтому если хотите поменять какую-то настройку из текстового режима без запущенных иксов, запуск gsettings надо предварять командой dbus-launch
dbus-launch gsettings set <схема> <ключ> <значение>
Для создания или изменения профилей dconf нужно использовать консольную утилиту dconf. Чтобы установить значение по умолчанию для всех пользователей или запретить пользователям менять значения нужно прочитать руководство dconf/SystemAdministrators.
Gnome Tweak Tool
Самое дружелюбное средство настройки. Установить пакет можно командой
# yum install gnome-tweak-tool
Запустить
$ gnome-tweak-tool
Позволяет добавить кнопки сворачивания/разворачивания окон, поменять шрифты и темы. А так же вернуть файловый менеджер на рабочий стол.Наверное вам не привычно будет не видеть на вашем рабочем столе иконки ¨Computer¨, ¨Home¨, ¨Корзина¨ и возможность при нажатии правой клавиши мыши создать документ, папку. . . Запускаем tweak-tool и во вкладке file manager включаем ¨have file manager handle the desktop¨
Полный список настроек на картинке.
Расширения
На волне всеобщего энтузиазма расширения для gnome-shell практически мгновенно превращаются в пакеты официального репозитория. Поэтому для их включения достаточно установить нужный пакет. На данный момент в репозитории Fedora содержится довольно большое число расширений. Просмотреть их список можно из любого эмулятора терминала с помощью команды yum search gnome-shell-extension.
Более сложным является вопрос как отключить установленное расширение для конкретного пользователя. Он решается с помощью dconf-editor, ключ org.gnome.shell disabled-extensions.
Для установки расширений из стандартного репозитория, нужно искать их по ключевому слову gnome-shell-extension.
Подробнее смотрите на странице Расширения_Gnome-shell
Тема gtk-3
Mutter может использовать темы для metacity!
Темы меняются через gconf-editor аналогично fallback-режиму.
# yum install gconf-editor $ gconf-editor
Ключ desktop>gnome>shell>windows>theme.
В качестве значения ключа нужно указывать название папки с темой из /usr/share/themes
или ~/.themes/
.
Дополнительны темы можно установить из пакетов:
$ yum list *theme*
Тема gnome-shell
Для того чтобы иметь возможность настраивать темы shell от пользователя установите расширение user-theme:
# yum install gnome-shell-extensions-user-theme.noarch
Скачать несколько тем можно в окрестности этой ссылки. Темы gnome-shell также можно скачать из стандартного репозитория Fedora, ключевое слово для поиска gnome-shell-theme.
Теперь в gnome-tweak-tool во вкладке Shell можно выбрать тему оформления. Выбирать надо zip-файл с архивом темы. Тема применяется автоматически. Это пункт пока плохо отлажен(но работает!), его сейчас дописывают, ждем апдейтов.
Gnome Shell с темой Elementary выглядит так
Чтобы изменить размер иконок в списке приложений отредактируйте файл gnome-shell.css вашей темы. Вам могут потребоваться следующие параметры:
.icon-grid { spacing: 18px; /* 36px; / -shell-grid-item-size: 56px; / 118px; / } .icon-grid .overview-icon { icon-size: 48px; / 96px; */ }
Пользовательская кнопка запуска
Чтобы создать собственную кнопку запуска произвольной команды необходимо создать для неё app.desktop-файл и поместить его в папку ~/.local/share/applications. После этого кнопка будет доступна в списке Applications и её можно будет поместить в dash обычным порядком (перетаскиванием, например).
Спецификация формата .desktop-файлов описана по ссылке desktop-entry-spec.
Там же есть пример такого файла foo.desktop:
[Desktop Entry] Version=1.0 Type=Application Name=Foo Viewer Comment=The best viewer for Foo objects available! TryExec=fooview Exec=fooview %F Icon=fooview MimeType=image/x-foo;
Существует также GUI-интерфейс для редактирования списка доступных приложений alacarte
Alacarte
$ su -c 'yum install alacarte'
Допиливаем Alacarte под GNOME 3! Правим:
sudo gedit /lib/python2.7/site-packages/Alacarte/MenuEditor.py
Находим строку с содержимым:
applications.menu
Меняем на:
applications-gnome.menu
Теперь мы сможем добавлять удалять подпункты меню. .. Я. .. ♥ ..
Автозапуск приложений при старте сессии
Для редактирования списка автозагрузки выполните
$ gnome-session-properties
User-неfriendly вариант решения - надо поместить app.desktop файлик в папку ~/.config/autostart. На примере gkrellm.desktop:
[Desktop Entry] Type=Application Exec=/usr/bin/gkrellm Hidden=false X-GNOME-Autostart-enabled=true Name[en_US]=gkrellm Name=gkrellm Comment[en_US]=system preformance monitoring Comment=system preformance monitoring
nm-applet вместо встроенного в шелл индикатора сети
Это плохое решение. Вместо правки системного файла ui необходимо завернуть эту правку в расширение для gnome-shell.
1. Идете в /usr/share/gnome-shell/js/ui
2. В файле statusIconDispatcher.js находите в начале объявление массива STANDARD_TRAY_ICON_IMPLEMENTATIONS
3. Комментируете строку 'nm-applet': 'network'
4. Перестартовываете gnome-shell
Всё, в области уведомлений (всплывающей внизу) у вас появляется привычный значок Network Manager'а
Внешний вид по умолчанию
Доступ пользователей к дополнительным фонам
Создайте xml файл в /usr/share/gnome-background-properties и содержаший описание дополнительных фонов. Для примера :
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE wallpapers SYSTEM "gnome-wp-list.dtd"> <wallpapers> <wallpaper deleted="false"> <name>Company Background</name> <name xml:lang="de">Firmenhintergrund</name> <filename>/opt/corp/background.jpg</filename> <options>zoom</options> <shade_type>solid</shade_type> <pcolor>#ffffff</pcolor> <scolor>#000000</scolor> </wallpaper> </wallpapers>
Как изменить фон по умолчанию для новых пользователей?
Нужно переопределить gsetting ключ org.gnome.desktop.background.picture-uri. Например, вот файл /usr/share/glib-2.0/schemas/org.gnome.desktop.background.fedora.gschema.override, который используется в Fedora 17:
[org.gnome.desktop.background] picture-uri='file:///usr/share/backgrounds/beefy-miracle/default/beefy-miracle.xml'
Как сделать дополнительные шрифты, доступные для пользователей?
Скопируйте шрифты в подкаталог /usr/share/fonts и запустить команду fc-cache
Откуда берется фоновое изображение на экране входа?
См. gsettings ключ org.gnome.desktop.background.picture-uri. Обратите внимание, что GDM использует свой собственный профиль DConf, как только измените настройки в профиле, разместите ключевой файл в /etc/dconf/db/gdm.d и запустить обновление dconf. Вот пример такого ключевого файла, который может быть сохранен как /etc/dconf/db/gdm.d/corp-login:
[org/gnome/desktop/background] picture-uri=/opt/corp/background.jpg
Примечание, что эти DConf ключевые файлы немного отличаются от файлов gsettings, упомянутых ранее.
Фоновое изображение на экране блокировки
gnome-screensaver работает в сессии пользователя и использует значение по умолчанию org.gnome.desktop.background.picture-uri ключей gsettings. Чтобы изменить настройки по умолчанию, сделайте переопределение
Логотип института на экране приветствия
См. gsettings ключ org.gnome.login-screen.logo. Обратите внимание, что GDM использует свой собственный профиль DConf, самый простой способ состоит в добавлении к этому ключу DConf, для примера:
[org/gnome/desktop/background] picture-uri=/opt/corp/background.jpg [org/gnome/login-screen] logo=/opt/corp/logo.png
Экран входа
Показывать текст ошибок на экране входа
Описано в рассылке.
Настройка несколько раскладок клавиатуры на экране входа
На экране приветствия расположен выбора раскладки, если нужно более одной раскладки то прописывается в файле /etc/X11/xorg.conf
Постоянное появление некоторых пользователей в списке пользователей
Рассматривается в бугзилле.
Исключение списка пользователей
См. gsetting ключ org.gnome.login-screen.disable-user-list. Обратите внимание, что GDM использует свой собственный профиль DConf.
Разрешить пользователям использовать отпечатки пальцев для входа в систему
См. gsetting ключ org.gnome.login-screen.enable-fingerprint-authentication. Обратите внимание, что GDM использует свой собственный профиль DConf.
Использование смарт-карт для входа
См. gsetting ключ org.gnome.login-screen.enable-smartcard-authentication. Обратите внимание, что GDM использует свой собственный профиль DConf.
Информация для каждого пользователя для автоматического входа
Сервис accountsservice записывает это в конфигурацию gdm в /etc/gdm/custom.conf, это может измениться.
Несколько сеансов входа на экране входа
Показан выбор сессии, если есть более чем один рабочий стол то указывется в файле в /usr/share/xsessions/.
Создание произвольной сессии
Установить файл рабочего стола для пользовательского сессии в /usr/share/xsessions/. Если ваш пользовательский сеанс использует Gnome-сессию менеджера сессий, вы можете дать ему аргумент --session=mysession, и определить содержимое вашей сессии в файле /usr/share/gnome-session/sessions/mysession.session. Например, /usr/share/xsession/custom.desktop:
[Desktop Entry] Encoding=UTF-8 Type=Application Name=Custom session Name[de]=Spezial-Session Comment=This is our custom session Exec=gnome-session --session=mysession TryExec=gnome-session
Это будет использоваться вместе с сессией определеной файле /usr/share/gnome-session/sessions/mysession.session которая выглядит следующим образом:
[GNOME Session] Name=Custom session Name[de]=Spezial-Session RequiredComponents=my-window-manager;my-file-manager;my-custom-component;
Обратите внимание, что имена в списке RequiredComponents должны иметь файл рабочего стола первым. Например не должно быть /usr/share/applications/my-window-manager.desktop и т. д.
Запуск определенного приложения всякий раз, когда пользователь входит в систему
Установить автоматический запуск файла приложения в /etc/xdg/autostart/
Определенным пользователям различные сессии, без выбора
По умолчанию сессии определяется ключом Xsession в файле /var/lib/AccountsService/users/<username>
Позволить определенным пользователям настраивать принтеры или устанавливать программное обеспечение
Это контролируется разрешениями PolicyKit
Предварительная настройка VPN для всех пользователей
NetworkManager сохраняет сетевые настройки в/etc/NetworkManager/system-connections, тут же можно прописать и VPN настройку.
Cinnamon
Cinnamon — это среда рабочего стола, являющаяся ответвлением от кодовой базы GNOME Shell. Основное направление разработки - предоставление пользователю более привычной, традиционной среды в стиле GNOME 2, удобной пользователям настольных ПК и ноутбуков, без недостатков GNOME 3 и Unity.
Недавно его включили в официальный репозитарий Fedora ( c версии 17 ) и поэтому устновить эту среду можно одной командой:
su -c 'yum install cinnamon'
Fallback-режим
Этот режим включается автоматически если ваша видеокарта не поддерживает 3D-акселерацию.
Поддержка 3D имеет мало общего с мощностью и производительностью компьютера. Гораздо большее значение имеет наличие качественного видеодрайвера. Например, на встроенной Intel GMA945 Gnome 3 работает в нормальном режиме.
На виртуальных машинах на данный момент 3D-акселерация не поддерживается. Несмотря на то, что, например, в VirtualBox есть галочка включающая поддержку 3D.
Как попасть в fallback-режим
Если ваша видеокарта поддерживает 3D, но вы тем не менее хотите опробовать режим совместимости, вы можете включить его вручную.
Для этого необходимо зайти в System Info и во вкладке Graphics поставить соответствующую галочку, после чего перелогиниться.
Как принудительно включить запуск fallback-режима из консоли
За Gnome-сессию отвечает ключ dconf org.gnome.desktop.session/session-name. Он может принимать значения gnome - по умолчанию и gnome-fallback - для запуска режима соместимости.
Чтобы узнать значение этого ключа выполните от пользователя
$ gsettings get org.gnome.desktop.session session-name
Чтобы поменять его
$ dbus-launch gsettings set org.gnome.desktop.session session-name 'gnome-fallback'
Настройка gnome-panel
Панель в fallback-режиме ничем не отличается от панели привычного Gnome 2 и настраивается интуитивно. Единственное, что нужно знать: для доступа в меню настроек панели используется сочетание Alt+"Правая кнопка мыши".
Если вы используете fallback-режим в VirtualBox-е, то правильное сочетание: левый Alt + правый Ctrl + правый клик.
На панели можно добавлять кнопки запуска, панели можно двигать, настраивать их цвет и прозрачность.
Gconf-editor или gconftool-2
В fallback-режиме используется оконный менеджер metacity. Настроить его тему можно с помощью gconf. Устанавливаем
# yum install gconf-editor
Запускаем
$ gconf-editor
Находим ключ /desktop/gnome/interface/gtk_theme и указываем в нем нужную тему. Названия тем берутся из каталога /usr/share/themes/.
Ключ /desktop/gnome/background/picture_filename отвечает за фон рабочего стола.
Дополнительные темы metacity, картинки для фона и иконки можно найти в пакетах. См., например, yum list \*theme\*
Compiz
Gnome-shell можно заменить на Compiz. Для этого необходимо установить соответствующие пакеты
su -c 'yum install compiz compiz-gnome'
после чего разлогиниться и при новом входе в систему в GDM-е в качестве сеанса выбрать "Классический GNOME + Compiz"
Отключение клавиши F10 в терминале
Необходимо создать файл ~/.config/gtk-3.0/gtk.css со следующим содержимым:
@binding-set NoKeyboardNavigation { unbind "<shift>F10" } * { gtk-key-bindings: NoKeyboardNavigation }
Сделать шрифты в gtk 2 приложениях такими же, как и в приложениях с gtk 3
Необходимо создать файл ~/.gtkrc-2.0 со следующим содержимым:
style "font" { font_name = "Sans 10" } widget_class "*" style "font" gtk-font-name = "Sans 10"
Вместо Sans можно использовать любой шрифт.
Текущий список претензий
Сюда можно добавлять свои вопросы и пожелания
- Шрифты по умолчанию не имеют кириллической версии, поэтому для кириллицы используется другой шрифт, отличающийся размером и цветом. RHBZ#695405
Изменить шрифты можно с помощью gnome-tweak-tool.
- Заголовки окон не имеют кнопки свернуть/развернуть окно
Идеология разработчиков: окно разворачивается на полный экран по двойному клику по заголовку или перемещением окна вверх. Переместив окно в левому/правому краю можно развернуть окно по высоте и на половину ширины экрана.
Вернуть кнопки можно с помощью gconf-editor:
desktop/gnome/shell/windows
и во вкладке "button-layout" прописываем ":minimize,maximize,close" (без ковычек).
- Слишком большие заголовки окон
Отчасти это впечатление вызвано как раз отсутствием кнопок закрытия. Пустые заголовки, сливающиеся с фоном окна кажутся больше чем есть на самом деле. Тем не менее их необходимо либо перекрасить, либо уменьшить. А лучше и то, и другое.
Этот вопрос решается сменой темы gtk - см. ниже.
- Большие иконки в меню Applications GBZ#636655
Исправляется в теме gnome-shell.
- Отсутствуют кнопки Shutdown и Reboot
Идеология разработчиков: перезагрузка пользователю не нужна, а вместо выключения компьютера ему следует использовать Suspend. Вопрос спорный и в данный момент все ещё обсуждается.
Варианты:
можно использовать Alt-F2 reboot/shutdown,
можно в меню с кнопкой LogOut нажать Alt и получить доступ к скрытому пункту меню Power Off,
можно установить расширение, возвращающее все скрытые пункты меню на место.
- Темы оформления
Настройка пользовательских тем оформления становится возможной после применения расширения user-themes. Подробнее этот вопрос обсудим ниже. Несколько готовых тем можно найти тут: http://half-left.deviantart.com/gallery/26559426#/d3b52v3
- Отсутствует навигация с клавиатуры в Overview-режиме. GBZ#644306
Можно поставить расширение windowsNavigator, которое по нажатию клавиши Alt в Overview-режиме пририсовывает каждому окну порядковый номер и позволяет переходить по этому номеру с клавиатуры. Однако хочется полноценной навигации стрелками. Ждем апдейтов.
- Раскладка по умолчанию в Overview-режиме должна быть en. #GBZ647362
Поиск и устранение неисправностей
Что мне делать, если принтер не отображается в диалоговом окне печати?
Убедитесь, что сервер cups запущен, а затем проверить ошибки брандмауэра
Что мне делать, если звук не работает?
Звук может быть не работать по разным причинам, поэтому трудно сказать сразу, но здесь есть ряд вещей, которые стоит проверить:
- Запущен ли сервер PulseAudio?
- Есть ли в системном журнале предупреждения о звуке (sound-related warnings)?
- Разрешения на звуковые устройства установлены правильно (permissions)?
- Не выключена ли поностью громкость (mute)?