Compare commits
3 Commits
dd9ce1a628
...
5aa0c24164
| Author | SHA1 | Date | |
|---|---|---|---|
| 5aa0c24164 | |||
| 35c6ccfee8 | |||
| 4345cf2cf7 |
24
.gitignore
vendored
24
.gitignore
vendored
@@ -396,3 +396,27 @@ FodyWeavers.xsd
|
||||
|
||||
# JetBrains Rider
|
||||
*.sln.iml
|
||||
|
||||
# macOS
|
||||
.DS_Store
|
||||
.AppleDouble
|
||||
.LSOverride
|
||||
Icon
|
||||
._*
|
||||
.DocumentRevisions-V100
|
||||
.fseventsd
|
||||
.Spotlight-V100
|
||||
.TemporaryItems
|
||||
.Trashes
|
||||
.VolumeIcon.icns
|
||||
.com.apple.timemachine.donotpresent
|
||||
.AppleDB
|
||||
.AppleDesktop
|
||||
Network Trash Folder
|
||||
Temporary Items
|
||||
.apdisk
|
||||
__MACOSX/
|
||||
*.icloud
|
||||
|
||||
# Build output
|
||||
/output/
|
||||
|
||||
@@ -14,7 +14,6 @@
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Octokit" Version="14.0.0" />
|
||||
<PackageReference Include="SharpCompress" Version="0.39.0" />
|
||||
<PackageReference Include="Spectre.Console" Version="0.49.1" />
|
||||
<PackageReference Include="System.Management" Version="9.0.3" />
|
||||
|
||||
@@ -34,8 +34,9 @@ namespace BadBuilder
|
||||
("Rock Band Blitz", "https://cdn.niklascfw.de/xbox360/GameData.zip"),
|
||||
("Simple 360 NAND Flasher", "https://cdn.niklascfw.de/xbox360/Flasher.7z"),
|
||||
("XeUnshackle", "https://cdn.niklascfw.de/xbox360/XeUnshackle-BETA-v1_03.zip"),
|
||||
("BadUpdate", "https://cdn.niklascfw.de/xbox360/Xbox360BadUpdate-Retail-USB-v1.2.zip"),
|
||||
("BadUpdate Tools", "https://cdn.niklascfw.de/xbox360/Tools.zip"),
|
||||
};
|
||||
await DownloadHelper.GetGitHubAssets(items);
|
||||
|
||||
List<DownloadItem> existingFiles = items.Where(item =>
|
||||
File.Exists(Path.Combine(DOWNLOAD_DIR, item.url.Split('/').Last()))).ToList();
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
using Octokit;
|
||||
using Spectre.Console;
|
||||
using Spectre.Console;
|
||||
|
||||
using static BadBuilder.Utilities.Constants;
|
||||
|
||||
@@ -7,34 +6,6 @@ namespace BadBuilder.Helpers
|
||||
{
|
||||
internal static class DownloadHelper
|
||||
{
|
||||
internal static async Task GetGitHubAssets(List<DownloadItem> items)
|
||||
{
|
||||
GitHubClient gitClient = new(new ProductHeaderValue("BadBuilder-Downloader"));
|
||||
List<string> repos =
|
||||
[
|
||||
"grimdoomer/Xbox360BadUpdate"
|
||||
];
|
||||
|
||||
foreach (var repo in repos)
|
||||
{
|
||||
string[] splitRepo = repo.Split('/');
|
||||
var latestRelease = await gitClient.Repository.Release.GetLatest(splitRepo[0], splitRepo[1]);
|
||||
|
||||
foreach (var asset in latestRelease.Assets)
|
||||
{
|
||||
string friendlyName = asset.Name switch
|
||||
{
|
||||
var name when name.Contains("Free", StringComparison.OrdinalIgnoreCase) => "FreeMyXe",
|
||||
var name when name.Contains("Tools", StringComparison.OrdinalIgnoreCase) => "BadUpdate Tools",
|
||||
var name when name.Contains("BadUpdate", StringComparison.OrdinalIgnoreCase) => "BadUpdate",
|
||||
_ => asset.Name.Substring(0, asset.Name.Length - 4)
|
||||
};
|
||||
|
||||
items.Add(new(friendlyName, asset.BrowserDownloadUrl));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
internal static async Task DownloadFileAsync(HttpClient client, ProgressTask task, string url)
|
||||
{
|
||||
try
|
||||
@@ -71,4 +42,4 @@ namespace BadBuilder.Helpers
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
33
build.sh
Normal file
33
build.sh
Normal file
@@ -0,0 +1,33 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
ROOT="$(cd "$(dirname "$0")" && pwd)"
|
||||
OUTPUT_DIR="$ROOT/output"
|
||||
PROJECT="$ROOT/BadBuilder/BadBuilder.csproj"
|
||||
|
||||
mkdir -p "$OUTPUT_DIR"
|
||||
|
||||
publish() {
|
||||
local rid="$1"
|
||||
local name="$2"
|
||||
|
||||
echo "Publishing $name ($rid)..."
|
||||
dotnet publish "$PROJECT" \
|
||||
-c Release \
|
||||
-r "$rid" \
|
||||
-p:SelfContained=false \
|
||||
-p:PublishSingleFile=true \
|
||||
-o "$OUTPUT_DIR/tmp-$rid"
|
||||
|
||||
mv "$OUTPUT_DIR/tmp-$rid/BadBuilder.exe" "$OUTPUT_DIR/$name"
|
||||
rm -rf "$OUTPUT_DIR/tmp-$rid"
|
||||
echo " -> $OUTPUT_DIR/$name"
|
||||
}
|
||||
|
||||
publish "win-x64" "BadBuilder-AMD64.exe"
|
||||
publish "win-x86" "BadBuilder-x86.exe"
|
||||
publish "win-arm64" "BadBuilder-ARM64.exe"
|
||||
|
||||
echo
|
||||
echo "Done. Binaries in $OUTPUT_DIR:"
|
||||
ls -lh "$OUTPUT_DIR"/BadBuilder-*.exe
|
||||
Reference in New Issue
Block a user