mirror of
https://github.com/LizardByte/Sunshine.git
synced 2024-11-16 23:10:13 +00:00
92 lines
3.1 KiB
YAML
92 lines
3.1 KiB
YAML
---
|
|
app-id: "@PROJECT_FQDN@"
|
|
runtime: org.freedesktop.Platform
|
|
runtime-version: "23.08" # requires CUDA >= 12.2
|
|
sdk: org.freedesktop.Sdk
|
|
sdk-extensions:
|
|
- org.freedesktop.Sdk.Extension.node20
|
|
command: sunshine
|
|
separate-locales: false
|
|
finish-args:
|
|
- --device=all # access all devices
|
|
- --env=PULSE_PROP_media.category=Manager # allow sunshine to manage audio sinks
|
|
- --env=SUNSHINE_MIGRATE_CONFIG=1 # migrate config files to the new location
|
|
- --filesystem=home # need to save files in user's home directory
|
|
- --share=ipc # required for X11 shared memory extension
|
|
- --share=network # access network
|
|
- --socket=pulseaudio # play sounds using pulseaudio
|
|
- --socket=wayland # show windows using Wayland
|
|
- --socket=fallback-x11 # show windows using X11
|
|
- --system-talk-name=org.freedesktop.Avahi # talk to avahi on the system bus
|
|
- --talk-name=org.freedesktop.Flatpak # talk to flatpak on the session bus
|
|
|
|
cleanup:
|
|
- /include
|
|
- /lib/cmake
|
|
- /lib/pkgconfig
|
|
- /lib/*.la
|
|
- /lib/*.a
|
|
- /share/man
|
|
|
|
modules:
|
|
# Test dependencies
|
|
- "modules/xvfb/xvfb.json"
|
|
|
|
# Runtime dependencies
|
|
- shared-modules/libayatana-appindicator/libayatana-appindicator-gtk3.json
|
|
- "modules/avahi.json"
|
|
- "modules/boost.json"
|
|
- "modules/libevdev.json"
|
|
- "modules/libnotify.json"
|
|
- "modules/miniupnpc.json"
|
|
- "modules/numactl.json"
|
|
|
|
# Caching is configured until here, not including CUDA, since it is too large for GitHub cache
|
|
- "modules/cuda.json"
|
|
|
|
- name: sunshine
|
|
builddir: true
|
|
build-options:
|
|
append-path: /usr/lib/sdk/node20/bin
|
|
env:
|
|
BUILD_VERSION: "@BUILD_VERSION@"
|
|
BRANCH: "@GITHUB_BRANCH@"
|
|
COMMIT: "@GITHUB_COMMIT@"
|
|
XDG_CACHE_HOME: /run/build/sunshine/flatpak-node/cache
|
|
npm_config_cache: /run/build/sunshine/flatpak-node/npm-cache
|
|
npm_config_nodedir: /usr/lib/sdk/node20
|
|
npm_config_offline: 'true'
|
|
NPM_CONFIG_LOGLEVEL: info
|
|
buildsystem: cmake-ninja
|
|
config-opts:
|
|
- -DBOOST_USE_STATIC=OFF
|
|
- -DBUILD_DOCS=OFF
|
|
- -DBUILD_WERROR=ON
|
|
- -DCMAKE_BUILD_TYPE=Release
|
|
- -DCMAKE_CUDA_COMPILER=/app/cuda/bin/nvcc
|
|
- -DSUNSHINE_ASSETS_DIR=share/sunshine
|
|
- -DSUNSHINE_BUILD_FLATPAK=ON
|
|
- -DSUNSHINE_EXECUTABLE_PATH=/app/bin/sunshine
|
|
- -DSUNSHINE_ENABLE_WAYLAND=ON
|
|
- -DSUNSHINE_ENABLE_X11=ON
|
|
- -DSUNSHINE_ENABLE_DRM=ON
|
|
- -DSUNSHINE_ENABLE_CUDA=ON
|
|
- -DSUNSHINE_PUBLISHER_NAME='LizardByte'
|
|
- -DSUNSHINE_PUBLISHER_WEBSITE='https://app.lizardbyte.dev'
|
|
- -DSUNSHINE_PUBLISHER_ISSUE_URL='https://app.lizardbyte.dev/support'
|
|
no-make-install: false
|
|
post-install:
|
|
- install -D $FLATPAK_BUILDER_BUILDDIR/packaging/linux/flatpak/scripts/* /app/bin
|
|
- install -D $FLATPAK_BUILDER_BUILDDIR/packaging/linux/flatpak/apps.json /app/share/sunshine/apps.json
|
|
run-tests: true
|
|
test-rule: "" # empty to disable
|
|
test-commands:
|
|
- npm run serve & xvfb-run tests/test_sunshine --gtest_color=yes
|
|
sources:
|
|
- generated-sources.json
|
|
- type: git
|
|
url: "@GITHUB_CLONE_URL@"
|
|
commit: "@GITHUB_COMMIT@"
|
|
- type: file
|
|
path: package-lock.json
|