From: "Kirill Bychkov" Subject: Re: UPDATE: owncloudclient-6.0.3.18040 + NEW www/libre-graph-api To: "Rafael Sadowski" Cc: ports@openbsd.org Date: Wed, 6 May 2026 11:52:32 +0300 On Tue, May 5, 2026 13:40, Rafael Sadowski wrote: > Heads up owncloudclient users, please test this. I would like to get rid > of Qt5 here! > > Please find below a diff to update owncloudclient to 6.0.3.18040. I > also attached www/libre-graph-api as a "new" (not bundled) dependency. > > Cheers Rafael Hi! I have some draft of OCclient but it wasn't working. I've migrated my home server to nextcloud but will check your diff and hope that this client is compatible with nextcloud server. > > diff --git a/net/owncloudclient/Makefile b/net/owncloudclient/Makefile > index ab28a6f503e..1461abf99e1 100644 > --- a/net/owncloudclient/Makefile > +++ b/net/owncloudclient/Makefile > @@ -1,15 +1,12 @@ > COMMENT = owncloud sync client > > -V = 4.2.0.11670 > -GRAPHAPI_V = 1.0.1 > +V = 6.0.3.18040 > DISTNAME = ownCloud-${V} > PKGNAME = owncloudclient-${V} > -DISTFILES += ownCloud-${V}.tar.xz > -DISTFILES.a += libre-graph-api-cpp-qt-client-{}v${GRAPHAPI_V}.tar.gz > > -SHARED_LIBS += owncloudsync 9.0 > -SHARED_LIBS += owncloud_csync 3.0 > -SHARED_LIBS += owncloudResources 0.1 > +SHARED_LIBS += ownCloudCsync 0.0 # 0.0 > +SHARED_LIBS += ownCloudLibSync 0.0 # 0.0 > +SHARED_LIBS += ownCloudResources 0.0 # 0.0 > > CATEGORIES = net > > @@ -20,42 +17,45 @@ MAINTAINER = Kirill Bychkov > # GPLv2+ > PERMIT_PACKAGE = Yes > > -WANTLIB += Qt5Concurrent Qt5Core Qt5DBus Qt5Gui Qt5Network Qt5Widgets > -WANTLIB += Qt5Xml c m qt5keychain sqlite3 z > -WANTLIB += ${COMPILER_LIBCXX} lib/inotify/inotify > +WANTLIB += ${COMPILER_LIBCXX} GL LibreGraphAPI Qt6Concurrent Qt6Core > +WANTLIB += Qt6DBus Qt6Gui Qt6Network Qt6OpenGL Qt6Qml Qt6Quick > +WANTLIB += Qt6QuickControls2 Qt6QuickWidgets Qt6Widgets Qt6Xml > +WANTLIB += c kdsingleapplication-qt6 m qt6keychain sqlite3 z > +WANTLIB += lib/inotify/inotify > > SITES = https://download.owncloud.com/desktop/ownCloud/stable/latest/source/ > \ > https://download.owncloud.com/desktop/ownCloud/stable/${V}/source/ > -SITES.a = > https://github.com/owncloud/libre-graph-api-cpp-qt-client/archive/refs/tags/ > +EXTRACT_SUFX = .tar.xz > > -MODULES = devel/cmake x11/qt5 > +MODULES = devel/cmake > > BUILD_DEPENDS = devel/kf6/extra-cmake-modules > + > RUN_DEPENDS = devel/desktop-file-utils \ > misc/shared-mime-info \ > x11/gtk+4,-guic > + > LIB_DEPENDS = databases/sqlite3 \ > devel/libinotify \ > - security/qtkeychain > + security/qtkeychain,qt6 \ > + www/libre-graph-api \ > + x11/kdsingleapplication \ > + x11/qt6/qtdeclarative > > CONFIGURE_ARGS += -Wno-dev \ > -DSYSCONF_INSTALL_DIR=${SYSCONFDIR} \ > -DKDE_INSTALL_PLUGINDIR=${PREFIX}/lib/ownCloud/plugins/ \ > - -DCMAKE_DISABLE_FIND_PACKAGE_KF5=TRUE \ > -DCMAKE_DISABLE_FIND_PACKAGE_CMocka=TRUE \ > -DCSYNC_REQUIRED_LIBRARIES=c \ > -DWITH_AUTO_UPDATER=FALSE \ > -DWITH_LIBCLOUDPROVIDERS=FALSE > > -CFLAGS += -I${LOCALBASE}/include -I${LOCALBASE}/include/qtkeychain > -CXXFLAGS += -I${LOCALBASE}/include -I${LOCALBASE}/include/qtkeychain > +CFLAGS += -I${LOCALBASE}/include -I${LOCALBASE}/include/qtkeychain > -I${LOCALBASE}/include/inotify > +CXXFLAGS += -I${LOCALBASE}/include -I${LOCALBASE}/include/qtkeychain > -I${LOCALBASE}/include/inotify > MODCMAKE_LDFLAGS = -L${LOCALBASE}/lib > > NO_TEST = Yes > > -post-extract: > - cp -r ${WRKDIR}/libre-graph-api-cpp-qt-client-${GRAPHAPI_V} \ > - ${WRKDIST}/src/libsync/libregraphapisrc-src > post-install: > ${INSTALL_DATA_DIR} ${PREFIX}/share/examples/ownCloud/ > mv ${WRKINST}/etc/ownCloud ${PREFIX}/share/examples/ > diff --git a/net/owncloudclient/distinfo b/net/owncloudclient/distinfo > index 6595409ed4c..0843babd2a6 100644 > --- a/net/owncloudclient/distinfo > +++ b/net/owncloudclient/distinfo > @@ -1,4 +1,2 @@ > -SHA256 (libre-graph-api-cpp-qt-client-v1.0.1.tar.gz) = > sbOj1IyXOwz1MnQy/t87fF/zMF8xq7rYYrPYyNoHZvE= > -SHA256 (ownCloud-4.2.0.11670.tar.xz) = > 6CoXrTuF1o3696Dh0fmwmYha/Y0UKfUNvKSqwvofTs8= > -SIZE (libre-graph-api-cpp-qt-client-v1.0.1.tar.gz) = 105266 > -SIZE (ownCloud-4.2.0.11670.tar.xz) = 4126004 > +SHA256 (ownCloud-6.0.3.18040.tar.xz) = > R+pBQwgBMytlydwGf00ClcJP6PDBImXSKEnMlK0TxNQ= > +SIZE (ownCloud-6.0.3.18040.tar.xz) = 2390188 > diff --git a/net/owncloudclient/patches/patch-src_common_utility_cpp > b/net/owncloudclient/patches/patch-src_common_utility_cpp > index cb951b05ccf..57baac0929e 100644 > --- a/net/owncloudclient/patches/patch-src_common_utility_cpp > +++ b/net/owncloudclient/patches/patch-src_common_utility_cpp > @@ -1,7 +1,7 @@ > Index: src/common/utility.cpp > --- src/common/utility.cpp.orig > +++ src/common/utility.cpp > -@@ -163,8 +163,8 @@ qint64 Utility::freeDiskSpace(const QString &path) > +@@ -124,8 +124,8 @@ qint64 Utility::freeDiskSpace(const QString &path) > return (qint64)stat.f_bavail * stat.f_frsize; > } > #elif defined(Q_OS_UNIX) > diff --git a/net/owncloudclient/patches/patch-src_gui_CMakeLists_txt > b/net/owncloudclient/patches/patch-src_gui_CMakeLists_txt > deleted file mode 100644 > index 6b7c74280cf..00000000000 > --- a/net/owncloudclient/patches/patch-src_gui_CMakeLists_txt > +++ /dev/null > @@ -1,21 +0,0 @@ > -Index: src/gui/CMakeLists.txt > ---- src/gui/CMakeLists.txt.orig > -+++ src/gui/CMakeLists.txt > -@@ -157,9 +157,14 @@ elseif(UNIX AND NOT APPLE) > - target_link_libraries(owncloudCore PUBLIC Qt5::DBus) > - target_compile_definitions(owncloudCore PUBLIC > "USE_FDO_NOTIFICATIONS") > - endif() > -- target_sources(owncloudCore PRIVATE > -- folderwatcher_linux.cpp > -- guiutility_unix.cpp) > -+ > -+ if(Inotify_FOUND) > -+ target_sources(owncloudCore PRIVATE > -+ folderwatcher_linux.cpp > -+ guiutility_unix.cpp) > -+ target_include_directories(owncloudCore PRIVATE > ${Inotify_INCLUDE_DIRS}) > -+ target_link_libraries(owncloudCore PUBLIC ${Inotify_LIBRARIES} ) > -+ endif() > - endif() > - > - if(WITH_AUTO_UPDATER) > diff --git a/net/owncloudclient/patches/patch-src_libsync_CMakeLists_txt > b/net/owncloudclient/patches/patch-src_libsync_CMakeLists_txt > deleted file mode 100644 > index dd468f38492..00000000000 > --- a/net/owncloudclient/patches/patch-src_libsync_CMakeLists_txt > +++ /dev/null > @@ -1,17 +0,0 @@ > -Index: src/libsync/CMakeLists.txt > ---- src/libsync/CMakeLists.txt.orig > -+++ src/libsync/CMakeLists.txt > -@@ -3,12 +3,7 @@ set(LibreGraphAPIVersion v1.0.1) > - find_package(LibreGraphAPI QUIET) > - if (NOT TARGET OpenAPI::LibreGraphAPI) > - message(WARNING "Failed to find system OpenAPI::LibreGraphAPI: fetching > ${LibreGraphAPIVersion}") > -- include(FetchContent) > -- FetchContent_Populate(LibreGraphAPISrc > -- QUIET > -- GIT_REPOSITORY > https://github.com/owncloud/libre-graph-api-cpp-qt-client.git > -- GIT_TAG ${LibreGraphAPIVersion}) > -- add_subdirectory(${libregraphapisrc_SOURCE_DIR}/client > ${libregraphapisrc_BINARY_DIR}/client EXCLUDE_FROM_ALL) > -+ add_subdirectory(libregraphapisrc-src/client libregraphapisrc-src/client > EXCLUDE_FROM_ALL) > - endif() > - > - set(libsync_SRCS > diff --git a/net/owncloudclient/patches/patch-src_libsync_platform_cpp > b/net/owncloudclient/patches/patch-src_libsync_platform_cpp > index e23e08efddc..f6a2d9b91ce 100644 > --- a/net/owncloudclient/patches/patch-src_libsync_platform_cpp > +++ b/net/owncloudclient/patches/patch-src_libsync_platform_cpp > @@ -1,7 +1,7 @@ > Index: src/libsync/platform.cpp > --- src/libsync/platform.cpp.orig > +++ src/libsync/platform.cpp > -@@ -46,7 +46,7 @@ std::unique_ptr Platform::create() > +@@ -59,7 +59,7 @@ std::unique_ptr Platform::create() > > #if defined(Q_OS_WIN) > return std::make_unique(); > diff --git a/net/owncloudclient/pkg/PLIST b/net/owncloudclient/pkg/PLIST > index d2c45e424e8..5bf817bb575 100644 > --- a/net/owncloudclient/pkg/PLIST > +++ b/net/owncloudclient/pkg/PLIST > @@ -18,17 +18,47 @@ lib/cmake/ownCloud/ > lib/cmake/ownCloud/ownCloudConfig${MODCMAKE_BUILD_SUFFIX} > lib/cmake/ownCloud/ownCloudConfig.cmake > lib/cmake/ownCloud/ownCloudConfigVersion.cmake > -@lib lib/libowncloudResources.so.${LIBowncloudResources_VERSION} > -@lib lib/libowncloud_csync.so.${LIBowncloud_csync_VERSION} > -@lib lib/libowncloudsync.so.${LIBowncloudsync_VERSION} > +@lib lib/libownCloudCsync.so.${LIBownCloudCsync_VERSION} > +@lib lib/libownCloudLibSync.so.${LIBownCloudLibSync_VERSION} > +@lib lib/libownCloudResources.so.${LIBownCloudResources_VERSION} > +@so lib/libowncloudGui.so > lib/ownCloud/ > lib/ownCloud/plugins/ > -@so lib/ownCloud/plugins/owncloudsync_vfs_off.so > -@so lib/ownCloud/plugins/owncloudsync_vfs_suffix.so > +@so lib/ownCloud/plugins/ownCloud_vfs_off.so > +@so lib/ownCloud/plugins/ownCloud_vfs_suffix.so > +lib/qt6/qml/ > +lib/qt6/qml/org/ > +lib/qt6/qml/org/ownCloud/ > +lib/qt6/qml/org/ownCloud/gui/ > +lib/qt6/qml/org/ownCloud/gui/kde-qmlmodule.version > +@so lib/qt6/qml/org/ownCloud/gui/libowncloudGuiplugin.so > +lib/qt6/qml/org/ownCloud/gui/owncloudGui.qmltypes > +lib/qt6/qml/org/ownCloud/gui/qml/ > +lib/qt6/qml/org/ownCloud/gui/qml/AccountBar.qml > +lib/qt6/qml/org/ownCloud/gui/qml/AccountButton.qml > +lib/qt6/qml/org/ownCloud/gui/qml/FolderDelegate.qml > +lib/qt6/qml/org/ownCloud/gui/qml/FolderError.qml > +lib/qt6/qml/org/ownCloud/gui/qml/credentials/ > +lib/qt6/qml/org/ownCloud/gui/qml/credentials/BasicAuthCredentials.qml > +lib/qt6/qml/org/ownCloud/gui/qml/credentials/Credentials.qml > +lib/qt6/qml/org/ownCloud/gui/qml/credentials/OAuthCredentials.qml > +lib/qt6/qml/org/ownCloud/gui/qmldir > +lib/qt6/qml/org/ownCloud/gui/spaces/ > +lib/qt6/qml/org/ownCloud/gui/spaces/qml/ > +lib/qt6/qml/org/ownCloud/gui/spaces/qml/SpaceDelegate.qml > +lib/qt6/qml/org/ownCloud/gui/spaces/qml/SpacesView.qml > +lib/qt6/qml/org/ownCloud/libsync/ > +lib/qt6/qml/org/ownCloud/libsync/kde-qmlmodule.version > +@so lib/qt6/qml/org/ownCloud/libsync/liblibsyncplugin.so > +lib/qt6/qml/org/ownCloud/libsync/libsync.qmltypes > +lib/qt6/qml/org/ownCloud/libsync/qmldir > +lib/qt6/qml/org/ownCloud/resources/ > +lib/qt6/qml/org/ownCloud/resources/kde-qmlmodule.version > +@so lib/qt6/qml/org/ownCloud/resources/libowncloudResourcesplugin.so > +lib/qt6/qml/org/ownCloud/resources/owncloudResources.qmltypes > +lib/qt6/qml/org/ownCloud/resources/qmldir > share/applications/owncloud.desktop > -share/caja-python/ > -share/caja-python/extensions/ > -share/caja-python/extensions/syncstate-ownCloud.py > +share/applications/owncloudcmd.desktop > share/examples/ownCloud/ > @sample ${SYSCONFDIR}/ownCloud/ > share/examples/ownCloud/sync-exclude.lst > @@ -36,76 +66,14 @@ share/examples/ownCloud/sync-exclude.lst > share/icons/hicolor/1024x1024/ > share/icons/hicolor/1024x1024/apps/ > share/icons/hicolor/1024x1024/apps/owncloud.png > -share/icons/hicolor/128x128/apps/ownCloud_error.png > -share/icons/hicolor/128x128/apps/ownCloud_error_shared.png > -share/icons/hicolor/128x128/apps/ownCloud_ok.png > -share/icons/hicolor/128x128/apps/ownCloud_ok_shared.png > -share/icons/hicolor/128x128/apps/ownCloud_sync.png > -share/icons/hicolor/128x128/apps/ownCloud_sync_shared.png > -share/icons/hicolor/128x128/apps/ownCloud_warn.png > -share/icons/hicolor/128x128/apps/ownCloud_warn_shared.png > share/icons/hicolor/128x128/apps/owncloud.png > -share/icons/hicolor/16x16/apps/ownCloud_error.png > -share/icons/hicolor/16x16/apps/ownCloud_error_shared.png > -share/icons/hicolor/16x16/apps/ownCloud_ok.png > -share/icons/hicolor/16x16/apps/ownCloud_ok_shared.png > -share/icons/hicolor/16x16/apps/ownCloud_sync.png > -share/icons/hicolor/16x16/apps/ownCloud_sync_shared.png > -share/icons/hicolor/16x16/apps/ownCloud_warn.png > -share/icons/hicolor/16x16/apps/ownCloud_warn_shared.png > share/icons/hicolor/16x16/apps/owncloud.png > share/icons/hicolor/24x24/apps/owncloud.png > -share/icons/hicolor/256x256/apps/ownCloud_error.png > -share/icons/hicolor/256x256/apps/ownCloud_error_shared.png > -share/icons/hicolor/256x256/apps/ownCloud_ok.png > -share/icons/hicolor/256x256/apps/ownCloud_ok_shared.png > -share/icons/hicolor/256x256/apps/ownCloud_sync.png > -share/icons/hicolor/256x256/apps/ownCloud_sync_shared.png > -share/icons/hicolor/256x256/apps/ownCloud_warn.png > -share/icons/hicolor/256x256/apps/ownCloud_warn_shared.png > share/icons/hicolor/256x256/apps/owncloud.png > -share/icons/hicolor/32x32/apps/ownCloud_error.png > -share/icons/hicolor/32x32/apps/ownCloud_error_shared.png > -share/icons/hicolor/32x32/apps/ownCloud_ok.png > -share/icons/hicolor/32x32/apps/ownCloud_ok_shared.png > -share/icons/hicolor/32x32/apps/ownCloud_sync.png > -share/icons/hicolor/32x32/apps/ownCloud_sync_shared.png > -share/icons/hicolor/32x32/apps/ownCloud_warn.png > -share/icons/hicolor/32x32/apps/ownCloud_warn_shared.png > share/icons/hicolor/32x32/apps/owncloud.png > -share/icons/hicolor/48x48/apps/ownCloud_error.png > -share/icons/hicolor/48x48/apps/ownCloud_error_shared.png > -share/icons/hicolor/48x48/apps/ownCloud_ok.png > -share/icons/hicolor/48x48/apps/ownCloud_ok_shared.png > -share/icons/hicolor/48x48/apps/ownCloud_sync.png > -share/icons/hicolor/48x48/apps/ownCloud_sync_shared.png > -share/icons/hicolor/48x48/apps/ownCloud_warn.png > -share/icons/hicolor/48x48/apps/ownCloud_warn_shared.png > share/icons/hicolor/48x48/apps/owncloud.png > -share/icons/hicolor/64x64/apps/ownCloud_error.png > -share/icons/hicolor/64x64/apps/ownCloud_error_shared.png > -share/icons/hicolor/64x64/apps/ownCloud_ok.png > -share/icons/hicolor/64x64/apps/ownCloud_ok_shared.png > -share/icons/hicolor/64x64/apps/ownCloud_sync.png > -share/icons/hicolor/64x64/apps/ownCloud_sync_shared.png > -share/icons/hicolor/64x64/apps/ownCloud_warn.png > -share/icons/hicolor/64x64/apps/ownCloud_warn_shared.png > share/icons/hicolor/64x64/apps/owncloud.png > -share/icons/hicolor/72x72/apps/ownCloud_error.png > -share/icons/hicolor/72x72/apps/ownCloud_error_shared.png > -share/icons/hicolor/72x72/apps/ownCloud_ok.png > -share/icons/hicolor/72x72/apps/ownCloud_ok_shared.png > -share/icons/hicolor/72x72/apps/ownCloud_sync.png > -share/icons/hicolor/72x72/apps/ownCloud_sync_shared.png > -share/icons/hicolor/72x72/apps/ownCloud_warn.png > -share/icons/hicolor/72x72/apps/ownCloud_warn_shared.png > share/mime/packages/owncloud.xml > -share/nautilus-python/ > -share/nautilus-python/extensions/ > -share/nautilus-python/extensions/syncstate-ownCloud.py > -share/nemo-python/ > -share/nemo-python/extensions/ > -share/nemo-python/extensions/syncstate-ownCloud.py > @tag update-desktop-database > @tag gtk-update-icon-cache %D/share/icons/hicolor > @tag update-mime-database >