--- a/CMakeLists.txt 2021-11-02 16:05:30.948387814 +0000 +++ b/CMakeLists.txt 2021-11-02 16:06:41.539987656 +0000 @@ -126,8 +126,7 @@ # Used by KMountPoint if (CMAKE_SYSTEM_NAME MATCHES "Linux") find_package(LibMount REQUIRED) - find_package(Blkid REQUIRED) - set(HAVE_LIBS_MOUNT_AND_BLKID ${LibMount_FOUND} AND ${Blkid_FOUND}) + set(HAVE_LIB_MOUNT ${LibMount_FOUND}) endif() add_definitions(-DQT_DISABLE_DEPRECATED_BEFORE=0x050f00) --- a/src/core/CMakeLists.txt 2021-11-02 16:07:14.803799003 +0000 +++ b/src/core/CMakeLists.txt 2021-11-02 16:08:51.340257597 +0000 @@ -224,9 +224,8 @@ target_link_libraries(KF5KIOCore PRIVATE ${ACL_LIBS}) endif() -if(HAVE_LIBS_MOUNT_AND_BLKID) - # libmount links against blkid anyway - target_link_libraries(KF5KIOCore PRIVATE LibMount::LibMount Blkid::Blkid) +if(HAVE_LIBS_MOUNT) + target_link_libraries(KF5KIOCore PRIVATE LibMount::LibMount) endif() # this should be done by cmake, see bug 371721 --- a/src/core/config-kmountpoint.h.cmake 2021-11-02 16:09:20.148101196 +0000 +++ b/src/core/config-kmountpoint.h.cmake 2021-11-02 16:09:41.755983761 +0000 @@ -1,7 +1,7 @@ #cmakedefine01 HAVE_GETMNTINFO #cmakedefine01 GETMNTINFO_USES_STATVFS -#cmakedefine01 HAVE_LIBS_MOUNT_AND_BLKID +#cmakedefine01 HAVE_LIBS_MOUNT #cmakedefine01 HAVE_SYS_MOUNT_H #cmakedefine01 HAVE_SYS_TYPES_H --- a/src/core/kmountpoint.cpp 2021-11-02 16:10:23.627755899 +0000 +++ b/src/core/kmountpoint.cpp 2021-11-02 16:27:18.508197079 +0000 @@ -43,7 +43,7 @@ #endif // Linux -#if HAVE_LIBS_MOUNT_AND_BLKID +#if HAVE_LIBS_MOUNT #include #include #endif @@ -155,7 +155,7 @@ #ifdef Q_OS_WIN result = KMountPoint::currentMountPoints(infoNeeded); -#elif HAVE_LIBS_MOUNT_AND_BLKID +#elif HAVE_LIBS_MOUNT if (struct libmnt_table *table = mnt_new_table()) { // By default parses "/etc/fstab" if (mnt_table_parse_fstab(table, nullptr) == 0) { @@ -176,23 +176,13 @@ // or some network mount if (const char *source = mnt_fs_get_source(fs)) { mp->d->m_mountedFrom = QFile::decodeName(source); - if (mp->d->m_mountedFrom.startsWith(QLatin1String("UUID")) || mp->d->m_mountedFrom.startsWith(QLatin1String("LABEL"))) { - // Use blkid to resolve UUID/LABEL to the device file - if (char *blkSource = blkid_evaluate_spec(source, nullptr)) { - mp->d->m_mountedFrom = QFile::decodeName(blkSource); - free(blkSource); - if ((infoNeeded & KMountPoint::NeedRealDeviceName) // - && mp->d->m_mountedFrom.startsWith(QLatin1String("/dev/"))) { - mp->d->m_device = mp->d->m_mountedFrom; - } - } - } } if (infoNeeded & NeedMountOptions) { mp->d->m_mountOptions = QFile::decodeName(mnt_fs_get_options(fs)).split(QLatin1Char(',')); } + mp->d->finalizePossibleMountPoint(infoNeeded); result.append(mp); } mnt_free_iter(itr); @@ -319,7 +309,7 @@ } } -#elif HAVE_LIBS_MOUNT_AND_BLKID +#elif HAVE_LIBS_MOUNT if (struct libmnt_table *table = mnt_new_table()) { // By default, parses "/proc/self/mountinfo" if (mnt_table_parse_mtab(table, nullptr) == 0) {