Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DriveBridge

DriveBridge is a safety-focused native Ubuntu application for two-way Google Drive folder synchronization. It wraps rclone bisync with stable filesystem identity checks, read/write mount checks, access markers, reviewed initialization, deletion limits, conflict copies, and retained backups.

DriveBridge never formats or force-mounts a filesystem. When an NTFS volume is dirty or read-only it blocks synchronization and produces a Windows chkdsk repair card.

Public beta: DriveBridge 0.1.0 is functional on Ubuntu 24.04+ amd64, but the downloadable package is currently unsigned and uses rclone's OAuth application. Review the safety plan before entrusting irreplaceable data.

Install the public beta

Download drivebridge_0.1.0_amd64.deb from the latest GitHub release, then install it:

sudo apt install ./drivebridge_0.1.0_amd64.deb
systemctl --user enable --now drivebridge-scheduler.timer
drivebridge

DriveBridge supports Ubuntu 24.04 and newer on amd64. A public release-signing key and a DriveBridge-specific verified Google OAuth application are planned before the first stable release.

Development

Ubuntu 24.04 or newer needs Python 3.12, GTK4, libadwaita, PyGObject, libsecret introspection, and rclone 1.75 or newer.

export PYTHONPATH="$PWD/src"
python3 -m drivebridge.engine health
python3 -m drivebridge.app
python3 -m unittest discover -s tests -v

For isolated automated tests only, use a private file-backed secret store:

export DRIVEBRIDGE_SECRET_BACKEND=file
export DRIVEBRIDGE_DATA_DIR="$PWD/.test-data"

Normal installations always use GNOME Keyring.

Build and install

./scripts/build-deb.sh
sudo apt install ./dist/drivebridge_0.1.0_amd64.deb
systemctl --user enable --now drivebridge-scheduler.timer
drivebridge

The build embeds the installed rclone binary after verifying it is version 1.75 or newer. Set DRIVEBRIDGE_RCLONE_SOURCE to use another audited binary. When using another binary, set DRIVEBRIDGE_RCLONE_COPYRIGHT_SOURCE to its corresponding copyright and component-license notice file. Release signing is enabled when DRIVEBRIDGE_SIGN_KEY names an available GPG key and dpkg-sig is installed.

Safe workflow

  1. Add the local folder, Drive link, and an existing Google Drive rclone remote.
  2. Run safety checks. A missing, wrong, or read-only filesystem blocks all writes.
  3. If NTFS is read-only, save the generated Windows repair card and repair it there.
  4. If existing directories lack owner-write permission, use the permission repair; it modifies directory write bits only and records every original mode.
  5. Run Plan initial sync. This creates access markers, hashes inventories, and executes a zero-deletion --resync-mode newer dry run.
  6. Review the result, then choose Apply reviewed plan exactly once.
  7. Run the two-way test before relying on automatic synchronization.

Raw logs are stored under ~/.local/state/drivebridge/logs. Job state is under ~/.local/share/drivebridge. Backups are retained inside the excluded .drivebridge-backups directory on each side and are never automatically purged.

License

GPL-3.0-or-later. The bundled rclone binary retains its own MIT license.

About

Safety-focused GTK4 app for two-way Google Drive synchronization on Ubuntu

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages