Classic confinement for `9gridtools`

Application: 9gridtools Technical reasons for classic confinement:

  • Electron application requires full system access
  • Needs to read/write files in user’s home directory
  • Uses embedded Python runtime
  • Requires FFmpeg for video processing
  • Needs access to system fonts and libraries

I’ve moved the topic to store requests category.

FYI, the reasons you listed in your post are not acceptable request for classic confinement:

  • Electron apps do not require full system access.
  • User home files are handled by the home interface, and files mounted from external sources are handled by removable-media interface.
  • A minimal python runtime is present in the base snap, though most snaps requiring it ship with a separate python installation (ensured by snapcraft)
  • FFMPEG should be shipped as a dependency in your snap. You cannot rely on the host having ffmpeg installed at all.
  • System fonts are automatically accessible through the desktop interface.
  • Libraries which are your dependencies are shipped in the snap

Our Electron app (9GridTools) must execute the host’s LibreOffice (/usr/bin/soffice) for document↔PDF conversions. Under strict confinement, the snap cannot run host binaries, causing conversion failures (exit 127/134). Bundling LibreOffice inflates the snap by ~500MB and risks crashes due to version mismatches; content/system-files interfaces do not allow executing host soffice reliably. The app only reads/writes user documents and removable media, without altering system configuration. Classic is requested solely to execute host soffice and reuse system fonts and language packs to ensure conversion quality.

Hi @gtnes,

I’m with @mborzecki1

bundling LibreOffice inflates the snap by ~500MB

This is explicitly listed as an unsupported reason: access to arbitrary files on the system to avoid increasing a snap’s size

risks crashes due to version mismatches

mismatches can occur when using classic as you don’t have control about which version is installed in the host system. Staging LibreOffice into your snap gives you control about the exact version being used