Можно ли добавить пользовательские элементы в окно «Настройки системы»?

Например, как добавить в это окно панель запуска «Параметры запуска приложений»?

21
задан 10 February 2014 в 05:42

4 ответа

Добавить пользовательские записи приложений в системные настройки

Custom Entries in System Settings Чтобы добавить пользовательское приложение в системные настройки ] ( Gnome Control Center ), найдите его файл записи рабочего стола - / usr / share / applications / {appname} .desktop и отредактируйте его, чтобы убедиться, что присутствуют следующие записи:

Categories=Settings;X-GNOME-Settings-Panel;xxxxx;
X-GNOME-Settings-Panel={appname}

Замените {appname} названием приложения, которое вы добавляете в системные настройки. xxxxx определяет раздел , в котором отображается ваше приложение. Замените xxxxx одним из следующих возможных вариантов:
X-GNOME-PersonalSettings - Персональный раздел
HardwareSettings - Раздел оборудования (обратите внимание, что префикс X-GNOME не используется)
X-GNOME-SystemSettings - Системный раздел

Edit desktop entries to show in System Settings

После внесения изменений запустите эту команду:

sudo update-desktop-database

Это было опробовано и протестировано на Ubuntu 12.04 LTS с gnome-control-center версия 3.4.2-0ubuntu0.12

На заметку :

  1. Системные настройки не распознают файлы рабочего стола в ~ / .local / share / applications и, как следствие, невозможно добавить приложения в системные настройки только для одного пользователя.
  2. Как отметил Маниш Синха в этот ответ , Ubuntu использует gnome-control-center со специальными патчами Ubuntu, которые позволяют добавление пользовательских записей. В результате этот метод специфичен для Ubuntu и не будет работать с vanilla gnome-control-center , используемым другими дистрибутивами.
17
ответ дан 10 February 2014 в 05:42

Обновление ответа от @lancer для Ubuntu 14.04 lts:

Это может быть ответвление gnome-system-settings от команды ubuntu, как я мог прочитать в каком-то блоге опубликовать где-нибудь (не могу вспомнить, где ..: /)

в любом случае, следующие две строки показывают различия, и более подробный пример следует

X-Unity-Settings-Panel={appname}
Categories=GNOME;GTK;Settings;X-Unity-Settings-Panel;xxxx;

например:

[Desktop Entry]
Encoding=UTF-8
Type=Application
Name=TefApp
Name[C]=TefApp
Exec=/home/stephaneag/Documents/ubuntu_CustomSystemSettingsEntryApp/dummyScript.sh
Comment[C]=dumb dummy app
StartupNotify=true
Icon=utilities-terminal
Terminal=false
NoDisplay=false
# the following is necessary for the .desktop to be accepted in System Settings
# for our stuff to appear in "System" section:
#Categories=GNOME;GTK;Settings;X-Unity-Settings-Panel;X-GNOME-SystemSettings;
# for our stuff to appear in "Hardware" section:
#Categories=GNOME;GTK;Settings;X-Unity-Settings-Panel;HardwareSettings;
# for our stuff to appear in the "Personal" section:
Categories=GNOME;GTK;Settings;X-Unity-Settings-Panel;X-GNOME-PersonalSettings;
OnlyShowIn=Unity;
3
ответ дан 10 February 2014 в 05:42

Update for 14.04 with specific details on replace default Users program with userss-admin so groups can be changed.

  1. install gnome system tools with userss-admin

     sudo apt-get install gnome-system-tools
    
  2. Редактирование рабочего стола пользователей, чтобы он отображался в Unity Control Center - см. запись ниже
  3. Перемещение старого рабочего стола пользователей, чтобы он не отображался в Unity Control Center

    cd /usr/share/applications/.
    mv unity-user-аккаунты-панель.desktop unity-user-аккаунты-панель.desktop.ORIG
    
  4. Обновить базу данных

    sudo updateate-десктоп-база данных.
    

Это было протестировано на Ubuntu 14.04 LTS. Не знаю, как обновление системы повлияет на обновленные файлы. Придется проверить при следующем обновлении.

/usr/share/applications/users.desktop:

[Desktop Entry]
Version=1.0
Name=Users and Groups
Comment=Add or remove users and groups
Exec=users-admin
Icon=config-users
Terminal=false
Type=Application
StartupNotify=true
Categories=GNOME;GTK;Settings;X-Unity-Settings-Panel;X-GNOME-SystemSettings;
OnlyShowIn=Unity;
X-Unity-Settings-Panel=users
1
ответ дан 10 February 2014 в 05:42

11.10

Прямо сейчас добавление пользовательских элементов в системные настройки не поддерживается в исходном GNOME

Ubuntu исправляет системные настройки gnome-control-center , чтобы он мог включать в него свои собственные записи, специфичные для ubuntu.

Короче говоря, вам нужно установить libgnome-control-center-dev и создать оболочку вокруг вашего приложения, которое построено против пакета gnome-control-center с использованием libgnome-control-center -dev для pkg-config

В настоящее время нет графического интерфейса для его добавления. Вам нужно сделать это программно с помощью C, и это будет работать только в Ubuntu.

Причина запрета сторонних записей (называемых панелями) подробно описана Дэвидом Зойтеном

> Thu, May 12, 2011 at 4:39 PM, Sergey Udaltsov wrote:
> My whole point was that in the ideal world GNOME could be extensible
> enough so that no _forking_ would be necessary. Extension modules, not
> patches. That would be not a side effect of the license but the
> fundamental feature of the architecture. Do you see the difference?

Yes. I also think we tried that with GNOME 2 and failed. I mean, look
at GNOME 2's control center - on all distros, it's a royal mess of
random crap from either GNOME, the distro or 3rd party app written by
a kid in a basement. With GNOME 3.2, we will have a simpler control
center (since the extension mechanism is going away) but it will be
_awesome_.
4
ответ дан 10 February 2014 в 05:42

Другие вопросы по тегам:

Похожие вопросы: