@mariusor@metalhead.club
@mariusor@metalhead.club avatar

mariusor

@mariusor@metalhead.club

Mostly a programmer.

Implementing #ActivityPub in the #Go programming language.

Current projects:

  • #GoActivityPub - a library to use ActivityPub in Go.

  • #FedBOX - a generic ActivityPub service supporting the client to server API.

  • #brutalinks - a link aggregator inspired by (old) reddit, hacker news and lobste.rs built on top of FedBOX.

  • #oni - a single user ActivityPub server with minimal fuss.

My posts are mostly related to ActivityPub and web development.

This profile is from a federated server and may be incomplete. Browse more on the original instance.

wjmaggos, (edited ) to fediverse
@wjmaggos@liberal.city avatar

Can be made to work with as well as ? Then podcatchers could work like a client, allowing us to interact directly via comments, favorites and spreading around the best episodes via boosts.

update: it exists but no podcatcher fully supports it yet.

https://cosocial.ca/@evan/112106150061260659

mariusor,
@mariusor@metalhead.club avatar

@errhead @wjmaggos @agates I think Funkwhale has the most Audio centric UI. But it's not targeted specifically at podcasts.

https://www.funkwhale.audio/

mariusor,
@mariusor@metalhead.club avatar

@agates probably it would be useful for the people in the back to state who is the "us" that you're representing. And also what does "has chosen not to work with" actually mean?

mariusor,
@mariusor@metalhead.club avatar

@agates thank you.

drewdevault, to random
@drewdevault@fosstodon.org avatar

"Copyleft is less free than permissive licenses because permissive licenses allow you to make proprietary forks of free software" is a worldview that just straight-up makes no sense at all

mariusor,
@mariusor@metalhead.club avatar

@drewdevault your distinction makes perfect sense, but I think that most people reason about the permissiveness of licenses as sets of things which are allowed/disallowed.

And by that metric the permissive licenses include all the things copyleft ones do, plus more, therefore "more free".

mariusor, to cycling
@mariusor@metalhead.club avatar

I keep forgetting how many Belgians are assholes towards Matthieu Van Der Poel, he got beer thrown at him again and the boos are almost drowning the cheers. Sigh.

mariusor, to fediverse
@mariusor@metalhead.club avatar

Improved the webfinger handler for the reference implementation to support finding https:// resources alongside acct: double @ ones used by the larger fediverse.

hko, (edited ) to rust
@hko@fosstodon.org avatar

The ecosystem gets a number of things right. Among the ones I appreciate a lot is strong encouragement of canonical formatting with .

Canonical formatting, enforced by CI, makes it much harder to e.g. strategically hide a stray dot in source code in a way that is easy to overlook - and to miss its semantical impact.

mariusor,
@mariusor@metalhead.club avatar

@hko would that work for something equivalent to the case you mention, where the code is obfuscated inside a cmake check?

mariusor,
@mariusor@metalhead.club avatar

@j0057 indeed probably the ecosystem of Rust + Cargo allows for a lot less suspicious code like the C + CMake example.

@hko

mattb, to random
@mattb@hachyderm.io avatar

Punk really was shit. I can understand liking it if you have fond associations with your youth, but otherwise I don't get it. Musically it's completely without merit. Uniquely without merit, I think. I'm struggling to think of any other mainstream music genre from any age which is so uniformly complete excrement.

mariusor,
@mariusor@metalhead.club avatar

@mattb it's not about the music.

mariusor, to random
@mariusor@metalhead.club avatar
vaurora, to random
@vaurora@wandering.shop avatar

Weird question: is it possible to make a commit that does not change anything except the authorship of some specific lines of code? I am looking for an easy way to fix errors in credit for commits when you can't just rewrite the repo history

mariusor,
@mariusor@metalhead.club avatar

@vaurora changing authorship changes the commit id, so this kind of change would rewrite history.

omz13, to fediverse
@omz13@mastodon.social avatar

I’m making my own server in . Today, a big achievement: received a Follow, sent an Accept this Follow which was accepted. That might not sound like much, but behind the scenes there were so parts needed to get this to work: WebFinger, verifying http messages, parsing Activity Streams objects, processing the request, generating and signing the http response.

mariusor,
@mariusor@metalhead.club avatar

@omz13 I don't know if you're interested but I made some libraries to help with all of those things. :) https://github.com/go-ap

mattb, to golang
@mattb@hachyderm.io avatar

folks, can anybody tell me why this doesn't do what I expect: https://go.dev/play/p/VQB02JKAaNG

