testing/softether: new aport

https://www.softether.org
SoftEther VPN client and server
This commit is contained in:
Ben Weiss 2022-01-19 16:17:45 +00:00 committed by Kevin Daudt
parent c564fba61f
commit 8f777ba9a6
5 changed files with 157 additions and 0 deletions

View file

@ -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
"

View file

@ -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*)

View file

@ -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 $?
}

View file

@ -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 $?
}

View file

@ -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 $?
}