Untitled Linux Show 156 Transcript

Please be advised 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.

00:00 - Jonathan Bennett (Host)
Hey, this week we talk about NVIDIA and the upstream kernel, talk about Chrome OS becoming a little less Linux-y. There's the Rocket Accelerator we celebrate Linus Torvalds as the BDFL and it's a little easier to test Xorg now. You don't want to miss it, so stay tuned. Podcasts you love.

00:21 - David Ruggles (Co-host)
From people you trust.

00:24 - Jonathan Bennett (Host)
This is Twit you love from people you trust this is the untitled linux show, episode 156, recorded saturday, june 15th. Just throw some coffee in the tip jar. Hey folks, it is saturday and you know what that means. It is time to get geeky. Get your your geek on, as we were joking around in the pre-stream. It's time to be white and nerdy. Oh, that's terrible. That's it. Well it fits. So what can we do? It is time for the Untitled Linux Show, and it's, of course, not just me. We've got some of the crew here and we're going to have a lot of fun today. We've got some news to chat about. We've got some news to chat about. We've got some some various things going on that we are going to commentate on. We're going to be the talking heads today, and then we're going to get into some command line tips. It's going to be a lot of fun. And up first, rob is excited about some laptops. And rob, there are two different kinds of laptops here that you're excited about. Give us the lowdown yeah.

01:24 - Rob Campbell (Co-host)
So there has been a lot of excitement in the last few years about the future of what SoCs like RISC-V and ARM hold for Linux. Arm has been in our mobile devices for years but has struggled a little bit in desktops, laptops. It's known for being compact, lightweight, cool and and quiet and you know, all those features have made them the dream of what laptops really could be for us. But they've always come off as a little rather underpowered. You know, I purchased my pine book right here, my Pinebook, quite a few years ago now already, and it was nice, lightweight. I mean it still is lightweight and nice, cool and quiet. The plastic feels a little cheap, but the real issue was it just lacked the power that I needed. But a few years ago ago apple came along with their m1 chips and showed us arm can be powerful. Well, it has taken a little time for makers like qualcomm to catch up, but um, they are now. They are releasing the snapdragon x elite chip that claims to be able to compete with Apple Silicon, and I believe some benchmarks out there too have shown that it does compete quite well. So far, all the vendors have only been showing off Windows on the X-Elite chips, and for good reason. Windows has just struggled on ARM way more than Linux has. But if Windows can run on the X elite, then why not linux? And that's just what's going to happen.

Bervarian linux pc vendor, tuxedo computers, is working on just that. Pictures of this laptop look sleek like a mac and the power of the prototype contains. It contains a 12-core X-Elite, 2560 by 1600, 14-inch display, aluminum body, 32 gigabit of LPDDR5 RAM, one PCIe Gen 4 NVMe SSD, and it's in development with Linux support. This prototype was displayed at Computex in Taiwan last week and if it lives up to all the hype, this is the next laptop I think I want. But if it doesn't, if it doesn't live up to that hype or you just want something maybe a little more open, well, you got risk the risk 5 chip, and they too are going to be coming out with a linux desktop for you. Uh, real soon.

This week, canonical announced the first risk 5 laptop running ubuntu, and I'm excited for the future of RISC-V, but probably not as excited as I am for the other laptop. You know, and not because it's running Ubuntu, but last year, jonathan and I, we both purchased the Vision 5 II boards and there was a lot of work to get it. It was just a board and I never really got around to playing much with it, but I believe Jonathan has, and from his reviews and what I'm reading about the RISC-V laptop online, it sounds a lot like the early days of ARM. Similar to my Pinebook, it's suitable for light computing tasks, but for those wanting to get their hands on something more powerful, the ARM one sounds like it may be the better option. But if you're still interested in this RISC-V it is a 14-inch RISC-V laptop with Ubuntu pre-installed, 16 gigabits of RAM and 8 hours of battery life.

Pre-orders open June 18th. And well, by the time a lot of you read this recording or listen to this recording, I mean pre-orders may be open or opening very soon. So if you're interested, you can just head out over to deepcomputingio. So these are some pretty cool laptops in the works. I'm definitely more interested in the. You know, even though we have Asahi Linux for the MacBook, having something that's really kind of natively open and built with Linux on it, it seems pretty awesome.

06:08 - Jonathan Bennett (Host)
So I personally wish that more people would get behind either this like the NVIDIA Jetson standard, or what Raspberry Pi is using Now. This is a Raspberry Pi CM on top of an adapter board to go to the Jetson standard. I wish people would start putting these slots in these laptops. So come along and do something like what Framework is doing. That way, you can buy the laptop. It'll have the slot in it and you can then put an ARM chip in it, a RISC-V chip in it. You can run with it for a while and then in a couple of years, when another one comes out, you can just upgrade the SOC out from underneath.

That is what this laptop infrastructure needs to look like, because there's already a working standard out there. It's not terribly expensive to build these. You can get a hold of the slot. It's what Turing machines did with the Turing Pi 2 and their RK1, which they've built on top of it. I don't know why more people are not jumping on this for laptops. Maybe framework needs to do it. I don't know who needs to do it. Somebody needs to do it. It would be amazing. I would love to see that take off for a more consumer style standard.

07:20 - Rob Campbell (Co-host)
That's a cool idea. Did you come up with that with yourself?

07:25 - Jonathan Bennett (Host)
Ish. This has sort of been percolating for a while, Well, ever since I dug into the Turing, the new Turing Pi, because it lets you put four of these devices. And so what they did is they built these little adapter boards. Here's what it looks like without the Pi on it. They built these little adapter boards that you can take, like the Raspberry Pi Compute Module, and you can drop it on one of these adapters and then slot it in and it'll act sort of like an NVIDIA Jetson device and so you can put whatever you want to on there.

And so, like I'm using them now we're running ARM GitHub runners for one of the projects I'm involved in, because up until a few days ago GitHub did not offer anything ARM. You had to cross-compile or run inside a virtual machine. Both of those are sort of terrible options. But it occurred to me and one of the friends that I had helping me do sort of the testing to that board. It occurred to both of us at about the same time that wouldn't it be cool if we could put this in another device, and it just kind of snowballed from there.

08:27 - Rob Campbell (Co-host)
Well, I think this is a good step, at least. I think it would be nice to see some good, higher quality ARM and RISC-V laptops out there. And then, you know, maybe the next step, somebody can work on combining the likes of the framework with your idea here.

