From 493c2e671abfac6be168d662e54c04cd42f40373 Mon Sep 17 00:00:00 2001 From: Julian Orchard Date: Thu, 18 Jan 2024 00:42:05 +0000 Subject: [PATCH 1/4] Slight change to documentation Signed-off-by: Julian Orchard --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 9852e96..023f749 100644 --- a/README.md +++ b/README.md @@ -17,7 +17,7 @@ sudo apt install freeglut3:i386 sudo apt install freeglut3-dev:i386 sudo apt install libglew-dev sudo apt install xorg-dev -sudo apt install libopenal1 libopenal-dev +sudo apt install libopenal1:i386 libopenal-dev:i386 sudo apt install libalut-dev:i386 // You will need to find libalut-dev:i386, libalut0:i386 and multiarch-support:i386 from Ubuntu Xenial. sudo apt install libxmu6:i386 sudo apt install libstdc++5:i386 From a2a151c7b85b00a64f42f00a2027f234422e644d Mon Sep 17 00:00:00 2001 From: Julian Orchard Date: Thu, 18 Jan 2024 00:42:45 +0000 Subject: [PATCH 2/4] Add working docker container using Ubuntu 22.04 image Signed-off-by: Julian Orchard --- .dockerignore | 5 +++++ Dockerfile | 35 +++++++++++++++++++++++++++++++++++ 2 files changed, 40 insertions(+) create mode 100644 .dockerignore create mode 100644 Dockerfile diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..b960f0a --- /dev/null +++ b/.dockerignore @@ -0,0 +1,5 @@ +*.md +.git +.gitignore +.vscode +docs diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..fc55121 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,35 @@ +FROM ubuntu:22.04 AS lindbergh-build + +RUN dpkg --add-architecture i386 \ + && apt-get update \ + && apt-get install -y --no-install-recommends \ + build-essential \ + freeglut3-dev:i386 \ + freeglut3:i386 \ + gcc-multilib \ + libglew-dev \ + libopenal-dev:i386 \ + libopenal1:i386 \ + libstdc++5:i386 \ + libxmu6:i386 \ + wget \ + xorg-dev \ + && apt-get clean \ + && rm -rf /var/lib/apt/lists/* + +WORKDIR /xenial-libs +RUN wget -q http://launchpadlibrarian.net/534757982/multiarch-support_2.23-0ubuntu11.3_i386.deb \ + && dpkg -i multiarch-support_2.23-0ubuntu11.3_i386.deb +RUN wget -q http://launchpadlibrarian.net/184146495/libalut0_1.1.0-5_i386.deb \ + && dpkg -i libalut0_1.1.0-5_i386.deb +RUN wget -q http://launchpadlibrarian.net/184146496/libalut-dev_1.1.0-5_i386.deb \ + && dpkg -i libalut-dev_1.1.0-5_i386.deb + +WORKDIR /lindbergh-loader +COPY . . + +RUN make + +# Output binaries of build using the --output=PATH argument +FROM scratch AS binaries +COPY --from=lindbergh-build /lindbergh-loader/build/* / From 4a3ff8bce2aeaeba6322c617c1127529a909a125 Mon Sep 17 00:00:00 2001 From: Julian Orchard Date: Sun, 4 Feb 2024 19:38:17 +0000 Subject: [PATCH 3/4] Use Debian Docker image Signed-off-by: Julian Orchard --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index fc55121..2aa55ca 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM ubuntu:22.04 AS lindbergh-build +FROM debian:bullseye AS lindbergh-build RUN dpkg --add-architecture i386 \ && apt-get update \ From 25588be4e16b4f31d7d9c887e86fda21b7bdb572 Mon Sep 17 00:00:00 2001 From: Julian Orchard Date: Sun, 4 Feb 2024 19:38:44 +0000 Subject: [PATCH 4/4] Add ci workflow for artifacts and pre-releases Signed-off-by: Julian Orchard --- .github/workflows/ci.yml | 48 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 .github/workflows/ci.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..bf407aa --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,48 @@ +name: Lindbergh Loader CI + +on: + pull_request: + branches: + - master + push: + branches: + - master + # NOTE: Manual releases for now, only currently + # testing with pre-releases and artifacts + # tags: + # - 'v*' + +jobs: + + ci: + runs-on: ubuntu-latest + permissions: + contents: write + steps: + + - name: Checkout repo + uses: actions/checkout@v4 + + - name: Build Docker image and output + uses: docker/build-push-action@v5 + with: + context: . + push: false + outputs: type=local,dest=build + + - name: Create build artifacts + uses: actions/upload-artifact@v3 + if: github.event_name == 'pull_request' + with: + name: lindbergh-loader-${{ github.event.pull_request.head.sha }} + path: build/* + + - name: Create pre-release + uses: "marvinpinto/action-automatic-releases@latest" + if: github.event_name == 'push' && github.ref == 'refs/heads/master' + with: + repo_token: "${{ secrets.GITHUB_TOKEN }}" + automatic_release_tag: "latest" + prerelease: true + title: "Lindbergh Loader" + files: build/*