Tool for interactive command line environments on Linux
Find a file
Debarshi Ray a09692aa8b Split out the code to set environment variables in the toolbox
A subsequent commit will leverage this to tunnel the same environment
variables over D-Bus when the toolbox script forwards its own
invocation over 'flatpak-spawn --host'. This is necessary because the
process offering the underlying org.freedesktop.Flatpak D-Bus service
used by 'flatpak-spawn --host' doesn't have some variables, like
COLORTERM and TERM, set in its environment, and their absence hinders
the use of interactive shells.

Instead of keeping two separate hard coded lists, one for
flatpak-spawn and another for podman, it's better to use the same set
for both to avoid silly and weird bugs.

https://github.com/debarshiray/toolbox/pull/54
2019-02-19 13:22:18 +01:00
images/fedora Drop the "fedora" prefix and rename the project as just "toolbox" 2019-02-15 16:36:30 +01:00
COPYING Rename LICENSE as COPYING 2018-10-19 18:24:23 +02:00
meson.build Drop the "fedora" prefix and rename the project as just "toolbox" 2019-02-15 16:36:30 +01:00
NEWS Prepare 0.0.5 2019-02-11 14:17:47 +00:00
README.md Drop the "fedora" prefix and rename the project as just "toolbox" 2019-02-15 16:36:30 +01:00
toolbox Split out the code to set environment variables in the toolbox 2019-02-19 13:22:18 +01:00
toolbox-sudo Drop the "fedora" prefix and rename the project as just "toolbox" 2019-02-15 16:36:30 +01:00

Toolbox — Unprivileged development environment

Toolbox is a tool that offers a familiar RPM based environment for developing and debugging software that runs fully unprivileged using Podman.

The toolbox container is a fully mutable container; when you see yum install ansible for example, that's something you can do inside your toolbox container, without affecting the base operating system.

This is particularly useful on OSTree based Fedora systems like Silverblue. The intention of these systems is to discourage installation of software on the host, and instead install software as (or in) containers.

However this project doesn't require using an OSTree based system — it works equally well if you're running e.g. existing Fedora Workstation or Server, and that's a useful way to incrementally adopt containerization.

The toolbox environment is based on an OCI image. On Fedora this is the fedora-toolbox image. This image is then customized for the current user to create a toolbox container thatseamlessly integrates with the rest of the operating system.

Usage

Create your toolbox container:

[user@hostname ~]$ toolbox create
[user@hostname ~]$

This will create a container, and an image, called fedora-toolbox-<your-username>:<version-id> that's specifically customised for your host user.

Enter the toolbox:

[user@hostname ~]$ toolbox enter
🔹[user@toolbox ~]$