File Dockerfile.driver-580.82.07 of Package nvidia-driver-image

# SPDX-License-Identifier: NVIDIA DEEP LEARNING CONTAINER LICENSE

#     Copyright (c) 2026 SUSE LLC

# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon.

# The content of THIS FILE IS AUTOGENERATED and should not be manually modified.
# It is maintained by the BCI team and generated by
# https://github.com/SUSE/BCI-dockerfile-generator

# Please submit bugfixes or comments via https://bugs.opensuse.org/
# You can contact the BCI team via https://github.com/SUSE/bci/discussions

#!UseOBSRepositories
#!ExclusiveArch: x86_64 aarch64
#!BuildTag: third-party/nvidia/driver:580.82.07-sles%OS_VERSION_ID_SP%-%RELEASE%
#!BuildTag: third-party/nvidia/driver:580.82.07-sles%OS_VERSION_ID_SP%
#!BcntSyncTag: nvidia-driver-image
#!BuildName: nvidia-driver-580.82.07
#!BuildVersion: 15.7.580.82.07
FROM registry.suse.com/bci/bci-micro:15.7 AS target
FROM registry.suse.com/bci/bci-base:15.7 AS nvidia-driver-builder
COPY --from=target / /target
RUN set -euo pipefail; zypper -n install --no-recommends dwarves elfutils gcc libelf-devel pesign-obs-integration zstd dracut gcc-c++ make mokutil pciutils perl-Bootloader python3 systemd xz
RUN set -euo pipefail; \
    export CHKSTAT_ALLOW_INSECURE_MODE_IF_NO_PROC=1; \
    zypper -n --installroot /target --gpg-auto-import-keys install --no-recommends awk coreutils findutils grep jq kmod rpm-ndb sed util-linux util-linux-systemd