08:47 - Jonathan Bennett (Host)
Yeah, yeah, I would love to see a laptop with that sort of a slot on it to make the processor swappable. It'd be great. All right, so up next, oh, speaking of well, that was an unintentional segue that worked out really well. Speaking of, there is something new coming to the Linux kernel. There's multiple new things coming to the Linux kernel, actually, but the first one we're going to talk about is the Rocket Accelerator, and this is an accelerator driver, so it's something new in the Excel subsystem. I think we talked about that when it first landed.

The whole subsystem landed back a few months ago. It's one of the first drivers that is working to get upstream. In fact, they have sent the patches in to the kernel and it is for the RK3588, the Rockchip RK3588, which I'm interested in again because that's what the RK1 uses, and so I'm kind of eagerly watching the process of that working better and better on mainline Linux. And so what this does is it gets the neural processing unit, the NPU, that's built into that chip. It gets it working with mainline Linux and it's like 6,200 lines of code in the grand scheme of kernel patches. That's not actually that huge, um, but it's quite. It's quite a bit of code, um, and so it's been sent in and there's all kinds of comments about it.

But one of the fascinating fascinating things about this one is it is basically the first Excel subsystem driver for this style of device, you know, for the sort of on the edge chips that things like ARM is.

That is to say, this is not a device that's going to live in a massive server, in a server farm somewhere, um, and then of course, there's a bit of that that lives in Mesa as well for user space support and, uh, in the blog post about it. The interesting thing is that it's fully working and is basically as fast as the closed source driver, and there's a video of it doing object detection, which that's the sort of thing that you would do with this. You would connect a camera to it and then you would run the frames and it will do object detection. So it puts the green boxes around the people in the cars and labels them car person they walk by, which is which is really useful for doing things, various things, but it's also it's a great example of what it can do. So I am I am pretty excited to see this start to come together upstream open source main line, all of that good stuff yeah, that's pretty exciting.

11:34 - David Ruggles (Co-host)
um, I'm interested in. I actually a couple of weeks ago I was looking to see what MPU support was in Linux right now and it was still kind of not quite there, yeah, sort of nascent. Yeah, now that we're seeing more MPUs get out there, seeing this kind of support is interesting because I actually have a project I want to do with object recognition. I have a bunch of little kids in my house and we keep having things disappear off of our shelves, so I want to put a camera up and log when stuff leaves.

12:10 - Jonathan Bennett (Host)
Okay, david, come chat with us later about zone minder, because that is a a very interesting idea and very similar to some things that we're trying to do with zone minder right now. Cool, yeah, we can make that connection, make that happen. Uh, all right, and hopefully one of these days we'll do it with some rock chips that'd be fun.

12:50 - David Ruggles (Co-host)
Uh, because the accelerator's there now, all right. Why, david? Why are we building Xorg? Why? So I'm going to touch on that last, but let's see Michael Larabel, over at Pharonix, caught a post from an open source developer Enrico Weigelt, I believe, is how you would pronounce that about a new testing ground toolkit that he's built for XOrg, and I thought, hey, you know we're talking about how XOrg is dying. So this is kind of interesting because there's still some development going on.

So I started digging into this a little bit and I think XOrg is still dying after digging into this, and the reason for that is this particular developer. He has been active on kernel lists and things, but I cannot find any information about who he works for or who he contracts with or anything. He has been doing some development on Xorg and what he's got right now is a toolkit to allow building Xorg for testing it easier. It only supports Debian. He hopes to be able to do more later and in his post he actually asked for feedback. He said he'd welcome patches from Solaris and Illumis, which Illumis is a fork of OpenSolaris. So there is still some limited development around Xorg in the non-Linux operating systems, the probably more legacy you consider like Solaris, especially as old free BSD, net BSD, they still have some of that. However, last week we covered where I think it was free BSD. One of the BSDs was excitedly bringing in Wayland.

Now, the article I actually mentioned last week but was not able to find, I happened to find while researching this.

May Alari posted on the NetBSD a comment about Wayland and the ecosystem around it that I thought Jonathan would love the opportunity to discuss and they said the big question does all this have a future?

The good news is that all new hardware has generic support in X they're talking about Xorg or the X project. On NetBSD Someone writes either a mode setting driver or a classical WS display kernel driver and they will automatically be supported by the associated drivers in X. The bad news is that to have applications running we require access to a larger open source ecosystem and that ecosystem has lots of churn and is easily distracted by shiny new squirrels. Referring to Wayland there, the process of upstreaming stuff to Xorg is an ongoing process, but it's likely we'll run into things that will never be suitable for upstream. Of course, on NetBSD you also have the option of trying Vanilla Modular Xorg from PKGSRC. So, anyway, the point is that BSD is firmly buried in the past to some extent, and consider Wayland to be a bit of a shiny new thing. Consider Wayland to be a bit of a shiny new thing.

16:39 - Jonathan Bennett (Host)
I mean, I guess in comparison to how old BSD is, it's shiny and new.

16:43 - David Ruggles (Co-host)
Yes, so just to wrap up real quick in my digging into that developer, the main project he's associated with is the Arc Display Driver, which is a video card from 93 to 99. So even his development is very classical.

17:06 - Jonathan Bennett (Host)
So I am curious, and I don't know this for sure. I would be surprised if a mode setting kernel driver or even the classical WS display kernel driver isn't automatically supported in Wayland. That seems to me like you would get the same sort of automatic support that you do with X Like.

17:29 - David Ruggles (Co-host)
I don't think you have to, I would assume so. I think their argument was that you would be able to use new hardware with Xorg, that it wasn't automatically Xorg with newer hardware.

17:41 - Jonathan Bennett (Host)
Yeah, that's probably true. I mean, at this point there's nothing wrong with a project continuing to support X. What you're going to run into, what they're going to run into before long, is some of the big players like Red Hat are going to cease into. What they're going to run into before long is some of the big players like red hat are going to cease supporting x altogether, and at that point you're going to have a lot fewer engineers to do the security maintenance on it, and so I.

At some point there's going to be a vulnerability found in x and there's not going to be anybody left to fix it, and I don't know if we're going to know about it and it's just going to be out in the open or if people are going to keep it quiet. But we are. We are very rapidly coming to the point where Red Hat is not going to have any support for Xorg anymore, Like Like paid engineering support. It's just going to be off of their slate, and so that to me, is the biggest push away from Xorg towards Wayland. Is that just the clock is ticking.

