VulkanCI
Action to enable running Vulkan apps on GitHub runners
Install / Use
/learn @NcStudios/VulkanCIREADME
VulkanCI
This action performs minimal setup to enable building and running Vulkan applications on GitHub-hosted runners. It installs the Vulkan headers, loader, and validation layers, as well as SwiftShader (a software-only Vulkan implementation), and sets up the GitHub environment with the necessary variables.
Usage
- uses: NcStudios/VulkanCI@v1.0
with:
# VulkanSDK version to use
# Must be a supported version
# The default value is 1.4.309.0
sdkVersion: 1.4.309.0
# Optional path to installation path
# The default value is '${{ github.workspace }}`
installPath: 'myArtifacts'
Outputs
vulkan-install-pathPath where the VulkanSDK was installedswiftshader-install-pathPath where SwiftShader was installed
Variables can be accessed through the step outputs: ${{ steps.<id>.outputs.swiftshader-install-path }}.
In addition to the output variables, the action updates the following contexts to allow files and libraries to be found:
github.envVULKAN_SDKVULKAN_SDK_VERSIONVK_LAYER_PATHVK_DRIVER_FILES(points to a SwiftShader manifest atswiftshader-install-path/vk_swiftshader_icd.json)LD_LIBRARY_PATH(Linux only)DYLD_LIBRARY_PATH(macOS only)
github.path$VULKAN_SDK/bin(Windows only)
Supported VulkanSDK Versions
- 1.4.309.0
- 1.3.283.0
- 1.3.280.0
- 1.3.275.0
- 1.3.261.1
Supported Runners
The intention is to support all standard GitHub-hosted runners. Tests currently run on:
windows-2019windows-2022ubuntu20.04ubuntu22.04ubuntu24.04macOS-13macOS-14macOS-15
Known Limitations
Due to significant build times, pre-built artifacts are downloaded from the corresponding release of this action. This requires the action version to be specified as a tag - targeting a SHA will not work.
The Vulkan loader is built with LOADER_USE_UNSAFE_FILE_SEARCH=ON to more reliably allow file discovery through environment variables. To state the obvious, the artifacts provided here are not intended for use outside of testing environments.
Currently, all macOS binaries are built for x86_64.
Related Skills
node-connect
340.2kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
84.1kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
340.2kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
84.1kCommit, push, and open a PR