RUN mkdir -p /tmp/
#!RemoteAssetUrl: https://developer.download.nvidia.com/compute/cuda/repos/sles15/x86_64/dkms-3.3.0-1.noarch.rpm dkms-3.3.0-1.x86_64.rpm sha256:f0a5ea2f08ccf3c92fb5704b47b7dcd53a330f7284d35854278bd0543a098ec4
COPY dkms-3.3.0-1.x86_64.rpm /tmp/
#!RemoteAssetUrl: https://developer.download.nvidia.com/compute/cuda/repos/sles15/sbsa/dkms-3.3.0-1.noarch.rpm dkms-3.3.0-1.aarch64.rpm sha256:f0a5ea2f08ccf3c92fb5704b47b7dcd53a330f7284d35854278bd0543a098ec4
COPY dkms-3.3.0-1.aarch64.rpm /tmp/
#!RemoteAssetUrl: https://developer.download.nvidia.com/compute/cuda/repos/sles15/x86_64/libOpenCL1-2.2.11-8.3.1.x86_64.rpm sha256:d0a60fce054572969271cd27629574cd35930fcb3b83c9685acc6c267b931e6e
COPY libOpenCL1-2.2.11-8.3.1.x86_64.rpm /tmp/
#!RemoteAssetUrl: https://developer.download.nvidia.com/compute/cuda/repos/sles15/sbsa/libOpenCL1-2.2.11-8.3.1.aarch64.rpm sha256:a664cba336a0fb95fedaaf29b002ea064ef91d1b304dce263dcd1f99be03fadd
COPY libOpenCL1-2.2.11-8.3.1.aarch64.rpm /tmp/
#!RemoteAssetUrl: https://developer.download.nvidia.com/compute/cuda/repos/sles15/x86_64/libnvidia-cfg-580.82.07-1.x86_64.rpm sha256:357d677445a0b430a5dae09f8ee3405164d60e45857bc0e1b1206c1b9b6e0ff5
COPY libnvidia-cfg-580.82.07-1.x86_64.rpm /tmp/
#!RemoteAssetUrl: https://developer.download.nvidia.com/compute/cuda/repos/sles15/sbsa/libnvidia-cfg-580.82.07-1.aarch64.rpm sha256:4455e38c8745e251ace7b33f7e99a7e591757bf36343343ab16ab5b89998e0fc
COPY libnvidia-cfg-580.82.07-1.aarch64.rpm /tmp/
#!RemoteAssetUrl: https://developer.download.nvidia.com/compute/cuda/repos/sles15/x86_64/libnvidia-gpucomp-580.82.07-1.x86_64.rpm sha256:51430c2fa14dbefe8933c8ebc9d8b121919aff1b0395186c8c8fa01c9b1bf854
COPY libnvidia-gpucomp-580.82.07-1.x86_64.rpm /tmp/
#!RemoteAssetUrl: https://developer.download.nvidia.com/compute/cuda/repos/sles15/sbsa/libnvidia-gpucomp-580.82.07-1.aarch64.rpm sha256:6f7b1336aafeeec12bee6ebe97b1669dc2e35580436f7d7040881374f6a98c69
COPY libnvidia-gpucomp-580.82.07-1.aarch64.rpm /tmp/
#!RemoteAssetUrl: https://developer.download.nvidia.com/compute/cuda/repos/sles15/x86_64/libnvidia-ml-580.82.07-1.x86_64.rpm sha256:95db871761741ab7a62827ec068887046ed151506e87f22c5888b69d94449671
COPY libnvidia-ml-580.82.07-1.x86_64.rpm /tmp/
#!RemoteAssetUrl: https://developer.download.nvidia.com/compute/cuda/repos/sles15/sbsa/libnvidia-ml-580.82.07-1.aarch64.rpm sha256:51a2ff04de7433f745799072af20f85fb7aa64b9bacbb81922bad337b85559bd
COPY libnvidia-ml-580.82.07-1.aarch64.rpm /tmp/
#!RemoteAssetUrl: https://developer.download.nvidia.com/compute/cuda/repos/sles15/x86_64/nvidia-common-G06-580.82.07-1.x86_64.rpm sha256:b70dca630763306211726a47b06a79de01cc8d2dec2ab5dfb2ad465ef325a64f
COPY nvidia-common-G06-580.82.07-1.x86_64.rpm /tmp/
#!RemoteAssetUrl: https://developer.download.nvidia.com/compute/cuda/repos/sles15/sbsa/nvidia-common-G06-580.82.07-1.aarch64.rpm sha256:6e66a67c9378c5e96d95c19cc9286b12891cfe17d08eaa4408efcd3914297f42
COPY nvidia-common-G06-580.82.07-1.aarch64.rpm /tmp/
#!RemoteAssetUrl: https://developer.download.nvidia.com/compute/cuda/repos/sles15/x86_64/nvidia-compute-G06-580.82.07-1.x86_64.rpm sha256:fc76ea73a85f3a29cf1910388dae699cbc70e252dc01a37caac28b3145a3680c
COPY nvidia-compute-G06-580.82.07-1.x86_64.rpm /tmp/
#!RemoteAssetUrl: https://developer.download.nvidia.com/compute/cuda/repos/sles15/sbsa/nvidia-compute-G06-580.82.07-1.aarch64.rpm sha256:20ba56714559bf87c49d7fda88e74e9c20f2dd08e044affb5e39569899d1fa9d
COPY nvidia-compute-G06-580.82.07-1.aarch64.rpm /tmp/
#!RemoteAssetUrl: https://developer.download.nvidia.com/compute/cuda/repos/sles15/x86_64/nvidia-compute-utils-G06-580.82.07-1.x86_64.rpm sha256:15c80d572fd892791b1a7bd84c178bde13519a3038b3a726c040fee5b5c07395
COPY nvidia-compute-utils-G06-580.82.07-1.x86_64.rpm /tmp/
#!RemoteAssetUrl: https://developer.download.nvidia.com/compute/cuda/repos/sles15/sbsa/nvidia-compute-utils-G06-580.82.07-1.aarch64.rpm sha256:1aeeeab8bdeb96d32dabfa5832a6232db2652988f1b0259bdff572b2bd70890f
COPY nvidia-compute-utils-G06-580.82.07-1.aarch64.rpm /tmp/
#!RemoteAssetUrl: https://developer.download.nvidia.com/compute/cuda/repos/sles15/x86_64/nvidia-driver-G06-580.82.07-1.x86_64.rpm sha256:56bcff95f67cf3fdbdce67cb10d4bb3959daab30fda5ef295d5e1aad9ecb5ffd
COPY nvidia-driver-G06-580.82.07-1.x86_64.rpm /tmp/
#!RemoteAssetUrl: https://developer.download.nvidia.com/compute/cuda/repos/sles15/sbsa/nvidia-driver-G06-580.82.07-1.aarch64.rpm sha256:de0e5c31d679670fb490d702b7be69a8ee090e74b7adc6d7a7392ec829978108
COPY nvidia-driver-G06-580.82.07-1.aarch64.rpm /tmp/
#!RemoteAssetUrl: https://developer.download.nvidia.com/compute/cuda/repos/sles15/x86_64/nvidia-driver-assistant-0.46.126.20-1.noarch.rpm nvidia-driver-assistant-0.46.126.20-1.x86_64.rpm sha256:00985339e19dfba6555738dffcfda80774f6415ff505142e1098e74139300198
COPY nvidia-driver-assistant-0.46.126.20-1.x86_64.rpm /tmp/
#!RemoteAssetUrl: https://developer.download.nvidia.com/compute/cuda/repos/sles15/sbsa/nvidia-driver-assistant-0.46.126.20-1.noarch.rpm nvidia-driver-assistant-0.46.126.20-1.aarch64.rpm sha256:00985339e19dfba6555738dffcfda80774f6415ff505142e1098e74139300198
COPY nvidia-driver-assistant-0.46.126.20-1.aarch64.rpm /tmp/
#!RemoteAssetUrl: https://developer.download.nvidia.com/compute/cuda/repos/sles15/x86_64/nvidia-modprobe-580.82.07-1.x86_64.rpm sha256:679e6a0a484c7e2b16683b27cc93f8ed03f13406ece82b640e87ed9fede336b1
COPY nvidia-modprobe-580.82.07-1.x86_64.rpm /tmp/
#!RemoteAssetUrl: https://developer.download.nvidia.com/compute/cuda/repos/sles15/sbsa/nvidia-modprobe-580.82.07-1.aarch64.rpm sha256:08df9b673408ca122111fc0c4629091d2b2083cabede19a9339391a13f7aad88
COPY nvidia-modprobe-580.82.07-1.aarch64.rpm /tmp/
#!RemoteAssetUrl: https://developer.download.nvidia.com/compute/cuda/repos/sles15/x86_64/nvidia-open-driver-G06-580.82.07-1.noarch.rpm nvidia-open-driver-G06-580.82.07-1.x86_64.rpm sha256:c88d9a3c01612b1d8d169e77aad0911b0bf1247aacde2b43756179edfc6931ef
COPY nvidia-open-driver-G06-580.82.07-1.x86_64.rpm /tmp/
#!RemoteAssetUrl: https://developer.download.nvidia.com/compute/cuda/repos/sles15/sbsa/nvidia-open-driver-G06-580.82.07-1.noarch.rpm nvidia-open-driver-G06-580.82.07-1.aarch64.rpm sha256:520f74571f5859df4f8a133b0137ade153bab747171f1ff9fed7f3e04121210a
COPY nvidia-open-driver-G06-580.82.07-1.aarch64.rpm /tmp/
#!RemoteAssetUrl: https://developer.download.nvidia.com/compute/cuda/repos/sles15/x86_64/nvidia-persistenced-580.82.07-1.x86_64.rpm sha256:8cae0a2e7c5c1d03cae3c78391956b3cac8fd00683888fc93afd4bc407c324f2
COPY nvidia-persistenced-580.82.07-1.x86_64.rpm /tmp/
#!RemoteAssetUrl: https://developer.download.nvidia.com/compute/cuda/repos/sles15/sbsa/nvidia-persistenced-580.82.07-1.aarch64.rpm sha256:33cb9f9e49ed293edc85605c0608f871b993c4ce7eac5c5af5ea933449b1d656
COPY nvidia-persistenced-580.82.07-1.aarch64.rpm /tmp/
#!RemoteAssetUrl: https://api.opensuse.org/public/build/SUSE:SLE-15-SP7:GA/pool/x86_64/kernel-default/kernel-default-6.4.0-150700.51.1.x86_64.rpm
COPY kernel-default-6.4.0-150700.51.1.x86_64.rpm /tmp/
#!RemoteAssetUrl: https://api.opensuse.org/public/build/SUSE:SLE-15-SP7:GA/pool/aarch64/kernel-default/kernel-default-6.4.0-150700.51.1.aarch64.rpm
COPY kernel-default-6.4.0-150700.51.1.aarch64.rpm /tmp/
#!RemoteAssetUrl: https://api.opensuse.org/public/build/SUSE:SLE-15-SP7:GA/pool/x86_64/kernel-default/kernel-default-devel-6.4.0-150700.51.1.x86_64.rpm
COPY kernel-default-devel-6.4.0-150700.51.1.x86_64.rpm /tmp/
#!RemoteAssetUrl: https://api.opensuse.org/public/build/SUSE:SLE-15-SP7:GA/pool/aarch64/kernel-default/kernel-default-devel-6.4.0-150700.51.1.aarch64.rpm
COPY kernel-default-devel-6.4.0-150700.51.1.aarch64.rpm /tmp/
#!RemoteAssetUrl: https://api.opensuse.org/public/build/SUSE:SLE-15-SP7:GA/pool/x86_64/kernel-syms/kernel-syms-6.4.0-150700.51.1.x86_64.rpm
COPY kernel-syms-6.4.0-150700.51.1.x86_64.rpm /tmp/
#!RemoteAssetUrl: https://api.opensuse.org/public/build/SUSE:SLE-15-SP7:GA/pool/aarch64/kernel-syms/kernel-syms-6.4.0-150700.51.1.aarch64.rpm
COPY kernel-syms-6.4.0-150700.51.1.aarch64.rpm /tmp/
#!RemoteAssetUrl: https://api.opensuse.org/public/build/SUSE:SLE-15-SP7:GA/pool/x86_64/kernel-source/kernel-devel-6.4.0-150700.51.1.noarch.rpm kernel-devel-6.4.0-150700.51.1.x86_64.rpm
COPY kernel-devel-6.4.0-150700.51.1.x86_64.rpm /tmp/
#!RemoteAssetUrl: https://api.opensuse.org/public/build/SUSE:SLE-15-SP7:GA/pool/aarch64/kernel-source/kernel-devel-6.4.0-150700.51.1.noarch.rpm kernel-devel-6.4.0-150700.51.1.aarch64.rpm
COPY kernel-devel-6.4.0-150700.51.1.aarch64.rpm /tmp/
#!RemoteAssetUrl: https://api.opensuse.org/public/build/SUSE:SLE-15-SP7:GA/pool/x86_64/kernel-source/kernel-macros-6.4.0-150700.51.1.noarch.rpm kernel-macros-6.4.0-150700.51.1.x86_64.rpm
COPY kernel-macros-6.4.0-150700.51.1.x86_64.rpm /tmp/
#!RemoteAssetUrl: https://api.opensuse.org/public/build/SUSE:SLE-15-SP7:GA/pool/aarch64/kernel-source/kernel-macros-6.4.0-150700.51.1.noarch.rpm kernel-macros-6.4.0-150700.51.1.aarch64.rpm
COPY kernel-macros-6.4.0-150700.51.1.aarch64.rpm /tmp/
#!RemoteAssetUrl: https://api.opensuse.org/public/build/SUSE:SLE-15-SP7:GA/pool/aarch64/kernel-64kb/kernel-64kb-devel-6.4.0-150700.51.1.aarch64.rpm
COPY kernel-64kb-devel-6.4.0-150700.51.1.aarch64.rpm /tmp/

