2021-01-21 17:00:13 +00:00
|
|
|
{ lib, stdenv
|
2018-06-02 12:48:43 +00:00
|
|
|
, fetchurl
|
|
|
|
|
|
|
|
, meson
|
|
|
|
, ninja
|
2021-01-19 06:50:56 +00:00
|
|
|
, pkg-config
|
2018-12-02 11:41:15 +00:00
|
|
|
, gobject-introspection
|
2019-08-23 02:30:31 +00:00
|
|
|
, gsettings-desktop-schemas
|
|
|
|
, makeWrapper
|
2018-06-02 12:48:43 +00:00
|
|
|
|
|
|
|
, dbus
|
|
|
|
, glib
|
2019-11-30 23:11:47 +00:00
|
|
|
, dconf
|
2018-06-02 12:48:43 +00:00
|
|
|
, libX11
|
2018-06-05 15:57:18 +00:00
|
|
|
, libXtst # at-spi2-core can be build without X support, but due it is a client-side library, GUI-less usage is a very rare case
|
2018-06-02 12:48:43 +00:00
|
|
|
, libXi
|
2021-03-21 00:31:55 +00:00
|
|
|
, libXext
|
2018-06-05 15:57:18 +00:00
|
|
|
|
2021-05-07 21:18:14 +00:00
|
|
|
, gnome # To pass updateScript
|
2018-06-02 12:48:43 +00:00
|
|
|
}:
|
2012-07-10 16:03:13 +00:00
|
|
|
|
2014-10-21 18:47:30 +00:00
|
|
|
stdenv.mkDerivation rec {
|
2018-06-05 15:57:18 +00:00
|
|
|
pname = "at-spi2-core";
|
2021-09-25 13:22:10 +00:00
|
|
|
version = "2.42.0";
|
2012-07-10 16:03:13 +00:00
|
|
|
|
|
|
|
src = fetchurl {
|
2021-01-21 17:00:13 +00:00
|
|
|
url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
2021-09-25 13:22:10 +00:00
|
|
|
sha256 = "11p3lvmbm0hfck3p5xwxxycln8x0cf7l68jjz6an2g7sjh7a2pab";
|
2012-07-10 16:03:13 +00:00
|
|
|
};
|
|
|
|
|
2016-08-29 00:30:01 +00:00
|
|
|
outputs = [ "out" "dev" ];
|
2015-07-26 11:43:49 +00:00
|
|
|
|
2021-01-19 06:50:56 +00:00
|
|
|
nativeBuildInputs = [ meson ninja pkg-config gobject-introspection makeWrapper ];
|
2021-03-21 00:31:55 +00:00
|
|
|
# libXext is a transitive dependency of libXi
|
|
|
|
buildInputs = [ libX11 libXtst libXi libXext ];
|
2020-01-20 18:16:21 +00:00
|
|
|
# In atspi-2.pc dbus-1 glib-2.0
|
|
|
|
propagatedBuildInputs = [ dbus glib ];
|
2018-04-25 03:20:18 +00:00
|
|
|
|
2018-07-17 23:10:30 +00:00
|
|
|
doCheck = false; # fails with "AT-SPI: Couldn't connect to accessibility bus. Is at-spi-bus-launcher running?"
|
|
|
|
|
2019-08-14 18:18:49 +00:00
|
|
|
# Provide dbus-daemon fallback when it is not already running when
|
|
|
|
# at-spi2-bus-launcher is executed. This allows us to avoid
|
|
|
|
# including the entire dbus closure in libraries linked with
|
|
|
|
# the at-spi2-core libraries.
|
|
|
|
mesonFlags = [ "-Ddbus_daemon=/run/current-system/sw/bin/dbus-daemon" ];
|
|
|
|
|
2018-06-05 15:57:18 +00:00
|
|
|
passthru = {
|
2021-05-07 21:18:14 +00:00
|
|
|
updateScript = gnome.updateScript {
|
2018-06-05 15:57:18 +00:00
|
|
|
packageName = pname;
|
2021-03-20 23:57:24 +00:00
|
|
|
versionPolicy = "odd-unstable";
|
2018-06-05 15:57:18 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
|
2019-08-23 02:30:31 +00:00
|
|
|
postFixup = ''
|
|
|
|
# Cannot use wrapGAppsHook'due to a dependency cycle
|
|
|
|
wrapProgram $out/libexec/at-spi-bus-launcher \
|
2021-01-21 17:00:13 +00:00
|
|
|
--prefix GIO_EXTRA_MODULES : "${lib.getLib dconf}/lib/gio/modules" \
|
2019-08-23 02:30:31 +00:00
|
|
|
--prefix XDG_DATA_DIRS : ${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name}
|
|
|
|
'';
|
|
|
|
|
2021-01-21 17:00:13 +00:00
|
|
|
meta = with lib; {
|
2018-06-02 12:48:43 +00:00
|
|
|
description = "Assistive Technology Service Provider Interface protocol definitions and daemon for D-Bus";
|
2020-04-01 01:11:51 +00:00
|
|
|
homepage = "https://gitlab.gnome.org/GNOME/at-spi2-core";
|
2019-09-02 16:43:57 +00:00
|
|
|
license = licenses.lgpl21Plus;
|
2020-04-01 12:40:51 +00:00
|
|
|
maintainers = teams.gnome.members;
|
2015-03-31 19:23:26 +00:00
|
|
|
platforms = platforms.unix;
|
2014-01-10 00:09:26 +00:00
|
|
|
};
|
2012-07-10 16:03:13 +00:00
|
|
|
}
|