Skip to content

Commit 617ff40

Browse files
committed
add --noautopulse arg for complex pulse setups
such as remote pulse servers or non-standard socket paths
1 parent a06172a commit 617ff40

File tree

8 files changed

+26
-1
lines changed

8 files changed

+26
-1
lines changed

RELNOTES

+1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
firejail (0.9.53) baseline; urgency=low
22
* work in progress
3+
* add --noautopulse to disable automatic ~/.config/pulse (for complex setups)
34
* modif: support for private-bin, private-lib and shell none has been
45
disabled while running AppImage archives in order to be able to use
56
our regular profile files with AppImages.

src/firejail/firejail.h

+1
Original file line numberDiff line numberDiff line change
@@ -357,6 +357,7 @@ extern int arg_private_lib; // private lib directory
357357
extern int arg_scan; // arp-scan all interfaces
358358
extern int arg_whitelist; // whitelist commad
359359
extern int arg_nosound; // disable sound
360+
extern int arg_noautopulse; // disable automatic ~/.config/pulse init
360361
extern int arg_novideo; //disable video devices in /dev
361362
extern int arg_no3d; // disable 3d hardware acceleration
362363
extern int arg_quiet; // no output for scripting

src/firejail/main.c

+3
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,7 @@ int arg_private_lib = 0; // private lib directory
9494
int arg_scan = 0; // arp-scan all interfaces
9595
int arg_whitelist = 0; // whitelist commad
9696
int arg_nosound = 0; // disable sound
97+
int arg_noautopulse = 0; // disable automatic ~/.config/pulse init
9798
int arg_novideo = 0; //disable video devices in /dev
9899
int arg_no3d; // disable 3d hardware acceleration
99100
int arg_quiet = 0; // no output for scripting
@@ -1727,6 +1728,8 @@ int main(int argc, char **argv) {
17271728
env_store(argv[i] + 8, RMENV);
17281729
else if (strcmp(argv[i], "--nosound") == 0)
17291730
arg_nosound = 1;
1731+
else if (strcmp(argv[i], "--noautopulse") == 0)
1732+
arg_noautopulse = 1;
17301733
else if (strcmp(argv[i], "--novideo") == 0)
17311734
arg_novideo = 1;
17321735
else if (strcmp(argv[i], "--no3d") == 0)

src/firejail/profile.c

+4
Original file line numberDiff line numberDiff line change
@@ -233,6 +233,10 @@ int profile_check_line(char *ptr, int lineno, const char *fname) {
233233
arg_nosound = 1;
234234
return 0;
235235
}
236+
else if (strcmp(ptr, "noautopulse") == 0) {
237+
arg_noautopulse = 1;
238+
return 0;
239+
}
236240
else if (strcmp(ptr, "notv") == 0) {
237241
arg_notv = 1;
238242
return 0;

src/firejail/sandbox.c

+1-1
Original file line numberDiff line numberDiff line change
@@ -889,7 +889,7 @@ int sandbox(void* sandbox_arg) {
889889
// disable /dev/snd
890890
fs_dev_disable_sound();
891891
}
892-
else
892+
else if (!arg_noautopulse)
893893
pulseaudio_init();
894894

895895
if (arg_no3d)

src/firejail/usage.c

+1
Original file line numberDiff line numberDiff line change
@@ -143,6 +143,7 @@ void usage(void) {
143143
printf(" --noroot - install a user namespace with only the current user.\n");
144144
#endif
145145
printf(" --nosound - disable sound system.\n");
146+
printf(" --noautopulse - disable automatic ~/.config/pulse init.\n");
146147
printf(" --novideo - disable video devices.\n");
147148
printf(" --nowhitelist=filename - disable whitelist for file or directory .\n");
148149
printf(" --output=logfile - stdout logging and log rotation.\n");

src/man/firejail-profile.txt

+4
Original file line numberDiff line numberDiff line change
@@ -451,6 +451,10 @@ Enable IPC namespace.
451451
\fBnosound
452452
Disable sound system.
453453
.TP
454+
\fBnoautopulse
455+
Disable automatic ~/.config/pulse init, for complex setups such as remote
456+
pulse servers or non-standard socket paths.
457+
.TP
454458
\fBnotv
455459
Disable DVB (Digital Video Broadcasting) TV devices.
456460
.TP

src/man/firejail.txt

+11
Original file line numberDiff line numberDiff line change
@@ -1198,6 +1198,17 @@ Example:
11981198
.br
11991199
$ firejail \-\-nosound firefox
12001200

1201+
.TP
1202+
\fB\-\-noautopulse
1203+
Disable automatic ~/.config/pulse init, for complex setups such as remote
1204+
pulse servers or non-standard socket paths.
1205+
.br
1206+
1207+
.br
1208+
Example:
1209+
.br
1210+
$ firejail \-\-noautopulse firefox
1211+
12011212
.TP
12021213
\fB\-\-notv
12031214
Disable DVB (Digital Video Broadcasting) TV devices.

0 commit comments

Comments
 (0)