repo/proj/guru:dev commit in: net-proxy/Throne/, net-proxy/Throne/files/

"Pavel Sobolev" <contact-2GWvd5oGOoG/[email protected]>
Newsgroups gmane.linux.gentoo.cvs
Message-ID <1786282737.0a54e58ae1d7aa666e018f507896ad5884228cdf.contact@gentoo>
commit:     0a54e58ae1d7aa666e018f507896ad5884228cdf
Author:     Pavel Sobolev <contact <AT> paveloom <DOT> dev>
AuthorDate: Sun Aug  9 13:26:13 2026 +0000
Commit:     Pavel Sobolev <contact <AT> paveloom <DOT> dev>
CommitDate: Sun Aug  9 13:38:57 2026 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=0a54e58a

net-proxy/Throne: add 1.2.4

Signed-off-by: Pavel Sobolev <contact <AT> paveloom.dev>

 net-proxy/Throne/Manifest                          |  2 +
 net-proxy/Throne/Throne-1.2.4.ebuild               | 94 ++++++++++++++++++++++
 .../files/Throne-1.2.4-use-system-QHotkey.patch    | 40 +++++++++
 3 files changed, 136 insertions(+)

diff --git a/net-proxy/Throne/Manifest b/net-proxy/Throne/Manifest
index 83421faafa..fc0e6b14a0 100644
--- a/net-proxy/Throne/Manifest
+++ b/net-proxy/Throne/Manifest
@@ -2,3 +2,5 @@ DIST Throne-1.1.6-deps.tar.xz 188144812 BLAKE2B 64b1dbf7b4528ca3fc9ff1f42009f7f9
 DIST Throne-1.1.6.tar.gz 6024688 BLAKE2B 4b8563f36b8b1ff868b5ea309216cce11bf53bf4ef0e57a621efe468f1776799bb3be636b07b916ccf05795a57274b2053dccd760e7fabc7e2313bedd637672f SHA512 1b84ded6596473822e29bc4a27895cb68ab58c50c51e7aa0102bc107f4b92dd899f5cfefef9cbda96506afd134ceae847c025a9fc6fa9486d1cc251e5037a115
 DIST Throne-1.2.1-deps.tar.xz 189110748 BLAKE2B 2d7bcf7f3145dabd6cc1e34dbfe325d43277a69e63f140a13c04e47e152172ff246ab15ad168dfd4fcb64a23e9f073e2472862cd475f6d09f5a62c8ebdfc0765 SHA512 a6442512cd627b1f5036df5ebe8bd60b166060cd66c73a2ee0911ec81e1adcb47fdf9ca0da20b51744a12c8342ee4cacd8bafc02787f11aa6fded358a5bbe03b
 DIST Throne-1.2.1.tar.gz 6176523 BLAKE2B d91af46155725e8a24886985a56f69e5708e145d71c1b44d2534bf46f5d949e08069103a065452e4239d9c7e020a7eae76d4f3df922ab42a63e11dddf332e19b SHA512 f8669405a5fea483cff62e8050967cfa8cefc75c6b4256698516c3bc553756cb01085933f8cff4f4475d958c131e45437e2ecbd8e291c6badf8551591192b7c5
+DIST Throne-1.2.4-deps.tar.xz 189156300 BLAKE2B d9ab222eb89b6da847d4bef064d7bb77eb68001c2b42b8175cb24e7b35ae853cc3645d596e3471a9703466ca873e7ac797a892094e8c83f1d61b58b96b101863 SHA512 7182687f30ef47e1294d175861a1040ec7c19190842bc37abb5a6de69c32906f8c6b7fb28caae4e5319ad209de6e0fe2fdada782fc9c62b95005bdf3fb4ed3dc
+DIST Throne-1.2.4.tar.gz 6277085 BLAKE2B 4caf600f0235e2833726f50596d18c413c003751da16bfb7bed66761ab90f6732ef05ec0e7b8933bbd57ecbf022472362575b326f148714eadfa9c525a729737 SHA512 e7c90978eebf6d44e8db99f9f7bc67add22bdfd1aeffb094ceb3cb7a50d3fed24b91ca7a316ddaf1c59e249495ca62e0861099b136c6136b008d72dd55728e66

