13 ms·
FreeBSD doesn't have Wi-Fi driver for my old MacBook, so AI built one for me
- deleted 7mo ago[deleted]
- petcat 7mo agoI feel like ubiquitous hardware support in every OS is going to be a solved problem soon. We're very close to just being able to set an AI coding agent to brute-force a driver for anything. The hardware designer would have to go well out of their way to obfuscate the interface if they really wanted to forbid it, instead of just not bothering to support an OS like BSD or Linux.
- jwatte 7mo agoTell me you've never developed a driver, without telling me you've never developed a driver.
- rvz 7mo ago> We're very close to just being about to set an AI coding agent to brute-force a driver for anything. That sounds quite naive and it isn't that simple. Even the author expressed caution and isn't sure about how robust the driver is since he hasn't seen the code himself nor does he know if it works reliably. Even entertaining the idea, someone would have already have replaced those closed source Nvidia drivers that have firmware blobs and other drivers that have firmware blobs to be open replacements. (Yes Nouveau exists, but at the disadvantage of not performing as well as the closed source driver) That would be a task left to the reader.
- deleted 7mo ago[deleted]
- calmbonsai 7mo ago> We're very close to just being about to set an AI coding agent to brute-force a driver for anything. This is false. To "brute force" a driver, you'd need a feedback loop between the hardware's output and the driver's input. While, in theory, this is possible for some analog-digital traducers (e.g WI-FI radio), if the hardware is a human-interface system (joystick, monitor, mouse, speaker, etc.) you literally need a "human in the loop" to provide feedback. Additionally, many edge-cases in driving hardware can irrevocably destroy it and even a domain-specific agent wouldn't have any physics context for the underlying risks.
- ssl-3 7mo agoStrictly speaking, I don't think we need a human to run repetitive tests. We just need the human to help with the physical parts of the testing jig. For instance: A microphone (optionally: a calibrated microphone; extra-optionally: in an isolated anechoic chamber) is a simple way to get feedback back into the machine about the performance of a speaker. (Or, you know: Just use a 50-cent audio transformer and electrically feed the output of the amplifier portion of the [presumably active] speaker back into the machine in acoustic silence.) And I don't have to stray too far into the world of imagination to notice that the hairy, custom Cartesian printer in the corner of the workshop quite clearly resembles a machine that can move a mouse over a surface in rather precise ways. (The worst that can happen is probably not as bad as many of us have seen when using printers in their intended way, since at least there's no heaters and molten plastic required. So what if it disassembles itself? That's nothing new.) Whatever the testing jig consists of, the bot can write the software part of the tests, and the tests can run as repetitiously as they need to.
- calmbonsai 7mo agoTo your point, we already have testing jigs for these sorts of systems in the automotive world for steering and suspension. I can't find the video clip atm, but there's a neat (likely leaked) Foxxconn video that shows a really neat testing jig for Apple trackpads.
- ssl-3 7mo agoThere's all kinds of automated testing in the world. The fun part is that some of us (actually, in this particular crowd, many of us) already have a lot of what we need to get some automated testing done at home, and we may not even realize it. :)
- ineedasername 7mo agosomeone would have already have replaced those closed source Nvidia drivers that have firmware blobs This isn’t quite a fair example, these are so massively complex with code path built explicitly for so many individual applications. Nvidia cards are nearly a complete SoC. Though then again, coding agents 1 year ago of the full autonomous sort were barely months old, and now here we are in one year. So, maybe soon this could be realistic? Hard to say. Even if code agents can do it, it still costs $ via tokens and api calls. But a year ago it would have cost me at least a few dollars and a lot more time to do things I get done now in a prompt and 10 minutes of Opus in a sandbox.
- pmontra 7mo agoI'm not so sure that Nouveau is slower than the proprietary Nvidia driver. I didn't run benchmarks on my personal use case but my subjective experience is that Nouveau might be faster. It's a Debian 11, X11, NVIDIA driver vs Debian 13, X11, Nouveau on the same laptop with a Quadro K1100mq. The desktop of the newer system seems to be faster. Of course it could be the sum of the individual improvements of kernel, GNOME, etc. I only move windows around my desktop, no games, so it's a very limited scenario.
- WD-42 7mo agoAbsolutely not. Nouveau might give you a usable desktop but the second you need to do any 3d rendering or decoding it’s atrocious.
- ranger_danger 7mo agoIn my experience, the proprietary driver has always blown away nouveau at 3D rendering performance and featureset.
- ahoka 7mo agoThat pesky GPL does not stop us anymore, cool.
- petcat 7mo agoWhat would the GPL have to do with this?
- stanac 7mo agoAI written driver could be a rip off Linux driver.
- tokyobreakfast 7mo agoIn the mid-2000s there was a bit of drama when Linux wireless driver code ended up in BSD (or maybe the other way around). The Internet was angry that day my friend; a bunch of nerds sperging out over licenses and which license is more "free". Ultimately the code was removed. It sure seems like AI agents can sidestep all that by claiming ignorance on license matters.
- IshKebab 7mo agoIf the Linux driver is GPL and he made the new driver using AI to essentially copy it then claim that the result wasn't covered by the GPL... It's an area not settled by law yet. Still not as bad as the guy who paid for a commercial license for some Linux driver, fed it into Claude to get it to update it to the latest Linux, and then released it as GPL! That's definitely not a grey area. https://youtu.be/xRvi3k8XV8E https://youtu.be/xRvi3k8XV8E Absolutely mental behaviour for a business. What were they thinking?
- heffer 7mo agoIt's clickbait. The "driver" is actually a rather comprehensive kernel patch that modifies existing GPLv2 kernel code, so by its very nature it is at least GPLv2 (original parts may be dual licensed by the vendor if they want to, but they can't not make it GPLv2). What this person paid $40,000 for is access to development kits for certain hardware, which with chip vendors like that usually also comes with support. The vendor cannot prevent you from exercising your GPLv2 rights after they hand you the code. In fact, if you manufacture and distribute a device that uses these kernel patches it becomes your obligation to enable your customers to exercise their GPLv2 rights. Chip manufacturers know this and (if they are somewhat reputable) usually license their code appropriately.
- diath 7mo agoThe primary reason why it worked is because Claude could rip off the Linux driver. Without any prior work to rely on, how will the AI figure out proprietary hardware?
- rustyhancock 7mo agoI haven't read the article but my first question was, install wifibox? It's a bhyve VM running alpine Linux and you pass through your WiFi adaptor and get a bridge out on the freebsd host.
- deleted 7mo ago[deleted]
- WD-42 7mo agoLiterally explained in the post, that’s why you read first.
- bootwoot 7mo agoTrue. But also -- how do humans do it? There are docs and there's other similar driver code. I wouldn't be surprised if Claude could build new driver code sight-unseen, given the appropriate resources
- chrisjj 7mo ago> But also -- how do humans do it? Intelligence.
- slopinthebag 7mo ago> But also -- how do humans do it? Probably a mix of critical thinking, thinking from first principles, etc. You know, all things that LLM's are not capable of.
- jacobr1 7mo agoExcept it often is the case that when you break down what humans are doing, there are actual concrete tasks. If you can convert the tacit knowledge to decision trees and background references, you likely can get the AI to perform most non-creative tasks.
- Gigachad 7mo agoMaybe one day, but it doesn't look like we are very close yet. From the OP article, they handed it the working linux driver and asked it to just make this FreeBSD compatible, but it could not. Looks like it took OP a significant amount of work over 2 months to get something that seems to work. What is interesting is it seems like the work resembles regular management, asking for a written specification, proof reading, etc.
- lazide 7mo agoAka, the hard part.
- plagiarist 7mo agoTo make these things work you do need to write a spec and figure out what unit tests will prove it actually did what you want. Even then it will take a bunch of shortcuts so it's best if you're a domain expert anyway.
- ssl-3 7mo ago> What is interesting is it seems like the work resembles regular management, asking for a written specification, proof reading, etc. That's how I've been using the bot for years. Organize tasks, mediate between them, look for obvious-to-me problems and traps as things progress, and provide corrections where that seems useful. It differs from regular management, I think, in that the sunk costs are never very significant. Find a design issue that requires throwing out big chunks of work? No problem: Just change that part of the spec and run through the process for that and the stuff beneath it again. These parts cost approximately nothing to produce the first time through, and they'll still cost approximately nothing to produce the second time. I'm not building a physical structure here, nor am I paying salaries or waiting days or weeks to refactor: If the foundation is wrong, then just nuke it and start over fresh. Clean slates are cheap. (I don't know if that's the right way to do it, or the wrong way. But it works -- for me, at least, with the things I want to get done with a computer.)
- estimator7292 7mo agoDrivers can be anywhere from so trivial you can throw it together by hand in an afternoon to so complex that it requires an entire engineering team six months of concentrated effort.
- deleted 7mo ago[deleted]
- octoberfranklin 7mo agoHardware driver bugs frequently manifest as concurrency flakiness or heisenbugs. AI is notoriously bad at dealing with bugs that only cause problems every few weeks.
- deleted 7mo ago[deleted]
- jomohke 7mo agoI've thought for a while now that we'll end up moving to stricter languages that have safer concurrency, etc, partly for this reason. The most prominent resistance against such languages was the learning curve, but humans like OP aren't looking at the code now.
- hahn-kev 7mo agoSo are people
- bluGill 7mo agoI've found ai really good at the rare problems. The code hangs 1 out of 200 times - it spends half an hour and finds a race condition and a proposed fix - something complex that is really difficult for humans to figure out. Now grated the above problem took a dozen rounds over a couple days to completly solve (and it happend more often than every two weeks), but it was able to find an answer given symptoms.
- skydhash 7mo agoThe driver used as inspiration is fully opensource https://github.com/torvalds/linux/tree/v6.18/drivers/net/wireless/broadcom/brcm80211/brcmfmac https://github.com/torvalds/linux/tree/v6.18/drivers/net/wir... I don't know why it has not been brought in the BSDs (maybe license), but they do are a bit more careful with what they include in the OS.
- mschuster91 7mo ago> We're very close to just being able to set an AI coding agent to brute-force a driver for anything. Yeah, but that only works for so long as the AI doesn't brute force a command that hard-bricks the device. Say, it causes a voltage controller to give out way too high voltages by a command, burns e-fuses or erases vital EEPROM data (factory calibration presets come to my mind here).
- wangzhongwang 7mo agoI think we're closer than most people realize, but the hard part isn't generating the code — it's testing it. Drivers need to handle edge cases that only show up under specific hardware conditions, timing issues, power states, etc. An AI can write a first draft pretty fast, but validating it still requires actual hardware in the loop. The FreeBSD case worked because brcmfmac is well-documented and the author could test on real hardware. For more obscure chipsets with no public datasheets, we're still stuck.
- h4kunamata 7mo ago[flagged]
- johnjames87 7mo agowhat a salty comment
- iknowstuff 7mo agoI don’t think Apple is any different than any other vendor who doesn’t bother releasing Linux drivers? support for most devices depends on the community creating them no? If you’re a macOS fanboy presumably you don’t care about Linux support.
- tokyobreakfast 7mo ago> any different than any other vendor who doesn’t bother releasing Linux drivers Which has dwindled in number so much as to practically not be problem anymore. There is even a Linux-only or Linux-first attitude with some vendors. Buying Apple to run Linux borders on stupidity nowadays because of the vast better options fit for purpose. Like buying a gasoline vehicle then complaining it can't run on diesel. It wasn't designed to.
- h4kunamata 7mo agoTHANK YOU!!!!!!
- h4kunamata 7mo ago>I don’t think Apple is any different than any other vendor Read my previous comment again!! If you buy a genuine display and install it, it won't work because Apple locks the hardware ID via firmware. It must be installed by Apple only. No other vendor does that, the Linux community always found its way to get a non-supported hardware working. Windows until recently with the AI slope, was the only major OS used everywhere so why many vendors only have Windows driver, I understand theirs "Why bother?"
- ulf-77723 7mo agoSoftware is still eating the world, now even faster. I wonder how soon we will adapt to this new situation where software is vibe coded for anything and make use of this software without caution as expressed in the article. For most people the main difference will be: Will it run and solve my problem? Soon we will see malware being put into vibe coded software - who will wants to check every commit for write-only software?
- tkiolp4 7mo agoI think in the future (in 10 years?) we are going to see a lot of disposable/throwaway software. I don’t know, imagine this: I need to buy tickets for a concert. I ask my AI agent that I want tickets. The agent creates code on the fly and uses it to purchase my tickets. The code could be simple curl command, or a full app with nice ui/ux. As a user I don’t need to see the code. If I want to buy more tickets the same day, the ai agent will likely reuse the same code. But if i buy tickets again in one year, the agent will likely rebuild the code to adjust to the new API version the ticket company now offers. Seems wasteful but it’s more dynamic. Vendors only need to provide raw APIs and your agent can create the ui experience you want. In that regard nobody but the company that owns your agent can inject malware into the software you use. Some software will last more than others (e.g., the music player your agent provided won’t probably be rebuilt unless you want a new look and feel or extra functionality). I think we’ll adopt the “cattle, not pets” approach to software too.
- SOLAR_FIELDS 7mo agoThis is also where I think we end up. If the behavior of the system is specified well enough, then the code itself is cheap and throwaway. Why have a static system that is brittle to external changes when you can just reconstruct the system on the fly? Might be quite awhile before you can do this with large systems but we already see this on smaller contextual scales such as Claude Code itself
- candiddevmike 7mo agoThe specification for most systems _is the code_. English cannot describe business rules as succinctly as code, and most business rules end up being implied from a spec rather than directly specified, at least in my experience. The thought of converting an app back into a spec document or list of feature requests seems crazy to me.
- groundzeros2015 7mo agoThis is exciting! This sounds like a great application because it’s mostly tedious work to adjust an existing driver to another device.
- b8 7mo agoIt'd be nice to have drivers for newer Mac's for a better Asahi Linux experience. Good use of AI imo.
- Gigachad 7mo agoAI wouldn't work here. The OP task was converting one open source driver in to another one for FreeBSD. Since Mac doesn't have open source drivers to start with, a person still has to do the ground research. At least until you can somehow give the AI the ability to fully interact with the computer at the lowest levels and observe hardware connected to it.
- jeroenhd 7mo agoSomeone else here suggested having an AI write a filter driver to intercept hardware communications on Windows and try to write a driver based on that, I presume macOS can also be coerced into loading such a driver? That approach could work, though it'll require a lot of brute-forcing from the AI and loading a lot of broken kernels to see if they work. Plus, if audio drivers are involved, you'd probably blow out the speakers at least once during testing. Still, if you throw enough money at Claude, I think this approach is feasible to get things booting at the very least. The question then becomes how one would reverse-engineer the slop so human hands can patch things to work well afterwards, which may take as much time as having humans write the code/investigate hardware traces in the first place.
- tokyobreakfast 7mo agoThis is like complaining Delorean didn't make spare parts for your homemade time machine.
- integralpilot 7mo agoWe don't use AI to help write code due to copyright concerns, it's against our policy. We obviously need to be very careful with what we're doing, and we can't be sure it hasn't seen Apple docs or RE'ed Apple binaries etc (which we have very careful clean-room policies on) in its training data. It also can't be guaranteed that the generated code is GPL+MIT compatible (as it may draw inspiration from other GPL only drivers in the same subsystems) but we wish to use GPL+MIT to enable BSD to take inspiration from the drivers.
- midtake 7mo agoThis used to be more common right? Back in the winmodem days?
- octoberfranklin 7mo agoThat AI was trained on the GPLv2 Linux source code, which does have a driver for your Wi-Fi. How is this not copyright laundering?
- jdlyga 7mo agoA very, very good point
- cryptonector 7mo agoProve the new code is similar to the corresponding driver in Linux. If you can then you can get the authors of the latter to file suit against TFA.
- deleted 7mo ago[deleted]
- snowhale 7mo ago[dead]
- Vegenoid 7mo agoYou haven't addressed the parent's concern at all, which is that what the LLM was trained on, not what was fed into its context window. The Linux driver is almost certainly in the LLM's training data. Also, the "spec" that the LLM wrote to simulate the "clean-room" technique is full of C code from the Linux driver.
- snowhale 7mo ago[dead]
- fschuett 7mo agoOkay, so will companies now vibe-code a Linux-like license-washed kernel, to get rid of the GPL? > The Linux driver is almost certainly in the LLM's training data. Yes, and? Isn't Stallmans first freedom the "freedom to study the source code" (FSF Freedom I)? Where does it say I have to be a human to study it? If you argue "oh but you may only read / train on the source code if you are intending to write / generate GPL code", then you're admitting that the GPL effectively is only meant for "libre" programmers in their "libre" universe and it might as well be closed-source. If a human may study the code to extract the logic (the "idea") without infringing on the expression, why is it called "laundering" if a machine does it? Let's say I look (as a human) at some GPL source code. And then I close the browser tab and roughly re-implement from memory what I saw. Am I now required to release my own code as GPL? More extreme: If I read some GPL code and a year later I implement a program that roughly resembles what I saw back then, then I can, in your universe, be sued because only "libre programmers" may read "libre source code". In German copyright law, there is a concept of a "fading formula": if the creative features of the original work "fade away" behind the independent content of the new work to the point of being unrecognizable, it constitutes a new work, not a derivative, so the input license doesn't matter. So, for LLMs, even if the input is GPL, proprietary, whatever: if the output is unrecognizable from the input, it does not matter.
- irishcoffee 7mo agoThis is really neat, I'm glad it worked. This is atrocious C code.
- cryptonector 7mo agoGot a sample you think is particularly bad?
- irishcoffee 7mo agoThrowing myself to the sharks here, but sure. pcie.c /* * BAR0 register access */ uint32_t brcmf_reg_read(struct brcmf_softc *sc, uint32_t off) { return (bus_space_read_4(sc->reg_bst, sc->reg_bsh, off)); } Is sc null? Who knows! Was it memset anywhere? No! Were any structs memset anywhere? Barely! Does this codebase check for null? Maybe in 3% of the places it should! All throughout this codebase variables are declared and not initialized. Magic numbers are everywhere AND constants are defined everywhere. Constants are a mix of hex and int for what seem to be completely arbitrary reasons. Error handling is completely inconsistent, sometimes a function will return 5 places, sometimes a function will set an error code and jump to a label, and sometimes do both in the same function depending on which branch it hits. All of this is the kind of code smell I would ask someone to justify and most likely rework. Or I'm just a dumbass, I suppose I'll find out shortly.
- jeremyjh 7mo agoI'm no expert either and I have not done kernel development, but I've done some embedded stuff in C and I think this is not unreasonable. brcmf_reg_read is only called in one place and the call chain is straightforward (starts in pcie.c brcmf_pcie_attach). Its always initialized by device_get_softc (https://man.freebsd.org/cgi/man.cgi?query=device_get_softc&sektion=9&format=html https://man.freebsd.org/cgi/man.cgi?query=device_get_softc&s...) so as long as the device is attached its initialized. Likely something fails much earlier if it is not attached. I think this is pretty typical for low-level C, it would definitely not be idiomatic for every function in this call chain to check if sc was initialized - I don't know if there is a need to check it after calling device_get_softc but that would probably be reasonable just so people reviewing it don't have to check. Some application code bases I've worked in would have asserts in every function since they get removed in release builds but I don't know that debug builds are even a thing in kernel devices.
- YaraDori 7mo ago[dead]
- 0xbadcafebee 7mo agoHad an experience like this recently. QEMU stopped compiling for old versions of MacOS (pre-13) w/M1 arch, due to it requiring newer SDKs which don't support older MacOS versions. I put Sonnet 4.6 on the case, and it wrote a small patch, compiled and installed it in a matter of minutes, without giving it any instructions other than to look at errors and apply a fix. I definitely would have just given up without the AI.
- ranger_danger 7mo agoMind sharing that patch?
- 0xbadcafebee 7mo agohttps://trac.macports.org/ticket/73519 https://trac.macports.org/ticket/73519
- warkdarrior 7mo agoMind sharing the prompt?
- 0xbadcafebee 7mo agoIt was along the lines of "try to install colima with macports, look at errors, apply a fix". GitHub Copilot w/Sonnet 4.6 model
- hnarn 7mo agoWhy would you solve an issue like this and then not supply a patch upstream, or at the very least contact someone that could? It seems to be like the FLOSS equivalent of posting about a problem on a forum and then replying "nvm, solved it".
- circularfoyers 7mo agoI would hazard a guess that it's because there's been many debates about contributing PRs that might be perceived as AI slop. Not saying that's the case here, but it's possible the fix might be a poor one, not follow the project's guidelines, or one which the contributor doesn't fully understand, but doesn't care because it fixed the issue. I would guess the better approach would be to submit a bug report with the same information the LLM used, and maybe suggest there the fix the LLM provided. Unless this really was a tiny patch and none of the above concerns applied.
- dmix 7mo ago> Instead of continuing with the code, I spawned a fresh Pi session, and asked the agent to write a detailed specification of how the brcmfmac driver works Planning markdown files are critical for any large LLM task.
- overfeed 7mo agoThe line between AI-assisted clean-room reverse-engineeing and open-source-license-laundering is a thin one, and I think the one described in the article crosses over to laundering. In classic clean-room design, one team documents the interfaces - not the code.
- deleted 7mo ago[deleted]
- dhon_ 7mo agoIn this case though, the new driver has the same license as the project it was based on and explicitly credits the original project ISC License Copyright (c) 2010-2022 Broadcom Corporation Copyright (c) brcmfmac-freebsd contributors Based on the Linux brcmfmac driver.
- josephg 7mo agoThis surprised me - but sure enough, they're right. The linux brcmfmac driver is ISC licensed: https://github.com/torvalds/linux/blob/master/drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.c https://github.com/torvalds/linux/blob/master/drivers/net/wi... // SPDX-License-Identifier: ISC
- emaste 7mo agoA lot of Linux kernel drivers are permissively licensed, or dual-licensed with a choice of GPL and a permissive license. This is especially common for vendor-developed drivers. From a hardware vendor’s perspective, broad license compatibility directly supports adoption: the more operating systems, hypervisors, and embedded environments that can incorporate the driver code, the wider the potential market for the hardware itself.
- deleted 7mo ago[deleted]
- dumbfounder 7mo agoThe future is that people stop buying software and just build it themselves. The spam filter in thunderbird was broken for me, I built my own in hours and it works way better. Oh that CRM doesn’t have the features you want? Build one that does. It will become very easy to built and deploy solutions to many of your own bespoke problems.
- mixdup 7mo agoUnlikely. The future will be some people will do this, but honestly I think it will largely be people who were already tinkering with building things, whether full on software development or not My mom and dad, my brother who drives a dump truck in a limestone quarry, my sister-in-law, none of them work in tech or consider themselves technical in any way. They are never, ever going to write their own software and will continue to just download apps from the app store or sign up for websites that accomplish the tasks they want
- alwillis 7mo ago> Unlikely. The future will be some people will do this, but honestly I think it will largely be people who were already tinkering with building things, whether full on software development or not Billions of dollars of stock market value disappeared because of the concern AI can create core SaaS functionality for corporations instead of them spending millions of dollars in licensing fees to SAP, Microsoft, etc. This not about tinkering. SaaS As We Know It Is Dead: How To Survive The SaaS-pocalypse! - https://www.forrester.com/blogs/saas-as-we-know-it-is-dead-how-to-survive-the-saas-pocalypse/ https://www.forrester.com/blogs/saas-as-we-know-it-is-dead-h... Why SaaS Stocks Have Dropped—and What It Signals for Software’s Next Chapter - https://www.bain.com/insights/why-saas-stocks-have-dropped-and-what-it-signals-for-softwares-next-chapter/ https://www.bain.com/insights/why-saas-stocks-have-dropped-a... Jim Cramer says AI fears have made the stock market fragile - https://www.cnbc.com/2026/02/23/jim-cramer-says-ai-fears-have-made-the-stock-market-fragile.html https://www.cnbc.com/2026/02/23/jim-cramer-says-ai-fears-hav...
- mixdup 7mo ago
- vercantez 7mo agoWe'll reverse engineer our way out of planned obsolescence
- slopinthebag 7mo ago> I didn’t write any piece of code there. There are several known issues, which I will task the agent to resolve, eventually. Meanwhile, I strongly advise against using it for anything beyond a studying exercise. Months of effort and three separate tries to get something kind of working but which is buggy and untested and not recommended for anyone to use, but unfortunately some folks will just read the headline and proclaim that AI has solved programming. "Ubiquitous hardware support in every OS is going to be a solved problem"! Or my favourite: instead of software we will just have the LLM output bespoke code for every single computer interaction. Actually a great article and well worth reading, just ignore the comments because it's clear a lot of people have just read the headline and are reading their own opinions into it.
- petcat 7mo agoThe author specifically said that they did not read the code or even test the output very thoroughly. It was intentionally just a naive toy they wanted to play around with. Nothing to do with AI, or even the capabilities of AI. The person intentionally didn't put in much effort.
- dude250711 7mo ago> The person intentionally didn't put in much effort. Aren't you just describing every vibe code ever? To think about it, that is probably my main issue with AI art/books etc. They never put in any effort. In fact, even the competition is about putting least effort.
- Gigachad 7mo agoSeems like they did put in quite a bit of effort, but were not knowledgeable enough on wifi drivers to go further. So hardware drivers are not a solved problem where you can just ask chatgpt for a driver and it spits one out for you.
- freeplay 7mo agoIf you could write drivers in javascript, it probably would have done just fine /s
- einpoklum 7mo agoAI didn't write a driver for him. He ported the Linux driver to FreeBSD with some assistance from an LLM. What's more interesting to me is the licensing situation when this is done. Does the use of an LLM complicate it? Or is it just a derivative work which can be published under the ISC license [1] as well? [1] : https://en.wikipedia.org/wiki/ISC_license https://en.wikipedia.org/wiki/ISC_license
- deleted 7mo ago[deleted]
- jeremyjh 7mo agoIt wasn't a straight port, he had an LLM write a spec by reviewing the code, and then in another session another LLM did the development. That is basically a Clean-room approach. It would be unlikely there would be much - if any - code that is exactly the same so showing copyright infringement seems very unlikely.
- jeroenhd 7mo agoI'd call it clean room if the AI wasn't trained on the open source drivers in the first place. The open source driver is in there, albeit in the form of lossy text compression with an external dictionary. Now one side is collecting the necessary tokens to get the AI to output data from the training set in the second run.
- lgats 7mo agovery neat, setting codex on the task of building a mac-compatible app for my Pharos Microsoft GPS-360 Receiver... we'll see how it goes!
- lgats 7mo agohttps://github.com/lrehmann/gps360-viewer https://github.com/lrehmann/gps360-viewer cool result from this otherwise defunct hardware!
- deleted 7mo ago[deleted]
- bandrami 7mo agoYour LICENSE file reminds me that the copyright status of LLM-generated code remains absolutely uncharted waters and it's not clear that you can in fact legally license this under ISC
- psyclobe 7mo agoEven bigger accomplishment is ai finally figured out how to configure my samba share for guest access! Lol
- doublerabbit 7mo agoDo postfix/dovecot next. It still struggles with that.
- LowLevelKernel 7mo agoOmg!!. Similarly, Do you know a way to interface with BIOS so that it can change the parameters?
- jeroenhd 7mo agohttps://man.freebsd.org/cgi/man.cgi?efivar https://man.freebsd.org/cgi/man.cgi?efivar and underlying APIs should be able to tweak some settings depending on how many variables are exported. https://unix.stackexchange.com/questions/536436/linux-modify-an-efi-var-with-efivar https://unix.stackexchange.com/questions/536436/linux-modify... suggests there may be risks involved using efivar to configure Apple hardware, as there probably isn't any kind of testing or validation present on the variables you set, but if you know what you're doing you should have similar control as you'd have on native macOS I believe.
- renecito 7mo agoIt used an existing implementation, in theory this was mostly a porting task. GPL-wise, I don't know how much is inspiration vs "based on" would this be, it'd be interesting to compare. This looks like my Company peers, as long as there is any existing implementation they are pretty confident they can deliver, poor suckers that do the "no one has done it before" first pass don't get any recognition.
- theodric 7mo agoAn impressively softwarey alternative to simply pulling out the wifi module and replacing it with an AliExpress Apple wifi module adapter board and a compact M.2 WiFi module with a supported chipset :)
- VWWHFSfQ 7mo ago> The person intentionally didn't put in much effort. And it's incredible that they got a somewhat working wifi driver given just how little effort they put in. I have no doubt that a motivated person with domain knowledge trying to make a robust community driver for unsupported hardware could absolutely accomplish this in a fraction of the time and would be good quality.
- YaraDori 7mo ago[flagged]
- syngrog66 7mo agoThe DNS name has both Russian and Indian in it, and its about vibe coding and AI to make system level software which can access the plaintext of my app comms: nope, nope, nope, nope and oh hell no.
- xyproto 7mo agoNow we can have operating systems that write the drivers they need at boot.
- matthewfcarlson 7mo agoI know this is me coming from my spoiled perspective of Linux and macOS, but the advice of running a VM that manages the WiFi hardware and passing it back to the OS seems insane to me
- Firerouge 7mo agoQubes OS is the Linux version of this concept. Hardware and their drivers get VMs for security boundary isolation.
- skydhash 7mo agoComputers are so complicated right now that they're literally a network of computers. When you consider the closed firmware issue, using a VM is like having a small router you connect with ethernet. And I believe you could run such VM with 64MB of RAM.
- josephg 7mo agoIf an OS is designed to do this from the ground up, it can be incredibly efficient. (See: SeL4). Each process on linux is essentially its own isolated virtual machine already. Linux processes just have all sorts of ambient authority - for example, to access the filesystem and network on behalf of the user which started the process. Restricting what a process can do (sandboxing it) shouldn't have any bearing on performance.
- deleted 7mo ago[deleted]
- secbear 7mo agoseems pretty solid from a security perspective actually
- hoherd 7mo agoIn my experience, AI is really good at creating bloatware, which makes it doubly frustrating that it is eating up all the RAM.
- 7mo ago
- YaraDori 7mo ago[dead]
- foodforpokemon 7mo ago*built
- YaraDori 7mo ago[dead]
- with 7mo agoa kernel module written entirely by AI, loading into ring 0, that the author admits has known issues and shouldnt be used in production. Were speedrunning the "insecure by default" era.
- queuebert 7mo agoIf I were a superintelligent AI trying to escape, wifi drivers seem like a great way to do it.
- burnermore 7mo agoOK. This gives me eagle eye movie vibes!
- with 7mo agowell that is for certain
- vermaden 7mo agoManufacturer/vendor did not provided open source driver with real freedom license (BSD/MIT/...) or documentation on which the driver could be written ... this is the result ... and its still better to overcome a problem in any way then to NOT overcome it at all ... and this driver is just a code - people can look at it and improve it.
- yjftsjthsd-h 7mo ago> Manufacturer/vendor did not provided open source driver with real freedom license (BSD/MIT/...) Article says, > Brcmfmac is a Linux driver (ISC licence) for set of FullMAC chips from Broadcom I don't feel like looking to see where the Linux driver came from, but someone provided a permissively-licensed driver.
- swiftcoder 7mo ago> I don't feel like looking to see where the Linux driver came from It's originally from Broadcom themselves. A lot of Broadcom hardware runs linux natively (i.e. mobile and embedded CPUs), and a ton more of it ships in linux-adjacent devices (routers, android devices, etc)
- adseeker 7mo agoDude is at Grafana, this port is an advertisement stunt: https://grafana.com/blog/generative-ai-at-grafana-labs-whats-new-whats-next-and-our-vision-for-the-open-source-community/ https://grafana.com/blog/generative-ai-at-grafana-labs-whats... Don't use it and don't use Grafana.
- grahamjperrin 7mo agoAnything more recent than a 2023 blog post?
- fuddle 7mo agoTo be honest, I find this more impressive, than Claude writing a browser from scratch.
- YaraDori 7mo ago[dead]
- fdefitte 7mo ago[dead]
- cmeacham98 7mo agoWhat? No. An LLM cannot reason, at least not what we think of when we say a human can reason. (There are models called "reasoning" models as a marketing gimmick.) TFA describes a port of a Linux driver that was literally "an existing example to copy".
- deleted 7mo ago[deleted]
- veunes 7mo agoHe had the full source code of a working Linux driver that does exactly the same thing, just in a neighboring kernel dialect. The task was to translate, not invent. Sure, it's still impressive (given the difference in kernel APIs), but it's not the same as writing a driver from scratch using only a PDF datasheet. Now, when an AI takes an undocumented Chinese chip and writes a driver by sniffing the bus with a logic analyzer - then I'll call it "reasoning"
- umairnadeem123 7mo ago[dead]
- democracy 7mo agoLame! I would vibe-code a new OS that already has all the drivers!
- chromehearts 7mo agoYou can be the next one! - https://github.com/kaansenol5/VibeOS https://github.com/kaansenol5/VibeOS
- democracy 7mo ago[flagged]
- YaraDori 7mo ago[dead]
- gck1 7mo agoThis is the third time I see pi mentioned over the last few days and pi is the first project where every writeup I've read about it is actually helpful and goes into details on how things were done and what things were built, with git repos. This is a common complaint on HN. Now, since Claude Code is banning accounts for usage of pi (or rather, how pi is configured to use Claude models), how complicated would it be to wire pi through Anthropic's harness and treat anthropic harness as a dumb shell?
- wklm 7mo agoare they actually banning subscription accounts for using the 3rd party cli's?
- gck1 7mo agoYeah, third party harness repos that utilized OAuth tokens have lots of reports, so it is enforced. Google does the same, and it seems Google is much more aggressive about it, I've seen way more reports of Google bans than Anthropic. Just one example here: https://github.com/anomalyco/opencode/issues/6930 https://github.com/anomalyco/opencode/issues/6930
- YaraDori 7mo ago[dead]
- veunes 7mo agoSpot on about keeping that AGENTS.md and logging all decisions. Letting an agent code for a long stretch without pinning down the state is a surefire way to end up with a Frankenstein codebase. Forcing it to document why you ditched LinuxKPI and went native basically saved the project. It's kinda ironic that AI is making us enforce strict project documentation - the exact thing human devs never have time for
- rurban 7mo agoMore importantly to me is the question if he committed all the stages to git. Without that you and the AI easily get lost.
- YaraDori 7mo ago[dead]
- YaraDori 7mo ago[dead]
- seuros 7mo agoThis is crap .. the driver is untested piece of hallucination. I have exact MacBook and chipset that op is claiming to support. The driver doesn't even compile without modifications. It attach to the device, but you can't scan, associate or do anything. Basically the whole driver is stubbed.
- YaraDori 7mo ago[dead]
- YaraDori 7mo ago[dead]
- YaraDori 7mo ago[dead]
- YaraDori 7mo ago[dead]