COPY cuda-sles15-x86_64.repo /etc/zypp/repos.d/cuda-sles15-x86_64.repo
COPY cuda-sles15-x86_64.gpg.key /tmp/cuda-sles15-x86_64.gpg.key
RUN rpm --import /tmp/cuda-sles15-x86_64.gpg.key
RUN rpm --root /target --import /tmp/cuda-sles15-x86_64.gpg.key
COPY cuda-sles15-sbsa.repo /etc/zypp/repos.d/cuda-sles15-sbsa.repo
COPY cuda-sles15-sbsa.gpg.key /tmp/cuda-sles15-sbsa.gpg.key
RUN rpm --import /tmp/cuda-sles15-sbsa.gpg.key
RUN rpm --root /target --import /tmp/cuda-sles15-sbsa.gpg.key
FROM nvidia-driver-builder AS open-driver-builder
RUN set -euo pipefail; if [ "$(uname -m)" = "x86_64" ]; then \
        zypper -n --gpg-auto-import-keys install \
            --capability \
            --no-recommends \
            --auto-agree-with-licenses \
            /tmp/dkms-3.3.0-1.x86_64.rpm \
            /tmp/libOpenCL1-2.2.11-8.3.1.x86_64.rpm \
            /tmp/libnvidia-cfg-580.82.07-1.x86_64.rpm \
            /tmp/libnvidia-gpucomp-580.82.07-1.x86_64.rpm \
            /tmp/libnvidia-ml-580.82.07-1.x86_64.rpm \
            /tmp/nvidia-common-G06-580.82.07-1.x86_64.rpm \
            /tmp/nvidia-compute-G06-580.82.07-1.x86_64.rpm \
            /tmp/nvidia-compute-utils-G06-580.82.07-1.x86_64.rpm \
            /tmp/nvidia-driver-assistant-0.46.126.20-1.x86_64.rpm \
            /tmp/nvidia-modprobe-580.82.07-1.x86_64.rpm \
            /tmp/nvidia-open-driver-G06-580.82.07-1.x86_64.rpm \
            /tmp/nvidia-persistenced-580.82.07-1.x86_64.rpm \
            /tmp/kernel-default-6.4.0-150700.51.1.x86_64.rpm \
            /tmp/kernel-default-devel-6.4.0-150700.51.1.x86_64.rpm \
            /tmp/kernel-syms-6.4.0-150700.51.1.x86_64.rpm \
            /tmp/kernel-devel-6.4.0-150700.51.1.x86_64.rpm \
            /tmp/kernel-macros-6.4.0-150700.51.1.x86_64.rpm; \
    fi
