Chromium developers have been working on letting third-party filesystems and cloud storage services integrate with the Chrome OS file manager for well over a year.
Now, with real functioning code in trunk builds of Chromium OS and the requisite APIs being primed for early promotion to development builds, it shouldn’t be too much longer before we’ll be able to access Dropbox on a Chromebook and our S3 buckets from a Chromebox.
Ahead of then let’s take a quick look at how it will work, what it can do and the sorts of services it plans to support.
Chrome File System API
The ‘File System Provider API’ allows developers to create Chrome extensions that support virtual file systems and make files stored on these to be available from the file manager on Chrome OS.
As of writing the File System Provider APIs are still read-only but will shortly be updated with support for write operations.
According to the GitHub page for the project the current focus is on first supporting Amazon S3 Buckets, WebDAV and Dropbox. Support for SFTP, Samba and Box is also planned.
The repository splits “filesystem providers” into two separate types:
- Protocol providers connect to servers over a particular protocol like WebDAV or SFTP
- Cloud providers connect to an account on third-party cloud storage services like Dropbox or Amazon S3
All providers add an entry to the sidebar of the Files.app from which a list of remote content can be loaded and viewed. Depending on the provider, it should also be possible to navigate through directories and sub-folders; open, edit, save and rename files (when write support lands); and sort items by name, type, modified date or size.
Like the Google Drive folders in Chrome OS, virtual file systems will automatically mount on login or after a reboot (unless otherwise told not to).
When Can I Try It?
As of writing there is no firm date on when this feature, or any of the provider extensions, will be made available for user testing.
Developers running Chromium OS from trunk can toy with the work as it stands by following instructions on the FileSystemProviders GitHub wiki, where detailed information on creating a File System Provider is also listed.