summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbaldr333 <ra@afu.re>2025-03-09 22:24:46 -0400
committerbaldr333 <ra@afu.re>2025-03-09 22:24:46 -0400
commit95a5acf11273c5468bb569104f39c79d82ff5273 (patch)
treeda5f5a9d083b2362b855caef5a7107cca21fc32a
parentb2884c27a12bc7682d2f4e366ac5be9816d4daea (diff)
add net-vpn/ivpn-1.13.4
-rw-r--r--net-vpn/ivpn/Manifest3
-rw-r--r--net-vpn/ivpn/ivpn-3.13.4.ebuild119
2 files changed, 122 insertions, 0 deletions
diff --git a/net-vpn/ivpn/Manifest b/net-vpn/ivpn/Manifest
new file mode 100644
index 0000000..d2128b6
--- /dev/null
+++ b/net-vpn/ivpn/Manifest
@@ -0,0 +1,3 @@
+DIST ivpn-3.13.4-deps.tar.xz 28336732 BLAKE2B 463d8b0b6cd9730fbc9ace4e5e974622f84aeb8d09c5846d36c3d3de79ca1e9381c40208bdde6ef443fc351720e027e35ee75c2bbf041e2a74909fccd08526a5 SHA512 108d6a36d74e70f5034211a2c6cfd28bed05e117306978236c72760db0aa28cecb943bf206d31f42d7794b4c7dbd6630f0d0f7ffdf2eeff46e9d17cc97812e93
+DIST ivpn-3.13.4.tar.gz 10563304 BLAKE2B 4ca0873af1e389fee0090403dfb0fa273f8601efe79ced00aee2f8ff88192efcb07502ee1baffe7930317dc31a9ead8516bf37cffc4676d2d02c2204e1643107 SHA512 cb71fb95d5f961b88504d0c4e6d29d14ec3db4c7ff22e07ed0956e041d759ae86ceca00b84cc27c097799a9a6c0e187dfa89ab5d6aa6a94eea5152aaa8c83efc
+EBUILD ivpn-3.13.4.ebuild 3344 BLAKE2B 902500b8a5d0cad035e48d8ac84776f76c4bd005a86a8fa0c713d758a3c96daba14d4e9581e379eba960be4695108dfaa9359fdb0fbb3388dcc52c5ccb97bdda SHA512 28fd3a698f7ecde3d158525be4b09122e3e08bcde060a4decc20042b67118ab731e6ca475a63fdbccb12b6880aee081689c11ef2024a2721f460ed046fe5a343
diff --git a/net-vpn/ivpn/ivpn-3.13.4.ebuild b/net-vpn/ivpn/ivpn-3.13.4.ebuild
new file mode 100644
index 0000000..704a6f6
--- /dev/null
+++ b/net-vpn/ivpn/ivpn-3.13.4.ebuild
@@ -0,0 +1,119 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module systemd linux-info
+
+go-module_set_globals
+
+DESCRIPTION="Official IVPN Desktop app"
+HOMEPAGE="https://www.ivpn.net/ https://github.com/ivpn"
+SRC_URI="https://github.com/ivpn/desktop-app/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ https://github.com/FlyingWaffleDev/gentoo-ivpn-deps/releases/download/${P}/${P}-deps.tar.xz"
+
+LICENSE="GPL-3"
+KEYWORDS="~amd64"
+SLOT="0"
+IUSE="systemd"
+RESTRICT="primaryuri"
+
+RDEPEND="sys-libs/glibc
+ sys-process/lsof
+ net-vpn/openvpn
+ net-vpn/wireguard-tools
+ net-wireless/wireless-tools
+ net-proxy/lyrebird
+ net-dns/dnscrypt-proxy"
+
+DEPEND="${RDEPEND}"
+
+BDEPEND="net-misc/curl
+ >=dev-lang/go-1.18"
+
+#S="${WORKDIR}/desktop-app-${PV}"
+S="${WORKDIR}/desktop-app-${PV}/cli"
+
+DOCS=( readme.md CHANGELOG.md )
+
+pkg_pretend() {
+ local CONFIG_CHECK="NETFILTER_XT_SET NETFILTER_XT_MATCH_CGROUP
+ NETFILTER_XT_MATCH_MARK NETFILTER_XT_MATCH_CONNMARK
+ NETFILTER_XT_TARGET_MARK NETFILTER_XT_TARGET_CONNMARK"
+
+ check_extra_config
+}
+
+src_compile() {
+ # version info variables
+ VERSION="${PV}"
+ DATE="$(date "+%Y-%m-%d")"
+ COMMIT="${PV}_stamped"
+
+ # build daemon
+ SCRIPT_DIR="${S}/../daemon/References/Linux/scripts"
+ OUT_DIR="$SCRIPT_DIR/_out_bin"
+ OUT_FILE="$OUT_DIR/ivpn-service"
+
+ mkdir -p "$OUT_DIR" || die
+
+ # updating servers.json
+ # cd ${SCRIPT_DIR}
+ # ./update-servers.sh
+ # # Or just add "https://api.ivpn.net/v5/servers.json" to the SRC_URI
+
+ cd "${S}/../daemon" || die
+ go build -buildmode=pie -o "$OUT_FILE" -trimpath -ldflags "-s -w -X github.com/ivpn/desktop-app/daemon/version._version=$VERSION -X github.com/ivpn/desktop-app/daemon/version._commit=$COMMIT -X github.com/ivpn/desktop-app/daemon/version._time=$DATE" || die "failed to compile daemon"
+
+ # build kem-helper
+ #cd "${S}/../daemon/Refernces/Linux/scripts" || die
+ #./build-kem-helper.sh
+
+ # build v2ray
+ # ...
+
+ # build cli
+ SCRIPT_DIR="${S}/References/Linux"
+ OUT_DIR="$SCRIPT_DIR/_out_bin"
+ OUT_FILE="$OUT_DIR/ivpn"
+
+ mkdir -p "$OUT_DIR" || die
+
+ cd "${S}" || die
+ go build -o "$OUT_FILE" -trimpath -ldflags "-s -w -X github.com/ivpn/desktop-app/daemon/version._version=$VERSION -X github.com/ivpn/desktop-app/daemon/version._commit=$COMMIT -X github.com/ivpn/desktop-app/daemon/version._time=$DATE" || die "failed to compile cli"
+}
+
+src_install() {
+ mkdir -p "${D}/opt/ivpn/etc" || die
+
+ cd "${S}/../daemon" || die
+
+ dobin "References/Linux/scripts/_out_bin/ivpn-service"
+
+ insinto "opt/ivpn/etc"
+ insopts -m700
+ doins "References/Linux/etc/client.down"
+ doins "References/Linux/etc/client.up"
+ doins "References/Linux/etc/firewall.sh"
+ doins "References/Linux/etc/splittun.sh"
+ insopts -m600
+ doins "References/common/etc/servers.json"
+ insopts -m400
+ doins "References/common/etc/ca.crt"
+ doins "References/common/etc/ta.key"
+ doins "References/common/etc/dnscrypt-proxy-template.toml"
+
+ dosym "$(which wg-quick)" "opt/ivpn/wireguard-tools/wg-quick"
+ dosym "$(which wg)" "opt/ivpn/wireguard-tools/wg"
+ dosym "$(which lyrebird)" "opt/ivpn/obfsproxy/obfs4proxy"
+ dosym "$(which dnscrypt-proxy)" "opt/ivpn/dnscrypt-proxy/dnscrypt-proxy"
+
+ cd "${S}" || die
+ dobin "References/Linux/_out_bin/ivpn"
+
+ if use systemd; then
+ systemd_dounit "${FILESDIR}/ivpn-service.service"
+ else
+ newinitd "${FILESDIR}/ivpn.initd" ivpn
+ fi
+}