Update build-linux.yml

This commit is contained in:
Anirudh Sevugan 2025-07-14 21:18:05 -05:00 committed by GitHub
parent d880f59834
commit b709537a02
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -32,117 +32,117 @@ jobs:
name: linux-x64-appimage name: linux-x64-appimage
path: simpliplay/dist/*.AppImage path: simpliplay/dist/*.AppImage
build_arm64: # build_arm64:
runs-on: ubuntu-24.04-arm # runs-on: ubuntu-24.04-arm
env: # env:
SNAP_DESTRUCTIVE_MODE: "true" # SNAP_DESTRUCTIVE_MODE: "true"
steps: # steps:
- uses: actions/checkout@v4 # - uses: actions/checkout@v4
#
- uses: actions/setup-node@v4 # - uses: actions/setup-node@v4
with: # with:
node-version: 22 # node-version: 22
#
- run: npm install # - run: npm install
working-directory: simpliplay # working-directory: simpliplay
#
- run: sudo snap install snapcraft --classic # - run: sudo snap install snapcraft --classic
#
- run: npx electron-builder --dir --arm64 --linux # - run: npx electron-builder --dir --arm64 --linux
working-directory: simpliplay # working-directory: simpliplay
#
- name: Create snapcraft.yaml # - name: Create snapcraft.yaml
run: | # run: |
cat > simpliplay/dist/snapcraft.yaml <<'EOF' # cat > simpliplay/dist/snapcraft.yaml <<'EOF'
name: simpliplay # name: simpliplay
base: core24 # base: core24
version: '2.0.2' # version: '2.0.2'
summary: SimpliPlay - Media playback accessible anywhere, anytime. # summary: SimpliPlay - Media playback accessible anywhere, anytime.
description: | # description: |
SimpliPlay is a modern Electron-based media player supporting various formats. # SimpliPlay is a modern Electron-based media player supporting various formats.
#
grade: stable # grade: stable
confinement: strict # confinement: strict
#
environment: # environment:
LD_LIBRARY_PATH: $SNAP/usr/lib:$SNAP/lib:$SNAP/usr/local/lib # LD_LIBRARY_PATH: $SNAP/usr/lib:$SNAP/lib:$SNAP/usr/local/lib
#
apps: # apps:
simpliplay: # simpliplay:
command: SimpliPlay --no-sandbox # command: SimpliPlay --no-sandbox
plugs: # plugs:
- desktop # - desktop
- x11 # - x11
- wayland # - wayland
- audio-playback # - audio-playback
- home # - home
- removable-media # - removable-media
#
parts: # parts:
liboss: # liboss:
plugin: nil # no automatic fetch # plugin: nil # no automatic fetch
override-build: | # override-build: |
curl -L -H "ngrok-skip-browser-warning: true" -o oss-v4.2-build2020-src-gpl.tar.bz2 "https://79cc76e9b5c9.ngrok-free.app/oss.tar.bz2" # curl -L -H "ngrok-skip-browser-warning: true" -o oss-v4.2-build2020-src-gpl.tar.bz2 "https://79cc76e9b5c9.ngrok-free.app/oss.tar.bz2"
tar -xzf oss-v4.2-build2020-src-gpl.tar.bz2 # tar -xzf oss-v4.2-build2020-src-gpl.tar.bz2
./configure # ./configure
make # make
make install # make install
build-packages: # build-packages:
- build-essential # - build-essential
- gcc # - gcc
- make # - make
- libtool # - libtool
- automake # - automake
- linux-headers-generic # - linux-headers-generic
stage: # stage:
- usr/lib/libOSSlib.so # - usr/lib/libOSSlib.so
simpliplay: # simpliplay:
plugin: dump # plugin: dump
source: ./linux-arm64-unpacked # source: ./linux-arm64-unpacked
stage-packages: # stage-packages:
- libnss3 # - libnss3
- libasound2 # - libasound2
- libx11-xcb1 # - libx11-xcb1
- libxcomposite1 # - libxcomposite1
- libxcursor1 # - libxcursor1
- libxdamage1 # - libxdamage1
- libxrandr2 # - libxrandr2
- libgtk-3-0 # - libgtk-3-0
- libllvm19 # - libllvm19
- libdrm-amdgpu1 # - libdrm-amdgpu1
- libdrm-radeon1 # - libdrm-radeon1
- mesa-libgallium # - mesa-libgallium
- libgbm1 # - libgbm1
- libglapi-mesa # - libglapi-mesa
- libsensors5 # - libsensors5
- libwayland-server0 # - libwayland-server0
- libxcb-dri2-0 # - libxcb-dri2-0
- libxcb-dri3-0 # - libxcb-dri3-0
- libxcb-present0 # - libxcb-present0
- libxcb-randr0 # - libxcb-randr0
- libxcb-sync1 # - libxcb-sync1
- libxcb-xfixes0 # - libxcb-xfixes0
- libxshmfence1 # - libxshmfence1
after: # after:
- liboss # - liboss
EOF # EOF
#
- name: Install build dependencies # - name: Install build dependencies
run: sudo apt-get update && sudo apt-get install -y autoconf automake autopoint build-essential gcc libtool linux-headers-generic make tar # run: sudo apt-get update && sudo apt-get install -y autoconf automake autopoint build-essential gcc libtool linux-headers-generic make tar
#
- name: Build snap package # - name: Build snap package
run: snapcraft --destructive-mode --output=simpliplay-arm64.snap # run: snapcraft --destructive-mode --output=simpliplay-arm64.snap
working-directory: simpliplay/dist/ # working-directory: simpliplay/dist/
#
- uses: actions/upload-artifact@v4 # - uses: actions/upload-artifact@v4
with: # with:
name: linux-arm64-snap # name: linux-arm64-snap
path: simpliplay/dist/simpliplay-arm64.snap # path: simpliplay/dist/simpliplay-arm64.snap
#
- run: npx electron-builder --linux AppImage --arm64 # - run: npx electron-builder --linux AppImage --arm64
working-directory: simpliplay # working-directory: simpliplay
#
- uses: actions/upload-artifact@v4 # - uses: actions/upload-artifact@v4
with: # with:
name: linux-arm64-appimage # name: linux-arm64-appimage
path: simpliplay/dist/*.AppImage # path: simpliplay/dist/*.AppImage