This site has been retired. For up to date information, see handbook.gnome.org or gitlab.gnome.org.


[Home] [TitleIndex] [WordIndex

Cloud Drives

Design and research for cloud drive integration. This covers both functionality provided by GNOME and available 3rd party solutions.

Background / Scope

Cloud drives that are of interest:

Google Drive is unique in that it provides both storage for files and Google Docs - which aren't files.

Goals

TBD

Relevant Art

GNOME 3.32

Deja Dup

Deja Dup

Backup and Sync from Google

Backup and Sync from Google

Key features:

Third party Google Drive apps

Nextcloud Desktop

Nextcloud Desktop

Synchronisation client. Shows notifications when things are synced, allows configuration of what's synced.

Dropbox Desktop Client

Dropbox Desktop

The Linux version of the Dropbox app is fairly basic compared to the one on Windows and Mac, but it works: it does sync, and you can configure what gets synced. You also get notifications when something changes.

Discussion

Google Drive vs. the others

Most cloud drives are restricted to files, and the primary UI for interacting with content is the file manager (on the desktop - mobile is different). For example, while Dropbox has a web interface it doesn't feel like something you can do serious work with. The expectation is that you're interacting with files locally.

Google Drive is different: on the desktop the primary UI is the web interface. This is obviously influenced by the fact that Google Drive doesn't just contain files - and the web interface is able to do a better job of working with Google Docs than the file browser is. (It also helps that the web interface works very well.) The fact that the desktop client is called "backup and sync" is instructive: it is a utility that can be used for a particular feature, rather than being the primary desktop interface for Google Drive.

Desktop vs. mobile

It is striking that cloud drive mobile apps generally take a different approach to desktop apps: desktop apps tend to sync everything, whereas mobile apps tend to do more limited caching. The reasons for this:

Syncing vs. caching

Caching

Syncing

Good if you don't want to store everything locally (such as if files originate on the remote and are large and/or many)

It works if have plenty of disk space

File access is likely to be slower than syncing

File access is likely to be faster than caching

Adding files to a cloud drive could be a bit awkward?

Good if you want to add prexisting files to a cloud drive and keep a copy locally

Can fail you in an offline situation

Good for offline working, since you don't need to worry about making sure you have up to date local copies

Risk of files being empty placeholders or being out of date

Consistent with how filesystems work - people learn to expect files to be there and be up to date

Of course you could cache by default but allow the user to selectively sync if they'd prefer, and that's how some mobile apps work...

Tentative Design

See Also

Comments


2024-10-23 11:04