name: Build Dusk on: push: branches: - break-literally-everything pull_request: branches: - main jobs: run-tests: runs-on: ubuntu-latest steps: - name: Checkout repository uses: https://git.wish.moe/YourWishes/checkout@main - name: Install Docker run: docker version - name: Run tests in Docker run: ./scripts/test-linux-docker.sh # - name: Install dependencies # run: | # apt-get update # apt-get install -y build-essential cmake python3 python3-pip python3-polib python3-pil libsdl2-dev libgl1-mesa-dev libzip-dev python3-dotenv python3-pyqt5 python3-opengl liblua5.3-dev # - name: Run tests # run: ./scripts/test-linux.sh # build-linux: # runs-on: ubuntu-latest # steps: # - name: Checkout repository # uses: https://git.wish.moe/YourWishes/checkout@main # - name: Install dependencies # run: | # apt-get update # apt-get install -y build-essential cmake python3 python3-pip python3-polib python3-pil libsdl2-dev libgl1-mesa-dev libzip-dev python3-dotenv python3-pyqt5 python3-opengl liblua5.3-dev # - name: Build Linux # run: ./scripts/build-linux.sh # - name: Upload Linux binary # uses: https://git.wish.moe/YourWishes/upload-artifact@v3/node20 # with: # name: dusk-linux # path: build-linux/Dusk # if-no-files-found: error # build-psp: # runs-on: ubuntu-latest # steps: # - name: Checkout repository # uses: https://git.wish.moe/YourWishes/checkout@main # - name: Install dependencies # run: | # apt-get update # apt-get install -y build-essential cmake python3 python3-pip python3-polib python3-pil libsdl2-dev libgl1-mesa-dev libzip-dev python3-dotenv python3-pyqt5 python3-opengl liblua5.3-dev # - name: Configure CMake # run: cmake -S . -B build -DDUSK_TARGET_SYSTEM=psp -DENABLE_TESTS=OFF # - name: Build # run: cmake --build build -- -j$(nproc) # - name: Move EBOOT.PBP to Dusk subfolder # run: | # mkdir -p build/gitea/Dusk # mv build/EBOOT.PBP build/gitea/Dusk/EBOOT.PBP # - name: List build output # run: ls -lh build/gitea/Dusk # - name: Upload PSP binary # uses: https://git.wish.moe/YourWishes/upload-artifact@v3/node20 # with: # name: dusk-psp # path: build/gitea/ # if-no-files-found: error # build-dolphin: # runs-on: ubuntu-latest # steps: # - name: Checkout repository # uses: https://git.wish.moe/YourWishes/checkout@main # - name: Install dependencies # run: | # # Install devkit pacman # if ! [ $(id -u) = 0 ]; then # echo "Need root privilege to install!" # exit 1 # fi # # ensure apt is set up to work with https sources # apt-get install apt-transport-https # # Store devkitPro gpg key locally if we don't have it already # if ! [ -f /usr/share/keyring/devkitpro-pub.gpg ]; then # mkdir -p /usr/share/keyring/ # wget -U "dkp apt" -O /usr/share/keyring/devkitpro-pub.gpg https://apt.devkitpro.org/devkitpro-pub.gpg # fi # # Add the devkitPro apt repository if we don't have it set up already # if ! [ -f /etc/apt/sources.list.d/devkitpro.list ]; then # echo "deb [signed-by=/usr/share/keyring/devkitpro-pub.gpg] https://apt.devkitpro.org stable main" > /etc/apt/sources.list.d/devkitpro.list # fi # apt-get update # apt-get install devkitpro-pacman --yes # apt-get install --yes build-essential cmake python3 python3-pip python3-polib python3-pil python3-dotenv python3-pyqt5 python3-opengl # sudo dkp-pacman -Syu --noconfirm # sudo dkp-pacman -S gamecube-dev wii-dev ppc-liblzma ppc-libzip --needed --noconfirm # - name: Build GameCube # run: | # export DEVKITPRO=/opt/devkitpro # export DEVKITPPC=/opt/devkitpro/devkitPPC # export PATH="$DEVKITPPC/bin:$DEVKITPRO/tools/bin:$PATH" # mkdir -p build-gamecube # cmake -S. -Bbuild-gamecube -DDUSK_TARGET_SYSTEM=gamecube -DCMAKE_TOOLCHAIN_FILE="$DEVKITPRO/cmake/GameCube.cmake" # cd build-gamecube # make -j$(nproc) VERBOSE=1 # - name: Copy GameCube # run: | # ls -l # mkdir -p build/gitea/GameCube/Dusk # mv build-gamecube/Dusk.dol build/gitea/GameCube/Dusk/Dusk.dol # mv build-gamecube/dusk.dsk build/gitea/GameCube/Dusk/dusk.dsk # - name: Upload GameCube Binary # uses: https://git.wish.moe/YourWishes/upload-artifact@v3/node20 # with: # name: dusk-gamecube # path: build/gitea/GameCube # if-no-files-found: error # - name: Build Wii # run: | # export DEVKITPRO=/opt/devkitpro # export DEVKITPPC=/opt/devkitpro/devkitPPC # export PATH="$DEVKITPPC/bin:$DEVKITPRO/tools/bin:$PATH" # mkdir -p build-wii # cmake -S. -Bbuild-wii -DDUSK_TARGET_SYSTEM=wii -DCMAKE_TOOLCHAIN_FILE="$DEVKITPRO/cmake/Wii.cmake" # cd build-wii # make -j$(nproc) VERBOSE=1 # - name: Copy Wii # run: | # ls -l # mkdir -p build/gitea/Wii/apps/Dusk # mv build-wii/Dusk.dol build/gitea/Wii/apps/Dusk/boot.dol # mv build-wii/dusk.dsk build/gitea/Wii/apps/Dusk/dusk.dsk # cp .ci/dolphin/meta.xml build/gitea/Wii/apps/Dusk/meta.xml # - name: Upload Wii Binary # uses: https://git.wish.moe/YourWishes/upload-artifact@v3/node20 # with: # name: dusk-wii # path: build/gitea/Wii # if-no-files-found: error