summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Severance2015-09-03 19:12:24 -0400
committerChris Severance2015-09-03 19:12:24 -0400
commita493539664d5ba3b8a6db1c9009f7692d0893a9b (patch)
tree7cee0cc03076e56c3a3896ffec3efaf03dbe4d14
downloadaur-a493539664d5ba3b8a6db1c9009f7692d0893a9b.tar.gz
Initial Import
-rw-r--r--.SRCINFO37
-rw-r--r--PKGBUILD91
-rw-r--r--vde.conf11
-rwxr-xr-xvde.rc113
-rw-r--r--vde2.install9
5 files changed, 261 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..9dc4af0a863d
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,37 @@
+pkgbase = vde2-svn
+ pkgdesc = Virtual Distributed Ethernet for emulators like qemu
+ pkgver = 2.3.2.r587
+ pkgrel = 1
+ url = http://sourceforge.net/projects/vde/
+ install = vde2.install
+ arch = i686
+ arch = x86_64
+ license = GPL
+ license = LGPL
+ license = CUSTOM
+ makedepends = python
+ makedepends = subversion
+ depends = bash
+ depends = libpcap
+ depends = openssl
+ provides = vde2=2.3.2
+ conflicts = vde2
+ options = !makeflags
+ backup = etc/conf.d/vde
+ source = VDE2-SVN::svn://svn.code.sf.net/p/vde/svn/trunk
+ source = vde.conf
+ source = vde.rc
+ source = dhcpd.conf.sample::https://projects.archlinux.org/svntogit/packages.git/plain/trunk/dhcpd.conf.sample?h=packages/vde2
+ source = iptables.rules.sample::https://projects.archlinux.org/svntogit/packages.git/plain/trunk/iptables.rules.sample?h=packages/vde2
+ source = vde-config.sample::https://projects.archlinux.org/svntogit/packages.git/plain/trunk/vde-config.sample?h=packages/vde2
+ source = vde-connection.sample::https://projects.archlinux.org/svntogit/packages.git/plain/trunk/vde-connection.sample?h=packages/vde2
+ sha256sums = SKIP
+ sha256sums = 0b8c1c98f108601a8bd62b21a0575159a5237907dc301769909a7aeebd06a9fd
+ sha256sums = 860fc7eb299da175fa0521a7d751ee15cd3b7febfbc4af60f55604564c705f91
+ sha256sums = da0e2766dc63069da929c28126831ad5fdddcc4a04105a21217d78832c7ca1bc
+ sha256sums = 99076d7466cd99673dbe91ef83865187e7868177959b38e125df63eea957f83e
+ sha256sums = 5727c215646333c37b26388146cd3e6b3814b88d60d54051d7da99e00c0aef87
+ sha256sums = 5139110ed6d5d1174bf12971512dac5196d9d07df46dd393d7b1cd083118fe9b
+
+pkgname = vde2-svn
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..6703120a7b1e
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,91 @@
+# Maintainer: Chris Severance aur.severach aATt spamgourmet dott com
+# Contributor: max_meyer
+# Based on vde2 PKGBUILD
+# Contributor: Sergej Pupykin
+# Contributor: Tobias Powalowski <tpowa@archlinux.org>
+
+set -u
+_pkgname='vde2'
+pkgname="${_pkgname}-svn"
+pkgver=2.3.2.r587
+pkgrel=1
+pkgdesc='Virtual Distributed Ethernet for emulators like qemu'
+arch=('i686' 'x86_64')
+url='http://sourceforge.net/projects/vde/'
+license=('GPL' 'LGPL' 'CUSTOM')
+depends=('bash' 'libpcap' 'openssl')
+makedepends=('python')
+makedepends+=('subversion')
+provides=("${_pkgname}=${pkgver%%.r*}")
+conflicts=("${_pkgname}")
+backup=('etc/conf.d/vde')
+options=('!makeflags')
+install='vde2.install' # curl -o 'vde2.install' 'https://projects.archlinux.org/svntogit/packages.git/plain/trunk/vde2.install?h=packages/vde2'
+_srcdir="${pkgname^^}"
+source=("${_srcdir}::svn://svn.code.sf.net/p/vde/svn/trunk"
+ 'vde.conf'
+ 'vde.rc' # no longer needed
+)
+_srcdir="${_srcdir}/vde-2"
+_archsource=(
+ 'dhcpd.conf.sample'
+ 'iptables.rules.sample'
+ 'vde-config.sample'
+ 'vde-connection.sample'
+)
+_archlink="@@@::https://projects.archlinux.org/svntogit/packages.git/plain/trunk/@@@?h=packages/${_pkgname}"
+for _src in "${_archsource[@]}"; do
+ source+=("${_archlink//@@@/${_src}}")
+done
+unset _src _archlink _archsource
+sha256sums=('SKIP'
+ '0b8c1c98f108601a8bd62b21a0575159a5237907dc301769909a7aeebd06a9fd'
+ '860fc7eb299da175fa0521a7d751ee15cd3b7febfbc4af60f55604564c705f91'
+ 'da0e2766dc63069da929c28126831ad5fdddcc4a04105a21217d78832c7ca1bc'
+ '99076d7466cd99673dbe91ef83865187e7868177959b38e125df63eea957f83e'
+ '5727c215646333c37b26388146cd3e6b3814b88d60d54051d7da99e00c0aef87'
+ '5139110ed6d5d1174bf12971512dac5196d9d07df46dd393d7b1cd083118fe9b')
+
+pkgver() {
+ set -u
+ cd "${_srcdir}"
+ local _svnver="$(svnversion)"
+ local _srcver="$(sed -n -e 's:^AC_INIT(\[vde2\],\[\([0-9\.]\+\)\].*$:\1:p' 'configure.ac')"
+ printf '%s.r%s' "${_srcver}" "${_svnver//[[:alpha:]]}"
+ set +u
+}
+
+prepare() {
+ set -u
+ cd "${_srcdir}"
+
+ autoreconf --install
+
+ #PYTHON='/usr/bin/python2'
+ ./configure --prefix='/usr' --sbindir='/usr/bin' --sysconfdir='/etc' --libexecdir='/usr/lib/vde2' \
+ --enable-experimental
+ set +u
+}
+
+build() {
+ set -u
+ cd "${_srcdir}"
+ make -s # -j "$(nproc)" # Not multi threaded make compatible
+ set +u
+}
+
+package() {
+ set -u
+ cd "${_srcdir}"
+ make prefix="${pkgdir}/usr" sysconfdir="${pkgdir}/etc" sbindir="${pkgdir}/usr/bin" libexecdir="${pkgdir}/usr/lib/vde2" install
+ #install -Dpm755 "${srcdir}/vde.rc" "${pkgdir}/etc/rc.d/vde"
+ #install -Dpm644 "${srcdir}/vde.conf" "${pkgdir}/etc/conf.d/vde"
+ install -Dpm644 "${srcdir}/vde-config.sample" -t "${pkgdir}/etc/vde/"
+ install -Dpm644 "${srcdir}/vde-connection.sample" -t "${pkgdir}/etc/vde/"
+ install -Dpm644 "${srcdir}/dhcpd.conf.sample" -t "${pkgdir}/usr/share/vde2/"
+ install -Dpm644 "${srcdir}/iptables.rules.sample" -t "${pkgdir}/usr/share/vde2/"
+ # install slirp license
+ install -Dpm644 'COPYING.slirpvde' -t "${pkgdir}/usr/share/licenses/vde2/"
+ set +u
+}
+set +u
diff --git a/vde.conf b/vde.conf
new file mode 100644
index 000000000000..bc61dceda741
--- /dev/null
+++ b/vde.conf
@@ -0,0 +1,11 @@
+# Set options for a vde daemon script
+#
+# Array for your vde config files, eg.: "internal-net external-net"
+# You need a config file in /etc/vde/ with the same name.
+# Sample config file provided: /etc/vde/vde-config.sample
+VDE_CONFIG=""
+
+# Array for your dpipe connections, eg.: "connect-switches"
+# You need a config file in /etc/vde/ with the same name.
+# Sample config file provided: /etc/vde/vde-connection.sample
+VDE_CONNECTION="" \ No newline at end of file
diff --git a/vde.rc b/vde.rc
new file mode 100755
index 000000000000..b368f9955881
--- /dev/null
+++ b/vde.rc
@@ -0,0 +1,113 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+. /etc/conf.d/vde
+
+case "$1" in
+ start)
+ # bring up all defined profiles
+ for i in $VDE_CONFIG; do
+ [ -e /etc/vde/$i ] && . /etc/vde/$i
+ stat_busy "Starting vde_switch $i"
+ # get options from profile
+ [ -n "$VDE_NUMPORTS" ] && OPTIONS="-n $VDE_NUMPORTS"
+ [ "$VDE_HUB" = "yes" ] && OPTIONS="$OPTIONS -x"
+ [ "$VDE_FSTP" = "yes" ] && OPTIONS="$OPTIONS -F"
+ [ -n "$VDE_MAC" ] && OPTIONS="$OPTIONS --macaddr $VDE_MAC"
+ [ -n "$VDE_PRIORITY" ] && OPTIONS="$OPTIONS --priority $VDE_PRIORITY"
+ [ -n "$VDE_HASH" ] && OPTIONS="$OPTIONS --hashsize $VDE_HASH"
+ [ -n "$VDE_SOCK" ] && OPTIONS="$OPTIONS -s $VDE_SOCK"
+ [ -n "$VDE_SOCK_MODE" ] && OPTIONS="$OPTIONS -m $VDE_SOCK_MODE"
+ [ -n "$VDE_SOCK_GROUP" ] && OPTIONS="$OPTIONS -g $VDE_SOCK_GROUP"
+ [ -n "$VDE_MANAGEMENT_SOCK" ] && OPTIONS="$OPTIONS -M $VDE_MANAGEMENT_SOCK"
+ [ -n "$VDE_MANAGEMENT_SOCK_MODE" ] && OPTIONS="$OPTIONS --mgmtmode $VDE_MANAGEMENT_SOCK_MODE"
+ [ -n "$VDE_TAP" ] && OPTIONS="$OPTIONS -t $VDE_TAP"
+ [ -n "$VDE_OPTIONS" ] && OPTIONS="$OPTIONS $VDE_OPTIONS"
+ vde_switch $OPTIONS -p /var/run/vde-$i.pid -daemon &>/dev/null
+ [ -n "$VDE_SOCK" -a -n "$VDE_SOCK_GROUP" ] && chgrp "$VDE_SOCK_GROUP" "$VDE_SOCK"
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ stat_done
+ fi
+ if [ "$SLIRP" = "yes" ]; then
+ stat_busy "Starting slirpvde for $i"
+ [ "$SLIRP_DHCP" = "yes" ] && SP_OPTIONS="-D"
+ [ -n "$SLIRP_NETWORK" ] && SP_OPTIONS="$SP_OPTIONS -n $SLIRP_NETWORK"
+ [ -n "$SLIRP_OPTIONS" ] && SP_OPTIONS="$SP_OPTIONS $SLIRP_OPTIONS"
+ [ -n "$VDE_SOCK" ] && SP_OPTIONS="$SP_OPTIONS -s $VDE_SOCK"
+ [ -n "$VDE_SOCK_MODE" ] && SP_OPTIONS="$SP_OPTIONS -m $VDE_SOCK_MODE"
+ [ -n "$VDE_SOCK_GROUP" ] && SP_OPTIONS="$SP_OPTIONS -g $VDE_SOCK_GROUP"
+ slirpvde $SP_OPTIONS -p /var/run/slirpvde-$i.pid -daemon &>/dev/null
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ stat_done
+ fi
+ unset OPTIONS
+ unset SP_OPTIONS
+ fi
+ done
+ for i in $VDE_CONNECTION; do
+ # connect specified vde_switches
+ if [ "$(grep ^vde_plug /etc/vde/$i)" ]; then
+ stat_busy "Connecting VDE switches $i together..."
+ while read j; do
+ switch="$(echo $j | grep ^vde_plug)"
+ [ -n "$switch" ] && (dpipe $switch &)
+ done </etc/vde/$i
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ stat_done
+ fi
+ fi
+ done
+ add_daemon vde
+ ;;
+ stop)
+ # kill vde_plug if switches are connected
+ [ -n "$VDE_CONNECTION" ] && killall vde_plug >/dev/null 2>&1
+ for i in $VDE_CONFIG; do
+ [ -e /etc/vde/$i ] && . /etc/vde/$i
+ if [ "$SLIRP" = "yes" ]; then
+ stat_busy "Stopping slirpvde for $i"
+ kill $(cat /var/run/slirpvde-$i.pid) &> /dev/null
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ stat_done
+ fi
+ rm /var/run/slirpvde-$i.pid &> /dev/null
+ fi
+ stat_busy "Stopping vde_switch $i"
+ kill $(cat /var/run/vde-$i.pid) &> /dev/null
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ stat_done
+ fi
+ rm /var/run/vde-$i.pid &> /dev/null
+ stat_busy "Removing $i vde sockets"
+ rm -rf $VDE_SOCK $VDE_MANAGEMENT_SOCK
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ stat_done
+ fi
+ done
+ unset OPTIONS
+ unset SP_OPTIONS
+ [ -e /var/run/vde/gmon.out ] && rm /var/run/vde/gmon.out
+ rm_daemon vde
+ ;;
+ restart)
+ $0 stop
+ sleep 3
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start|stop|restart}"
+esac
+exit 0
diff --git a/vde2.install b/vde2.install
new file mode 100644
index 000000000000..bf538e01f234
--- /dev/null
+++ b/vde2.install
@@ -0,0 +1,9 @@
+post_install() {
+ echo "vde config files should be placed in /etc/vde, sample files are provided."
+ echo "iptables and dhcpd sample files have been installed to '/usr/share/vde2'."
+ echo "Merge those examples, if needed to the according config files."
+}
+
+post_upgrade() {
+ post_install $1
+}