Skip to content

Update/Add Additional Abstractions for AppArmor

This comprises two commits originally part of https://github.com/torproject/torbrowser-launcher/pull/589.

There are two abstraction sets added.

The first is DBUS session abstractions.

There are DBUS denies for opening dialog boxes and file open boxes, which need DBUS abstractions to access the user sessions. Fixed by including abstractions/dbus-session (which also implicitly imports abstractions/dbus-session-strict for SystemD user sessions) in the apparmor rules, if the abstractions exist.

The second is X abstractions.

Observed initially in https://github.com/torproject/torbrowser-launcher/issues/588, systems that do NOT have GNOME installed on them, such as Lubuntu which uses LXQt and has ZERO GNOME components, will have issues accessing X11 sockets.

In such systems, the implied abstractions/gnome already part of the AppArmor profile do not exist. Therefore, AppArmor will not import abstractions/gnome which includes the X abstractions because the GNOME abstractions definition does not exist.

In such cases, components of the UI will not properly function with dialog boxes. This is why this is separately explicitly required, despite GNOME abstractions including X abstractions.

Merge request reports