mirror of
https://github.com/netblue30/firejail.git
synced 2026-05-15 14:16:14 -06:00
[GH-ISSUE #6762] wine: blacklisting python prevents gstreamer initialization #3361
Labels
No labels
LTS merge
LTS merge
bug
bug
converted-to-discussion
doc-todo
documentation
duplicate
enhancement
file-transfer
firecfg
firejail-in-firejail
firetools
graphics
help wanted
information_old
installation
invalid
modif
moved
needinfo
networking
notabug
notourbug
old-version
overlayfs
packaging
profile-request
pull-request
question
question_old
removal
runtime-permissions
sandbox-ipc
security
stale
wiki
wiki
wontfix
wordpress
workaround
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: github-starred/firejail#3361
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @kolAflash on GitHub (May 29, 2025).
Original GitHub issue: https://github.com/netblue30/firejail/issues/6762
Description
If
~/.cache/gstreamer-1.0/is empty,/usr/lib/python3*is needed to initialize it. But--profile=wineblacklists/usr/lib/python3*.Wine needs gstreamer for example in the case of EpicGamesLauncherInstaller.msi (2025-05-29).
Steps to Reproduce
Steps to reproduce the behavior
EpicInstaller-18.5.0.msito~/.wine/drive_c/firejail --profile=wine --whitelist="${HOME}"/.wine wine msiexec /i 'C:\\EpicInstaller-18.5.0.msi' /qfirejail --profile=wine --whitelist="${HOME}"/.wine wine 'C:\\Program Files (x86)\\Epic Games\\Launcher\\Portal\\Binaries\\Win32\\EpicGamesLauncher.exe'Expected behavior
Epic Games Launcher login screen should show up.
Actual behavior
Epic Games Launcher is stuck loading the login screen.
Additional context
Workaround: Add
--noblacklist=/usr/lib/python3*QUESTION:
I'm asking myself why interpreters and anything under
/usr/is blacklisted at all. This directory contains just files available from the Internet. There can be no information leak. And if an evil program needs an interpreter or anything else from/usr/, it can just download that from the Internet itself and place them in a writeable directory. And even evil programs without Internet access could carry a Python interpreter with them, in fact many programs do so.When thinking about the 3 hours it took me to figure this problem out, then I'm thinking:
Why block anything below
/usr/at all for most applications, including Wine?Environment
uname -srm):Linux 6.12.27-amd64 x86_64Debian-13gstreamer-1.26.1by Debian-13, Wine-Devel-10.8 from https://gitlab.winehq.org/wine/wine/-/wikis/Debian-Ubuntufirejail --version):0.9.74Checklist
/usr/bin/vlc) "fixes" it).https://github.com/netblue30/firejail/issues/1139)072c15b8bf/etc/profile-m-z/wine.profile (L20)072c15b8bf/etc/inc/disable-interpreters.inc (L76)browser-allow-drm yes/browser-disable-u2f noinfirejail.configto allow DRM/U2F in browsers.--profile=PROFILENAMEto set the right profile. (Only relevant for AppImages)@kmk3 commented on GitHub (May 30, 2025):
Should be fixed by:
Note that for the most part firejail does not try to protect against outright
evil/hostile programs, but instead tries limit the damage that presumably good
programs can do if something goes wrong.
Also, many programs are compiled and do not need access to an interpreter (or
the internet), in which case there is usually no point in allowing that.
Otherwise, I think the idea is that it's easier/less risky to simply run a
malicious command vs needing to download an entire shell (or another program)
before doing so.
In any case, this is a valid point, so feel free to open a dedicated discussion
about it.
Edit: Discussion: