The Funtoo Linux project has transitioned to "Hobby Mode" and this wiki is now read-only.
Difference between revisions of "GNOME/Internals"
Line 27: | Line 27: | ||
;{{c|org.gnome.SettingsDaemon.Color}}: This component implements color profile management functionality as well as a dbus API for the 'night light' functionality. | ;{{c|org.gnome.SettingsDaemon.Color}}: This component implements color profile management functionality as well as a dbus API for the 'night light' functionality. | ||
;{{c|org.gnome.SettingsDaemon.Keyboard}}: Implements keyboard-related functionality including keyboard layouts, playing the "bell", key clicks, tracking keyboard idle time, and some interfaces related to on-screen keyboard and ibus. | ;{{c|org.gnome.SettingsDaemon.Keyboard}}: Implements keyboard-related functionality including keyboard layouts, playing the "bell", key clicks, tracking keyboard idle time, and some interfaces related to on-screen keyboard and ibus. | ||
;{{c|org.gnome.SettingsDaemon.PrintNotification}}: Connects to CUPS via dbus and relays any notifications to the end-user as appropriate. |
Revision as of 23:06, August 31, 2020
This page is intended for explaining the internal architecture of GNOME as well as sharing GNOME hacks.
GNOME Components
GNOME components are parts of GNOME (part of gnome-settings-daemon
that are spawned by gnome-session
when it starts.
They provide services inside GNOME.
Disabling
The file /usr/share/gnome-session/sessions/gnome.session
contains a line at the bottom of the file starting with RequiredComponents=
, which lists services that GNOME will expect to be able to start. If it can't start one of these components, it will display a fatal error (sick computer) at startup and GNOME will not start.
Some of these so-called 'required' components can be turned off. For example, org.gnome.SettingsDaemon.UsbProtection
can be
turned off. To do this, first remove the reference to this component from the RequiredComponents
line in the gnome.session
file. Then, move /etc/xdg/autostart/org.gnome.SettingsDaemon.UsbProtection
to a backup location, such
as /root
. The next time you log into your GNOME session, you will see that the gsd-usbguard
process is no longer
running, yet GNOME started just fine (since this component is no longer marked as 'required'.)
Components List (Incomplete)
org.gnome.SettingsDaemon.UsbProtection
- This component 'guards' USB ports and informs you when someone has attached a USB device when your computer is asleep. It also does some disabling of USB devices when the system is asleep. Daemon name is
gsd-usbguard
. Can be turned off (see Disabling). org.gnome.SettingsDaemon.Wacom
- Implements functionality for tablets (assumption.) Can be turned off (see Disabling).
org.gnome.SettingsDaemon.SmartCard
- Implements smart card support (assumption.) Can be turned off (see Disabling).
org.gnome.SettingsDaemon.Housekeeping
- Provides a service to clean out the desktop thumbnail cache once daily.
org.gnome.SettingsDaemon.ScreenSaverProxy
- Implements a dbus interface for
Inhibit
andUninhibit
(presumably to allow inhibiting of the screensaver.) org.gnome.SettingsDaemon.Sound
- Daemon is
gsd-sound
. Monitors for change of theme and caches sound samples in the theme. org.gnome.SettingsDaemon.Dummy
- This appears to be a component that can be used as a featureless replacement for another plugin. For example,
gdm
runsusr/libexec/gsd-dummy --dummy-name=org.gnome.SettingsDaemon.Smartcard
. org.gnome.SettingsDaemon.Color
- This component implements color profile management functionality as well as a dbus API for the 'night light' functionality.
org.gnome.SettingsDaemon.Keyboard
- Implements keyboard-related functionality including keyboard layouts, playing the "bell", key clicks, tracking keyboard idle time, and some interfaces related to on-screen keyboard and ibus.
org.gnome.SettingsDaemon.PrintNotification
- Connects to CUPS via dbus and relays any notifications to the end-user as appropriate.