Skip to content

Driftgram 1.0.0

Latest

Choose a tag to compare

@github-actions github-actions released this 28 Aug 09:30
· 10 commits to main since this release

Keep the folders you choose backed up to your own Telegram account — and get changes back the other way too. Save a file on your PC and it appears in Telegram. Send a file to Telegram from your phone and it lands in the right folder on your PC.

Everything runs on your own machine, using your own Telegram account. Your files go to Saved Messages by default: a private chat only you can see. Nothing passes through anybody else's server, there's no account to create, no subscription, and no storage limit beyond Telegram's own.

This is the first public release.

Download

You're on Get this
Windows 10 / 11 Driftgram-1.0.0-Setup.exe
Any Linux Driftgram-1.0.0-x86_64.AppImagechmod +x it and double-click, no install
Debian / Ubuntu / Mint driftgram_1.0.0_amd64.debsudo apt install ./driftgram_1.0.0_amd64.deb

The Windows installer is per-user, so there's no administrator prompt.

Windows SmartScreen will warn you the first time. The installer isn't code-signed — a certificate costs a few hundred dollars a year. Click More info → Run anyway if you're happy to.

What it does

  • Two-way sync. A filesystem watcher catches local changes instantly; a live Telegram listener catches files sent from your phone, and a periodic pass picks up anything that happened while Driftgram was closed.
  • Files are never recompressed. Everything is uploaded as a document, so a photo comes back exactly as it went up.
  • No 50 MB cap. Driftgram uses your own Telegram account rather than a bot, so the limit is Telegram's own — about 2 GB per file, or 4 GB with Premium.
  • Nothing is uploaded or downloaded twice. A local manifest records the size, timestamp and hash of every synced file. This is what stops the classic two-way-sync loop, where an upload reappears as a "new" remote file, gets downloaded, touches the local file, and gets uploaded again forever.
  • Conflicts keep both copies by default. If you edit a file offline while a newer copy arrives from your phone, yours stays exactly where it is and Telegram's is saved beside it as name (from Telegram).ext. You can switch this to let Telegram's copy win or always keep mine.
  • Restore anything, including files you deleted locally. The Restore page lists everything Telegram is holding; tick what you want back.
  • Skip what isn't worth uploading. gitignore-style rules per folder and globally, with presets for build output, videos, disc images and logs.
  • Runs in the notification area, with an optional start-at-login, and follows your system light/dark setting.
  • A command-line version is included and fully supported, needing no Qt — useful on a headless machine.

Setting it up

The first run walks you through four steps. Only the second is fiddly:

Telegram requires every app that talks to it to be registered, including this one, on your account. It's free and takes about a minute — Driftgram gives you a button that opens the right page, and you copy two values back. The alternative would be shipping one shared key for everybody, where a single rate limit or ban would break every user at once. Your own key can't be taken away by someone else's misuse.

After that: sign in with your phone number, pick your folders, choose a few preferences. Driftgram starts backing up immediately. The first pass through a large folder can take a while; you can close the window and leave it running.

Worth knowing before you rely on it

  • Deletion mirroring only works while Driftgram is running. Telegram keeps no record of a deleted message, so a deletion that happened while the app was closed can never be detected afterwards. This is a Telegram API limitation, not something a future version can fix.
  • Folders can't be nested inside one another. A file would belong to two of them, so Driftgram refuses to add a folder that sits inside — or contains — one you already sync.
  • Windows can't store some Linux filenames. A file called notes:2024.txt is legal on Linux and impossible on Windows. Driftgram skips those and tells you which, rather than renaming them behind your back.
  • Very large first syncs may be throttled by Telegram. Driftgram pauses and resumes automatically rather than failing.
  • Empty files are skipped. Telegram's upload API rejects them.

Security

Your config.yaml contains your api_hash, and the .session file is equivalent to being logged into your Telegram account. Never share either. On Linux both are written owner-only.

Driftgram talks to Telegram and nothing else — no telemetry, no update check, and no server belonging to anyone else.

To report a vulnerability, please use private reporting rather than a public issue. See SECURITY.md.

Notes

Built and packaged by CI on Windows and Ubuntu 22.04 — an AppImage links against the host glibc, so building on the oldest supported release is what lets it run on newer ones.

Uninstalling never removes your settings, manifest or session. Reinstall and Driftgram picks up where it left off instead of re-uploading everything.

Bug reports and contributions are welcome — see CONTRIBUTING.md. Licensed under MIT.

Driftgram is not affiliated with Telegram.