Merge branch 'master' into dev, Updated dev branch

Former-commit-id: b8162ed917
This commit is contained in:
Leroy.H.Y 2019-10-08 12:42:30 +08:00
commit 5e8dcf2e84
52 changed files with 900 additions and 155 deletions

145
.github/workflows/build-release.yml vendored Normal file
View File

@ -0,0 +1,145 @@
name: Build Artifact for Release
on:
release:
types: [prereleased]
jobs:
Windows:
name: Release for Windows x64
runs-on: windows-2019
steps:
- name: Checkout Sources
uses: actions/checkout@master
- name: Restore Git Submodules
run: git submodule update --init
# --------------------------------------------------------
- name: Install Qt
uses: jurplel/install-qt-action@v1
with:
arch: win64_mingw73
# --------------------------------------------------------
- name: Build Qv2ray
run: |
mkdir build
cd build
qmake ..
mingw32-make -j4
- name: Make release package
run: |
cd build
mkdir package
cd package
copy ..\release\Qv2ray.exe .\
copy ..\..\libs\libcrypto-1_1.dll .\
copy ..\..\libs\libssl-1_1.dll .\
windeployqt ./Qv2ray.exe
cd ..
..\tools\7z.exe a Qv2ray.zip .\package
- name: Upload Artifact
uses: actions/upload-artifact@master
with:
name: Qv2ray.Win64.zip
path: build/Qv2ray.zip
- name: Upload binaries to release
uses: svenstaro/upload-release-action@v1-release
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: build/Qv2ray.zip
asset_name: Qv2ray-${{ github.ref }}-win64.zip
tag: ${{ github.ref }}
overwrite: true
# =========================================================================================
macOS:
name: Release for macOS
runs-on: macOS-10.14
steps:
- name: Checkout Sources
uses: actions/checkout@master
- name: Restore Git Submodules
run: git submodule update --init
# --------------------------------------------------------
- name: Install Qt
uses: jurplel/install-qt-action@v1
# --------------------------------------------------------
- name: Build Qv2ray
run: |
mkdir build
cd build
qmake ..
make -j4
- name: Make Package
run: |
cd build
cd Qv2ray.app
macdeployqt ./
cd ..
tar czf Qv2ray.app.tar.gz Qv2ray.app
- name: Upload Artifact
uses: actions/upload-artifact@master
with:
name: Qv2ray.macOS.app.zip
path: build/Qv2ray.app.tar.gz
- name: Upload binaries to release
uses: svenstaro/upload-release-action@v1-release
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: build/Qv2ray.app.tar.gz
asset_name: Qv2ray-${{ github.ref }}-macOS.tar.gz
tag: ${{ github.ref }}
overwrite: true
# ===================================================================================
Linux:
name: Release for linux
runs-on: ubuntu-16.04
steps:
- name: Checkout Sources
uses: actions/checkout@master
- name: Restore Git Submodules
run: git submodule update --init
# --------------------------------------------------------
- name: Install Qt
uses: jurplel/install-qt-action@v1
# --------------------------------------------------------
- name: Install libgl-dev and openssl libx11-dev libxkbcommon-x11-dev
run: sudo apt install -y libgl-dev openssl libx11-dev libxkbcommon-x11-dev
- name: Build Qv2ray
run: |
mkdir build
cd build
qmake ..
make -j4
- name: Generate FS Structure for AppImage
run: |
cd build
make install INSTALL_ROOT=AppDir
cd AppDir
mkdir -p ./opt/Qv2ray/lib/
cp /lib/x86_64-linux-gnu/libssl.so.1.0.0 /lib/x86_64-linux-gnu/libcrypto.so.1.0.0 ./opt/Qv2ray/lib/
- name: Build AppImage using linuxdeployqt
run: |
cd build/AppDir
wget https://github.com/probonopd/linuxdeployqt/releases/download/6/linuxdeployqt-6-x86_64.AppImage
mv ./linuxdeployqt-6-x86_64.AppImage ../
chmod +x ../linuxdeployqt-6-x86_64.AppImage
../linuxdeployqt-6-x86_64.AppImage --appimage-extract
./squashfs-root/AppRun opt/Qv2ray/share/applications/Qv2ray.desktop -appimage -no-strip -always-overwrite
mv ./Qv2ray*.AppImage ./Qv2ray.AppImage
- name: Upload Artifact
uses: actions/upload-artifact@master
with:
name: Qv2ray.linux.AppImage
path: build/AppDir/Qv2ray.AppImage
- name: Upload binaries to release
uses: svenstaro/upload-release-action@v1-release
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: build/AppDir/Qv2ray.AppImage
asset_name: Qv2ray-${{ github.ref }}-linux.AppImage
tag: ${{ github.ref }}
overwrite: true

32
BUILDING.md Normal file
View File

@ -0,0 +1,32 @@
# Building Qv2ray
Qv2ray is a cross platform v2ray GUI, so you can run your build on all desktop platforms.
## Obtaining Source Code
-
## Dependencies
- Qt version >= 5
- Qt version 5.12 and 5.13 is recommended
- However, you may build it against 5.11 even 5.9.
- gRPC & protobuf
- It's now required if you want to use the `dev` version. There's no such dependencies in the `version-v1` branch.
- OpenSSL
- The build may **not** fail if you don't have it since it's a **runtime dependency**.
## Build instructions
```bash
#/bin/bash
# Recursively clone the project since we have a submodule.
git clone --recursive https://github.com/lhy0403/Qv2ray
cd Qv2ray
./tools/gen_grpc.sh
mkdir build && cd build
qmake ..
make -j4
```

View File