RUN set -euo pipefail; if [ "$(uname -m)" = "aarch64" ]; then \
        zypper -n --gpg-auto-import-keys install \
            --capability \
            --no-recommends \
            --auto-agree-with-licenses \
            /tmp/dkms-3.3.0-1.aarch64.rpm \
            /tmp/libOpenCL1-2.2.11-8.3.1.aarch64.rpm \
            /tmp/libnvidia-cfg-580.82.07-1.aarch64.rpm \
            /tmp/libnvidia-gpucomp-580.82.07-1.aarch64.rpm \
            /tmp/libnvidia-ml-580.82.07-1.aarch64.rpm \
            /tmp/nvidia-common-G06-580.82.07-1.aarch64.rpm \
            /tmp/nvidia-compute-G06-580.82.07-1.aarch64.rpm \
            /tmp/nvidia-compute-utils-G06-580.82.07-1.aarch64.rpm \
            /tmp/nvidia-driver-assistant-0.46.126.20-1.aarch64.rpm \
            /tmp/nvidia-modprobe-580.82.07-1.aarch64.rpm \
            /tmp/nvidia-open-driver-G06-580.82.07-1.aarch64.rpm \
            /tmp/nvidia-persistenced-580.82.07-1.aarch64.rpm \
            /tmp/kernel-default-6.4.0-150700.51.1.aarch64.rpm \
            /tmp/kernel-default-devel-6.4.0-150700.51.1.aarch64.rpm \
            /tmp/kernel-syms-6.4.0-150700.51.1.aarch64.rpm \
            /tmp/kernel-devel-6.4.0-150700.51.1.aarch64.rpm \
            /tmp/kernel-macros-6.4.0-150700.51.1.aarch64.rpm \
            /tmp/kernel-64kb-devel-6.4.0-150700.51.1.aarch64.rpm; \
    fi

