{#
SPDX-License-Identifier: GPL-3.0-or-later
SPDX-FileCopyrightText: 2023 igo95862
#}
bubblejail(1)

# NAME

bubblejail - bubblewrap based sandboxing utility

# SYNOPSIS

*bubblejail* <command> [--option] [args]

# DESCRIPTION

*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. For example, Firefox profiles gives access to
network, pulse audio and _~/Downloads_ folder. Users can define
their own profiles in _$XDG_CONFIG_HOME/bubblejail/profiles_ directory.

Profiles also specify the desktop entry to copy and MIME types
the application has.

*Bubblejail* uses TOML configuration format.

# SUBCOMMANDS

{% for subcommand in subcommands %}
## {{ subcommand }} {{ format_arg_names(subcommand) | join(' ') }}

{{ get_subcommand_description(subcommand) | scdoc_paragraph }}

{% if get_options(subcommand) %}
*Options:*
{% endif %}

{% for option in get_options(subcommand) %}
{{ format_option(subcommand, option) | join(' ') }}

{{ get_option_description(subcommand, option) | scdoc_paragraph | scdoc_indent }}
{% endfor %}

{% endfor %}

# DIRECTORIES

## Bubblejail data directory

Bubblejail stores all data such as instances in a _bubblejail_ directory located
in the _$XDG_DATA_HOME_ directory as specified by XDG Base Directory specification.
By default Bubblejail's data directory can be found at _$HOME/.local/share/bubblejail_.

## Instance directories

Every instance is identified by a directory. Those instance directories can be found
under _instances_ folder in the *Bubblejail data directory*. The name of an instance
directory serves as the unique name of an instance. For example, existence of
_$HOME/.local/share/bubblejail/instances/Firefox/_ directory means that there is an
instance named _Firefox_.

Instance directory has several important files and directories:

- _home_: Instance's home directory.
- _services.toml_: Instance's services configuration.

# SEE ALSO

*bubblejail.services*(5)

Bubblejail home page: https://github.com/igo95862/bubblejail

# BUGS

Report bugs to the bugtracker: https://github.com/igo95862/bubblejail/issues