diff --git a/net-proxy/Throne/Throne-1.2.4.ebuild b/net-proxy/Throne/Throne-1.2.4.ebuild
new file mode 100644
index 0000000000..db25d73eff
--- /dev/null
+++ b/net-proxy/Throne/Throne-1.2.4.ebuild
@@ -0,0 +1,94 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake desktop go-module xdg
+
+DESCRIPTION="Qt based cross-platform GUI proxy configuration manager"
+HOMEPAGE="https://github.com/throneproj/Throne"
+SRC_URI="
+	https://github.com/throneproj/Throne/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz
+	https://gitlab.com/api/v4/projects/69517529/packages/generic/${PN}/${PV}/${P}-deps.tar.xz
+"
+
+# The first line is for the C++ code, the second line is for the Go module
+LICENSE="
+	GPL-3+ MIT
+	0BSD Apache-2.0 BSD ISC MIT MPL-2.0 Unlicense
+"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+	dev-libs/protobuf:=
+	dev-libs/qhotkey
+	dev-qt/qtbase:6[dbus,network,widgets]
+	media-libs/quirc:=
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+	dev-go/protobuf-go
+	dev-go/protoc-gen-go-grpc
+	>=dev-lang/go-1.26
+	dev-qt/qttools:6[linguist]
+"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-1.1.1-dont-treat-warnings-as-errors.patch"
+	"${FILESDIR}/${PN}-1.1.1-use-system-quirc.patch"
+	"${FILESDIR}/${PN}-1.2.4-use-system-QHotkey.patch"
+)
+
+src_unpack() {
+	# The vendor tarball is unpacked to `${S}/core/server`, but `go-module_src_unpack`
+	# requires the `vendor` directory to be present at `${S}/vendor`
+	mkdir -p "${S}/vendor" || die
+
+	go-module_src_unpack
+}
+
+src_prepare() {
+	rm -r 3rdparty/{QHotkey,quirc} || die
+
+	sed '/^cmake_minimum_required/ s/(.*)/(VERSION 3.10)/' \
+		-i 3rdparty/SQLiteCpp/CMakeLists.txt || die
+
+	cmake_src_prepare
+}
+
+src_configure() {
+	local mycmakeargs=(
+		-DNKR_PACKAGE=true
+	)
+
+	cmake_src_configure
+}
+
+src_compile() {
+	cmake_src_compile
+
+	cd "${S}/core/server" || die
+
+	pushd gen || die
+	protoc -I . --go_out=. --go-grpc_out=. libcore.proto
+	popd || die
+
+	VERSION_SINGBOX=$(go list -m -f '{{.Version}}' github.com/sagernet/sing-box)
+	ego build \
+		-trimpath -ldflags "-checklinkname=0 \
+		-X 'github.com/sagernet/sing-box/constant.Version=${VERSION_SINGBOX}' \
+		-X 'internal/godebug.defaultGODEBUG=multipathtcp=0'" \
+		-tags "with_clash_api,with_gvisor,with_quic,with_wireguard,with_utls,with_dhcp,with_tailscale,badlinkname,tfogo_checklinkname0"
+}
+
+src_install() {
+	exeinto /usr/lib/Throne
+	doexe "${BUILD_DIR}/Throne"
+	doexe core/server/ThroneCore
+
+	dosym -r /usr/lib/Throne/Throne /usr/bin/Throne
+
+	doicon -s 256 res/public/Throne.png
+	domenu "${FILESDIR}/Throne.desktop"
+}

diff --git a/net-proxy/Throne/files/Throne-1.2.4-use-system-QHotkey.patch b/net-proxy/Throne/files/Throne-1.2.4-use-system-QHotkey.patch
new file mode 100644
index 0000000000..c3975a0fea
--- /dev/null
+++ b/net-proxy/Throne/files/Throne-1.2.4-use-system-QHotkey.patch
@@ -0,0 +1,40 @@
+From 4f3411259f54eadeca8ce5849d6faa11c8402821 Mon Sep 17 00:00:00 2001
+From: Pavel Sobolev <contact-2GWvd5oGOoG/[email protected]>
+Date: Sun, 9 Aug 2026 16:20:27 +0300
+Subject: [PATCH] Use system `QHotkey`
+
+Signed-off-by: Pavel Sobolev <contact-2GWvd5oGOoG/[email protected]>
+---
+ CMakeLists.txt                           | 2 +-
+ src/ui/mainWindow/mainwindow_hotkeys.cpp | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 8c07ea7d..3319bdbc 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -66,7 +66,7 @@ set(BUILD_SHARED_LIBS OFF)
+ 
+ include("cmake/print.cmake")
+ include("cmake/nkr.cmake")
+-include("cmake/QHotkey.cmake")
++find_package(QHotkey CONFIG REQUIRED)
+ 
+ find_package(Threads)
+ 
+diff --git a/src/ui/mainWindow/mainwindow_hotkeys.cpp b/src/ui/mainWindow/mainwindow_hotkeys.cpp
+index a773f479..142ec5af 100644
+--- a/src/ui/mainWindow/mainwindow_hotkeys.cpp
++++ b/src/ui/mainWindow/mainwindow_hotkeys.cpp
+@@ -7,7 +7,7 @@
+ 
+ #include <memory>
+ 
+-#include <3rdparty/QHotkey/qhotkey.h>
++#include <QHotkey>
+ 
+ namespace {
+     QList<std::shared_ptr<QHotkey>> RegisteredHotkey;
+-- 
+2.55.0
+
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.