From 076d79a0e3d9327168c71a4c0d81fe0c5e4c6138 Mon Sep 17 00:00:00 2001 From: swibrow <15628653+swibrow@users.noreply.github.com> Date: Sun, 9 Aug 2026 11:38:12 +0200 Subject: [PATCH] feat(dev-desktop): add herdr terminal multiplexer Needed for a headless SSH-accessible variant of this image (a persistent dev pod attached to via herdr's --remote SSH mode), not just the streamed desktop use case. Signed-off-by: swibrow <15628653+swibrow@users.noreply.github.com> --- images/dev-desktop/Dockerfile | 8 ++++++++ images/dev-desktop/metadata.yaml | 4 ++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/images/dev-desktop/Dockerfile b/images/dev-desktop/Dockerfile index 546472a..4b37db1 100644 --- a/images/dev-desktop/Dockerfile +++ b/images/dev-desktop/Dockerfile @@ -11,6 +11,8 @@ ARG CODEX_VERSION=0.145.0 ARG GEMINI_CLI_VERSION=0.52.0 # renovate: datasource=npm depName=opencode-ai ARG OPENCODE_VERSION=1.18.5 +# renovate: datasource=github-releases depName=herdrdev/herdr extractVersion=^v(?.+)$ +ARG HERDR_VERSION=0.8.0 SHELL ["/bin/bash", "-o", "pipefail", "-c"] @@ -81,6 +83,12 @@ RUN npm install -g --no-fund --no-audit \ && gemini --version \ && opencode --version +# herdr ships raw per-arch binaries as release assets, not a package repo. +RUN curl -fsSL -o /usr/local/bin/herdr \ + "https://github.com/herdrdev/herdr/releases/download/v${HERDR_VERSION}/herdr-linux-x86_64" \ + && chmod 0755 /usr/local/bin/herdr \ + && herdr --version + # video/render gate /dev/dri, input gates /dev/uinput for Moonlight input injection. RUN groupadd --gid 1001 dev \ && useradd --uid 1001 --gid dev --create-home --shell /usr/bin/zsh dev \ diff --git a/images/dev-desktop/metadata.yaml b/images/dev-desktop/metadata.yaml index 871b928..69e5da3 100644 --- a/images/dev-desktop/metadata.yaml +++ b/images/dev-desktop/metadata.yaml @@ -1,8 +1,8 @@ --- name: dev-desktop description: Arch Linux dev workstation with Hyprland streamed over Sunshine/Moonlight -version: 1.0.0 +version: 1.1.0 platforms: # archlinux has no official arm64 image, so this image is amd64-only. - linux/amd64 -test: Hyprland --version && sunshine --version && claude --version && codex --version && gemini --version && opencode --version && kubectl version --client && helm version --short && terraform version && tofu version && node --version && python3 --version && go version && uv --version && rg --version && nvim --version && chezmoi --version && test "$(whoami)" = dev +test: Hyprland --version && sunshine --version && claude --version && codex --version && gemini --version && opencode --version && herdr --version && kubectl version --client && helm version --short && terraform version && tofu version && node --version && python3 --version && go version && uv --version && rg --version && nvim --version && chezmoi --version && test "$(whoami)" = dev