aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLibravatar Fred Barclay <Fred-Barclay@users.noreply.github.com>2019-04-18 11:15:33 -0500
committerLibravatar Fred Barclay <Fred-Barclay@users.noreply.github.com>2019-04-18 11:15:33 -0500
commit5f7f3a5e26bbac22934daab982b4099b6cd5c492 (patch)
tree53ffe95a5931df229ffd9d380efcf7ba4e36da20
parentAllow access to .pythonrc.py -- see #2651 (diff)
parentMerge pull request #2641 from rusty-snake/add-cheese (diff)
downloadfirejail-5f7f3a5e26bbac22934daab982b4099b6cd5c492.tar.gz
firejail-5f7f3a5e26bbac22934daab982b4099b6cd5c492.tar.zst
firejail-5f7f3a5e26bbac22934daab982b4099b6cd5c492.zip
Merge branch 'master' of https://github.com/netblue30/firejail
-rw-r--r--README5
-rw-r--r--README.md2
-rw-r--r--RELNOTES2
-rw-r--r--etc/Cheese.profile7
-rw-r--r--etc/authenticator.profile10
-rw-r--r--etc/cheese.profile43
-rw-r--r--etc/chromium-common.profile2
-rw-r--r--etc/disable-programs.inc4
-rw-r--r--etc/evince.profile2
-rw-r--r--etc/firefox-common.profile2
-rw-r--r--etc/firejail.config9
-rw-r--r--etc/freeoffice-planmaker.profile38
-rw-r--r--etc/freeoffice-presentations.profile38
-rw-r--r--etc/freeoffice-textmaker.profile38
-rw-r--r--etc/gajim.profile2
-rw-r--r--etc/gramps.profile53
-rw-r--r--etc/midori.profile2
-rw-r--r--etc/min.profile2
-rw-r--r--etc/mpv.profile2
-rw-r--r--etc/newsboat.profile47
-rw-r--r--src/firecfg/firecfg.config7
-rw-r--r--src/firejail/checkcfg.c1
-rw-r--r--src/firejail/firejail.h1
-rw-r--r--src/firejail/profile.c5
-rw-r--r--src/man/firejail-profile.txt2
25 files changed, 307 insertions, 19 deletions
diff --git a/README b/README
index 8aa1bf691..08b5180d2 100644
--- a/README
+++ b/README
@@ -547,13 +547,14 @@ rusty-snake (https://github.com/rusty-snake)
547 - added profiles: kid3-qt, kid3-cli, anki, utox 547 - added profiles: kid3-qt, kid3-cli, anki, utox
548 - fixed profiles: kdenlive, bibletime, rhythmbox, gajim, seahorse 548 - fixed profiles: kdenlive, bibletime, rhythmbox, gajim, seahorse
549 - fixed profiles: libreoffice, gnome-maps, wget, seahorse-tool 549 - fixed profiles: libreoffice, gnome-maps, wget, seahorse-tool
550 - fixed profiles: gnome-logs, klavaro, default 550 - fixed profiles: gnome-logs, atom, brackets, gnome-builder, geany
551 - fixed profiles: vim, emacs, pycharm-community, gedit, klavaro
552 - fixed profiles: default
551 - hardened profiles: disable-common.inc, disable-programs.inc 553 - hardened profiles: disable-common.inc, disable-programs.inc
552 - hardened profiles: gajim, evince, ffmpeg, feh-network.inc, qtox 554 - hardened profiles: gajim, evince, ffmpeg, feh-network.inc, qtox
553 - hardened profiles: gnome-clocks, meld, minetest, youtube-dl 555 - hardened profiles: gnome-clocks, meld, minetest, youtube-dl
554 - hardened profiles: bibletime, whois, etr, display, feh 556 - hardened profiles: bibletime, whois, etr, display, feh
555 - gnome-mpv was renamed to celluloid 557 - gnome-mpv was renamed to celluloid
556 - updates for ~/.cargo and ~/.python-history
557Salvo 'LtWorf' Tomaselli (https://github.com/ltworf) 558Salvo 'LtWorf' Tomaselli (https://github.com/ltworf)
558 - fixed ktorrent profile 559 - fixed ktorrent profile
559sarneaud (https://github.com/sarneaud) 560sarneaud (https://github.com/sarneaud)
diff --git a/README.md b/README.md
index 1a5b20a66..846e9d374 100644
--- a/README.md
+++ b/README.md
@@ -102,4 +102,4 @@ We also keep a list of profile fixes for previous released versions in [etc-fixe
102## Current development version: 0.9.59 102## Current development version: 0.9.59
103 103
104## New profiles: 104## New profiles:
105anki, assogiate, autokey-gtk, autokey-qt, autokey-run, autokey-shell, bzflag, celluoid, code-oss, crawl, crawl-tiles, crow, d-feet, dconf, dconf-editor, devhelp, exfalso, font-manager, freeciv, freecol, freemind, gconf-editor, geekbench, gnome-keyring, gnome-nettool, gnome-system-log, gsettings, kid3, kid3-cli, kid3-qt, klavaro, lincity-ng, lugaru, Maelstrom, manaplus, megaglest, mpdris2, mypaint, nano, netactview, nomacs, nyx, opencity, openclonk, openttd, ostrichriders, pavucontrol, pioneer, pragha, redshift, regextester, seahorse, seahorse-tool, scorched3d, secret-tool, simplescreenrecorder, slashem, subdownloader, sysprof, sysprof-cli, teeworlds, torcs, tremulous, transgui, utox, vulturesclaw, vultureseye, warsow, widelands, xfce4-mixer 105anki, assogiate, autokey-gtk, autokey-qt, autokey-run, autokey-shell, bzflag, celluoid, cheese, code-oss, crawl, crawl-tiles, crow, d-feet, dconf, dconf-editor, devhelp, exfalso, font-manager, freeciv, freecol, freemind, gconf-editor, geekbench, gnome-keyring, gnome-nettool, gnome-system-log, gsettings, kid3, kid3-cli, kid3-qt, klavaro, lincity-ng, lugaru, Maelstrom, manaplus, megaglest, mpdris2, mypaint, nano, netactview, nomacs, nyx, opencity, openclonk, openttd, ostrichriders, pavucontrol, pioneer, pragha, redshift, regextester, seahorse, seahorse-tool, scorched3d, secret-tool, simplescreenrecorder, slashem, subdownloader, sysprof, sysprof-cli, teeworlds, torcs, tremulous, transgui, utox, vulturesclaw, vultureseye, warsow, widelands, xfce4-mixer
diff --git a/RELNOTES b/RELNOTES
index 80b5e58ff..4ced2cde6 100644
--- a/RELNOTES
+++ b/RELNOTES
@@ -11,7 +11,7 @@ firejail (0.9.59) baseline; urgency=low
11 * new profiles: teeworlds, torcs, tremulous, warsow, lugaru, manaplus 11 * new profiles: teeworlds, torcs, tremulous, warsow, lugaru, manaplus
12 * new profiles: pioneer, scorched3d, widelands, freemind, kid3, kid3-qt 12 * new profiles: pioneer, scorched3d, widelands, freemind, kid3, kid3-qt
13 * new profiles: kid3-cli, nomacs, freecol, opencity, openclonk, slashem 13 * new profiles: kid3-cli, nomacs, freecol, opencity, openclonk, slashem
14 * new profiles: vultureseye, vulturesclaw, anki, utox 14 * new profiles: vultureseye, vulturesclaw, anki, cheese, utox
15 * new profiles: autokey-gtk, autokey-qt, autokey-run, autokey-shell 15 * new profiles: autokey-gtk, autokey-qt, autokey-run, autokey-shell
16 * memory-deny-write-execute now also blocks memfd_create 16 * memory-deny-write-execute now also blocks memfd_create
17 * drop support for flatpak/snap packages 17 * drop support for flatpak/snap packages
diff --git a/etc/Cheese.profile b/etc/Cheese.profile
new file mode 100644
index 000000000..4bfce53a9
--- /dev/null
+++ b/etc/Cheese.profile
@@ -0,0 +1,7 @@
1# Firejail profile for cheese
2# This file is overwritten after every install/update
3
4
5# Temporary fix for https://github.com/netblue30/firejail/issues/2624
6# Redirect
7include cheese.profile
diff --git a/etc/authenticator.profile b/etc/authenticator.profile
index f989ab1ba..5f1c64682 100644
--- a/etc/authenticator.profile
+++ b/etc/authenticator.profile
@@ -6,6 +6,7 @@ include authenticator.local
6# Persistent global definitions 6# Persistent global definitions
7include globals.local 7include globals.local
8 8
9noblacklist ${HOME}/.cache/Authenticator
9noblacklist ${HOME}/.config/Authenticator 10noblacklist ${HOME}/.config/Authenticator
10 11
11# Allow python (blacklisted by disable-interpreters.inc) 12# Allow python (blacklisted by disable-interpreters.inc)
@@ -25,7 +26,7 @@ include disable-programs.inc
25 26
26# apparmor 27# apparmor
27caps.drop all 28caps.drop all
28net none 29netfilter
29no3d 30no3d
30# nodbus - makes settings immutable 31# nodbus - makes settings immutable
31nodvd 32nodvd
@@ -36,15 +37,14 @@ nosound
36notv 37notv
37nou2f 38nou2f
38# novideo 39# novideo
39protocol unix 40protocol unix,inet,inet6
40seccomp 41seccomp
41shell none 42shell none
42 43
43disable-mnt 44disable-mnt
44# private-bin authenticator 45# private-bin authenticator,python*
45private-cache
46private-dev 46private-dev
47private-etc alternatives,fonts,ld.so.cache 47private-etc alternatives,ca-certificates,fonts,ld.so.cache,ssl
48private-tmp 48private-tmp
49 49
50# memory-deny-write-execute - breaks on Arch 50# memory-deny-write-execute - breaks on Arch
diff --git a/etc/cheese.profile b/etc/cheese.profile
new file mode 100644
index 000000000..b6cb0c9ce
--- /dev/null
+++ b/etc/cheese.profile
@@ -0,0 +1,43 @@
1# Firejail profile for cheese
2# Description: taking pictures and movies from a webcam
3# This file is overwritten after every install/update
4# Persistent local customizations
5include cheese.local
6# Persistent global definitions
7include globals.local
8
9noblacklist ${VIDEOS}
10
11include disable-common.inc
12include disable-devel.inc
13include disable-exec.inc
14include disable-interpreters.inc
15include disable-passwdmgr.inc
16include disable-programs.inc
17include disable-xdg.inc
18
19whitelist ${VIDEOS}
20include whitelist-common.inc
21include whitelist-var-common.inc
22
23apparmor
24caps.drop all
25machine-id
26net none
27nodbus
28nodvd
29nogroups
30nonewprivs
31noroot
32notv
33nou2f
34protocol unix
35seccomp
36shell none
37tracelog
38
39disable-mnt
40private-bin cheese
41private-cache
42private-etc alternatives,fonts,drirc,clutter-1.0,gtk-3.0,dconf
43private-tmp
diff --git a/etc/chromium-common.profile b/etc/chromium-common.profile
index 3c7423316..63983d93b 100644
--- a/etc/chromium-common.profile
+++ b/etc/chromium-common.profile
@@ -7,7 +7,7 @@ include chromium-common.local
7#include globals.local 7#include globals.local
8 8
9# noexec ${HOME} breaks DRM binaries. 9# noexec ${HOME} breaks DRM binaries.
10ignore noexec ${HOME} 10?BROWSER_ALLOW_DRM: ignore noexec ${HOME}
11 11
12noblacklist ${HOME}/.pki 12noblacklist ${HOME}/.pki
13noblacklist ${HOME}/.local/share/pki 13noblacklist ${HOME}/.local/share/pki
diff --git a/etc/disable-programs.inc b/etc/disable-programs.inc
index 96fd80daf..7e12b97b2 100644
--- a/etc/disable-programs.inc
+++ b/etc/disable-programs.inc
@@ -5,6 +5,7 @@ include disable-programs.local
5blacklist ${HOME}/Arduino 5blacklist ${HOME}/Arduino
6blacklist ${HOME}/Monero/wallets 6blacklist ${HOME}/Monero/wallets
7blacklist ${HOME}/Nextcloud/Notes 7blacklist ${HOME}/Nextcloud/Notes
8blacklist ${HOME}/SoftMaker
8blacklist ${HOME}/Standard Notes Backups 9blacklist ${HOME}/Standard Notes Backups
9blacklist ${HOME}/wallet.dat 10blacklist ${HOME}/wallet.dat
10blacklist ${HOME}/.*coin 11blacklist ${HOME}/.*coin
@@ -339,6 +340,7 @@ blacklist ${HOME}/.googleearth/Temp/
339blacklist ${HOME}/.googleearth/myplaces.backup.kml 340blacklist ${HOME}/.googleearth/myplaces.backup.kml
340blacklist ${HOME}/.googleearth/myplaces.kml 341blacklist ${HOME}/.googleearth/myplaces.kml
341blacklist ${HOME}/.gradle 342blacklist ${HOME}/.gradle
343blacklist ${HOME}/.gramps
342blacklist ${HOME}/.guayadeque 344blacklist ${HOME}/.guayadeque
343blacklist ${HOME}/.hashcat 345blacklist ${HOME}/.hashcat
344blacklist ${HOME}/.hedgewars 346blacklist ${HOME}/.hedgewars
@@ -549,6 +551,7 @@ blacklist ${HOME}/.multimc5
549blacklist ${HOME}/.nanorc 551blacklist ${HOME}/.nanorc
550blacklist ${HOME}/.netactview 552blacklist ${HOME}/.netactview
551blacklist ${HOME}/.neverball 553blacklist ${HOME}/.neverball
554blacklist ${HOME}/.newsboat
552blacklist ${HOME}/.nv 555blacklist ${HOME}/.nv
553blacklist ${HOME}/.nylas-mail 556blacklist ${HOME}/.nylas-mail
554blacklist ${HOME}/.opencity 557blacklist ${HOME}/.opencity
@@ -625,6 +628,7 @@ blacklist /tmp/ssh-*
625# ${HOME}/.cache directory 628# ${HOME}/.cache directory
626blacklist ${HOME}/.cache/0ad 629blacklist ${HOME}/.cache/0ad
627blacklist ${HOME}/.cache/8pecxstudios 630blacklist ${HOME}/.cache/8pecxstudios
631blacklist ${HOME}/.cache/Authenticator
628blacklist ${HOME}/.cache/Clementine 632blacklist ${HOME}/.cache/Clementine
629blacklist ${HOME}/.cache/Enox 633blacklist ${HOME}/.cache/Enox
630blacklist ${HOME}/.cache/Franz 634blacklist ${HOME}/.cache/Franz
diff --git a/etc/evince.profile b/etc/evince.profile
index b1f984784..1a429d673 100644
--- a/etc/evince.profile
+++ b/etc/evince.profile
@@ -43,7 +43,7 @@ private-bin evince,evince-previewer,evince-thumbnailer
43private-cache 43private-cache
44private-dev 44private-dev
45private-etc alternatives,fonts,group,machine-id,passwd 45private-etc alternatives,fonts,group,machine-id,passwd
46private-lib evince,gdk-pixbuf-2.*,gio,gvfs/libgvfscommon.so,libdjvulibre.so.*,libgconf-2.so.*,libpoppler-glib.so.*,librsvg-2.so.*,gconv 46private-lib evince,gdk-pixbuf-2.*,gio,gvfs/libgvfscommon.so,libdjvulibre.so.*,libgconf-2.so.*,libpoppler-glib.so.*,librsvg-2.so.*,libspectre.so.*,gconv
47private-tmp 47private-tmp
48 48
49# memory-deny-write-execute - might break application (https://github.com/netblue30/firejail/issues/1803) 49# memory-deny-write-execute - might break application (https://github.com/netblue30/firejail/issues/1803)
diff --git a/etc/firefox-common.profile b/etc/firefox-common.profile
index a2a34f33f..080d9e81a 100644
--- a/etc/firefox-common.profile
+++ b/etc/firefox-common.profile
@@ -7,7 +7,7 @@ include firefox-common.local
7#include globals.local 7#include globals.local
8 8
9# noexec ${HOME} breaks DRM binaries. 9# noexec ${HOME} breaks DRM binaries.
10ignore noexec ${HOME} 10?BROWSER_ALLOW_DRM: ignore noexec ${HOME}
11 11
12# Uncomment the following line to allow access to common programs/addons/plugins. 12# Uncomment the following line to allow access to common programs/addons/plugins.
13#include firefox-common-addons.inc 13#include firefox-common-addons.inc
diff --git a/etc/firejail.config b/etc/firejail.config
index b37edf7a5..497d9633e 100644
--- a/etc/firejail.config
+++ b/etc/firejail.config
@@ -5,9 +5,6 @@
5# Enable AppArmor functionality, default enabled. 5# Enable AppArmor functionality, default enabled.
6# apparmor yes 6# apparmor yes
7 7
8# Disable U2F in browsers, default enabled.
9# browser-disable-u2f yes
10
11# Number of ARP probes sent when assigning an IP address for --net option, 8# Number of ARP probes sent when assigning an IP address for --net option,
12# default 2. This is a partial implementation of RFC 5227. A 0.5 seconds 9# default 2. This is a partial implementation of RFC 5227. A 0.5 seconds
13# timeout is implemented for each probe. Increase this number to 4 if your 10# timeout is implemented for each probe. Increase this number to 4 if your
@@ -18,6 +15,12 @@
18# Enable or disable bind support, default enabled. 15# Enable or disable bind support, default enabled.
19# bind yes 16# bind yes
20 17
18# Allow (DRM) execution in browsers, default disabled.
19# browser-allow-drm no
20
21# Disable U2F in browsers, default enabled.
22# browser-disable-u2f yes
23
21# Enable or disable cgroup support, default enabled. 24# Enable or disable cgroup support, default enabled.
22# cgroup yes 25# cgroup yes
23 26
diff --git a/etc/freeoffice-planmaker.profile b/etc/freeoffice-planmaker.profile
new file mode 100644
index 000000000..8a53c63e3
--- /dev/null
+++ b/etc/freeoffice-planmaker.profile
@@ -0,0 +1,38 @@
1# Firejail profile for freeoffice-planmaker
2# This file is overwritten after every install/update
3# Persistent local customizations
4include freeoffice-planmaker.local
5# Persistent global definitions
6include globals.local
7
8noblacklist ${HOME}/SoftMaker
9
10include disable-common.inc
11include disable-devel.inc
12include disable-exec.inc
13include disable-interpreters.inc
14include disable-passwdmgr.inc
15include disable-programs.inc
16# include disable-xdg.inc
17
18apparmor
19caps.drop all
20ipc-namespace
21netfilter
22no3d
23nodbus
24nodvd
25nogroups
26nonewprivs
27noroot
28notv
29nou2f
30novideo
31protocol unix,inet,inet6
32seccomp
33shell none
34tracelog
35
36private-cache
37private-dev
38private-tmp
diff --git a/etc/freeoffice-presentations.profile b/etc/freeoffice-presentations.profile
new file mode 100644
index 000000000..63be4da7f
--- /dev/null
+++ b/etc/freeoffice-presentations.profile
@@ -0,0 +1,38 @@
1# Firejail profile for freeoffice-presentations
2# This file is overwritten after every install/update
3# Persistent local customizations
4include freeoffice-presentations.local
5# Persistent global definitions
6include globals.local
7
8noblacklist ${HOME}/SoftMaker
9
10include disable-common.inc
11include disable-devel.inc
12include disable-exec.inc
13include disable-interpreters.inc
14include disable-passwdmgr.inc
15include disable-programs.inc
16# include disable-xdg.inc
17
18apparmor
19caps.drop all
20ipc-namespace
21netfilter
22no3d
23nodbus
24nodvd
25nogroups
26nonewprivs
27noroot
28notv
29nou2f
30novideo
31protocol unix,inet,inet6
32seccomp
33shell none
34tracelog
35
36private-cache
37private-dev
38private-tmp
diff --git a/etc/freeoffice-textmaker.profile b/etc/freeoffice-textmaker.profile
new file mode 100644
index 000000000..4bca5a98c
--- /dev/null
+++ b/etc/freeoffice-textmaker.profile
@@ -0,0 +1,38 @@
1# Firejail profile for freeoffice-textmaker
2# This file is overwritten after every install/update
3# Persistent local customizations
4include freeoffice-textmaker.local
5# Persistent global definitions
6include globals.local
7
8noblacklist ${HOME}/SoftMaker
9
10include disable-common.inc
11include disable-devel.inc
12include disable-exec.inc
13include disable-interpreters.inc
14include disable-passwdmgr.inc
15include disable-programs.inc
16# include disable-xdg.inc
17
18apparmor
19caps.drop all
20ipc-namespace
21netfilter
22no3d
23nodbus
24nodvd
25nogroups
26nonewprivs
27noroot
28notv
29nou2f
30novideo
31protocol unix,inet,inet6
32seccomp
33shell none
34tracelog
35
36private-cache
37private-dev
38private-tmp
diff --git a/etc/gajim.profile b/etc/gajim.profile
index 36121c4b9..ee84a0994 100644
--- a/etc/gajim.profile
+++ b/etc/gajim.profile
@@ -42,7 +42,7 @@ nonewprivs
42noroot 42noroot
43notv 43notv
44nou2f 44nou2f
45protocol unix,inet,inet6 45protocol unix,inet,inet6,netlink
46seccomp 46seccomp
47shell none 47shell none
48tracelog 48tracelog
diff --git a/etc/gramps.profile b/etc/gramps.profile
new file mode 100644
index 000000000..764c14b60
--- /dev/null
+++ b/etc/gramps.profile
@@ -0,0 +1,53 @@
1# Firejail profile for gramps
2# Description: genealogy program
3# This file is overwritten after every install/update
4# Persistent local customizations
5include gramps.local
6# Persistent global definitions
7include globals.local
8
9noblacklist ${HOME}/.gramps
10
11# Allow python (blacklisted by disable-interpreters.inc)
12#noblacklist ${PATH}/python2*
13noblacklist ${PATH}/python3*
14#noblacklist /usr/lib/python2*
15noblacklist /usr/lib/python3*
16#noblacklist /usr/local/lib/python2*
17noblacklist /usr/local/lib/python3*
18
19include disable-common.inc
20include disable-devel.inc
21include disable-exec.inc
22include disable-interpreters.inc
23include disable-passwdmgr.inc
24include disable-programs.inc
25include disable-xdg.inc
26
27mkdir ${HOME}/.gramps
28whitelist ${HOME}/.gramps
29include whitelist-common.inc
30include whitelist-var-common.inc
31
32apparmor
33caps.drop all
34ipc-namespace
35netfilter
36no3d
37nodbus
38nodvd
39nogroups
40nonewprivs
41noroot
42nosound
43notv
44nou2f
45novideo
46protocol unix,inet,inet6
47seccomp
48shell none
49
50disable-mnt
51private-cache
52private-dev
53private-tmp
diff --git a/etc/midori.profile b/etc/midori.profile
index d59a6a16b..e4d39cd70 100644
--- a/etc/midori.profile
+++ b/etc/midori.profile
@@ -14,7 +14,7 @@ noblacklist ${HOME}/.pki
14noblacklist ${HOME}/.local/share/pki 14noblacklist ${HOME}/.local/share/pki
15 15
16# noexec ${HOME} breaks DRM binaries. 16# noexec ${HOME} breaks DRM binaries.
17ignore noexec ${HOME} 17?BROWSER_ALLOW_DRM: ignore noexec ${HOME}
18 18
19include disable-common.inc 19include disable-common.inc
20include disable-devel.inc 20include disable-devel.inc
diff --git a/etc/min.profile b/etc/min.profile
index eec81677d..c89df0a95 100644
--- a/etc/min.profile
+++ b/etc/min.profile
@@ -12,7 +12,7 @@ noblacklist ${HOME}/.pki
12noblacklist ${HOME}/.local/share/pki 12noblacklist ${HOME}/.local/share/pki
13 13
14# noexec ${HOME} breaks DRM binaries. 14# noexec ${HOME} breaks DRM binaries.
15ignore noexec ${HOME} 15?BROWSER_ALLOW_DRM: ignore noexec ${HOME}
16 16
17include disable-common.inc 17include disable-common.inc
18include disable-devel.inc 18include disable-devel.inc
diff --git a/etc/mpv.profile b/etc/mpv.profile
index c2ae9c6f9..34542b11b 100644
--- a/etc/mpv.profile
+++ b/etc/mpv.profile
@@ -1,6 +1,7 @@
1# Firejail profile for mpv 1# Firejail profile for mpv
2# Description: Video player based on MPlayer/mplayer2 2# Description: Video player based on MPlayer/mplayer2
3# This file is overwritten after every install/update 3# This file is overwritten after every install/update
4quiet
4# Persistent local customizations 5# Persistent local customizations
5include mpv.local 6include mpv.local
6# Persistent global definitions 7# Persistent global definitions
@@ -44,4 +45,5 @@ shell none
44tracelog 45tracelog
45 46
46private-bin mpv,youtube-dl,python*,env 47private-bin mpv,youtube-dl,python*,env
48private-cache
47private-dev 49private-dev
diff --git a/etc/newsboat.profile b/etc/newsboat.profile
new file mode 100644
index 000000000..e063abe53
--- /dev/null
+++ b/etc/newsboat.profile
@@ -0,0 +1,47 @@
1# Firejail profile for Newsboat
2# Description: RSS program
3# This file is overwritten after every install/update
4# Persistent local customizations
5include newsboat.local
6# Persistent global definitions
7include globals.local
8
9noblacklist ${HOME}/.newsboat
10
11include disable-common.inc
12include disable-devel.inc
13include disable-exec.inc
14include disable-interpreters.inc
15include disable-passwdmgr.inc
16include disable-programs.inc
17include disable-xdg.inc
18
19mkdir ${HOME}/.newsboat
20whitelist ${HOME}/.newsboat
21include whitelist-common.inc
22include whitelist-var-common.inc
23
24caps.drop all
25ipc-namespace
26netfilter
27no3d
28nodbus
29nodvd
30nogroups
31nonewprivs
32noroot
33notv
34nou2f
35novideo
36protocol inet,inet6
37seccomp
38shell none
39
40disable-mnt
41private-bin newsboat
42private-cache
43private-dev
44private-etc alternatives,ca-certificates,crypto-policies,pki,resolv.conf,ssl,terminfo
45private-tmp
46
47memory-deny-write-execute
diff --git a/src/firecfg/firecfg.config b/src/firecfg/firecfg.config
index 41b75ee81..9f5f7a7a8 100644
--- a/src/firecfg/firecfg.config
+++ b/src/firecfg/firecfg.config
@@ -5,6 +5,7 @@
50ad 50ad
62048-qt 62048-qt
7Builder 7Builder
8Cheese
8Cryptocat 9Cryptocat
9Cyberfox 10Cyberfox
10Discord 11Discord
@@ -93,6 +94,7 @@ calligrawords
93catfish 94catfish
94celluloid 95celluloid
95checkbashisms 96checkbashisms
97cheese
96cherrytree 98cherrytree
97chromium 99chromium
98chromium-browser 100chromium-browser
@@ -198,6 +200,9 @@ freeciv-gtk3
198freeciv-mp-gtk3 200freeciv-mp-gtk3
199freecol 201freecol
200freemind 202freemind
203freeoffice-planmaker
204freeoffice-presentations
205freeoffice-textmaker
201freshclam 206freshclam
202frozen-bubble 207frozen-bubble
203gajim 208gajim
@@ -254,6 +259,7 @@ gpa
254gpicview 259gpicview
255gpredict 260gpredict
256gradio 261gradio
262gramps
257gthumb 263gthumb
258guayadeque 264guayadeque
259gucharmap 265gucharmap
@@ -385,6 +391,7 @@ netactview
385nethack 391nethack
386netsurf 392netsurf
387neverball 393neverball
394newsboat
388nheko 395nheko
389nitroshare 396nitroshare
390nitroshare-cli 397nitroshare-cli
diff --git a/src/firejail/checkcfg.c b/src/firejail/checkcfg.c
index 54f6ea023..7ca72bf30 100644
--- a/src/firejail/checkcfg.c
+++ b/src/firejail/checkcfg.c
@@ -111,6 +111,7 @@ int checkcfg(int val) {
111 PARSE_YESNO(CFG_DISABLE_MNT, "disable-mnt") 111 PARSE_YESNO(CFG_DISABLE_MNT, "disable-mnt")
112 PARSE_YESNO(CFG_XPRA_ATTACH, "xpra-attach") 112 PARSE_YESNO(CFG_XPRA_ATTACH, "xpra-attach")
113 PARSE_YESNO(CFG_BROWSER_DISABLE_U2F, "browser-disable-u2f") 113 PARSE_YESNO(CFG_BROWSER_DISABLE_U2F, "browser-disable-u2f")
114 PARSE_YESNO(CFG_BROWSER_ALLOW_DRM, "browser-allow-drm")
114#undef PARSE_YESNO 115#undef PARSE_YESNO
115 116
116 // netfilter 117 // netfilter
diff --git a/src/firejail/firejail.h b/src/firejail/firejail.h
index b2c18d79f..2e04084e3 100644
--- a/src/firejail/firejail.h
+++ b/src/firejail/firejail.h
@@ -702,6 +702,7 @@ enum {
702 CFG_ARP_PROBES, 702 CFG_ARP_PROBES,
703 CFG_XPRA_ATTACH, 703 CFG_XPRA_ATTACH,
704 CFG_BROWSER_DISABLE_U2F, 704 CFG_BROWSER_DISABLE_U2F,
705 CFG_BROWSER_ALLOW_DRM,
705 CFG_PRIVATE_LIB, 706 CFG_PRIVATE_LIB,
706 CFG_APPARMOR, 707 CFG_APPARMOR,
707 CFG_DBUS, 708 CFG_DBUS,
diff --git a/src/firejail/profile.c b/src/firejail/profile.c
index 667b03652..c8619f7e2 100644
--- a/src/firejail/profile.c
+++ b/src/firejail/profile.c
@@ -151,10 +151,15 @@ static int check_disable_u2f(void) {
151 return checkcfg(CFG_BROWSER_DISABLE_U2F) != 0; 151 return checkcfg(CFG_BROWSER_DISABLE_U2F) != 0;
152} 152}
153 153
154static int check_allow_drm(void) {
155 return checkcfg(CFG_BROWSER_ALLOW_DRM) != 0;
156}
157
154Cond conditionals[] = { 158Cond conditionals[] = {
155 {"HAS_APPIMAGE", check_appimage}, 159 {"HAS_APPIMAGE", check_appimage},
156 {"HAS_NODBUS", check_nodbus}, 160 {"HAS_NODBUS", check_nodbus},
157 {"BROWSER_DISABLE_U2F", check_disable_u2f}, 161 {"BROWSER_DISABLE_U2F", check_disable_u2f},
162 {"BROWSER_ALLOW_DRM", check_allow_drm},
158 { NULL, NULL } 163 { NULL, NULL }
159}; 164};
160 165
diff --git a/src/man/firejail-profile.txt b/src/man/firejail-profile.txt
index dde815d05..20b547355 100644
--- a/src/man/firejail-profile.txt
+++ b/src/man/firejail-profile.txt
@@ -94,7 +94,7 @@ Example: "?HAS_APPIMAGE: whitelist ${HOME}/special/appimage/dir"
94 94
95This example will load the whitelist profile line only if the \-\-appimage option has been specified on the command line. 95This example will load the whitelist profile line only if the \-\-appimage option has been specified on the command line.
96 96
97Currently the only conditionals supported are HAS_APPIMAGE, HAS_NODBUS and BROWSER_DISABLE_U2F. 97Currently the only conditionals supported are HAS_APPIMAGE, HAS_NODBUS, BROWSER_DISABLE_U2F, and BROWSER_ALLOW_DRM.
98 98
99The profile line may be any profile line that you would normally use in a profile \fBexcept\fR for "quiet" and "include" lines. 99The profile line may be any profile line that you would normally use in a profile \fBexcept\fR for "quiet" and "include" lines.
100 100