18:48 - Rob Campbell (Co-host)
As we said last week, even Wayland even supports OpenBSD now. So I think my feedback, my comments, to go put on there when he asked for feedback, is just let it die. Yes.

19:04 - Jonathan Bennett (Host)
Oh, I mean. So there's still a few things that Wayland does not do well Like. That's true, it's fair. There were apparently quite a few people that, due to KDE 6 being so Wayland-centric and I think part of it also was because Fedora tried to go Wayland only with KDE people really started finally giving useful feedback about things that were broken. We talked about this last week.

It drives me crazy that nobody wants to use Wayland but nobody's willing to open bug reports about why. Well, finally, there's been some bug reports open why and we don't have it. We don't have show notes like directly addressing this. But KDE 6.1 is about to come out, 6.2 is coming, being worked on already, and one of the big things that they're doing in those two releases is looking at some of those pain points like niche use cases that do not work well with Wayland. One of them, for example, is really good color management. It's in there, but it's not great yet, and so that's something that's being worked with to be able to make like the the art and color grading workflow work inside of Wayland with KDE, and, and so I'm just I am, I am glad to see that people are finally like opening bugs and making specific complaints and specific requests about what needs to be fixed. Yeah, I will talk about fixes coming to Wayland a bit more when we talk about something in the kernel, but that'll be in a minute.

20:33 - Rob Campbell (Co-host)
So how long do you think it'll be before Chrome OS supports Wayland you?

20:39 - Jonathan Bennett (Host)
Chrome. How long do you think it'll be before Chrome OS supports Wayland? You um Chrome OS. I know you can run Chrome itself under Wayland. Isn't Chrome OS Wayland already? Actually, I don't know.

20:49 - David Ruggles (Co-host)
I think it might be, I don't know. It's Android now.

20:52 - Jonathan Bennett (Host)
Well, okay, rob, take it away, tell us about go ahead and finish, take both sides of that wonderful segue and tell us all about Chrome OS.

21:01 - Rob Campbell (Co-host)
So I, like many of you, have often struggled with calling Chrome OS a Linux desktop, or a distribution even. But over the past few years that is kind of truly what it's become, and I think I've even had stories on here about Chrome OS is just another distro. I don't remember the details, but I seem to remember talking about it. Well, you know, there's just been very little to distinguish it from another Linux desktop once you get down into the weeds of the system and it runs the Linux kernel and you know Linux is just a kernel, right? So it sounds like Chrome OS is going to get a little less Linux-y, and the reason is it's another topic that seems to get very heated in the Linux community and that is for the sake of AI. Chrome OS is going to get less Linux-y because it wants to do more artificial intelligence on Chrome OS. So, no, chrome OS isn't going to start taking screenshots of your desktop like some other operating systems out of Redmond plan to do, which actually recently they backed down of having that on by default. But anyway, yeah, since everyone else seems to be getting ahead of the original pioneer of AI, I mean Google. They were like up front with their all their AI stuff kind of years ago, you know. But now Apple's connect is planning to connect Siri to chat, gpt, microsoft's Copilot and video with their big tie-in to AI. Google is kind of getting left behind and somehow they seem to be blaming that on the upstream Linux kernel. Whatever so, to deliver new features, google has began integrating parts of the Android stack into Chrome OS, such as Android frameworks and, more notably, as already hinted by some people here the Android kernel.

And while the Android kernel is, it's still based on the Linux kernel. It's not based on the next kernel, it's it's. You know, it's not exactly linux, you know what. It has deviations in the code and it's kind of more like a fork, kind of not quite, but it's definitely for sure not fully upstream, you know, I thought they were. I thought the plan for android was to get it more and more upstream, and so I don't get the point of this. But in their announcement they said quote bringing the Android-based tech stack into Chrome OS will allow us to accelerate the pace of AI innovation at the core of Chrome OS, simplifying engineering efforts and help different devices like phones and accessories work better together with chrome chromebooks. So, if I understand this right, uh, chrome os is becoming android. Android is trying to make their their kernel more upstream, mainline linux and Fuchsia is replacing Android on devices. And never mind, I don't understand it at all. So there it is Chrome OS is going to be Android OS.

24:31 - David Ruggles (Co-host)
Well, it's really simple. Google's throwing spaghetti against the wall yet again and hoping at least one strand sticks, that's true. A couple of thoughts. First one is just kind of a joke. But well, android is Linux with Java on top.

24:54 - Jonathan Bennett (Host)
Linux is just a pearl.

24:56 - David Ruggles (Co-host)
I got Jonathan to roll his eyes, so my work here is done. But when they came out with the Chrome OS, I remember there was quite a bit of discussion on the different Android podcasts that I followed about why were they creating a whole other OS to begin with? Because, basically, if they just had better tablet and keyboard support and stuff for Android, it would make sense to have a single developer base. So it is kind of interesting from that perspective. I mean, this is many years ago now, but they're kind of going back to what many people thought they should have done in the first place.

25:33 - Rob Campbell (Co-host)
Well, it kind of never really was its own OS. Well, it kind of never really was its own OS. It really was just another Linux distribution with a new desktop environment, which I'm assuming. I don't think the Chrome OS desktop environment is based off of any others. Maybe it is. I have no idea on that, but it's not KDE or GNOME?

25:57 - Jonathan Bennett (Host)
I don't think. No, I knew once upon a time what it was based off of, but I don't at the moment. So the idea of the Android kernel and the Linux kernel combining, if I remember correctly, what happens is a new Android release comes out, you know Android 13, android 14, whatever, and there's a lot of patches in their kernel. And then, as that release gets older and older, more and more of those patches gets pushed into the upstream kernel and then a new release happens. And so, you know, there's always kind of this springing effect, where you know oscillating effect, where it gets closer it gets catches up and then it jumps ahead and it's it's kind of the cathedral bizarre thing going on right, like, and google is kind of working on android in the cathedral and the linux kernel is just the bizarre where everybody is out, uh, doing everything in the open. So it's, it's got a little bit of that going on which is interesting to see. Yeah, david, go ahead.

27:02 - David Ruggles (Co-host)
I was going to say I would assume that they may have to do that to some extent, because if they did the entire Android kernel development in the open, they would be exposing some of their new release ideas to competitors.

