1 |
commit: 15071bf1c50b95c626054e03422def09d4580ac6 |
2 |
Author: Mart Raudsepp <leio <AT> gentoo <DOT> org> |
3 |
AuthorDate: Wed Dec 23 21:38:04 2020 +0000 |
4 |
Commit: Mart Raudsepp <leio <AT> gentoo <DOT> org> |
5 |
CommitDate: Wed Dec 23 21:38:14 2020 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=15071bf1 |
7 |
|
8 |
app-misc/tracker-miners: bump to 2.3.5 for glib-2.66 compat |
9 |
|
10 |
* glib-2.66 started using statx syscall for some operations that |
11 |
tracker-miners uses, causing SIGSYS aborts on ~arch systems. This |
12 |
version allows statx in tracker-miners sandbox, but also makes it |
13 |
not autostart in the first place, therefore: |
14 |
* Keep autostart as we don't have tracker-3 yet (and grab a patch to |
15 |
have the build work better with it enabled). When we add tracker-3, |
16 |
we need to revbump tracker-miners to disable autostart and drop the |
17 |
tracker-miners-3 blocker |
18 |
* Prepare app-misc/tracker dep atom for upcoming parallel-installable |
19 |
tracker-3 |
20 |
|
21 |
Closes: https://bugs.gentoo.org/754315 |
22 |
Package-Manager: Portage-3.0.12, Repoman-3.0.2 |
23 |
Signed-off-by: Mart Raudsepp <leio <AT> gentoo.org> |
24 |
|
25 |
app-misc/tracker-miners/Manifest | 1 + |
26 |
.../files/2.3.5-fix-autostart-build.patch | 80 ++++++++++ |
27 |
.../tracker-miners/tracker-miners-2.3.5.ebuild | 162 +++++++++++++++++++++ |
28 |
3 files changed, 243 insertions(+) |
29 |
|
30 |
diff --git a/app-misc/tracker-miners/Manifest b/app-misc/tracker-miners/Manifest |
31 |
index 3c7d6656ac9..cb04f715094 100644 |
32 |
--- a/app-misc/tracker-miners/Manifest |
33 |
+++ b/app-misc/tracker-miners/Manifest |
34 |
@@ -1,2 +1,3 @@ |
35 |
DIST tracker-miners-2.3.3.tar.xz 3144712 BLAKE2B a5789cce89dedd7cf35548b730acc80eb9b8bcbc8338c4ee55b07c97af4b9fbadc46bf0fdc552a3384e995d71aca0defe2d57dc21d99f775dee6f33f69e0aa9b SHA512 1e845aaa5412125df84298a05f29888b3872c0f4d9251f026dd51846831fcd4aa0c6965c85752d7b6ed6548268d21f0fd2a8427c922a5dc0afcd294286c607e2 |
36 |
DIST tracker-miners-2.3.4.tar.xz 3128484 BLAKE2B f52c46123c95252f8f16df824ff7498a8f44698cea13fa78653d7733590bef0a502139fea686b4fd9012f7569a6f946e1dbf8e053a16c474230c733d37103a3f SHA512 ceddddfa6c3151b5caeb197a4ae4dbe24fa2674e807bf66a9cc72227b60ee295171b52c2edb35236a3fbf9d8803678f55f8b990864a7a3a32bf362b0739d03ba |
37 |
+DIST tracker-miners-2.3.5.tar.xz 3128428 BLAKE2B a45c642fb03433a6cf12d0904a82498aa6645f97ac70b1cfe04cc3b739b33b5d3fe307cd96f45a5a4af8927f029b4eade60195d2f72c1a684aa26ee723025d8a SHA512 13da1106bc1bc8a550093c4d1bf4336a205f636e0487dc9d42cee9ce2666eca73ead479fd04f03ccf15acb4e3b27a1c898860f63bdfa69ca74b02aa041731fa9 |
38 |
|
39 |
diff --git a/app-misc/tracker-miners/files/2.3.5-fix-autostart-build.patch b/app-misc/tracker-miners/files/2.3.5-fix-autostart-build.patch |
40 |
new file mode 100644 |
41 |
index 00000000000..85f201bcf05 |
42 |
--- /dev/null |
43 |
+++ b/app-misc/tracker-miners/files/2.3.5-fix-autostart-build.patch |
44 |
@@ -0,0 +1,80 @@ |
45 |
+From e7b6d5f8b7541a4693c61be5d210fad85a5c9d06 Mon Sep 17 00:00:00 2001 |
46 |
+From: Carlos Garnacho <carlosg@×××××.org> |
47 |
+Date: Sat, 12 Sep 2020 13:37:11 +0200 |
48 |
+Subject: [PATCH] build: Fix -Dautostart=true |
49 |
+ |
50 |
+Meson doesn't seem to like that we use install_data() with custom target |
51 |
+results. Make this option toggle the "install" keyword argument in the |
52 |
+custom target itself. |
53 |
+--- |
54 |
+ src/miners/fs/meson.build | 10 +++------- |
55 |
+ src/miners/rss/meson.build | 10 +++------- |
56 |
+ src/tracker-extract/meson.build | 10 +++------- |
57 |
+ 3 files changed, 9 insertions(+), 21 deletions(-) |
58 |
+ |
59 |
+diff --git a/src/miners/fs/meson.build b/src/miners/fs/meson.build |
60 |
+index a770516c9..5a23bd06c 100644 |
61 |
+--- a/src/miners/fs/meson.build |
62 |
++++ b/src/miners/fs/meson.build |
63 |
+@@ -54,13 +54,9 @@ desktop_file_untranslated = configure_file( |
64 |
+ desktop_file = custom_target('tracker-miner-fs-desktop-file', |
65 |
+ input: desktop_file_untranslated, |
66 |
+ output: 'tracker-miner-fs.desktop', |
67 |
+- command: ['intltool-merge', '--quiet', '--desktop-style', '--utf8', join_paths(meson.source_root(), 'po'), '@INPUT@', '@OUTPUT@']) |
68 |
+- |
69 |
+-if get_option('autostart') |
70 |
+- install_data(desktop_file, |
71 |
+- install: true, |
72 |
+- install_dir: join_paths(get_option('sysconfdir'), 'xdg/autostart')) |
73 |
+-endif |
74 |
++ command: ['intltool-merge', '--quiet', '--desktop-style', '--utf8', join_paths(meson.source_root(), 'po'), '@INPUT@', '@OUTPUT@'], |
75 |
++ install: get_option('autostart'), |
76 |
++ install_dir: join_paths(get_option('sysconfdir'), 'xdg/autostart')) |
77 |
+ |
78 |
+ if install_systemd_user_services |
79 |
+ configure_file( |
80 |
+diff --git a/src/miners/rss/meson.build b/src/miners/rss/meson.build |
81 |
+index f540befe2..0bf0bb765 100644 |
82 |
+--- a/src/miners/rss/meson.build |
83 |
++++ b/src/miners/rss/meson.build |
84 |
+@@ -31,13 +31,9 @@ desktop_file_untranslated = configure_file( |
85 |
+ desktop_file = custom_target('tracker-miner-rss-desktop-file', |
86 |
+ input: desktop_file_untranslated, |
87 |
+ output: 'tracker-miner-rss.desktop', |
88 |
+- command: ['intltool-merge', '--quiet', '--desktop-style', '--utf8', join_paths(meson.source_root(), 'po'), '@INPUT@', '@OUTPUT@']) |
89 |
+- |
90 |
+-if get_option('autostart') |
91 |
+- install_data(desktop_file, |
92 |
+- install: true, |
93 |
+- install_dir: join_paths(get_option('sysconfdir'), 'xdg/autostart')) |
94 |
+-endif |
95 |
++ command: ['intltool-merge', '--quiet', '--desktop-style', '--utf8', join_paths(meson.source_root(), 'po'), '@INPUT@', '@OUTPUT@'], |
96 |
++ install: get_option('autostart'), |
97 |
++ install_dir: join_paths(get_option('sysconfdir'), 'xdg/autostart')) |
98 |
+ |
99 |
+ if install_systemd_user_services |
100 |
+ configure_file( |
101 |
+diff --git a/src/tracker-extract/meson.build b/src/tracker-extract/meson.build |
102 |
+index 239907179..aec37bfcc 100644 |
103 |
+--- a/src/tracker-extract/meson.build |
104 |
++++ b/src/tracker-extract/meson.build |
105 |
+@@ -189,13 +189,9 @@ desktop_file_untranslated = configure_file( |
106 |
+ desktop_file = custom_target('tracker-extract-desktop-file', |
107 |
+ input: desktop_file_untranslated, |
108 |
+ output: 'tracker-extract.desktop', |
109 |
+- command: ['intltool-merge', '--quiet', '--desktop-style', '--utf8', join_paths(meson.source_root(), 'po'), '@INPUT@', '@OUTPUT@']) |
110 |
+- |
111 |
+-if get_option('autostart') |
112 |
+- install_data(desktop_file, |
113 |
+- install: true, |
114 |
+- install_dir: join_paths(get_option('sysconfdir'), 'xdg/autostart')) |
115 |
+-endif |
116 |
++ command: ['intltool-merge', '--quiet', '--desktop-style', '--utf8', join_paths(meson.source_root(), 'po'), '@INPUT@', '@OUTPUT@'], |
117 |
++ install: get_option('autostart'), |
118 |
++ install_dir: join_paths(get_option('sysconfdir'), 'xdg/autostart')) |
119 |
+ |
120 |
+ if install_systemd_user_services |
121 |
+ configure_file( |
122 |
+-- |
123 |
+2.27.0 |
124 |
+ |
125 |
|
126 |
diff --git a/app-misc/tracker-miners/tracker-miners-2.3.5.ebuild b/app-misc/tracker-miners/tracker-miners-2.3.5.ebuild |
127 |
new file mode 100644 |
128 |
index 00000000000..a6259ef3ba7 |
129 |
--- /dev/null |
130 |
+++ b/app-misc/tracker-miners/tracker-miners-2.3.5.ebuild |
131 |
@@ -0,0 +1,162 @@ |
132 |
+# Copyright 1999-2020 Gentoo Authors |
133 |
+# Distributed under the terms of the GNU General Public License v2 |
134 |
+ |
135 |
+EAPI=7 |
136 |
+PYTHON_COMPAT=( python3_{6,7,8} ) |
137 |
+ |
138 |
+inherit gnome.org gnome2-utils meson python-any-r1 systemd xdg |
139 |
+ |
140 |
+DESCRIPTION="Collection of data extractors for Tracker/Nepomuk" |
141 |
+HOMEPAGE="https://wiki.gnome.org/Projects/Tracker" |
142 |
+ |
143 |
+LICENSE="GPL-2+ LGPL-2.1+" |
144 |
+SLOT="0" |
145 |
+IUSE="cue exif ffmpeg gif gsf +gstreamer iptc +iso +jpeg +pdf +playlist raw +rss seccomp test +tiff upower +xml xmp xps" |
146 |
+ |
147 |
+REQUIRED_USE="cue? ( gstreamer )" # cue is currently only supported via gstreamer, not ffmpeg |
148 |
+RESTRICT="!test? ( test )" |
149 |
+ |
150 |
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86" |
151 |
+ |
152 |
+# tracker-2.1.7 currently always depends on ICU (theoretically could be libunistring instead); so choose ICU over enca always here for the time being (ICU is preferred) |
153 |
+RDEPEND=" |
154 |
+ >=dev-libs/glib-2.46:2 |
155 |
+ >=app-misc/tracker-2.2.0:0= |
156 |
+ gstreamer? ( |
157 |
+ media-libs/gstreamer:1.0 |
158 |
+ media-libs/gst-plugins-base:1.0 |
159 |
+ media-plugins/gst-plugins-meta:1.0 ) |
160 |
+ !gstreamer? ( |
161 |
+ ffmpeg? ( media-video/ffmpeg:0= ) ) |
162 |
+ |
163 |
+ >=sys-apps/dbus-1.3.1 |
164 |
+ xmp? ( >=media-libs/exempi-2.1.0:= ) |
165 |
+ raw? ( media-libs/gexiv2 ) |
166 |
+ >=dev-libs/icu-4.8.1.2:= |
167 |
+ cue? ( media-libs/libcue:= ) |
168 |
+ exif? ( >=media-libs/libexif-0.6 ) |
169 |
+ gsf? ( >=gnome-extra/libgsf-1.14.24:= ) |
170 |
+ xps? ( app-text/libgxps ) |
171 |
+ iptc? ( media-libs/libiptcdata ) |
172 |
+ jpeg? ( virtual/jpeg:0 ) |
173 |
+ iso? ( >=sys-libs/libosinfo-0.2.10 ) |
174 |
+ >=media-libs/libpng-1.2:0= |
175 |
+ seccomp? ( >=sys-libs/libseccomp-2.0 ) |
176 |
+ tiff? ( media-libs/tiff:0 ) |
177 |
+ xml? ( >=dev-libs/libxml2-2.6 ) |
178 |
+ pdf? ( >=app-text/poppler-0.16.0[cairo] ) |
179 |
+ playlist? ( >=dev-libs/totem-pl-parser-3:= ) |
180 |
+ upower? ( >=sys-power/upower-0.9.0 ) |
181 |
+ sys-libs/zlib:0 |
182 |
+ gif? ( media-libs/giflib:= ) |
183 |
+ |
184 |
+ rss? ( >=net-libs/libgrss-0.7:0 ) |
185 |
+ app-arch/gzip |
186 |
+" |
187 |
+DEPEND="${RDEPEND}" |
188 |
+BDEPEND=" |
189 |
+ dev-util/glib-utils |
190 |
+ dev-util/gdbus-codegen |
191 |
+ |
192 |
+ >=dev-util/intltool-0.40.0 |
193 |
+ >=sys-devel/gettext-0.19.8 |
194 |
+ virtual/pkgconfig |
195 |
+ test? ( ${PYTHON_DEPS} |
196 |
+ gstreamer? ( |
197 |
+ media-libs/gstreamer:1.0[introspection] |
198 |
+ || ( media-plugins/gst-plugins-libav:1.0 |
199 |
+ media-plugins/gst-plugins-openh264:1.0 ) |
200 |
+ ) ) |
201 |
+" |
202 |
+# intltool-merge manually called in meson.build in 2.3.5; might be properly gone by 3.0 |
203 |
+RDEPEND="${RDEPEND} |
204 |
+ !>=app-misc/tracker-miners-2.99 |
205 |
+" # Incompatible revision for (upcoming) parallel-installable tracker-miners-3 due to autostart; a revision that disables autostart and drops the blocker to be added together with v3 |
206 |
+ |
207 |
+PATCHES=( |
208 |
+ "${FILESDIR}"/${PV}-fix-autostart-build.patch |
209 |
+) |
210 |
+ |
211 |
+pkg_setup() { |
212 |
+ use test && python-any-r1_pkg_setup |
213 |
+} |
214 |
+ |
215 |
+src_prepare() { |
216 |
+ # Avoid gst-inspect calls that may trigger sandbox; instead assume the detection will succeed and add the needed test deps for that |
217 |
+ if use gstreamer; then |
218 |
+ sed -i -e 's:detect-h264-codec.sh:/bin/true:' tests/functional-tests/meson.build || die |
219 |
+ else |
220 |
+ sed -i -e 's:detect-h264-codec.sh:/bin/false:' tests/functional-tests/meson.build || die |
221 |
+ fi |
222 |
+ xdg_src_prepare |
223 |
+ gnome2_environment_reset # sets gstreamer safety variables |
224 |
+} |
225 |
+ |
226 |
+src_configure() { |
227 |
+ local media_extractor="none" |
228 |
+ if use gstreamer ; then |
229 |
+ media_extractor="gstreamer" |
230 |
+ elif use ffmpeg ; then |
231 |
+ media_extractor="libav" |
232 |
+ fi |
233 |
+ |
234 |
+ local emesonargs=( |
235 |
+ -Dtracker_core=system |
236 |
+ |
237 |
+ -Ddocs=true |
238 |
+ -Dextract=true |
239 |
+ -Dfunctional_tests=false # currently broken, may fare better in 2.2.3 or 2.3; if re-enabled re-add dconf test dep |
240 |
+ #$(meson_use test functional_tests) |
241 |
+ -Dminer_fs=true |
242 |
+ $(meson_use rss miner_rss) |
243 |
+ -Dwriteback=true |
244 |
+ -Dabiword=true |
245 |
+ -Ddvi=true |
246 |
+ -Dicon=true |
247 |
+ -Dmp3=true |
248 |
+ -Dps=true |
249 |
+ -Dtext=true |
250 |
+ -Dunzip_ps_gz_files=true # spawns gunzip |
251 |
+ |
252 |
+ $(meson_feature cue) |
253 |
+ $(meson_feature exif) |
254 |
+ -Dflac=disabled # never use external flac extractor - gst-plugins-flac is for that; ffmpeg one is maybe worse, but that's non-default |
255 |
+ $(meson_feature gif) |
256 |
+ $(meson_feature gsf) |
257 |
+ $(meson_feature iptc) |
258 |
+ $(meson_feature iso) |
259 |
+ $(meson_feature jpeg) |
260 |
+ $(meson_feature pdf) |
261 |
+ $(meson_feature playlist) |
262 |
+ -Dpng=enabled |
263 |
+ $(meson_feature raw) |
264 |
+ $(meson_feature tiff) |
265 |
+ -Dvorbis=disabled # never use external vorbis extractor - gst-plugins-base[vorbis] is for that; ffmpeg one is maybe worse, but that's non-default |
266 |
+ $(meson_feature xml) |
267 |
+ $(meson_feature xmp) |
268 |
+ $(meson_feature xps) |
269 |
+ |
270 |
+ -Dbattery_detection=$(usex upower upower none) |
271 |
+ -Dcharset_detection=icu # enca is a possibility, but right now we have tracker core always dep on icu and icu is preferred over enca |
272 |
+ -Dgeneric_media_extractor=${media_extractor} |
273 |
+ # gupnp gstreamer_backend is in bad state, upstream suggests to use discoverer, which is the default |
274 |
+ -Dautostart=true # turn to false to co-exist with tracker-miners-3 |
275 |
+ -Dsystemd_user_services="$(systemd_get_userunitdir)" |
276 |
+ ) |
277 |
+ meson_src_configure |
278 |
+} |
279 |
+ |
280 |
+src_test() { |
281 |
+ export GSETTINGS_BACKEND="dconf" # Tests require dconf and explicitly check for it (env_reset set it to "memory") |
282 |
+ dbus-run-session meson test -C "${BUILD_DIR}" || die 'tests failed' |
283 |
+} |
284 |
+ |
285 |
+pkg_postinst() { |
286 |
+ xdg_pkg_postinst |
287 |
+ gnome2_schemas_update |
288 |
+} |
289 |
+ |
290 |
+pkg_postrm() { |
291 |
+ xdg_pkg_postrm |
292 |
+ gnome2_schemas_update |
293 |
+} |