Untitled Linux Show 243 Transcript
Please be advised that this transcript is AI-generated and may not be word-for-word. Time codes refer to the approximate times in the ad-supported version of the show.
Jonathan Bennett [00:00:00]:
This week we're talking about immutable Gentoo and lots of AI. KDE releases 6.6 and we do a live upgrade right in the middle of the show. Blender 5.1, Pipewire 1.6, and the kernel 6.19.3 is out. Stay tuned to find out why that one matters.
TWiT.tv [00:00:21]:
Podcasts you love from people you trust. This is twit—
Jonathan Bennett [00:00:30]:
This is the Untitled Linux The Untitled Linux Show, episode 243, recorded Saturday, February 21st. Only a few things crashed. Hey folks, it is Saturday and you know what that means. It's time to get geeky with Linux. It is time for The Untitled Linux Show. I'm your host, Jonathan Bennett, and we have a, a wonderful and talented panel of co-hosts. Trying something different for the intro. Uh, we've got Rob and Ken and Jeff.
Jonathan Bennett [00:00:58]:
Welcome guys to each of you. We're gonna have some fun today.
Jeff Massie [00:01:02]:
Hello, because it's— greetings and salutations.
Jonathan Bennett [00:01:06]:
Yeah, yeah, I was channeling, channeling some of the old Floss Weekly stuff. Um, like I said, working to, uh, working to shake it up a little bit. Uh, it's been an interesting week for me as a couple of my kids, including the youngest who's way too young for this, has come down sick. So I'm trying to avoid it myself. So far, nothing more than just a little bit of sinus pressure and doing okay other than that.
Jeff Massie [00:01:26]:
That's how it starts.
Jonathan Bennett [00:01:27]:
Yeah, yeah, I know. I'm, I'm prepared for it. But hey, at least I'll get the show out of the way and it'll be, uh, you know, it'll be either the rest of the weekend or next week before I really come down with it. Well, Rob, before the show, was bragging that he knows that he's not going to get sick because he doesn't have any friends and doesn't go anywhere.
Rob Campbell [00:01:48]:
Yeah, what a sad, sad, uh, situation to be in on your birthday.
Jonathan Bennett [00:01:52]:
Indeed. Uh, but he also has the first story for us, which ironically is about digital sovereignty. This is what he does when he stays home all day is he finds stuff like this. Rob, take it away. What is Red Hat up to?
Rob Campbell [00:02:05]:
So we've talked about digital sovereignty quite a bit on the show over the past year or so, mainly with, uh, many European countries looking to break their software dependence on the United States. Or companies, corporations, software companies like Microsoft here in the United States. Well, Red Hat has created a self-service web tool called the Digital Sovereignty Readiness Assessment, and, and they've open sourced it. So you could use their publicly, publicly available tool or self-host it yourself. If you use their tool, you get a sales pitch at the end. It's— well, it's a button, uh, at the end where you can, uh, request a consult. You know, if for those watching, it's it right in my background, uh, where it says request a consultation. So you get that.
Rob Campbell [00:03:00]:
But if you self-host it, you don't have that Red Hat branding, uh, or that button. And I don't know, maybe you could update it and sell your own service and, you know, consult or whatever. But so anyway, I keep referring to this as a tool, but really it's just a questionnaire that, uh, gives you a percentage and a breakdown at the end, you know, in about 10 to 15 minutes. I don't think it felt like it took that long. I think I filled the thing on 5 to 8 minutes, but, uh, you answer 21 questions, they're multiple choice, uh, across 7 domains. Things like data sovereignty, operational sovereignty, assurance, open source strategy, and executive oversight, um, and more. Then you get scored on a 4-stage maturity scale: foundation, developing, strategic, avoidance. I didn't show that breakdown.
Rob Campbell [00:04:05]:
Um, but yeah, what you see behind me, I took it— I was, I was kind of filling it out somewhat accurate to, um, myself in a way, but I was also just kind of going quick through it and not really thinking a whole lot about it. So I don't know how close that 62% really is. So yeah, I gave that, I gave that a shot. This is the hosted one. As you can see, it has all the branding, um, And yeah, so how is your digital sovereignty? And are you ready to break free from the grasps of Silicon Valley?
Jonathan Bennett [00:04:45]:
So when you first were talking about that, you said you could host your own and sell your own. My brain filled in the rest of that— you could host it yourself and sell your own soul.
Rob Campbell [00:04:56]:
Thankfully, no, uh, consultation, you know, if you want to help you know, you don't want Red Hat to be the only one helping businesses become more digitally sovereign. You know, you could set up yourself.
Jonathan Bennett [00:05:08]:
Can we, can we break that, that buzzword down into real English? Like, what are you actually talking about?
Rob Campbell [00:05:14]:
Digital sovereignty. What is that? Well, digital, uh, you know what that
Jeff Massie [00:05:22]:
means.
Jonathan Bennett [00:05:23]:
Having to do with numbers, technically speaking. Yeah.
Rob Campbell [00:05:26]:
You know, I should have looked up the word to get a good definition on this. But the way I see it is, um, being in control of your own data. Um, that's my quick breakdown of the word of sovereignty or digital
Jonathan Bennett [00:05:43]:
sovereignty. Um, how much— so how much of your stuff is hosted at, you know, Amazon S3? Uh, do you have your own servers? Are you in control of your, your own computers, or is some Is some big tech business actually going— some of
Rob Campbell [00:05:57]:
those questions are, I mean, not necessarily is some big tech, tech business, but they ask if you can easily move that to another, um, one. And, um, are you in control of where that data is? Like, can I make sure all my data stays within the US, or, you know, whatever, wherever I want it to be? You you know, so, so some of the questions in there break it down to, are you not, not necessarily are you not using them, but are you in control of, um, of that? And can you break away at any time too? So it, it doesn't necessarily close the door completely to that because, I mean, Red Hat sells cloud services. They want to, uh, they don't want
Jonathan Bennett [00:06:41]:
to shut the door to that.
Ken McDonald [00:06:43]:
Indeed. And how many total questions did you
Jonathan Bennett [00:06:48]:
answer?
Rob Campbell [00:06:48]:
Uh, I think it's about 21.
Jonathan Bennett [00:06:50]:
Yeah, it looks like I could just barely make it out there on his screen and it's of 21.
Rob Campbell [00:06:56]:
Yeah, 13 to 21 is what I got. I don't know. Good? What they consider to be sappo.
Ken McDonald [00:07:04]:
I just quickly ran through it and said, I don't know to all of them. Guess what you think I got?
Rob Campbell [00:07:11]:
50%.
Ken McDonald [00:07:12]:
Zero. Zero of 21 points. Okay. And it says your organization is in the early stages of digital
Jonathan Bennett [00:07:22]:
sovereignty. What a nice way to put that.
Ken McDonald [00:07:24]:
Opportunities exist to strengthen the capabilities across, across multiple domains and reduce dependencies on external providers.
Rob Campbell [00:07:33]:
So basically an I don't know is just as good as answering a no or, um, whatever the negative is. 'Cause in realia— reality, it's, is it, is it a no? Or maybe they're, maybe you're just not the right guy to fill out that
Jonathan Bennett [00:07:49]:
form. I mean, that is, uh, that is, that is possible.
Jeff Massie [00:07:52]:
All right, probably larger problems in your IT department.
Rob Campbell [00:07:57]:
Yeah, well, you know, if you have a big enough IT department, you, you're not— it may not be one person answering all these questions. Um, it's also like, uh, do you have a Do you have a budget for, uh, I can't remember, basically do you have a budget for digital sovereignty? Do you have an actual policy on, I don't remember the word, but basically digital sovereignty and things like that.
Ken McDonald [00:08:22]:
And you know, I may, uh, back
Rob Campbell [00:08:24]:
in the— if I'm like the IT guy, I may know how all of our data is controlled, but I don't know, maybe my manager's the one to ask about a budget or a policy. But then again, I guess as the IT guy, they probably should let me know what I have a budget to do.
Jeff Massie [00:08:42]:
Yeah, but we don't want Floyd in shipping and receiving to fill this out, you know.
Jonathan Bennett [00:08:49]:
Indeed. Ah, all right, uh, so Jeff has a story here about Plasma 6.6, which is interesting because while he talks about it, I'm going to install it because it's out Fedora 43, and I'm going to be real brave and we're going to do a live update on the laptop that we're doing the show from. So Jeff, you take it away and I'm gonna install some packages and we'll hope we don't regret this.
Rob Campbell [00:09:09]:
Nice.
Jeff Massie [00:09:09]:
Well, I'm, I'm currently running it right now. So it's, it's, it was really smooth. So I, I have high hopes, Jonathan. So we've talked a lot about in the past, you know, about 6.6 coming out, but the date has finally come and KDE Plasma 6.6 is released. So 6.6 brings bug fixes, new features, and a lot of stuff to make the KDE desktop even more polished. One of the first things that you'll encounter —and you might not know—is it the Plasma— is, is the Plasma login manager. Now that you probably don't realize it because that's because the new login manager looks pretty much the same as SDDM, so you're not really going to notice a whole lot of change. Uh, but the new manager is made to better support multiple monitors, HDR, uh, keyboard layout switching, so it can be done from the login manager and not going into the full desktop before having to change, change your keyboard layout.
Jeff Massie [00:10:04]:
Uh, the new manager does only support systemd, which did cause some ruffling of feathers from the KAOS Linux people who said they're not going to have KDE as their default desktop because they feel they're being forced into systemd. Well, that, that caused KDE to reply and they said the new Plasma login manager is one of half a dozen or even more managers out there that can boot into Plasma, and no one's being forced anywhere. They said if you don't like systemd, just use one of the other options that doesn't use it. They're, they're not encouraging, they're not saying you should, they're saying you can, and that's as far as they took it. So they, they did want to stress there's still a lot of different options out there if you don't like systemd., but now that we've loaded into the desktop, we used whatever bootloader we needed, and you decided you want to change your theme and play around. And now, now you've got the perfect setup, you get— you got everything set the way you want it. Well, 6.6, you can now save that as your own personal theme, so you don't have to go and rearrange or anything like that. You can now take all those settings you have and just go, yep, here's my theme.
Jeff Massie [00:11:25]:
So if you change anything, break anything, which is, you know, KDE is fun to play with, so I highly encourage people to play, just load that same theme and you're back where you were. Now they've also improved the smoothness of animations for those out there who are running monitors with a refresh rate higher than 60Hz. So now in moving windows, seeing compo— composting effects, all that kind of things, the graphical magic, it should look much better and smoother because they've made improvements. Now there's also several improvements with, um, window edges, line separators, um, you know, a ton of different visual adjustments which can be made and looks beautiful. I'm not— I'm, I'm not going into all of them because there is a lot, uh, with 6.6. They've also reduced the memory that KDE takes by about 100 megabytes by unloading unneeded wallpapers which are not being used. So it shrinks it down a little bit more. Not that KDE is heavyweight anymore, that was many, many major versions ago, but people always want lighter and smaller.
Jeff Massie [00:12:31]:
Well, KDE is still going in that, in that direction. Now, if you have an ambient light sensor on your equipment, it can now be used automatically, meaning it will make the screen brighter in bright rooms and dim when you're in darker environments, kind of like a lot of phones, for example, will do. For those of us who sometimes stream our screen, there's now the ability to hide a screen from the screen capture. So you can right-click on the title bar, select More Actions, and you can find the Hide from Screencast button. So you select that, and then if you're sharing your screen, it won't show up, um, like on— say you're using OBS or something like that, that, that screen that you selected won't show up on your broadcast. Uh, the window manager will now have the correct scaling when connecting to an external monitor or TV when the resolution is different. So like you plug your laptop or whatever into your 4K TV, it's, it's going to have correct scaling now. But if it still needs to be different because something's not right, there's a tool called kscreen-doctor, and you can create a custom mode for that display device which is not working directly.
Jeff Massie [00:13:39]:
So you can manually set it up so it's however you want it, and then it'll always load that whenever you, uh, connect that device. Now in System Monitor, if you have more than one GPU, it's now possible to monitor them independently at the same time. So you can watch the temperature and the load and all that stuff for each GPU you have. So like, you might have a discrete GPU and an internal to your CPU, uh, integrated GPU. So now you can— if you have them doing different work, you can see what— see what kind of load and heat and all that they're going— they— that they have. There's also the ability in the process window to set the CPU scheduler and I/O scheduler for a specific task and define the priority in each scheduler. So not only can you say, you know, what you want, you know, first in first out, normal you know, max performance, that kind of thing. There's also a basically niceness level that you can set there as well.
Jeff Massie [00:14:37]:
So that way, if there's something that's very important, you need to come first no matter what— maybe it's recording or something— now it's possible with a few clicks in the System Monitor that you can really make sure that that's, uh, that's got highest priority no matter what. It's also possible to choose the columns which you see in the process tabs So when you're seeing all your processes, you, you can select something called, uh, command, and then you can filter and see what's running under a certain path like /usr/bin. So if you're— if you got everything running and you go, well, I wonder what's in /usr/bin that's running right now, you can filter to that and see just what programs are running out of that. Now, this is such a small amount of what has changed in 6.6, and this is not covering the huge amount of bugs that they squashed. I mean, there's a ton of them. So take a look at the video in the, in the show notes for more details of the changes. But even, even there, they talk about they have not covered everything. But 6.6 is, uh, I think a wonderful release.
Jonathan Bennett [00:15:47]:
Yeah, it's— so I, I did do the install. I have had a couple of things tell me it's crashed. Since I did the install, but nothing that I can see. Uh, it gave me a nice little pop-up that says Plasma has been updated to 6.6. KDE contributors has spent the last 4 months hard at work on this release. We hope you enjoy using Plasma as much as we enjoyed making it. And then they've got, uh, you know, a little, uh, uh, make a donation widget and a couple other things. But yeah, the welcome center pop-up.
Rob Campbell [00:16:16]:
So it's there. That's how safe it is.
Jonathan Bennett [00:16:20]:
Yeah, and only a couple of things crashed.
Rob Campbell [00:16:22]:
Upgrade
Ken McDonald [00:16:25]:
in production. You had to manually update to KDE 6.6 after updating to Fedora 43?
Jonathan Bennett [00:16:33]:
I mean, yes, because I've updated Fedora 43 a little while ago and 6.6 just now came out. I just, I just ran dnf upgrade.
Jeff Massie [00:16:41]:
I, I just ran a regular update and got it.
Ken McDonald [00:16:44]:
Yeah.
Rob Campbell [00:16:44]:
Are you— what?
Jonathan Bennett [00:16:45]:
I should know this, Jeff. What, what distro are you running these days?
Jeff Massie [00:16:49]:
CacheOS.
Jonathan Bennett [00:16:50]:
CacheOS. Cache.
Jeff Massie [00:16:50]:
That makes sense. So it's Arch, so it's— I also
Jonathan Bennett [00:16:54]:
pretty aggressive about those.
Ken McDonald [00:16:58]:
Yeah. Yeah. Um, yeah. One of the— I'll show, I'll boot, uh, reboot into openSUSE and see if that's up to date on KDE 6.6.
Jonathan Bennett [00:17:08]:
I would bet openSUSE would take a little bit longer to pull it in. Would you— would be my guess. Um, Tumbleweed though, Tumbleweed might be faster. I, I, I do need to play around with this and see what it takes to get the new, uh, KDE Login Manager working. I think that's going to be interesting. Some of the things that they'll do with that in the future. I had installed already, went ahead and grabbed it, but, uh, I'll have to reboot and then do some other fiddling to make it the one that actually comes up and does stuff.
Rob Campbell [00:17:33]:
I saw a really nice— never mind, that wasn't a KDE theme.
Jeff Massie [00:17:37]:
Well, I was going to say, I think it should come up naturally
Jonathan Bennett [00:17:45]:
in 6.6. Um, so that runs before KDE runs. That's going to be controlled by your distro.
Jeff Massie [00:17:54]:
Oh, okay.
Jonathan Bennett [00:17:55]:
Mine went to the new one. And they, they, they may have had a script in there to have it do that. So you can use, let's see., sddm is the one that I'm using now because that's what's default in Fedora. That's the Simple Desktop Display Manager. There's also gdm, which is the GNOME Display Manager. There's been a couple of other ones I, I don't remember the name of in the past. This is a new one. I know I've always had to go in and manually, um, I don't remember if you run something like alternatives or if it's just disabling the one service and enabling the other.
Jonathan Bennett [00:18:27]:
Different distros may handle that a little bit differently, but there's going to be a— there's going to be a way to go in there manually tell your computer which display manager you wanted to use. Uh, I don't know, I think, I think we just discovered what my command line tip is going to be for next week.
Jeff Massie [00:18:41]:
Yeah, because, well, but see, I'm running Cachee, so it's, it's running systemd, it's running Wayland, it's— so they pretty much assume, yeah, you're going to get the new
Jonathan Bennett [00:18:54]:
Plasma login manager. Yeah, I, I've done this, I've done this a couple of times, um, because I know One of the reasons I changed it last time is because KDE had better support for SDDM and I wanted to do things like, uh, theme it rather than just use the default used to be really ugly background and all of that stuff. I bet with the new KDE one, I don't know if you could do it yet, but probably eventually they'll support using those, um, well, it's, it's essentially screensavers. It's also the lock screen background. You can also put them in KDE. You can put them on your desktop background too. Um, 3D backgrounds? Well, no, just animated backgrounds. Like, they can be 3D, but I would imagine that they'll eventually make that work for the login manager too, so that you can get your, your fun, um, your fun moving backgrounds.
Jeff Massie [00:19:41]:
And it wouldn't surprise me because, because of all the updates they made to that one just to handle, you know, the scaling, the different resolutions and different monitors, the HDR, the, you know, a
Ken McDonald [00:19:53]:
bunch of stuff like that.
Jonathan Bennett [00:19:58]:
To what? Ray tracing. That's not going to be a key to ether. Yeah, not directly, but Ken is trying to segue. Ken, this, this segue went off the rails. The battery ran out on the Segway and the mall cop fell on his face.
Ken McDonald [00:20:13]:
But I'm getting into
Jonathan Bennett [00:20:17]:
my command line too. But we will let Ken take it over because he's got some news about Blender and there is indeed a ray tracing angle to that story.
Ken McDonald [00:20:26]:
So take it away, sir. Yes, Jonathan, I'll go ahead and talk about, uh, Marcus Nester, uh, writing about my favorite opera— open source and cross-platform 3D graphics software. Yes, Blender. Uh, the— released beta ver— beta version 5.1 this week. Now Blender 5.1 promises to enable hardware ray tracing by default for AMD GPUs through HIPRT or HIPRT. Now in Blender 5.1, the evaluation performance of the animation system sees a boost, and the Vulkan OpenXR graphics binding has been rewritten, now trying to reuse the Vulkan instance of Blender, resulting in major speedups. Now in Blender 5.1's Real-Time Render Engine, EEVEE, materials are compiled faster by pre-compiling GPU pipelines at the same time. GPU shaders compile faster on all platforms due to the preprocessing the shader— of the shader sources.
Ken McDonald [00:21:45]:
According to Markus, Blender 5.1 promises to improve font filling for 3D text objects, add support for lasso box circle selection in the curve sculpt mode, add support for snapping— that's with the, uh, Ctrl key— and precision, which is the Shift key, while using bevel and add support for adjusting vertex slide settings. Now there's a whole bunch more, but I'm going to recommend that you read Markus's article, get
Jonathan Bennett [00:22:19]:
more of those details. Yeah, very, very cool to see Blender continuing to progress. It's one of those— it's one of those super, super neat bits of open source software that a lot of big companies are behind. Uh, and it's, it's cool to see, and it's also neat to see them turning on ray tracing in AMD. That, that has, uh, matured a lot in the, the latest release of like
Jeff Massie [00:22:43]:
Mesa and all of those things. Yeah, it's huge. They've, they've been really— AMD's really been leaning hard into the ray tracing slash compute lately, this last, last few months. So I, I really like that they're catching up.
Ken McDonald [00:22:59]:
Yeah, and I can't wait until Blender does, uh, do a final release of the version 5.1 because then I can pull up the video that's going to display everything they can do.
Jeff Massie [00:23:10]:
There you go.
Jonathan Bennett [00:23:12]:
Go through it. Yeah, that'll be neat. Let's include that in show notes at some point. All right, well, coming up next, we're going to talk about Gen 2 going atomic, uh, but first we're gonna take a quick break and
Rob Campbell [00:23:27]:
we'll be right back. All right. So I'll be honest. I've never even heard of Sabian Linux, something I'm going to talk about a bit here, until I read about what is going on and some of the history behind, behind all of this. And additionally, I've never managed to get Gentoo up and running either. I started, but, you know, it's not because I don't like the idea. It seems awesome, but because all the steps to compile the entire system by hand just kind of got overwhelming when I, when I thought about attempting it. Though strangely, I have completed Linux from scratch.
Rob Campbell [00:24:05]:
Um, but you know, the thing is, I think only because those— the step-by-step directions for Linux from scratch are kind of amazing, and I didn't think the Gen 2 ones were, um, as clear to me. So I, I kind of gave up partway through. I'm like, I don't feel like doing this. This is too much. But, uh, anyway, those who don't know, Gentoo is famous for its build-it-yourself approach. You compile software from source, tune things the way you want, and end up with a system that can be incredibly customizable. It's the build-it-yourself, like Arch, but— going a step further and actually compiling everything yourself too. Not quite as far as Linux from Scratch, but I thought the directions were better.
Rob Campbell [00:24:53]:
But anyway, the obvious downside is setup can be intimidating, as I was intimidated. If I'm intimidated, or maybe I was just lazy, I don't know. You know, compiling patches— packages could take forever, especially when you're just trying to get a working desktop, you know. And, and that, that's where Sabayon Linux used to come in. It was a Gentoo-based distro designed to make Gentoo feel approachable, mainly by offering pre-built packages through a tool called Entropy. Uh, in other words, you could get the Gentoo vibe without signing up for hours of compilation and troubleshooting. Though I kind of wonder a little bit, what is the point of Gentoo, you know, if, if you don't have your own compiled optimizations in place? It's kind of just like any other distro. But moving on, Sabian wrapped up in 2019, but now that original developer Fabio Air— AirQ— Uh, I practiced this before.
Rob Campbell [00:26:09]:
Fabio Erquili— Erquiliani, there we go, uh, is working on something new, an experimental Gentoo base called Matrix OS. Matrix OS is described as emerge once, deploy everywhere. So instead of compiling on every machine, you build packages once and distribute binaries. So, uh, your second setup isn't a full repeat of your first. And on top of that, um, as Jonathan already hinted at the beginning of this, uh, segment, MatrixOS is immutable and atomic. It uses OS tree for upgrades, meaning updates apply as a complete unit— either succeeds fully or it doesn't touch your system at all. The base system is read-only, which helps prevent the kind of accidental breakage that happens when you're experimenting, which is, you know, kind of to be expected when you're compiling your own stuff. It's— unless you really have to, it's kind of an experiment.
Rob Campbell [00:27:14]:
It's also aiming at modern 'it just works' priorities, you know, updated graphics support for AMD and Nvidia gaming tools like Steam preloaded, and GNOME desktop that looks familiar, uh, with the Windows-style taskbar across the bottom. Nah, I don't, I don't want my system look like Windows, but whatever. Uh, I'm sure you could change it. Of course you can. I don't even need to say I'm sure it's Linux. You can't, but that's the default. There are several installation flavors: Bedrock, GNOME, and server, and images for both real hardware and virtual machines. Now, the developer is upfront saying this is a hobby project for home labs, not production.
Rob Campbell [00:28:01]:
Now, I imagine if you go through the process and set it up and then all of a sudden, uh, you know, the project goes away, I imagine you could kind of just keep running, going as a, a Gen 2 system after that. I don't know, I haven't, I haven't been able to dig that deep into it. Don't have it installed yet, but, uh, yeah, something, something I would like to do because, you know, for someone like me who's bounced off Gentoo's complexity more than once, MatrixOS feels like a way for me to finally get Gentoo running, at least a Gentoo, um, uh, base system., you know, with the power of Gen 2 without the endless setup, uh, complexities. And, you know, as I said, there's even a setup for VM, so I could, you know, whip it up there
Jonathan Bennett [00:28:53]:
and see what happens. Yeah, when you said— when you said Sabian— Sabian, I first thought of Sabaton and got a little excited and realized that you were
Rob Campbell [00:29:06]:
not talking about the group.
Jonathan Bennett [00:29:07]:
Uh, no, I was ready to rock out.
Jeff Massie [00:29:09]:
Uh, I'm kind of with you. It just seems like an odd choice to go, I'm going to make
Rob Campbell [00:29:16]:
this distribution based on Gentoo. I mean, it— I don't know, I, I'd have to try it out to really know, but is it that different from all these distributions now being based on Arch? Maybe it is, maybe it is. I, I don't know, I'd have to
Ken McDonald [00:29:29]:
really dig in and see.
Jonathan Bennett [00:29:30]:
Well, and what the real— Gentoo and Arch base?
Jeff Massie [00:29:34]:
No, no, Arch is Gen 2 base. Yeah, Gen 2 is independent. But the whole thing with Gen 2 is— and I, I got it running, I got Gen 2 running, and then I promptly went, I'm going to do something else, because it was, it was a long task to get it and all the— but, but I mean, the whole thing was like the customization of it, and it's kind of like, like you said, it's almost like a Linux from scratch. I mean, it— not quite that far, but it's very customized. And it just seems like if you're just like, well, here's an immutable, it's
Rob Campbell [00:30:10]:
not really the whole thing though, you know? Yeah, I mean, I think, I think you still compile, so I, I don't know. Um, but yeah, I mean, that's kind of the benefit of Gentoo is being able to compile with the flags to be very optimized to get those milliseconds of speed compared to everybody else. You know, there was a distribution back— I think this was like 20, 25 years ago, uh, it's probably maybe where Gentoo got its name— but I remember one called Source Linux where you also compiled everything except I think— I feel like I, I set it up a long time ago. I feel like that was more automatic than, um, Gen 2, like Gen 2, you kind of had to do it all more manual. I feel like, I feel like I just pushed a button in Source Linux and it, and then it actually just compiled everything that had checkbox. But I don't remember, that was a long time ago before Jonathan was even,
Jonathan Bennett [00:31:12]:
you know, tying his shoes.
Jeff Massie [00:31:14]:
You're not that old, Ross. Well, my goodness. Well, and, and I'll agree with you, Gen 2, it's the, the directions are like, you're really like, okay, I'm supposed to —well, wait a minute. What is, you know, not, not entirely smooth. It's, it's something that you better have
Rob Campbell [00:31:30]:
a couple years under your belt before you try it. Or yeah, Linux from scratch is like, run this command. I do— it tells you exactly where Gentoo is like, okay, now, now compile this stuff. You know, you could use this flag or this flag or, you know, whatever, just whatever fits your need.
Jeff Massie [00:31:46]:
It's like, well, I don't know if it's my need. Here's 4 common options, pick one of these and go.
Ken McDonald [00:31:54]:
And Wait, what?
Rob Campbell [00:31:55]:
What is— I'm making decisions here. Yeah.
Jeff Massie [00:31:59]:
Yeah.
Rob Campbell [00:31:59]:
Where that's where like, um, you know, at least to get the base of Linux from Scratch, it was very step-by-step. Run this command exactly like this. Now do this. It was exactly telling you what to do. So, so if anyone wants to try it, it's time-consuming, but it tells you
Jonathan Bennett [00:32:16]:
exactly what to do.
Rob Campbell [00:32:18]:
At least Linux from Scratch.
Jonathan Bennett [00:32:20]:
Yeah, Linux from scratch. I actually, I've encouraged people to do that before if they really want to understand how compiling in Linux works. It's a
Ken McDonald [00:32:29]:
great process to step through.
Jonathan Bennett [00:32:31]:
How does using OSTree as an upgrade system work? That's pretty typical for immutable Linuxes. They do that.
Ken McDonald [00:32:42]:
It's, it's, I've— Yeah, I've heard us
Jonathan Bennett [00:32:44]:
talk about, you know, A, B. Yeah, that's essentially what it does where it's got a root image and you just swap from one root image to the
Rob Campbell [00:32:53]:
other and OSTree is the tech that makes that happen. Yeah, so with, with this, I don't know if you still kind of compile it everything like old-fashioned Gentoo and it compiles it to, you know, your B and then it tries to switch over and if it doesn't come up, it reverts back to your A and you have to do it all again. So I, I think maybe it's still, you know, Gentoo like that, but you
Jonathan Bennett [00:33:16]:
got that A/B there. I think— I mean, that would be cool. I could see the point of that. Yeah, because there's a decent chance that compiling everything yourself is going to break it.
Rob Campbell [00:33:26]:
Uh, so that's my theory because it did talk about, uh, it still talked about compiling. Um, you know, I guess the interesting part is where, uh, the emerge once, you know, set it up once and then you reuse your same binaries on a new system when you set it up over there. So then you're not compiling them again. You're using the same binaries you already compiled. But I don't know.
Jonathan Bennett [00:33:49]:
I guess I got to try it.
Ken McDonald [00:33:50]:
You got to try it, man. And
Jonathan Bennett [00:33:56]:
then hire some gaming developers. So, Jeff, let's, uh, let's take a minute here and talk about Intel. We have, we have worked hard at, uh, covering the fall from grace of Intel over the past few months. And it sounds like they're doing some work to try to undo some of that damage. What, what is Intel up to that we're, I think, a little excited about this time around?
Jeff Massie [00:34:20]:
Yeah, and you know, I've been probably one of their harshest critic— critics. I've pounded on them pretty well for a while now. And you know, you Justifiably so, maybe, or not, depending on your proclivities. But, you know, you can't, you can't deny the past couple of years have been rather rough for Intel. You know, they've taken a beating on several fronts, and they've made some major cutbacks. I mean, they've had to lay a lot of people off. They've shut down large chunks of sites, if not totally shutting down certain sites. Um, you know, I'm not going to give any thoughts on why or you know, any, any theory on anything.
Jeff Massie [00:35:02]:
But basically one of the effects that the cutbacks have had is there was a loss of talent in the open source. And there have been several projects that have been abandoned. You know, Clear Linux is an example, and, you know, probably one of the best well-known ones. You know, when we're talking about speeding things up during benchmarking, Clear was always the top, the top performer. You know, not trying to— for a pun or any, you know, clever wording or anything, but it was the clear winner. It, it just, you know, now it wasn't built for, um, the average user to play. It was more for databases, experimentation, that kind of thing. But it was really fast.
Jeff Massie [00:35:41]:
But they had to just stop working on it. Now this story though is about how Intel is picking up some people for Linux. 6 to be specific. So Intel posted these positions. So anyone listening to this who thinks they have the programming skills needed should look at the job postings. Now the jobs are in various roles. There's of course compute, you know, AI, and— but they're also hiring to work on the graphical stack and work on things like Proton and making gaming better for Linux. Now they're, they're looking for people who are already familiar with Linux.
Jeff Massie [00:36:18]:
Graphical stack and experience with Mesa and, you know, the DRM kernel drivers. And, you know, the fact that Wine and Proton are called out specifically in the job postings are— these are good signs. So, you know, saying focusing on gaming isn't speculation or filling in the blanks, it's, it's basically in the job description. Now they do have preferred qualifications such as, you know, knowing C or C++, project development, They like to see previous experience with open source software. You know, the more you know about Linux system architecture and device driver model, the better. Something that will really help land the job is if you had previous contributions to 3D driver developments such as Vulkan, OpenGL, and, you know, in the— as we talked about, the Mesa 3D project. So if you, if you've already, uh, contributed there That's, that's a leg up. They're also hiring a couple of senior middleware development engineers, and they'll be more compute focused, so the CPU side of things will get a lot— get love along with the GPU.
Jeff Massie [00:37:25]:
And they're finally— they're also hiring a senior cloud software development engineer so they can focus on, uh, CPUs and GPUs in the data center environment. So this role is also expected to know C or C++, having exper— have experience with parallel programming and other specialized knowledge for that kind of environment. These jobs are looking for 5+ years of experience and other qualifications. So these are going to be hit-the-ground-running type of roles. These, these are not entry-level. These are serious coders. Uh, they're going to expect a lot from the people who they hire. Now, I'm sure a lot of our audience can work at this level, but I just want to set the kind of the basic understanding that, you know, these aren't entries, these aren't low-level jobs.
Jeff Massie [00:38:09]:
This isn't 'Oh, I'll get a job and they'll train me up,' or— no, they expect you know what you're doing on day one. So, but if you're, you know, for those people that are pretty experienced with this, have a lot of knowledge at this, you know, you're like, 'I do this in my sleep,' this could be a new career for you. So if it sounds like something you might want to try, and you know, maybe you're gonna— you want to change roles, you're tired where you're at, you know, for whatever reason, here's your chance. Uh, take a look at the article linked in the show notes. It has links to the official job postings, each one. So everyone can get the full details, all the requirements, and, you know, all the normal stuff you need to know in an application like that. So good luck
Jonathan Bennett [00:38:51]:
with the, uh, job application. This, this is really interesting. So they want 3 GPU developers and each of them are Linux-specific Linux gaming specific.
Jeff Massie [00:39:11]:
That's just fascinating to me. Well, I mean, if you think about it, there's a lot of that that overlaps with AI, even not specifically. And it's true, the more, the more compute and stuff they really want to also— and now, okay, they lost several developers. Now, there was several that had been there a long time and had left. And I don't know if they were purposely going to get cut as much as they kind of went, oh, I don't know, well, they— there was kind of that— you kind of have that, do I take a package now or do I take my chances and stay and then maybe get cut without the package? So sometimes you can have people that do that, especially if you see people with, you know, 10, 15 years experience that Oh, I'm getting out of here, you know, and some could be like, oh, either I have a new role, I got tired of my old one, or this could be the springboard to retirement, you know. It's hard to say, but it left gaps. And they weren't— because we talked about this before— they weren't specifically on the we're cutting this. It was kind of this, oh, developer so-and-so left.
Jeff Massie [00:40:22]:
I don't know the specifics, I don't— but it, but it had a little bit of a feel like that. And I, I've been in those large organizations when things are bad and they're kind of cutting stuff. Sometimes you go, maybe I'm just going to take the package. I, I've known people that have, even if they were probably going to be safe, just because they were, they were nervous and things. But yeah, this definitely is focused. And I think, you know, and it's kind of unwritten, but who's, who's doing a lot of the major buying decisions. And who's doing a lot of these server enterprise stuff? Computer geeks, people that play games, people that, you know, do a lot of stuff like that. And if they can go, hey, we want to be known for this— especially if you're thinking this could be a good opportunity to get ahead when the AI bubble pops, if it pops, or whatever that looks like.
Jeff Massie [00:41:19]:
We're hedging our bet and we're going
Jonathan Bennett [00:41:23]:
to be in other, um, enterprises. I, I think of this a little differently. I think somebody at Intel said they're— that we're really tired of everything Valve
Jeff Massie [00:41:34]:
does having AMD processors and AMD stuff in it. Yeah, and not only Valve, Xbox, PlayStation. You— and you can't tell me, you know, well, you know, there's not a huge margin. Well, when you're selling, you know, $5, $10 million plus of these things, there's something to be said.
Jonathan Bennett [00:41:57]:
Margins add up. Yeah, you can, you can lose a little bit of money on each of them and you'll make it
Rob Campbell [00:42:03]:
up in the difference volume.
Jonathan Bennett [00:42:04]:
Yeah, let's pick it up, right?
Jeff Massie [00:42:06]:
That joke landed flat. And then things are coded for your processor. That's good for other kinds of sales, you know. Oh, look at what— there's a big bragging factor with that, and there's a
Jonathan Bennett [00:42:17]:
lot of big contracts that they're missing out on. Yeah, absolutely, absolutely. Interesting stuff. All right, um, we're going to take another quick break, and then Ken's going to come back and tell us about the newest
Ken McDonald [00:42:32]:
Pipewire release right after this. Well, Jonathan, this week we'll hear from Bobby Barisov, Michael Larabel, and Markus Nester. They all wrote about an update to the open source server for handling audio, video streams, and hardware on Linux-based operating systems. Yes, I'm talking about Pipewire. In this case, it's version 1.6. It introduces numerous new features and improvements. Some of the highlights include support for capability params to negotiate capabilities on a link before format and buffer negotiation. Now, while dropping support for old v— version 0 clients, according to Bobby, Marcus, and Michael, Hypewire 1.6 ships an LDAC decoder for Bluetooth audio and uses span DSP to help hide packet loss.
Ken McDonald [00:43:32]:
According to Bobby, another major change is raising the maximum channel count to 128. And according to Marcus, Pipewire 1.6's filter graph system now includes new FFmpeg and Onyx plugins. And I'm going to recommend that you definitely read all three articles if you do want
Jonathan Bennett [00:43:56]:
more details about Pipewire 1.6. Very cool. Love to, love to hear the new stuff going on there. Um, that's a, that's a, that's a stable release, but a new, um, I guess minor version release. Probably going to be a bit before things like Ubuntu pick that one up
Ken McDonald [00:44:14]:
and then people actually get it in their machines. I'm thinking else that Ubuntu 26.04 will have it.
Jeff Massie [00:44:24]:
I hope.
Ken McDonald [00:44:25]:
Yeah, you think? Now, uh, I did recently update my openSUSE Tumbleweed
Jeff Massie [00:44:34]:
and it's still running 1.5.8. Now, is Pipewire— do they have the video all sorted out now?
Jonathan Bennett [00:44:41]:
Uh, no, or is it still a little rough? It exists in Pipewire. One of the real problems is permissions for, for other programs to be able to use it. So I went and, uh, I, I keep, keep an eye on Pipewire support in OBS, and that bug has gotten some comments on it recently, but that's all been essentially the OBS folks are waiting for, um, XDG Portals, I think is the name of that project, which that is essentially the the permissions thing that when you go to share a, you know, you share a tab or share a screen, you get that pop-up box that says, which would you like to share? Like, that's portals, and there needs to be better support in that for doing Pipewire sharing. Um, a lot of new computers, actually, their video cameras are not v4l2 video cameras, like the webcam in modern laptops. They use a Pipewire plugin because that's
Ken McDonald [00:45:41]:
the direction everything is going. And then going, oh, and supported by
Jonathan Bennett [00:45:45]:
lib— and support for libcamera? Libcamera. Yeah. Libcamera is— libcamera does not provide, I don't think at all. I don't think it provides, um, uh, V4, whatever the name is. I've lost it. I've lost it. It's fluttered out of my mind. But the, uh, V4L2? Yes.
Jonathan Bennett [00:46:02]:
That's the one. Uh, I don't think libcamera has support for that at all. It's all, it's all Pipewire. So like the, the basic support for doing video stuff in Pipewire is there. It's working. It's working rather well. It's just now everybody's working on all
Jeff Massie [00:46:14]:
of the periphery code to support that framework. Yeah, yep, the stuff around it. Okay, because I— because I'm— uh, yeah, I would love to have OBS handle
Ken McDonald [00:46:24]:
Pipewire so I can get rid of this loopback device.
Jonathan Bennett [00:46:28]:
You mean handle OBS? You want OBS to be able to talk Pipewire?
Jeff Massie [00:46:32]:
Yeah, and it, it won't both ways. Yes, they've got some experimental, but it
Ken McDonald [00:46:39]:
just Doesn't— well, because OBS has been able to use, uh, Pipewire for video input into OBS, but it— but it's with the virtual camera that you run
Jonathan Bennett [00:46:52]:
into the issue, right? So like in OBS, generally if you do a screen capture on a Wayland system, that's going to use Pipewire to do it.
Jeff Massie [00:47:00]:
Yeah, the output is that right now camera that we want. Right now I have to do the, the video loopback device for output from OBS. There is an output for Pipewire, but it, it doesn't work so well. I get, you know, 5 frames a second or something like that.
Rob Campbell [00:47:21]:
It's— oh, that good?
Jonathan Bennett [00:47:21]:
Yeah, I think I remember that. Yeah, yeah, yes, yeah, that's exactly what it was like. Um, All right, let's see. Um, Rob, I think it's Rob next.
Rob Campbell [00:47:35]:
Rob, you want to talk about AI?
Jonathan Bennett [00:47:38]:
Uh, yeah, I think it is. For whatever reason, we have a, uh, we have a spate of AI stuff to talk about real quick. Let's see, I think we need to take one more break here too. Uh, so we're gonna let Rob talk about AI and speeding
Rob Campbell [00:47:56]:
up Linux right after this. So Jonathan here on our panel here is always dogging on AI, always talking bad about the contributions AI can't make and struggling to see how AI actually helps serious engineers. But Jeff gets it. We know Jeff gets it. This week we got a perfect example for Jonathan from deep inside the Linux ecosystem, courtesy of Jens Oxbow, a major maintainer in the storage world and lead developer behind io-ring. io-ring being a high-performance asynchronous input/output interface in the Linux kernel. Oxbow was chasing down some weird slowdowns in qemu's emu's AHCI/SCSI path when using, uh, aio=io-ring. The, the symptom was, was, it was kind of brutal, you know.
Rob Campbell [00:49:01]:
Tests in a VM would randomly timeout on AHCI devices while the same test on virtio-blk or NVMe would finish in about, you know, a second. So he did what any modern developer does when they hit, you know, hit a wall in an event loop maze. He pulled in AI, specifically Claude, uh, you know, and the Anthropic model to help him reason through what was happening. And according to Oxbow, it, it genuinely helped him better grasp the various event loops in, in his own code that he maintains. And the wild part, the fix that delivers the huge improvement is basically one line of code plus some comments, but that doesn't count. That one line prevents people, uh, function from taking an accidental nap up to 500 milliseconds while there's an, an I/O waiting to be submitted. The result, Oxbo says, it can literally yield a 50 to 80 times improvement for I/O ring on idle systems. That patch series is on its way to queue— into QEMU already.
Rob Campbell [00:50:30]:
Though, a funny side note that Jonathan may appreciate is Claude apparently also helped wreck the VM's virtual disk. Uh, but then it did help recover also. So in a quote, this is from Twitter, is actually a response that he did to his initial quote about, uh, this big fix. Quote, this took a while. One funny side quest was Claude deciding it should check if my, uh, parentheses destructive reproducer was also slow on virtio-blk, then proceeding to blow away /dev, uh, /bda, and concluded that yeah, virtio-bulk was fine. And, uh And then to continue on, when confront— this is another reply. Um, when confronted with this, it just said, you know, Claude says, quote, double quote, whatever. Yes, I did do that.
Rob Campbell [00:51:44]:
Uh, he, that, you know, at least it admits when it's wrong. Anyway, he then asked it to fix up VDA as it blow away the first 128 megabytes of it. And, and it did. So, you know, it, it helped break things, but it helped fix things. So, you know, it's still not ready to just blindly trust it, but
Ken McDonald [00:52:10]:
AI
Rob Campbell [00:52:10]:
has now helped make, you know, one of the things in Linux much faster. So You always have to be careful how you use it, but there are definitely use cases. I've actually— some of my own little personal projects recently, I've, uh, put my code into it and I, I asked it to optimize. And there are some of my, um, somewhat personal— they're not public on the web, um, code that like pulls some reports and does various things like that that I have internally. And I cut seconds— or actually, I think I cut minutes off of some of them because it's, uh, I, I've got some that are pulling a lot of like API requests to, uh, develop this, um, report basically. And I know there was one of them, I think it used to take 6 minutes, and AI helped me cut it down to somewhere around 2 minutes. I think so. Um, yeah, I did just let it, uh, um, make the code for me, but I, you know, I plugged— I was like, what can I do to make this more efficient? And it pointed out spots that I had that, uh, yeah, you're, you're calling this API over and over and over again when you could just, uh, do something like this and, and make it one much quicker call and things like that.
Rob Campbell [00:53:42]:
So, um, Yeah, it, it can, it can be helpful.
Jonathan Bennett [00:53:50]:
So sorry for the doubters. So I, I see, at least for myself, um, I think it's obvious that AI can be helpful. I don't, I don't think that's the, the contention that most people make. Um, I will, I will give you a counter example. You talked about Claude trashed the disk on this VM where somebody was working on, uh, the, the project that I spend all day working in, mishtastic, we had somebody open a bunch of pull requests and we asked him about one of them, like, you know, gave him feedback, reviewed it, gave him feedback. So this doesn't make any sense. I don't think this is the direction we're going to go. And his comment was, I didn't realize
Rob Campbell [00:54:23]:
that Claude opened this PR for me. I think you told us about that one last week. Yeah, I may have. Yeah, yeah, yeah. There's things like that. But I— and, and okay, you're not as big of an AI denier. There are, there are some major ad eniayers that think it's not worth touching at all. You know, I, I read them out on the internet and I'm like, all right, you know, that's fine.
Rob Campbell [00:54:48]:
You know, my— I could be the efficient one in the world and you can lag behind.
Ken McDonald [00:54:54]:
I think it's— yeah, it's a— won't— don't want to touch it at all. They don't want to give all their information away.
Jonathan Bennett [00:55:00]:
Well, for me, it's not even that. I don't mind using it. I just— I don't want to have to put the work in for all of the other yahoos that are using it.
Rob Campbell [00:55:09]:
So I had this, this thought Isn't that kind of anti-open source? I mean, it's not what open source
Jonathan Bennett [00:55:12]:
is about, putting the work for other people.
Rob Campbell [00:55:15]:
No.
Jonathan Bennett [00:55:15]:
All right, so here's, here's the thing. This isn't— this is fairly important. Um, and GitHub put out a blog post about this just recently. I'll try to, I'll try to, uh, get a copy of that, a link to that, and put it in the show notes. Uh, in GitHub's blog post, they talked about friction and having the right amount of friction. And essentially what they were saying is you— it's so hard to write code that there's, there's sort of this inherent, um, the, the balance— it inherently balances towards getting better pull requests just because it takes work to write code and make it to pull request. With, with AI and AI agents, things like Claude, it becomes so easy to open a pull request and to write the code to open the pull request that basically anybody can do it. It removes all of that friction to contributing to open source projects.
Jonathan Bennett [00:56:07]:
And guess what open source projects has figured out? And that is you don't want everybody in the world making pull requests to your project. That's a bad thing because you then have to wade through all of those. And even if the— even if the AI agents get better and better and they write better code, that still doesn't fix the problem entirely because there's still, there still has to be a, a guiding hand behind it saying, this is the code, this is the new feature I want you to write. And not every new feature belongs in that code base. And so the way, the way I put— I was on another interview the other day, um, where I was being interviewed. The way I put it there was, we've, we've, we've sort of inverted the, the balance here between writing code and reviewing pull requests. And it has now become so easy to write code that we have a a dearth— the, the— there's a dearth of people that can do, um, do valid reviews of all of this. And so now the people that were running the project, now all the— all they're doing, in some cases all day, is trying to review and keep up with these AI pull requests.
Jonathan Bennett [00:57:17]:
And so you've seen, you've seen some really funny things happen. Like, uh, there's at least one open source project— we talked about this here a couple weeks ago that has just— they've closed down. Only existing contributors to the project can make pull requests. A bunch of, a bunch of them have come out and said, we don't want any AI pull requests at all.
Jeff Massie [00:57:38]:
It's, uh, it's real interesting to see. Well, and I think, I think too much of that is you go, oh, I'm going to make this thing and it's going to be great, I'm going to send it in. But like you said, with the friction, there's not the, oh, let me merge it myself, let me test it, let me see what's going on, let me You know, at least do a little due diligence. And I think you get a lot
Ken McDonald [00:57:56]:
of, I'm just gonna throw it in. And, and in some cases, it's not so much about the pull rig, Chris, but it's about proprietary IO— IA— AI
Jonathan Bennett [00:58:10]:
integrations with some platforms. You know, sometimes that is a thing in, in the respect that, um, if it's too easy for the AI to integrate. So like, think, think about the kernel, for instance. Um, they, they've established trust among their maintainers. One of the ways that they've done that is they have this somewhat esoteric process for sending in patches. You got to use email, for goodness sake. Nobody uses email anymore. You have to have your signed-off line, right? And all of this.
Jonathan Bennett [00:58:39]:
And so they just have this really easy, uh, metric. And when someone sends a pull request in and it's not signed off by a real person, they can just immediately throw it out and they don't have
Rob Campbell [00:58:48]:
to worry about it. That's wild, but it's starting to make sense again this day and age. You know, for a while they're like, why are they stuck in the past? Like, oh, they had something. They— it's like the
Ken McDonald [00:59:03]:
I'm not a robot checkbox. But that did pass on a link into the Discord chat about an article where Ginto was talking about moving from
Jonathan Bennett [00:59:19]:
GitHub to another platform.
Rob Campbell [00:59:20]:
Oh, interesting. Get away from that. I saw, I saw that. You know, that reminds me though. Can AI now actually pass the I'm not a robot?
Jonathan Bennett [00:59:29]:
I would think it should be able to actually. The Turing test?
Rob Campbell [00:59:33]:
Can LLMs pass the Turing test? Well, no, not, I mean, not, not the Turing test, you know, just the,
Jonathan Bennett [00:59:38]:
you know, when you sign in or
Rob Campbell [00:59:40]:
the check— Oh, oh, oh, oh, you—
Jonathan Bennett [00:59:40]:
Or where you pick out the images.
Rob Campbell [00:59:43]:
Can AI defeat CAPTCHAs now?
Jonathan Bennett [00:59:45]:
Or is it reCAPTCHA or whatever they call it? I don't, I don't remember what the R and the E stand for in reCAPTCHA. In some cases, yes. It depends upon how sophisticated the CAPTCHA is and how much of a trick
Rob Campbell [00:59:55]:
question it's trying to— Where you gotta check all the, uh, uh, the, the
Jeff Massie [00:59:59]:
boxes that have a stoplight in it. Yeah. Yeah. See, I, I tell people we, you have to look at, at AI like, okay, you've got a junior fresh out of school, engineer, programmer, whatever, and they are super excited and jacked and they're going to change the world. And I've had it where AI has done some very complex data analysis for me and it's been wonderful. But I've also had it where, hey, please make this table of data look nice for a presentation, and it starts going, oh, I'm Yeah, I'm just one— I just want it, uh, I just want the fonts and everything like that to look nice. And it starts going, oh, I'm going to filter and I'm going to do this. And I'm like, no, don't touch the data.
Jeff Massie [01:00:50]:
I just want graphical presentation niceness, you know. And so, so you got to watch what it does because sometimes it— look,
Jonathan Bennett [01:00:57]:
I'm going to help, I'm going to,
Jeff Massie [01:01:00]:
I'm going to be excellent.
Rob Campbell [01:01:03]:
Yeah.
Ken McDonald [01:01:03]:
And it's like, stop. I guess a better analogy is AI is to coding just like the Swiss Army knife is to whatever you use
Jonathan Bennett [01:01:13]:
a Swiss Army knife for. Anyway. No, AI is like a toddler holding
Rob Campbell [01:01:17]:
a Swiss Army knife. I think of it more as I'm the junior and AI is that, uh, that, that guy who thinks they know everything. When, I mean, they do know a lot of things, but even when they don't know something, they'll still pretend that they do. So I'm just consulting with them. I'm going to do the work, but I'm going to know that sometimes they're just full of it. And I'm going to go find a
Ken McDonald [01:01:48]:
result somewhere else if they can't help me. Sometimes being able to know the name
Jonathan Bennett [01:01:57]:
of the— Uh, matron for, uh, the Vulcans doesn't help. Indeed. All right, Ken, do you want to pick it up here? You had a, uh, a, a tip, a review actually, uh, that falls well
Ken McDonald [01:02:12]:
into this AI topic. Uh, yes, be more than happy to. Well, I'm going to go ahead and switch to my, uh, screen.
Jonathan Bennett [01:02:18]:
Is that big enough for everybody to see?
Ken McDonald [01:02:21]:
That's not too bad. Okay, well, I'm going to be covering a quick review of, uh, application that allows you to do, uh, run your, your AI locally. It's called GPT4ALL. I actually installed it so it's not even, uh, in my, uh, path, so I have to go down here and then it's You've got a, uh, listing of all the files and directories that it installed right here. One, one of the directories is bin, which is where the actual executable is located. So when I run that, it brings up this and it takes you to the home screen where it says welcome to GPT4ALL. Uh, you've got the option where you can start chatting, chat with your local files. Basically, that's— it lets you select the local documents you want to use as reference mo— uh, information.
Ken McDonald [01:03:27]:
And it let— you can explore and download, uh, different, uh, AI models. Here's some of the ones that you can select. I've got two, uh, that I've actually downloaded. One is regional, one— the other one is Llama 3, uh, 8B. That has to do with weight. If you're not that concerned about trying to keep it everything locally, you can go in and configure it to go with, uh, 3 of the remote providers. And then you've got a custom option. So if you wanted to, you could even configure for one of the, uh, custom, uh, remote providers.
Ken McDonald [01:04:07]:
Then you can even, uh, use Hugging Face and— or you can search for, uh, download and download, uh, models from there. Now they don't give any guarantee that these will work, and some— the ones I've actually got downloaded is Reasoner-1. It's based on the Quin— 2.5 coder and the, uh, Llama 3. And this is one of the ones from Hungry Face. It doesn't work when I try it, but once you get that set up— and I've got, uh, added local docs, I've set up the, uh, folder where my bash scripts are stored, uh, folder where I've started converting the man pages to actual text files that it can read. And then my, my Calibre library for all the other information that I've got, as well as a folder where I've got notes that I've made for myself on doing things. So let's go in here and do a chat. Uh, here's a demonstration of what I did.
Ken McDonald [01:05:23]:
I just said generate 10 lines of random data containing names and addresses using the Llama 3.8B, and it created that. And if I go here, I can, uh, it'll give you the option. It's got the, uh, Reasoner set
Rob Campbell [01:05:41]:
up
Ken McDonald [01:05:42]:
as a, uh, default. I can go in and select master library. Yeah,
Jonathan Bennett [01:05:53]:
you got any questions for, uh, Uh,
Ken McDonald [01:05:59]:
tell me about Sabayon Linux. And it probably won't find anything since I don't think I've got that in my, uh, local docs. And I'm trying to remember
Jonathan Bennett [01:06:09]:
how to
Jeff Massie [01:06:15]:
spell Sabayon. S-A-B-A-Y-O-N, I think. This will be good. We'll see what it does if it
Rob Campbell [01:06:19]:
doesn't know the answer. Yeah. It's gonna make stuff up.
Jeff Massie [01:06:24]:
That's, that's what AI does.
Rob Campbell [01:06:26]:
It does it on purpose. Sabian Linux is a Linux distro
Jeff Massie [01:06:35]:
based
Jonathan Bennett [01:06:35]:
on the Linux kernel. Uh, how fast or slow is it on your machine?
Ken McDonald [01:06:42]:
That is the question. Yes.
Jeff Massie [01:06:42]:
Uh, it's going to be running a while here.
Ken McDonald [01:06:46]:
That one core does pretty good. Uh-huh. Uh, while it's doing that, you can make some changes that would help to, uh, speed it up. Right now it's just got— I've got it set up with the default of 4 CPU threads for inference and embedding. And you can enable a local AIBI. It does increase the resource usage, But that would allow you to have a API server that you could use with other systems like with VS Code, you know, and you can actually go in and change the model settings as well to help with, uh, setting context or to guide the behavior of a particular model. And
Jonathan Bennett [01:07:39]:
then it's got the templates.
Ken McDonald [01:07:40]:
And
Jonathan Bennett [01:07:42]:
of course— So has it, has it figured out, has it figured out the answer to our query yet? To find information about Savion Linux, let's search for its official website and some key features. Now, is it able to go out to the internet?
Ken McDonald [01:07:56]:
Is it an agent?
Jonathan Bennett [01:07:58]:
It is not able to.
Jeff Massie [01:07:59]:
So it's making, it's
Ken McDonald [01:08:02]:
going to make it up. It's looking at the documents that I have.
Rob Campbell [01:08:10]:
In my master library. Why would you have its official website in the master library though? I don't. Then why does it say it's looking?
Jonathan Bennett [01:08:17]:
And if you'll notice, this is analysis encountered error. You know, I appreciate that, that it errored out rather than, uh, making something up.
Rob Campbell [01:08:29]:
Well, it, it looked
Ken McDonald [01:08:38]:
for sabionlinux.com. Is that actually— and there's JavaScript it was using
Rob Campbell [01:08:45]:
and trying to find information.
Jeff Massie [01:08:46]:
Yeah, that's not a real website though.
Rob Campbell [01:08:51]:
It's.org for the official one. Yeah,.com goes nowhere. Interesting. So it just made it up. Say I'm gonna— so, so if that was a real URL though, what if
Jonathan Bennett [01:09:04]:
it actually pulled from the internet there? It seems that the fetch function is
Ken McDonald [01:09:11]:
not available in your environment. Ah, and let's go with
Rob Campbell [01:09:18]:
llama38. Let's do another one.
Jonathan Bennett [01:09:19]:
Uh, pick something you know is going to be there. Yeah, one more. We don't, we don't want to go too long. Yeah. In fact, actually, let's not take the time to do another one now. Ken kind of, Ken kind of sneaked in a command line tip for us. Obviously it's not command line, but sneaked in a tip instead of a story. So this was a review.
Jonathan Bennett [01:09:42]:
Is this something you're actually going to
Ken McDonald [01:09:44]:
use ongoing, you think, Ken? I've actually used it off and on. In fact, the one I showed earlier is where I, I did use it to just generate random data for, uh, trying out another command line tip that
Rob Campbell [01:09:59]:
I was playing with, uh, earlier today. Will it tell you the source of the documents that it found in it? Because then it could be like a better, a better, uh, basically a better
Ken McDonald [01:10:09]:
search tool for your— because right here is one where I asked the question, provide a bash script demonstrating the use of systemd ac-power. And it gave the 3 sources that it used from my master library: Advanced, Advanced Scripting Guide, uh, Python 3 for Absolute Beginners,
Jonathan Bennett [01:10:35]:
and the Linux System Administration. Yeah, I think it's, it's worth pointing out that it was not speedy, and that's why all of these things prefer to use your GPU instead of your CPU, because they can run a lot faster with the, uh, the multiprocessor aspect of the GPU. Yep. All right. Uh, Jeff, let's talk before we close the show out and move on to the real command line tips about the kernel. Uh, 6.19.3 has been released and we usually don't take a whole lot of time to talk about these small point releases.
Jeff Massie [01:11:10]:
Is there something notable here that you wanted to cover? Yeah, I, you know, and first it's like, I know regular listeners and like Jonas said, might remember— might be remembering last week that I covered the release of the 6.19 kernel. And the astute among you are thinking that would be correct. But I did want to cover the point 3 release because this one was a little different. And I wanted to be people— have people aware of the quick succession of releases. So when a kernel is released, we get small point releases normally that to fix little issues, no major changes, just little things that slip through the RC get fixed. Uh, normally they're pretty specialized, you know, they've— it's just a very specific piece of hardware or this certain specific, um, software path that most people don't take. So this week we had the 0.1 release soon after the 16.9.0 release. The 0.1 was to fix some wireless network drivers, um, storage and file system code, SMB fixes, you know, was a lot of stuff.
Jeff Massie [01:12:20]:
Uh, HP, HP ZBook Studio G4 audio quirk, and there's a Bluetooth USB driver adding a new ID for the Edimax EW- a bunch of numbers and letters. So nothing too outstanding, just a small assortment, little fixes and some device additions. Well, this came out on Monday. All's good, right? Well, not for those who couldn't boot after the 0.1 came out. Eek. So later Monday, 6.19.2 came out. Now, if you're running the 0.1 kernel and things are working just fine, nothing to worry about. But if you're on 6.19.0, I would not upgrade to the 0.1 version.
Jeff Massie [01:12:59]:
So the fix was to revert one bad commit. And it's the enforce_device_lock_for_driver_match_device commit was the culprit. Basically, some fixes that were taken care of in the 6.19.1 were not backported to other, uh, hardware drivers, so there was a mismatch in versioning, and that caused the issue because your 0.1 fixes also need to course coincide with your drivers that, um, they reference. Okay, so we have the 0.2, you know, we wait for the backports for the drivers and then we're good to upgrade, correct? Well, not so fast. Now we have a 0.3 which came out on Thursday, and again, if you're using an old kernel, things are working okay, then there really isn't the need to worry about it. But if you want to upgrade, make sure you're getting the latest, greatest, greatest version of the kernel. Now I will say officially Greg Crow Hartman said that all users of the 16— 6.19 kernel must upgrade. He said that in the official kernel mailing list anyway.
Jeff Massie [01:14:11]:
I don't know if that's a standard, you know, always upgrade to the latest,
Ken McDonald [01:14:15]:
or if
Jeff Massie [01:14:18]:
he says that, but it seems like sound judgment anyway. Uh, the.3 takes care of some crashes. So if you're using Linux on Android, I like— I— on an Android phone or a custom install, and you get a swap stress— swap stress test crash and it forces a reboot. Should fix that. Also fixes some swap file corruption across non-aligned blocks. Uh, there's a SCSI driver kernel panic issue fixed along with the USB serial handler memory copy error, which— it's a security issue, it's not a crashing issue. Basically, it could let untrusted apps poke around in some kernel space.. But I, I do want to say that these are very, uh, specific hardware, very specific ways that this stuff comes out.
Jeff Massie [01:15:05]:
So it's not just a standard, uh-oh, an untrusted, uh, uh, program could poke around in kernel space. It's— you have to toggle very specific things to make this work. So not— it's not a big deal. Uh, there's some other small fixes for accidental division by zero error. And for the math challenge, division by zero is not zero. Division by zero is undefined. So there's your, there's your math for the day. Um, some LongArch KASAN initialization order was reordered to avoid early speculative memory access.
Jeff Massie [01:15:45]:
Uh, some other little bugs which prevent some out-of-bound reads and writes and some very specific instances. And so, you know, like I said,
Rob Campbell [01:15:56]:
very, very
Jeff Massie [01:15:58]:
niche type things. But, you know, probably good to go
Jonathan Bennett [01:16:03]:
to the.3 if you're on 16.9 or 19. And let's, let's be honest, probably you just want to install your updates that your distro gives you because they're going to either jump to this or if there's anything that you need to pull,
Jeff Massie [01:16:16]:
they're going to pull it in as patches. Yes, and, and, and note of that would be— and, and I made note of this— is that if your system relies on a custom driver, like you've got a very specific driver, double-check that the upstream module version matches the 6.19 point whatever version kernel you're on. Sometimes distributions can ship patched variants that lag behind the mainline mainline release. So just be aware of that. Normally I say follow this, but it came up because in the Discord this week we had some people having issues with the 6.19 kernel and working with some of their drivers. I, I didn't have an issue, but I was also using a different version of the driver. So this is also kind of just a, hey, if you're going to install a kernel on your own, be aware of, you know, your modules and things like that, that they're on the same, uh, release as the, uh, as the kernel is. So, uh, take a look at the article in the show notes.
Jeff Massie [01:17:23]:
You know, the kernel mailing list also has all the details for the code
Ken McDonald [01:17:29]:
changes, so it's all there. And if you've been using 16.19.1, definitely
Jeff Massie [01:17:37]:
update to 16.19.3 now. Yeah, I mean, I'll be honest, Greg said that, but in it— well, he knows a lot more than I do, but realistically, a lot of it was like, unless you're using very specific hardware in very specific instances, if it's booting
Rob Campbell [01:17:53]:
and running fine, it's not really going to probably affect you. I mean, don't all software owners say to update when they have an update?
Ken McDonald [01:18:01]:
Come
Rob Campbell [01:18:05]:
on.
Jeff Massie [01:18:05]:
Yeah, probably back to 6.18. No, because you'd want 18 dot whatever the latest is.
Rob Campbell [01:18:11]:
Yeah. If you're not having problems, stay where you're at. And there's no
Ken McDonald [01:18:17]:
security vulnerability, stay where you're at.
Jeff Massie [01:18:20]:
And realistically— go ahead, Jeff. Well, I was gonna say, and realistically, unless the new kernel has a very specific piece of hardware you're trying to enable, or a very specific, like, oh, I need to have
Jonathan Bennett [01:18:32]:
that feature, feature
Jeff Massie [01:18:33]:
because of reasons, kind of like Jonathan
Rob Campbell [01:18:35]:
said, just let the distribution you're on handle the— 3 reasons. One, there's a security vulnerability you need to patch. Two, there's a feature or something you want. And three, you're just an enthusiast and
Jonathan Bennett [01:18:50]:
you just want to try out the latest and greatest. I was gonna say that number 3 needed to be in there just because you want to.
Ken McDonald [01:18:58]:
Number 3, and don't do it on a production system.
Jeff Massie [01:19:01]:
Yeah, and, and I, you know, you know, I've done that. I've compiled my own kernels, installed— I don't, you know, for a while I did some benchmarking on compiling kernels and the latest greatest, and, um, I've done it. So I, I'm not saying somebody shouldn't, it's just I've also had to roll back to earlier kernels and things like
Jonathan Bennett [01:19:22]:
that because things didn't work so well. Yep, absolutely. All right, well though, that is our news for the week and, uh, pretty good overview. And we are about to get into some tips, and I have already looked at these and I'm already excited about the first one that we're going to talk about. Rob is going to tell us about a— well, something of a network scanner, uh, from the command line. And I'm trying to get it running
Jeff Massie [01:19:46]:
already because I cheated and looked ahead.
Jonathan Bennett [01:19:47]:
We're gonna let Rob tell us
Rob Campbell [01:19:51]:
all about it, right? After this.
Jonathan Bennett [01:19:55]:
All right, everybody.
Rob Campbell [01:19:57]:
Knock knock. Who's there? Who's there? Who's there? That is my command line tip for today. The command line tip is called Who's There? That's W-H-O-S-T-H-E-R-E. And what this is, is it's a, uh, network scanner. I mean, in the command line, a TUI network scanner., um, that, uh, you know, scans your LAN or whatever you're doing to show you what's on it. And yes, this is actually my, my home network that you could see, and it has the IPs internal, so it's not too confidential, uh, and the manufacturer of the device on there. I mean, maybe it's a tiny, tiny bit, but I'm not worried. Whatever, hack me, I don't care.
Rob Campbell [01:20:47]:
Anyway, the MAC addresses, uh, last time is seen way over on the right, you know, they're all like 1 second. And you can go into, uh, one of them, you know, let's go into this Netgear I have here, and it's going to tell you the IP, display name, MAC address, manufacturer, first seen, last seen, um, Source is— it's from the ARP cache. Open ports. Now by default it doesn't say that, but I already looked at this one earlier. You know, you just do a, a P to, uh, to scan, and it's going to scan at least common ports, not all of them. And then, oh, it also says— it already said when the last port scan was and extra data. So you can also quickly, if you want to look at a device, see what ports it has open. Limited number of of course, like I said, it's only, you know, it picks off of the following ports or 21, 22, 23, 25, 80, 110, common ports.
Rob Campbell [01:21:43]:
I guess I'm not going to list them out because I'm not, but it's, it's, you know, there are GUI scanners out there that, uh, you know, I've been using them for years, but, uh, this one actually seemed very quick compared to some of the, some of the GUI ones I've used, Advanced and Angry IP Scanner, or some other ones that I've used in the past on Windows. Um, and anyway, I don't know, not a whole lot else to say. You could quickly see what's on your network and, I don't know, see if there's something weird out there, I guess. Obviously there's other ways to look at things on your network if you know how to check your DHCP scope and whatever, but this could be more information, you know, and more detail on it.
Jonathan Bennett [01:22:35]:
So that is who's there. Yeah, it's cool looking. Um, the one thing that I am missing is it's not pulling, um, DNS names. It's only pulling names from, um, mDNS. So when I— when you run it It
Rob Campbell [01:23:00]:
lists your display names. It,
Jonathan Bennett [01:23:04]:
it's like, um, are these NetBIOS names? I don't know, I don't think so. So like my wife's computer is named Rose, and this is rose.underscore.udisks-ssh.underscore.tcp is the name. I saw on yours you had some weird names like that on there too. So I think that— I think they
Rob Campbell [01:23:22]:
need to do some work with their display names. Yeah, uh, NSLookup would be, uh, something probably nice to have. You actually— yeah, do you actually have
Jonathan Bennett [01:23:38]:
that— those named in your local DNS? I would have to— I think so, but I would have to look. Yeah, um, yeah, that might be— it might be a difficult— I may not, now that you mention it. I mean, I have like reverse DNS
Ken McDonald [01:23:48]:
working to be able to pull those.
Jonathan Bennett [01:23:51]:
Yeah, these are— it's probably using multicast DNS, right? Which mDNS is its own, its own thing, um, for like, um, uh, device, device discovery. But anyway, that is still a cool tool and I like it.
Jeff Massie [01:24:09]:
All right, Jeff, what do you have for us? Well, in the show notes I have 2 commands, but they're really one, and one is just a little more automated version of the other. So the 2 commands I have— I have cache— cacheos-rate-mirrors. Now all it does is it simplifies some of the, um, command line that you're— that you use. Now I'll go into how to use it and kind of what it is, but first let— I mean, let's first talk about kind of what it is. And if you notice after a while that when you try to update your distribution it's slowing down when doing updates, well, you could have communication issues with your mirror. You know, there's some reason it's causing lag, whether they've rerouted network or whatever it is. And so every so often, you know, when you— or when you remember it, or you feel like it, or you're bored on a Tuesday and want to kill 30 seconds, you know, test— you can test the speed of your mirrors. So the basic command is rate-mirrors, and it's a fast mirror ranking tool that finds the best mirrors for your Linux distribution.
Jeff Massie [01:25:33]:
Now it uses submarine cable connection data and internet exchange data to intelligently hop between countries and other geolocations and discover fast mirrors. And process takes about 30 seconds. I, I've ran it myself. Now for me, because I'm on CacheOS, I simply run the cacheos-rate-mirrors command, searches all the mirrors, you know, and looks at different criteria, finds the fastest ones it can and then it puts them in your mirror file and it updates it. So then your mirrors are now faster, or you're using the fastest mirrors that you have access to. Now if you're on a different distribution, Arch-based anyway, you can run rate— you know, will you be like sudo space rate-mirrors space and option space and then the command. Now the command is just the distribution you're trying to um, test it— test the mirrors on so it knows which set of mirrors to, to look up. So like, if like just Arch, you know, you just put Arch after that as your command, it'll look just for the Arch mirrors.
Jeff Massie [01:26:42]:
If you're on Manjaro, it'll look for the Manjaro, and so on. Um, you also have the, the options, or like you said you know, you know, as they sound, optional. But you can, you know, you can put in all sorts of like how many simultaneous connections, uh, only test specific protocols, you know, you can set specific countries you want to test. So there's, there's a ton of different, uh, things you can do. If you just type rate-mirrors with nothing else, you'll get a list of the optional settings. It'll tell you what they'll all do and And if you want more information, you can type rate-mirrors space and then the option, and then it'll give you all the option— you know, more detail of the option. Uh, I pretty much just say just run it default, you're probably good. Now if you're running, say, Arch or something like that, it won't automatically save it for you, so you'll just get the output to the screen.
Jeff Massie [01:27:44]:
But what you do is you put in a pipe you know, that's the vertical bar, space, sudo space tee, T-E-E space, and then for like Arch, it's /etc/pacman.d/mirrorlist. Now that will then load the fastest mirrors into your, your list. So then when next time you do an update, it's using those faster mirrors. Now you can use this for BSD and even custom mirrors. So if you get into the advanced usage, you can, you can set your mirrors, meaning you could use it for a Debian-based or other independent distribution. They have how you set your mirrors in there, both web address, and ideally you have like country in there as well, so it has a
Jonathan Bennett [01:28:38]:
little bit
Jeff Massie [01:28:39]:
of a location to them. Um, but take a look at the link in the show notes. It goes to the GitHub page.
Jonathan Bennett [01:28:45]:
It's got all the details, and happy benchmarking. Very cool. Unfortunately, it does not work for Fedora. That was the first thing that I checked.
Jeff Massie [01:28:55]:
Like, let's take a look. It can— that's where you go, you have to put in custom mirror. So you would put in the mirrors you, you know, and then you put in— I— you don't have to, but ideally you put a country in as well, and then you run it off that custom list of mirrors and it'll go out and do it. So, so there is more setup for like Debian and Fedora, but you, you can do it.
Ken McDonald [01:29:22]:
It's— but it's geared towards Arch out of the box. With Debian, Ubuntu specifically, uh, there's a
Jonathan Bennett [01:29:30]:
Nala that has a fetch subcommand that does similar. Yeah, I'm, I'm— this, this sent me down a rabbit trail now of wondering, because I've had problems in Fedora before with some of their mirrors being painfully slow, and they have the fastest mirror option, which doesn't actually do what it says it does. That just chooses the, the one with
Ken McDonald [01:29:51]:
the lowest ping times.
Rob Campbell [01:29:52]:
Um, but apparently that's not the fastest.
Jonathan Bennett [01:29:55]:
Yeah, it's not necessarily the fastest bandwidth. Apparently Fedora does have a min rate option where you can say if you're pulling less than this amount of speed, drop that mirror off your list and go look for another one. I'll have to, I'll have to play with that, uh, min rate in the timeout, which is cool. But yeah, I like that. I like being able to, uh, figure out which mirrors are going to be
Jeff Massie [01:30:18]:
best at your location. And even if, you know, you— I'm sure there's a tool that does it for Debian and Red Hat. And if it's— if you don't want
Jonathan Bennett [01:30:25]:
to set up the custom mirror list. Yeah, very cool.
Ken McDonald [01:30:29]:
All right, Ken, what do you have for us? Well, I've got a, uh, demonstration of using the command system-ac-power. It, it will report whether you are connected to an external power supply. So if you're on a laptop. It's definitely going to come in handy. Speaking of which, I am on a laptop. Is that big enough? Yeah, for sure. It is. Okay.
Ken McDonald [01:30:58]:
And if you'll note, do you notice
Jonathan Bennett [01:31:04]:
what the, uh, prompt is saying there, Jonathan? Uh, dad, I was going to say, which, which part of it? Dad at Fedora? Yeah, running on a Fedora machine, or
Ken McDonald [01:31:14]:
at least a Fedora VM. Bravo. No, it's a, a vador— Fedora runs installed on a laptop. Oh, there you go. Because, uh, couldn't really demonstrate, uh, using the command. But the— as I said, the command is systemd ac— acs power. So I went ahead and wrote a script to help with demonstrating it. And basically what the script does is it does systemd ac-power space -v for verbose.
Ken McDonald [01:31:46]:
That means when you run it, it'll say yes or no. And let's go ahead and run this script. And yes, we are running on AC power, and it's good thing this laptop's not the one I do all my work on because I'm, I'm unplugging it now. Let's see how long the battery lasts on it.
Jonathan Bennett [01:32:11]:
No, we are running on battery. Nice. Configured out. It also has a --low option, which checks if the battery is discharging and at some low battery level. Um, the other interesting thing is if you run this without the verbose option, without the -v flag, it's just going to return, um, it's going to return your, your standard, um, return values like
Rob Campbell [01:32:40]:
a 0 for success and non-zero for failure.
Jeff Massie [01:32:43]:
Correct.
Jonathan Bennett [01:32:43]:
Which is good for scripting, which is
Ken McDonald [01:32:46]:
really good for scripting. All right, very cool.
Jonathan Bennett [01:32:53]:
But like you said, with the --low and— you gotta, you gotta make it
Rob Campbell [01:32:55]:
verbose too if we
Jonathan Bennett [01:33:02]:
want to be
Ken McDonald [01:33:04]:
able to see it. Yep. No, your battery is not low, so I don't
Jonathan Bennett [01:33:10]:
have to worry about it dying anytime soon. Indeed. All right, I've got a very quick tip for us. It was another one that I was surprised we haven't ever covered before, and that's unzip. Uh, if you want to— if you have a.zip file and you want to extract it, you can just use unzip. And there are a couple of interesting flags. The -l will list, the -t will just do a test. You can use -d to specify a different directory.
Jonathan Bennett [01:33:39]:
-o will overwrite without prompting— be careful with that one. And then -x you can use to exclude a list of files. Um, very— a very useful
Ken McDonald [01:33:53]:
tool when
Jonathan Bennett [01:33:53]:
you have.zips that you're working with. Um, that, you know, each one of these, uh, each one of these archive formats have their own tool. Uh, tar files have, you know, obviously the tar command, uh, but like gunzip, uh, and some of the others for those different file formats. But if you have a regular old-fashioned
Rob Campbell [01:34:10]:
zip file, unzip is the one you want. Amazing. I use that all the time.
Jonathan Bennett [01:34:14]:
I, I often use zip these days just because of portability, but everything uses—
Jeff Massie [01:34:20]:
everything can run zips. I think it's funny because I always have to usually look at the command line or the options because you know, some of them, oh, just run the command and it automatically unpacks. Some of them it's like, oh, you need a -d for decompress, -e for
Rob Campbell [01:34:35]:
extract, -u for unpack. It's like, which letter is it? Or unzip, you could just use no
Jeff Massie [01:34:40]:
flags and it works just fine.
Jonathan Bennett [01:34:42]:
Indeed, right? And that's what I mean, tar is probably
Rob Campbell [01:34:49]:
the best. tar.xz— zxf. Yeah, that's the one.
Jonathan Bennett [01:34:52]:
That's what I use. That's my, uh, yo, I was gonna say, I don't use my fingers. My fingers know how to do it, but I can't tell you, man.
Rob Campbell [01:35:03]:
7-Zip is, is great, but, uh, not particularly portable.
Jonathan Bennett [01:35:06]:
Yeah, it's zip with more features, but more Windows-y. Yeah, indeed. All right, well, that is it. We've gotten through everything. Uh, let's give each of the guys opportunity to, uh, plug whatever they want to. Or get the last
Jeff Massie [01:35:23]:
word in on something. Jeff is up first. Uh, nothing, nothing too critical, just a little bit of, uh, ending poetry. You have just typed your 1 millionth character since you've acquired this computer 131 days ago. This puts you in the 94th percentile of productivity. Congratulations, you've won a free visit to the hand clinic
Jonathan Bennett [01:35:46]:
of your choice. Have a great week, everybody.
Rob Campbell [01:35:50]:
Oh dear.
Ken McDonald [01:35:50]:
All right. And Ken. Oh, I've got a link in the show notes about a wallpaper contest that the Xubuntu team is hosting. If you follow that link and you want to demonstrate your skills with— as
Rob Campbell [01:36:07]:
an artist, then go ahead and take advantage
Jonathan Bennett [01:36:15]:
of this. And that's pronounced Zubuntu.
Jeff Massie [01:36:17]:
Ubuntu.
Rob Campbell [01:36:17]:
Uh, however you want to pronounce it, we won't judge. All right, Rob, uh, couple things. One thing, when we were talking about Zip, right at the end I said Win— or 7-Zip is Zip but more portable.
Jonathan Bennett [01:36:30]:
I meant Zip but, uh, more features.
Rob Campbell [01:36:31]:
I think that's what you said. Is it? I think I said portable. That's why I had my— I think you just knew what I meant. That might be.
Ken McDonald [01:36:38]:
I think I
Jonathan Bennett [01:36:41]:
said portable.
Rob Campbell [01:36:43]:
Portable. Um, anyway, not as portable either way. Anyway, I don't know, uh, that's what I meant. I don't know what I said. Uh, another thing I want to go back on my Matrix story, just to clarify, the name is a little overloaded. There are at least two other Matrix OSs out there. One is a Debian-based distribution that's, I guess, still active. And they call it Matrix because the only desktop they have is the Trinity desktop.
Rob Campbell [01:37:15]:
Yeah. The Matrix movie, for those who know. If there's no— look it up. Um, the other one is an operating system for software-defined controllers. So just look at our show notes or look for the GitHub one for LXNAY. Or if you search MatrixOS, you're probably going to get the one I was talking about. Bunch of news stories on and stuff like that. So you'll probably find the right one, but you might not.
Rob Campbell [01:37:41]:
Um, and finally, as I always say, if you want to find— get more of me, uh, robertpcampbell.com is my website. On that site, you can find links to my LinkedIn, my Twitter, my Bluesky, my Mastodon, place to donate a coffee., and last week nobody voted for me to keep the mustache, so it's gone. It's gone. I cut it off. Zero votes meant it's gone, and I was getting tired of it being in my mouth anyway and getting food all over it. So I'm
Jonathan Bennett [01:38:15]:
all cleaned up now. Have a good week, everyone. He looks like such a kid. All right, appreciate you guys being here. Is a thing. Ubuntu is a thing.
Rob Campbell [01:38:24]:
Yeah, we've been in the back chat looking at all— yeah, don't use Ubuntu, that's a scam.
Jonathan Bennett [01:38:31]:
We've talked about that before though. All right, appreciate the guys being here. If you want to find more of me, you can check out Hackaday, particularly the, uh, that's where FLOSS Weekly lives, at least on the weeks when everybody at my household is not sick. We took a week off for strep and colds, uh, but we should be back hopefully this upcoming week. Got a couple of folks we're talking to about coming on as guests. Uh, other than that, we just appreciate everybody being here, those that watch and those that listen, whether you get us live or on the download, and we
TWiT.tv [01:38:59]:
will be back next week on the Untitled Linux Show. Hey everybody, uh, Leo Laporte here, and, uh, I'm gonna bug you one more time to join Club TWiT. If you're not already a member, I want to encourage you to support what we do here at TWiT. You know, 25% of our operating costs comes from membership in the club. That's a huge portion and it's growing all the time. Uh, that means we can do more, we can have more fun. You get a lot of benefits, ad-free versions of all the shows. You get access to the club, to Discord and special programming like the keynotes from Apple and Google and Microsoft and others that we don't stream otherwise in public.
TWiT.tv [01:39:41]:
Please join the club. If you haven't done it yet, we'd love to have you.
TWiT.tv [01:39:47]:
Find out more at twit.tv/clubtwit.
TWiT.tv [01:39:47]:
And thank you so much.