Matthew Miller, leder af Fedora-projektet, har præsenteret et initiativ til at bevæge sig væk fra brugen af den egenudviklede samarbejdsplatform Pagure. Som erstatning har Fedora Councils styrelse valgt platformen Forgejo, men før godkendelsen af overgangen til Forgejo har de besluttet at afholde en offentlig diskussion om deres valg og tage hensyn til fællesskabets mening. Den endelige afstemning vil finde sted om 2 uger, og indtil da kan alle dele deres tanker om det træfne valg.
Den nuværende egenudviklede platform Pagure er forældet, kræver store ressourcer til vedligeholdelse, er i stagnation og har ikke fået bred udbredelse uden for Fedora. I 2020 blev der allerede gjort et forsøg på at erstatte Pagure med GitLab, men dette initiativ kom ikke videre end diskussionerne. I indeværende år, efter vurdering af eksisterende samarbejdsplatforme, blev det konkluderet, at projektet har brug for en åben løsning, der er egnet til deployment på egne servere. GitLab Community Edition og Forgejo svarer bedst til de stillede kriterier.
Platformene GitLab og Forgejo har begge fordele og ulemper, og begge kræver visse tilpasninger for at genskabe funktionaliteten af Dist Git-platformen baseret på Pagure, som anvendes ved udviklingen af Fedora Linux. Især i den nye platform skal integration med de tilknyttede tjenester i projektet, såsom Bodhi, Fedora CI, COPR, Fedpkg, Hotness, Fedora Notifications, Toddlers, Fedora Messaging, Monitor Gating, Release Engineering Scripts, Fedora Packagers og Packit, sikres.
Efter at have vejet alle argumenter valgte medlemmerne af styrelsen Forgejo som den foretrukne platform, da den udvikles af et uafhængigt fællesskab, mens GitLab er et produkt fra et kommercielt selskab, der udvikles i henhold til en Open Core-model, hvor nogle avancerede funktioner, herunder dem der er nødvendige i Fedora, kun er tilgængelige i det kommercielle produkt. En yderligere bekymring ved valget var, at GitLabs politik med tiden kunne ændre sig, hvilket kunne gøre projektet mindre åbent. Et yderligere argument for Forgejo var, at Go-sproget og koden fra Forgejo viste sig at være mere velkendte for teamet, der står for infrastrukturen i Fedora, end Ruby-sproget, der anvendes i GitLab.
Forgejo-platformen er designet til at implementere et system til samarbejde om Git-repositorier, der minder om de opgaver, der løses af GitHub, Bitbucket og Gitlab. Forgejo er en fork af Gitea-projektet, som igen blev afledt fra Gogs-platformen. Skiftet til Forgejo skete i 2022 efter forsøg på kommercialisering af Gitea og overdragelse af ledelsen til en kommerciel virksomhed. I forbindelse med Forgejo-projektet har uafhængige udviklere forsøgt at bevare de tidligere principper for uafhængig ledelse og kontrol fra fællesskabet. Koden til projektet er skrevet på Go-sproget. Siden udgivelsen af version 9.0 er koden for Forgejo distribueret under GPLv3+-licensen, mens den gamle kode forbliver under MIT-licensen.
Nøglefunktionerne ved Forgejo-platformen er lavt ressourceforbrug (kan anvendes på et Raspberry Pi-kort eller i billige VPS) og en simpel installationsproces. Standardfunktioner til projektarbejde tilbydes, såsom opgavestyring, fejlopsporing (issues), pull-anmodninger, wiki, værktøjer til koordinering af udviklergrupper, forberedelse af udgivelser, automatisering af pakkeplacering i repositorier, adgangsrettighedsstyring, integration med platforme til kontinuerlig integration, kode-søgning, autentificering via LDAP og OAuth, adgang til repositories via SSH og HTTP/HTTPS-protokoller, integration af webhooks for Slack, Discord og andre tjenester, understøttelse af Git-hooks og Git LFS, samt værktøjer til migrering og spejling af repositorier. Muligheden for at bruge ActivityPub-protokollen til at samle separate servere udviklere i et fødereret netværk.
Kilde: opennet.ru
