Nextcloud client for raspberry pi

#1

Hello,

I don’t find any raspberry pi version for nextcloud client, i’m not even sure of its existence. The appimage file does nothing.

Can you help me ?

Thanks.

#2

For the nextcloud CLIENT visit:

Choose Linux Appimage.

#4

That is the Server, the Client is using the first link …

#5

There are several ways for syncing, one of them is a plugin for the Browser Firefox i.e.
The other clients are different for your OS, the UBUNTU client is here, but it might also work on Debian.
https://launchpad.net/~nextcloud-devs/+archive/ubuntu/client

#6

Hi stemy2 - I haven’t found a precompiled RPI client yet either, but the good news is that der hess posted a step by step method to compile from source code that works spectacularly well:

I put together a bash file + a few file edits that does the job on the latest Raspbian ‘stretch’. Save it as ncc.sh and execute with the command: sh ncc.sh

sudo apt update
sudo apt dist-upgrade -y
sudo apt upgrade -y
sudo apt-get install build-essential git cmake openssl libssl-dev sqlite3 libsqlite3-dev qt5-default libqt5webkit5-dev qttools5-dev qttools5-dev-tools python-sphinx texlive-latex-base inotify-tools qt5keychain-dev -y
sudo apt-get install doxygen -y
sudo apt-get install extra-cmake-modules -y
sudo apt-get install kio-dev -y
cd /home/pi
git clone https://github.com/nextcloud/client_theming.git
cd client_theming
git submodule update --init
cd client
git submodule update --init
cd ..
mkdir build-1
cd build-1
cmake -D OEM_THEME_DIR=`pwd`/../nextcloudtheme ../client
sed -i 's/Icon=nextcloud/Icon=Nextcloud/g' src/gui/nextcloud.desktop
sed -i 's/Icon\[\(.*\)\]=nextcloud/Icon\[\1\]=Nextcloud/g' src/gui/nextcloud.desktop
make
sudo make install

Now you need to do 3 file edits, 2 of which create new files, add the line on the bottom.

sudo nano /etc/environment
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib/arm-linux-gnueabihf

sudo nano /etc/ld.so.conf.d/arm-linux-gnueabihf.conf
/usr/local/lib/arm-linux-gnueabihf

sudo nano /etc/ld.so.conf.d/x86_64-linux-gnu.conf
/usr/local/lib/arm-linux-gnueabihf

sudo ldconfig
sudo reboot
nextcloud

This does take a while but I just checked it and it does work for the 2018-03-13-raspbian-stretch.img
Enjoy! Murphy

3 Likes
#7

Just wanted to say thanks for bringing that article to our attention and for making that script! I’ve been casually looking for nextcloud clients on the pi for a while now, got serious about it today, so I can have it take pictures with the pi camera and then directly drop it into my nextcloud.I can confirm that building the client and editing those three files did work on the latest Stretch image, and on a raspi zero W at that.

Thanks again!

#8

If you have client setup trouble, you could also mount the Raspberry Pi folders via webdav. Just to throw out a secondary option.

#9

This step hangs for me.

