diff --git a/common/shlibs b/common/shlibs index 5b2a988e66912d..272abf88dafa7c 100644 --- a/common/shlibs +++ b/common/shlibs @@ -4570,3 +4570,4 @@ libresvg.so.0.46 libresvg0-0.46.0_1 libgpiod.so.3 libgpiod-2.2_4 libgpiodcxx.so.2 libgpiod-2.2_4 libigloo.so.0 libigloo-0.9.5_1 +libthrift.so.0.23.0 thrift-0.23.0_1 diff --git a/srcpkgs/nekobox-core b/srcpkgs/nekobox-core new file mode 120000 index 00000000000000..711e1ce73e6476 --- /dev/null +++ b/srcpkgs/nekobox-core @@ -0,0 +1 @@ +nekobox \ No newline at end of file diff --git a/srcpkgs/nekobox/template b/srcpkgs/nekobox/template new file mode 100644 index 00000000000000..b0e66de478892b --- /dev/null +++ b/srcpkgs/nekobox/template @@ -0,0 +1,56 @@ +# Template file for 'nekobox' +# +# NekoBox (NyameBox) - Cross-platform Qt proxy utility powered by sing-box +# +# Build Notes: +# - This package builds NekoBox from the unified source tarball which includes +# the sing-box core (Go) and the Qt frontend (C++) +# - The Go core is built with Cmake using go and thrift compilers +# - The Qt frontend is built with CMake using system Qt6 libraries +# - Thrift is used for RPC communication between the frontend and core +# +pkgname=nekobox +version=5.11.9 +revision=1 +# The unified source tarball extracts to nekobox-unified-source-VERSION +wrksrc="nekobox-unified-source-${version}" +build_style=cmake +# Configure CMake with Ninja generator and release build type. By default, BUILD_GO_PARTS and SKIP_UPDATER is ON. +configure_args="-GNinja -DCMAKE_BUILD_TYPE=Release NKR_DEFAULT_VERSION=${version}" +hostmakedepends="cmake ninja pkg-config qt6-base qt6-tools go thrift" +makedepends="qt6-base-devel qt6-declarative-devel thrift-devel openssl-devel boost-devel lmdb-devel acl-devel libunistring-devel libcurl-devel libzstd-devel patchelf" +depends="qt6-base qt6-wayland hicolor-icon-theme desktop-file-utils noto-fonts-emoji noto-fonts-ttf nekobox-core libcurl libunistring libzstd lmdb acl openssl" +short_desc="Cross-platform Qt proxy utility powered by sing-box" +maintainer="NekoBox Void Contributors " +license="GPL-3.0-or-later" +homepage="https://github.com/qr243vbi/nekobox" +distfiles="https://github.com/qr243vbi/nekobox/releases/download/${version}/${pkgname}-unified-source-${version}.tar.xz" +checksum=f24cbd1101fef2530f457c30e5f1e2bf1515921c0a0d2a974d22b8d4b697b7d9 + +# Build options - customize display backends +build_options="wayland" +build_options_default="wayland" + +desc_option_wayland="Enable Wayland support" + +do_install() { + # Install the main nekobox Qt application + # CMake installs to DESTDIR by default + cd "${wrksrc}/build" + DESTDIR="${DESTDIR}" cmake --install . + + # Install license documentation + if [ -f "LICENSE" ]; then + vlicense LICENSE + elif [ -f "COPYING" ]; then + vlicense COPYING + fi +} + +nekobox-core_package() { + short_desc+=" - core file" + pkg_install() { + vmove usr/bin/sing-box + vmove usr/libexec/Iblis/nekobox_core + } +}