<feed xmlns='http://www.w3.org/2005/Atom'>
<title>guix/gnu/services/desktop.scm, branch master</title>
<subtitle>Transactional package manager, declarative GNU/Linux distribution, reproducible deployment tool, and more! https://guix.gnu.org</subtitle>
<link rel='alternate' type='text/html' href='https://git.vineetk.net/guix/'/>
<entry>
<title>services: elogind: Remove deprecated fields.</title>
<updated>2026-08-26T02:18:07+00:00</updated>
<author>
<name>Herman Rimm</name>
<email>herman@rimm.ee</email>
</author>
<published>2026-07-16T13:06:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vineetk.net/guix/commit/?id=933ef6f5f4b192ae86a22db28a1d71ad5afddf35'/>
<id>933ef6f5f4b192ae86a22db28a1d71ad5afddf35</id>
<content type='text'>
* gnu/services/desktop.scm (elogind-deprecated-empty-serializer): Remove
variable.
(elogind-configuration): Remove deprecated fields.
* doc/guix.texi (Desktop Services): Remove descriptions for deprecated
configuration fields.

Change-Id: Ic4847d9da352671eb0dd7a7ffe507b8b5ff149e4
Signed-off-by: Maxim Cournoyer &lt;maxim@guixotic.coop&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* gnu/services/desktop.scm (elogind-deprecated-empty-serializer): Remove
variable.
(elogind-configuration): Remove deprecated fields.
* doc/guix.texi (Desktop Services): Remove descriptions for deprecated
configuration fields.

Change-Id: Ic4847d9da352671eb0dd7a7ffe507b8b5ff149e4
Signed-off-by: Maxim Cournoyer &lt;maxim@guixotic.coop&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>gnu: elogind: Update to 257.14.</title>
<updated>2026-08-24T23:15:28+00:00</updated>
<author>
<name>Maxim Cournoyer</name>
<email>maxim@guixotic.coop</email>
</author>
<published>2026-04-06T13:48:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vineetk.net/guix/commit/?id=11bbd9b45b77d837974a003e867ced0e92cae726'/>
<id>11bbd9b45b77d837974a003e867ced0e92cae726</id>
<content type='text'>
* gnu/packages/freedesktop.scm (elogind): Update to 257.14.
* gnu/services/desktop.scm (elogind-dbus-service): Delete variable.
(elogind-service-type) [extensions] {dbus-root-service-type}: De-register it.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* gnu/packages/freedesktop.scm (elogind): Update to 257.14.
* gnu/services/desktop.scm (elogind-dbus-service): Delete variable.
(elogind-service-type) [extensions] {dbus-root-service-type}: De-register it.
</pre>
</div>
</content>
</entry>
<entry>
<title>gnu: services: Add gpu-screen-recorder-service-type.</title>
<updated>2026-08-22T14:49:17+00:00</updated>
<author>
<name>coopi</name>
<email>coopi@noreply.codeberg.org</email>
</author>
<published>2026-08-07T02:13:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vineetk.net/guix/commit/?id=2407608d5a842cef239b02c2d5edbc4470fbdfe1'/>
<id>2407608d5a842cef239b02c2d5edbc4470fbdfe1</id>
<content type='text'>
* gnu/services/desktop.scm: Import (gnu packages video).
(gpu-screen-recorder-configuration): Export.
(gpu-screen-recorder-configuration?): Export.
(gpu-screen-recorder-service-type): Export.
(&lt;gpu-screen-recorder-configuration&gt;): New record type.
(gpu-screen-recorder-privileged-programs): New procedure.
(gpu-screen-recorder-service-type): New variable.

Signed-off-by: Liliana Marie Prikler &lt;liliana.prikler@gmail.com&gt;
Merges: guix/guix#10400
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* gnu/services/desktop.scm: Import (gnu packages video).
(gpu-screen-recorder-configuration): Export.
(gpu-screen-recorder-configuration?): Export.
(gpu-screen-recorder-service-type): Export.
(&lt;gpu-screen-recorder-configuration&gt;): New record type.
(gpu-screen-recorder-privileged-programs): New procedure.
(gpu-screen-recorder-service-type): New variable.

