summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorSaren Arterius2018-09-29 17:32:41 +0800
committerSaren Arterius2018-09-29 17:32:41 +0800
commit8710961d291207b4207f9eca0f84242ea621b3de (patch)
tree81fe8d844199c557cf57f0338fef6a7ff2e01944
downloadaur-iodine-frekky.tar.gz
first
-rw-r--r--.SRCINFO22
-rw-r--r--PKGBUILD56
-rw-r--r--iodined.conf.d21
-rw-r--r--iodined.service10
4 files changed, 109 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..8ff6b7ec8ecc
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,22 @@
+pkgbase = iodine-frekky
+ pkgdesc = Tunnel IPv4 data through a DNS server | iodine fork to improve performance and add features
+ pkgver = 62e3437
+ pkgrel = 1
+ epoch = 1
+ url = http://code.kryo.se/iodine
+ arch = x86_64
+ license = custom:ISC
+ depends = zlib
+ depends = net-tools
+ provides = iodine
+ conflicts = iodine
+ backup = etc/conf.d/iodined
+ source = git+https://github.com/frekky/iodine.git#commit=62e3437c6ec501a23b1a64f19a9c376a83596623
+ source = iodined.service
+ source = iodined.conf.d
+ sha256sums = SKIP
+ sha256sums = 4019f95432c7b272b96c80a112abd56f4c308bfab4cc920525880c30f417cb84
+ sha256sums = 47e710954cdf68b4c2f66cac367c2bf4e750f682cd393001b8da67da1cdee54b
+
+pkgname = iodine-frekky
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..651ae4a3dbc4
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,56 @@
+# Maintainer: Saren Arterius <saren@wtako.net>
+
+# Upstream package
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Christian Hesse <mail@eworm.de>
+# Contributor: Daenyth <Daenyth+Arch [at] gmail [dot] com>
+# Contributor: nofxx <x@nofxx.com>
+
+pkgname=iodine-frekky
+_pkgname=iodine
+pkgver=62e3437
+pkgrel=1
+epoch=1
+pkgdesc='Tunnel IPv4 data through a DNS server | iodine fork to improve performance and add features'
+arch=('x86_64')
+url='http://code.kryo.se/iodine'
+license=('custom:ISC')
+depends=('zlib' 'net-tools')
+provides=(iodine)
+conflicts=(iodine)
+backup=('etc/conf.d/iodined')
+source=("git+https://github.com/frekky/iodine.git#commit=62e3437c6ec501a23b1a64f19a9c376a83596623"
+ 'iodined.service'
+ 'iodined.conf.d')
+sha256sums=('SKIP'
+ '4019f95432c7b272b96c80a112abd56f4c308bfab4cc920525880c30f417cb84'
+ '47e710954cdf68b4c2f66cac367c2bf4e750f682cd393001b8da67da1cdee54b')
+
+pkgver() {
+ cd $_pkgname
+ git describe --tags --always
+}
+
+prepare() {
+ cd $_pkgname
+ # sed -e 's/-lsystemd-daemon/-lsystemd/' -i src/osflags
+}
+
+build() {
+ cd ${_pkgname}
+ autoreconf --install
+ ./configure
+ make -j$(nproc)
+}
+
+package() {
+ cd ${_pkgname}
+
+ make prefix=/usr sbindir=/usr/bin DESTDIR="${pkgdir}" install
+ install -d "${pkgdir}/usr/share/licenses/iodine"
+ sed -n '/AUTHORS & LICENSE/,$p' README.md > "${pkgdir}/usr/share/licenses/iodine/LICENSE"
+
+ install -Dm644 "$srcdir/iodined.service" "$pkgdir/usr/lib/systemd/system/iodined.service"
+ install -Dm644 "$srcdir/iodined.conf.d" "$pkgdir/etc/conf.d/iodined"
+}
+
diff --git a/iodined.conf.d b/iodined.conf.d
new file mode 100644
index 000000000000..801b12695dc5
--- /dev/null
+++ b/iodined.conf.d
@@ -0,0 +1,21 @@
+# Address and subnet to use for the tunnel (default mask is /27)
+TUN_IP="172.18.42.1/24"
+
+# Password (32 characters max)
+IODINE_PASSWORD="mypassword"
+
+# The domain you control, see documentation.
+TOP_DOMAIN="example.com"
+
+# UDP port iodined should listen on.
+IODINE_PORT="53"
+
+# Local IP address iodined should bind to.
+IODINE_BIND_ADDRESS="0.0.0.0"
+
+# External IP of your iodined server, used in DNS answers.
+IODINE_EXT_IP=""
+
+# The user iodined should run as.
+IODINE_USER="nobody"
+
diff --git a/iodined.service b/iodined.service
new file mode 100644
index 000000000000..6e83a1703ebf
--- /dev/null
+++ b/iodined.service
@@ -0,0 +1,10 @@
+[Unit]
+After=network.target
+Requires=network.target
+
+[Service]
+EnvironmentFile=/etc/conf.d/iodined
+ExecStart=/usr/bin/iodined -f -c -l $IODINE_BIND_ADDRESS -n $IODINE_EXT_IP -p $IODINE_PORT -P $IODINE_PASSWORD -u $IODINE_USER $TUN_IP $TOP_DOMAIN
+
+[Install]
+WantedBy=multi-user.target