Skip to content

Commit 7b8a18d

Browse files
authored
Merge branch 'main' into aa/fix-updater-reload
2 parents f327c6c + cbea151 commit 7b8a18d

File tree

20 files changed

+1139
-790
lines changed

20 files changed

+1139
-790
lines changed

backend/decky_loader/helpers.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
ssl_ctx = ssl.create_default_context(cafile=certifi.where())
2424

2525
assets_regex = re.compile("^/plugins/.*/assets/.*")
26+
data_regex = re.compile("^/plugins/.*/data/.*")
2627
dist_regex = re.compile("^/plugins/.*/dist/.*")
2728
frontend_regex = re.compile("^/frontend/.*")
2829
logger = getLogger("Main")
@@ -45,6 +46,7 @@ async def csrf_middleware(request: Request, handler: Handler):
4546
str(request.rel_url.path) == "/fetch" or \
4647
str(request.rel_url.path) == "/ws" or \
4748
assets_regex.match(str(request.rel_url)) or \
49+
data_regex.match(str(request.rel_url)) or \
4850
dist_regex.match(str(request.rel_url)) or \
4951
frontend_regex.match(str(request.rel_url)):
5052

backend/decky_loader/loader.py

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88

99
from aiohttp import web
1010
from os.path import exists
11+
from decky_loader.helpers import get_homebrew_path
1112
from watchdog.events import RegexMatchingEventHandler, FileSystemEvent
1213
from watchdog.observers import Observer
1314

@@ -91,6 +92,7 @@ def __init__(self, server_instance: PluginManager, ws: WSRouter, plugin_path: st
9192
web.get("/plugins/{plugin_name}/frontend_bundle", self.handle_frontend_bundle),
9293
web.get("/plugins/{plugin_name}/dist/{path:.*}", self.handle_plugin_dist),
9394
web.get("/plugins/{plugin_name}/assets/{path:.*}", self.handle_plugin_frontend_assets),
95+
web.get("/plugins/{plugin_name}/data/{path:.*}", self.handle_plugin_frontend_assets_from_data),
9496
])
9597

9698
server_instance.ws.add_route("loader/get_plugins", self.get_plugins)
@@ -142,6 +144,13 @@ async def handle_plugin_frontend_assets(self, request: web.Request):
142144

143145
return web.FileResponse(file, headers={"Cache-Control": "no-cache"})
144146

147+
async def handle_plugin_frontend_assets_from_data(self, request: web.Request):
148+
plugin = self.plugins[request.match_info["plugin_name"]]
149+
home = get_homebrew_path()
150+
file = path.join(home, "data", plugin.plugin_directory, request.match_info["path"])
151+
152+
return web.FileResponse(file, headers={"Cache-Control": "no-cache"})
153+
145154
async def handle_frontend_bundle(self, request: web.Request):
146155
plugin = self.plugins[request.match_info["plugin_name"]]
147156

