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 7.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.
      • poVoqP Offline
        poVoq @Luksus
        last edited by

        @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
        • LuksusL Offline
          Luksus @ernest
          last edited by Luksus

          @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 Reply Quote 0
          • E Offline
            ernest @Luksus
            last edited by

            @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

              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 Reply Quote 0
              • E Offline
                ernest @kugiigi
                last edited by ernest

                @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

                LuksusL 1 Reply Last reply Reply Quote 0
                • LuksusL Offline
                  Luksus @ernest
                  last edited by

                  @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 Reply Quote 0
                  • E Offline
                    ernest @Luksus
                    last edited by

                    @Luksus
                    Are you using my version or yours ?

                    LuksusL 1 Reply Last reply Reply Quote 0
                    • LuksusL Offline
                      Luksus @ernest
                      last edited by Luksus

                      @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 Reply Quote 0
                      • poVoqP Offline
                        poVoq
                        last edited by poVoq

                        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

                          @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.

                          LuksusL 1 Reply Last reply Reply Quote 0
                          • LuksusL Offline
                            Luksus @ernest
                            last edited by Luksus

                            @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 Reply Quote 0
                            • E Offline
                              ernest @Luksus
                              last edited by

                              @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

                              LuksusL 1 Reply Last reply Reply Quote 0
                              • LuksusL Offline
                                Luksus @ernest
                                last edited by Luksus

                                @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 Reply Quote 1
                                • E Offline
                                  ernest @Luksus
                                  last edited by

                                  @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"

                                  LuksusL 1 Reply Last reply Reply Quote -1
                                  • LuksusL Offline
                                    Luksus @ernest
                                    last edited by

                                    @ernest I cleaned up everything and reinstalled your version. And now it works.

                                    How were you able to install it ??? on arm64 phone

                                    I built an arm64 version of ubsync... but the contained pre-compiled owncloud libraries were still armhf. And I think the qmake .pro-file did also create armhf path's and so on...

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

                                    E 1 Reply Last reply Reply Quote 0
                                    • E Offline
                                      ernest @Luksus
                                      last edited by

                                      @Luksus Yes, the architecture is hardcoded everywhere in this app 😕

                                      1 Reply Last reply Reply Quote 0
                                      • R Offline
                                        ruedigerkupper @Luksus
                                        last edited by ruedigerkupper

                                        @luksus I tried changing the path in OwncloudSyncd.conf as you described and the sync client works. Is there any chance of getting this into the OpenStore? How can I help?
                                        (See also https://bugs.launchpad.net/owncloud-sync/+bug/1896387)

                                        LuksusL 1 Reply Last reply Reply Quote 1
                                        • LuksusL Offline
                                          Luksus @ruedigerkupper
                                          last edited by

                                          @ruedigerkupper I think @ernest just should put his arm64 version in the store...

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

                                          E 1 Reply Last reply Reply Quote 0
                                          • E Offline
                                            ernest @Luksus
                                            last edited by

                                            @luksus
                                            As explained, the code between arch version has to be the same on openstore. Currently the app has been written in c++/qml with hardcoded arch...
                                            Thus the code needs to be updated for multiarch... It's beyond my capabilities.

                                            LuksusL 1 Reply Last reply Reply Quote 0
                                            • LuksusL Offline
                                              Luksus @ernest
                                              last edited by

                                              @ernest in openstore you can just upload click packages for every arch separately.
                                              I don't get the problem.

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

                                              E 1 Reply Last reply Reply Quote 0
                                              • First post
                                                Last post