Kernel Fuzzing, AI in Open Source, and Soft Reboots
Loading summary
Jonathan
This week we're back with more drama in the Linux kernel, but also some AI getting added to open source projects. There's news about Sparky Linux and Kaizen Linux. GCC is dropping some targets and Nvidia has a really interesting update. You don't want to miss it, so stay tuned.
Jeff
Let's map out this week's amazing destinations and travel tips.
Will
Honestly, Will, I didn't plan any trips, but I did switch to T Mobile with their new Family Freedom offer.
Jeff
That's not the itinerary we're following.
Will
Well, I'm departing from AT&T and embarking on a new journey with T Mobile. They paid off my family's four phones up to $3200 and gave us four new phones on the house.
Jeff
Bon voyage.
T-Mobile Announcer
Introducing Family Freedom. Our lowest cost will switch our biggest family savings all on America's largest 5G network. Visit your local T Mobile location or learn more@t mobile.com familyfreedom up to $800.
T-Mobile Legal
Per line via virtual prepaid card typically takes 15 days. Free phones via 24 monthly bill credits with finance agreement eg. Apple iPhone16128 gigabyte 802999 eligible trade in eg iPhone11 Pro for well qualified credits end and balance due if you pay off early or cancel contact T Mobile.
VRBO Announcer
How do you make an Airbnb? A vrbo? Picture a vacation rental with a host. The host is dragging your family on a tour of the kitchen, the bathroom, the upstairs bathroom, the downstairs bedroom, and the TV room, which is surprise, is where you can watch tv. Now imagine there's no host giving you a tour because there's never any hosts at all.
Jonathan
Ever.
Ken
Voila.
VRBO Announcer
You've got yourself a vrbo. Want a vacation that's completely and totally host free? Make it a vrbo.
Rob
Podcasts you love from people you trust. This is twit.
Jonathan
This is the Untitled Linux show, episode 216, recorded Saturday, August 16th. The Colonel needs a shave. Hey folks, it is Saturday and you know what that means. It's time for Linux. To the Untitled Linux Show. We're talking about software and hardware, all kinds of good stuff. It is not just me. And for what seems like the first time this summer, the gang's all here. We've got Jeff and Rob and Ken. Welcome guys, to the show. Glad to have everybody finally back.
Jeff
It feels good to be back. Except I was always here. Who are these two strangers?
Ken
Right, well, I'm Ken and to my left is this.
Rob
That's your right.
Jonathan
It's right to left. On your radio dial, left to right. On your TV screens, stage left. Indeed. All right, we've got Rob with us as well, and Rob has the first story, and Rob is bringing the drama.
Rob
That's what I do. That's what I do. So another colonel merge window, another drama story. I know. I love bringing the drama to the show, but this is starting to get a little ridiculous. This week, A set of risk 5 patches for the 6.17 colonel have been rejected. And considering our love and desire for the risk 5 risk 5 to be the next big thing, this. This is a little extra disappointing. So Linus, you know, typical Linus fashion. Well, yeah, it's. It's. It's a good story. So anyway, Linus, you know, he'd ask for patches to come in early for this merge window since he's traveling. And, yeah, it's, you know, got to work around his schedule and. But this set of patches came in a bit late in the window, but that really wasn't his main complaint. But, you know, it doesn't. Doesn't. Doesn't Linus have a backup to cover him? You know, Greg Cage or something when he's unavailable? You know, as the saying goes, what if he gets hit by a bus? He's not necessarily gonna always be here. So if he's traveling, let someone else fill in, like Greg jump in. I don't know. But anyway, Linus was his usual harsh, harsh self, responding by saying, here's a quote here. No, this is garbage, and it came in too late. I asked for every pull request.
Ken
Because.
Rob
I'm traveling, or I ask for early pull requests because I'm traveling. And if you can't follow that rule, at least make the pull request good. Okay, well, so it is. Other highlighted quotes from his rant include this adds various garbage that isn't RISC V specific to generic header files like this crazy and pointless. Make underscore u32_ from u or underscore 2_ u16 helper that makes the world actively a worse place to live. He says, I mean, come on, it's dramatic. But he says it's useless garbage that makes any user incomprehensible and actively worse than not using that stupid Helper. So he goes into some detail about how things are hard to read, comprehend how it can be written better. You know, instead of doing this, you know, maybe do something like this so that, you know, someone can just look at it and know what's going on instead of having to decipher it. Crazy Fair, I guess. And he goes on to say another quote. Things like this need to get bent. It does not go into generic header files. You are on notice. No more late pull requests, no more garbage outside the RISC V tree. And then he finishes his rant with Now I would hope there's no garbage inside the RISC V parts, but that's your choice. But things in generic headers do not get polluted by crazy stuff. And sending a big pull request the day before the merge window closes in the hope that I'm too busy to care is, is not a winning strategy. So you need to try again in 6.18, early in that merge window and without the garbage. So the risk five maintainer Palmer Dabelt. He apologized for his late patches and promised to send them earlier next time while keeping unrelated changes out. And you know, I, I wish, I wish I was good enough, a good enough coder to go in and judge some of these bad commits for myself. You know, we keep reporting Linus going off on bad commits, but I'm not yet, you know, so, you know, are, are there really this many poor developers trying to make commits to the kernel or is Linus just becoming a grumpy old man here? I, I don't know, it just seems to just ran to complain every time, you know. But you know, maybe this is a good thing, you know, as Linus, you know, being strict is quite possibly what keeps the, the Linux kernel as good as it is. But you know, the harshness in his responses maybe is a little over the top. It would, it would. Absolutely. It would. It would deter me from attempting to make any commits to the kernel, seeing, seeing this kind of stuff. So, you know, maybe one question I, I question to ask is, is this pushing away any good developers from contributing, you know, or, or is it just weeding out the lower tier ones? The only, the best of the best who really know what they're doing are, you know, working towards this. I don't know, it would keep me out, but you know, I'm not the best of the best either. So I don't know, keep, keep, keep keeping the Colonel great Linus, but you know, I hope we have a path forward for all these bad developers in the world to minimize this kind of drama in the future.
Jonathan
Yeah, okay, so there's a couple of things that really stuck out to me there. One, Torvald said that he suspected they pushed this late because they knew it would be problematic. And that puts all of this sort of in a different light. Right. So he's saying you knew it was supposed to come in early and I suspect that you knew I wasn't going to like it, so you pushed it late. So hopefully I would just let it slide. I think, I think if that was indeed the case, then yes, there was some calling out that needed to happen.
Rob
Yeah, I think that's. It may be the case, but it also may be just somebody, you know, Linus theorizing and, and put in his own perspective on it. You think?
Ken
I'm not Planning for the 618 Colonel yeah.
Jonathan
And then there was something else I saw this week that you kind of touched on that was really interesting. I saw it on a Slashdot article and it links over to one of the guys at the Register and it's about the secession plan for Linux after Torvalds is gone. And they go with this sort of crazy headline the plan for Linux after Torvalds has a kernel of truth. There isn't one. It's like well okay.
Rob
Yeah, I've talked.
Jonathan
With Greg KH about this and it's like they're sort of making more out of this than there needs to be. The comment from Torvalds was there isn't a formal secession plan, but it's pretty well understood that when Linus is not there, Greg KH sort of has the reins and they will sort of figure it out as time goes by. The way that maintainers are currently figured out. Just the people that do the One of the guys I worked with talked about the. That most open source projects are not actually meritocracies, they're duocracies and that is, it's the people that actually jump in and do stuff that get to lead and make decisions. And I thought that was, that was a pretty interesting, pretty interesting observation. And the kernel really seems to be one of those as well. Um, yeah, interesting stuff going on in the kernel.
Rob
Yeah. Well, maybe risk is too much of a risk.
Jonathan
What's that?
Jeff
J and, and there was something else that didn't get included. Bcache fs.
Ken
Yeah.
Jonathan
Yeah, the bcash FS changes. Yep. Not to see next merge window. If those make it in.
Jeff
I hope so everybody right now my understanding is everybody's waiting for Linus's kind of departure. RC1 here's what's going on and see because is he going to yank it? Is he staying quiet because he wants to totally yank it out of the kernel by 6:18 or it's just, just another delay to kind of smack on the wrist kind of thing or you know, what's so Everybody's kind of up in the air of speculating what is. What does this mean? I'll request was in early enough.
Jonathan
Right. I would hope that if Torvalds was going to yank it, he would have done it as a pull request in the middle of the merge window and not waited till like after the merge window. Considering how he just jumped down the throat of another developer for doing something controversial at the end of a merge window.
Jeff
Yeah, I'm hope. I'm hoping they. Just because it's supposed to be. Well, they're going to take the experimental flag off that. You know, I, I don't know how stable it is. I even, even when they do that personally, you know, I'll give it a couple years before I really, truly, truly test it on. On anything that I can't afford to lose. It just. Oh no. It trashed my drive. Yeah, whatever format redo.
Rob
Okay.
Ken
You know what else is missing from 617?
Jonathan
What's that?
Ken
The last of the riser fs remains.
Jonathan
Oh, did they finally pull it? Make it go away?
Ken
Actually the patch was submitted back around the 13th of August.
Jeff
It was. It was just some little stuff that they final cruft.
Jonathan
They swept out the last cleanup from it. Yeah, being in there. Yeah, makes sense.
Ken
I'm not sure if that actually fell with 616 or 617 given the timing.
Jonathan
Probably. Probably this one. The one that's just looking at the merch window. Yeah.
Rob
If nobody's using it. If nobody's using it, does it really matter?
Jonathan
No, it needs to go. That's the thing.
Jeff
They took it out. They deprecated it a while back. This was just some kind of my understanding with some more odds and ends and little.
Jonathan
Yeah, it's. Oh hey look, this macro is defined but the only thing that was using it was the stuff that we removed last kernel. Let's kill the macro too. Yeah, that happens a lot. All right, so Debian 13 we talked about last week and one of the things we mentioned is there's all of these downstreams from Debian and Ken, you've got a story about one of those downstreams that is catching up.
Ken
Yes, Jonathan, as you mentioned we are seeing some distros update from Debian 12 to Debian 13. So of course Bobby Borisov and Marius Nister had to write about at least one of them. The two articles I have linked report on one of the first Distros based on Debian 13 Sparky Linux 8.0, codenamed Seven Sisters. Now according to Bobby and Marius. All packages have been refreshed from Debian and Sparky's repositories as of August 13, 2025. The default kernel is Linux 6.12 LTS, but you can upgrade to 6.16.0 from the Sparky repository. According to Marius, Sparky Linux 8.0 is available in six editions featuring the KDE Plasma 6.3.6, XFCE's latest 4.2.0 LXQT 2.1 and Mate 1.26 desktop environments. Now you can also install Sparky Linux 8.0 minimum GUI edition, which uses the Open Box 3.6.1 window manager, or you can use the minimal CLI edition if you don't want or need a graphical environment. The updated list of default options includes LibreOffice 25 Firefox 128.13. That's the ESR as well as the Thunderbird ESR 1.1.128.13, but the Sparky repo does include Firefox 1.4.1.0.3 if you do want the latest version. According to Bobby, GIMP now comes pre installed across all ISO images. Now existing Sparky users should follow the official upgrade guide. There are even more details in Bobby and Maria's article, and for the astronomy enthusiast out there, you might even find the official release announcement interesting. Yeah, so Rob, when are you going to try Sparky Linux?
Rob
Nah, I'm not interested. I'll pass.
Jonathan
Yeah, with something like that you just have to ask the question does it really offer anything over just using Debian? I went looking for news on when Raspberry PI OS is going to go to Debian 13 to Trixie and they don't have. The AI says and I don't know if I entirely believe this, but the AI says that there's already an experimental version which I could believe. I see a couple of guides here on how to do the update to 13, but it's not out yet. The last official word was from May when Raspberry PI OS put out a major version bump and they called it the last one of Debian 12 before Trixie this summer. So I would assume soon we will see Debian 13 on Raspberry PI, which that will be interesting to get my hands on. I wonder if that will arrive at just the right time to be able to try it out with the the Argon laptop, the Raspberry PI laptop that I picked up. It should get here in a month or two.
Ken
Now I'm trying to remember what architectures does Debian 13 support.
Jonathan
Debian 13 yeah, it's a.
Jeff
Well, there's a. There's a ton of them.
Ken
Which one would you recommend, Jeff x86.
Jeff
It'S, it's, it's. Honestly, if you're not into mobility and power power savings. It's, it's the. You know. Unless, unless you have a specific reason. X86 is what you should run.
Ken
You know of any CPUs that might give you a specific reason?
Jeff
Spark Station or something like that? Unless. Are you trying for a segue cam?
Jonathan
I was going to say this feels like there's a segue here.
Jeff
Let's map out this week's amazing destinations and travel tips.
Will
Honestly, Will, I didn't plan any trips, but I did switch to T Mobile with their new Family Freedom offer.
Jeff
That's not the itinerary we're following.
Will
Well, I'm departing from ATT and embarking on a new journey with T Mobile. They paid off my family's four phones up to $3200 and gave us four new phones on the house.
Jeff
Bon voyage.
T-Mobile Announcer
Introducing Family Freedom. Our lowest cost will switch our biggest family savings all on America's largest 5G network. Visit your local T Mobile location or learn more@t mobile.com familyfreedom up to $800.
T-Mobile Legal
Per line via virtual prepaid card typically takes 15 days. Free phones via 24 monthly bill credits with finance agreement eg Apple iPhone16128Gigabyte8,299 eligible trade in eg iPhone 11 Pro qualified credits end and balance due if you pay off early or cancel contact T.
Jonathan
Mobile Jeff's got a story about GCC and poorly supported niche CPU architectures. Yeah, I'm going to call it that was a segue. Why don't you take a Jeff that's pretty weak.
Jeff
And a side note, your AI is just as accurate as your Magic 8 ball. So just saying.
Jonathan
Seems likely.
Rob
Come on.
Jeff
At least, you know, at least we've talked about how the Linux kernels discussing from time to time dropping old hardware. As much as people want to keep old hardware going, it dies off. Support can be hard because developers don't have any of the hardware to test on. It kind of becomes very niche like running a specific program for a single purpose and rarely does it get used for general computing. I'm not going to say never, but the really old machines usually sit in a corner chugging away for whatever reason and it does the one function and that's usually what it where it stays. Now the couple stories I have next could have an impact on the kernel support going forward because GCC is talking about dropping some poorly supported and niche CPU architectures. They're doing this because of a few reasons. You know, like one, the hardware never sees code activity and you should, because the languages evolve, things like that. The compiler changes. If it's not changing, then it probably doesn't support everything, which is number two, there are issues with the features that the code supports, meaning the current code won't support the full modern specs. So if you want to compile modern code so you can't do it like the current version of C, you'd have to use an old version, for example, because the translator code inside GCC hasn't been updated to handle new features of as the languages change. And three, there's just not an active maintainer. You know, if, if somebody's not actively at least got their name on it, it's pro, you're probably suffering code rot. Now, a lot of these aren't going to be known to a lot of our audience. So they've got an Aptiva Epiphany architecture which has the issues that we just talked about. There's a Renesis M32C32bit MCU which it had its last update in 2015. And there's Renesis RL78 low power, 8bit and 16bit microcontrollers. And their last code updates and Fixes were in 2018. Now, to kind of help weed out some of this older stuff, GCC is also wanting to have a test suite result done at least once a year minimum to be considered maintained. So if people aren't going through and actually actively running the test suites, and it can't pass the test suites, is anybody even using the code or is it just kind of sitting in there doing nothing? Now, the bigger chip they're talking about dropping, which a lot more of our audience is going to know, is the Intel Itanium IA 64. Now, this was the CPU which was based on explicit instruction level parallelism, where the compiler decided which instructions to run in parallel versus the CPU deciding which instructions to run in parallel, which is like the chips we have today. It came out in 2001, lasted until about 2019 when intel said they were shutting down the last silicon which supported the IA64 instruction set. Now, why did it fail? Well, there's several reasons. We won't go into the full details, but bottom line was it was expensive, no backward compatibility, and it never lived up to the performance promises, basically. And that came from basically the compiler was so hard to write, people couldn't do it to fully optimize to the promise of the hardware. It just, the complexity was beyond what people could program. Maybe with AI it would have been different now, but it was, it was just too much at the time. Now I bring this up because GCC is also looking at obsoleting to IA64 now. They were going to market obsolete in GCC14, then in 15 they unmarked it as obsolete and said it would have support for years to come. And now looking at GCC 16, it's back on the chopping block.
Jonathan
Does that have anything to do with the troubles at Intel, I wonder?
Jeff
Probably does, yeah, I'm guessing so. And that was the last silicon that supported it. In 2019 there was, I think it was like 2017 was actually the last official chip that came out and they carried on for several years without much adoption. It was, it was, you know, closer to when it was released when the people were really buying it and it basically went into like enterprise servers and things like that. Most, most people in the enterprise don't keep really old things around. They're, you know, at least, at least not, you know, a decade plus old Now I should mention that this one won't have an effect on the, on Linux as the kernel 6.6, which is an LTS, was the last version to support Itanium, so it's already dropped out of the os. You know, there's Linux moved on, but there's still a few operating systems out there though which do support the Itanium hardware still. And this could have an effect on it because if, you know, GCC is one of the big compilers for open source software, if it's not supporting it, you either have to drop it or try to find another compiler. Now take a look at the articles linked in the show notes for more details and hopefully this won't affect anybody in our audience. You know, I'm making no promises about Ken. He's probably got something with one of these or more but you know, until then, happy coding.
Jonathan
Yeah, so this, it, it doesn't matter for the reasons that you mentioned, but it's also like who is that? That's so loud, Ken, are you making noise? Somebody's making lots of noise. Anyway, it doesn't matter for the reasons that you mentioned. But there's, there's one other consideration here and that is like even if someone is running Linux on one of these, and so that's going to be one of the major things that you're doing they're not running the latest Linux version probably they're running like the last LTS and you can continue to compile that with the last gcc. And so it's going to be a long time still like years to come before dropping it from future GCC versions actually means that you can no longer compile software for one of these things. Like there's a very long tail on running GCC older versions and all of that stuff.
Rob
AI says Clang still supports Titanium, so.
Jonathan
The C Lang compiler. Yeah, I would not be surprised if they dropped it as well like they inevitably will at some point.
Jeff
Well keep in mind though, if you're running the older version of gcc you are also limiting what language versions you can use, right?
Jonathan
Yeah, well, but I mean it's not like people are porting new software to these things, I just know.
Jeff
No, but I mean if you have the latest rev, say let's just say Chromium and you're compiling it. Well if they rev to a new language version that could cause problems where you've got to then do a little work to get around features.
Jonathan
Nobody's running Chromium on these devices. They're running an old Linux, something like Red Hat or probably Red Hat at this point. Right. And they're running a SQL, they're running a SQL Server or they're running a web server, you know, that sort of thing. Nobody's actually running Chromium on one of these to where they would need to do the updates. It's all software where there are long term support stuff and you can run software from 2018 with bug fixes and not have much of a problem.
Rob
All right listeners, if Jonathan is wrong and you are running one of these old systems and let us know who.
Ken
Your main con, who you've got maintenance contracts with to help us out.
Rob
Well, no, just let us know, let me know. You know you can donate a coffee to me, copy to me and put in the comments that Jonathan is wrong and explain how you are still using this and need to update your Chromium or whatever else.
Jonathan
I would love to hear anybody doing.
Rob
That or just send an email, whatever.
Jeff
Actually I, I would venture, guess it's probably Jonathan is mostly correct. Other than that software from 2018 or 2015, I bet it's not getting any updates. It is running as is and it's, it's in the back corner somewhere and people are like it runs, don't touch it, don't look at it, just you.
Ken
Know, and who can. And, and let's hope that maintenance contract never stops.
Jonathan
Yeah, well, Sami, what you have to do is like you have to go get your old retired sysadmin and thaw him out and bring him in to fix something on that server if it goes down. He hasn't been at work in the last 15 years.
Ken
What company was it? Was it Tuxcare that did that kind of work?
Jonathan
Yes. I don't know that they support the Itanium. They'll do updates. They do live patching on a whole bunch of different Linux things. Super interesting. We talked about Floss weekly a while back. I don't even know that Itanium is in their wheelhouse, though it might be. I bet if you paid them enough it would be. They'd be glad to do it for you. But.
Jeff
And a lot of software that it ran was emulated x86 software. So that was another problem, that a lot of software wasn't natively compiled for it. So it was a completely different instruction set than the X86.
Jonathan
Yeah, makes sense.
Ken
In that case, you might as well switch to RISC V then.
Jonathan
You might as well. All right, Rob has got a story for us and it is about fuzzing the kernel. I think this is something Google is doing. I'm curious, Rob, I want to know more about this. What is up at Google.
Jeff
The kernel needs a shave.
Rob
Yes, kernel needs a shave and Google's going to help with that. So, you know, a critical step to code development and ensuring minimal bugs and vulnerabilities is testing is the testing stage, testing that code. And you know, there are quite a few methods to test code from unit testing, performance testing, functional testing, several others. And fuzzing is one of those. So fuzzing is a technique that uses invalid, unexpected or random data as input and then checks for exceptions such as crashes and potential memory leaks. It is an automated testing technique that is performed to describe the system testing process involved involving randomized or distributed approaches. So basically it's. It's just an automated system, just throws everything at it it can think of as an input and see it. What happens. This week Google has made the the Linux kernel a little more fuzzier with K Fuzz Test or. Or they're going to test if it's fuzzy or not. You know, you got got some hair on there or not. So a new lightweight framework. So K Fuzz Test is a new lightweight lightweight framework for in kernel fuzz targeting for internal kernel functions. So the goal of KFUZ test is to make it easier to exercise Linux kernel code paths that are difficult to do from the system call boundary. So to quote Google engineer Ethan Graham, this patch series introduces KFUZ test, a lightweight framework for creating in kernel fuzz targeting for internal kernel functions. The primary motivation for kfuzz test is to simplify the fuzzing of low level relatively stateless functions such as for example data parsers format converters that are difficult to exercise effectively from the syscall boundary. It is intended for in situ. I don't know that word in situ. I don't know that word in situ fuzzing of kernel code without requiring that it be built as a separate user space library or that its dependencies be stubbed out. Using a simple macro based API, developers can add a new fuzz target with minimal boilerplate code. So the co design consists of three main parts. A fuzz test name structure type macro that allows developers to easily define a fuzz test and then two there's a binary input format that allows a user space fuzzer to serialize complex pointer rich C structures into a single buffer and three metadata for tests, targets, constraints and annotations, which is emitted into dedicated ELF sections to allow for discovery and inspection by user space tools. These are found in and KFA's test targets, targets, constraints, annotations. So anyway, with this new automated K or automated fuzzy kernel tool, Linus won't have to spend so much time testing kernel code and can spend more time criticizing the kernel developers. Win. Win for us all. Okay. But in all seriousness, it should help find more bugs quicker so they can be fixed faster.
Jonathan
In situ just means in place. It's a fancy way to say in place. This is interesting. There's already been some feedback where people are saying please don't add all of your macro stuff to our source code files. And it's unclear whether or not it can be added without doing that. Hopefully it'll be able to, because yes, adding a bunch of macros to source code files is a pain.
Ken
With this kfuzz. Is this going to be making it a broader search for when you're doing tests through the frameworks?
Jonathan
No, Essentially what a fuzzer lets you do is it lets you pick a very specific, usually a function and say, all right, I want to see what this function does when I give it all sorts of different input and it lets you do it sort of detached from the rest of the kernel. So you can essentially you set up a kernel environment and you put things into memory to make it look like you're running a kernel. Maybe you load a snapshot into memory of a running kernel, and then you just call this function repeatedly. You may reset the memory back up in between calls, depending upon what you're trying to do. But you just call it repeatedly with slightly different input every time, and you see what happens. So it lets you do things like you can then hook it up to. I think Valgrind is one of the ways to do this, where you watch what lines of code actually get exercised. And so then at the end of your fuzz run, you've got like a coverage chart of, okay, inside of this function that I was fuzzing, I have coverage of this line, this line, this line. And so you'll even get numbers like, we did a thousand runs. We hit the very first line, we hit that a thousand times. Then we get down to this first if statement. And okay, well, we took one branch of it 800 times and the other branch 200 times. And then at the very, very end of it, you kind of get this report. It's like, here are the lines that you never ever exercise in your fuzzing run. And those are really interesting because that's sort of one of the places where vulnerability might hide because it's a line that's difficult to access. So it sort of indicates an edge case or maybe it indicates dead code altogether. And so like, that's one of the things that you do with these fuzzers. It's one of the sort of the art, where the art comes into it. It's like, how do you design a fuzzer that is going to eventually get you the right kind of inputs to exercise all of these lines? Super interesting stuff.
Rob
Yeah. A simple example of a fuzzing technique might be if you created a website to create a user and you're expecting all usernames to be alphanumerical. That's all you test. Then. Then your fuzzing test may test things like special characters or quotes. And if you don't have things properly escaped, a quote's going to break that and not work. Right. So when you throw things like special characters or things that you didn't expect to go into that input, it's going to cause and show those undesired results. Except for with this, it's going directly to a function.
Jonathan
It reminds me of one of my favorite programming stories. A QA engineer walked into a bar. He asked for a beer, and then he asked for two beers, and he asked for negative one beers, and then he asked for 999-9999-beers. Nothing happened, so he walked out. The real customer walked into the bar and asked for the bathroom, and the bar spontaneously exploded. Programmers know exactly what I'm talking about. Jeff. Got it.
Ken
I was gonna say, all right, negative one beer, then 999 beers it. And that's going into the. I'm trying to think of the phrase for it.
Jonathan
He's a QA engineer. He's a QA engineer, so he's trying to find all of the weird things, all the weird edge cases. Anyway, let's move.
Jeff
And he only tested the beers, not the bathroom, so he totally missed a vital piece of the testing.
Jonathan
All right, so let's. Oh, I get it. Virtual numbers. That was an attempt at a segue again, because Ken is going to talk about VirtualBox.
Ken
Yes, I am. Because this week Bobby and Marius also wrote about updates to a popular open source cross platform virtualization software, as Jonathan called it. VirtualBox. This is going to be version 7.2. Now, according to Marius, VirtualBox 7.2 brings initial support for the upcoming Linux 6.17 and 6.16 kernel series on both hosts and guests, improved Linux Guest Edition Support for Oracle Linux 10 and Red Hat Enterprise Linux 10 guests, as well as improve handling of the VBox X video kernel module in the INIT script for Linux Guest. It also enables video decoding acceleration for Linux Host when the 3D option is active in settings, fixes the swapped scan code for pause and numloc keys in the table used when relying on XKB for translation for Linux host, and fixes a VBOX client start failure with Linux kernels 2.6 or older. Why would you be running an older one? I don't know, but for Linux guests, according to Bobby, the NVME controller emulation has officially moved into the Open Source base package, making it more widely accessible without needing the proprietary extension extension packets. Yeah, let's get rid of the proprietary extension package altogether if we can. There's also a fix for a nasty VMDK corruption issue that could occur during disk resizing. They both touched on updates supporting ARM virtualization Now I'm going to recommend reading their articles for more detail about the ARM virtualization and graphic user base and improvements.
Jonathan
Interesting stuff. So is this cross running ARM inside of a X86?
Ken
That's what it sounds like.
Jonathan
Interesting. Yeah, lots of people are interested in that. And the opposite being able to run x86 stuff inside of ARM. Both of those are interesting for various.
Ken
Reasons because then you don't need to keep switching to hardware that you're using.
Jonathan
Yeah, yeah, that's definitely part of it. Yeah.
Rob
I think the X86 inside of ARM is more interesting.
Jonathan
Well, it depends what you're doing, Right? Like if you have an ARM machine and you want to run games, then. Yeah. But if you have a powerful desktop and you want to develop for Android, then, you know, it's the other way you want to go. Both of them have definitely their use.
Jeff
Cases and I say, sorry, Ken, you've been gone so long. We're rusty with your segues.
Jonathan
Indeed, indeed.
Rob
You got a rusty segue there.
Jonathan
Yep.
Rob
Wheels are gonna fall off.
Jonathan
Well, something that has not changed is that Jeff is the one that keeps his finger on the pulse of Nvidia. I think he is the only Team Green member on the show.
Rob
Nobody else cares.
Jonathan
Nobody else is Team Green. Jeff is holding that one down on his own.
Jeff
Well, I gotta balance it out, you know, we're representing everybody, so.
Ken
So I just out of curiosity, Jeff, do you have a integrated AMD graphics on your system as well?
Jeff
I do, it's just I. It's what came stock in the 7900.
Jonathan
Yeah, that does come with one. A very lightweight integrated GPU.
Jeff
Yeah, I have used it for like debugging some stuff and. But normally I don't ever use it.
Jonathan
Yeah.
VRBO Announcer
25 years ago, a small group of business and government leaders met in Washington, D.C. they envisioned the creation of an independent nonprofit organization with a mission to help people, businesses and government mitigate the growing threat of cyber attacks. Today, the center for Internet Security embodies that vision. For 25 years, it's worked with a global community of IT and cyber cybersecurity experts to develop the CIS benchmarks and CIS critical security controls. These proven security best practices defend against common cyber threats and streamline compliance with industry frameworks, regulations and standards. Today, CIS provides cybersecurity services, threat intelligence and critical resources to help public and private sector organizations alike strengthen their Cyber defenses. Visit cisecurity.org today. That's the letters cisecurity.org to find out how CIS can help your organization. As we create confidence in the connected world.
Jeff
Let's map out this week's amazing destinations and travel tips.
Will
Honestly, Will, I didn't plan any trips, but I did switch to T Mobile with their new Family Freedom offer.
Jeff
That's not the itinerary we're following.
Will
Well, I'm departing from AT&T and embarking on a new journey with T Mobile. They paid off my family's four phones up to $3200 and gave us four new phones on the house Bon Voyage.
T-Mobile Announcer
Introducing Family Freedom Our lowest cost will switch our biggest family savings all on America's largest 5G network. Visit your local T Mobile location or learn more@t mobile.com familyfreedom up to $800.
T-Mobile Legal
Per line via virtual prepaid card typically takes 15 days free phones via 24 monthly bill credits with finance agreement eg Apple iPhone 16128 gigabyte 829.99 eligible iPhone 11 Pro for well qualified credits end and balance due if you pay off earlier cancel contact T Mobile so tell.
Jonathan
Us about the Nvidia driver updates then.
Jeff
So we've not talked about it on this show but I thought I should bring it up because Nvidia released their 580 beta driver earlier this month and now they have a bug fix for it. So with two releases for this I thought hey, you know, we should probably at least touch on it. Now the 580 driver isn't Earth shattering because it's a long term support driver, which means they're not putting in the wild new things into the driver because this one needs to be stable and they're going to take care of it for a few years. Now that's not saying it doesn't get new features and updates because it does, just not the cutting edge ones. If it's a little bit sketchy, yeah we're going to leave it out of this one. And for those that don't know Nvidia comes out with a long term stable release driver and then they have a new features short lived driver which is where they can go nuts because it's pretty experimental and you know, use at your own risk kind of things. I found they're fairly solid but you know, take that with a grain of salt and you need to know how to convert if you need to because I have, I have had to back out some of the experimental ones in the past. But that saying that what does the the stable driver bring? Well it does bring FIFO v1 Wayland support and this is already implemented in KDE and Gnome and it should also give a nice speed up for the MESA driver. So basically it handles communication between the driver and Wayland and uses a more efficient method with less overhead. So it wasn't in the Nvidia driver. Now it is and the rest of the chain is already done. The new driver is also going to have better GPU clock value reporting. It's going to default to RM interlocking mode by default, which basically is going to reduce stuttering especially on VR headsets So it'll help on other things as well. But the VR headsets is the big one. The update ads on top a newer version of the EGL X11 protocol and the EGL Wayland protocol so they get revved up. Added an output bits per component metamode attribute that can be used to control the number of bits per color component transmitted via display connector. So if you haven't specified it, the driver will choose an optimal color format. Where that comes in is you can depending on what version of connection you have, you can. You can adjust the color because it is possible to run out of bandwidth if you know you're running an older version of HDMI or DisplayPort and you can then adjust that to optimize resolution over color correctness. There's also a ton of bug fixes and I'm not going to go over all of them but because there's a ton of them. But a few examples are Fixed a bug that could result in a black screen when setting specific modes on HDMI displays. They also fixed a bug that could cause GTK4 applications to crash when using the Vulkan backend on Wayland. Fixed a bug that led to increased memory usage on X11 OpenGL and Vulkan applications after some suspend resume cycles. And like I said, there was a ton of them in there. So take a look at the article linked in the show notes as it has links to the original release of the driver and they have links to both to other stories that go in like with the fifo. There's a whole article linked in there if you want to know a lot more of the nuts and bolts behind that. And they also have links to the official Nvidia page which lists every single change and bug fix in the software. And like I said, you don't want me to rattling a lot of that stuff off for a long time. So I just hit some of the high points. You should see the 580 driver already in your distros or soon depending on how fast your distribution gets its new drivers in. Or you can always download it directly from Nvidia.com so take a look and see if it cures any problems or speeds anything up for you.
Jonathan
Yeah, we've come a long ways with Nvidia since we had to rapidly shake the mouse to get the screen to update.
Jeff
Yeah, that was. That kept me off Waylon for quite a while because you so what Jonathan's referring to is it wouldn't update the screen unless you moved your mouse. So to get the screen to show up and actually do things, you had to constantly shake your mouse. So it.
Jonathan
Yeah, it was. It was weird. It was a wild bug.
Jeff
Yeah, that was pretty early though. I mean, that was, you know, we were still in pretty beta stage at that point.
Ken
Is there any truth to the rumor that Nvidia is actually giving Linux more support than Windows?
Jeff
Now, I have not heard that. Yeah, now I could believe it if you include Enterprise, the AI type workloads, just the regular display driver. I don't know. Is. I. I can't say, but I would. I would kind of suspect that a little bit.
Rob
I definitely think Nvidia is giving Linux more support than Windows because as far as I know, Windows isn't giving Linux any support.
Jonathan
My goodness. All right, let's talk. Let's talk about AI. Seems like we can't do a show anytime this year without talking about AI. And thank you, Rob. One of these. Rob. Rob has two things. One of these I'm actually super excited for and the other is kind of meh. But that's all right. Take it away, Rob.
Rob
I know Jonathan hates when I talk about AI on the show, but it just keeps creeping in, you know, every show because it just keeps creeping into open source more and more. And so, yeah, a couple of interesting projects this week we have added AI to them and those are fmpeg and only office. So to start, the upcoming ffmpeg 8.0 library adds a Whisper audio filter for making use of OpenAI's whisper model for providing automatic speech recognition and transcription capabilities. Whisper is a highly capable automatic speech recognition model trained on a large data set and will be able to be enabled with the Dash Dash Enable Whisper flag. You know, Ken always likes to bring us FMMEG command line tip. So maybe he will demonstrate this one for us in one of his future tips. Write that down, Ken. We want to see this one in action. So I'm guessing that's one Jonathan's interested in. But there's another one with the only Office. While Microsoft adds Copilot to its Office products on Linux, they add there for a small licensing fee. Here on Linux, only Office is adding AI tools into its suite, included in the base price of free. Well, okay, maybe not exactly. Depends what you tie it into because it's very flexible and it's going to allow you to tie that multiple things. So currently in beta, the latest AI agent lets users type natural language commands directly in to the editors. The AI Agent plugin supports multiple AI providers and can run both in the cloud and locally. And you can even add custom functions to fit your needs. So I guess it depends which provider you use there. Maybe you tie it with a paid one, maybe you don't, but that's up to you. So some use cases like in the Documents Editor, you could generate text, rewrite selection or selected content, explain parts of a document in the comments, or apply formatting in their slideshow presenter. AI can add new slides, insert shapes and labels, change slide backgrounds and create charts or diagrams from raw data. Or in the spreadsheet editor, AI with AI, you could summarize data from pivot tables, apply filters, sort columns, and build charts and diagrams. If you want to try it out, make sure you have only Office 9.0.4 or newer. Then go to Plugins and then Plugin Manager and install the AI plugin 2.4 or newer. And once installed, activate it through Plugins and then go to Background Plugins and then go to AI tab Settings and then under Edit AI Models, click the plus icon to choose your preferred provider from the list. So there is a limited amount I haven't installed. I don't know what that list is, but enter your API if your provider requires it and click Update Models List. You will then see a list of models to choose from. Select one and click ok. So, Jonathan, stop fighting the AI overlords. Resistance is futile.
Jonathan
Resistance is futile. I will be assimilated. So I love Whisper and ffmpeg. I think that's going to be super useful. If I can make it work, I will use that. Right? Because I create a. I do the text to speech. Excuse me, the speech to text for Floss Weekly and we do a transcript of that. And so like if it has the ability to differentiate between the different speakers, I will totally use that and dump the closed source product that I'm using now.
Ken
Just out of curiosity, Jonathan, what version of FFMPEG are you currently running? Let's see, because I just checked in with my ubuntu studio, it's 7.1.1.
Jonathan
I mean on the laptop here it's 4.4.2, but that almost right? Yes.
Rob
Yeah.
Jonathan
I am more and more thinking that I need to upgrade to Fedora on this popos laptop.
Jeff
I'm putting cash EOS on my laptop. I got, I got a friend at work who he, he kind of helps with some of the Kubuntu packaging.
Jonathan
Oh, cool.
Jeff
And he's really impressed with Cashy how.
Jonathan
It'S working on the desktop behind me, which is a fedora system that's 7.1.1.
Ken
So a lot more Modern.
Rob
So. Yeah, go ahead, Rob. I was going to say I think the whisper stuff is cool, but I don't really do anything with that, so it really won't serve me much. But I think the only office stuff I know. Jeff has told me he does stuff like this, too, where, you know, he'll have something in a document and they'll take it over to AI and. Well, at least I do. I know exactly what his process is. But, you know, I'll have something and I'll want it to be grammar checked or written better or something. I'll throw it in. It's like, write this better for me. Whereas it'd be nice with only office. I could do it in place right there without copy pasting, dropping it in and. And, you know, get all that stuff.
Jonathan
Yeah, I mean, I do resist letting the robot write anything for me. I've not gone down that road yet. I'll let it look at my source code. That's fine. But I don't let it actually write any of my prose.
Jeff
One thing.
Ken
Go ahead, Jeff.
Jeff
Well, I was gonna say I use it to not only take documents and check it, and you can have it write your prose. And you can also. I mean, sometimes it gets pretty highfalutin English, you know, it kind of flowery, but you can say, you know, put it in a standard tone or whatever. And, you know, you always double check it because it sometimes will take a left turn and you go, whoa. Where? That is not what I said.
Jonathan
But it.
Jeff
But it helps with a lot of grammar and vernacular. But the other thing is, you can take a document that has several items and you can go summarize this and build me a PowerPoint and it'll throw it in and it's probably 60, 70% there. You got to go in and fix some things and rearrange. But the framework is there, and it saves you a bunch of, like, formatting and laying out.
Jonathan
Yeah, I suppose so.
Jeff
It doesn't actually.
Ken
It does put the commas in the right place.
Jeff
There's a what?
Ken
It does put the commas in the right place sometimes.
Jeff
I mean, you've got a. You got to double check it, but it's faster to read it and double check it than it is to write it from scratch.
Jonathan
It depends on whether you're Oxford comma.
Rob
Man, you calling that a PowerPoint? Your window side is showing there. You're letting your window.
Jeff
That's what. It's what I have to use at.
Ken
Work now, Rob, I just want to clarify, because I didn't Hear you cover. Emphasize this. But I noticed Saurav in his article does emphasize this is an in development feature. Use it with care.
Jonathan
I mean, that's true. It is basically all AI at this point.
Jeff
Yeah, I find AI is wrong a lot of times, but a lot of times it gets you partway there and gives you kind of a head start. And you know, and I do use it and I will say I cannot talk about where it's used outside of just the normal office products.
Rob
Make sure your document is backed up before you select it and say, rewrite this.
Jonathan
Yes, this is true.
Ken
Actually make a copy of your document before selecting and rewriting.
Jonathan
That would be called backing up. Yeah. The thing I love the most though is you can see people and they just have fun with it and they're like, why does AI use so many EM dashes? And the AI will use EM dashes in its response. Can you reword this without using any EM dashes? And the AI uses EM dashes and it's the double dash, right? That's what an EM dash is. For whatever reason, AI loves it. And it's like you still use. I find it endlessly humorous because the AI response is, you're right, I did use an EM dash in that. Let me rewrite that without using one EM dash. It's like, ah, it's hilarious.
Jeff
Another good one is please summarize my work week in a comedy roast format.
Rob
Yeah, I've had to do things like that. Like, I'll say, no, you're that's not, not right. Try it again. Oh yeah, you're right, I'm not right. And they'll give me the exact same answer. Or sometimes it'll say, no, I've had it say this too. It kind of surprised me. Is like, no, this is the right answer. I don't know why you don't think it's not right. Disagree with me. I'm like, no, it's not.
Jonathan
Pretty dang sure. All right, well, let's move on from the AI to Kaizen Kaizen Linux and its untimely or timely demise.
Ken
That timely or untimely is a good question. But this week Bobby Barsoff also wrote about this Debian based toolkit tailored for IT professionals, system administrators and network engineers, offering a suite of tools for diagnostics, maintenance and repair of computer systems and networks that announced its final update. Now, why do I say final? Well, the release Of Ryzen Linux 3.0 also announced the end of the project. In fact, the Kaizen Linux rolling 3.0 release note starts with. I would like to begin this blog post by announcing the end of the Kaizen Linux projects with this latest release. Now the Kaizen Linux is designed as a live system that can run from a USB stick without installation. It includes utilities for disk management, data recovery, network analysis, system monitoring and hardware testing. Kaizen Linux 3.0 is entirely re based on the just released Debian 13 Trixie and running Linux kernel 6.12. Some of the new tools included by default in kaizen Linux 3.0 include glab. Now this is a command line interface tool for interacting with GitLab Tecton CLI. Are you familiar with that one? Jonathan? It's a command line tool designed for interacting with Tectonic, an open source framework for building continuous integration and delivery.
Jonathan
Interesting.
Ken
For systems on Kubernetes. Another tool is Argo cd, another tool specifically designed for Kubernetes. Here's one I found interesting. Open bao, it's an open source community driven fork or vault managed by the Linux foundation. And then another community driven infrastructure as cold tool is opentofu. And the last one that I'm going to talk about is ZKS DKMS, which provides a convenient and robust way to install and maintain open zfs on Linux systems, particularly when using custom kernels or frequently updating the system kernel. Jeff, this one, that is an updated fork of Neo Fetch that I don't know if we've ever covered, so I'm going to save that for later.
Jonathan
Clever. Yeah. This is interesting. They did say that it will get security updates for like two years after this. It was one of the things in.
Ken
The article which is more than Intel's doing.
Jonathan
Yeah, I mean you gotta keep in mind though, like it remains to be seen if that will actually happen for the next two years. That's all that that is.
Rob
Yeah.
Jonathan
That's a lot to promise.
Rob
Well, I mean they could get security updates for the next few years, they just might not be timely. Yeah, I suppose we'll give you one a year.
Jeff
Yeah, well I looked on Distrowatch and it shows that for a while they had about a six month cadence and then from version 2.3 to 3.0 it was about a little over a year. So it definitely was kind of slowing down a little there.
Ken
The other thing, life might be getting in the way.
Jonathan
Yeah, well, yeah, and that's what he talked about.
Rob
They failed their Six Sigma certification.
Jonathan
The other thing to keep in mind is this is downstream from Debian 13 and so like there are upstream fixes that are going to happen that you can pull. And they even changed some of their tooling to. Instead of pointing to the Kaizen update wrapper, it now just. It redirects to. They call it full upgrade. I'm not super familiar with Debian to know exactly what that referral here, it's talking about how that this is. This is a less Kaizen thing and it's more just of a Debian thing. So hopefully you can get updates still without breaking your system.
Rob
Yeah, just gotta get updates from. Directly from Debian. So that's just gonna. Until that's in the Life.
Jonathan
Yeah. Debian 13 will be around for a.
Ken
While and with that full update, that could possibly mean it'd be easier to update it to Debian 14 if you still are using it at that point.
Jonathan
Yeah, possibly. Their whole thing with Kaizen though is that it's like. It's a USB distro USB without any install. And so I would be a little worried to do like a full upgrade between versions on that because I've had kernels and stuff break without even doing anything fancy. And I think trying to do it on a USB stick like this could just. Could be asking for trouble.
Ken
You might end up having to do a reboot.
Jonathan
More like a reformat.
Jeff
He's trying to segue. But I was gonna say one of the things too is I did a story a few shows ago about some of these and you know, this wouldn't surprise me. It's the same thing where someone says, oh, we're gonna do this great thing, we're putting it out there and it's.
Rob
Like, whoa, it's a lot of work.
Jeff
And you know, the people start burning out and it just. Some of these distros just don't last.
Jonathan
Yeah, that's true. And sometimes, sometimes the cool thing that they're doing gets picked up by one of the major distros. Right. And so that. That is fairly useful when that happens. And that's kind of one of the. One of the main features of being able to run one of these little tiny distros that you could do that. You could try something out that's really interesting. And yeah, sometimes they get picked up and it becomes the next big thing in Linux. And sometimes nobody uses it or maybe nobody wants to maintain it. Maybe it was too much work and just kind of goes away. The way goes.
Jeff
Sorry, Ken, I wrecked your segue. Feng shui.
Jonathan
Indeed. He was going to ask you about reboots. What is a soft reboot?
Jeff
So we've all rebooted our machines and probably never thought much of anything about it and probably never even heard of a soft reboot. Other something goes wrong and with your machine and it's like I'm just going to reboot it, you know, and the only, the only option is like, oh, a reboot didn't fix it. Okay, I have to power it down for a couple minutes to let everything settle back into its normal position, you know, like some capacitors drain and whatnot before we fire it up. And then, oh, okay, now everything works again. Well, this story is the opposite of that. A reboot that's quicker and smaller than a normal reboot. So sometimes the issue isn't in the kernel or really low level system code, but just in the, maybe the desktop manager or the interconnections of the programs that you're running, you know, all the user space stuff. Now in a normal reboot, systemd starts a clean shutdown because it does the shutdown and reboot basically almost the same. It sends out a sig term which says hey, user land program shut down. And a sig kill to all the programs that didn't listen to the sig terminate. Basically it's, you know, the first is a nice, you know, hey, please shut down. And the second is a yelling, I said shut down. So then it unmounts file systems, unloads drivers, all to let the kernel shut down and finally the reboot signal or shutdown signal is sent to start the booting process or the final shutdown. Now a soft reboot, or they also call it user land reboot is just like that concept, except it never hits the kernel or other kernel based things like a driver. So why do this? Well, they talk about it can save a lot of time and keep your uptime higher. Now it does require you to have systemd version 254 or higher, so you got to have at least that version. It does mention in the article that for example Debian 13 Trixie, it's going to support this feature. So what does it do? Well, when you do a soft reboot, it stops all user space processes. So services, apps, background tasks are all terminated. It reinitializes user space so the system starts fresh with default services, but it keeps the kernel running, so no hardware or driver reload happens. Now the article makes note of this and it should be noted that if you update the kernel hardware or drivers, you need to do a full reboot. The soft reboot isn't going to work because it needs, the kernel needs a restart. So this is just for things like user space, software updates, you know, you updated some program you're running and it's like, oh, it messed something else up. Okay, just do it and do a soft reboot because it, it wasn't anything in the kernel or lower level drivers that changed. So how do you do it? Well, like I said, first check your version of System D and you can use the command systemctl space dash dash version and that should tell you exactly what version you've got. And if you have the correct version, you can run the command sudo space systemctl space soft dash reboot and that's really all there is to it. It's, it's pretty simple and they, they talk a lot of the reasonings. You do it, you know, it's a lot quicker the up times, things like that and, and some warnings about, you know, hey, don't, don't update your Nvidia driver and then think the soft reboot is going to take care of it because it won't. Take a look at the article linked in the show notes for a lot more details. You know, they give a lot more positives when to use it, when you should do a full reboot. It also has a frequently asked questions section. They have some tutorial stuff you can follow around, follow along with and find out, you know, you know, running this service, then do this. And so it's definitely, definitely something to take a look at. And take a look and maybe, you know, you want to set up an alias to quickly soft reboot your system and get it back going and begin at a faster rate.
Jonathan
Yeah, it's interesting to me that Debian 13, they talk in the article Debian 13 will have this out of the box and they have, it looks like a software reboot alias, my Fedora system. I just checked, it's new enough. It does indeed have the systemctl soft reboot. Not gonna do it now, but I will have to try that because it sounds very interesting and I'd like to see what happens.
Ken
I actually tested it out an hour before the show and I ended up.
Jonathan
Having to reboot, do a hard reboot to get things back. That's funny.
Jeff
What version were you running? System d? I've got 257.
Ken
257, actually. Oh, 2504.
Rob
Which distro is that?
Ken
Ubuntu Studio 2504.
Jonathan
Yeah. I will give it a try and.
Ken
Report back to it because what's interesting is I just checked in my Open Seuss tumbleweed that I've got in a VM is running254.7.
Jeff
Let's map out this week's amazing destinations and travel tips.
Will
Honestly, Will, I didn't plan any trips, but I did switch to T Mobile with their new family freedom offer.
Jeff
That's not the itinerary we're following.
Will
Well, I'm departing from ATT and embarking on a new journey with T Mobile. They paid off my family's four phones up to $3200 and gave us four new phones on the house.
Jeff
Bon voyage.
T-Mobile Announcer
Introducing Family Freedom. Our lowest cost will switch our biggest family savings all on America's largest 5G network. Visit your local T Mobile location or learn more@t mobile.com familyfreedom.
T-Mobile Legal
Up to $800 per line via virtual prepaid card. Typically takes 15 days. Free phones via 24 monthly bill credits with finance agreement eg Apple iPhone 16128 gigabyte $829.99 eligible trade in eg iPhone 11 Pro for well qualified credits end and balance due if you pay off early or cancel contact T Mobile.
Jonathan
Yep. All right, well, let's get to some command line tips. We'll talk later about the soft reboot thing, but for now let's move to some other command line tips. And Rob is going to go first. And he's got something else that is very system D adjacent.
Rob
I'm going first. I'm pretty sure Jeff already kicked off the command line tips early with that last article.
Jonathan
No, no, see, that was a story and this is a command line tip. It doesn't matter that they're both actually command line tips.
Rob
It was a command line tip hidden as a story.
Jeff
I'm just oozing information.
Ken
Sorry.
Rob
All right, so my command line Tip is systemd manager 2e. So this is a TUI or a text user interface to manage your system D. So it's similar for Windows users. If you go into the task manager, go into services and see what's running and make adjustments there. It's similar to that. So for those watching, I'm going to run that systemdash manager dash 2e. All right, here we go. And on here you can see your services. You know, I have applied armor service shows that that's active. The state is enabled, it's loaded, it has a description. You have inactive ones. And then at the bottom it shows what you can do. So, you know, if I do X, that's going to stop it. If I do S, that's going to start it. I can D to disable it. Let's Re enable that and if I do C, that's going to take me over to the file itself. So if you want to learn a little bit More about the systemd files, it tells me this one's in UserLib systemd system AppArmor service and I can look through here and look at that whole file and kind of see how it works. If I hit over, it's going to show me the apparmor service log. I'm going to Q to go back. So here you can with this systemd Manager tui, it's kind of a long type. Maybe you want to do an alias to something shorter. But with this you can manage your services that are running. Check out the show notes. It's on GitHub Matthias Git. You can check out the show notes, find the link and use the system manager too if you want.
Jonathan
Yep, very cool. All right, I think Ken is down next. And Ken had an idea a couple of days ago yesterday about something a little. A little off the wall, but I thought was super interesting. Ken, you have. You're going to do a dissection, right?
Ken
Yes. The first command line tip that Rob was thinking about doing this week used the curl install command for installing it. So I'm going to show you how you can dissect it. Let me go ahead and transition position to the command line so you can see what I'm doing actually to my OpenSUSE VM that I'm running here now in our show notes, I've gone ahead and linked to what Rob was originally going to talk about and I'm going to go ahead and pull that. Let's try this again there. Pull up the Get Hub location for the application. It's application for synchronizing Flatpak applications between Linux devices through git. But what he has is he's got the commands he's providing to install it are using curl and piping A. I'm assuming a bash script from looking at this through Bash. Now, instead of just doing a copy and going straight to the terminal, I'm going to Recommend going into k8 and in this particular case I'm going to go ahead and copy it in twice so that I can demonstrate how we can look at what this is doing. First by getting rid of the pipe into Bash and then coming over to the options that curls using, which tells curl to be silent show errors and to follow the location if it changes. So I'm going to keep that follow location, but I'm going to put in lowercase V for verbose Lowercase I for information. Actually, I'm. I can't remember off the top of my head what that one does, but we're going to use it. We're going to go to a command line.
Jonathan
Lowercase I is include. It includes response headers in the output.
Ken
Yeah, that's what it is. We're going to paste it in there. Since it's not going into bash, what do you think it's going to go? Standard output, which unless it's got some weird coding, shouldn't do anything, right? Indeed, from the looks of it, it didn't do anything too dangerous. If it did, we could use that soft reboot that Jeff talked about. If we scroll back up, we can see where the host is and that the Host is using port 443. Apparently it doesn't support IPv6 and it does support using secure handshaking, because you got the TLS handshake, how it's changing ciphers and all. I'm sure Steve could get a lot more information, Steve Gibson could get a lot more information out of all of this for you. It talks about the security levels, the certificate stuff.
Jonathan
Yeah.
Ken
And then here's what I found interesting. This is the server is nginx server, but then it goes on down and then you have the beginning of the BASH file. And the first thing we see is he creates some variables. And from the commands themselves, I'm going to assume they're variables that he can use at the BASH prompt to create change colors. Then the next one is where he tests for a variable experimental. And if it's not there already, we'll flag it defaults. Now, if you remember, when we copied it, there was one that does have the experimental equals true, which is for if you want to try the experiment experimental version. And then he goes through and if you see anything that has a colon open and closed colon, parentheses. Parentheses with the.
Jonathan
Curly bracket.
Ken
Yeah, curly brackets always stumble on that one. What to call it? I know what it is. But basically that's telling you you're starting a function and he's got a couple of functions that he creates. The interesting names are date, which is interesting, and uses that as a function name. I'd be careful of that. Then waitwithspinnerloading operation and then one called experimental. And as we look at each of the functions, we'll see that date just basically prints does a print command. And you could actually copy that into another terminal and do it by itself, which I've got another terminal already open here. So if we just highlight that and copy it. If you are wondering how I'm doing a copy and paste from one to the other it's control shift C in my terminal, then I can just type date. So now that's what it does.
Jonathan
Yeah.
Ken
And then the weight with spinner you can't really do that because it's got some local variables that it processes based on what's fit into it. It looks like ow. And as you look through the operation when you'll see it's got sudo commands and remember what we said about the sudo commands in a bash script?
Jonathan
No, what did we say that by.
Ken
The if you just do a pseudo command by itself it's going to prompt you for the your password every time. I'm going to show you how he takes care of that. When we get a little further down here, he's got that also. So once we get past the functions he's created he does test for who am I to see if you're root already and what does it do if you're not root?
Jonathan
It's running a pseudo command with a.
Ken
Dash V. So it's saying if basically if that doesn't elevate you then it's going to fail. And it's he sends out the command fail to elevate privileges and the exit one just exit completely out of the script. If you enter your password and it passes then it passes that and goes on to this case command which has two options true or false. By default if you don't have the experimental op entered with equals true if we go back it automatically set it.
Jonathan
Defaults.
Ken
Which is why I did that back there so that it's going to default to the faults where it is going through. It's this test is going to look to see if it's already installed and it's interesting what he does. If you go I'll go Back to the operations 1 show you in a minute. But if it's already installed it it sends echoes to the your terminal flatsync is already installed checking for updates and then it comes down and this here's what's interesting is you can with my terminals I can go in here and copy that link address and actually paste it in here. I don't want to paste and go because I know for a fact that that's just going to take me to a four or four but I can go back to releases and that'll bring up the releases page and it shows that the latest release is 1.8.1 and then it pipes that webpage through grep looking for location and then pipes that through awk, where you does a printf that looking for that and pipes that in through transition or trans. Yeah, translate.
Jonathan
Yes.
Ken
That you covered a couple of weeks ago. Yeah. Basically what that does is it takes. Catches the 1.8.1 and removes the dots and the V from it and then has that T which sends it into a file which he names remote and then he's doing a similar option for whatever you have installed locally. And then he comes down and uses CAT to compare the information in the files remote and local, which should be numbers, and see which number is higher. If the remote is less than local, then nothing new. And you notice the use of the shred command. That was it you rob, that covered that a while back.
Jonathan
It's been a long time ago.
Rob
Yeah, I think so.
Ken
So that he can just delete those files off your system and you'll never know they were there. Which is convenient because it means you don't have to go in and clean up after them.
Jonathan
Just hope you don't have anything named remote or local when you start running this.
Ken
Yeah. In the current directory. So I would recommend do this from a temperature, do any kind of curl commands from a temp directory.
Jonathan
Yeah.
Ken
Just for that reason.
Jonathan
Yeah, really. So best practice here, he really should go stash those inside temp, not in the current directory.
Ken
Right. And so if you want to submit that to him as a possible patch, you can. Let's see. And then he comes down, he's going through all that and you'll notice that with the faults, he's calling operation update or the operation install and pipes the output that would go to standard out into dev. No. So again, you're not seeing anything. But he's also got the single ampersand, so it runs as a background option. Then he does wait with spinner loading install with the using the version variable that he creates up here. And if we go back to the operational one, you'll see the first thing it does is it uses WGET to quietly release download that version. And here we've got the version put there, which is why I backed up to the releases, so I could just pull up. Because if you do just the download, it does give you a 404 because there's not an actual download page to pull up. And he's put downloading a TAR file, then he's extracting that TAR file. You're right, Jonathan. We probably could do a patch update to him to update this. So it's all done in the temp file temp folder. Because this is all in whatever folder you're running it from by default.
Jonathan
Yeah, just a little messy.
Ken
If nothing else at the beginning, put it to CD temp. So everything's done from there. Especially since if you look here, the install is doing it as root or remember when I covered that command back, I think episode 179. This is one of those cases where that's what the install command would be useful. But he's telling it to install into FlatSync user bin now one, let's see if I can find that location. There's one thing I found interesting that he does as a test. Oh, right here in the experimental. He does a pseudo RMRF that would catch my thing. I definitely want to know what that was doing.
Jonathan
Yeah.
Ken
Because here he's using it for user local bin and share. In other words, user local bin or user share flatsync. He's actually just removing that because that's actually a folder that he creates. Because after he does, that's when he does the sudo install into root flatsync and he goes to local bin flatsync. But he also copies. After he's compiled the application or downloaded the open extracted from the tar file, ELSU copies Flat sync app into user Share flat sync and then changes the ownership and modifies the tributes to it. Which is why he needs your password, because he's not going to be able to do that otherwise, which is nice to know. But you're at least you're able to go in and look at this bashful script to see what he's doing and verify that he's not just saying having you do sudo RM rf root.
Jonathan
Yeah, I am actually opening a. I'm opening an issue right now as we.
Rob
There you go.
Jonathan
So we have this discussion. It's like you should really not do this at the current directory.
Rob
So I actually did a much truncated version of the install rather than using the curl install that he had. Since the actual program itself is just a rather short script itself. I just downloaded the script and put it where I needed and ran that. I looked at it and ran that.
Ken
Now with this, you can actually use this to modify the script and run it locally by just redirecting instead of piping through bash, redirecting it into a locally stored file, go in and make the modifications you want to install it where you want.
Jonathan
Yep, yep. And then multiple times. The nice thing about this script is it's short and it doesn't use any really weird bashisms. Like, I've seen some of these scripts that you just look at and it's like, what, what is this doing? This one is pretty, pretty parsable. Yeah.
Rob
And if you look at the script itself, that's even shorter because like, Ken has the install part of the script that he went through.
Jonathan
Yep, yep, Absolutely. Yeah. Very cool. Very useful to sort of step through. How do you do this to audit one of those? And how do you read one of those? Yeah, super useful. Jeff is up next with the timeout. We're putting him in timeout. What are we putting in timeout, Jeff?
Jeff
This is going to be a short one. Timeout's a command that's part of Core Utils and like it sounds, it runs a command until a time limit is reached. So one of the uses is to kill a script or commands which could hang. So normally you have a script that should be done in one minute. Well, if you have a timeout of like three minutes because it's. Because something is wrong and it's going to keep doing what it's doing, waiting for something else that isn't working or isn't running or whatever, this is a way to just keep it from bogging down your system or running forever. The syntax is simply timeout space, the time you want to wait space the command you want to run space. And if you have any arguments you need to add. Now, if someone's thinking, oh, this would go great with the until command, you're sort of correct. You can't use timeout with until directly because timeout only works with commands. And the end until is a built in BASH keyword. Now, the article does go on to show you how you do it. For example, you do timeout space, maybe 30 second space, bash space C and then quote and then your until command and then close quote. So basically you're wrapping it in that command line. It's like a mini script inside that command line. That's the way you can use it.
Jonathan
Launching it inside another BASH process. Because you need a process. Timeout needs a process to watch.
Jeff
Yes, exactly.
Ken
Would a function work as well for that?
Jonathan
No, it needs a command. I don't think a function creates a new BASH process.
Ken
So you'd have to use BASH to load that function and then run it, I suspect.
Jonathan
So I haven't tried it, but I'm pretty sure that's the way that would go. Pretty sure.
Jeff
All right, I'll say in the article. Take a look in the show notes. It's got code snippets, they got things you can follow along with some best practice practices to use when you use it, like making sure you have an error code or exit code so you know what happened when it finishes and you know a lot more details in there, but that's the basics of it. So maybe you can incorporate it into your next scripting project.
Jonathan
Yeah, absolutely. I am quickly looking for. Yeah, here we go. This will work. I'm going to share my screen because I want to show you guys something, and I want some. I want some free advice. So let's see. Here we go. If I do an ls, I've got colors, and I like my colors. But if I do an LS and then pipe it through grep. Pipe it through grep. Grep takes over the colors, so it wants to highlight. Here are the things that I found. Here are the matches. Well, what if I want those original colors? Well, you can tell grep I think it's color equals none, if I remember correctly. Right. So you get this and no colors except it also does not pass through the original colors. And I did a bit of work with this. I tried to. I saw some suggestions, like maybe you could pipe it into t and that would do it. Nope, that doesn't do it. Pipe it into cat, pipe it into echo. None of these things do the thing that I want it to do. And so I am asking the hive mind, how do you run grep and get your original colors to flow through so that you can actually see it? I have not figured it out. I really suspect that there must be a way to do it, but I have not found it yet. And so this is my command line tip. It is actually begging our audience, please tell me, how in the world do you run grep and get your original colors to show up? Does anybody know how to do this? Is there a way to do this? Or does somebody just need to write a replacement for grep? I'm already seeing one suggestion that I'll play with after the show is done, and when we figure it out together, we'll come back and we'll make that my command line tip for next week.
Rob
You're doing this little, little backwards, Jonathan.
Jonathan
Pretty soon it.
Rob
Pretty soon, we're all just going to be okay.
Ken
So it's called interactive.
Jonathan
Yeah, Interactivity. It's great. It's. It's the new thing.
Rob
We're all just going to be asking for tips. All right, I'm out of tips. So how do I do this, guys? Be asking a new question every week.
Jonathan
Yeah, we'll see.
Ken
So you Already tried the dash, dash. Color equals auto.
Jonathan
I am pretty sure I have tried that. Yes. I think that just does the color highlighting as it was doing. Let's see.
Jeff
For those that are only listening to audio, I can tell Ken is thinking hard right now on this. He's a man on a mission. He is focused trying to figure this out. So we'll see what he can.
Rob
Will have the tip for this one.
Jonathan
Yeah. No, it's mine. It's mine. If I could. If we figure it out, it is totally mine, not yours.
Rob
Ken figures it out, it's his.
Jonathan
I guess that's fair.
Rob
If he doesn't bother telling you.
Jonathan
Yeah. Line buffer does not seem to do it either, by the way. Unless that also needs to be color. None. Let's see.
Rob
We're gonna have to start a Kickstarter for this one.
Jonathan
Go fund me to figure out how to make this work. Oh, goodness. All right, well, that is the end of the show. We'll be back next week, hopefully with the answer to this question. Until then, I'm gonna let each of the guys get in the final word if they want to to on anything. And we will let Rob go first, because why not?
Rob
That's what we do. So, as always, if you want to get more me, you can come connect with me at robert p.campbell.com on that website. You can see my resume, which I think I need to update, but stuff about me. You can see links to my LinkedIn, my Twitter, my Blue sky, my mastodon, and a spot to donate a coffee to me. Or if you want to donate to one of the other guys, you can also do it there. As some of you listeners know, I finally made a trip and met. Met Jeff Massey in person a few weeks ago. And I paid up the coffees that I owed him along with an advance on the next coffees. So currently, Jeff owes me coffees. So if you want to get that squared up, you can just click right there and donate to pay off Jeff's debt to me.
Jonathan
Oh, that's great. All right, Jeff.
Jeff
You know, don't really have anything, so it's poetry Corner switches are. The switches are down. Have you checked the spanning tree? The tree is on fire. Have a great week, everybody.
Jonathan
Oh, I've not messed much with spanning tree, but I get the joke. I know what it is. All right. And Ken, anything you want to plug?
Ken
Yes, I wanted to replug a link I've got in the show notes to a blog, to a post that Alexer member Bob posted about today. We're celebrating Debian's 2 to the 5th birthday. This is. We don't do math on this show.
Jonathan
Or 0x20 years. 20 in hexadecimal. Very nice.
Ken
Or 32 in decimal. Oh, and by the way, I do want to demonstrate the soft reboot.
Jeff
Oh, and there goes Ken.
Jonathan
Thankfully, no.
Rob
That's the way to close out the show.
Jonathan
Indeed. Very cool. All right, thank you guys for being here. I appreciate it. If you want to find more of me, you can check it out@hackaday hackaday.com that is where my security column goes live on Fridays. That's where the new home of Floss Weekly is at the these days and we have a lot of fun over there. So if you want more of me, you can come check it out. If you want more Twit goodness, there are plenty of other shows, but there's also Club Twit. You're not part of the club. You should go take a look. It's not much more than the price of coffee. Price of a cup of coffee per month and you get ad free access to all the shows, some behind the scenes look and more. We appreciate everyone that is here, those who get us live and on the download and we will be back. And we'll see you next week on the Untitled Linux Show.
Tech News Announcer
Get Tech News at your pace with TwitTV's perfect pair of shows for quick, focused insights. Tech News Weekly brings you essential interviews with the journalists breaking today's biggest stories.
Rob
But maybe you need more.
Tech News Announcer
That's why I'm here. Dive deep with me on this Week in Tech, your first podcast of the week and the last word in tech. Industry insiders dissect everything from AI to privacy to cybersecurity in tech's most influential and longest running roundtable discussion. Short or long, streamlined or comprehensive, Twit TV keeps you well informed. Subscribe to both shows wherever you get your podcasts and head over to our website TWiT TV for even more independent tech journalism.
Date: August 18, 2025
Host: Jonathan
Panelists: Jeff, Ken, Rob
This episode centers around the latest dramas and developments in the Linux kernel world, including Linus Torvalds’ fiery reaction to recent RISC-V kernel patches, succession plans for Linux kernel leadership, ecosystem updates on Sparky Linux and Kaizen Linux, GCC’s decision to drop certain CPU targets, major open source software updates (VirtualBox, FFmpeg, OnlyOffice), and new advances in kernel fuzz testing from Google. The crew also explores Nvidia’s latest Linux drivers, the advent of AI in open source utilities, and provides some hands-on command line tips. The tone is lively, sometimes irreverent, and the discussion ranges from deep technical insights to lighthearted banter.
Linus had explicitly requested early pull requests due to his travel schedule. The late submission was not the primary problem; instead, Linus called out the poor quality and inappropriateness of the code.
"No, this is garbage, and it came in too late. ... If you can't follow that rule, at least make the pull request good." – Linus Torvalds, paraphrased by Rob ([04:01])
"Things like this need to get bent. ... No more late pull requests, no more garbage outside the RISC V tree." – Linus, via Rob ([05:30])
Panelists debate whether Linus’ tone is helping or harming kernel development, with concern about deterring new contributors.
"I hope we have a path forward for all these bad developers in the world to minimize this kind of drama in the future." – Rob ([08:21])
There is no formal plan, but it’s assumed Greg KH would step in, and that leadership typically emerges from the people actively doing the work.
"Most open source projects are not actually meritocracies—they’re duocracies... the people that actually jump in and do stuff get to lead and make decisions." – Jonathan ([09:43])
Rationale: hardware obsolescence, lack of code updates, no maintainers, and a new policy to require a passing test suite at least once per year.
Removing IA-64 from GCC is symbolic; Linux already dropped kernel support, but some obscure OSes may still care.
"The compiler was so hard to write, people couldn’t do it to fully optimize to the promise of the hardware." – Jeff on Itanium’s demise ([21:33])
"If you're running the older version of gcc you are also limiting what language versions you can use..." – Jeff ([26:13])
Designed for lightweight, in-situ fuzzing of internal kernel functions—particularly those hard to fuzz via syscalls.
Macro-based, supports binary input serialization, metadata for user-space tooling.
Intent is to help discover bugs and vulnerabilities more rapidly.
"With this new automated fuzzy kernel tool, Linus won’t have to spend so much time testing kernel code and can spend more time criticizing the kernel developers." – Rob ([32:55])
"A QA engineer walked into a bar..." – Jonathan’s programmer joke illustrates why fuzz testing matters ([36:21])
[37:27] Ken: VirtualBox 7.2 update brings early support for Linux 6.16/6.17 kernels, improved guest enhancements, ARM virtualization improvements, NVMe controller now open source, VMDK fix, and general bugfixes.
"Is this cross running ARM inside of x86?" – Jonathan; "That's what it sounds like." – Ken ([39:35–39:37])
Notable: Now has FIFO v1 Wayland support, improved GPU clock reporting, RM interlocking mode (better VR support), protocol updates, bugfixes for black screens and Vulkan GTK4 crashes.
"We've come a long way with Nvidia since we had to rapidly shake the mouse to get the screen to update." – Jonathan ([47:35])
"That kept me off Wayland for quite a while..." – Jeff ([47:43])
FFmpeg 8.0 will have a Whisper model filter for automated speech recognition and transcription.
OnlyOffice’s new AI agent plugin can perform natural language commands, summarize data, auto-generate documents/slides/spreadsheet content using various backends; runs cloud or local.
Debate follows over usefulness and trust in AI (Whisper hailed as useful for transcripts; reservations about AI rewriting prose).
"On Linux, OnlyOffice is adding AI tools ... in the base price of free." – Rob ([50:25])
"Resistance is futile. I will be assimilated." – Jonathan, lightheartedly embracing AI features ([53:11])
[59:04] Ken reports end-of-life for Kaizen Linux, a Debian-based live toolkit for IT pros and sysadmins. Version 3.0 is the last, moving to Debian 13 as its base and providing security updates for two years (though with a caveat on timeliness).
"I would like to begin this blog post by announcing the end of the Kaizen Linux project with this latest release." – Ken, quoting release notes ([59:11])
Requires systemd v254+, in Debian 13 Trixie and up.
Ideal for userland changes, not suitable when kernel/drivers have been updated.
"So what does it do? ... It reinitializes user space so the system starts fresh... but keeps the kernel running so no hardware or driver reload happens." – Jeff ([66:05])
systemd-manager-tui
A TUI for managing systemd services (start/stop/enable/disable/view logs).
systemd-manager-tuiDissecting Curl/Bash Install Scripts
Ken walks through how to safely inspect a curl | bash installer, redirecting output, and analyzing the script before running it.
timeout (coreutils)
Run a command for a limited time period; automatically kills it if time exceeded.
timeout 30s bash -c '...'Community Tip Query: Grep and LS Colors
Jonathan asks the audience how to use grep in a pipeline and retain the original colorized ls output.
This episode is a solid snapshot of the Linux/open source landscape in summer 2025, mixing breaking kernel news, hardware/software transitions, and the encroachment of AI into daily tools. The hosts offer seasoned, opinionated takes, fun technical tangents, and approachable command line tutorials—making it valuable whether you’re a daily Linux user or tech news follower.
Listen to All TWiT.tv Shows (Audio) to stay up-to-date on the world of Linux and open source, with friendly debate, practical advice, and a dash of drama.