guru/app-emulation/86BoxManagerX/86BoxManagerX-9999.ebuild
Gonçalo Negrier Duarte d0aed9c02b
app-emulation/86BoxManagerX: add 1.7.6.0e
Signed-off-by: Gonçalo Negrier Duarte <gonegrier.duarte@gmail.com>
2024-02-19 12:39:20 +00:00

84 lines
2.2 KiB
Bash

# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit desktop
if [[ ${PV} == 9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/RetBox/86BoxManagerX.git"
else
SRC_URI="
https://github.com/RetBox/86BoxManagerX/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz
"
fi
DESCRIPTION="A (cross-platform) configuration manager for the 86Box emulator"
HOMEPAGE="https://github.com/RetBox/86BoxManagerX"
DEPEND="app-emulation/86Box
dev-dotnet/dotnet-sdk-bin
"
QA_PRESTRIPPED="
/opt/86BoxManagerX/createdump
/opt/86BoxManagerX/libSystem.Globalization.Native.so
/opt/86BoxManagerX/libSystem.IO.Compression.Native.so
/opt/86BoxManagerX/libSystem.Native.so
/opt/86BoxManagerX/libSystem.Net.Security.Native.so
/opt/86BoxManagerX/libSystem.Security.Cryptography.Native.OpenSsl.so
/opt/86BoxManagerX/libclrjit.so
/opt/86BoxManagerX/libcoreclr.so
/opt/86BoxManagerX/libcoreclrtraceptprovider.so
/opt/86BoxManagerX/libdbgshim.so
/opt/86BoxManagerX/libhostfxr.so
/opt/86BoxManagerX/libhostpolicy.so
/opt/86BoxManagerX/libmscordaccore.so
/opt/86BoxManagerX/libmscordbi.so
/opt/86BoxManagerX/libHarfBuzzSharp.so
/opt/86BoxManagerX/libMono.Unix.so
/opt/86BoxManagerX/libSkiaSharp.so
/opt/86BoxManagerX/86Manager
"
LICENSE="MIT"
SLOT="0"
PATCHES=(
# Save the config in user directory preventing permission denied error
# https://github.com/RetBox/86BoxManagerX/pull/1
"${FILESDIR}/86BoxManagerX-9999-save-config-user-directory.patch"
)
src_unpack() {
if [[ ${PV} == 9999 ]]; then
git-r3_checkout
else
unpack ${P}.tar.gz
fi
cd "${S}"
# Need internet access
dotnet publish 86BoxManager -r linux-x64
}
src_prepare() {
default
}
src_compile() {
dotnet publish 86BoxManager -r linux-x64 -c Release --self-contained true -o 86BoxManagerX
}
src_install() {
#Install binary and alias command
insinto /opt && doins -r "${WORKDIR}/${P}/86BoxManagerX"
insinto /opt/bin/ && doins "${FILESDIR}/86BoxManagerX"
fperms +x /opt/86BoxManagerX/86Manager /opt/bin/86BoxManagerX
find /opt/86BoxManagerX/ -name "*.dll" -exec fperms +x {} +
#Icon and Desktop File
doicon "${FILESDIR}/86BoxManagerX.png"
domenu "${FILESDIR}/86BoxManagerX.desktop"
}