Compare commits

...

5 commits

9 changed files with 35 additions and 7 deletions

View file

@ -0,0 +1,16 @@
FROM dobu/deps-base-ubuntu-jammy:latest
ARG UPSTREAM_VERSION
COPY ./prebuilt-mpr.pub /usr/share/keyrings/prebuilt-mpr-archive-keyring.gpg
RUN mkdir -p /etc/apt/sources.list.d
COPY ./prebuilt-mpr.list /etc/apt/sources.list.d/prebuilt-mpr.list
RUN apt-get -y update && apt-get -y install prismlauncher qtwayland5 openjdk-17-jdk
USER user
ENTRYPOINT [ "/usr/bin/prismlauncher" ]

View file

@ -0,0 +1,2 @@
#!/usr/bin/env bash
INVALIDATE_CACHE_UPSTREAM_GITHUB="PrismLauncher/PrismLauncher"

View file

@ -0,0 +1 @@
deb [signed-by=/usr/share/keyrings/prebuilt-mpr-archive-keyring.gpg] https://proget.makedeb.org prebuilt-mpr jammy

Binary file not shown.

View file

@ -14,11 +14,15 @@ extra_args=""
if [ ! -z "${INVALIDATE_CACHE_UPSTREAM_ARCHLINUX+x}" ]; then
log "Fetching upstream package version from Arch Linux"
upstream_ver="$(get_archlinux_pkg_ver "$INVALIDATE_CACHE_UPSTREAM_ARCHLINUX")"
log "Latest upstream version: $upstream_ver"
extra_args="$extra_args --build-arg UPSTREAM_VERSION=$upstream_ver"
elif [ ! -z "${INVALIDATE_CACHE_UPSTREAM_UBUNTU+x}" ]; then
log "Fetching upstream package version from Ubuntu (Launchpad)"
upstream_ver="$(get_ubuntu_pkg_ver "$INVALIDATE_CACHE_UPSTREAM_UBUNTU")"
elif [ ! -z "${INVALIDATE_CACHE_UPSTREAM_GITHUB+x}" ]; then
log "Fetching upstream package version from GitHub"
upstream_ver="$(get_github_pkg_ver "$INVALIDATE_CACHE_UPSTREAM_GITHUB")"
fi
if [ ! -z "$upstream_ver" ]; then
log "Latest upstream version: $upstream_ver"
extra_args="$extra_args --build-arg UPSTREAM_VERSION=$upstream_ver"
fi

View file

@ -7,13 +7,13 @@ RUN dpkg --add-architecture i386 \
# Base package list reflects the Arch Linux image
RUN apt-get -y install \
libegl-mesa0 libgl1-mesa-dri mesa-vulkan-drivers mesa-va-drivers \
libwayland-client0 libwayland-cursor0 libwayland-egl1 \
libwayland-client0 libwayland-cursor0 libwayland-egl1 libgles2-mesa \
libxcomposite1 libxcursor1 libxdamage1 libxext6 libxfixes3 \
libxi6 libxinerama1 libxrandr2 libxrender1 libpulse0 pulseaudio \
fonts-noto-core fonts-noto-extra fonts-noto-cjk \
fonts-noto-cjk-extra wayland-protocols \
fonts-noto-cjk-extra wayland-protocols ca-certificates \
libegl-mesa0:i386 libgl1-mesa-dri:i386 mesa-vulkan-drivers:i386 mesa-va-drivers:i386 \
libwayland-client0:i386 libwayland-cursor0:i386 libwayland-egl1:i386 \
libwayland-client0:i386 libwayland-cursor0:i386 libwayland-egl1:i386 libgles2-mesa:i386\
libxcomposite1:i386 libxcursor1:i386 libxdamage1:i386 libxext6:i386 libxfixes3:i386 \
libxi6:i386 libxinerama1:i386 libxrandr2:i386 libxrender1:i386 libpulse0:i386

View file

@ -15,6 +15,7 @@ RUN mkdir /build && cd /build \
RUN cd /build/platform2/vm_tools/sommelier \
&& sed -i 's/#define XDG_SHELL_VERSION 3u/#define XDG_SHELL_VERSION 2u/' sommelier.h \
&& sed -i 's/args\[i++\] = "-rootless";/args[i++] = "-rootless"; args[i++] = "-extension"; args[i++] = "MIT-SHM";/' sommelier.cc \
&& sed -i 's/bool noop_driver = false;/bool noop_driver = true;/' sommelier.cc \
&& meson build -Dwith_tests=false && ninja -C build
# Build from ../base-archlinux

View file

@ -79,8 +79,8 @@ fi
# Don't detach like we did with Sommelier, though
podman run --rm "${podman_security_args[@]}" --name "$container_name" \
`# Create tmpfs mountpoints for runtime directories` \
--mount type=tmpfs,destination=/xdg_runtime \
--mount type=tmpfs,destination=/tmp/.X11-unix \
--mount type=tmpfs,destination=/xdg_runtime,chown,tmpfs-mode=0700 \
--mount type=tmpfs,destination=/tmp/.X11-unix,chown,tmpfs-mode=0700 \
`# Pass through Sommelier Wayland socket` \
`# Note that XDG_RUNTIME_DIR is already set in the image` \
-v "$DOBU_TMP/xdg_runtime/wayland-1":/xdg_runtime/wayland-0 \

View file

@ -122,3 +122,7 @@ get_archlinux_pkg_ver() {
get_ubuntu_pkg_ver() {
curl "https://api.launchpad.net/1.0/ubuntu/+archive/primary?ws.op=getPublishedSources&source_name=$1&exact_match=true" | jq -r '.entries[0].source_package_version'
}
get_github_pkg_ver() {
curl "https://api.github.com/repos/$1/tags" | jq -r '.[0].name'
}