27:15 - Jonathan Bennett (Host)
Oh sure sure, yeah, I mean, you wouldn't want to see shiny thing in Android show up in iOS at the same time. There has to be something to make people want to buy Android Like.

27:29 - Rob Campbell (Co-host)
Aaron says don't worry, it's a Google product, which means it will be deprecated in a couple of years.

27:36 - Jonathan Bennett (Host)
Pretty much, yeah. I mean, Chrome OS has been around for a long time though it's. It's lasted longer than a lot of other google products have.

27:45 - Rob Campbell (Co-host)
That's because it was just a linux distro and they just had to put some frosting on top of linux. I mean, now they're gonna, you know, pull away and make more of their own thing.

27:54 - Jonathan Bennett (Host)
That that gets tougher for them, but it's their own thing that they're already working on Right. So, like fluoride, for example, that's not, that's not kernel, at least most of that's not the kernel, that's just the user space library to talk with Bluetooth. So they're going to move Chrome OS from blue. As to fluoride, well, that's fine. They already maintain the fluoride stack. Why not maintain the fluoride stack? Why not? Um, yeah, I, I don't. Personally, I don't see this is quite the big of deal that I think some people do but we'll see, I'm gonna tell.

28:25 - Rob Campbell (Co-host)
I mean, I don't know, I've always just wanted chrome os just to be a linux desktop and they're moving away from that a little bit. But I guess that's why the only chromebook I have, I ripped Chrome OS out and put Arch on it, by the way you can do that Funny story about Chromebooks before we get too far off.

28:48 - David Ruggles (Co-host)
I'll keep it short, but when Google came out with Chrome OS years and years ago, they sent out hardware to various um reviewers and stuff and I got one of those first, straight from google chromebooks. I turned it on, I used it for a week and then I took the machine apart to see it to figure out its internal. So I never actually used the thing I got one Interesting.

29:18 - Jonathan Bennett (Host)
So it looks like Aura. Maybe is the name of the desktop environment Chrome OS, aura. Just doing a little bit of Googling here because I don't remember, but that might be what they call it. I'm trying to figure out still if it's based on Wayland yet or not. Anyway, we have another story to get to. We're talking about Rust here for a second.

Rust has just recently gotten a safety-critical Rust consortium and that well, of course it's sort of the who's who of working on Rust. You've got the Rust Foundation themselves. Arm is in there. Let's see who else. Toyota is part of it, which that's. That's kind of the giveaway as to what this is about.

They are looking to put rust in vehicles. Of course. I mean it makes sense. You really really don't want your engine control module to crash every few seconds and have to reboot it, which apparently there's been some cars that have rolled out of the factory. That way my car has enough rust. Well, yeah, I suppose if you live in the north where it snows a lot, you don't want rust in your cars, but that's not a thing that we worry about down here.

So much, anyway, the rust programming language, and so the safety critical consortium has now been announced and started and I just think it's interesting because this is definitely a sign that there are people very interested in doing programming for cars in rust. There are people very interested in doing programming for cars in rust and without, without a official body saying that it's safe to do so, it's you can't do it. You've got to have somebody, somewhat official, to be able to put their stamp of approval on it to to be able to make something like this. Yeah, yeah. So the the the article here I'd like to it's got. It's got the questions in it like safety critical, rust is already safe. Which industries are considered safety critical? And it's all about the same thing. It's all about how do you make rust safe, how do you convince people that rust is safe to be able to build cars and such out of it. So I just thought it was interesting and figured we'd bring it up. So rust coming to a car near you right out of the factory.

31:39 - David Ruggles (Co-host)
Once they get it all properly safety certified, they'll put it in pacemakers.

31:45 - Jonathan Bennett (Host)
That's probably true. You know the craziest thing about that. You know the most common chip to put into pacemakers, risk 5. No, I do not. Mm-mm 6502. 6502. Do you know what? The 6502?

32:06 - Rob Campbell (Co-host)
is Mm-mm.

32:07 - Jonathan Bennett (Host)
That is the chip that was in the original Commodore 64. Oh yeah, crazy Old stuff, no, but seriously think about how long that has been around, and in those places that are actually safety critical they're going back to that sort of age of technology, and so it's kind of a big deal, especially when you start talking about things that get embedded in people.

32:36 - Rob Campbell (Co-host)
Old technology worked on the Voyager for years.

32:40 - David Ruggles (Co-host)
I had the same thought.

32:43 - Jonathan Bennett (Host)
Yeah, all right, let's move along then and talk about oh, david, tell us, tell us about the way to make bash programming easier. We were throwing this one around before the show a little bit, in fact. I've got it installed on the machine behind me already. I kind of like this, but, David, tell us about it.

32:58 - David Ruggles (Co-host)
All right. So I shall just directly read the title of this article. This new programming language makes Bash scripting easier for Gen Z, and if that's not slightly inflammatory, I'm offended. No, this'm offended, no, so interesting, there is a new programming language called Amber. That is, it's just an alpha release. So in fact there is a whole big warning about three paragraphs in that says this project is in the early stages of development, with only an alpha release at the moment. Experiment with it if you want, but don't use it in a production environment.

But what it is is. It is an attempt or I mean, I guess, more than an attempt, because it actually does function to use an ECMA script syntax to allow you to create bash scripts. For anybody that isn't aware, bash scripting is basically where you use the commands that you could type on a command line in the linux bash shell, stick them in a file and let it do it automatically for you. But bash scripting has a very weird and complicated syntax. So the idea behind amber is that if you're already familiar with another programming language, more modern programming language, it makes it easier to write something in that and then it either you can run it directly or you can actually compile down to bash and it will generate a bash script that you can run. It's an interesting project, which is why I mentioned it.

But my question and this is what we were kind of batting around just a little bit before the show is why would you need something like that? And we jokingly said that you know I was going to take the gray beard perspective of you know, bash is all you need, but that's actually not the reason I have the question. This is something you have to install, and I do quite a bit of Linux DevOps and basically I use bash for something quick and dirty. If it's going to be more complicated and I need to install something anyway, I'm going to install a better programming language like Python or something and write a utility in that to accomplish what I need. So this to me almost feels like possibly a problem in search of I mean, a solution in search of a problem, but I don't know. What do you guys think?

35:35 - Rob Campbell (Co-host)
Well, let me jump in before Jonathan goes. I'm going to share a little more of that back story. In that story David said, basically said what he said. Now he doesn't see the point. I said that's because you're not Gen Z. And then Jonathan came back and said well, I kind of like it. I said that's because you are Gen Z, I'm not Gen Z. Thank you very much. He's not Gen Z, he just looks like it.

