From 78a2e68421cb6fc76fd1ceefc29709c821466132 Mon Sep 17 00:00:00 2001 From: Benjamin Sherman Date: Fri, 12 Apr 2024 15:34:52 -0500 Subject: [PATCH] chore: cleanup Containerfile args & comments --- Containerfile | 57 ++++++++++++++++++++++++++++++++++----------------- 1 file changed, 38 insertions(+), 19 deletions(-) diff --git a/Containerfile b/Containerfile index 6e4bc6e..da1dad9 100644 --- a/Containerfile +++ b/Containerfile @@ -1,28 +1,47 @@ -### 1. BUILD ARGS -## These enable the produced image to be different by passing different build args. -## They are provided on the commandline when building in a terminal, but the github -## workflow provides them when building in Github Actions. Changes to the workflow -## build.yml will override changes here. +## 1. BUILD ARGS +# These allow changing the produced image by passing different build args to adjust +# the source from which your image is built. +# Build args can be provided on the commandline when building locally with: +# podman build -f Containerfile --build-arg FEDORA_VERSION=40 -t local-image -## SOURCE_IMAGE arg can be anything from ublue upstream: silverblue, kinoite, sericea, base -## See list here: https://github.com/orgs/ublue-os/packages?repo_name=main +# SOURCE_IMAGE arg can be anything from ublue upstream which matches your desired version: +# See list here: https://github.com/orgs/ublue-os/packages?repo_name=main +# - "silverblue" +# - "kinoite" +# - "sericea" +# - "onyx" +# - "lazurite" +# - "vauxite" +# - "base" +# +# "aurora", "bazzite", "bluefin" or "ucore" may also be used but have different suffixes. ARG SOURCE_IMAGE="silverblue" -## SOURCE_SUFFIX arg should be "main", nvidia users should use "nvidia" -ARG SOURCE_SUFFIX="main" +## SOURCE_SUFFIX arg should include a hyphen and the appropriate suffix name +# These examples all work for silverblue/kinoite/sericea/onyx/lazurite/vauxite/base +# - "-main" +# - "-nvidia" +# - "-asus" +# - "-asus-nvidia" +# - "-surface" +# - "-surface-nvidia" +# +# aurora, bazzite and bluefin each have unique suffixes. Please check the specific image. +# ucore has the following possible suffixes +# - stable +# - stable-nvidia +# - stable-zfs +# - stable-nvidia-zfs +# - (and the above with testing rather than stable) +ARG SOURCE_SUFFIX="-main" -## FEDORA_VERSION arg must be a version built by ublue: 37 or 38 as of today +## FEDORA_VERSION arg must be a version built by ublue: eg, 39 or 40 ARG FEDORA_VERSION="39" -## NVIDIA_VERSION should only be changed if the user needs a specific nvidia driver version -## This will depend on your hardware and the version of the driver that supports it. -## if needing driver 470, this should be set to "-470". It is important to include the hyphen -ARG NVIDIA_VERSION="" - ### 2. SOURCE IMAGE ## this is a standard Containerfile FROM using the build ARGs above to select the right upstream image -FROM ghcr.io/ublue-os/${SOURCE_IMAGE}-${SOURCE_SUFFIX}:${FEDORA_VERSION}${NVIDIA_VERSION} +FROM ghcr.io/ublue-os/${SOURCE_IMAGE}${SOURCE_SUFFIX}:${FEDORA_VERSION} ### 3. PRE-MODIFICATIONS @@ -42,14 +61,14 @@ RUN mkdir -p /var/lib/alternatives # List of rpmfusion packages can be found here: # https://mirrors.rpmfusion.org/mirrorlist?path=free/fedora/updates/39/x86_64/repoview/index.html&protocol=https&redirect=1 RUN rpm-ostree install screen -# exmaple package from rpmfusion -RUN rpm-ostree install vlc +# example package from rpmfusion +#RUN rpm-ostree install vlc #### Installation of static binaries # static binaries can sometimes by added using a COPY directive like these below. COPY --from=cgr.dev/chainguard/kubectl:latest /usr/bin/kubectl /usr/bin/kubectl -# COPY --from=docker.io/docker/compose-bin:latest /docker-compose /usr/bin/docker-compose +#COPY --from=docker.io/docker/compose-bin:latest /docker-compose /usr/bin/docker-compose #### Change to System Configuration Files