git: bcaba39d3a83 - main - net-mgmt/seafile-{client,gui}: update to 9.0.18

From: Michael Osipov <michaelo_at_FreeBSD.org>
Date: Fri, 19 Jun 2026 17:00:27 UTC
The branch main has been updated by michaelo:

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

commit bcaba39d3a83a022625927c38e8af6fb8a62ea4f
Author:     d.stoye <d.stoye@cms.hu-berlin.de>
AuthorDate: 2026-06-19 10:00:51 +0000
Commit:     Michael Osipov <michaelo@FreeBSD.org>
CommitDate: 2026-06-19 17:00:11 +0000

    net-mgmt/seafile-{client,gui}: update to 9.0.18
    
    Author also agreed to adopt port.
    
    Reviewed by:    makc, michaelo
    Differential Revision:  https://reviews.freebsd.org/D57610
    Changelog:      https://github.com/haiwen/seafile-client/compare/v9.0.7...v9.0.18
---
 net-mgmt/seafile-client/Makefile                   |  5 ++--
 net-mgmt/seafile-client/distinfo                   |  6 ++---
 .../seafile-client/files/patch-daemon_Makefile.am  |  6 ++---
 net-mgmt/seafile-client/files/patch-lib_utils.c    | 19 ++++++++++++++
 net-mgmt/seafile-gui/Makefile                      | 19 +++++++-------
 net-mgmt/seafile-gui/distinfo                      |  6 ++---
 net-mgmt/seafile-gui/files/patch-CMakeLists.txt    | 29 ++++++++++++++++++----
 ...tch-src-filebrowser-file-browser-search-tab.cpp | 11 ++++++++
 .../seafile-gui/files/patch-src-message-poller.cpp | 11 ++++++++
 net-mgmt/seafile-gui/pkg-plist                     |  2 +-
 10 files changed, 87 insertions(+), 27 deletions(-)

diff --git a/net-mgmt/seafile-client/Makefile b/net-mgmt/seafile-client/Makefile
index 9653fd40af94..2ddf11c8d0df 100644
--- a/net-mgmt/seafile-client/Makefile
+++ b/net-mgmt/seafile-client/Makefile
@@ -1,10 +1,10 @@
 PORTNAME=	seafile-client
 DISTVERSIONPREFIX=	v
-DISTVERSION=	9.0.6
+DISTVERSION=	9.0.18
 PORTREVISION=	1
 CATEGORIES=	net-mgmt
 
-MAINTAINER=	ports@FreeBSD.org
+MAINTAINER=	d.stoye@cms.hu-berlin.de
 COMMENT=	Open Source Cloud Storage (Client)
 WWW=		https://github.com/haiwen/seafile
 
@@ -16,6 +16,7 @@ LIB_DEPENDS=	libsearpc.so:devel/libsearpc \
 		libinotify.so:devel/libinotify \
 		libevent.so:devel/libevent \
 		libuuid.so:misc/libuuid \
+		libargon2.so:security/libargon2 \
 		libjansson.so:devel/jansson \
 		libwebsockets.so:net/libwebsockets
 RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}sqlite3>0:databases/py-sqlite3@${PY_FLAVOR} \
diff --git a/net-mgmt/seafile-client/distinfo b/net-mgmt/seafile-client/distinfo
index 332fdd40bde3..e1dbc82a9a91 100644
--- a/net-mgmt/seafile-client/distinfo
+++ b/net-mgmt/seafile-client/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1718476273
-SHA256 (haiwen-seafile-v9.0.6_GH0.tar.gz) = e0a1260ac995ad21a183cf73e647fe18e4fc06045f601ab5abcc4b62d07c2280
-SIZE (haiwen-seafile-v9.0.6_GH0.tar.gz) = 755372
+TIMESTAMP = 1781552976
+SHA256 (haiwen-seafile-v9.0.18_GH0.tar.gz) = 0b2a93e75b04e40c503c74059ca00b521bf981935f764efcbc5adfabff929d90
+SIZE (haiwen-seafile-v9.0.18_GH0.tar.gz) = 772680
diff --git a/net-mgmt/seafile-client/files/patch-daemon_Makefile.am b/net-mgmt/seafile-client/files/patch-daemon_Makefile.am
index 9d1de608a01f..775e3e6f5aa5 100644
--- a/net-mgmt/seafile-client/files/patch-daemon_Makefile.am
+++ b/net-mgmt/seafile-client/files/patch-daemon_Makefile.am
@@ -11,13 +11,13 @@
  if WIN32
  wt_monitor_src = wt-monitor.c wt-monitor-win32.c wt-monitor-structs.c
  endif
