# Copyright 2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 MY_PN="recaf" JAVA_SLOT=21 JFX_SLOT=11 DESCRIPTION="A modern Java bytecode editor" HOMEPAGE="https://col-e.github.io/Recaf/" SRC_URI="https://github.com/Col-E/Recaf/releases/download/${PV}/recaf-${PV}-J8-jar-with-dependencies.jar -> ${P}.jar" S="${WORKDIR}" LICENSE="MIT" SLOT="0" KEYWORDS="~amd64" IUSE="system-openjfx" RDEPEND=" system-openjfx? ( dev-java/openjfx:${JFX_SLOT} ) !system-openjfx? ( dev-java/openjfx-bin:${JAVA_SLOT} ) dev-java/openjdk-bin:${JAVA_SLOT}" DEPEND="${RDEPEND}" src_unpack() { dodir "${S}" cp -L "${DISTDIR}/${A}" "${S}/${MY_PN}.jar" || die } src_install() { insinto "/opt/${MY_PN}/" doins "${MY_PN}.jar" if use system-openjfx; then FXLIB_PATH="/usr/lib64/openjfx-${JFX_SLOT}/lib" else FXLIB_PATH="/usr/share/openjfx-bin-${JAVA_SLOT}/lib" fi newbin - ${MY_PN} <<-EOF #!/bin/sh FXLIB_PATH=${FXLIB_PATH} FXLIBS="\$FXLIB_PATH/javafx.base.jar:\$FXLIB_PATH/javafx.controls.jar:\ \$FXLIB_PATH/javafx.graphics.jar:\ /opt/${MY_PN}/recaf.jar" java -cp \$FXLIBS me.coley.recaf.Recaf "--noupdate" "\$@" EOF } pkg_postinst() { if ! use system-openjfx; then einfo "The tool is installed without system-openjfx use flag" einfo "It will download openjfx during runtime into a home diretory" fi }