Signed-off-by: Liliana Marie Prikler &lt;liliana.prikler@gmail.com&gt;
Merges: guix/guix#10400
</pre>
</div>
</content>
</entry>
<entry>
<title>services: elogind: Fix runtime-directory-size field.</title>
<updated>2026-07-28T16:32:32+00:00</updated>
<author>
<name>Herman Rimm</name>
<email>herman@rimm.ee</email>
</author>
<published>2026-07-16T15:17:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vineetk.net/guix/commit/?id=90a0b71c0c3a9cbbeb850dac991b0e48c38337f0'/>
<id>90a0b71c0c3a9cbbeb850dac991b0e48c38337f0</id>
<content type='text'>
Both runtime-directory-size and runtime-directory-size-percent field currently
cause an error if set.  A comment above the latter already calls for its
deprecation.  This patch combines both into a single field and fixes
their serialization.

* gnu/services/desktop.scm (percent?, percent, elogind-serialize-percent):
Replace with…
(non-negative-integer-and-suffix?, non-negative-integer-and-suffix)
(elogind-serialize-non-negative-integer-and-suffix): … these.
(elogind-configuration)[runtime-directory-size-percent]: Remove field,
integrating logic into …
[runtime-directory-size]: … here.  Serialize it.
* doc/guix.texi (Desktop Services): Adjust accordingly.

Signed-off-by: Liliana Marie Prikler &lt;liliana.prikler@gmail.com&gt;
Merges: guix/guix#9987
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Both runtime-directory-size and runtime-directory-size-percent field currently
cause an error if set.  A comment above the latter already calls for its
deprecation.  This patch combines both into a single field and fixes
their serialization.

* gnu/services/desktop.scm (percent?, percent, elogind-serialize-percent):
Replace with…
(non-negative-integer-and-suffix?, non-negative-integer-and-suffix)
(elogind-serialize-non-negative-integer-and-suffix): … these.
(elogind-configuration)[runtime-directory-size-percent]: Remove field,
integrating logic into …
[runtime-directory-size]: … here.  Serialize it.
* doc/guix.texi (Desktop Services): Adjust accordingly.

Signed-off-by: Liliana Marie Prikler &lt;liliana.prikler@gmail.com&gt;
Merges: guix/guix#9987
</pre>
</div>
</content>
</entry>
<entry>
<title>services: Add kanata-service-type.</title>
<updated>2026-07-02T17:17:19+00:00</updated>
<author>
<name>coopi</name>
<email>coopi@noreply.codeberg.org</email>
</author>
<published>2026-06-05T13:02:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vineetk.net/guix/commit/?id=980d0d6f76ce6c62ce127245e5396044672cf172'/>
<id>980d0d6f76ce6c62ce127245e5396044672cf172</id>
<content type='text'>
* gnu/services/desktop.scm: Import (gnu packages rust-apps).
(kanata-configuration): New record type.
(kanata-shepherd-services): New procedure.
(%kanata-group, %kanata-user, %kanata-accounts, %kanata-udev-rule)
(kanata-service-type): New variables.
* doc/guix.texi (Desktop Services): Document `kanata-service-type'.

Change-Id: I5e8041c6dba17ae0fad33b8ca74099c053c4a3ea
Signed-off-by: Ludovic Courtès &lt;ludo@gnu.org&gt;
Merges: #9093
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* gnu/services/desktop.scm: Import (gnu packages rust-apps).
(kanata-configuration): New record type.
(kanata-shepherd-services): New procedure.
(%kanata-group, %kanata-user, %kanata-accounts, %kanata-udev-rule)
(kanata-service-type): New variables.
* doc/guix.texi (Desktop Services): Document `kanata-service-type'.

