| 3 |
3 |
|
| 4 |
4 |
EAPI=8
|
| 5 |
5 |
|
| 6 |
|
PYTHON_COMPAT=( python3_{11..14} )
|
|
6 |
PYTHON_COMPAT=( python3_{12..14} )
|
| 7 |
7 |
|
| 8 |
8 |
inherit flag-o-matic gnome.org gnome2-utils meson python-any-r1 systemd xdg
|
| 9 |
9 |
|
| ... | ... | |
| 12 |
12 |
|
| 13 |
13 |
LICENSE="GPL-2+ LGPL-2.1+"
|
| 14 |
14 |
SLOT="3"
|
| 15 |
|
KEYWORDS="~alpha amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
|
| 16 |
|
IUSE="cue exif gif gsf +gstreamer iptc +iso +jpeg +pdf +playlist raw seccomp test +tiff upower webp +xml xmp xps"
|
|
15 |
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
|
|
16 |
IUSE="cue exif gsf +gstreamer iptc +iso +jpeg +pdf +playlist raw seccomp test +tiff upower webp +xml xmp xps zip"
|
| 17 |
17 |
|
| 18 |
18 |
REQUIRED_USE="cue? ( gstreamer )" # cue is currently only supported via gstreamer, not ffmpeg
|
| 19 |
|
#RESTRICT="!test? ( test )"
|
| 20 |
|
# Tests are completely broken, bug #922509, #948498, and more failures
|
| 21 |
|
RESTRICT="test"
|
|
19 |
RESTRICT="!test? ( test )"
|
| 22 |
20 |
|
| 23 |
21 |
# tracker-2.1.7 currently always depends on ICU (theoretically could be libunistring instead);
|
| 24 |
22 |
# so choose ICU over enca always here for the time being (ICU is preferred)
|
| 25 |
23 |
RDEPEND="
|
| 26 |
|
>=app-misc/tinysparql-3.8:3
|
|
24 |
>=app-misc/tinysparql-3.11:3
|
| 27 |
25 |
>=sys-apps/dbus-1.3.1
|
| 28 |
26 |
xmp? ( >=media-libs/exempi-2.1.0:= )
|
| 29 |
|
raw? ( media-libs/gexiv2:= )
|
|
27 |
raw? ( media-libs/gexiv2:0= )
|
| 30 |
28 |
>=dev-libs/glib-2.76:2
|
| 31 |
|
dev-libs/libgudev
|
| 32 |
29 |
>=dev-libs/gobject-introspection-1.82.0-r2
|
| 33 |
30 |
cue? ( media-libs/libcue:= )
|
| 34 |
|
exif? ( >=media-libs/libexif-0.6 )
|
|
31 |
exif? ( media-libs/gexiv2:0= )
|
| 35 |
32 |
gsf? ( >=gnome-extra/libgsf-1.14.24:= )
|
| 36 |
33 |
xps? ( app-text/libgxps )
|
| 37 |
|
iptc? ( media-libs/libiptcdata )
|
|
34 |
iptc? ( media-libs/gexiv2:0= )
|
| 38 |
35 |
jpeg? ( media-libs/libjpeg-turbo:0= )
|
| 39 |
36 |
iso? ( >=sys-libs/libosinfo-1.10.0-r1 )
|
| 40 |
37 |
>=media-libs/libpng-1.2:0=
|
| 41 |
38 |
seccomp? ( >=sys-libs/libseccomp-2.0 )
|
| 42 |
39 |
tiff? ( media-libs/tiff:= )
|
| 43 |
40 |
xml? ( >=dev-libs/libxml2-2.6:= )
|
|
41 |
zip? ( dev-libs/libzip )
|
| 44 |
42 |
pdf? ( >=app-text/poppler-0.16.0:=[cairo] )
|
| 45 |
43 |
playlist? ( >=dev-libs/totem-pl-parser-3:= )
|
| 46 |
44 |
webp? ( media-libs/libwebp )
|
| 47 |
45 |
|
| 48 |
|
gif? ( media-libs/giflib:= )
|
| 49 |
|
|
| 50 |
46 |
app-arch/gzip
|
| 51 |
47 |
|
| 52 |
48 |
upower? ( >=sys-power/upower-0.9.0:= )
|
| ... | ... | |
| 81 |
77 |
)
|
| 82 |
78 |
)
|
| 83 |
79 |
"
|
|
80 |
# Dummy extractor module has no sources (Meson sources=[]), producing a
|
|
81 |
# link-only .so without .GCC.command.line and triggering the ignored CFLAGS QA check.
|
|
82 |
# Introduced by: https://gitlab.gnome.org/GNOME/localsearch/-/commit/4eabf225cd26d6d84ee749661f7fa131f064a305.patch
|
|
83 |
QA_FLAGS_IGNORED="usr/lib64/localsearch-3.0/extract-modules/libextract-dummy.so"
|
|
84 |
|
|
85 |
PATCHES=(
|
|
86 |
"${FILESDIR}/${PN}-3.11.2-build-fix.patch"
|
|
87 |
)
|
| 84 |
88 |
|
| 85 |
89 |
python_check_deps() {
|
| 86 |
90 |
python_has_version -b \
|
| ... | ... | |
| 88 |
92 |
"dev-python/tap-py[${PYTHON_USEDEP}]"
|
| 89 |
93 |
}
|
| 90 |
94 |
|
| 91 |
|
PATCHES=(
|
| 92 |
|
# CVE-2026-1764, CVE-2026-1765, CVE-2026-1766, CVE-2026-1767
|
| 93 |
|
"${FILESDIR}/${PN}-3.10.2-CVE-2026-176x.patch"
|
| 94 |
|
)
|
| 95 |
|
|
| 96 |
95 |
pkg_setup() {
|
| 97 |
96 |
use test && python-any-r1_pkg_setup
|
| 98 |
97 |
}
|
| ... | ... | |
| 119 |
118 |
local emesonargs=(
|
| 120 |
119 |
-Dman=true
|
| 121 |
120 |
-Dextract=true
|
| 122 |
|
$(meson_use test functional_tests)
|
|
121 |
# Lots of broken tests with -Dfunctional_tests=true
|
|
122 |
# https://gitlab.gnome.org/GNOME/localsearch/-/issues/405
|
|
123 |
# bug #922509, #948498, and more failures
|
|
124 |
#$(meson_use test functional_tests)
|
|
125 |
-Dfunctional_tests=false
|
| 123 |
126 |
$(meson_use test tests_tap_protocol)
|
| 124 |
127 |
-Dminer_fs=true
|
| 125 |
128 |
-Dwriteback=true
|
| ... | ... | |
| 136 |
139 |
-Dlandlock=disabled
|
| 137 |
140 |
$(meson_feature cue)
|
| 138 |
141 |
$(meson_feature exif)
|
| 139 |
|
$(meson_feature gif)
|
|
142 |
-Dgif=disabled
|
| 140 |
143 |
$(meson_feature gsf)
|
| 141 |
144 |
$(meson_feature iptc)
|
| 142 |
145 |
$(meson_feature iso)
|
| ... | ... | |
| 164 |
167 |
src_test() {
|
| 165 |
168 |
export GSETTINGS_BACKEND="dconf" # Tests require dconf and explicitly check for it (env_reset set it to "memory")
|
| 166 |
169 |
export PYTHONPATH="${ESYSROOT}"/usr/$(get_libdir)/tinysparql-3.0
|
|
170 |
export TRACKER_TESTS_AWAIT_TIMEOUT = 60
|
| 167 |
171 |
# Many (extractor) tests fail since version 3.9.0 https://gitlab.gnome.org/GNOME/localsearch/-/issues/405
|
| 168 |
|
dbus-run-session meson test -C "${BUILD_DIR}" --print-errorlogs --no-suite examples || die 'tests failed'
|
|
172 |
dbus-run-session meson test -C "${BUILD_DIR}" --no-suite examples --print-errorlogs || die 'tests failed'
|
| 169 |
173 |
}
|
| 170 |
174 |
|
| 171 |
175 |
pkg_postinst() {
|