name: surfpool
description: Surfpool is a command-line tool for working with Solana-based deployments and other blockchain runtimes. It integrates with the Solana CLI ecosystem and relies on shared configuration and keypair files managed by Solana tooling.
snapcraft: snapcraft-surfpool/snapcraft.yaml at main · txtx/snapcraft-surfpool · GitHub
upstream: https://github.com/txtxrun/surfpool
upstream-relation: I am the upstream developer and publisher of the snap.
supported-category: developer-tools
reasoning:
Surfpool requires access to the user’s Solana CLI configuration located in ~/.config/solana/
, which includes identity keypairs (id.json) and RPC endpoint settings. These paths are defined by the Solana CLI tooling. The personal-files
interface cannot be reliably used here, as the app must read from and interoperate with these files without requiring users to manually connect plugs. Additionally, tools like solana-keygen
, solana config get
, and solana airdrop
are invoked by or used alongside Surfpool, requiring shared access to the same non-sandboxed environment. For these reasons, classic confinement is necessary.
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.