Skip to main content

Boxi

Project description

Boxi

A terminal emulator for use with Toolbox.

This is a thought-experiment app based around the idea of having a terminal emulator running in a separate container from the session inside of it, with the kernel as the only intermediary.

This is accomplished by means of file descriptor passing of the pseudoterminal device from a small "agent" program running on the other side of a container boundary. The agent is started using the usual container tools (flatpak-spawn, toolbox, podman), but creating a session is done purely via sockets.

Boxi can be installed via pip:

pip install boxi

and will soon be available on Flathub.

The install comes with a .desktop file, so Boxi can be launched from the desktop shell. It can also be launched from the commandline:

boxi

By default, Boxi will create sessions on the host system. If you'd like to create sessions in a named Toolbox container, use -c:

boxi -c f36

Boxi uses different application identifiers when it is run for different containers. This allows creating individual launcher icons for each container. For example, ~/.local/share/applications/dev.boxi.f36.desktop:

[Desktop Entry]
Type=Application
Name=Boxi (f36)
Icon=fedora
StartupNotify=true
Exec=boxi -c f36

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

boxi-2.tar.gz (20.8 kB view hashes)

Uploaded Source

Built Distribution

boxi-2-py2.py3-none-any.whl (23.3 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page