Skip to main content

CLI and tray tools for mounting rclone remotes

Project description

Mountlet

Mountlet is a terminal app for mounting and unmounting rclone remotes from a simple menu. It uses your existing rclone configuration and does not store cloud credentials inside the application install directory.

How It Works

Mountlet is a friendly control panel for two standard tools:

  • rclone connects to cloud storage providers such as Google Drive, Dropbox, S3-compatible storage, and WebDAV.
  • FUSE lets Linux show a cloud remote as if it were a normal folder on your computer.

This app reads your rclone remotes, creates local mount folders, and starts or stops rclone mount for you.

Requirements

  • Python 3.10 or newer.
  • rclone, which connects to your cloud storage.
  • FUSE, which lets Linux show mounted cloud storage as folders.

On Ubuntu, install the system tools with:

sudo apt install rclone fuse3

Install

For isolated CLI use:

pipx install mountlet

For the desktop tray preview:

pipx install "mountlet[tray]"

For a local checkout:

python -m pip install .

Use

Open Mountlet:

mountlet

The app checks whether your computer is ready before it opens the menu. If something is missing, it prints the next step instead of dropping you into an empty screen.

For a guided setup check:

mountlet setup

If you have not added any cloud storage to rclone yet, let setup open rclone's connection flow:

mountlet setup --configure-rclone

Normal use is:

mountlet

Quitting the menu leaves mounted remotes connected. Use u in the menu to unmount everything.

Desktop Tray Preview

The tray app is optional and uses PySide6. Start it with:

mountlet tray

If you installed the CLI without tray support, add PySide6 with:

pipx inject mountlet PySide6

The tray app uses the tray icon this way:

  • Hover shows a short mounted/unmounted summary.
  • Left-click shows each remote with mount, unmount, restart-mount, and open-folder actions.
  • Right-click shows app-level actions such as mount all, unmount all, update status, and quit.

If your desktop session does not expose a system tray, use the terminal menu instead.

Extra Commands

These are useful for backup, troubleshooting, or moving to another computer:

mountlet path
mountlet verify
mountlet verify --auto-reconnect
mountlet reconnect --remote MyRemote
mountlet export ~/mountlet-backup
mountlet import --config ~/mountlet-backup/rclone.conf

File Locations

Mountlet keeps application data in user-specific locations and leaves rclone credentials in the standard rclone location.

On Linux:

  • ~/.config/rclone/rclone.conf: rclone remotes and credentials.
  • ~/.config/mountlet/config.toml: Mountlet preferences.
  • ~/.config/mountlet/mounts.toml: per-remote mount preferences.
  • ~/.local/state/mountlet/: runtime state.
  • ~/.cache/mountlet/: cache files.
  • ~/cloud_mounts/: default mount root.

Print the paths for your system:

mountlet path

Create the Mountlet user folders:

mountlet path --ensure

That command also creates starter config.toml and mounts.toml files if they do not exist yet.

Override the mount root for a shell session:

export MOUNTLET_MOUNT_BASE=/path/to/mounts

App Settings

Use config.toml for app-wide behavior:

[app]
mount_base = ""
auto_mount = false
auto_mount_delay = 2.0

[tray]
open_folder_behavior = "current_desktop"
focus_file_manager = true

Use mounts.toml for per-remote behavior. Remote names must match the names in rclone.

[remotes."Work__Drive"]
auto_mount = true
mount_path = "~/cloud_mounts/drive/Work"
mount_flags = "--read-only --dir-cache-time 10m"

Keep cloud account details in rclone.conf; use these files only for Mountlet behavior.

Credentials

rclone.conf can contain OAuth tokens and provider credentials. Treat exported bundles as sensitive files.

  • Do not share real rclone.conf files.
  • Do not share client_secret*.json files.
  • Store backups outside application install directories.
  • Review exported bundles before copying them to another machine.

Status

The current public target is Linux CLI use. The desktop tray is an early preview for the next product layer.

See the changelog for version history.

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

mountlet-0.2.0.tar.gz (36.3 kB view details)

Uploaded Source

Built Distribution

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

mountlet-0.2.0-py3-none-any.whl (30.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: mountlet-0.2.0.tar.gz
  • Upload date:
  • Size: 36.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for mountlet-0.2.0.tar.gz
Algorithm Hash digest
SHA256 c136ba5c38a75e8c29b95195b7b58627faca018ff07dfa1f7d9f608f61a920cf
MD5 895d506e9f7998a212f47739003de308
BLAKE2b-256 fb9b557ff4d813521da416eb520f54b9f3ff065af6c6840063f63d55adad42a8

See more details on using hashes here.

Provenance

The following attestation bundles were made for mountlet-0.2.0.tar.gz:

Publisher: python-publish.yml on eric-holt/mountlet

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

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

File metadata

  • Download URL: mountlet-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 30.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for mountlet-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b863b4ba71713bd937fdde685591545e1bb81f777771d80809d6dc12090f7c98
MD5 9e44aac4d80d76ddb82cb69b08338e05
BLAKE2b-256 3e005c1d6872cfc98948ccf882b0bae2056353af796ec0d1cc50c9f32a4a0a63

See more details on using hashes here.

Provenance

The following attestation bundles were made for mountlet-0.2.0-py3-none-any.whl:

Publisher: python-publish.yml on eric-holt/mountlet

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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