fedora containers

This commit is contained in:
Anders Rytter Hansen 2023-11-05 17:37:56 +01:00
commit adb5e2c542
12 changed files with 363 additions and 0 deletions

View file

@ -0,0 +1,20 @@
FROM registry.fedoraproject.org/fedora-toolbox:39
RUN dnf update -y
RUN dnf install -y fish htop nano firejail
RUN dnf install -y libnotify nss
RUN dnf install -y --allowerasing bash bc curl diffutils dnf-plugins-core findutils gnupg2 less lsof ncurses passwd pinentry procps-ng shadow-utils sudo time util-linux wget vte-profile
RUN dnf install -y at-spi2-core gtk3 libXScrnSaver libXtst xdg-utils
RUN dnf install -y libglvnd-gles
RUN dnf install -y mesa-dri-drivers mesa-vulkan-drivers vulkan
RUN dnf install -y libva ibus ibus-gtk3 ibus-libs ibus-m17n ibus-setup libmpc libxkbcommon-x11 libxkbfile m17n-db m17n-lib python3-cairo python3-gobject python3-gobject-base python3-gobject-base-noarch setxkbmap xcb-util xcb-util-image xcb-util-keysyms xcb-util-renderutil xcb-util-wm xhost xmodmap xorg-x11-xinit xrdb cpp
RUN dnf install -y gcr3-base gcr3 gnome-keyring
RUN dnf install -y https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm \
&& dnf install -y https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
RUN dnf install -y libva-intel-driver gstreamer1-plugin-openh264 ffmpeg libva-utils mesa-va-drivers-freeworld libavcodec-freeworld nvidia-vaapi-driver nvidia-persistenced opencl-filesystem
RUN dnf install -y \
xorg-x11-drv-nvidia{,-cuda,-devel,-kmodsrc} \
xorg-x11-drv-nvidia-libs.i686
RUN dnf install -y dbus-glib pciutils-libs
RUN dnf -y install fuse
RUN dnf install -y firefox

View file

@ -0,0 +1,5 @@
#!/bin/sh
podman build -t andersrh/fedora-toolbox/base-gui -f base-gui.Dockerfile .
podman tag localhost/andersrh/fedora-toolbox/base-gui:latest localhost/andersrh/fedora-toolbox/base-gui:39
# podman build -t andersrh/fedora-toolbox/gui -f gui.Dockerfile .

View file

@ -0,0 +1,14 @@
FROM ghcr.io/andersrh/containers/fedora-toolbox/base-gui:main
WORKDIR /app
RUN dnf install -y xwininfo yt-dlp neofetch dnstop fedmod flatpak-module-tools fedpkg net-tools x2goclient qt-creator
COPY bin/* /usr/local/bin/
RUN ln -s /usr/bin/distrobox-host-exec /usr/local/bin/flatpak
RUN ln -s /usr/bin/distrobox-host-exec /usr/local/bin/podman
RUN ln -s /usr/bin/distrobox-host-exec /usr/local/bin/rpm-ostree
RUN ln -s /usr/bin/distrobox-host-exec /usr/local/bin/nvtop
RUN ln -s /usr/bin/distrobox-host-exec /usr/local/bin/distrobox
RUN ln -s /usr/bin/distrobox-host-exec /usr/local/bin/uksmdstats
RUN ln -s /usr/bin/distrobox-host-exec /usr/local/bin/kerver

View file

@ -0,0 +1,14 @@
#!/bin/sh
APPNAME="general"
podman build -t andersrh/fedora-toolbox/$APPNAME -f fedora.Dockerfile .
#toolbox create --image andersrh/fedora-toolbox/$APPNAME $APPNAME
distrobox create --image andersrh/fedora-toolbox/$APPNAME --home ~/containers/$APPNAME/ $APPNAME
distrobox create --image andersrh/fedora-toolbox/$APPNAME --init --home ~/containers/$APPNAME/ $APPNAME-systemd
distrobox enter $APPNAME -- distrobox-export --app x2goclient
distrobox enter $APPNAME -- distrobox-export --app qtcreator
distrobox create --image andersrh/fedora-toolbox/$APPNAME $APPNAME-defaulthome
distrobox enter $APPNAME-defaulthome -- distrobox-export --app gnome-tweaks

View file

@ -0,0 +1,9 @@
FROM ghcr.io/andersrh/containers/fedora-toolbox/base-gui:main
WORKDIR /app
RUN wget https://download.live.ledger.com/latest/linux -O ledgerlive \
&& chmod +x ledgerlive
COPY ledgerlive.desktop /usr/share/applications/
COPY ledgerlive.png /usr/share/icons/
RUN ln -s /app/ledgerlive /usr/bin/ledgerlive

View file

@ -0,0 +1,15 @@
#!/bin/sh
APPNAME="ledgerlive"
podman build -t andersrh/fedora-toolbox/$APPNAME -f Dockerfile .
podman rm -f $APPNAME
distrobox create --image andersrh/fedora-toolbox/$APPNAME --home ~/containers/$APPNAME/ $APPNAME
distrobox enter $APPNAME -- distrobox-export --bin /app/$APPNAME --export-path ~/.local/bin --extra-flags "--enable-features=WaylandWindowDecorations --ozone-platform=wayland"
podman rm -f $APPNAME
podman create --hostname "ledgerlive.anders-fedora" --ipc host --name "ledgerlive" --network host --privileged --security-opt label=disable --user root:root --pid host --label "manager=distrobox" --env "SHELL=/bin/bash" --env "HOME=/var/home/anders" --volume /:/run/host:rslave --volume /dev:/dev:rslave --volume /sys:/sys:rslave --volume /tmp:/tmp:rslave --volume "/usr/bin/distrobox-init":/usr/bin/entrypoint:ro --volume "/usr/bin/distrobox-export":/usr/bin/distrobox-export:ro --volume "/usr/bin/distrobox-host-exec":/usr/bin/distrobox-host-exec:ro --volume "/var/home/anders/containers/$APPNAME":"/var/home/anders":rslave --volume /sys/fs/selinux --volume /var/log/journal --volume /run/user/1000:/run/user/1000:rslave --volume /etc/hosts:/etc/hosts:ro --volume /etc/localtime:/etc/localtime:ro --volume /etc/resolv.conf:/etc/resolv.conf:ro --ulimit host --annotation run.oci.keep_original_groups=1 --mount type=devpts,destination=/dev/pts --userns keep-id --entrypoint /usr/bin/entrypoint andersrh/fedora-toolbox/ledgerlive -v --name "anders" --user 1000 --group 1000 --home "/var/home/anders" --init "0" --pre-init-hooks "" -- ''
cp ledgerlive.png ~/.local/share/icons/
cp ledgerlive.desktop ~/.local/share/applications/

View file

@ -0,0 +1,8 @@
[Desktop Entry]
Type = Application
Version = 1.0
Name = Ledger Live
Comment = Ledger Live
Icon = ledgerlive
Exec = ledgerlive --enable-features=WaylandWindowDecorations --ozone-platform=wayland
Terminal = false

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB