Summary: | app-accessibility/espeak-ng-1.50-r3 fails with sandbox violation (C: /usr/libexec/gstreamer-1.0/gst-plugin-scanner -l /usr/bin/pulseaudio, P: /dev/dri/renderD128) | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | crabbed halo ablution <crabbedhaloablution> |
Component: | Current packages | Assignee: | William Hubbs <williamh> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | gstreamer, igor.v.kovalenko, jstein, sam |
Priority: | Normal | Keywords: | PullRequest |
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
See Also: | https://github.com/gentoo/gentoo/pull/24878 | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
app-accessibility:espeak-ng-1.50-r3:20220402-062753.log
app-accessibility:espeak-ng-1.50-r3:20220214-051527.log emerge --info app-accessibility/espeak-ng strace of sandbox violation |
Description
crabbed halo ablution
2022-04-02 12:27:28 UTC
Created attachment 768505 [details]
app-accessibility:espeak-ng-1.50-r3:20220402-062753.log
NEW FAILING BUILD LOG
Created attachment 768506 [details]
app-accessibility:espeak-ng-1.50-r3:20220214-051527.log
OLD SUCCESSFUL BUILD LOG
Created attachment 768507 [details]
emerge --info app-accessibility/espeak-ng
What verssion of gst? (In reply to Sam James from comment #4) > What verssion of gst? Version 1.20.1 Created attachment 768545 [details]
strace of sandbox violation
strace log resulting from the command, lzma-compressed:
MAKEOPTS=-j1 strace ebuild /var/db/repos/gentoo/app-accessibility/espeak-ng/espeak-ng-1.50-r3.ebuild clean compile 2> /tmp/espeak-ng-strace.log
Looks like compiled espeak-ng binary is invoked with pulseaudio autospawn enabled while pulseaudio is not accessible by client library (e.g. not running or not listening.) *and* pulsaudio is built with USE gstreamer. Workaround is to set PULSE_SERVER="" before launching compiled espeak-ng binary, which would effectively disable autospawning function. (In reply to Igor V. Kovalenko from comment #7) > Looks like compiled espeak-ng binary is invoked with pulseaudio autospawn > enabled while pulseaudio is not accessible by client library (e.g. not > running or not listening.) *and* pulsaudio is built with USE gstreamer. > > Workaround is to set PULSE_SERVER="" before launching compiled espeak-ng > binary, which would effectively disable autospawning function. This is exactly the case. Between the successful and unsuccessful compilations, I had changed to pipewire, but only half-assed. I neglected to edit /etc/pulse/{daemon,client}.conf to disable autospawn because I figured I would just uninstall pulseaudio. That proved to be impossible while maintaining pulseaudio support through pipewire so I dropped the ball on the .conf changes. I have submitted https://github.com/gentoo/gentoo/pull/24878 with the above proposed fix. i-garrison and sam_ from IRC did most of the work with finding the root cause of the bug. The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cccecafab917464137d22cec82e7458d6f5c277e commit cccecafab917464137d22cec82e7458d6f5c277e Author: William Hubbs <williamh@gentoo.org> AuthorDate: 2022-04-04 02:17:05 +0000 Commit: William Hubbs <williamh@gentoo.org> CommitDate: 2022-04-04 02:18:44 +0000 app-accessibility/espeak-ng: add fix for pulseaudio access violation Closes: https://bugs.gentoo.org/836646 Closes: https://github.com/gentoo/gentoo/pull/24878 Signed-off-by: Peter Alfredsen <crabbedhaloablution@icloud.com> Signed-off-by: William Hubbs <williamh@gentoo.org> app-accessibility/espeak-ng/espeak-ng-1.50-r3.ebuild | 3 +++ app-accessibility/espeak-ng/espeak-ng-1.51.ebuild | 4 ++++ app-accessibility/espeak-ng/espeak-ng-9999.ebuild | 4 ++++ 3 files changed, 11 insertions(+) |