From dd319c17b6d982298e39aeb9eb4e88da9efd4647 Mon Sep 17 00:00:00 2001 From: Twig6943 <119701717+Twig6943@users.noreply.github.com> Date: Mon, 16 Mar 2026 21:46:31 +0300 Subject: [PATCH] Working yml --- .github/workflows/build-linux.yml | 56 +++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 .github/workflows/build-linux.yml diff --git a/.github/workflows/build-linux.yml b/.github/workflows/build-linux.yml new file mode 100644 index 000000000..8409876bd --- /dev/null +++ b/.github/workflows/build-linux.yml @@ -0,0 +1,56 @@ +name: Build Minecraft Legacy Console Edition (Linux) + +on: + workflow_dispatch: + +jobs: + build: + runs-on: ubuntu-latest + + container: + image: archlinux:latest + + strategy: + matrix: + configuration: [Release, Debug] + + steps: + - name: Install base dependencies + run: | + pacman -Syu --noconfirm archlinux-keyring + pacman -Syu --noconfirm base-devel sudo git clang lld make cmake extra-cmake-modules python wine msitools ca-certificates libwbclient + + - name: Create build user + run: | + useradd -m builder + echo "builder ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers + + - name: Checkout repository + uses: actions/checkout@v6 + + - name: Fix permissions + run: chown -R builder:builder . + + - name: Build + run: | + sudo -u builder sh <<'EOF' + set -e + mkdir build + cd build + export WINDOWS_SDK_PATH="$PWD/my_msvc" + export WINE=$(command -v wine64 || command -v wine || false) + $WINE wineboot + git clone https://github.com/mstorsjo/msvc-wine + ./msvc-wine/vsdownload.py --accept-license --dest $(pwd)/my_msvc + ./msvc-wine/install.sh $(pwd)/my_msvc + export PATH=$(pwd)/my_msvc/bin/x64:$PATH + cmake .. -B . -DCMAKE_BUILD_TYPE=${{ matrix.configuration }} -DWINDOWS_SDK_PATH=$(pwd)/my_msvc -DCMAKE_TOOLCHAIN_FILE=../cmake/LinuxCrosscompile.cmake + make -j$(nproc) + EOF + + - name: Upload Release + Debug Artifacts + uses: actions/upload-artifact@v6 + with: + name: MinecraftClient-${{ matrix.configuration }} + path: | + build/MinecraftClient.exe