diff --git a/ShadowsocksX-NG.xcodeproj/project.pbxproj b/ShadowsocksX-NG.xcodeproj/project.pbxproj index 522c292..1a17fbd 100644 --- a/ShadowsocksX-NG.xcodeproj/project.pbxproj +++ b/ShadowsocksX-NG.xcodeproj/project.pbxproj @@ -142,7 +142,7 @@ 9B07EFA91D048E880052D9DF /* menu_icon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = menu_icon.png; sourceTree = ""; }; 9B07EFAA1D048E880052D9DF /* menu_icon_disabled.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = menu_icon_disabled.png; sourceTree = ""; }; 9B07EFAB1D048E880052D9DF /* menu_icon_disabled@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "menu_icon_disabled@2x.png"; sourceTree = ""; }; - 9B0BFFE51D0460A70040E62B /* ShadowsocksX-NG.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "ShadowsocksX-NG.app"; sourceTree = BUILT_PRODUCTS_DIR; }; + 9B0BFFE51D0460A70040E62B /* ShadowsocksX-NG-R.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "ShadowsocksX-NG-R.app"; sourceTree = BUILT_PRODUCTS_DIR; }; 9B0BFFE81D0460A70040E62B /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; 9B0BFFEA1D0460A70040E62B /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; 9B0BFFED1D0460A70040E62B /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/MainMenu.xib; sourceTree = ""; }; @@ -307,7 +307,7 @@ 9B0BFFE61D0460A70040E62B /* Products */ = { isa = PBXGroup; children = ( - 9B0BFFE51D0460A70040E62B /* ShadowsocksX-NG.app */, + 9B0BFFE51D0460A70040E62B /* ShadowsocksX-NG-R.app */, 9B0BFFF41D0460A70040E62B /* ShadowsocksX-NGTests.xctest */, 9B3FFF441D09CD3B0019A709 /* proxy_conf_helper */, ); @@ -407,9 +407,9 @@ /* End PBXGroup section */ /* Begin PBXNativeTarget section */ - 9B0BFFE41D0460A70040E62B /* ShadowsocksX-NG */ = { + 9B0BFFE41D0460A70040E62B /* ShadowsocksX-NG-R */ = { isa = PBXNativeTarget; - buildConfigurationList = 9B0B00081D0460A70040E62B /* Build configuration list for PBXNativeTarget "ShadowsocksX-NG" */; + buildConfigurationList = 9B0B00081D0460A70040E62B /* Build configuration list for PBXNativeTarget "ShadowsocksX-NG-R" */; buildPhases = ( A3C8167BB5EB01FBDE2A08BC /* [CP] Check Pods Manifest.lock */, 9B0BFFE11D0460A70040E62B /* Sources */, @@ -422,9 +422,9 @@ dependencies = ( 9B3FFF531D09E2B30019A709 /* PBXTargetDependency */, ); - name = "ShadowsocksX-NG"; + name = "ShadowsocksX-NG-R"; productName = "ShadowsocksX-NG"; - productReference = 9B0BFFE51D0460A70040E62B /* ShadowsocksX-NG.app */; + productReference = 9B0BFFE51D0460A70040E62B /* ShadowsocksX-NG-R.app */; productType = "com.apple.product-type.application"; }; 9B0BFFF31D0460A70040E62B /* ShadowsocksX-NGTests */ = { @@ -508,7 +508,7 @@ projectDirPath = ""; projectRoot = ""; targets = ( - 9B0BFFE41D0460A70040E62B /* ShadowsocksX-NG */, + 9B0BFFE41D0460A70040E62B /* ShadowsocksX-NG-R */, 9B0BFFF31D0460A70040E62B /* ShadowsocksX-NGTests */, 9B3FFF431D09CD3B0019A709 /* proxy_conf_helper */, ); @@ -702,7 +702,7 @@ /* Begin PBXTargetDependency section */ 9B0BFFF61D0460A70040E62B /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = 9B0BFFE41D0460A70040E62B /* ShadowsocksX-NG */; + target = 9B0BFFE41D0460A70040E62B /* ShadowsocksX-NG-R */; targetProxy = 9B0BFFF51D0460A70040E62B /* PBXContainerItemProxy */; }; 9B3FFF531D09E2B30019A709 /* PBXTargetDependency */ = { @@ -918,7 +918,7 @@ "$(PROJECT_DIR)", ); MACOSX_DEPLOYMENT_TARGET = 10.11; - PRODUCT_BUNDLE_IDENTIFIER = "com.qiuyuzhou.ShadowsocksX-NG"; + PRODUCT_BUNDLE_IDENTIFIER = "com.qiuyuzhou.ShadowsocksX-NG-R"; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_OBJC_BRIDGING_HEADER = "ShadowsocksX-NG/ShadowsocksX-NG-Bridging-Header.h"; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; @@ -949,7 +949,7 @@ "$(PROJECT_DIR)", ); MACOSX_DEPLOYMENT_TARGET = 10.11; - PRODUCT_BUNDLE_IDENTIFIER = "com.qiuyuzhou.ShadowsocksX-NG"; + PRODUCT_BUNDLE_IDENTIFIER = "com.qiuyuzhou.ShadowsocksX-NG-R"; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_OBJC_BRIDGING_HEADER = "ShadowsocksX-NG/ShadowsocksX-NG-Bridging-Header.h"; SWIFT_VERSION = 5.0; @@ -1023,7 +1023,7 @@ /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ - 9B0B00081D0460A70040E62B /* Build configuration list for PBXNativeTarget "ShadowsocksX-NG" */ = { + 9B0B00081D0460A70040E62B /* Build configuration list for PBXNativeTarget "ShadowsocksX-NG-R" */ = { isa = XCConfigurationList; buildConfigurations = ( 9B0B00091D0460A70040E62B /* Debug */, diff --git a/ShadowsocksX-NG.xcodeproj/xcshareddata/xcschemes/ShadowsocksX-NG.xcscheme b/ShadowsocksX-NG.xcodeproj/xcshareddata/xcschemes/ShadowsocksX-NG.xcscheme index fde0400..899dbf9 100644 --- a/ShadowsocksX-NG.xcodeproj/xcshareddata/xcschemes/ShadowsocksX-NG.xcscheme +++ b/ShadowsocksX-NG.xcodeproj/xcshareddata/xcschemes/ShadowsocksX-NG.xcscheme @@ -85,8 +85,8 @@ @@ -113,8 +113,8 @@ @@ -136,8 +136,8 @@ @@ -155,8 +155,8 @@ diff --git a/ShadowsocksX-NG/Base.lproj/MainMenu.xib b/ShadowsocksX-NG/Base.lproj/MainMenu.xib index c07b020..8151ca8 100644 --- a/ShadowsocksX-NG/Base.lproj/MainMenu.xib +++ b/ShadowsocksX-NG/Base.lproj/MainMenu.xib @@ -12,7 +12,7 @@ - + @@ -50,32 +50,31 @@ - - + - + - + - + - + diff --git a/ShadowsocksX-NG/LaunchAgentUtils.swift b/ShadowsocksX-NG/LaunchAgentUtils.swift index 5f1bfb6..51435c5 100644 --- a/ShadowsocksX-NG/LaunchAgentUtils.swift +++ b/ShadowsocksX-NG/LaunchAgentUtils.swift @@ -10,10 +10,10 @@ import Foundation let SS_LOCAL_VERSION = "2.5.6.12.static" let PRIVOXY_VERSION = "3.0.26.static" -let APP_SUPPORT_DIR = "/Library/Application Support/ShadowsocksX-NG/" +let APP_SUPPORT_DIR = "/Library/Application Support/ShadowsocksX-NG-R/" let LAUNCH_AGENT_DIR = "/Library/LaunchAgents/" -let LAUNCH_AGENT_CONF_SSLOCAL_NAME = "com.qiuyuzhou.shadowsocksX-NG.local.plist" -let LAUNCH_AGENT_CONF_PRIVOXY_NAME = "com.qiuyuzhou.shadowsocksX-NG.http.plist" +let LAUNCH_AGENT_CONF_SSLOCAL_NAME = "com.qiuyuzhou.shadowsocksX-NG-R.local.plist" +let LAUNCH_AGENT_CONF_PRIVOXY_NAME = "com.qiuyuzhou.shadowsocksX-NG-R.http.plist" func getFileSHA1Sum(_ filepath: String) -> String { @@ -64,7 +64,7 @@ func generateSSLocalLauchAgentPlist() -> Bool { // For a complete listing of the keys, see the launchd.plist manual page. let dict: NSMutableDictionary = [ - "Label": "com.qiuyuzhou.shadowsocksX-NG.local", + "Label": "com.qiuyuzhou.shadowsocksX-NG-R.local", "WorkingDirectory": NSHomeDirectory() + APP_SUPPORT_DIR, "KeepAlive": true, "StandardOutPath": logFilePath, @@ -205,7 +205,7 @@ func generatePrivoxyLauchAgentPlist() -> Bool { // For a complete listing of the keys, see the launchd.plist manual page. let dict: NSMutableDictionary = [ - "Label": "com.qiuyuzhou.shadowsocksX-NG.http", + "Label": "com.qiuyuzhou.shadowsocksX-NG-R.http", "WorkingDirectory": NSHomeDirectory() + APP_SUPPORT_DIR, "KeepAlive": true, "StandardOutPath": logFilePath, diff --git a/ShadowsocksX-NG/ProxyConfHelper.m b/ShadowsocksX-NG/ProxyConfHelper.m index d67613a..eb53cc9 100644 --- a/ShadowsocksX-NG/ProxyConfHelper.m +++ b/ShadowsocksX-NG/ProxyConfHelper.m @@ -9,7 +9,7 @@ #import "ProxyConfHelper.h" #import "proxy_conf_helper_version.h" -#define kShadowsocksHelper @"/Library/Application Support/ShadowsocksX-NG/proxy_conf_helper" +#define kShadowsocksHelper @"/Library/Application Support/ShadowsocksX-NG-R/proxy_conf_helper" @implementation ProxyConfHelper diff --git a/ShadowsocksX-NG/ServerProfile.swift b/ShadowsocksX-NG/ServerProfile.swift index bd80833..5e558be 100644 --- a/ShadowsocksX-NG/ServerProfile.swift +++ b/ShadowsocksX-NG/ServerProfile.swift @@ -131,7 +131,7 @@ class ServerProfile: NSObject { } func validateDomainName(_ value: String) -> Bool { - let validHostnameRegex = "^(([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\\-]*[a-zA-Z0-9])\\.)*([A-Za-z0-9]|[A-Za-z0-9][A-Za-z0-9\\-]*[A-Za-z0-9])$" + let validHostnameRegex = "^(([a-zA-Z0-9_]|[a-zA-Z0-9_][a-zA-Z0-9\\-_]*[a-zA-Z0-9_])\\.)*([A-Za-z0-9_]|[A-Za-z0-9_][A-Za-z0-9\\-_]*[A-Za-z0-9_])$" if (value.range(of: validHostnameRegex, options: .regularExpression) != nil) { return true diff --git a/ShadowsocksX-NG/install_helper.sh b/ShadowsocksX-NG/install_helper.sh index fe34eba..aa8db66 100755 --- a/ShadowsocksX-NG/install_helper.sh +++ b/ShadowsocksX-NG/install_helper.sh @@ -6,9 +6,9 @@ # Created by clowwindy on 14-3-15. cd `dirname "${BASH_SOURCE[0]}"` -sudo mkdir -p "/Library/Application Support/ShadowsocksX-NG/" -sudo cp proxy_conf_helper "/Library/Application Support/ShadowsocksX-NG/" -sudo chown root:admin "/Library/Application Support/ShadowsocksX-NG/proxy_conf_helper" -sudo chmod +s "/Library/Application Support/ShadowsocksX-NG/proxy_conf_helper" +sudo mkdir -p "/Library/Application Support/ShadowsocksX-NG-R/" +sudo cp proxy_conf_helper "/Library/Application Support/ShadowsocksX-NG-R/" +sudo chown root:admin "/Library/Application Support/ShadowsocksX-NG-R/proxy_conf_helper" +sudo chmod +s "/Library/Application Support/ShadowsocksX-NG-R/proxy_conf_helper" -echo done \ No newline at end of file +echo done diff --git a/ShadowsocksX-NG/install_privoxy.sh b/ShadowsocksX-NG/install_privoxy.sh index a89d9e8..9c7f50c 100755 --- a/ShadowsocksX-NG/install_privoxy.sh +++ b/ShadowsocksX-NG/install_privoxy.sh @@ -9,9 +9,9 @@ cd `dirname "${BASH_SOURCE[0]}"` privoxyVersion=3.0.26.static -mkdir -p "$HOME/Library/Application Support/ShadowsocksX-NG/privoxy-$privoxyVersion" -cp -f privoxy "$HOME/Library/Application Support/ShadowsocksX-NG/privoxy-$privoxyVersion/" -rm -f "$HOME/Library/Application Support/ShadowsocksX-NG/privoxy" -ln -s "$HOME/Library/Application Support/ShadowsocksX-NG/privoxy-$privoxyVersion/privoxy" "$HOME/Library/Application Support/ShadowsocksX-NG/privoxy" +mkdir -p "$HOME/Library/Application Support/ShadowsocksX-NG-R/privoxy-$privoxyVersion" +cp -f privoxy "$HOME/Library/Application Support/ShadowsocksX-NG-R/privoxy-$privoxyVersion/" +rm -f "$HOME/Library/Application Support/ShadowsocksX-NG-R/privoxy" +ln -s "$HOME/Library/Application Support/ShadowsocksX-NG-R/privoxy-$privoxyVersion/privoxy" "$HOME/Library/Application Support/ShadowsocksX-NG-R/privoxy" echo done diff --git a/ShadowsocksX-NG/install_ss_local.sh b/ShadowsocksX-NG/install_ss_local.sh index 888387f..b5aba7b 100755 --- a/ShadowsocksX-NG/install_ss_local.sh +++ b/ShadowsocksX-NG/install_ss_local.sh @@ -9,11 +9,11 @@ cd `dirname "${BASH_SOURCE[0]}"` ssLocalVersion=2.5.6.12.static -mkdir -p "$HOME/Library/Application Support/ShadowsocksX-NG/ss-local-$ssLocalVersion" -cp -f ss-local "$HOME/Library/Application Support/ShadowsocksX-NG/ss-local-$ssLocalVersion/" -rm -f "$HOME/Library/Application Support/ShadowsocksX-NG/ss-local" -ln -s "$HOME/Library/Application Support/ShadowsocksX-NG/ss-local-$ssLocalVersion/ss-local" "$HOME/Library/Application Support/ShadowsocksX-NG/ss-local" +mkdir -p "$HOME/Library/Application Support/ShadowsocksX-NG-R/ss-local-$ssLocalVersion" +cp -f ss-local "$HOME/Library/Application Support/ShadowsocksX-NG-R/ss-local-$ssLocalVersion/" +rm -f "$HOME/Library/Application Support/ShadowsocksX-NG-R/ss-local" +ln -s "$HOME/Library/Application Support/ShadowsocksX-NG-R/ss-local-$ssLocalVersion/ss-local" "$HOME/Library/Application Support/ShadowsocksX-NG-R/ss-local" -cp -f libcrypto.1.0.0.dylib "$HOME/Library/Application Support/ShadowsocksX-NG/" +cp -f libcrypto.1.0.0.dylib "$HOME/Library/Application Support/ShadowsocksX-NG-R/" echo done diff --git a/ShadowsocksX-NG/reload_conf_privoxy.sh b/ShadowsocksX-NG/reload_conf_privoxy.sh index f8e435c..319b14c 100755 --- a/ShadowsocksX-NG/reload_conf_privoxy.sh +++ b/ShadowsocksX-NG/reload_conf_privoxy.sh @@ -6,7 +6,7 @@ # Created by 王晨 on 16/10/7. # Copyright © 2016年 zhfish. All rights reserved. -#launchctl kill SIGHUP "$HOME/Library/LaunchAgents/com.qiuyuzhou.shadowsocksX-NG.http.plist" +#launchctl kill SIGHUP "$HOME/Library/LaunchAgents/com.qiuyuzhou.shadowsocksX-NG-R.http.plist" -launchctl unload "$HOME/Library/LaunchAgents/com.qiuyuzhou.shadowsocksX-NG.http.plist" -launchctl load "$HOME/Library/LaunchAgents/com.qiuyuzhou.shadowsocksX-NG.http.plist" +launchctl unload "$HOME/Library/LaunchAgents/com.qiuyuzhou.shadowsocksX-NG-R.http.plist" +launchctl load "$HOME/Library/LaunchAgents/com.qiuyuzhou.shadowsocksX-NG-R.http.plist" diff --git a/ShadowsocksX-NG/reload_conf_ss_local.sh b/ShadowsocksX-NG/reload_conf_ss_local.sh index c96f790..0b12cff 100755 --- a/ShadowsocksX-NG/reload_conf_ss_local.sh +++ b/ShadowsocksX-NG/reload_conf_ss_local.sh @@ -6,7 +6,7 @@ # Created by 邱宇舟 on 16/6/6. # Copyright © 2016年 qiuyuzhou. All rights reserved. -#launchctl kill SIGHUP "$HOME/Library/LaunchAgents/com.qiuyuzhou.shadowsocksX-NG.local.plist" +#launchctl kill SIGHUP "$HOME/Library/LaunchAgents/com.qiuyuzhou.shadowsocksX-NG-R.local.plist" -launchctl unload "$HOME/Library/LaunchAgents/com.qiuyuzhou.shadowsocksX-NG.local.plist" -launchctl load "$HOME/Library/LaunchAgents/com.qiuyuzhou.shadowsocksX-NG.local.plist" +launchctl unload "$HOME/Library/LaunchAgents/com.qiuyuzhou.shadowsocksX-NG-R.local.plist" +launchctl load "$HOME/Library/LaunchAgents/com.qiuyuzhou.shadowsocksX-NG-R.local.plist" diff --git a/ShadowsocksX-NG/start_privoxy.sh b/ShadowsocksX-NG/start_privoxy.sh index bedef6a..3e1566d 100755 --- a/ShadowsocksX-NG/start_privoxy.sh +++ b/ShadowsocksX-NG/start_privoxy.sh @@ -6,4 +6,4 @@ # Created by 王晨 on 16/10/7. # Copyright © 2016年 zhfish. All rights reserved. -launchctl load "$HOME/Library/LaunchAgents/com.qiuyuzhou.shadowsocksX-NG.http.plist" +launchctl load "$HOME/Library/LaunchAgents/com.qiuyuzhou.shadowsocksX-NG-R.http.plist" diff --git a/ShadowsocksX-NG/start_ss_local.sh b/ShadowsocksX-NG/start_ss_local.sh index b4047d3..97be3ba 100755 --- a/ShadowsocksX-NG/start_ss_local.sh +++ b/ShadowsocksX-NG/start_ss_local.sh @@ -6,4 +6,4 @@ # Created by 邱宇舟 on 16/6/6. # Copyright © 2016年 qiuyuzhou. All rights reserved. -launchctl load "$HOME/Library/LaunchAgents/com.qiuyuzhou.shadowsocksX-NG.local.plist" \ No newline at end of file +launchctl load "$HOME/Library/LaunchAgents/com.qiuyuzhou.shadowsocksX-NG-R.local.plist" diff --git a/ShadowsocksX-NG/stop_privoxy.sh b/ShadowsocksX-NG/stop_privoxy.sh index 8cb6a2b..e84df0f 100755 --- a/ShadowsocksX-NG/stop_privoxy.sh +++ b/ShadowsocksX-NG/stop_privoxy.sh @@ -8,4 +8,4 @@ -launchctl unload "$HOME/Library/LaunchAgents/com.qiuyuzhou.shadowsocksX-NG.http.plist" +launchctl unload "$HOME/Library/LaunchAgents/com.qiuyuzhou.shadowsocksX-NG-R.http.plist" diff --git a/ShadowsocksX-NG/stop_ss_local.sh b/ShadowsocksX-NG/stop_ss_local.sh index 5a6cf57..55ca34a 100755 --- a/ShadowsocksX-NG/stop_ss_local.sh +++ b/ShadowsocksX-NG/stop_ss_local.sh @@ -8,4 +8,4 @@ -launchctl unload "$HOME/Library/LaunchAgents/com.qiuyuzhou.shadowsocksX-NG.local.plist" \ No newline at end of file +launchctl unload "$HOME/Library/LaunchAgents/com.qiuyuzhou.shadowsocksX-NG-R.local.plist"