I have been using Linux for over 8 months now, and my primary distribution of choice was Debian.

Debian recently conducted a community vote on allowing AI contributions, and it ended up allowing responsible AI contributions.

What is this responsible? How can AI commits be responsible? There are thousands of reasons to not use AI, and the primary reason is AI is a thief.

How did you react to Debian’s decision? Did you switch distros? Which one was your option, and why?

Also, when the Linux kernel itself allows AI commits, is there any practicality in a Linux distribution strictly limiting or restricting AI commits?

I have no serious usability issue with Debian now but am concerned about the use of AI even in my Linux distribution. Should I keep going with Debian or consider any other distribution, as I only have 8+ months of experience as a daily Linux user? I tried almost all Linux distros and am comfortable with everything except Void Linux and highly complex ones like Gentoo.

  • Lettuce eat lettuce@lemmy.ml
    link
    fedilink
    arrow-up
    5
    ·
    6 hours ago

    Unless you literally programmed every component yourself, you can’t get away from some level of LLM involvement, even if the distro itself bans it. There is no 100% certain way to check code for LLM use. So if a developer doesn’t disclose it, and the maintainers accept the code, it’s in the official codebase now.

    There’s a deeper problem though, which is a problem of demarcation. What counts as an “AI contribution” to you? Obviously vibe-coding is. But what about more subtle uses?

    What if a developer uses an LLM to read the code and suggest a way to make a certain contribution, but it never actually generates any code, the developer implements the LLM’s suggestion completely by hand. Does that count?

    What about if a developer hand writes 95% of the code themselves, but that last 5% they aren’t as confident in, so they have the LLM generate it. Does that count?

    What if an extremely experienced developer uses an LLM to generate 100% of the code, but spends hours going over ever single line making sure it is correct and making little tweaks before submitting the code?

    What if a developer writes the initial code 100% by hand, and only uses an LLM to go through and optimize the formatting and performance before submitting it?

    What if a developer writes 100% of the code by hand, but uses an LLM to generate a bunch of unit tests and documentation?

    These are just some of the ways that LLMs can be involved in the process of software development, and most of these wouldn’t have any real chance of being caught by a maintainer doing some sort of scan to detect LLM usage.

    I’m not saying these uses are or aren’t justifiable/acceptable, but my point is it’s often not clear what people consider to be “over the line”. Almost no experienced devs in the FOSS world are advocating for the 100% vibe-code/token-maxing approach. But lots of them are comfortable with using LLMs in similar ways to what I listed earlier.

    The tough truth is that you’re almost certainly already using software that has LLM involvement at some level. Short of going full Amish mode, or using completely pre-LLM software in some kind of air gapped setup, you’re not going to be able to avoid it.