mirror of
https://github.com/2dust/v2rayN.git
synced 2025-04-19 13:42:24 +00:00
Add support for brook custom configuration
https://github.com/txthinking/brook https://github.com/txthinking/brook/issues/1372
This commit is contained in:
parent
9d92be99ee
commit
2a0012824a
5 changed files with 20 additions and 17 deletions
|
@ -1,4 +1,4 @@
|
||||||
namespace ServiceLib.Enums
|
namespace ServiceLib.Enums
|
||||||
{
|
{
|
||||||
public enum ECoreType
|
public enum ECoreType
|
||||||
{
|
{
|
||||||
|
@ -12,6 +12,7 @@
|
||||||
sing_box = 24,
|
sing_box = 24,
|
||||||
juicity = 25,
|
juicity = 25,
|
||||||
hysteria2 = 26,
|
hysteria2 = 26,
|
||||||
|
brook = 27,
|
||||||
v2rayN = 99
|
v2rayN = 99
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
namespace ServiceLib
|
namespace ServiceLib
|
||||||
{
|
{
|
||||||
public class Global
|
public class Global
|
||||||
{
|
{
|
||||||
|
@ -18,6 +18,7 @@
|
||||||
public const string GeoUrl = "https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/{0}.dat";
|
public const string GeoUrl = "https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/{0}.dat";
|
||||||
public const string SpeedPingTestUrl = @"https://www.google.com/generate_204";
|
public const string SpeedPingTestUrl = @"https://www.google.com/generate_204";
|
||||||
public const string JuicityCoreUrl = "https://github.com/juicity/juicity/releases";
|
public const string JuicityCoreUrl = "https://github.com/juicity/juicity/releases";
|
||||||
|
public const string BrookCoreUrl = "https://github.com/txthinking/brook/releases";
|
||||||
public const string SingboxRulesetUrl = @"https://raw.githubusercontent.com/2dust/sing-box-rules/rule-set-{0}/{1}.srs";
|
public const string SingboxRulesetUrl = @"https://raw.githubusercontent.com/2dust/sing-box-rules/rule-set-{0}/{1}.srs";
|
||||||
public const string IPAPIUrl = "https://api.ip.sb/geoip";
|
public const string IPAPIUrl = "https://api.ip.sb/geoip";
|
||||||
|
|
||||||
|
@ -502,4 +503,4 @@
|
||||||
|
|
||||||
#endregion const
|
#endregion const
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -225,7 +225,7 @@ namespace ServiceLib.Handler
|
||||||
StartInfo = new()
|
StartInfo = new()
|
||||||
{
|
{
|
||||||
FileName = fileName,
|
FileName = fileName,
|
||||||
Arguments = string.Format(coreInfo.Arguments, configPath),
|
Arguments = string.Format(coreInfo.Arguments, coreInfo.AbsolutePath ? Utils.GetConfigPath(configPath) : configPath),
|
||||||
WorkingDirectory = Utils.GetConfigPath(),
|
WorkingDirectory = Utils.GetConfigPath(),
|
||||||
UseShellExecute = false,
|
UseShellExecute = false,
|
||||||
RedirectStandardOutput = displayLog,
|
RedirectStandardOutput = displayLog,
|
||||||
|
|
|
@ -76,7 +76,6 @@ namespace ServiceLib.Handler
|
||||||
ReleaseApiUrl = Global.V2flyCoreUrl.Replace(Global.GithubUrl, Global.GithubApiUrl),
|
ReleaseApiUrl = Global.V2flyCoreUrl.Replace(Global.GithubUrl, Global.GithubApiUrl),
|
||||||
Match = "V2Ray",
|
Match = "V2Ray",
|
||||||
VersionArg = "-version",
|
VersionArg = "-version",
|
||||||
RedirectInfo = true,
|
|
||||||
},
|
},
|
||||||
|
|
||||||
new CoreInfo
|
new CoreInfo
|
||||||
|
@ -88,7 +87,6 @@ namespace ServiceLib.Handler
|
||||||
ReleaseApiUrl = Global.V2flyCoreUrl.Replace(Global.GithubUrl, Global.GithubApiUrl),
|
ReleaseApiUrl = Global.V2flyCoreUrl.Replace(Global.GithubUrl, Global.GithubApiUrl),
|
||||||
Match = "V2Ray",
|
Match = "V2Ray",
|
||||||
VersionArg = "version",
|
VersionArg = "version",
|
||||||
RedirectInfo = true,
|
|
||||||
},
|
},
|
||||||
|
|
||||||
new CoreInfo
|
new CoreInfo
|
||||||
|
@ -106,7 +104,6 @@ namespace ServiceLib.Handler
|
||||||
DownloadUrlOSXArm64 = Global.XrayCoreUrl + "/download/{0}/Xray-macos-arm64-v8a.zip",
|
DownloadUrlOSXArm64 = Global.XrayCoreUrl + "/download/{0}/Xray-macos-arm64-v8a.zip",
|
||||||
Match = "Xray",
|
Match = "Xray",
|
||||||
VersionArg = "-version",
|
VersionArg = "-version",
|
||||||
RedirectInfo = true,
|
|
||||||
},
|
},
|
||||||
|
|
||||||
new CoreInfo
|
new CoreInfo
|
||||||
|
@ -124,7 +121,6 @@ namespace ServiceLib.Handler
|
||||||
DownloadUrlOSXArm64 = Global.MihomoCoreUrl + "/download/{0}/mihomo-darwin-arm64-{0}.gz",
|
DownloadUrlOSXArm64 = Global.MihomoCoreUrl + "/download/{0}/mihomo-darwin-arm64-{0}.gz",
|
||||||
Match = "Mihomo",
|
Match = "Mihomo",
|
||||||
VersionArg = "-v",
|
VersionArg = "-v",
|
||||||
RedirectInfo = true,
|
|
||||||
},
|
},
|
||||||
|
|
||||||
new CoreInfo
|
new CoreInfo
|
||||||
|
@ -133,7 +129,6 @@ namespace ServiceLib.Handler
|
||||||
CoreExes = ["hysteria-windows-amd64", "hysteria"],
|
CoreExes = ["hysteria-windows-amd64", "hysteria"],
|
||||||
Arguments = "-c {0}",
|
Arguments = "-c {0}",
|
||||||
Url = Global.HysteriaCoreUrl,
|
Url = Global.HysteriaCoreUrl,
|
||||||
RedirectInfo = true,
|
|
||||||
},
|
},
|
||||||
|
|
||||||
new CoreInfo
|
new CoreInfo
|
||||||
|
@ -142,7 +137,6 @@ namespace ServiceLib.Handler
|
||||||
CoreExes = [ "naive", "naiveproxy"],
|
CoreExes = [ "naive", "naiveproxy"],
|
||||||
Arguments = "{0}",
|
Arguments = "{0}",
|
||||||
Url = Global.NaiveproxyCoreUrl,
|
Url = Global.NaiveproxyCoreUrl,
|
||||||
RedirectInfo = false,
|
|
||||||
},
|
},
|
||||||
|
|
||||||
new CoreInfo
|
new CoreInfo
|
||||||
|
@ -151,7 +145,6 @@ namespace ServiceLib.Handler
|
||||||
CoreExes = ["tuic-client", "tuic"],
|
CoreExes = ["tuic-client", "tuic"],
|
||||||
Arguments = "-c {0}",
|
Arguments = "-c {0}",
|
||||||
Url = Global.TuicCoreUrl,
|
Url = Global.TuicCoreUrl,
|
||||||
RedirectInfo = true,
|
|
||||||
},
|
},
|
||||||
|
|
||||||
new CoreInfo
|
new CoreInfo
|
||||||
|
@ -160,7 +153,7 @@ namespace ServiceLib.Handler
|
||||||
CoreExes = ["sing-box-client", "sing-box"],
|
CoreExes = ["sing-box-client", "sing-box"],
|
||||||
Arguments = "run -c {0} --disable-color",
|
Arguments = "run -c {0} --disable-color",
|
||||||
Url = Global.SingboxCoreUrl,
|
Url = Global.SingboxCoreUrl,
|
||||||
RedirectInfo = true,
|
|
||||||
ReleaseApiUrl = Global.SingboxCoreUrl.Replace(Global.GithubUrl, Global.GithubApiUrl),
|
ReleaseApiUrl = Global.SingboxCoreUrl.Replace(Global.GithubUrl, Global.GithubApiUrl),
|
||||||
DownloadUrlWin64 = Global.SingboxCoreUrl + "/download/{0}/sing-box-{1}-windows-amd64.zip",
|
DownloadUrlWin64 = Global.SingboxCoreUrl + "/download/{0}/sing-box-{1}-windows-amd64.zip",
|
||||||
DownloadUrlWinArm64 = Global.SingboxCoreUrl + "/download/{0}/sing-box-{1}-windows-arm64.zip",
|
DownloadUrlWinArm64 = Global.SingboxCoreUrl + "/download/{0}/sing-box-{1}-windows-arm64.zip",
|
||||||
|
@ -186,7 +179,15 @@ namespace ServiceLib.Handler
|
||||||
CoreExes = ["hysteria-windows-amd64", "hysteria-linux-amd64", "hysteria"],
|
CoreExes = ["hysteria-windows-amd64", "hysteria-linux-amd64", "hysteria"],
|
||||||
Arguments = "-c {0}",
|
Arguments = "-c {0}",
|
||||||
Url = Global.HysteriaCoreUrl,
|
Url = Global.HysteriaCoreUrl,
|
||||||
RedirectInfo = true,
|
},
|
||||||
|
|
||||||
|
new CoreInfo
|
||||||
|
{
|
||||||
|
CoreType = ECoreType.brook,
|
||||||
|
CoreExes = ["brook_windows_amd64", "brook_linux_amd64", "brook"],
|
||||||
|
Arguments = " {0}",
|
||||||
|
Url = Global.BrookCoreUrl,
|
||||||
|
AbsolutePath = true,
|
||||||
}
|
}
|
||||||
|
|
||||||
];
|
];
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
namespace ServiceLib.Models
|
namespace ServiceLib.Models
|
||||||
{
|
{
|
||||||
[Serializable]
|
[Serializable]
|
||||||
public class CoreInfo
|
public class CoreInfo
|
||||||
|
@ -16,6 +16,6 @@
|
||||||
public string? DownloadUrlOSXArm64 { get; set; }
|
public string? DownloadUrlOSXArm64 { get; set; }
|
||||||
public string? Match { get; set; }
|
public string? Match { get; set; }
|
||||||
public string? VersionArg { get; set; }
|
public string? VersionArg { get; set; }
|
||||||
public bool RedirectInfo { get; set; }
|
public bool AbsolutePath { get; set; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue