Add an --xvfb switch to 'build run' and 'job' that wraps the Linux build
command in 'xvfb-run -a sh -c ...', giving GUI toolkits (GTK4/PyGObject)
a headless $DISPLAY. Exported env vars precede xvfb-run so they
propagate into the virtual-display session. No-op (with a notice) for
Windows guests.
The local-ci-build composite action exposes it as the 'xvfb' input
(default false), forwarded as INPUT_XVFB -> --xvfb, mirroring the
use-shared-cache/skip-artifact wiring.
Docs: WORKFLOW-AUTHORING.md parameter table + Linux example note;
LINUX-TEMPLATE-SETUP.md Step 4a (the template ships python3-gi
gir1.2-gtk-4.0 xvfb). Adds build-run unit tests (wrap, plain, Windows
no-op).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Runner fetches the composite action from @main. Propagates the
cross-repo branch/commit inputs.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Runner fetches the composite action from @main. Propagates the
default-on transport/submodules inputs and explicit flag forwarding.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Runner fetches the composite action from @main. Propagates the
github.com-free artifact handling (host-side collect dir).
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Runner fetches the composite action from @main. Propagates the fix
that stops an empty artifact-path output from globbing the F: drive.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Runner fetches the composite action from @main; main still had
upload-artifact@v4 which fails on Gitea (GHESNotSupportedError).
Brings the v3 action.yml from feature/python-rewrite-and-linux-migration.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Required so `uses: .../local-ci-build@main` resolves: the action only
existed on feature/python-rewrite-and-linux-migration. Brings just the
action.yml (host-side orchestrator unchanged) without merging the full
migration branch.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>