93 lines
2.8 KiB
Bash
93 lines
2.8 KiB
Bash
# Copyright 2016 Julian Ospald <hasufell@posteo.de>
|
|
# Distributed under the terms of the GNU General Public License v2
|
|
#
|
|
# Partly based on badvpn-1.999.130.ebuild which is:
|
|
# Copyright 1999-2015 Gentoo Foundation
|
|
# Distributed under the terms of the GNU General Public License v2
|
|
# $Id$
|
|
|
|
|
|
require github [ user=ambrop72 ]
|
|
require cmake [ api=2 ]
|
|
|
|
SUMMARY="Peer-to-peer VPN, NCD scripting language, tun2socks proxifier"
|
|
DESCRIPTION="
|
|
BadVPN is an open-source peer-to-peer VPN system. It provides a
|
|
Layer 2 (Ethernet) network between the peers (VPN nodes). The peers
|
|
connect to a central server which acts as a chat server for them to
|
|
establish direct connections between each other (data connections).
|
|
These connections are used for transferring network data (Ethernet
|
|
frames), and can be secured with a multitude of mechanisms.
|
|
|
|
The BadVPN package also includes other network-related software,
|
|
like tun2socks and NCD.
|
|
"
|
|
HOMEPAGE+=" https://code.google.com/p/badvpn/"
|
|
|
|
LICENCES="BSD-3"
|
|
PLATFORMS="~amd64 ~x86"
|
|
SLOT="0"
|
|
|
|
MYOPTIONS="
|
|
ncd [[ description = [ Build NCD, a lightweight scripting language
|
|
especially suited for network configurations ] ]]
|
|
tun2socks [[ description = [ Build tun2socks, a program which implements
|
|
a TUN device that forwards TCP traffic through
|
|
a SOCKS5 server ] ]]
|
|
udpgw [[ description = [ Build udpgw, a small daemon which allows
|
|
tun2socks to forward UDP traffic ] ]]
|
|
( providers: libressl openssl ) [[ number-selected = exactly-one ]]
|
|
( providers: eudev systemd ) [[ number-selected = exactly-one ]]
|
|
"
|
|
|
|
DEPENDENCIES="
|
|
build:
|
|
virtual/pkg-config
|
|
build+run:
|
|
dev-libs/nspr
|
|
dev-libs/nss
|
|
providers:libressl? ( dev-libs/libressl:= )
|
|
providers:openssl? ( dev-libs/openssl )
|
|
run:
|
|
group/badvpn
|
|
user/badvpn
|
|
ncd? (
|
|
sys-apps/iproute2
|
|
providers:eudev? ( sys-apps/eudev )
|
|
providers:systemd? ( sys-apps/systemd )
|
|
)
|
|
"
|
|
|
|
DEFAULT_SRC_PREPARE_PATCHES=(
|
|
"${FILES}"/${PNV}-Use-GNUInstallDirs.patch
|
|
)
|
|
|
|
CMAKE_SRC_CONFIGURE_PARAMS=(
|
|
-DBUILD_NOTHING_BY_DEFAULT=1
|
|
-DBUILD_CLIENT=ON
|
|
-DBUILD_SERVER=ON
|
|
-DCMAKE_INSTALL_BINDIR="/usr/$(exhost --target)/bin"
|
|
-DCMAKE_INSTALL_PREFIX="/usr"
|
|
)
|
|
|
|
CMAKE_SRC_CONFIGURE_OPTIONS=(
|
|
'ncd BUILD_NCD'
|
|
'tun2socks BUILD_TUN2SOCKS'
|
|
'udpgw BUILD_UDPGW'
|
|
)
|
|
|
|
src_install() {
|
|
cmake_src_install
|
|
dodoc "${CMAKE_SOURCE}"/ChangeLog
|
|
|
|
newinitd "${FILES}"/${PN}-server.init ${PN}-server
|
|
newconfd "${FILES}"/${PN}-server.conf ${PN}-server
|
|
|
|
if option ncd; then
|
|
newinitd "${FILES}"/${PN}-1.999.127-ncd.init ${PN}-ncd
|
|
newconfd "${FILES}"/${PN}-ncd.conf ${PN}-ncd
|
|
install_systemd_files
|
|
fi
|
|
}
|
|
|