Github messages for voidlinux
 help / color / mirror / Atom feed
* [PR PATCH] dbus-elogind: remove package, migrate to regular dbus
@ 2023-07-14  0:54 ahesford
  2023-07-14 17:47 ` Duncaen
                   ` (5 more replies)
  0 siblings, 6 replies; 7+ messages in thread
From: ahesford @ 2023-07-14  0:54 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1482 bytes --]

There is a new pull request by ahesford against master on the void-packages repository

https://github.com/ahesford/void-packages nologin
https://github.com/void-linux/void-packages/pull/45026

dbus-elogind: remove package, migrate to regular dbus
`dbus-elogind` adds a patch that enabled `dbus` to query elogind to determine whether the current user is seated at a physical console. Without this, there are a few fallbacks that seem not to be enabled or supported in our `dbus` package, so `dbus` just assumes that no user is "at the console".

It seems the only consumer of this is a `connman` policy at `/usr/share/dbus-1/systemd/connman-nmcompat.conf` that, based on the file name, allows connman to respond to messages for `org.freedesktop.NetworkManager` originating from users physically at the console.

This package adds maintenance burden (we have to keep this in sync with `dbus` and have to duplicate services and `INSTALL` scripts) and, in at least one case a few years ago, a user was bitten when a newer `dbus-libs` was somehow installed alongside a `dbus-elogind` package that hadn't been updated, breaking the installation. There is too much confusion for essentially zero benefit, so let's just drop this version and push people to the standard packages.

I still need to test the upgrade path with the elimination of `provides` and `replaces` and the new `depends`.

A patch file from https://github.com/void-linux/void-packages/pull/45026.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-nologin-45026.patch --]
[-- Type: text/x-diff, Size: 7956 bytes --]

From c6b81e9121dea0d913b9c87d7519a5ee4a110a00 Mon Sep 17 00:00:00 2001
From: "Andrew J. Hesford" <ajh@sideband.org>
Date: Thu, 13 Jul 2023 20:39:05 -0400
Subject: [PATCH] dbus-elogind: remove package, migrate to regular dbus

---
 srcpkgs/dbus-elogind/INSTALL                  |  9 ---
 srcpkgs/dbus-elogind/files/dbus/check         |  2 -
 srcpkgs/dbus-elogind/files/dbus/run           |  4 -
 .../patches/dbus-enable-elogind.patch         | 73 -------------------
 srcpkgs/dbus-elogind/template                 | 57 ++-------------
 srcpkgs/dbus-elogind/update                   |  2 -
 6 files changed, 8 insertions(+), 139 deletions(-)
 delete mode 100644 srcpkgs/dbus-elogind/INSTALL
 delete mode 100755 srcpkgs/dbus-elogind/files/dbus/check
 delete mode 100755 srcpkgs/dbus-elogind/files/dbus/run
 delete mode 100644 srcpkgs/dbus-elogind/patches/dbus-enable-elogind.patch
 delete mode 100644 srcpkgs/dbus-elogind/update

