Add update contracts, IPC progress & providers

Introduce a new update subsystem: shared contracts for manifests, messages, paths and state (LanMountainDesktop.Shared.Contracts.Update). Add IPC and reporting infrastructure for installer progress (IUpdateProgressReporter, LauncherUpdateProgressIpcServer, NullUpdateProgressReporter) and integrate progress/complete reporting into UpdateEngineService. Add multiple update service components and providers (CompositeManifestProvider, GithubReleaseManifestProvider, PlondsApiManifestProvider, UpdateDownloadEngine, UpdateOrchestrator, UpdateInstallGateway, CLI launcher bridge, launcher bridge interfaces, observable helper, state store, progress subject, JSON context). Update settings and models to support UseGhProxyMirror and PLONDS/GitHub fallback logic, plus localization strings and UI/viewmodel files for update settings and progress. Misc: installer script tweak and a small change in Plonds generator. This adds end-to-end support for checking, downloading and reporting update progress and results.
This commit is contained in:
lincube
2026-05-03 19:31:04 +08:00
parent 01670147f6
commit 458494d131
42 changed files with 3626 additions and 192 deletions

View File

@@ -579,6 +579,27 @@
"settings.update.status_check_failed": "アップデートの確認に失敗しました。",
"settings.update.status_available_summary_format": "アップデートあり: {0}(現在: {1}",
"settings.update.status_up_to_date_format": "最新版です({0})。",
"settings.update.force_full_label": "完全更新を強制",
"settings.update.force_full_desc": "差分更新をスキップし、完全インストーラを強制ダウンロードします。差分更新が繰り返し失敗する場合に使用してください。",
"settings.update.network_accel_label": "ネットワーク高速化",
"settings.update.network_accel_desc": "gh-proxyミラーを使用してGitHubダウンロードを加速します。GitHubフルアップデートにフォールバック時のみ適用されます。",
"settings.update.redownload_button": "再ダウンロード",
"settings.update.phase_scanning": "更新ソースをスキャン中...",
"settings.update.phase_force_scanning": "更新ソースを強制スキャン中...",
"settings.update.phase_locating_resources": "更新リソースを特定中...",
"settings.update.phase_force_full": "完全更新を強制中...",
"settings.update.phase_downloading_full": "完全インストーラをダウンロード中...",
"settings.update.phase_downloading_delta": "差分更新をダウンロード中...",
"settings.update.status_downloading_full": "完全インストーラをダウンロード中...",
"settings.update.status_force_full_checking": "完全インストーラを確認中...",
"settings.update.status_force_full_failed": "利用可能な完全インストーラがありません。",
"settings.update.status_downloaded_no_hash_format": "更新がダウンロードされました。ハッシュ:{0}",
"settings.update.status_redownload_no_check": "再ダウンロードする前に更新を確認してください。",
"settings.update.status_redownloading": "インストーラを再ダウンロード中...",
"settings.update.status_redownload_failed_format": "再ダウンロードに失敗しました:{0}",
"settings.update.source_plonds": "PLONDS",
"settings.update.source_plonds_desc": "PLONDS配信エンドポイントを優先し、利用不可時にGitHubに自動フォールバックします。",
"settings.update.status_check_failed_plonds": "PLONDS更新確認に失敗しました。GitHubにフォールバック中...",
"settings.window.drawer_default": "詳細",
"market.toolbar.search_placeholder": "プラグインを検索",
"market.toolbar.refresh": "更新",