fix: browser and ffmpeg download issues (#3)

This commit is contained in:
levende 2026-02-05 15:04:44 +02:00 committed by GitHub
parent 40100af9ab
commit b3d4806809
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
4 changed files with 17 additions and 13 deletions

View File

@ -8,6 +8,8 @@ namespace Shared.Engine
/// </summary> /// </summary>
public static class FFmpeg public static class FFmpeg
{ {
private const string baseDownloadUrl = "https://github.com/lampac-talks/lampac/releases/download/ffmpeg";
#region InitializationAsync #region InitializationAsync
static bool disableInstall = false; static bool disableInstall = false;
@ -39,7 +41,7 @@ namespace Shared.Engine
if (File.Exists($"data/{fileName}.exe")) if (File.Exists($"data/{fileName}.exe"))
continue; continue;
if (!await Http.DownloadFile($"https://github.com/immisterio/ffmpeg/releases/download/ffmpeg2/{fileName}-win{arh}-gpl.exe", $"data/{fileName}.exe")) if (!await Http.DownloadFile($"{baseDownloadUrl}/{fileName}-win{arh}-gpl.exe", $"data/{fileName}.exe"))
File.Delete($"data/{fileName}.exe"); File.Delete($"data/{fileName}.exe");
} }
@ -76,7 +78,7 @@ namespace Shared.Engine
if (File.Exists($"data/{fileName}")) if (File.Exists($"data/{fileName}"))
continue; continue;
if (!await Http.DownloadFile($"https://github.com/immisterio/ffmpeg/releases/download/ffmpeg2/{fileName}-linux{arh}-gpl", $"data/{fileName}")) if (!await Http.DownloadFile($"{baseDownloadUrl}/{fileName}-linux{arh}-gpl", $"data/{fileName}"))
{ {
File.Delete($"data/{fileName}"); File.Delete($"data/{fileName}");
continue; continue;

View File

@ -63,7 +63,7 @@ namespace Shared.PlaywrightCore
case Architecture.X64: case Architecture.X64:
case Architecture.Arm64: case Architecture.Arm64:
{ {
string uri = $"https://github.com/immisterio/playwright/releases/download/chrome/chrome-win-{RuntimeInformation.ProcessArchitecture.ToString().ToLower()}.zip"; string uri = $"{baseDownloadUrl}/chrome-win-{RuntimeInformation.ProcessArchitecture.ToString().ToLower()}.zip";
bool res = await DownloadFile(uri, ".playwright/chrome.zip"); bool res = await DownloadFile(uri, ".playwright/chrome.zip");
if (!res) if (!res)
{ {
@ -89,7 +89,7 @@ namespace Shared.PlaywrightCore
case Architecture.X64: case Architecture.X64:
case Architecture.Arm64: case Architecture.Arm64:
{ {
string uri = $"https://github.com/immisterio/playwright/releases/download/chrome/chrome-mac-{RuntimeInformation.ProcessArchitecture.ToString().ToLower()}.zip"; string uri = $"{PlaywrightBase.baseDownloadUrl}/chrome-mac-{RuntimeInformation.ProcessArchitecture.ToString().ToLower()}.zip";
bool res = await DownloadFile(uri, ".playwright/chrome.zip"); bool res = await DownloadFile(uri, ".playwright/chrome.zip");
if (!res) if (!res)
{ {
@ -114,7 +114,7 @@ namespace Shared.PlaywrightCore
case Architecture.X86: case Architecture.X86:
case Architecture.X64: case Architecture.X64:
{ {
string uri = $"https://github.com/immisterio/playwright/releases/download/chrome/chrome-linux-{RuntimeInformation.ProcessArchitecture.ToString().ToLower()}.zip"; string uri = $"{PlaywrightBase.baseDownloadUrl}/chrome-linux-{RuntimeInformation.ProcessArchitecture.ToString().ToLower()}.zip";
bool res = await DownloadFile(uri, ".playwright/chrome.zip"); bool res = await DownloadFile(uri, ".playwright/chrome.zip");
if (!res) if (!res)
{ {

View File

@ -45,7 +45,7 @@ namespace Shared.PlaywrightCore
case Architecture.X64: case Architecture.X64:
{ {
string camoufox = RuntimeInformation.ProcessArchitecture == Architecture.X64 ? "x86_64" : "i686"; string camoufox = RuntimeInformation.ProcessArchitecture == Architecture.X64 ? "x86_64" : "i686";
string uri = $"https://github.com/immisterio/playwright/releases/download/chrome/camoufox-135.0.1-beta.23-win.{camoufox}.zip"; string uri = $"{baseDownloadUrl}/camoufox-135.0.1-beta.23-win.{camoufox}.zip";
bool res = await DownloadFile(uri, ".playwright/firefox/release.zip", "firefox/"); bool res = await DownloadFile(uri, ".playwright/firefox/release.zip", "firefox/");
if (!res) if (!res)
{ {
@ -69,7 +69,7 @@ namespace Shared.PlaywrightCore
case Architecture.Arm64: case Architecture.Arm64:
{ {
string camoufox = RuntimeInformation.ProcessArchitecture == Architecture.X64 ? "x86_64" : "arm64"; string camoufox = RuntimeInformation.ProcessArchitecture == Architecture.X64 ? "x86_64" : "arm64";
string uri = $"https://github.com/immisterio/playwright/releases/download/chrome/camoufox-135.0.1-beta.23-mac.{camoufox}.zip"; string uri = $"{baseDownloadUrl}/camoufox-135.0.1-beta.23-mac.{camoufox}.zip";
bool res = await DownloadFile(uri, ".playwright/camoufox.zip"); bool res = await DownloadFile(uri, ".playwright/camoufox.zip");
if (!res) if (!res)
{ {
@ -109,7 +109,7 @@ namespace Shared.PlaywrightCore
if (camoufox != null) if (camoufox != null)
{ {
string uri = $"https://github.com/immisterio/playwright/releases/download/chrome/camoufox-135.0.1-beta.23-lin.{camoufox}.zip"; string uri = $"{baseDownloadUrl}/camoufox-135.0.1-beta.23-lin.{camoufox}.zip";
bool res = await DownloadFile(uri, ".playwright/camoufox.zip", "firefox/"); bool res = await DownloadFile(uri, ".playwright/camoufox.zip", "firefox/");
if (!res) if (!res)
{ {

View File

@ -21,6 +21,8 @@ namespace Shared.PlaywrightCore
public class PlaywrightBase public class PlaywrightBase
{ {
protected const string baseDownloadUrl = "https://github.com/lampac-talks/lampac/releases/download/browsers";
static DateTime _nextClearDb = default; static DateTime _nextClearDb = default;
public TaskCompletionSource<string> completionSource { get; private set; } = new TaskCompletionSource<string>(); public TaskCompletionSource<string> completionSource { get; private set; } = new TaskCompletionSource<string>();
@ -55,7 +57,7 @@ namespace Shared.PlaywrightCore
if (!File.Exists(".playwright/package/index.js")) if (!File.Exists(".playwright/package/index.js"))
{ {
bool res = await DownloadFile("https://github.com/immisterio/playwright/releases/download/chrome/package.zip", ".playwright/package.zip"); bool res = await DownloadFile($"{baseDownloadUrl}/package.zip", ".playwright/package.zip");
if (!res) if (!res)
{ {
Console.WriteLine("Playwright: error download package.zip"); Console.WriteLine("Playwright: error download package.zip");
@ -72,7 +74,7 @@ namespace Shared.PlaywrightCore
case Architecture.Arm64: case Architecture.Arm64:
{ {
string arc = RuntimeInformation.ProcessArchitecture.ToString().ToLower(); string arc = RuntimeInformation.ProcessArchitecture.ToString().ToLower();
bool res = await DownloadFile($"https://github.com/immisterio/playwright/releases/download/chrome/node-win-{arc}.exe", $".playwright\\node\\win32_{arc}\\node.exe"); bool res = await DownloadFile($"{baseDownloadUrl}/node-win-{arc}.exe", $".playwright\\node\\win32_{arc}\\node.exe");
if (!res) if (!res)
{ {
Console.WriteLine($"Playwright: error download node-win-{arc}.exe"); Console.WriteLine($"Playwright: error download node-win-{arc}.exe");
@ -93,7 +95,7 @@ namespace Shared.PlaywrightCore
case Architecture.Arm64: case Architecture.Arm64:
{ {
string arc = RuntimeInformation.ProcessArchitecture.ToString().ToLower(); string arc = RuntimeInformation.ProcessArchitecture.ToString().ToLower();
bool res = await DownloadFile($"https://github.com/immisterio/playwright/releases/download/chrome/node-mac-{arc}", $".playwright/node/mac-{arc}/node"); bool res = await DownloadFile($"{baseDownloadUrl}/node-mac-{arc}", $".playwright/node/mac-{arc}/node");
if (!res) if (!res)
{ {
Console.WriteLine($"Playwright: error download node-mac-{arc}"); Console.WriteLine($"Playwright: error download node-mac-{arc}");
@ -118,7 +120,7 @@ namespace Shared.PlaywrightCore
case Architecture.Arm64: case Architecture.Arm64:
{ {
string arc = RuntimeInformation.ProcessArchitecture.ToString().ToLower(); string arc = RuntimeInformation.ProcessArchitecture.ToString().ToLower();
bool res = await DownloadFile($"https://github.com/immisterio/playwright/releases/download/chrome/node-linux-{arc}", $".playwright/node/linux-{arc}/node"); bool res = await DownloadFile($"{baseDownloadUrl}/node-linux-{arc}", $".playwright/node/linux-{arc}/node");
if (!res) if (!res)
{ {
Console.WriteLine($"Playwright: error download node-linux-{arc}"); Console.WriteLine($"Playwright: error download node-linux-{arc}");
@ -131,7 +133,7 @@ namespace Shared.PlaywrightCore
} }
case Architecture.Arm: case Architecture.Arm:
{ {
bool res = await DownloadFile("https://github.com/immisterio/playwright/releases/download/chrome/node-linux-armv7l", ".playwright/node/linux-arm/node"); bool res = await DownloadFile($"{baseDownloadUrl}/node-linux-armv7l", ".playwright/node/linux-arm/node");
if (!res) if (!res)
{ {
Console.WriteLine("Playwright: error download node-linux-armv7l"); Console.WriteLine("Playwright: error download node-linux-armv7l");