aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBen Weiss <b.weiss@fastmail.fm>2022-01-19 16:17:45 +0000
committerKevin Daudt <kdaudt@alpinelinux.org>2022-02-16 20:45:04 +0000
commit8f777ba9a6a8f28985bffd1605192ff429b4355a (patch)
tree535d637e2f599b144d5c2a48e3fbc16c46017b99
parentc564fba61fa40875a65d6a328f18a7fe93d09968 (diff)
testing/softether: new aportpatches/3888
https://www.softether.org SoftEther VPN client and server
-rw-r--r--testing/softether/APKBUILD98
-rw-r--r--testing/softether/configure.patch11
-rw-r--r--testing/softether/vpnbridge.initd16
-rw-r--r--testing/softether/vpnclient.initd16
-rw-r--r--testing/softether/vpnserver.initd16
5 files changed, 157 insertions, 0 deletions
diff --git a/testing/softether/APKBUILD b/testing/softether/APKBUILD
new file mode 100644
index 00000000000..623f255d4f0
--- /dev/null
+++ b/testing/softether/APKBUILD
@@ -0,0 +1,98 @@
+# Contributor: bweiss <b.weiss@fastmail.fm>
+# Maintainer: bweiss <b.weiss@fastmail.fm>
+_buildnumber=9760
+_buildtype=rtm
+pkgname=softether
+pkgver=4.38
+pkgrel=0
+pkgdesc="Softether VPN"
+url="http://www.softether.org"
+arch="all"
+license="Apache-2.0"
+depends_openrc="$pkgname-client ||
+ $pkgname-server ||
+ $pkgname-bridge"
+#note- if running a custom kernel, CONFIG_TUN must be set
+makedepends="readline-dev
+ openssl-dev
+ zlib-dev"
+source="https://github.com/SoftEtherVPN/SoftEtherVPN_Stable/releases/download/v$pkgver-$_buildnumber-$_buildtype/softether-src-v$pkgver-$_buildnumber-$_buildtype.tar.gz
+ vpnclient.initd
+ vpnserver.initd
+ vpnbridge.initd
+ configure.patch"
+builddir="$srcdir/v$pkgver-$_buildnumber"
+options="!check" #no tests are implemented
+subpackages="
+ $pkgname-client
+ $pkgname-server
+ $pkgname-bridge
+ $pkgname-openrc"
+
+build() {
+ ./configure
+ make
+
+}
+
+#default make install is inflexible, and installs everything. So not using stock make install.
+#base installs only libraries and management utility- then server, client, or bridge can be installed as desired seperately.
+#these subpackage entries basically duplicate the relevant install sections in the original makefile (which cannot be called independantly)
+
+package() {
+ pkgdesc="$pkgdesc main library and configuration utility"
+ mkdir -p "$pkgdir"/usr/vpncmd
+ mkdir -p "$pkgdir"/usr/bin
+ _build_binfile cmd "$pkgdir"
+}
+
+client() {
+ pkgdesc="$pkgdesc client"
+ depends="$depends softether"
+ mkdir -p "$subpkgdir"/usr/vpnclient
+ mkdir -p "$subpkgdir"/usr/bin
+ mkdir -p "$pkgdir"/etc/init.d
+ _build_binfile "$subpkgname" "$subpkgdir"
+ install -Dm755 "$srcdir"/vpnclient.initd "$pkgdir"/etc/init.d/vpnclient
+
+}
+
+server() {
+ pkgdesc="$pkgdesc server"
+ depends="$depends softether"
+ mkdir -p "$subpkgdir"/usr/vpnserver
+ mkdir -p "$subpkgdir"/usr/bin
+ mkdir -p "$pkgdir"/etc/init.d
+ _build_binfile "$subpkgname" "$subpkgdir"
+ install -Dm755 "$srcdir"/vpnserver.initd "$pkgdir"/etc/init.d/vpnserver
+
+}
+
+bridge() {
+ pkgdesc="$pkgdesc bridge"
+ depends="$depends softether"
+ mkdir -p "$subpkgdir"/usr/vpnbridge
+ mkdir -p "$subpkgdir"/usr/bin
+ mkdir -p "$pkgdir"/etc/init.d
+ _build_binfile "$subpkgname" "$subpkgdir"
+ install -Dm755 "$srcdir"/vpnbridge.initd "$pkgdir"/etc/init.d/vpnbridge
+
+}
+
+_build_binfile() {
+ _component="${1##*-}"
+ cp "$builddir"/bin/vpn$_component/hamcore.se2 "$2"/usr/vpn$_component
+ cp "$builddir"/bin/vpn$_component/vpn$_component "$2"/usr/vpn$_component
+ echo "#!/bin/sh" > "$2"/usr/bin/vpn$_component
+ echo /usr/vpn$_component/vpn$_component '"$@"' >> "$2"/usr/bin/vpn$_component
+ echo 'exit $?' >> "$2"/usr/bin/vpn$_component
+ chmod 755 "$2"/usr/bin/vpn$_component
+}
+
+sha512sums="
+48be7a4a014f85967bb3beb906a7ff34b51e0828ff4cf9844520815fc83333f453fb71b6924fe62050c3e96cab03266f92465aadb8f2d83bec2addfe9f18c8a8 softether-src-v4.38-9760-rtm.tar.gz
+333b58e1c945fefc25227eba7f5de21ec12e1c12f50ddc9fa0763272c19eb9c4c64239b7e540b7e35808440913e1448be7cf4ed3495624cc9bbf209a5fd6a49f vpnclient.initd
+d511a56418d46ca75dfb61b73850f70ed161a1129397ef6f68938004bce54540196c8e7e56a1ef8402293b81eac1a54b98220a9b2926e6a1df719d22c47cf1c3 vpnserver.initd
+a52e1d9b535957df3c0abda34d75d367f5d83278009fdad58c43cf71557cd1901039e216dda00b23cc2bbef8de14a33f5cc04d6ab3ac247b9113bf2273dfb1f6 vpnbridge.initd
+a935d7a5fcfb0794534cfbfe65fc5993f0e667303fe2caed9daa8ab020622e75ded9af971378707aed231f9b24f2b727327a8ca9cb2f5180c2889bf8d2855686 configure.patch
+"
diff --git a/testing/softether/configure.patch b/testing/softether/configure.patch
new file mode 100644
index 00000000000..69c6910bd92
--- /dev/null
+++ b/testing/softether/configure.patch
@@ -0,0 +1,11 @@
+--- configure.orig 2021-08-17 13:56:35.000000000 +0000
++++ v4.38-9760/configure 2022-01-17 23:28:46.559026639 +0000
+@@ -83,7 +83,7 @@ esac
+
+ CPU=""
+ case "`uname -m`" in
+-x86_64|amd64|aarch64|arm64|armv8*|mips64|ppc64|sparc64|alpha|ia64)
++x86_64|amd64|aarch64|arm64|armv8*|mips64|ppc64|ppc64le|sparc64|alpha|ia64|s390x)
+ CPU=64bit
+ ;;
+ i?86|x86pc|i86pc|armv4*|armv5*|armv6*|armv7*)
diff --git a/testing/softether/vpnbridge.initd b/testing/softether/vpnbridge.initd
new file mode 100644
index 00000000000..3d3f85fd3ca
--- /dev/null
+++ b/testing/softether/vpnbridge.initd
@@ -0,0 +1,16 @@
+#!/sbin/openrc-run
+
+description="Starts or Stops the Softether VPN Bridge"
+procname="vpnbridge"
+
+start(){
+ ebegin "Starting Softether VPN Bridge"
+ /usr/bin/vpnbridge start
+ eend $?
+}
+
+stop(){
+ ebegin "Stopping Softether VPN Bridge"
+ /usr/bin/vpnbridge stop
+ eend $?
+}
diff --git a/testing/softether/vpnclient.initd b/testing/softether/vpnclient.initd
new file mode 100644
index 00000000000..e391ed5353b
--- /dev/null
+++ b/testing/softether/vpnclient.initd
@@ -0,0 +1,16 @@
+#!/sbin/openrc-run
+
+description="Starts or Stops the Softether VPN client"
+procname="vpnclient"
+
+start(){
+ ebegin "Starting Softether VPN Client"
+ /usr/bin/vpnclient start
+ eend $?
+}
+
+stop(){
+ ebegin "Stopping Softether VPN Client"
+ /usr/bin/vpnclient stop
+ eend $?
+}
diff --git a/testing/softether/vpnserver.initd b/testing/softether/vpnserver.initd
new file mode 100644
index 00000000000..e9844c3491a
--- /dev/null
+++ b/testing/softether/vpnserver.initd
@@ -0,0 +1,16 @@
+#!/sbin/openrc-run
+
+description="Starts or Stops the Softether VPN Server"
+procname="vpnserver"
+
+start(){
+ ebegin "Starting Softether VPN Server"
+ /usr/bin/vpnserver start
+ eend $?
+}
+
+stop(){
+ ebegin "Stopping Softether VPN Server"
+ /usr/bin/vpnserver stop
+ eend $?
+}