tl;dr errors.Is(MyError{}, MyError{}) returns false 🤔

mariusor,
@mariusor@metalhead.club avatar

@mattb this error type is not Comparable as the reflect package defines it.

Because of that the errors themselves can not be compared with equality, which is what errors.Is() uses.

mariusor,
@mariusor@metalhead.club avatar

> and usually is a smell.
@bmarinov says who?

@mattb

mariusor,
@mariusor@metalhead.club avatar

@mattb a possible solution is to implement the Is(error) bool interface with custom code that checks that equality for such a custom struct (I imagine by checking for the same http error code or something)

mariusor,
@mariusor@metalhead.club avatar

@bmarinov what do you expect when you make general unsubstantiated statements that "well established pattern is a smell". You need to provide some reasoning if you want anyone to take your words seriously.

@mattb

mariusor,
@mariusor@metalhead.club avatar

@mattb I can't be sure 100% of what I'm going to say next, but I think your misunderstanding stems from "errors are values" paradigm that Go uses.

And since Go can't do equality comparison on structs, you need to provide your own Is(error) bool to supplement that logic.

The unwrap mechanism (which might steer you the wrong direction) is orthogonal to what errors.Is actually does, which is the most basic equal comparison, which was the mechanism Go used since forever for error checks.

mariusor,
@mariusor@metalhead.club avatar

@christopher I'm embarrassed to say that: today I learned. (So thanx)

I guess I projected my C bias on Go and just assumed equality on structs does not behave as simple as this. :)

I also don't remember any official documentation mentioning this behaviour, but maybe I just glossed over it.

@mattb

dansup, to fediverse
@dansup@mastodon.social avatar

Loops + c2s would be a perfect match, few activitypub implementations support the client to server model.

🤔

mariusor,
@mariusor@metalhead.club avatar

@jenniferplusplus

curl -H"Accept: application/json" https://releases.bruta.link/icon

Not very elegant but it does the job.

@steve @benpate @dansup

mariusor,
@mariusor@metalhead.club avatar

@jenniferplusplus ie, that's an Image object created with a plain Create activity.

@steve @benpate @dansup

mariusor,
@mariusor@metalhead.club avatar

@jenniferplusplus the difference between multipart/form-data and application/activity+json is illusory.

@steve @benpate @dansup

mariusor,
@mariusor@metalhead.club avatar

@jenniferplusplus sorry, my whole thread here is not for Daniel, he has me on mute for a while. It's for the naysayers.

@steve @benpate @dansup

mariusor,
@mariusor@metalhead.club avatar

@jenniferplusplus @steve @benpate

PS. all this dissmissivness is a little bit hurtful I have to admit.

I'm trying to show you guys actual things done with C2S and you keep shutting me down with "how about this?" counter examples.

I would have hoped for a little more understanding and empathy and less of collective throwing of hands in the air.

I'll see myself out. :)

mariusor,
@mariusor@metalhead.club avatar

@steve you might be right, I might have been dismissive of your comments and I apologise if I started it. :D

I think my position stems from the impression that I get from comments similar to yours, that C2S is not really under consideration due to its perceived issues, and that the implementers automatically default to anything else. That's probably not the case always.

I'll try to keep that in check for the future and be less defensive. ☮️

@jenniferplusplus @benpate

mariusor, to cycling
@mariusor@metalhead.club avatar

I'm not sure how I was able to commute and ride centuries on a 50x15 fixie for more than 5 years. Just took it out for a 15Km loop and in the wind I had my socks knocked off.

mariusor,
@mariusor@metalhead.club avatar

Well, after about a week I was able to do 50Km, around 33Km/h. On the same route with the gravel bike I usually manage a measly ~30Km/h. I get a 10% improvement due to thin tires. Who knew? :D

I wonder what I can achieve if I change the gearing to a more manageable 50/17 where I can get into the 80-90 rpm range more frequently.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • JUstTest
  • slotface
  • GTA5RPClips
  • osvaldo12
  • everett
  • khanakhh
  • rosin
  • InstantRegret
  • DreamBathrooms
  • thenastyranch
  • magazineikmin
  • Youngstown
  • mdbf
  • ngwrru68w68
  • provamag3
  • kavyap
  • modclub
  • cisconetworking
  • cubers
  • anitta
  • Leos
  • Durango
  • ethstaker
  • normalnudes
  • tester
  • megavids
  • tacticalgear
  • lostlight
  • All magazines