@ -116,7 +116,7 @@ ICON = ./icons/Qv2ray.icns
# ------------------------------------------ Begin to detect language files. # ------------------------------------------ Begin to detect language files.
message("Looking for language support.") message("Looking for language support.")
QM_FILES_RESOURCE_PREFIX = "translations" QM_FILES_RESOURCE_PREFIX = "translations"
for(var, $$list($$files("*.ts", true))) { for(var, $$list($$files("translations/*.ts", true))) {
LOCALE_FILENAME = $$basename(var) LOCALE_FILENAME = $$basename(var)
message(" --> Found:" $$LOCALE_FILENAME) message(" --> Found:" $$LOCALE_FILENAME)
!equals(LOCALE_FILENAME, "en-US.ts") { !equals(LOCALE_FILENAME, "en-US.ts") {

View File

@ -1,16 +1,22 @@
# README in Other Languages
- [English](./README_l10n/en-US.md)
---------------------
***注意Qv2ray 仅能用于 Qt/c++/linux/CI/自动化 等相关技术的学习和在法律允许范围内的使用,任何个人或集体不得使用 Qv2ray 进行任何违反相关法律法规的操作。*** ***注意Qv2ray 仅能用于 Qt/c++/linux/CI/自动化 等相关技术的学习和在法律允许范围内的使用,任何个人或集体不得使用 Qv2ray 进行任何违反相关法律法规的操作。***
*任何尝试下载或下载 Qv2ray 任意分支或发行版即代表您同意本项目作者不承担任何由于您违反以上准则所带来的任何法律责任。* *任何尝试下载或下载 Qv2ray 任意分支或发行版即代表您同意本项目作者不承担任何由于您违反以上准则所带来的任何法律责任。*
# Qv2ray # Qv2ray
[![Codacy Badge](https://api.codacy.com/project/badge/Grade/a034dd186c36408c92ffb04449fb6996)](https://app.codacy.com/app/lhy0403/Qv2ray?utm_source=github.com&utm_medium=referral&utm_content=lhy0403/Qv2ray&utm_campaign=Badge_Grade_Dashboard) [![HitCount](http://hits.dwyl.io/lhy0403/Qv2ray.svg)](http://hits.dwyl.io/lhy0403/Qv2ray) ![GitHub Releases](https://img.shields.io/github/downloads/lhy0403/Qv2ray/latest/total?style=flat-square) [![HitCount](http://hits.dwyl.io/lhy0403/Qv2ray.svg)](http://hits.dwyl.io/lhy0403/Qv2ray) ![GitHub Releases](https://img.shields.io/github/downloads/lhy0403/Qv2ray/latest/total?style=flat-square)
使用 Qt 框架的跨平台 v2ray 客户端. 支持 Windows, Linux, macOS 使用 Qt 框架的跨平台 v2ray 客户端. 支持 Windows, Linux, macOS
支持连接编辑,支持导入任意配置和 `vmess://` 分享链接 支持连接编辑,支持导入任意配置和 `vmess://` 分享链接
Special thanks to: [Hv2ray](https://github.com/aliyuchang33/Hv2ray) by [@aliyuchang33](https://github.com/aliyuchang33) 来自于 [Hv2ray](https://github.com/aliyuchang33/Hv2ray),原作者 [@aliyuchang33](https://github.com/aliyuchang33)
## 相关链接: ## 相关链接:
@ -19,6 +25,7 @@ Special thanks to: [Hv2ray](https://github.com/aliyuchang33/Hv2ray) by [@aliyuch
- Crowdin 翻译平台, Translations are welcome at here: **[Public Translation Platform](https://crwd.in/qv2ray)** - Crowdin 翻译平台, Translations are welcome at here: **[Public Translation Platform](https://crwd.in/qv2ray)**
- ArchLinux - AUR: **[qv2ray](https://aur.archlinux.org/packages/qv2ray/)** - ArchLinux - AUR: **[qv2ray](https://aur.archlinux.org/packages/qv2ray/)**
- **[qv2ray-dev-git](https://aur.archlinux.org/packages/qv2ray-dev-git)**: `dev` 分支的开发版本,由 **[@axionl](https://github.com/axionl)** 维护 - **[qv2ray-dev-git](https://aur.archlinux.org/packages/qv2ray-dev-git)**: `dev` 分支的开发版本,由 **[@axionl](https://github.com/axionl)** 维护
- **注意dev 分支包含不稳定的功能更新和不稳定的bug修复不建议将 dev 分支作为日常使用**
### 首次使用请查看 ➡ [用户手册](https://lhy0403.github.io/Qv2ray) ### 首次使用请查看 ➡ [用户手册](https://lhy0403.github.io/Qv2ray)
@ -30,12 +37,12 @@ Special thanks to: [Hv2ray](https://github.com/aliyuchang33/Hv2ray) by [@aliyuch
- 访问链接: [https://jenkins.lhy0403.top/](https://jenkins.lhy0403.top/) - 访问链接: [https://jenkins.lhy0403.top/](https://jenkins.lhy0403.top/)
| | [Master](https://github.com/lhy0403/Qv2ray/tree/master) | [Developement](https://github.com/lhy0403/Qv2ray/tree/dev) | [Version v1](https://github.com/lhy0403/Qv2ray/tree/version-v1) | [Version v2](https://github.com/lhy0403/Qv2ray/tree/version-v2) | [Pull Requests](https://github.com/lhy0403/Qv2ray/pulls) | | | [Master](https://github.com/lhy0403/Qv2ray/tree/master) | [Developement](https://github.com/lhy0403/Qv2ray/tree/dev) | [Version v1](https://github.com/lhy0403/Qv2ray/tree/version-v1) | [Version v2](https://github.com/lhy0403/Qv2ray/tree/version-v2) | Testing |
| -------------- | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | | -------------- | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ |
| Linux AppImage | [![Build Status](https://jenkins.lhy0403.top/job/Qv2ray-AppImage-Release/badge/icon)](https://jenkins.lhy0403.top/job/Qv2ray-AppImage-Release/) | [![Build Status](https://jenkins.lhy0403.top/job/Qv2ray-AppImage-Dev/badge/icon)](https://jenkins.lhy0403.top/job/Qv2ray-AppImage-Dev/) | [![Build Status](https://jenkins.lhy0403.top/job/Qv2ray-AppImage-Version1/badge/icon)](https://jenkins.lhy0403.top/job/Qv2ray-AppImage-Version1/) | [![Build Status](https://jenkins.lhy0403.top/job/Qv2ray-AppImage-Version2/badge/icon)](https://jenkins.lhy0403.top/job/Qv2ray-AppImage-Version2/) | [![Build Status](https://jenkins.lhy0403.top/job/Qv2ray-AppImage-PullRequest/badge/icon)](https://jenkins.lhy0403.top/job/Qv2ray-AppImage-PullRequest/) | | Linux AppImage | [![Build Status](https://jenkins.lhy0403.top/job/Qv2ray-AppImage-Release/badge/icon)](https://jenkins.lhy0403.top/job/Qv2ray-AppImage-Release/) | [![Build Status](https://jenkins.lhy0403.top/job/Qv2ray-AppImage-Dev/badge/icon)](https://jenkins.lhy0403.top/job/Qv2ray-AppImage-Dev/) | [![Build Status](https://jenkins.lhy0403.top/job/Qv2ray-AppImage-Version1/badge/icon)](https://jenkins.lhy0403.top/job/Qv2ray-AppImage-Version1/) | [![Build Status](https://jenkins.lhy0403.top/job/Qv2ray-AppImage-Version2/badge/icon)](https://jenkins.lhy0403.top/job/Qv2ray-AppImage-Version2/) | [![Build Status](https://jenkins.lhy0403.top/job/Qv2ray-AppImage-Testing/badge/icon)](https://jenkins.lhy0403.top/job/Qv2ray-AppImage-Testing/) |
| Windows Zip | [![Build Status](https://jenkins.lhy0403.top/job/Qv2ray-Win32-Release/badge/icon)](https://jenkins.lhy0403.top/job/Qv2ray-Win32-Release/) | [![Build Status](https://jenkins.lhy0403.top/job/Qv2ray-Win32-Dev/badge/icon)](https://jenkins.lhy0403.top/job/Qv2ray-Win32-Dev/) | [![Build Status](https://jenkins.lhy0403.top/job/Qv2ray-Win32-Version1/badge/icon)](https://jenkins.lhy0403.top/job/Qv2ray-Win32-Version1/) | [![Build Status](https://jenkins.lhy0403.top/job/Qv2ray-Win32-Version2/badge/icon)](https://jenkins.lhy0403.top/job/Qv2ray-Win32-Version2/) | [![Build Status](https://jenkins.lhy0403.top/job/Qv2ray-Win32-PullRequest/badge/icon)](https://jenkins.lhy0403.top/job/Qv2ray-Win32-PullRequest/) | | Windows Zip | [![Build Status](https://jenkins.lhy0403.top/job/Qv2ray-Win32-Release/badge/icon)](https://jenkins.lhy0403.top/job/Qv2ray-Win32-Release/) | [![Build Status](https://jenkins.lhy0403.top/job/Qv2ray-Win32-Dev/badge/icon)](https://jenkins.lhy0403.top/job/Qv2ray-Win32-Dev/) | [![Build Status](https://jenkins.lhy0403.top/job/Qv2ray-Win32-Version1/badge/icon)](https://jenkins.lhy0403.top/job/Qv2ray-Win32-Version1/) | [![Build Status](https://jenkins.lhy0403.top/job/Qv2ray-Win32-Version2/badge/icon)](https://jenkins.lhy0403.top/job/Qv2ray-Win32-Version2/) | [![Build Status](https://jenkins.lhy0403.top/job/Qv2ray-Win32-Testing/badge/icon)](https://jenkins.lhy0403.top/job/Qv2ray-Win32-Testing/) |
### Travis & Appveyor ### Travis & Appveyor 多平台构建状态
*Travis per machine badge provided by: [badge-matrix](https://github.com/exogen/badge-matrix)* *Travis per machine badge provided by: [badge-matrix](https://github.com/exogen/badge-matrix)*
@ -47,82 +54,30 @@ Special thanks to: [Hv2ray](https://github.com/aliyuchang33/Hv2ray) by [@aliyuch
## 编译 ## 鸣谢
### 依赖环境 | 姓名 (@Github帐号) | 贡献内容 |
| ------------------------------------------------------------ | ------------------------ |
| Leroy.H.Y [@lhy0403](https://github.com/lhy0403) | Qv2ray 当前维护人员之一 |
- 框架依赖:`Qt >= 5.12` 5.9 可以编译成功但是不建议使用) | Hork [@aliyuchang33](https://github.com/aliyuchang33) | Hv2ray 灵感与设计 |
- 编译依赖:`gcc >= 8` 或 `MinGW` (Windows) 或 `clang` (macOS) | SOneWinstone [@SoneWinstone](https://github.com/SoneWinstone) | 使用 Qt 的 HTTP 交互逻辑 |
| ArielAxionL [@axionl](https://github.com/axionl) | Qv2ray 部分 UI |
- 建议使用 QtCreator以获得最佳编译环境 | TheBadGateway [@thebadgateway](https://github.com/thebadgateway) | 俄罗斯文翻译 |
### Linux & macOS
- 对于 macOS需要额外使用 HomeBrew 安装 Qt 并正确设定 $PATH 环境变量
- 或者使用 Qt 官方包和 XCode
- 对于 Linux请根据不同发行版安装对应的 Qt 开发包
- Arch Linux 用户也可从 **[qv2ray-dev-git](https://aur.archlinux.org/packages/qv2ray-dev-git)** 拉取 `dev` 分支并构建
- 手动构建方法:
```bash
git clone --recursive https://github.com/lhy0403/Qv2ray && cd Qv2ray
# 按需要签出开发分支
# git checkout dev
mkdir build && cd build
qmake ../
make
```
### Windows
- 建议使用 Qt Creator
```batch
REM 首先把 %QTROOT%/bin 和 MinGW/bin 文件夹添加到 PATH 环境变量
REM SET PATH=%PATH%;C:\Qt\5.13.0\mingw73_32\bin\;C:\Qt\Tools\mingw730_32\bin\
SET PATH=%PATH%;Qt安装目录\Qt版本号\编译器类型\bin;Qt安装目录\Tools\编译器类型\bin
git clone --recursive https://github.com/lhy0403/Qv2ray && cd Qv2ray
REM git checkout dev (可选项,用于测试 dev 分支)
mkdir build && cd build
qmake ../
mingw32-make.exe
```
## Contributors
| Name (@GithubAccount) | Contributions | ## 许可证
| ------------------------------------------------------------ | ----------------------------------------------------- |
| Leroy.H.Y [@lhy0403](https://github.com/lhy0403) | Qv2ray Current Maintainer |
| Hork [@aliyuchang33](https://github.com/aliyuchang33) | Hv2ray Initial Idea and Designs, gRPC implementations |
| SOneWinstone [@SoneWinstone](https://github.com/SoneWinstone) | HTTP Request Helper |
| ArielAxionL [@axionl](https://github.com/axionl) | Qv2ray Art Work |
| TheBadGateway [@thebadgateway](https://github.com/thebadgateway) | Russian Translation |
Qv2ray 使用 [![License: GPL v3](https://img.shields.io/badge/License-GPL%20v3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)
Submodule [X2Struct](https://github.com/xyz347/x2struct) 使用 ![License: GPL v3](https://img.shields.io/badge/License-MIT-blue.svg)
## License
Qv2ray is licensed under [![License: GPL v3](https://img.shields.io/badge/License-GPL%20v3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)
[X2Struct](https://github.com/xyz347/x2struct) is licensed ![License: GPL v3](https://img.shields.io/badge/License-MIT-blue.svg)
[QJsonModel](https://github.com/dridk/QJsonModel) is licensed under![License: GPL v3](https://img.shields.io/badge/License-MIT-blue.svg) (Copyright (c) 2011 SCHUTZ Sacha) [QJsonModel](https://github.com/dridk/QJsonModel) is licensed under![License: GPL v3](https://img.shields.io/badge/License-MIT-blue.svg) (Copyright (c) 2011 SCHUTZ Sacha)
``` ```
Qv2ray, A Qt frontend for v2ray. Written in c++ Qv2ray, A Qt frontend for v2ray. Written in c++
Copyright (C) 2019 Leroy.H.Y (@lhy0403) ---> Current Maintainer
Copyright (C) 2019 Hork (@aliyuchang33) ---> Hv2ray Initial Idea and Designs, Current Maintainer
Copyright (C) 2019 SOneWinstone (@SoneWinstone) ---> Hv2ray/Qv2ray HTTP Request Helper
Copyright (C) 2019 ArielAxionL (@axionl) ---> Qv2ray ArtWork
This program is free software: you can redistribute it and/or modify This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or the Free Software Foundation, either version 3 of the License, or

84
README_l10n/en-US.md Normal file
View File

@ -0,0 +1,84 @@
***Note: Qv2ray can only be used for learning related technologies such as Qt/c++/linux/CI/automation and use within the scope permitted by law. Any individual or group may not use Qv2ray for any violation of relevant laws and regulations.***
*Any attempt to download or download any branch or distribution of Qv2ray constitutes your agreement that the author of the project will not be liable for any legal liability arising from your breach of the above guidelines.*
# Qv2ray
[![HitCount](http://hits.dwyl.io/lhy0403/Qv2ray.svg)](http://hits.dwyl.io/lhy0403/Qv2ray) ![GitHub Releases](https://img.shields.io/github/downloads/lhy0403/Qv2ray/latest/total?style=flat-square)
The v2ray GUI client using Qt, supports Windows, Linux and macOS
Supports editing connection config, importing any file and `vmess://` shared link.
Special Thanks to [Hv2ray](https://github.com/aliyuchang33/Hv2ray) by [@aliyuchang33](https://github.com/aliyuchang33)
## Relevant Links
- **Brief Feature Introduction: https://lhy0403.github.io/Qv2ray**
- Latest **[Release Distribution](https://github.com/lhy0403/Qv2ray/releases/latest)**
- Crowdin Translation Platform: **[Public Translation Platform](https://crwd.in/qv2ray)**
- ArchLinux - AUR: **[qv2ray](https://aur.archlinux.org/packages/qv2ray/)**
- **[qv2ray-dev-git](https://aur.archlinux.org/packages/qv2ray-dev-git)**: Development version from branch`dev`, maintained by **[@axionl](https://github.com/axionl)**
- **Note: The development branch contains unstable feature update and (even more) unstable bug fixes, it's not recommended to use a development version in production.**
### First time using Qv2ray please refer to ➡ [User Manual](https://lhy0403.github.io/Qv2ray)
## Qv2ray Project Status
### Jenkins CI
- Server Website: [https://jenkins.lhy0403.top/](https://jenkins.lhy0403.top/)
| | [Master](https://github.com/lhy0403/Qv2ray/tree/master) | [Developement](https://github.com/lhy0403/Qv2ray/tree/dev) | [Version v1](https://github.com/lhy0403/Qv2ray/tree/version-v1) | [Version v2](https://github.com/lhy0403/Qv2ray/tree/version-v2) | Testing |
| -------------- | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ |
| Linux AppImage | [![Build Status](https://jenkins.lhy0403.top/job/Qv2ray-AppImage-Release/badge/icon)](https://jenkins.lhy0403.top/job/Qv2ray-AppImage-Release/) | [![Build Status](https://jenkins.lhy0403.top/job/Qv2ray-AppImage-Dev/badge/icon)](https://jenkins.lhy0403.top/job/Qv2ray-AppImage-Dev/) | [![Build Status](https://jenkins.lhy0403.top/job/Qv2ray-AppImage-Version1/badge/icon)](https://jenkins.lhy0403.top/job/Qv2ray-AppImage-Version1/) | [![Build Status](https://jenkins.lhy0403.top/job/Qv2ray-AppImage-Version2/badge/icon)](https://jenkins.lhy0403.top/job/Qv2ray-AppImage-Version2/) | [![Build Status](https://jenkins.lhy0403.top/job/Qv2ray-AppImage-Testing/badge/icon)](https://jenkins.lhy0403.top/job/Qv2ray-AppImage-Testing/) |
| Windows Zip | [![Build Status](https://jenkins.lhy0403.top/job/Qv2ray-Win32-Release/badge/icon)](https://jenkins.lhy0403.top/job/Qv2ray-Win32-Release/) | [![Build Status](https://jenkins.lhy0403.top/job/Qv2ray-Win32-Dev/badge/icon)](https://jenkins.lhy0403.top/job/Qv2ray-Win32-Dev/) | [![Build Status](https://jenkins.lhy0403.top/job/Qv2ray-Win32-Version1/badge/icon)](https://jenkins.lhy0403.top/job/Qv2ray-Win32-Version1/) | [![Build Status](https://jenkins.lhy0403.top/job/Qv2ray-Win32-Version2/badge/icon)](https://jenkins.lhy0403.top/job/Qv2ray-Win32-Version2/) | [![Build Status](https://jenkins.lhy0403.top/job/Qv2ray-Win32-Testing/badge/icon)](https://jenkins.lhy0403.top/job/Qv2ray-Win32-Testing/) |
### Travis & Appveyor Cross Platform Build Status
*Travis per machine badge provided by: [badge-matrix](https://github.com/exogen/badge-matrix)*
| OS | [master](https://github.com/lhy0403/Qv2ray/tree/master) | [dev](https://github.com/lhy0403/Qv2ray/tree/dev) | [version-v1](https://github.com/lhy0403/Qv2ray/tree/version-v1) | [version-v2](https://github.com/lhy0403/Qv2ray/tree/version-v2) |
| --------------------------------------------------------- | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ |
| [Linux](https://travis-ci.com/lhy0403/Qv2ray) | ![Build Status Linux in master](http://badges.herokuapp.com/travis.com/lhy0403/Qv2ray?style=flat-square&env=BADGE=linux&label=Linux-master&branch=master) | ![Build Status Linux in dev](http://badges.herokuapp.com/travis.com/lhy0403/Qv2ray?style=flat-square&env=BADGE=linux&label=Linux-dev&branch=dev) | ![Build Status Linux in v1.0.0](http://badges.herokuapp.com/travis.com/lhy0403/Qv2ray?style=flat-square&env=BADGE=linux&label=Linux-v1&branch=version-v1) | ![Build Status Linux in v2.0.0](http://badges.herokuapp.com/travis.com/lhy0403/Qv2ray?style=flat-square&env=BADGE=linux&label=Linux-v2&branch=version-v2) |
| [macOS](https://travis-ci.com/lhy0403/Qv2ray) | ![Build Status macOS in master](http://badges.herokuapp.com/travis.com/lhy0403/Qv2ray?style=flat-square&env=BADGE=osx&label=macOS-master&branch=master) | ![Build Status macOS in dev](http://badges.herokuapp.com/travis.com/lhy0403/Qv2ray?style=flat-square&env=BADGE=osx&label=macOS-dev&branch=dev) | ![Build Status macOS in v1](http://badges.herokuapp.com/travis.com/lhy0403/Qv2ray?style=flat-square&env=BADGE=osx&label=macOS-v1&branch=version-v1) | ![Build Status macOS in v2](http://badges.herokuapp.com/travis.com/lhy0403/Qv2ray?style=flat-square&env=BADGE=osx&label=macOS-v2&branch=version-v2) |
| [Windows](https://ci.appveyor.com/project/lhy0403/qv2ray) | [![Build status](https://ci.appveyor.com/api/projects/status/i1l524ws0hiitpm4/branch/master?svg=true)](https://ci.appveyor.com/project/lhy0403/qv2ray/branch/master) | [![Build status](https://ci.appveyor.com/api/projects/status/i1l524ws0hiitpm4/branch/dev?svg=true)](https://ci.appveyor.com/project/lhy0403/qv2ray/branch/dev) | [![Build status](https://ci.appveyor.com/api/projects/status/i1l524ws0hiitpm4/branch/version-v1?svg=true)](https://ci.appveyor.com/project/lhy0403/qv2ray/branch/version-v1) | [![Build status](https://ci.appveyor.com/api/projects/status/i1l524ws0hiitpm4/branch/version-v2?svg=true)](https://ci.appveyor.com/project/lhy0403/qv2ray/branch/version-v2) |
## Special Thanks
| NickName (@GithubAccount) | Contributions |
| ------------------------------------------------------------ | ------------------------------ |
| Leroy.H.Y [@lhy0403](https://github.com/lhy0403) | Qv2ray Current Maintainer |
| Hork [@aliyuchang33](https://github.com/aliyuchang33) | Hv2ray Initial Idea and Design |
| SOneWinstone [@SoneWinstone](https://github.com/SoneWinstone) | Qt HTTP Interactive Logics |
| ArielAxionL [@axionl](https://github.com/axionl) | Qv2ray Artworks |
| TheBadGateway [@thebadgateway](https://github.com/thebadgateway) | Translation for Russian |
## Open Source License
Qv2ray is licensed under [![License: GPL v3](https://img.shields.io/badge/License-GPL%20v3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)
Submodule [X2Struct](https://github.com/xyz347/x2struct) is licensed under ![License: GPL v3](https://img.shields.io/badge/License-MIT-blue.svg)
```
Qv2ray, A Qt frontend for v2ray. Written in c++
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.
```

View File

@ -1,9 +0,0 @@
# Qv2ray 安装方法 - ArchLinux 及衍生版
## 适用于 使用 AUR 的 ArchLinux 或 ArchLinux 衍生版
1. 从 AUR 安装 `qv2ray`
- *注意,用户需要在 `v2ray` 包的基础上 额外需要 `v2ray-domain-list-community``v2ray-geoip` 进行分流代理*
- *详见Issue: [#23-511384858](https://github.com/lhy0403/Qv2ray/issues/23#issuecomment-511384858)*
2. 打开 Qv2ray导入或添加现有连接即可

View File

@ -1,9 +0,0 @@
# Qv2ray 安装方法 - 一般 Linux
## 适用于包含 v2ray 软件包,但不包含 Qv2ray 的发行版
1. 请安装 `v2ray` 程序包
2. 从最新发布版本下载 Linux 的 AppImage
3. 打开 Qv2ray 的 AppImage
4. Linux 版 Qv2ray 默认使用 `/bin/v2ray``/etc/v2ray` 作为内核与 assets 路径,如果与你的位置不一样,请到首选项中修改
5. 导入或创建新配置即可

View File

@ -1,18 +0,0 @@
# Qv2ray 安装方法 - 任何系统
*此方法为通用操作方法,任何系统都可以使用这种方法安装并使用 Qv2ray*
1. 你需要从官方 [releases](https://github.com/v2ray/v2ray-core/releases/latest) 下载对应系统版本的核心文件,并解压缩
2. 根据系统类别下载 Qv2ray 发布版,解压缩或双击打开 AppImage
3. 打开首选项,设置 vcore 路径和 assets 路径到解压后的文件夹
- 此种情况下,首选项中的 core 路径和 assets 路径通常指向同一文件夹Qv2ray 包含自动补全功能)
4. 点击OK保存配置并开始添加连接你可以选择导入现有链接或者手动输入链接设置
5. 使用托盘图标中键,窗口按钮或右键菜单均可启动当前连接
# *附录*
## *1. Qv2ray 在不同操作系统中生成的配置文件夹位置*
- *Windows: `C:\Users\用户名\.qv2ray`*
- *macOS: `/Users/用户名/.qv2ray`*
- *Linux: `/home/用户名/.qv2ray`*

View File

@ -1,38 +1,8 @@
# Qv2ray 用户手册 # Qv2ray User Manual
- 基于 Qt 的跨平台 v2ray 图形客户端 - Please select a language before continue.
- #### 当前最新版本: [v1.3.7.1](./ReleaseNotes/1.3/v1.3.7.1.md) 请选择一个语言
-------- - [简体中文](./zh-CN/README.md)
- [English](./en-US/README.md)
## 1. 功能简介
见 [简单的功能介绍](./Features.md)
## 2. 首次使用,安装与配置
请根据您的操作系统/发行版,选择对应的使用方法
1. [ArchLinux 及 Arch 衍生版 ](./FirstTime/Arch.md)
2. [其他 Linux 且发行版包含 v2ray 包](./FirstTime/General-Linux.md)
3. [Windows / macOS / 不包含 v2ray 程序包的 Linux 发行版 ](./FirstTime/Windows-macOS.md)
## 3. 更新历史
见 [更新历史记录](./History.md)
## 4. 常见问题 FAQ
见 [FAQ.md](./FAQ.md)
## 5. 共同翻译 Qv2ray
翻译平台使用 Crowdin[https://crowdin.com/project/qv2ray](https://crowdin.com/project/qv2ray)
# 开源协议 Open Source License
GPLv3

32
docs/en-US/BUILDING.md Normal file
View File

@ -0,0 +1,32 @@
# Building Qv2ray
Qv2ray is a cross platform v2ray GUI, so you can run your build on all desktop platforms.
## Obtaining Source Code
-
## Dependencies
- Qt version >= 5
- Qt version 5.12 and 5.13 is recommended
- However, you may build it against 5.11 even 5.9.
- gRPC & protobuf
- It's now required if you want to use the `dev` version. There's no such dependencies in the `version-v1` branch.
- OpenSSL
- The build may **not** fail if you don't have it since it's a **runtime dependency**.
## Build instructions
```bash
#/bin/bash
# Recursively clone the project since we have a submodule.
git clone --recursive https://github.com/lhy0403/Qv2ray
cd Qv2ray
./tools/gen_grpc.sh
mkdir build && cd build
qmake ..
make -j4
```

14
docs/en-US/FAQ.md Normal file
View File

@ -0,0 +1,14 @@
# Frequently Asked Question
## v2ray Failed to start after enabling tProxy
Detail: `Segmentation Fault` occurd after enabling tProxy
It's caused by a limit in `SUID` feature on some Linux OSes. Detailed error analysis please see: [#59](https://github.com/lhy0403/Qv2ray/issues/59)
- Solution:`sudo sysctl fs.suid_dumpable=1`
- The solution will lost on reboot, please refer to [this blog](http://ssdxiao.github.io/linux/2017/03/20/Sysctl-not-applay-on-boot.html) if you want to keep it.
## Ubuntu gives an super ugly UI
- Solution: Append `--style fusion` to the command line arg solves this problem.

58
docs/en-US/Features.md Normal file
View File

@ -0,0 +1,58 @@
# Qv2ray Features
## 1. Linux Friendly
Qv2ray **fully** supports Linux
## 2. Connection Importing
You can import files into Qv2ray from these sources:
- Existing file.
- `vmess://` Shared Link
- Manually.
## 3. Connection Editing
- It seems to be the most powerful v2ray connection editor ever.
- Editor for routing is under development. See [dev](https://github.com/lhy0403/Qv2ray/tree/dev) branch.
- Qv2ray supports editing those outbounds since v1.3.5
- VMess
- ShadowSocks
- Socks
## 4. Automatically Connect
- Connect to a server automatically after start, without showing the Main window.
- Added since [v1.2.0](./ReleaseNotes/1.2/v1.2.0.0.md)
**In order to set an automatic connection, follow these steps:**
1. Open Prefrences Window
2. Select a connection under `Auto Connect To` Section.
3. Click OK to save the config.
## 5. Automatic Update
- Update using Github Release to get the latest feature updates and bug fixes.
## 6. Multi Language Support.
- Qv2ray now supports these languages, since v1.3.7
- Chinese
- English
- Russian (Thanks to @thebadgateway)
You may also help translating Qv2ray at: https://crowdin.com/project/qv2ray
## 7. Display v2ray output in realtime
- For easy understanding what's happening.
## 8. tProxy Support. (Only for Linux)
- Enable tProxy support on Linux using `setcap`

35
docs/en-US/History.md Normal file
View File

@ -0,0 +1,35 @@
# Qv2ray Historical Versions
Latest Release [Github](https://github.com/lhy0403/Qv2ray/releases/latest)
## 1.3.x
- [v1.3.8](./ReleaseNotes/1.3/v1.3.8.0.md) Some bug fixes
- [v1.3.7.1](./ReleaseNotes/1.3/v1.3.7.1.md) Added tProxy support, fixed bugs when importing `vmess://`, this version contains 6 feature updates and 11 bug fixes.
- [v1.3.7](./ReleaseNotes/1.3/v1.3.7.0.md) Not Released
- [v1.3.6.1](./ReleaseNotes/1.3/v1.3.6.1.md) UI Icons update, translations update and a list order fix.
- [v1.3.6.0](./ReleaseNotes/1.3/v1.3.6.0.md) Not Released
- [v1.3.5-3](./ReleaseNotes/1.3/v1.3.5.3.md) Update targeting OpenSSL 1.1.1b-c-d
- [v1.3.5-2](./ReleaseNotes/1.3/v1.3.5.2.md) Fixed a list order issue and connectivity issue in v1.3.5
- [v1.3.5-0](./ReleaseNotes/1.3/v1.3.5.0.md) This version does not work and only roll back method is provided
- [v1.3.3](./ReleaseNotes/1.3/v1.3.3.0.md) This version fixed error in Auto Update module in Windows
- [v1.3.2](./ReleaseNotes/1.3/v1.3.2.0.md) This version contains 7 feature updates and 3 bug fixes.
- [v1.3.0](./ReleaseNotes/1.3/v1.3.0.0.md) Added support for ShadowSocks
## 1.2.x
- [v1.2.0](./ReleaseNotes/1.2/v1.2.0.0.md) This version contains 7 feature updates, 2 bug fixes and 3 minor fixes.
## 1.1.x
- v1.1.x Is canceled due to an internal error.
## 1.0.x
- [v1.0.1](./ReleaseNotes/1.0/v1.0.1.0.md) Fixed a spelling mistake in RC
- [v1.0.0](./ReleaseNotes/1.0/v1.0.0.0.md) Qv2ray v1 Release
## 0.9.x
- [v0.9.9 (BETA)](./ReleaseNotes/1.0/v0.9.9.0.md) - First Public Beta

45
docs/en-US/README.md Normal file
View File

@ -0,0 +1,45 @@
# Qv2ray User Manual
- A cross platform v2ray GUI written in QT
- #### Current Latest Release Version: [v1.3.8](./ReleaseNotes/1.3/v1.3.8.0.md)
--------
## 1. Features
Please see [Brief Feature Introduction](./Features.md)
## 2. Initial Setup and Usage
There are several steps:
1. Download Qv2ray form [Release](https://github.com/lhy0403/Qv2ray/releases/latest) ([AUR](https://aur.archlinux.org/packages/qv2ray/) is available for Arch Linux Users)
2. Download [v2ray kernel](https://github.com/v2ray/v2ray-core/releases/latest) from `v2ray-core` repo.
3. Open Qv2ray and a message box will tell you `Failed to find v2ray kernal`
- Click OK, and extract the kernel to the folder pop up just now.
- The folder contains a file named: `Put your v2ray.exe here.txt` for reference.
4. Close the folder after extracting and you may start importing configs.
```
Notes: Directories that Qv2ray will search for v2ray-kernel
- Windows: C:\Users\USERNAME\.qv2ray\vcore
- macOS: /Users/USERNAME/.qv2ray/vcore
- Linux: ~/.qv2ray/vcore
```
## 3. Update History
See [Update History](./History.md)
## 4. FAQ
Please refer to: [FAQ.md](./FAQ.md)
## 5. Contribute
1. Help translating Qv2ray to more languages.
- Crowdin [https://crowdin.com/project/qv2ray](https://crowdin.com/project/qv2ray)
2. New feature request.
- You can use Github Issues

View File

@ -0,0 +1,16 @@
# Version 1.3.8 Contains Following Fixes
Github Release: [v1.3.8.0](https://github.com/lhy0403/Qv2ray/releases/tag/v1.3.8.0)
## These changes are made in v1.3.8
- Add: Automatically delete the corresponding file when deleting the configuration
- Add: Right click menu to check if there is no option to configure
- Add: The external editor is opened by default when editing the v1 version does not support editing complex connections, and the configuration is automatically reloaded.
- Fixed: Translation issue, changed from MacOS to macOS
- Fixed: Fixed crash in listener port if it was an empty string in the preferences
- Fix: When importing some `vmess://`, there is a bug that the TCP header is set incorrectly and v2ray is not recognised.
- Fixed: Pop-ups causing crashes when no language files are detected
- Fix: Linux platform adds its own Open SSL library support
- Fixed: disable function button by default when no connection configuration is available

32
docs/zh-CN/BUILDING.md Normal file
View File

@ -0,0 +1,32 @@
# Building Qv2ray
Qv2ray is a cross platform v2ray GUI, so you can run your build on all desktop platforms.
## Obtaining Source Code
-
## Dependencies
- Qt version >= 5
- Qt version 5.12 and 5.13 is recommended
- However, you may build it against 5.11 even 5.9.
- gRPC & protobuf
- It's now required if you want to use the `dev` version. There's no such dependencies in the `version-v1` branch.
- OpenSSL
- The build may **not** fail if you don't have it since it's a **runtime dependency**.
## Build instructions
```bash
#/bin/bash
# Recursively clone the project since we have a submodule.
git clone --recursive https://github.com/lhy0403/Qv2ray
cd Qv2ray
./tools/gen_grpc.sh
mkdir build && cd build
qmake ..
make -j4
```

View File

@ -1,8 +1,11 @@
# Qv2ray 功能简介 # Qv2ray 功能简介
Qv2ray 是一款跨平台,真正支持 Linux 桌面环境的 v2ray 客户端
## 1. 连接导入 ## 1. Linux 友好
Qv2ray 支持 Linux 桌面环境
## 2. 连接导入
Qv2ray 支持以下位置导入配置文件 Qv2ray 支持以下位置导入配置文件
@ -10,43 +13,44 @@ Qv2ray 支持以下位置导入配置文件
- VMess 连接字符串 - VMess 连接字符串
- 手动添加 - 手动添加
## 2. 连接编辑 ## 3. 连接编辑
- 大概会成为是史上最强大的 v2ray 配置文件编辑器了吧 - 大概会成为全平台最强大的 v2ray 配置文件编辑器了吧
- 路由编辑功能正在开发中 - 路由编辑功能正在开发中 见 [dev 分支](https://github.com/lhy0403/Qv2ray/tree/dev) 或 [开发版本 AUR](https://aur.archlinux.org/packages/qv2ray-dev-git)
- 截至到 v1.3.5.3 已经支持以下出站协议的编辑 - 截至到 v1.3.5.3 已经支持以下出站协议的编辑
- VMess - VMess
- ShadowSocks - ShadowSocks
- Socks - Socks
## 3. 自动连接 ## 4. 自动连接
- 在启动时不显示主窗口,直接连接到设置的服务器 - 在启动时不显示主窗口,直接连接到设置的服务器
- 该功能自 [v1.2.0](./ReleaseNotes/1.2/ReleaseNote-v1.2.md) 版本添加 - 该功能自 [v1.2.0](./ReleaseNotes/1.2/v1.2.0.0.md) 版本添加
### 如要将某个连接设为自动连接,请打开首选项 ### 如要将某个连接设为自动连接,请打开首选项
1. 从 "自动连接到" 下拉菜单中选择需要自动建立连接的配置 1. 从 "自动连接到" 下拉菜单中选择需要自动建立连接的配置
2. 点击确定,保存设置即可 2. 点击确定,保存设置即可
## 4. 自动更新 ## 5. 自动更新
- 使用 Github Release 的自动更新机制,保证软件版本为最新,减少 Bug 数量,及时尝试新功能 - 使用 Github Release 的自动更新机制,保证软件版本为最新,减少 Bug 数量,及时尝试新功能
## 5. 多语言支持 ## 6. 多语言支持
- 截止到 v1.3.5.2Qv2ray 现已支持一下两种语言 - 截止到 v1.3.7.1Qv2ray 现已支持一下两种语言
- 英文 - 英文
- 中文 - 中文
- 俄罗斯语 (感谢 @thebadgateway
(还希望大家共同翻译啊 https://crowdin.com/project/qv2ray (还希望大家共同翻译啊 https://crowdin.com/project/qv2ray
## 6. 实时显示 v2ray 的输出 ## 7. 实时显示 v2ray 的输出
- 查看 bug 更方便 - 查看 bug 更方便
## 7. 自动 tProxy 支持 Linux ## 8. 自动 tProxy 支持 Linux
- 一键对 v2ray 主程序启用透明代理功能 (`setcap`) - 一键对 v2ray 主程序启用透明代理功能 (`setcap`)

View File

@ -4,6 +4,7 @@
## 1.3.x ## 1.3.x
- [v1.3.8](./ReleaseNotes/1.3/v1.3.8.0.md) 部分 bug 修复
- [v1.3.7.1](./ReleaseNotes/1.3/v1.3.7.1.md)增加 tProxy 支持,修复 vmess:// 导入等多个问题,此版本包含 6 个功能更新和 11 个 bug 修复 - [v1.3.7.1](./ReleaseNotes/1.3/v1.3.7.1.md)增加 tProxy 支持,修复 vmess:// 导入等多个问题,此版本包含 6 个功能更新和 11 个 bug 修复
- [v1.3.7](./ReleaseNotes/1.3/v1.3.7.0.md) 未发布 - [v1.3.7](./ReleaseNotes/1.3/v1.3.7.0.md) 未发布
- [v1.3.6.1](./ReleaseNotes/1.3/v1.3.6.1.md) UI 图标更新,翻译更新和一个列表顺序修复 - [v1.3.6.1](./ReleaseNotes/1.3/v1.3.6.1.md) UI 图标更新,翻译更新和一个列表顺序修复

45
docs/zh-CN/README.md Normal file
View File

@ -0,0 +1,45 @@
# Qv2ray 用户手册
- 基于 Qt 的跨平台 v2ray 图形客户端
- #### 当前最新版本: [v1.3.8.0](./ReleaseNotes/1.3/v1.3.8.0.md)
--------
## 1. 功能简介
见 [简单的功能介绍](./Features.md)
## 2. 首次使用,安装与配置
使用 Qv2ray 需要以下几个步骤:
1. 在 [Release](https://github.com/lhy0403/Qv2ray/releases/latest) 下载 Qv2ray (ArchLinux 用户可以使用 `qv2ray` 的 [AUR](https://aur.archlinux.org/packages/qv2ray/))
2. 在 `v2ray` 官方下载 [v2ray 内核](https://github.com/v2ray/v2ray-core/releases/latest)
3. 打开 Qv2ray, 首次运行会提示无法找到 v2ray 内核
- 点击确定,将刚刚下载的 v2ray内核 解压到自动打开的文件夹内
- 该文件夹包含一个 `Put your v2ray.exe here.txt` 以供识别
4. 解压完成后,关闭弹出的文件夹,即可开始导入或新建连接配置
```
注: Qv2ray 在不同系统中查找 v2ray 内核的文件路径 (即找不到内核时自动弹出的文件夹路径)
- Windows: C:\Users\用户名\.qv2ray\vcore
- macOS: /Users/用户名/.qv2ray/vcore
- Linux: ~/.qv2ray/vcore
```
## 3. 更新历史
见 [更新历史记录](./History.md)
## 4. 常见问题 FAQ
见 [FAQ.md](./FAQ.md)
## 5. 作出贡献
1. 帮助翻译 Qv2ray 到多个语言
- 翻译平台使用 Crowdin [https://crowdin.com/project/qv2ray](https://crowdin.com/project/qv2ray)
2. 提出新功能建议
- 使用 Github Issues

View File

@ -0,0 +1,22 @@
# [Beta Release] v0.9.9b
Github Release: [v0.9.9b](https://github.com/lhy0403/Qv2ray/releases/tag/v0.9.9b)
- 此版本是 v1.0.0 之前的最后一个测试版修复了许多尤其是连接编辑页面的Bug
- July 09 UPDATE: 这个版本包含部分 Bug ,见 [#21](https://github.com/lhy0403/Qv2ray/issues/21)
- 使用方法:
1. 根据对应系统下载程序包
2. 双击打开 Qv2ray 程序
3. 程序运行后,会在当前目录 (Windows),家目录下 .qv2ray (Linux) 或包内 Contents/Resources (macOS) 生成程序配置文件和一个 generated 文件夹
4. 点击首选项 或 Preference设置 v2ray core 路径 和 v2ray 资源文件夹路径 部分Linux发行版分别使用 /bin/v2ray 和 /etc/v2rayWindows 和 macOS 需要从官方 releases 下载并解压缩,此种情况 core 路径和资源文件夹路径指向同一位置
5. 点击OK保存配置并开始添加连接
6. 使用鼠标中键点击托盘图标或使用按钮即可启动 v2ray

View File

@ -0,0 +1,9 @@
# [v1.0.0 RC1] Qv2ray v1 发布候选版本 RC1
Github Release: [v1.0.0](https://github.com/lhy0403/Qv2ray/releases/tag/v1.0.0)
- 此版本包含了 [#21](https://github.com/lhy0403/Qv2ray/issues/21) 提出的部分修复
- 此版本修改了 macOS 下的配置目录存储路径,避免因版本升级造成数据丢失
** 使用方法见 https://github.com/lhy0403/Qv2ray/releases/tag/v0.9.9b **

View File

@ -0,0 +1,11 @@
# v1.0.1 [Fix] 修复 RC 版本中的拼写错误
Github Release: [v1.0.1](https://github.com/lhy0403/Qv2ray/releases/tag/v1.0.1)
本次更新日志
- 修复了生成配置文件时的一个拼写错误 `genrerated``generated`
(引入自提交 [`0e9b90f`#diff-c3f4a6d32c4ab34067ba5fa647341c6aR12](https://github.com/lhy0403/Qv2ray/commit/0e9b90fb116b790156314a21a6ef1abc8d60fa63#diff-c3f4a6d32c4ab34067ba5fa647341c6aR12))
此次发布不包含任何功能性更新,因此不提供编译后的二进制包。
如果你不关心这个拼写错误,请使用 https://github.com/lhy0403/Qv2ray/releases/tag/v1.0.0 中的版本

View File

@ -0,0 +1,37 @@
# Version 1.2.0 包含以下功能性更新和修复
Github Release: [v1.2.0](https://github.com/lhy0403/Qv2ray/releases/tag/v1.2.0)
## 功能更新
1. 增加使用 Github Release API 的自动检测更新功能
2. 增加了启动时的 GPLv3 版权显示
3. 对于 Windows 版本,默认字体使用了 微软雅黑 而不是 宋体
4. 增加 v2ray 资源目录的自动补全功能
5. 在首选项中添加了 "关于" 选项卡
6. 增加 启动时自动连接到某一配置文件 的功能
7. 实现不需要重启即可重加载语言文件
## 问题修复
1. 修复导入配置时,"放弃"按钮误识别为"确认"的错误
2. 修复输入光标位于日志内容中间时,日志内容错乱问题
## 功能改善
1. 改善修改配置后的重连机制
2. 改善选择 v2ray 传输方式时的界面
3. 增强日志自动滚动算法
------
# Windows 用户注意
### 此版本移动了配置文件路径
- 请遵循以下操作完成升级:
1. 退出旧版 Qv2ray ,并打开旧版 Qv2ray 所在文件夹
2. 移动 `qv2ray.d` 文件夹到 `C:\Users\你的用户名\`,并重命名为 `.qv2ray`
3. 打开新版 Qv2ray 后会自动读取配置,旧版 Qv2ray 文件夹即可删除
#### 新功能 "自动连接" 设置方法,请转到 [用户手册](../README.md#自动连接) 查看

View File

@ -0,0 +1,12 @@
# Version 1.3.0 包含以下功能性更新和修复
Github Release: [v1.3.0](https://github.com/lhy0403/Qv2ray/releases/tag/v1.3.0)
## 功能更新
1. 增加对于 ShadowSocks 的支持
2. 重新设计了连接编辑页面 UI
## 问题修复
1. 部分修复了在 Windows 下无论如何也点不开窗口的问题(需要进一步处理)

View File

@ -0,0 +1,19 @@
# Version 1.3.2 包含以下功能性更新和修复
Github Release: [v1.3.2](https://github.com/lhy0403/Qv2ray/releases/tag/v1.3.2)
## 功能更新
1. 增加 TinyLog 模块,提升了日志详细度,便于反馈问题
2. 配置文件增加 config_version 键,便于向前兼容文件格式
3. 增加对于 Socks 服务器的支持
4. 增加修改连接名的功能,如果要修改的配置文件是当前配置,将会断开并重新连接
5. 主界面连接控制按钮样式更新
6. 主界面连接列表支持右键菜单,可以启动或重命名配置
7. 托盘图标鼠标悬浮时的提示文本更新,增加版本号和当前连接
## 问题修复
1. 完全修复了在 Windows 下无论如何也点不开窗口的问题
2. 在 macOS 环境下使用了 fusion 作为默认主题
3. 修复了在首选项中改变当前语言后,主界面右上角状态文本显示为 “未连接” 的错误

View File

@ -0,0 +1,13 @@
# [v1.3.3] Windows 版自动更新功能修复
Github Release: [v1.3.3](https://github.com/lhy0403/Qv2ray/releases/tag/v1.3.3)
- 修复了之前版本的 Qv2ray for Windows 中由于缺少 OpenSSL 库导致的自动更新检查失败的 bug
- 此版本不包含功能性更新 只提供补丁下载
- Linux 版本不受影响,可以忽略
- 此次更新安装方法:
- 下载并解压 zip 包到 Qv2ray.exe 同文件夹,
- 重新启动 Qv2ray 主程序。Qv2ray 将自动开始检查更新。

View File

@ -0,0 +1,34 @@
# Qv2ray 1.3.5 错误更新回滚方法
Github Release: [v1.3.5](https://github.com/lhy0403/Qv2ray/releases/tag/v1.3.5)
## ROLLBACK METHOD IF YOU HAVE UPDATED TO THE v1.3.4 VERSION
# 如果你已经更新到了 1.3.5,请在使用旧版 Qv2ray 之前进行以下操作
## IF YOU HAVE ALREADY UPDATED TO 1.3.5, PLEASE DO THESE **BEFORE** OPENING OLD VERSION!
- Linux & macOS:
打开 `$HOME/.qv2ray/Qv2ray.conf`
OPEN `$HOME/.qv2ray/Qv2ray.conf`
- Windows:
打开 `C:\Users\你的用户名\.qv2ray\Qv2ray.conf`
OPEN `C:\Users\YOUR_USERNAME\.qv2ray\Qv2ray.conf`
# 把 `config_version` 后的 `2` 修改成 `"1"`
## CHANGE `config_version` FROM `2` TO `"1"`
修改之前 BEFORE CHANGE
![image](https://user-images.githubusercontent.com/18734999/64166267-555c7c80-ce79-11e9-9128-ad932a36c35d.png)
修改之后 AFTER CHANGE
![image](https://user-images.githubusercontent.com/18734999/64166308-63120200-ce79-11e9-9727-323ec3e5c123.png)
# 然后重新启动旧版本,并忽略此次更新
## THEN START THE OLD VERSION AND IGNORE THIS UPDATE IF POSSIBLE

View File

@ -0,0 +1,13 @@
# Version 1.3.5.2 包含以下功能性更新和修复
Github Release: [v1.3.5.2](https://github.com/lhy0403/Qv2ray/releases/tag/v1.3.5.2)
## 此版本修复了以下已知问题
- 手动添加连接配置后,主界面列表顺序与内部顺序不符,会导致错误的连接被选择。
- 修复了在启动 v2ray 时,`config.gen.json` 中 `inbounds` 一直为空数组 ([#36](https://github.com/lhy0403/Qv2ray/issues/36)) ([#35](https://github.com/lhy0403/Qv2ray/issues/35)) ([v1.3.5](https://github.com/lhy0403/Qv2ray/releases/tag/v1.3.5))
## 注意
**<u>更新到此版本以后,配置文件格式将被自动升级,届时旧版本 Qv2ray 将无法使用</u>**

View File

@ -0,0 +1,8 @@
# Version 1.3.5.3 包含以下功能性更新和修复
Github Release: [v1.3.5.3](https://github.com/lhy0403/Qv2ray/releases/tag/v1.3.5.3)
## 此版本修复了以下已知问题
- 部分 Linux 发布版在检测 OpenSSL 库时,出现版本号未能完全匹配而失败的问题,此版本纠正了这个错误并使用官方的函数实现 OpenSSL 检测

View File

@ -0,0 +1,5 @@
# Version 1.3.6.0 由于 macOS 出现问题没有发布
Github Release: NONE
后续版本: [v1.3.6.1](./v1.3.6.1.md)

View File

@ -0,0 +1,9 @@
# Version 1.3.6.1 包含以下功能性更新和修复
Github Release: [v1.3.6.1](https://github.com/lhy0403/Qv2ray/releases/tag/v1.3.6.1)
## 此版本包含以下更改
- 主界面图标更新,来自 [@ArielAxionL](https://github.com/axionl)
- 修复了主界面在选择连接时的错误顺序
- 此版本翻译更新为 Crowdin 服务,不再需要手动翻译

View File

@ -0,0 +1,34 @@
# Version 1.3.7 包含以下功能性更新和修复
Github Release: [v1.3.7](https://github.com/lhy0403/Qv2ray/releases/tag/v1.3.7)
## 此版本包含以下更改
*此版本共包含 4 个功能更新和 8 个 bug 修复*
- 建议所有用户更新到此版本
**功能更新**
1. 使用配置文件夹目录下的 `vcore` 子文件夹作为默认(且唯一的) `v2ray`/`v2ctl` 的搜索路径
2. 停止支持自定义的 `v2ray` 内核路径,现有 `v2ray` 主程序和 `v2ctl` 将被自动复制到新路径,无需进行手动迁移
- 注意:`assets` 路径保持不变,请不要删除原文件夹
3. 移除了首选项中 “使用 root 运行 v2ray” 的选项
4. 增加 Linux 系统的 `tProxy` 功能支持,使用 `pkexec``setcap`,避免了使用 `sudo` 权限过大的问题 [[Issue: #59]](https://github.com/lhy0403/Qv2ray/issues/59)
5. 移除了在每个连接文件中的 `_qv2ray.configSource` 标识符,导入或手动添加的连接将不再有此项内容
6. 增加了在检测不到 `v2ray` 内核时,自动打开搜索路径并提示下载文件的功能
**Bug 修复**
1. 修复了某些情况下 vmess:// 链接导入失败的bug [[Issue: #58]](https://github.com/lhy0403/Qv2ray/issues/58)
2. 修复了某些情况下,导入文件在连接时出现 Tag 缺失的情况
3. (部分修复了)某些情况下,由于 Qv2ray 配置文件版本不一致导致的崩溃问题
4. 修复了在只有一个连接配置时Qv2ray 启动后即使选择了一个连接,仍然会提示“未选择连接”的 bug [[Issue: #57]](https://github.com/lhy0403/Qv2ray/issues/57)
5. 修复了在显示部分未完全翻译的文字时出现单词间空格缺失的 bug
6. 修复了上个版本由于使用云翻译引起的托盘图标处出现两个冒号的问题
7. 修复了在主界面进行添加,重命名,删除连接等复杂列表操作后选择连接,出现 连接配置与选择的配置不一致的 bug
8. 修复了某些极端情况下,在一个连接进行重命名时更换当前连接(即双击其他配置)时出现的重命名失败的 bug

View File

@ -0,0 +1,34 @@
# Version 1.3.7.1 包含以下功能性更新和修复
Github Release: [v1.3.7.1](https://github.com/lhy0403/Qv2ray/releases/tag/v1.3.7.1)
## 此版本包含以下更改
*此版本共包含 6 个功能更新和 11 个 bug 修复*
- 建议所有用户更新到此版本
**功能更新**
1. 使用配置文件夹目录下的 `vcore` 子文件夹作为默认(且唯一的) `v2ray`/`v2ctl` 的搜索路径
2. 停止支持自定义的 `v2ray` 内核路径,现有 `v2ray` 主程序和 `v2ctl` 将被自动复制到新路径,无需进行手动迁移
- 注意:`assets` 路径保持不变,请不要删除原文件夹
3. 移除了首选项中 “使用 root 运行 v2ray” 的选项
4. 增加 Linux 系统的 `tProxy` 功能支持,使用 `pkexec``setcap`,避免了使用 `sudo` 权限过大的问题 [#59](https://github.com/lhy0403/Qv2ray/issues/59)
5. 移除了在每个连接文件中的 `_qv2ray.configSource` 标识符,导入或手动添加的连接将不再有此项内容
6. 增加了在检测不到 `v2ray` 内核时,自动打开路径的功能
**Bug 修复**
1. 修复了某些情况下 vmess:// 链接导入失败的bug [#58](https://github.com/lhy0403/Qv2ray/issues/58)
2. 修复了某些情况下,导入文件在连接时出现 Tag 缺失的情况
3. (部分修复了)某些情况下,由于 Qv2ray 配置文件版本不一致导致的崩溃问题
4. 修复了在只有一个连接配置时Qv2ray 启动后即使选择了一个连接,仍然会提示“未选择连接”的 bug [#57](https://github.com/lhy0403/Qv2ray/issues/57)
5. 修复了在显示部分未完全翻译的文字时出现单词间空格缺失的 bug
6. 修复了上个版本由于使用云翻译引起的托盘图标处出现两个冒号的问题
7. 修复了在主界面进行添加,重命名,删除连接等复杂列表操作后再选择连接,出现连接的配置与选择配置不一致的 bug
8. 修复了某些极端情况下,在一个连接进行重命名时更换当前连接(即双击其他配置)时出现的重命名失败的 bug
9. 修复了在导入包含特定头部伪装的 vmess:// 字符串时TCP Header 被错误设置导致 v2ray 无法运行的 bug
10. 修复了某些情况下,国内网站无法被正确分流到直连的 bug
11. 修复了在尝试编辑尚未支持的复杂连接配置时Qv2ray 闪退的 bug

View File

@ -0,0 +1,15 @@
# Version 1.3.8.0 包含以下功能性更新和修复
Github Release: [v1.3.8.0](https://github.com/lhy0403/Qv2ray/releases/tag/v1.3.8.0)
## 此版本包含以下更改
- 添加:删除配置时自动删除对应文件
- 添加:右键菜单点击时进行检测有无选择配置
- 添加:在编辑 v1 版本不支持编辑的复杂连接时默认打开外部编辑器,并自动重载配置
- 修复:翻译问题,从 MacOS 改为 macOS
- 修复:修复了首选项中监听端口如果是空字符串导致的崩溃问题
- 修复:导入部分 vmess:// 时,出现 TCP 头被乱设置导致 v2ray 无法识别的 bug
- 修复:在检测不到可用语言文件时弹出窗口导致崩溃的 bug
- 修复Linux 平台添加自带 OpenSSL 库支持
- 修复:在没有连接配置的时候默认禁用功能按钮

View File

@ -0,0 +1,38 @@
# Version 2.0
Github Release: [TODO]()
Version 2.0 将会包含以下功能更新
### 复杂连接编辑
- [ ] 路由添加
- [ ] 路由编辑
- [ ] 入站编辑
- [ ] 增加更多出站编辑选项
- [ ] 自动启动对应编辑器(简单出站编辑 / 复杂路由编辑)
- [ ] 自动生成 iptables 的 tProxy 命令(应该挺难的)
- [ ] JSON 编辑器
### 下载模块
- [ ] 自动下载 v2ray core
- [ ] 自动下载更新
- [ ] 自动安装更新(?)
### v2ray API
- [ ] 流量统计
### 订阅功能
- [ ] 订阅添加
- [ ] 订阅编辑,删除
### 分享功能
- [ ] 一键生成 vmess://
- [ ] 生成二维码