Files
2025-05-22 13:26:06 -04:00

48 lines
2.2 KiB
Docker

# syntax=docker/dockerfile:1
## Buildstage ##
FROM ghcr.io/linuxserver/baseimage-alpine:3.21 AS buildstage
ARG MOD_VERSION
RUN \
echo "**** install packages ****" && \
if [ -z "${MOD_VERSION}" ]; then \
MOD_VERSION=$(curl -sfX GET "https://api.github.com/repos/intel/compute-runtime/releases/latest" | jq -r '.tag_name'); \
fi && \
COMP_RT_URLS_LEGACY1=$(curl -sfX GET "https://api.github.com/repos/intel/compute-runtime/releases/tags/24.35.30872.22" | jq -r '.body' | grep wget | grep -v .sum | grep -v .ddeb | grep -v zero-gpu_ | grep -v opencl-icd_ | sed 's|wget ||g') && \
echo "**** grab legacy1 debs ****" && \
mkdir -p /root-layer/opencl-intel-legacy1 && \
for i in $COMP_RT_URLS_LEGACY1; do \
echo "**** downloading ${i%$'\r'} ****" && \
curl -fS --retry 3 --retry-connrefused -o \
/root-layer/opencl-intel-legacy1/$(basename "${i%$'\r'}") -L \
"${i%$'\r'}" || exit 1; \
done && \
COMP_RT_URLS=$(curl -sfX GET "https://api.github.com/repos/intel/compute-runtime/releases/tags/${MOD_VERSION}" | jq -r '.body' | grep wget | grep -v .sum | grep -v .ddeb | sed 's|wget ||g') && \
if [ -z "${COMP_RT_URLS}" ]; then \
echo "**** No download URLs found in release, checking artifacts ****"; \
COMP_RT_URLS=$(curl -sfX GET "https://api.github.com/repos/intel/compute-runtime/releases/tags/${MOD_VERSION}" | jq -r '.assets[].browser_download_url' | grep -v .sum | grep -v .ddeb); \
IGC_VERSION=$(curl -sfX GET "https://api.github.com/repos/intel/intel-graphics-compiler/releases/latest" | jq -r '.tag_name'); \
COMP_RT_URLS="${COMP_RT_URLS} $(curl -sfX GET https://api.github.com/repos/intel/intel-graphics-compiler/releases/tags/${IGC_VERSION} | jq -r '.assets[].browser_download_url' | grep -v devel)"; \
fi && \
echo "**** grab latest debs ****" && \
mkdir -p /root-layer/opencl-intel && \
for i in $COMP_RT_URLS; do \
echo "**** downloading ${i%$'\r'} ****" && \
curl -fS --retry 3 --retry-connrefused -o \
/root-layer/opencl-intel/$(basename "${i%$'\r'}") -L \
"${i%$'\r'}" || exit 1; \
done
# copy local files
COPY root/ /root-layer/
## Single layer deployed image ##
FROM scratch
LABEL maintainer="aptalca"
# Add files from buildstage
COPY --from=buildstage /root-layer/ /