obs-studio/build-aux/com.obsproject.Studio.json
tytan652 ef9ec6fcc3 build-aux,CI: Replace Flatpak KDE SDK with Freedesktop SDK
The Qt components are from the same repo as other dependencies.

The KDE Platform was never a good fit for OBS Studio for multiple
reasons:
- Life cycle too short and misaligned with OBS Studio causing users to
  get EOL notification too often.
- Third-party Qt plugins were allowed which could change Qt's behavior.
- KDE exclusives sandboxed holes were inherited.
2025-12-17 21:15:17 -05:00

169 lines
5.9 KiB
JSON

{
"id": "com.obsproject.Studio",
"runtime": "org.freedesktop.Platform",
"runtime-version": "24.08",
"sdk": "org.freedesktop.Sdk",
"command": "obs",
"finish-args": [
"--socket=wayland",
"--socket=fallback-x11",
"--socket=pulseaudio",
"--device=all",
"--share=network",
"--share=ipc",
"--filesystem=xdg-run/pipewire-0",
"--filesystem=host",
"--talk-name=org.kde.StatusNotifierWatcher",
"--talk-name=org.freedesktop.Flatpak",
"--talk-name=org.freedesktop.Notifications",
"--talk-name=org.a11y.Bus",
"--env=VST_PATH=/app/extensions/Plugins/vst"
],
"add-extensions": {
"com.obsproject.Studio.Plugin": {
"directory": "plugins",
"subdirectories": true,
"add-ld-path": "lib",
"merge-dirs": "lib/obs-plugins;share/obs/obs-plugins",
"no-autodownload": true,
"autodelete": true
},
"org.freedesktop.LinuxAudio.Plugins": {
"directory": "extensions/Plugins",
"version": "24.08",
"add-ld-path": "lib",
"merge-dirs": "vst",
"subdirectories": true,
"no-autodownload": true
}
},
"modules": [
{
"name": "obs-deps-base",
"buildsystem": "simple",
"build-commands": [
"tar -xvf base.tar.xz -C /"
],
"sources": [
{
"type": "file",
"dest-filename": "base.tar.xz",
"url": "https://github.com/obsproject/obs-deps-buildstream/releases/download/2025-10-03/flatpak-base-x86_64-2025-10-03.tar.xz",
"sha256": "5bb40382cf587c0f20f6bead0f93f41ab0ea252a49f3d3ea73e8d554eb44ef6d"
}
]
},
{
"name": "obs-deps-devel",
"buildsystem": "simple",
"build-commands": [
"tar -xvf devel.tar.xz -C /"
],
"sources": [
{
"type": "file",
"dest-filename": "devel.tar.xz",
"url": "https://github.com/obsproject/obs-deps-buildstream/releases/download/2025-10-03/flatpak-devel-x86_64-2025-10-03.tar.xz",
"sha256": "69dbbb2f0097503b5c4acd9ee5834f44fc6276e9d3b4ab70526f0ef0292a9797"
}
]
},
{
"name": "obs-deps-devtools",
"buildsystem": "simple",
"build-commands": [
"tar -xvf devtools.tar.xz -C /"
],
"cleanup": [
"*"
],
"sources": [
{
"type": "file",
"dest-filename": "devtools.tar.xz",
"url": "https://github.com/obsproject/obs-deps-buildstream/releases/download/2025-10-03/flatpak-devtools-x86_64-2025-10-03.tar.xz",
"sha256": "db1e9b7804c3f9f08b3a4321166abfb53462c9f6e6d6ca5a26eb36b8cfa23df3"
}
]
},
{
"name": "qt",
"buildsystem": "simple",
"build-commands": [
"tar -xvf qt.tar.xz -C /"
],
"sources": [
{
"type": "file",
"dest-filename": "qt.tar.xz",
"url": "https://github.com/obsproject/obs-deps-buildstream/releases/download/2025-10-03/flatpak-qt-x86_64-2025-10-03.tar.xz",
"sha256": "79d7377da42e1eea2a18ed76407c1db716a80778fe34ef1f68b9eb7ca6d89cbf"
}
]
},
{
"name": "cef",
"build-options": {
"no-debuginfo": true
},
"buildsystem": "simple",
"build-commands": [
"mkdir -p /app/cef/libcef_dll_wrapper",
"cp -R ./include /app/cef",
"cp -R ./Release /app/cef",
"cp -R ./Resources /app/cef",
"cp -R ./build/libcef_dll_wrapper/libcef_dll_wrapper.a /app/cef/libcef_dll_wrapper"
],
"cleanup": [
"*"
],
"sources": [
{
"type": "archive",
"url": "https://cdn-fastly.obsproject.com/downloads/cef_binary_6533_linux_x86_64_v6.tar.xz",
"sha256": "7963335519a19ccdc5233f7334c5ab023026e2f3e9a0cc417007c09d86608146"
}
]
},
{
"name": "obs",
"buildsystem": "cmake-ninja",
"builddir": true,
"config-opts": [
"-DCMAKE_BUILD_TYPE=RelWithDebInfo",
"-DENABLE_WAYLAND=ON",
"-DENABLE_BROWSER=ON",
"-DCEF_ROOT_DIR=/app/cef",
"-DENABLE_ALSA=OFF",
"-DENABLE_PULSEAUDIO=ON",
"-DENABLE_JACK=ON",
"-DENABLE_VLC=OFF",
"-DENABLE_AJA=ON",
"-DENABLE_LIBFDK=ON",
"-DENABLE_QSV11=ON",
"-DENABLE_DECKLINK=OFF"
],
"secret-opts": [
"-DRESTREAM_CLIENTID=$RESTREAM_CLIENTID",
"-DRESTREAM_HASH=$RESTREAM_HASH",
"-DTWITCH_CLIENTID=$TWITCH_CLIENTID",
"-DTWITCH_HASH=$TWITCH_HASH",
"-DYOUTUBE_CLIENTID=$YOUTUBE_CLIENTID",
"-DYOUTUBE_CLIENTID_HASH=$YOUTUBE_CLIENTID_HASH",
"-DYOUTUBE_SECRET=$YOUTUBE_SECRET",
"-DYOUTUBE_SECRET_HASH=$YOUTUBE_SECRET_HASH"
],
"post-install": [
"install -d /app/plugins",
"install -d /app/extensions/Plugins"
],
"sources": [
{
"type": "dir",
"path": "../"
}
]
}
]
}