pi@raspberrypi:~/Downloads $ git clone https://github.com/nextcloud/client_theming.git
Cloning into 'client_theming'...
remote: Counting objects: 1946, done.
remote: Total 1946 (delta 0), reused 0 (delta 0), pack-reused 1945
Receiving objects: 100% (1946/1946), 1.59 MiB | 626.00 KiB/s, done.
Resolving deltas: 100% (901/901), done.
pi@raspberrypi:~/Downloads $ cd client_theming/
pi@raspberrypi:~/Downloads/client_theming $ git submodule update --init
Submodule 'client' (https://github.com/owncloud/client.git) registered for path 'client'
Cloning into '/home/pi/Downloads/client_theming/client'...
{hangs indefinitely}

I notice that it’s using data from owncloud, which happens to have been updated on github 3 days ago, which happens to be around the last time these steps were reported working on this thread. Anyone else having trouble following these steps?

#10

Anyone else having trouble following these steps?

Nope. Compiled and runs as expected for me on Raspbian 2018-04-18 edition.

#11

I just followed these instructions today (27 May, 2018) without any issue. The cloning did take a while, but everything finished without error. Thanks!

#12

Hi,

I’m having troubles following these instructions.

cmake returns an error and i couldn’t find a way to make it work.

~/client_theming/build-1 $ cmake -D OEM_THEME_DIR=pwd/…/nextcloudtheme, …/client-- Build of crashreporter disabled.
– GIT_SHA1 57bc7918d7b0650c116f3512787f7677d4e5ab17
CMake Error at /usr/share/cmake-3.7/Modules/FindPackageHandleStandardArgs.cmake:138 (message):
Could NOT find OpenSSL, try to set the path to OpenSSL root folder in the
system variable OPENSSL_ROOT_DIR (missing: OPENSSL_LIBRARIES
OPENSSL_INCLUDE_DIR) (Required is at least version “1.0.0”)
Call Stack (most recent call first):
/usr/share/cmake-3.7/Modules/FindPackageHandleStandardArgs.cmake:378 (_FPHSA_FAILURE_MESSAGE)
/usr/share/cmake-3.7/Modules/FindOpenSSL.cmake:385 (find_package_handle_standard_args)
CMakeLists.txt:156 (find_package)

– Configuring incomplete, errors occurred!
See also “/home/pi/client_theming/build-1/CMakeFiles/CMakeOutput.log”.

Thanks,

Toto

#13

You can download now.

You need a QTWebEngine install.

$ git clone https://git.wnote.ga/jhkim/qt5-qtwebengine-arm-bin.git

$ cd qt5-qtwebengine-arm-bin

$ sudo ./install.sh

Download nextcloud client for arm to Home dir.
$ cd
$ wget https://github.com/istandthon7/desktop/releases/download/v2.5.2/nextcloud-desktop-client-v2.5.2-armv7-linux.tar.gz

Extract
$ tar -zxvf nextcloud-desktop-client-v2.5.2-armv7-linux.tar.gz

$ cd nextcloud-desktop-client

Execute it
$ ./nextcloud.sh

#14

Hi,
Thanks for this post. I just tried to execute it and came till the “qmake -r” step. I got a dozen “not found. Using Chromium’s copies”, some “using internal copy” and “not enabled” messages. But also a dozen “unmet dependency” messages (for dbus-1, fontconfig, xcomposite, etcetera). End result: qtWebEngine will not be built.

Any clue which step i missed/should be added? Thanks.

#15

Sorry. I edit my post. Now, You can download QtWebEngine arm binary.

Good luck!

#16

That’s very fast :slight_smile: thanks.
All went well (and much faster!) until the last step. I got an error at line 9 … “./nextcloud.sh: line 9: /home/pi/nextcloud-desktop-client/bin/nextcloud: No such file or directory”. I guess the sub-directory “nextcloud-desktop-client” is missing after “/home/pi”.

#17

It’s nice~.
Thank you for comment.
I modified the script to be flexible to the directory.
It will probably run without errors in the future.

#18

Hi 11137,
I removed previous installation and started fresh over again. All went well until the last step … “./bin/nextcloud: error while loading shared libraries: libminizip.so.1: cannot open shared object file: No such file or directory”
You have a clue what can cause this error? I couldn’t find a libminizip file. Thanks for helping out.

#19

Dynamic libraries are too diverse.
For my rpi, I refer to the following minizip.
libminizip.so.1 => /usr/lib/arm-linux-gnueabihf/libminizip.so.1

Perhaps you should install the libminizip1 package with the following command:
$ sudo apt install libminizip1/stable

If you get an error due to another library, show me your shared library dependencies.
It can be confirmed with the following command.
$ ldd bin/nextcloud

#20

Hi 11137,

Thanks. The installation of libminizip1 has fixed the problem. Nextcloud is starting up and connecting. Not yet tried the data synchronizing part.
ldd bin nextcloud comes up with a long list (see below). One i’m worried about … “libnextcloudsync.so.0 => not found”. You know whether this one will break nextcloud further on? Anything i can do to avoid this? Many thanks.

linux-vdso.so.1 (0x7ed2b000)
/usr/lib/arm-linux-gnueabihf/libarmmem.so (0x76b35000)
libQt5DBus.so.5 => /usr/lib/arm-linux-gnueabihf/libQt5DBus.so.5 (0x76a98000)
libQt5Xml.so.5 => /usr/lib/arm-linux-gnueabihf/libQt5Xml.so.5 (0x76a66000)
***libnextcloudsync.so.0 => not found***
libocsync.so.0 => /home/pi/nextcloud-desktop-client/lib/arm-linux-gnueabihf/nextcloud/libocsync.so.0 (0x76988000)
libsqlite3.so.0 => /usr/lib/arm-linux-gnueabihf/libsqlite3.so.0 (0x76895000)
libQt5Concurrent.so.5 => /usr/lib/arm-linux-gnueabihf/libQt5Concurrent.so.5 (0x76f4b000)
libz.so.1 => /lib/arm-linux-gnueabihf/libz.so.1 (0x7686e000)
libssl.so.1.1 => /usr/lib/arm-linux-gnueabihf/libssl.so.1.1 (0x7680d000)
libcrypto.so.1.1 => /usr/lib/arm-linux-gnueabihf/libcrypto.so.1.1 (0x76637000)
libqt5keychain.so.1 => /usr/lib/arm-linux-gnueabihf/libqt5keychain.so.1 (0x7660b000)
libQt5WebEngineWidgets.so.5 => /usr/lib/arm-linux-gnueabihf/libQt5WebEngineWidgets.so.5 (0x765d9000)
libQt5Widgets.so.5 => /usr/lib/arm-linux-gnueabihf/libQt5Widgets.so.5 (0x7608b000)
libQt5WebEngineCore.so.5 => /usr/lib/arm-linux-gnueabihf/libQt5WebEngineCore.so.5 (0x73307000)
libQt5WebChannel.so.5 => /usr/lib/arm-linux-gnueabihf/libQt5WebChannel.so.5 (0x732ec000)
libQt5Quick.so.5 => /usr/lib/arm-linux-gnueabihf/libQt5Quick.so.5 (0x72fc8000)
libQt5Gui.so.5 => /usr/lib/arm-linux-gnueabihf/libQt5Gui.so.5 (0x72ba1000)
libQt5Qml.so.5 => /usr/lib/arm-linux-gnueabihf/libQt5Qml.so.5 (0x7286e000)
libQt5Network.so.5 => /usr/lib/arm-linux-gnueabihf/libQt5Network.so.5 (0x72712000)
libQt5Core.so.5 => /usr/lib/arm-linux-gnueabihf/libQt5Core.so.5 (0x722af000)
libstdc++.so.6 => /usr/lib/arm-linux-gnueabihf/libstdc++.so.6 (0x72167000)
libm.so.6 => /lib/arm-linux-gnueabihf/libm.so.6 (0x720e8000)
libgcc_s.so.1 => /lib/arm-linux-gnueabihf/libgcc_s.so.1 (0x720bb000)
libc.so.6 => /lib/arm-linux-gnueabihf/libc.so.6 (0x71f7c000)
/lib/ld-linux-armhf.so.3 (0x76f24000)
libpthread.so.0 => /lib/arm-linux-gnueabihf/libpthread.so.0 (0x71f53000)
libdbus-1.so.3 => /lib/arm-linux-gnueabihf/libdbus-1.so.3 (0x71f00000)
libdl.so.2 => /lib/arm-linux-gnueabihf/libdl.so.2 (0x71eed000)
librt.so.1 => /lib/arm-linux-gnueabihf/librt.so.1 (0x71ed6000)
libGLESv2.so.2 => /usr/lib/arm-linux-gnueabihf/libGLESv2.so.2 (0x71ebc000)
libglib-2.0.so.0 => /lib/arm-linux-gnueabihf/libglib-2.0.so.0 (0x71db4000)
libevent-2.0.so.5 => /usr/lib/arm-linux-gnueabihf/libevent-2.0.so.5 (0x71d66000)
libnss3.so => /usr/lib/arm-linux-gnueabihf/libnss3.so (0x71c4f000)
libnssutil3.so => /usr/lib/arm-linux-gnueabihf/libnssutil3.so (0x71c1e000)
libsmime3.so => /usr/lib/arm-linux-gnueabihf/libsmime3.so (0x71bed000)
libnspr4.so => /usr/lib/arm-linux-gnueabihf/libnspr4.so (0x71bac000)
libfontconfig.so.1 => /usr/lib/arm-linux-gnueabihf/libfontconfig.so.1 (0x71b69000)
libfreetype.so.6 => /usr/lib/arm-linux-gnueabihf/libfreetype.so.6 (0x71ace000)
libharfbuzz.so.0 => /usr/lib/arm-linux-gnueabihf/libharfbuzz.so.0 (0x71a37000)
libpng16.so.16 => /usr/lib/arm-linux-gnueabihf/libpng16.so.16 (0x719fd000)
libjpeg.so.62 => /usr/lib/arm-linux-gnueabihf/libjpeg.so.62 (0x719b7000)
libX11.so.6 => /usr/lib/arm-linux-gnueabihf/libX11.so.6 (0x71894000)
libXi.so.6 => /usr/lib/arm-linux-gnueabihf/libXi.so.6 (0x71874000)
libXcursor.so.1 => /usr/lib/arm-linux-gnueabihf/libXcursor.so.1 (0x7185b000)
libXext.so.6 => /usr/lib/arm-linux-gnueabihf/libXext.so.6 (0x7183c000)
libXfixes.so.3 => /usr/lib/arm-linux-gnueabihf/libXfixes.so.3 (0x71827000)
libXrender.so.1 => /usr/lib/arm-linux-gnueabihf/libXrender.so.1 (0x7180e000)
libXcomposite.so.1 => /usr/lib/arm-linux-gnueabihf/libXcomposite.so.1 (0x717fb000)
libasound.so.2 => /usr/lib/arm-linux-gnueabihf/libasound.so.2 (0x7170e000)
libopus.so.0 => /usr/lib/arm-linux-gnueabihf/libopus.so.0 (0x716bb000)
libXdamage.so.1 => /usr/lib/arm-linux-gnueabihf/libXdamage.so.1 (0x716a8000)
libXtst.so.6 => /usr/lib/arm-linux-gnueabihf/libXtst.so.6 (0x71693000)
libwebpdemux.so.2 => /usr/lib/arm-linux-gnueabihf/libwebpdemux.so.2 (0x7167f000)
libwebp.so.6 => /usr/lib/arm-linux-gnueabihf/libwebp.so.6 (0x7161f000)
libxml2.so.2 => /usr/lib/arm-linux-gnueabihf/libxml2.so.2 (0x7148f000)
libxslt.so.1 => /usr/lib/arm-linux-gnueabihf/libxslt.so.1 (0x71447000)
libsnappy.so.1 => /usr/lib/arm-linux-gnueabihf/libsnappy.so.1 (0x71430000)
libminizip.so.1 => /usr/lib/arm-linux-gnueabihf/libminizip.so.1 (0x71416000)
libsrtp.so.0 => /usr/lib/libsrtp.so.0 (0x713ef000)
libproxy.so.1 => /usr/lib/arm-linux-gnueabihf/libproxy.so.1 (0x713c5000)
libicui18n.so.57 => /usr/lib/arm-linux-gnueabihf/libicui18n.so.57 (0x711b5000)
libicuuc.so.57 => /usr/lib/arm-linux-gnueabihf/libicuuc.so.57 (0x7104b000)
libpcre16.so.3 => /usr/lib/arm-linux-gnueabihf/libpcre16.so.3 (0x70fdd000)
libdouble-conversion.so.1 => /usr/lib/arm-linux-gnueabihf/libdouble-conversion.so.1 (0x70fb9000)
libsystemd.so.0 => /lib/arm-linux-gnueabihf/libsystemd.so.0 (0x70f3e000)
libdrm.so.2 => /usr/lib/arm-linux-gnueabihf/libdrm.so.2 (0x70f21000)
libglapi.so.0 => /usr/lib/arm-linux-gnueabihf/libglapi.so.0 (0x70ee8000)
libpcre.so.3 => /lib/arm-linux-gnueabihf/libpcre.so.3 (0x70e6f000)
libplc4.so => /usr/lib/arm-linux-gnueabihf/libplc4.so (0x70e5b000)
libplds4.so => /usr/lib/arm-linux-gnueabihf/libplds4.so (0x70e48000)
libexpat.so.1 => /lib/arm-linux-gnueabihf/libexpat.so.1 (0x70e16000)
libgraphite2.so.3 => /usr/lib/arm-linux-gnueabihf/libgraphite2.so.3 (0x70de3000)
libxcb.so.1 => /usr/lib/arm-linux-gnueabihf/libxcb.so.1 (0x70db2000)
libicudata.so.57 => /usr/lib/arm-linux-gnueabihf/libicudata.so.57 (0x6f525000)
liblzma.so.5 => /lib/arm-linux-gnueabihf/liblzma.so.5 (0x6f4f4000)
libselinux.so.1 => /lib/arm-linux-gnueabihf/libselinux.so.1 (0x6f4c1000)
liblz4.so.1 => /usr/lib/arm-linux-gnueabihf/liblz4.so.1 (0x6f4a0000)
libgcrypt.so.20 => /lib/arm-linux-gnueabihf/libgcrypt.so.20 (0x6f3cf000)
libXau.so.6 => /usr/lib/arm-linux-gnueabihf/libXau.so.6 (0x6f3c4000)
libXdmcp.so.6 => /usr/lib/arm-linux-gnueabihf/libXdmcp.so.6 (0x6f3af000)
libgpg-error.so.0 => /lib/arm-linux-gnueabihf/libgpg-error.so.0 (0x6f38d000)
libbsd.so.0 => /lib/arm-linux-gnueabihf/libbsd.so.0 (0x6f364000)

[/details]

#21

I thought it was a problem, but it was not.
My rpi was the same. And I am syncing well.

So I modified it to see the log window. I just added $1 to nextcloud.sh.

$pwd/bin/nextcloud $1

You can download the tar.gz file again, but it is a simple way to modify the script file.

Now you can check the log window with the following command.

$ ./nextcloud.sh --logwindow

I hope there is something that can be a clue to the log.