DEB package script

I've been using Joplin for a few years and I think it's a great project.

One thing that's always bothered me is the the lack of a native *.deb file to install. Something about AppImages just doesn't feel right to me.

So not really knowing anything about JS/TS or Node (but I do know a bit about scripting) I created a script that users can use to create their own *.deb package for Joplin.

It uses Docker so no one has to try to install NodeJS on their system, and keeps things nicely contained.

Feel free to give it a try, and let me know if it could use some improvement.

1 Like

Thanks for sharing. Would it be difficult to publish the .deb file itself to a repo?

I think it wouldn't be too difficult to publish to a repo, did you have one in mind?

I don't have any in mind, as I'm not familiar with .deb files in general. What I was thinking is to put the .deb on a public repo then user can install the app directly from there, without having to build the Docker image, etc. But I don't know how easy it would be to do it.

Publishing the deb file to an APT repo is the easy part. I can automate the package signing, and build a pipeline that publishes every new Joplin release.

I just wish I had a repo to publish to. I'm not very keen on hosting my own APT repository but I will give it some thought.

Can you publish as a PPA? That should work for most Debian/Ubuntu based distros. Launchpad is super annoying, but it is an easy way to host a archive. I think there is a slo a way to just make the deb file available for download.

Not a bad idea Yann1ck, I'll look into creating a Launchpad account

Its quite easy. You just need a working deb build, you can release that to Launchpad after a successful build.
Its also easy to fully automate the build. Have the code to successfully build on Github, use a Launchpad recipe to build again on Launchpad build servers and release it as PPA. Its pretty straightforward, but I am not sure how to easily combine it with your Docker build. An example based on a sid package: onedrive-abraunegg : Yannick

The other alternative would be the SUSE build service, but I have never tried it.

Cool, I'll make that the next weekend project.

The intention for the Docker build was to make it easy for people to create their own DEB for Joplin.
I can make a new repo and rework the script to suit PPA's better. I had no idea PPAs were relatively easy to setup. Thanks for showing me this!

Its just „relatively“ easy because the documentation isnt the best. Sometimes the Launchpad Build Servers are annoying because not every package is available. So ist can be frustrating as well :smiley:

1 Like