Updated to new release v0.9.9
This commit is contained in:
@@ -2135,6 +2135,7 @@ def _verify_retained_release_integrity(
|
|||||||
|
|
||||||
def _extract_release_archive(archive: Path, destination: Path, version: str) -> None:
|
def _extract_release_archive(archive: Path, destination: Path, version: str) -> None:
|
||||||
expected_root = f"{UPDATE_ARCHIVE_PREFIX}{version}"
|
expected_root = f"{UPDATE_ARCHIVE_PREFIX}{version}"
|
||||||
|
archive_layout: str | None = None
|
||||||
seen: set[PurePosixPath] = set()
|
seen: set[PurePosixPath] = set()
|
||||||
total_bytes = 0
|
total_bytes = 0
|
||||||
try:
|
try:
|
||||||
@@ -2153,11 +2154,29 @@ def _extract_release_archive(archive: Path, destination: Path, version: str) ->
|
|||||||
if any(part in {"", ".", ".."} for part in raw_parts):
|
if any(part in {"", ".", ".."} for part in raw_parts):
|
||||||
raise LauncherUpdateError(f"unsafe launcher archive path: {member.name!r}")
|
raise LauncherUpdateError(f"unsafe launcher archive path: {member.name!r}")
|
||||||
path = PurePosixPath(name)
|
path = PurePosixPath(name)
|
||||||
if path.is_absolute() or not path.parts or path.parts[0] != expected_root:
|
if path.is_absolute() or not path.parts:
|
||||||
raise LauncherUpdateError(
|
raise LauncherUpdateError(
|
||||||
f"launcher archive member is outside {expected_root}: {member.name!r}"
|
f"unsafe launcher archive path: {member.name!r}"
|
||||||
)
|
)
|
||||||
relative = PurePosixPath(*path.parts[1:])
|
if path.parts[0] == expected_root:
|
||||||
|
member_layout = "wrapped"
|
||||||
|
elif path.parts[0] in _ALLOWED_RELEASE_ROOTS:
|
||||||
|
member_layout = "flat"
|
||||||
|
else:
|
||||||
|
raise LauncherUpdateError(
|
||||||
|
f"unexpected launcher archive path: {member.name!r}"
|
||||||
|
)
|
||||||
|
if archive_layout is None:
|
||||||
|
archive_layout = member_layout
|
||||||
|
elif archive_layout != member_layout:
|
||||||
|
raise LauncherUpdateError(
|
||||||
|
"launcher archive mixes flat and legacy wrapped paths"
|
||||||
|
)
|
||||||
|
relative = (
|
||||||
|
PurePosixPath(*path.parts[1:])
|
||||||
|
if archive_layout == "wrapped"
|
||||||
|
else path
|
||||||
|
)
|
||||||
if not relative.parts:
|
if not relative.parts:
|
||||||
if not member.isdir():
|
if not member.isdir():
|
||||||
raise LauncherUpdateError("launcher archive root must be a directory")
|
raise LauncherUpdateError("launcher archive root must be a directory")
|
||||||
@@ -2175,6 +2194,21 @@ def _extract_release_archive(archive: Path, destination: Path, version: str) ->
|
|||||||
raise LauncherUpdateError(
|
raise LauncherUpdateError(
|
||||||
f"unsupported launcher archive member: {member.name!r}"
|
f"unsupported launcher archive member: {member.name!r}"
|
||||||
)
|
)
|
||||||
|
if (
|
||||||
|
relative.parts[0] == "release.json"
|
||||||
|
and (len(relative.parts) != 1 or not member.isfile())
|
||||||
|
):
|
||||||
|
raise LauncherUpdateError(
|
||||||
|
f"unexpected launcher metadata path: {member.name!r}"
|
||||||
|
)
|
||||||
|
if (
|
||||||
|
len(relative.parts) == 1
|
||||||
|
and relative.parts[0] in {"ptlinux", "ptdiag"}
|
||||||
|
and not member.isdir()
|
||||||
|
):
|
||||||
|
raise LauncherUpdateError(
|
||||||
|
f"launcher package root must be a directory: {member.name!r}"
|
||||||
|
)
|
||||||
if member.mode & 0o022:
|
if member.mode & 0o022:
|
||||||
raise LauncherUpdateError(
|
raise LauncherUpdateError(
|
||||||
f"launcher archive member is group/world writable: {member.name!r}"
|
f"launcher archive member is group/world writable: {member.name!r}"
|
||||||
|
|||||||
@@ -1,11 +1,391 @@
|
|||||||
{
|
{
|
||||||
"archive_sha256": "4be27ca9320f4996d517b6259ac17c8bb668e918bfba7c844fed908e2ab67381",
|
"application": "PristonTale-EU",
|
||||||
"archive_size": 1444186,
|
"archive": {
|
||||||
"archive_url": "https://git.m4ko.net/m4ko/pristontale-eu-linux/releases/download/v0.9.8/pristontale-eu-linux-update-v0.9.8.tar.gz",
|
"layout": "flat",
|
||||||
|
"name": "PristonTale-EU-0.9.9.tar.gz",
|
||||||
|
"sha256": "362fa9ef25b463e58cd5a82e69525bc61f86ea27e12f73105b3789cbf86db317",
|
||||||
|
"size": 1473476,
|
||||||
|
"url": "https://git.m4ko.net/m4ko/pristontale-eu-linux/releases/download/v0.9.9/PristonTale-EU-0.9.9.tar.gz"
|
||||||
|
},
|
||||||
|
"archive_sha256": "362fa9ef25b463e58cd5a82e69525bc61f86ea27e12f73105b3789cbf86db317",
|
||||||
|
"archive_size": 1473476,
|
||||||
|
"archive_url": "https://git.m4ko.net/m4ko/pristontale-eu-linux/releases/download/v0.9.9/PristonTale-EU-0.9.9.tar.gz",
|
||||||
"channel": "stable",
|
"channel": "stable",
|
||||||
"minimum_updater_version": "0.5.0",
|
"commit": "290d1a5383219aeef0640ec8010d50cb6c1b2a00",
|
||||||
"notes_url": "https://git.m4ko.net/m4ko/pristontale-eu-linux/releases/tag/v0.9.8",
|
"compatibility": {
|
||||||
"published_at": "2026-09-08T20:49:27Z",
|
"config_schema": 1,
|
||||||
|
"manifest_schema": 1,
|
||||||
|
"minimum_config_schema": 1,
|
||||||
|
"minimum_updater_version": "0.9.9"
|
||||||
|
},
|
||||||
|
"files": [
|
||||||
|
{
|
||||||
|
"path": "ptdiag/__init__.py",
|
||||||
|
"sha256": "d8b2a580b6f08133b859cd4826ca1a89458a4f84de87869877133d5142a93ba6",
|
||||||
|
"size": 917
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptdiag/assbin.py",
|
||||||
|
"sha256": "c4a3ffbc8ee78c59547fdd7523563906db08b4a7a3b636ef99ceb9e8f6a16da3",
|
||||||
|
"size": 31105
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptdiag/logs.py",
|
||||||
|
"sha256": "3c07a45e89f69b2607288d7fd98f20e0679ee35599de03a3d4e3838ef93e91ba",
|
||||||
|
"size": 18769
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/__init__.py",
|
||||||
|
"sha256": "f6bc2b93c5098bcc613e4ea47c8c1bbd2386e483aa1368a3807d865d72d9c3d0",
|
||||||
|
"size": 151
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/__main__.py",
|
||||||
|
"sha256": "558713c62425bdf35f77642b6aaf1d0c7f0686982c05a9e0102b362697d66718",
|
||||||
|
"size": 2112
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/changelog.py",
|
||||||
|
"sha256": "5f9d1358df56dcda72c46de31eb829c588fbf66e445216371c919c29f31aa57d",
|
||||||
|
"size": 9289
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/cli.py",
|
||||||
|
"sha256": "da8b6e5f655ef2eabb87c1e0b892ac62b70bd2bd77ad89c3800a44d9be20b98c",
|
||||||
|
"size": 71420
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/command.py",
|
||||||
|
"sha256": "c0b9c4fa396ea7daf7a472bb0fcfa88f589fbd836d8f5b70d54ef5a24830a4d2",
|
||||||
|
"size": 9444
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/container_host.py",
|
||||||
|
"sha256": "169e5cf644be622cce5839eeec9f183f751e534bd91d8d3c593f16ad31de7b19",
|
||||||
|
"size": 26434
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/dashboard_debug.py",
|
||||||
|
"sha256": "cbbd9d78c7c51da6ed007ef758fdcf62642d489dd71377db30092ee54598cf8a",
|
||||||
|
"size": 6738
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/depot.py",
|
||||||
|
"sha256": "a1c4c64d12e4320c3254ca2b2a40e63bcaa7f7a3a6756d12e84d9a5235487862",
|
||||||
|
"size": 83405
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/desktop_identity.py",
|
||||||
|
"sha256": "25a3c31841b79d31efc35c7936c6ea09f4593d74a7f3c13c7c61d17b51a9d31a",
|
||||||
|
"size": 1825
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/doctor.py",
|
||||||
|
"sha256": "03c00c8072f234b6c45e53e65ee9974e3f76321169c263ab9e1ce97535ba9c65",
|
||||||
|
"size": 11591
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/download.py",
|
||||||
|
"sha256": "41c4d9f0a8a4b99a75f3b6fe05f958417f6dc880d6544b257f3f34d1cbc5d2ab",
|
||||||
|
"size": 6126
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/gamebox.py",
|
||||||
|
"sha256": "ea5878e59c27abbc4909fa0c0c215a36c28f5467e2166f125b30269314c9a2e4",
|
||||||
|
"size": 4603
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/gamebox_runtime.py",
|
||||||
|
"sha256": "200d20f57928fe661b459367fdf8fd789e4134b02feea9d578a4f27e93d20e19",
|
||||||
|
"size": 71348
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/gamescope_child_runtime.py",
|
||||||
|
"sha256": "c7688b6dfbfaca0c4544d2cd287e3283fda7417efd6bebc837fbbdd6368d308b",
|
||||||
|
"size": 1898
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/gamescope_runtime.py",
|
||||||
|
"sha256": "b852deef5f4770098d915032903950a5d7b2419f306052e1b89116d106b64e41",
|
||||||
|
"size": 35270
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/identity_probe.py",
|
||||||
|
"sha256": "235aa0a7699b0c829c11bd347de249851c998225807e0df3e84cf340100b3299",
|
||||||
|
"size": 12251
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/import_state.py",
|
||||||
|
"sha256": "4d65615ee1e3e0973b37e5633b80d0ad9c0d77847fe840e6cf3549575595f10c",
|
||||||
|
"size": 2388
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/importer.py",
|
||||||
|
"sha256": "be6204b7b52d5a827aa88f1d0fc8d70cbebd7621d30db9f2d375608738ad6019",
|
||||||
|
"size": 12314
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/install_status.py",
|
||||||
|
"sha256": "5c37dd0add2d8208102d8b40117dd0dc9de7582e3ddd15d2bf892877f83f609b",
|
||||||
|
"size": 2937
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/launcher-update-public.pem",
|
||||||
|
"sha256": "e462b7e25ac74cf480965986858ddd98f26474992489bc1fdd240bc5ee36f155",
|
||||||
|
"size": 625
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/launcher.py",
|
||||||
|
"sha256": "e36f3be2e95b53635ff8ffb7e66d098a3ec79b2464094fb0e48ec83da73d360b",
|
||||||
|
"size": 9315
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/locking.py",
|
||||||
|
"sha256": "725eebf03b821c110c817af80007567e7e21c4f657fbeaeee4f3b91e88a48992",
|
||||||
|
"size": 6856
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/login_diagnostics.py",
|
||||||
|
"sha256": "96fd67f95ade529b72b9456058317d3ea8f57553b1417052ab6c3cfacde1177f",
|
||||||
|
"size": 18398
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/login_trace.py",
|
||||||
|
"sha256": "ae62c7fe88310a415c5a9457773959531c993ee39eba05cf9b35c22e6c0429d1",
|
||||||
|
"size": 517
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/native/gamescope-3.16.20-ubuntu26.04-amd64",
|
||||||
|
"sha256": "3fc81536c22dcce2c593c11507a612c13221f5b2ce2e5326f7c63706ca965639",
|
||||||
|
"size": 2689360
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/native/gamescope-compat.README",
|
||||||
|
"sha256": "91ef45c64ff4c6bb8f195617195be46b2ff967c337951c828dbcf762307c2000",
|
||||||
|
"size": 2441
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/native/gamescope-compat.copyright",
|
||||||
|
"sha256": "7f98e9970b89481cc6fcae397c375f16d84f064405f71ff1e40fd713be85c194",
|
||||||
|
"size": 12011
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/native/gamescope-keep-nested-windows-visible.patch",
|
||||||
|
"sha256": "6c88f6d9bff77ee09365b1ff97ecaf868a49572b3a324435e18c26737f75ee30",
|
||||||
|
"size": 1523
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/native/gamescope-lazy-output-images.patch",
|
||||||
|
"sha256": "9aac0557821b83b370dee7520ca523ec2a24fbb9a145d096b545739fbcf7f9f9",
|
||||||
|
"size": 2611
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/native/gamescope-wayland-letterbox-backing.patch",
|
||||||
|
"sha256": "031b209df75e0854904512727cd324ce6468136b4f8356bdf62545c9ce9e2286",
|
||||||
|
"size": 989
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/native/gamescope-wayland-libdecor-input-scope.patch",
|
||||||
|
"sha256": "ee9c109d35126ad44a083a137d25d8db8ab9345cf61ab88dfafd757a41b4cba0",
|
||||||
|
"size": 2812
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/native/gamescope-wayland-live-resize.patch",
|
||||||
|
"sha256": "aee1f75462b779aaf8949c473687c4047d8f6792013c65a7c4cacf80a3c43ed1",
|
||||||
|
"size": 1802
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/native/pt-identity-probe.exe",
|
||||||
|
"sha256": "677cb5aa19f8dac65b982462bb30974feed05399fdd759765c3b6e802d4c838b",
|
||||||
|
"size": 357822
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/news.py",
|
||||||
|
"sha256": "304d47fe7a14b1b6711854be49ec698177e31ca963e06c1e4c9471d57d11ddc4",
|
||||||
|
"size": 11352
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/overlay.py",
|
||||||
|
"sha256": "89b40f3dcb0a101ce143b33d71d92c6e22d87be4e767230924db3f74d1bff4ae",
|
||||||
|
"size": 36971
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/paths.py",
|
||||||
|
"sha256": "06289b8ba2a47ae664f764c6be8c1b32d08d6fcf06ba860f65f27daf78287587",
|
||||||
|
"size": 8455
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/proton_compat.py",
|
||||||
|
"sha256": "a6431e9c9ab0f508e43213687733f9499ec9e51cf12a162cd5cd50d8219b09cc",
|
||||||
|
"size": 867
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/runtime.py",
|
||||||
|
"sha256": "5fdee0d71049c37301fc413d7bdce0d6b33f0b3a3c6976a3d9585a13e8176fff",
|
||||||
|
"size": 29937
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/self_update.py",
|
||||||
|
"sha256": "6483a1ec15acddbfac00618af1b11b24bbef91a380405d8f53b604709f28c63f",
|
||||||
|
"size": 97815
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/server_status.py",
|
||||||
|
"sha256": "d16763bbb7cb49d5eed4336c90ed222643fb84a595beaa33aed6d84e53d9e427",
|
||||||
|
"size": 4505
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/settings.py",
|
||||||
|
"sha256": "ecfc88c666669607fcc21c269515fb90034748bcf3be81ccfea4463f2a3e9f28",
|
||||||
|
"size": 10212
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/system_identity.py",
|
||||||
|
"sha256": "223be560af497acf2ff9fa9bd0cdccd8f8db8e1aea1d951d6f6a0019e4fe9ff7",
|
||||||
|
"size": 2551
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/telemetry.py",
|
||||||
|
"sha256": "2e68648e74ec4c620b19c0c7a9f9823b140b5bc8d297e107712676db4c1b68fe",
|
||||||
|
"size": 48411
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/telemetry_environment.py",
|
||||||
|
"sha256": "cd27430f13f720a00105db673605fa8d0129724eabd3c66cae37d4547fb8c383",
|
||||||
|
"size": 40153
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/tk_chrome.py",
|
||||||
|
"sha256": "eacb3ab0a9e2312f9c65bac5d54cc2667ce23b715629600d339c9fbb732823ac",
|
||||||
|
"size": 18234
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/ui/__init__.py",
|
||||||
|
"sha256": "490aac56992e66562e3774ce61d5b242acfd605a90fa48064b85013f58f849cb",
|
||||||
|
"size": 4197
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/ui/components/__init__.py",
|
||||||
|
"sha256": "f0f4351ac8e1c0d265e9732ed55bab0ac05c9bd1f087254f9f94cb218f2e972f",
|
||||||
|
"size": 40
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/ui/components/action_panel.py",
|
||||||
|
"sha256": "b18b5b78557fbeff8d6d64af40b445dbf545c9193264fcc41f99b96bf09dabdd",
|
||||||
|
"size": 3351
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/ui/components/broadcasts_panel.py",
|
||||||
|
"sha256": "c47e0c882e35e7381331f82c0c9efb67b05bc6592b35c4385c4fc1bf77c440de",
|
||||||
|
"size": 844
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/ui/components/header.py",
|
||||||
|
"sha256": "59b0314e2b45f34509b07945fa7b287eaa14b59159c970c36f625b14c8654146",
|
||||||
|
"size": 1958
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/ui/components/news_panel.py",
|
||||||
|
"sha256": "e5a96f49b7faf07f309f821fad0b3892e62a685f87b852226822ff6c885200a7",
|
||||||
|
"size": 3082
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/ui/components/progress_panel.py",
|
||||||
|
"sha256": "bfbff60711d05e7cd4e5e8f2b95e423bf41584232cc109f917ee5e61a00ba304",
|
||||||
|
"size": 4728
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/ui/components/server_status.py",
|
||||||
|
"sha256": "ed177a2193d75a81bea2adc210a1b3f93238678d832d30d25db42acccb87ca5b",
|
||||||
|
"size": 1463
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/ui/components/theme.py",
|
||||||
|
"sha256": "ce34c61fb058d2821225d38a2849068b4b153f073ca43d335d79a0ce138fb29d",
|
||||||
|
"size": 15961
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/ui/components/update_dialog.py",
|
||||||
|
"sha256": "af5775b07b6872b5e5f465deb8d9f583ddfeeae1df79a126fb2d2fe967bb3d06",
|
||||||
|
"size": 22005
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/ui/dashboard.py",
|
||||||
|
"sha256": "219d677c1ac73e7720bf10607770c6377dea2b18b9f38d9013fb5b4741b029dd",
|
||||||
|
"size": 97296
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/ui/dialogs/__init__.py",
|
||||||
|
"sha256": "3869855b68ee664861acf06a00976c6e520d1859c04cd74cb6db2ad552ebe1aa",
|
||||||
|
"size": 65
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/ui/dialogs/activity.py",
|
||||||
|
"sha256": "1ae9611f05efe4cd42d5b0c05f4c983cd84130f9b536ada05bc1eca418fd3658",
|
||||||
|
"size": 1105
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/ui/dialogs/settings_dialog.py",
|
||||||
|
"sha256": "3a78c155a388f38c3d2e358a648057f6d76161fd7f6690d10e711d5d7ca96d6e",
|
||||||
|
"size": 23733
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/ui/viewmodels/__init__.py",
|
||||||
|
"sha256": "476b410ee8cebbd69933379c9d331ef4f598ef7f185c5705da403a15d9e1e6dd",
|
||||||
|
"size": 71
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/ui/viewmodels/dashboard.py",
|
||||||
|
"sha256": "bf9b610bd77a8b6b581da64af87b287d6fb399b0b07ac12549caa45aefdc7463",
|
||||||
|
"size": 14343
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/ui/viewmodels/downloader.py",
|
||||||
|
"sha256": "a5090ffe3328e5af1c1138481ad1b02becb037b661c9c80e8d47914831addf32",
|
||||||
|
"size": 6861
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/ui/viewmodels/health.py",
|
||||||
|
"sha256": "a2bafcdc3cd4d3838137d706c3580908e4768039e5eb9c736a6fb2c7d9a07351",
|
||||||
|
"size": 3389
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/ui/viewmodels/installation.py",
|
||||||
|
"sha256": "c89362cf960db32ad078f38e2c9b921038402b2cf74d645db8f97a2c2e6b05f3",
|
||||||
|
"size": 1161
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/umu.py",
|
||||||
|
"sha256": "429efa26742c9571dc24a9e5e5f2b5cd99c33285393bd86e6cb0dd02266f6276",
|
||||||
|
"size": 11589
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/update_resolver.py",
|
||||||
|
"sha256": "6147497af6abcf3de25f85447f80144ee73f3026547b5b0eeede50c054485a98",
|
||||||
|
"size": 11138
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "ptlinux/window_diagnostics.py",
|
||||||
|
"sha256": "001647801173bc5a914fbd53b9b2dd88750ded7b872fa8436ff2c5b40737e86e",
|
||||||
|
"size": 6667
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "release.json",
|
||||||
|
"sha256": "1064833b4387c33b53afcc973577c11faa3c781d7811b039fe8990f789b057b9",
|
||||||
|
"size": 190
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"minimum_updater_version": "0.9.9",
|
||||||
|
"notes_url": "https://git.m4ko.net/m4ko/pristontale-eu-linux/releases/tag/v0.9.9",
|
||||||
|
"published_at": "2026-09-09T20:35:13Z",
|
||||||
|
"release": {
|
||||||
|
"notes_markdown": "# PristonTale EU Launcher 0.9.9\n\n## Changes\n\n- Added better support for kubuntu and fixed some issues with telemetry. (`290d1a5`)\n- Updated diagnostic message. (`6e62191`)\n- Updated the update system to support multi channels (stable / pre-release). (`5770969`)\n- Released a new version, 0.9.8. (`2a53a59`)\n- Fixed more issues with Cinnamon window resizing and popups. (`76bef94`)\n- Fixed issues with telemetry. (`1a120bb`)\n- Released new stable version 0.9.7. (`108ea94`)\n- Added a fix for X11 / Cinnamon window popups and maximize button not visible. (`1cfe862`)\n- Added telemetry system to get information about issues. (`f06fc2e`)\n- Upload files to \"updates\" (`a1ff479`)\n- Delete updates/stable.json.sig (`6eea3b2`)\n- Update updates/stable.json (`ee9bb06`)\n- Fixed issues with gamescope not properly launching. (`bea9d6f`)\n\n---\n\nVersion: `0.9.9` \nChannel: `stable` \nTag: `v0.9.9` \nSource commit: `290d1a5383219aeef0640ec8010d50cb6c1b2a00`\n",
|
||||||
|
"release_notes_url": "https://git.m4ko.net/m4ko/pristontale-eu-linux/releases/tag/v0.9.9",
|
||||||
|
"summary": "Added better support for kubuntu and fixed some issues with telemetry. (`290d1a5`)",
|
||||||
|
"title": "PristonTale EU Launcher 0.9.9"
|
||||||
|
},
|
||||||
"schema": 1,
|
"schema": 1,
|
||||||
"version": "0.9.8"
|
"status": "active",
|
||||||
|
"tag": "v0.9.9",
|
||||||
|
"version": "0.9.9"
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
Reference in New Issue
Block a user