Skip to content

Commit ff4583d

Browse files
committed
Attempt new build scripts
1 parent 8539cab commit ff4583d

File tree

6 files changed

+279
-261
lines changed

6 files changed

+279
-261
lines changed
Lines changed: 80 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,85 @@
1-
name: Dolphin-AppImage
1+
name: Combined CI
22

3-
on:
3+
on:
44
push:
5-
workflow_dispatch:
6-
schedule:
7-
- cron: "15 0 * * 3"
5+
pull_request:
86

9-
jobs:
7+
jobs:
8+
build_flatpak:
9+
runs-on: ubuntu-latest
10+
container:
11+
image: bilelmoussaoui/flatpak-github-actions:gnome-nightly
12+
options: --privileged
13+
steps:
14+
- uses: actions/checkout@v2
15+
- name: Purge .git for space reasons
16+
run: rm -rf /home/runner/work/Dolphin-MPN-src/Dolphin-MPN-src/.git
17+
- name: Setup Packages
18+
run: |
19+
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo && \
20+
flatpak install org.kde.Sdk//5.15 org.kde.Platform//5.15 -y && \
21+
dnf install libusb1-devel cmake git gcc-c++ libXext-devel libgudev qt6-qtbase-devel systemd-devel openal-soft-devel libevdev-devel libao-devel SOIL-devel libXrandr-devel pulseaudio-libs-devel bluez-libs-devel p7zip SDL2-devel make automake gcc gcc-c++ kernel-devel -y
22+
- name: Run Flatpak Builder
23+
uses: flatpak/flatpak-github-actions/flatpak-builder@v6
24+
with:
25+
manifest-path: Distribution/flatpak.yml
26+
bundle: Project-Plus-Dolphin-flatpak-linux-x86_64.flatpak
27+
28+
build_macos:
29+
runs-on: macos11-x64-nayla
30+
steps:
31+
- uses: actions/checkout@v2
32+
- name: Setup Submodules
33+
run: git config --global --add safe.directory . && git submodule update --init --recursive
34+
- name: Build
35+
run: |
36+
mkdir -p build && cd build && cmake .. -G Ninja -DCMAKE_CXX_FLAGS="-Xclang -fcolor-diagnostics" -DCMAKE_PREFIX_PATH=$(brew --prefix qt6) -DDISTRIBUTOR="Project Plus" && ninja -j8
37+
- name: Prepare macOS Build Artifact
38+
# yes we have to double zip to preserve perms.
39+
run: |
40+
mv build/Binaries/Project-Plus-Dolphin.app build/Binaries/Project-Plus-Dolphin.app
41+
mkdir -p build/OUT
42+
mv build/Binaries/Project-Plus-Dolphin.app build/OUT/
43+
cd build/OUT
44+
xattr -cr Project-Plus-Dolphin.app
45+
zip -r Project-Plus-Dolphin-macOS-x86_64.zip Project-Plus-Dolphin.app
46+
rm -rf Project-Plus-Dolphin.app
47+
- name: Upload Build Artifact
48+
uses: actions/upload-artifact@v4
49+
with:
50+
name: Project-Plus-Dolphin-macOS-x86_64
51+
path: build/OUT/
52+
53+
54+
build_windows:
55+
runs-on: windows-latest
56+
steps:
57+
- uses: actions/checkout@v2
58+
- name: Setup Submodules
59+
run: git config --global --add safe.directory . && git submodule update --init --recursive
60+
- name: Setup MSBuild
61+
uses: microsoft/[email protected]
62+
with:
63+
vs-version: '16.6.2'
64+
- name: Build
65+
run: msbuild "Source\dolphin-emu.sln" /verbosity:minimal /property:Configuration=Release /property:Platform=x64
66+
- name: Trusted Signing
67+
uses: azure/[email protected]
68+
with:
69+
azure-tenant-id: ${{ secrets.AZURE_TENANT_ID }}
70+
azure-client-id: ${{ secrets.AZURE_CLIENT_ID }}
71+
azure-client-secret: ${{ secrets.AZURE_CLIENT_SECRET }}
72+
endpoint: https://eus.codesigning.azure.net/
73+
trusted-signing-account-name: TabithaHanegan
74+
certificate-profile-name: vscx-certificate-profile
75+
files-folder: Binary/x64/
76+
files-folder-filter: exe,dll
77+
- name: Upload Build Artifact
78+
uses: actions/upload-artifact@v4
79+
with:
80+
name: Project-Plus-Dolphin-windows-x86_64
81+
path: Binary/x64/
82+
1083
dolphin-appimage:
1184
name: Project Plus Dolphin bundled as appimage
1285
runs-on: ubuntu-24.04
@@ -142,4 +215,4 @@ jobs:
142215
path: uploads/
143216
env:
144217
DEFAULT_BRANCH: git-actions
145-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
218+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

.github/workflows/macos_build.yml

Lines changed: 0 additions & 161 deletions
This file was deleted.

.github/workflows/scripts/macos/build-dependencies.sh

Lines changed: 0 additions & 93 deletions
This file was deleted.

Distribution/appimage.sh

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
!/bin/bash
2+
3+
# Environment variables
4+
export ARCH=x86_64
5+
export APPIMAGE_EXTRACT_AND_RUN=1
6+
export QMAKE=/usr/lib/qt6/bin/qmake
7+
8+
# Prepare the AppDir
9+
DESTDIR=./AppDir ninja install
10+
mkdir -p ./AppDir/usr/Source/Core
11+
cp -r ./Source/Core/DolphinQt ./AppDir/usr/Source/Core
12+
rm -rf ./AppDir/usr/Source/Core/DolphinQt/CMakeFiles
13+
rm -rf ./AppDir/usr/Source/Core/DolphinQt/dolphin-emu_autogen
14+
rm ./AppDir/usr/Source/Core/DolphinQt/cmake_install.cmake
15+
rm ./AppDir/usr/bin/dolphin-emu-nogui
16+
xxmv ./AppDir/usr/share/dolphin-emu/sys ./AppDir/usr/bin/Sys
17+
rm -rf ./AppDir/usr/share/dolphin-emu
18+
sed -i 's/env QT_QPA_PLATFORM=xcb dolphin-emu/dolphin-emu/g' ./AppDir/usr/share/applications/dolphin-emu.desktop
19+
20+
# Prepare Tools for building the AppImage
21+
wget -N https://github.com/linuxdeploy/linuxdeploy/releases/download/continuous/linuxdeploy-x86_64.AppImage
22+
wget -N https://github.com/linuxdeploy/linuxdeploy-plugin-qt/releases/download/continuous/linuxdeploy-plugin-qt-x86_64.AppImage
23+
wget -N https://github.com/linuxdeploy/linuxdeploy-plugin-checkrt/releases/download/continuous/linuxdeploy-plugin-checkrt-x86_64.sh
24+
wget -N https://github.com/AppImage/appimagetool/releases/download/continuous/appimagetool-x86_64.AppImage
25+
26+
27+
chmod a+x linuxdeploy-x86_64.AppImage
28+
chmod a+x linuxdeploy-plugin-checkrt-x86_64.sh
29+
chmod a+x appimagetool-x86_64.AppImage
30+
31+
# Build the AppImage
32+
./linuxdeploy-x86_64.AppImage \
33+
--appdir AppDir \
34+
--plugin checkrt
35+
36+
./appimagetool-x86_64.AppImage -n ./AppDir root/

0 commit comments

Comments
 (0)