diff options
Diffstat (limited to 'user/kio')
-rw-r--r-- | user/kio/APKBUILD | 33 | ||||
-rw-r--r-- | user/kio/cxx17.patch | 21 | ||||
-rw-r--r-- | user/kio/favicon-url.patch | 14 | ||||
-rw-r--r-- | user/kio/unmounted-root.patch | 37 |
4 files changed, 76 insertions, 29 deletions
diff --git a/user/kio/APKBUILD b/user/kio/APKBUILD index d11ea594f..89eca1dc4 100644 --- a/user/kio/APKBUILD +++ b/user/kio/APKBUILD @@ -1,26 +1,28 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=kio -pkgver=5.94.0 +pkgver=5.116.0 pkgrel=0 pkgdesc="Framework for data and file management" url="https://www.kde.org/" arch="all" -options="!checkroot !check" # Test requires X11; segfault bug #34 +options="!checkroot checkx11" license="LGPL-2.1-only AND LGPL-2.1+ AND (LGPL-2.1-only OR LGPL-3.0-only)" depends="kded" depends_dev="qt5-qtbase-dev attica-dev kbookmarks-dev kcompletion-dev kconfig-dev kcoreaddons-dev kiconthemes-dev kitemviews-dev kjobwidgets-dev kservice-dev kwidgetsaddons-dev solid-dev" +checkdepends="udisks2" docdepends="kcoreaddons-doc kservice-doc kcompletion-doc kwidgetsaddons-doc kjobwidgets-doc kbookmarks-doc kitemviews-doc kxmlgui-doc solid-doc kwindowsystem-doc kconfig-doc kconfigwidgets-doc kcodecs-doc kauth-doc" -makedepends="$depends_dev cmake extra-cmake-modules kdoctools-dev python3 +makedepends="$depends_dev cmake extra-cmake-modules kdoctools-dev python3 chelf qt5-qttools-dev doxygen graphviz karchive-dev kdbusaddons-dev ki18n-dev knotifications-dev kwallet-dev acl-dev kded-dev krb5-dev $docdepends" subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" source="https://download.kde.org/stable/frameworks/${pkgver%.*}/kio-$pkgver.tar.xz - cxx17.patch + favicon-url.patch + unmounted-root.patch " build() { @@ -31,21 +33,36 @@ build() { -DCMAKE_INSTALL_PREFIX=/usr \ -DCMAKE_INSTALL_LIBDIR=lib \ -DBUILD_SHARED_LIBS=True \ - -DCMAKE_BUILD_TYPE=RelWithDebugInfo \ + -DCMAKE_BUILD_TYPE=RelWithDebInfo \ -DCMAKE_CXX_FLAGS="$CXXFLAGS" \ -DCMAKE_C_FLAGS="$CFLAGS" \ -DBUILD_QCH:BOOL=ON \ ${CMAKE_CROSSOPTS} . make + # KIO threads use a lot of stack space. We need to make sure they don't + # run out of stack space during file operations. + chelf -s 1048576 bin/libKF5KIOCore.so.5 } check() { - CTEST_OUTPUT_ON_FAILURE=TRUE ctest + # Multiple tests require umask to be 077; example: JobTest::storedPut(). + # Disable these due to #1348: + # 44 - kiowidgets-kdirlistertest (Failed) + # 45 - kiowidgets-kdirmodeltest (Failed) + # 60 - kiofilewidgets-kfilewidgettest (Failed) + # Disable this due to known musl limitations (#1349): + # 70 - kioworker-httpheaderdispositiontest (Failed) + # These try to connect to google.com: + # 12 - kiocore-ktcpsockettest (Failed) + # 14 - kiocore-mimetypefinderjobtest (Failed) + # 28 - kiogui-openurljobtest (Failed) + (umask 077; CTEST_OUTPUT_ON_FAILURE=TRUE ctest -E '(kdirlistertest|kdirmodeltest|kfilewidgettest|httpheaderdispositiontest|ktcpsockettest|mimetypefinderjobtest|openurljobtest)') } package() { make DESTDIR="$pkgdir" install } -sha512sums="acf7456ab0a3d122d8bbf6e7dbff51f958b1c6bf29f7295c21c78c5c707d5fee05b76d30e51832f35220cd08bf06a2e27c11153559b25f74b7c8f5f532f50955 kio-5.94.0.tar.xz -a3be4ad4800ada7331a47833f51d13bc5cf47e9e6153fffff27d18462f77083221a7aa02a36c0afe57d992a5292777628c09c5443ff58ca1803ddfbc482fa745 cxx17.patch" +sha512sums="a07661717846860db3a64bcead9c2b80192d8c5b8e66a25f0f83ced6b596c4e8af7eb94e68b17770f45b36b22ccbcecaef4f8590d790cf69fceb140ab9e47376 kio-5.116.0.tar.xz +9dc784fe35a09b145ff3dd1e1f3b02242891c0f39b087b31fcc11ca7fc98ed900f63b91213d33affd9ef0b9982e11fd16f50cc7dd274b78f187c20ac3f08dba0 favicon-url.patch +35e2e4525ee1b8779d9e42d5e280f0ca84ee5932d633392c483d069bc9d7f52240ee1d7111cc1751f11bf6e92e344e8254d29e589ef27a30622e44a970798705 unmounted-root.patch" diff --git a/user/kio/cxx17.patch b/user/kio/cxx17.patch deleted file mode 100644 index d73e93b65..000000000 --- a/user/kio/cxx17.patch +++ /dev/null @@ -1,21 +0,0 @@ -G++ does not have transform_reduce until C++20, despite being part of the -C++17 standard. This reverts the only usage of Parallelism TR2 in KIO. - ---- kio-5.94.0/src/filewidgets/kurlnavigator.cpp.old 2022-05-12 07:14:39.000000000 -0500 -+++ kio-5.94.0/src/filewidgets/kurlnavigator.cpp 2022-06-03 01:42:48.541164895 -0500 -@@ -729,11 +729,11 @@ - availableWidth -= m_protocols->width(); - } - -- auto MinWidth = [](const KUrlNavigatorButton *button) { -- return button->minimumWidth(); -- }; - // Check whether buttons must be hidden at all... -- const int requiredButtonWidth = std::transform_reduce(m_navButtons.cbegin(), m_navButtons.cend(), 0, std::plus<>(), MinWidth); -+ int requiredButtonWidth = 0; -+ for (const KUrlNavigatorButton *button : std::as_const(m_navButtons)) { -+ requiredButtonWidth += button->minimumWidth(); -+ } - - if (requiredButtonWidth > availableWidth) { - // At least one button must be hidden. This implies that the diff --git a/user/kio/favicon-url.patch b/user/kio/favicon-url.patch new file mode 100644 index 000000000..bcf4d432a --- /dev/null +++ b/user/kio/favicon-url.patch @@ -0,0 +1,14 @@ +Set the URL to one we control that is >65KB. + +Some KDE mirrors have dropped KCalc 4.x, which makes this test flaky. +--- kio-5.116.0/autotests/favicontest.cpp.old 2024-05-04 11:40:29.000000000 +0000 ++++ kio-5.116.0/autotests/favicontest.cpp 2025-08-10 05:32:25.751427228 +0000 +@@ -216,7 +216,7 @@ + + // Set icon URL to a >65KB file + KIO::FavIconRequestJob *job = new KIO::FavIconRequestJob(url); +- job->setIconUrl(QUrl("http://download.kde.org/Attic/4.13.2/src/kcalc-4.13.2.tar.xz")); ++ job->setIconUrl(QUrl("http://distfiles.adelielinux.org/source/adelie-kde-theme-1.0.tar.xz")); + QVERIFY(willDownload(job)); + QVERIFY(!job->exec()); + QCOMPARE(job->error(), int(KIO::ERR_WORKER_DEFINED)); diff --git a/user/kio/unmounted-root.patch b/user/kio/unmounted-root.patch new file mode 100644 index 000000000..520703d1f --- /dev/null +++ b/user/kio/unmounted-root.patch @@ -0,0 +1,37 @@ +These tests fail if / (root) is not a mountpoint. + +Upstream-URL: https://invent.kde.org/frameworks/kio/-/issues/43 + +--- kio-5.116.0/autotests/jobtest.cpp.old 2024-05-04 11:40:29.000000000 +0000 ++++ kio-5.116.0/autotests/jobtest.cpp 2025-08-10 05:18:18.789195125 +0000 +@@ -60,8 +60,7 @@ + { + KMountPoint::Ptr srcMountPoint = KMountPoint::currentMountPoints().findByPath(homeTmpDir()); + KMountPoint::Ptr destMountPoint = KMountPoint::currentMountPoints().findByPath(otherTmpDir()); +- Q_ASSERT(srcMountPoint); +- Q_ASSERT(destMountPoint); ++ if (srcMountPoint == nullptr || destMountPoint == nullptr) return true; + return srcMountPoint->mountedFrom() == destMountPoint->mountedFrom(); + } + +--- kio-5.116.0/autotests/kmountpointtest.cpp.old 2024-05-04 11:40:29.000000000 +0000 ++++ kio-5.116.0/autotests/kmountpointtest.cpp 2025-08-10 05:26:09.210428498 +0000 +@@ -56,9 +56,15 @@ + // Check findByPath + #ifdef Q_OS_UNIX + const KMountPoint::Ptr rootMountPoint = mountPoints.findByPath(QStringLiteral("/")); +- QVERIFY(rootMountPoint); +- QCOMPARE(rootMountPoint->mountPoint(), QStringLiteral("/")); +- QVERIFY(!rootMountPoint->probablySlow()); ++ if (!rootMountPoint) { ++ // This happens on Linux systems running inside chroot jails. ++ QSKIP("Couldn't find a root mountpoint, skipping those tests"); ++ return; ++ } else { ++ QVERIFY(rootMountPoint); ++ QCOMPARE(rootMountPoint->mountPoint(), QStringLiteral("/")); ++ QVERIFY(!rootMountPoint->probablySlow()); ++ } + + QT_STATBUF rootStatBuff; + QCOMPARE(QT_STAT("/", &rootStatBuff), 0); |