RUN set -euo pipefail; if rpm -q dkms >/dev/null 2>&1; then \
        printf 'compress="zstd"\n' > /etc/dkms/framework.conf.d/module-compress.conf; \
        dkms autoinstall -k $(basename /lib/modules/*-default); \
    fi
RUN set -euo pipefail; cp -rfx /lib/modules/*/updates /opt/open
RUN set -euo pipefail; mkdir /opt/lib && cp -rfx /lib/firmware /opt/lib/firmware

FROM nvidia-driver-builder AS closed-driver-builder
RUN set -euo pipefail; if [ "$(uname -m)" = "x86_64" ]; then \
        zypper -n --gpg-auto-import-keys install \
            --capability \
            --no-recommends \
            --auto-agree-with-licenses \
            /tmp/dkms-3.3.0-1.x86_64.rpm \
            /tmp/libOpenCL1-2.2.11-8.3.1.x86_64.rpm \
            /tmp/libnvidia-cfg-580.82.07-1.x86_64.rpm \
            /tmp/libnvidia-gpucomp-580.82.07-1.x86_64.rpm \
            /tmp/libnvidia-ml-580.82.07-1.x86_64.rpm \
            /tmp/nvidia-common-G06-580.82.07-1.x86_64.rpm \
            /tmp/nvidia-compute-G06-580.82.07-1.x86_64.rpm \
            /tmp/nvidia-compute-utils-G06-580.82.07-1.x86_64.rpm \
            /tmp/nvidia-driver-G06-580.82.07-1.x86_64.rpm \
            /tmp/nvidia-driver-assistant-0.46.126.20-1.x86_64.rpm \
            /tmp/nvidia-modprobe-580.82.07-1.x86_64.rpm \
            /tmp/nvidia-persistenced-580.82.07-1.x86_64.rpm \
            /tmp/kernel-default-6.4.0-150700.51.1.x86_64.rpm \
            /tmp/kernel-default-devel-6.4.0-150700.51.1.x86_64.rpm \
            /tmp/kernel-syms-6.4.0-150700.51.1.x86_64.rpm \
            /tmp/kernel-devel-6.4.0-150700.51.1.x86_64.rpm \
            /tmp/kernel-macros-6.4.0-150700.51.1.x86_64.rpm; \
    fi
RUN set -euo pipefail; if [ "$(uname -m)" = "aarch64" ]; then \
        zypper -n --gpg-auto-import-keys install \
            --capability \
            --no-recommends \
            --auto-agree-with-licenses \
            /tmp/dkms-3.3.0-1.aarch64.rpm \
            /tmp/libOpenCL1-2.2.11-8.3.1.aarch64.rpm \
            /tmp/libnvidia-cfg-580.82.07-1.aarch64.rpm \
            /tmp/libnvidia-gpucomp-580.82.07-1.aarch64.rpm \
            /tmp/libnvidia-ml-580.82.07-1.aarch64.rpm \
            /tmp/nvidia-common-G06-580.82.07-1.aarch64.rpm \
            /tmp/nvidia-compute-G06-580.82.07-1.aarch64.rpm \
            /tmp/nvidia-compute-utils-G06-580.82.07-1.aarch64.rpm \
            /tmp/nvidia-driver-G06-580.82.07-1.aarch64.rpm \
            /tmp/nvidia-driver-assistant-0.46.126.20-1.aarch64.rpm \
            /tmp/nvidia-modprobe-580.82.07-1.aarch64.rpm \
            /tmp/nvidia-persistenced-580.82.07-1.aarch64.rpm \
            /tmp/kernel-default-6.4.0-150700.51.1.aarch64.rpm \
            /tmp/kernel-default-devel-6.4.0-150700.51.1.aarch64.rpm \
            /tmp/kernel-syms-6.4.0-150700.51.1.aarch64.rpm \
            /tmp/kernel-devel-6.4.0-150700.51.1.aarch64.rpm \
            /tmp/kernel-macros-6.4.0-150700.51.1.aarch64.rpm \
            /tmp/kernel-64kb-devel-6.4.0-150700.51.1.aarch64.rpm; \
    fi

RUN set -euo pipefail; if rpm -q dkms >/dev/null 2>&1; then \
        printf 'compress="zstd"\n' > /etc/dkms/framework.conf.d/module-compress.conf; \
        dkms autoinstall -k $(basename /lib/modules/*-default); \
    fi
RUN set -euo pipefail; cp -rfx /lib/modules/*/updates /opt/proprietary

FROM nvidia-driver-builder AS builder

COPY --from=open-driver-builder /usr/share/nvidia-driver-assistant/supported-gpus/supported-gpus.json /target/usr/share/nvidia-driver-assistant/supported-gpus/supported-gpus.json
COPY --from=open-driver-builder /opt/lib /target/opt/lib
COPY --from=open-driver-builder /opt/open /target/opt/open
COPY --from=closed-driver-builder /opt/proprietary /target/opt/proprietary
RUN set -euo pipefail; if [ "$(uname -m)" = "x86_64" ]; then \
        rpm --root /target -Uvh --nodeps \
            /tmp/dkms-3.3.0-1.x86_64.rpm \
            /tmp/libOpenCL1-2.2.11-8.3.1.x86_64.rpm \
            /tmp/libnvidia-cfg-580.82.07-1.x86_64.rpm \
            /tmp/libnvidia-gpucomp-580.82.07-1.x86_64.rpm \
            /tmp/libnvidia-ml-580.82.07-1.x86_64.rpm \
            /tmp/nvidia-common-G06-580.82.07-1.x86_64.rpm \
            /tmp/nvidia-compute-G06-580.82.07-1.x86_64.rpm \
            /tmp/nvidia-compute-utils-G06-580.82.07-1.x86_64.rpm \
            /tmp/nvidia-driver-assistant-0.46.126.20-1.x86_64.rpm \
            /tmp/nvidia-modprobe-580.82.07-1.x86_64.rpm \
            /tmp/nvidia-persistenced-580.82.07-1.x86_64.rpm; \
    fi
RUN set -euo pipefail; if [ "$(uname -m)" = "aarch64" ]; then \
        rpm --root /target -Uvh --nodeps \
            /tmp/dkms-3.3.0-1.aarch64.rpm \
            /tmp/libOpenCL1-2.2.11-8.3.1.aarch64.rpm \
            /tmp/libnvidia-cfg-580.82.07-1.aarch64.rpm \
            /tmp/libnvidia-gpucomp-580.82.07-1.aarch64.rpm \
            /tmp/libnvidia-ml-580.82.07-1.aarch64.rpm \
            /tmp/nvidia-common-G06-580.82.07-1.aarch64.rpm \
            /tmp/nvidia-compute-G06-580.82.07-1.aarch64.rpm \
            /tmp/nvidia-compute-utils-G06-580.82.07-1.aarch64.rpm \
            /tmp/nvidia-driver-assistant-0.46.126.20-1.aarch64.rpm \
            /tmp/nvidia-modprobe-580.82.07-1.aarch64.rpm \
            /tmp/nvidia-persistenced-580.82.07-1.aarch64.rpm; \
    fi

# cleanup logs and temporary files
RUN set -euo pipefail; zypper -n --installroot /target clean -a; \
    rm -rf {/target,}/var/log/{alternatives.log,lastlog,tallylog,zypper.log,zypp/history,YaST2}; \
    rm -rf {/target,}/run/*; \
    rm -f {/target,}/etc/{shadow-,group-,passwd-,.pwd.lock}; \
    rm -f {/target,}/usr/lib/sysimage/rpm/.rpm.lock; \
    rm -f {/target,}/var/lib/zypp/AnonymousUniqueId; \
    rm -f {/target,}/var/lib/zypp/AutoInstalled; \
    rm -f {/target,}/var/cache/ldconfig/aux-cache

# set the day of last password change to empty
RUN set -euo pipefail; sed -i 's/^\([^:]*:[^:]*:\)[^:]*\(:.*\)$/\1\2/' /target/etc/shadow
FROM registry.suse.com/bci/bci-micro:15.7
COPY --from=builder /target /
# Define labels according to https://en.opensuse.org/Building_derived_containers
# labelprefix=com.suse.third-party.nvidia-driver
LABEL org.opencontainers.image.authors="https://github.com/SUSE/bci/discussions"
LABEL org.opencontainers.image.title="SLE BCI NVIDIA Driver"
LABEL org.opencontainers.image.description="NVIDIA Driver container based on the SUSE Linux Enterprise Base Container Image."
LABEL org.opencontainers.image.version="580.82.07"
LABEL org.opencontainers.image.url="https://www.suse.com/products/base-container-images/"
LABEL org.opencontainers.image.created="%BUILDTIME%"
LABEL org.opencontainers.image.vendor="SUSE LLC"
LABEL org.opencontainers.image.source="%SOURCEURL%"
LABEL org.opencontainers.image.ref.name="580.82.07-sles%OS_VERSION_ID_SP%"
LABEL org.opensuse.reference="registry.suse.com/third-party/nvidia/driver:580.82.07-sles%OS_VERSION_ID_SP%-%RELEASE%"
LABEL org.openbuildservice.disturl="%DISTURL%"
LABEL com.suse.supportlevel="techpreview"
LABEL com.suse.supportlevel.until=""
LABEL com.suse.eula="sle-beta"
LABEL com.suse.lifecycle-url="https://www.suse.com/lifecycle#suse-linux-enterprise-server-15"
LABEL com.suse.release-stage="beta"
# endlabelprefix
LABEL org.opencontainers.image.base.name="%BASE_REFNAME%"
LABEL org.opencontainers.image.base.digest="%BASE_DIGEST%"
LABEL io.artifacthub.package.readme-url="%SOURCEURL_WITH(README.driver-580.82.07.md)%"
ENV DISABLE_VGPU_VERSION_CHECK="true"
ENV DRIVER_BRANCH="580"
ENV DRIVER_TYPE="passthrough"
ENV DRIVER_VERSION="580.82.07"
ENV KERNEL_VERSION="latest"
ENV NVIDIA_VISIBLE_DEVICES="void"
ENV VGPU_LICENSE_SERVER_TYPE="NLS"
ENTRYPOINT ["nvidia-driver", "load"]

COPY extract-vmlinux /usr/local/bin/
RUN set -euo pipefail; chmod +x /usr/local/bin/extract-vmlinux

COPY nvidia-driver /usr/local/bin/
RUN set -euo pipefail; chmod +x /usr/local/bin/nvidia-driver

COPY nvidia-driver-selector.sh /usr/local/bin/
RUN set -euo pipefail; chmod +x /usr/local/bin/nvidia-driver-selector.sh

RUN set -euo pipefail; mkdir /licenses
COPY NGC-DL-CONTAINER-LICENSE /licenses

RUN set -euo pipefail; mkdir /drivers
COPY vGPU-README.md /drivers/README.md

WORKDIR /drivers

ENTRYPOINT ["nvidia-driver", "load"]
# Avoid blkid waiting on udev (bsc#1247914)
RUN set -euo pipefail; sed -i -e 's/^EVALUATE=.*/EVALUATE=scan/g' /etc/blkid.conf
openSUSE Build Service is sponsored by