diff --git a/packages/dbus/build.sh b/packages/dbus/build.sh index 9c77c8b50e..f956155142 100644 --- a/packages/dbus/build.sh +++ b/packages/dbus/build.sh @@ -3,6 +3,7 @@ TERMUX_PKG_DESCRIPTION="Freedesktop.org message bus system" TERMUX_PKG_LICENSE="GPL-2.0" TERMUX_PKG_MAINTAINER="@termux" TERMUX_PKG_VERSION=1.15.2 +TERMUX_PKG_REVISION=1 TERMUX_PKG_SRCURL="https://dbus.freedesktop.org/releases/dbus/dbus-$TERMUX_PKG_VERSION.tar.xz" TERMUX_PKG_SHA256=7e640803084af59f5e477b7ded11fd888b5380910a895c51ca3aedd63c0626ca TERMUX_PKG_DEPENDS="libexpat, libx11" diff --git a/packages/dbus/bus-activation-helper.c.patch b/packages/dbus/bus-activation-helper.c.patch new file mode 100644 index 0000000000..e1e0985c6b --- /dev/null +++ b/packages/dbus/bus-activation-helper.c.patch @@ -0,0 +1,12 @@ +--- a/bus/activation-helper.c ++++ b/bus/activation-helper.c +@@ -294,7 +294,8 @@ + static dbus_bool_t + switch_user (char *user, DBusError *error) + { +-#ifndef ACTIVATION_LAUNCHER_TEST ++/* Termux is a single-user environment. */ ++#if !defined ACTIVATION_LAUNCHER_TEST && !defined __ANDROID__ + struct passwd *pw; + + /* find user */ diff --git a/packages/dbus/dbus-dbus-sysdeps-util-unix.c.patch b/packages/dbus/dbus-dbus-sysdeps-util-unix.c.patch new file mode 100644 index 0000000000..74008ed8d7 --- /dev/null +++ b/packages/dbus/dbus-dbus-sysdeps-util-unix.c.patch @@ -0,0 +1,36 @@ +--- a/dbus/dbus-sysdeps-util-unix.c ++++ b/dbus/dbus-sysdeps-util-unix.c +@@ -311,11 +311,16 @@ + dbus_bool_t + _dbus_verify_daemon_user (const char *user) + { ++/* Termux is a single-user environment. */ ++#ifdef __ANDROID__ ++ return TRUE; ++#else + DBusString u; + + _dbus_string_init_const (&u, user); + + return _dbus_get_user_id_and_primary_group (&u, NULL, NULL); ++#endif + } + + +@@ -332,6 +337,8 @@ + _dbus_change_to_daemon_user (const char *user, + DBusError *error) + { ++/* Termux is a single-user environment. */ ++#ifndef __ANDROID__ + dbus_uid_t uid; + dbus_gid_t gid; + DBusString u; +@@ -375,6 +382,7 @@ + _dbus_strerror (errno)); + return FALSE; + } ++#endif + + return TRUE; + }