2016-07-07 15:51:27 +08:00
2016-06-12 10:32:13 +08:00
2016-06-05 21:29:13 +08:00
2016-06-14 10:21:54 +08:00
2016-06-12 10:44:16 +08:00
2016-06-10 19:44:49 +08:00
2016-06-12 10:32:13 +08:00
2016-06-12 10:32:13 +08:00
2016-06-25 09:47:27 +08:00

ShadowsocksX-NG

Current version is 1.1

Build Status

Next Generation of ShadowsocksX

Why Another Implement

It's hard to maintaine the original implement. There are too many unused code in it. It also embed ss-local source. It's crazy to maitaine depandences of ss-local. So it's hard to update ss-local version.

Now I just copy the ss-local from home brew. Run ss-local executable as a Launch Agent in background. Serve pac js file as a file url. So there are only some souce codes related to GUI left. Then I rewrite the gui code by swift.

Requirements

Running

  • Mac OS X 10.10 +

Building

  • XCode 7.3+
  • cocoapod 1.0.1+

Fetures

  • Use ss-local from shadowsocks-libev 2.4.6
  • Update PAC by download GFW List from github.
  • Show QRCode for current server profile.
  • Scan QRCode from screen.
  • Auto launch at login.
  • User rules for PAC.
  • Support OTA
  • An advance preferences panel to configure:
    • Local socks5 listen address.
    • Local socks5 listen port.
    • Local socks5 timeout.
    • If enable UDP relay.
    • GFW List url.

Diferences with orignal ShadowsocksX

Run ss-local as backgroud service through launchd, not in app process. So after you quit the app, the ss-local maybe is still running.

Add a manual mode which won't configure the system proxy settings. Then you could configure your apps to use socks5 proxy manual.

TODO List

  • Embed the http proxy server privoxy.

License

The project is released under the terms of GPLv3.

Description
No description provided
Readme GPL-3.0 29 MiB
Languages
Swift 59.5%
Objective-C 22.1%
JavaScript 10.1%
Shell 3.8%
Python 3.1%
Other 1.4%