commit:     bb39c21974835007313aa3b8ec285ecb569457bf
Author:     Conrad Kostecki <conikost <AT> gentoo <DOT> org>
AuthorDate: Wed Dec 31 16:49:12 2025 +0000
Commit:     Conrad Kostecki <conikost <AT> gentoo <DOT> org>
CommitDate: Wed Dec 31 16:49:12 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bb39c219

app-misc/kryoflux-dtc: add 3.50_p4

Signed-off-by: Conrad Kostecki <conikost <AT> gentoo.org>

 app-misc/kryoflux-dtc/Manifest                    |   1 +
 app-misc/kryoflux-dtc/kryoflux-dtc-3.50_p4.ebuild | 117 ++++++++++++++++++++++
 2 files changed, 118 insertions(+)

diff --git a/app-misc/kryoflux-dtc/Manifest b/app-misc/kryoflux-dtc/Manifest
index 0bcd4f80a9c7..becde08b7ad3 100644
--- a/app-misc/kryoflux-dtc/Manifest
+++ b/app-misc/kryoflux-dtc/Manifest
@@ -1,3 +1,4 @@
 DIST kryoflux_2.6_linux.tar.bz2 9177658 BLAKE2B 
6eb0bc7a166950bfedb32da466c17125a8a7d64e4bc9aa6610c69dd0f98c2fb5187ad19dbaf191b33dcb5a786ec4a1fa9bce2464c3c04eb152e0b9ed7ae770f2
 SHA512 
9bf700e9c646bad135999eb1fed12c86ff6fbc11a0034b86af7541fb16a4905dd740c706ebb87bf5848f5d80f45699c350a56397df5b6850559c2576d18eef1b
 DIST kryoflux_3.00_windows.zip 18211783 BLAKE2B 
e50cfc196d37216a7c929c4aa915b5cfeb7f38805076aed4e1bbc9dbfcc946fce18db0a2e2020d77cf581e2df174f2e3b6eb2b3d9060795501b1769d258ad05d
 SHA512 
afa42fd3460d796dd3694059a86484ea94ab3084c52dc18d6f14e5b790d66e0f13514fbe2efc5c32abd3e471cdb0ac10cc3f7bafcdfb41371a6caddda83e2a00
 DIST kryoflux_3.50_linux_2.tar.gz 15309688 BLAKE2B 
adc315fb29c35b7e16f07ebf9bbd7f8939d92fd5db875f8bd3ed77b8a6d69a895c4be5c94eda571844a01e06f3c594c11a7f08632a259abb7192daffa66bad09
 SHA512 
91d821fab98a7582d299c9783076e438921621193d87712d676472f588a43a0d6394187f203a939619c8336c45650ec6e9f9f5f45dc4255d56c16f512af98352
+DIST kryoflux_3.50_linux_r4.tar.gz 15075476 BLAKE2B 
597c28dfc65a28a3080477f19cd49bcfa10e365a19e4135bc3b36a94e95b5cefb6237a27a2dc9def6fcdc9226e42a458fe6b3dd2661dd4d53dbee8cdef670164
 SHA512 
35aefe7ceedc241525b9d217d532cef1605143f84ef07eeffd026e83737c8e0a6d9aad0aff23371c2227f908b8e9a77d2ad976c6e59d1817f2c87aea6eabf953

diff --git a/app-misc/kryoflux-dtc/kryoflux-dtc-3.50_p4.ebuild 
b/app-misc/kryoflux-dtc/kryoflux-dtc-3.50_p4.ebuild
new file mode 100644
index 000000000000..3317495292ac
--- /dev/null
+++ b/app-misc/kryoflux-dtc/kryoflux-dtc-3.50_p4.ebuild
@@ -0,0 +1,117 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PV="$(ver_cut 1-2)"
+MY_PV_DTC="3.5.0"
+MY_P="kryoflux_${MY_PV}_linux_r$(ver_cut 4)"
+MY_P_DTC="${PN}-${MY_PV_DTC}-Linux"
+
+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.gz";
+S="${WORKDIR}/Linux_Release${MY_PV}"
+
+LICENSE="SPS"
+SLOT="0"
+KEYWORDS="-* amd64 ~arm64"
+IUSE="demos doc gui"
+
+RDEPEND="
+       virtual/libusb:1
+       gui? ( virtual/jre )
+"
+
+BDEPEND="app-arch/unzip"
+
+DOCS=( "RELEASE.txt" )
+RESTRICT="bindist mirror"
+QA_PREBUILT="
+       usr/lib64/libCAPSImage.so.5.2
+       usr/bin/kryoflux-dtc
+"
+
+src_unpack() {
+       unpack ${A}
+       unpack Linux_Release${MY_PV}/dtc/$(usex amd64 x86_64 
arm64)/${MY_P_DTC}.tar.gz
+       use gui && unpack Linux_Release${MY_PV}/dtc/kryoflux-ui.jar
+}
+
+src_prepare() {
+       default
+
+       # Remove whitespace for demo files
+       pushd testimages
+       mv "G64 (C64)" g64_demo || die
+       mv "IPF (Amiga, Atari ST)" ipf_demo || die
+       popd
+}
+
+src_install() {
+       newbin ../${MY_P_DTC}/bin/dtc kryoflux-dtc
+
+       # We need to use bundled libs instead of 'dev-libs/spsdeclib',
+       # as source code is currently not released.
+       # See https://forum.kryoflux.com/viewtopic.php\?p\=17105
+       dolib.so ../${MY_P_DTC}/lib/libCAPSImage.so.5.2
+
+       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
+               pushd testimages
+               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
+               popd
+       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
+}

Reply via email to