I have created a snap for meson and ninja with the help of gnome-sdk. But, I am not getting should they be kept as separate snap or one single snap with aliases? Also, should they use classic confinement, or it can be done within strict confinement? I have tested it with classic confinement and it worked. Suggestions are requested. Thanks. Soumyadeep Ghosh
Separate snaps for meson and Ninja are recommended for modularity and maintenance. While strict confinement is preferable for perfectly security, if you have selected and found success with classic confinement, you can continue using it. Regularly review confinement requirements for snap security and stability.
Most build systems won’t work well with strict confinement, by design compilers and their infrastructure need to be able to see the real system. If they only ever saw inside the strict sandbox, you’d have to package every library and toolchain in the world.
It’s an eligible category for classic confinement (given usual review processes) but I would personally advise caution with these two snaps, if they end up with significant adoption I can easily imagine them becoming overwhelming to keep up with, it’s always important to be future minded and personally I veer on the side of caution; with great
power contributions, comes great responsibility!
You can see e.g cmake has a snap but, the kicker is that the upstream developer publishes it giving it a lot of “buy in”, similarly you’ll have e.g go with Canonical backing it, .NET with Microsoft, etc. So the concept of the snaps is certainly workable, but all three of the above have significant contributions from either upstream or a huge backer, because it’s a hard challenge over several years otherwise.
Your point is very much valid, and this is a big reason I stopped snapping personal use snaps anymore, with the current ones, I’m trying to push them to the upstream. Also, in this case, let me then try to contact with upstream also about this. I am optimistic to come up and maintain it.
Ninja are also more easy to build and maintain than other ones mentioned above.But,
I absolutely believe in this. So, this thing should be done with more caution.
I’m facing a dilemma while creating a snap for my project using Meson and Ninja with the help of gnome-sdk. I’m not sure whether to keep them as separate snaps or combine them into one single snap with aliases. I’ve tested it with classic confinement, and it seems to be working fine. I’m uncertain if it can be achieved within strict confinement or if it’s better to stick with classic. I would greatly appreciate any suggestions.
Which are those snaps? Kindly share with us.
I think you fell for a spam bot that piped your original post through chatgpt to slightly rephrase it
I think that brought up some attention to my original post again, as it needs some. Can you help about it?
Well, it isnt really clear what you are trying to do.
… do you have a project you are snapping that uses meson and ninja ?
…or do you literally want to package these two tools and maintain them ?
for the former you should just bundle them as usual …
regarding the latter, yes, they should be classic. being tools that compile random bits in random places on the filesystem, need to check for availability of dependencies etc etc …
i would also snap them separately and not maintain the snap myself but instead try to convince the respective upstreams to adopt the snapcraft.yaml into their tree and maintain them collaboratively under an upstream name/account so it can be properly vetted.
Yes that’s what my plan is to. Also, I know that’s not fair but the blueprint-compiler thread needs some attention, cause it needs classic and it’s stuck almost a month now.
Kindly help on this also.
well, i’m not a reviewer … probably just bump the thread …
@ogra Upstream of Meson doesn’t want to take the burden of maintaining a package manager.