description: Turn Off PC Desktop is a companion desktop app that allows users to remotely shut down, restart, or put their computer to sleep from a mobile phone. It includes a background TCP server that listens for authenticated commands and a desktop GUI (Flutter) for configuration and monitoring.
upstream-relation: I am the author and sole maintainer of the upstream project.
interfaces:
shutdown:
request-type: auto-connection
reasoning: The entire purpose of this application is to allow users to remotely shut down, restart, or suspend their computer from a companion mobile app (available on Google Play and the App Store). The shutdown interface is not an optional feature — it is the core and only reason the application exists. Without this interface, the snap is completely non-functional.
The app is already distributed and working on other platforms: as an .exe installer and via the Microsoft Store on Windows, as a .dmg on macOS, and as a .deb package on Linux. On all of these platforms, the app successfully performs shutdown, restart, and sleep operations. The Snap package is simply another distribution channel for the same application.
Power management commands are never executed automatically or in the background. They are only triggered when the user explicitly sends a command from the authenticated mobile app. The desktop app acts as a TCP server that receives these commands and executes them on behalf of the user.
The project website is available at https://www.turnoffpc.com where you can see the app in action and its distribution across all platforms.
This is a +1 (#voteFor) from me for allowing installation and auto-connection for the shutdown interface for the turn-off-pc-desktop snap, pending successful publisher vetting. As outlined in the request, this access and functionality would quite obviously be expected by the user upon install, so allowing auto-connection feels reasonable.
shutdown interface makes sense for the application functionality and should be expected based on the snap name. As of now, shutdown is considered super-privileged and requires publisher vetting.
Could you please clarify if turn-off-pc-desktop is open source or close source? Publisher vetting alternatives are different based on that
The publisher vetting process for private snaps is described here: Verified Accounts. Please follow the steps in the post, and we can proceed with this request upon verification. Thanks!
In this case, I don’t think there a good alternative to complete the publisher vetting as of now. Perhaps, the best alternative for the time being would be to limit it to manual connection. Your snap can use snapctl is-connected to check if the interface is connected and prompt the user to connect it if needed.
That approach isn’t aligned with the purpose of the app. The idea behind this program is that it starts automatically without requiring user interaction, as it’s designed for remote control. If user interaction is required, then it can no longer be considered true remote control. Once it requires user interaction, it no longer really serves its intended purpose.
I understand this may be considered a sensitive area that requires oversight. However, this interface is used strictly for these specific functionalities and nothing more.
It is absolutely essential that this requirement is met. In other stores, such as the Microsoft Store, it is already being distributed.
I recognize that this interface is essential for your snap’s core functionality. However, we are unable to grant super-privileged interfaces without publisher verification, as bypassing this step would violate our security policy.
If you need any other assistance, we are happy to help!
I understand the security concerns, but I’m a bit confused about the process. How am I supposed to complete publisher verification if I’m unable to publish my first snap due to requiring a super-privileged interface?
It seems like a circular dependency: I need verification to publish, but I need to publish to get verification.
Does this mean that this type of project cannot be distributed through the Snap Store? If there is an alternative path or exception process, I would really appreciate some guidance.
The software is approved in other stores such as Microsoft Store, i also passed the review system. I really would like to have uploaded the app in all stores
This limitation blocks access to a privileged interface that is essential to my product’s core functionality. Additionally, the apparent lack of support for developers contributing free, community-focused products is difficult to justify and ultimately undermines efforts to create accessible solutions for users.
If I create a public repository containing the code for the Linux version, including the Snap package and the way the shutdown interface is used, would that be enough for approval?
The desktop application is completely free and does not include any form of monetization.
For the record, the manual connection is only needed to be done once after snap installation by the user; there is no user interaction needed afterwards.