Skip to main content

Wrapper around rclone to decrypt files encrypted with rclone

Project description

rclone-decrypt

Status

test build

Description

rclone-decrypt is a utility which will decrypt files that were encrypted with rclone. The anticipated use-case is that a user has independently downloaded an encrypted file or directory directly from a remote cloud storage (Backblaze B2/Amazon Drive/Dropbox/etc...) and now wants to decrypt it.

Given an rclone.conf file, this tool is simply a wrapper around rclone which sets up a "local remote" to host the downloaded encrypted files and then calls rclone copy in order to decrypt the files into a desired output folder.

Ostensibly I did this because my family backs-up our local NAS to a remote host but the rest of my family prefers to download files one-off from the cloud host and are not comfortable using the rclone CLI. This offers a CLI in addition to an easy-to-use GUI to make life simple.

Notes

  • Use at your own risk! Be sure you have copies of anything you're trying to decrypt, just in case something goes wrong!
  • When decrypting files with encrypted filenames or folder names, the directory or filename must only consist of the encrypted version. For example, if an encrypted file was downloaded as path_to_encypted_file_4567asd8fasdf67asdf where 4567asd8fasdf67asdf is the encrypted part, the filename must be renamed to exclude the path_to_encypted_file_ portion. Otherwise rclone will complain about invalid encryption names.
  • Windows is supported thanks to the cross-platform nature of Flet.
  • The GUI has been modernized using Flet, providing a cleaner look and better cross-platform support.

Installation

pip3 install rclone-decrypt

Requirements

General

  • rclone must be installed and available in your system's PATH.
    • Windows Users: Download rclone from rclone.org and extract it. Then, add the directory containing rclone.exe to your System Environment Variables (PATH).

Python environment

  • Python >= 3.10

Executable

UNDER DEVELOPMENT An OSX .app is generated but is currently untested.

Usage

CLI usage

> rclone-decrypt --config /path/to/rclone.conf --files /path/to/file/or/dir/

Example usages:

> rclone-decrypt --config rclone.conf --files /home/my_encrypted_dir
> rclone-decrypt --config rclone.conf --files /0f12hh28evsof1kgflv67ldcn/9g6h49o4ht35u7o5e4iv5a1h28
> rclone-decrypt --config rclone.conf --files /home/my_encrypted_file.bin

GUI usage

If the python package is installed directly then the GUI can be invoked from the command line, as shown below. Otherwise the packaged binary can be downloaded and executed directly.

  • Use the Add Files or Add Folder buttons to select items for decryption.
  • Selected items will be listed in the main area. You can remove individual items using the "X" button.
  • By default, decrypted files are saved to ~/Downloads/rclone-decrypted.
  • A default location for rclone.conf is provided automatically based on your OS, but you can browse for others.
rclone-decrypt --gui

Troubleshooting (Linux)

If you encounter an error like libmpv.so.1: cannot open shared object file on Linux (e.g., Ubuntu 24.04), you may need to install libmpv2 and create a symlink:

sudo apt update && sudo apt install libmpv2
sudo ln -s /usr/lib/x86_64-linux-gnu/libmpv.so.2 /usr/lib/x86_64-linux-gnu/libmpv.so.1

rclone_example

Development

python3 -m venv .venv
source .venv/bin/activate
poetry install
poetry run pytest
poetry run flake8
deactivate

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rclone_decrypt-0.2.0.tar.gz (10.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rclone_decrypt-0.2.0-py3-none-any.whl (11.1 kB view details)

Uploaded Python 3

File details

Details for the file rclone_decrypt-0.2.0.tar.gz.

File metadata

  • Download URL: rclone_decrypt-0.2.0.tar.gz
  • Upload date:
  • Size: 10.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.3.2 CPython/3.11.0 Linux/6.14.0-1017-azure

File hashes

Hashes for rclone_decrypt-0.2.0.tar.gz
Algorithm Hash digest
SHA256 c567ea269b8d62d4319de7af643644dbb74c1f6bfd4a3efa11eec4925d47ce9d
MD5 67fb88b2839cb19a1a741299e2cd964b
BLAKE2b-256 c2cd2045879b4dcb297c0ff22a6e87a02323089cb7f29f39571b9a839f3180a6

See more details on using hashes here.

File details

Details for the file rclone_decrypt-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: rclone_decrypt-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 11.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.3.2 CPython/3.11.0 Linux/6.14.0-1017-azure

File hashes

Hashes for rclone_decrypt-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1cd77a4869d20e96241ac59d3082a6cfe5cb191f0a9dd06ad52d07122fb2bb4a
MD5 22d02b9226b10c613928b75eb1ad3eae
BLAKE2b-256 8f3c1557f5b9cb3b22f2878a99c27a29f24985653217fdecd9170d1b6f87e44e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page