mbox series

[bug#49969,0/7] gnu: desktop: Add seatd-service-type and greetd-service-type

Message ID 20210809190257.7280-1-mail@muradm.net
Headers show
Series gnu: desktop: Add seatd-service-type and greetd-service-type | expand

Message

muradm Aug. 9, 2021, 7:02 p.m. UTC
This patch series introduces two new services;

 - seatd-service-type: simple seat management daemon
 - greetd-service-type: simple login daemon

Both services are very minimalistic in nature. Simple seatd daemon could
be said as replacement for elogind-service-type. greetd daemon is simple
replacement for mingetty/agetty.

In addition to the base services, special build of pam-mount module is
included as seatd-pam-mount. It is used to provide auto-(mounting/unmounting)
of XDG_RUNTIME_DIR. Special build is required to avoid interference with
default pam-mount if used in the system.

greetd provides agreety terminal greeter out of the box. Current
greetd-service-type includes configuration for greetd-agreety-session
variations, i.e. only terminal are supported at the moment.

Next step would be adding gtkgreet and/or wlgreet alternatives for
graphical greeter.

muradm (7):
  gnu: rust-enquote: Add rust-enquote 1.0.3
  gnu: rust-pam-sys: Add rust-pam-sys 0.5.6
  gnu: greetd: Add greetd 0.7.0
  gnu: seatd-pam-mount: Add seatd-pam-mount
  gnu: desktop: Add seatd-service-type
  gnu: desktop: Add greetd-service-type
  doc: Add desktop seatd-service-type and greetd-service-type.

 doc/guix.texi                | 151 +++++++++++++++++++++
 gnu/packages/admin.scm       |  20 +++
 gnu/packages/crates-io.scm   |  48 +++++++
 gnu/packages/freedesktop.scm |  71 ++++++++++
 gnu/services/desktop.scm     | 256 ++++++++++++++++++++++++++++++++++-
 5 files changed, 545 insertions(+), 1 deletion(-)

Comments

muradm Aug. 10, 2021, 7:36 p.m. UTC | #1
This patch series introduces two new services;

 - seatd-service-type: simple seat management daemon
 - greetd-service-type: simple login daemon

Both services are very minimalistic in nature. Simple seatd daemon
could be said as replacement for elogind-service-type. greetd daemon
is simple replacement for mingetty/agetty.

In addition to the base services, special build of pam-mount module is
included as greetd-pam-mount. It is used to provide
auto-(mounting/unmounting) of XDG_RUNTIME_DIR. Special build is
required to avoid interference with default pam-mount, if used in
the system.

greetd provides agreety terminal greeter out of the box. Current
greetd-service-type includes configuration for greetd-agreety-session
variations, i.e. only terminal are supported at the moment.

Next step would be adding gtkgreet and/or wlgreet alternatives for
graphical greeter.

muradm (7):
  gnu: crates-io: Add rust-enquote 1.0.3
  gnu: crates-io: Add rust-pam-sys 0.5.6
  gnu: freedesktop: Add greetd 0.7.0
  gnu: admin: Add greetd-pam-mount
  gnu: desktop: Add seatd-service-type
  gnu: desktop: Add greetd-service-type
  doc: Add desktop seatd-service-type and greetd-service-type

 doc/guix.texi                | 183 ++++++++++++++++++++++++
 gnu/packages/admin.scm       |  20 +++
 gnu/packages/crates-io.scm   |  49 +++++++
 gnu/packages/freedesktop.scm |  80 +++++++++++
 gnu/services/desktop.scm     | 269 ++++++++++++++++++++++++++++++++++-
 5 files changed, 600 insertions(+), 1 deletion(-)
norgli Nov. 14, 2021, 5:43 p.m. UTC | #2
Hello,
I would be looking to use this, seems unfortunate the merge has halted at a very advanced point -- any chance it gets picked up again? :)
Would be trying to package the QtGreet application that i use on my other system/partition, if it was.
Thanks,
Florian
(@florhizom:matrix.org on irc)
Lars-Dominik Braun June 7, 2022, 9:44 a.m. UTC | #3
Hi,

overall this works quite well for me, thanks!

A few comments:

> +                  #:log-file
> +                  (string-append "/tmp/greetd." #$greetd-vt ".log")))
Why log to /tmp and not /var/log here?

> +                   #:log-file "/tmp/seatd.log"))
Same.

> * gnu/packages/admin.scm (libseat): New variable
> * gnu/packages/admin.scm (seatd): New variable
> * gnu/packages/freedesktop.scm (seatd): Remove variable
(gnu packages wm) references seatd, but does not use (gnu packages admin),
thus `guix pull` fails.

Cheers,
Lars