diff options
author | Chris Severance | 2015-09-03 19:12:24 -0400 |
---|---|---|
committer | Chris Severance | 2015-09-03 19:12:24 -0400 |
commit | a493539664d5ba3b8a6db1c9009f7692d0893a9b (patch) | |
tree | 7cee0cc03076e56c3a3896ffec3efaf03dbe4d14 | |
download | aur-a493539664d5ba3b8a6db1c9009f7692d0893a9b.tar.gz |
Initial Import
-rw-r--r-- | .SRCINFO | 37 | ||||
-rw-r--r-- | PKGBUILD | 91 | ||||
-rw-r--r-- | vde.conf | 11 | ||||
-rwxr-xr-x | vde.rc | 113 | ||||
-rw-r--r-- | vde2.install | 9 |
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 +} |