content: 
  ARG VULKAN_SDK_VERSION
  
  # Using FROM reference as COPY command doesn't support args
  FROM axsauze/vulkan-sdk:$VULKAN_SDK_VERSION as vulkansdk-image
  
  # Ubuntu as actual image base
  FROM ubuntu:22.04 as swiftshader-builder
  
  # Repeating ARG for context in this image
  ARG VULKAN_SDK_VERSION
  
  # Base packages from default ppa
  RUN apt-get update -y
  RUN apt-get install -y wget
  RUN apt-get install -y gnupg
  RUN apt-get install -y ca-certificates
  RUN apt-get install -y software-properties-common
  
  # Build dependencies
  RUN apt install -y git
  RUN apt-get install -y cmake g++
  
  # Setup Vulkan
  ENV VULKAN_SDK="/VulkanSDK/${VULKAN_SDK_VERSION}/x86_64"
  ENV PATH="${VULKAN_SDK}/bin:${PATH}"
  ENV LD_LIBRARY_PATH="${VULKAN_SDK}/lib"
  ENV VK_LAYER_PATH="${VULKAN_SDK}/etc/explicit_layer.d"
  
  COPY --from=vulkansdk-image ${VULKAN_SDK} ${VULKAN_SDK}
  
  # Dependencies for swiftshader
  # RUN apt-get install -y g++-8 gcc-8
  RUN apt-get install -y gcc
  RUN apt-get install -y libx11-dev zlib1g-dev
  RUN apt-get install -y libxext-dev
  
  # Run swiftshader via env VK_ICD_FILENAMES=/swiftshader/vk_swiftshader_icd.json
  RUN git clone https://github.com/google/swiftshader swiftshader-build
  RUN cmake swiftshader-build/. -Bswiftshader-build/build/
  RUN cmake --build swiftshader-build/build/. --parallel 8
  RUN cp -r swiftshader-build/build/Linux/ swiftshader/
  
  
  # Store build in slim down image
  FROM ubuntu:22.04
  
  COPY --from=swiftshader-builder /swiftshader/ /swiftshader/
  
  