com.obsproject.Studio.json 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244
  1. {
  2. "app-id": "com.obsproject.Studio",
  3. "runtime": "org.kde.Platform",
  4. "runtime-version": "5.15",
  5. "sdk": "org.kde.Sdk",
  6. "command": "obs",
  7. "finish-args": [
  8. "--socket=wayland",
  9. "--socket=x11",
  10. "--socket=pulseaudio",
  11. "--device=all",
  12. "--share=network",
  13. "--share=ipc",
  14. "--filesystem=xdg-run/pipewire-0",
  15. "--filesystem=host",
  16. "--talk-name=org.kde.StatusNotifierWatcher",
  17. "--talk-name=org.freedesktop.ScreenSaver",
  18. "--talk-name=org.freedesktop.PowerManagement.Inhibit",
  19. "--talk-name=org.freedesktop.Notifications",
  20. "--talk-name=org.mate.SessionManager",
  21. "--talk-name=org.gnome.SessionManager",
  22. "--own-name=org.kde.StatusNotifierItem-2-2",
  23. "--system-talk-name=org.freedesktop.Avahi"
  24. ],
  25. "cleanup": [
  26. "/lib/pkgconfig",
  27. "/share/man",
  28. "*.la"
  29. ],
  30. "modules": [
  31. {
  32. "name": "x264",
  33. "config-opts": [
  34. "--disable-cli",
  35. "--enable-shared"
  36. ],
  37. "cleanup": [
  38. "/include"
  39. ],
  40. "sources": [
  41. {
  42. "type": "git",
  43. "url": "https://code.videolan.org/videolan/x264.git",
  44. "commit": "b86ae3c66f51ac9eab5ab7ad09a9d62e67961b8a"
  45. }
  46. ]
  47. },
  48. {
  49. "name": "v4l-utils",
  50. "config-opts": [
  51. "--disable-static",
  52. "--disable-doxygen-doc",
  53. "--disable-libdvbv5",
  54. "--disable-v4l-utils",
  55. "--disable-qv4l2",
  56. "--with-udevdir=/app/lib/udev/"
  57. ],
  58. "cleanup": [
  59. "/include"
  60. ],
  61. "sources": [
  62. {
  63. "type": "archive",
  64. "url": "https://linuxtv.org/downloads/v4l-utils/v4l-utils-1.20.0.tar.bz2",
  65. "sha256": "956118713f7ccb405c55c7088a6a2490c32d54300dd9a30d8d5008c28d3726f7"
  66. }
  67. ]
  68. },
  69. {
  70. "name": "nv-codec-headers",
  71. "no-autogen": true,
  72. "make-install-args": [
  73. "PREFIX=/app"
  74. ],
  75. "cleanup": [
  76. "*"
  77. ],
  78. "sources": [
  79. {
  80. "type": "git",
  81. "url": "https://git.videolan.org/git/ffmpeg/nv-codec-headers.git",
  82. "commit": "7a81595786463d1c7efcb03aa85def69fc2cad41",
  83. "tag": "n11.0.10.0"
  84. }
  85. ]
  86. },
  87. {
  88. "name": "srt",
  89. "buildsystem": "cmake-ninja",
  90. "config-opts": [
  91. "-DENABLE_STATIC=OFF",
  92. "-DENABLE_APPS=OFF",
  93. "-DENABLE_LOGGING=OFF"
  94. ],
  95. "cleanup": [
  96. "/include",
  97. "/bin"
  98. ],
  99. "sources": [
  100. {
  101. "type": "git",
  102. "url": "https://github.com/Haivision/srt.git",
  103. "tag": "v1.4.2",
  104. "commit": "50b7af06f3a0a456c172b4cb3aceafa8a5cc0036"
  105. }
  106. ]
  107. },
  108. {
  109. "name": "ffmpeg",
  110. "config-opts": [
  111. "--enable-gpl",
  112. "--enable-shared",
  113. "--disable-static",
  114. "--enable-gnutls",
  115. "--disable-doc",
  116. "--disable-programs",
  117. "--disable-devices",
  118. "--enable-libopus",
  119. "--enable-libvpx",
  120. "--enable-libvorbis",
  121. "--enable-libx264",
  122. "--enable-nvenc",
  123. "--enable-libsrt"
  124. ],
  125. "cleanup": [
  126. "/share/ffmpeg",
  127. "/include"
  128. ],
  129. "sources": [
  130. {
  131. "type": "archive",
  132. "url": "https://www.ffmpeg.org/releases/ffmpeg-4.3.2.tar.xz",
  133. "sha256": "46e4e64f1dd0233cbc0934b9f1c0da676008cad34725113fb7f802cfa84ccddb"
  134. }
  135. ]
  136. },
  137. {
  138. "name": "luajit",
  139. "no-autogen": true,
  140. "cleanup": [
  141. "/bin",
  142. "/include"
  143. ],
  144. "sources": [
  145. {
  146. "type": "git",
  147. "url": "https://luajit.org/git/luajit-2.0.git",
  148. "branch": "v2.1",
  149. "disable-shallow-clone": true
  150. },
  151. {
  152. "type": "shell",
  153. "commands": [
  154. "sed -i 's|/usr/local|/app|' ./Makefile"
  155. ]
  156. }
  157. ]
  158. },
  159. {
  160. "name": "swig",
  161. "config-opts": [
  162. "--without-boost",
  163. "--without-pcre",
  164. "--without-alllang",
  165. "--with-lua=/app/bin/luajit-2.1.0-beta3",
  166. "--with-luaincl=/app/include/luajit-2.1",
  167. "--with-python3"
  168. ],
  169. "cleanup": [
  170. "*"
  171. ],
  172. "sources": [
  173. {
  174. "type": "archive",
  175. "url": "https://prdownloads.sourceforge.net/swig/swig-4.0.2.tar.gz",
  176. "sha256": "d53be9730d8d58a16bf0cbd1f8ac0c0c3e1090573168bfa151b01eb47fa906fc"
  177. }
  178. ]
  179. },
  180. {
  181. "name": "mbedtls",
  182. "buildsystem": "cmake-ninja",
  183. "builddir": true,
  184. "config-opts": [
  185. "-DCMAKE_BUILD_TYPE=Release",
  186. "-DCMAKE_POSITION_INDEPENDENT_CODE=ON",
  187. "-DUSE_SHARED_MBEDTLS_LIBRARY=ON",
  188. "-DUSE_STATIC_MBEDTLS_LIBRARY=OFF",
  189. "-DENABLE_TESTING=OFF",
  190. "-DENABLE_PROGRAMS=OFF"
  191. ],
  192. "cleanup": [
  193. "/include"
  194. ],
  195. "sources": [
  196. {
  197. "type": "git",
  198. "url": "https://github.com/ARMmbed/mbedtls.git",
  199. "commit": "1c54b5410fd48d6bcada97e30cac417c5c7eea67",
  200. "tag": "v2.25.0"
  201. }
  202. ]
  203. },
  204. {
  205. "name": "jack2",
  206. "buildsystem": "simple",
  207. "build-commands": [
  208. "./waf configure --prefix=$FLATPAK_DEST",
  209. "./waf build -j $FLATPAK_BUILDER_N_JOBS",
  210. "./waf install"
  211. ],
  212. "cleanup": [
  213. "*"
  214. ],
  215. "sources": [
  216. {
  217. "type": "archive",
  218. "url": "https://github.com/jackaudio/jack2/releases/download/v1.9.14/v1.9.14.tar.gz",
  219. "sha256": "a20a32366780c0061fd58fbb5f09e514ea9b7ce6e53b080a44b11a558a83217c"
  220. }
  221. ]
  222. },
  223. {
  224. "name": "obs",
  225. "buildsystem": "cmake-ninja",
  226. "builddir": true,
  227. "config-opts": [
  228. "-DCMAKE_BUILD_TYPE=Release",
  229. "-DENABLE_WAYLAND=ON",
  230. "-DUNIX_STRUCTURE=ON",
  231. "-DUSE_XDG=ON",
  232. "-DDISABLE_ALSA=ON",
  233. "-DENABLE_PULSEAUDIO=ON",
  234. "-DWITH_RTMPS=ON"
  235. ],
  236. "sources": [
  237. {
  238. "type": "dir",
  239. "path": "../../"
  240. }
  241. ]
  242. }
  243. ]
  244. }