diff options
Diffstat (limited to 'app-misc/kryoflux-dtc')
-rw-r--r-- | app-misc/kryoflux-dtc/Manifest | 3 | ||||
-rw-r--r-- | app-misc/kryoflux-dtc/kryoflux-dtc-2.6-r3.ebuild (renamed from app-misc/kryoflux-dtc/kryoflux-dtc-2.6.ebuild) | 48 | ||||
-rw-r--r-- | app-misc/kryoflux-dtc/kryoflux-dtc-3.00.ebuild | 109 | ||||
-rw-r--r-- | app-misc/kryoflux-dtc/metadata.xml | 9 |
4 files changed, 144 insertions, 25 deletions
diff --git a/app-misc/kryoflux-dtc/Manifest b/app-misc/kryoflux-dtc/Manifest index e6d215853fe9..2a87dbcc9db7 100644 --- a/app-misc/kryoflux-dtc/Manifest +++ b/app-misc/kryoflux-dtc/Manifest @@ -1,2 +1,3 @@ -DIST kryoflux-ui.jar 2101377 BLAKE2B db9922b9d5787772849d1ef9edae52d64de066f643c471412ed9129307c4ee399ec3a18ebcacd7428ab15eabf5307e916b678831f2fa456cbd7073aa60bbb574 SHA512 66ba81ed1b2a97a0391e513c45b19436f17677e3dfe7c063749e41763658f99a5eb92e5b3312f4151f8fc51bd79502ac11ffd895966117e1d5a9849867aeb957 DIST kryoflux_2.6_linux.tar.bz2 9177658 BLAKE2B 6eb0bc7a166950bfedb32da466c17125a8a7d64e4bc9aa6610c69dd0f98c2fb5187ad19dbaf191b33dcb5a786ec4a1fa9bce2464c3c04eb152e0b9ed7ae770f2 SHA512 9bf700e9c646bad135999eb1fed12c86ff6fbc11a0034b86af7541fb16a4905dd740c706ebb87bf5848f5d80f45699c350a56397df5b6850559c2576d18eef1b +DIST kryoflux_3.00_linux.tgz 13921877 BLAKE2B aceb934ec7b0b9d5d1d96555dceeeaa5eb11af67b1aae91888376a2c7615d4ed135167d4c3ea0ae3851a378e5fd5934aacd557a57e28e824c9131efcb87bc59e SHA512 0f4e805373c769bc81659ff93d6f8001103a6a192ca30c73b84cde231d52aa51950860fb9e11c156800d40ebbcd7cc33253f0fcbd436e8668731836f9689c013 +DIST kryoflux_3.00_windows.zip 18211783 BLAKE2B e50cfc196d37216a7c929c4aa915b5cfeb7f38805076aed4e1bbc9dbfcc946fce18db0a2e2020d77cf581e2df174f2e3b6eb2b3d9060795501b1769d258ad05d SHA512 afa42fd3460d796dd3694059a86484ea94ab3084c52dc18d6f14e5b790d66e0f13514fbe2efc5c32abd3e471cdb0ac10cc3f7bafcdfb41371a6caddda83e2a00 diff --git a/app-misc/kryoflux-dtc/kryoflux-dtc-2.6.ebuild b/app-misc/kryoflux-dtc/kryoflux-dtc-2.6-r3.ebuild index a9941574cb21..206c1cc0e6dc 100644 --- a/app-misc/kryoflux-dtc/kryoflux-dtc-2.6.ebuild +++ b/app-misc/kryoflux-dtc/kryoflux-dtc-2.6-r3.ebuild @@ -1,44 +1,47 @@ -# Copyright 1999-2019 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 +EAPI=8 MY_P="kryoflux_${PV}_linux" +MY_P_WINDOWS="kryoflux_3.00_windows" -inherit desktop eutils udev xdg-utils +inherit desktop udev wrapper xdg-utils DESCRIPTION="KryoFlux Host Software" HOMEPAGE="https://www.kryoflux.com" -SRC_URI="https://www.kryoflux.com/download/${MY_P}.tar.bz2 - gui? ( https://www.kryoflux.com/kryoflux-ui.jar )" +SRC_URI=" + https://www.kryoflux.com/download/${MY_P}.tar.bz2 + gui? ( https://www.kryoflux.com/download/${MY_P_WINDOWS}.zip ) +" +S="${WORKDIR}/${MY_P}" -KEYWORDS="-* amd64 x86" LICENSE="SPS" SLOT="0" +KEYWORDS="-* amd64 x86" IUSE="demos doc fast-firmware gui static" -RDEPEND="dev-libs/spsdeclib +RDEPEND=" + dev-libs/spsdeclib virtual/libusb:1 virtual/udev - gui? ( virtual/jre )" + gui? ( virtual/jre ) +" -DEPEND="app-arch/unzip" +BDEPEND="app-arch/unzip" -RESTRICT="bindist mirror strip" - -S="${WORKDIR}/${MY_P}" +RESTRICT="bindist mirror" QA_PREBUILT="/usr/bin/kryoflux-dtc" src_unpack() { - unpack ${MY_P}.tar.bz2 + unpack "${MY_P}".tar.bz2 if use gui; then - # Updated *.jar for compatibility with >= Java 9 - cp "${DISTDIR}"/kryoflux-ui.jar "${S}" || die + unpack "${MY_P_WINDOWS}".zip # Extract kryoflux-ui.jar to get a logo for the meny entry - unpack kryoflux-ui.jar + unpack "${MY_P_WINDOWS}"/dtc/kryoflux-ui.jar fi } @@ -52,7 +55,7 @@ src_install() { if use gui; then insinto /usr/share/kryoflux-ui - doins kryoflux-ui.jar + doins "${WORKDIR}"/"${MY_P_WINDOWS}"/dtc/kryoflux-ui.jar dosym ../../bin/kryoflux-dtc /usr/share/kryoflux-ui/dtc @@ -91,6 +94,8 @@ pkg_postinst() { elog "If you want to access your Kryoflux without root access," elog "please add yourself to the floppy group." + udev_reload + if use fast-firmware; then elog "" elog "You have enabled the fast firmware. Please keep in mind," @@ -102,3 +107,12 @@ pkg_postinst() { xdg_mimeinfo_database_update fi } + +pkg_postrm() { + udev_reload + + if use gui; then + xdg_desktop_database_update + xdg_mimeinfo_database_update + fi +} diff --git a/app-misc/kryoflux-dtc/kryoflux-dtc-3.00.ebuild b/app-misc/kryoflux-dtc/kryoflux-dtc-3.00.ebuild new file mode 100644 index 000000000000..48383872ffef --- /dev/null +++ b/app-misc/kryoflux-dtc/kryoflux-dtc-3.00.ebuild @@ -0,0 +1,109 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +MY_P="kryoflux_${PV}_linux" +MY_PV_DTC="3.0.0" +MY_P_DTC="dtc-${MY_PV_DTC}-Linux" +MY_P_WINDOWS="${MY_P/linux/windows}" + +inherit desktop udev wrapper xdg-utils + +DESCRIPTION="KryoFlux Host Software" +HOMEPAGE="https://www.kryoflux.com" +SRC_URI="https://www.kryoflux.com/download/${MY_P}.tgz" +S="${WORKDIR}/${MY_P}" + +LICENSE="SPS" +SLOT="0" +KEYWORDS="-* amd64 ~arm64" +IUSE="demos doc gui" + +RDEPEND=" + dev-libs/spsdeclib + virtual/libusb:1 + gui? ( virtual/jre ) +" + +BDEPEND=" + app-arch/unzip + dev-util/patchelf +" + +DOCS=( "DONATIONS.txt" "RELEASE.txt" ) +RESTRICT="bindist mirror" +QA_PREBUILT="/usr/bin/kryoflux-dtc" + +src_unpack() { + unpack ${A} + unpack ${MY_P}/dtc/$(usex amd64 x86_64 aarch64)/${MY_P_DTC}.tar.gz + use gui && unpack ${MY_P}/dtc/kryoflux-ui.jar +} + +src_prepare() { + default + + # Upstream uses 'libCAPSImage.so.5.1' (uppercase), + # but their source installs 'libcapsimage.so.5' (lowercase) + patchelf --replace-needed libCAPSImage.so.5.1 libcapsimage.so.5 ../${MY_P_DTC}/bin/dtc +} + +src_install() { + newbin ../${MY_P_DTC}/bin/dtc kryoflux-dtc + + insinto /lib/firmware + doins ../${MY_P_DTC}/share/dtc/firmware_kf_usb_rosalie.bin + + cat <<-EOF > "${T}"/80-kryoflux.rules || die + ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="6124", GROUP="floppy", MODE="0660" + EOF + udev_dorules "${T}"/80-kryoflux.rules + + if use gui; then + insinto /usr/share/kryoflux-ui + doins dtc/kryoflux-ui.jar + + dosym ../../bin/kryoflux-dtc /usr/share/kryoflux-ui/dtc + make_wrapper kryoflux-ui "java -jar kryoflux-ui.jar" /usr/share/kryoflux-ui + + newicon ../images/disk.png kryoflux-ui.png + make_desktop_entry "kryoflux-ui" "KryoFlux UI" kryoflux-ui Development + dodoc dtc/kryoflux-ui_README.txt + fi + + if use demos; then + dodoc -r g64_demo ipf_demo + docompress -x /usr/share/doc/${PF}/g64_demo/BBSB/*.g64 + docompress -x /usr/share/doc/${PF}/g64_demo/DOTC/*.g64 + docompress -x /usr/share/doc/${PF}/ipf_demo/*.ipf + fi + + if use doc; then + dodoc -r docs schematics + docompress -x /usr/share/doc/${PF}/{docs,schematics}/*.pdf + fi + + einstalldocs +} + +pkg_postinst() { + elog "If you want to access your Kryoflux without root access," + elog "please add yourself to the floppy group." + + udev_reload + + if use gui; then + xdg_desktop_database_update + xdg_mimeinfo_database_update + fi +} + +pkg_postrm() { + udev_reload + + if use gui; then + xdg_desktop_database_update + xdg_mimeinfo_database_update + fi +} diff --git a/app-misc/kryoflux-dtc/metadata.xml b/app-misc/kryoflux-dtc/metadata.xml index c95657a7f862..7a09fade8040 100644 --- a/app-misc/kryoflux-dtc/metadata.xml +++ b/app-misc/kryoflux-dtc/metadata.xml @@ -1,17 +1,12 @@ <?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> <maintainer type="person"> - <email>ck+gentoo@bl4ckb0x.de</email> + <email>conikost@gentoo.org</email> <name>Conrad Kostecki</name> </maintainer> - <maintainer type="project"> - <email>proxy-maint@gentoo.org</email> - <name>Proxy Maintainers</name> - </maintainer> <use> <flag name="demos">Install example floppy game files.</flag> <flag name="fast-firmware">Install fast firmware instead of slow firmware.</flag> - <flag name="gui">Install the Kryoflux GUI</flag> </use> </pkgmetadata> |