To make the review of your request easier, please use the following template to provide all the required details and also include any other information that may be relevant.
- name: rclone-manager
- description: RClone Manager is a user-friendly GUI for Rclone, designed to simplify the process of managing and transferring files across various cloud storage services. With its intuitive interface, users can easily configure and execute Rclone commands without needing extensive technical knowledge.
- snapcraft: rclone-manager/snap/snapcraft.yaml at master · Zarestia-Dev/rclone-manager · GitHub
- upstream: https://github.com/Zarestia-Dev/rclone-manager
- upstream-relation: Creator.
- supported-category: No exact match found, might need senior review.
- reasoning: See below.
I understand that strict confinement is generally preferred over classic.
I’ve tried the existing interfaces to make the snap to work under strict confinement.
Hello, I am the creator of RClone Manager.
I’m requesting classic confinement access to publish the rclone-manager snap.
RClone Manager acts as a comprehensive frontend and process manager for the rclone CLI tool. Due to the nature of navigating and managing arbitrary file systems and interacting with existing system binaries, sandboxing introduces severe limitations that degrade the user experience and break core functionality.
Reasoning
RClone Manager needs classic confinement primarily for two reasons that cannot be reliably satisfied by existing plugs:
1. Executing the user’s rclone binary
The application locates and executes the user’s existing rclone installation to perform its core tasks. rclone can be installed in a variety of locations depending on the user’s preferred method:
- rclone (apt/package managers)
/snap/bin/rclone(snap)~/.local/bin/rclone(manual installation)/usr/local/bin/rclone(rclone’s official installer script)- Any custom user-defined
$PATHlocation
Furthermore, if RClone Manager cannot find the standard binary automatically, the app prompts the user to either download it to a custom location or manually select an existing rclone executable anywhere on their system.
There is no single plug that grants execute access to arbitrary binaries across the entire filesystem. While the personal-files and system-files plugs could cover some known paths, they cannot gracefully handle custom installation paths, user-selected binary locations, or arbitrary download directories. Forcing users to reconfigure or move their binaries just to satisfy the GUI’s permissions would be a frustrating experience and breaks the core functionality of the app.
2. Arbitrary filesystem path access
Because rclone operates on any directory the user chooses (local backup sources, active mount points, external drives, network shares, and paths well outside of $HOME like /mnt/data or /media/user/drive), Rclone Manager needs broad filesystem visibility.
While the home and removable-media plugs cover basic use cases, they fall significantly short for advanced users backing up NAS mounts, custom partitions, or server directories. Without classic confinement, directory browsing and auto-completion for local paths would yield incomplete or blocked results, fundamentally breaking what the user expects from a file management GUI.
Alternatives considered
- Bundling rclone inside the snap: This solves binary access but fails to solve the arbitrary filesystem access issues. It also creates a fractured experience where users cannot utilize their globally configured existing
rcloneversion, and it puts the burden on us to constantly sync updates with the bundled version. - Strict with
personal-files/system-files: Would require hardcoding every potential rclone install path and would inevitably break for anyone using a custom location. - Strict with
home+removable-media: Covers standard setups but breaks entirely when users try to manage backups for data on non-standard mount points (a very common scenario for rclone power users).