this post was submitted on 16 Oct 2024
292 points (99.3% liked)

Linux

48624 readers
1671 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

Forgejo is a self-hosted lightweight software forge. Easy to install and low maintenance, it just does the job.

Forgejo v9.0 is the first version to be released under a copyleft license, after a year of discussions. Among the motivations for this change is the realization that a pattern emerged over the years, exemplified by Redis, CockroachDB, Terraform and many others. They turned proprietary because people chose their own financial gain over the interest of the general public. Forgejo admins no longer have to worry about this sword of Damocles: relicensing it as a proprietary software is not allowed.

The removal of the go-git backend is part of a larger effort to make Forgejo easier to maintain, more robust and even smaller than it already is (~100MB). When presented with go-git as an alternative to Git, a Forgejo admin may overlook that it has less features and a history of corrupting repositories. It would have been possible to work on documentation and new tests to ensure administrators do not run into these pitfalls, but the effort would have been out of proportion compared to the benefits it provides.

The Forgejo localization community was created early 2024 with the ambitious goal of gaining enough momentum to sustain a long term effort. A daunting task considering there are over 5,000 strings to translate, verify and improve. There has been many calls for help in the past and the community keeps growing steadily. Fortunately, the translation hackathon (translathon) organized by Codeberg in October was exceptional. It attracted an unprecedented number of participants who improved or created thousands of translations.

top 50 comments
sorted by: hot top controversial new old
[–] Quackdoc 36 points 2 months ago* (last edited 2 months ago) (2 children)

Was this the git hosting service that wanted to have things like federated (in this case im talking about cross instance) cloning, searching and issue hosting?

I may be mistaken in general but iirc there was a hosting service like this that I found super interesting, especially in light of things like DMCA abuse against projects hosted on github and gitlab.

EDIT: seems like it is one of two, forgefed is a protocol it will use, activitypub one, very interesting.

[–] [email protected] 31 points 2 months ago (1 children)

Yes it is, federation work is ongoing. I think stars are in beta.

[–] Quackdoc 13 points 2 months ago

very exciting indeed. can't wait to try it out when federated tickets and PRs are a thing.

[–] [email protected] 1 points 2 months ago (2 children)

You do realize git is federated right? That's how it came about.

As for Forgejo itself they are working on instance to instance federation. I think it is Activity pub based so theoretically it could be compatible with Lemmy.

[–] Quackdoc 6 points 2 months ago

ofc I do, that is why I explicitly mentioned the features I was talking about...

[–] [email protected] 3 points 2 months ago

Federated in this case means Fediverse integration.

[–] [email protected] 21 points 2 months ago* (last edited 2 months ago) (6 children)

Has anyone have personal experience moving off of gitea and using forgejo

I'd love to do this but it's hard to find any written experiences yet.

;Edit: I will probably just try it

[–] JASN_DE 27 points 2 months ago (1 children)

Docker Gitea to Docker Forgejo was basically using a different image and pointing it to the existing database. Not sure if and when both will be different enough for that to no longer work. But I also only use it as a docker compose storage repository. No idea about automation etc.

[–] [email protected] 5 points 2 months ago

Cool, I will spend time on it. From what I see, v24 is when gitea and forgejo went their own routes.

[–] [email protected] 17 points 2 months ago (1 children)

I don't think I did more than spinning up the Forgejo container. Using the same db container and everything.

[–] [email protected] 2 points 2 months ago (2 children)

Cool, did you use the built-in CI CD before or after the migration. Any trouble there?

[–] [email protected] 3 points 2 months ago

No CI CD, sorry. Just like @JASN_[email protected] I use it purely to store/archive

[–] [email protected] 8 points 2 months ago

I followed the directions and it worked. No issues and no regret.

[–] [email protected] 7 points 2 months ago (1 children)

For me, it was literally as easy as (this is basically my upgrade process too):

`

systemctl stop gitea.service

cd /home/git/

wget https://codeberg.org/forgejo/forgejo/releases/download/v8.0.3/forgejo-8.0.3-linux-amd64

mv forgejo-* gitea

chmod +x gitea

systemctl start gitea.service

`

I did it soon after the "split up" though, but it was super easy since they were still basically the same applications.

Make backups, update the above to use your paths and the new download link you should be good to go. Mine is in a VM , so I was willing to just YOLO and give it a go since I could easily roll back.

sorry for the formatting. on my phone and did my best!

[–] [email protected] 1 points 2 months ago (1 children)

