Open Source Software Community - it's about ethics in Code of Conducts

  • Want to keep track of this thread?
    Accounts can bookmark posts, watch threads for updates, and jump back to where you stopped reading.
    Create account

A new potential legal grey area for ai coding. This project takes a gpl project and releases it as an mit project. But uses ai to take the original, and create new code. At least that's the goal.

Here's the repo
Cut-and-dry case of license laundering. No reason to change the license to MIT if this was supposed to be bugfix/performance refactor. Edit: all discussions on GitHub are being closed as "too heated". Classic.

This is why I don't release anything even under AGPLv3 because it's way too easy to steal and be unrightfully enriched this way. I hope he gets sued into the dirt.
 
How hard is it to remember
dd if=file.iso of=/dev/disk/by-id/usb-crappy-flash-drive bs=1M oflag=direct status=progress
And it doesn't work half the time in my experience, and for some reason is godawfully slow. I mentioned dd in my post and how unsatisfied I was with its performance (even though something that old should be completely reliable).
 
I see people in this thread preferring Guix to Nix because of trannies or something
I was just mentioning trannies because its funny, the actual contention is that NixOS has utter dogshit for documentation, but if you can put up with the GNUism of running info guix, you get a very high quality manual that details all you could reasonably need to get your teeth into the system itself. NixOS's documentation is notoriously bad from what i've heard and experienced.
 
I suppose that's a fine solution if you don't intend on people eventually using the project. Outside of a few you personally know.
It's a solution I wish I didn't have to make use of. Open source has made my life easier.

But if I have to see this smug homo grinning back at me from behind a dicks-in-my-ass-please permissive license on something I wrote:

cocksmoking_faggot.png

I'm going Nasim twice over whatever subversive little hive this faggot slinks around in.
 
And it doesn't work half the time in my experience, and for some reason is godawfully slow. I mentioned dd in my post and how unsatisfied I was with its performance (even though something that old should be completely reliable).
I just cat to the drive. Its as fast as I've ever seen dd go, but you don't have to mess around with bs=.

I don't think I've ever had either not work properly provided I did the command correctly. The only times I can think of them failing were because I either didn't actually copy the imagine. Or I somehow did something like cat example.iso > /dev/sdb/sdb1 instead of /dev/sdb or something along those lines.

@Nitro! But if I have to see this smug homo grinning back at me from behind a dicks-in-my-ass-please permissive license on something I wrote:
I would probably just say no, and move on. If it was me.
 
And it doesn't work half the time in my experience, and for some reason is godawfully slow. I mentioned dd in my post and how unsatisfied I was with its performance (even though something that old should be completely reliable).
There shouldn't be a large speed difference between dd and copying the file to a filesystem on the same flash drive, if anything, dd should be faster. Did you not use oflag=direct and was looking at the progress stall to almost 0? Then you were looking at the in-memory cache filling up (usually very fast at GB/s), then stalling before new cache space is ready after the cache is flushed to the block device at the device's write speed. So the complete write operation should take the same amount of time or even faster with dd.
Or if you don't use a bs large enough, leaving it at the default 512b. The write speed should increase fast with increasing bs. It's a good idea to make bs a whole multiple of the input file size, so a check whether the bs is divisible into the file size is a good idea, but even without that, the worst that will happen is that dd will fill the rest of the last block with 0's and write them to the device.
Also make sure to run a sync after a regular cp file copy to make sure the buffer is flushed to the device, even though cp should do a sync before it exits, maybe the mount options are such that they ignore sync.
Edit: or yeah, like @prollyanotherlurker said, if you mistakenly write to a partition instead of the whole device.
Another thing I've encountered is some iso's aren't bootable from usb, only from a cd. Yes, that's retarded, but I've had some firmware update disks for network cards and servers be like that. I found that you can sometimes make those iso's bootable with a tool I can't remember the name of.
 
Last edited:
someone sent me this, which is supposedly a copy of a 4chan thread
Feels a bit schizo, to be honest. But I'd be lying if I said I wasn't noticing some of the same patterns he is.


