embed steam Half-Life data into the image itself

allows also adding hlsdk libs to the image
makes it easier to build, manage, and run
This commit is contained in:
Ivan Avdeev
2026-04-08 01:17:49 -04:00
parent eecca09544
commit c6edc9f3fe
6 changed files with 85 additions and 37 deletions
+9 -17
View File
@@ -1,15 +1,17 @@
FROM ubuntu:24.04
FROM ubuntu-hlsdk
# Avoid interactive prompts during package installation
ENV DEBIAN_FRONTEND=noninteractive
# Set working directory
WORKDIR /build
USER root
# Install Vulkan SDK repos
RUN wget -qO- https://packages.lunarg.com/lunarg-signing-key-pub.asc | tee /etc/apt/trusted.gpg.d/lunarg.asc \
&& wget -qO /etc/apt/sources.list.d/lunarg-vulkan-noble.list http://packages.lunarg.com/vulkan/lunarg-vulkan-noble.list
# Install system dependencies and development packages
RUN apt-get update && apt-get install --no-install-recommends --no-install-suggests -y \
wget \
build-essential \
vulkan-sdk \
libsdl2-dev \
libfreetype-dev \
\
@@ -24,11 +26,6 @@ RUN apt-get update && apt-get install --no-install-recommends --no-install-sugge
libpostproc-dev \
ffmpeg \
\
# Utilities
pkg-config \
python3 \
python3-pip \
\
# Running render tests
weston \
libgl1-mesa-dri \
@@ -36,16 +33,11 @@ RUN apt-get update && apt-get install --no-install-recommends --no-install-sugge
libvulkan1 \
imagemagick
RUN wget -qO- https://packages.lunarg.com/lunarg-signing-key-pub.asc | tee /etc/apt/trusted.gpg.d/lunarg.asc \
&& wget -qO /etc/apt/sources.list.d/lunarg-vulkan-noble.list http://packages.lunarg.com/vulkan/lunarg-vulkan-noble.list \
&& apt update \
&& apt install --no-install-recommends --no-install-suggests -y vulkan-sdk
# Remove extra cache after all the installations
RUN rm -rf /var/lib/apt/lists/*
RUN chown -R ubuntu:ubuntu /build
# Set working directory
WORKDIR /build
COPY build-and-test.sh /build/
# Switch to non-root user