I spent the whole night debugging ForgeFed JSON unmarshalling internals for , and it now works! Only problem is that I'm so tired I don't want to touch JSON marshalling and unmarshalling ever again (or at least for the next few days).

Oops I broke my testing instance and now the /explore/repos page is giving a 500 error... 🥴

Now there's a ghost repo on my instance and even the admin UI is giving a 500 so idk how to delete it...

This is why you NEED to have backups if you're running an experimental Gitea federation build.

I wrote a blog post about various myths: ta180m.exozy.me/posts/forge-fe

As usual, feel free to ask me questions about forge or federation!

Remote users in federated finally have profile pictures! Example: git.exozy.me/ta180m@social.exo

I'll be live-streaming myself working on the UI in about one hour. As usual, the stream is at tube.exozy.me/w/oRAXtmt8hoqMSK

Technical details about the UI implementation: gitea.com/Ta180m/gitea/issues/

I gave a short presentation today at the meetup about federation: cloud.forgefriends.org/s/JZyKD

The markdown source for the slides can be found at my Gitea fork's wiki: gitea.com/Ta180m/gitea/wiki/Ju

(By the way: markdown + beamer + pandoc is a fantastic combination for slides, and it makes me never want to make a LaTeX beamer or LibreOffice Impress slideshow ever again)

If you're an early adopter that would like to try running *unstable* builds, there's now a guide here: gitea.com/Ta180m/gitea/wiki/Ru

Now that my server has 100x more upload bandwidth, I'm going to try streaming development again!

Hopefully it'll be way smoother today! The stream will start in about 3 hours and will use the same link as always: tube.exozy.me/w/oRAXtmt8hoqMSK

My HTTP signatures PR was finally merged 🎉


It doesn't actually do much but it's one step closer to ! Next up is getting features like federated following merged.

If you're interested in contributing to , I updated an old comment I wrote: github.com/go-gitea/gitea/issu

The two most important links are:

- gitea.com/Ta180m/gitea/wiki/Us for learning ActivityPub and ForgeFed

- The big task list tracker: gitea.com/Ta180m/gitea/issues/

I'm going to try streaming myself working on on PeerTube: tube.exozy.me/w/oRAXtmt8hoqMSK

Feel free to ask questions in the chat about Gitea federation development! In today's stream, I'll be working on implementing federated starring by first figuring out how to handle remote repositories in the database.

This is my first time in 6 months streaming on PeerTube, so I hope my setup still works...

I wrote another blog post about and the recent Gitea <-> Mastodon federation milestone.

It's nontechnical so you don't have to know anything about ActivityPub to read it!


I finally figured out why is rejecting Mastodon's HTTP signatures after *only* 4 hours of debugging!!


Using "replace" in go.mod to replace a library with some local code is my secret weapon when debugging, since then I can add tons of fmt.Println()s into the modules that Gitea uses.


<-> Mastodon federated following is looking good now! 🎉

If you want to try it out, go to YOURINSTANCE.com/authorize_int
(or whatever the remote interaction URL is for your ActivityPub server)



I finally followed my account from Mastodon!!!


now federates with my experimental ActivityPub implementation!


I still need to figure out why Mastodon refuses to federate with Gitea, but it's Mastodon so what do you expect?

I haven't posted about in a while so here's what I did this morning:
- I wrote a federation task list: gitea.com/Ta180m/gitea/issues/
- I cleaned up and added descriptions for all the useful links: gitea.com/Ta180m/gitea/wiki/Us

I migrated my development repo off of GitHub to a new location: gitea.com/Ta180m/gitea 🎉

Since there's some confusion about the current status a , I made an issue for tracking it: github.com/Ta180m/gitea/issues

If you're interested in contributing to , this is a great description of one of our current technical issues: gitea.com/gitea/go-fed-activit

Show older

The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!