This gives me a confidence boost. I don't have too many repos too. Thank you.

[–] [email protected] 1 points 2 months ago

You're Welcome! An extra safety measure might be to do a clone on all your repos to ensure you've got a local copy of them all and absolute worst case you'll have a couple of levels of backup plans, but up until pretty recently they were pretty much the same app just re-skinned, so, I think you'll be fine.

[–] [email protected] 6 points 2 months ago* (last edited 2 months ago)

Check their website for migration info. There are some caveats in special circumstances but most people can just change the docker image from gitea to forgejo.

I did exactly that with no issues.

[–] conrad82 4 points 2 months ago

if i remember correctly, i just replaced gitea with forgejo for image: in my docker-compose, and it just worked

it was a couple of versions back, so i don't know if that still works

[–] [email protected] 11 points 2 months ago (2 children)

I know they have the phonetic spelling of the word in the repo but I still don't know how to pronounce forgejo

[–] [email protected] 13 points 2 months ago

I don't know how to read the phonetics but they're going for forĝejo which is for-jey-o, so I'd imagine that's how it's pronounced.

[–] asap 8 points 2 months ago (1 children)
[–] [email protected] 2 points 2 months ago

that's a really good way to remember it, thanks!

[–] flubba86 9 points 2 months ago* (last edited 1 month ago)

How long does it take for the new features in Forgejo to appear in Codeberg? I suppose it's possible they're already there.

Edit: Codeberg is still on v8.0.3-53, but code.forgejo.org is on v9.0.

Edit2: Codeberg is now on 9.0 too.

[–] [email protected] 8 points 2 months ago

Any idea how forgejo compares to radicle?

I'm trying to decide what to install on my home server. I want something easy to start with but reasonably extensible and federated would be nice

[–] ouch 7 points 2 months ago (1 children)

Is there a good summary of Gitea/Forgejo background somewhere?

[–] [email protected] 1 points 2 months ago

Forgejo started as a fork when Gitea became a commercial company with unknown intentions

[–] [email protected] 2 points 2 months ago (2 children)

I'm sorry, overlook corrupting repositories? If I'm going to be trusting pretty much everything I ever create to a platform it better be rock solid

[–] [email protected] 12 points 2 months ago (2 children)

Well, aren't you glad they're removing go-git then!

load more comments (2 replies)
[–] [email protected] 1 points 1 month ago

To be fair, they supported two different git backends, one of them being go-git which was the one corrupting repositories. However, it was never enabled by default, you specifically had to build Forgejo with a specific tag to instead use that as the backend. If you just built normally or pulled ready-made containers or bins then it was always the default git backend.

[–] [email protected] 2 points 2 months ago (2 children)

Ah, nice. Had been experimenting with using my Raspberry Pi 3B as my home Git server for all my personal projects - easy sync between my laptop and desktop, and another backup for the the stuff that I'd been working on.

Tried running Gitea on it to start with, but it's a bit too heavy for a device like that. Forgejo runs perfectly, and has almost exactly the same, "very Github inspired" interface. Time to run some updates...

[–] qaz 8 points 2 months ago (3 children)

It's interesting that Forgejo ran better than Gitea considering it's a fork.

[–] Quackdoc 3 points 2 months ago

it was forked a while ago now though so the code bases can be quite different.

[–] [email protected] 2 points 2 months ago

Yeah. Doesn't take much optimising of disk writes to make things run much better on a Pi; they're quite capable machines as long as disk i/o isn't your limiting factor. Presumably the devs have been doing some tidying up.

[–] [email protected] 1 points 2 months ago

Forgejo ran better than Gitea considering it’s a fork.

Only a master of Evil, Darth.

[–] [email protected] 1 points 2 months ago (1 children)

Do you use it for anything other than syncing code? Currently I'm using plain SSH sync for all my personal git repos, and I'm not sure if there'd be any advantage in switching to Forgejo.

[–] [email protected] 2 points 2 months ago

My workplace is a strictly BitBucket shop, was interested in expanding my skillset a little, experiment with different workflows. Was using it as a fancy 'todo' list - you can raise tickets in various categories - to remind myself what I was wanting to do next in the game I was writing. It's a bit easier to compare diffs and things in a browser when you've been working on several machines in different libraries than it is in the CLI.

Short answer: bit of timesaving and nice-to-haves, but nothing that you can't do with the command line and ssh. But it's free, so there's no downside.

load more comments
view more: next ›