From 1e235d074f8af90087e9a49485f3443b86d09456 Mon Sep 17 00:00:00 2001 From: Lon Willett Date: Tue, 20 Apr 2021 13:14:36 +0200 Subject: [PATCH 1/5] libsearpc: update to 3.2.0.20200318 Update to 3.2.0.20200318 (i.e. 3.2-latest). Remove patch to support python3. Add patch to support include of header file within extern "C". --- .../patches/001-python3-support.patch | 114 ------------------ .../patches/01-glib-include-kludge.patch | 20 +++ srcpkgs/libsearpc/template | 13 +- 3 files changed, 28 insertions(+), 119 deletions(-) delete mode 100644 srcpkgs/libsearpc/patches/001-python3-support.patch create mode 100644 srcpkgs/libsearpc/patches/01-glib-include-kludge.patch diff --git a/srcpkgs/libsearpc/patches/001-python3-support.patch b/srcpkgs/libsearpc/patches/001-python3-support.patch deleted file mode 100644 index 7b4ae20c2819..000000000000 --- a/srcpkgs/libsearpc/patches/001-python3-support.patch +++ /dev/null @@ -1,114 +0,0 @@ -upstream: yes - -From b0079d2a0c3ce0cb4698a162498b108244726912 Mon Sep 17 00:00:00 2001 -From: Xiangyue Cai -Date: Mon, 8 Jun 2020 15:09:06 +0800 -Subject: [PATCH] configure with python3 (#53) - -* configure with python3 - -* remove future ---- - configure.ac | 2 +- - pysearpc/client.py | 1 - - pysearpc/named_pipe.py | 3 --- - pysearpc/pygencode.py | 3 --- - pysearpc/server.py | 2 -- - pysearpc/test_pysearpc.py | 1 - - pysearpc/transport.py | 2 -- - pysearpc/utils.py | 1 - - 8 files changed, 1 insertion(+), 14 deletions(-) - -diff --git configure.ac configure.ac -index 53d7438..9c2159a 100644 ---- configure.ac -+++ configure.ac -@@ -98,7 +98,7 @@ PKG_CHECK_MODULES(JANSSON, [jansson >= $JANSSON_REQUIRED]) - AC_SUBST(JANSSON_CFLAGS) - AC_SUBST(JANSSON_LIBS) - --AM_PATH_PYTHON([2.4]) -+AM_PATH_PYTHON([3.5]) - if test "$bwin32" = true; then - if test x$PYTHON_DIR != x; then - # set pyexecdir to somewhere like /c/Python26/Lib/site-packages -diff --git pysearpc/client.py pysearpc/client.py -index 20e5535..3650cb1 100644 ---- pysearpc/client.py -+++ pysearpc/client.py -@@ -1,4 +1,3 @@ --from builtins import object - import json - from .common import SearpcError - -diff --git pysearpc/named_pipe.py pysearpc/named_pipe.py -index a0ca619..73df576 100644 ---- pysearpc/named_pipe.py -+++ pysearpc/named_pipe.py -@@ -2,9 +2,6 @@ - RPC client/server implementation based on named pipe transport. - """ - --from future import standard_library --standard_library.install_aliases() --from builtins import object - import json - import logging - import os -diff --git pysearpc/pygencode.py pysearpc/pygencode.py -index 62a635b..8c718ce 100644 ---- pysearpc/pygencode.py -+++ pysearpc/pygencode.py -@@ -1,8 +1,5 @@ - #!/usr/bin/python - -- --from __future__ import print_function --from builtins import str - import string - import sys - -diff --git pysearpc/server.py pysearpc/server.py -index a7ec7be..94d9bac 100644 ---- pysearpc/server.py -+++ pysearpc/server.py -@@ -1,5 +1,3 @@ --from builtins import str --from builtins import object - import json - - from .common import SearpcError -diff --git pysearpc/test_pysearpc.py pysearpc/test_pysearpc.py -index a9c6f8b..64a455d 100755 ---- pysearpc/test_pysearpc.py -+++ pysearpc/test_pysearpc.py -@@ -1,7 +1,6 @@ - #!/usr/bin/env python - #coding: UTF-8 - --from builtins import object - import json - import logging - import os -diff --git pysearpc/transport.py pysearpc/transport.py -index 3c6e821..3deb42c 100644 ---- pysearpc/transport.py -+++ pysearpc/transport.py -@@ -1,5 +1,3 @@ -- --from builtins import object - class SearpcTransport(object): - """ - A transport is repsonsible to send the serialized request to the -diff --git pysearpc/utils.py pysearpc/utils.py -index 2aeda93..451ad4e 100644 ---- pysearpc/utils.py -+++ pysearpc/utils.py -@@ -1,4 +1,3 @@ --from builtins import bytes - import os - import socket - --- -2.30.0 - diff --git a/srcpkgs/libsearpc/patches/01-glib-include-kludge.patch b/srcpkgs/libsearpc/patches/01-glib-include-kludge.patch new file mode 100644 index 000000000000..8064ee3aeb5d --- /dev/null +++ b/srcpkgs/libsearpc/patches/01-glib-include-kludge.patch @@ -0,0 +1,20 @@ + Seafile sources sometimes include searpc-client.h an extern "C" block, + and recent versions of glib.h don't tolerate that. This is the easy fix, + until such time as the source is fixed upstream. +--- lib/searpc-client.h~ 2020-06-18 05:23:11.000000000 +0200 ++++ lib/searpc-client.h 2021-04-10 15:48:09.994005146 +0200 +@@ -7,8 +7,14 @@ + #define LIBSEARPC_API + #endif + ++#ifdef __cplusplus ++extern "C++" { ++#endif + #include + #include ++#ifdef __cplusplus ++} ++#endif + #include + + #ifndef DFT_DOMAIN diff --git a/srcpkgs/libsearpc/template b/srcpkgs/libsearpc/template index 02273e1ef58d..22fbb7987d06 100644 --- a/srcpkgs/libsearpc/template +++ b/srcpkgs/libsearpc/template @@ -1,18 +1,21 @@ # Template file for 'libsearpc' # WARNING: upstream sometimes retag source. Wait for official announcement pkgname=libsearpc -version=3.2.0 -revision=4 +# 3.2-latest (as of 2021-04-10) +version=3.2.0.20200318 +revision=1 +_gitrev=50ff08b03c7cec8e10b35ba438633b9fe08a8d90 +wrksrc="${pkgname}-${_gitrev}" build_style=gnu-configure -configure_args="PYTHON=python3 --disable-static --disable-compile-demo" +configure_args="--with-python3 --disable-static --disable-compile-demo" hostmakedepends="automake libtool pkg-config python3 glib-devel" makedepends="libglib-devel jansson-devel" short_desc="Seafile RPC library" maintainer="yopito " license="LGPL-3.0-or-later, Apache-2.0" homepage="https://seafile.com" -distfiles="https://github.com/haiwen/libsearpc/archive/v${version}.tar.gz" -checksum=cd00197fcc40b45b1d5e892b2d08dfa5947f737e0d80f3ef26419334e75b0bff +distfiles="https://github.com/haiwen/libsearpc/archive/${_gitrev}.tar.gz" +checksum=2a58894cefbc1d7398581fc58103261688c93a9cf63f11afc5e92142ed948c00 python_version=3 pre_configure() { From 1003eae3684002a17b1c402f4135d1dd7e227d61 Mon Sep 17 00:00:00 2001 From: Lon Willett Date: Tue, 20 Apr 2021 13:17:49 +0200 Subject: [PATCH 2/5] seafile-libclient: update to 8.0.2 --- srcpkgs/seafile-libclient/template | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/srcpkgs/seafile-libclient/template b/srcpkgs/seafile-libclient/template index db394362f188..36358c4a7bc5 100644 --- a/srcpkgs/seafile-libclient/template +++ b/srcpkgs/seafile-libclient/template @@ -1,8 +1,8 @@ # Template file for 'seafile-libclient' # WARNING: upstream sometimes retag source. Wait for official announcement pkgname=seafile-libclient -version=7.0.10 -revision=2 +version=8.0.2 +revision=1 _distname="${pkgname/-libclient/}" wrksrc="${_distname}-${version}" build_style=gnu-configure @@ -15,7 +15,7 @@ maintainer="yopito " license="GPL-2.0-or-later" # Has openssl exception not yet present on SPDX homepage="https://seafile.com" distfiles="https://github.com/haiwen/seafile/archive/v${version}.tar.gz" -checksum=9ac0a1c25e6f2bf874b5b080a165319f29cb3d03f044da8db8aed8412c8b4f45 +checksum=acfb77993887221d93b9f413f1726805133fe8cb32420c61aaa6c9e7a48e0e0d pre_configure() { ./autogen.sh From 68ef407098a7496847d7a5500ad7bcbf053d08d3 Mon Sep 17 00:00:00 2001 From: Lon Willett Date: Tue, 20 Apr 2021 13:19:17 +0200 Subject: [PATCH 3/5] seafile-client-qt: update to 8.0.2 Remove libressl patch. --- srcpkgs/seafile-client-qt/patches/libressl.patch | 11 ----------- srcpkgs/seafile-client-qt/template | 4 ++-- srcpkgs/seafile-client-qt/update | 6 ++---- 3 files changed, 4 insertions(+), 17 deletions(-) delete mode 100644 srcpkgs/seafile-client-qt/patches/libressl.patch diff --git a/srcpkgs/seafile-client-qt/patches/libressl.patch b/srcpkgs/seafile-client-qt/patches/libressl.patch deleted file mode 100644 index 1774719fa34a..000000000000 --- a/srcpkgs/seafile-client-qt/patches/libressl.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- src/utils/rsa.cpp.orig -+++ src/utils/rsa.cpp -@@ -13,7 +13,7 @@ - - /* Forward compatibility functions if libssl < 1.1.0. */ - --#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) -+#if OPENSSL_VERSION_NUMBER < 0x10100000L || (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x2070000fL) - - int RSA_set0_key(RSA *r, BIGNUM *n, BIGNUM *e, BIGNUM *d) - { diff --git a/srcpkgs/seafile-client-qt/template b/srcpkgs/seafile-client-qt/template index c0a475106e45..76b9a41fe45a 100644 --- a/srcpkgs/seafile-client-qt/template +++ b/srcpkgs/seafile-client-qt/template @@ -1,6 +1,6 @@ # Template file for 'seafile-client-qt' pkgname=seafile-client-qt -version=7.0.10 +version=8.0.2 revision=1 _sourcename="seafile-client" wrksrc="${_sourcename}-${version}" @@ -14,7 +14,7 @@ maintainer="yopito " license="Apache-2.0" homepage="https://seafile.com" distfiles="https://github.com/haiwen/seafile-client/archive/v${version}.tar.gz" -checksum=3b373e13fd56fd1cb768db598302f19669919194a3d2a54b0eb929ff04310333 +checksum=a6be7e55236cd4fb6028259ab5f35163ce044811f45b6008f280d42f5cee9f8d build_options="shibboleth" desc_option_shibboleth="Build with Shibboleth support" diff --git a/srcpkgs/seafile-client-qt/update b/srcpkgs/seafile-client-qt/update index 8a583259f495..fef3fa14f156 100644 --- a/srcpkgs/seafile-client-qt/update +++ b/srcpkgs/seafile-client-qt/update @@ -1,4 +1,2 @@ -# upstream sometimes retag source until official announcement. -# rely on windows client availabiliy to detect new version. -site=https://download.seadrive.org/ -pattern='seafile-\K[\d.]+(?=-en.msi)' +site=https://github.com/haiwen/seafile-client/releases +pattern='tags/v\K[\d.]+(?=.tar.gz)' From 0b56d49c3c63f7d21d5780a1ac779bb8fd97c995 Mon Sep 17 00:00:00 2001 From: Lon Willett Date: Tue, 20 Apr 2021 13:21:11 +0200 Subject: [PATCH 4/5] New package: seadrive-daemon-2.0.10 --- srcpkgs/seadrive-daemon/template | 20 ++++++++++++++++++++ srcpkgs/seadrive-daemon/update | 2 ++ 2 files changed, 22 insertions(+) create mode 100644 srcpkgs/seadrive-daemon/template create mode 100644 srcpkgs/seadrive-daemon/update diff --git a/srcpkgs/seadrive-daemon/template b/srcpkgs/seadrive-daemon/template new file mode 100644 index 000000000000..a61c24b73fbe --- /dev/null +++ b/srcpkgs/seadrive-daemon/template @@ -0,0 +1,20 @@ +# Template file for 'seadrive-daemon' +pkgname=seadrive-daemon +version=2.0.10 +revision=1 +_distname="seadrive-fuse" +wrksrc="${_distname}-${version}" +build_style=gnu-configure +hostmakedepends="autoconf automake libtool intltool vala pkg-config python3" +makedepends="libevent-devel libcurl-devel gtk+-devel libuuid-devel sqlite-devel jansson-devel openssl-devel libsearpc-devel fuse-devel" +short_desc="Seafile drive daemon (fuse interface)" +maintainer="Lon Willett " +license="GPL-3.0-or-later" +homepage="https://seafile.com" +distfiles="https://github.com/haiwen/${_distname}/archive/v${version}.tar.gz" +checksum=d476f1f95b8a13d49881cb004921dad2bbc32e61d431d810873a2882daebbe91 +python_version=3 + +pre_configure() { + ./autogen.sh +} diff --git a/srcpkgs/seadrive-daemon/update b/srcpkgs/seadrive-daemon/update new file mode 100644 index 000000000000..1ab833abe936 --- /dev/null +++ b/srcpkgs/seadrive-daemon/update @@ -0,0 +1,2 @@ +site=https://github.com/haiwen/seadrive-fuse/releases +pattern='tags/v\K[\d.]+(?=.tar.gz)' From 1395595282a6bd110e4fec83d9a0b9c26c66660e Mon Sep 17 00:00:00 2001 From: Lon Willett Date: Tue, 20 Apr 2021 13:22:03 +0200 Subject: [PATCH 5/5] New package: seadrive-gui-2.0.10 --- srcpkgs/seadrive-gui/template | 40 +++++++++++++++++++++++++++++++++++ srcpkgs/seadrive-gui/update | 6 ++++++ 2 files changed, 46 insertions(+) create mode 100644 srcpkgs/seadrive-gui/template create mode 100644 srcpkgs/seadrive-gui/update diff --git a/srcpkgs/seadrive-gui/template b/srcpkgs/seadrive-gui/template new file mode 100644 index 000000000000..62ece7c34a16 --- /dev/null +++ b/srcpkgs/seadrive-gui/template @@ -0,0 +1,40 @@ +# Template file for 'seadrive-gui' +pkgname=seadrive-gui +version=2.0.10 +revision=1 +build_style=cmake +configure_args="-DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr" +hostmakedepends="autoconf automake libtool intltool vala pkg-config" +# python3? +makedepends="libevent-devel libcurl-devel gtk+-devel libuuid-devel sqlite-devel jansson-devel openssl-devel libsearpc-devel qt5-devel qt5-tools-devel qt5-webengine-devel qt5-webchannel-devel qt5-declarative-devel qt5-location-devel" +depends="seadrive-daemon>=${version}" +short_desc="Seafile drive client (qt5 gui)" +maintainer="Lon Willett " +license="Apache-2.0" +homepage="https://seafile.com" +distfiles="https://github.com/haiwen/${pkgname}/archive/v${version}.tar.gz" +checksum=e9dc3e3bf7d18f3931a57faa528fa469a9d54f158d8247c96126509981c240c8 + +case "$XBPS_TARGET_MACHINE" in + *-musl) # need fts implementation + makedepends+=" musl-fts-devel" ;; +esac + +if [ "$CROSS_BUILD" ]; then + hostmakedepends+=" qt5-qmake qt5-host-tools" +fi + +pre_configure() { + case "$XBPS_TARGET_MACHINE" in + *-musl) + # append '-ltfs' argument on link via cmake (macro TARGET_LINK_LIBRARIES) + # "LDFLAGS=-lfts" does not work, its prepends it (useless) + # XXX prefer patch on CMakeLists.txt ? + sed -i -e 's,\(\${EXTRA_LIBS}\)$,\1 -lfts,' ${wrksrc}/CMakeLists.txt + ;; + esac +} + +post_install() { + vdoc README.md +} diff --git a/srcpkgs/seadrive-gui/update b/srcpkgs/seadrive-gui/update new file mode 100644 index 000000000000..349fe1e0d932 --- /dev/null +++ b/srcpkgs/seadrive-gui/update @@ -0,0 +1,6 @@ +# Build instructions for linux (as of 2021-04-20) say to use the same +# version of seadrive-gui as for seadrive-daemon (seadrive-fuse). +# This is not a good approach, but I see no better option than to stick +# with it. +site=https://github.com/haiwen/seadrive-fuse/releases +pattern='tags/v\K[\d.]+(?=.tar.gz)'