#
# 86Box    A hypervisor and IBM PC system emulator that specializes in
#          running old operating systems and software designed for IBM
#          PC systems and compatibles from 1981 through fairly recent
#          system designs based on the PCI bus.
#
#          This file is part of the 86Box distribution.
#
#          Recipe file for appimage-builder.
#
#          build.sh processes conditional comments based on CMakeCache
#          options at the end of each line. For example, a line ending in:
#
#            # if QT:BOOL=ON
#
#          will be removed from the dynamically-generated copy of this
#          file if "QT" is not a boolean option set to ON, either through
#          a -D definition or the option's default value in CMakeLists.
#
#
# Authors: RichardG, <richardg867@gmail.com>
#
#          Copyright 2022 RichardG.
#

version: 1
AppDir:
  path: ./archive_tmp
  app_info:
    id: !ENV '${project_id}'
    name: !ENV '${project}'
    icon: !ENV '${project_icon}'
    version: !ENV '${project_version}'
    exec: !ENV 'usr/local/bin/${project}'
    exec_args: $@
  apt:
    arch: !ENV '${arch_deb}'
    sources:
    - sourceline: 'deb http://deb.debian.org/debian bullseye main'
      key_url: 'https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x1f89983e0081fde018f3cc9673a4f27b8dd47936'
    - sourceline: 'deb http://security.debian.org/debian-security bullseye-security main'
      key_url: 'https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x1f89983e0081fde018f3cc9673a4f27b8dd47936'
    - sourceline: 'deb http://deb.debian.org/debian bullseye-updates main'
      key_url: 'https://keyserver.ubuntu.com/pks/lookup?op=get&search=0xac530d520f2f3269f5e98313a48449044aad5c5d'
    include:
    - libedit2 # if (CLI:BOOL=ON|QT:BOOL=OFF)
    - libevdev2 # if QT:BOOL=ON
    - libfreetype6
    - libgbm1 # if QT:BOOL=ON
    - libgl1 # if QT:BOOL=ON
    - libgles2 # if QT:BOOL=ON
    - libglvnd0 # if QT:BOOL=ON
    - libglx0 # if QT:BOOL=ON
    - libgomp1
    - libgs9
    - libpng16-16
    - libqt5core5a # if QT:BOOL=ON
    - libqt5gui5 # if QT:BOOL=ON
    - libqt5widgets5 # if QT:BOOL=ON
    - libsixel1 # if CLI:BOOL=ON
    - libslirp0
    - libsndio7.0 # if OPENAL:BOOL=ON
    - libvdeplug-dev # -dev also pulls in libvdeplug2. -dev is required to get the proper .so symlink to the library
    - libx11-6 # if QT:BOOL=ON
    - libx11-xcb1 # if QT:BOOL=ON
    - libxcb1 # if QT:BOOL=ON
    - libxcb-render0 # if QT:BOOL=ON
    - libxcb-shape0 # if QT:BOOL=ON
    - libxcb-shm0 # if QT:BOOL=ON
    - libxcb-xfixes0 # if QT:BOOL=ON
    - libxkbcommon-x11-0 # if QT:BOOL=ON
    - qtwayland5 # if QT:BOOL=ON
    - zlib1g
  files:
    exclude:
    - etc
    - lib/udev
    - usr/[!ls]* # * except lib, local, share
    - usr/lib/*/libasound.so.* # using our own ALSA can cause issues, and the API is pretty stable anyway
    - usr/lib/*.a # produced by library compilation
    - usr/lib/cmake # produced by library compilation
    - usr/lib/pkgconfig # produced by library compilation
    - usr/s[!h]* # s* except share
    - usr/share/[!aim]* # * except applications, icons, metainfo
    - usr/share/a[!p]* # a* except applications
    - usr/share/ap[!p]* # ap* except applications
    - usr/share/app[!l]* # app* except applications
    - usr/share/i[!c]* # i* except icons
    - usr/share/icons/[!h]* # * except hicolor
    - usr/share/icons/h[!i]* # h* except hicolor
    - usr/share/m[!e]* # m* except metainfo
    - usr/share/metainfo/*.metainfo.xml # metainfo for libraries
    - var
AppImage:
  arch: !ENV '${arch_appimage}'
  file_name: !ENV '${appimage_path}'
