[DEMO] Add Linux repositories via omnipackage#1583
Conversation
|
First of all, thank you for making this PR. I just want to make sure it is known that it is appreciated before I move on as it might now sound like I'm being dismissive or ungrateful. We would definitely need to decide if this is a route we wanted to go. It is interesting that this has come up now because we have a bunch of issues around our packaging that I've recently identified and attempting to tackle bit by bit... These are the current issues directly affecting our packages and build process that are the main focus of mine right now.
This PR seems to be based on the same templates that we don't actually seem to be using right now (in #1579) so we need to make a decision on that issue. Also we absolutely have to fix this RPATH issue before we start distributing RPMs in repos - I wouldn't feel comfortable in leaving that open. And I very much appreciate the effort in this PR but its not a call I can make alone, we need to decide in the team if this is something we want to do. The benefit of our current approach is that all of packages are generated from a single script via electron-builder (and yes this is even with acknowledging all of the above issues) which significantly reduces our maintenance and release burden). And whilst this would reduce the burden around building and distributing our deb and rpm packages we would still have to keep our existing build process for appimages, windows and macOS. We are also trying to consolidate our various resources right now, removal of our old cirrus build system and migrating other admin services into things we depend on like GCP. If this service requires an S3 bucket to work then I don't think we have one and we would need to investigate if the cost and admin burden would be worth it. (Unless GCP is compatible - not something I'm knowledgeable enough about). My personal opinion is that we aren't in a position to support this just yet. We need consensus with the team first and I want to tackle these long standing issues by themselves and not all in one big update. My goals as a minimum prereq to this are:
Once the packages themselves are being produced in the correct standard then we can look at whether we wish to move to a dedicated build and distribution service. |
Hi, pulsar devs
I made a tool that simplifies Linux packages building and distribution - https://omnipackage.org - which might be useful for Pulsar
This is how it can look for the users - https://repositories-test.omnipackage.org/pulsar-dev/install.html
This PR demonstrates the code changes in a forked repo that produces pulsar-dev on push to master on GH actions. It is not supposed to be merged, just minimal viable demo. Feel free to close, criticize the idea, etc. If you decide to pull the trigger, I volunteer to support this for a forseeable future.
Why
I use Pulsar since 2014 when it was Atom. Installing it on openSUSE is not pretty:
libuuid, but on my distro this lib is calledlibuuid1It happens because RPM spec has hard-coded
Requires:, but actual packages providing those ABIs can be different on different distros;How
Linux already has all the infrastructure to handle these issues, and omnipackage does exactly this:
Open Source
Omnipackage is opensource CLI aka glorified wrapper on top of podman/docker, dpkg, gpg and related Linux tools. You bring your own S3 bucket, your GPG key. There's no accounts, registration or anything like that. The demo repositories (https://repositories-test.omnipackage.org/pulsar-dev/) are hosted on my Cloudflare R2 bucket and use my test GPG key. It can run on Github actions or anywhere else where podman or docker can spawn containers.