36:03 - David Ruggles (Co-host)
It's the hair.

36:04 - Jonathan Bennett (Host)
I guess To Rob and David. Anybody that still has their hair must be Gen Z.

36:12 - Rob Campbell (Co-host)
You shouldn't have that much hair if you're anything past Gen Z. Even millennials don't have their hair anymore, so why don't you tell us why you like it though? Jonathan, that's all I had to say.

36:22 - Jonathan Bennett (Host)
Because bash scripting doesn't have enough curly brackets in it.

36:26 - David Ruggles (Co-host)

36:26 - Jonathan Bennett (Host)
That's why, Okay, no, no, I actually no. Honestly, for the longest time, I have found some decisions made in bash scripting to be odd and very different than what just sort of naturally comes out. I would, I would much rather have sort of a C ish or a, even Python, or you know, PHP style, Like so. So I, I would consider the, the PHP and C to be one family and the Python to be a different. But like either one of those would be fine, and Bash is like its own thing out there and it's not what I would.

Let me put it this way my pseudocode, like my internal pseudocode language, does not look very much like Bash scripting. It looks a lot more like C script and yeah. So this is closer to that and, and I could you know, I feel like I could get closer to just typing out an Amber shell as opposed to with bash shell. If I need to do any like conditionals, like test of a file exists, I don't remember how to do that. I've got to go Google that every time Like, how do you test of a file existence? It's like if space opens square bracket, dash E maybe, and then the file name and close square bracket. Like what in the world? What is this?

37:44 - David Ruggles (Co-host)
But there's a difference between two square brackets and just one.

37:46 - Jonathan Bennett (Host)
I know, okay, some it's, yeah. So I kind of like the idea of Amber. I will say it's got something missing that it desperately needs, and thankfully I have already opened the ticket and here it is, and the developer has already said yes, this is going to be easy and it's on their to-do list, and that is you can't run an Amber script with a shebang. Is you can't run an Amber script with a shebang because Amber does not use the hashtag, the hash, the number sign as a comment. It uses it as a preprocessor directive and so whenever you try to run it with a shebang, it says the first line contains an error. We can't do anything with this. It's like man, let's fix this. He goes oh yeah, we should do that.

So coming soon, probably the next release you will be able to actually just so for those that don't know, running with a shebang, that's the hash mark and then an exclamation mark. So hash, bang, shebang, and then the location of your interpreter. So that can be. You know, slash bin, slash, bash. For a bash shell you can use Python. You can put Python there and run Python script. You can do this with a whole bunch of different languages, and so the advantage is you just write your script as a regular text file, you make it executable and then you can just run it like an executable and it sees the shebang line and it uses the right interpreter automatically. So this will be nice to be able to do with Amber scripts. You can just have an Amber script and run it and it'll just do automatically do the right thing. It doesn't work yet.

39:26 - Rob Campbell (Co-host)
I think I think one thing I read about it is it does like do some testing and and tell you uh, help you with good errors, right?

39:37 - Jonathan Bennett (Host)
Or it will tell you your script is broken without actually running it.

39:39 - Rob Campbell (Co-host)
Yes, that's one of the other big advantages of Amber, and is that called an Amber Alert? Okay, that credit goes to Azure Flash in the Discord. I didn't come up with that myself.

39:55 - Jonathan Bennett (Host)
If it's not, they need to make it a thing, oh put it, put in a.

40:00 - Rob Campbell (Co-host)
Put in a an issue tracker for it amber alert wow, I had to share that one. I like that one, edger that.

40:12 - Jonathan Bennett (Host)
That was, that was. That was that odd combination of extremely clever and sort of painful at the same time. I don't know how to feel about that one.

40:22 - Rob Campbell (Co-host)
Yeah well, you know, when you're an old Gen Xer like us and not Zs, those kind of jokes are all funny.

40:35 - David Ruggles (Co-host)
Also one final thing before we leave Amber they mentioned at the bottom of the article, which is kind of poking fun at Gen Z. They mentioned that the installer, when you run it, it has emojis in the output and it indicates that Amber targets or is written by Gen Z Linux users. Typical sysadmin would have used echo commands with colored output and that made me chuckle because I actually routinely use emojis in my git commits.

41:07 - Jonathan Bennett (Host)
It's all Unicode, it works, why not? Yeah, exactly. All right, let's move on. Let's talk about NVIDIA. We don't have Jeff here today, the champion of NVIDIA, so I think Rob is going to sort of kind of try to take his place.

41:25 - Rob Campbell (Co-host)
I would have saved this for him. We'll see at the end of this if I am the champion that Jeff would have wanted me to be, but you know, so far today, as we know, NVIDIA is the company that open source enthusiasts kind of love to hate, you know, long known for essentially forcing Linux users to use their proprietary drivers for at least the best NVIDIA features. For the pragmatic that isn't concerned with open or closed source, they just want things to work, it doesn't seem like that big of a deal. At least in many situations it isn't. But you know, when working with things outside of the kernel, if you like to upgrade your kernel faster than NVIDIA likes to upgrade their driver, you can sometimes run into some compatibility issues, along with sometimes having to deal with the nasty DKMS torture.

Personally, I've dumped NVIDIA a few years ago and I just grew tired of it and everything and didn't see a reason to keep on fighting and stick with it. I know many distros work with it just fine, but some don't. But lately, even though there's a history of hate there from some of the hardcore Linux-y people that's me, I'm hardcore lately there seems to be a lot of news out of NVIDIA as they inch closer to being open source friendly. We get a story about this old code being open sourced or code for a certain series of GPUs being released, and it just seems like they keep inching a little further and further. Yet all these little stories never had me convinced that there's a big picture movement towards open source and, you know, I think whatever when those stories comes up.

Sometimes we said things like maybe some big companies demanded this and so they're just following the money and it's you know nothing to do with it. Um, you know, just figured. Ah, this is all no one's using. Let's just release the code anyway and put on a good show and make us look like the good guys for once.

Well, a couple of months ago we shared news that the Novus former lead DRM kernel driver maintainer, ben Skeggs, joined NVIDIA, and we pondered at that time what kind of effects could this mean for NVIDIA and open source? It seems like it could be a good thing, or it just means Novo lost a good developer, I don't know. In a recent announcement from Ben himself, he shares that nvidia is exploring ways to better support an upstream kernel driver. Some quotes from this announcement include nvidia has been exploring ways to better support the effort for an upstream kernel mode driver for gpus that are capable of running GSP RM firmware since the introduction to Nova. An upstream NVIDIA GPU driver should be able to support current and emerging customer use cases for vGPU hosts.

Nvidia's vGPU deployments today do not support compute or graphics within the hypervisor, within the hypervisor host they talk about. You know, the DRM driver should do all the standard things a DRM driver does. These features would be implemented using hardware resources allocated from a core driver, rather than the DRM driver being directly responsible for hardware programming. And as Novus KMD is already split, in the logical sense, along similar lines, we're using it here for the purposes of this RFC, to demonstrate the feasibility of such an architecture and open it up for discussion. So things continue to improve for NVIDIA and for the open source community, but personally I'm still not quite sold on it myself. Their kernel mode driver is moving to be more open source, but there's no indications yet that NVIDIA is planning to open up any other user space driver components around OpenGL, cl, vulcan or cuda, so at at this time I think I will still keep them on my companies.

46:07 - Jonathan Bennett (Host)
I love to hate list for now, so yeah, so they, they, they tell us right here what they're thinking. Right use cases have been identified for which separating the core g programming out of the full DRM driver stack is a strong requirement from our key customers. That's it. That's what's. That's what's going on. We do not want to run your entire closed source stack on our bare metal machines to be able to use your hardware on all of this other stuff, and it seems like a lot of this is actually virtualization based, and so the advantage with that is that the way to fix this is to put support in the mainline kernel, so that you don't have to run all of NVIDIA's other junk on your bare metal machine and in your kernel to be able to get to it. So I guess it's one of those situations where we win as a result, but this is why they're doing it. They have big customers that are saying we are tired of having to install your stinking video card drivers on our bare metal servers just to be able to run your hardware.

47:16 - Rob Campbell (Co-host)
That's what's going on yep, it's never a bond, just doing the right thing I mean one could make.

47:28 - Jonathan Bennett (Host)
One can make an argument that for nvidia, because of what they are, the right thing for them to do is to make money and, generally speaking, when they actually maximize that properly, they're doing the right thing for people. Um, now, that's a very pro-capitalist sort of argument, but it it works.

47:46 - Rob Campbell (Co-host)
many pro-capitalist arguments out there of open sourcing, it getting other people to basically do a lot of your work for free and I mean they're a hardware company.

48:05 - Jonathan Bennett (Host)
So I mean, hey, I am all for NVIDIA having support for upstream in the kernel mainline open source drivers.

48:10 - Rob Campbell (Co-host)
Unless there's some way something about their code that would give away the special sauce of their hardware, that would open it up to other people well.

48:21 - Jonathan Bennett (Host)
So that's why they can't just open source their existing closed source drivers. There are things in there covered by ndas. There are. There is secret sauce in there, like guaranteed. There's absolutely in there, and that's why nvidia, that's why amd couldn't amd did not open up their existing drivers. They rewrote it from scratch and they moved. Amd and NVIDIA are doing the same thing. They're moving all of that secret sauce either into the firmware or into the closed-source user land drivers, and I think what both of them are doing is basically moving it into the firmware and then they're making it essentially like a remote procedure call sort of driver where you don't do very much on the user land or the kernel side and the heavy lifting happens in the firmware and it's. It's an approach, it works, it's what they're doing and you know it makes things work for us. So don't complain too much.

49:17 - Rob Campbell (Co-host)
Yeah, put in the firmware and then anybody, any OS, any kind of system, can just work with that without knowing the real special sauce. Yep, exactly.

49:28 - Jonathan Bennett (Host)

All right, let's move on to some kernel news, and this one is interesting. I told you we would talk about Wayland again, and this is where it comes in. This is not directly Wayland, but this goes back to something we said, I think, last week about the BDFL and whether Wayland needs one. Well, it's an example of what happens because Linux has a BDFL. So this is the extensible scheduler shedge, underscore ext, and it is essentially a bit of technology that lets you run scheduling code from user space, like you have hooks in the kernel and then you have a schedule that runs in user space and it lets you change the way the scheduler works, which the scheduler is basically the bit of the kernel that decides, you know, when we jump from doing processing on one thread to processing on another thread and jump around. All the different cores are jumping around all the time. What do you jump to and how long do you stay there? It's essentially what the scheduler is, and there are various ways to set this up to. You know, either you want your machine to be extremely responsive or you want it to be able to chew through big tasks quickly. You know you can set it up to emphasize different goals, to achieve different goals as part of your scheduler, and so, for example, your scheduler running a web server is very, very different than what we want your scheduler to do, running a video game, just for instance. So we have this extensible scheduler and again, what it does is it makes it easier for kind of making a more flexible scheduler.

And it's been out of tree for a while, apparently a long time. It's already up to the version six patches, apparently last year. That patch set was the major discussion, the major private discussion at last year's Colonel Maintainer Summit. And they are about to have the next Colonel Maintainer Summit. And so here's the kicker Linus Torvalds added to the mailing list we're going to pull this for 6.11. That way we don't have to spend the entire next Colonel Maintainer Summit arguing about it and talking about it.

So he kind of cashed in his benevolent dictator card and said we're going to pull it, it's going to happen. And he says, yes, there may be some problems in it, but let's fix the problems in tree rather than out of tree. He says I've never been a huge believer in trying to make everybody happy with code that is out of tree. We're better off working together on it in tree, let's just get it done.

It's basically to put it a different way, he is, he's putting an end to the bike shedding on this particular bit of code and just pulling it in. And the reason I make this connection to Wayland is because something we see often with the various changes to Wayland Like, for example, one of the things in Wayland was applications setting their own icon and a way to do that sanely, and the pages and pages of argument over that was just, it was literally ad nauseum. And so we've made the comment and tip to Brody, we've made the comment that Waylon needs a BDFL to put an end to some of that stuff. Well, here's the example of Torvald's putting the end to bike shedding around this particular patch set and it's coming in 6.11.

53:02 - Rob Campbell (Co-host)
I like the idea of BDFLs. Yeah, yeah, I do too. As long as it's a good dictator, you get more done.

