I hope you’re doing well. I’m Gabriel, the developer behind “lazy-dev,” and I’m reaching out to ask for your nod on enabling classic confinement for my snap.
Overview:
“lazy-dev” is a small project aiming to simplify the installation of development and productivity tools for lazy devs. Currently, I’m facing some permission issues during installations, particularly when attempting to install tools like Spotify, Discord, Slack, VScode, etc.
Issue:
The snappy confinement is a bit too strict, and I’m running into permission errors, especially when dealing with system-level commands.
lazy-dev looks useful (for lazy devs like me ), but I’m not convinced that it’s going to be possible to grant classic for it. There is a hard list of supported and unsupported categories for snaps that request classic listed here: Process for reviewing classic confinement snaps, and there is an explicit rule describing things like this:
unsupported
3rd party installer snaps (eg, for native packages, appimages, flatpaks, snaps, etc)
…and while there is also…
Supported
tools for local, non-root user driven configuration of/switching to development workspaces/environments
… it’s important to note the non-root bit of that description, and the fact that all of your snap and apt installations and upgrade require root access. I would also say that the snap is not going to be very portable to non- debian based systems either given the heavy use of apt. Snaps should be self-contained (including on removal) and portable.
For me, this falls into the category of a nifty set of scripts, but not something that is suitable for packaging as a classic mode snap.
I appreciate you taking the time to review my “cow-say” ( in this case “lazy-dev” ) project in Go. This was my first attempt at publishing a snap, and the experience was fantastic.
I understand the restrictions and guidelines of classic confinement, and I agree that they are important measures to ensure the security and portability of snaps. Your insights were enlightening, and now I feel more confident using snaps, knowing these limitations.
I will continue to use the compiled binary without any issues. Thank you again for your attention and valuable insights.