-@@ -97,7 +101,7 @@ seaf_daemon_LDADD = $(top_builddir)/lib/libseafile_com
+@@ -102,7 +102,7 @@
  	@LIB_RT@ @LIB_UUID@ -lsqlite3 @LIBEVENT_LIBS@ @LIBEVENT_PTHREADS_LIBS@\
  	$(top_builddir)/common/cdc/libcdc.la \
  	$(top_builddir)/common/index/libindex.la @LIB_WS32@ @LIB_CRYPT32@ \
 -	@SEARPC_LIBS@ @JANSSON_LIBS@ @LIB_MAC@ @ZLIB_LIBS@ @CURL_LIBS@ @BPWRAPPER_LIBS@ \
--	@WS_LIBS@
+-	@WS_LIBS@ @ARGON2_LIBS@
 +	@SEARPC_LIBS@ @JANSSON_LIBS@ @LIB_MAC@ @ZLIB_LIBS@ @CURL_LIBS@ \
-+	@LIB_INOTIFY@ @BPWRAPPER_LIBS@ @WS_LIBS@
++	@LIB_INOTIFY@ @BPWRAPPER_LIBS@ @WS_LIBS@ @ARGON2_LIBS@
  
  seaf_daemon_LDFLAGS = @CONSOLE@
diff --git a/net-mgmt/seafile-client/files/patch-lib_utils.c b/net-mgmt/seafile-client/files/patch-lib_utils.c
index a1f47ffa96c3..49104c45bf97 100644
--- a/net-mgmt/seafile-client/files/patch-lib_utils.c
+++ b/net-mgmt/seafile-client/files/patch-lib_utils.c
@@ -193,3 +193,22 @@
  }
  #endif
  
+@@ -2976,10 +2976,16 @@
+     return ret;
+ #else
+ 
++#ifdef __linux__
++    return removexattr (path, name);
++#endif
++
+ #ifdef __APPLE__
+     return removexattr (path, name, 0);
+-#else
+-    return removexattr (path, name);
++#endif
++
++#if defined __FreeBSD__ || defined __NetBSD__
++    return extattr_delete_file(path, EXTATTR_NAMESPACE_USER, name);
+ #endif
+ 
+ #endif
diff --git a/net-mgmt/seafile-gui/Makefile b/net-mgmt/seafile-gui/Makefile
index b4577b343190..2bb75c4371d6 100644
--- a/net-mgmt/seafile-gui/Makefile
+++ b/net-mgmt/seafile-gui/Makefile
@@ -1,10 +1,10 @@
 PORTNAME=	seafile-gui
 DISTVERSIONPREFIX=	v
-DISTVERSION=	9.0.6
+DISTVERSION=	9.0.18
 PORTREVISION=	1
 CATEGORIES=	net-mgmt devel
 
-MAINTAINER=	ports@FreeBSD.org
+MAINTAINER=	d.stoye@cms.hu-berlin.de
 COMMENT=	Open Source Cloud Storage (Client)
 WWW=		https://github.com/haiwen/seafile
 
@@ -18,7 +18,7 @@ LIB_DEPENDS=	libsearpc.so:devel/libsearpc \
 		libevent.so:devel/libevent \
 		libuuid.so:misc/libuuid
 
