Skip to main content

dbxfs

dbxfs is not licensed to be hosted on GitHub in response to GitHub's history of exploitative behavior. If you are reading this on GitHub this is an illegal mirror. Do not use and report usage to the author https://twitter.com/cejetvole

dbxfs allows you to mount your Dropbox folder as if it were a local filesystem. It differs from the official Dropbox client in two main ways:

  • Internet connectivity is required for access
  • No disk space is required for access, but will cache if disk space is available

dbxfs has been tested on OpenBSD, Linux, macOS, and Windows but it should run on any POSIX system that provides a FUSE-compatible library or has the ability to mount SMB shares. It runs on non-x86 architectures like ARM. It doesn't require a specific file system.

It is written for Python 3.11+ and is licensed under the GPLv3.

Disclaimer: dbxfs is not affiliated with Dropbox, Inc.

Installation

If you are on Windows, the easiest way to use dbxfs is to download and run the pre-compiled executable. Read the README included with the Windows distribution for Windows-specific instructions.

If you are on Linux, you must install your OS's FUSE library. On Debian/Ubuntu, install the libfuse2 package, on Fedora install fuse.

Run the following command:

$ pip3 install dbxfs

On Arch Linux and derivatives, you can find it in the AUR as dbxfs.

Usage

Use dbxfs like you would use the mount command:

$ dbxfs <mount_point>

To unmount your Dropbox folder on Linux systems, you can use fusermount -u <mount_point>, on all other systems use umount.

You can see the full list of command line options by passing -h to the dbxfs command.

Advanced Refresh Token Storage

By default dbxfs stores your refresh token in an encrypted file but you may want to store it in a GPG encrypted file or something else. To do that you must first obtain a refresh token. You can obtain a refresh token by running the following command:

$ dbxfs --get-refresh-token

Once you have obtained the refresh token, encrypt it with the program of your choice and store the result somewhere. After that, you must edit the dbxfs config file. You can find the location of the config file by running the following command:

$ dbxfs --print-default-config-file

The config file is a JSON encoded file. Add the following JSON key to the top-level JSON object in that file:

"refresh_token_command": ["gpg", "--decrypt", "/path/to/refresh/token/file.gpg"]

Adapt it to a decryption program of your choice. This configuration works great for storing the refresh token using a OpenPGP card.

Contact

Rian Hunter @cejetvole

Release files for dbxfs 2.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for dbxfs 2.1.1
File Size Uploaded
dbxfs-2.1.1.tar.gz 61.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for dbxfs 2.1.1
File Interpreter ABI Platform
dbxfs-2.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 128.1 kB

Release files / dbxfs-2.1.1.tar.gz

Download URL dbxfs-2.1.1.tar.gz
Size 61.7 kB
Tags Source
SHA-256 checksum
How to use checksums
18f9c0410cb1ec8930e7857a12f4c5c5cc5f2ffa2262cd782ac3e9d6e6541de0
BLAKE2b-256 checksum
How to use checksums
9a321f6398f7543dff1f4b3147a1ca09ae08aa15075f52c203c7c6c95713e383
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.2

Release files / dbxfs-2.1.1-py3-none-any.whl

Download URL dbxfs-2.1.1-py3-none-any.whl
Size 66.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a7b45bca688b325c544fa8ce6458fb1672c5ea4eaef988e72dffb9a807084b3c
BLAKE2b-256 checksum
How to use checksums
6aa630c6e61f0ad69b05b975fa1f70fa262a6f3dce81da1513d273ab536a759f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.2
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page