mirror of
https://anongit.gentoo.org/git/repo/gentoo.git
synced 2025-06-09 22:54:10 +02:00
gstreamer is searched for unconditionally, but we don't have gstreamer-pbutils packaged yet, so that's a problem. Make it conditional for now (as it ought to be upstream either way if they're going to have an option for it). Noticed the upstream bug link and got the patch (tweaked style slightly after) from flint2's PR at https://github.com/gentoo/gentoo/pull/41133. Closes: https://bugs.gentoo.org/951609 Closes: https://bugs.gentoo.org/951611 Signed-off-by: Sam James <sam@gentoo.org>
104 lines
3.6 KiB
Diff
104 lines
3.6 KiB
Diff
https://bugs.gentoo.org/951611
|
|
https://bugs.gentoo.org/951609
|
|
https://github.com/flatpak/xdg-desktop-portal/issues/1650
|
|
https://github.com/flint2/gentoo/blob/7c8a4b4deb84826f20a7c8af1a0f125cd4942b4a/sys-apps/xdg-desktop-portal/files/xdg-desktop-portal-1.20.0-disable-gstreamer.patch
|
|
|
|
gstreamer is searched for unconditionally, but we don't have gstreamer-pbutils
|
|
packaged yet, so that's a problem. Make it conditional for now (as it ought
|
|
to be upstream either way if they're going to have an option for it).
|
|
--- a/meson.build
|
|
+++ b/meson.build
|
|
@@ -112,7 +112,7 @@ gio_unix_dep = dependency('gio-unix-2.0')
|
|
json_glib_dep = dependency('json-glib-1.0')
|
|
fuse3_dep = dependency('fuse3', version: '>= 3.10.0')
|
|
gdk_pixbuf_dep = dependency('gdk-pixbuf-2.0')
|
|
-gst_pbutils_dep = dependency('gstreamer-pbutils-1.0')
|
|
+gst_pbutils_dep = dependency('gstreamer-pbutils-1.0', required: get_option('sandboxed-sound-validation'))
|
|
geoclue_dep = dependency(
|
|
'libgeoclue-2.0',
|
|
version: '>= 2.5.2',
|
|
@@ -122,8 +122,8 @@ pipewire_dep = dependency('libpipewire-0.3', version: '>= 0.2.90')
|
|
libsystemd_dep = dependency('libsystemd', required: get_option('systemd'))
|
|
gudev_dep = dependency('gudev-1.0', required: get_option('gudev'))
|
|
umockdev_dep = dependency('umockdev-1.0', required: get_option('tests'))
|
|
-
|
|
-gst_inspect = find_program('gst-inspect-1.0', required: false)
|
|
+gst_inspect = find_program('gst-inspect-1.0', required: get_option('sandboxed-sound-validation'))
|
|
+have_gst_inspect = gst_inspect.found()
|
|
if gst_inspect.found()
|
|
have_wav_parse = run_command(
|
|
gst_inspect, 'wavparse', '--exists',
|
|
@@ -132,6 +132,7 @@ if gst_inspect.found()
|
|
else
|
|
have_wav_parse = false
|
|
endif
|
|
+
|
|
if have_wav_parse
|
|
config_h.set('HAVE_WAV_PARSE', 1)
|
|
endif
|
|
@@ -224,7 +225,7 @@ enable_tests = get_option('tests') \
|
|
.require(python.found() and python.language_version().version_compare('>=3.9'),
|
|
error_message: 'Python version >=3.9 is required') \
|
|
.require(umockdev_dep.found()) \
|
|
- .require(have_wav_parse,
|
|
+ .require(not have_wav_parse and not get_option('sandboxed-sound-validation').allowed(),
|
|
error_message: 'gst-inspect and the wavparse plugins are required') \
|
|
.allowed()
|
|
|
|
--- a/src/meson.build
|
|
+++ b/src/meson.build
|
|
@@ -206,14 +206,16 @@ if bwrap.found()
|
|
validate_sound_c_args += '-DHELPER="@0@"'.format(bwrap.full_path())
|
|
endif
|
|
|
|
-xdp_validate_sound = executable(
|
|
- 'xdg-desktop-portal-validate-sound',
|
|
- 'validate-sound.c',
|
|
- dependencies: [gst_pbutils_dep],
|
|
- c_args: validate_sound_c_args,
|
|
- install: true,
|
|
- install_dir: libexecdir,
|
|
-)
|
|
+if gst_inspect.found()
|
|
+ xdp_validate_sound = executable(
|
|
+ 'xdg-desktop-portal-validate-sound',
|
|
+ 'validate-sound.c',
|
|
+ dependencies: [gst_pbutils_dep],
|
|
+ c_args: validate_sound_c_args,
|
|
+ install: true,
|
|
+ install_dir: libexecdir,
|
|
+ )
|
|
+endif
|
|
|
|
configure_file(
|
|
input: 'xdg-desktop-portal-rewrite-launchers.service.in',
|
|
--- a/tests/meson.build
|
|
+++ b/tests/meson.build
|
|
@@ -94,7 +94,6 @@ pytest_files = [
|
|
'test_inhibit.py',
|
|
'test_inputcapture.py',
|
|
'test_location.py',
|
|
- 'test_notification.py',
|
|
'test_openuri.py',
|
|
'test_permission_store.py',
|
|
'test_print.py',
|
|
@@ -122,7 +121,6 @@ template_files = [
|
|
'templates/__init__.py',
|
|
'templates/inputcapture.py',
|
|
'templates/lockdown.py',
|
|
- 'templates/notification.py',
|
|
'templates/print.py',
|
|
'templates/remotedesktop.py',
|
|
'templates/screenshot.py',
|
|
@@ -131,6 +129,11 @@ template_files = [
|
|
'templates/wallpaper.py',
|
|
]
|
|
|
|
+if have_gst_inspect
|
|
+ template_files += ['templates/notification.py']
|
|
+ pytest_files += ['test_notification.py']
|
|
+endif
|
|
+
|
|
foreach pytest_file : pytest_files
|
|
testname = pytest_file.replace('.py', '').replace('test_', '')
|
|
test(
|