• Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Register
  • Login
UBports Robot Logo UBports Forum
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Register
  • Login

Help creating an UBSync arm64 version

Scheduled Pinned Locked Moved App Development
39 Posts 8 Posters 6.5k Views 3 Watching
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • L Offline
      Luksus
      last edited by 3 Nov 2020, 14:29

      Hi,
      I am not sure, if @ernest, who developed UBSync is still active.
      https://code.launchpad.net/~ocs-team/owncloud-sync/UBsync

      For some time I am trying to create an arm64 version of UBSync.
      Problem is, that the background service cannot be started.
      I think, that I have found the main issue: it is using precompiled libraries and binaries. In detail this is:

      • libowncloudsync.so.0
      • libowncloud_csync.so.0
      • owncloudcmd

      I tried two ways so far:

      • replace this files with arm64 pendants, which I found in debian repositories
        • that did not work yet
      • compile complete "owncloud client" myself
        • did also not work

      So if you has some free time and experience, you are welcome to help me, finding a way to make a working arm64 version of this app.
      Thanks 🙂

      Devices: BQ e4.5, Fairphone 2, Fairphone 3, Lenovo X605F, Pinephone, Moto Z2 Force, OnePlus5T

      1 Reply Last reply Reply Quote 1
      • P Offline
        poVoq
        last edited by 3 Nov 2020, 20:44

        Yes that would be great. ernest posted a working ARM64 version here:
        https://drive.google.com/file/d/1EpNu6Fwx2FpljrPONjzE9WvzWT3ZP7lB/view?usp=sharing
        As a quick fix you can probably extract the needed libraries from it.

        Fairphone 5 (waiting for port)

        L 1 Reply Last reply 3 Nov 2020, 21:45 Reply Quote 0
        • L Offline
          Luksus @poVoq
          last edited by Luksus 11 Mar 2020, 21:46 3 Nov 2020, 21:45

          @poVoq ahh thanks, where and when did he post this?

          Devices: BQ e4.5, Fairphone 2, Fairphone 3, Lenovo X605F, Pinephone, Moto Z2 Force, OnePlus5T

          1 Reply Last reply Reply Quote 0
          • E Offline
            ernest
            last edited by 3 Nov 2020, 22:02

            @poVoq said in Help creating an UBSync arm64 version:

            As a quick fix you can probably extract the needed libraries from it.

            Yes, I'm still there, but currently my life is in boxes and I cannot much do... Couple months I had time to compile a arm64 with owncloudcmd while the version I kept updated in armhf was with nextcloudcmd.

            This difference happened because I wanted to remained as close as possible of nextcloud mindset initially. However at the time of the arm64, owncloudcmd was better sustained... then I decided to give a try. For this difference I cannot simply publish the arm64 on the openstore.

            Not being good at cross compile on my laptop I used my nexus 5 libertine container to compile for armhf and a Pi 3 A+ for the arm64, not having them available I'm stuck by my competencies.

            You cannot place the lib from other repos into ubsync because there will be dependency issue that is not present in the phone.
            As lazy solution, I suggest to use the arm64 version that i've uploaded on my repos, if somebody is willing to update it let me know I can help and even grant access to the launchpad.
            I'm not planing to recover a std life prior months... due to i'm looking for job and Covid time doesn't help.

            L 1 Reply Last reply 4 Nov 2020, 08:40 Reply Quote 0
            • L Offline
              Luksus @ernest
              last edited by 4 Nov 2020, 08:40

              @ernest : Hi, great that you are still here 🙂
              First: I wish you all the best for your current situation.

              I tried your arm64 build, sadly it's the same behaviour as in my own builds: "job failed to start" on pressing the button "Start" in the Sync Sevice settings.

              Maybe the issue is my phone and not the app...

              Devices: BQ e4.5, Fairphone 2, Fairphone 3, Lenovo X605F, Pinephone, Moto Z2 Force, OnePlus5T

              E P 2 Replies Last reply 4 Nov 2020, 08:45 Reply Quote 0
              • E Offline
                ernest @Luksus
                last edited by 4 Nov 2020, 08:45

                @Luksus
                To troubleshoot you have to look at the app log and the nextcloudcmd/owncloudcmd log.

                L 1 Reply Last reply 4 Nov 2020, 12:23 Reply Quote 0
                • P Offline
                  poVoq @Luksus
                  last edited by 4 Nov 2020, 12:09

                  @Luksus said in Help creating an UBSync arm64 version:

                  Maybe the issue is my phone and not the app...

                  Well, to be honest, I have not actually tried to set it up completely. I just installed and tested if it runs so far. So the version might not work on recent UT versions.

                  Fairphone 5 (waiting for port)

                  1 Reply Last reply Reply Quote 0
                  • L Offline
                    Luksus @ernest
                    last edited by Luksus 11 Apr 2020, 12:24 4 Nov 2020, 12:23

                    @ernest Where do I find the nextcloudcmd/owncloudcmd logs?
                    The app log itself is not very helpful:

                    qml: Accounts.qml - onButtonClicked - Start Sync daemon
                    ServiceControl::setServiceRunning: true
                    should start service
                    start: Job failed to start
                    

                    And from which sources did you compile the libowncloudsync (nextcloud equivalent)?

                    Devices: BQ e4.5, Fairphone 2, Fairphone 3, Lenovo X605F, Pinephone, Moto Z2 Force, OnePlus5T

                    E 1 Reply Last reply 4 Nov 2020, 14:54 Reply Quote 0
                    • E Offline
                      ernest @Luksus
                      last edited by 4 Nov 2020, 14:54

                      @Luksus
                      I don't recall in detail but within the log folder of the user, do a find to locate it.
                      for the source : https://github.com/owncloud/client

                      1 Reply Last reply Reply Quote 1
                      • K Offline
                        kugiigi
                        last edited by 4 Nov 2020, 15:00

                        I've also tried the arm64 version on my Xperia X and get the same issue. I haven;t investigated deep yet though. In any case, thank you for your work and hopefully someone can help us with this 🙂

                        E 1 Reply Last reply 5 Nov 2020, 18:05 Reply Quote 0
                        • E Offline
                          ernest @kugiigi
                          last edited by ernest 11 May 2020, 18:06 5 Nov 2020, 18:05

                          @kugiigi
                          Hum, strange or bad app design 🙂

                          I just tried it on my H9 OP3T and it works, to enable the sync I HAD to put a frequency... on "No Sync" the app then seems to sync even when pushing the button sync (Which we might think it would trig a manual sync) ...

                          @Luksus
                          For the log :
                          cat .cache/upstart/OwncloudSyncd.log

                          L 1 Reply Last reply 6 Nov 2020, 10:14 Reply Quote 0
                          • L Offline
                            Luksus @ernest
                            last edited by 6 Nov 2020, 10:14

                            @ernest said in Help creating an UBSync arm64 version:

                            For the log :
                            cat .cache/upstart/OwncloudSyncd.log

                            Hm no, that file does not exist... which is one more indicator for, that owncloudsync daemon could not be started.

                            Devices: BQ e4.5, Fairphone 2, Fairphone 3, Lenovo X605F, Pinephone, Moto Z2 Force, OnePlus5T

                            E 1 Reply Last reply 6 Nov 2020, 10:25 Reply Quote 0
                            • E Offline
                              ernest @Luksus
                              last edited by 6 Nov 2020, 10:25

                              @Luksus
                              Are you using my version or yours ?

                              L 1 Reply Last reply 6 Nov 2020, 10:26 Reply Quote 0
                              • L Offline
                                Luksus @ernest
                                last edited by Luksus 11 Jun 2020, 10:38 6 Nov 2020, 10:26

                                @ernest Yours. I already deleted UBSync multiple times to get sure.

                                Edit:
                                Hm, I will check it again... the file creation dates of the lib files, look like the ones I created myself.

                                Edit2:
                                Ah no, it is definitely yours, the files where created on the 26th November 2019.

                                Devices: BQ e4.5, Fairphone 2, Fairphone 3, Lenovo X605F, Pinephone, Moto Z2 Force, OnePlus5T

                                E 1 Reply Last reply 9 Nov 2020, 23:26 Reply Quote 0
                                • P Offline
                                  poVoq
                                  last edited by poVoq 11 Aug 2020, 01:06 8 Nov 2020, 00:53

                                  Maybe a different library could be used? Something like this?
                                  https://github.com/strukturag/qwebdavlib/tree/devel

                                  Edit: or maybe these in Python:
                                  https://github.com/hevp/compact-dav
                                  https://github.com/alexnsl/nc-sync

                                  Edit or in Rust:
                                  https://github.com/budde25/nextcloud-client-cli

                                  Fairphone 5 (waiting for port)

                                  1 Reply Last reply Reply Quote 1
                                  • E Offline
                                    ernest @Luksus
                                    last edited by 9 Nov 2020, 23:26

                                    @Luksus

                                    If you want to start manually the daemon this is the command:

                                    LD_LIBRARY_PATH=/opt/click.ubuntu.com/ubsync/current/Owncloud-Sync/lib/aarch64-linux-gnu/lib/ && /opt/click.ubuntu.com/ubsync/current/lib/aarch64-linux-gnu/bin/OwncloudSyncd
                                    

                                    You can play with it according to : https://doc.owncloud.org/desktop/2.1/advancedusage.html

                                    An example of output.
                                    https://paste.ubuntu.com/p/R3DwRYtxmR/

                                    Looking back at the code, I remember why I didn't push the arm64 ... the type of architecture is hardcoded and i don't know the c++, making the journey quite hard. So any help is welcome for that.

                                    L 1 Reply Last reply 10 Nov 2020, 09:30 Reply Quote 0
                                    • L Offline
                                      Luksus @ernest
                                      last edited by Luksus 11 Oct 2020, 09:30 10 Nov 2020, 09:30

                                      @ernest thanks.
                                      Interestingly the command works and my folder gets synced: https://paste.ubuntu.com/p/CXf3VWmB3n/
                                      After executing the command, the app also shows a "last-synced" date. The service status still is "Stopped".

                                      So the service just cannot be started by the app. Perhaps it is an AppArmor issue?!

                                      Devices: BQ e4.5, Fairphone 2, Fairphone 3, Lenovo X605F, Pinephone, Moto Z2 Force, OnePlus5T

                                      E 1 Reply Last reply 10 Nov 2020, 09:42 Reply Quote 0
                                      • E Offline
                                        ernest @Luksus
                                        last edited by 10 Nov 2020, 09:42

                                        @Luksus
                                        On my side the app doesn't any issue on a fresh install ;), so I doubt apparmor.

                                        likely while playing you messed up something.
                                        please ensure that the file is correct, as below.
                                        527cb767-6bc0-49dd-a6f1-5bb22f3a595f-image.png

                                        Look into .config/ubsync/ubsync.conf, ensure that your timer is different than 0

                                        L 1 Reply Last reply 10 Nov 2020, 09:52 Reply Quote 0
                                        • L Offline
                                          Luksus @ernest
                                          last edited by Luksus 11 Oct 2020, 19:06 10 Nov 2020, 09:52

                                          @ernest Ha, that's it!
                                          In that file the exec was referring to the wron path: ..../arm-linux-gnueabihf/...
                                          I changed it to "aarch64-linux-gnu" and now it works!

                                          Obviously that file is not getting purged, when clearing app data with UT-Tweak-Tool, because it is not part of the app-directory...

                                          Edit:
                                          Hm, but it is still not possible to trigger a sync from within the app.
                                          There is an error that it could not find libowncloudsync.so.0: https://paste.ubuntu.com/p/Wzp55yHnvq/

                                          But I can still trigger the sync with the terminal command.

                                          Devices: BQ e4.5, Fairphone 2, Fairphone 3, Lenovo X605F, Pinephone, Moto Z2 Force, OnePlus5T

                                          E R 2 Replies Last reply 10 Nov 2020, 21:51 Reply Quote 1
                                          • E Offline
                                            ernest @Luksus
                                            last edited by 10 Nov 2020, 21:51

                                            @Luksus
                                            I wouldn't be surprise there is a remaining bit of armhf code somewhere.(How were you able to install it ??? on arm64 phone)

                                            I suggest to remove the app and search manually for any ubsync and Nextcloud or Owncloud related, then delete them.
                                            like sudo find / -iname "ubsync"

                                            L 1 Reply Last reply 15 Nov 2020, 18:36 Reply Quote -1
                                            5 out of 39
                                            • First post
                                              5/39
                                              Last post