From 1f8d1524eb649a2d39416f0983956e66e723bf58 Mon Sep 17 00:00:00 2001 From: Simon Zeni Date: Mon, 10 Nov 2025 15:28:13 -0500 Subject: [PATCH] Add OpenXR android virtual device image --- build-all.sh | 1 + install-avd.sh | 23 +++++++++++++++++++++++ openxr-avd.Dockerfile | 24 ++++++++++++++++++++++++ 3 files changed, 48 insertions(+) create mode 100755 install-avd.sh create mode 100644 openxr-avd.Dockerfile diff --git a/build-all.sh b/build-all.sh index 059b395..9c590bf 100755 --- a/build-all.sh +++ b/build-all.sh @@ -18,4 +18,5 @@ set -e ./build-one.sh openxr-sdk 20250603 "$@" ./build-one.sh openxr-pregenerated-sdk 20240924 "$@" ./build-one.sh openxr-android 20250121 "$@" + ./build-one.sh openxr-avd 20251027 "$@" ) diff --git a/install-avd.sh b/install-avd.sh new file mode 100755 index 0000000..1cb43db --- /dev/null +++ b/install-avd.sh @@ -0,0 +1,23 @@ +#!/usr/bin/env bash +# Copyright 2022-2025, Collabora, Ltd. and the Monado contributors +# +# SPDX-License-Identifier: BSL-1.0 + +set -eo pipefail + +# Default fallback values, should match install-android-sdk.sh +ANDROID_COMPILE_SDK=${ANDROID_COMPILE_SDK:-34} +ANDROID_SDK_ROOT=${ANDROID_SDK_ROOT:-/opt/android-sdk} +ANDROID_ARCH=${ANDROID_ARCH:-x86_64} + +SDKMANAGER=$ANDROID_SDK_ROOT/cmdline-tools/latest/bin/sdkmanager +AVDMANAGER=$ANDROID_SDK_ROOT/cmdline-tools/latest/bin/avdmanager +AVD_PACKAGE="system-images;android-${ANDROID_COMPILE_SDK};aosp_atd;${ANDROID_ARCH}" +AVD_NAME=openxr-pixel5 + +echo "Installing AVD simulator" +echo y | $SDKMANAGER "$AVD_PACKAGE" >> /dev/null + +echo "Configuring device" +$AVDMANAGER --verbose create avd --name $AVD_NAME --device pixel_5 --package $AVD_PACKAGE +$AVDMANAGER list avd diff --git a/openxr-avd.Dockerfile b/openxr-avd.Dockerfile new file mode 100644 index 0000000..3695e2d --- /dev/null +++ b/openxr-avd.Dockerfile @@ -0,0 +1,24 @@ +# Copyright (c) 2025, The Khronos Group Inc. +# +# SPDX-License-Identifier: Apache-2.0 + +FROM khronosgroup/docker-images:openxr-android + +LABEL maintainer="Rylie Pavlik " \ + org.opencontainers.image.authors="Rylie Pavlik " \ + org.opencontainers.image.source=https://github.com/KhronosGroup/DockerContainers/blob/main/openxr-avd.Dockerfile + +ENV LANG C.UTF-8 + +# Switch back to privileged user for AVD setup +USER root + +# Runtime dependencies for AVD +RUN env DEBIAN_FRONTEND=noninteractive apt-get update -qq && \ + env DEBIAN_FRONTEND=noninteractive apt-get install --no-install-recommends -y -qq \ + libx11-6 \ + && apt-get clean && \ + rm -rf /var/lib/apt/lists/* + +COPY install-avd.sh /install-avd.sh +RUN /install-avd.sh