I now know what I did wrong to cause the errors I got when trying to
perform a PR from Pagures site, and how to recover.

That’s great, I’m glad to hear it!

FWIW, having the git repositories hosted in GitHub doesn’t bother me a lot — I’d rather an free and open source solution, but many free / open source projects are hosted there, and git is git. But I’m concerned about issues, for two reasons. First, that’s tying us in to a non-portable service. That’s a risk. Second, it puts us in a position of saying that to get help with some things, users need a Fedora account and for others they need a GitHub account. That’s kind of confusing. I’d like to see some kind of two-way mirroring bot at minimum.

+1 here

Hosting code is easy. Pull-requests, issues and userbase are a different thing. GitHub doesn’t provide the easy export for any of those. So what is going to be a long term strategy to keep the project data and users in case service provider decides to change its policy for its free service or simply disappear?

Generally I understand the desire to make things easier and thus leaning towards tooling which gives you the initial comfort. But one of the reasons why we do Fedora is that we understand that comfort - is not all. There are other things and criteria which are important and need to be considered.

One of them - is being new, and forcing ourselves to get outside of our comfort zone to try new things. The other - is being responsible and caring about the big picture. We shouldn’t follow the next shiny thing around but should look into long-term consequences and effect of our decisions.

And while getting larger usebase and reach for the community is good, doing that by effectively selling our user base to a third party service which we have no control of - is not.

There are many ways to address the usability issues of Pagure. One is by actually addressing them. The other is look into alternatives, and there are many, not the GitHub alone.

No, I disagree almost entirely with this sentiment. It’s entirely subjective,
but I’ll respond point-by-point regardless…

Generally I understand the desire to make things easier and thus leaning
towards tooling which gives you the initial comfort. But one of the reasons
why we do Fedora is that we understand that comfort - is not all. There are
other things and criteria which are important and need to be considered.

You can certainly have a comfortable environment in Fedora, that’s one of the
main reasons that I do use Fedora (or, rather, my own Remix, Millennium).

One of them - is being new, and forcing ourselves to get outside of our
comfort zone to try new things.

I couldn’t disagree more. It’s true that Fedora has a lot of things that are
“new” and “force [people] outside of [their] comfort zone”, like Modules.
However, none of these things are inherently a good thing, certainly not
Modules, which is the first example which came to mind.

The other - is being responsible and caring
about the big picture. We shouldn’t follow the next shiny thing around but
should look into long-term consequences and effect of our decisions.

And while getting larger usebase and reach for the community is good, doing
that by effectively selling our user base to a third party service which we
have no control of - is not.

While this is really a contradiction of the previous point, I could not agree
more with this statement. We shouldn’t just rush to go to the popular “hip”
tool, but rather weigh the consequences and make an informed decision.

There are many ways to address the usability issues of Pagure. One is by
actually addressing them. The other is look into alternatives, and there
are many, not the GitHub alone.

Certainly, and this seems to be a common idea with users, which is definitely
a good thing. Pagure has great potential, as a service formed by users’ needs.
Even if it is decided that Pagure is not the “best” option, one of the many
alternatives that we could give a try has already been mentioned here, GitLab
CE.

While this is really a contradiction of the previous point

You are right. We are balancing between several different priorities which point to almost opposite directions trying to find the right spot: trying to be new, but to be stable enough, to be easy, but to be deep and flexible, to be comfortable but to be committed to our goals and principles.

And balancing is hard.

But that’s the point :slight_smile:

If the decision were to go with GitHub, there maybe just be automated backups of issues via the web API. Assuming that there’s a bot linking both Fedora and GitHub accounts together, it’d be easy to move that around.

FWIW CPython had a rather successful GitHub migration, and they use a bot to e.g. check the CLA signature and ensure the BPO and GitHub accounts are linked.

Even with this kind of backup, it is still essentially a lock-in on GitHub environment, including CI, project structure, tagging, groups, permissions, roadmaps,… whatever else GitHub provides. And you still bring your user base to GitHub, rather than bring GitHub user base to you.

