2019-01-26 09:57:26 +00:00
|
|
|
# Fedora Toolbox — Unprivileged development environment
|
2018-09-13 12:17:34 +00:00
|
|
|
|
2018-09-14 09:37:05 +00:00
|
|
|
[Fedora Toolbox](https://github.com/debarshiray/fedora-toolbox) is a tool that
|
|
|
|
offers a familiar RPM based environment for developing and debugging software
|
2019-01-26 09:57:26 +00:00
|
|
|
that runs fully unprivileged using [Podman](https://podman.io/).
|
|
|
|
|
|
|
|
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](https://ostree.readthedocs.io/en/latest/) based Fedora systems like
|
|
|
|
[Silverblue](https://silverblue.fedoraproject.org/). 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.
|
2018-09-13 12:17:34 +00:00
|
|
|
|
|
|
|
The toolbox environment is based on the `fedora-toolbox` image. This image is
|
|
|
|
then customized for the current user to create a toolbox container that
|
|
|
|
seamlessly integrates with the rest of the operating system.
|
2018-08-31 16:02:49 +00:00
|
|
|
|
|
|
|
## Usage
|
|
|
|
|
|
|
|
### Create your Fedora Toolbox container:
|
|
|
|
```
|
2019-01-21 16:07:02 +00:00
|
|
|
[user@hostname ~]$ fedora-toolbox create
|
|
|
|
[user@hostname ~]$
|
2018-08-31 16:02:49 +00:00
|
|
|
```
|
|
|
|
This will create a container, and an image, called
|
2018-10-19 14:50:59 +00:00
|
|
|
`fedora-toolbox-<your-username>:<version-id>` that's specifically customised
|
|
|
|
for your host user.
|
2018-08-31 16:02:49 +00:00
|
|
|
|
|
|
|
### Enter the Toolbox:
|
|
|
|
```
|
2019-01-21 16:07:02 +00:00
|
|
|
[user@hostname ~]$ fedora-toolbox enter
|
2018-09-12 14:29:15 +00:00
|
|
|
🔹[user@toolbox ~]$
|
2018-08-31 16:02:49 +00:00
|
|
|
```
|