Change-Id: I5e8041c6dba17ae0fad33b8ca74099c053c4a3ea
Signed-off-by: Ludovic Courtès &lt;ludo@gnu.org&gt;
Merges: #9093
</pre>
</div>
</content>
</entry>
<entry>
<title>gnu: services: desktop: Secure kmonad-service-type.</title>
<updated>2026-06-18T10:31:24+00:00</updated>
<author>
<name>coopi</name>
<email>coopi@noreply.codeberg.org</email>
</author>
<published>2026-06-09T08:11:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vineetk.net/guix/commit/?id=bc47330122c4cbff1058d60fe3894646f641fef5'/>
<id>bc47330122c4cbff1058d60fe3894646f641fef5</id>
<content type='text'>
This runs the KMonad daemon as a dedicated, unprivileged user, isolates
synthetic event creation to a uinput group, and automatically loads the uinput
kernel module via udev rules.

* gnu/services/desktop.scm (%uinput-group, %kmonad-group, %kmonad-udev-rule)
(%kmonad-user, %kmonad-accounts): New variables.
(kmonad-shepherd-services): Pass #:user, #:group, and #:supplementary-groups
to 'make-forkexec-constructor'.
(kmonad-service-type): Extend 'account-service-type' and 'udev-service-type'.

Change-Id: Icea21049d0427e25052c952bb08a03379e3a3e1f
Signed-off-by: Liliana Marie Prikler &lt;liliana.prikler@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This runs the KMonad daemon as a dedicated, unprivileged user, isolates
synthetic event creation to a uinput group, and automatically loads the uinput
kernel module via udev rules.

* gnu/services/desktop.scm (%uinput-group, %kmonad-group, %kmonad-udev-rule)
(%kmonad-user, %kmonad-accounts): New variables.
(kmonad-shepherd-services): Pass #:user, #:group, and #:supplementary-groups
to 'make-forkexec-constructor'.
(kmonad-service-type): Extend 'account-service-type' and 'udev-service-type'.

Change-Id: Icea21049d0427e25052c952bb08a03379e3a3e1f
Signed-off-by: Liliana Marie Prikler &lt;liliana.prikler@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>services: kmonad: Add missing accessors and adjust documentation.</title>
<updated>2026-06-18T10:31:24+00:00</updated>
<author>
<name>Sergio Pastor Pérez</name>
<email>sergio.pastor-perez@inria.fr</email>
</author>
<published>2026-06-04T08:13:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vineetk.net/guix/commit/?id=a3d5dc72ecd8dccfca2e9b333e2ed0242f41fd6e'/>
<id>a3d5dc72ecd8dccfca2e9b333e2ed0242f41fd6e</id>
<content type='text'>
* doc/guix.texi (Desktop Services): Use generated documentation for
`kmonad-configuration'.
* gnu/services/desktop.scm (kmonad-configuration): Export accessors.

Change-Id: I3b5dadd86b1234004222105013dcf0e635f585c4
Signed-off-by: Liliana Marie Prikler &lt;liliana.prikler@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* doc/guix.texi (Desktop Services): Use generated documentation for
`kmonad-configuration'.
* gnu/services/desktop.scm (kmonad-configuration): Export accessors.

Change-Id: I3b5dadd86b1234004222105013dcf0e635f585c4
Signed-off-by: Liliana Marie Prikler &lt;liliana.prikler@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>gnu: services: desktop: Fix kmonad-shepherd-services documentation.</title>
<updated>2026-06-18T10:31:24+00:00</updated>
<author>
<name>Sergio Pastor Pérez</name>
<email>sergio.pastorperez@gmail.com</email>
</author>
<published>2026-05-29T16:30:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vineetk.net/guix/commit/?id=80a47a522ec0ef770b815f2cea5710b97fe00393'/>
<id>80a47a522ec0ef770b815f2cea5710b97fe00393</id>
<content type='text'>
* gnu/services/desktop.scm (kmonad-shepherd-services): Replace
'computed-file-name' with a numeric index in the documentation string to
support all file-like objects.

