mirror of
https://github.com/A-Star100/simpliplay-desktop.git
synced 2025-09-17 22:29:38 +00:00
141 lines
3.6 KiB
YAML
141 lines
3.6 KiB
YAML
name: Build Linux
|
|
|
|
on:
|
|
push:
|
|
branches: [main]
|
|
pull_request:
|
|
branches: [main]
|
|
|
|
jobs:
|
|
build_x64:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- uses: actions/setup-node@v4
|
|
with:
|
|
node-version: 22
|
|
|
|
- run: npm install
|
|
working-directory: simpliplay
|
|
|
|
- run: npx electron-builder --linux --x64
|
|
working-directory: simpliplay
|
|
|
|
- uses: actions/upload-artifact@v4
|
|
with:
|
|
name: linux-x64-snap
|
|
path: simpliplay/dist/*.snap
|
|
|
|
- uses: actions/upload-artifact@v4
|
|
with:
|
|
name: linux-x64-appimage
|
|
path: simpliplay/dist/*.AppImage
|
|
|
|
build_arm64:
|
|
runs-on: ubuntu-24.04-arm
|
|
env:
|
|
SNAP_DESTRUCTIVE_MODE: "true"
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- uses: actions/setup-node@v4
|
|
with:
|
|
node-version: 22
|
|
|
|
- run: npm install
|
|
working-directory: simpliplay
|
|
|
|
- run: sudo snap install snapcraft --classic
|
|
|
|
- run: npx electron-builder --dir --arm64 --linux
|
|
working-directory: simpliplay
|
|
|
|
- name: Create snapcraft.yaml
|
|
run: |
|
|
cat > simpliplay/dist/snapcraft.yaml <<'EOF'
|
|
name: simpliplay
|
|
base: core24
|
|
version: '2.0.2'
|
|
summary: SimpliPlay - Media playback accessible anywhere, anytime.
|
|
description: |
|
|
SimpliPlay is a modern Electron-based media player supporting various formats.
|
|
|
|
grade: stable
|
|
confinement: strict
|
|
|
|
environment:
|
|
LD_LIBRARY_PATH: $SNAP/usr/lib:$SNAP/lib:$SNAP/usr/local/lib
|
|
|
|
apps:
|
|
simpliplay:
|
|
command: SimpliPlay --no-sandbox
|
|
plugs:
|
|
- desktop
|
|
- x11
|
|
- wayland
|
|
- audio-playback
|
|
- home
|
|
- removable-media
|
|
|
|
parts:
|
|
liboss:
|
|
plugin: autotools
|
|
source: https://fossies.org/linux/misc/oss-v4.2-build2020-src-gpl.tar.bz2
|
|
build-packages:
|
|
- build-essential
|
|
- gcc
|
|
- make
|
|
- libtool
|
|
- automake
|
|
- linux-headers-generic
|
|
stage:
|
|
- usr/lib/libOSSlib.so
|
|
|
|
simpliplay:
|
|
plugin: dump
|
|
source: ./linux-arm64-unpacked
|
|
stage-packages:
|
|
- libnss3
|
|
- libasound2
|
|
- libx11-xcb1
|
|
- libxcomposite1
|
|
- libxcursor1
|
|
- libxdamage1
|
|
- libxrandr2
|
|
- libgtk-3-0
|
|
- libllvm19
|
|
- libdrm-amdgpu1
|
|
- libdrm-radeon1
|
|
- mesa-libgallium
|
|
- libgbm1
|
|
- libglapi-mesa
|
|
- libsensors5
|
|
- libwayland-server0
|
|
- libxcb-dri2-0
|
|
- libxcb-dri3-0
|
|
- libxcb-present0
|
|
- libxcb-randr0
|
|
- libxcb-sync1
|
|
- libxcb-xfixes0
|
|
- libxshmfence1
|
|
after:
|
|
- liboss
|
|
EOF
|
|
|
|
- run: snapcraft --destructive-mode --output=simpliplay-arm64.snap
|
|
working-directory: simpliplay/dist/
|
|
|
|
- uses: actions/upload-artifact@v4
|
|
with:
|
|
name: linux-arm64-snap
|
|
path: simpliplay/dist/simpliplay-arm64.snap
|
|
|
|
- run: npx electron-builder --linux AppImage --arm64
|
|
working-directory: simpliplay
|
|
|
|
- uses: actions/upload-artifact@v4
|
|
with:
|
|
name: linux-arm64-appimage
|
|
path: simpliplay/dist/*.AppImage
|