summaryrefslogtreecommitdiff
path: root/community/wireshark
diff options
context:
space:
mode:
Diffstat (limited to 'community/wireshark')
-rw-r--r--community/wireshark/PKGBUILD81
-rw-r--r--community/wireshark/wireshark-1.10.3-gtk3.10-compile.patch12
-rw-r--r--community/wireshark/wireshark-gtk.install12
-rw-r--r--community/wireshark/wireshark.install18
4 files changed, 123 insertions, 0 deletions
diff --git a/community/wireshark/PKGBUILD b/community/wireshark/PKGBUILD
new file mode 100644
index 000000000..5fcafcf1b
--- /dev/null
+++ b/community/wireshark/PKGBUILD
@@ -0,0 +1,81 @@
+# $Id: PKGBUILD 100436 2013-11-04 11:50:09Z tredaelli $
+# Maintainer: Timothy Redaelli <timothy.redaelli@gmail.com>
+# Contributor: Guillaume ALAUX <guillaume@archlinux.org>
+# Contributor: Florian Pritz <bluewind at jabber dot ccc dot de>
+pkgname=('wireshark-cli' 'wireshark-gtk')
+pkgbase=wireshark
+pkgver=1.10.3
+pkgrel=1
+arch=('i686' 'x86_64' 'mips64el')
+license=('GPL2')
+makedepends=('gtk3' 'krb5' 'libpcap' 'bash' 'gnutls'
+ 'lua' 'python' 'desktop-file-utils' 'hicolor-icon-theme')
+url='http://www.wireshark.org/'
+source=(http://www.wireshark.org/download/src/${pkgbase}-${pkgver}.tar.bz2
+ wireshark-1.10.3-gtk3.10-compile.patch)
+sha256sums=('c1641b36aeb0ca2c1a95fb01d2c647888b65e00a215c9a6464b5fc61e0fd498c'
+ '45274cca58f0abdd3a560beb79a6f0bc8f35736426a1855ed048c9ad8e94f3c0')
+
+prepare() {
+ cd ${pkgbase}-${pkgver}
+ patch -p1 -i ${srcdir}/wireshark-1.10.3-gtk3.10-compile.patch
+}
+
+build() {
+ cd ${pkgbase}-${pkgver}
+
+ ./autogen.sh
+ ./configure \
+ --prefix=/usr \
+ --with-ssl \
+ --with-zlib=yes \
+ --with-lua \
+ --with-gtk3=yes
+ make all
+}
+
+package_wireshark-cli() {
+ pkgdesc='a free network protocol analyzer for Unix/Linux and Windows - CLI version'
+ depends=('krb5' 'libpcap' 'bash' 'gnutls' 'glib2' 'lua')
+ install=wireshark.install
+ conflicts=(wireshark)
+
+ cd ${pkgbase}-${pkgver}
+
+ make DESTDIR="${pkgdir}" install
+
+ #wireshark uid group is 150
+ chgrp 150 "${pkgdir}/usr/bin/dumpcap"
+ chmod 754 "${pkgdir}/usr/bin/dumpcap"
+ rm "${pkgdir}/usr/bin/wireshark"
+
+ # Headers
+ install -dm755 "${pkgdir}"/usr/include/${pkgbase}/{epan/{crypt,dfilter,dissectors,ftypes},wiretap,wsutil}
+
+ install -m644 color.h config.h register.h ws_symbol_export.h "${pkgdir}/usr/include/${pkgbase}"
+ for d in epan epan/crypt epan/dfilter epan/dissectors epan/ftypes wiretap wsutil; do
+ install -m644 ${d}/*.h "${pkgdir}"/usr/include/${pkgbase}/${d}
+ done
+}
+
+package_wireshark-gtk() {
+ pkgdesc='a free network protocol analyzer for Unix/Linux and Windows - GTK frontend'
+ depends=('gtk3' 'wireshark-cli' 'desktop-file-utils' 'hicolor-icon-theme')
+ install=wireshark-gtk.install
+ replaces=(wireshark)
+ conflicts=(wireshark)
+
+ cd ${pkgbase}-${pkgver}
+
+ install -Dm755 .libs/wireshark "${pkgdir}/usr/bin/wireshark"
+ for d in 16 32 48; do
+ install -Dm644 image/hi${d}-app-wireshark.png \
+ "${pkgdir}/usr/share/icons/hicolor/${d}x${d}/apps/wireshark.png"
+ done
+
+ for d in 16 24 32 48 64 128 256 ; do
+ install -Dm644 image/WiresharkDoc-${d}.png \
+ "${pkgdir}/usr/share/icons/hicolor/${d}x${d}/mimetypes/application-vnd.tcpdump.pcap.png"
+ done
+ install -Dm644 wireshark.desktop "${pkgdir}/usr/share/applications/wireshark.desktop"
+}
diff --git a/community/wireshark/wireshark-1.10.3-gtk3.10-compile.patch b/community/wireshark/wireshark-1.10.3-gtk3.10-compile.patch
new file mode 100644
index 000000000..6dc50646f
--- /dev/null
+++ b/community/wireshark/wireshark-1.10.3-gtk3.10-compile.patch
@@ -0,0 +1,12 @@
+--- wireshark-1.10.3/configure.ac.orig 2013-11-04 10:39:14.101045626 +0000
++++ wireshark-1.10.3/configure.ac 2013-11-04 10:39:26.884300664 +0000
+@@ -1388,9 +1388,6 @@
+ # Don't use GLIB_CFLAGS
+ AM_PATH_GLIB_2_0($GLIB_MIN_VERSION, , AC_MSG_ERROR(GLib $GLIB_MIN_VERSION or later distribution not found.), gthread gmodule)
+
+- CPPFLAGS="-DGDK_PIXBUF_DISABLE_DEPRECATED $CPPFLAGS"
+- CPPFLAGS="-DGDK_DISABLE_DEPRECATED $CPPFLAGS"
+- CPPFLAGS="-DGTK_DISABLE_DEPRECATED $CPPFLAGS"
+ CPPFLAGS="-DGTK_DISABLE_SINGLE_INCLUDES $CPPFLAGS"
+ if test ! \( $gtk_config_major_version -eq 2 -a $gtk_config_minor_version -lt 20 \) ; then
+ # Enable GSEAL when building with GTK > 2.20
diff --git a/community/wireshark/wireshark-gtk.install b/community/wireshark/wireshark-gtk.install
new file mode 100644
index 000000000..771e497ca
--- /dev/null
+++ b/community/wireshark/wireshark-gtk.install
@@ -0,0 +1,12 @@
+post_install() {
+ gtk-update-icon-cache -q -t -f /usr/share/icons/hicolor
+ update-desktop-database -q
+}
+
+post_upgrade() {
+ post_install
+}
+
+post_remove() {
+ post_install
+}
diff --git a/community/wireshark/wireshark.install b/community/wireshark/wireshark.install
new file mode 100644
index 000000000..719171d9e
--- /dev/null
+++ b/community/wireshark/wireshark.install
@@ -0,0 +1,18 @@
+post_install() {
+ getent group wireshark >/dev/null 2>&1 || groupadd -g 150 wireshark &>/dev/null
+
+ setcap 'CAP_NET_RAW+eip CAP_NET_ADMIN+eip' usr/bin/dumpcap
+ echo "NOTE: To run wireshark as normal user you have to add yourself into wireshark group"
+}
+
+post_upgrade() {
+ getent group wireshark >/dev/null 2>&1 || groupadd -g 150 wireshark &>/dev/null
+
+ setcap 'CAP_NET_RAW+eip CAP_NET_ADMIN+eip' usr/bin/dumpcap
+}
+
+post_remove() {
+ if getent group wireshark >/dev/null 2>&1; then
+ groupdel wireshark
+ fi
+}