summaryrefslogtreecommitdiff
path: root/net-vpn
diff options
context:
space:
mode:
authorroot <root@alpha.trunkmasters.com>2026-06-16 10:53:11 -0500
committerroot <root@alpha.trunkmasters.com>2026-06-16 10:53:11 -0500
commit8e65dc62f3f9f6b8f7b890fefedbf4ac05dfde0b (patch)
treebb1e83c18d1cc77cdebfc5aeb9b12ad39c9787b5 /net-vpn
parentf997c3ee588099e4f43e9ec845935868e3e60b8e (diff)
downloadbaldeagleos-repo-8e65dc62f3f9f6b8f7b890fefedbf4ac05dfde0b.tar.gz
baldeagleos-repo-8e65dc62f3f9f6b8f7b890fefedbf4ac05dfde0b.tar.xz
baldeagleos-repo-8e65dc62f3f9f6b8f7b890fefedbf4ac05dfde0b.zip
Adding metadata
Diffstat (limited to 'net-vpn')
-rw-r--r--net-vpn/cloudflare-warp/Manifest2
-rw-r--r--net-vpn/cloudflare-warp/cloudflare-warp-2026.1.150.0-r1.ebuild63
-rw-r--r--net-vpn/cloudflare-warp/cloudflare-warp-2026.4.1390.0.ebuild83
-rw-r--r--net-vpn/cloudflared/Manifest2
-rw-r--r--net-vpn/cloudflared/cloudflared-2026.6.0.ebuild (renamed from net-vpn/cloudflared/cloudflared-2026.5.2.ebuild)2
-rw-r--r--net-vpn/i2p/i2p-2.12.0.ebuild2
-rw-r--r--net-vpn/mullvadvpn-app/Manifest2
-rw-r--r--net-vpn/mullvadvpn-app/mullvadvpn-app-2026.3_beta3.ebuild156
-rw-r--r--net-vpn/networkmanager-strongswan/Manifest2
-rw-r--r--net-vpn/networkmanager-strongswan/networkmanager-strongswan-1.6.5.ebuild65
-rw-r--r--net-vpn/openconnect/Manifest2
-rw-r--r--net-vpn/openconnect/openconnect-9.20.ebuild154
-rw-r--r--net-vpn/tailscale/Manifest2
-rw-r--r--net-vpn/tailscale/tailscale-1.100.0.ebuild71
-rw-r--r--net-vpn/tailscale/tailscale-1.98.0.ebuild2
-rw-r--r--net-vpn/vopono/Manifest6
-rw-r--r--net-vpn/vopono/vopono-0.10.17.ebuild55
-rw-r--r--net-vpn/vopono/vopono-0.10.18.ebuild62
18 files changed, 665 insertions, 68 deletions
diff --git a/net-vpn/cloudflare-warp/Manifest b/net-vpn/cloudflare-warp/Manifest
index 8511d043e6f3..857bdcf0f3c6 100644
--- a/net-vpn/cloudflare-warp/Manifest
+++ b/net-vpn/cloudflare-warp/Manifest
@@ -1,3 +1,3 @@
-DIST cloudflare-warp-2026.1.150.0.x86_64.rpm 57413580 BLAKE2B 7e2d566a39ca4c1affc7f1226adc2de30191194598f039e1d28a478c10285bec52ee6ab42fc0b8b0fa6657da73ef6af2b2d421d695f60e6f364459d766154d99 SHA512 4f955d978e94feebdb1d67db3a5b0e7ab37069573be2e73fcb0910740a9c69e08eab88e04ce128faa7c88e3544fc3cf1c5cacafb447113f8ed52540a486019b4
DIST cloudflare-warp-2026.3.846.0.x86_64.rpm 57220073 BLAKE2B 3b9de22fd40833557798324682bbba981f40a901cc0afdfb4ea0eee0c7a45d5b131b4bfda13530992d3e8d77463986c8f1f864245951084bb08a3c17368ac1d6 SHA512 1db11bcf479b8511300a947cbe0051a4436227df586065a4ea8684e911208e0b4b38a03d113ab6af75c75211b07686562155dea30213f5d111a32879fe60b3cc
DIST cloudflare-warp_2026.4.1350.0_amd64.deb 77317298 BLAKE2B cd79ebbbd6f5310fa7c39bf33ef33d47c2589729c6c0cbd2286de17e289814c80b638dab788c0e95a233082c741a8f2be63f50f44301e3d9eab1e95ad7bbae95 SHA512 27737fbd009b88afa07326692fbc0cd3a7ab3b0c97440bf3305440dd8733114fbdaeef7fac00495587ba998821eafdb0d95ca479dfb67aafcf2501a4a05d537e
+DIST cloudflare-warp_2026.4.1390.0_amd64.deb 77333356 BLAKE2B 5e273b34283e43900fc1bb01ad0db7fdb6efb48c801a8e70eedc0bf705570e4564ae172bbb4f53aa46c598a00ae3ccbb80e8e08526191a5d9ccaa49ca4d414e7 SHA512 dae090db2da269a785bfc866926cee146b5bbf36155633b2d5e9767d9363e02b3fa71814f681ebf2b5f3814143172f4de516bb38a7343810f681441f85bfe66b
diff --git a/net-vpn/cloudflare-warp/cloudflare-warp-2026.1.150.0-r1.ebuild b/net-vpn/cloudflare-warp/cloudflare-warp-2026.1.150.0-r1.ebuild
deleted file mode 100644
index 0567c98a433c..000000000000
--- a/net-vpn/cloudflare-warp/cloudflare-warp-2026.1.150.0-r1.ebuild
+++ /dev/null
@@ -1,63 +0,0 @@
-# Copyright 2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit rpm systemd xdg desktop
-
-DESCRIPTION="Cloudflare Warp Client"
-HOMEPAGE="https://1.1.1.1"
-SRC_URI="
- https://downloads.cloudflareclient.com/v1/download/fedora35-intel/version/${PV}
- -> ${P}.x86_64.rpm
-"
-S="${WORKDIR}"
-
-LICENSE="all-rights-reserved"
-SLOT="0"
-KEYWORDS="-* ~amd64"
-IUSE="+gui"
-RESTRICT="bindist mirror"
-
-DEPEND="
- dev-libs/glib:2
- dev-libs/nspr
- dev-libs/nss
- net-firewall/nftables
- net-libs/libpcap
- sys-apps/dbus
- x11-libs/cairo
- gui? (
- x11-libs/gdk-pixbuf:2
- x11-libs/gtk+:3
- x11-libs/pango
- )
-"
-RDEPEND="${DEPEND}"
-
-QA_PREBUILT="
- usr/bin/warp-.*
-"
-
-src_unpack() {
- rpm_unpack ${A}
-}
-
-src_install() {
- dobin bin/warp-{cli,dex,diag,svc}
- systemd_dounit opt/cloudflare-warp/warp-svc.service
- newinitd "${FILESDIR}"/warp-svc.initd warp-svc
-
- if use gui; then
- dobin bin/{warp-desktop-svc,warp-taskbar}
- systemd_douserunit usr/lib/systemd/user/warp-desktop-svc.service
- domenu usr/share/applications/com.cloudflare.WarpTaskbar.desktop
-
- doicon -s scalable usr/share/icons/hicolor/scalable/apps/*.svg
- insinto /usr/share/warp/images
- doins usr/share/warp/images/*.png
-
- insinto /etc/xdg/autostart
- doins etc/xdg/autostart/com.cloudflare.WarpTaskbar.desktop
- fi
-}
diff --git a/net-vpn/cloudflare-warp/cloudflare-warp-2026.4.1390.0.ebuild b/net-vpn/cloudflare-warp/cloudflare-warp-2026.4.1390.0.ebuild
new file mode 100644
index 000000000000..dca13f106414
--- /dev/null
+++ b/net-vpn/cloudflare-warp/cloudflare-warp-2026.4.1390.0.ebuild
@@ -0,0 +1,83 @@
+# Copyright 2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit unpacker systemd xdg desktop
+
+DESCRIPTION="Cloudflare Warp Client"
+HOMEPAGE="https://1.1.1.1"
+SRC_URI="https://pkg.cloudflareclient.com/pool/jammy/main/c/cloudflare-warp/${PN}_${PV}_amd64.deb"
+S="${WORKDIR}"
+
+LICENSE="all-rights-reserved"
+SLOT="0"
+KEYWORDS="-* ~amd64"
+IUSE="+gui"
+RESTRICT="bindist mirror"
+
+DEPEND="
+ dev-libs/glib:2
+ dev-libs/nspr
+ dev-libs/nss
+ net-firewall/nftables
+ net-libs/libpcap
+ sys-apps/dbus
+ gui? (
+ app-accessibility/at-spi2-core:2
+ dev-libs/ayatana-ido
+ dev-libs/libayatana-appindicator
+ dev-libs/libayatana-indicator:3
+ dev-libs/libdbusmenu
+ media-libs/fontconfig
+ media-libs/harfbuzz
+ media-libs/libepoxy
+ net-libs/libsoup:3.0
+ net-libs/webkit-gtk:4.1
+ net-misc/curl
+ virtual/zlib
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf:2
+ x11-libs/gtk+:3[X]
+ x11-libs/pango
+ )
+"
+RDEPEND="${DEPEND}"
+BDEPEND="
+ app-admin/chrpath
+ dev-util/patchelf
+"
+
+QA_PREBUILT="
+ usr/bin/warp-.*
+ usr/libexec/warp/.*
+"
+
+src_prepare() {
+ default
+ # Fixup the library dependencies to match the ones in the system
+ patchelf --replace-needed libpcap.so.0.8 libpcap.so.1 "${S}"/bin/warp-dex || die
+ chrpath -d "${S}/usr/lib/warp/lib/crashpad_handler" || die
+ rm "${S}/usr/lib/warp/lib/libdartjni.so" || die
+}
+
+src_install() {
+ dobin bin/warp-{cli,dex,diag,svc}
+ domenu usr/share/applications/com.cloudflare.warp.desktop
+ systemd_dounit lib/systemd/system/warp-svc.service
+ newinitd "${FILESDIR}"/warp-svc.initd warp-svc
+
+ if use gui; then
+ mkdir -p "${D}"/usr/libexec/warp || die
+ cp -r "${S}"/usr/lib/warp/* "${D}"/usr/libexec/warp/ || die
+
+ dosym ../libexec/warp/warp-taskbar usr/bin/warp-taskbar
+ systemd_douserunit usr/lib/systemd/user/warp-taskbar.service
+ domenu usr/share/applications/com.cloudflare.WarpTaskbar.desktop
+
+ doicon -s scalable usr/share/icons/hicolor/scalable/apps/*.svg
+
+ insinto /usr/share/dbus-1/services
+ doins usr/share/dbus-1/services/com.cloudflare.WarpTaskbar.service
+ fi
+}
diff --git a/net-vpn/cloudflared/Manifest b/net-vpn/cloudflared/Manifest
index 1b03f4a38b67..771508c9d1f6 100644
--- a/net-vpn/cloudflared/Manifest
+++ b/net-vpn/cloudflared/Manifest
@@ -1,2 +1,2 @@
DIST cloudflared-2026.3.0.tar.gz 7099252 BLAKE2B a4198aa1b43603bd165f446dd18ed9b91932c8327c816853ca695595401259bf8c712feb12763d6950ee2b271f5eee441fdac72d1d27c205c209832775193efd SHA512 4d455bbe04d8b401ed4b3bf721d0ea9a0d4ecbce2ab4680cd83ee3a9fe7504598790cf3ae482901ff95ee8b872da8bd24f1ec8ac1ad783431f7e53c55ad9ee3c
-DIST cloudflared-2026.5.2.tar.gz 6790497 BLAKE2B c110ff4b1299a7491336bf01db45d4032f817343c0bafc29be97d2f5a21dc343eb53b7f3cb651057a0a920b99d6eea74b6213c1042a3fc4e88a9f817426da6cc SHA512 b64e4f98ea3408638eea259cbaa5e2a3381529c7bcc4dad0ffee388af8785bcf2c249d3d87ba602205bf693ab7a16e68859f9be66b63a2408a7964adf26b9b5a
+DIST cloudflared-2026.6.0.tar.gz 6799319 BLAKE2B 0000b6658885078598b92f0cb62962e515437500842d91337d7c0cc1c03258347bd81d3061e8e9d5403090ba5695a548c0e3d7b28a9ae9678ab250b71d4eb21f SHA512 8c62c5fba4c03b773a259d5f88985cd67d5e7678e7bd81363681ed94c7c9f1fb209fc7b7ec84e78e02f7e7d34d12390ce30c724c4b01fa67544b0489eb262bd8
diff --git a/net-vpn/cloudflared/cloudflared-2026.5.2.ebuild b/net-vpn/cloudflared/cloudflared-2026.6.0.ebuild
index 55809e3374e2..7ca8ddc89626 100644
--- a/net-vpn/cloudflared/cloudflared-2026.5.2.ebuild
+++ b/net-vpn/cloudflared/cloudflared-2026.6.0.ebuild
@@ -1,7 +1,7 @@
# Copyright 2025-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=8
+EAPI=9
inherit go-module
diff --git a/net-vpn/i2p/i2p-2.12.0.ebuild b/net-vpn/i2p/i2p-2.12.0.ebuild
index 258a1dd12f86..566cd00df6b7 100644
--- a/net-vpn/i2p/i2p-2.12.0.ebuild
+++ b/net-vpn/i2p/i2p-2.12.0.ebuild
@@ -17,7 +17,7 @@ SRC_URI="
LICENSE="Apache-2.0 Artistic BSD CC-BY-2.5 CC-BY-3.0 CC-BY-SA-3.0 EPL-1.0 GPL-2 GPL-3 LGPL-2.1 LGPL-3 MIT public-domain WTFPL-2"
SLOT="0"
-KEYWORDS="~amd64 ~arm64"
+KEYWORDS="amd64 ~arm64"
LANGS=(
ar az bg ca cs da de el en es es-AR et fa fi fr gl he hi hr hu id it ja ko ku mg nb nl nn pl pt pt-BR ro ru sk sl sq
sr sv tk tr uk vi zh zh-TW
diff --git a/net-vpn/mullvadvpn-app/Manifest b/net-vpn/mullvadvpn-app/Manifest
index 9e7604cf399d..701b13af9cc0 100644
--- a/net-vpn/mullvadvpn-app/Manifest
+++ b/net-vpn/mullvadvpn-app/Manifest
@@ -4,3 +4,5 @@ DIST MullvadVPN-2026.3-beta1_aarch64.rpm 86593117 BLAKE2B 3d2e013c2b1e49119f4827
DIST MullvadVPN-2026.3-beta1_x86_64.rpm 92416845 BLAKE2B 45ced52c61d304104b47d81271a562085afcbb91a5ea0b7eca9ec5664373f8414d223bf422ba3442266063988ac89070c31c0b9e0a9c7aab8b1793f8ba512def SHA512 eb0cc822df717bf74191801bf34ad24f21061e5e48e85524b3857945e7dc8a755fb69572d5aa90d67ad19d3c05823f5237100c746fca39dbbf0c95efa550f10c
DIST MullvadVPN-2026.3-beta2_aarch64.rpm 86583585 BLAKE2B a66d87100c8a2e649b9469a22a82a9b605b8fe23ef143d1fad046b08d8559e03d2ece03fd79bc981f24992f69bc796d0ba667c8ca0818f268a9dbf9ee9b6bf45 SHA512 b4c452c94f0b5985f0cef751ecdd51a1d08baa0d192ce0acd916d8702540a938371c7b5dae9beee88c5db4f2783560849354cf67776f58037f13f6ade1791fff
DIST MullvadVPN-2026.3-beta2_x86_64.rpm 92396141 BLAKE2B e9e7ba36229e36e9edaad2eae0e82decfa5837ff6d8f397824f0d76d798cbc39453af83d64eb1bc8dfcfe824be53cf6629ae1632f17a59263a4c7ebaee3bfb7e SHA512 f33f6977a0529b7f37270a55d717c4ff70c8a34f3219f627558903ac0c21b2a30cd263c5a922cfeed8355d3ca47c2e49703f7ac71f2733b264ce58149eb3ba80
+DIST MullvadVPN-2026.3-beta3_aarch64.rpm 86584745 BLAKE2B cfd5993130ab4fa9c26ddba78cbce68fe25931a0413dcc7243aeda8979e68e5fd833e99626b0e01084a4e201061cbd3de1032efb65ff9c75fccc9a81baf80142 SHA512 da7ff1c217cdee083c3414cf7c2d29bf1716b5ccf3a8bd0dd6ebfb56af261e98d8d799b87ad0f9470c69df76d1eb1093005b3c6c7ab2f477f07d8b9a3935632f
+DIST MullvadVPN-2026.3-beta3_x86_64.rpm 92417573 BLAKE2B b0dac745b7ed6e694216281bc43ebcc49fcbe5a1d574e3e297de1e9fa840ca502e292593f4d444c7e09e5551dc6d53e13455c89d9e798048bcfa6cc52fcbbc20 SHA512 02d352eb6dd1f5817d212467facdaa626aacdeba37bbb1544b30f8f08207bba00efd2e1079d98c31eec09e252fcd0e8b02b2fc912a1cf20621abefe5881543f6
diff --git a/net-vpn/mullvadvpn-app/mullvadvpn-app-2026.3_beta3.ebuild b/net-vpn/mullvadvpn-app/mullvadvpn-app-2026.3_beta3.ebuild
new file mode 100644
index 000000000000..3407daab5efc
--- /dev/null
+++ b/net-vpn/mullvadvpn-app/mullvadvpn-app-2026.3_beta3.ebuild
@@ -0,0 +1,156 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+RPM_COMPRESS_TYPE="xz"
+inherit desktop rpm systemd shell-completion xdg
+
+MYPV="${PV/_beta/-beta}"
+DESCRIPTION="Tool used to manage daemon setup"
+HOMEPAGE="https://github.com/mullvad/mullvadvpn-app https://mullvad.net/"
+SRC_URI="
+ amd64? ( https://github.com/mullvad/mullvadvpn-app/releases/download/${MYPV}/MullvadVPN-${MYPV}_x86_64.rpm )
+ arm64? ( https://github.com/mullvad/mullvadvpn-app/releases/download/${MYPV}/MullvadVPN-${MYPV}_aarch64.rpm )
+"
+
+S="${WORKDIR}"
+LICENSE="GPL-3"
+SLOT="0"
+
+# Betas are kept unkeyworded; users can opt in to testing by accepting '**' instead of '~amd64'/
+# '~arm64' keywords.
+#
+# See https://bugs.gentoo.org/966989
+if [[ "${PV}" != *_beta* ]]; then
+ KEYWORDS="-* ~amd64 ~arm64"
+fi
+
+RESTRICT="bindist mirror strip"
+
+RDEPEND="
+ app-accessibility/at-spi2-core:2
+ dev-libs/expat
+ dev-libs/glib:2
+ dev-libs/nspr
+ dev-libs/nss
+ media-libs/alsa-lib
+ media-libs/mesa
+ net-print/cups
+ sys-apps/dbus
+ x11-libs/cairo
+ x11-libs/gtk+:3
+ x11-libs/libdrm
+ x11-libs/libX11
+ x11-libs/libxcb
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libxkbcommon
+ x11-libs/libXrandr
+ x11-libs/pango
+ || (
+ net-firewall/nftables
+ net-firewall/iptables[nftables]
+ )
+"
+
+QA_PREBUILT="*"
+
+src_install() {
+ sed -i "s|SCRIPT_DIR=.*|SCRIPT_DIR=\"/opt/Mullvad VPN/\"|g" "${S}/opt/Mullvad VPN/mullvad-vpn" || die
+
+ # Using doins -r would strip executable bits from all binaries
+ cp -pPR opt "${D}"/ || die "Failed to copy files"
+ fperms +x "/opt/Mullvad VPN/chrome_crashpad_handler"
+ fperms 4755 "/opt/Mullvad VPN/chrome-sandbox"
+
+ dobin ./usr/bin/mullvad
+ dobin ./usr/bin/mullvad-daemon
+ dobin ./usr/bin/mullvad-exclude
+ dosym -r "/opt/Mullvad VPN/mullvad-vpn" /usr/bin/mullvad-vpn
+ dosym -r "/opt/Mullvad VPN/resources/mullvad-problem-report" /usr/bin/mullvad-problem-report
+
+ # mullvad-exclude uses cgroups to manage exclusions, which requires root permissions, but is
+ # also most often used to exclude graphical applications which can't or shouldn't run as root
+ # (i.e., can't be run under `sudo/doas /usr/bin/mullvad-exclude ...`, because `sudo`/`doas`
+ # change user). The setuid bit allows any user to exclude executables under their own UID.
+ fperms 4755 /usr/bin/mullvad-exclude
+
+ newinitd "${FILESDIR}"/mullvad-daemon.initd mullvad-daemon
+
+ systemd_newunit ./usr/lib/systemd/system/mullvad-daemon.service mullvad-daemon.service
+ systemd_newunit ./usr/lib/systemd/system/mullvad-early-boot-blocking.service mullvad-early-boot-blocking.service
+
+ newbashcomp ./usr/share/bash-completion/completions/mullvad mullvad
+ newfishcomp ./usr/share/fish/vendor_completions.d/mullvad.fish mullvad
+ newzshcomp ./usr/share/zsh/site-functions/_mullvad _mullvad
+
+ domenu ./usr/share/applications/mullvad-vpn.desktop
+ local x
+ for x in 16 32 48 64 128 256 512 1024; do
+ doicon -s "${x}" "./usr/share/icons/hicolor/${x}x${x}/apps/mullvad-vpn.png"
+ done
+}
+
+pkg_postrm() {
+ xdg_pkg_postrm
+
+ if [[ -z ${REPLACED_BY_VERSION} ]]; then
+ if ! command -v pgrep &>/dev/null || pgrep -f "mullvad-(daemon|gui)"; then
+ elog "Mullvad has been uninstalled. To stop the service,"
+ elog "1. Quit the Mullvad app"
+ elog " * Manually: 'Disconnect & quit' from the Mullvad menu"
+ elog " OR"
+ elog " * Command line: pkill -f mullvad-gui"
+ elog "2. Stop the daemon"
+ elog " * OpenRC: rc-service mullvad-daemon stop"
+ elog " OR"
+ elog " * systemd: systemctl stop mullvad-daemon"
+ elog " OR"
+ elog " * other: pkill -f mullvad-daemon"
+ fi
+ fi
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+
+ if [[ -n ${REPLACING_VERSIONS} ]]; then
+ if command -v pgrep &>/dev/null && pgrep -f "mullvad-(daemon|gui)" &>/dev/null; then
+ elog "Mullvad has been updated. To restart the service,"
+ elog "1. Restart the daemon"
+ elog " * OpenRC: rc-service mullvad-daemon restart"
+ elog " OR"
+ elog " * systemd: systemctl restart mullvad-daemon"
+ elog "2. Restart the app"
+ elog " * Manually: 'Disconnect & quit' from the Mullvad menu and relaunch using"
+ elog " your preferred desktop launcher"
+ elog " OR"
+ elog " * Command line: pkill -f mullvad-gui && '/opt/Mullvad VPN/mullvad-vpn' & disown"
+ else
+ elog "Mullvad has been updated. To start the service,"
+ elog "1. Start the daemon"
+ elog " * OpenRC: rc-service mullvad-daemon start"
+ elog " OR"
+ elog " * systemd: systemctl start mullvad-daemon"
+ elog "2. Launch the app"
+ elog " * Manually: use your preferred desktop launcher"
+ elog " OR"
+ elog " * Command line: '/opt/Mullvad VPN/mullvad-vpn' & disown"
+ fi
+ else
+ elog "Mullvad has been installed. To start the service,"
+ elog "1. Enable and start the daemon"
+ elog " * OpenRC: rc-update add mullvad-daemon default"
+ elog " rc-service mullvad-daemon start"
+ elog " OR"
+ elog " * systemd: systemctl enable mullvad-daemon"
+ elog " systemctl start mullvad-daemon"
+ elog "2. Launch the app"
+ elog " * Manually: use your preferred desktop launcher"
+ elog " OR"
+ elog " * Command line: '/opt/Mullvad VPN/mullvad-vpn' & disown"
+ fi
+}
diff --git a/net-vpn/networkmanager-strongswan/Manifest b/net-vpn/networkmanager-strongswan/Manifest
index 1d5f0a0f0808..029039bf35ae 100644
--- a/net-vpn/networkmanager-strongswan/Manifest
+++ b/net-vpn/networkmanager-strongswan/Manifest
@@ -1,2 +1,4 @@
DIST NetworkManager-strongswan-1.6.4.tar.bz2 347849 BLAKE2B 126e07e1a0678ae1e11c0c2e94117a6c448a5110da3e7ec9347b9cef522cbc1c196c9fc2d77599a180b1b0f6e3bd9d12b6ad2f7ced4ac24b2420e17b28b3641f SHA512 7bc8e671eb85f7e9f4e6f7bb440292adee10d5bc150dcf264af30c61edf4f4db664ab3322a787f4dcbd05f2412f67faee01faeb8bd754f8c91785548a5902cca
DIST NetworkManager-strongswan-1.6.4.tar.bz2.sig 833 BLAKE2B f0849ffa89def25df44dd3bfb3c55df6f0faea8b395ba2ae5fb3a783a01d5de6cd32d9f3e9c46e3ef7bd24e46e7bee8b6bfee4bdb9a455cd838f9278235a221e SHA512 ca4db624c036754d5d1429a198374dfe7d0225d05ed4b9f8bb27bd1d8ef01be48658b3ffa1775e4d910cd85cb31f20fca8c1f2d3a823089858a9a1a86187672a
+DIST NetworkManager-strongswan-1.6.5.tar.bz2 355492 BLAKE2B 4591c8eeb6831ae38978725b97cfda9a58f9cb2579130435e6020c00ca192b478cb6fe4e9d1033de203774177faec7b990ed943c75363d2a0b0a5694c02e90e4 SHA512 53ea1e796328cda3419cb0003be6f58f00f7816cdb6e622e7c7ff124e8a0d91f8ff60d059899165ce116cecd9ef9e2f87c908e44077b4fa95099412e11ac561f
+DIST NetworkManager-strongswan-1.6.5.tar.bz2.sig 833 BLAKE2B 95e2c3c58526bf51820a7295181ed9e468b7834f2fd94aa35ef630853419f8f12a433ea1ce9fe413069089d5202d8244b19d5ef7cc5495059307f404a1e24c56 SHA512 b0e5ca881386e9b13805c4bf19dba3e38d2c69aa1b4cee14944b0f15b3be5c02c78a00f2e4a80c26d598682844bbfd4677f4bd2be0a4e21dba18a8e2d71630cd
diff --git a/net-vpn/networkmanager-strongswan/networkmanager-strongswan-1.6.5.ebuild b/net-vpn/networkmanager-strongswan/networkmanager-strongswan-1.6.5.ebuild
new file mode 100644
index 000000000000..57d6141df3ac
--- /dev/null
+++ b/net-vpn/networkmanager-strongswan/networkmanager-strongswan-1.6.5.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/networkmanager-strongswan.asc
+inherit autotools verify-sig
+
+MY_PN="NetworkManager"
+MY_P="${P/networkmanager/"${MY_PN}"}"
+
+DESCRIPTION="NetworkManager StrongSwan plugin"
+HOMEPAGE="https://www.strongswan.org/"
+SRC_URI="
+ https://download.strongswan.org/${MY_PN}/${MY_P}.tar.bz2
+ verify-sig? ( https://download.strongswan.org/${MY_PN}/${MY_P}.tar.bz2.sig )
+"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="gtk4"
+
+RDEPEND="
+ app-crypt/libsecret
+ >=net-libs/libnma-1.1.0
+ net-misc/networkmanager
+ >=net-vpn/strongswan-5.8.3[networkmanager]
+ !gtk4? ( x11-libs/gtk+:3 )
+ gtk4? (
+ net-libs/libnma
+ gui-libs/gtk:4
+ )
+"
+
+DEPEND="${RDEPEND}"
+
+BDEPEND="
+ dev-util/intltool
+ virtual/pkgconfig
+ verify-sig? ( sec-keys/openpgp-keys-networkmanager-strongswan )
+"
+
+src_prepare() {
+ default
+
+ eautoreconf
+}
+
+src_configure() {
+ local myeconfargs=(
+ # Don't enable all warnings, as some are treated as errors and the compilation will fail
+ --disable-more-warnings
+ --disable-static
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+
+ find "${D}" -name '*.la' -delete || die
+}
diff --git a/net-vpn/openconnect/Manifest b/net-vpn/openconnect/Manifest
index 24ba24e5dd3f..75e1a380df70 100644
--- a/net-vpn/openconnect/Manifest
+++ b/net-vpn/openconnect/Manifest
@@ -1,2 +1,4 @@
DIST openconnect-9.12.tar.gz 2843115 BLAKE2B cd5f65ae0d67bece3e5aacdfb4c5c73c893d45d756554a1b6e39e66af5c6a171735d535ca7b16ed94244d02798d3c43a45b252ba05ddb0f3505f1fafc2ec0de9 SHA512 5c622e8bdfac3d21b5881660444e5d2b84e9463a99493d42cbfb480c3aa3972076bdeeb618aca02abed68e31dbeadcb66fb1c370e62a20f20cd544753c7ac48e
DIST openconnect-9.12.tar.gz.asc 833 BLAKE2B c974439cef74eea9698a0b565c0d49c6026a0afe322739d5adfee2d484279d7366c6c3c703019ff2492eb3d5725de8e0fe4505d9e3a0e5b6d36201974d20a223 SHA512 ade33209a4c17bbdfd0bea7490588b248c36c4da56a9aec60818ed6c96bc8c3570b1f2ac2685003122a1e52dd9d24e4b678d77e001c752461649114167a7304c
+DIST openconnect-9.20.tar.gz 2964354 BLAKE2B bb0231445cfc1b1c713ab6592e323111ba303f6d27fc067f52ac0dbcf51f2c67572879126efbb65b571cae5e0048aac8a8260093e0f24489444d403df571baad SHA512 69532011d7d5462cdb5726213c66b6fd0025d8ba7a02d84f8ffabe9082bfecb9aa59f06426fbeab599bd98c952669018747a1657937da4a4df7d201f040edd93
+DIST openconnect-9.20.tar.gz.asc 833 BLAKE2B a4958e28021b2a1de1538c0c0c8ab21dd2f3ef8458b6039eb63d40cb2818640a004e1409b51890d751631a17d4e38ec6f740de43c97e9c427f8d9c12b9327f65 SHA512 188433840498d4db1ba0fcd92a78deb01f00d474830d5c0ed5c9db9336453b64cf56d9a7b53f8fad1ee74128cb79580c085037b72edae0121ce55d4088a5fc86
diff --git a/net-vpn/openconnect/openconnect-9.20.ebuild b/net-vpn/openconnect/openconnect-9.20.ebuild
new file mode 100644
index 000000000000..d331ad23cc8c
--- /dev/null
+++ b/net-vpn/openconnect/openconnect-9.20.ebuild
@@ -0,0 +1,154 @@
+# Copyright 2011-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{13..14} )
+PYTHON_REQ_USE="xml(+)"
+
+inherit linux-info python-any-r1
+
+if [[ ${PV} == 9999 ]]; then
+ EGIT_REPO_URI="https://gitlab.com/openconnect/openconnect.git"
+ inherit git-r3 autotools
+else
+ inherit verify-sig
+ SRC_URI="https://www.infradead.org/openconnect/download/${P}.tar.gz
+ verify-sig? ( https://www.infradead.org/openconnect/download/${P}.tar.gz.asc )"
+ KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
+fi
+
+DESCRIPTION="Free client for Cisco AnyConnect SSL VPN software"
+HOMEPAGE="https://www.infradead.org/openconnect/"
+
+LICENSE="LGPL-2.1 GPL-2"
+SLOT="0/5"
+IUSE="doc +gnutls gssapi libproxy lz4 nls pskc selinux smartcard stoken test"
+RESTRICT="!test? ( test )"
+
+COMMON_DEPEND="
+ dev-libs/json-parser:0=
+ dev-libs/libxml2:=
+ virtual/zlib:=
+ app-crypt/p11-kit
+ !gnutls? (
+ >=dev-libs/openssl-1.0.1h:0=
+ dev-libs/libp11
+ )
+ gnutls? (
+ app-crypt/trousers
+ app-misc/ca-certificates
+ dev-libs/nettle
+ >=net-libs/gnutls-3.6.13:0=
+ dev-libs/libtasn1:0=
+ app-crypt/tpm2-tss:=
+ )
+ gssapi? ( virtual/krb5 )
+ libproxy? ( net-libs/libproxy )
+ lz4? ( app-arch/lz4:= )
+ nls? ( virtual/libintl )
+ pskc? ( sys-auth/oath-toolkit[pskc(+)] )
+ smartcard? ( sys-apps/pcsc-lite:0= )
+ stoken? ( app-crypt/stoken )
+"
+DEPEND="${COMMON_DEPEND}
+ test? (
+ net-libs/socket_wrapper
+ sys-libs/uid_wrapper
+ !gnutls? ( dev-libs/openssl:0[weak-ssl-ciphers(-)] )
+ )
+"
+RDEPEND="${COMMON_DEPEND}
+ sys-apps/iproute2
+ >=net-vpn/vpnc-scripts-20210402-r1
+ selinux? ( sec-policy/selinux-vpn )
+"
+BDEPEND="
+ virtual/pkgconfig
+ doc? ( ${PYTHON_DEPS} sys-apps/groff )
+ nls? ( sys-devel/gettext )
+ test? ( net-vpn/ocserv )
+"
+
+if [[ ${PV} != 9999 ]]; then
+ BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-dwmw2 )"
+ VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/dwmw2@kernel.org.key"
+fi
+
+QA_CONFIG_IMPL_DECL_SKIP=( memset_s )
+
+CONFIG_CHECK="~TUN"
+
+pkg_pretend() {
+ check_extra_config
+}
+
+pkg_setup() {
+ :
+}
+
+src_prepare() {
+ default
+ if [[ ${PV} == 9999 ]]; then
+ eautoreconf
+ fi
+}
+
+src_configure() {
+ if use doc; then
+ python_setup
+ else
+ export ac_cv_path_PYTHON=
+ fi
+
+ # Used by tests if userpriv is disabled
+ addwrite /run/netns
+
+ local myconf=(
+ --disable-dsa-tests
+ $(use_enable nls)
+ --disable-static
+ $(use_with !gnutls openssl)
+ $(use_with gnutls)
+ $(use_with libproxy)
+ $(use_with lz4)
+ $(use_with gssapi)
+ $(use_with pskc libpskc)
+ $(use_with smartcard libpcsclite)
+ $(use_with stoken)
+ --with-vpnc-script="${EPREFIX}/etc/vpnc/vpnc-script"
+ --without-builtin-json
+ --without-java
+ )
+
+ econf "${myconf[@]}"
+}
+
+src_test() {
+ local charset
+ for charset in UTF-8 ISO-8859-2; do
+ if [[ $(LC_ALL=cs_CZ.${charset} locale charmap 2>/dev/null) != ${charset} ]]; then
+ # If we don't have valid cs_CZ locale data, auth-nonascii will fail.
+ # Force a test skip by exiting with status 77.
+ sed -i -e '2i exit 77' tests/auth-nonascii || die
+ break
+ fi
+ done
+ addwrite /proc
+ default
+}
+
+src_install() {
+ default
+ find "${ED}" -name '*.la' -delete || die
+
+ dodoc "${FILESDIR}"/README.OpenRC
+
+ newconfd "${FILESDIR}"/openconnect.confd openconnect
+ newinitd "${FILESDIR}"/openconnect.initd openconnect
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/openconnect.logrotate openconnect
+
+ keepdir /var/log/openconnect
+}
diff --git a/net-vpn/tailscale/Manifest b/net-vpn/tailscale/Manifest
index ef883ca2d3db..77e2e2dc63a9 100644
--- a/net-vpn/tailscale/Manifest
+++ b/net-vpn/tailscale/Manifest
@@ -1,3 +1,5 @@
+DIST tailscale-1.100.0-vendor.tar.xz 41768908 BLAKE2B 95e9b9db035a339b46d27f13a408e3a9fcb56fecccd6c42426dd09bea805620b09f52409f7ab143aa572bc81ff5de6f5e79da3f502744bc6b3e82174d2bd3783 SHA512 246cf5df9eda04e253b123db456f456f255eb5b7204faaa9e4ed6685aedb00fc734d80ddfc2c6cc7389e29bb1a2185794344748e55a49a86babd64420621ed0d
+DIST tailscale-1.100.0.tar.gz 4889482 BLAKE2B 3e1bea49fa28d218600ef57436d043b80e7da67cf17b80f582abe144b4561ecab44f8cad4b946982b9b0db3b9cbb7c35cf9cece31e52a3dc3b4670ff8507369c SHA512 2453924da09a660a17b122857155ed27906d892378f4f76f12ac5d351a305d865afbd7fb90e6de847f70766ae761abbfb848c74373efea5a7dce29ab87f92c71
DIST tailscale-1.82.5-deps.tar.xz 265161016 BLAKE2B eb50d34ecda207f623efe213c81f38d39953c8c984a0d35ede0b052ae9cc021404d3f596c5e4c74cd60b68c31d9873b60ac98ca600216fd157f42c9d27eb103d SHA512 877fedabdac139dfb73395ff27d915139c250f6308920cb57974b1d0d32c47ef14d9cc4dc47e89ce32adea36d7c558ee42caddac317f145f62ecfd59af493c22
DIST tailscale-1.82.5.tar.gz 3793962 BLAKE2B 49ea1f878ce2ff6198d6ced1e4f49e557e7b1b9e2a2dd65079d5343aa46e57eee23b9d24561771c06af28d28cde4139d445e05e5d5c24f715ffc54b07c905050 SHA512 bed02f09c4905cba13fd3de3d45e027511420d76ece211312e153b6e50d8a10d2fb968a09ec1121f2150d414a74ca128430740173c16c0bef2696d141496849a
DIST tailscale-1.84.3-deps.tar.xz 265133640 BLAKE2B 4c041513f2c9c86f58e1ec449a67eaed6bff1cba0ee5d615eae45a65b751caf5c0a65843d6547d62c34b7bd766d871db78e9eb688159e6324ec93783f073fec1 SHA512 cc61248ebd49cba634bde39278f4eb9574d2e958a6751b0b956cb4f453cb2506895f3b9f70c6795f1aaf13401794edd1800611b7487de9f5dd219c7992b4adac
diff --git a/net-vpn/tailscale/tailscale-1.100.0.ebuild b/net-vpn/tailscale/tailscale-1.100.0.ebuild
new file mode 100644
index 000000000000..c04ae9001993
--- /dev/null
+++ b/net-vpn/tailscale/tailscale-1.100.0.ebuild
@@ -0,0 +1,71 @@
+# Copyright 2020-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module linux-info shell-completion systemd sysroot tmpfiles
+
+# They should be updated on every bump.
+VERSION_GIT_HASH="c811bb19bf3b0c89061ac7b7a073f6cd23b504d0"
+VERSION_MINOR=$(ver_cut 2)
+VERSION_SHORT=${PV}
+VERSION_LONG=${PV}-t${VERSION_GIT_HASH::9}
+
+DESCRIPTION="Tailscale vpn client"
+HOMEPAGE="https://tailscale.com"
+SRC_URI="https://github.com/tailscale/tailscale/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://github.com/gentoo-golang-dist/${PN}/releases/download/v${PV}/${P}-vendor.tar.xz"
+
+LICENSE="MIT"
+# Dependent licenses
+LICENSE+=" "
+# Dependent licenses
+LICENSE+=" Apache-2.0 BSD BSD-2 ISC MIT MPL-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+RESTRICT="test"
+
+CONFIG_CHECK="~TUN"
+
+RDEPEND="|| ( net-firewall/iptables net-firewall/nftables )"
+BDEPEND=">=dev-lang/go-1.26.4"
+
+src_compile() {
+ # This translates the build command from upstream's build_dist.sh to an
+ # ebuild equivalent.
+ local go_ldflags=(
+ -X tailscale.com/version.longStamp=${VERSION_LONG}
+ -X tailscale.com/version.shortStamp=${VERSION_SHORT}
+ -X tailscale.com/version.gitCommitStamp=${VERSION_GIT_HASH}
+ )
+ ego build -tags xversion -ldflags "${go_ldflags[*]}" -o bin/ ./cmd/tailscale ./cmd/tailscaled
+
+ einfo "generating shell completion files"
+ sysroot_try_run_prefixed ./bin/tailscale completion bash > ${PN}.bash || die
+ sysroot_try_run_prefixed ./bin/tailscale completion zsh > ${PN}.zsh || die
+ sysroot_try_run_prefixed ./bin/tailscale completion fish > ${PN}.fish || die
+}
+
+src_install() {
+ dosbin bin/tailscaled
+ dobin bin/tailscale
+
+ systemd_dounit cmd/tailscaled/{tailscaled.service,tailscale-online.target,tailscale-wait-online.service}
+ insinto /etc/default
+ newins cmd/tailscaled/tailscaled.defaults tailscaled
+ keepdir /var/lib/${PN}
+ fperms 0750 /var/lib/${PN}
+
+ newtmpfiles "${FILESDIR}/${PN}.tmpfiles" ${PN}.conf
+
+ newinitd "${FILESDIR}/${PN}d.initd" ${PN}
+ newconfd "${FILESDIR}/${PN}d.confd" ${PN}
+
+ [[ -s ${PN}.bash ]] && newbashcomp ${PN}.bash ${PN}
+ [[ -s ${PN}.zsh ]] && newzshcomp ${PN}.zsh _${PN}
+ [[ -s ${PN}.fish ]] && dofishcomp ${PN}.fish
+}
+
+pkg_postinst() {
+ tmpfiles_process ${PN}.conf
+}
diff --git a/net-vpn/tailscale/tailscale-1.98.0.ebuild b/net-vpn/tailscale/tailscale-1.98.0.ebuild
index 0a345d0b15f5..6fc571fd78ba 100644
--- a/net-vpn/tailscale/tailscale-1.98.0.ebuild
+++ b/net-vpn/tailscale/tailscale-1.98.0.ebuild
@@ -20,7 +20,7 @@ LICENSE="MIT"
# Dependent licenses
LICENSE+=" Apache-2.0 BSD BSD-2 ISC MIT MPL-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+KEYWORDS="amd64 ~arm arm64 ~ppc64 ~riscv ~x86"
RESTRICT="test"
CONFIG_CHECK="~TUN"
diff --git a/net-vpn/vopono/Manifest b/net-vpn/vopono/Manifest
index 7102e064accb..598780612f47 100644
--- a/net-vpn/vopono/Manifest
+++ b/net-vpn/vopono/Manifest
@@ -2,3 +2,9 @@ DIST vopono-0.10.15-crates.tar.xz 32410040 BLAKE2B 1b972be674a89777677a42e1114cd
DIST vopono-0.10.15.tar.gz 2167410 BLAKE2B 1950f12203e4c2cec17b2e66c14830affd29852b27a4eaf7586c6af02f6aef1695e80e235b2751bb2d45b657732b4aff313f4de102f4ff79f089862fdd280c17 SHA512 38c9e2a47273f81f5fc7f512a2c83818dc398ad54a650ecb426fa1ec219d3407694f3d1cd74b5743f8f76f31a242ded4dc425d53d8f87e5143add44159f378f0
DIST vopono-0.10.16-crates.tar.xz 37850028 BLAKE2B df1a40774fea61ff7588f817e1543e79b4cce213a4ee00f76ac94d85c72ccf838f8771f99c5ed177a3e21ef685a816c221b389a5f594192ecc3fce3437152ed5 SHA512 58d77d64c21408672e8cb9b3987d6edd928a08e8d07a19ebeb95e4f55dda6d65b410ea4ec2306b11c6ee4f8c79f179e65a0cc65e70cba91e4eb6874d984d2816
DIST vopono-0.10.16.tar.gz 2171020 BLAKE2B da2e26030bb12b26ee8feaab21e98335de618b88dce79a5278fe503fa0cb709f2541b4dc60dd2c32ce53e297f53bfd5c7f4260c34142d6517272fdd5710c23ee SHA512 f69a8d837b9bed88ff97b7f1a3b8743e6693a51c2bf25ae0c3b8a1288703e6defb5ebc5294625627d9089c0ea516caaa0733c51b54bab42f3529c420aa921a14
+DIST vopono-0.10.17-crates.tar.xz 36044800 BLAKE2B 75e6b93805b3195111f519ec9c10d9781f4bc8d6816b0c4e1bfc07487ed66a9041a120bd45252f6ed72c1ffc0a1be8b734e800d0f0934bda803c31fb2df7abba SHA512 6e90edfe38283a6bfb4af2db3bb2cef84d7928cafb72cb99ee0c8a2f058cbccbcffe2a13036c589bf1b3ea1a304797e845fefd544a3f7796bf419dfb83659f71
+DIST vopono-0.10.17.tar.gz 2722217 BLAKE2B 33f219d198acced787a5d0eeae1eae9236fb9e3b822e1bf6c3f52040740ea43c3281e8bf52f517cc2221d008702ebb68c5b19b9d825197df572f974a5bfdbc76 SHA512 9293f0928cdc5e9bb25a93021b5bfe50c71f4825b3ed430f88e8bba01468e1a3f9b2b4200e474f870aa6ced1167cfd8febefd5fa36dc5d8ed788c9564435a8fa
+DIST vopono-0.10.18-crates.tar.xz 36065692 BLAKE2B ae376258cea1c7f3c7161160e7fd5669247659e25a3dd9fb974070f58f4484d99fec437728e683fda06320ecbd87c63e8954c36e9c2247b1375643cdf20edf27 SHA512 afe562dda21c075ba194f96737dc7376fbf018c679997dafca09e5fbd34f5782ac4cf5a47d70183351127c8b8983ebdb51efeffdf432260fe692889a1c21270e
+DIST vopono-0.10.18.tar.gz 3254682 BLAKE2B a982a93e6b7c943be8ceb9127cd81ba2f339a727ab22de2e8b5f85d9723870d02897818d11d00864c72af05531a3eeb07e1964d048c01a0707346ced0d866a0d SHA512 1fd1277f45cab00f3d4e4e265c61a4088e61f4c11e6a1c4b701b43784f4886782f1f9e5817966f9ed4ad7948613ad49f51cdf19708da4646be0931d6c898b496
+DIST vopono-gui-0.1.0-crates.tar.xz 46951260 BLAKE2B 01c88705b7cdfd69ebae947b51c69d6c691347b917c2e71d164089a895388823e876ff82e39afe8f5d7a8caabf7d99a32d34ee0733ef549bc953e22673395b23 SHA512 772e544fb8fb8d263e33c9a52dc51815beb139a4fb81b1b334e773358ebfe2c7f0904fd56c5203f4634fbfbdb3441f8a538efaf41b9cd5b2decdea91913d5a48
+DIST vopono-gui-0.1.1-crates.tar.xz 46987372 BLAKE2B 4a4c49bb2b84a0916e380d003de653fffdb5bb5a61d11fd8a3427c4a9a65395603aa0481deaf18afde766ff9e042039cf990072e4d3ae104b784438e136704d6 SHA512 1a7082baf5a80fd85341ccd44b86bf5793009bbc066bfd8e54de7e516a2995a904c760d8841f421eda889e20eebef287c5f69e93e3a2257ad9485b905b900455
diff --git a/net-vpn/vopono/vopono-0.10.17.ebuild b/net-vpn/vopono/vopono-0.10.17.ebuild
new file mode 100644
index 000000000000..ebefff59ae36
--- /dev/null
+++ b/net-vpn/vopono/vopono-0.10.17.ebuild
@@ -0,0 +1,55 @@
+# Copyright 2025-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+RUST_MIN_VER="1.95.0"
+VOPONO_GUI_VER="0.1.0"
+
+inherit cargo optfeature systemd
+
+DESCRIPTION="Launch applications via VPN tunnels using temporary network namespaces"
+HOMEPAGE="https://github.com/jamesmcm/vopono"
+SRC_URI="https://github.com/jamesmcm/vopono/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://github.com/gentoo-crate-dist/vopono/releases/download/${PV}/${P}-crates.tar.xz"
+SRC_URI+=" gui? ( https://dev.gentoo.org/~juippis/distfiles/vopono-gui-${VOPONO_GUI_VER}-crates.tar.xz )"
+
+LICENSE="GPL-3+"
+# Dependent crate licenses
+LICENSE+=" Apache-2.0 BSD Boost-1.0 CC0-1.0 ISC MIT MPL-2.0 Unicode-3.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+IUSE="gui"
+
+# VPN backends sorted by preference.
+RDEPEND="|| (
+ net-vpn/openvpn
+ net-vpn/wireguard-tools
+ net-vpn/openfortivpn
+ )
+ app-arch/xz-utils
+ gui? (
+ dev-libs/libayatana-appindicator
+ virtual/udev
+ x11-libs/gtk+:3
+ x11-misc/xdotool
+ )"
+
+src_compile() {
+ cargo_src_compile
+ use gui && cargo_src_compile --manifest-path vopono-gui/Cargo.toml
+}
+
+src_install() {
+ cargo_src_install
+ einstalldocs
+ dodoc USERGUIDE.md
+ systemd_dounit "${FILESDIR}"/vopono-daemon.service
+
+ use gui && dobin "${S}"/vopono-gui/target/release/vopono-gui
+}
+
+pkg_postinst() {
+ optfeature "using vopono without daemon mode" app-admin/sudo
+}
diff --git a/net-vpn/vopono/vopono-0.10.18.ebuild b/net-vpn/vopono/vopono-0.10.18.ebuild
new file mode 100644
index 000000000000..d5b9f6edca14
--- /dev/null
+++ b/net-vpn/vopono/vopono-0.10.18.ebuild
@@ -0,0 +1,62 @@
+# Copyright 2025-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+RUST_MIN_VER="1.95.0"
+VOPONO_GUI_VER="0.1.1"
+
+inherit cargo desktop optfeature systemd
+
+DESCRIPTION="Launch applications via VPN tunnels using temporary network namespaces"
+HOMEPAGE="https://github.com/jamesmcm/vopono"
+SRC_URI="https://github.com/jamesmcm/vopono/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://github.com/gentoo-crate-dist/vopono/releases/download/${PV}/${P}-crates.tar.xz"
+SRC_URI+=" gui? ( https://dev.gentoo.org/~juippis/distfiles/vopono-gui-${VOPONO_GUI_VER}-crates.tar.xz )"
+
+LICENSE="GPL-3+"
+# Dependent crate licenses
+LICENSE+=" Apache-2.0 BSD Boost-1.0 CC0-1.0 ISC MIT MPL-2.0 Unicode-3.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+IUSE="gui"
+
+# VPN backends sorted by preference.
+RDEPEND="|| (
+ net-vpn/openvpn
+ net-vpn/wireguard-tools
+ net-vpn/openfortivpn
+ )
+ app-arch/xz-utils
+ gui? (
+ dev-libs/glib:2
+ virtual/udev
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf:2
+ x11-libs/gtk+:3
+ x11-libs/pango
+ x11-misc/xdotool:=
+ )"
+
+src_compile() {
+ cargo_src_compile
+ use gui && cargo_src_compile --manifest-path vopono-gui/Cargo.toml
+}
+
+src_install() {
+ cargo_src_install
+ einstalldocs
+ dodoc USERGUIDE.md
+ systemd_dounit "${FILESDIR}"/vopono-daemon.service
+
+ if use gui ; then
+ dobin "${S}"/vopono-gui/target/release/vopono-gui
+ domenu "${S}"/vopono-gui/vopono-gui.desktop
+ newicon "${S}"/vopono-gui/logos/badge.png vopono-gui.png
+ fi
+}
+
+pkg_postinst() {
+ optfeature "using vopono without daemon mode" app-admin/sudo
+}