net-wireless/kismet: new beta
authorRick Farina <zerochaos@gentoo.org>
Mon, 7 Jan 2019 17:27:26 +0000 (12:27 -0500)
committerRick Farina <zerochaos@gentoo.org>
Mon, 7 Jan 2019 19:44:58 +0000 (14:44 -0500)
Package-Manager: Portage-2.3.53, Repoman-2.3.12
Signed-off-by: Rick Farina <zerochaos@gentoo.org>
net-wireless/kismet/Manifest
net-wireless/kismet/files/fix-setuptools4.patch [new file with mode: 0644]
net-wireless/kismet/kismet-2019.01_beta2.ebuild [new file with mode: 0644]
net-wireless/kismet/kismet-9999.ebuild

index fc94567a992ea3e235b7977d6cf9c5488bfd98eb..2e98cbd22dedd3102da749a064be94b0aa721551 100644 (file)
@@ -1,2 +1,3 @@
 DIST kismet-2016-07-R1.tar.xz 709364 BLAKE2B 5b667a02b517bd413d569f40df1f2a2e1158357c602fa807d712870543a7fade25077f449c07c023ad1d2150870352aa754484846d8c2a0d9f027113bb57c1fc SHA512 88891a0cd5ef94a4815d259e433f946f52552c125e05a5d8ac447d04e6090f2bd92f8bd8573440f0dfe446b29233bef81d9889e53170757ad0116ddfc2cb8416
 DIST kismet-2018-08-BETA1.tar.xz 2043136 BLAKE2B f24af4250bb0238073380514413d9501e449cf40507d7a96ac868d76acb34af81b9bf4a49c9b6197b6b903ab33e2318bb5efa22876cc2070e3878ebf030d592c SHA512 09eab9d648f011c95b8632c666990d79f9998465b051a65357f53af19a135a5d58df3025ec60f9ef9a7b7d9b5622d2332bb2defbffd21ca0e25e2e4090ceae2f
+DIST kismet-2019-01-BETA2.tar.xz 3096084 BLAKE2B 77f0497721bb1a6c2af2dd91b5d2a895fae0012ccb7a9cf03a700c96562a5ae62530b1138f509df5f0af91362a9658eae7916a9c643cef6e1630fe616d949017 SHA512 1384630ea0ba12c157928696aab502406c5e521765e420459ab049e3205e7d7bfb472c6a1a88c1268fd8235b24b615a03ce4b91f0974adc24f47d00709ef9d4b
diff --git a/net-wireless/kismet/files/fix-setuptools4.patch b/net-wireless/kismet/files/fix-setuptools4.patch
new file mode 100644 (file)
index 0000000..c2db673
--- /dev/null
@@ -0,0 +1,91 @@
+diff --git a/capture_freaklabs_zigbee/Makefile.in b/capture_freaklabs_zigbee/Makefile.in
+index cfbf99b0..c2e68453 100644
+--- a/capture_freaklabs_zigbee/Makefile.in
++++ b/capture_freaklabs_zigbee/Makefile.in
+@@ -6,7 +6,7 @@ all:
+       $(PYTHON2) ./setup.py build
+ install:
+-      $(PYTHON2) ./setup.py install
++      $(PYTHON2) ./setup.py install --root=$(DESTDIR)
+       # $(INSTALL) -o $(INSTUSR) -g $(INSTGRP) $(MONITOR_BIN) $(BIN)/$(MONITOR_BIN)
+ clean:
+diff --git a/capture_sdr_rtl433/Makefile.in b/capture_sdr_rtl433/Makefile.in
+index e33f7de5..e1be587d 100644
+--- a/capture_sdr_rtl433/Makefile.in
++++ b/capture_sdr_rtl433/Makefile.in
+@@ -7,7 +7,7 @@ all:
+       $(PYTHON2) ./setup.py build
+ install:
+-      $(PYTHON2) ./setup.py install
++      $(PYTHON2) ./setup.py install --root=$(DESTDIR)
+       # These are now part of the setup.py install
+       # $(INSTALL) -o $(INSTUSR) -g $(INSTGRP) $(MONITOR_BIN) $(BIN)/$(MONITOR_BIN)
+       # $(INSTALL) -o $(INSTUSR) -g $(INSTGRP) $(MQTTMONITOR_BIN) $(BIN)/$(MQTTMONITOR_BIN)
+diff --git a/capture_sdr_rtladsb/Makefile.in b/capture_sdr_rtladsb/Makefile.in
+index 8a4f7647..8239f434 100644
+--- a/capture_sdr_rtladsb/Makefile.in
++++ b/capture_sdr_rtladsb/Makefile.in
+@@ -7,7 +7,7 @@ all:
+       $(PYTHON2) ./setup.py build
+ install:
+-      $(PYTHON2) ./setup.py install
++      $(PYTHON2) ./setup.py install --root=$(DESTDIR)
+       $(INSTALL) -o $(INSTUSR) -g $(INSTGRP) aircraft_db.csv $(ETC)/kismet_aircraft_db.csv
+       # These are now part of the setup.py install
+       # $(INSTALL) -o $(INSTUSR) -g $(INSTGRP) $(MONITOR_BIN) $(BIN)/$(MONITOR_BIN)
+diff --git a/capture_sdr_rtlamr/Makefile.in b/capture_sdr_rtlamr/Makefile.in
+index 1b780be1..3548adc5 100644
+--- a/capture_sdr_rtlamr/Makefile.in
++++ b/capture_sdr_rtlamr/Makefile.in
+@@ -7,7 +7,7 @@ all:
+       $(PYTHON2) ./setup.py build
+ install:
+-      $(PYTHON2) ./setup.py install
++      $(PYTHON2) ./setup.py install --root=$(DESTDIR)
+       # These are now part of the setup.py install
+       # $(INSTALL) -o $(INSTUSR) -g $(INSTGRP) $(MONITOR_BIN) $(BIN)/$(MONITOR_BIN)
+       # $(INSTALL) -o $(INSTUSR) -g $(INSTGRP) $(MQTTMONITOR_BIN) $(BIN)/$(MQTTMONITOR_BIN)
+diff --git a/python_modules/KismetExternal/Makefile b/python_modules/KismetExternal/Makefile
+index 036541a0..fc660dfe 100644
+--- a/python_modules/KismetExternal/Makefile
++++ b/python_modules/KismetExternal/Makefile
+@@ -4,7 +4,7 @@ all:
+       $(PYTHON2) ./setup.py build
+       
+ install:
+-      $(PYTHON2) ./setup.py install
++      $(PYTHON2) ./setup.py install --root=$(DESTDIR)
+ protobuf:
+       $(PROTOCBIN) -I ../../protobuf_definitions --python_out=./KismetExternal ../../protobuf_definitions/*.proto
+diff --git a/python_modules/KismetLog/Makefile b/python_modules/KismetLog/Makefile
+index d0d6f784..60e1eac1 100644
+--- a/python_modules/KismetLog/Makefile
++++ b/python_modules/KismetLog/Makefile
+@@ -4,7 +4,7 @@ all:
+       $(PYTHON2) ./setup.py build
+       
+ install:
+-      $(PYTHON2) ./setup.py install
++      $(PYTHON2) ./setup.py install --root=$(DESTDIR)
+ clean:
+       @-$(PYTHON2) ./setup.py clean
+diff --git a/python_modules/KismetRest/Makefile b/python_modules/KismetRest/Makefile
+index d0d6f784..60e1eac1 100644
+--- a/python_modules/KismetRest/Makefile
++++ b/python_modules/KismetRest/Makefile
+@@ -4,7 +4,7 @@ all:
+       $(PYTHON2) ./setup.py build
+       
+ install:
+-      $(PYTHON2) ./setup.py install
++      $(PYTHON2) ./setup.py install --root=$(DESTDIR)
+ clean:
+       @-$(PYTHON2) ./setup.py clean
diff --git a/net-wireless/kismet/kismet-2019.01_beta2.ebuild b/net-wireless/kismet/kismet-2019.01_beta2.ebuild
new file mode 100644 (file)
index 0000000..5823d5c
--- /dev/null
@@ -0,0 +1,117 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit autotools eutils multilib user python-single-r1
+
+if [[ ${PV} == "9999" ]] ; then
+       EGIT_REPO_URI="https://www.kismetwireless.net/${PN}.git"
+       inherit git-r3
+       RESTRICT="strip"
+else
+       MY_P=${P/\./-}
+       MY_P=${MY_P/_beta/-BETA}
+       MY_P=${MY_P/./-R}
+       S=${WORKDIR}/${MY_P/BETA/beta}
+       SRC_URI="https://www.kismetwireless.net/code/${MY_P}.tar.xz"
+       KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~x86"
+fi
+
+DESCRIPTION="IEEE 802.11 wireless LAN sniffer"
+HOMEPAGE="https://www.kismetwireless.net"
+
+LICENSE="GPL-2"
+SLOT="0/${PV}"
+IUSE="lm_sensors mousejack networkmanager +pcre selinux +suid"
+
+CDEPEND="
+       ${PYTHON_DEPS}
+       networkmanager? ( net-misc/networkmanager:= )
+       dev-libs/glib:=
+       dev-libs/elfutils:=
+       sys-libs/zlib:=
+       dev-db/sqlite:=
+       net-libs/libmicrohttpd
+       kernel_linux? ( sys-libs/libcap
+                       dev-libs/libnl:3
+                       net-libs/libpcap
+                       )
+       mousejack? ( dev-libs/libusb:= )
+       dev-libs/protobuf-c:=
+       dev-libs/protobuf:=
+       sys-libs/ncurses:=
+       lm_sensors? ( sys-apps/lm_sensors )
+       pcre? ( dev-libs/libpcre )
+       suid? ( sys-libs/libcap )
+       "
+
+DEPEND="${CDEPEND}
+       virtual/pkgconfig
+"
+
+RDEPEND="${CDEPEND}
+       selinux? ( sec-policy/selinux-kismet )
+"
+
+src_prepare() {
+       sed -i -e "s:^\(logtemplate\)=\(.*\):\1=/tmp/\2:" \
+               conf/kismet_logging.conf || die
+
+       # Don't strip and set correct mangrp
+       sed -i -e 's| -s||g' \
+               -e 's|@mangrp@|root|g' Makefile.in
+
+       eapply "${FILESDIR}"/fix-setuptools4.patch
+       eapply_user
+
+       if [ "${PV}" = "9999" ]; then
+               eautoreconf
+       fi
+}
+
+src_configure() {
+       econf \
+               $(use_enable pcre) \
+               $(use_enable lm_sensors lmsensors) \
+               $(use_enable mousejack libusb) \
+               $(use_enable networkmanager libnm) \
+               --disable-optimization
+}
+
+src_install() {
+       emake DESTDIR="${D}" commoninstall
+       emake DESTDIR="${D}" forceconfigs
+
+       insinto /usr/share/${PN}
+       doins -r log_tools
+
+       #dodoc CHANGELOG RELEASENOTES.txt README* docs/DEVEL.client docs/README.newcore
+       dodoc CHANGELOG README*
+       newinitd "${FILESDIR}"/${PN}.initd kismet
+       newconfd "${FILESDIR}"/${PN}.confd kismet
+}
+
+pkg_preinst() {
+       if use suid; then
+               enewgroup kismet
+               fowners root:kismet /usr/bin/kismet_cap_linux_bluetooth
+               fowners root:kismet /usr/bin/kismet_cap_linux_wifi
+               fowners root:kismet /usr/bin/kismet_cap_pcapfile
+               # Need to set the permissions after chowning.
+               # See chown(2)
+               fperms 4550 /usr/bin/kismet_cap_linux_bluetooth
+               fperms 4550 /usr/bin/kismet_cap_linux_wifi
+               fperms 4550 /usr/bin/kismet_cap_pcapfile
+               elog "Kismet has been installed with a setuid-root helper binary"
+               elog "to enable minimal-root operation.  Users need to be part of"
+               elog "the 'kismet' group to perform captures from physical devices."
+       fi
+       if ! use suid; then
+               ewarn "It is highly discouraged to run a sniffer as root,"
+               ewarn "Please consider enabling the suid use flag and adding"
+               ewarn "your user to the kismet group."
+       fi
+}
index 9eecff37a2f85f47b0062aaab3feb81a310eb233..5823d5c776b2c25c412050a7b588fd100fa0340a 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2019 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
@@ -7,18 +7,15 @@ PYTHON_COMPAT=( python2_7 )
 
 inherit autotools eutils multilib user python-single-r1
 
-MY_P=${P/\./-}
-MY_P=${MY_P/_beta/-BETA}
-MY_P=${MY_P/./-R}
-S=${WORKDIR}/${MY_P}
-
 if [[ ${PV} == "9999" ]] ; then
        EGIT_REPO_URI="https://www.kismetwireless.net/${PN}.git"
-       SRC_URI=""
        inherit git-r3
-       KEYWORDS=""
        RESTRICT="strip"
 else
+       MY_P=${P/\./-}
+       MY_P=${MY_P/_beta/-BETA}
+       MY_P=${MY_P/./-R}
+       S=${WORKDIR}/${MY_P/BETA/beta}
        SRC_URI="https://www.kismetwireless.net/code/${MY_P}.tar.xz"
        KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~x86"
 fi
@@ -67,7 +64,7 @@ src_prepare() {
        sed -i -e 's| -s||g' \
                -e 's|@mangrp@|root|g' Makefile.in
 
-       eapply "${FILESDIR}"/fix-setuptools3.patch
+       eapply "${FILESDIR}"/fix-setuptools4.patch
        eapply_user
 
        if [ "${PV}" = "9999" ]; then