diff --git a/net-wireless/proxmark3/Manifest b/net-wireless/proxmark3/Manifest index 3cd9b794d..7d5f52d85 100644 --- a/net-wireless/proxmark3/Manifest +++ b/net-wireless/proxmark3/Manifest @@ -1,2 +1,3 @@ DIST proxmark3-4.13441.tar.gz 24563979 BLAKE2B 230aba82d54d57e2d14b7602120cac9a8fb563ffdb6fde983be912dcf960a9ca111a3b98d71c64713392a69b48ed2d17d21a874437308def790cc15a4b7b8288 SHA512 64b9a33a302b33cef6dee34eae842a08e2647566bf375af15c7da6a27973d2b53f072b739518206a4f8c436f1e75cc08503ed65ef382bbc785362e38f44ef6c2 DIST proxmark3-4.14434.tar.gz 24816648 BLAKE2B 8ae16e9c75802378e9210d802d9069bac6ce5ed66e725432da9a2e190e0cfb3e3023d4ab0830bc61e578fd9aea44c826638b8e8d4c813710144a21f39e5fdefa SHA512 0e9ce036ac9c8b0e8e945d780ca56f4e09a28ef5565bcb562bde606ea510ea28a662d211225be411f1823dccec0f709fe9af376926a5c3058d0ca78680d3b812 +DIST proxmark3-4.14831.tar.gz 24755014 BLAKE2B fe0ece979635c43b7d2551ee5389a6ca708e6f42af4e4818ada582653664032987d0ffb0f16b1953c9d98998d41ed794e6ba6ec43d4f8c28363e16e81ad31fc1 SHA512 a2ce8ae60e223d06148e15ebd47d5e0472e3e3a3fe39ccadc61fdd839525c5d0de496a5a8718f11ace708246f5860c6c51318f67838b649fe64989929fb4e514 diff --git a/net-wireless/proxmark3/proxmark3-4.14831.ebuild b/net-wireless/proxmark3/proxmark3-4.14831.ebuild new file mode 100644 index 000000000..1932661ea --- /dev/null +++ b/net-wireless/proxmark3/proxmark3-4.14831.ebuild @@ -0,0 +1,166 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit udev + +if [ "${PV}" = "9999" ]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/RfidResearchGroup/proxmark3.git" +else + #snapshot + #HASH_COMMIT="1ac5211601b50b82b41737dce0c3a72d9e0374ac" + #SRC_URI="https://github.com/RfidResearchGroup/${PN}/archive/${HASH_COMMIT}.tar.gz -> ${P}.tar.gz" + #S=${WORKDIR}/${PN}-${HASH_COMMIT} + + #or release + KEYWORDS="amd64" + SRC_URI="https://github.com/RfidResearchGroup/proxmark3/archive/v${PV}.tar.gz -> ${P}.tar.gz" +fi +DESCRIPTION="A general purpose RFID tool for Proxmark3 hardware" +HOMEPAGE="https://github.com/RfidResearchGroup/proxmark3" + +LICENSE="GPL-3+" +SLOT="0" +STANDALONE="standalone-lf-em4100emul standalone-lf-em4100rswb standalone-lf-em4100rwc standalone-lf-hidbrute standalone-lf-hidfcbrute standalone-lf-icehid standalone-lf-nexid standalone-lf-proxbrute standalone-lf-samyrun standalone-lf-tharexde standalone-hf-14asniff standalone-hf-15sniff standalone-hf-aveful standalone-hf-bog standalone-hf-colin standalone-hf-craftbyte standalone-hf-iceclass standalone-hf-legic standalone-hf-mattyrun standalone-hf-mfcsim standalone-hf-msdsal standalone-hf-reblay standalone-hf-tcprst standalone-hf-tmudford standalone-hf-young standalone-dankarmulti" +IUSE="+bluez deprecated +firmware +pm3rdv4 +qt ${STANDALONE}" +REQUIRED_USE="?? ( ${STANDALONE/+/} ) + standalone-lf-hidfcbrute? ( pm3rdv4 ) + standalone-lf-icehid? ( pm3rdv4 ) + standalone-lf-nexid? ( pm3rdv4 ) + standalone-lf-tharexde? ( pm3rdv4 ) + standalone-hf-14asniff? ( pm3rdv4 ) + standalone-hf-15sniff? ( pm3rdv4 ) + standalone-hf-bog? ( pm3rdv4 ) + standalone-hf-colin? ( pm3rdv4 ) + standalone-hf-iceclass? ( pm3rdv4 ) + standalone-hf-mfcsim? ( pm3rdv4 ) + standalone-hf-reblay? ( pm3rdv4 ) " + +RDEPEND="virtual/libusb:0 + app-arch/bzip2 + dev-libs/jansson + sys-libs/ncurses:*[tinfo] + sys-libs/readline:= + bluez? ( net-wireless/bluez ) + qt? ( dev-qt/qtcore:5 + dev-qt/qtwidgets:5 + dev-qt/qtgui:5 ) + " +DEPEND="${RDEPEND} + firmware? ( sys-devel/gcc-arm-none-eabi:0 )" + +QA_FLAGS_IGNORED="usr/share/proxmark3/firmware/bootrom.elf + usr/share/proxmark3/firmware/fullimage.elf" + +src_compile(){ + #first we set platform + if use pm3rdv4; then + echo 'PLATFORM=PM3RDV4' > Makefile.platform + echo 'PLATFORM_EXTRAS=BTADDON' >> Makefile.platform + else + echo 'PLATFORM=PM3GENERIC' > Makefile.platform + fi + #then we set a standalone mode + if use standalone-lf-em4100emul; then + echo 'STANDALONE=LF_EM4100EMUL' >> Makefile.platform + elif use standalone-lf-em4100rswb; then + echo 'STANDALONE=LF_EM4100RSWB' >> Makefile.platform + elif use standalone-lf-em4100rwc; then + echo 'STANDALONE=LF_EM4100RWC' >> Makefile.platform + elif use standalone-lf-hidbrute; then + echo 'STANDALONE=LF_HIDBRUTE' >> Makefile.platform + elif use standalone-lf-hidfcbrute; then + echo 'STANDALONE=LF_HIDFCBRUTE' >> Makefile.platform + elif use standalone-lf-icehid; then + echo 'STANDALONE=LF_ICEHID' >> Makefile.platform + elif use standalone-lf-nexid; then + echo 'STANDALONE=LF_NEXID' >> Makefile.platform + elif use standalone-lf-proxbrute; then + echo 'STANDALONE=LF_PROXBRUTE' >> Makefile.platform + elif use standalone-lf-samyrun; then + echo 'STANDALONE=LF_SAMYRUN' >> Makefile.platform + elif use standalone-lf-tharexde; then + echo 'STANDALONE=LF_THAREXDE' >> Makefile.platform + elif use standalone-hf-14asniff; then + echo 'STANDALONE=HF_14ASNIFF' >> Makefile.platform + elif use standalone-hf-15sniff; then + echo 'STANDALONE=HF_15SNIFF' >> Makefile.platform + elif use standalone-hf-aveful; then + echo 'STANDALONE=HF_AVEFUL' >> Makefile.platform + elif use standalone-hf-bog; then + echo 'STANDALONE=HF_BOG' >> Makefile.platform + elif use standalone-hf-colin; then + echo 'STANDALONE=HF_COLIN' >> Makefile.platform + elif use standalone-hf-craftbyte; then + echo 'STANDALONE=HF_CRAFTBYTE' >> Makefile.platform + elif use standalone-hf-iceclass; then + echo 'STANDALONE=HF_ICECLASS' >> Makefile.platform + elif use standalone-hf-legic; then + echo 'STANDALONE=HF_LEGIC' >> Makefile.platform + elif use standalone-hf-mattyrun; then + echo 'STANDALONE=HF_MATTYRUN' >> Makefile.platform + elif use standalone-hf-msdsal; then + echo 'STANDALONE=HF_MSDSAL' >> Makefile.platform + elif use standalone-hf-reblay; then + echo 'STANDALONE=HF_REBLAY' >> Makefile.platform + elif use standalone-hf-tcprst; then + echo 'STANDALONE=HF_TCPRST' >> Makefile.platform + elif use standalone-hf-tmudford; then + echo 'STANDALONE=HF_TMUDFORD' >> Makefile.platform + elif use standalone-hf-young; then + echo 'STANDALONE=HF_YOUNG' >> Makefile.platform + elif use standalone-dankarmulti; then + echo 'STANDALONE=DANKARMULTI' >> Makefile.platform + else + echo 'STANDALONE=' >> Makefile.platform + fi + + export PREFIX=/usr + export V=1 + use qt || export SKIPQT=1 + use bluez || export SKIPBT=1 + if use firmware; then + emake all + elif use deprecated; then + emake client mfkey nonce2key + else + emake client + fi +} + +src_install(){ + export PREFIX=/usr + export DESTDIR="${ED}" + export UDEV_PREFIX="$(get_udevdir)/rules.d" + export INSTALLDOCSRELPATH="/share/doc/${PF}" + if use firmware; then + emake INSTALLDOCSRELPATH="/share/doc/${PF}" install + elif use deprecated; then + emake INSTALLDOCSRELPATH="/share/doc/${PF}" client/install mfkey/install nonce2key/install common/install + else + emake INSTALLDOCSRELPATH="/share/doc/${PF}" client/install common/install + fi +} + +src_test() { + if use firmware; then + ./pm3test.sh + else + ./pm3test.sh client + fi +} + +pkg_postinst() { + if use firmware; then + if use pm3rdv4; then + ewarn "Please note, all firmware and recovery files are intended for the Proxmark3 RDV4" + ewarn "including support for the optional blueshark accessory." + ewarn "If this is not what you intended please unset the pm3rdv4 use flag for generic firmware" + else + ewarn "Please note, all firmware and recovery files are built for a generic target." + ewarn "If you have a Proxmark3 RDV4 you should set the pm3rdv4 use flag for an improved firmware" + fi + fi +}