Compare commits
10 Commits
55ce3faebe
...
4119b9c755
Author | SHA1 | Date | |
---|---|---|---|
|
4119b9c755 | ||
|
df56024665 | ||
|
e56ff05d13 | ||
|
84a8f22442 | ||
|
cf909d6afc | ||
|
205197eb3f | ||
|
6652b55a1d | ||
|
9bbe3b9dba | ||
|
c605855d96 | ||
|
8c3e8e97ff |
1
.at-spi2-core.metadata
Normal file
1
.at-spi2-core.metadata
Normal file
@ -0,0 +1 @@
|
|||||||
|
f6830b2a618f61b4ace5f47104d87cd0697536d6 at-spi2-core-2.40.3.tar.xz
|
7
.gitignore
vendored
7
.gitignore
vendored
@ -124,3 +124,10 @@ at-spi2-core-0.3.4.tar.bz2
|
|||||||
/at-spi2-core-2.37.90.tar.xz
|
/at-spi2-core-2.37.90.tar.xz
|
||||||
/at-spi2-core-2.37.92.tar.xz
|
/at-spi2-core-2.37.92.tar.xz
|
||||||
/at-spi2-core-2.38.0.tar.xz
|
/at-spi2-core-2.38.0.tar.xz
|
||||||
|
/at-spi2-core-2.39.90.tar.xz
|
||||||
|
/at-spi2-core-2.39.90.1.tar.xz
|
||||||
|
/at-spi2-core-2.39.91.tar.xz
|
||||||
|
/at-spi2-core-2.40.0.tar.xz
|
||||||
|
/at-spi2-core-2.40.1.tar.xz
|
||||||
|
/at-spi2-core-2.40.2.tar.xz
|
||||||
|
/at-spi2-core-2.40.3.tar.xz
|
||||||
|
@ -1,14 +1,14 @@
|
|||||||
Name: at-spi2-core
|
Name: at-spi2-core
|
||||||
Version: 2.38.0
|
Version: 2.40.3
|
||||||
Release: 3%{?dist}
|
Release: 1%{?dist}
|
||||||
Summary: Protocol definitions and daemon for D-Bus at-spi
|
Summary: Protocol definitions and daemon for D-Bus at-spi
|
||||||
|
|
||||||
License: LGPLv2+
|
License: LGPLv2+
|
||||||
URL: http://www.linuxfoundation.org/en/AT-SPI_on_D-Bus
|
URL: http://www.linuxfoundation.org/en/AT-SPI_on_D-Bus
|
||||||
Source0: http://download.gnome.org/sources/at-spi2-core/2.38/%{name}-%{version}.tar.xz
|
Source0: http://download.gnome.org/sources/at-spi2-core/2.40/%{name}-%{version}.tar.xz
|
||||||
|
# scriptlet to set AT_SPI_BUS for XWayland apps that run as root (i.e. anaconda)
|
||||||
# https://gitlab.gnome.org/GNOME/at-spi2-core/-/issues/25
|
# https://bugzilla.redhat.com/show_bug.cgi?id=1821345
|
||||||
Patch0: fix-login-screen-a11y.patch
|
Source1: xwayland-session-scriptlet
|
||||||
|
|
||||||
BuildRequires: dbus-devel
|
BuildRequires: dbus-devel
|
||||||
BuildRequires: gettext
|
BuildRequires: gettext
|
||||||
@ -49,11 +49,11 @@ API documentation for libatspi.
|
|||||||
|
|
||||||
%install
|
%install
|
||||||
%meson_install
|
%meson_install
|
||||||
|
install -d %{buildroot}%{_sysconfdir}/xdg/Xwayland-session.d
|
||||||
|
install -m 0755 %{SOURCE1} %{buildroot}%{_sysconfdir}/xdg/Xwayland-session.d/00-at-spi
|
||||||
|
|
||||||
%{find_lang} %{name}
|
%{find_lang} %{name}
|
||||||
|
|
||||||
%ldconfig_scriptlets
|
|
||||||
|
|
||||||
%files -f %{name}.lang
|
%files -f %{name}.lang
|
||||||
%license COPYING
|
%license COPYING
|
||||||
%doc AUTHORS README
|
%doc AUTHORS README
|
||||||
@ -62,6 +62,12 @@ API documentation for libatspi.
|
|||||||
%dir %{_datadir}/defaults/at-spi2
|
%dir %{_datadir}/defaults/at-spi2
|
||||||
%{_datadir}/defaults/at-spi2/accessibility.conf
|
%{_datadir}/defaults/at-spi2/accessibility.conf
|
||||||
%{_sysconfdir}/xdg/autostart/at-spi-dbus-bus.desktop
|
%{_sysconfdir}/xdg/autostart/at-spi-dbus-bus.desktop
|
||||||
|
# the 'logical' owner of this dir is gnome-settings-daemon, but g-s-d
|
||||||
|
# indirectly depends on this package, so depending on it to provide
|
||||||
|
# this directory would create a circular dependency. so we just co-own
|
||||||
|
# it instead
|
||||||
|
%dir %{_sysconfdir}/xdg/Xwayland-session.d
|
||||||
|
%{_sysconfdir}/xdg/Xwayland-session.d/00-at-spi
|
||||||
%{_libdir}/libatspi.so.*
|
%{_libdir}/libatspi.so.*
|
||||||
%dir %{_libdir}/girepository-1.0
|
%dir %{_libdir}/girepository-1.0
|
||||||
%{_libdir}/girepository-1.0/Atspi-2.0.typelib
|
%{_libdir}/girepository-1.0/Atspi-2.0.typelib
|
||||||
@ -70,7 +76,6 @@ API documentation for libatspi.
|
|||||||
%{_datadir}/dbus-1/services/org.a11y.Bus.service
|
%{_datadir}/dbus-1/services/org.a11y.Bus.service
|
||||||
%{_userunitdir}/at-spi-dbus-bus.service
|
%{_userunitdir}/at-spi-dbus-bus.service
|
||||||
|
|
||||||
|
|
||||||
%files devel
|
%files devel
|
||||||
%{_libdir}/libatspi.so
|
%{_libdir}/libatspi.so
|
||||||
%{_datadir}/gtk-doc/html/libatspi
|
%{_datadir}/gtk-doc/html/libatspi
|
||||||
@ -80,6 +85,35 @@ API documentation for libatspi.
|
|||||||
%{_libdir}/pkgconfig/atspi-2.pc
|
%{_libdir}/pkgconfig/atspi-2.pc
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Mon Aug 23 2021 Kalev Lember <klember@redhat.com> - 2.40.3-1
|
||||||
|
- Update to 2.40.3
|
||||||
|
|
||||||
|
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 2.40.1-2
|
||||||
|
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
|
||||||
|
Related: rhbz#1991688
|
||||||
|
|
||||||
|
* Wed May 05 2021 Kalev Lember <klember@redhat.com> - 2.40.1-1
|
||||||
|
- Update to 2.40.1
|
||||||
|
|
||||||
|
* Thu Apr 15 2021 Adam Williamson <awilliam@redhat.com> - 2.40.0-3
|
||||||
|
- Install a scriptlet to fix AT_SPI_BUS for Xwayland apps run as root (#1821345)
|
||||||
|
|
||||||
|
* Thu Apr 15 2021 Mohan Boddu <mboddu@redhat.com> - 2.40.0-2
|
||||||
|
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
|
||||||
|
|
||||||
|
* Mon Mar 22 2021 Kalev Lember <klember@redhat.com> - 2.40.0-1
|
||||||
|
- Update to 2.40.0
|
||||||
|
|
||||||
|
* Mon Mar 15 2021 Kalev Lember <klember@redhat.com> - 2.39.91-1
|
||||||
|
- Update to 2.39.91
|
||||||
|
|
||||||
|
* Mon Feb 22 2021 Kalev Lember <klember@redhat.com> - 2.39.90.1-1
|
||||||
|
- Update to 2.39.90.1
|
||||||
|
|
||||||
|
* Wed Feb 17 2021 Kalev Lember <klember@redhat.com> - 2.39.90-1
|
||||||
|
- Update to 2.39.90
|
||||||
|
- Drop unused ldconfig_scriptlets macro call
|
||||||
|
|
||||||
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.38.0-3
|
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.38.0-3
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
||||||
|
|
||||||
|
@ -1,118 +0,0 @@
|
|||||||
From 260a4414ac26cc5e91dc56b6a10b5dda3dae22cd Mon Sep 17 00:00:00 2001
|
|
||||||
From: Michael Catanzaro <mcatanzaro@gnome.org>
|
|
||||||
Date: Thu, 24 Sep 2020 15:06:44 -0500
|
|
||||||
Subject: [PATCH] Don't use dbus-broker if not running under systemd
|
|
||||||
|
|
||||||
Since gdm@febeb9a9, gdm no longer runs a systemd user session, because
|
|
||||||
gdm supports multiseat but systemd only allows one graphical session per
|
|
||||||
user. Since gdm currently runs as the gdm user, that means we cannot use
|
|
||||||
systemd there. Benjamin Berg says we could fix that by changing gdm to
|
|
||||||
use temporary users for each seat, but that would be a lot of work.
|
|
||||||
|
|
||||||
Meanwhile, dbus-broker relies on systemd to autostart D-Bus services. So
|
|
||||||
if we are not running a systemd user session, nothing gets autostarted
|
|
||||||
in response to D-Bus calls. That means orca never gets any response to
|
|
||||||
its method calls to org.a11y.atspi.Registry, and we wind up with no
|
|
||||||
accessibility on the gnome-shell login screen.
|
|
||||||
|
|
||||||
Fix this by implementing Benjamin's suggested check to see if we are
|
|
||||||
running under systemd before using dbus-broker. So now we will use
|
|
||||||
dbus-daemon on the login screen, but we will still use dbus-broker for
|
|
||||||
the user session (except in distros that still prefer dbus-daemon...
|
|
||||||
which is actually the default configuration). libsystemd is added as a
|
|
||||||
build dependency whenever built with dbus-broker support, which should
|
|
||||||
be uncontroversial because it won't work without systemd.
|
|
||||||
|
|
||||||
I expect dbus-daemon is going to live alongside dbus-broker for a long
|
|
||||||
time, because it seems very hard for us to migrate fully.
|
|
||||||
|
|
||||||
Big thanks to Benjamin Berg for discovering the problem and suggesting
|
|
||||||
this solution.
|
|
||||||
|
|
||||||
Fixes #25
|
|
||||||
---
|
|
||||||
bus/at-spi-bus-launcher.c | 18 ++++++++++++++++++
|
|
||||||
bus/meson.build | 11 ++++++++++-
|
|
||||||
2 files changed, 28 insertions(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/bus/at-spi-bus-launcher.c b/bus/at-spi-bus-launcher.c
|
|
||||||
index 362fd05f..d7c66900 100644
|
|
||||||
--- a/bus/at-spi-bus-launcher.c
|
|
||||||
+++ b/bus/at-spi-bus-launcher.c
|
|
||||||
@@ -39,6 +39,9 @@
|
|
||||||
#include <X11/Xlib.h>
|
|
||||||
#include <X11/Xatom.h>
|
|
||||||
#endif
|
|
||||||
+#ifdef DBUS_BROKER
|
|
||||||
+#include <systemd/sd-login.h>
|
|
||||||
+#endif
|
|
||||||
|
|
||||||
typedef enum {
|
|
||||||
A11Y_BUS_STATE_IDLE = 0,
|
|
||||||
@@ -392,11 +395,26 @@ static gboolean
|
|
||||||
ensure_a11y_bus_broker (A11yBusLauncher *app, char *config_path)
|
|
||||||
{
|
|
||||||
char *argv[] = { DBUS_BROKER, config_path, "--scope", "user", NULL };
|
|
||||||
+ char *unit;
|
|
||||||
struct sockaddr_un addr = { .sun_family = AF_UNIX };
|
|
||||||
socklen_t addr_len = sizeof(addr);
|
|
||||||
GPid pid;
|
|
||||||
GError *error = NULL;
|
|
||||||
|
|
||||||
+ /* This detects whether we are running under systemd. We only try to
|
|
||||||
+ * use dbus-broker if we are running under systemd because D-Bus
|
|
||||||
+ * service activation won't work otherwise.
|
|
||||||
+ */
|
|
||||||
+ if (sd_pid_get_user_unit (getpid (), &unit) >= 0)
|
|
||||||
+ {
|
|
||||||
+ free (unit);
|
|
||||||
+ }
|
|
||||||
+ else
|
|
||||||
+ {
|
|
||||||
+ app->state = A11Y_BUS_STATE_ERROR;
|
|
||||||
+ return FALSE;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
if ((app->listenfd = socket (PF_UNIX, SOCK_STREAM | SOCK_NONBLOCK, 0)) < 0)
|
|
||||||
g_error ("Failed to create listening socket: %s", strerror (errno));
|
|
||||||
|
|
||||||
diff --git a/bus/meson.build b/bus/meson.build
|
|
||||||
index 0fff5a89..f6c32c99 100644
|
|
||||||
--- a/bus/meson.build
|
|
||||||
+++ b/bus/meson.build
|
|
||||||
@@ -48,13 +48,16 @@ else
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
+needs_systemd = false
|
|
||||||
if get_option('dbus_broker') != 'default'
|
|
||||||
launcher_args += '-DDBUS_BROKER="@0@"'.format(get_option('dbus_broker'))
|
|
||||||
+ needs_systemd = true
|
|
||||||
else
|
|
||||||
dbus_broker = find_program('dbus-broker-launch',
|
|
||||||
required: false)
|
|
||||||
if dbus_broker.found()
|
|
||||||
launcher_args += '-DDBUS_BROKER="@0@"'.format(dbus_broker.path())
|
|
||||||
+ needs_systemd = true
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
@@ -62,9 +65,15 @@ if get_option('default_bus') == 'dbus-broker'
|
|
||||||
launcher_args += '-DWANT_DBUS_BROKER'
|
|
||||||
endif
|
|
||||||
|
|
||||||
+if needs_systemd
|
|
||||||
+ systemd_dep = dependency('libsystemd')
|
|
||||||
+else
|
|
||||||
+ systemd_dep = dependency('', required: false)
|
|
||||||
+endif
|
|
||||||
+
|
|
||||||
executable('at-spi-bus-launcher', 'at-spi-bus-launcher.c',
|
|
||||||
include_directories: [ root_inc, include_directories('.') ],
|
|
||||||
- dependencies: [ gio_dep, x11_deps ],
|
|
||||||
+ dependencies: [ gio_dep, systemd_dep, x11_deps ],
|
|
||||||
c_args: launcher_args,
|
|
||||||
install: true,
|
|
||||||
install_dir: atspi_libexecdir)
|
|
||||||
--
|
|
||||||
GitLab
|
|
6
gating.yaml
Normal file
6
gating.yaml
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
--- !Policy
|
||||||
|
product_versions:
|
||||||
|
- rhel-9
|
||||||
|
decision_context: osci_compose_gate
|
||||||
|
rules:
|
||||||
|
- !PassingTestCaseRule {test_case_name: desktop-qe.desktop-ci.tier1-gating.functional}
|
2
sources
2
sources
@ -1 +1 @@
|
|||||||
SHA512 (at-spi2-core-2.38.0.tar.xz) = 3a1eb27cff6e0dd03119b4f8361a3b6037b26c511e80e2d003d1d5c41fede6d49eb5e0ac1ee45cfb4f3ca8e53292a7e2da67df80be28e77014775e41777a96c1
|
SHA512 (at-spi2-core-2.40.3.tar.xz) = 85adf3da0a369d7f3481646a495a9c4c3337da3ae6a20ce8c924f8621d3d6ed1d9461bfac0e821dfe86e4ad6b930e4fd65d24c26401cbea644ef4951e5dda5ce
|
||||||
|
3
xwayland-session-scriptlet
Normal file
3
xwayland-session-scriptlet
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
xprop -root -format AT_SPI_BUS 8s -set 'AT_SPI_BUS' "$( busctl call --user org.a11y.Bus /org/a11y/bus org.a11y.Bus GetAddress | sed 's/s "\(.*\)"/\1/' )"
|
Loading…
Reference in New Issue
Block a user