Public bug reported:

The KDE (Qt) frontend of ubuntu-release-upgrader has several issues when
running under Qt6/PyQt6:

1. Black window on startup

The main upgrader window appears completely black with no content
rendered. This is caused by the app.exec()/app.exit() pattern used to
process events during window setup. In Qt6, calling app.exit() marks the
QApplication as "quit", which prevents subsequent paint events from
being processed.

2. Terminal output does not auto-scroll

The DumbTerminal widget that displays upgrade progress output does not
scroll to follow new lines as they are added. Users must manually scroll
to see current progress.

3. Unscoped Qt5-style enum references crash under PyQt6

PyQt6 requires fully-scoped enum names (e.g., QMessageBox.Icon.Warning
instead of QMessageBox.Warning). Four locations use the old unscoped
style, causing AttributeError at runtime:

 - QMessageBox.Warning
 - QTextCursor.End
 - Qt.FramelessWindowHint
 - QMessageBox.Ok / QMessageBox.Cancel

4. No backward compatibility with PyQt5 on 24.04

Users upgrading from 24.04 LTS still have PyQt5 installed. The frontend
imported directly from PyQt6, which is unavailable on those systems.

Fix:

 - Replaced app.exec()/app.exit() with a local QEventLoop for initial window 
rendering
 - Added moveCursor(End) and ensureCursorVisible() to the terminal widget
 - Updated all enum references to use Qt6-scoped names
 - Created PyQtCompat.py compatibility shim that tries PyQt6 first, falls back 
to PyQt5

** Affects: ubuntu-release-upgrader (Ubuntu)
     Importance: High
     Assignee: Erich Eickmeyer (eeickmeyer)
         Status: In Progress


** Tags: resolute

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2147278

Title:
  KDE/Qt frontend broken under Qt6: black window, terminal not
  scrolling, enum errors

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/ubuntu-release-upgrader/+bug/2147278/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to