Seafile desktop client 6.0.1 is ready! A few fixes

The most important fix is removing the generating of Case conflict files, which lead to confusing to normal end users.

The full changelog:

  • Don’t generate case conflict file/folder
  • [fix] Fix popup style for Mac Sierra
  • Show image thumbnail in cloud file browser
  • Change label “organization” to “shared with all”, “private shares” to “shared with me”
2 Likes

Thanks. Tried to build it for ARM but got an error building ccnet-6.0.1:

MyUser@Cubietruck:/mnt/ext-data/lab/seafile/seafile-client-rpi/ccnet-6.0.1$ make
(CDPATH="${ZSH_VERSION+.}:" && cd . && /bin/bash /mnt/ext-data/lab/seafile/seafile-client-rpi/ccnet-6.0.1/missing autoheader)
rm -f stamp-h1
touch config.h.in
cd . && /bin/bash ./config.status config.h
config.status: creating config.h
config.status: config.h is unchanged
make  all-recursive
make[1]: Entering directory '/mnt/ext-data/lab/seafile/seafile-client-rpi/ccnet-6.0.1'
Making all in include
make[2]: Entering directory '/mnt/ext-data/lab/seafile/seafile-client-rpi/ccnet-6.0.1/include'
Making all in ccnet
make[3]: Entering directory '/mnt/ext-data/lab/seafile/seafile-client-rpi/ccnet-6.0.1/include/ccnet'
make[3]: Nothing to be done for 'all'.
make[3]: Leaving directory '/mnt/ext-data/lab/seafile/seafile-client-rpi/ccnet-6.0.1/include/ccnet'
make[3]: Entering directory '/mnt/ext-data/lab/seafile/seafile-client-rpi/ccnet-6.0.1/include'
make[3]: Nothing to be done for 'all-am'.
make[3]: Leaving directory '/mnt/ext-data/lab/seafile/seafile-client-rpi/ccnet-6.0.1/include'
make[2]: Leaving directory '/mnt/ext-data/lab/seafile/seafile-client-rpi/ccnet-6.0.1/include'
Making all in lib
make[2]: Entering directory '/mnt/ext-data/lab/seafile/seafile-client-rpi/ccnet-6.0.1/lib'
make  all-am
make[3]: Entering directory '/mnt/ext-data/lab/seafile/seafile-client-rpi/ccnet-6.0.1/lib'
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I..  -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include  -I../include -I../include/ccnet -I../lib -I../include -DG_LOG_DOMAIN=\"Ccnet\" -pthread -I(DESTDIR)/usr/include -I(DESTDIR)/usr/include/searpc -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wall -DCCNET_LIB -pthread   -g -O2 -MT libccnet_la-ccnet-client.lo -MD -MP -MF .deps/libccnet_la-ccnet-client.Tpo -c -o libccnet_la-ccnet-client.lo `test -f 'ccnet-client.c' || echo './'`ccnet-client.c
/bin/bash: -c: line 0: syntax error near unexpected token `('
/bin/bash: -c: line 0: `/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I..  -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include  -I../include -I../include/ccnet -I../lib -I../include -DG_LOG_DOMAIN=\"Ccnet\" -pthread -I(DESTDIR)/usr/include -I(DESTDIR)/usr/include/searpc -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wall -DCCNET_LIB -pthread   -g -O2 -MT libccnet_la-ccnet-client.lo -MD -MP -MF .deps/libccnet_la-ccnet-client.Tpo -c -o libccnet_la-ccnet-client.lo `test -f 'ccnet-client.c' || echo './'`ccnet-client.c'
Makefile:589: recipe for target 'libccnet_la-ccnet-client.lo' failed
make[3]: *** [libccnet_la-ccnet-client.lo] Error 1
make[3]: Leaving directory '/mnt/ext-data/lab/seafile/seafile-client-rpi/ccnet-6.0.1/lib'
Makefile:439: recipe for target 'all' failed
make[2]: *** [all] Error 2
make[2]: Leaving directory '/mnt/ext-data/lab/seafile/seafile-client-rpi/ccnet-6.0.1/lib'
Makefile:490: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/mnt/ext-data/lab/seafile/seafile-client-rpi/ccnet-6.0.1'
Makefile:398: recipe for target 'all' failed
make: *** [all] Error 2

I didn’t had a /bin/bash: -c: line 0: syntax error near unexpected token(’`` building ccnet-6.0.0. Any idea?

The ccnet source isn’t changed much for the several recent version, did you manage to build the previous version successfully before?

Yes. I had no errors or problems building Seafile client 6.0.0.

I’ve just tried again to build ccnet-6.0.0 to confirm that previous building process works. In fact there was an error because the building process didn’t recognize libsearpc for some reason.

I had rebuilt libsearpc again to adjust some package information. Somehow ccnet build process doesn’t recognize libsearpc with the following checkinstall settings:

0 - Maintainer: [ saljut7@users.noreply.github.com ]
1 - Summary: [ libsearpc-3.0-latest_rpi ]
2 - Name: [ libsearpc ]
3 - Version: [ 3.0-latest ]
4 - Release: [ 2014-08-14 ]
5 - License: [ GPL ]
6 - Group: [ checkinstall ]
7 - Architecture: [ armhf ]
8 - Source location: [ libsearpc-3.0-latest ]
9 - Alternate source location: [ ]
10 - Requires: [ ]
11 - Provides: [ libsearpc-3.0-latest ]
12 - Conflicts: [ ]
13 - Replaces: [ ]


So I rebuilt `libsearpc` with a minimum of checkinstall modifications:

0 - Maintainer: [ saljut7@users.noreply.github.com ]
1 - Summary: [ libsearpc-3.0-latest_rpi ]
2 - Name: [ libsearpc-3.0 ]
3 - Version: [ 3.0-latest ]
4 - Release: [ 1 ]
5 - License: [ GPL ]
6 - Group: [ checkinstall ]
7 - Architecture: [ armhf ]
8 - Source location: [ libsearpc-3.0-latest ]
9 - Alternate source location: [ ]
10 - Requires: [ ]
11 - Provides: [ libsearpc-3.0 ]
12 - Conflicts: [ ]
13 - Replaces: [ ]


Adjusting just `Maintainer`, `Summary` and `Version` this time ccnet 6.0.**0** was built just fine:

======================== Installation successful ==========================

Copying documentation directory…
./
./README.markdown
./HACKING
./COPYRIGHT
cp: cannot stat ‘//var/tmp/tmp.uqoeAChAnA/newfiles.tmp’: No such file or directory

Copying files to the temporary directory…OK

Stripping ELF binaries and libraries…OK

Compressing man pages…OK

Building file list…OK

Building Debian package…OK

NOTE: The package will not be installed

Erasing temporary files…OK

Deleting temp dir…OK


Done. The new package has been saved to

/mnt/ext-data/lab/seafile/seafile-client-rpi/ccnet-6.0.0/ccnet_6.0.0-2016-10-14_armhf.deb
You can install it in your system anytime using:

  dpkg -i ccnet_6.0.0-2016-10-14_armhf.deb


Edit: reason for this was `4 -  Release: [ 2014-08-14 ]` where I had to keep the orriginal value `4 -  Release: [ 1 ]`.

Now I started with ccnet 6.0.**1** and got an error again with `make`:

$ make > make_ccnet-601.log
…/common/rpc-service.c:40:30: fatal error: searpc-signature.h: No such file or directory
#include “searpc-signature.h”
^
compilation terminated.
make[3]: *** [rpc-service.o] Error 1
make[2]: *** [all-recursive] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2


Content of `make_ccnet-601.log`:

/bin/bash ./config.status --recheck
running CONFIG_SHELL=/bin/bash /bin/bash ./configure --prefix=/usr PKG_CONFIG_PATH=/mnt/ext-data/lab/seafile/seafile-client-rpi/libsearpc-3.0-latest:/usr/lib/pkgconfig:/usr/lib/pkgconfig:/usr/lib/pkgconfig: -q --no-create --no-recursion
found library uuid
found library pthread
found library sqlite3
found library crypto

The following modules will be built:

python
ccnet-daemon
demo

/bin/bash ./config.status
config.status: creating Makefile
config.status: creating libccnet.pc
config.status: creating net/Makefile
config.status: creating net/daemon/Makefile
config.status: creating net/server/Makefile
config.status: creating net/cluster/Makefile
config.status: creating cli/Makefile
config.status: creating lib/Makefile
config.status: creating tools/Makefile
config.status: creating include/Makefile
config.status: creating include/ccnet/Makefile
config.status: creating python/Makefile
config.status: creating python/ccnet/Makefile
config.status: creating tests/Makefile
config.status: creating tests/common-conf.sh
config.status: creating demo/Makefile
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands
config.status: executing libtool commands
(CDPATH=“${ZSH_VERSION+.}:” && cd . && /bin/bash /mnt/ext-data/lab/seafile/seafile-client-rpi/ccnet-6.0.1/missing autoheader)
rm -f stamp-h1
touch config.h.in
cd . && /bin/bash ./config.status config.h
config.status: creating config.h
config.status: config.h is unchanged
make all-recursive
make[1]: Entering directory ‘/mnt/ext-data/lab/seafile/seafile-client-rpi/ccnet-6.0.1’
Making all in include
make[2]: Entering directory ‘/mnt/ext-data/lab/seafile/seafile-client-rpi/ccnet-6.0.1/include’
Making all in ccnet
make[3]: Entering directory ‘/mnt/ext-data/lab/seafile/seafile-client-rpi/ccnet-6.0.1/include/ccnet’
make[3]: Nothing to be done for ‘all’.
make[3]: Leaving directory ‘/mnt/ext-data/lab/seafile/seafile-client-rpi/ccnet-6.0.1/include/ccnet’
make[3]: Entering directory ‘/mnt/ext-data/lab/seafile/seafile-client-rpi/ccnet-6.0.1/include’
make[3]: Nothing to be done for ‘all-am’.
make[3]: Leaving directory ‘/mnt/ext-data/lab/seafile/seafile-client-rpi/ccnet-6.0.1/include’
make[2]: Leaving directory ‘/mnt/ext-data/lab/seafile/seafile-client-rpi/ccnet-6.0.1/include’
Making all in lib
make[2]: Entering directory ‘/mnt/ext-data/lab/seafile/seafile-client-rpi/ccnet-6.0.1/lib’
make all-am
make[3]: Entering directory ‘/mnt/ext-data/lab/seafile/seafile-client-rpi/ccnet-6.0.1/lib’
make[3]: Nothing to be done for ‘all-am’.
make[3]: Leaving directory ‘/mnt/ext-data/lab/seafile/seafile-client-rpi/ccnet-6.0.1/lib’
make[2]: Leaving directory ‘/mnt/ext-data/lab/seafile/seafile-client-rpi/ccnet-6.0.1/lib’
Making all in net
make[2]: Entering directory ‘/mnt/ext-data/lab/seafile/seafile-client-rpi/ccnet-6.0.1/net’
Making all in daemon
make[3]: Entering directory ‘/mnt/ext-data/lab/seafile/seafile-client-rpi/ccnet-6.0.1/net/daemon’
gcc -DHAVE_CONFIG_H -I. -I…/… -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -DCCNET_DAEMON -I…/…/net/common -I…/…/include -I…/…/include/ccnet -I…/…/lib -I…/…/include -I…/…/lib -pthread -I/usr/include/searpc -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wall -g -O2 -MT rpc-service.o -MD -MP -MF .deps/rpc-service.Tpo -c -o rpc-service.o test -f '../common/rpc-service.c' || echo './'…/common/rpc-service.c
Makefile:829: recipe for target ‘rpc-service.o’ failed
make[3]: Leaving directory ‘/mnt/ext-data/lab/seafile/seafile-client-rpi/ccnet-6.0.1/net/daemon’
Makefile:382: recipe for target ‘all-recursive’ failed
make[2]: Leaving directory ‘/mnt/ext-data/lab/seafile/seafile-client-rpi/ccnet-6.0.1/net’
Makefile:490: recipe for target ‘all-recursive’ failed
make[1]: Leaving directory ‘/mnt/ext-data/lab/seafile/seafile-client-rpi/ccnet-6.0.1’
Makefile:398: recipe for target ‘all’ failed


I started to look for some information about error `searpc-signature.h: No such file or directory` and found:

[Can't compile cnnet: fatal error: searpc-signature.h: No such file or directory #106](https://github.com/haiwen/ccnet/issues/106)

...which seems to be the same problem but under Fedora. The issue was solved by installing `yum install which` but there is nothing similiar under Debian ARM:

apt-cache policy which

N: Unable to locate package which


Unfortunately I've never used Fedora. Should I confirm the error [in GitHub issue #106](https://github.com/haiwen/ccnet/issues/106) or are there any other ideas how to solve the problem with `searpc-signature.h: No such file or directory`?

_Edit: I didn't have problem `searpc-signature.h: No such file or directory` compiling ccnet 6.0.7 anymore. /closed_

Can you please update the Ubuntu PPA as well? Thanks!

Wow! This is a major change! What happens when there is a conflict? I want to find out about file conflicts on my system? How can I get the previous behaviour, i.e. have the ‘(SFConflict *’ files generated? I was not made aware of this major change, but maybe I am also misunderstanding what this change is about. Please give some details / pointers to documentation about this.

Not the conflict files are removed, its just a bug fixing for a special case which produced conflict files for filenames written in capital letters on one machine and in small letters on another. Its probably no more case sensitive.

2 Likes