Bug 279168

Summary: sysutils/bsdisks: add qt6 support.
Product: Ports & Packages Reporter: Eric Camachat <eric>
Component: Individual Port(s)Assignee: Gleb Popov <arrowd>
Status: Closed FIXED    
Severity: Affects Only Me CC: bugzilla.freebsd, d8zNeCFG, dsh, tcberner
Priority: --- Flags: arrowd: maintainer-feedback+
Version: Latest   
Hardware: Any   
OS: Any   
Attachments:
Description Flags
sysutils/bsdisks: add qt6 support.
none
qt6 only none

Description Eric Camachat 2024-05-19 19:14:01 UTC
Created attachment 250818 [details]
sysutils/bsdisks: add qt6 support.

Add Qt6 flavor in sysutils/bsdisks, meanwhile also make devel/kf6-solid depends on sysutils/bsdisks@qt6.
Comment 1 Gleb Popov freebsd_committer freebsd_triage 2024-05-21 05:30:25 UTC
Thanks for the patch. I don't think flavorizing is necessary, can you please change your patch so that bsdisks would become qt6-only?
Comment 2 Eric Camachat 2024-05-21 12:28:50 UTC
Created attachment 250854 [details]
qt6 only

Remove flavors, change to Qt6 only.
Comment 3 commit-hook freebsd_committer freebsd_triage 2024-05-21 19:06:25 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=91ee9ec8e0dbfa97b298e6498900938e71762837

commit 91ee9ec8e0dbfa97b298e6498900938e71762837
Author:     Eric Camachat <eric@camachat.org>
AuthorDate: 2024-05-21 18:38:37 +0000
Commit:     Gleb Popov <arrowd@FreeBSD.org>
CommitDate: 2024-05-21 19:06:00 +0000

    sysutils/bsdisks: Switch to Qt 6

    PR:             279168

 sysutils/bsdisks/Makefile | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)
