Which DOD releases should the SailfishOS-OBS support?

A completely different approach would be for the community to fund and colo hardware for Jolla to connect to the Community OBS.

I can only concur with @nephros and @olf. There is still a question for me whether or not the build defines () always make it from testing to chum proper. I’ve experienced that I’ve limited it in testing, but it’s all-inclusive in chum proper. Maybe ‘old news, fixed’. But, I’m entirely for voluntary self control. If I am able. I’ll try.

1 Like

Something the Sailmates organisation may plan to take care about in the long run.

OTOH, as I expect GitHub to still exist in 15 years, another approach would be to map the current use of the SailfishOS-OBS for the SailfishOS:Chum community repository to GitHub. I started to think about that when evaluating how to map Patchmanager’s Web Catalog to GitHub and I think this is feasible for both and not really hard. With a bit of pondering and planning this might turn out to be technically elegant approach, given that most of the sources are already hosted there. For example, webhooks would become obsolete, as one can use GitHub-internal triggers in GitHub actions instead. But to implement that properly will take time. The biggest drawback I see here is a political one: If GitHub ever decides to switch off CI runs, GitHub actions or severely limit the resources used for these in the “free tier / plan”, this becomes infeasible (currently it is “just slow”, but the limits are almost impossible to hit). But in the past, GitHub has been consistently heading in exactly the opposite direction to stay the biggest hoster of FLOSS and proprietary (in “private projects”) software sources.

As a fallback, I’ve begun implementing builds using actions (so far only tooter) with @coderus excellent docker images. Which brings up the point that there are two dependencies, github and docker. I had initially planned on firing a webhook upon successful completion of a build on github but put that idea on hold until I have more experience with actions.

Not quite related but there is also gitlab, which offers a similar (but different) CI engine, can also run coderus’ images.

And with gitlab-runner, you can run the coderus docker engines on your development machine, using (almost) the same CI config and same .spec file setup.

Does anyone know if an OBS instance that builds SFOS ports can be independently hosted?

I know there are some services that I havent’ seen in e.g. Opensuse and the other way around (e.g. tar_scm vs tar_git) and that there are some repositories that provide prebuilt packages for ports.

Is there any thing that would make this unobtainable?

Possibly all components for recreating the SailfishOS-OBS can be obtained here, plus OBS (likely not a recent version), Docker and Django, which is needed for, e.g, Log in | Django site admin
I have no idea how to create a “Download on demand (dod)” repositories: Subprojects of sailfishos - SailfishOS Open Build Service

@lbt knows, because he maintains the SailfishOS-OBS and performs all these tasks.

1 Like

It is not necessary something that is argued in bad faith but in the intend that the support for older releases runs out.
If a user deliberately choose to stay on an old Sailfish OS version than after some time apps might not be compatible anymore, it is not bad faith to stop supporting older versions.
Not building an app using a target for each specific version isn’t necessarily an issue packages from older releases will still install but migration to updated OpenSSL versions or package compressions have to be taken into account.

Packages from 4.x should safely install on 4.4.x or 4.5.x, it is important to check stop releases for breaking issues.

It is important to provide good ssu configuration besides good obs project configuration.
I can’t talk with the OBS maintainers hat on as I’m not involved on that side but I think the points that have been brought up such as merging point releases seem like a good idea.

Privately for my own use I wrote this package to provide better SSU configs for the community OBS:

It is possible to extend it further to add repositories such as chum.

3 Likes

Hi @olf, I cant seem to be able to PM you so I’ll ask here. So if I understood correctly, we would need a Github premium account and a volunteer to integrate the webhooks/CI and triggers ? As an association we can benefit from the Github discount.

Sure you can, Jolla says it is absolutely simple and definitely not a bug. :stuck_out_tongue_winking_eye:

So if I understood correctly, we would need a Github premium account

I don’t see why and wrote the opposite:

… the “free tier / plan”, [is] currently … “just slow”, but the limits are almost impossible to hit.

and BTW

webhooks would become obsolete,

and a volunteer to integrate the webhooks/CI and triggers ?

That is quite some work, requires very good understanding of “GitHub actions” and Coderus’ SDK builder, plus how to properly design efficient CI pipelines and a meta-infrastructure which mimics rsp. maps the basic features of OBS to GitHub’s infrastructure. Note that I wrote that I believe all required pieces are there, but I only have a vague idea how to design something which does the job (which would be the first thing to evaluate: What exactly is “the job”?).

A single “volunteer” is very likely insufficient to develop and document this, plus to maintain it in then long run, because as soon as people start to rely on this, (s)he will be on vacation, ill, … (any other reason to be unavailable) when this direly requires maintenance. Note that this job can become quite stressful each time a new SailfishOS version is released.

Thus IMO this requires a team of at least three committed volunteers or somebody paid and equally committed.

HTH

1 Like

although I agree in principle, the Github actions can be made into a template shared on Github itself which makes that part very simple with @coderus images. Making that available as repositories is not much more than creating the requisite directories and filling them with rpms which could be accomplished with a simple webhook. I realize I’m simplifying, but for the sake of argument, the repository is nothing more than a web server with a service that collects rpms. I think I’ll do a proof of concept.

Having at least 2 volunteers in the loop does make sense, but we should be able to find more!

maybe of interest: openSUSE Events