MelonLoader v0.6.6 #1992
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build MelonLoader | |
on: | |
push: | |
branches: [ master, alpha-development, v0.6.0-rewrite ] | |
pull_request: | |
branches: [ master, alpha-development, v0.6.0-rewrite ] | |
workflow_dispatch: | |
jobs: | |
build_core_debug: | |
runs-on: windows-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: setup-msbuild | |
uses: microsoft/setup-msbuild@v2 | |
- name: Build Melonloader Core | |
shell: cmd | |
run: msbuild /restore /p:Platform="Windows - x64" # Platform is actually irrelevant for core, it's compiled as AnyCPU either way | |
- name: Upload core artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: MLCoreDebug | |
path: Output/Debug/MelonLoader/ | |
build_core_release: | |
runs-on: windows-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: setup-msbuild | |
uses: microsoft/setup-msbuild@v2 | |
- name: Build Melonloader Core | |
shell: cmd | |
run: msbuild /restore /p:Configuration=Release /p:Platform="Windows - x64" | |
- name: Upload core artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: MLCoreRelease | |
path: Output/Release/MelonLoader/ | |
build_rust_windows: | |
runs-on: windows-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: rust-toolchain | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
toolchain: nightly | |
# Target triple to install for this toolchain | |
targets: i686-pc-windows-msvc, x86_64-pc-windows-msvc | |
# Build Rust Release | |
- name: Build Rust Release | Windows - x86 | |
shell: cmd | |
run: cargo +nightly build --target i686-pc-windows-msvc --release | |
- name: Build Rust Release | Windows - x64 | |
shell: cmd | |
run: cargo +nightly build --target x86_64-pc-windows-msvc --release | |
# Build Rust Debug | |
- name: Build Rust Debug | Windows - x86 | |
shell: cmd | |
run: cargo +nightly build --target i686-pc-windows-msvc | |
- name: Build Rust Debug | Windows - x64 | |
shell: cmd | |
run: cargo +nightly build --target x86_64-pc-windows-msvc | |
# Upload Proxy Release - x86 | |
- name: Upload Proxy Release | Windows x86 | |
uses: actions/upload-artifact@v4 | |
with: | |
name: MLProxyX86-Windows-Release | |
path: target/i686-pc-windows-msvc/release/version.dll | |
# Upload Bootstrap Release - x86 | |
- name: Upload Bootstrap Release | Windows x86 | |
uses: actions/upload-artifact@v4 | |
with: | |
name: MLBootstrapX86-Windows-Release | |
path: target/i686-pc-windows-msvc/release/Bootstrap.dll | |
# Upload Proxy Release - x64 | |
- name: Upload Proxy Release | Windows x64 | |
uses: actions/upload-artifact@v4 | |
with: | |
name: MLProxyX64-Windows-Release | |
path: target/x86_64-pc-windows-msvc/release/version.dll | |
# Upload Bootstrap Release - x64 | |
- name: Upload Bootstrap Release | Windows x64 | |
uses: actions/upload-artifact@v4 | |
with: | |
name: MLBootstrapX64-Windows-Release | |
path: target/x86_64-pc-windows-msvc/release/Bootstrap.dll | |
# Upload Proxy Debug - x86 | |
- name: Upload Proxy Debug | Windows x86 | |
uses: actions/upload-artifact@v4 | |
with: | |
name: MLProxyX86-Windows-Debug | |
path: target/i686-pc-windows-msvc/debug/version.dll | |
# Upload Bootstrap Debug - x86 | |
- name: Upload Bootstrap Debug | Windows x86 | |
uses: actions/upload-artifact@v4 | |
with: | |
name: MLBootstrapX86-Windows-Debug | |
path: target/i686-pc-windows-msvc/debug/Bootstrap.dll | |
# Upload Proxy Debug - x64 | |
- name: Upload Proxy Debug | Windows x64 | |
uses: actions/upload-artifact@v4 | |
with: | |
name: MLProxyX64-Windows-Debug | |
path: target/x86_64-pc-windows-msvc/debug/version.dll | |
# Upload Bootstrap Debug - x64 | |
- name: Upload Bootstrap Debug | Windows x64 | |
uses: actions/upload-artifact@v4 | |
with: | |
name: MLBootstrapX64-Windows-Debug | |
path: target/x86_64-pc-windows-msvc/debug/Bootstrap.dll | |
build_rust_linux: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: rust-toolchain | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
toolchain: nightly | |
# Target triple to install for this toolchain | |
targets: x86_64-unknown-linux-gnu | |
- name: update environment | |
shell: bash | |
run: sudo apt-get update | |
- name: install dev dependencies | |
shell: bash | |
run: sudo apt-get install libgtk-3-dev | |
- name: Build Rust Release | Linux - x64 | |
shell: bash | |
run: cargo +nightly build --target x86_64-unknown-linux-gnu --release | |
- name: Build Rust Debug | Linux - x64 | |
shell: bash | |
run: cargo +nightly build --target x86_64-unknown-linux-gnu | |
- name: Upload Proxy Release | Linux x64 | |
uses: actions/upload-artifact@v4 | |
with: | |
name: MLProxyX64-Linux-Release | |
path: target/x86_64-unknown-linux-gnu/release/libversion.so | |
- name: Upload Bootstrap Release | Linux x64 | |
uses: actions/upload-artifact@v4 | |
with: | |
name: MLBootstrapX64-Linux-Release | |
path: target/x86_64-unknown-linux-gnu/release/libBootstrap.so | |
- name: Upload Proxy Debug | Linux x64 | |
uses: actions/upload-artifact@v4 | |
with: | |
name: MLProxyX64-Linux-Debug | |
path: target/x86_64-unknown-linux-gnu/debug/libversion.so | |
- name: Upload Bootstrap Debug | Linux x64 | |
uses: actions/upload-artifact@v4 | |
with: | |
name: MLBootstrapX64-Linux-Debug | |
path: target/x86_64-unknown-linux-gnu/debug/libBootstrap.so | |
finalize_x64_debug_zip_windows: | |
runs-on: windows-latest | |
needs: [build_core_debug, build_rust_windows] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Download core artifact | |
uses: actions/download-artifact@v4 | |
with: | |
name: MLCoreDebug | |
path: Output/Debug/x64/MelonLoader/ | |
- name: Download proxy x64 | |
uses: actions/download-artifact@v4 | |
with: | |
name: MLProxyX64-Windows-Debug | |
path: Output/Debug/x64/ | |
- name: Download bootstrap x64 | |
uses: actions/download-artifact@v4 | |
with: | |
name: MLBootstrapX64-Windows-Debug | |
path: Output/Debug/x64/MelonLoader/Dependencies/ | |
- name: Package x64 zip | |
shell: cmd | |
run: | | |
echo Copying Managed Libs... | |
mkdir Output\Debug\x64\MelonLoader\Dependencies\Mono | |
xcopy BaseLibs\Mono Output\Debug\x64\MelonLoader\Dependencies\Mono\ /E /H /Y | |
xcopy BaseLibs\net35 Output\Debug\x64\MelonLoader\net35\ /E /H /Y | |
xcopy BaseLibs\net6 Output\Debug\x64\MelonLoader\net6\ /E /H /Y | |
echo. | |
echo Copying Dobby x64... | |
xcopy BaseLibs\dobby_x64.dll Output\Debug\x64\MelonLoader\Dependencies\dobby.dll* | |
echo. | |
echo Copying documentation files... | |
copy NOTICE.txt Output\Debug\x64 | |
mkdir Output\Debug\x64\MelonLoader\Documentation | |
copy CHANGELOG.md Output\Debug\x64\MelonLoader\Documentation\ | |
copy LICENSE.md Output\Debug\x64\MelonLoader\Documentation\ | |
copy NOTICE.txt Output\Debug\x64\MelonLoader\Documentation\ | |
copy README.md Output\Debug\x64\MelonLoader\Documentation\ | |
del Output\Debug\x64\MelonLoader\net6\MelonStartScreen.dll | |
del Output\Debug\x64\MelonLoader\net6\MelonStartScreen.deps.json | |
- uses: actions/upload-artifact@v4 | |
name: Upload Zip | Windows - x64 | |
with: | |
name: MelonLoader.Windows.x64.CI.Debug | |
path: ./Output/Debug/x64/* | |
finalize_x86_debug_zip_windows: | |
runs-on: windows-latest | |
needs: [build_core_debug, build_rust_windows] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Download core artifact | |
uses: actions/download-artifact@v4 | |
with: | |
name: MLCoreDebug | |
path: Output/Debug/x86/MelonLoader/ | |
- name: Download proxy x86 | |
uses: actions/download-artifact@v4 | |
with: | |
name: MLProxyX86-Windows-Debug | |
path: Output/Debug/x86/ | |
- name: Download bootstrap x86 | |
uses: actions/download-artifact@v4 | |
with: | |
name: MLBootstrapX86-Windows-Debug | |
path: Output/Debug/x86/MelonLoader/Dependencies/ | |
- name: Package x86 zip | |
shell: cmd | |
run: | | |
echo Copying Managed Libs... | |
mkdir Output\Debug\x86\MelonLoader\Dependencies\Mono | |
xcopy BaseLibs\Mono Output\Debug\x86\MelonLoader\Dependencies\Mono\ /E /H /Y | |
xcopy BaseLibs\net35 Output\Debug\x86\MelonLoader\net35\ /E /H /Y | |
xcopy BaseLibs\net6 Output\Debug\x86\MelonLoader\net6\ /E /H /Y | |
echo. | |
echo Copying Dobby x86... | |
xcopy BaseLibs\dobby_x86.dll Output\Debug\x86\MelonLoader\Dependencies\dobby.dll* | |
echo. | |
echo Copying documentation files... | |
copy NOTICE.txt Output\Debug\x86 | |
mkdir Output\Debug\x86\MelonLoader\Documentation | |
copy CHANGELOG.md Output\Debug\x86\MelonLoader\Documentation\ | |
copy LICENSE.md Output\Debug\x86\MelonLoader\Documentation\ | |
copy NOTICE.txt Output\Debug\x86\MelonLoader\Documentation\ | |
copy README.md Output\Debug\x86\MelonLoader\Documentation\ | |
del Output\Debug\x86\MelonLoader\net6\MelonStartScreen.dll | |
del Output\Debug\x86\MelonLoader\net6\MelonStartScreen.deps.json | |
- uses: actions/upload-artifact@v4 | |
name: Upload Zip | Windows - x86 | |
with: | |
name: MelonLoader.Windows.x86.CI.Debug | |
path: ./Output/Debug/x86/* | |
finalize_x64_release_zip_windows: | |
runs-on: windows-latest | |
needs: [build_core_release, build_rust_windows] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Download core artifact | |
uses: actions/download-artifact@v4 | |
with: | |
name: MLCoreRelease | |
path: Output/Release/x64/MelonLoader/ | |
- name: Download proxy x64 | |
uses: actions/download-artifact@v4 | |
with: | |
name: MLProxyX64-Windows-Release | |
path: Output/Release/x64/ | |
- name: Download bootstrap x64 | |
uses: actions/download-artifact@v4 | |
with: | |
name: MLBootstrapX64-Windows-Release | |
path: Output/Release/x64/MelonLoader/Dependencies/ | |
- name: Package x64 zip | |
shell: cmd | |
run: | | |
echo Copying Managed Libs... | |
mkdir Output\Release\x64\MelonLoader\Dependencies\Mono | |
xcopy BaseLibs\Mono Output\Release\x64\MelonLoader\Dependencies\Mono\ /E /H /Y | |
xcopy BaseLibs\net35 Output\Release\x64\MelonLoader\net35\ /E /H /Y | |
xcopy BaseLibs\net6 Output\Release\x64\MelonLoader\net6\ /E /H /Y | |
echo. | |
echo Copying Dobby x64... | |
xcopy BaseLibs\dobby_x64.dll Output\Release\x64\MelonLoader\Dependencies\dobby.dll* | |
echo. | |
echo Copying documentation files... | |
copy NOTICE.txt Output\Release\x64 | |
mkdir Output\Release\x64\MelonLoader\Documentation | |
copy CHANGELOG.md Output\Release\x64\MelonLoader\Documentation\ | |
copy LICENSE.md Output\Release\x64\MelonLoader\Documentation\ | |
copy NOTICE.txt Output\Release\x64\MelonLoader\Documentation\ | |
copy README.md Output\Release\x64\MelonLoader\Documentation\ | |
del Output\Release\x64\MelonLoader\net6\MelonStartScreen.dll | |
del Output\Release\x64\MelonLoader\net6\MelonStartScreen.deps.json | |
- uses: actions/upload-artifact@v4 | |
name: Upload Zip | Windows - x64 | |
with: | |
name: MelonLoader.Windows.x64.CI.Release | |
path: ./Output/Release/x64/* | |
finalize_x86_release_zip_windows: | |
runs-on: windows-latest | |
needs: [build_core_release, build_rust_windows] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Download core artifact | |
uses: actions/download-artifact@v4 | |
with: | |
name: MLCoreRelease | |
path: Output/Release/x86/MelonLoader/ | |
- name: Download proxy x86 | |
uses: actions/download-artifact@v4 | |
with: | |
name: MLProxyX86-Windows-Release | |
path: Output/Release/x86/ | |
- name: Download bootstrap x86 | |
uses: actions/download-artifact@v4 | |
with: | |
name: MLBootstrapX86-Windows-Release | |
path: Output/Release/x86/MelonLoader/Dependencies/ | |
- name: Package x86 zip | |
shell: cmd | |
run: | | |
echo Copying Managed Libs... | |
mkdir Output\Release\x86\MelonLoader\Dependencies\Mono | |
xcopy BaseLibs\Mono Output\Release\x86\MelonLoader\Dependencies\Mono\ /E /H /Y | |
xcopy BaseLibs\net35 Output\Release\x86\MelonLoader\net35\ /E /H /Y | |
xcopy BaseLibs\net6 Output\Release\x86\MelonLoader\net6\ /E /H /Y | |
echo. | |
echo Copying Dobby x86... | |
xcopy BaseLibs\dobby_x86.dll Output\Release\x86\MelonLoader\Dependencies\dobby.dll* | |
echo. | |
echo Copying documentation files... | |
copy NOTICE.txt Output\Release\x86 | |
mkdir Output\Release\x86\MelonLoader\Documentation | |
copy CHANGELOG.md Output\Release\x86\MelonLoader\Documentation\ | |
copy LICENSE.md Output\Release\x86\MelonLoader\Documentation\ | |
copy NOTICE.txt Output\Release\x86\MelonLoader\Documentation\ | |
copy README.md Output\Release\x86\MelonLoader\Documentation\ | |
del Output\Release\x86\MelonLoader\net6\MelonStartScreen.dll | |
del Output\Release\x86\MelonLoader\net6\MelonStartScreen.deps.json | |
- uses: actions/upload-artifact@v4 | |
name: Upload Zip | Windows - x86 | |
with: | |
name: MelonLoader.Windows.x86.CI.Release | |
path: ./Output/Release/x86/* | |
finalize_x64_debug_zip_linux: | |
runs-on: windows-latest | |
needs: [build_core_debug, build_rust_linux] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Download core artifact | |
uses: actions/download-artifact@v4 | |
with: | |
name: MLCoreDebug | |
path: Output/Debug/x64/MelonLoader/ | |
- name: Download proxy x64 | |
uses: actions/download-artifact@v4 | |
with: | |
name: MLProxyX64-Linux-Debug | |
path: Output/Debug/x64/ | |
- name: Download bootstrap x64 | |
uses: actions/download-artifact@v4 | |
with: | |
name: MLBootstrapX64-Linux-Debug | |
path: Output/Debug/x64/MelonLoader/Dependencies/ | |
- name: Package x64 zip | |
shell: cmd | |
run: | | |
echo Copying Managed Libs... | |
mkdir Output\Debug\x64\MelonLoader\Dependencies\Mono | |
xcopy BaseLibs\Mono Output\Debug\x64\MelonLoader\Dependencies\Mono\ /E /H /Y | |
xcopy BaseLibs\net35 Output\Debug\x64\MelonLoader\net35\ /E /H /Y | |
xcopy BaseLibs\net6 Output\Debug\x64\MelonLoader\net6\ /E /H /Y | |
echo. | |
echo Copying documentation files... | |
copy NOTICE.txt Output\Debug\x64 | |
mkdir Output\Debug\x64\MelonLoader\Documentation | |
copy CHANGELOG.md Output\Debug\x64\MelonLoader\Documentation\ | |
copy LICENSE.md Output\Debug\x64\MelonLoader\Documentation\ | |
copy NOTICE.txt Output\Debug\x64\MelonLoader\Documentation\ | |
copy README.md Output\Debug\x64\MelonLoader\Documentation\ | |
del Output\Debug\x64\MelonLoader\net6\MelonStartScreen.dll | |
del Output\Debug\x64\MelonLoader\net6\MelonStartScreen.deps.json | |
- uses: actions/upload-artifact@v4 | |
name: Upload Zip | Linux - x64 | |
with: | |
name: MelonLoader.Linux.x64.CI.Debug | |
path: ./Output/Debug/x64/* | |
finalize_x64_release_zip_linux: | |
runs-on: windows-latest | |
needs: [build_core_release, build_rust_linux] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Download core artifact | |
uses: actions/download-artifact@v4 | |
with: | |
name: MLCoreRelease | |
path: Output/Release/x64/MelonLoader/ | |
- name: Download proxy x64 | |
uses: actions/download-artifact@v4 | |
with: | |
name: MLProxyX64-Linux-Release | |
path: Output/Release/x64/ | |
- name: Download bootstrap x64 | |
uses: actions/download-artifact@v4 | |
with: | |
name: MLBootstrapX64-Linux-Release | |
path: Output/Release/x64/MelonLoader/Dependencies/ | |
- name: Package x64 zip | |
shell: cmd | |
run: | | |
echo Copying Managed Libs... | |
mkdir Output\Release\x64\MelonLoader\Dependencies\Mono | |
xcopy BaseLibs\Mono Output\Release\x64\MelonLoader\Dependencies\Mono\ /E /H /Y | |
xcopy BaseLibs\net35 Output\Release\x64\MelonLoader\net35\ /E /H /Y | |
xcopy BaseLibs\net6 Output\Release\x64\MelonLoader\net6\ /E /H /Y | |
echo. | |
echo Copying documentation files... | |
copy NOTICE.txt Output\Release\x64 | |
mkdir Output\Release\x64\MelonLoader\Documentation | |
copy CHANGELOG.md Output\Release\x64\MelonLoader\Documentation\ | |
copy LICENSE.md Output\Release\x64\MelonLoader\Documentation\ | |
copy NOTICE.txt Output\Release\x64\MelonLoader\Documentation\ | |
copy README.md Output\Release\x64\MelonLoader\Documentation\ | |
del Output\Release\x64\MelonLoader\net6\MelonStartScreen.dll | |
del Output\Release\x64\MelonLoader\net6\MelonStartScreen.deps.json | |
- uses: actions/upload-artifact@v4 | |
name: Upload Zip | Linux - x64 | |
with: | |
name: MelonLoader.Linux.x64.CI.Release | |
path: ./Output/Release/x64/* | |
cleanup_artifacts: | |
runs-on: windows-latest | |
needs: [finalize_x86_debug_zip_windows, finalize_x64_debug_zip_windows, finalize_x86_release_zip_windows, finalize_x64_release_zip_windows, finalize_x64_debug_zip_linux, finalize_x64_release_zip_linux] | |
steps: | |
- uses: GeekyEggo/delete-artifact@v5.0.0 | |
with: | |
name: | | |
MLCoreDebug | |
MLCoreRelease | |
MLProxyX86-Windows-Debug | |
MLBootstrapX86-Windows-Debug | |
MLProxyX64-Windows-Debug | |
MLBootstrapX64-Windows-Debug | |
MLProxyX64-Linux-Debug | |
MLBootstrapX64-Linux-Debug | |
MLProxyX86-Windows-Release | |
MLBootstrapX86-Windows-Release | |
MLProxyX64-Windows-Release | |
MLBootstrapX64-Windows-Release | |
MLProxyX64-Linux-Release | |
MLBootstrapX64-Linux-Release |