A new potential legal grey area for ai coding. This project takes a gpl project and releases it as an mit project. But uses ai to take the original, and create new code. At least that's the goal.

Here's the repo
I've rolled my eyes in the past at some of the sperging that has come out of the Free Software Foundation, but I think I just might support the FSF suing to block this project.
 
I see people in this thread preferring Guix to Nix because of trannies or something, but however niche Nix is, Guix is even more so. Nix has a relatively large userbase, so issues are more likely to get fixed quickly, and packages regularly updated. It also has an enormous number of packages in nixpkgs (more than any other distro), whereas I frequently look for a package I want in Guix's repo and it's just not there.

Both OSes are going to be challenging for beginners, but Guix may be more so.

Incidentally, in either case you can try them out without running a full OS. E.g., you can have Ubuntu/Mint/Fedora/Arch as your OS, and then use Nix/Guix to install packages from their repos. And you can still use Nix's Home Manager or Guix Home to manage your home directory files.
The thing with Guix > Nix is that unlike the latter, Guix has better documentation, a far better cookbook, and is far more populated by people willing to help. Beyond what is currently packaged, webrings like toys let you find peoples' personal repos with (often very well written) packages & services you might want to use or poach into your own local channel. Beyond that, what trannies the project does have are FAR less cancerous than the ones at Nix. Take this guy(?) for example. I'm like 80% sure its a tranny due to >hyfetch, but nonetheless, he's a machine that pumps out great software ports, contributes heavily to both mainline Guix and NonGuix upstream, and sends actually helpful replies if asked via email. While I'm certain bad actors do exist, the people in the Guix sphere are generally very pleasant to talk to, trooned out or otherwise.
As a slight random aside about it, recently they moved their git development off a mailing list and onto a git forge and the development has sped way up. I got used to doing the email patches but the shit actually just sucked ass to work with, im so glad they're doing this now. I'm hoping that means that more people will contribute more and make it better faster. The only shitty thing now is that the commit format is ass tier, but maybe @grok can be useful for once and fix that.
Excellent reply in general, though I'd also mention guix pack as a useful utility since it lets you create RPM, tar or docker images on the fly. Very useful if you want to dockerize certain services or packages, or run Guix on top of Fedora/RHEL-ware systems.
 
The main advantage of guix is that it uses non retarded programing language as backend unlike Nix with the horrfying abomination that is nix lang. Also you do not need to use docker to run foreign binaries as you can create standard filesystem layout containers using guix shell -F -C
 
I have one usb stick with five ISOs on it, and cp file.iso /run/media/user/devname is zero effort. A GPL-3 licensed usb booter made by a Chinaman is pretty low on my list of shitty software to be concerned about.
This works most of the time, but there still is some retarded software that is not distributed as hybrid ISO (like windows install images). Instead they require some stupid media creation tool (which works only on Windows). Thats the only thing I use Ventoy for, and I agree, I would be happier if they didnt use shady binary blobs.
 
I've rolled my eyes in the past at some of the sperging that has come out of the Free Software Foundation, but I think I just might support the FSF suing to block this project.
this is a super interesting issue! but jesus that guy's voice made me want to kill myself then others. here is the link to him talking about it https://github.com/chardet/chardet/issues/327

The guy who did this 7.0 version wants to free this program from its LGPL shackles by rewriting the code from scratch. It raises a bunch of interrelated legal issues at once so not surprisingly the github thread is getting it wrong in all sorts of ways.

code is protected by copyright. copyright is narrow - it's the exact expression of the idea that is copyrighted. the issue is inherently complicated because with the way copyright works, it's the author of the programming language itself that should have an exclusive copyright. putting third-party libraries etc. aside, any program is an assembly of functions pre-defined by the language's author. there's only so many ways you can assemble the legos, so it would be weird to give whoever first put the legos together a certain way a blocking right that kept any other users of the programming language from using the same function in the same way.