@@ -216,4 +225,4 @@ async def handle_plugin_method_call(self, plugin_name: str, method_name: str, *a
216225
async def handle_plugin_backend_reload(self, plugin_name: str):
217226
plugin = self.plugins[plugin_name]
218227

219-
await self.reload_queue.put((plugin.file, plugin.plugin_directory))
228+
await self.reload_queue.put((plugin.file, plugin.plugin_directory))

backend/decky_loader/locales/fr-FR.json

Lines changed: 54 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"BranchSelect": {
33
"update_channel": {
44
"label": "Canal de mise à jour",
5-
"prerelease": "Avant-première",
5+
"prerelease": "Préliminaire",
66
"stable": "Stable",
77
"testing": "Test"
88
}
@@ -52,21 +52,29 @@
5252
"MultiplePluginsInstallModal": {
5353
"confirm": "Êtes-vous sûr de vouloir apporter les modifications suivantes ?",
5454
"description": {
55+
"downgrade": "Rétrograder {{name}} en {{version}}",
5556
"install": "Installer {{name}} {{version}}",
57+
"overwrite": "Écraser {{name}} avec {{version}}",
5658
"reinstall": "Réinstaller {{name}} {{version}}",
57-
"update": "Mettre à jour {{name}} à {{version}}"
59+
"update": "Mettre à jour {{name}} en {{version}}"
5860
},
5961
"ok_button": {
6062
"idle": "Confirmer",
6163
"loading": "En cours"
6264
},
6365
"title": {
66+
"downgrade_many": "Rétrograder {{count}} plugins",
67+
"downgrade_one": "Rétrograder 1 plugin",
68+
"downgrade_other": "Rétrograder {{count}} plugins",
6469
"install_many": "Installer {{count}} plugins",
6570
"install_one": "Installer 1 plugin",
6671
"install_other": "Installer {{count}} plugins",
6772
"mixed_many": "Modifier {{count}} plugins",
6873
"mixed_one": "Modifier {{count}} plugin",
6974
"mixed_other": "Modifier {{count}} plugins",
75+
"overwrite_many": "Écraser {{count}} plugins",
76+
"overwrite_one": "Écraser 1 plugin",
77+
"overwrite_other": "Écraser {{count}} plugins",
7078
"reinstall_many": "Réinstaller {{count}} plugins",
7179
"reinstall_one": "Réinstaller 1 plugin",
7280
"reinstall_other": "Réinstaller {{count}} plugins",
@@ -76,19 +84,36 @@
7684
}
7785
},
7886
"PluginCard": {
87+
"plugin_downgrade": "Rétrograder",
7988
"plugin_full_access": "Ce plugin a un accès complet à votre Steam Deck.",
8089
"plugin_install": "Installer",
8190
"plugin_no_desc": "Aucune description fournie.",
91+
"plugin_overwrite": "Écraser",
92+
"plugin_reinstall": "Réinstaller",
93+
"plugin_update": "Mettre à jour",
8294
"plugin_version_label": "Version du plugin"
8395
},
8496
"PluginInstallModal": {
97+
"downgrade": {
98+
"button_idle": "Rétrograder",
99+
"button_processing": "Rétrogradation",
100+
"desc": "Êtes-vous sûr de vouloir rétrograder {{artifact}} vers la version {{version}} ?",
101+
"title": "Rétrograder {{artifact}}"
102+
},
85103
"install": {
86104
"button_idle": "Installer",
87105
"button_processing": "Installation en cours",
88106
"desc": "Êtes-vous sûr de vouloir installer {{artifact}} {{version}} ?",
89107
"title": "Installer {{artifact}}"
90108
},
91109
"no_hash": "Ce plugin n'a pas de somme de contrôle, vous l'installez à vos risques et périls.",
110+
"not_installed": "(non installé)",
111+
"overwrite": {
112+
"button_idle": "Écraser",
113+
"button_processing": "Écrasement",
114+
"desc": "Êtes-vous sûr de vouloir remplacer {{artifact}} par la version {{version}} ?",
115+
"title": "Écraser {{artifact}}"
116+
},
92117
"reinstall": {
93118
"button_idle": "Réinstaller",
94119
"button_processing": "Réinstallation en cours",
@@ -97,8 +122,8 @@
97122
},
98123
"update": {
99124
"button_idle": "Mettre à jour",
100-
"button_processing": "Mise à jour",
101-
"desc": "Êtes-vous sûr de vouloir mettre à jour {{artifact}} {{version}} ?",
125+
"button_processing": "Mise à jour en cours",
126+
"desc": "Êtes-vous sûr de vouloir mettre à jour {{artifact}} vers la version {{version}} ?",
102127
"title": "Mettre à jour {{artifact}}"
103128
}
104129
},
@@ -124,7 +149,7 @@
124149
"decky_title": "Decky",
125150
"decky_update_available": "Mise à jour vers {{tag_name}} disponible !",
126151
"error": "Erreur",
127-
"plugin_error_uninstall": "Allez sur {{name}} dans le menu de Decky si vous voulez désinstaller ce plugin.",
152+
"plugin_error_uninstall": "Le chargement de {{name}} a provoqué une exception comme indiqué ci-dessus. Cela signifie généralement que le plugin nécessite une mise à jour pour la nouvelle version de SteamUI. Vérifiez si une mise à jour est présente ou évaluez sa suppression dans les paramètres de Decky, dans la section Plugins.",
128153
"plugin_load_error": {
129154
"message": "Erreur lors du chargement du plugin {{name}}",
130155
"toast": "Erreur lors du chargement de {{name}}"
@@ -153,7 +178,7 @@
153178
"cef_console": {
154179
"button": "Ouvrir la console",
155180
"desc": "Ouvre la console CEF. Utile uniquement à des fins de débogage. Les éléments présentés ici sont potentiellement dangereux et ne doivent être utilisés que si vous êtes un développeur de plugins ou si vous êtes dirigé ici par un de ces développeurs.",
156-
"label": "CEF Console"
181+
"label": "Console CEF"
157182
},
158183
"header": "Autre",
159184
"react_devtools": {
@@ -171,7 +196,7 @@
171196
},
172197
"valve_internal": {
173198
"desc1": "Active le menu développeur interne de Valve.",
174-
"desc2": "Ne touchez à rien dans ce menu à moins que vous ne sachiez ce qu'il fait.",
199+
"desc2": "Ne touchez à rien dans ce menu à moins que vous ne sachiez ce que ça fait.",
175200
"label": "Activer Valve Internal"
176201
}
177202
},
@@ -187,9 +212,9 @@
187212
"label": "Mode développeur"
188213
},
189214
"notifications": {
190-
"decky_updates_label": "Mise à jour Decky disponible",
215+
"decky_updates_label": "Mise à jour de Decky disponible",
191216
"header": "Notifications",
192-
"plugin_updates_label": "Mises à jour du plugin disponibles"
217+
"plugin_updates_label": "Mises à jour des plugins disponibles"
193218
},
194219
"other": {
195220
"header": "Autre"
@@ -202,9 +227,19 @@
202227
"developer_title": "Développeur",
203228
"general_title": "Général",
204229
"plugins_title": "Plugins",
205-
"testing_title": "Essai"
230+
"testing_title": "Expérimentations"
206231
},
207232
"Store": {
233+
"download_progress_info": {
234+
"download_remote": "Téléchargement des binaires externes",
235+
"download_zip": "Téléchargement du plugin",
236+
"increment_count": "Incrémentation du nombre de téléchargements",
237+
"installing_plugin": "Installation du plugin",
238+
"open_zip": "Ouverture du fichier zip",
239+
"parse_zip": "Analyse du fichier zip",
240+
"start": "Initialisation",
241+
"uninstalling_previous": "Désinstallation de la copie précédente"
242+
},
208243
"store_contrib": {
209244
"desc": "Si vous souhaitez contribuer au Decky Plugin Store, consultez le dépôt SteamDeckHomebrew/decky-plugin-template sur GitHub. Des informations sur le développement et la distribution sont disponibles dans le fichier README.",
210245
"label": "Contributions"
@@ -237,23 +272,27 @@
237272
"store_testing_cta": "Pensez à tester de nouveaux plugins pour aider l'équipe Decky Loader !",
238273
"store_testing_warning": {
239274
"desc": "Vous pouvez utiliser cette chaîne de magasin pour tester des versions de plugins. Assurez-vous de laisser des commentaires sur GitHub afin que le plugin puisse être mis à jour pour tous les utilisateurs.",
240-
"label": "Bienvenue sur la chaîne du magasin de tests"
275+
"label": "Bienvenue sur le canal test de la boutique"
241276
}
242277
},
243278
"StoreSelect": {
244279
"custom_store": {
245-
"label": "Plugin Store personnalisé",
280+
"label": "Magasin personnalisé",
246281
"url_label": "URL"
247282
},
248283
"store_channel": {
249284
"custom": "Personnalisé",
250285
"default": "Par défaut",
251-
"label": "Canal du Plugin Store",
286+
"label": "Canal magasin",
252287
"testing": "Test"
253288
}
254289
},
255290
"Testing": {
256-
"download": "Télécharger"
291+
"download": "Télécharger",
292+
"error": "Erreur d'installation de la PR",
293+
"header": "Les versions suivantes de Decky Loader sont construites à partir de Pull Requests ouvertes par des tiers. L'équipe de Decky Loader n'a pas vérifié leur fonctionnalité ou leur sécurité, et elles peuvent être obsolètes.",
294+
"loading": "Chargement des Pull Requests ouvertes...",
295+
"start_download_toast": "Téléchargement de la PR #{{id}}"
257296
},
258297
"TitleView": {
259298
"decky_store_desc": "Ouvrir le magasin Decky",
@@ -264,7 +303,7 @@
264303
"no_patch_notes_desc": "pas de notes de mise à jour pour cette version",
265304
"patch_notes_desc": "Notes de mise à jour",
266305
"updates": {
267-
"check_button": "Chercher les mises à jour",
306+
"check_button": "Vérifier les mises à jour",
268307
"checking": "Recherche",
269308
"cur_version": "Version actuelle: {{ver}}",
270309
"install_button": "Installer la mise à jour",

backend/decky_loader/locales/ja-JP.json

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,9 @@
5252
"MultiplePluginsInstallModal": {
5353
"confirm": "以下の変更を加えてもよろしいですか?",
5454
"description": {
55+
"downgrade": "ダウングレード {{name}} {{version}}",
5556
"install": "インストール {{name}} {{version}}",
57+
"overwrite": "上書き {{name}} {{version}}",
5658
"reinstall": "再インストール {{name}} {{version}}",
5759
"update": "アップデート {{name}} {{version}}"
5860
},
@@ -61,26 +63,45 @@
6163
"loading": "作業中"
6264
},
6365
"title": {
66+
"downgrade_other": "{{count}} 個のプラグインをダウングレード",
6467
"install_other": "{{count}} 個のプラグインをインストール",
6568
"mixed_other": "{{count}} 個のプラグインを修正",
69+
"overwrite_other": "{{count}} 個のプラグインを上書き",
6670
"reinstall_other": "{{count}} 個のプラグインを再インストール",
6771
"update_other": "{{count}} 個のプラグインをアップデート"
6872
}
6973
},
7074
"PluginCard": {
75+
"plugin_downgrade": "ダウングレード",
7176
"plugin_full_access": "このプラグインはSteam Deckの全てのアクセス権を持ちます。",
7277
"plugin_install": "インストール",
7378
"plugin_no_desc": "説明はありません。",
79+
"plugin_overwrite": "上書き",
80+
"plugin_reinstall": "再インストール",
81+
"plugin_update": "アップデート",
7482
"plugin_version_label": "プラグインバージョン"
7583
},
7684
"PluginInstallModal": {
85+
"downgrade": {
86+
"button_idle": "ダウングレード",
87+
"button_processing": "ダウングレード中",
88+
"desc": "{{artifact}}をVer {{version}} にダウングレードしてもよろしいですか?",
89+
"title": "{{artifact}}をダウングレード"
90+
},
7791
"install": {
7892
"button_idle": "インストール",
7993
"button_processing": "インストール中",
8094
"desc": "{{artifact}} {{version}} をインストールしてもよろしいですか?",
8195
"title": "{{artifact}} をインストール"
8296
},
8397
"no_hash": "このプラグインにはハッシュがありません。ご自身の責任でインストールしてください。",
98+
"not_installed": "(インストールされていません)",
99+
"overwrite": {
100+
"button_idle": "上書き",
101+
"button_processing": "上書き中",
102+
"desc": "{{artifact}}をVer {{version}} に上書きしてもよろしいですか?",
103+
"title": "{{artifact}}を上書き"
104+
},
84105
"reinstall": {
85106
"button_idle": "再インストール",
86107
"button_processing": "再インストール中",
@@ -90,7 +111,7 @@
90111
"update": {
91112
"button_idle": "アップデート",
92113
"button_processing": "アップデート中",
93-
"desc": "{{artifact}} {{version}} をアップデートしてもよろしいですか",
114+
"desc": "{{artifact}}をVer {{version}} にアップデートしてもよろしいですか",
94115
"title": "{{artifact}} をアップデート"
95116
}
96117
},
@@ -192,6 +213,7 @@
192213
},
193214
"Store": {
194215
"download_progress_info": {
216+
"download_remote": "外部バイナリのダウンロード",
195217
"download_zip": "プラグインのダウンロード中",
196218
"increment_count": "ダウンロード数の増加",
197219
"installing_plugin": "プラグインのインストール中",

backend/decky_loader/locales/ru-RU.json

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,9 @@
5252
"MultiplePluginsInstallModal": {
5353
"confirm": "Вы уверены, что хотите внести следующие изменения?",
5454
"description": {
55+
"downgrade": "Откатить {{name}} до {{version}}",
5556
"install": "Установить {{name}} {{version}}",
57+
"overwrite": "Заменить {{name}} на {{version}}",
5658
"reinstall": "Переустановить {{name}} {{version}}",
5759
"update": "Обновить с {{name}} на {{version}}"
5860
},
@@ -61,6 +63,9 @@
6163
"loading": "В процессе"
6264
},
6365
"title": {
66+
"downgrade_few": "Откатить {{count}} плагинов",
67+
"downgrade_many": "Откатить {{count}} плагинов",
68+
"downgrade_one": "Откатить 1 плагин",
6469
"install_few": "Установить {{count}} плагинов",
6570
"install_many": "Установить {{count}} плагинов",
6671
"install_one": "Установить {{count}} плагин",
@@ -76,12 +81,21 @@
7681
}
7782
},
7883
"PluginCard": {
84+
"plugin_downgrade": "Откат",
7985
"plugin_full_access": "Этот плагин имеет полный доступ к вашему Steam Deck.",
8086
"plugin_install": "Установить",
8187
"plugin_no_desc": "Нет описания.",
88+
"plugin_overwrite": "Замена",
89+
"plugin_reinstall": "Переустановка",
90+
"plugin_update": "Обновление",
8291
"plugin_version_label": "Версия плагина"
8392
},
8493
"PluginInstallModal": {
94+
"downgrade": {
95+
"button_idle": "Откат",
96+
"desc": "Вы уверенны, что хотите откатить {{artifact}} до версии {{version}}?",
97+
"title": "Откатить {{artifact}}"
98+
},
8599
"install": {
86100
"button_idle": "Установить",
87101
"button_processing": "Установка",
@@ -98,7 +112,7 @@
98112
"update": {
99113
"button_idle": "Обновить",
100114
"button_processing": "Обновление",
101-
"desc": "Вы уверены, что хотите обновить {{artifact}} {{version}}?",
115+
"desc": "Вы уверены, что хотите обновить {{artifact}} до версии {{version}}?",
102116
"title": "Обновить {{artifact}}"
103117
}
104118
},

0 commit comments

Comments
 (0)