mirror of
https://github.com/MatsuriDayo/nekoray.git
synced 2025-12-18 04:54:38 +03:00
package compatible
This commit is contained in:
@@ -34,7 +34,11 @@ endif ()
|
|||||||
include("cmake/fuck_windows/fuck.cmake")
|
include("cmake/fuck_windows/fuck.cmake")
|
||||||
|
|
||||||
# default prefix path
|
# default prefix path
|
||||||
list(APPEND CMAKE_PREFIX_PATH ${CMAKE_SOURCE_DIR}/libs/deps/built)
|
if (NKR_PACKAGE)
|
||||||
|
list(APPEND CMAKE_PREFIX_PATH ${CMAKE_SOURCE_DIR}/libs/deps/package)
|
||||||
|
else ()
|
||||||
|
list(APPEND CMAKE_PREFIX_PATH ${CMAKE_SOURCE_DIR}/libs/deps/built)
|
||||||
|
endif ()
|
||||||
message("[CMAKE_PREFIX_PATH] ${CMAKE_PREFIX_PATH}")
|
message("[CMAKE_PREFIX_PATH] ${CMAKE_PREFIX_PATH}")
|
||||||
|
|
||||||
# for some cross toolchain
|
# for some cross toolchain
|
||||||
@@ -49,7 +53,7 @@ find_package(Threads)
|
|||||||
|
|
||||||
if (NKR_PACKAGE)
|
if (NKR_PACKAGE)
|
||||||
add_compile_definitions(NKR_PACKAGE)
|
add_compile_definitions(NKR_PACKAGE)
|
||||||
endif()
|
endif ()
|
||||||
|
|
||||||
if (NKR_NO_EXTERNAL)
|
if (NKR_NO_EXTERNAL)
|
||||||
add_compile_definitions(NKR_NO_EXTERNAL)
|
add_compile_definitions(NKR_NO_EXTERNAL)
|
||||||
@@ -115,6 +119,7 @@ set(PROJECT_SOURCES
|
|||||||
db/Database.cpp
|
db/Database.cpp
|
||||||
db/TrafficLooper.cpp
|
db/TrafficLooper.cpp
|
||||||
db/ProfileFilter.cpp
|
db/ProfileFilter.cpp
|
||||||
|
db/ConfigBuilder.cpp
|
||||||
|
|
||||||
fmt/AbstractBean.cpp
|
fmt/AbstractBean.cpp
|
||||||
fmt/Bean2CoreObj_ray.cpp
|
fmt/Bean2CoreObj_ray.cpp
|
||||||
@@ -123,7 +128,6 @@ set(PROJECT_SOURCES
|
|||||||
fmt/Bean2Link.cpp
|
fmt/Bean2Link.cpp
|
||||||
fmt/InsecureHint.cpp
|
fmt/InsecureHint.cpp
|
||||||
fmt/Link2Bean.cpp
|
fmt/Link2Bean.cpp
|
||||||
db/ConfigBuilder.cpp
|
|
||||||
fmt/ChainBean.hpp # translate
|
fmt/ChainBean.hpp # translate
|
||||||
|
|
||||||
sub/GroupUpdater.cpp
|
sub/GroupUpdater.cpp
|
||||||
|
|||||||
10
README.md
10
README.md
@@ -1,10 +1,14 @@
|
|||||||
# NekoRay
|
# NekoRay
|
||||||
|
|
||||||
基于 Qt/C++ 的跨平台代理配置管理器( 使用 Matsuri 定制版 v2ray-core )
|
基于 Qt/C++ 的跨平台 GUI 代理配置管理器
|
||||||
|
|
||||||
|
后端 1. v2ray 2. sing-box
|
||||||
|
|
||||||
目前支持 Windows / Linux amd64 开箱即用
|
目前支持 Windows / Linux amd64 开箱即用
|
||||||
|
|
||||||
Qt/C++ based cross-platform proxy configuration manager ( Use Matsuri custom version of v2ray-core )
|
Qt/C++ based cross-platform GUI proxy configuration manager
|
||||||
|
|
||||||
|
backend: 1. v2ray 2.sing-box
|
||||||
|
|
||||||
Support Windows / Linux amd64 out of the box now.
|
Support Windows / Linux amd64 out of the box now.
|
||||||
|
|
||||||
@@ -44,7 +48,7 @@ https://matsuridayo.github.io
|
|||||||
|
|
||||||
launcher 参数
|
launcher 参数
|
||||||
|
|
||||||
* `./launcher -- -appdata` `--` 后的参数传递给主程序
|
* `./launcher -- -appdata` ( `--` 后的参数传递给主程序 )
|
||||||
* `-debug` Debug mode
|
* `-debug` Debug mode
|
||||||
* `-theme` Use local QT theme (unstable) (1.0+)
|
* `-theme` Use local QT theme (unstable) (1.0+)
|
||||||
|
|
||||||
|
|||||||
@@ -4,30 +4,49 @@ set -e
|
|||||||
cd libs
|
cd libs
|
||||||
|
|
||||||
# libs/deps/...
|
# libs/deps/...
|
||||||
mkdir -p deps; cd deps
|
mkdir -p deps
|
||||||
INSTLL_PREFIX=$PWD/built
|
cd deps
|
||||||
mkdir -p $INSTLL_PREFIX
|
if [ -z $NKR_PACKAGE ]; then
|
||||||
|
INSTALL_PREFIX=$PWD/built
|
||||||
|
else
|
||||||
|
INSTALL_PREFIX=$PWD/package
|
||||||
|
fi
|
||||||
|
rm -rf $INSTALL_PREFIX
|
||||||
|
mkdir -p $INSTALL_PREFIX
|
||||||
|
|
||||||
|
#### clean ####
|
||||||
|
clean() {
|
||||||
|
rm -rf dl.zip yaml-* zxing-* protobuf
|
||||||
|
}
|
||||||
|
|
||||||
|
#### ZXing 1.3.0 ####
|
||||||
|
curl -L -o dl.zip https://github.com/nu-book/zxing-cpp/archive/refs/tags/v1.3.0.zip
|
||||||
|
unzip dl.zip
|
||||||
|
|
||||||
|
cd zxing-*
|
||||||
|
mkdir -p build
|
||||||
|
cd build
|
||||||
|
|
||||||
|
cmake .. -GNinja -DBUILD_SHARED_LIBS=OFF -DCMAKE_BUILD_TYPE=Release -DBUILD_EXAMPLES=OFF -DBUILD_BLACKBOX_TESTS=OFF -DCMAKE_INSTALL_PREFIX=$INSTALL_PREFIX
|
||||||
|
ninja && ninja install
|
||||||
|
|
||||||
|
cd ../..
|
||||||
|
|
||||||
|
#### exit if NKR_PACKAGE ####
|
||||||
|
if [ ! -z $NKR_PACKAGE ]; then
|
||||||
|
clean
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
|
||||||
#### yaml-cpp ####
|
#### yaml-cpp ####
|
||||||
curl -L -o dl.zip https://github.com/jbeder/yaml-cpp/archive/refs/tags/yaml-cpp-0.7.0.zip
|
curl -L -o dl.zip https://github.com/jbeder/yaml-cpp/archive/refs/tags/yaml-cpp-0.7.0.zip
|
||||||
unzip dl.zip
|
unzip dl.zip
|
||||||
|
|
||||||
cd yaml-*
|
cd yaml-*
|
||||||
mkdir -p build; cd build
|
mkdir -p build
|
||||||
|
cd build
|
||||||
|
|
||||||
cmake .. -GNinja -DBUILD_TESTING=OFF -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$INSTLL_PREFIX
|
cmake .. -GNinja -DBUILD_TESTING=OFF -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$INSTALL_PREFIX
|
||||||
ninja && ninja install
|
|
||||||
|
|
||||||
cd ../..
|
|
||||||
|
|
||||||
#### ZXing ####
|
|
||||||
curl -L -o dl.zip https://github.com/nu-book/zxing-cpp/archive/refs/tags/v1.3.0.zip
|
|
||||||
unzip dl.zip
|
|
||||||
|
|
||||||
cd zxing-*
|
|
||||||
mkdir -p build; cd build
|
|
||||||
|
|
||||||
cmake .. -GNinja -DBUILD_SHARED_LIBS=OFF -DCMAKE_BUILD_TYPE=Release -DBUILD_EXAMPLES=OFF -DBUILD_BLACKBOX_TESTS=OFF -DCMAKE_INSTALL_PREFIX=$INSTLL_PREFIX
|
|
||||||
ninja && ninja install
|
ninja && ninja install
|
||||||
|
|
||||||
cd ../..
|
cd ../..
|
||||||
@@ -41,14 +60,14 @@ mkdir -p protobuf/build
|
|||||||
cd protobuf/build
|
cd protobuf/build
|
||||||
|
|
||||||
cmake .. -GNinja \
|
cmake .. -GNinja \
|
||||||
-DCMAKE_BUILD_TYPE=Release \
|
-DCMAKE_BUILD_TYPE=Release \
|
||||||
-DBUILD_SHARED_LIBS=OFF \
|
-DBUILD_SHARED_LIBS=OFF \
|
||||||
-Dprotobuf_MSVC_STATIC_RUNTIME=OFF \
|
-Dprotobuf_MSVC_STATIC_RUNTIME=OFF \
|
||||||
-Dprotobuf_BUILD_TESTS=OFF \
|
-Dprotobuf_BUILD_TESTS=OFF \
|
||||||
-DCMAKE_INSTALL_PREFIX=$INSTLL_PREFIX
|
-DCMAKE_INSTALL_PREFIX=$INSTALL_PREFIX
|
||||||
ninja && ninja install
|
ninja && ninja install
|
||||||
|
|
||||||
cd ../..
|
cd ../..
|
||||||
|
|
||||||
#### clean ####
|
####
|
||||||
rm -rf dl.zip yaml-* zxing-* protobuf
|
clean
|
||||||
|
|||||||
@@ -337,6 +337,8 @@ namespace NekoRay {
|
|||||||
search << "/usr/share/xray";
|
search << "/usr/share/xray";
|
||||||
search << "/usr/local/share/xray";
|
search << "/usr/local/share/xray";
|
||||||
search << "/opt/xray";
|
search << "/opt/xray";
|
||||||
|
search << "/usr/share/sing-geoip";
|
||||||
|
search << "/usr/share/sing-geosite";
|
||||||
for (const auto &dir: search) {
|
for (const auto &dir: search) {
|
||||||
if (dir.isEmpty()) continue;
|
if (dir.isEmpty()) continue;
|
||||||
QFileInfo asset(dir + "/" + name);
|
QFileInfo asset(dir + "/" + name);
|
||||||
|
|||||||
Reference in New Issue
Block a user