Building a Snap package


#1

Hi all,

A while ago I mentioned trying to get Fritzing in to Ubuntu Make, but that stalled for a few reasons, but there is a new more interesting way we can package Fritzing which would make it potentially cross Linux distro compatible, and very easy to install and distribute.

Ubuntu recently announced that Snap packages work on multiple distros:

And to this end I spent some time yesterday working on getting a Snap package for Fritzing built:

This won’t work out of the box quite yet, but I will be spending some more time working on it tomorrow I hope.
I have a binary which runs, but I need to sort out all the file paths, add the Fritzing parts and a few other bits and pieces.

Assuming I do get it fixed it’s then easy to put a release in to the store which will auto-update. A user can also have multiple versions installed alongside each other, and there is also a beta channel in the store where bleeding edge versions can go for those who want to test it. So for example, I could have 0.9.3 installed for doing work and a nightly git build for playing with and logging bugs etc.

I’m no developer, and I’m not familiar with qmake, so this is taking me longer than it would do normally, but I’m making progress and the Snappy team are very supportive.

Would anyone like to lend a hand? I had an issue with the paths to gitlib2 being fixed to the parent dir but I worked around this by commenting out the logic in the pro file and just leaving -lgit2. Snapcraft (the things that builds snaps) takes care of setting up paths to libs for me. So maybe the .pro file could be changed to not hardcode the paths?

The other problem I’m having is on the snappy side where the installed app doesn’t have permission to the full file system as it would normally, so I need to dig in to this a bit more and work out how to fix it. Hoping to work this out tomorrow.

If anyone is interested in helping and is on Freenode IRC, please ping me “willcooke”, or reply here and let’s sync up.

Cheers!

Edit: the forum wouldnt let me post because it thinks I have more than two links, so I’ve had to munge them a bit.