net-proxy/Throne: add 1.1.5

Signed-off-by: Pavel Sobolev <contact@paveloom.dev>
This commit is contained in:
Pavel Sobolev
2026-06-07 12:37:53 +03:00
parent 2ca61ebca8
commit 723368f6a6
2 changed files with 96 additions and 0 deletions

View File

@@ -2,3 +2,5 @@ DIST Throne-1.1.2-deps.tar.xz 174887356 BLAKE2B af97e53d2ce23bd10090d049e415e35e
DIST Throne-1.1.2.tar.gz 5919485 BLAKE2B 55cf97ba23d416240dcc94e7afa3a0b703b52794d62ed1c0769221ba50da9a61f2979b0ae45ced0a4becc4ad8fd75e6bb2b19c58cbc73b131461579b3dd5b38e SHA512 84221c2f9a5c64b757517f69243b1111a3e9bfb0b9ff62b0b4c544299ba6ab289a66ffdb657a3d8a97089b131f3f1aaf91dcded444dbec23695a986311b80b81
DIST Throne-1.1.4-deps.tar.xz 188135188 BLAKE2B 19c6484afea8422e7ccf4d6448fcc2814b92360e9c13db9e9636a9b266596d551fbaec95e70908f599e4cb01fd934088ba454fc1de9f6cc36d2e2ce94b085ef8 SHA512 d03363f9e4d961d37fe23e3ffd8d9a7d42169b149519e2ff8717a888df7f066c4e417e072f696899fb91532d0752267d760c4a534fce9f63da1fa6d5b8f96bfc
DIST Throne-1.1.4.tar.gz 5950820 BLAKE2B 8b144fb1241e87c4507823be39c695e9be390d0c2c861cc68ce3ed2a52140d56ef86350efa7b9d2f12a274ebfc6fde053f7506543ba0d41d51d01c32a788bdc2 SHA512 62446659267507fe920069091ef1c5778f559e77be699b9be4dbf645f73aff98c08b8d9ff69e909f5032a4b064bee7f6c7e46a9c829fdad961b552683d3449b0
DIST Throne-1.1.5-deps.tar.xz 188144256 BLAKE2B 29adf2ab3527309a0d5b2f4060676d821ddeb3779657b7c8a816d65083f629f99673aafa0815a5e20ca42b4688019a55e9c5f4c81e4ac628835e672c8c607aaa SHA512 a9813ad19e31bc8f4372438138fbe4efa750f93b0f3df9947c4d149ae3d81b90ac55e22ee55354f24d1c3d4f79bf33f1817a99ed58706e79eaf20a618877aa22
DIST Throne-1.1.5.tar.gz 6024207 BLAKE2B db7e8ef87bbbc969e6bc2965ba3935eb5af6ba8b8342516d4ee0e8c58d6e1af939555df406a71286d3dea7d52d3d3c89f2c261edb7f987ca021407a1437fb5ee SHA512 06954dad74ba93b6d9c978252caa51c1d8a3c7af094507209c7b7643664cf61f2bc5cd8945d42cedd6a438e94beeb9922efef49d02f77edfce69b26a436a17fc

View File

@@ -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.0.0-use-system-QHotkey.patch"
"${FILESDIR}/${PN}-1.1.1-dont-treat-warnings-as-errors.patch"
"${FILESDIR}/${PN}-1.1.1-use-system-quirc.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"
}