Comment 4 Martin Birgmeier 2024-05-22 17:31:44 UTC
(In reply to Gleb Popov from comment #1)

Could you please explain why bsdisks should be qt6 only? - With the current state of ports this means that just for bsdisks, qt6 is being pulled in.

I would prefer to stay with qt5 as long as the default version of KDE is not switched to qt6.

-- Martin
Comment 5 Gleb Popov freebsd_committer freebsd_triage 2024-05-22 17:38:50 UTC
Qt 6 is already being pulled for many things. Switch applications to Qt 6 is a first step before the full switch. For now we'll have to live with two version installed at the same time, unfortunately.
Comment 6 Martin Birgmeier 2024-05-22 18:12:21 UTC
Thank you for the quick answer.

Currently, the set of ports I am using does not need any qt6 component (KDE, firefox, thunderbird, qgis, libreoffice, vlc, ...). So bsdisks flavorized for both qt5 and qt6 would cut down on the number of required ports at least for me, and probably also for quite a few more people.

Please reconsider.

-- Martin
Comment 7 Tobias C. Berner freebsd_committer freebsd_triage 2024-05-23 04:26:00 UTC
(In reply to Martin Birgmeier from comment #6)

Moin moin 


I hope to push the KDE Applications to 24.xx update in this quarter (still testing) -- this will move almost all KDE applications to use Qt6.

So the move to bsdisks to Qt6 is one of the important steps to make that big update possible.



mfg Tobias
Comment 8 Harald Schmalzbauer 2024-06-02 11:10:35 UTC
(In reply to Martin Birgmeier from comment #6)

I second Martins objection, sysutils/bsdisks is the only (out of ~500) ports resp. package that pollutes my xfce4-session based DE with QT6 - despite using plethora of QT5/KDE applications.

For now I'm reverting locally, but please reconsider this change.
Here's a compilation of KDE/QT related desktop applications, which are up to date (major version wise) and do a great job without needing QT6 for double-purpose overhead, ONLY sysutils/bsdisks would (currently does) depend on QT6:

elisa-23.08.5                  Audio player with QML and KDE Plasma integration
gpgme-qt-headers-1.23.2        Shared headers for the Gpgme Qt bindings
gpgme-qt5-1.23.2               Gpgme Qt5 bindings
gwenview-23.08.5_3             Image viewer and browser for KDE
kColorPicker-qt5-0.3.1         Qt-based color picker library with popup menu
kImageAnnotator-qt5-0.7.1      Library for image-annotation tools
kaccounts-integration-23.08.5_5 System to administer web accounts for the KDE desktop
kate-23.08.5_2                 Basic editor framework for the KDE system
kcolorchooser-23.08.5          KDE application to select colors from the screen or from a palette
kf5-attica-5.115.0             Open Collaboration Services API library KDE5 version
kf5-breeze-icons-5.115.0       Breeze icon theme for KDE
kf5-kdeclarative-5.115.0_1     KF5 library providing integration of QML and KDE Frameworks
kf5-kdelibs4support-5.115.0_1  KF5 porting aid from KDELibs4
kf5-kinit-5.115.0_1            KF5 process launcher to speed up launching KDE applications
kf5-qqc2-desktop-style-5.115.0 Qt QuickControl2 style for KDE
kf5-syndication-5.115.0,1      KDE RSS feed handling library
kile-3.0.b3_45                 LaTeX source editor for KDE
kirigami-addons-0.11.0         Component library for KDE Kirigami
kqtquickcharts-23.08.5         QtQuick plugin to render interactive charts
krusader-2.8.1                 Twin panel file manager for KDE, like midnight or norton commander
ktouch-23.08.5_1               Touch typing tutor for KDE
libaccounts-qt5-1.16_5         Qt5 wrapper for SSO framework
libdbusmenu-qt5-0.9.3.160420160218_13 Qt5 implementation of the DBusMenu protocol
libfm-qt-1.4.0                 Qt port of libfm
libkdcraw-qt5-23.08.5_1        LibRaw interface for KDE
libkdegames-23.08.5            Libraries used by KDE games
libkexiv2-23.08.5              Exiv2 library interface for KDE
liblxqt-1.4.0                  Shared library for LXQt applications
libqtxdg-3.12.0                Qt implementation of freedesktop.org xdg specs
lximage-qt-1.4.0               Image viewer
lxqt-menu-data-1.4.1           Freedesktop.org compliant menu files for lxqt
marble-23.08.5_1               Virtual globe and world atlas for KDE
neochat-23.08.5_4              Glossy Matrix IM client based on KDE technologies
okteta-0.26.15,1               KDE hex editor
okular-23.08.5_4               KDE universal document viewer
pdfmixtool-qt5-1.1.1_3         Application to split, merge, rotate and mix PDF files
phonon-qt5-4.12.0_2            KDE multimedia framework
pinentry-qt5-1.3.0             Qt 5 version of the GnuPG password dialog
polkit-qt-1-qt5-0.200.0        Qt wrapper around Polkit libraries
poppler-qt5-24.02.0_1          Qt 5 bindings to poppler
py39-qt5-pyqt-5.15.10_1        Python bindings for the Qt5 toolkit, QtCore module
py39-qt5-sip-12.13.0           Python to C and C++ bindings generator
qca-qt5-2.3.8_1                Cross-platform crypto API for Qt 5
qcoro-qt5-0.10.0               Coroutines for Qt
qscintilla2-qt5-2.14.1         Qt 5 port of the Scintilla C++ editor class
qt5-assistant-5.15.13p4        Qt 5 documentation browser (KDE patched)
qt5-buildtools-5.15.14p140     Qt build tools (KDE patched)
qt5-concurrent-5.15.13p142     Qt multi-threading module (KDE patched)
qt5-connectivity-5.15.13p4     Qt connectivity (Bluetooth/NFC) module (KDE patched)
qt5-core-5.15.14p140           Qt core non-graphical module (KDE patched)
qt5-dbus-5.15.14p140           Qt D-Bus inter-process communication module (KDE patched)
qt5-declarative-5.15.14p28     Qt declarative framework for dynamic user interfaces (KDE patched)
qt5-designer-5.15.13p4         Qt 5 graphical user interface designer (KDE patched)
qt5-graphicaleffects-5.15.13p0 Qt Quick graphical effects (KDE patched)
qt5-gui-5.15.14p140            Qt graphical user interface module (KDE patched)
qt5-help-5.15.13p4             Qt online help integration module (KDE patched)
qt5-imageformats-5.15.14p7     Qt plugins for additional image formats (KDE patched)
qt5-linguisttools-5.15.13p4    Qt localization tools (KDE patched)
qt5-location-5.15.13p6         Qt location module (KDE patched)
qt5-multimedia-5.15.13p2       Qt audio, video, radio and camera support module (KDE patched)
qt5-network-5.15.14p140        Qt network module (KDE patched)
qt5-opengl-5.15.13p142         Qt 5-compatible OpenGL support module (KDE patched)
qt5-printsupport-5.15.13p142   Qt print support module (KDE patched)
qt5-qmake-5.15.14p140          Qt Makefile generator (KDE patched)
qt5-quick3d-5.15.13p1          Set of controls for building complete interfaces in Qt Quick3D (KDE patched)
qt5-quickcontrols-5.15.13p0    Set of controls for building complete interfaces in Qt Quick (KDE patched)
qt5-quickcontrols2-5.15.13p5   Set of controls for building complete interfaces in Qt Quick (KDE patched)
qt5-remoteobjects-5.15.13p0    Qt5 Remote Objects module (KDE patched)
qt5-script-5.15.16p0_2         Qt 4-compatible scripting module
qt5-scripttools-5.15.16p0_1    Qt Script additional components
qt5-sensors-5.15.13p0          Qt sensors module (KDE patched)
qt5-serialport-5.15.13p0       Qt functions to access serial ports (KDE patched)
qt5-speech-5.15.13p1           Accessibilty features for Qt5 (KDE patched)
qt5-sql-5.15.14p140            Qt SQL database integration module (KDE patched)
qt5-sqldrivers-sqlite3-5.15.13p142 Qt SQLite 3 database plugin (KDE patched)
qt5-svg-5.15.14p5              Qt SVG support module (KDE patched)
qt5-testlib-5.15.13p142        Qt unit testing module (KDE patched)
qt5-uiplugin-5.15.13p4         Custom Qt widget plugin interface for Qt Designer (KDE patched)
qt5-uitools-5.15.13p4          Qt Designer UI forms support module (KDE patched)
qt5-wayland-5.15.14p57         Qt5 wrapper for Wayland (KDE patched)
qt5-webchannel-5.15.13p3       Qt 5 library for integration of C++/QML with HTML/js clients (KDE patched)
qt5-webengine-5.15.16.p9_2     Qt 5 library to render web content
qt5-websockets-5.15.13p2       Qt implementation of WebSocket protocol (KDE patched)
qt5-widgets-5.15.14p140        Qt C++ widgets module (KDE patched)
qt5-x11extras-5.15.13p0        Qt platform-specific features for X11-based systems (KDE patched)
qt5-xml-5.15.13p142            Qt SAX and DOM implementations (KDE patched)
qt5-xmlpatterns-5.15.13p0      Qt support for XPath, XQuery, XSLT and XML Schema (KDE patched)
qtkeychain-qt5-0.14.3          Platform independent Qt API for storing passwords
quazip-qt5-1.4_1               Qt/C++ wrapper for ZIP/UNZIP package
signon-qt5-8.61                D-Bus service performing user authentication
Comment 9 Harald Schmalzbauer 2024-06-02 11:13:02 UTC
(In reply to Tobias C. Berner from comment #7)
Thanks Tobias, highly appreciated!
But until your major change hasn't settled resulting in QT5 to be the exceptional dependency in the ports tree, sysutils/bsdisks depending unconditionally on QT6 is the wrong decision imho.