version: 1
script:
  # Remove any previous build
  - rm -rf $TARGET_APPDIR  | true
  # Make usr and icons dirs
  - mkdir -p $TARGET_APPDIR/usr/src
  - mkdir -p $TARGET_APPDIR/usr/bin
  - mkdir -p $TARGET_APPDIR/usr/share/icons
  - mkdir -p $TARGET_APPDIR/usr/share/applications
  # copy logo
  - cp src/resources/logo.png $TARGET_APPDIR/usr/share/icons/
  # Copy the python application code into the AppDir
  - cp bin/evaluate.py  $TARGET_APPDIR/usr/bin/
  - cp -r src/*  $TARGET_APPDIR/usr/src/
  - cp src/resources/pkm.vogel.nmreval.desktop $TARGET_APPDIR/usr/share/applications
  # set current date as version info
  - sed -i "s/CURRENT_DATE/$(date +'%Y-%m-%d')/" $TARGET_APPDIR/usr/src/nmreval/version.py


AppDir:
  app_info:
    id: pkm.vogel.nmreval
    name: NMReval
    icon: logo
    version: _devel_
    # Set the python executable as entry point
    exec: usr/bin/python3
    # Set the application main script path as argument. Use '$@' to forward CLI parameters
    exec_args: "$APPDIR/usr/bin/evaluate.py $@"

  apt:
    arch: amd64
    allow_unauthenticated: true
    sources:
      - sourceline: 'deb [arch=amd64] http://ftp.uni-mainz.de/debian bullseye main contrib non-free'

    include:
      # for /usr/bin/env
#      - coreutils
#      - dash
#      - zsync
#      - hicolor-icon-theme
      - libatlas3-base
      - gnuplot-nox
      - python3-minimal
      - python3-numpy
      - python3-scipy
      - python3-bsddb3
      - python3-h5py
      - python3-pyqt5
      - python3-pyqtgraph
    exclude:
      # lots of qt stuff we do not use
      - libqt5designer5
      - libqt5help5
      - libqt5network5
      - libqt5sql5
      - libqt5test5
      - libqt5xml5
      - qtbase5-dev-tools
      - pyqt5-dev-tools
      - libavahi-client3
      - libavahi-common-data
      - libavahi-common3
      - libwacom2
      - libwacom-common

  files:
    exclude:
      - usr/share/man
      - usr/share/doc/*/README.*
      - usr/share/doc/*/changelog.*
      - usr/share/doc/*/NEWS.*
      - usr/share/doc/*/TODO.*
  runtime:
    # if needed, apparently replaces hardcoded location with APPDIR location
    # path_mappings:
    #   - /usr/share/matplotlib/mpl-data:$APPDIR/usr/share/matplotlib/mpl-data
    version: "continuous"
    env:
      PATH: '${APPDIR}/usr/bin:${PATH}'
      # Set python home
      # See https://docs.python.org/3/using/cmdline.html#envvar-PYTHONHOME
      PYTHONHOME: '${APPDIR}/usr'
      # Path to the site-packages dir or other modules dirs
      # See https://docs.python.org/3/using/cmdline.html#envvar-PYTHONPATH
      PYTHONPATH: '${APPDIR}/usr/lib/python3.9/site-packages:${APPDIR}/usr'

  test:
    fedora:
      image: appimagecrafters/tests-env:fedora-30
      command: ./AppRun
    debian:
      image: appimagecrafters/tests-env:debian-stable
      command: ./AppRun
    arch:
      image: appimagecrafters/tests-env:archlinux-latest
      command: ./AppRun
    centos:
      image: appimagecrafters/tests-env:centos-7
      command: ./AppRun
    ubuntu:
      image: appimagecrafters/tests-env:ubuntu-xenial
      command: ./AppRun

AppImage:
  update-information: 'zsync|https://gitea.pkm.physik.tu-darmstadt.de/api/packages/IPKM/generic/NMReval/latest/NMReval-latest-x86_64.Appimage.zsync'
  sign-key: 976AC9D78688B628B00D4944D319B98C2D6CE5D3
  arch: x86_64
