@@ -160,159 +160,4 @@ jobs:
160160 name : ${{ steps.create-artifact.outputs.name }}
161161 path : " *.tar.xz"
162162
163- build_flatpak :
164- runs-on : ubuntu-latest
165- container :
166- image : bilelmoussaoui/flatpak-github-actions:gnome-nightly
167- options : --privileged
168- steps :
169- - uses : actions/checkout@v2
170- - name : Purge .git for space reasons
171- run : rm -rf /home/runner/work/Project-Plus-Dolphin-src/Project-Plus-Dolphin-src/.git
172- - name : Setup Packages
173- run : |
174- flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo && \
175- flatpak install org.kde.Sdk//5.15 org.kde.Platform//5.15 -y && \
176- 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
177- - name : Run Flatpak Builder
178- uses : flatpak/flatpak-github-actions/flatpak-builder@v6
179- with :
180- manifest-path : Distribution/flatpak.yml
181- bundle : Project-Plus-Dolphin-flatpak-linux-x86_64.flatpak
182-
183- build_appimage :
184- name : AppImage Build
185- runs-on : ubuntu-24.04
186- env :
187- yaqti : 6.7.3
188- steps :
189- - name : Checkout Upstream Repo
190- uses : actions/checkout@v4
191- with :
192- repository : Motobug/Project-Plus-Dolphin
193- ref : master
194-
195- - name : Checkout Submodules
196- if : steps.cache-submodules.outputs.cache-hit != 'true'
197- run : git submodule update --init --recursive -j $(getconf _NPROCESSORS_ONLN)
198-
199- - name : Checkout AppImage Repo
200- uses : actions/checkout@v4
201- with :
202- clean : false
203- path : ci
204-
205- # Runs the Dolphin action
206- - name : Get Date
207- id : get-date
208- run : |
209- echo "date=$(/bin/date -u "+%Y%m%d")" >> $GITHUB_OUTPUT
210- shell : bash
211- - name : cache
212- uses : actions/cache@v4
213- with :
214- path : ~/.ccache
215- key : build-ccache-${{ steps.get-date.outputs.date }}
216- restore-keys : |
217- build-ccache-
218- env :
219- CCACHE_MAXSIZE : 200M
220- - name : Install Qt
221- run : |
222- curl -sLO https://files.pythonhosted.org/packages/47/42/351389ca36c7adfc5f4e92d086cdb2bdbde13f1b89ee882f4a1cab2183ac/yaqti-2021.7.29-py3-none-any.whl
223- python3 -m pip install yaqti-2021.7.29-py3-none-any.whl
224- pyver=$(python3 --version | awk '{print $2}')
225- curl -sL https://raw.githubusercontent.com/qurious-pixel/yaqti/fetch/yaqti/fetchers.py -o $HOME/.local/lib/python${pyver%.*}/site-packages/yaqti/fetchers.py
226- python -m yaqti install --os linux --platform desktop --version ${{ env.yaqti }} --modules linux_gcc_64 --set-envs --install-deps
227- - name : Install Packages
228- run : |
229- sudo apt-get install -y build-essential dialog dpkg libbluetooth-dev liblz4-dev liblzma-dev libssl-dev libopus-dev libpng-dev libsystemd-dev \
230- libzip-dev libzstd-dev zlib1g-dev libasound2-dev libpulse-dev pulseaudio p7zip p7zip-full libsfml-dev libminiupnpc-dev libmbedtls-dev libpugixml-dev \
231- libbz2-dev liblzo2-dev libxi-dev libavcodec-dev libudev-dev libusb-1.0-0-dev libevdev-dev libc6-dev libhidapi-dev libavformat-dev libavdevice-dev \
232- libfmt-dev libwayland-dev libxrandr-dev libglu1-mesa-dev libcurl4-openssl-dev x11-utils zenity wget curl git gettext ccache make cmake ninja-build \
233- libxcb-keysyms1 libxcb-randr0 libxcb-render-util0 libxcb-icccm4 libxcb-image0-dev libxcb-cursor-dev
234- - name : Dolphin-Build Number
235- run : |
236- export LASTCOMMIT=$(git log --pretty=format:%H -1)
237- export DOLPHINVER=v3.1.2
238- echo "DOLPHIN Build $DOLPHINVER"
239- echo "DOLPHINVER=$DOLPHINVER" >> $GITHUB_ENV
240- sed -i "s|\${DOLPHIN_WC_DESCRIBE}|$DOLPHINVER|g" Source/Core/Common/scmrev.h.in
241- - name : Update Patchelf
242- run : |
243- PATCHELFVER=0.14.5
244- curl -sL https://github.com/NixOS/patchelf/releases/download/${PATCHELFVER}/patchelf-${PATCHELFVER}-x86_64.tar.gz -o /tmp/patchelf.tar.gz
245- tar -xvf /tmp/patchelf.tar.gz --directory /tmp/ ./bin/patchelf --strip-components=2
246- sudo mv /tmp/patchelf /usr/bin
247- patchelf --version
248- - name : Build Dolphin
249- run : |
250- export Qt_DIR="${{github.workspace}}/qt/${{ env.yaqti }}/gcc_64/lib/cmake/Qt6"
251- mkdir -p "$HOME/.ccache"
252- mkdir build
253- cd build
254- cmake .. -GNinja -DCMAKE_C_COMPILER=/usr/lib/ccache/gcc-13 -DCMAKE_CXX_COMPILER=/usr/lib/ccache/g++-13 -DCMAKE_PREFIX_PATH="${{github.workspace}}/qt/${{ env.yaqti }}/gcc_64/" -Ddatadir:PATH="share/project-plus-dolphin" -DBIN_INSTALL_DIR="install/usr/bin" -DCMAKE_INSTALL_PREFIX="install/usr" -DINC_INSTALL_DIR="install/usr/include" -DLIB_INSTALL_DIR="install/usr/lib" -DPKGCONFIG_INSTALL_DIR="install/usr/lib/pkgconfig" -DCMAKE_POLICY_VERSION_MINIMUM=3.5 -DENABLE_NOGUI=OFF
255- ninja
256- - name : Install Dolphin
257- run : |
258- cd build
259- ninja install
260- - name : Package Dolphin-Binary
261- run : |
262- mkdir -p $GITHUB_WORKSPACE/{artifacts,uploads}
263- cp -P build/install/usr/bin/project-plus-dolphin $GITHUB_WORKSPACE/artifacts
264- - name : Package Dolphin-AppImage
265- env :
266- QT_BASE_DIR : /qt/${{ env.yaqti }}/gcc_64
267- QTDIR : $QT_BASE_DIR
268- run : |
269- export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${GITHUB_WORKSPACE}/qt/${{ env.yaqti }}/gcc_64/lib/
270- export PATH=$QT_BASE_DIR/bin:$PATH
271- echo "PATH $PATH"
272- sudo ln -s ${GITHUB_WORKSPACE}/$(find qt/ -name qmake) /usr/bin
273- qmake -v
274- cd /tmp
275- curl -sSfLO "https://github.com/linuxdeploy/linuxdeploy/releases/download/continuous/linuxdeploy-x86_64.AppImage"
276- curl -sSfLO "https://github.com/AppImage/AppImageUpdate/releases/download/continuous/AppImageUpdate-x86_64.AppImage"
277- chmod a+x linuxdeploy*.AppImage
278- chmod a+x AppImageUpdate-x86_64.AppImage
279- ./linuxdeploy-x86_64.AppImage --appimage-extract
280- curl -sSfL "https://github.com/linuxdeploy/linuxdeploy-plugin-qt/releases/download/continuous/linuxdeploy-plugin-qt-x86_64.AppImage" -o /tmp/squashfs-root/usr/bin/linuxdeploy-plugin-qt.AppImage
281- chmod a+x /tmp/squashfs-root/usr/bin/linuxdeploy-plugin-qt.AppImage
282- mv /tmp/squashfs-root/usr/bin/patchelf /tmp/squashfs-root/usr/bin/patchelf.orig
283- sudo cp /usr/bin/patchelf /tmp/squashfs-root/usr/bin/patchelf
284- cd $GITHUB_WORKSPACE
285- mkdir -p squashfs-root
286- cp -a build/install/usr $GITHUB_WORKSPACE/squashfs-root/
287- cp Data/project-plus-dolphin.svg ./squashfs-root/project-plus-dolphin.svg
288- cp Data/project-plus-dolphin.desktop ./squashfs-root/project-plus-dolphin.desktop
289- curl -sSfL https://github.com/AppImage/AppImageKit/releases/download/continuous/runtime-x86_64 -o ./squashfs-root/runtime
290- curl -sSfL "https://github.com/RPCS3/AppImageKit-checkrt/releases/download/continuous2/AppRun-patched-x86_64" -o ./squashfs-root/AppRun-patched
291- cp ci/Distribution/appimage/{AppRun,update.sh} ./squashfs-root/
292- mv /tmp/AppImageUpdate-x86_64.AppImage ./squashfs-root/usr/bin/AppImageUpdate
293- echo ${{ env.DOLPHINVER }} > ./squashfs-root/version.txt
294- chmod a+x ./squashfs-root/AppRun
295- chmod a+x ./squashfs-root/runtime
296- chmod a+x ./squashfs-root/AppRun-patched
297- chmod a+x ./squashfs-root/update.sh
298- export UPD_INFO="gh-releases-zsync|Motobug|Project-Plus-Dolphin|continuous|Project+_Dolphin-x86_64.AppImage.zsync"
299- /tmp/squashfs-root/AppRun --appdir="$GITHUB_WORKSPACE"/squashfs-root/ --plugin qt -d "$GITHUB_WORKSPACE"/squashfs-root/project-plus-dolphin.desktop -i "$GITHUB_WORKSPACE"/squashfs-root/project-plus-dolphin.svg \
300- --exclude-library=libglib* --output appimage
301- ls . | grep *.AppImage
302- mv $(ls . | grep *.AppImage) $GITHUB_WORKSPACE/artifacts
303- ls -al $GITHUB_WORKSPACE/artifacts
304- sed -i 's/AppRun.wrapped/AppRun-patched/g' "$GITHUB_WORKSPACE"/squashfs-root/AppRun
305- cat "$GITHUB_WORKSPACE"/squashfs-root/AppRun
306- /tmp/squashfs-root/usr/bin/linuxdeploy-plugin-appimage --appdir="$GITHUB_WORKSPACE"/squashfs-root/
307- ls . | grep *.AppImage
308- mv Project+_Dolphin-x86_64.AppImage $GITHUB_WORKSPACE/uploads/Dolphin_${DOLPHINVER}.AppImage
309- ls -al $GITHUB_WORKSPACE/uploads
310- continue-on-error : true
311- - name : Upload Static Build
312- uses : actions/upload-artifact@v4
313- with :
314- name : Project-Plus-Dolphin_${{ env.DOLPHINVER }}
315- path : uploads/
316- env :
317- DEFAULT_BRANCH : git-actions
318- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
163+
0 commit comments