mirror of
https://github.com/RetroDECK/RetroDECK.git
synced 2024-11-27 00:05:37 +00:00
401 lines
13 KiB
YAML
401 lines
13 KiB
YAML
app-id: com.xargon.retrodeck
|
|
runtime: org.kde.Platform
|
|
runtime-version: '5.15-21.08'
|
|
sdk: org.kde.Sdk
|
|
command: retrodeck.sh
|
|
# command: retroarch
|
|
|
|
finish-args:
|
|
- --socket=x11
|
|
- --socket=wayland
|
|
- --socket=pulseaudio
|
|
- --share=ipc
|
|
- --share=network
|
|
- --device=all
|
|
- --filesystem=~/retrodeck/roms:create
|
|
- --allow=multiarch
|
|
- --talk-name=org.freedesktop.ScreenSaver
|
|
- --talk-name=org.freedesktop.PowerManagement.Inhibit
|
|
- --talk-name=org.freedesktop.login1
|
|
#- --env=PATH=/app/bin:/usr/bin:/app/usr/bin
|
|
|
|
modules:
|
|
|
|
- name: unappimage
|
|
buildsystem: simple
|
|
build-commands:
|
|
- make -C squashfs-tools -j ${FLATPAK_BUILDER_N_JOBS} install INSTALL_DIR=/app/bin
|
|
cleanup: ['*']
|
|
sources:
|
|
- type: git
|
|
url: https://github.com/refi64/unappimage
|
|
commit: d7f86f2a0d7ec3a69211125207d5f127386b849a
|
|
|
|
- name: retroarch
|
|
buildsystem: simple
|
|
build-commands:
|
|
- ls -l
|
|
- pwd
|
|
- unappimage ./RetroArch-Linux-x86_64.AppImage
|
|
- mv ./squashfs-root/usr /app/usr
|
|
- ln -s /app/usr/bin/retroarch /app/bin/retroarch
|
|
cleanup:
|
|
- RetroArch-Linux-x86_64.AppImage*
|
|
sources:
|
|
- type: archive
|
|
url: https://buildbot.libretro.com/stable/1.10.1/linux/x86_64/RetroArch.7z
|
|
sha256: 0ab48b247fd7ce05d9532f28b706f35a1c96da67b826a9a312d66b86b9dd8f39
|
|
|
|
- name: retroarch-assets
|
|
builsystem: simple
|
|
#no-autogen: true
|
|
make-install-args:
|
|
- PREFIX=/app
|
|
post-install:
|
|
- mkdir -p /app/config/retroarch/assets/
|
|
- mv -f ./* /app/config/retroarch/assets/
|
|
#- rm -f Automatic/README.md
|
|
cleanup: ['*']
|
|
sources:
|
|
- type: archive
|
|
url: https://github.com/libretro/retroarch-assets/archive/948def88f11c8c62f85f606a1cd8f5a1bbad671b.zip
|
|
sha256: d7b2d79d6809521f73818117575f49b706a913cfc61822582d1f12a697944791
|
|
|
|
# needed for reatroarch
|
|
- name: libusb
|
|
config-opts:
|
|
- --disable-static
|
|
build-commands:
|
|
- ./autogen.sh
|
|
- ./bootstrap.sh
|
|
- ./configure --prefix=/app
|
|
- make
|
|
- make install
|
|
cleanup:
|
|
- /lib/*.la
|
|
- /lib/pkgconfig
|
|
- /include
|
|
sources:
|
|
- type: archive
|
|
url: https://github.com/libusb/libusb/archive/v1.0.25.tar.gz
|
|
sha256: f9c4b7dad27a6196ca9ec3c6ec7fa446194342de326c71e030eb2c480895e169
|
|
post-install:
|
|
- install -Dm644 COPYING /app/share/licenses/libusb/COPYING
|
|
|
|
- name: retroarch-cores
|
|
buildsystem: simple
|
|
build-commands:
|
|
- install -Dm755 ./RetroArch-Linux-x86_64.AppImage.home/.config/retroarch/cores/* -t /var/config/retroarch/cores
|
|
cleanup:
|
|
- RetroArch_cores.7z
|
|
sources:
|
|
- type: archive
|
|
url: https://buildbot.libretro.com/stable/1.10.1/linux/x86_64/RetroArch_cores.7z
|
|
sha256: 3467de291c0849947993a535b0f32e7c211878dcaf6a37a9f864cf50cbe824fd
|
|
|
|
# - name: template
|
|
# builsystem: simple
|
|
# build-commands:
|
|
# -
|
|
# cleanup: ['*']
|
|
# sources:
|
|
# - type:
|
|
# url:
|
|
# sha256:
|
|
|
|
- name: yuzu
|
|
buildsystem: simple
|
|
build-commands:
|
|
- unappimage ./yuzu*.AppImage
|
|
- mkdir -p /app/retrodeck/emulators/yuzu
|
|
- mv ./squashfs-root /app/retrodeck/emulators/yuzu
|
|
- ln -s ./usr/bin/yuzu /app/usr/bin
|
|
# TODO: see how are the files and implement, edit the yuzu.sh script
|
|
cleanup: ['*']
|
|
sources:
|
|
- type: file
|
|
url: https://github.com/yuzu-emu/yuzu-mainline/releases/download/mainline-0-957/yuzu-20220320-1ce8136c7.AppImage
|
|
sha256: 000b7f09aa562a1f844697ded35618cef3189f339a207759e11295f31589a40d
|
|
|
|
# - name: ryujinx
|
|
# - name: xemu
|
|
# - name: rpcs3
|
|
# - name: vita3k
|
|
|
|
## Needed for 351elec-emulationstation
|
|
#- name: autoconf-2.13
|
|
# builsystem: simple
|
|
# config-opts:
|
|
# - --program-suffix=-2.13
|
|
# cleanup:
|
|
# - '*'
|
|
# sources:
|
|
# - type: archive
|
|
# url: https://ftp.gnu.org/gnu/autoconf/autoconf-2.13.tar.gz
|
|
# sha256: f0611136bee505811e9ca11ca7ac188ef5323a8e2ef19cffd3edb3cf08fd791e
|
|
#
|
|
#- name: freeimage
|
|
# no-autogen: true
|
|
# build-options:
|
|
# #C++17 is not supported
|
|
# cxxflags: -std=c++14
|
|
# make-args:
|
|
# - DESTDIR=/app
|
|
# sources:
|
|
# - type: archive
|
|
# url: http://downloads.sourceforge.net/freeimage/FreeImage3180.zip
|
|
# sha256: f41379682f9ada94ea7b34fe86bf9ee00935a3147be41b6569c9605a53e438fd
|
|
# - type: shell
|
|
# commands:
|
|
# - sed -i 's|-o root -g root ||' ./Makefile.gnu
|
|
# - sed -i 's|/usr|/app|' ./Makefile.gnu
|
|
|
|
#- name: 351elec-emulationstation
|
|
# buildsystem: simple
|
|
# build-commands:
|
|
# - install -Dm755 Splash.h -t /app/emulationstation/es-core/src/
|
|
# - install -Dm755 GuiMenu.cpp -t /app/emulationstation/es-app/src/guis/
|
|
# - cd /app/emulationstation
|
|
# - cmake -DENABLE_EMUELEC=1 -DGLES2=0 -DDISABLE_KODI=1 -DENABLE_FILEMANAGER=0 -DCEC=0 -DRG552=1
|
|
# - make -j$(nproc)
|
|
# - ln -s emulationstation /app/usr/bin/emulationstation
|
|
## make-args:
|
|
## - -DENABLE_EMUELEC=1
|
|
## - -DGLES2=0
|
|
## - -DDISABLE_KODI=1
|
|
## - -DENABLE_FILEMANAGER=0
|
|
## - -DCEC=0
|
|
## - -DRG552=1
|
|
## cleanup: ['*']
|
|
# sources:
|
|
# - type: git
|
|
# url: https://github.com/351ELEC/351elec-emulationstation.git
|
|
# branch: 6b704cfa1161090de4ca1b5ec343ebab2060e7fc
|
|
# #- type: file
|
|
# # url: https://github.com/351ELEC/351elec-emulationstation/archive/6b704cfa1161090de4ca1b5ec343ebab2060e7fc.zip
|
|
# # sha256: 5d659033da662bf85d5986609e4d92c55e3c1c4a4c79e2461350134f509c47ac
|
|
# - type: file
|
|
# path: patches/Splash.h
|
|
# - type: file
|
|
# path: patches/GuiMenu.cpp
|
|
|
|
- name: art-book-next
|
|
buildsystem: simple
|
|
build-commands:
|
|
- mkdir -p /app/emulationstation/themes/art-book-next
|
|
- mv -f * /app/emulationstation/themes/art-book-next/
|
|
cleanup: ['*']
|
|
sources:
|
|
- type: git
|
|
url: https://github.com/anthonycaccese/es-theme-art-book-next.git
|
|
branch: eaf73a4eefde22791681c7f430a238fb324bdeaf
|
|
|
|
# TODO 351elec-es-packages batocera-config batocera-scraper batocera-settings runemu.py setsettings.py
|
|
|
|
- name: glibc
|
|
buildsystem: simple
|
|
build-commands:
|
|
- tar --use-compress-program=unzstd -xvf glibc-2.35-3-x86_64.pkg.tar.zst
|
|
- cp -r usr/lib/* /app/lib/
|
|
cleanup: ['*']
|
|
sources:
|
|
- type: file
|
|
path: glibc-2.35-3-x86_64.pkg.tar.zst
|
|
|
|
- name: lib32-glibc
|
|
buildsystem: simple
|
|
build-commands:
|
|
- tar --use-compress-program=unzstd -xvf lib32-glibc-2.35-3-x86_64.pkg.tar.zst
|
|
- cp -r usr/lib/* /app/lib/
|
|
cleanup: ['*']
|
|
sources:
|
|
- type: file
|
|
path: lib32-glibc-2.35-3-x86_64.pkg.tar.zst
|
|
|
|
- name: retrodeck
|
|
buildsystem: simple
|
|
build-commands:
|
|
- mkdir -p ~/retrodeck/roms/bios
|
|
- mkdir -p ~/retrodeck/roms/3do
|
|
- mkdir -p ~/retrodeck/roms/amiga
|
|
- mkdir -p ~/retrodeck/roms/amigacd32
|
|
- mkdir -p ~/retrodeck/roms/amstradcpc
|
|
- mkdir -p ~/retrodeck/roms/arcade
|
|
- mkdir -p ~/retrodeck/roms/atari2600
|
|
- mkdir -p ~/retrodeck/roms/atari5200
|
|
- mkdir -p ~/retrodeck/roms/atari7800
|
|
- mkdir -p ~/retrodeck/roms/atarist
|
|
- mkdir -p ~/retrodeck/roms/atari800
|
|
- mkdir -p ~/retrodeck/roms/atomiswave
|
|
- mkdir -p ~/retrodeck/roms/channelf
|
|
- mkdir -p ~/retrodeck/roms/colecovision
|
|
- mkdir -p ~/retrodeck/roms/c64
|
|
- mkdir -p ~/retrodeck/roms/c128
|
|
- mkdir -p ~/retrodeck/roms/vic20
|
|
- mkdir -p ~/retrodeck/roms/laserdisc
|
|
- mkdir -p ~/retrodeck/roms/dreamcast
|
|
- mkdir -p ~/retrodeck/roms/easyrpg
|
|
- mkdir -p ~/retrodeck/roms/famicom
|
|
- mkdir -p ~/retrodeck/roms/fbn
|
|
- mkdir -p ~/retrodeck/roms/gb
|
|
- mkdir -p ~/retrodeck/roms/gbh
|
|
- mkdir -p ~/retrodeck/roms/gameandwatch
|
|
- mkdir -p ~/retrodeck/roms/gba
|
|
- mkdir -p ~/retrodeck/roms/fds
|
|
- mkdir -p ~/retrodeck/roms/c16
|
|
- mkdir -p ~/retrodeck/roms/ggh
|
|
- mkdir -p ~/retrodeck/roms/gbah
|
|
- mkdir -p ~/retrodeck/roms/intellivision
|
|
- mkdir -p ~/retrodeck/roms/gbch
|
|
- mkdir -p ~/retrodeck/roms/atarilynx
|
|
- mkdir -p ~/retrodeck/roms/mame
|
|
- mkdir -p ~/retrodeck/roms/dos
|
|
- mkdir -p ~/retrodeck/roms/snesmsu1
|
|
- mkdir -p ~/retrodeck/roms/msx
|
|
- mkdir -p ~/retrodeck/roms/msx2
|
|
- mkdir -p ~/retrodeck/roms/naomi
|
|
- mkdir -p ~/retrodeck/roms/neogeo
|
|
- mkdir -p ~/retrodeck/roms/ngp
|
|
- mkdir -p ~/retrodeck/roms/nds
|
|
- mkdir -p ~/retrodeck/roms/n64
|
|
- mkdir -p ~/retrodeck/roms/nes
|
|
- mkdir -p ~/retrodeck/roms/nesh
|
|
- mkdir -p ~/retrodeck/roms/ngpc
|
|
- mkdir -p ~/retrodeck/roms/neocd
|
|
- mkdir -p ~/retrodeck/roms/pc-9800
|
|
- mkdir -p ~/retrodeck/roms/pcengine
|
|
- mkdir -p ~/retrodeck/roms/pcenginecd
|
|
- mkdir -p ~/retrodeck/roms/pcfx
|
|
- mkdir -p ~/retrodeck/roms/openbor
|
|
- mkdir -p ~/retrodeck/roms/piece
|
|
- mkdir -p ~/retrodeck/roms/odyssey2
|
|
- mkdir -p ~/retrodeck/roms/psp
|
|
- mkdir -p ~/retrodeck/roms/pspminis
|
|
- mkdir -p ~/retrodeck/roms/pokemini
|
|
- mkdir -p ~/retrodeck/roms/homebrew
|
|
- mkdir -p ~/retrodeck/roms/ports
|
|
- mkdir -p ~/retrodeck/roms/sc-3000
|
|
- mkdir -p ~/retrodeck/roms/scummvm
|
|
- mkdir -p ~/retrodeck/roms/psx
|
|
- mkdir -p ~/retrodeck/roms/segacd
|
|
- mkdir -p ~/retrodeck/roms/sega32x
|
|
- mkdir -p ~/retrodeck/roms/genesis
|
|
- mkdir -p ~/retrodeck/roms/genh
|
|
- mkdir -p ~/retrodeck/roms/mastersystem
|
|
- mkdir -p ~/retrodeck/roms/megadrive
|
|
- mkdir -p ~/retrodeck/roms/megaduck
|
|
- mkdir -p ~/retrodeck/roms/saturn
|
|
- mkdir -p ~/retrodeck/roms/sg-1000
|
|
- mkdir -p ~/retrodeck/roms/x1
|
|
- mkdir -p ~/retrodeck/roms/zxspectrum
|
|
- mkdir -p ~/retrodeck/roms/zx81
|
|
- mkdir -p ~/retrodeck/roms/pc-8800
|
|
- mkdir -p ~/retrodeck/roms/snes
|
|
- mkdir -p ~/retrodeck/roms/supergrafx
|
|
- mkdir -p ~/retrodeck/roms/pico-8
|
|
- mkdir -p ~/retrodeck/roms/megacd
|
|
- mkdir -p ~/retrodeck/roms/snesh
|
|
- mkdir -p ~/retrodeck/roms/satellaview
|
|
- mkdir -p ~/retrodeck/roms/sfc
|
|
- mkdir -p ~/retrodeck/roms/sufami
|
|
- mkdir -p ~/retrodeck/roms/tic-80
|
|
- mkdir -p ~/retrodeck/roms/tg16
|
|
- mkdir -p ~/retrodeck/roms/solarus
|
|
- mkdir -p ~/retrodeck/roms/vectrex
|
|
- mkdir -p ~/retrodeck/roms/gbc
|
|
- mkdir -p ~/retrodeck/roms/videopac
|
|
- mkdir -p ~/retrodeck/roms/virtualboy
|
|
- mkdir -p ~/retrodeck/roms/wonderswan
|
|
- mkdir -p ~/retrodeck/roms/wonderswancolor
|
|
- mkdir -p ~/retrodeck/roms/ecwolf
|
|
- mkdir -p ~/retrodeck/roms/x68000
|
|
- mkdir -p ~/retrodeck/roms/build
|
|
- mkdir -p ~/retrodeck/roms/tools
|
|
- mkdir -p ~/retrodeck/roms/imageviewer
|
|
- mkdir -p ~/retrodeck/roms/gamegear
|
|
- mkdir -p ~/retrodeck/roms/tg16cd
|
|
- mkdir -p ~/retrodeck/roms/j2me
|
|
- mkdir -p ~/retrodeck/roms/uzebox
|
|
- mkdir -p ~/retrodeck/roms/supervision
|
|
- mkdir -p ~/retrodeck/roms/doom
|
|
- mkdir -p ~/retrodeck/roms/switch
|
|
- mkdir -p ~/retrodeck/roms/wii
|
|
- mkdir -p ~/retrodeck/roms/gc
|
|
- mkdir -p ~/retrodeck/roms/3ds
|
|
|
|
- install -Dm755 retrodeck.sh -t /app/retrodeck/
|
|
- install -Dm755 export_func.sh -t /app/retrodeck/
|
|
|
|
- ln -s /app/retrodeck/retrodeck.sh /app/bin/retrodeck.sh
|
|
- ln -s /app/retrodeck/export_func.sh /app/bin/export_func.sh
|
|
|
|
- install -Dm755 es_* -t /app/emulationstation
|
|
|
|
- pwd
|
|
- ls -l
|
|
- rm -f /var/config/retroarch/retroarch.cfg
|
|
- mkdir -p /var/config/retroarch
|
|
#- mv retroarch.cfg /var/config/retroarch/ - not working, looking for a fix
|
|
|
|
- install -Dm755 emulationstation -t /app/emulationstation
|
|
- ln -s /app/emulationstation/emulationstation /app/bin/emulationstation
|
|
|
|
- mkdir -p /app/retrodeck/storage/.config/
|
|
- touch /app/retrodeck/storage/.config/.OS_ARCH
|
|
- echo "DECK" >> /app/retrodeck/storage/.config/.OS_ARCH
|
|
|
|
- cp lib*.so.* /app/lib/
|
|
|
|
# move other files (check old install script)
|
|
cleanup: ['*']
|
|
sources:
|
|
- type: file
|
|
path: retrodeck.sh
|
|
- type: file
|
|
path: export_func.sh
|
|
- type: file
|
|
path: es_systems.cfg
|
|
- type: file
|
|
path: es_settings.cfg
|
|
- type: file
|
|
path: es_input.cfg
|
|
- type: file
|
|
path: retroarch.cfg
|
|
- type: dir
|
|
path: emulationstation
|
|
- type: file
|
|
path: libfreeimage.so.3
|
|
- type: file
|
|
path: libvlc.so.5
|
|
- type: file
|
|
path: libGLU.so.1
|
|
- type: file
|
|
path: libjpeg.so.8
|
|
- type: file
|
|
path: libjxrglue.so.0
|
|
- type: file
|
|
path: libOpenEXR-3_1.so.30
|
|
- type: file
|
|
path: libIex-3_1.so.30
|
|
- type: file
|
|
path: libImath-3_1.so.29
|
|
- type: file
|
|
path: libraw.so.20
|
|
- type: file
|
|
path: libvlccore.so.9
|
|
- type: file
|
|
path: libjpegxr.so.0
|
|
- type: file
|
|
path: libIlmThread-3_1.so.30
|
|
- type: file
|
|
path: libjasper.so.4
|
|
- type: file
|
|
path: libidn.so.12
|
|
- type: file
|
|
path: libc.so.6
|
|
- type: file
|
|
path: libcurl.so.4
|
|
- type: file
|
|
path: ld-linux-x86-64.so.2
|
|
|
|
# create desktop entry |