Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 5 additions & 3 deletions .claude/skills/dxr-release/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
name: dxr-release
description: Tag-and-publish a release for any DisplayXR sibling component (shell, leia-plugin, mcp, gauss & modelviewer demos) FROM the displayxr-runtime hub. Takes an explicit component + version — clones the target repo to a temp dir, tags HEAD, watches the repo's CI, watches the dispatched versions-bump.yml on displayxr-runtime, reports the bump + installer-mirror outcome. NOT for displayxr-runtime itself (use /release) and NOT for the bundle (use /installer-release).
description: Tag-and-publish a release for any DisplayXR sibling component (shell, leia-plugin, mcp, gauss & modelviewer & mediaplayer demos) FROM the displayxr-runtime hub. Takes an explicit component + version — clones the target repo to a temp dir, tags HEAD, watches the repo's CI, watches the dispatched versions-bump.yml on displayxr-runtime, reports the bump + installer-mirror outcome. NOT for displayxr-runtime itself (use /release) and NOT for the bundle (use /installer-release).
---

# dxr-release — component release driven from the runtime hub
Expand Down Expand Up @@ -28,7 +28,7 @@ Spec: [`docs/specs/runtime/versions-json-autobump.md`](../../docs/specs/runtime/
```
/dxr-release <component> <version-spec>

<component> shell | leia-plugin (leia) | mcp | gauss (demo-gaussiansplat) | modelviewer (demo-modelviewer)
<component> shell | leia-plugin (leia) | mcp | gauss (demo-gaussiansplat) | modelviewer (demo-modelviewer) | mediaplayer (demo-mediaplayer)
<version-spec> vX.Y.Z | patch | minor | major
```

Expand All @@ -52,6 +52,7 @@ from cwd — that's the old cwd-detecting behavior this skill replaced.
| `mcp` | `DisplayXR/displayxr-mcp` | `mcp_tools` | `build.yml` | same repo |
| `gauss` / `demo-gaussiansplat` | `DisplayXR/displayxr-demo-gaussiansplat` | `gauss_demo` | `build-windows.yml` | same repo |
| `modelviewer` / `demo-modelviewer` | `DisplayXR/displayxr-demo-modelviewer` | `modelviewer_demo` | `build-windows.yml` | same repo |
| `mediaplayer` / `demo-mediaplayer` | `DisplayXR/displayxr-demo-mediaplayer` | `mediaplayer_demo` | `build-windows.yml` | same repo |

`runtime` → tell the user to use `/release` (in-repo). `installer` →
tell them to use `/installer-release`.
Expand Down Expand Up @@ -84,9 +85,10 @@ case "$COMPONENT" in
mcp) REPO=DisplayXR/displayxr-mcp; FIELD=mcp_tools; WORKFLOW=build.yml; REL_REPO=DisplayXR/displayxr-mcp ;;
gauss|demo-gaussiansplat) REPO=DisplayXR/displayxr-demo-gaussiansplat; FIELD=gauss_demo; WORKFLOW=build-windows.yml; REL_REPO=DisplayXR/displayxr-demo-gaussiansplat ;;
modelviewer|demo-modelviewer) REPO=DisplayXR/displayxr-demo-modelviewer; FIELD=modelviewer_demo; WORKFLOW=build-windows.yml; REL_REPO=DisplayXR/displayxr-demo-modelviewer ;;
mediaplayer|demo-mediaplayer) REPO=DisplayXR/displayxr-demo-mediaplayer; FIELD=mediaplayer_demo; WORKFLOW=build-windows.yml; REL_REPO=DisplayXR/displayxr-demo-mediaplayer ;;
runtime) echo "Use /release (in-repo) for the runtime."; exit 1 ;;
installer) echo "Use /installer-release for the bundle."; exit 1 ;;
*) echo "Unknown component '$COMPONENT'. One of: shell, leia-plugin, mcp, gauss."; exit 1 ;;
*) echo "Unknown component '$COMPONENT'. One of: shell, leia-plugin, mcp, gauss, modelviewer, mediaplayer."; exit 1 ;;
esac
echo "repo=$REPO field=$FIELD workflow=$WORKFLOW"
```
Expand Down
12 changes: 12 additions & 0 deletions scripts/lib/components.sh
Original file line number Diff line number Diff line change
Expand Up @@ -82,6 +82,18 @@ COMPONENT_EXE_WINDOWS_modelviewer_demo="DisplayXRModelViewerSetup-*.exe"
COMPONENT_INSTALL_MARKER_MACOS_modelviewer_demo=""
COMPONENT_INSTALL_MARKER_WINDOWS_modelviewer_demo="HKLM\\Software\\DisplayXR\\Demos\\ModelViewer"

# --- mediaplayer_demo ---
# Stereo media player demo (displayxr-demo-mediaplayer). Plays SBS image/video
# on the 3D display via the OpenXR extension wire protocol — no vendor SR SDK.
# Both installers (macOS .pkg + Windows .exe) are built + attached by CI on a
# v* tag. First release v1.0.0. Note: the macOS install marker has a space in
# the path — consumers must quote when testing existence.
COMPONENT_REPO_mediaplayer_demo="DisplayXR/displayxr-demo-mediaplayer"
COMPONENT_PKG_MACOS_mediaplayer_demo="DisplayXRMediaPlayer-*.pkg"
COMPONENT_EXE_WINDOWS_mediaplayer_demo="DisplayXRMediaPlayerSetup-*.exe"
COMPONENT_INSTALL_MARKER_MACOS_mediaplayer_demo="/Applications/Stereo Media Player.app"
COMPONENT_INSTALL_MARKER_WINDOWS_mediaplayer_demo="HKLM\\Software\\DisplayXR\\Demos\\MediaPlayer"

# Helper: look up a per-component field for the current platform.
# $1 = component name (runtime, shell, leia_plugin, mcp_tools)
# $2 = field (REPO, PKG_MACOS, EXE_WINDOWS, INSTALL_MARKER_MACOS)
Expand Down
4 changes: 4 additions & 0 deletions scripts/setup-displayxr.bat
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,10 @@ set "COMPONENT_REPO_modelviewer_demo=DisplayXR/displayxr-demo-modelviewer"
set "COMPONENT_EXE_modelviewer_demo=DisplayXRModelViewerSetup-*.exe"
set "COMPONENT_MARKER_modelviewer_demo=HKLM\Software\DisplayXR\Demos\ModelViewer"

set "COMPONENT_REPO_mediaplayer_demo=DisplayXR/displayxr-demo-mediaplayer"
set "COMPONENT_EXE_mediaplayer_demo=DisplayXRMediaPlayerSetup-*.exe"
set "COMPONENT_MARKER_mediaplayer_demo=HKLM\Software\DisplayXR\Demos\MediaPlayer"

REM --- Default flag state ---
set "WITH_MCP=0"
set "WITH_DEMOS=0"
Expand Down
3 changes: 2 additions & 1 deletion versions.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,5 +5,6 @@
"leia_plugin": "v1.2.1",
"mcp_tools": "v0.3.4",
"gauss_demo": "v1.6.0",
"modelviewer_demo": "v0.7.0"
"modelviewer_demo": "v0.7.0",
"mediaplayer_demo": "v0.0.0"
}
Loading