mailarchive of the ptxdist mailing list
 help / color / mirror / Atom feed
* [ptxdist] [PATCH v2] seatd: new package
@ 2021-07-09  7:45 Michael Tretter
  2021-07-20 11:48 ` [ptxdist] [APPLIED] " Michael Olbrich
  0 siblings, 1 reply; 2+ messages in thread
From: Michael Tretter @ 2021-07-09  7:45 UTC (permalink / raw)
  To: ptxdist

Signed-off-by: Michael Tretter <m.tretter@pengutronix.de>
---
Changelog:

v2:

- fix dependency of SEATD_SEATD_SYSTEMD_UNIT
- add help text for SEATD_SEATD
---
 .../usr/lib/systemd/system/seatd.service      |  8 ++
 rules/seatd.in                                | 35 +++++++++
 rules/seatd.make                              | 76 +++++++++++++++++++
 3 files changed, 119 insertions(+)
 create mode 100644 projectroot/usr/lib/systemd/system/seatd.service
 create mode 100644 rules/seatd.in
 create mode 100644 rules/seatd.make

diff --git a/projectroot/usr/lib/systemd/system/seatd.service b/projectroot/usr/lib/systemd/system/seatd.service
new file mode 100644
index 000000000000..59137e67c8b3
--- /dev/null
+++ b/projectroot/usr/lib/systemd/system/seatd.service
@@ -0,0 +1,8 @@
+[Unit]
+Description=Seat management daemon
+
+[Service]
+Restart=always
+# Do not require a VT
+Environment=SEATD_VTBOUND=0
+ExecStart=/usr/bin/seatd
diff --git a/rules/seatd.in b/rules/seatd.in
new file mode 100644
index 000000000000..768cb7709698
--- /dev/null
+++ b/rules/seatd.in
@@ -0,0 +1,35 @@
+## SECTION=system_libraries
+
+menuconfig SEATD
+	tristate
+	select HOST_MESON
+	select SYSTEMD			if SEATD_SYSTEMD_LOGIND
+	select SYSTEMD_LOGIND		if SEATD_SYSTEMD_LOGIND
+	prompt "libseat"
+	help
+	  A minimal seat management daemon, and a universal seat management library.
+
+if SEATD
+
+config SEATD_SYSTEMD_LOGIND
+	bool
+	default INITMETHOD_SYSTEMD
+	prompt "logind support"
+
+config SEATD_SEATD
+	bool
+	default y
+	prompt "seatd server"
+	help
+	  The seatd server is an alternative to systemd-logind to provide the
+	  seat. If you are using systemd-logind, you don't need the seatd
+	  server. If both are installed and running, libseat will prefer the
+	  seatd server.
+
+config SEATD_SEATD_SYSTEMD_UNIT
+	bool
+	default y
+	depends on SEATD_SEATD && INITMETHOD_SYSTEMD
+	prompt "install seatd service file"
+
+endif
diff --git a/rules/seatd.make b/rules/seatd.make
new file mode 100644
index 000000000000..b848a5dc1037
--- /dev/null
+++ b/rules/seatd.make
@@ -0,0 +1,76 @@
+# -*-makefile-*-
+#
+# Copyright (C) 2021 by Philipp Zabel <p.zabel@pengutronix.de>
+#               2021 by Michael Tretter <m.tretter@pengutronix.de>
+#
+# For further information about the PTXdist project and license conditions
+# see the README file.
+#
+
+#
+# We provide this package
+#
+PACKAGES-$(PTXCONF_SEATD) += seatd
+
+#
+# Paths and names
+#
+SEATD_VERSION		:= 0.5.0
+SEATD_MD5		:= 264a36907f4be34efa400fb6e1b26f5f
+SEATD			:= seatd-$(SEATD_VERSION)
+SEATD_SUFFIX		:= tar.gz
+SEATD_URL		:= https://git.sr.ht/~kennylevinsen/seatd/archive/$(SEATD_VERSION).$(SEATD_SUFFIX)
+SEATD_SOURCE		:= $(SRCDIR)/$(SEATD).$(SEATD_SUFFIX)
+SEATD_DIR		:= $(BUILDDIR)/$(SEATD)
+SEATD_LICENSE		:= MIT
+SEATD_LICENSE_FILES	:= file://LICENSE;md5=715a99d2dd552e6188e74d4ed2914d5a
+
+
+# ----------------------------------------------------------------------------
+# Prepare
+# ----------------------------------------------------------------------------
+
+#
+# meson
+#
+SEATD_CONF_TOOL	:= meson
+SEATD_CONF_OPT	:=  \
+	$(CROSS_MESON_USR) \
+	-Dlogind=$(call ptx/endis,PTXCONF_SEATD_SYSTEMD_LOGIND)d \
+	-Dseatd=$(call ptx/endis,PTXCONF_SEATD_SEATD)d \
+	-Dbuiltin=disabled \
+	-Dserver=$(call ptx/endis,PTXCONF_SEATD_SEATD)d \
+	-Dexamples=disabled \
+	-Dman-pages=disabled \
+	-Ddefaultpath=
+
+# ----------------------------------------------------------------------------
+# Target-Install
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/seatd.targetinstall:
+	@$(call targetinfo)
+
+	@$(call install_init, seatd)
+	@$(call install_fixup, seatd,PRIORITY,optional)
+	@$(call install_fixup, seatd,SECTION,base)
+	@$(call install_fixup, seatd,AUTHOR,"Philipp Zabel <p.zabel@pengutronix.de>")
+	@$(call install_fixup, seatd,DESCRIPTION,missing)
+
+	@$(call install_lib, seatd, 0, 0, 0644, libseat)
+
+ifdef PTXCONF_SEATD_SEATD
+	@$(call install_copy, seatd, 0, 0, 0755, -, /usr/bin/seatd)
+ifdef PTXCONF_SEATD_SEATD_SYSTEMD_UNIT
+	@$(call install_alternative, seatd, 0, 0, 0644, \
+		/usr/lib/systemd/system/seatd.service)
+	@$(call install_link, seatd, ../seatd.service, \
+		/usr/lib/systemd/system/multi-user.target.wants/seatd.service)
+endif
+endif
+
+	@$(call install_finish, seatd)
+
+	@$(call touch)
+
+# vim: syntax=make
-- 
2.30.2


_______________________________________________
ptxdist mailing list
ptxdist@pengutronix.de
To unsubscribe, send a mail with subject "unsubscribe" to ptxdist-request@pengutronix.de


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [ptxdist] [APPLIED] seatd: new package
  2021-07-09  7:45 [ptxdist] [PATCH v2] seatd: new package Michael Tretter
@ 2021-07-20 11:48 ` Michael Olbrich
  0 siblings, 0 replies; 2+ messages in thread
