1+ app-id : net.retrodeck.es-de
2+ runtime : org.kde.Platform
3+ runtime-version : " 6.7"
4+ sdk : org.kde.Sdk
5+ sdk-extensions :
6+ - org.freedesktop.Sdk.Extension.llvm18
7+ command : /app/bin/es-de
8+
9+ add-extensions :
10+ org.freedesktop.Platform.ffmpeg-full :
11+ directory : lib/ffmpeg
12+ version : *runtime-version
13+
14+ cleanup :
15+ - /include
16+ - /share/ffmpeg
17+ - /lib/cmake
18+ - /lib/pkgconfig
19+ - /include
20+ - /bin/glslangValidator
21+ - /bin/zip*
22+ - /bin/zstd*
23+ - /lib/pkg-config
24+ - /share/doc
25+ - /share/man
26+ - /src
27+ - ' *.a'
28+ - ' *.la'
29+ - /lib/debug
30+ - /share/runtime
31+
32+ finish-args :
33+ - --socket=wayland
34+ - --socket=x11
35+ - --socket=pulseaudio
36+ - --share=ipc
37+ - --share=network
38+ - --device=all
39+ - --filesystem=host
40+ - --filesystem=home/.var/app/com.valvesoftware.Steam
41+ - --allow=multiarch
42+ - --talk-name=org.freedesktop.ScreenSaver
43+ - --talk-name=org.freedesktop.PowerManagement.Inhibit
44+ - --talk-name=org.freedesktop.login1.Manager
45+ - --filesystem=xdg-run/app/com.discordapp.Discord:create
46+ - --filesystem=xdg-config/gtk-3.0:ro
47+ - --env=QT_QPA_PLATFORM=wayland;wayland-egl;xcb
48+ # Dolphin
49+ - --allow=bluetooth
50+ # It allows an SDL application to specify its window class, which can be useful for window managers and desktop environments to identify and group similar windows
51+ - --env=SDL_VIDEO_X11_WMCLASS=net.retrodeck.es-de
52+ - --env=SDL_VIDEO_WAYLAND_WMCLASS=net.retrodeck.es-de
53+ # XEMU - Fixes issues with openSUSE systems, QEMU_AUDIO_DRV is defined as "pa" causing xemu to not launch
54+ - --unset-env=QEMU_AUDIO_DRV
55+ # BoilR
56+ - --filesystem=xdg-data/Steam:rw # Steam (flatpak)
57+ - --filesystem=~/.steam:rw # Steam (Non-flatpak)
58+ - --filesystem=~/.var/app/com.valvesoftware.Steam:rw # Steam (Flatpak)
59+ # PPSSPP, DOLPHIN
60+ - --filesystem=xdg-run/gamescope-0:ro
61+
62+ modules :
63+
64+ # dependency of: CEMU, ES-DE
65+ - name : pugixml
66+ buildsystem : cmake-ninja
67+ config-opts :
68+ - -DBUILD_SHARED_LIBS=ON
69+ cleanup :
70+ - /include
71+ - /lib/cmake
72+ - /lib/pkgconfig
73+ sources :
74+ - type : archive
75+ url : https://github.com/zeux/pugixml/releases/download/v1.14/pugixml-1.14.tar.gz
76+ sha256 : 2f10e276870c64b1db6809050a75e11a897a8d7456c4be5c6b2e35a11168a015
77+ x-checker-data :
78+ type : anitya
79+ project-id : 3728
80+ url-template : https://github.com/zeux/pugixml/releases/download/v$version/pugixml-$version.tar.gz
81+
82+ # https://gitlab.com/es-de/emulationstation-de
83+
84+ # - name: ffmpeg
85+ # config-opts:
86+ # - --disable-static
87+ # - --disable-programs
88+ # - --disable-doc
89+ # - --enable-gpl
90+ # - --enable-shared
91+ # - --enable-libvorbis
92+ # - --enable-libopus
93+ # - --enable-libvpx
94+ # - --enable-postproc
95+ # sources:
96+ # - type: git
97+ # url: https://github.com/FFmpeg/FFmpeg.git
98+ # tag: n6.1
99+
100+ - name : freeimage
101+ no-autogen : true
102+ build-options :
103+ cxxflags : -std=c++14
104+ make-args :
105+ - DESTDIR=/app
106+ sources :
107+ - type : archive
108+ url : http://downloads.sourceforge.net/freeimage/FreeImage3180.zip
109+ sha256 : f41379682f9ada94ea7b34fe86bf9ee00935a3147be41b6569c9605a53e438fd
110+ - type : shell
111+ commands :
112+ - sed -i 's|-o root -g root ||' ./Makefile.gnu
113+ - sed -i 's|/usr|/app|' ./Makefile.gnu
114+
115+ - name : libgit2
116+ buildsystem : cmake-ninja
117+ config-opts :
118+ - -DCMAKE_BUILD_TYPE=Release
119+ - -DBUILD_SHARED_LIBS:BOOL=ON
120+ - -DTHREADSAFE=ON
121+ sources :
122+ - type : git
123+ url : https://github.com/libgit2/libgit2.git
124+ tag : v1.6.3
125+
126+ # Needed from ES-DE 2.1.0+
127+ - name : libpoppler-glib
128+ buildsystem : cmake-ninja
129+ config-opts :
130+ - -DENABLE_BOOST=OFF
131+ sources :
132+ - type : archive
133+ # original link not working, found a mirror
134+ url : https://poppler.freedesktop.org/poppler-22.11.0.tar.xz
135+ # url: https://gitlab.freedesktop.org/poppler/poppler/-/archive/poppler-22.11.0/poppler-poppler-22.11.0.tar.bz2
136+ sha256 : 093ba9844ed774285517361c15e21a31ba4df278a499263d4403cca74f2da828
137+ cleanup :
138+ - /lib/pkgconfig
139+ - /include
140+ - ' *.a'
141+ - ' *.la'
142+
143+ - name : ES-DE
144+ buildsystem : cmake-ninja
145+ config-opts :
146+ - -DRETRODECK=on
147+ build-options :
148+ cflags : -I/app/include
149+ ldflags : -L/app/lib
150+ cleanup :
151+ - es-app
152+ - es-core
153+ sources :
154+ - type : dir
155+ path : ./
0 commit comments