feat: use canonical GitHub downloader release
This commit is contained in:
@@ -24,7 +24,7 @@ Alle Downloads kommen von der eigenen Gitea-Instanz (git.24-music.de) oder offiz
|
||||
| 14 | Scripte (Rename MKV AVI etc.) | Gitea: xabbo-scripts |
|
||||
| 15 | Twitch VOD Manager | Gitea: Twitch-VOD-Manager |
|
||||
| 16 | Multi-Hoster-Upload + `.mhu` Data-File auf Desktop | Gitea: Multi-Hoster-Upload |
|
||||
| 17 | Real-Debrid-Downloader + `.mdd` Data-File auf Desktop | Gitea: real-debrid-downloader |
|
||||
| 17 | Real-Debrid-Downloader + `.mdd` Data-File auf Desktop | GitHub: Sucukdeluxe/multi-debrid-downloader |
|
||||
|
||||
## Windows-Einstellungen
|
||||
|
||||
@@ -37,7 +37,7 @@ Alle Downloads kommen von der eigenen Gitea-Instanz (git.24-music.de) oder offiz
|
||||
|
||||
## Gitea Repos
|
||||
|
||||
Alle eigenen Tools werden ueber die Gitea API (latest Release) geladen:
|
||||
Alle eigenen Tools werden ueber die Gitea API (latest Release) geladen. Der Multi-Debrid-Downloader kommt aus seinem kanonischen GitHub-Release:
|
||||
|
||||
| Repo | Inhalt |
|
||||
|------|--------|
|
||||
@@ -50,7 +50,7 @@ Alle eigenen Tools werden ueber die Gitea API (latest Release) geladen:
|
||||
| [ffmpeg](https://git.24-music.de/Administrator/ffmpeg) | FFmpeg Essentials Build (Mirror von gyan.dev) |
|
||||
| [Twitch-VOD-Manager](https://git.24-music.de/Administrator/Twitch-VOD-Manager) | Twitch VOD Manager |
|
||||
| [Multi-Hoster-Upload](https://git.24-music.de/Administrator/Multi-Hoster-Upload) | Multi-Hoster Upload Tool + `.mhu` Data-File |
|
||||
| [real-debrid-downloader](https://git.24-music.de/Administrator/real-debrid-downloader) | Real-Debrid Downloader + `.mdd` Data-File |
|
||||
| [multi-debrid-downloader](https://github.com/Sucukdeluxe/multi-debrid-downloader) | Real-Debrid Downloader + `.mdd` Data-File |
|
||||
|
||||
## Benutzung
|
||||
|
||||
@@ -67,6 +67,10 @@ Alle eigenen Tools werden ueber die Gitea API (latest Release) geladen:
|
||||
|
||||
## Changelog
|
||||
|
||||
### v2.4.0
|
||||
- Real-Debrid-Downloader wird aus dem kanonischen GitHub-Release `Sucukdeluxe/multi-debrid-downloader` geladen
|
||||
- Gitea bleibt die Quelle fuer alle weiteren eigenen Tools
|
||||
|
||||
### v2.3.0
|
||||
- FFmpeg-Download von gyan.dev auf Gitea umgezogen (gyan.dev war arsch langsam)
|
||||
- Neues Repo `Administrator/ffmpeg` als Mirror
|
||||
@@ -74,7 +78,7 @@ Alle eigenen Tools werden ueber die Gitea API (latest Release) geladen:
|
||||
|
||||
### v2.2.0
|
||||
- `Multi-Hoster-Upload.mhu` wird vom Multi-Hoster-Upload Release geladen und auf Desktop gepackt
|
||||
- `Multi-Debrid-Downloader.mdd` wird vom real-debrid-downloader Release geladen und auf Desktop gepackt
|
||||
- `Multi-Debrid-Downloader.mdd` wird vom Multi-Debrid-Downloader Release geladen und auf Desktop gepackt
|
||||
- Neuer Helper `Copy-Gitea-DataFile-To-Desktop`
|
||||
- Skip-Logik wenn Data-File schon auf Desktop liegt
|
||||
|
||||
|
||||
+77
-5
@@ -8,6 +8,9 @@ $ProgressPreference = "SilentlyContinue"
|
||||
$tempDir = "$env:TEMP\vserver-setup"
|
||||
$desktopPath = [Environment]::GetFolderPath("Desktop")
|
||||
$winrarPath = "C:\Program Files\WinRAR\WinRAR.exe"
|
||||
$giteaBaseUrl = "https://git.24-music.de"
|
||||
$githubApiBaseUrl = "https://api.github.com"
|
||||
$githubDownloaderRepo = "Sucukdeluxe/multi-debrid-downloader"
|
||||
$totalSteps = 18
|
||||
|
||||
New-Item -ItemType Directory -Force -Path $tempDir | Out-Null
|
||||
@@ -45,7 +48,7 @@ function Unrar-File {
|
||||
|
||||
function Get-Gitea-Latest-Asset {
|
||||
param($Repo, $Filter)
|
||||
$releaseApi = "https://git.24-music.de/api/v1/repos/Administrator/$Repo/releases?limit=1"
|
||||
$releaseApi = "$giteaBaseUrl/api/v1/repos/Administrator/$Repo/releases?limit=1"
|
||||
$wc = New-Object System.Net.WebClient
|
||||
$wc.Headers.Add("User-Agent", "Mozilla/5.0")
|
||||
$release = ($wc.DownloadString($releaseApi) | ConvertFrom-Json)[0]
|
||||
@@ -56,6 +59,20 @@ function Get-Gitea-Latest-Asset {
|
||||
return $asset
|
||||
}
|
||||
|
||||
function Get-GitHub-Latest-Asset {
|
||||
param($Repo, $Filter)
|
||||
$releaseApi = "$githubApiBaseUrl/repos/$Repo/releases/latest"
|
||||
$wc = New-Object System.Net.WebClient
|
||||
$wc.Headers.Add("User-Agent", "VServerSetup")
|
||||
$wc.Headers.Add("Accept", "application/vnd.github+json")
|
||||
$release = ($wc.DownloadString($releaseApi) | ConvertFrom-Json)
|
||||
$asset = $release.assets | Where-Object { $_.name -like $Filter -and $_.name -notlike "*.blockmap" } | Select-Object -First 1
|
||||
if ($asset) {
|
||||
Write-Host " Version: $($release.tag_name)" -ForegroundColor Gray
|
||||
}
|
||||
return $asset
|
||||
}
|
||||
|
||||
function Copy-Gitea-DataFile-To-Desktop {
|
||||
param($Repo, $Filter)
|
||||
try {
|
||||
@@ -111,6 +128,61 @@ function Install-Gitea-App {
|
||||
}
|
||||
}
|
||||
|
||||
function Install-GitHub-App {
|
||||
param($Name, $Repo, $StepNum, $DetectPaths, $ProcessName)
|
||||
Write-Host ""
|
||||
Write-Host "[$StepNum/$totalSteps] $Name..." -ForegroundColor Yellow
|
||||
|
||||
foreach ($p in $DetectPaths) {
|
||||
if (Test-Path $p) {
|
||||
Write-Host " Bereits installiert - ueberspringe." -ForegroundColor Gray
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
try {
|
||||
Write-Host " Hole neueste Version von GitHub..." -ForegroundColor Gray
|
||||
$asset = Get-GitHub-Latest-Asset -Repo $Repo -Filter "*Setup*.exe"
|
||||
if ($asset) {
|
||||
$installer = "$tempDir\$($asset.name)"
|
||||
if (Download-File -Url $asset.browser_download_url -Output $installer) {
|
||||
Write-Host " Installiere $Name (silent)..." -ForegroundColor Gray
|
||||
Start-Process -FilePath $installer -ArgumentList "/S" -Wait
|
||||
if ($ProcessName) {
|
||||
Start-Sleep -Seconds 3
|
||||
Stop-Process -Name $ProcessName -Force -ErrorAction SilentlyContinue
|
||||
}
|
||||
Write-Host " $Name installiert!" -ForegroundColor Green
|
||||
}
|
||||
} else {
|
||||
Write-Host " FEHLER: Kein Setup-Asset im GitHub-Release gefunden" -ForegroundColor Red
|
||||
}
|
||||
} catch {
|
||||
Write-Host " FEHLER beim Abrufen des GitHub-Releases: $_" -ForegroundColor Red
|
||||
}
|
||||
}
|
||||
|
||||
function Copy-GitHub-DataFile-To-Desktop {
|
||||
param($Repo, $Filter)
|
||||
try {
|
||||
$asset = Get-GitHub-Latest-Asset -Repo $Repo -Filter $Filter
|
||||
if (-not $asset) {
|
||||
Write-Host " WARNUNG: Kein Asset '$Filter' im GitHub-Release gefunden" -ForegroundColor Yellow
|
||||
return
|
||||
}
|
||||
$destPath = Join-Path $desktopPath $asset.name
|
||||
if (Test-Path $destPath) {
|
||||
Write-Host " $($asset.name) bereits vorhanden - ueberspringe." -ForegroundColor Gray
|
||||
return
|
||||
}
|
||||
if (Download-File -Url $asset.browser_download_url -Output $destPath) {
|
||||
Write-Host " $($asset.name) auf Desktop!" -ForegroundColor Green
|
||||
}
|
||||
} catch {
|
||||
Write-Host " FEHLER beim Laden der GitHub-Datei: $_" -ForegroundColor Red
|
||||
}
|
||||
}
|
||||
|
||||
# 1. PYTHON
|
||||
Write-Host ""
|
||||
Write-Host "[1/$totalSteps] Python..." -ForegroundColor Yellow
|
||||
@@ -176,7 +248,7 @@ if (Test-Path "$desktopPath\G-Earth") {
|
||||
} else {
|
||||
try {
|
||||
Write-Host " Hole neueste Version von Gitea..." -ForegroundColor Gray
|
||||
$releaseApi = "https://git.24-music.de/api/v1/repos/Administrator/G-Earth/releases?limit=1"
|
||||
$releaseApi = "$giteaBaseUrl/api/v1/repos/Administrator/G-Earth/releases?limit=1"
|
||||
$wc = New-Object System.Net.WebClient
|
||||
$wc.Headers.Add("User-Agent", "Mozilla/5.0")
|
||||
$release = ($wc.DownloadString($releaseApi) | ConvertFrom-Json)
|
||||
@@ -470,12 +542,12 @@ Install-Gitea-App -Name "Multi-Hoster-Upload" -Repo "Multi-Hoster-Upload" `
|
||||
-ProcessName "Multi-Hoster-Upload"
|
||||
Copy-Gitea-DataFile-To-Desktop -Repo "Multi-Hoster-Upload" -Filter "*.mhu"
|
||||
|
||||
# 17. REAL-DEBRID-DOWNLOADER (von Gitea)
|
||||
Install-Gitea-App -Name "Real-Debrid-Downloader" -Repo "real-debrid-downloader" `
|
||||
# 17. REAL-DEBRID-DOWNLOADER (von GitHub)
|
||||
Install-GitHub-App -Name "Real-Debrid-Downloader" -Repo $githubDownloaderRepo `
|
||||
-StepNum 17 `
|
||||
-DetectPaths @("$env:LOCALAPPDATA\Programs\real-debrid-downloader\Real-Debrid-Downloader.exe", "$desktopPath\Real-Debrid-Downloader.lnk") `
|
||||
-ProcessName "Real-Debrid-Downloader"
|
||||
Copy-Gitea-DataFile-To-Desktop -Repo "real-debrid-downloader" -Filter "*.mdd"
|
||||
Copy-GitHub-DataFile-To-Desktop -Repo $githubDownloaderRepo -Filter "*.mdd"
|
||||
|
||||
# 18. WINDOWS EINSTELLUNGEN
|
||||
Write-Host ""
|
||||
|
||||
Reference in New Issue
Block a user