53:11 - Jonathan Bennett (Host)
Well, and so part of the magic of open source is, if your benevolent dictator for life suddenly becomes malevolent, benevolent dictator for life suddenly becomes malevolent, you just forge the project and everybody moves on and you leave your previously BDFL alone and sad. I guess. So the only in an open source project, the only real power that your BDFL has is that people are willing to follow, and without that no real dictatorship.

53:40 - Rob Campbell (Co-host)
so I was gonna say I don't like the for life part, but after thinking about it, like you said, you just fork it and if you weren't for life, then you're. You're basically campaigning for your next uh election and and then you run into dumb stuff again. I, I suppose potentially Yep, even though the risk of being forked and left alone is kind of like an election, but it's harder to do in a way. I don't know.

54:11 - Jonathan Bennett (Host)
It's like an anti-election somehow. All right, fun, fun. Let's talk about VLC, and I try to keep track of this sort of thing, and I haven't heard about this one yet. So, david, tell us about the bug, the vulnerability in VLC.

54:29 - David Ruggles (Co-host)
So I came across an article from Cybersecurity News that mentions two vulnerabilities in VLC to vulnerabilities in VLC. We talked about the release of the latest VLC last week. It was, and the issue has been patched in Well, one of the issues. So if you haven't updated and used VLC, you definitely should, and use VLC, you definitely should. So the first one is tracked as SB-VLC3031, and the article has a link to VideoLand's security tracker page. And then the second one is SBVLCiOS359, and, as you can tell from the name, it involves iOS. So I'm not really focused on that one. Apple can fend for themselves. No, I'm joking.

The desktop vulnerability is kind of interesting, though. They discovered that a maliciously crafted MMS stream leads to a heat-based overflow, and while the most likely output is simply a crash, you always run the risk of executing arbitrary code with the privilege of the target user. So obviously the correct response is to go ahead and make sure you're on the latest VLC, which is 3.0.21. If there's some reason that you can't yet, the main workaround is to avoid streaming or viewing an untrusted MMS stream in VLC VLC. As an additional precaution, it's recommended that you disable VLC browser plugins until you update it, so that way, a website can't trigger an untrusted MMS stream before you've updated.

So let's see. Specifically, it says although address space layout randomization, aslr and data execution prevention DEP help mitigate the risk of code execution, these protections can potentially be bypassed. They don't go into great detail about it. You can dig into that on the VideoLand site. On the VideoLand site Interestingly just briefly, since it's mentioned in the article the iOS issue is one where file sharing functionality has a potential path traversal vulnerability. It does not exit the app sandbox, so there's no real issue to the underlying iOS device. It's the only vulnerability that they're aware of is the denial of service or denial of functionality of the app itself on that side. So they're going to release and patch for that. But the interesting thing is, anytime you have buffer overflows, heap overflows, you don't know what code's going to actually get executed because it's going to jump somewhere in memory and run that and weird things happen.

57:47 - Jonathan Bennett (Host)

So the iOS thing, I think maybe it's a little bit bigger deal than you might think.

So, while this by itself is not going to escape the sandbox and it sounds like it does have the potential to get arbitrary code execution, well, what someone would do is they would train a bunch of vulnerabilities together, and so this would be the one to start with, and then there would be a second vulnerability in iOS and you know they're out there to then escape the sandbox.

And then there would be a third vulnerability to actually get to root, and you know a fourth vulnerability, maybe to go from roots to actually running in kernel space. Like that's kind of the basic steps that one of these will take. And you'll get you know one of these big companies that their thing is making officially sanctioned malware, let's say, not to name any names or get too specific, but there are some of these companies out there and so this is the sort of thing that they'll use. And the ones that are really bad is when you could send someone a text message and if they have VLC installed, vlc will automatically try to open the URL in the text message, and I don't think that is the case here, but like that is sort of the going nuclear level of vulnerability that occasionally does get found.

59:10 - Rob Campbell (Co-host)
I yeah, I don't. I don't picture iOS users being necessarily big VLC users, but there's, I mean there are a lot of iOS users. So I guess I wonder how that number really does compare to, say, linux. I mean, like Linux it's probably Well, it's definitely a high percentage of Linux users, whereas iOS it's a low percentage.

59:35 - Jonathan Bennett (Host)
So you got numbers on there. So they've got 3.5 000 ratings on the app store. It is number 35 in photo and video.

59:50 - David Ruggles (Co-host)
It's quite a few installs, yeah. The other thing that you may have is vlc does a lot of plug-in development stuff, so so you may find VLC code in other apps Sure, and maybe using it, and there may be another app that's using it, yeah.

01:00:05 - Jonathan Bennett (Host)
So I can see both of those being a big deal. All right, interesting, interesting stuff. I like it. Let's get into some command line tips and Rob Rob here. I think we've covered some of these before. Rob's got one that we've not talked about specifically.

01:00:24 - Rob Campbell (Co-host)
Yeah, I was surprised. I want to look through because I know we've mentioned it many times, because I believe you use it, the KDE version, and I've been using it ever since I ran Manjaro, for I don't know a couple months, and it's just default on there. That's when I first discovered it and I've been installing it ever since. And that is the Quake Terminal, and I'm not talking gaming here. Exactly, it's based off of the old Quake game where you have the drop down terminal, um, but in this case it is. It's a drop down for the, the linux terminal. So in my case I'm using gnome, so I'm using the quake terminal. Uh, extension, there are a couple in there, mine specifically, the quake terminal, and I thought in the past it was Guake with a G, but I couldn't find that. So apparently I'm using Quake Terminal instead of Quake Terminal. So anyway, like I said, I'm using the GNOME. But there's also another. There's a similar, same thing for KDE. Similar same thing for KDE. So, with the Quake Terminal, the default option, which is configurable, but for those watching, there's a toggle shortcut F12. And to install, you install like any GNOME extension on GNOME. I won't go through that. So, anyway, when I hit F12, that just brings down the terminal from the top. Hit F12 again, it goes away.

Now on GNOME, the configuration options for Quake Terminal is you can select your terminal application that you want to drop down. You can select the shortcut key F12's default drop down. You can select the shortcut key f12's default. You can have it set to auto hide uh when, when. Enable this. Uh hides the terminal window when it loses focus. That I think that was on by default. I decided to turn that off. Uh, you can have. Do you want to it to show on the current display, which, if you have that on pressing f12, will have it open in the display that you have focused. Or you can have it display on the primary display, which I like it on my primary on the right here, and so I have it. The display that's not the one I have selected.

