namespace WiiCompiled.Setup.Linux; internal static class ProductInfo { public const string Name = "WiiCompiled"; public const string Version = "0.2.31"; } /// One installed product's record inside install-state.json. internal sealed class ProductInstallRecord { public string Profile { get; set; } = ""; public string InstallDirectory { get; set; } = ""; public string ExecutableName { get; set; } = ""; public string DolSha256 { get; set; } = ""; public string RelSha256 { get; set; } = ""; public string BuiltUtc { get; set; } = ""; } /// /// The whole flat state document this tool keeps at ~/.local/share/WiiCompiled/install-state.json. /// Deliberately not a fingerprint tree: local-build.sh already does its own incremental-rebuild /// caching, so this only needs to remember where things were installed and what they were built /// against, not decide when to rebuild. /// internal sealed class InstallState { public int SchemaVersion { get; set; } = 1; public string Workspace { get; set; } = ""; public List Products { get; set; } = new(); }