From: Michael Olbrich @ 2021-07-20 11:48 UTC (permalink / raw)
  To: ptxdist; +Cc: Michael Tretter

Thanks, applied as bef359c33c098d4809d0833d85c68932ab16501d.

Michael

[sent from post-receive hook]

On Tue, 20 Jul 2021 13:48:44 +0200, Michael Tretter <m.tretter@pengutronix.de> wrote:
> Signed-off-by: Michael Tretter <m.tretter@pengutronix.de>
> Message-Id: <20210709074508.1301617-1-m.tretter@pengutronix.de>
> Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
> 
> diff --git a/projectroot/usr/lib/systemd/system/seatd.service b/projectroot/usr/lib/systemd/system/seatd.service
> new file mode 100644
> index 000000000000..59137e67c8b3
> --- /dev/null
> +++ b/projectroot/usr/lib/systemd/system/seatd.service
> @@ -0,0 +1,8 @@
> +[Unit]
> +Description=Seat management daemon
> +
> +[Service]
> +Restart=always
> +# Do not require a VT
> +Environment=SEATD_VTBOUND=0
> +ExecStart=/usr/bin/seatd
> diff --git a/rules/seatd.in b/rules/seatd.in
> new file mode 100644
> index 000000000000..768cb7709698
> --- /dev/null
> +++ b/rules/seatd.in
> @@ -0,0 +1,35 @@
> +## SECTION=system_libraries
> +
> +menuconfig SEATD
> +	tristate
> +	select HOST_MESON
> +	select SYSTEMD			if SEATD_SYSTEMD_LOGIND
> +	select SYSTEMD_LOGIND		if SEATD_SYSTEMD_LOGIND
> +	prompt "libseat"
> +	help
> +	  A minimal seat management daemon, and a universal seat management library.
> +
> +if SEATD
> +
> +config SEATD_SYSTEMD_LOGIND
> +	bool
> +	default INITMETHOD_SYSTEMD
> +	prompt "logind support"
> +
> +config SEATD_SEATD
> +	bool
> +	default y
> +	prompt "seatd server"
> +	help
> +	  The seatd server is an alternative to systemd-logind to provide the
> +	  seat. If you are using systemd-logind, you don't need the seatd
> +	  server. If both are installed and running, libseat will prefer the
> +	  seatd server.
> +
> +config SEATD_SEATD_SYSTEMD_UNIT
> +	bool
> +	default y
> +	depends on SEATD_SEATD && INITMETHOD_SYSTEMD
> +	prompt "install seatd service file"
> +
> +endif
> diff --git a/rules/seatd.make b/rules/seatd.make
> new file mode 100644
> index 000000000000..b848a5dc1037
> --- /dev/null
> +++ b/rules/seatd.make
> @@ -0,0 +1,76 @@
> +# -*-makefile-*-
> +#
> +# Copyright (C) 2021 by Philipp Zabel <p.zabel@pengutronix.de>
> +#               2021 by Michael Tretter <m.tretter@pengutronix.de>
> +#
> +# For further information about the PTXdist project and license conditions
> +# see the README file.
> +#
> +
> +#
> +# We provide this package
> +#
> +PACKAGES-$(PTXCONF_SEATD) += seatd
> +
> +#
> +# Paths and names
> +#
> +SEATD_VERSION		:= 0.5.0
> +SEATD_MD5		:= 264a36907f4be34efa400fb6e1b26f5f
> +SEATD			:= seatd-$(SEATD_VERSION)
> +SEATD_SUFFIX		:= tar.gz
> +SEATD_URL		:= https://git.sr.ht/~kennylevinsen/seatd/archive/$(SEATD_VERSION).$(SEATD_SUFFIX)
> +SEATD_SOURCE		:= $(SRCDIR)/$(SEATD).$(SEATD_SUFFIX)
> +SEATD_DIR		:= $(BUILDDIR)/$(SEATD)
> +SEATD_LICENSE		:= MIT
> +SEATD_LICENSE_FILES	:= file://LICENSE;md5=715a99d2dd552e6188e74d4ed2914d5a
> +
> +
> +# ----------------------------------------------------------------------------
> +# Prepare
> +# ----------------------------------------------------------------------------
> +
> +#
> +# meson
> +#
> +SEATD_CONF_TOOL	:= meson
> +SEATD_CONF_OPT	:=  \
> +	$(CROSS_MESON_USR) \
> +	-Dlogind=$(call ptx/endis,PTXCONF_SEATD_SYSTEMD_LOGIND)d \
> +	-Dseatd=$(call ptx/endis,PTXCONF_SEATD_SEATD)d \
> +	-Dbuiltin=disabled \
> +	-Dserver=$(call ptx/endis,PTXCONF_SEATD_SEATD)d \
> +	-Dexamples=disabled \
> +	-Dman-pages=disabled \
> +	-Ddefaultpath=
> +
> +# ----------------------------------------------------------------------------
> +# Target-Install
> +# ----------------------------------------------------------------------------
> +
> +$(STATEDIR)/seatd.targetinstall:
> +	@$(call targetinfo)
> +
> +	@$(call install_init, seatd)
> +	@$(call install_fixup, seatd,PRIORITY,optional)
> +	@$(call install_fixup, seatd,SECTION,base)
> +	@$(call install_fixup, seatd,AUTHOR,"Philipp Zabel <p.zabel@pengutronix.de>")
> +	@$(call install_fixup, seatd,DESCRIPTION,missing)
> +
> +	@$(call install_lib, seatd, 0, 0, 0644, libseat)
> +
> +ifdef PTXCONF_SEATD_SEATD
> +	@$(call install_copy, seatd, 0, 0, 0755, -, /usr/bin/seatd)
> +ifdef PTXCONF_SEATD_SEATD_SYSTEMD_UNIT
> +	@$(call install_alternative, seatd, 0, 0, 0644, \
> +		/usr/lib/systemd/system/seatd.service)
> +	@$(call install_link, seatd, ../seatd.service, \
> +		/usr/lib/systemd/system/multi-user.target.wants/seatd.service)
> +endif
> +endif
> +
> +	@$(call install_finish, seatd)
> +
> +	@$(call touch)
> +
> +# vim: syntax=make

_______________________________________________
ptxdist mailing list
ptxdist@pengutronix.de
To unsubscribe, send a mail with subject "unsubscribe" to ptxdist-request@pengutronix.de


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2021-07-20 11:50 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-07-09  7:45 [ptxdist] [PATCH v2] seatd: new package Michael Tretter
2021-07-20 11:48 ` [ptxdist] [APPLIED] " Michael Olbrich

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox