name: Rust on: push: branches: [ master ] jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Sync submodules run: git submodule sync --recursive && git submodule update --init --recursive - name: Download DEVKITPRO run: wget https://github.com/devkitPro/pacman/releases/download/devkitpro-pacman-1.0.1/devkitpro-pacman.deb - name: Install DEVKITPRO run: sudo dpkg -i devkitpro-pacman.deb - name: Install dkp-pacman run: printf "\nY" | sudo dkp-pacman -S switch-dev - name: Make Tesla overlay working-directory: TrainingModpackOverlay run: DEVKITPRO=/opt/devkitpro make - name: Install cargo-skyline run: cargo install --git https://github.com/jam1garner/cargo-skyline - name: Install rust-std-skyline-squashed run: cd .. && git clone https://github.com/jam1garner/rust-std-skyline-squashed && cd - - name: Attempt to build run: PATH=$PATH:/usr/share/rust/.rustup/toolchains/nightly-2020-04-10-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/bin cargo skyline build --release - name: Prepare zip run: | mkdir -p atmosphere/contents/01006A800016E000/romfs/skyline/plugins/ cp ./target/aarch64-skyline-switch/release/libtraining_modpack.nro atmosphere/contents/01006A800016E000/romfs/skyline/plugins/libtraining_modpack.nro mkdir -p switch/.overlays/ cp TrainingModpackOverlay/ovlTrainingModpack.ovl switch/.overlays/ovlTrainingModpack.ovl zip -r training_modpack_beta.zip atmosphere switch - name: Upload Release uses: majkrzak/create-release@latest with: token: ${{ secrets.GITHUB_TOKEN }} name: beta code: beta body: > Beta built off of the latest code in the repository. Use the files on the ZIP to replace your existing files from a full Release zip. (atmosphere/contents/01006A800016E000/romfs/skyline/plugins/libtraining_modpack.nro is the mod for the game itself, switch/.overlays/ovlTrainingModpack.ovl is the Tesla submenu) prerelease: true recreate: true assets: training_modpack_beta.zip:training_modpack_beta.zip:application/zip