Compare commits
10 commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 8930a11968 | |||
| 6c46178bbb | |||
| 5ff7fd3597 | |||
| 04b26152ae | |||
| 396de43209 | |||
| 00dfa04654 | |||
| 3c5e37aee9 | |||
| dfa4cee904 | |||
|
|
77bb135f27 | ||
| e0813a6d6f |
6 changed files with 9 additions and 172 deletions
43
Dockerfile
43
Dockerfile
|
|
@ -1,43 +0,0 @@
|
||||||
FROM registry.fedoraproject.org/fedora:38
|
|
||||||
|
|
||||||
ENV NAME=fedora-toolbox VERSION=38
|
|
||||||
LABEL com.github.containers.toolbox="true" \
|
|
||||||
com.redhat.component="$NAME" \
|
|
||||||
name="$NAME" \
|
|
||||||
version="$VERSION" \
|
|
||||||
usage="This image is meant to be used with the toolbox command" \
|
|
||||||
summary="Base image for creating Fedora toolbox containers" \
|
|
||||||
maintainer="Debarshi Ray <rishi@fedoraproject.org>"
|
|
||||||
|
|
||||||
COPY README.md /
|
|
||||||
|
|
||||||
RUN rm /etc/rpm/macros.image-language-conf
|
|
||||||
RUN sed -i '/tsflags=nodocs/d' /etc/dnf/dnf.conf
|
|
||||||
|
|
||||||
RUN dnf -y upgrade
|
|
||||||
RUN dnf -y swap coreutils-single coreutils-full
|
|
||||||
RUN dnf -y swap glibc-minimal-langpack glibc-all-langpacks
|
|
||||||
|
|
||||||
COPY missing-docs /
|
|
||||||
RUN dnf -y reinstall $(<missing-docs)
|
|
||||||
RUN rm /missing-docs
|
|
||||||
|
|
||||||
COPY extra-packages /
|
|
||||||
RUN dnf -y install $(<extra-packages)
|
|
||||||
RUN rm /extra-packages
|
|
||||||
|
|
||||||
COPY ensure-files /
|
|
||||||
RUN ret_val=0; \
|
|
||||||
while read file; do \
|
|
||||||
if ! compgen -G "$file" >/dev/null; then \
|
|
||||||
echo "$file: No such file or directory" >&2; \
|
|
||||||
ret_val=1; \
|
|
||||||
break; \
|
|
||||||
fi; \
|
|
||||||
done <ensure-files; \
|
|
||||||
if [ "$ret_val" -ne 0 ]; then \
|
|
||||||
false; \
|
|
||||||
fi
|
|
||||||
RUN rm /ensure-files
|
|
||||||
|
|
||||||
RUN dnf clean all
|
|
||||||
44
README.md
44
README.md
|
|
@ -1,44 +0,0 @@
|
||||||
[Toolbox](https://containertoolbx.org/) is a tool for Linux, which allows the
|
|
||||||
use of interactive command line environments for development and
|
|
||||||
troubleshooting the host operating system, without having to install software
|
|
||||||
on the host. It is built on top of [Podman](https://podman.io/) and other
|
|
||||||
standard container technologies from [OCI](https://opencontainers.org/).
|
|
||||||
|
|
||||||
Toolbox environments have seamless 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..
|
|
||||||
|
|
||||||
This is particularly useful on
|
|
||||||
[OSTree](https://ostree.readthedocs.io/en/latest/) based operating systems like
|
|
||||||
[Fedora CoreOS](https://coreos.fedoraproject.org/) and
|
|
||||||
[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 — they mostly don't even have package
|
|
||||||
managers like DNF or YUM. This makes it difficult to set up a development
|
|
||||||
environment or troubleshoot the operating system in the usual way.
|
|
||||||
|
|
||||||
Toolbox solves this problem by providing a fully mutable container within
|
|
||||||
which one can install their favourite development and troubleshooting 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](https://www.opencontainers.org/)
|
|
||||||
image. On Fedora this is the `fedora-toolbox` image. This image is used to
|
|
||||||
create a toolbox container that offers the interactive command line
|
|
||||||
environment.
|
|
||||||
|
|
||||||
Note that Toolbox makes no promise about security beyond what's already
|
|
||||||
available in the usual command line environment on the host that everybody is
|
|
||||||
familiar with.
|
|
||||||
|
|
||||||
|
|
||||||
## Installation & Use
|
|
||||||
|
|
||||||
See our guides on
|
|
||||||
[installing & getting started](https://containertoolbx.org/install/) with
|
|
||||||
Toolbox and [Linux distro support](https://containertoolbx.org/distros/).
|
|
||||||
9
dead.container
Normal file
9
dead.container
Normal file
|
|
@ -0,0 +1,9 @@
|
||||||
|
The fedora-toolbox OCI image for Fedora 39 onwards is no longer built using
|
||||||
|
OpenShift Build Service from the Dockerfile here. It's now being built using
|
||||||
|
Image Factory from fedora-kickstarts and pungi-fedora [1], as part of the
|
||||||
|
ToolbxReleaseBlocker Change [2] for Fedora 39.
|
||||||
|
|
||||||
|
[1] https://pagure.io/fedora-kickstarts/
|
||||||
|
https://pagure.io/pungi-fedora/
|
||||||
|
|
||||||
|
[2] https://fedoraproject.org/wiki/Changes/ToolbxReleaseBlocker
|
||||||
17
ensure-files
17
ensure-files
|
|
@ -1,17 +0,0 @@
|
||||||
/usr/share/man/man1/bash.1*
|
|
||||||
/usr/share/man/man1/cd.1*
|
|
||||||
/usr/share/man/man1/export.1*
|
|
||||||
|
|
||||||
/usr/share/man/man1/cat.1*
|
|
||||||
/usr/share/man/man1/cp.1*
|
|
||||||
/usr/share/man/man1/ls.1*
|
|
||||||
|
|
||||||
/usr/share/man/man1/gpg2.1*
|
|
||||||
/usr/share/man/man7/gnupg2.7*
|
|
||||||
|
|
||||||
/usr/share/man/fr/man8/rpm.8*
|
|
||||||
/usr/share/man/ja/man8/rpm.8*
|
|
||||||
/usr/share/man/man8/rpm.8*
|
|
||||||
|
|
||||||
/usr/share/man/man1/kill.1*
|
|
||||||
/usr/share/man/man8/mount.8*
|
|
||||||
|
|
@ -1,48 +0,0 @@
|
||||||
bash-completion
|
|
||||||
bc
|
|
||||||
bzip2
|
|
||||||
diffutils
|
|
||||||
dnf-plugins-core
|
|
||||||
findutils
|
|
||||||
flatpak-spawn
|
|
||||||
fpaste
|
|
||||||
git
|
|
||||||
gnupg2
|
|
||||||
gnupg2-smime
|
|
||||||
gvfs-client
|
|
||||||
hostname
|
|
||||||
iproute
|
|
||||||
iputils
|
|
||||||
whois
|
|
||||||
keyutils
|
|
||||||
krb5-libs
|
|
||||||
less
|
|
||||||
lsof
|
|
||||||
man-db
|
|
||||||
man-pages
|
|
||||||
mesa-dri-drivers
|
|
||||||
mesa-vulkan-drivers
|
|
||||||
mtr
|
|
||||||
nano-default-editor
|
|
||||||
nss-mdns
|
|
||||||
openssh-clients
|
|
||||||
passwd
|
|
||||||
pigz
|
|
||||||
procps-ng
|
|
||||||
rsync
|
|
||||||
shadow-utils
|
|
||||||
sudo
|
|
||||||
tcpdump
|
|
||||||
time
|
|
||||||
traceroute
|
|
||||||
tree
|
|
||||||
unzip
|
|
||||||
util-linux
|
|
||||||
vte-profile
|
|
||||||
vulkan-loader
|
|
||||||
wget
|
|
||||||
which
|
|
||||||
words
|
|
||||||
xorg-x11-xauth
|
|
||||||
xz
|
|
||||||
zip
|
|
||||||
20
missing-docs
20
missing-docs
|
|
@ -1,20 +0,0 @@
|
||||||
acl
|
|
||||||
bash
|
|
||||||
coreutils-common
|
|
||||||
curl
|
|
||||||
findutils
|
|
||||||
gawk
|
|
||||||
gnupg2
|
|
||||||
grep
|
|
||||||
gzip
|
|
||||||
libcap
|
|
||||||
openssl
|
|
||||||
p11-kit
|
|
||||||
pam
|
|
||||||
python3
|
|
||||||
rpm
|
|
||||||
sed
|
|
||||||
sudo
|
|
||||||
systemd
|
|
||||||
tar
|
|
||||||
util-linux-core
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue