this post was submitted on 15 Jun 2023
778 points (99.9% liked)

/kbin meta

639 readers
1 users here now

Magazine dedicated to discussions about the kbin itself. Provide feedback, ask questions, suggest improvements, and engage in conversations related to the platform organization, policies, features, and community dynamics. ---- * Roadmap 2023 * m/kbinDevlog * m/kbinDesign

founded 1 year ago
 

I think you should see something.

Like I mentioned many time before, this isn't my first attempt at creating an aggregator. Years ago, I built something similar, and back then I drew a lot of inspiration from Postmill. This time, to avoid starting from scratch, I get some elements from my old snippets. Originally, kbin was meant to be a project just for me and a few friends, so I didn't attribute the origin authors. That's not an excuse, though โ€” I should have done it right away when the project became public on git. I have a point in my roadmap called "Preparing a repository for contributors," where I allocated a significant amount of time to educate myself about licenses, attributions, and so on. Unfortunately, everything unfolded in the wrong order.

https://codeberg.org/Kbin/kbin-core/issues/196

I think Emma is right. Since I share my small successes with you, I also want to be transparent about my failures and mistakes. I will push the proper attributions to the repository today along with some critical fixes.

To avoid reinventing the wheel, I took some code used in federation from Pixelfed as well. Essentially, there are two projects two projects will be marked. However, I have never concealed this fact:

https://kbin.social/m/random/p/254858/The-real-reason-why-I-haven-t-published-the-pixelfed-app#post-comment-438684

I mean that I'm not a guy who wants to steal your code. It's obvious that someone will take a look at the code of a project that is very similar to theirs. Sometimes, I just become terribly messy when I have to do many things at once. This lesson will definitely teach me to prioritize tasks better.

In the end, I can only promise that once everything settles down and I manage to extract a library for ActivityPub, I will revisit the Postmill repository, this time with a pull request proposal.

You should definitely check it out.

https://postmill.xyz/ - Project page
https://raddle.me/ - Postmill instance
https://pixelfed.org/ - Of course, everyone here is familiar with this one ;)

PS. the website should be running a bit faster. I will talk about it next time.

you are viewing a single comment's thread
view the rest of the comments
[โ€“] [email protected] 8 points 1 year ago* (last edited 1 year ago)

Oh this is no big deal at all (because your code is already open source)! I've dealt with similar situations at businesses before and it's just a matter of including the correct licenses and annotating the code where appropriate.

Let's say you used some AGPLv3 (strongest copyleft license) licensed code and you're not distributing your code under that same license. How do you use the AGPLv3 code in your code even though you're using say, Apache 2.0 license? The simplest way is to move that AGPLv3 licensed code into it's own folder/file(s) and put that license in there along with it. Also make sure you add a note about this in your LICENSE file and indicate that if someone includes that specific code in their own implementation they'll need to adhere to the AGPLv3.

Some FOSS licenses are incompatible with each other but I don't think you have that issue. For stuff like the Zip license, Apache license, MIT, and similar licenses where you must "give credit" just add comments surrounding that code saying where it came from, what license it uses, and also include references to it in the LICENSE file.

Loads of FOSS repos have complex stuff like this! It's a bit tedious for sure but it's not rocket science. You just have to do your homework and basically, "write everything down" (giving everyone credit and paying close attention to special cases like the AGPLv3).