If you look how Openstack does it, they do it the opposite way: they mirror Git repos to GitHub, which provides a nice overview, full text search, diffs, history and discoverability. But they keep these GitHub repositories in a read only mode. And they keep the development, pull-requests, issues, CI and project management outside of it.

Because these are the things which grow almost uncontrollably on top of initial code base you have started. Some small bots to do bug transitions, tiny scripts to perform validations, configuration here and there to do your notifications and some reporting tools, which do analysis for you… They grow to become enormous set of features, custom tweaks and adjustments.

These things are extremely hard to migrate once they are set up and configured. And this is exactly what ties you to a certain infrastructure forever.

1 Like

Fedora and SuSE are tied to .rpm forever, Debian and Ubuntu are tied to .deb forever. Both seem to be doing just fine. So do Gentoo and Arch. :wink:

Seriously, there are things Fedora can and should re-invent. I think Silverblue is one of them - a workstation for container native development.

I don’t think CI/CD/version control/issue tracking/mini-Kanban source development is one of them unless Fedora can earn revenue because “the Fedora way” has a compelling advantage over GitHub’s to paying customers. If IBM / Red Hat want to offer Pagure to customers, let them say so. Otherwise, let’s move to GitHub, or have a bake-off between GitHub-, Altassian- and GitLab-hosted repositories.

3 Likes

Sorry, but I can not get your logic.

First of all there is a huge difference between building a project on top of a certain open source technology, and locking in to a proprietary third-party service provider. This kind of analogy simply doesn’t work.

Secondly, your revenue argument is not applicable to this discussion. Fedora is not built for revenue, it is built for open-source innovation. And this innovation is not limited to the Silverblue effort.

While the infrastructure resources we use are less hyped maybe, and don’t always look as shiny, but we do things which no one have done before. And being the driver for adoption of open-source tooling on the infrastructure level is as important as taking over the developer workstation.

And we are not reinventing things here, we are creating new.

I would rather see some understanding from community members and maybe thoughts and ideas how we can improve the situation.

For example Pagure developers can prioritize the issues for their roadmap, and generic Fedora audience including Silverblue SIG can help with promoting, writing those tutorials, onboarding newcomers and building a healthy community around Pagure.

Or at least Gitlab if it comes to this.

The other point is that generally we should start actively searching for contributors to Fedora Infra. We have many interesting tasks there, for both juniors and seniors alike. With technologies like Ansible and Kubernetes and with that scale we have, we do a lot of unique and quite fancy infra stuff, which we don’t usually brag about. And we should probably start doing it :slight_smile:

So please remember that we are the big platform, and big community united by common values. And if slight annoyance in your personal workflow can help others to build a better thing and avoid a proprietary lock in, may be it is worth it.

1 Like

I would say that you would be hard pressed to find anyone in the Fedora community of users who desires to compromise the integrity of Fedora through association with a third party proprietary solution for hosting of fedora software/other repositories, myself included. For what it is worth, I agree it is better to try to work through the problems and at the very least try to understand them. In this case Pagure, or not depending on the direction decided, maybe does come as a test of Open Source virtue and should be the impetus to drive more community involvement to address the need.

Point of fact in regarding my issues I ran into with Pagure, I wasn’t looking for a comfort zone, i was trying to solve a problem which at the time I was certain I was the creator of.

I agree 100% with that statement. I am quite comfortable using Fedora, and getting comfortable with Silverblue.

The single most common question I get asked by people I know or have encountered, who are struggling over the decision to try the (Fedora) OS is about the initial learning curve and the leap (for them) out of their comfort zone (which is commonly Windows). This also seems to be one of their compelling reasons for using Fedora as a desktop. The newness, and freedom of choice, it can be overwhelming for some.

Indeed, there are. But which one to choose, or just stay and address the shortcomings with Pagure? Two questions with an if conditional, certainly something a handful of programmers can resolve over coffee.

