FROM quay.io/fedora/fedora-silverblue:43 RUN dnf5 install -y https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm \ https://mirrors.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm \ https://repo.protonvpn.com/fedora-$(cat /etc/fedora-release | cut -d' ' -f 3)-stable/protonvpn-stable-release/protonvpn-stable-release-1.0.3-1.noarch.rpm && \ dnf5 install -y \ akmods \ android-tools \ ansible \ audacity \ baobab \ cinnamon \ distrobox \ dkms \ fuse-sshfs \ geany \ htop \ iftop \ iotop \ nvtop \ radeontop \ solaar \ steam \ syncthing \ vim && \ dnf5 clean all # TODO: Remove this `|| true` hack once post scriptlets no longer make dnf exit with non-zero RUN dnf5 install -y akmod-nvidia proton-vpn-gnome-desktop || true # TODO: Remove these unnecessary checks to make sure the packages above actually got installed. rpm exits non-zero if the package is not installed and aborts the Containerfile build RUN rpm -q akmod-nvidia && rpm -q proton-vpn-gnome-desktop RUN /usr/sbin/akmods --force --kernels "$(rpm -qa kernel --queryformat '%{VERSION}-%{RELEASE}.%{ARCH}')" RUN git clone https://github.com/johnfanv2/LenovoLegionLinux.git && \ mkdir -p /usr/src/LenovoLegionLinux-1.0.0 && \ cp /LenovoLegionLinux/kernel_module/* /usr/src/LenovoLegionLinux-1.0.0 -r && \ dkms add -m LenovoLegionLinux -v 1.0.0 && \ dkms build -m LenovoLegionLinux -v 1.0.0 -k $(rpm -qa kernel --queryformat '%{VERSION}-%{RELEASE}.%{ARCH}') && \ rm -rf LenovoLegionLinux # Cleanup image for linting RUN rm -rf /var && mkdir /var && \ rm -rf /boot && mkdir /boot # Verify image is good RUN bootc container lint --fatal-warnings --skip baseimage-composefs