Classic confinement request: tuxindrive

name: tuxindrive

description: TuxInDrive is a Linux-first desktop client for synchronizing and streaming user-selected folders across multiple public cloud providers. It also provides searchable synchronized folders, encrypted peer collaboration, offline files, recovery, and optional file-manager integration.

snapcraft: Tuxindrive/snap/snapcraft.yaml at main · tpluharik/Tuxindrive · GitHub

upstream: GitHub - tpluharik/Tuxindrive · GitHub

upstream-relation: I am the upstream maintainer and the Snap Store publisher (publisher ID: tpluharik77).

supported-category: public cloud agents and Nautilus scripts.

reasoning: TuxInDrive is a user-driven public-cloud agent. Its core purpose requires it to synchronize arbitrary folders explicitly selected by the user, invoke provider tools such as rclone, Git and SSH helpers, and create files-on-demand FUSE mounts that are visible in the host global mount namespace and usable by ordinary desktop applications. It also integrates with the host Secret Service through native credential helpers and optionally with host file managers, including Nautilus, so users can open synchronized locations and use file-manager actions.

I evaluated strict confinement with the existing home, removable-media, fuse-support, personal-files, password-manager-service and desktop interfaces. These interfaces do not provide the required combination of dynamically selected local paths, host-visible FUSE mounts, provider/helper execution, native credential storage and file-manager integration. personal-files declarations are static and therefore cannot represent paths selected by each user at runtime. A mount confined to the snap namespace would also not provide the application files-on-demand behavior to normal host applications.

Classic confinement is requested for these functional requirements, not merely to avoid adapting paths. TuxInDrive retains its own safeguards: only user-configured folders and accounts are operated on; path and synchronization safety checks remain enabled; destructive-change protection and preview checks remain active; credentials are handled through native encrypted storage; and network operations use the application global bandwidth controller.

I understand that strict confinement is generally preferred over classic.

I’ve tried the existing interfaces to make the snap work under strict confinement.

This request has been added to the queue for review by the @reviewers team.

Hi @tpluharik

Technical reasons why TuxInDrive needs classic to work are clear, but please note that classic confinement is a sensitive matter and it is reserved for mature, well-known applications published by mature, well-known entities. As of today, I believe that TuxInDrive doesn’t meet this criteria because of the following reasons:

  • The project seems to be very fresh, according to the upstream repository
  • The projects seems to have little/none community around according to upstream repository (contributors, issues, PRs, etc.)
  • I could not find evidences that the project has a strong enough user base currently

That is why I do not think TuxinDrive should get classic confinement as of now.

Sorry for the inconvenience.