diff --git a/.github/workflows/go-build.yaml b/.github/workflows/go-build.yaml index 0f50c53c2..5e6f6a42f 100644 --- a/.github/workflows/go-build.yaml +++ b/.github/workflows/go-build.yaml @@ -63,16 +63,10 @@ jobs: go-version: '1.21' check-latest: true - - name: Build warp + - name: Build warp-plus run: | mkdir -p build_assets - go build -v -o build_assets/warp -trimpath -ldflags "-s -w -buildid=" ./main.go - - - name: Rename Windows warp - if: matrix.goos == 'windows' - run: | - cd ./build_assets || exit 1 - mv warp warp.exe + go build -v -o build_assets/ -trimpath -ldflags "-s -w -buildid=" . - name: Copy README.md & LICENSE run: | @@ -84,9 +78,9 @@ jobs: run: | pushd ./build_assets || exit 1 touch -mt $(date +%Y01010000) * - zip -9vr ../warp-${{ env.ASSET_NAME }}.zip . + zip -9vr ../warp-plus-${{ env.ASSET_NAME }}.zip . popd || exit 1 - FILE=./warp-${{ env.ASSET_NAME }}.zip + FILE=./warp-plus-${{ env.ASSET_NAME }}.zip DGST=$FILE.dgst for METHOD in {"md5","sha256","sha512"} do @@ -95,20 +89,20 @@ jobs: - name: Change the name run: | - mv ./build_assets ./warp-${{ env.ASSET_NAME }} + mv ./build_assets ./warp-plus-${{ env.ASSET_NAME }} - name: Upload files to Artifacts uses: actions/upload-artifact@v3 with: - name: warp-${{ env.ASSET_NAME }} + name: warp-plus-${{ env.ASSET_NAME }} path: | - ./warp-${{ env.ASSET_NAME }}/* + ./warp-plus-${{ env.ASSET_NAME }}/* - name: Upload binaries to release uses: svenstaro/upload-release-action@v2 if: github.event_name == 'release' with: repo_token: ${{ secrets.GITHUB_TOKEN }} - file: ./warp-${{ env.ASSET_NAME }}.zip* + file: ./warp-plus-${{ env.ASSET_NAME }}.zip* tag: ${{ github.ref }} file_glob: true diff --git a/README.md b/README.md index b7da4af9c..8bd0c175e 100644 --- a/README.md +++ b/README.md @@ -7,9 +7,7 @@ Warp-Plus is an open-source implementation of Cloudflare's Warp, enhanced with P - **Warp Integration**: Leverages Cloudflare's Warp to provide a fast and secure VPN service. - **Psiphon Chaining**: Integrates with Psiphon for censorship circumvention, allowing seamless access to the internet in restrictive environments. - **Warp in Warp Chaining**: Chaning two instances of warp together to bypass location restrictions. -- **Cross-Platform Support**: Designed to work on multiple platforms, offering the same level of functionality and user experience. - **SOCKS5 Proxy Support**: Includes a SOCKS5 proxy for secure and private browsing. -- **Verbose Logging**: Optional verbose logging for troubleshooting and performance monitoring. ## Getting Started @@ -33,21 +31,21 @@ Warp-Plus is an open-source implementation of Cloudflare's Warp, enhanced with P ### Usage -Run the application with the following command: - -```bash -./warp-plus [-v] [-b addr:port] [-c config-file-path] [-e warp-ip] [-k license-key] [-country country-code] [-cfon] [-gool] ``` - -- `-v`: Enable verbose logging. -- `-b`: Set the SOCKS bind address (default: `127.0.0.1:8086`). -- `-c`: Path to the Warp configuration file. -- `-e`: Specify the Warp endpoint IP. -- `-k`: Your Warp license key. -- `-gool`: enable warp in warp. -- `-country`: ISO 3166-1 alpha-2 country code for Psiphon. -- `-cfon`: Enable Psiphon over Warp. -- `-rtt`: scanner rtt threshold, default is `1000` +NAME + warp-plus + +FLAGS + -v, --verbose enable verbose logging + -b, --bind STRING socks bind address (default: 127.0.0.1:8086) + -e, --endpoint STRING warp endpoint + -k, --key STRING warp key + --country STRING psiphon country code (valid values: [AT BE BG BR CA CH CZ DE DK EE ES FI FR GB HU IE IN IT JP LV NL NO PL RO RS SE SG SK UA US]) (default: AT) + --cfon enable psiphon mode (must provide country as well) + --gool enable gool mode (warp in warp) + --scan enable warp scanning (experimental) + --rtt DURATION scanner rtt limit (default: 1s) +``` ### Country Codes for Psiphon diff --git a/main.go b/main.go index aba7ac467..a3a20f2ff 100644 --- a/main.go +++ b/main.go @@ -52,7 +52,7 @@ var psiphonCountries = []string{ } func main() { - fs := ff.NewFlagSet("warp") + fs := ff.NewFlagSet("warp-plus") var ( verbose = fs.Bool('v', "verbose", "enable verbose logging") bind = fs.String('b', "bind", "127.0.0.1:8086", "socks bind address")