diff --git a/srcpkgs/dbus-elogind/INSTALL b/srcpkgs/dbus-elogind/INSTALL
deleted file mode 100644
index 6d2e0a6c1994..000000000000
--- a/srcpkgs/dbus-elogind/INSTALL
+++ /dev/null
@@ -1,9 +0,0 @@
-case "${ACTION}" in
-post)
-	[ ! -d var/lib/dbus ] && install -d var/lib/dbus
-	[ ! -d etc/dbus-1/session.d ] && install -d etc/dbus-1/session.d
-	chown root:22 usr/libexec/dbus-daemon-launch-helper
-	chmod 4750 usr/libexec/dbus-daemon-launch-helper
-	usr/bin/dbus-uuidgen --ensure || :
-	;;
-esac
diff --git a/srcpkgs/dbus-elogind/files/dbus/check b/srcpkgs/dbus-elogind/files/dbus/check
deleted file mode 100755
index 39eeac119e4e..000000000000
--- a/srcpkgs/dbus-elogind/files/dbus/check
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/bin/sh
-exec dbus-send --system / org.freedesktop.DBus.Peer.Ping > /dev/null 2> /dev/null
diff --git a/srcpkgs/dbus-elogind/files/dbus/run b/srcpkgs/dbus-elogind/files/dbus/run
deleted file mode 100755
index 4a6b981fd735..000000000000
--- a/srcpkgs/dbus-elogind/files/dbus/run
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-exec 2>&1
-[ ! -d /run/dbus ] && install -m755 -g 22 -o 22 -d /run/dbus
-exec dbus-daemon --system --nofork --nopidfile
diff --git a/srcpkgs/dbus-elogind/patches/dbus-enable-elogind.patch b/srcpkgs/dbus-elogind/patches/dbus-enable-elogind.patch
deleted file mode 100644
index 5cb5d649cd91..000000000000
--- a/srcpkgs/dbus-elogind/patches/dbus-enable-elogind.patch
+++ /dev/null
@@ -1,73 +0,0 @@
---- a/dbus/dbus-userdb-util.c	2015-09-30 16:48:40.000000000 +0200
-+++ b/dbus/dbus-userdb-util.c	2016-11-03 11:09:42.550520587 +0100
-@@ -32,6 +32,9 @@
- #if HAVE_SYSTEMD
- #include <systemd/sd-login.h>
- #endif
-+#if HAVE_ELOGIND
-+#include <elogind/sd-login.h>
-+#endif
- 
- /**
-  * @addtogroup DBusInternalsUtils
-@@ -54,7 +57,7 @@
-   const DBusUserInfo *info;
-   dbus_bool_t result = FALSE;
- 
--#ifdef HAVE_SYSTEMD
-+#if defined(HAVE_SYSTEMD) || defined(HAVE_ELOGIND)
-   /* check if we have logind */
-   if (access ("/run/systemd/seats/", F_OK) >= 0)
-     {
---- a/configure.ac	2016-11-03 11:13:58.286528265 +0100
-+++ b/configure.ac	2016-11-03 11:22:11.210543063 +0100
-@@ -185,6 +185,7 @@
- AC_ARG_ENABLE(kqueue, AS_HELP_STRING([--enable-kqueue],[build with kqueue support]),enable_kqueue=$enableval,enable_kqueue=auto)
- AC_ARG_ENABLE(console-owner-file, AS_HELP_STRING([--enable-console-owner-file],[enable console owner file]),enable_console_owner_file=$enableval,enable_console_owner_file=auto)
- AC_ARG_ENABLE(launchd, AS_HELP_STRING([--enable-launchd],[build with launchd auto-launch support]),enable_launchd=$enableval,enable_launchd=auto)
-+AC_ARG_ENABLE(elogind, AS_HELP_STRING([--enable-elogind],[build with elogind user seat support]),enable_elogind=$enableval,enable_elogind=auto)
- AC_ARG_ENABLE(systemd, AS_HELP_STRING([--enable-systemd],[build with systemd at_console support]),enable_systemd=$enableval,enable_systemd=auto)
- 
- AC_ARG_WITH(init-scripts, AS_HELP_STRING([--with-init-scripts=[redhat]],[Style of init scripts to install]))
-@@ -1184,6 +1185,24 @@
- 
- AM_CONDITIONAL(HAVE_CONSOLE_OWNER_FILE, test x$have_console_owner_file = xyes)
- 
-+dnl elogind detection
-+if test x$enable_elogind = xno ; then
-+    have_elogind=no;
-+else
-+    PKG_CHECK_MODULES([ELOGIND],
-+        [libelogind >= 209],
-+        [have_elogind=yes],
-+        [have_elogind=no])
-+fi
-+
-+if test x$have_elogind = xyes; then
-+    AC_DEFINE(HAVE_ELOGIND,1,[Have elogind])
-+fi
-+
-+if test x$enable_elogind = xyes -a x$have_elogind != xyes ; then
-+    AC_MSG_ERROR([Explicitly requested elogind support, but libelogind not found])
-+fi
-+
- dnl systemd detection
- if test x$enable_systemd = xno ; then
-     have_systemd=no;
-@@ -1290,7 +1309,7 @@
- fi
- 
- #### Set up final flags
--LIBDBUS_LIBS="$THREAD_LIBS $NETWORK_libs $SYSTEMD_LIBS"
-+LIBDBUS_LIBS="$THREAD_LIBS $NETWORK_libs $SYSTEMD_LIBS $ELOGIND_LIBS"
- AC_SUBST([LIBDBUS_LIBS])
- 
- ### X11 detection
-@@ -1949,6 +1968,7 @@
-         Building AppArmor support: ${have_apparmor}
-         Building inotify support: ${have_inotify}
-         Building kqueue support:  ${have_kqueue}
-+        Building elogind support: ${have_elogind}
-         Building systemd support: ${have_systemd}
-         Building X11 code:        ${have_x11}
-         Building Doxygen docs:    ${enable_doxygen_docs}
diff --git a/srcpkgs/dbus-elogind/template b/srcpkgs/dbus-elogind/template
index 2f6b4bdfee41..a314d98b3949 100644
--- a/srcpkgs/dbus-elogind/template
+++ b/srcpkgs/dbus-elogind/template
@@ -1,61 +1,20 @@
 # Template file for 'dbus-elogind'
-# NOTE: keep this pkg synchronized with dbus
 pkgname=dbus-elogind
 version=1.14.6
-revision=1
-build_style=gnu-configure
-configure_args="--disable-selinux --enable-inotify --with-dbus-user=dbus
- --enable-xml-docs --disable-static --disable-tests --enable-epoll
- --disable-asserts --disable-systemd --disable-user-session
- --with-system-socket=/run/dbus/system_bus_socket --disable-doxygen-docs
- --with-system-pid-file=/run/dbus/pid --with-console-auth-dir=/run/console
- --enable-elogind"
-hostmakedepends="gperf intltool pkg-config xmlto
- automake libtool autoconf autoconf-archive"
-makedepends="expat-devel libX11-devel libcap-devel elogind-devel"
-short_desc="Message bus system (built with elogind support)"
+revision=2
+build_style=meta
+depends="dbus"
+short_desc="Message bus system (transitional dummy package)"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://dbus.freedesktop.org/"
-changelog="https://raw.githubusercontent.com/freedesktop/dbus/dbus-1.14/NEWS"
-distfiles="https://dbus.freedesktop.org/releases/dbus/dbus-${version}.tar.xz"
-checksum=fd2bdf1bb89dc365a46531bff631536f22b0d1c6d5ce2c5c5e59b55265b3d66b
-conf_files="/etc/dbus-1/*.conf"
-replaces="dbus>=0"
-provides="dbus-${version}_${revision}"
-
-# Create dbus:22 system account.
-system_accounts="dbus:22"
-
-pre_configure() {
-	autoreconf -fi
-}
-
-post_install() {
-	vsv dbus
-	rm -r "${DESTDIR}/usr/include"
-	rm -r "${DESTDIR}"/usr/lib/dbus-*
-	rm -r "${DESTDIR}/usr/lib/pkgconfig"
-	rm "${DESTDIR}"/usr/lib/*.so
-	rm -r "${DESTDIR}/usr/share/doc"
-	rm -r "${DESTDIR}/usr/lib/cmake"
-}
 
 dbus-elogind-libs_package() {
-	short_desc+=" - shared libraries"
-	provides="dbus-libs-${version}_${revision}"
-	replaces="dbus-libs>=0"
-	pkg_install() {
-		vmove "usr/lib/*.so.*"
-	}
+	short_desc="Message bus system - shared libraries (transitional dummy package)"
+	depends="dbus-libs"
 }
 
 dbus-elogind-x11_package() {
-	short_desc+=" - X11 support"
-	provides="dbus-x11-${version}_${revision}"
-	replaces="dbus-x11>=0"
-	pkg_install() {
-		vmove usr/bin/dbus-launch
-		vmove usr/share/man/man1/dbus-launch.1
-	}
+	short_desc="Message bus system - X11 support (transitional dummy package)"
+	depends="dbus-x11"
 }
diff --git a/srcpkgs/dbus-elogind/update b/srcpkgs/dbus-elogind/update
deleted file mode 100644
index 9eee69330d8f..000000000000
--- a/srcpkgs/dbus-elogind/update
+++ /dev/null
@@ -1,2 +0,0 @@
-pkgname="dbus"
-ignore="*.[0-9]*[13579].*"

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

* Re: dbus-elogind: remove package, migrate to regular dbus
  2023-07-14  0:54 [PR PATCH] dbus-elogind: remove package, migrate to regular dbus ahesford
@ 2023-07-14 17:47 ` Duncaen
  2023-07-14 19:37 ` ahesford
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: Duncaen @ 2023-07-14 17:47 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 527 bytes --]

New comment by Duncaen on void-packages repository

https://github.com/void-linux/void-packages/pull/45026#issuecomment-1636185826

Comment:
I forgot about `/etc/dbus-1/system.d/` there are a few more packages that use `at_console` there.
```
xbps-query -R --cat /etc/dbus-1/system.d/org.neard.conf neard-0.18_2
xbps-query -R --cat /etc/dbus-1/system.d/org.neard.se.conf neard-0.18_2
xbps-query -R --cat /etc/dbus-1/system.d/ofono.conf ofono-1.31_3
xbps-query -R --cat /etc/dbus-1/system.d/wicd.conf wicd-1.7.4_8
```



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

* Re: dbus-elogind: remove package, migrate to regular dbus
  2023-07-14  0:54 [PR PATCH] dbus-elogind: remove package, migrate to regular dbus ahesford
  2023-07-14 17:47 ` Duncaen
@ 2023-07-14 19:37 ` ahesford
  2023-07-15 15:20 ` ahesford
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: ahesford @ 2023-07-14 19:37 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 432 bytes --]

New comment by ahesford on void-packages repository

https://github.com/void-linux/void-packages/pull/45026#issuecomment-1636330269

Comment:
It looks like `wicd` is on life support and users probably ought to find a better supported network manager anyway. I have no idea how much of an inconvenience this change would pose for users of `neard` or `ofono`; no installations of these packages are currently registered with popcorn.

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

* Re: dbus-elogind: remove package, migrate to regular dbus
  2023-07-14  0:54 [PR PATCH] dbus-elogind: remove package, migrate to regular dbus ahesford
  2023-07-14 17:47 ` Duncaen
  2023-07-14 19:37 ` ahesford
@ 2023-07-15 15:20 ` ahesford
  2023-07-15 15:37 ` [PR PATCH] [Updated] " ahesford
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: ahesford @ 2023-07-15 15:20 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 550 bytes --]

New comment by ahesford on void-packages repository

https://github.com/void-linux/void-packages/pull/45026#issuecomment-1636799394

Comment:
The compatibility problems are worse than I thought, because `xbps-install dbus-elogind` will pull in the standard `dbus-libs` by default. Not only does that increase the likelihood that a mismatched `dbus` update will break users of `dbus-elogind`, but it also means that there are probably a number of users who installed `dbus-elogind` but don't even get the benefit of the patched `at_console` behavior!

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

* Re: [PR PATCH] [Updated] dbus-elogind: remove package, migrate to regular dbus
  2023-07-14  0:54 [PR PATCH] dbus-elogind: remove package, migrate to regular dbus ahesford
                   ` (2 preceding siblings ...)
  2023-07-15 15:20 ` ahesford
@ 2023-07-15 15:37 ` ahesford
  2023-07-15 15:39 ` ahesford
  2023-07-17 16:15 ` [PR PATCH] [Closed]: " ahesford
  5 siblings, 0 replies; 7+ messages in thread
From: ahesford @ 2023-07-15 15:37 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1495 bytes --]

There is an updated pull request by ahesford against master on the void-packages repository

https://github.com/ahesford/void-packages nologin
https://github.com/void-linux/void-packages/pull/45026

dbus-elogind: remove package, migrate to regular dbus
`dbus-elogind` adds a patch that enabled `dbus` to query elogind to determine whether the current user is seated at a physical console. Without this, there are a few fallbacks that seem not to be enabled or supported in our `dbus` package, so `dbus` just assumes that no user is "at the console".

It seems the only consumer of this is a `connman` policy at `/usr/share/dbus-1/systemd/connman-nmcompat.conf` that, based on the file name, allows connman to respond to messages for `org.freedesktop.NetworkManager` originating from users physically at the console.

This package adds maintenance burden (we have to keep this in sync with `dbus` and have to duplicate services and `INSTALL` scripts) and, in at least one case a few years ago, a user was bitten when a newer `dbus-libs` was somehow installed alongside a `dbus-elogind` package that hadn't been updated, breaking the installation. There is too much confusion for essentially zero benefit, so let's just drop this version and push people to the standard packages.

I still need to test the upgrade path with the elimination of `provides` and `replaces` and the addition of `depends`.

A patch file from https://github.com/void-linux/void-packages/pull/45026.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-nologin-45026.patch --]
[-- Type: text/x-diff, Size: 8724 bytes --]

From 821506288b627f79970c9045ca77269149e3cdfd Mon Sep 17 00:00:00 2001
From: "Andrew J. Hesford" <ajh@sideband.org>
Date: Sat, 15 Jul 2023 11:30:32 -0400
Subject: [PATCH 1/2] dbus: bump to provide proper upgrade path for
 dbus-elogind

---
 srcpkgs/dbus/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/dbus/template b/srcpkgs/dbus/template
index 4b3a4fc6cfd1..e2cbd7e9529d 100644
--- a/srcpkgs/dbus/template
+++ b/srcpkgs/dbus/template
@@ -2,7 +2,7 @@
 # NOTE: keep this pkg synchronized with dbus-elogind
 pkgname=dbus
 version=1.14.6
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="--disable-selinux --enable-inotify --with-dbus-user=dbus
  --enable-xml-docs --enable-epoll

From 2308e0f33f2962ad1c4e85a316de1cffa055456a Mon Sep 17 00:00:00 2001
From: "Andrew J. Hesford" <ajh@sideband.org>
Date: Thu, 13 Jul 2023 20:39:05 -0400
Subject: [PATCH 2/2] dbus-elogind: remove package, migrate to regular dbus

---
 srcpkgs/dbus-elogind/INSTALL                  |  9 ---
 srcpkgs/dbus-elogind/files/dbus/check         |  2 -
 srcpkgs/dbus-elogind/files/dbus/run           |  4 -
 .../patches/dbus-enable-elogind.patch         | 73 -------------------
 srcpkgs/dbus-elogind/template                 | 57 ++-------------
 srcpkgs/dbus-elogind/update                   |  2 -
 6 files changed, 8 insertions(+), 139 deletions(-)
 delete mode 100644 srcpkgs/dbus-elogind/INSTALL
 delete mode 100755 srcpkgs/dbus-elogind/files/dbus/check
 delete mode 100755 srcpkgs/dbus-elogind/files/dbus/run
 delete mode 100644 srcpkgs/dbus-elogind/patches/dbus-enable-elogind.patch
 delete mode 100644 srcpkgs/dbus-elogind/update

diff --git a/srcpkgs/dbus-elogind/INSTALL b/srcpkgs/dbus-elogind/INSTALL
deleted file mode 100644
index 6d2e0a6c1994..000000000000
--- a/srcpkgs/dbus-elogind/INSTALL
+++ /dev/null
@@ -1,9 +0,0 @@
-case "${ACTION}" in
-post)
-	[ ! -d var/lib/dbus ] && install -d var/lib/dbus
-	[ ! -d etc/dbus-1/session.d ] && install -d etc/dbus-1/session.d
-	chown root:22 usr/libexec/dbus-daemon-launch-helper
-	chmod 4750 usr/libexec/dbus-daemon-launch-helper
-	usr/bin/dbus-uuidgen --ensure || :
-	;;
-esac
diff --git a/srcpkgs/dbus-elogind/files/dbus/check b/srcpkgs/dbus-elogind/files/dbus/check
deleted file mode 100755
index 39eeac119e4e..000000000000
--- a/srcpkgs/dbus-elogind/files/dbus/check
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/bin/sh
-exec dbus-send --system / org.freedesktop.DBus.Peer.Ping > /dev/null 2> /dev/null
diff --git a/srcpkgs/dbus-elogind/files/dbus/run b/srcpkgs/dbus-elogind/files/dbus/run
deleted file mode 100755
index 4a6b981fd735..000000000000
--- a/srcpkgs/dbus-elogind/files/dbus/run
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-exec 2>&1
-[ ! -d /run/dbus ] && install -m755 -g 22 -o 22 -d /run/dbus
-exec dbus-daemon --system --nofork --nopidfile
diff --git a/srcpkgs/dbus-elogind/patches/dbus-enable-elogind.patch b/srcpkgs/dbus-elogind/patches/dbus-enable-elogind.patch
deleted file mode 100644
index 5cb5d649cd91..000000000000
--- a/srcpkgs/dbus-elogind/patches/dbus-enable-elogind.patch
+++ /dev/null
@@ -1,73 +0,0 @@
---- a/dbus/dbus-userdb-util.c	2015-09-30 16:48:40.000000000 +0200
-+++ b/dbus/dbus-userdb-util.c	2016-11-03 11:09:42.550520587 +0100
-@@ -32,6 +32,9 @@
- #if HAVE_SYSTEMD
- #include <systemd/sd-login.h>
- #endif
-+#if HAVE_ELOGIND
-+#include <elogind/sd-login.h>
-+#endif
- 
- /**
-  * @addtogroup DBusInternalsUtils
-@@ -54,7 +57,7 @@
-   const DBusUserInfo *info;
-   dbus_bool_t result = FALSE;
- 
--#ifdef HAVE_SYSTEMD
-+#if defined(HAVE_SYSTEMD) || defined(HAVE_ELOGIND)
-   /* check if we have logind */
-   if (access ("/run/systemd/seats/", F_OK) >= 0)
-     {
---- a/configure.ac	2016-11-03 11:13:58.286528265 +0100
-+++ b/configure.ac	2016-11-03 11:22:11.210543063 +0100
-@@ -185,6 +185,7 @@
- AC_ARG_ENABLE(kqueue, AS_HELP_STRING([--enable-kqueue],[build with kqueue support]),enable_kqueue=$enableval,enable_kqueue=auto)
- AC_ARG_ENABLE(console-owner-file, AS_HELP_STRING([--enable-console-owner-file],[enable console owner file]),enable_console_owner_file=$enableval,enable_console_owner_file=auto)
- AC_ARG_ENABLE(launchd, AS_HELP_STRING([--enable-launchd],[build with launchd auto-launch support]),enable_launchd=$enableval,enable_launchd=auto)
-+AC_ARG_ENABLE(elogind, AS_HELP_STRING([--enable-elogind],[build with elogind user seat support]),enable_elogind=$enableval,enable_elogind=auto)
- AC_ARG_ENABLE(systemd, AS_HELP_STRING([--enable-systemd],[build with systemd at_console support]),enable_systemd=$enableval,enable_systemd=auto)
- 
- AC_ARG_WITH(init-scripts, AS_HELP_STRING([--with-init-scripts=[redhat]],[Style of init scripts to install]))
-@@ -1184,6 +1185,24 @@
- 
- AM_CONDITIONAL(HAVE_CONSOLE_OWNER_FILE, test x$have_console_owner_file = xyes)
- 
-+dnl elogind detection
-+if test x$enable_elogind = xno ; then
-+    have_elogind=no;
-+else
-+    PKG_CHECK_MODULES([ELOGIND],
-+        [libelogind >= 209],
-+        [have_elogind=yes],
-+        [have_elogind=no])
-+fi
-+
-+if test x$have_elogind = xyes; then
-+    AC_DEFINE(HAVE_ELOGIND,1,[Have elogind])
-+fi
-+
-+if test x$enable_elogind = xyes -a x$have_elogind != xyes ; then
-+    AC_MSG_ERROR([Explicitly requested elogind support, but libelogind not found])
-+fi
-+
- dnl systemd detection
- if test x$enable_systemd = xno ; then
-     have_systemd=no;
-@@ -1290,7 +1309,7 @@
- fi
- 
- #### Set up final flags
--LIBDBUS_LIBS="$THREAD_LIBS $NETWORK_libs $SYSTEMD_LIBS"
-+LIBDBUS_LIBS="$THREAD_LIBS $NETWORK_libs $SYSTEMD_LIBS $ELOGIND_LIBS"
- AC_SUBST([LIBDBUS_LIBS])
- 
- ### X11 detection
-@@ -1949,6 +1968,7 @@
-         Building AppArmor support: ${have_apparmor}
-         Building inotify support: ${have_inotify}
-         Building kqueue support:  ${have_kqueue}
-+        Building elogind support: ${have_elogind}
-         Building systemd support: ${have_systemd}
-         Building X11 code:        ${have_x11}
-         Building Doxygen docs:    ${enable_doxygen_docs}
diff --git a/srcpkgs/dbus-elogind/template b/srcpkgs/dbus-elogind/template
index 2f6b4bdfee41..7ac0adb87cd0 100644
--- a/srcpkgs/dbus-elogind/template
+++ b/srcpkgs/dbus-elogind/template
@@ -1,61 +1,20 @@
 # Template file for 'dbus-elogind'
-# NOTE: keep this pkg synchronized with dbus
 pkgname=dbus-elogind
 version=1.14.6
-revision=1
-build_style=gnu-configure
-configure_args="--disable-selinux --enable-inotify --with-dbus-user=dbus
- --enable-xml-docs --disable-static --disable-tests --enable-epoll
- --disable-asserts --disable-systemd --disable-user-session
- --with-system-socket=/run/dbus/system_bus_socket --disable-doxygen-docs
- --with-system-pid-file=/run/dbus/pid --with-console-auth-dir=/run/console
- --enable-elogind"
-hostmakedepends="gperf intltool pkg-config xmlto
- automake libtool autoconf autoconf-archive"
-makedepends="expat-devel libX11-devel libcap-devel elogind-devel"
-short_desc="Message bus system (built with elogind support)"
+revision=2
+build_style=meta
+depends="dbus>=1.14.6_2"
+short_desc="Message bus system (transitional dummy package)"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://dbus.freedesktop.org/"
-changelog="https://raw.githubusercontent.com/freedesktop/dbus/dbus-1.14/NEWS"
-distfiles="https://dbus.freedesktop.org/releases/dbus/dbus-${version}.tar.xz"
-checksum=fd2bdf1bb89dc365a46531bff631536f22b0d1c6d5ce2c5c5e59b55265b3d66b
-conf_files="/etc/dbus-1/*.conf"
-replaces="dbus>=0"
-provides="dbus-${version}_${revision}"
-
-# Create dbus:22 system account.
-system_accounts="dbus:22"
-
-pre_configure() {
-	autoreconf -fi
-}
-
-post_install() {
-	vsv dbus
-	rm -r "${DESTDIR}/usr/include"
-	rm -r "${DESTDIR}"/usr/lib/dbus-*
-	rm -r "${DESTDIR}/usr/lib/pkgconfig"
-	rm "${DESTDIR}"/usr/lib/*.so
-	rm -r "${DESTDIR}/usr/share/doc"
-	rm -r "${DESTDIR}/usr/lib/cmake"
-}
 
 dbus-elogind-libs_package() {
-	short_desc+=" - shared libraries"
-	provides="dbus-libs-${version}_${revision}"
-	replaces="dbus-libs>=0"
-	pkg_install() {
-		vmove "usr/lib/*.so.*"
-	}
+	short_desc="Message bus system - shared libraries (transitional dummy package)"
+	depends="dbus-libs>=1.14.6_2"
 }
 
 dbus-elogind-x11_package() {
-	short_desc+=" - X11 support"
-	provides="dbus-x11-${version}_${revision}"
-	replaces="dbus-x11>=0"
-	pkg_install() {
-		vmove usr/bin/dbus-launch
-		vmove usr/share/man/man1/dbus-launch.1
-	}
+	short_desc="Message bus system - X11 support (transitional dummy package)"
+	depends="dbus-x11>=1.14.6_2"
 }
diff --git a/srcpkgs/dbus-elogind/update b/srcpkgs/dbus-elogind/update
deleted file mode 100644
index 9eee69330d8f..000000000000
--- a/srcpkgs/dbus-elogind/update
+++ /dev/null
@@ -1,2 +0,0 @@
-pkgname="dbus"
-ignore="*.[0-9]*[13579].*"

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

* Re: dbus-elogind: remove package, migrate to regular dbus
  2023-07-14  0:54 [PR PATCH] dbus-elogind: remove package, migrate to regular dbus ahesford
                   ` (3 preceding siblings ...)
  2023-07-15 15:37 ` [PR PATCH] [Updated] " ahesford
@ 2023-07-15 15:39 ` ahesford
  2023-07-17 16:15 ` [PR PATCH] [Closed]: " ahesford
  5 siblings, 0 replies; 7+ messages in thread
From: ahesford @ 2023-07-15 15:39 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 620 bytes --]

New comment by ahesford on void-packages repository

https://github.com/void-linux/void-packages/pull/45026#issuecomment-1636803393

Comment:
OK, the upgrade path is broken: even though the new `dbus-elogind` no longer provides `dbus`, XBPS sees the currently installed version as providing the needed dependency for the upgraded package's new dependency. I've worked around this by bumping `dbus` and adding a strict minimum version in the new dummy package. This seems to do the right thing for full-system upgrades as well as an explicit `xbps-install -u dbus-elogind` even when `dbus-libs` was pulled in by default.

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

* Re: [PR PATCH] [Closed]: dbus-elogind: remove package, migrate to regular dbus
  2023-07-14  0:54 [PR PATCH] dbus-elogind: remove package, migrate to regular dbus ahesford
                   ` (4 preceding siblings ...)
  2023-07-15 15:39 ` ahesford
@ 2023-07-17 16:15 ` ahesford
  5 siblings, 0 replies; 7+ messages in thread
From: ahesford @ 2023-07-17 16:15 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1337 bytes --]

There's a closed pull request on the void-packages repository

dbus-elogind: remove package, migrate to regular dbus
https://github.com/void-linux/void-packages/pull/45026

Description:
`dbus-elogind` adds a patch that enabled `dbus` to query elogind to determine whether the current user is seated at a physical console. Without this, there are a few fallbacks that seem not to be enabled or supported in our `dbus` package, so `dbus` just assumes that no user is "at the console".

It seems the only consumer of this is a `connman` policy at `/usr/share/dbus-1/systemd/connman-nmcompat.conf` that, based on the file name, allows connman to respond to messages for `org.freedesktop.NetworkManager` originating from users physically at the console.

This package adds maintenance burden (we have to keep this in sync with `dbus` and have to duplicate services and `INSTALL` scripts) and, in at least one case a few years ago, a user was bitten when a newer `dbus-libs` was somehow installed alongside a `dbus-elogind` package that hadn't been updated, breaking the installation. There is too much confusion for essentially zero benefit, so let's just drop this version and push people to the standard packages.

I still need to test the upgrade path with the elimination of `provides` and `replaces` and the addition of `depends`.

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

end of thread, other threads:[~2023-07-17 16:15 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-07-14  0:54 [PR PATCH] dbus-elogind: remove package, migrate to regular dbus ahesford
2023-07-14 17:47 ` Duncaen
2023-07-14 19:37 ` ahesford
2023-07-15 15:20 ` ahesford
2023-07-15 15:37 ` [PR PATCH] [Updated] " ahesford
2023-07-15 15:39 ` ahesford
2023-07-17 16:15 ` [PR PATCH] [Closed]: " ahesford

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 NNTP newsgroup(s).