Skip to content

Local folders, automatically synced to Proton Drive. (Unofficial Sync Client)

License

Notifications You must be signed in to change notification settings

DamianB-BitFlipper/proton-drive-sync

Repository files navigation

Proton Drive Sync

demo.mp4

Buy Me A Coffee

Installation

macOS

brew tap DamianB-BitFlipper/tap
brew update
brew install proton-drive-sync

proton-drive-sync setup

Linux

Debian / Ubuntu

# Add repository
echo "deb [trusted=yes] https://repo.damianb.dev/apt/ * *" | sudo tee /etc/apt/sources.list.d/proton-drive-sync.list
sudo apt update

# Install
sudo apt install proton-drive-sync

proton-drive-sync setup

Fedora / RHEL / CentOS

# Add repository
sudo tee /etc/yum.repos.d/proton-drive-sync.repo << 'EOF'
[proton-drive-sync]
name=Proton Drive Sync
baseurl=https://repo.damianb.dev/yum/
enabled=1
gpgcheck=0
EOF

# Install
sudo dnf install proton-drive-sync

proton-drive-sync setup
Homebrew (Linux)
brew tap DamianB-BitFlipper/tap
brew update
brew install proton-drive-sync

proton-drive-sync setup
Arch Linux (AUR)

Install from the AUR package:

# Install via yay
yay -S proton-drive-sync-bin

# Install via paru
paru -S proton-drive-sync-bin
AppImage

Download the AppImage from GitHub Releases:

# Download (replace VERSION and ARCH as needed)
wget https://github.com/DamianB-BitFlipper/proton-drive-sync/releases/latest/download/Proton_Drive_Sync-VERSION-x86_64.AppImage

# Make executable and run
chmod +x Proton_Drive_Sync-*.AppImage
./Proton_Drive_Sync-*.AppImage setup

# Optionally move to PATH
sudo mv Proton_Drive_Sync-*.AppImage /usr/local/bin/proton-drive-sync
Flatpak

Download the Flatpak bundle from GitHub Releases:

# Download (replace VERSION and ARCH as needed)
wget https://github.com/DamianB-BitFlipper/proton-drive-sync/releases/latest/download/Proton_Drive_Sync-VERSION-x86_64.flatpak

# Install
flatpak install --user Proton_Drive_Sync-*.flatpak

# Run
flatpak run io.github.damianbbitflipper.ProtonDriveSync setup
Tarball (manual)

Download the Linux tarball from GitHub Releases:

tar -xzf proton-drive-sync-linux-x64.tar.gz
sudo mv proton-drive-sync /usr/local/bin/
proton-drive-sync setup

Docker

See DOCKER_SETUP.md for running with Docker Compose on Linux x86_64 and ARM64.

cd docker/
cp .env.example .env
# Edit .env with KEYRING_PASSWORD and sync directory paths
docker compose up -d
docker exec -it proton-drive-sync proton-drive-sync auth

Coming Soon

Windows

Download the .zip from GitHub Releases, extract, and add to your PATH.

Installing Pre-release Versions

Pre-release packages

Pre-release packages (proton-drive-sync-prerelease) allow you to test upcoming features before stable release. They conflict with the stable package, so only one can be installed at a time.

macOS

brew tap DamianB-BitFlipper/tap
brew install proton-drive-sync-prerelease

Debian / Ubuntu

# Add repository (if not already added)
echo "deb [trusted=yes] https://repo.damianb.dev/apt/ * *" | sudo tee /etc/apt/sources.list.d/proton-drive-sync.list
sudo apt update

# Install prerelease
sudo apt install proton-drive-sync-prerelease

Fedora / RHEL / CentOS

# Add repository (if not already added)
sudo tee /etc/yum.repos.d/proton-drive-sync.repo << 'EOF'
[proton-drive-sync]
name=Proton Drive Sync
baseurl=https://repo.damianb.dev/yum/
enabled=1
gpgcheck=0
EOF

# Install prerelease
sudo dnf install proton-drive-sync-prerelease

Arch Linux (AUR)

On Arch Linux and derivatives, install from the AUR package:

# Install via yay
yay -S proton-drive-sync-prerelease-bin

# Install via paru
paru -S proton-drive-sync-prerelease-bin

Manual Installation

Download the pre-release tarball for your platform from GitHub Releases and extract it:

# Example for macOS arm64
tar -xzf proton-drive-sync-darwin-arm64.tar.gz
sudo mv proton-drive-sync /usr/local/bin/

Switching Between Stable and Pre-release

The packages conflict with each other, so installing one will automatically remove the other:

# Switch to prerelease
sudo apt install proton-drive-sync-prerelease

# Switch back to stable
sudo apt install proton-drive-sync

Usage

Dashboard

The dashboard runs locally at http://localhost:4242. Use it to configure and manage the sync client.

Commands

Command Description
proton-drive-sync setup Interactive setup wizard (recommended for first run)
proton-drive-sync auth Authenticate with Proton
proton-drive-sync start Start the sync daemon
proton-drive-sync stop Stop the sync daemon
proton-drive-sync status Show sync status
proton-drive-sync --help Show all available commands

Uninstall

To completely remove proton-drive-sync and all its data:

proton-drive-sync reset --purge

This will stop the service, remove credentials, and delete all configuration and sync history.

For package managers:

  • Homebrew: brew uninstall proton-drive-sync
  • Debian/Ubuntu: sudo apt remove proton-drive-sync
  • Fedora/RHEL: sudo dnf remove proton-drive-sync

Development

See DEVELOPMENT.md for development setup and contributing guidelines.