Skip to content

Commit 5e0f67b

Browse files
committed
Start of mac builder testing
1 parent cc47ff6 commit 5e0f67b

File tree

1 file changed

+1
-156
lines changed

1 file changed

+1
-156
lines changed

.github/workflows/ci.yml

Lines changed: 1 addition & 156 deletions
Original file line numberDiff line numberDiff line change
@@ -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

Comments
 (0)