• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

.circleci/H13-Jan-2021-6553

.github/H13-Jan-2021-2210

cinnamon-settings-daemon/H13-Jan-2021-660462

data/H13-Jan-2021-951894

debian/H13-Jan-2021-1,154849

files/usr/local/share/icons/hicolor/H13-Jan-2021-

install-scripts/H03-May-2022-6741

plugins/H03-May-2022-50,77537,534

po/H13-Jan-2021-285244

.gitignoreH A D13-Jan-2021258 1413

AUTHORSH A D13-Jan-202172 32

COPYINGH A D13-Jan-202117.6 KiB341281

COPYING.LIBH A D13-Jan-202125.8 KiB

ChangeLogH A D13-Jan-2021139.1 KiB3,9142,908

NEWSH A D13-Jan-20210

READMEH A D13-Jan-20210

README.rstH A D13-Jan-20214.9 KiB175103

cinnamon-settings-daemon.potH A D13-Jan-202133.6 KiB1,4641,158

makepotH A D13-Jan-2021183 31

meson.buildH A D03-May-20225.3 KiB161136

README.rst

1cinnamon-settings-daemon is a collection of plugins.
2
3These plugins are started by cinnamon-session when you log in.
4
5The plugins run in the background, each with their own process.
6
7Plugins:
8========
9
10Here's a description of each plugin.
11
12a11y-keyboard
13-------------
14
15a11y-settings
16-------------
17
18automount
19---------
20
21background
22----------
23
24clipboard
25---------
26
27Xorg features two ways of copying and pasting content. The first one is ``X-clipboard``, which is commonly used in edit menus and using ``Ctrl+C`` and ``Ctrl+V``. The second one is ``X-selection`` which is used by selecting content with the mouse and pasting it with a middle-click.
28
29When you copy content from a window, that content is available either in ``X-clipboard`` or ``X-selection`` until the application which owns that window is terminated.
30
31This plugin keeps the content of ``X-clipboard`` in memory, so that even if the owner application exits the content continues to be available.
32
33color
34-----
35
36common
37------
38
39cursor
40------
41
42datetime
43--------
44
45dummy
46-----
47
48This is a dummy plugin. It doesn't do anything.
49
50housekeeping
51------------
52
53**thumbnail cache**
54
55The thumbnail cache is cleaned up according to the settings stored in ``org.cinnamon.desktop.thumbnail-cache``.
56
57This is done 2 minutes after login and then once a day.
58
59**low disk space**
60
61Every minute, the plugin checks the mounted volume to see if they have low disk space, according to the settings stored in ``org.cinnamon.settings-daemon.plugins.housekeeping``.
62
63The plugin shows a notification when a volume is full.
64
65keyboard
66--------
67
68This plugin handles the keyboard.
69
70**keyboard settings**
71
72It reads and listens to the ``org.cinnamon.settings-daemon.peripherals.keyboard`` settings and applies the configuration.
73
74**numlock state**
75
76It also listens to the state of the numlock key and saves it in the settings to ensure the state is remembered and preserved for the next session.
77
78**keyboard layout**
79
80The layout selection is done in cinnamon-control-center's region plugin (which is presented to the user in cinnamon-settings' keyboard module). That configuration is set directly via gkbd (libgnomekbd) and xkl (libxklavier). This plugin reads and listens to that configuration and assigns to the keyboard.
81
82**hotplug command**
83
84Although it isn't configured by default or used by cinnamon-settings, when a keyboard is plugged in, or removed, the plugin executes the command specified in ``org.cinnamon.settings-daemon.peripherals.input-devices hotplug-command`` with a series of argument to specify the event type, the device etc..
85
86An example script which can be used for such a command is available in ``plugins/common/input-device-example.sh``.
87
88media-keys
89----------
90
91mouse
92-----
93
94This plugin handles mice and touchpads.
95
96It reads and listens to the ``org.cinnamon.settings-daemon.peripherals.mouse`` and ``org.cinnamon.settings-daemon.peripherals.touchpad`` settings and applies the configuration in X11.
97
98This plugin supports synaptics and libinput devices.
99
100orientation
101-----------
102
103power
104-----
105
106print-notifications
107-------------------
108
109This plugin shows printer notifications.
110
111On DBUS, it listens to events on ``org.cups.cupsd.Notifier``.
112
113Libnotify is used to show the notifications.
114
115screensaver-proxy
116-----------------
117
118smartcard
119---------
120
121sound
122-----
123
124This plugin is use to play sound files or theme sounds via PulseAudio.
125
126It's available via dbus at ``org.cinnamon.SettingsDaemon.Sound``.
127
128Its configuration is ``org.cinnamon.desktop.sound``.
129
130wacom
131-----
132
133This plugin handles wacom tablets.
134
135It reads and listens to the ``org.cinnamon.settings-daemon.peripherals.wacom`` and applies the configuration in X11.
136
137xrandr
138------
139
140xsettings
141---------
142
143This plugin sets the settings for GTK and Xft.
144
145TESTING
146=======
147
148To test a plugin:
149
1501. Kill the running CSD plugin
1512. Build the project
1523. Run the built plugin in verbose mode
153
154For instance:
155
156* ``killall csd-sound`` (you might have to kill it twice, if CSM tries to restart it)
157* ``dpkg-buildpackage``
158* ``plugins/sound/csd-sound --verbose``
159
160
161TODO:
162=====
163
164- Remove custom keybinding code (we handle that in Cinnamon now) - do we want to handle media keys in cinnamon also?  Would get around the 'no meda keys while a menu is open' issue.
165- Switch to Gnome's keyboard layout (gsettings) handler - basically reverting Ubuntu's patch for this.  This will allow us to implement ibus popups directly in Cinnamon
166- Look into backgrounds - we should be able to eliminate the background manager in the cinnamon gnome 3.8 compat rollup, and continue to handle backgrounds as we currently do
167- Investigate:  How to keep gnome-settings-daemon from autostarting.  It checks for environment=GNOME... which means Cinnamon also - is it time to have our own freedesktop.org name?
168
169--  Update on this:  Setting session name to Cinnamon works - then add to main.c in cinnamon, to set XDG_CURRENT_DESKTOP=GNOME makes sure apps keep showing up
170
171- Multiple backgrounds on multiple monitors
172
173- /etc/acpi/powerbtn.sh   - add cinnamon-settings-daemon to script - how?  postinst?
174
175