diff --git a/Containerfile b/Containerfile index 6e95902..4b6f5ea 100644 --- a/Containerfile +++ b/Containerfile @@ -1,24 +1,20 @@ FROM scratch AS ctx COPY build_files / -FROM ghcr.io/ublue-os/akmods-nvidia:main-42 AS nvidia - FROM ghcr.io/ublue-os/base-main:42 RUN rm -r /opt && mkdir /opt RUN --mount=type=bind,from=ctx,source=/,target=/ctx \ - --mount=type=bind,from=nvidia,source=/,target=/nvidia \ - --mount=type=cache,dst=/var/cache \ - --mount=type=cache,dst=/var/log \ - --mount=type=tmpfs,dst=/tmp \ - /ctx/build.sh - -RUN --mount=type=bind,from=ctx,source=/,target=/ctx \ - --mount=type=bind,from=nvidia,source=/,target=/nvidia \ --mount=type=cache,dst=/var/cache \ --mount=type=cache,dst=/var/log \ --mount=type=tmpfs,dst=/tmp \ /ctx/nvidia.sh +RUN --mount=type=bind,from=ctx,source=/,target=/ctx \ + --mount=type=cache,dst=/var/cache \ + --mount=type=cache,dst=/var/log \ + --mount=type=tmpfs,dst=/tmp \ + /ctx/build.sh + RUN bootc container lint diff --git a/build_files/nvidia.sh b/build_files/nvidia.sh index d4eea17..984d773 100755 --- a/build_files/nvidia.sh +++ b/build_files/nvidia.sh @@ -1,13 +1,65 @@ -rpm-ostree install -y rpmdevtools akmods -rpm-ostree 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 -rpm-ostree install -y ffmpeg x265-libs +#!/usr/bin/bash +# based on https://raw.githubusercontent.com/ublue-os/bluefin/ba5d621270982b245343abcae47b3393cc5cffb8/build_files/base/03-install-kernel-akmods.sh -# https://rpmfusion.org/Howto/NVIDIA -# https://www.tecmint.com/install-nvidia-drivers-in-linux -# https://github.com/ublue-os/akmods -# https://github.com/Comprehensive-Wall28/Nvidia-Fedora-Guide -# following Nvidia-Fedora-Guide installation -rpm-ostree install -y akmod-nvidia xorg-x11-drv-nvidia-cuda # xorg-x11-drv-nvidia +echo "::group:: ===$(basename "$0")===" -dnf5 clean all \ No newline at end of file +# Set Variables +export AKMODS_FLAVOR=main +export KERNEL="6.17.9-200.fc42.x86_64" +export IMAGE_NAME="" + +set -eoux pipefail + +# Remove Existing Kernel +for pkg in kernel kernel-core kernel-modules kernel-modules-core kernel-modules-extra; do + rpm --erase $pkg --nodeps +done + +# Fetch Common AKMODS & Kernel RPMS +skopeo copy --retry-times 3 docker://ghcr.io/ublue-os/akmods:"${AKMODS_FLAVOR}"-"$(rpm -E %fedora)"-"${KERNEL}" dir:/tmp/akmods +AKMODS_TARGZ=$(jq -r '.layers[].digest'