From e4c37c5d5dc734fb94149af4a6273f35f818bdca Mon Sep 17 00:00:00 2001 From: yuuko Date: Sun, 24 Nov 2024 00:49:25 -0800 Subject: chore: rework depotdownloader patches for 2.7 --- ...1-ProtoManifest-sort-files-in-constructor.patch | 24 +++++++++++ .../2_7/0002-emit-json-in-.DepotDownload.patch | 50 ++++++++++++++++++++++ 2 files changed, 74 insertions(+) create mode 100644 srcds-pkgs/depotdownloader-json/2_7/0001-ProtoManifest-sort-files-in-constructor.patch create mode 100644 srcds-pkgs/depotdownloader-json/2_7/0002-emit-json-in-.DepotDownload.patch (limited to 'srcds-pkgs/depotdownloader-json/2_7') diff --git a/srcds-pkgs/depotdownloader-json/2_7/0001-ProtoManifest-sort-files-in-constructor.patch b/srcds-pkgs/depotdownloader-json/2_7/0001-ProtoManifest-sort-files-in-constructor.patch new file mode 100644 index 0000000..3cc62b8 --- /dev/null +++ b/srcds-pkgs/depotdownloader-json/2_7/0001-ProtoManifest-sort-files-in-constructor.patch @@ -0,0 +1,24 @@ +From 1ecf96ef85c9d2d14619da93bd5a5ce53a74d8ad Mon Sep 17 00:00:00 2001 +From: yuuko +Date: Wed, 1 Nov 2023 06:46:57 -0700 +Subject: [PATCH 1/2] ProtoManifest: sort files in constructor + +--- + DepotDownloader/ProtoManifest.cs | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/DepotDownloader/ProtoManifest.cs b/DepotDownloader/ProtoManifest.cs +index b6eb010..260fdef 100644 +--- a/DepotDownloader/ProtoManifest.cs ++++ b/DepotDownloader/ProtoManifest.cs +@@ -23,6 +23,7 @@ namespace DepotDownloader + public ProtoManifest(DepotManifest sourceManifest, ulong id) : this() + { + sourceManifest.Files.ForEach(f => Files.Add(new FileData(f))); ++ Files.Sort((f1,f2) => f1.FileName.CompareTo(f2.FileName)); + ID = id; + CreationTime = sourceManifest.CreationTime; + } +-- +2.47.0 + diff --git a/srcds-pkgs/depotdownloader-json/2_7/0002-emit-json-in-.DepotDownload.patch b/srcds-pkgs/depotdownloader-json/2_7/0002-emit-json-in-.DepotDownload.patch new file mode 100644 index 0000000..cd50e0b --- /dev/null +++ b/srcds-pkgs/depotdownloader-json/2_7/0002-emit-json-in-.DepotDownload.patch @@ -0,0 +1,50 @@ +From 740cc23a0993d5a0d757aeb07762714b5e0a4fbe Mon Sep 17 00:00:00 2001 +From: yuuko +Date: Sun, 24 Nov 2024 00:43:33 -0800 +Subject: [PATCH 2/2] emit json in .DepotDownload + +--- + DepotDownloader/ContentDownloader.cs | 1 + + DepotDownloader/ProtoManifest.cs | 8 ++++++++ + 2 files changed, 9 insertions(+) + +diff --git a/DepotDownloader/ContentDownloader.cs b/DepotDownloader/ContentDownloader.cs +index 9042c39..bd1ec4a 100644 +--- a/DepotDownloader/ContentDownloader.cs ++++ b/DepotDownloader/ContentDownloader.cs +@@ -876,6 +876,7 @@ namespace DepotDownloader + + newProtoManifest = new ProtoManifest(depotManifest, depot.ManifestId); + newProtoManifest.SaveToFile(newManifestFileName, out var checksum); ++ newProtoManifest.SaveToJSON(newManifestFileName.Replace(".bin", ".json")); + File.WriteAllBytes(newManifestFileName + ".sha", checksum); + + Console.WriteLine(" Done!"); +diff --git a/DepotDownloader/ProtoManifest.cs b/DepotDownloader/ProtoManifest.cs +index 260fdef..ffb0420 100644 +--- a/DepotDownloader/ProtoManifest.cs ++++ b/DepotDownloader/ProtoManifest.cs +@@ -5,6 +5,8 @@ using System; + using System.Collections.Generic; + using System.IO; + using System.IO.Compression; ++using System.Text; ++using System.Text.Json; + using System.Security.Cryptography; + using ProtoBuf; + using SteamKit2; +@@ -158,5 +160,11 @@ namespace DepotDownloader + using var ds = new DeflateStream(fs, CompressionMode.Compress); + ms.CopyTo(ds); + } ++ ++ public void SaveToJSON(string filename) ++ { ++ var jsonBytes = new UTF8Encoding(true).GetBytes(JsonSerializer.Serialize(this)); ++ File.Open(filename, FileMode.Create).Write(jsonBytes, 0, jsonBytes.Length); ++ } + } + } +-- +2.47.0 + -- cgit v1.2.3