01:03:02 - Jonathan Bennett (Host)
Anyway, that's weird.

01:03:06 - Rob Campbell (Co-host)
I have a Samsung and an Asus, I suppose. Maybe, if I have it on primary, it ignores this. Yeah, probably. Yeah, and you can have the animation time for how long it pops down for the vertical size, the horizontal size, a horizontal alignment. Do you want it always on top? Do you want somewhere else? Do you want to hide in certain modes? When enabled, the terminal window will not appear in in overview mode or when using alt tab. So I know the other versions, like the kda one. It doesn't necessarily have the same options, but this is what the uh gnome quake terminal extension has and I love it just to quickly bring up a terminal and and do whatever I want to do yes, I have.

01:03:55 - Jonathan Bennett (Host)
I have installed something similar to this on, I think, every machine that I spend much time working with. It's funny. I'll go over to my wife's machine and try to bring it up. She's like I don't have that installed. I'm like, oh fine, I'll open a terminal like a caveman right click on the desktop. It's terrible. The one for KDE that I use is Yakuake Y-A-K-E, K-U-A-K-E. There is Guake G-U-A-K-E. I'm not sure why there's multiple versions of it for GNOME, but there are multiple. Enough people like the terminal from Quake that there are multiple such projects that are out there.

01:04:33 - Rob Campbell (Co-host)
And for those who don't know Quake, it is a first-person shooter from 25 years ago. It was like the one who led the way for first-person multiplayer shooters, and it's a classic. Well, okay, you got Doom in there too, but that wasn't multiplayer, wasn't it? Yes, it was.

01:04:56 - Jonathan Bennett (Host)
Was it no, yes, yes, yes, it was. Was it no, yes, yes, yes, yes, it was. Now, wolfenstein 3D was really the one that led the way for first person shooting, but it was not multiplayer. And then Doom came out and did have multiplayer mode. I don't think so. We will check. We'll roll back the tape and check after the show, for right now we're doing command line tips. David is up next. He wants to talk more about.

01:05:21 - David Ruggles (Co-host)
Tmux, yes, tmux, the gift that keeps on giving. So I ran into an issue recently and it was with the term environment variable. So I have a line in the show notes I don't have any cool screens to show anything because it's actually pretty minor but it is a T-max command set, dash G, which makes it global, default dash terminal. And then you give it a string and in this case X term, dash two, five, six, color, but that kind of say you say, okay, why would I want to set that? So what that's setting is it's actually setting an environment variable. Term and term is the terminal. And the reason that that variable can be important is it is what tells command line programs what the capabilities of the terminal are.

There are a lot of different capabilities. Most of them date back to you know, very old systems, because this comes from Unix 70s and 80s and then into the 90s but more recently. The main difference is that if you don't have a properly set terminal, either it's not set at all or it's something that programs don't recognize you will not get full color support. It will default back to a monochrome or two-color mode. And I remoted into a machine from a TMUX session and ran a command, I was expecting color output and it didn't do it and in fact it threw an error saying unrecognizable term variable or term setting. And so I looked into it. I was like, oh, tmux defaults to setting the term to TMUX-256color, to tmux-256color, but it's actually an Xterm-compatible 256, and Xterm is kind of a standard, so that's what many programs look for and so that is how you can tell tmux to let everybody know it's Xterm-compatible instead of it being tmux-specific. And I added that and then I got the pretty colors I needed to see and I was happy for 30 seconds 30 seconds.

01:07:49 - Jonathan Bennett (Host)
Oh my, I'm not going to go there, I'm not going to touch that one, I'm going to move on. So I discovered, rediscovered, used and found in my history list a quickie mount-a. This is useful for when you have something like the no fail or underscore net dev set for your options in your FS tab and so you can boot your computer up. You have things in FS tab that don't get mounted for one reason or another, and you can just run a pseudo mount dash a and it will go in and automatically that's what the a stands for it will auto mount all of those things that are supposed to be mounted. So it's a. It's really useful for when you come up, like, if you have a laptop, you boot it off site and then you come and reconnect to your network and you want to get all of your, your, your shared folders to come back up. Mount dash A. It's the way to do it Quick but nice, exactly Fun. All right, it has been fun, it has been a great show.

We've covered a lot of news and some fun tips. I'm going to let each of the guys get in the last word if they want to. We're going to start with David, do you have anything you want to plug?

01:08:57 - David Ruggles (Co-host)
Nothing much. Floss Weekly over on Hackaday, which Jonathan also hosts, is always fun. My understanding is they may still be looking for guests, so shout out if you've got any connections and I've mentioned on previous shows, so if you need the details, you can go back and watch those previous ones. But I still have a customer that's looking for a hybrid remote Python program owner. So if you need a job and are somewhere near Wilmington, north Carolina, give me a shout. Yeah.

01:09:32 - Jonathan Bennett (Host)
Awesome, all right, and Rob, same for you. Any last words or anything to plug All right.

01:09:38 - Rob Campbell (Co-host)
So I have made some updates to my website this week and you can come connect to me. Robert P Campbellcom is the website to find me. I put a nice new background. I actually took that picture myself in Florida and, anyway, if you find my website, you can find links to my LinkedIn and I've added this back in. I've discovered that I am linked on some sites. I did not realize that the bird has returned. I did not put an X. I'm not putting an X, it's the bird. You can find me on Twitter again. I decided to come back, and there's also the Mastodon, which I still love. And then there's this place to donate coffees to me right here, and with that new X-Lite laptop coming out, I'm going to need a lot of coffees to afford that thing. So coffees, and if you can't afford it, just connect with me and say hi or something.

01:10:39 - Jonathan Bennett (Host)
Awesome, fun stuff. All right, I appreciate you guys being here and thank you to everyone in the audience that caught us live and those on the download. If you want to connect with me, you can, of course, find my work over at Hackaday. That's Curriculum Live on Friday morning and we've got Floss Weekly, as we already mentioned. You can find me over at the bird Twitter, the, the social network formerly known as Twitter. I'm JP underscore Bennett there. You can follow me on YouTube at JP Bennett, and if you want to throw some, throw some coffee in the tip jar. That's an odd turn of phrase, but I suppose if you're going to throw some coffee in the tip jar, I'm also JP Bennett over at buymeacoffeecom. I appreciate it. Thank you all for being here. We will see you next week on the untitled linux show.


All Transcripts posts