1 Like

Well, it sounds like you should get someone bragging about it and exposing the interesting tasks to the community to get engagement.

+1 here. One of the “selling points” for me as a user of Fedora was that I was getting a RedHat Linux workstation without having to update my RedHat Linux version I bought.
The workstation is the face of Fedora to most users I would bet.

I don’t think CI/CD/version control/issue tracking/mini-Kanban source development is one of them unless Fedora can earn revenue because “the Fedora way” has a compelling advantage over GitHub’s to paying customers. If IBM / Red Hat want to offer Pagure to customers, let them say so. Otherwise, let’s move to GitHub, or have a bake-off between GitHub-, Altassian- and GitLab-hosted repositories.

As for my part in this Pagure/Github/GitLab debate, I merely asked in the beginning for some assistance with an issue I was having with Pagure commits. I was the creator of my issue, and so wanted to resolve it. In the end, I was more the problem than Pagure (which was my initial POV on it anyway), and am in the process of getting to the “happy state” with my fork of the Silverblue docs repo. It does seem to me that this discussion has been going on within Fedora, aside from the issues I encountered when trying to contribute to Silverblue doc’s, around the suitability of Pagure for the task it does. That is not a bad thing though, since if my little problem was able to balloon this into a discussion of this magnitude, there must be underlying issues that need addressing around the use of Pagure.

1 Like

I don’t see why there is no ‘move to gitlab’ poll option. I’d be fine with moving from pagure to gitlab, if the current state of pagure is sufficiently problematic for the project and the problems aren’t likely to be resolved sufficiently in the short term (although it’d be nice to see some contributions to pagure instead - it’s not a hard codebase to work on, when I run into something in it that annoys me, I usually try and fix it). Moving to github seems less desirable.

2 Likes

I have repos on all three of the main public repo services - GitHub, BitBucket and GitLab. For my workflow, they’re identical and I mostly use BitBucket and GitLab just because they have free private repos.

The main reasons to prefer GitHub over the other two for a public repo are third party integrations and discoverability. A surprising number of third-party services only support GitHub, and if you want to be found, you’ll do better on GitHub.

1 Like

Neither of those seems particularly relevant to this particular repo.

All I can say is I feel very conflicted about this. I personally am here because the principles behind Free Software motivate me. This essay by Benjamin Mako Hill is even more relevant 8 years later. But I just can’t imagine trying to take even upstream projects I created off Github right now; here’s my blog on the ostree move to Github - although that predates the GNOME Gitlab move.

I think the way Pagure stores issues in git is very cool; the comment history around pull requests and issues is almost as important as git log for long term maintenance.

1 Like

+1 here.

Pagure is not perfect yet, but without proper issues reported it will not evolve.

1 Like

Making a decision like this on a sample of just 61 votes (at the moment, 8h remaining), with a vote this close, seems a little bit excessive.

Fedora ought to mirror Flathub on Fedora infrastructure, contributing changes upstream as needed.

The population of people who will be directly impacted by a change like this (outside of political/philosophical reasons) isn’t incredibly large to begin with, so I’d say that isn’t really that small of a sample.

3 Likes

Considering this thread was used more for a general open source philosophy and principles discussion than Silverblue contributions and the practicalities of it, 61 votes with 57% for GitHub (or Gitlab) is a strong outcome.

After New Year’s we will start the GitHub vs Gitlab vote and act accordingly. Thanks everyone for the discussion! Silverblue is still a small community that needs more contributions, not only from those within Fedora who find time to contribute to Silverblue as well. Telling this community to just contribute to Pagure simply does not work.

We can all work towards a Fedora-hosted Gitlab solution but until then the Silverblue community will decide on whether to go for hosted GitHub or hosted Gitlab in the next vote. Until a Fedora-hosted Gitlab version is available, we will then definitely use that new home that is decided on via the next vote to improve Silverblue and grow our userbase from there.

1 Like