Commit c6af0c9
committed
π fix: fix: kernel remove button, CachyOS support, audit fixes, full i18n update
Kernel remove button:
- Always show Remove button for installed kernels (not only when 2+)
- When it's the last backup kernel, keep "Last backup" label + extra
warning in confirmation dialog
CachyOS kernel support:
- Recognize linux-cachyos and linux-cachyos-lts as valid kernels
- Show in "Installed kernels" with badges (CachyOS, LTS) and
performance icon
- Exclude from "Available for installation" list
- 4 new tests for CachyOS classification and flags
Audit fixes:
- base_page.py: null check on _get_window() to prevent crash when
dialog.present receives None
- kernel_manager.py: validate kernel headers availability before
installation; use specific exception types (OSError, ValueError,
ParseError) instead of bare Exception
- package_manager.py: thread-safe package cache with threading.Lock
- progress_dialog.py: terminal buffer limit (2000 lines) to prevent
memory leak on long operations
i18n / translations:
- Regenerate .pot with xgettext (423 β 432 entries, 9 new strings)
- Fix 9 placeholder name translations (cs/et/fi/hu/it/nl/no/pl/ro)
where {detected}/{installed} were translated to local names
- Fix 22 semantically wrong translations across 12 languages (bg/el/
et/he/nl/pl/pt/ro/sk/tr/uk/zh) β cleared and retranslated correctly
- Complete fr.po: translate 118 missing strings + add 9 new entries
- Remove 72 obsolete entries from pt-BR.po
- All 29 languages now at 100% coverage (432/432), zero placeholder
errors, msgfmt syntax validated
Tests: 148 passed (144 existing + 4 new CachyOS tests)1 parent 1081aad commit c6af0c9
129 files changed
Lines changed: 134095 additions & 47805 deletions
File tree
- locale
- tests
- __pycache__
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
0 commit comments