diff --git a/net-wireless/proxmark3/Manifest b/net-wireless/proxmark3/Manifest index df6842cb19..b1f01c6db5 100644 --- a/net-wireless/proxmark3/Manifest +++ b/net-wireless/proxmark3/Manifest @@ -1 +1,2 @@ DIST proxmark3-4.17511.tar.gz 30829541 BLAKE2B b018b5556256e1792bb39e563b80c46bf1c1c63a25a6bd311feba5c80ee2812549238d1ee5ff7d2a7179fc14a4b2428e7b39d37becaf8fafdc00318bec0a75c8 SHA512 01c78915c4479ec44d2e58a20e20b02da548be48b0e92e072a4e81057ae6139afa843904e9006751d3fcc6476bc208a2e699aab25931ac20a3edf0cc68b151da +DIST proxmark3-4.17768.tar.gz 31357649 BLAKE2B 820077c9b779d853f93bc518f77002a8a61d3523ef70bc8927b14ca469ca2ae3c2a6ddde2f72c2033a6fdbfc7879de1c267c053e7d9dfc49d1d78d92d9c67f86 SHA512 31528823a75a495927929daa5e22b3b917a19c28cacccb8e91b1b173ad7efe3ca59624b2fce60f2a317ec9338eaabdd5b7ab9fecbfdbc87c33eccaf3964e0404 diff --git a/net-wireless/proxmark3/proxmark3-4.17768.ebuild b/net-wireless/proxmark3/proxmark3-4.17768.ebuild new file mode 100644 index 0000000000..e5b87ff864 --- /dev/null +++ b/net-wireless/proxmark3/proxmark3-4.17768.ebuild @@ -0,0 +1,190 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit udev toolchain-funcs + +if [ "${PV}" = "9999" ]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/RfidResearchGroup/proxmark3.git" + RESTRICT="strip" +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-cardhopper 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-unisniff 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-cardhopper? ( pm3rdv4 ) + standalone-hf-colin? ( pm3rdv4 ) + standalone-hf-iceclass? ( pm3rdv4 ) + standalone-hf-mfcsim? ( pm3rdv4 ) + standalone-hf-reblay? ( pm3rdv4 ) + " + +DEPEND=" + app-arch/bzip2 + app-arch/lz4:= + dev-libs/jansson:= + dev-libs/openssl:= + sys-libs/readline:= + bluez? ( net-wireless/bluez:= ) + qt? ( dev-qt/qtcore:5 + dev-qt/qtwidgets:5 + dev-qt/qtgui:5 ) +" +#this is basically just used for termcap +RDEPEND="${DEPEND} + sys-libs/ncurses:*[tinfo] + " +BDEPEND="firmware? ( sys-devel/gcc-arm-none-eabi:0 )" + +QA_FLAGS_IGNORED="usr/share/proxmark3/firmware/bootrom.elf + usr/share/proxmark3/firmware/fullimage.elf" + +src_prepare(){ + default + #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-cardhopper; then + echo 'STANDALONE=HF_CARDHOPPER' >> 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-unisniff; then + echo 'STANDALONE=HF_UNISNIFF' >> 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 +} + +src_compile(){ + export PREFIX=/usr + #verbose + export V=1 + #common flags + EMAKE_COMMON=CC="$(tc-getCC)" DEFCFLAGS="${CFLAGS}" MYCFLAGS="${CFLAGS}" MYCXXFLAGS="${CXXFLAGS}" MYLDFLAGS="${LDFLAGS}" + use qt || export SKIPQT=1 + use bluez || export SKIPBT=1 + if use firmware; then + emake ${EMAKE_COMMON} client + emake ${EMAKE_COMMON} all + elif use deprecated; then + emake ${EMAKE_COMMON} client + emake ${EMAKE_COMMON} mfkey nonce2key + else + emake ${EMAKE_COMMON} 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() { + udev_reload + 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 +} + +pkg_postrm() { + udev_reload +} diff --git a/net-wireless/proxmark3/proxmark3-9999.ebuild b/net-wireless/proxmark3/proxmark3-9999.ebuild index 41d1801f17..e5b87ff864 100644 --- a/net-wireless/proxmark3/proxmark3-9999.ebuild +++ b/net-wireless/proxmark3/proxmark3-9999.ebuild @@ -24,7 +24,7 @@ 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-cardhopper 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 hf-unisniff standalone-hf-young standalone-dankarmulti" +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-cardhopper 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-unisniff standalone-hf-young standalone-dankarmulti" IUSE="+bluez deprecated +firmware +pm3rdv4 +qt ${STANDALONE}" REQUIRED_USE="?? ( ${STANDALONE/+/} ) standalone-lf-hidfcbrute? ( pm3rdv4 )