-USES=		compiler:c++11-lang cmake gnome pkgconfig qt:5 shebangfix ssl
+USES=		compiler:c++11-lang cmake gnome pkgconfig qt:6 shebangfix ssl
 SHEBANG_FILES=	extensions/*.sh scripts/*.sh fsplugin/*.sh \
 		scripts/*.py
 
@@ -27,15 +27,14 @@ GH_ACCOUNT=	haiwen
 GH_PROJECT=	seafile-client
 
 USE_GNOME=	glib20
-USE_QT=		core dbus gui network widgets \
-		qmake:build buildtools:build linguisttools:build
+USE_GL= 	gl opengl
+USE_QT= 	5compat base declarative positioning \
+		webengine webchannel
 CMAKE_ARGS=	-DCMAKE_INCLUDE_PATH:PATH=include/glib-2.0 \
 		-DOPENSSL_INCLUDE_DIRS=${OPENSSLINC} \
-		-DOPENSSL_LIBRARIES="-L${OPENSSLLIB} -lcrypto"
-
-OPTIONS_DEFINE=	DEBUG NLS
-
-NLS_USES=	gettext
+		-DOPENSSL_LIBRARIES="-L${OPENSSLLIB} -lcrypto" \
+		-DBUILD_SHIBBOLETH_SUPPORT=ON \
+		-DQT_VERSION_MAJOR=6
 
 # Note that per PR 197984, cairo must be built with X11 and XCB options
 # otherwise configure fails with "cairo needs x11 enabled" message
diff --git a/net-mgmt/seafile-gui/distinfo b/net-mgmt/seafile-gui/distinfo
index 86773a316fe8..12359da732f0 100644
--- a/net-mgmt/seafile-gui/distinfo
+++ b/net-mgmt/seafile-gui/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1718476293
-SHA256 (haiwen-seafile-client-v9.0.6_GH0.tar.gz) = ca6b795e10f84491f0bbf9fe17ab1ef5d0692581de8f81f64626caa9f4b917cd
-SIZE (haiwen-seafile-client-v9.0.6_GH0.tar.gz) = 11725450
+TIMESTAMP = 1781558483
+SHA256 (haiwen-seafile-client-v9.0.18_GH0.tar.gz) = 4c410761349f6b748fac1bd463c769d6a410cde90111e7dba87cf02ac8bbb151
+SIZE (haiwen-seafile-client-v9.0.18_GH0.tar.gz) = 11586605
diff --git a/net-mgmt/seafile-gui/files/patch-CMakeLists.txt b/net-mgmt/seafile-gui/files/patch-CMakeLists.txt
index 0b43f30d67fb..8190c97e80f4 100644
--- a/net-mgmt/seafile-gui/files/patch-CMakeLists.txt
+++ b/net-mgmt/seafile-gui/files/patch-CMakeLists.txt
@@ -1,6 +1,25 @@
---- CMakeLists.txt.orig	2022-04-25 04:00:03 UTC
+--- CMakeLists.txt.orig	2026-04-08 07:07:55 UTC
 +++ CMakeLists.txt
-@@ -171,7 +171,7 @@ IF (BUILD_SHIBBOLETH_SUPPORT)
+@@ -133,18 +133,6 @@ ENDIF()
+ ####################
+ ###### BEGIN: QT configuration
+ ####################
+-FIND_PROGRAM(qmake_executable NAMES qmake qmake.exe)
+-EXECUTE_PROCESS(COMMAND
+-    bash -c "${qmake_executable} --version | grep -iE '^using qt version [0-9.]+' | awk '{print $4}'"
+-    OUTPUT_VARIABLE DETECTED_QT_VERSION
+-    OUTPUT_STRIP_TRAILING_WHITESPACE)
+-MESSAGE("Qt version: ${DETECTED_QT_VERSION}")
+-EXECUTE_PROCESS(COMMAND
+-    bash -c "qmake --version|grep -iE '^using qt version [0-9]'|awk '{print $4}'|grep -iE '^[0-9]'|awk -F . '{print $1}'"
+-    OUTPUT_VARIABLE QT_VERSION_MAJOR
+-    OUTPUT_STRIP_TRAILING_WHITESPACE)
+-MESSAGE("QT_VERSION_MAJOR: ${QT_VERSION_MAJOR}")
+-
+ IF(USE_QT_WEBKIT)
+     ADD_DEFINITIONS(-DSEAFILE_USE_WEBKIT)
+     SET(WEBKIT_NAME "WebKit")
+@@ -171,7 +159,7 @@ ENDIF()
      ADD_DEFINITIONS(-DHAVE_SHIBBOLETH_SUPPORT)
  ENDIF()
  
@@ -9,7 +28,7 @@
      SET(USE_QT_LIBRARIES ${USE_QT_LIBRARIES} "DBus")
  ENDIF()
  
-@@ -383,7 +383,7 @@ PKG_CHECK_MODULES(JANSSON REQUIRED jansson>=2.0)
+@@ -383,7 +371,7 @@ PKG_CHECK_MODULES(LIBSEARPC REQUIRED libsearpc>=1.0)
  
  PKG_CHECK_MODULES(LIBSEARPC REQUIRED libsearpc>=1.0)
  
@@ -18,7 +37,7 @@
  
  PKG_CHECK_MODULES(LIBSEAFILE REQUIRED libseafile>=1.7)
  
-@@ -601,7 +601,7 @@ LIST(APPEND utils_sources
+@@ -597,7 +585,7 @@ LIST(APPEND utils_sources
      src/utils/stl.cpp
      src/utils/seafile-error.cpp
      )
@@ -27,7 +46,7 @@
      LIST(APPEND utils_sources
          src/utils/process-linux.cpp
          )
-@@ -797,7 +797,7 @@ IF (BUILD_SHIBBOLETH_SUPPORT)
+@@ -792,7 +780,7 @@ ENDIF()
  ENDIF()
  
  ## QtBus
diff --git a/net-mgmt/seafile-gui/files/patch-src-filebrowser-file-browser-search-tab.cpp b/net-mgmt/seafile-gui/files/patch-src-filebrowser-file-browser-search-tab.cpp
new file mode 100644
index 000000000000..b6149e078c6b
--- /dev/null
+++ b/net-mgmt/seafile-gui/files/patch-src-filebrowser-file-browser-search-tab.cpp
@@ -0,0 +1,11 @@
+--- src/filebrowser/file-browser-search-tab.cpp.orig	2026-04-08 09:07:55 UTC
++++ src/filebrowser/file-browser-search-tab.cpp
+@@ -158,7 +158,7 @@
+     horizontalHeader()->setStretchLastSection(true);
+     horizontalHeader()->setHighlightSections(false);
+     horizontalHeader()->setSortIndicatorShown(true);
+-#ifndef Q_OS_LINUX
++#if !defined(Q_OS_LINUX) && !defined(Q_OS_FREEBSD)
+     horizontalHeader()->setSortIndicatorClearable(true);
+ #endif
+     horizontalHeader()->setSortIndicator(-1, Qt::AscendingOrder);
diff --git a/net-mgmt/seafile-gui/files/patch-src-message-poller.cpp b/net-mgmt/seafile-gui/files/patch-src-message-poller.cpp
new file mode 100644
index 000000000000..61d46f22dfef
--- /dev/null
+++ b/net-mgmt/seafile-gui/files/patch-src-message-poller.cpp
@@ -0,0 +1,11 @@
+--- src/message-poller.cpp.orig	2026-04-08 07:07:55 UTC
++++ src/message-poller.cpp
+@@ -1,6 +1,8 @@
+ #include <QTimer>
+ #include <QDateTime>
+ #include <QJsonDocument>
++#include <QJsonValue>
++#include <QRegularExpression>
+ 
+ #include "utils/utils.h"
+ #include "utils/translate-commit-desc.h"
diff --git a/net-mgmt/seafile-gui/pkg-plist b/net-mgmt/seafile-gui/pkg-plist
index 7b3fff74b962..36e4573a8028 100644
--- a/net-mgmt/seafile-gui/pkg-plist
+++ b/net-mgmt/seafile-gui/pkg-plist
@@ -1,5 +1,5 @@
 bin/seafile-applet
-share/applications/seafile.desktop
+share/applications/com.seafile.seafile-applet.desktop
 share/icons/hicolor/128x128/apps/seafile.png
 share/icons/hicolor/16x16/apps/seafile.png
 share/icons/hicolor/22x22/apps/seafile.png