HrBDev / outline-go-tun2socks

outline-go-tun2socks with dnscrypt, socks5 proxy, and plain-old-dns support.

Home Page:https://bravedns.com/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

outline-go-tun2socks

Go package for building go-tun2socks-based clients for Outline and Intra (now with support for Choir metrics). For macOS, iOS, and Android, the output is a library; for Linux and Windows it is a command-line executable.

Prerequisites

  • macOS host (iOS, macOS)
  • Xcode (iOS, macOS)
  • make
  • Go >= 1.14
  • A C compiler (e.g.: clang, gcc)
  • gomobile (iOS, macOS, Android)
  • xgo (Windows, Linux)
  • Docker (Windows, Linux)
  • Other common utilities (e.g.: git)

macOS Framework

As of Go 1.14, gomobile does not support building frameworks for macOS. We have patched gomobile to enable building a framework for macOS by replacing the default iOS simulator build.

Until we upstream the change, the (Darwin) binary to enable this behavior is located at tools/gomobile and is used by the build_macos.sh build script.

Linux & Windows

We build binaries for Linux and Windows from source without any custom integrations. xgo and Docker are required to support cross-compilation.

Build

go get -d ./...
./build_[ios|android|macos|windows].sh

About

outline-go-tun2socks with dnscrypt, socks5 proxy, and plain-old-dns support.

https://bravedns.com/

License:Apache License 2.0


Languages

Language:Go 96.9%Language:Shell 2.0%Language:Makefile 1.1%