summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tinc/PKGBUILD50
-rw-r--r--tinc/graph.patch18
2 files changed, 68 insertions, 0 deletions
diff --git a/tinc/PKGBUILD b/tinc/PKGBUILD
new file mode 100644
index 000000000..059aac64e
--- /dev/null
+++ b/tinc/PKGBUILD
@@ -0,0 +1,50 @@
+# Maintainer: Johannes Löthberg <johannes@kyriasis.com>
+# Contributor: Timothy Redaelli <timothy.redaelli@gmail.com>
+# Contributor: helios
+# Contributor: Lothar Gesslein
+# Contributor: Dominik George <nik@naturalnet.de>
+
+pkgname=tinc
+pkgver=1.0.36
+pkgrel=1
+
+pkgdesc="VPN (Virtual Private Network) daemon"
+url="https://www.tinc-vpn.org/"
+arch=('x86_64')
+license=('GPL')
+
+depends=('lzo' 'openssl' 'zlib')
+
+source=(https://www.tinc-vpn.org/packages/tinc-$pkgver.tar.gz{,.sig} graph.patch)
+
+sha512sums=('23af9162f7ae700bad01e1f59f23f32d1b183b185ec35f4a69a987c52c53cfebfa9e852203b399f035988078e9131e5d59b018554a52a30044f34df6e64b5289'
+ 'SKIP'
+ 'c16d3b18f78d6c994769d7d561356b83ac9b9f8f1b05ee697434562c498e9aaff594763e5bd23dea984c99f711f91c7e8b0dfd5e672b3de8bd6a79390a8b5faa')
+validpgpkeys=('D62BDD168EFBE48BC60E8E234A6084B9C0D71F4A')
+
+prepare() {
+ cd tinc-$pkgver
+ patch -p1 -i ../graph.patch
+}
+
+build() {
+ cd tinc-$pkgver
+
+ ./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --sbindir=/usr/bin \
+ --with-systemd=/usr/lib/systemd/system
+ make
+}
+
+package() {
+ cd tinc-$pkgver
+
+ make DESTDIR="$pkgdir/" install
+ install -dm755 "$pkgdir"/usr/share/tinc/examples
+ cp -a doc/sample-config/. "$pkgdir"/usr/share/tinc/examples/
+ find "$pkgdir"/usr/share/tinc/examples -type f -exec chmod 644 {} +
+ find "$pkgdir"/usr/share/tinc/examples -type d -exec chmod 755 {} +
+}
diff --git a/tinc/graph.patch b/tinc/graph.patch
new file mode 100644
index 000000000..d3dddec18
--- /dev/null
+++ b/tinc/graph.patch
@@ -0,0 +1,18 @@
+diff --git a/src/graph.c b/src/graph.c
+index c63fdf9c..ecabb1bf 100644
+--- a/src/graph.c
++++ b/src/graph.c
+@@ -366,7 +366,12 @@ void dump_graph(void) {
+ /* now dump all edges */
+ for(node = edge_weight_tree->head; node; node = node->next) {
+ e = node->data;
+- fprintf(file, " \"%s\" -> \"%s\";\n", e->from->name, e->to->name);
++ if (e->reverse) {
++ if (e->reverse > e)
++ fprintf(file, " \"%s\" -> \"%s\" [dir=both];\n", e->from->name, e->to->name);
++ }
++ else
++ fprintf(file, " \"%s\" -> \"%s\";\n", e->from->name, e->to->name);
+ }
+
+ fprintf(file, "}\n");