Bubblewrap based sandboxing for desktop applications
Python
501
661 commits
updated Sep 27, 2026
Bubblejail is a bubblewrap-based alternative to Firejail.
Bubblejail's design is based on observations of Firejail's faults.
One of the biggest issues with Firejail is that you can accidentally run unsandboxed applications and not notice.
Bubblejail, instead of trying to transparently overlay an existing home directory, creates a separate home directory.
Every Instance represents a separate home directory. Typically, every sandboxed application has its own home directory.
Each instance has a services.toml file which defines the configuration of the instance such as system resources that the sandbox should have access to.
Service represents some system resources that the sandbox can be given access to. For example, the Pulse Audio service gives access to the Pulse Audio socket so that the application can use sound.
Profile is a predefined set of services that a particular application uses. Using profiles is entirely optional.
Fedora package .spec by @rusty-snake
If your distro does not have a package you can try to manually install with meson
tomlilibnotify)meson setup build to setup build directorycd buildmeson compilesudo meson installIf you want to uninstall run sudo ninja uninstall from build directory.
Configuration utility

Bubblejail Configuration)bubblejail create --profile firefox FirefoxInstance
bubblejail run FirefoxInstance
bubblejail create --no-desktop-entry --profile generic Test
See following wiki guides on how to setup bubblejail if a particular application does not have a profile:
Overall
Maintained
Code review
PyPI
Latest release
Releases this year
110 followers · starred Oct 2024
545 followers · starred Aug 2025
436 followers · starred Mar 2026
336 followers · starred Oct 2023
Bubblewrap based sandboxing for desktop applications
Python
501
661 commits
updated Sep 27, 2026
Bubblejail is a bubblewrap-based alternative to Firejail.
Bubblejail's design is based on observations of Firejail's faults.
One of the biggest issues with Firejail is that you can accidentally run unsandboxed applications and not notice.
Bubblejail, instead of trying to transparently overlay an existing home directory, creates a separate home directory.
Every Instance represents a separate home directory. Typically, every sandboxed application has its own home directory.
Each instance has a services.toml file which defines the configuration of the instance such as system resources that the sandbox should have access to.
Service represents some system resources that the sandbox can be given access to. For example, the Pulse Audio service gives access to the Pulse Audio socket so that the application can use sound.
Profile is a predefined set of services that a particular application uses. Using profiles is entirely optional.
Fedora package .spec by @rusty-snake
If your distro does not have a package you can try to manually install with meson
tomlilibnotify)meson setup build to setup build directorycd buildmeson compilesudo meson installIf you want to uninstall run sudo ninja uninstall from build directory.
Configuration utility

Bubblejail Configuration)bubblejail create --profile firefox FirefoxInstance
bubblejail run FirefoxInstance
bubblejail create --no-desktop-entry --profile generic Test
See following wiki guides on how to setup bubblejail if a particular application does not have a profile:
Overall
Maintained
Code review
PyPI
Latest release
Releases this year
110 followers · starred Oct 2024
545 followers · starred Aug 2025
436 followers · starred Mar 2026
336 followers · starred Oct 2023