# Maintainer: exponential <echo ZXhwb25lbnRpYWxtYXRyaXhAcHJvdG9ubWFpbC5jb20K | base64 -d>

pkgname="drl-bin"
_pkgname="${pkgname%-bin}"
pkgver="0.9.9.8a"
#_pkgver=${pkgver//./}
_pkgver="0998"
# low quality
#_pkgver="$_pkgver-lq"
# for libc6 >0.38
_debver="2.40-3"
pkgrel=0
pkgdesc="Aka doomrl, tactical roguelike game based on the FPS Doom."
arch=('amd64')
url="http://drl.chaosforge.org/"
license=('GPL2' 'CCPL:cc-by-nc-sa-4.0')
makedepends=('ffmpeg')
depends=('liblua5.1-0')
optdepends=('libsdl2-image-2.0-0: gui version'
            'libsdl2-ttf-2.0-0: gui version'
            'libncursesw6: alternate console version'
            'libsdl2-mixer-2.0-0: SDL sound'
            'libfmod: alternate commercial sound library')
source=("https://github.com/chaosforgeorg/doomrl/releases/download/${pkgver//./_}/drl-linux-$_pkgver.tar.gz"
        "drl.bmp::https://github.com/chaosforgeorg/doomrl/blob/0_9_9_8a/install/install_small.bmp?raw=true"
        "LICENSE-$pkgver::https://github.com/chaosforgeorg/doomrl/raw/refs/tags/${pkgver//./_}/bin/graphics/LICENSE"
        "http://deb.debian.org/debian/pool/main/g/glibc/libc6_${_debver}_amd64.deb")
noextract=("libc6_${_debver}_amd64.deb")
provides=("${_pkgname}")
conflicts=("${_pkgname}" "${_pkgname}-git")
b2sums=('c2350f79d572c4b6f0f086d59a81e893dfd956c4d5ce90a592ef4bc423e61040c9da8aba8d10e24457051ffa91e9479fd16d2df625a249205b477942826b590e'
        '9f70e5970b075e9eb7c3e9d02aa58ac7a11499f3c1aecadf72547305e013fb798107aff10d6f4bbd22c4f00af88024f7aa0cff819c93469b5e1215681f3794e7'
        '22d19b6fb9b5542757297b6c5a61b32aff35ba11033d32a43fc52828ba1f17fce714772c9e1df864e7646729122b2f5eb136aa323552a0867c795cff4400b39a'
        '79fa052d297dc71ca6ab41c0db6fe85fedc9fca94a4d17ea2ca27bf83ec7eaa2e2d7c54b00ed726f75d8b4230c3f205287899065f1f4d7be408a4ab24c169055')

prepare() {
  cd "${srcdir}"
  # extract deb
  dpkg-deb -x "libc6_${_debver}_amd64.deb" "libc6_${_debver}_amd64"
  # icon
  ffmpeg -y -i "drl.bmp" "drl.png"
  # fix scripts
  sed -i 's!\./drl!drl!' "$srcdir/drl-linux-$_pkgver"/drl_*
  # fix config
  sed -i 's!--DataPath = ""!DataPath = "/usr/share/games/drl/"!' "$srcdir/drl-linux-$_pkgver"/config.lua
}

package() {
  cd "$srcdir/drl-linux-$_pkgver"
  # Folders
  install -d "$pkgdir/usr/"{games,libexec/${_pkgname},share/{applications,pixmaps,games/${_pkgname},doc/${_pkgname}},lib/${_pkgname}}
  # install
  cp -r --no-preserve=mode *.lua *.wad backup modules mortem mp3 screenshot wavhq "$pkgdir/usr/share/games/drl/"
  # libc6
  install -D -m644 "${srcdir}/libc6_${_debver}_amd64/usr/lib/x86_64-linux-gnu/libm.so.6" "${pkgdir}/usr/lib/${_pkgname}/"
  # binary
  install -D -m755 drl "$pkgdir/usr/libexec/drl/"
  # Run scripts
  echo '#!/bin/sh

set -eu

_name="drl"
config_dir="${XDG_CONFIG_HOME:-$HOME/.config}/$_name"
data_dir="${XDG_DATA_HOME:-$HOME/.local/share}/$_name"

mkdir -p "$config_dir"
mkdir -p "$data_dir"

if [ ! -e "$config_dir/config.lua" ]; then
  cp "/usr/share/games/$_name/config.lua" "$config_dir"
  sed -i "s!--WritePath = \"\"!WritePath = \"$data_dir/\"!" "$config_dir/config.lua"
fi

cp -na "/usr/share/games/$_name/"*.lua "$config_dir"
cp -ns "/usr/libexec/$_name/$_name" "$config_dir"
cp -nas "/usr/share/games/$_name/backup" "/usr/share/games/$_name/modules" "/usr/share/games/$_name/mortem" "/usr/share/games/$_name/screenshot" "$data_dir"

# change to directory and launch
cd "$config_dir"

export LD_PRELOAD="/usr/lib/$_name/libm.so.6"
exec "./$_name" "$@"' > "$pkgdir/usr/games/drl"
  chmod 755 "$pkgdir/usr/games/drl"

  install -D -m755 drl_* "$pkgdir/usr/games/"
  # desktop
  echo '[Desktop Entry]
Version=1.1
Type=Application
Name=drl
Comment=doomrl aka drl, roguelike game based on the FPS Doom
Icon=drl
Exec=drl
Actions=
Categories=Game;' > "${pkgdir}/usr/share/applications/${_pkgname}.desktop"

  install -D -m644 ../drl.png "${pkgdir}/usr/share/pixmaps/"
  # doc
  install -D -m644 *.txt "${pkgdir}/usr/share/doc/${_pkgname}/"
  install -D -m644 "$srcdir/LICENSE-$pkgver" "${pkgdir}/usr/share/doc/${_pkgname}/cc-by-nc-sa-4.0_assets"
  ln -s "/usr/share/common-licenses/GPL-2" "${pkgdir}/usr/share/doc/${_pkgname}/GPL-2_code"
}