From d9c7f337f9f0e943f771aef5966e9434baa49aaa Mon Sep 17 00:00:00 2001 From: Ian Leonard Date: Sun, 29 Mar 2026 06:24:15 -0400 Subject: [PATCH 1/2] updates: show window while rpi-eeprom-update is copying files Signed-off-by: Ian Leonard --- resources/language/resource.language.en_gb/strings.po | 4 ++++ resources/lib/modules/updates.py | 10 ++++++++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/resources/language/resource.language.en_gb/strings.po b/resources/language/resource.language.en_gb/strings.po index fc5d6c4e3..091bc9f90 100644 --- a/resources/language/resource.language.en_gb/strings.po +++ b/resources/language/resource.language.en_gb/strings.po @@ -392,6 +392,10 @@ msgctxt "#32029" msgid "up to date: %s" msgstr "" +msgctxt "#32031" +msgid "Working..." +msgstr "" + msgctxt "#32100" msgid "Connections" msgstr "" diff --git a/resources/lib/modules/updates.py b/resources/lib/modules/updates.py index e7afe5375..dd1d91b8c 100644 --- a/resources/lib/modules/updates.py +++ b/resources/lib/modules/updates.py @@ -660,8 +660,14 @@ def update_rpi_firmware(self, listItem): if xbmcgui.Dialog().yesno(oe._(32022), f'{oe._(32023)}\n\n{oe._(32326)}'): # available update is newer than installed version if self.rpi_flashing_state[listItem.getProperty('entry')]['current'] < self.rpi_flashing_state[listItem.getProperty('entry')]['latest']: - update_result = os_tools.execute(f'/usr/bin/rpi-eeprom-update -A {listItem.getProperty("entry")}', get_result=True) - log.log(f'rpi-eeprom-update result: {update_result}', log.DEBUG) + dlg = xbmcgui.DialogProgress() + dlg.create(oe._(32022), oe._(32031)) + dlg.update(0) + try: + update_result = os_tools.execute(f'/usr/bin/rpi-eeprom-update -A {listItem.getProperty("entry")}', get_result=True) + finally: + dlg.close() + log.log(f'rpi-eeprom-update result: {update_result}', log.DEBUG) if update_result: xbmcgui.Dialog().ok(oe._(32022), oe._(32023)) value = 'true' From 27d1d1f93b693e1fbf194b30f2151ed09efe34b4 Mon Sep 17 00:00:00 2001 From: Ian Leonard Date: Sun, 29 Mar 2026 23:52:12 -0400 Subject: [PATCH 2/2] update.py: add localized strings for attempting to update current firmware Signed-off-by: Ian Leonard --- resources/language/resource.language.en_gb/strings.po | 4 ++++ resources/lib/modules/updates.py | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/resources/language/resource.language.en_gb/strings.po b/resources/language/resource.language.en_gb/strings.po index 091bc9f90..7bfdbd4f8 100644 --- a/resources/language/resource.language.en_gb/strings.po +++ b/resources/language/resource.language.en_gb/strings.po @@ -396,6 +396,10 @@ msgctxt "#32031" msgid "Working..." msgstr "" +msgctxt "#32032" +msgid "Firmware is up to date." +msgstr "" + msgctxt "#32100" msgid "Connections" msgstr "" diff --git a/resources/lib/modules/updates.py b/resources/lib/modules/updates.py index dd1d91b8c..b1e144245 100644 --- a/resources/lib/modules/updates.py +++ b/resources/lib/modules/updates.py @@ -672,7 +672,7 @@ def update_rpi_firmware(self, listItem): xbmcgui.Dialog().ok(oe._(32022), oe._(32023)) value = 'true' else: - xbmcgui.Dialog().ok('Update RPi Firmware', 'Firmware is up to date.') + xbmcgui.Dialog().ok(oe._(32022), oe._(32032)) # user chose no but bootloader update already queued elif listItem.getProperty('entry') == 'bootloader' and os.path.isfile('/flash/pieeprom.upd'): value = 'true'