Draft digging time! Something I've had in my drafts since the 25th of October, 2014, apparently:
Roundcube is a decent self-hosted webmail solution, which benefits from integrating Google Contacts so you do not have to duplicate your address books (assuming you use Google for yours).
Luckily someone wrote a plugin:
The howto for installing plugins in Roundcube tells you how to install those plugin bundles. It works with Composer, which uses a really bad anti-pattern to install:
curl -sS https://getcomposer.org/installer | php, so piping code straight from the internet through an interpreter. This is NOT something you want to do, really.
See the plugin page for further install instructions.
Now enable a repeated sync, so open the relevant crontab and enter a line like this:
0 */8 * * * /srv/www/example.com/roundcube/plugins/google_addressbook/sync-cli.sh
The above example downloads your Google Contacts to the Roundcube address book every 8 hours.