tirbofish/dropbear · diff
ci: realised that slank creates errors in action build. fixing that.
jarvis, run github actions.
NOTE: THIS IS NOT A COMPLETE BUILD, its just a ci test.
Signature present but could not be verified.
Unverified
@@ -17,18 +17,50 @@ jobs: os_name: windows-x64 target: x86_64-pc-windows-msvc ext: .exe + slang_platform: windows-x86_64 + slang_ext: zip - os: ubuntu-latest os_name: linux-x64 target: x86_64-unknown-linux-gnu ext: "" + slang_platform: linux-x86_64 + slang_ext: tar.gz - os: macos-latest os_name: macos-arm64 target: aarch64-apple-darwin ext: "" + slang_platform: macos-aarch64 + slang_ext: zip steps: - uses: actions/checkout@v4 with: submodules: 'recursive' + + - name: Download and setup Slang + shell: bash + run: | + # Get latest release info + RELEASE_INFO=$(curl -s https://api.github.com/repos/shader-slang/slang/releases/latest) + VERSION=$(echo "$RELEASE_INFO" | grep -o '"tag_name": *"[^"]*"' | sed 's/"tag_name": *"\(.*\)"/\1/' | sed 's/^v//') + + # Download slang + SLANG_FILE="slang-${VERSION}-${{ matrix.slang_platform }}.${{ matrix.slang_ext }}" + SLANG_URL="https://github.com/shader-slang/slang/releases/download/v${VERSION}/${SLANG_FILE}" + + echo "Downloading Slang ${VERSION} from ${SLANG_URL}" + curl -L -o "${SLANG_FILE}" "${SLANG_URL}" + + # Extract + mkdir -p slang + if [ "${{ matrix.slang_ext }}" = "zip" ]; then + unzip -q "${SLANG_FILE}" -d slang + else + tar -xzf "${SLANG_FILE}" -C slang + fi + + # Set environment variable for subsequent steps + echo "SLANG_DIR=$(pwd)/slang" >> $GITHUB_ENV + - name: Set up JDK 21 uses: actions/setup-java@v4 with: @@ -5,7 +5,7 @@ dropbear is a game engine used to create games, made in Rust and scripted with the Kotlin Language. -It's name is a double entendre, with it being the nickname of koalas but also fits in nicely with the theme of rust utilising memory management with "drops". +Its name is a double entendre, with it being the nickname of koalas but also fits in nicely with the theme of rust utilising memory management with "drops". If you might have not realised, all the crates/projects names are after Australian items. @@ -16,7 +16,7 @@ If you might have not realised, all the crates/projects names are after Australi - [eucalyptus-core](https://github.com/tirbofish/dropbear/tree/main/crates/eucalyptus-core) is the library used by both `redback-runtime` and `eucalyptus-editor` to share configs and metadata between each other. - [redback-runtime](https://github.com/tirbofish/dropbear/tree/main/crates/redback-runtime) is the runtime used to load .eupak files and run the game loaded on them. - [magna-carta](https://github.com/tirbofish/dropbear/tree/main/crates/magna-carta) is a rust library used to generate compile-time Kotlin/Native and Kotlin/JVM metadata for searching. -- [kino_ui](https://github.com/tirbofish/dropbear/tree/main/crates/kino_ui) is the main runtime-side UI system to render widgets and elements. +- [kino-ui](https://github.com/tirbofish/dropbear/tree/main/crates/kino-ui) is the main runtime-side UI system to render widgets and elements. [//]: # (- [eucalyptus-sdk](https://github.com/tirbofish/dropbear/tree/main/eucalyptus-sdk) is used to develop plugins to be used with the `eucalyptus-editor`) @@ -9,7 +9,7 @@ Assembly-like instructions to render different components, including standard an ```rust pub fn init() { - let renderer = KinoWGPURenderer::new(/*yadda yadda doo*/); + let renderer = KinoWGPURenderer::new(/*yabba dabba doo*/); let windowing = KinoWinitWindowing::new(window.clone()); // keep this with you this is important. the rest are owned by KinoState