Skip to content

Qt6 migration#485

Closed
vejeta wants to merge 11 commits intoStremio:masterfrom
vejeta:qt6-migration
Closed

Qt6 migration#485
vejeta wants to merge 11 commits intoStremio:masterfrom
vejeta:qt6-migration

Conversation

@vejeta
Copy link
Copy Markdown
Contributor

@vejeta vejeta commented Apr 26, 2026

Qt5 reached end-of-life. This migrates stremio-shell to Qt6 with minimal changes , mostly removing deprecated code).

Summary

  • Build: CMake 3.16+, C++17, WebEngineWebEngineQuick
  • Core: QtWebEngineQuick::initialize(), versionless QML imports, Controls 2
  • Cleanup: Remove deprecated Qt5 attributes, Qt4 compat guards, QNetworkConfigurationManager
  • Fix: MPV FBO include path, QProcess environment for Node.js server

Tested on Debian sid (Qt 6.8) — builds, runs, streams, and plays back correctly.

Related to #442

vejeta added 9 commits April 26, 2026 03:10
- CMakeLists.txt: cmake 3.16+, C++17, WebEngine -> WebEngineQuick
- main.cpp: QtWebEngineQuick::initialize(), remove deprecated Qt5 attributes
- main.qml: Controls 2 API, Qt6 FileDialog/MessageDialog, versionless imports
- mpv.cpp: fix FBO include path, remove deprecated OpenGL state calls
- autoupdater.h: remove QNetworkConfigurationManager (removed in Qt6)
- screensaver.cpp: clean Qt4 compat guards, update nativeEventFilter signature
- stremio.pro: webenginequick, c++17
QProcess may not inherit the full environment. Node.js server.js
requires HOME, USER, and PWD for path.join() operations on cache
directories. Without these, the streaming server fails at startup
with 'path argument must be of type string' errors.
vejeta added 2 commits April 26, 2026 21:00
Match KDE MpvQt implementation: pass native display handle
(X11 or Wayland) to mpv_render_context_create for proper
frame synchronization. Remove unnecessary beginExternalCommands
wrapping and setPersistentGraphics calls.
@vejeta vejeta closed this Apr 26, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant