From: muradm <mail@muradm.net>
To: 49969@debbugs.gnu.org
Subject: [bug#49969] [PATCH v5 10/10] doc: Add desktop seatd-service-type and greetd-service-type
Date: Mon, 23 Aug 2021 00:50:48 +0300 [thread overview]
Message-ID: <20210822215048.20480-11-mail@muradm.net> (raw)
In-Reply-To: <20210822215048.20480-1-mail@muradm.net>
* doc/guix.texi (Desktop Services): Provide documentation for
seatd-service-type and greetd-service-type including configuration
and sample usage.
---
doc/guix.texi | 187 ++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 187 insertions(+)
diff --git a/doc/guix.texi b/doc/guix.texi
index 2b8448c856..1590c29f9b 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -96,6 +96,7 @@ Copyright @copyright{} 2021 Domagoj Stolfa@*
Copyright @copyright{} 2021 Hui Lu@*
Copyright @copyright{} 2021 pukkamustard@*
Copyright @copyright{} 2021 Alice Brenon@*
+Copyright @copyright{} 2021 muradm@*
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
@@ -19767,6 +19768,192 @@ and ``passwd'' is with the value @code{passwd}.
@end table
@end deftp
+@defvr {Scheme Variable} seatd-service-type
+A minimal seat management daemon, and a universal seat management library.
+
+Seat management takes care of mediating access to shared devices (graphics,
+input), without requiring the applications needing access to be root.
+
+In general should be used as replacement to @code{elogind-service-type}.
+
+@lisp
+(append
+ (list
+ ;; make sure seatd is running
+ (service seatd-service-type)
+
+ (service greetd-service-type
+ (greetd-configuration
+ (terminals
+ (list
+ ;; lets have terminals 1, 2 and 3 run default XDG terminal session
+ ;; also ask terminal 1 to become active
+ (greetd-terminal-configuration (terminal-vt "1") (terminal-switch #t))
+ (greetd-terminal-configuration (terminal-vt "2"))
+ (greetd-terminal-configuration (terminal-vt "3"))
+ ;; and terminals 4, 5 and 6 plain bash terminal session
+ ;; although not so plain, just to illustrate flexibility
+ (greetd-terminal-configuration
+ (terminal-vt "4")
+ (default-session-command greetd-agreety-tty-session))
+ (greetd-terminal-configuration
+ (terminal-vt "5")
+ (default-session-command greetd-agreety-tty-session))
+ (greetd-terminal-configuration
+ (terminal-vt "6")
+ (default-session-command greetd-agreety-tty-session))))))
+
+ ;; normaly one would want %base-services
+ (modify-services %base-services
+ ;; seatd/greetd combination can replace these
+ ;; greetd provides its own PAM service
+ (delete login-service-type)
+ (delete mingetty-service-type)))
+
+@end lisp
+
+@end defvr
+
+@deftp {Data Type} seatd-configuration
+Configuration record for the seatd daemon service.
+
+@table @asis
+@item @code{seatd} (default: @code{seatd})
+The seatd package to use.
+
+@item @code{user} (default: @samp{"root"})
+User to own the seatd socket.
+
+@item @code{group} (default: @samp{"users"})
+Group to own the seatd socket.
+
+@item @code{socket} (default: @samp{"/run/seatd.sock"})
+Where to create the seatd socket.
+
+@item @code{loglevel} (default: @samp{"error"})
+Log level to output logs. Possible values: @samp{"silent"}, @samp{"error"},
+@samp{"info"} and @samp{"debug"}.
+
+@end table
+@end deftp
+
+@defvr {Scheme Variable} greetd-service-type
+greetd is a minimal and flexible login manager daemon that makes no
+assumptions about what you want to launch.
+
+If you can run it from your shell in a TTY, greetd can start it. If it
+can be taught to speak a simple JSON-based IPC protocol, then it can
+be a greeter.
+
+@code{<greetd-service-type>} provides necessary infrastructure for
+logging in users, including:
+
+@itemize @bullet
+@item
+@code{greetd} PAM service
+
+@item
+Special variation of @code{pam-mount} to mount @code{XDG_RUNTIME_DIR}
+
+@end itemize
+
+@end defvr
+
+@deftp {Data Type} greetd-configuration
+Configuration record for the greetd service.
+
+@table @asis
+@item @code{motd}
+A file-like object containing the ``message of the day''.
+
+@item @code{allow-empty-passwords?} (default: @code{#t})
+Allow empty passwords by default so that first-time users can log in when
+the 'root' account has just been created.
+
+@item @code{terminals} (default: @code{'()})
+List of @code{<greetd-terminal-configuration>} per terminal for which
+@code{greetd} should be started.
+
+@end table
+@end deftp
+
+@deftp {Data Type} greetd-terminal-configuration
+Configuration record for per terminal greetd daemon service.
+
+@table @asis
+@item @code{greetd} (default: @code{greetd})
+The greetd package to use.
+
+@item @code{config-file-name}
+Configuration file name to use for greetd daemon. Generally, autogenerated
+derivation based on @code{terminal-vt} value.
+
+@item @code{terminal-vt} (default: @samp{"7"})
+The VT to run on. Use of a specific VT with appropriate conflict avoidance
+is recommended.
+
+@item @code{terminal-switch} (default: @code{#f})
+Make this terminal active on start of @code{greetd}.
+
+@item @code{default-session-user} (default: @samp{"greeter"})
+The user to use for running the greeter.
+
+@item @code{default-session-command} (default: @code{greetd-agreety-tty-xdg-session})
+The command-line to run to start the default session.
+
+Possible values are:
+
+@itemize @bullet
+@item
+@code{greetd-agreety-tty-session} - bash terminal session
+
+@item
+@code{greetd-agreety-tty-xdg-session} - bash terminal session with XDG environment
+
+@item
+@code{greetd-agreety-session} - custom instance of terminal session
+@end itemize
+
+@end table
+@end deftp
+
+@deftp {Data Type} greetd-agreety-session
+Configuration record for the agreety greetd greeter.
+
+@table @asis
+@item @code{package} (default: @code{bash})
+The package of command.
+
+@item @code{command-bin} (default: @samp{"/bin/bash"})
+Path to binary relative to @code{package}.
+
+@item @code{command-args} (default: @code{'("-l")})
+Command arguments to pass to command.
+
+@item @code{extra-env} (default: @code{'()})
+Extra environment variables to set on login.
+
+@item @code{command-generator}
+Function that receives instance of this configuration as an argument and
+returns @code{program-file} that can be used with @code{agreety} greeter.
+
+Both @code{greetd-agreety-tty-session} and @code{greetd-agreety-tty-xdg-session}
+uses @code{greetd-agreety-session} under the hood.
+
+@end table
+@end deftp
+
+@defvr {Scheme Variable} greetd-agreety-tty-session
+Provides instance of @code{greetd-agreety-session} which starts @samp{"bash -l"}
+on login.
+@end defvr
+
+@defvr {Scheme Variable} greetd-agreety-tty-xdg-session
+Provides instance of @code{greetd-agreety-session} which starts @samp{"bash -l"}
+on login. Additionally, will set @code{XDG_SESSION_TYPE} and
+@code{XDG_RUNTIME_DIR} environment variables for session.
+@end defvr
+
@node Sound Services
@subsection Sound Services
--
2.32.0
next prev parent reply other threads:[~2021-08-22 21:55 UTC|newest]
Thread overview: 132+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-08-09 19:02 [bug#49969] [PATCH 0/7] gnu: desktop: Add seatd-service-type and greetd-service-type muradm
2021-08-09 19:17 ` [bug#49969] [PATCH 1/7] gnu: rust-enquote: Add rust-enquote 1.0.3 muradm
2021-08-09 19:17 ` [bug#49969] [PATCH 2/7] gnu: rust-pam-sys: Add rust-pam-sys 0.5.6 muradm
2021-08-09 19:17 ` [bug#49969] [PATCH 3/7] gnu: greetd: Add greetd 0.7.0 muradm
2021-08-09 19:18 ` [bug#49969] [PATCH 4/7] gnu: seatd-pam-mount: Add seatd-pam-mount muradm
2021-08-09 19:18 ` [bug#49969] [PATCH 5/7] gnu: desktop: Add seatd-service-type muradm
2021-08-09 19:18 ` [bug#49969] [PATCH 6/7] gnu: desktop: Add greetd-service-type muradm
2021-08-09 19:18 ` [bug#49969] [PATCH 7/7] doc: Add desktop seatd-service-type and greetd-service-type muradm
2021-08-10 19:36 ` [bug#49969] [PATCH v2 0/7] gnu: desktop: Add " muradm
2021-08-10 20:07 ` [bug#49969] [PATCH v2 1/7] gnu: crates-io: Add rust-enquote 1.0.3 muradm
2021-08-11 11:16 ` Xinglu Chen
2021-08-11 19:12 ` muradm
2021-08-10 20:07 ` [bug#49969] [PATCH v2 2/7] gnu: crates-io: Add rust-pam-sys 0.5.6 muradm
2021-08-11 11:20 ` Xinglu Chen
2021-08-11 19:12 ` muradm
2021-08-10 20:07 ` [bug#49969] [PATCH v2 3/7] gnu: freedesktop: Add greetd 0.7.0 muradm
2021-08-11 11:29 ` Xinglu Chen
2021-08-11 20:10 ` muradm
2021-08-12 11:45 ` Xinglu Chen
2021-08-12 19:51 ` muradm
2021-08-10 20:07 ` [bug#49969] [PATCH v2 4/7] gnu: admin: Add greetd-pam-mount muradm
2021-08-11 11:32 ` Xinglu Chen
2021-08-11 20:15 ` muradm
2021-08-10 20:07 ` [bug#49969] [PATCH v2 5/7] gnu: desktop: Add seatd-service-type muradm
2021-08-11 11:52 ` Xinglu Chen
2021-08-11 20:31 ` muradm
2021-08-10 20:07 ` [bug#49969] [PATCH v2 6/7] gnu: desktop: Add greetd-service-type muradm
2021-08-10 20:07 ` [bug#49969] [PATCH v2 7/7] doc: Add desktop seatd-service-type and greetd-service-type muradm
2021-08-12 21:55 ` [bug#49969] [PATCH 00/10] gnu: desktop: Add " muradm
2021-08-12 22:00 ` muradm
2021-08-12 22:04 ` [bug#49969] [PATCH v3 " muradm
2021-08-19 14:31 ` [bug#49969] [PATCH v4 " muradm
2021-08-19 14:38 ` [bug#49969] [PATCH v4 01/10] gnu: crates-io: Add rust-enquote 1.0.3 muradm
2021-08-19 14:38 ` [bug#49969] [PATCH v4 02/10] gnu: crates-io: Add rust-pam-sys 0.5.6 muradm
2021-08-19 14:38 ` [bug#49969] [PATCH v4 03/10] gnu: freedesktop: Add greetd 0.7.0 muradm
2021-08-19 14:39 ` [bug#49969] [PATCH v4 04/10] gnu: admin: Add greetd-pam-mount muradm
2021-08-19 14:39 ` [bug#49969] [PATCH v4 05/10] gnu: desktop: Add seatd-service-type muradm
2021-08-19 14:39 ` [bug#49969] [PATCH v4 06/10] gnu: desktop: Add greetd-service-type muradm
2021-08-19 14:39 ` [bug#49969] [PATCH v4 07/10] gnu: base: Add greetd to applied PAM services muradm
2021-08-19 14:39 ` [bug#49969] [PATCH v4 08/10] gnu: pam-mount: " muradm
2021-08-19 14:39 ` [bug#49969] [PATCH v4 09/10] gnu: tests: Add seatd/greetd based minimal desktop system tests muradm
2021-08-19 14:39 ` [bug#49969] [PATCH v4 10/10] doc: Add desktop seatd-service-type and greetd-service-type muradm
2021-08-22 21:50 ` [bug#49969] [PATCH v5 00/10] gnu: desktop: Add " muradm
2021-08-22 21:50 ` [bug#49969] [PATCH v5 01/10] gnu: crates-io: Add rust-enquote 1.0.3 muradm
2021-08-22 21:50 ` [bug#49969] [PATCH v5 02/10] gnu: crates-io: Add rust-pam-sys 0.5.6 muradm
2021-08-22 21:50 ` [bug#49969] [PATCH v5 03/10] gnu: freedesktop: Add greetd 0.7.0 muradm
2021-08-22 21:50 ` [bug#49969] [PATCH v5 04/10] gnu: admin: Add greetd-pam-mount muradm
2021-08-22 21:50 ` [bug#49969] [PATCH v5 05/10] gnu: desktop: Add seatd-service-type muradm
2021-08-22 21:50 ` [bug#49969] [PATCH v5 06/10] gnu: desktop: Add greetd-service-type muradm
2021-08-22 21:50 ` [bug#49969] [PATCH v5 07/10] gnu: base: Add greetd to applied PAM services muradm
2021-08-22 21:50 ` [bug#49969] [PATCH v5 08/10] gnu: pam-mount: " muradm
2021-08-22 21:50 ` [bug#49969] [PATCH v5 09/10] gnu: tests: Add seatd/greetd based minimal desktop system tests muradm
2021-08-22 21:50 ` muradm [this message]
2021-09-06 15:26 ` [bug#49969] [PATCH v6 0/8] gnu: Add seatd-service-type and greetd-service-type muradm
2021-09-06 15:26 ` [bug#49969] [PATCH v6 1/8] gnu: crates-io: Add rust-enquote-1 1.0.3 muradm
2021-09-06 15:26 ` [bug#49969] [PATCH v6 2/8] gnu: crates-io: Add rust-pam-sys 0.5.6 muradm
2021-09-06 15:26 ` [bug#49969] [PATCH v6 3/8] gnu: admin: Add greetd 0.8.0 muradm
2021-09-06 15:26 ` [bug#49969] [PATCH v6 4/8] gnu: admin: Add greetd-pam-mount muradm
2021-09-06 15:26 ` [bug#49969] [PATCH v6 5/8] gnu: base: Add greetd-service-type muradm
2021-09-06 15:26 ` [bug#49969] [PATCH v6 6/8] gnu: admin: Add libseat 0.5.0 and move seatd muradm
2021-09-06 15:26 ` [bug#49969] [PATCH v6 7/8] gnu: desktop: Add seatd-service-type muradm
2021-09-06 15:26 ` [bug#49969] [PATCH v6 8/8] gnu: tests: Add seatd/greetd based minimal desktop system tests muradm
2021-09-15 16:29 ` [bug#49969] [PATCH v7 0/7] gnu: Add greetd-service-type and seatd-service-type muradm
2021-09-15 16:29 ` [bug#49969] [PATCH v7 1/7] gnu: crates-io: Add rust-enquote 1.0.3 and rust-pam-sys 0.5.6 muradm
2021-09-15 16:29 ` [bug#49969] [PATCH v7 2/7] gnu: admin: Add greetd 0.8.0 muradm
2021-09-15 16:29 ` [bug#49969] [PATCH v7 3/7] gnu: admin: Add greetd-pam-mount muradm
2021-09-15 16:29 ` [bug#49969] [PATCH v7 4/7] gnu: base: Add greetd-service-type muradm
2021-09-15 16:29 ` [bug#49969] [PATCH v7 5/7] gnu: admin: Add libseat 0.6.1 and move seatd muradm
2021-09-15 16:29 ` [bug#49969] [PATCH v7 6/7] gnu: desktop: Add seatd-service-type muradm
2021-09-15 16:29 ` [bug#49969] [PATCH v7 7/7] gnu: tests: Add seatd/greetd based minimal desktop system tests muradm
2021-09-16 19:47 ` [bug#49969] [PATCH v8 0/7] Update libseat and seatd to 0.6.2 muradm
2021-09-16 19:47 ` [bug#49969] [PATCH v8 1/7] gnu: crates-io: Add rust-enquote 1.0.3 and rust-pam-sys 0.5.6 muradm
2021-09-16 19:47 ` [bug#49969] [PATCH v8 2/7] gnu: admin: Add greetd 0.8.0 muradm
2021-09-16 19:47 ` [bug#49969] [PATCH v8 3/7] gnu: admin: Add greetd-pam-mount muradm
2021-09-16 19:47 ` [bug#49969] [PATCH v8 4/7] gnu: base: Add greetd-service-type muradm
2021-09-16 19:47 ` [bug#49969] [PATCH v8 5/7] gnu: admin: Add libseat 0.6.2 and move seatd muradm
2021-09-24 23:13 ` Leo Famulari
2021-09-25 7:00 ` muradm
2021-09-16 19:47 ` [bug#49969] [PATCH v8 6/7] gnu: desktop: Add seatd-service-type muradm
2021-09-16 19:47 ` [bug#49969] [PATCH v8 7/7] gnu: tests: Add seatd/greetd based minimal desktop system tests muradm
2021-08-12 22:04 ` [bug#49969] [PATCH v3 01/10] gnu: crates-io: Add rust-enquote 1.0.3 muradm
2021-08-12 22:04 ` [bug#49969] [PATCH v3 02/10] gnu: crates-io: Add rust-pam-sys 0.5.6 muradm
2021-08-12 22:04 ` [bug#49969] [PATCH 03/10] gnu: freedesktop: Add greetd 0.7.0 muradm
2021-08-12 22:04 ` [bug#49969] [PATCH v3 04/10] gnu: admin: Add greetd-pam-mount muradm
2021-08-12 22:04 ` [bug#49969] [PATCH v3 05/10] gnu: desktop: Add seatd-service-type muradm
2021-08-12 22:04 ` [bug#49969] [PATCH v3 06/10] gnu: desktop: Add greetd-service-type muradm
2021-08-12 22:04 ` [bug#49969] [PATCH v3 07/10] gnu: base: Add greetd to applied PAM services muradm
2021-08-12 22:04 ` [bug#49969] [PATCH v3 08/10] gnu: pam-mount: " muradm
2021-08-12 22:04 ` [bug#49969] [PATCH v3 09/10] gnu: tests: Add seatd/greetd based minimal desktop system tests muradm
2021-08-12 22:04 ` [bug#49969] [PATCH v3 10/10] doc: Add desktop seatd-service-type and greetd-service-type muradm
2021-08-13 20:43 ` [bug#49969] [PATCH v3 03/10] gnu: freedesktop: Add greetd 0.7.0 muradm
2021-11-14 17:43 ` [bug#49969] [PATCH 0/7] gnu: desktop: Add seatd-service-type and greetd-service-type norgli via Guix-patches via
[not found] <20220603180923.0caf6958@ultrarare.space>
2022-06-03 10:10 ` [bug#49969] [PATCH v9 1/7] gnu: crates-io: Add rust-enquote 1.1.0 and rust-pam-sys 0.5.6 Hilton Chain via Guix-patches via
2022-06-03 10:11 ` [bug#49969] [PATCH 2/7] gnu: admin: Add greetd 0.8.0 Hilton Chain via Guix-patches via
2022-06-03 10:14 ` [bug#49969] [PATCH v9 3/7] gnu: admin: Add greetd-pam-mount Hilton Chain via Guix-patches via
2022-06-03 10:15 ` [bug#49969] [PATCH v9 4/7] gnu: base: Add greetd-service-type Hilton Chain via Guix-patches via
2022-06-03 10:16 ` [bug#49969] [PATCH v9 5/7] gnu: admin: Add libseat 0.7.0 and move seatd Hilton Chain via Guix-patches via
2022-06-03 10:17 ` [bug#49969] [PATCH v9 6/7] gnu: desktop: Add seatd-service-type Hilton Chain via Guix-patches via
2022-06-03 10:18 ` [bug#49969] [PATCH v9 7/7] gnu: tests: Add seatd/greetd based minimal desktop system tests Hilton Chain via Guix-patches via
2022-06-07 9:44 ` [bug#49969] [PATCH v9 4/7] gnu: base: Add greetd-service-type Lars-Dominik Braun
2022-06-13 8:45 ` [bug#49969] [PATCH v10 0/7] " muradm
2022-06-13 8:45 ` [bug#49969] [PATCH v10 1/7] gnu: crates-io: Add rust-enquote 1.1.0 and rust-pam-sys 0.5.6 muradm
2022-06-13 13:20 ` Maxime Devos
2022-06-13 14:45 ` [bug#49969] [PATCH v11 0/8] " muradm
2022-06-13 14:45 ` [bug#49969] [PATCH v11 1/8] gnu: crates-io: Add rust-enquote 1.1.0 muradm
2022-06-13 14:45 ` [bug#49969] [PATCH v11 2/8] gnu: crates-io: Add rust-pam-sys 0.5.6 muradm
2022-06-13 14:45 ` [bug#49969] [PATCH v11 3/8] gnu: admin: Add greetd 0.8.0 muradm
2022-06-13 14:45 ` [bug#49969] [PATCH v11 4/8] gnu: admin: Add greetd-pam-mount muradm
2022-06-13 14:45 ` [bug#49969] [PATCH v11 5/8] gnu: base: Add greetd-service-type muradm
2022-06-13 14:45 ` [bug#49969] [PATCH v11 6/8] gnu: admin: Add libseat 0.8.0 and move seatd muradm
2022-06-13 14:45 ` [bug#49969] [PATCH v11 7/8] gnu: desktop: Add seatd-service-type muradm
2022-06-14 12:13 ` Tom Fitzhenry
2022-06-13 14:45 ` [bug#49969] [PATCH v11 8/8] gnu: tests: Add seatd/greetd based minimal desktop system tests muradm
2022-06-15 6:54 ` [bug#49969] [PATCH v11 0/8] Re: [bug#49969] [PATCH v10 1/7] gnu: crates-io: Add rust-enquote 1.1.0 and rust-pam-sys 0.5.6 muradm
2022-06-15 8:28 ` Lars-Dominik Braun
2022-06-15 9:17 ` [bug#49969] [PATCH v12 0/8] with fixed tests muradm
2022-06-15 9:17 ` [bug#49969] [PATCH v12 1/8] gnu: crates-io: Add rust-enquote 1.1.0 muradm
2022-06-15 9:17 ` [bug#49969] [PATCH v12 2/8] gnu: crates-io: Add rust-pam-sys 0.5.6 muradm
2022-06-15 9:17 ` [bug#49969] [PATCH v12 3/8] gnu: admin: Add greetd 0.8.0 muradm
2022-06-15 9:17 ` [bug#49969] [PATCH v12 4/8] gnu: admin: Add greetd-pam-mount muradm
2022-06-15 9:17 ` [bug#49969] [PATCH v12 5/8] gnu: base: Add greetd-service-type muradm
2022-06-15 9:17 ` [bug#49969] [PATCH v12 6/8] gnu: admin: Add libseat 0.8.0 and move seatd muradm
2022-06-15 9:17 ` [bug#49969] [PATCH v12 7/8] gnu: desktop: Add seatd-service-type muradm
2022-06-15 9:17 ` [bug#49969] [PATCH v12 8/8] gnu: tests: Add seatd/greetd based minimal desktop system tests muradm
2022-06-16 16:19 ` [bug#49969] [PATCH v12 0/8] with fixed tests muradm
2022-06-17 8:47 ` bug#49969: " Lars-Dominik Braun
2022-06-13 8:45 ` [bug#49969] [PATCH v10 2/7] gnu: admin: Add greetd 0.8.0 muradm
2022-06-13 8:46 ` [bug#49969] [PATCH v10 3/7] gnu: admin: Add greetd-pam-mount muradm
2022-06-13 8:46 ` [bug#49969] [PATCH v10 4/7] gnu: base: Add greetd-service-type muradm
2022-06-13 8:46 ` [bug#49969] [PATCH v10 5/7] gnu: admin: Add libseat 0.8.0 and move seatd muradm
2022-06-13 8:46 ` [bug#49969] [PATCH v10 6/7] gnu: desktop: Add seatd-service-type muradm
2022-06-13 8:46 ` [bug#49969] [PATCH v10 7/7] gnu: tests: Add seatd/greetd based minimal desktop system tests muradm
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://guix.gnu.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210822215048.20480-11-mail@muradm.net \
--to=mail@muradm.net \
--cc=49969@debbugs.gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/guix.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).