Page MenuHomeFreeBSD

Mark Qt4 EOL by March 15th 2019
ClosedPublic

Authored by rene on Oct 28 2018, 7:57 PM.
Tags
None
Referenced Files
Unknown Object (File)
Mon, Mar 11, 1:44 AM
Unknown Object (File)
Mon, Feb 26, 1:27 AM
Unknown Object (File)
Sat, Feb 24, 11:38 AM
Unknown Object (File)
Jan 29 2024, 6:58 PM
Unknown Object (File)
Jan 25 2024, 1:08 AM
Unknown Object (File)
Jan 18 2024, 11:23 PM
Unknown Object (File)
Jan 16 2024, 11:05 PM
Unknown Object (File)
Jan 14 2024, 2:32 PM

Details

Summary

Qt4 has been EOL since december 2015.

This depends on D17740 for the flavor deprecations.

Diff Detail

Repository
rP FreeBSD ports repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

There are a very large number of changes, so older changes are hidden. Show Older Changes
audio/qsampler/Makefile
15 ↗(On Diff #49748)

Only for QT4 option. QT5 option is default.

audio/rosegarden/Makefile
16 ↗(On Diff #49748)

Only for QT4 option. QT5 option available.

deskutils/cairo-dock-plugins/Makefile
14 ↗(On Diff #49748)

KDE_INTEGRATION option only. Should be removed with KDE4.

deskutils/fbreader/Makefile
15 ↗(On Diff #49748)

QT4 option only. GTK2 option available.

devel/gwenhywfar/Makefile
15 ↗(On Diff #49748)

qt4 slave port only

editors/mp/Makefile
16 ↗(On Diff #49748)

QT4 option only. (non-default)

editors/tea/Makefile
13 ↗(On Diff #49748)

Only for QT4 option. QT5 option available.

editors/texmacs/Makefile
17 ↗(On Diff #49748)

QT4 option only.

emulators/yabause/Makefile
14 ↗(On Diff #49748)

Only for QT4 option. QT5 option available.

graphics/gnash/Makefile
16 ↗(On Diff #49748)

Only KDE4 option. Should be removed with KDE4.

graphics/openimageio/Makefile
15 ↗(On Diff #49748)

Only for IMAGEVIEWER option.

graphics/osg-devel/Makefile
21 ↗(On Diff #49748)

Only for QT4 option. QT5 option available.

graphics/osg/Makefile
18 ↗(On Diff #49748)

Only for QT4 option. QT5 option available.

graphics/poppler/Makefile
16 ↗(On Diff #49748)

Only for QT4 slave port.

graphics/qtawesome/Makefile
13 ↗(On Diff #49748)

QT4 option only. QT5 option available.

graphics/tulip/Makefile
16 ↗(On Diff #49748)

QT4 option only. QT5 option available.

java/classpath/Makefile
18 ↗(On Diff #49748)

QT4 option only.

math/py-matplotlib/Makefile
57 ↗(On Diff #49748)

Character insertion?

math/vtk5/Makefile
17 ↗(On Diff #49748)

Only QT4 option.

multimedia/avidemux/Makefile
15 ↗(On Diff #49748)

Only QT4 option. GTK3 option available.

multimedia/smplayer/Makefile
15 ↗(On Diff #49748)

Only QT4 option. QT5 is currently the default.

multimedia/smtube/Makefile
15 ↗(On Diff #49748)

Only QT4 option. QT5 is currently the default.

net-im/ekiga/Makefile
18 ↗(On Diff #49748)

Only the KDE and KAB options. They should be removed when KDE4 is removed.

net-im/qxmpp/Makefile
15 ↗(On Diff #49748)

This is a master port to a Qt5 slave port. Only the Qt4 part should be DEPRECATED.

net-p2p/zetacoin/Makefile
15 ↗(On Diff #49748)

Only X11 option.

ports-mgmt/packagekit/Makefile
14 ↗(On Diff #49748)

The qt4 part of this was for a slave port that was removed in in r450874. Considering this port has been marked IGNORE for over 3 years, it might be time for it to go anyways.

print/qpdfview/Makefile
17 ↗(On Diff #49748)

Only default QT4 option should be DEPRECATED. QT5 option available; should probably be switched.

science/silo/Makefile
17 ↗(On Diff #49748)

Only non-default QT4 option.

security/quantis/Makefile
16 ↗(On Diff #49748)

Only the GUI option uses Qt4.

Option corrections. :)

Thanks for the list! I'll try to follow up on it tomorrow.

rene requested changes to this revision.Nov 11 2018, 6:16 PM
rene added inline comments.
audio/liblastfm/Makefile
16 ↗(On Diff #49997)

Extra line inserted.

audio/minitunes/Makefile
25 ↗(On Diff #49997)

Out of order, but this port is a mess in that regard anyway.

graphics/graphviz/Makefile
15 ↗(On Diff #49997)

Separator line removed.

print/qpdfview/Makefile
17 ↗(On Diff #49748)

Indeed, please switch to QT5 as default.

security/ike/Makefile
14 ↗(On Diff #49997)

Extra blank line inserted.

security/keepassx2/Makefile
19 ↗(On Diff #49997)

Placed in the middle of the license section.

security/xca/Makefile
15 ↗(On Diff #49748)

Yes, please switch to QT5.

security/yubikey-personalization-gui/Makefile
16 ↗(On Diff #49997)

Only for non-default QT4 option.

This revision now requires changes to proceed.Nov 11 2018, 6:16 PM

There seems to be quite a few ports here that depend on x11/kdelibs-kde4 which is set to be removed on 2018-12-31. Shouldn’t those ports also be removed on 2018-12-31?

I would say so, as they will be broken by the removal.

So better set their expiration dates to 2018-12-31.

deskutils/cairo-dock-plugins/Makefile
14 ↗(On Diff #49748)

@tcberner can you add a conditional deprecation clause for the KDE_INTEGRATION option?

deskutils/fbreader/Makefile
42 ↗(On Diff #50541)

@tcberner Can you switch the default to GTK2 and bump PORTREVISION?

editors/tea/Makefile
22 ↗(On Diff #50541)

@tcberner Can you change the default to QT5 and bump PORTREVISION?

editors/texmacs/Makefile
43 ↗(On Diff #50541)

@tcberner can you drop the QT4 option by default and bump PORTREVISION?

emulators/yabause/Makefile
28 ↗(On Diff #50541)

can you change the default to QT5 and bump PORTREVISION?

graphics/qtawesome/Makefile
22 ↗(On Diff #50541)

Can you change the default to QT5 and bump PORTREVISION?

graphics/tulip/Makefile
48 ↗(On Diff #50541)

Can you change the default to QT5 and bump PORTREVISION?

net-p2p/zetacoin/Makefile
33 ↗(On Diff #50541)

Can you change the default to just WALLET and bump PORTREVISION?

15 ↗(On Diff #49748)

Actually also for the QRCODES option (via OPTION_IMPLIES)

print/qpdfview/Makefile
6 ↗(On Diff #50541)

Can you bump PORTREVISION because of the switch to QT5?

security/quantis/Makefile
24 ↗(On Diff #50541)

Can you remove GUI from the default options and bump PORTREVISION?

rene edited reviewers, added: tcberner; removed: rene.

Commandeering this revision, with some more updates:

  • remove java/classpath from the patch, it already expires on 2018-12-02
  • switch default flavor to qt5 for all qt4/qt5 ports and bump their PORTREVISION
  • drop QT4 from OPTIONS_DEFAULT or switch it to QT5 and bump PORTREVISION
  • conditionally expire net-im/hotot
  • move EXPIRATION_DATE of all KDE4-using ports forward to 2018-12-31 (except when USE_KDE is empty or only contains automoc4

Uploading the new patch fails, both with arc and the web interface.

In D17741#385591, @rene wrote:

There seems to be quite a few ports here that depend on x11/kdelibs-kde4 which is set to be removed on 2018-12-31. Shouldn’t those ports also be removed on 2018-12-31?

I would say so, as they will be broken by the removal.

So better set their expiration dates to 2018-12-31.

In D17741#389216, @rene wrote:

Uploading the new patch fails, both with arc and the web interface.

Maybe, it should be split into a kde4 and qt4 diff?

FWIW, I'm going to take over qbrew and port to Qt5

There seems to be quite a few ports here that depend on x11/kdelibs-kde4 which is set to be removed on 2018-12-31. Shouldn’t those ports also be removed on 2018-12-31?

Please don't. Qt4 does not imply KDE4, and if I won't be able to keep Qt4 alive, I'd have to revert the removal in my local tree. Reverting just the Qt4 bits (without the KDE4) would be a huge pain saver. Given there's still plenty of Qt4-based software, there should be some time gap between deprecating KDE4 from the generic, KDE-agnostic software.

Please don't. Qt4 does not imply KDE4, and if I won't be able to keep Qt4 alive, I'd have to revert the removal in my local tree. Reverting just the Qt4 bits (without the KDE4) would be a huge pain saver. Given there's still plenty of Qt4-based software, there should be some time gap between deprecating KDE4 from the generic, KDE-agnostic software.

There is, it's more 2 months. KDE4 will go by the end of the year. Qt4 by the end of the following quarter (with some lead time to clean up before cutting the quarterly). -- Software that depends on KDE4 therefore has to go on 2018-12-31 (as it will be broken by its removal).

Updating, see last comment

  • update to r486205
  • mark some ports broken as they do not build (yet) with Qt5

Clients of multimedia/phonon should build with qt5 but poudriere gets confused,
stating it cannot find the qt5 flavor of multimedia/phonon

In D17741#390918, @rene wrote:
  • update to r486205
  • mark some ports broken as they do not build (yet) with Qt5

Clients of multimedia/phonon should build with qt5 but poudriere gets confused,
stating it cannot find the qt5 flavor of multimedia/phonon

The USE_QT component for the qt5 one is phonon4, if I remember correctly.

Which ports are failing with that?

In D17741#390918, @rene wrote:
  • update to r486205
  • mark some ports broken as they do not build (yet) with Qt5

Clients of multimedia/phonon should build with qt5 but poudriere gets confused,
stating it cannot find the qt5 flavor of multimedia/phonon

The USE_QT component for the qt5 one is phonon4, if I remember correctly.

Which ports are failing with that?

Three clients:

rene@e17:/usr/ports % sudo poudriere bulk -j 11_2-amd64 multimedia/phonon-designerplugin/ multimedia/phonon-gstreamer/ multimedia/phonon-vlc multimedia/phonon-xine/ multimedia/phonon multimedia/py-qt4-phonon/
Wachtwoord: 
[00:00:00] Creating the reference jail... done
[00:00:01] Mounting system devices for 11_2-amd64-default
[00:00:01] Mounting ports/packages/distfiles
[00:00:01] Stashing existing package repository
[00:00:01] Mounting ccache from: /usr/ccache
[00:00:01] Mounting packages from: /usr/local/poudriere/data/packages/11_2-amd64-default
[00:00:01] Copying /var/db/ports from: /usr/local/etc/poudriere.d/options
/etc/resolv.conf -> /usr/local/poudriere/data/.m/11_2-amd64-default/ref/etc/resolv.conf
[00:00:01] Starting jail 11_2-amd64-default
[00:00:03] Logs: /usr/local/poudriere/data/logs/bulk/11_2-amd64-default/2018-11-29_22h10m33s
[00:00:03] Loading MOVED for /usr/local/poudriere/data/.m/11_2-amd64-default/ref/usr/ports
[00:00:04] Ports supports: FLAVORS SELECTED_OPTIONS
[00:00:04] Gathering ports metadata
[00:00:16] Calculating ports order and dependencies
[00:00:16] Error: compute_deps_pkg failed to lookup pkgname for multimedia/phonon@qt5 processing package phonon-designerplugin-qt5-4.10.1_1 from multimedia/phonon-designerplugin -- Does multimedia/phonon provide the 'qt5' FLAVOR?
[00:00:16] Error: compute_deps_pkg failed to lookup pkgname for multimedia/phonon@qt5 processing package phonon-vlc-qt5-0.10.1_2 from multimedia/phonon-vlc -- Does multimedia/phonon provide the 'qt5' FLAVOR?
[00:00:16] Error: compute_deps_pkg failed to lookup pkgname for multimedia/phonon@qt5 processing package phonon-gstreamer-qt5-4.9.0_3 from multimedia/phonon-gstreamer -- Does multimedia/phonon provide the 'qt5' FLAVOR?
[00:00:17] Error: Fatal errors encountered calculating dependencies
[00:00:17] Cleaning up
[00:00:17] Unmounting file systems

The fix for the phonon's is

FLAVORS=qt5 qt4

instead of using

FLAVOR?= ${FLAVORS:[2]}

Update to r486375

Fix switching to qt5 as default flavor for multimedia/phonon* [1]

Submitted by: tcberner [1]

tcberner requested changes to this revision.Dec 1 2018, 9:55 PM
  • 2018-12-31
    • deskutils/strigi (is a leaf port that should go with KDE4)
    • graphics/kimagemapeditor
    • graphics/gnash has a KDE4-option
    • net/libproxy-kde
    • net-im/ekiga has two KDE4-options
    • print/frescobaldi should be deprecated (or updated to 3.0.0)
    • security/subversion-kwallet
    • www/opera
    • x11/kde4
This revision now requires changes to proceed.Dec 1 2018, 9:55 PM

I put the deprecation notice for strigi in Makefile.common so that all four strigi ports get deprecated.

It looks like graphics/kimagemapeditor is a KDE5 port so it is fine?

Address remarks from tcberner

It looks like graphics/kimagemapeditor is a KDE5 port so it is fine?

PKGNAMESUFFIX= # hack: uses kde:4 but we don't want the pkgname suffix
^ right, that comment made the regexp match :D

self-approving, net-im/ekiga also builds fine without KDE4.

This revision is now accepted and ready to land.Dec 2 2018, 3:32 PM
This revision was automatically updated to reflect the committed changes.