Compare commits
10 commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 8930a11968 | |||
| 6c46178bbb | |||
| 5ff7fd3597 | |||
| 04b26152ae | |||
| 396de43209 | |||
| 00dfa04654 | |||
| 3c5e37aee9 | |||
| dfa4cee904 | |||
|
|
77bb135f27 | ||
| e0813a6d6f |
6 changed files with 9 additions and 294 deletions
54
Dockerfile
54
Dockerfile
|
|
@ -1,54 +0,0 @@
|
|||
FROM registry.fedoraproject.org/fedora:38
|
||||
|
||||
ARG NAME=fedora-toolbox
|
||||
ARG 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(1) command" \
|
||||
summary="Image for creating Fedora Toolbx 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 broken_packages="$(rpm --all --query --state --queryformat "PACKAGE: %{NAME}\n" \
|
||||
| sed --quiet --regexp-extended '/PACKAGE: /{s/PACKAGE: // ; h ; b }; /^not installed/ { g; p }' \
|
||||
| uniq \
|
||||
| sort)"; \
|
||||
if [ "$broken_packages" != "" ]; then \
|
||||
echo "Packages with missing files:" >&2; \
|
||||
echo "$broken_packages" >&2; \
|
||||
false; \
|
||||
fi
|
||||
|
||||
RUN dnf clean all
|
||||
44
README.md
44
README.md
|
|
@ -1,44 +0,0 @@
|
|||
[Toolbx](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/).
|
||||
|
||||
Toolbx 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://ostreedev.github.io/ostree/) 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.
|
||||
|
||||
Toolbx 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 Toolbx 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 Toolbx container that offers the interactive command line
|
||||
environment.
|
||||
|
||||
Note that Toolbx 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
|
||||
Toolbx 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
|
||||
52
ensure-files
52
ensure-files
|
|
@ -1,52 +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/cracklib/cracklib-small.pwd*
|
||||
/usr/share/cracklib/pw_dict.pwd*
|
||||
|
||||
/usr/share/man/man8/dnf.8*
|
||||
/usr/share/man/man5/dnf.conf.5*
|
||||
|
||||
/usr/share/locale/de/LC_MESSAGES/elfutils.mo
|
||||
/usr/share/locale/ja/LC_MESSAGES/elfutils.mo
|
||||
|
||||
/usr/share/locale/fr/LC_MESSAGES/gawk.mo
|
||||
/usr/share/locale/ko/LC_MESSAGES/gawk.mo
|
||||
|
||||
/usr/share/man/man1/gpg2.1*
|
||||
/usr/share/man/man7/gnupg2.7*
|
||||
|
||||
/usr/share/info/nettle.info*
|
||||
|
||||
/usr/share/locale/fr/LC_MESSAGES/popt.mo
|
||||
/usr/share/locale/ja/LC_MESSAGES/popt.mo
|
||||
|
||||
/usr/share/man/fr/man1/pstree.1*
|
||||
/usr/share/man/ko/man1/pstree.1*
|
||||
/usr/share/man/man1/pstree.1*
|
||||
|
||||
/usr/share/info/history.info*
|
||||
|
||||
/usr/share/man/fr/man8/rpm.8*
|
||||
/usr/share/man/ja/man8/rpm.8*
|
||||
/usr/share/man/man8/rpm.8*
|
||||
|
||||
/usr/share/man/fr/man8/useradd.8*
|
||||
/usr/share/man/ja/man8/useradd.8*
|
||||
/usr/share/man/man8/useradd.8*
|
||||
|
||||
/usr/share/man/man1/cal.1.*
|
||||
/usr/share/man/man1/getopt.1*
|
||||
/usr/share/man/man1/hexdump.1*
|
||||
|
||||
/usr/share/man/man1/kill.1*
|
||||
/usr/share/man/man8/mount.8*
|
||||
|
||||
/usr/share/man/fr/man1/xz.1*
|
||||
/usr/share/man/ko/man1/xz.1*
|
||||
/usr/share/man/man1/xz.1*
|
||||
|
|
@ -1,52 +0,0 @@
|
|||
bash-completion
|
||||
bc
|
||||
bzip2
|
||||
cracklib-dicts
|
||||
diffutils
|
||||
dnf-plugins-core
|
||||
findutils
|
||||
flatpak-spawn
|
||||
fpaste
|
||||
gawk-all-langpacks
|
||||
git
|
||||
glibc-gconv-extra
|
||||
gnupg2
|
||||
gnupg2-smime
|
||||
gvfs-client
|
||||
hostname
|
||||
iproute
|
||||
iputils
|
||||
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
|
||||
psmisc
|
||||
rsync
|
||||
shadow-utils
|
||||
sudo
|
||||
tcpdump
|
||||
time
|
||||
traceroute
|
||||
tree
|
||||
unzip
|
||||
util-linux
|
||||
vte-profile
|
||||
vulkan-loader
|
||||
wget
|
||||
which
|
||||
whois
|
||||
words
|
||||
xorg-x11-xauth
|
||||
xz
|
||||
zip
|
||||
92
missing-docs
92
missing-docs
|
|
@ -1,92 +0,0 @@
|
|||
acl
|
||||
alternatives
|
||||
audit-libs
|
||||
authselect
|
||||
authselect-libs
|
||||
bash
|
||||
ca-certificates
|
||||
coreutils-common
|
||||
cracklib
|
||||
crypto-policies
|
||||
curl
|
||||
cyrus-sasl-lib
|
||||
dnf
|
||||
dnf-data
|
||||
elfutils-libelf
|
||||
expat
|
||||
file-libs
|
||||
filesystem
|
||||
findutils
|
||||
gawk
|
||||
glib2
|
||||
gmp
|
||||
gnupg2
|
||||
gnutls
|
||||
gpgme
|
||||
grep
|
||||
gzip
|
||||
ima-evm-utils
|
||||
keyutils-libs
|
||||
krb5-libs
|
||||
libarchive
|
||||
libassuan
|
||||
libblkid
|
||||
libcap
|
||||
libcap-ng
|
||||
libcomps
|
||||
libdb
|
||||
libdnf
|
||||
libeconf
|
||||
libevent
|
||||
libffi
|
||||
libgcrypt
|
||||
libgomp
|
||||
libgpg-error
|
||||
libidn2
|
||||
libksba
|
||||
libmodulemd
|
||||
libpwquality
|
||||
librepo
|
||||
libsemanage
|
||||
libsigsegv
|
||||
libsolv
|
||||
libssh
|
||||
libtasn1
|
||||
libtirpc
|
||||
libunistring
|
||||
libunistring1.0
|
||||
libverto
|
||||
libxcrypt
|
||||
libxml2
|
||||
libyaml
|
||||
lz4-libs
|
||||
mpfr
|
||||
ncurses-base
|
||||
nettle
|
||||
openldap
|
||||
openssl
|
||||
p11-kit
|
||||
pam
|
||||
pcre2-syntax
|
||||
popt
|
||||
python3
|
||||
python3-libs
|
||||
python3-rpm
|
||||
readline
|
||||
rpm
|
||||
rpm-sequoia
|
||||
sed
|
||||
setup
|
||||
shadow-utils
|
||||
sqlite-libs
|
||||
sudo
|
||||
systemd
|
||||
systemd-libs
|
||||
tar
|
||||
tpm2-tss
|
||||
tzdata
|
||||
util-linux-core
|
||||
vim-minimal
|
||||
yum
|
||||
zchunk-libs
|
||||
zlib
|
||||
Loading…
Add table
Add a link
Reference in a new issue