Change-Id: Id9ee0939e3c6e156576f78452c0465c54744cb32
Signed-off-by: Liliana Marie Prikler &lt;liliana.prikler@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* gnu/services/desktop.scm (kmonad-shepherd-services): Replace
'computed-file-name' with a numeric index in the documentation string to
support all file-like objects.

Change-Id: Id9ee0939e3c6e156576f78452c0465c54744cb32
Signed-off-by: Liliana Marie Prikler &lt;liliana.prikler@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>services: elogind: Move settings to correct file, correct names.</title>
<updated>2026-06-15T00:13:22+00:00</updated>
<author>
<name>Tomas Volf</name>
<email>~@wolfsden.cz</email>
</author>
<published>2026-06-06T20:37:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vineetk.net/guix/commit/?id=07e3d705d5892edc4fe512aa7673f3e3b6626346'/>
<id>07e3d705d5892edc4fe512aa7673f3e3b6626346</id>
<content type='text'>
For quite some time now, elogind was logging the following warnings one every
start.

    [..]/logind.conf:2: Unknown key 'AllowPowerOffInterrupts' in section [Login], ignoring.
    [..]/logind.conf:3: Unknown key 'AllowSuspendInterrupts' in section [Login], ignoring.
    [..]/logind.conf:4: Unknown key 'BroadcastPowerOffInterrupts' in section [Login], ignoring.
    [..]/logind.conf:5: Unknown key 'BroadcastSuspendInterrupts' in section [Login], ignoring.
    [..]/logind.conf:21: Unknown key 'RemoveIpc' in section [Login], ignoring.

First 4 should have been in sleep.conf, and the last one had bad casing.  This
commit addresses both those problems.

* gnu/services/desktop.scm (elogind-name-&gt;string): New procedure.
(elogind-serialize-boolean, elogind-base-serializer, elogind-list-serializer):
Use it.
(%elogind-configuration-sleep-fields): Add allow-power-off-interrupts?,
allow-suspend-interrupts?, broadcast-power-off-interrupts? and
broadcast-suspend-interrupts?.

Signed-off-by: Maxim Cournoyer &lt;maxim@guixotic.coop&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
For quite some time now, elogind was logging the following warnings one every
start.

    [..]/logind.conf:2: Unknown key 'AllowPowerOffInterrupts' in section [Login], ignoring.
    [..]/logind.conf:3: Unknown key 'AllowSuspendInterrupts' in section [Login], ignoring.
    [..]/logind.conf:4: Unknown key 'BroadcastPowerOffInterrupts' in section [Login], ignoring.
    [..]/logind.conf:5: Unknown key 'BroadcastSuspendInterrupts' in section [Login], ignoring.
    [..]/logind.conf:21: Unknown key 'RemoveIpc' in section [Login], ignoring.

First 4 should have been in sleep.conf, and the last one had bad casing.  This
commit addresses both those problems.

* gnu/services/desktop.scm (elogind-name-&gt;string): New procedure.
(elogind-serialize-boolean, elogind-base-serializer, elogind-list-serializer):
Use it.
(%elogind-configuration-sleep-fields): Add allow-power-off-interrupts?,
allow-suspend-interrupts?, broadcast-power-off-interrupts? and
broadcast-suspend-interrupts?.

Signed-off-by: Maxim Cournoyer &lt;maxim@guixotic.coop&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>gnu: Remove deprecated (gnu packages avahi) references.</title>
<updated>2026-06-04T04:07:32+00:00</updated>
<author>
<name>Anderson Torres</name>
<email>anderson.torres.8519@gmail.com</email>
</author>
<published>2026-05-05T21:31:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vineetk.net/guix/commit/?id=c02088e4875558c053b32a991134fe4e97101d5a'/>
<id>c02088e4875558c053b32a991134fe4e97101d5a</id>
<content type='text'>
* gnu/packages/games.scm: Remove the deprecated
  (gnu packages avahi) module reference.
* gnu/packages/gnome.scm: Likewise.
* gnu/packages/linux.scm: Likewise.
* gnu/packages/audio.scm: Change (gnu packages avahi)
  to (gnu packages dns).
* gnu/packages/cups.scm: Likewise.
* gnu/packages/databases.scm: Likewise.
* gnu/packages/distributed.scm: Likewise.
* gnu/packages/freedesktop.scm: Likewise.
* gnu/packages/guile-xyz.scm: Likewise.
* gnu/packages/hardware.scm: Likewise.
* gnu/packages/kde-frameworks.scm: Likewise.
* gnu/packages/kodi.scm: Likewise.
* gnu/packages/linphone.scm: Likewise.
* gnu/packages/messaging.scm: Likewise.
* gnu/packages/mpd.scm: Likewise.
* gnu/packages/package-management.scm: Likewise.
* gnu/packages/printers.scm: Likewise.
* gnu/packages/pulseaudio.scm: Likewise.
* gnu/packages/radio.scm: Likewise.
* gnu/packages/robotics.scm: Likewise.
* gnu/packages/samba.scm: Likewise.
* gnu/packages/scanner.scm: Likewise.
* gnu/packages/scheme.scm: Likewise.
* gnu/packages/synergy.scm: Likewise.
* gnu/packages/telephony.scm: Likewise.
* gnu/packages/video.scm: Likewise.
* gnu/packages/vnc.scm: Likewise.
* gnu/services/avahi.scm: Likewise.
* gnu/services/desktop.scm: Likewise.

Merges: https://codeberg.org/guix/guix/pulls/8572
Reviewed-by: Maxim Cournoyer &lt;maxim@guixotic.coop&gt;
Reviewed-by: Ludovic Courtès &lt;ludo@gnu.org&gt;
Signed-off-by: Nguyễn Gia Phong &lt;cnx@loang.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* gnu/packages/games.scm: Remove the deprecated
  (gnu packages avahi) module reference.
* gnu/packages/gnome.scm: Likewise.
* gnu/packages/linux.scm: Likewise.
* gnu/packages/audio.scm: Change (gnu packages avahi)
  to (gnu packages dns).
* gnu/packages/cups.scm: Likewise.
* gnu/packages/databases.scm: Likewise.
* gnu/packages/distributed.scm: Likewise.
* gnu/packages/freedesktop.scm: Likewise.
* gnu/packages/guile-xyz.scm: Likewise.
* gnu/packages/hardware.scm: Likewise.
* gnu/packages/kde-frameworks.scm: Likewise.
* gnu/packages/kodi.scm: Likewise.
* gnu/packages/linphone.scm: Likewise.
* gnu/packages/messaging.scm: Likewise.
* gnu/packages/mpd.scm: Likewise.
* gnu/packages/package-management.scm: Likewise.
* gnu/packages/printers.scm: Likewise.
* gnu/packages/pulseaudio.scm: Likewise.
* gnu/packages/radio.scm: Likewise.
* gnu/packages/robotics.scm: Likewise.
* gnu/packages/samba.scm: Likewise.
* gnu/packages/scanner.scm: Likewise.
* gnu/packages/scheme.scm: Likewise.
* gnu/packages/synergy.scm: Likewise.
* gnu/packages/telephony.scm: Likewise.
* gnu/packages/video.scm: Likewise.
* gnu/packages/vnc.scm: Likewise.
* gnu/services/avahi.scm: Likewise.
* gnu/services/desktop.scm: Likewise.

Merges: https://codeberg.org/guix/guix/pulls/8572
Reviewed-by: Maxim Cournoyer &lt;maxim@guixotic.coop&gt;
Reviewed-by: Ludovic Courtès &lt;ludo@gnu.org&gt;
Signed-off-by: Nguyễn Gia Phong &lt;cnx@loang.net&gt;
</pre>
</div>
</content>
</entry>
</feed>
