** Description changed:

  [Impact]
  
- Qt-based flavors of Ubuntu are unable to upgrade oracular -> plucky due
- to Qt6 incompatibility issues. I have done the legwork and refactored
- the code so that it works.
+ Qt-based flavors of Ubuntu are unable to upgrade to Plucky from Oracular
+ or Noble due to the Plucky frontend being ported to PyQt6.
+ 
+ When the port was originally done, the change author actually did test
+ release upgrades, but failed to consider the fact that additional
+ dependencies may need to be added. Additionally, the change author
+ failed to commit a local change, resulting in failing upgrades to
+ Plucky.
+ 
+ The majority of the required changes will be in Plucky, which will need
+ review from the Ubuntu Release Team due to freezes. The other two
+ releases simply need PyQt6 runtime dependencies added.
  
  [Test Case]
  
- * From Kubuntu, attempt an upgrade via 'do-release-upgrade -d -m desktop
- -f DistUpgradeViewKDE'
+ * From Kubuntu, attempt an upgrade via `sudo do-release-upgrade -d -m
+ desktop -f DistUpgradeViewKDE`
  
  Expected: Upgrade interface works.
  
- Actual: Upgrade fails with multiple Qt incompatibilities
+ Actual: Upgrade fails, sometimes silently
  
  * Testing the fix requires 'do-release-upgrade -d' from the terminal,
  and saying "no" at the second y/N prompt. From there, navigate to
  '/tmp/ubuntu-release-upgrade-{hash}' and add
  https://git.launchpad.net/~ubuntu-qt-code/ubuntu-release-
  upgrader/plain/DistUpgrade/DistUpgradeViewKDE.py?h=ubuntu/main to the
  folder.
  
  * Additionally, add the following dependencies:
  
-  - pyqt6-dev-tools
-  - python3-pyqt6
-  - python3-pyqt6.qtquick
+  - pyqt6-dev-tools
+  - python3-pyqt6
+  - python3-pyqt6.qtquick
  
  * Once that's done, from the `/tmp/ubuntu-release-upgrader-{hash}`
  directory, run 'sudo -E ./plucky'. The upgrade should function at this
  point.
  
  [What could go wrong]
  
- In my testing in a VM, this failed to bring up a progress window, but
- also did not fail outright with any errors. That could be the nature of
- the VM and the testing, but if that's not the case, then further
- refinements may be required.
+ While this change was thoroughly tested prior to uploading to Plucky, it
+ is entirely possible that wider testing of the fixes will reveal further
+ room for improvement. This falls under the criteria of a bug fix to a
+ release still in development, and would also be acceptable to fix past
+ Final Freeze if another problem were to emerge.
+ 
+ When it comes to Oracular and Noble, adding runtime dependencies that
+ would already be generally common on a Qt-based flavor anyway (when
+ installing some extra packages) is *almost* a no-op. This being said, if
+ we were to change the binary package names for pyqt6 in a stable release
+ update, or if those packages become uninstallable or otherwise unusable,
+ this change would regress.
  
  [Original Bug]
  
  This is likely an issue RE: Qt5 vs Qt6. I have reason to believe the
  code is still Qt5 but oracular and higher is Qt6, meaning the code needs
  to be refactored.
  
  Terminal output:
  
  $ do-release-upgrade -d -m desktop -f DistUpgradeViewKDE
  
  Checking for a new Ubuntu release
  localuser:root being added to access control list
  Checking for a new Ubuntu release
  kde
  error: XDG_RUNTIME_DIR is invalid or not set in the environment.
  Failed to create wl_display (No such file or directory)
  qt.qpa.plugin: Could not load the Qt platform plugin "wayland" in "" even 
though it was found.
  QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root'
  /usr/lib/python3/dist-packages/DistUpgrade/DistUpgradeFetcherCore.py:237: 
Warning: W:Download is performed unsandboxed as root as file 
'plucky.tar.gz.gpg' couldn't be accessed by user '_apt'. - pkgAcquire::Run (13: 
Permission denied)
    result = fetcher.run()
  authenticate 'plucky.tar.gz' against 'plucky.tar.gz.gpg'
  extracting 'plucky.tar.gz'
  error: XDG_RUNTIME_DIR is invalid or not set in the environment.
  Failed to create wl_display (No such file or directory)
  qt.qpa.plugin: Could not load the Qt platform plugin "wayland" in "" even 
though it was found.
  can't load DistUpgradeViewKDE (type object 'QTextOption' has no attribute 
'NoWrap')
  can't load DistUpgradeViewGtk3 (Namespace Vte not available)
  can't load DistUpgradeViewKDE (type object 'QTextOption' has no attribute 
'NoWrap')
  
  Reading cache
  
  Checking package manager
  Reading package lists... Done
  Building dependency tree... Done
  Reading state information... Done
  Hit http://security.ubuntu.com/ubuntu oracular-security InRelease
  Hit http://us.archive.ubuntu.com/ubuntu oracular InRelease
  Hit http://us.archive.ubuntu.com/ubuntu oracular-updates InRelease
  Hit http://us.archive.ubuntu.com/ubuntu oracular-backports InRelease
  Fetched 0 B in 0s (0 B/s)
  Reading package lists... Done
  Building dependency tree... Done
  Reading state information... Done
  Fetched 0 B in 0s (0 B/s)
  
  Checking for installed snaps
  
  Calculating snap size requirements
  
  Updating repository information
  Segmentation fault (core dumped)
  
  ProblemType: Bug
  DistroRelease: Ubuntu 24.10
  Package: ubuntu-release-upgrader-core 1:24.10.13
  ProcVersionSignature: Ubuntu 6.11.0-13.14-generic 6.11.0
  Uname: Linux 6.11.0-13-generic x86_64
  ApportVersion: 2.30.0-0ubuntu4
  Architecture: amd64
  CasperMD5CheckResult: pass
  CrashDB: ubuntu
  CurrentDesktop: KDE
  Date: Wed Jan 22 11:15:22 2025
  InstallationDate: Installed on 2024-04-11 (287 days ago)
  InstallationMedia: Ubuntu-Studio 24.04 LTS "Noble Numbat" - Beta amd64 
(20240410.2)
  PackageArchitecture: all
  SourcePackage: ubuntu-release-upgrader
  Symptom: ubuntu-release-upgrader
  UpgradeStatus: Upgraded to oracular on 2025-01-22 (0 days ago)
  VarLogDistupgradeAptHistorylog:
   Start-Date: 2025-01-22  11:13:58
   Requested-By: erich (1000)
   End-Date: 2025-01-22  11:13:58
  VarLogDistupgradeAptlog:
   Log time: 2025-01-22 11:13:55.234080
   Log time: 2025-01-22 11:13:57.748196
  VarLogDistupgradeApttermlog:
   Log started: 2025-01-22  11:13:58
   Log ended: 2025-01-22  11:13:58
  VarLogDistupgradeTermlog:

** Summary changed:

- ubuntu-release-upgrader Qt interface Qt6 incompatibility
+ [SRU/RC] ubuntu-release-upgrader Qt interface Qt6 incompatibility

** Changed in: ubuntu-release-upgrader (Ubuntu Plucky)
    Milestone: None => ubuntu-25.04

** Changed in: ubuntu-release-upgrader (Ubuntu Oracular)
    Milestone: None => oracular-updates

** Changed in: ubuntu-release-upgrader (Ubuntu Noble)
    Milestone: None => noble-updates

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

Title:
  [SRU/RC] ubuntu-release-upgrader Qt interface Qt6 incompatibility

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


-- 
kubuntu-bugs mailing list
kubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/kubuntu-bugs

Reply via email to