Hello, I’m developing a programming language and IDE. It’s the Linux version of Integrative Studio, currently available for Windows only (https://integrative.io). As it is a programming language and IDE, I need classic confinement to access files and database servers. Please approve the snap uploaded as ‘integrative-studio’. Thank you!!
This isn’t quite enough detail as there are various interfaces for files and accessing databases over the network. While IDEs are a known use case for classic, can you please describe in specific terms why classic confinement is required (eg, your snap needs header files from the host, etc)
Hello Jamie, thank you for reviewing this request. The behavior of this IDE is similar to any other IDE on Snap, the ones I checked all have ‘classic’ scope. The IDE reads files from the file system, creates files and folders, and then “compiles” into programs which are files that are executable programs with execution permissions. Some of these programs created by the IDE and its compiler will use other resources from the computer, depending on what programs the user wants to create. The IDE also uses the file system to monitor external changes to files made open in the editor, create and modify databases in the local computer, and use file-based database systems such as Sqlite to store data. If the compiler was constrained by the sandbox, it would not be able to read system files, read and modify system configuration related to installed compiler frameworks, or create and execute the programs that the user creates. I hope this helps. Thank you!!
Also, if it was possible for the IDE to create and run programs while on sandbox mode, it would essentially be breaking/hacking/escaping the sandbox itself – and thus misrepresenting its confinement.
This is the bit that I wasn’t sure of. I am unfamiliar with integrative-studio and what it’s compilation requirements are. The requirements for classic are understood (needs access to files from the host that don’t exist in the snap’s runtime environment for the purposes of compilation).
@advocacy - can you perform the vetting?
Well, that depends I guess on what the compiled program did. Eg, the IDE could launch anything in $HOME if the home interface were plugged. However, it is awkward because the compiled program might need more access than the IDE. Anyway, as mentioned, the requirements for classic are understood.
Hi Pablo, a quick question, you are the founder of Integrative LLC?
Hi Igor, yes, I am the founder and owner of Integrative Software LLC registered in the state of Wisconsin.
If it helps anything, at this point what I’m looking to create is a development track only. The Linux version isn’t ready to publish yet. Thank you.
I have verified the publisher, +1 from me.
Thanks, this is now live.