to address that issue the law says purely "functional" code is not copyrightable. also, ideas are not copyrightable, so you can't copyright a feature like a web checkout flow. separately, there's a long-standing "independent creation" affirmative defense to copyright infringement where if the author can show evidence they didn't copy the other work and came up with it themselves, it doesn't matter that the words are literally the same as the original work. this is where the notion of "clean room" development comes in. one team reviews the competitor's program, and derives specifications for what a competing product would have to do. a second team, armed only with those specifications, then generates their own solution. because the specifications are abstract ideas, they aren't copyrightable. so the company can prove the second team didn't have access to the competing product's source code, and therefore anything they came up with was independently created. secondarily, it lets you argue any identical code is therefore functional b/c an independent team came up with the same approach.

all of this breaks down when source code is on github b/c how do you weigh the fact that a developer could always secretly be checking github at a public library or something outside the clean room? this happens enough that companies use blackduck or similar to be sure lazy dev employees didn't steal code from an open source project and stick it in without telling anyone. the recent big litigation over this issue was Google v. Oracle
1773269929919.png
holding
1773269981703.png
1773269962524.png

i break this down b/c it gets called out in the github thread. this is pretty wild - google got to use Java APIs for Android not b/c it had to in order to interface with java, but to give programmers an interface they already knew. oracle and google could have worked out a licensing deal for the code.

Google made two arguments - APIs aren't copyrightable, and if they are, their use of Java SE's APIs in AndroidOS was fair use.

The court declined to decide whether APIs are copyrightable b/c it didn't want to create big unintended consequences for software development: "Given the rapidly changing technological, economic, and business-related circumstances, we believe we should not answer more than is necessary to resolve the parties’ dispute. We shall assume, but purely for argument’s sake, that the entire Sun Java API falls within the definition of that which can be copyrighted. "

The court ruled that to the extent the APIs were copyrightable, Google's use of them (wholesale copying, for no justification other than APIs are intuitive user interfaces, a tiny portion of the code, didn't compete with Java SE) was fair use. The majority opinion cast a lot of skepticism on APIs being copyrightable. In explaining the breakdown between functional and protected code, the courtn noted "In our view, for the reasons just described, the declaring code is, if copyrightable at all, further than are most computer programs (such as the implementing code) from the core of copyright. That fact diminishes the fear, expressed by both the dissent and the Federal Circuit, that application of “fair use” here would seriously undermine the general copyright protection that Congress provided for computer programs."

Back to Cherdet:

the LLM thing is a bit of a red herring. The goal here was to rewrite an existing software project without using any of the GPL-copyrighted code. Whether it was this guy Dan doing it, or him using an LLM to do it, they had to reference the existing code to be sure they were rewriting things so as not to literally copy the code on the page. It means there is no "independent creation" defense, but if Dan only replicates functional code snippets in the rewrite, then he isn't infringing the GPL-licensed code to begin with since that code either isn't copyrightable or its use is fair use.

you could try to make an argument that the LLM ingesting the code is copying it in a way that violates copyright law. (1) LGPL doesn't prohibit private use of code like this, it only prohibits its distribution. so Dan is within the bounds of the LGPL license if he used it privately to design software with the same functionality without infringing any protected LGPL code. and (2) even looking at naked copyrigh principles, that copy is only being used for it to ensure it is not creating infringing code. closest case i can think of on this is perfect 10 which would mean this is fair use too.

but it's still a red herring b/c ok - say i'm wrong on both points and the use of the LLM is the problem. Then Dan just rewrites it by hand while looking at the github page, because then there's no technical copying happening.

from the comments, it might be that the LLM fucked up and copied large swathes of code wholesale. if true, that's an issue and dan made a mistake by not manually reviewing every line of code and rewriting heavily copied sections, and documenting anything he kept as functional and why. that's what "clean room" development would look like in this context.

The github thread:

This guy misreads everything by citing the federal circuit appellate court opinion, which overruled the district court to hold the APIs were copyrightable and it was not fair use. The federal circuit is a specialized court that only hears IP appeals and court of federal claims appeals, and the specialization has made them over-complicate IP law and come down too far in favor of rightsholders. The result is the supreme court has kept reversing their attempts to expand IP law beyond its natural borders, Google v. Oracle being one of those cases.

1773271386105.png
This Norwood master pointed out he was wrong
1773271479370.png
Where it gets aggravating again is how many people liked his uninformed response. the usual reddit thing where if you act short, snotty and authoritative people think you're right b/c that's how neckbeards act

1773271576207.png

It's hard to tell if he's just being an arrogant engineer who thinks he doesn't need context to understand the interplay between the Federal Circuit and SCOTUS, or he's saying all of this in bad faith. But either way, this is totally wrong - SCOTUS' approach to reversing the Federal Circuit was a complete slapdown. They won't make sweeping rulings about API copyrightability unless they absolutely have to, but with Roberts, Gorsuch, Kavanaugh, Kagan, Sotomayor, Jackson on board there's still a 6-3 coalition that is skeptical of copyrighting APIs.

An unexpected interesting point - someone did point out how much the assumptions of GPL fail to apply in a post-github world and that's part of why GPL hasn't succeeded in its goal to virally seize the means of software production.
1773271713294.png

as they point out, companies always had the right to rewrite software like this. GPL had leverage b/c it was too expensive and difficult for companies to build their own alternative. software development is getting both simpler and more cheap. AI and IDEs are part of this but so are really cheap very good developers in latam and eastern europe who are 10x better than indians. this is freaking people out because it's removing the non-legal friction that gave GPL a moat. The same is true of proprietary software which is what's prompting a mini-wave of doomerism among SaaS companies. In that sense this parallels what happened with music and video piracy. copying tapes was at-home piracy most almost everyone did at some point, but it was time consuming and relatively expensive due to the cost of the media and quality suffered. the result is you had mixtape/remix culture but not to the extent it cannibalized the music industry. napster turned all of that on its head by removing the friction to copying. if vibecoding keeps improving this issue could be on the same trajectory. the big question for us of course is what vibecoding actually costs when the technology has matured and the era of subsidized tokens is over - comparative advantage should mean that it's still cheaper to get a product from salesforce than it is to kluge your own vibecoded thing together.
 
Last edited:
Having read all that... just damn, It really does suck that we're basically going to be forced to keep watching most of the major Linux distros that wern't corpo controlled continually get subverted until they're all corpo-controlled while we get trannies in FOSS be mindless enforcers to such enshittification. I can't imagine how bad it'll get if it reaches the point where even Microsoft's enshittification would look comparitively tame, if it isn't just as bad or worse by that time.
 
Last edited:
An unexpected interesting point - someone did point out how much the assumptions of GPL fail to apply in a post-github world and that's part of why GPL hasn't succeeded in its goal to virally seize the means of software production.
I believe that if Stallman and FSF had been willing to make a compromise, it's entirely possible that publishing source code would be mandatory in copyright law. Just make the obvious argument that hiding the source makes it onerous to advance the art form, imagine if writers had to learn to write without being allowed to read books. I wonder if the GPL existing prevented anyone from pursuing this solution.
 
I believe that if Stallman and FSF had been willing to make a compromise, it's entirely possible that publishing source code would be mandatory in copyright law. Just make the obvious argument that hiding the source makes it onerous to advance the art form, imagine if writers had to learn to write without being allowed to read books. I wonder if the GPL existing prevented anyone from pursuing this solution.
That feels conceptually closer to patent law than copyright, but it is an interesting argument.
 
That feels conceptually closer to patent law than copyright, but it is an interesting argument.
copyright law already requires you file a complete copy with the work with the copyright office. they don't strictly require that you submit the source code, just the object code, but you really should. "You can submit a deposit using the object code of the computer program; however, your claim will be subject to the Copyright Office’s Rule of Doubt." which means that the copyright office isn't agreeing anything is copyrightable by accepting the registration. Interesting discussion of the rule of doubt here.
 
The main advantage of guix is that it uses non retarded programing language as backend unlike Nix with the horrfying abomination that is nix lang. Also you do not need to use docker to run foreign binaries as you can create standard filesystem layout containers using guix shell -F -C
I never understood why people used docker so much until I read about guix and nix itt. As much as docker is bloat I’m allergic to, this solution sounds worse.
 
Back
Top Bottom