afb002c90c
From now on, Debarshi Ray <debarshir@gnome.org> will show up as Debarshi Ray <rishi@fedoraproject.org>. Toolbox isn't quite a GNOME project (it doesn't use elements from the GNOME platform, like GLib), even though it's part of the same ecosystem and many Toolbox contributors are also GNOME contributors. Toolbox was conceived to improve the developer experience on Fedora Silverblue, and expanded over time to cover other use-cases (eg., troubleshooting the operating system) and Fedora editions (eg., CoreOS and Workstation). Even though there's a growing number of users on other distributions, they are not the primary reason for Toolbox to exist. Toolbox heavily depends on Podman, and as a result is more aligned with the Containers organization on GitHub than anything else, which is driven, to a large degree, by Fedora contributors. Hence, my desire to use my Fedora identity. https://github.com/containers/toolbox/pull/1083 |
||
---|---|---|
.github | ||
completion | ||
data | ||
doc | ||
images | ||
playbooks | ||
profile.d | ||
src | ||
test/system | ||
.gitignore | ||
.gitmodules | ||
.mailmap | ||
.zuul.yaml | ||
CODE-OF-CONDUCT.md | ||
CONTRIBUTING.md | ||
COPYING | ||
gen-docs-list | ||
GOALS.md | ||
meson.build | ||
meson_options.txt | ||
meson_post_install.py | ||
NEWS | ||
README.md | ||
SECURITY.md | ||
toolbox |
Toolbox is a tool for Linux operating systems, which allows the use of containerized command line environments. It is built on top of Podman and other standard container technologies from OCI.
This is particularly useful on OSTree based operating systems like Fedora CoreOS and Silverblue. The intention of these systems is to discourage installation of software on the host, and instead install software as (or in) containers — they mostly don't even have package managers like DNF or YUM. This makes it difficult to set up a development environment or install tools for debugging in the usual way.
Toolbox solves this problem by providing a fully mutable container within
which one can install their favourite development and debugging tools, editors
and SDKs. For example, it's possible to do yum install ansible
without
affecting the base operating system.
However, this tool doesn't require using an OSTree based system. It works equally well on Fedora Workstation and 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 used to
create a toolbox container that seamlessly integrates with the rest of the
operating system by providing access to the user's home directory, the Wayland
and X11 sockets, networking (including Avahi), removable devices (like USB
sticks), systemd journal, SSH agent, D-Bus, ulimits, /dev and the udev
database, etc..
Installation & Use
See our guides on installing & getting started with Toolbox and Linux distro support.