mirror of
https://github.com/netblue30/firejail.git
synced 2026-05-15 14:16:14 -06:00
[GH-ISSUE #5599] End-of-options indicator "--" leads to invalid shell invocation (fish shell) #3038
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#3038
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 @ferreum on GitHub (Jan 17, 2023).
Original GitHub issue: https://github.com/netblue30/firejail/issues/5599
Description
Separating the command from options with
--leads to an invalid shell invocation which leads to an error.Steps to Reproduce
Run firejail with the command preceded by a
--argument:Expected behavior
The command is run (echo) and "test" is printed.
Actual behavior
Firejail runs my shell (
fish) and runs an invalid command through it.Behavior without a profile
Happens with and without profile. Using
--noprofilehere for simplicity.Additional context
Invoking without
--works as expected. The user's shell doesn't appear to be used in this case.Setting the
SHELLenvironment variable doesn't affect which shell is used. It's the user's shell from/etc/passwd.Environment
Checklist
/usr/bin/vlc) "fixes" it).https://github.com/netblue30/firejail/issues/1139)browser-allow-drm yes/browser-disable-u2f noinfirejail.configto allow DRM/U2F in browsers.--profile=PROFILENAMEto set the right profile. (Only relevant for AppImages)Log
Output of
LC_ALL=C firejail --debug --noprofile -- echo testOutput of
LC_ALL=C firejail --debug --noprofile echo test(working as expected)@rusty-snake commented on GitHub (Jan 17, 2023):
For reference: #5445, #3434
@kmk3 commented on GitHub (Jan 17, 2023):
I was thinking that this could be caused by #5190 ("shell none set as
default"), but the behavior appears to be the same on both 0.9.70 and 0.9.72:
@rusty-snake commented on GitHub (Jan 17, 2023):
It should not even do this in 0.9.72 unless explicitly requested.
@rusty-snake commented on GitHub (Jan 17, 2023):
My first analysis from reading older issues and the debug log from above: known bug with incomplete fix.
@rusty-snake commented on GitHub (Jan 19, 2023):
Reopening because we still don't know why firejail starts a shell at all.
@rusty-snake commented on GitHub (Jan 19, 2023):
Could be related to #5598.
@kmk3 commented on GitHub (Jan 19, 2023):
@rusty-snake on Jan 19:
From my testing, the original problem as described was fixed on #5600, so
unless someone can still reproduce it, please avoid reopening the issue.
But feel free to open a dedicated discussion about why firejail spawns a shell
in this case (it is not clear to me either).
@paladox commented on GitHub (Dec 11, 2023):
Is there anyway a 0.9.72.1 release could be done please with this fix? And push to Debian (as bookworm uses 0.9.72)?
Using something like:
breaks with firejail "Cannot start application: Permission denied".
If I remove -- it works but I think this pull fixes it?