From 2c4629f613c001fd29740d0f4c0e497c771a2182 Mon Sep 17 00:00:00 2001 From: root Date: Fri, 13 May 2011 22:36:49 +0000 Subject: Fri May 13 22:36:49 UTC 2011 --- extra/kismet/PKGBUILD | 65 ++++++++++++++++++++++++++++--------------- extra/kismet/kismet.changelog | 26 +++++++++++++++++ extra/kismet/kismet.install | 34 ++++++++++++++++++++++ 3 files changed, 103 insertions(+), 22 deletions(-) create mode 100644 extra/kismet/kismet.changelog create mode 100644 extra/kismet/kismet.install (limited to 'extra/kismet') diff --git a/extra/kismet/PKGBUILD b/extra/kismet/PKGBUILD index 3333a8e22..015044fe8 100644 --- a/extra/kismet/PKGBUILD +++ b/extra/kismet/PKGBUILD @@ -1,38 +1,59 @@ -# $Id: PKGBUILD 119587 2011-04-12 15:18:27Z angvp $ -# Contributer: Jason Chu -# Maintainer: Juergen Hoetzel +# $Id: PKGBUILD 123234 2011-05-09 12:19:16Z angvp $ +# Maintainer: Angel Velasquez +# Contributor: Jason Chu +# Contributor: Juergen Hoetzel pkgname=kismet pkgver=2011_03_R2 _realver="${pkgver//_/-}" -pkgrel=1 -pkgdesc="802.11b sniffing software" +pkgrel=2 +pkgdesc="802.11 layer2 wireless network detector, sniffer, and intrusion detection system" arch=('i686' 'x86_64') -license=('GPL') -depends=('gmp' 'imagemagick' 'libpcap>=1.0.0' 'ncurses' 'dbus' 'libjpeg>=7') -optdepends=(perl-libwww) url="http://www.kismetwireless.net/" +license=('GPL') +depends=('libcap' 'libnl' 'pcre' 'ncurses' 'libpcap>=1.0.0' 'bluez' 'openssl') # already in core: ('linux-api-headers' 'glibc' 'libusb' 'libusb-compat') +makedepends=() # already in core: ('grep' 'gcc-libs') +optdepends=('gpsd: log coordinates of detected networks' + 'wireshark: provide OUI files used to determine device manufacturer' + 'wireshark: mergecap, to merge multiple capture files' + 'sox: provide the default kismet sound playback binary' + 'festival: text-to-speech support' + 'flite: alternative/lightweight text-to-speech support' + 'mac80211-driver: full rfmon support' + 'ruby: ruby interface') backup=('etc/kismet.conf' 'etc/kismet_drone.conf') -options=('!makeflags') -source=(http://www.kismetwireless.net/code/kismet-${pkgver//_/-}.tar.gz) +options=() +install=kismet.install +changelog=kismet.changelog +source=("http://www.kismetwireless.net/code/${pkgname}-${_realver}.tar.gz") md5sums=('8bf077e8111e6dc8c12cadefdf40aadd') build() { - cd "$srcdir/kismet-$_realver" + cd "${srcdir}/${pkgname}-${_realver}" + + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var + make dep + make - ./configure --prefix=/usr \ - --sysconfdir=/etc \ - --localstatedir=/var + # Include plugins bundled with kismet + make plugins +} + +package() { + cd "${srcdir}/${pkgname}-${_realver}" - make dep - make - sed -i 's/prism2/wlanng/g' conf/kismet.conf - make DESTDIR="$pkgdir" install + # Install kismet + make DESTDIR="$pkgdir" install - chown root:root "$pkgdir"/usr/share/man/man{1,5}/* + # Install plugins + make plugins-install DESTDIR="$pkgdir" - install -D -m 644 "$srcdir/kismet-$_realver/README" "$pkgdir/usr/share/kismet/README" + # the README is very comprehensive, a good idea to include it + install -D -m 644 "${srcdir}/kismet-${_realver}/README" "${pkgdir}/usr/share/kismet/README" - # Fix the *.conf unexpanded ${prefix} problems - sed -i 's%\${prefix}%/usr%' "$pkgdir"/etc/*.conf + # Our own suid-install, first half (see kismet.install) + install -o "root" -g "root" -m 4550 kismet_capture "${pkgdir}/usr/bin/" } + diff --git a/extra/kismet/kismet.changelog b/extra/kismet/kismet.changelog new file mode 100644 index 000000000..e66dcfda0 --- /dev/null +++ b/extra/kismet/kismet.changelog @@ -0,0 +1,26 @@ +2010-05-07 Angel Velasquez + * ChangeLog added + + * Removed old patches from SVN + + * Applied changes from FS#15746 thanks to people who worked on it. + + * Files that are no longer shipped and so should not be backed up: + backup=('etc/ap_manuf' 'etc/client_manuf' 'etc/kismet_ui.conf') + + * No longer needed; gpsmap is deprecated and being replaced with a tile-based + mapper, as of yet incomplete + optdepends=('perl-libwww: fetch maps for gpsmap') + + * Configuration has completely changed, no longer containing + references to either prism2 or wlanng + sed -i 's/prism2/wlanng/g' conf/kismet.conf + + * Ownership of man pages now defaults to "root" if the group "man" does not exist + chown root:root "$pkgdir"/usr/share/man/man{1,5}/* + + * Dependencies no longer needed + depends=('gmp' 'imagemagick' 'dbus' 'libjpeg>=7') + + * Options no longer needed + options=('!makeflags') diff --git a/extra/kismet/kismet.install b/extra/kismet/kismet.install new file mode 100644 index 000000000..0bc806034 --- /dev/null +++ b/extra/kismet/kismet.install @@ -0,0 +1,34 @@ +## arg 1: the new package version +post_install() { + post_upgrade + + cat << EOP + If you have not done so already, read the README file and the FAQ file. + You MUST edit /etc/kismet.conf and configure Kismet for your system, or + it will NOT run properly!" + + Kismet has been installed with a SUID ROOT CAPTURE HELPER executeable by + users in the group ' kismet '. This WILL ALLOW USERS IN THIS GROUP + TO ALTER YOUR NETWORK INTERACE STATES, but is more secure than running + all of Kismet as root. ONLY users in this group will be able to + run Kismet and capture from physical network devices. +EOP +} + +## arg 1: the new package version +## arg 2: the old package version +post_upgrade() { + # Add the group needed to use the limited-functionality binary "kismet_capture" + # Change group ownership of "kismet_capture" to this new group + # Preserve the file mode bits of "kismet_capture" + getent group "kismet" &>/dev/null || /usr/sbin/groupadd -r -g 315 kismet &>/dev/null + chown root:kismet "/usr/bin/kismet_capture" + chmod 4550 "/usr/bin/kismet_capture" +} + +## arg 1: the old package version +post_remove() { + getent group "kismet" &>/dev/null && /usr/sbin/groupdel kismet &>/dev/null +} + +# vim:set ts=2 sw=2 et: -- cgit v1.2.3-54-g00ecf