CardDav (contacts) support

  • @Thatoo there are plenty of little niggles for everybody, no video calling application for example, thats important for a lot of people, especially during lockdown.

    no notifications from signal, camera doesn't have a lot of advanced features, music playback skips around a bit, bluetooth can be hit or miss, and a million other bugs that you can see on github, many are before the UBports take over.

    some issues are more important to others, personally, I use my phone for music all the time, and need it to work when I'm out and about, I can easily import my contacts from a file, and not touch it for months, so cardDav would be useful, it'd only be useful for me on a rare occasion, but music playback affects my daily life.

    for you this maybe the other way around, where contacts are always changing , and you never listen to music on the go, and so the music fixes wont affect you.

    you also talk about mir and lomiri, contact sync wouldn't matter without mirror and lomiri, because nore you or your mother would beable to get to your contacts even if they where there.

    The pinephone and pinetab have a lot of OS porting issues currently to, the core developers focus should be getting the os running well with the hardware working nicely on the PinePhone and PineTab, and then theres focus on other big leaps like the move to Ubuntu 20.04 etc.

    other devs can work on the code to fix syncing and bug those who have power to merge the changes, but the core developers have to much on there plate to worry about.

    I'm not saying don't ask, and don't try, but ask on the next Q&A forum post and Dalton might be able to direct you to who you should ask, or what the best option for you is when it comes to syncing.

    you wont get an answer if you don't ask.

  • Sorry for asking...
    Everybody does its best, I'm sure.
    Good day, good by,

  • @PhoenixLandPirat said in CardDav (contacts) support:

    personally, I use my phone for music all the time

    ...and there's a rather embarrassing known problem right now (at least on the dev channel) which may not affect all phones...

  • @Thatoo Have you considered that you may be trying to 'market' Ubuntu Touch I an audience it simply is not quite ready for yet?

  • @arubislander That could be and that is why I waited from OTA 3 to OTA 12 before doing so.
    I might have naively thought it was mature enough today to be working out of the box. I know (I've been following the project almost since the beginning) it has very much evolved on the "back" part of the OS and it is stable everytime I test it on my Nexus5 and I show it to others as a project to follow.
    I've just forgot this missing feature the other day. Indeed, I believed that for a phone it is a basic feature. What is more important for a phone after all? calling and managing/backing-up contacts...

    I remember how much earlier testers have mentioned this problem to Canonical when they were offering only to backup our contacts into google account or to export by v-card. In comparison, Firefox OS was managing Carddav/Caldav at the very beginning of its development.
    When Caldav arrived to UT, I thought (I don't remember if other said anything but I did applaud) carddav would follow and I've been asking regularly for this feature during the past years.
    People are asking for none google stuff so we help them with nextcloud/private emails and it's easy on computers but when it comes to phone/tablet...
    The other day, I wanted to test the last UT solution with my mum to see if it could be an alternative for her. I knew the camera would not work on the Pinephone so the deal was to test all her habits but the camera (starting from a fresh install).
    We could find solution for all but WhatsApp and her contacts.
    Switching from Whatsapp to Fluffychat is ok (before it was telegram before skype before goes like that, it's expected) but coming back to a messy system to manage contacts between the computer, the tablet and... it does really sound like going backward.

    Managing contacts are nothing like music or pictures. Music and Picture need only to be copy/pasted (files are not modified). Contacts change, one change his phone number, the other changed his email... so for every single change, without carddav, it means that after the change on the phone or the computer, one should export and then send the vcard and import it. It's a lot of work and require discipline. If you forget to do it one way and you change on the other device and then you export/import they other way, the previous modification is gone... it can be very soon very messy and you can lose contacts...

    Having a phone (to call, send email...) means caring about contacts (personal and professional). That's why I believe carddav is not an optional feature nowadays.

    Of course it is very much subjective and I understand others might see the world differently and I'm not looking for any argument, I'm just explaining, in the carddav topic of the forum, why it sounds important to me.

    So please don't answer me personally to say you disagree with the importance of carddav (carddav is not developed so far so you win) or don't change the topic to say that there is more important things (if you believe so, just open an other topic and explain why).

    I wish the best to all and hope UT will get the attention it deserves.

  • @Thatoo You raise some valid points and some of them deserve to be answered, but asking this to be done in another thread is not the way forums work. How is everyone who ends up here, wondering why your questions are not addressed, to know what other thread they are being addressed at? The natural way in forums is to answer in the same thread.

    Now, I understand your frustration. Here is a project that encourages participation and user input. So you give your input as to what is important to your (and lots of people you know their) use case. And then years go by and nothing seems to have been done about it.

    But what few seem to appreciate sufficiently are the challenges that are being met by the core developers. I will not rehash the history of the project that brought it to where it is now. I will only say that what the team is trying to accomplish is to bring all the underlying technology of the OS up to versions of the software that are supported by upstream Ubuntu in an effort to lessen the maintenance burden for the UT Team and thereby freeing up resources to tackle other features.

    Also lots of effort is poured (more and more by community members and not so much by core devs) into bringing UT to a wider range of devices. This is a good thing, because more devices means it is more likely that the project comes to the attention of developers who are able to help out with features such as CardDav.

    We must remember that this is not a project being built by a team of developers that can dedicate their full time to it. Most of the work is done by volunteers who work on what they like, when they can. That is always difficult to manage. Trust me when I say, it is not that the devs thinks CardDav support is unimportant. It is just that no one has stepped up to solve it in a way that integrates nicely with the rest of the system.

    We all need to understand that we not only need people to test, and make bug reports or feature requests, we also need people to pick these up and implement solutions and features. So maybe if you know anyone who might have the skills, or be interested in developing the skills to contribute this feature to Ubuntu Touch, get them in touch with me, and I will see if I can get them connected to someone who can help them do exactly that. How does that sound?

    We need to remember that this is a young Open Source project, where the surest (and possibly the only) way to get the feature you care about implemented is to be an active force in getting it implemented.

  • It was mentioned during one of the last Q&A's that OTR-13 will be all about merging stuff that was less important than the Mir update in OTR-12. So I have hope that CardDAV is one of those features that seems almost there but needs to be merged into the system. Same for the qtwebengine update that is equally requested a lot.

    I guess the PinePhone/Tab is binding too many developer resources instead of adding new developers (for now at least) 😉

  • Thank you @arubislander for this clear answer.

  • I have tried, with the help I could find here and there, to make a script to sync only our contacts to nextcloud, see below one of the version that I think should be working.

    Unfortunately, all my attempt failed. I always get the same error : [ERROR] error code from SyncEvolution fatal error (local, status 10500) : no such datastore(s): NextcloudContactDatastore

    Any idea why do I get this error and how to fix it? How to improve the script?
    Cheers to all,

    # It is script to sync contacts between my Nexus 5 with UBports ubuntu touch OTA 12 and a nextcloud server
    # --------------- [ Server ] ---------------- #
    echo "What is the URL of your nextcloud server?":
    echo "What is your username?":
    read USERNAME
    echo "What is your password?":
    read PASSWORD
    # ----------------- [ Phone ] ----------------- #
    echo "What name do you want to give to your local Adressbook?":
    export DBUS_SESSION_BUS_ADDRESS=$(ps -u phablet e | grep -Eo 'dbus-daemon.*address=unix:abstract=/tmp/dbus-[A-Za-z0-9]{10}' | tail -c35)
    #Create contact list
    syncevolution --create-database backend=evolution-contacts database=$CONTACTS_VISUAL_NAME
    #Create Peer
    syncevolution --configure --template webdav username=$USERNAME password=$PASSWORD syncURL=$NEXTCLOUD_URL/remote.php/dav/addressbooks/users/$USERNAME/contacts/ keyring=no target-config@$CONTACTS_CONFIG_NAME
    #Create New Source
    syncevolution --configure backend=evolution-contacts database=$CONTACTS_VISUAL_NAME @default $CONTACTS_NAME
    #Add remote database
    syncevolution --configure database=$NEXTCLOUD_URL/remote.php/dav/addressbooks/users/$USERNAME/contacts/ backend=carddav target-config@$CONTACTS_CONFIG_NAME $CONTACTS_NAME
    #Connect remote contact list with local databases
    syncevolution --configure --template SyncEvolution_Client Sync=None syncURL=local://@$CONTACTS_CONFIG_NAME username=$USERNAME password=$PASSWORD $CONTACTS_CONFIG_NAME $CONTACTS_NAME
    #Add local database to the source
    syncevolution --configure sync=two-way backend=evolution-contacts database=$CONTACTS_VISUAL_NAME $CONTACTS_CONFIG_NAME $CONTACTS_NAME
    #Start first sync
    syncevolution --sync refresh-from-remote $CONTACTS_CONFIG_NAME $CONTACTS_NAME
    #Add Sync Cronjob
    sudo mount / -o remount,rw
    COMMAND_LINE="export DISPLAY=:0.0 && export DBUS_SESSION_BUS_ADDRESS=$(ps -u phablet e | grep -Eo 'dbus-daemon.*address=unix:abstract=/tmp/dbus-[A-Za-z0-9]{10}' | tail -c35) && /usr/bin/syncevolution $CONTACTS_CONFIG_NAME"
    sudo sh -c "echo '$COMMAND_LINE' > /sbin/sogosync"
    sudo chmod +x /sbin/sogosync
    CRON_LINE="@$CRON_FREQUENCY /sbin/sogosync"
    (crontab -u phablet -r;) # only if no other cronjob already exist in the crontab
    (crontab -u phablet -l; echo "$CRON_LINE" ) | crontab -u phablet -
    sudo mount / -o remount,ro
    sudo service cron restart

  • I found this old tutorial that add a

    --template webdav

    to the #Add remote database part but it didn't solve my issue

    I have tried also to contribute to this script :
    but it isn't working neither.

    I have spent hours trying to make something working without success. Too bad... I'll wait for some good news to come then or some help on how to make such script working on UT 16.04 with nextcloud.

Log in to reply