WEBVTT

00:00:11.384 --> 00:00:16.091
<v Chris>Hello, friends, and welcome back to your weekly Linux talk show. My name is Chris.

00:00:16.491 --> 00:00:17.251
<v Wes>My name is Wes.

00:00:17.251 --> 00:00:18.321
<v Brent>And my name is Brent.

00:00:19.064 --> 00:00:23.081
<v Chris>Well, hello, gentlemen. Coming up on the show today, your favorite free software

00:00:23.081 --> 00:00:25.350
<v Chris>projects, they're not taking the summer off.

00:00:25.629 --> 00:00:27.571
<v Chris>We're going to round up the releases that you need to know about,

00:00:27.571 --> 00:00:30.552
<v Chris>including some big changes coming to a kernel near you very soon.

00:00:30.987 --> 00:00:33.199
<v Chris>Then we'll round out the show with some great boos, some picks,

00:00:33.535 --> 00:00:37.111
<v Chris>and a lot more. So before we get there, let's say time-appropriate greetings

00:00:37.111 --> 00:00:40.261
<v Chris>to that virtual lug of ours. Hello, mumble room. Hello, hello. Hello.

00:00:40.931 --> 00:00:43.191
<v Mumble>Hey Chris, hey Wes, and hello Brent.

00:00:43.191 --> 00:00:43.851
<v Chris>Hi guys.

00:00:43.851 --> 00:00:44.629
<v Wes>Hello.

00:00:44.791 --> 00:00:47.861
<v Chris>Hello everybody up there in the quiet listening too. Nice to have you out there.

00:00:47.861 --> 00:00:50.498
<v Chris>Also happy Father's Day to all the dads out there listening.

00:00:51.601 --> 00:00:52.854
<v Chris>You know, happy Father's Day.

00:00:53.150 --> 00:00:55.792
<v Chris>Happy Father's Day to the dad dogs out there too, and the squirrel dads.

00:00:55.931 --> 00:00:58.741
<v Brent>Oh, thank you. Happy Father's Day to you as well.

00:00:58.741 --> 00:00:59.685
<v Chris>And the cat dads. And the cat dads.

00:01:01.090 --> 00:01:04.765
<v Chris>Cat dads, I think, would count, right? Of course. Dads will come in all shapes and sizes.

00:01:05.467 --> 00:01:08.588
<v Chris>Also, good morning to our friends over at Defined Networking.

00:01:08.588 --> 00:01:10.581
<v Chris>Go to defined.net slash unplug.

00:01:10.930 --> 00:01:14.428
<v Chris>Your network is the most important part of your stack. Let's be real about that.

00:01:14.428 --> 00:01:18.476
<v Chris>It's your core infrastructure. Performance and control really, really matter here.

00:01:19.149 --> 00:01:23.422
<v Chris>That's why we love Nebula. So you can get started with Managed Nebula from Defined Networking.

00:01:23.793 --> 00:01:28.403
<v Chris>You go to defined.net slash unplug, you get set up 100 hosts for free.

00:01:28.733 --> 00:01:29.842
<v Chris>No credit card required.

00:01:30.208 --> 00:01:34.198
<v Chris>It's built on the open-source Nebula platform, which was originally created

00:01:34.198 --> 00:01:38.039
<v Chris>to connect Slack's global infrastructure of Snacks.

00:01:38.778 --> 00:01:41.918
<v Chris>I mean, you can imagine how complex that was from the go. That was day one,

00:01:41.918 --> 00:01:43.583
<v Chris>and they've just built on that since.

00:01:44.250 --> 00:01:47.791
<v Chris>And unlike traditional VPNs, Nebula is totally decentralized.

00:01:48.227 --> 00:01:50.838
<v Chris>Your hosts connect directly to each other, and then you can set up your own

00:01:50.838 --> 00:01:54.589
<v Chris>lighthouses. You can use Manage Nebula to discover them. You control that aspect of it.

00:01:54.943 --> 00:01:57.687
<v Chris>No mysterious control plane between you and your nodes.

00:01:58.314 --> 00:02:02.198
<v Chris>So if it's your home lab or it's a global fleet, you get fast,

00:02:02.198 --> 00:02:06.778
<v Chris>secure networking without giving up ownership of the stack. And that's what I love about Nebula.

00:02:08.096 --> 00:02:12.798
<v Chris>Try it. 100 hosts for free. No credit card required. Go to define.net slash

00:02:12.798 --> 00:02:17.703
<v Chris>unplugged. Redefine your VPN experience. That is define.net slash unplugged.

00:02:25.562 --> 00:02:29.497
<v Chris>Let's do the news, boys, and let's start with one of the stories I am really

00:02:29.497 --> 00:02:32.757
<v Chris>genuinely excited about because a feature I have been waiting for for a very

00:02:32.757 --> 00:02:34.310
<v Chris>long time has landed in Plasma.

00:02:34.879 --> 00:02:41.747
<v Chris>Plasma 6.7 was released this last week, and they finally baked in per-screen virtual desktop.

00:02:42.727 --> 00:02:44.607
<v Brent>I think they did it just for you as well.

00:02:44.607 --> 00:02:46.917
<v Chris>No, that's not true at all, but I am very grateful.

00:02:46.917 --> 00:02:52.120
<v Wes>I think that took 21 years is what I saw. There was a bug open from 2005.

00:02:52.317 --> 00:02:55.727
<v Chris>And I think I've been complaining about that on there for about 21 years.

00:02:57.255 --> 00:02:58.487
<v Brent>So have you tried it?

00:03:00.233 --> 00:03:03.267
<v Chris>No, because the only machine I have right here in the studio only has one screen right now.

00:03:03.267 --> 00:03:03.847
<v Brent>That's true.

00:03:03.847 --> 00:03:07.707
<v Chris>I know, it's horrible. I will, though, because Aurora just updated so fast,

00:03:07.707 --> 00:03:13.597
<v Chris>so I got it right away. But immediately can notice, I hate to use this phrase, but it is snappier.

00:03:13.597 --> 00:03:14.817
<v Wes>It is. I'm running it as well.

00:03:14.817 --> 00:03:15.267
<v Chris>Oh, you are?

00:03:15.267 --> 00:03:15.517
<v Wes>Yeah.

00:03:15.517 --> 00:03:16.067
<v Chris>And you agree.

00:03:16.067 --> 00:03:19.436
<v Wes>Shout out to the next packages in K900 for the great work packaging stuff there.

00:03:19.987 --> 00:03:21.097
<v Wes>Oh, I noticed it immediately.

00:03:21.097 --> 00:03:22.117
<v Chris>Yeah. Me too.

00:03:22.117 --> 00:03:22.827
<v Wes>I didn't expect that.

00:03:23.187 --> 00:03:23.854
<v Chris>I didn't either.

00:03:24.150 --> 00:03:25.897
<v Wes>I mean, because it's not like Plasma's sluggish.

00:03:25.897 --> 00:03:31.257
<v Chris>No. I would not have categorized it as sluggish either. But so this release

00:03:31.257 --> 00:03:35.797
<v Chris>is the all Wayland, you know, release. And Nate Graham confirmed that 79% of

00:03:35.797 --> 00:03:37.807
<v Chris>Plasma 6 users were already on Wayland.

00:03:37.807 --> 00:03:40.077
<v Brent>Wow. That's a lot.

00:03:40.077 --> 00:03:42.677
<v Chris>A lot of Wayland improvements in here. A lot of Wayland improvements.

00:03:42.687 --> 00:03:45.007
<v Wes>So like X11's gone for good in 6.8?

00:03:45.007 --> 00:03:45.187
<v Chris>Yeah.

00:03:45.187 --> 00:03:46.477
<v Wes>Something like early 2027?

00:03:46.487 --> 00:03:51.247
<v Chris>Yeah, it's gone for good in 6.8. But look at this. Weyland only remains planned,

00:03:52.427 --> 00:03:54.886
<v Chris>almost 80% now are on Weyland. Look at that.

00:03:55.037 --> 00:03:55.977
<v Wes>That's pretty wild.

00:03:58.161 --> 00:04:01.487
<v Chris>I mean, it is really a smooth experience now. I mean, I think it is generally pretty good.

00:04:02.131 --> 00:04:06.837
<v Chris>They fixed a bug, too, that was impacting Aurora and Discover,

00:04:06.837 --> 00:04:10.113
<v Chris>which is nice to see. Just one of those little small things that they worked in here.

00:04:11.127 --> 00:04:13.837
<v Chris>The polish overall is something that people often talk about,

00:04:13.837 --> 00:04:18.345
<v Chris>but it does seem like every single release, we just keep seeing an iteration on Breeze.

00:04:18.838 --> 00:04:23.507
<v Chris>It's getting better and better. so what I did was once I had the default or once I had the install,

00:04:24.747 --> 00:04:28.547
<v Chris>I switched everything back to all the default so I could see the new styles

00:04:28.547 --> 00:04:33.757
<v Chris>and everything like that and I love it I love it very happy with this release

00:04:33.757 --> 00:04:37.844
<v Chris>just only been using it for like two days so far but those two days have been really good.

00:04:38.331 --> 00:04:42.247
<v Wes>There's some interesting things in place for like what they're calling the union

00:04:42.247 --> 00:04:45.907
<v Wes>engine they're working on underneath basically they're going to use CSS and

00:04:45.907 --> 00:04:50.417
<v Wes>then a Rust parser from Servo to like parse that and handle it.

00:04:50.754 --> 00:04:55.427
<v Wes>And then it's going to be basically like one style to rule them all eventually.

00:04:55.427 --> 00:04:59.337
<v Wes>It's disabled by default for now. It's a work in progress, but you can see they're

00:04:59.337 --> 00:05:00.528
<v Wes>doing a lot of work under the hood.

00:05:00.888 --> 00:05:03.447
<v Chris>A feature they've added that I think we'll find useful is you can now test your

00:05:03.447 --> 00:05:06.566
<v Chris>microphone volume right there in the little volume pop-up widget.

00:05:07.247 --> 00:05:08.547
<v Wes>Now that is slick.

00:05:09.067 --> 00:05:09.787
<v Chris>It's really nice.

00:05:09.787 --> 00:05:14.757
<v Brent>There's also a nice little touch here. It looks like the oxygen theme is returning

00:05:14.757 --> 00:05:17.727
<v Brent>for KD's 30th anniversary. Can you believe that?

00:05:17.727 --> 00:05:18.646
<v Chris>30

00:05:19.395 --> 00:05:24.407
<v Brent>And apparently it was quote really really in bad shape uh before the restoration

00:05:24.407 --> 00:05:29.037
<v Brent>which was led by philip phila so if you i don't know they were nostalgic for

00:05:29.037 --> 00:05:32.229
<v Brent>the oxygen theme uh well there's a modern version now.

00:05:32.996 --> 00:05:36.887
<v Chris>Yep improvements to the clipboard manager color lots of performance improvements

00:05:36.887 --> 00:05:42.295
<v Chris>um gpu rendering optimizations too so you don't have to have a big old gpu to do all this stuff,

00:05:42.922 --> 00:05:46.847
<v Chris>here's a couple of other just uh quick hits you can now sync your mouse and

00:05:46.847 --> 00:05:49.877
<v Chris>stylus pointers, an option to set and change preferred to the calendar app,

00:05:49.877 --> 00:05:53.077
<v Chris>an option to assign keyboard shortcuts to toggling the global push to talk microphone

00:05:53.077 --> 00:05:54.595
<v Chris>mute throughout the plasma applications.

00:05:55.030 --> 00:05:57.207
<v Chris>There's now an easy way of selecting mixed skin tones and emojis.

00:05:57.207 --> 00:05:59.507
<v Chris>So you can just have, oh, there's the new emoji thing, the system monitor app

00:05:59.507 --> 00:06:02.339
<v Chris>that respects your preferences regarding storage units for gigabytes versus,

00:06:03.935 --> 00:06:08.678
<v Chris>Another gigabyte display. I mean, it's like a long list of things to go through here.

00:06:09.483 --> 00:06:13.313
<v Chris>And, like, a lot of times we joke that nothing really comes out in the summer.

00:06:13.313 --> 00:06:17.107
<v Chris>But, man, this is one of the major, major releases for Plasma in general.

00:06:18.279 --> 00:06:23.852
<v Chris>And here we are in the summer. It's really great. And it's impressive how fast we're getting it.

00:06:24.096 --> 00:06:26.423
<v Chris>You've gotten it already. I mean, thanks to the maintainers.

00:06:26.723 --> 00:06:28.624
<v Chris>But I'm running it already.

00:06:29.088 --> 00:06:31.583
<v Chris>I just seem to recall it used to be months before I get my hands on it.

00:06:31.583 --> 00:06:34.823
<v Wes>Absolutely. We live in a different world now. At least it depends on your distro.

00:06:34.823 --> 00:06:38.063
<v Wes>But you have the options now if you want something that lets you get it real fast.

00:06:38.916 --> 00:06:43.873
<v Wes>And, I mean, I think it's just also, you know, the project ships quite regular

00:06:43.873 --> 00:06:48.910
<v Wes>releases now. It seems like that cadence is very well polished. So it works well.

00:06:49.612 --> 00:06:52.483
<v Chris>Yeah, shout out to them, too, for that microphone volume test.

00:06:52.483 --> 00:06:54.262
<v Chris>I think that's going to be really useful for our guests.

00:06:55.034 --> 00:06:58.763
<v Chris>Brentley, you tagged a story that Firefox shared with us. I guess they're kind

00:06:58.763 --> 00:07:02.933
<v Chris>of putting out there essentially what is a roadmap for the future features that

00:07:02.933 --> 00:07:04.752
<v Chris>they plan to add to Firefox in the near term.

00:07:05.315 --> 00:07:09.133
<v Brent>Yeah, I thought this was interesting because it's been a while since I've dove

00:07:09.133 --> 00:07:11.503
<v Brent>into what they're trying to do over there.

00:07:11.979 --> 00:07:15.043
<v Brent>And there's been a little bit of controversy recently with some of their AI

00:07:15.043 --> 00:07:19.235
<v Brent>features, you know, and they added an on and off button because of all of the pushback.

00:07:19.659 --> 00:07:24.489
<v Brent>So I was just curious about like, well, what are they thinking the future of Firefox will be?

00:07:25.655 --> 00:07:30.453
<v Brent>And it's kind of interesting. Like there's a lot that they're working on in

00:07:30.453 --> 00:07:36.573
<v Brent>PDFs. So right in the browser, you will be able to split, merge,

00:07:36.573 --> 00:07:40.406
<v Brent>and reorder PDFs, which is an interesting thing.

00:07:42.363 --> 00:07:47.963
<v Brent>It makes me believe more that the browser is actually an OS on top of our OS.

00:07:47.963 --> 00:07:52.166
<v Brent>But for most regular users, I imagine that's really interesting.

00:07:52.549 --> 00:07:58.075
<v Brent>Also, this feature has been asked for for basically ever, customizable built-in hotkeys.

00:07:58.656 --> 00:08:03.543
<v Chris>Yeah. I will note, too, what they've done is this website that you shared with

00:08:03.543 --> 00:08:05.877
<v Chris>us, which we'll have a link in the show notes.

00:08:06.527 --> 00:08:09.503
<v Chris>For the features that you can try now, they just have a button here.

00:08:09.503 --> 00:08:11.163
<v Chris>So they have like this roadmap of features.

00:08:11.783 --> 00:08:16.823
<v Chris>And if that feature is available for testing, they have a try now button. That's a neat approach.

00:08:16.823 --> 00:08:21.003
<v Brent>And they have them by category as well, like productivity. There's privacy controls

00:08:21.003 --> 00:08:24.772
<v Brent>that they're working on. AI done differently, they call it. That's the category name.

00:08:25.684 --> 00:08:29.203
<v Brent>Speed and performance, of course, built-in protection, better web stuff,

00:08:29.543 --> 00:08:32.453
<v Brent>which is an interesting category. So if you're interested in where the browser

00:08:32.453 --> 00:08:34.118
<v Brent>is going, it's worth looking at.

00:08:34.350 --> 00:08:40.683
<v Brent>And I just felt good about this. I think having a map like this feels productive.

00:08:40.683 --> 00:08:44.673
<v Brent>I had totally lost sight of what Firefox was even trying to do.

00:08:44.673 --> 00:08:48.235
<v Brent>And some of this makes me feel a little better about the future of Firefox.

00:08:48.687 --> 00:08:51.713
<v Chris>I guess it answers that question. It's like, what is Mozilla even doing for Firefox?

00:08:51.713 --> 00:08:52.745
<v Brent>Exactly.

00:08:53.122 --> 00:08:55.874
<v Chris>Here you go. This is what they're doing. They made a what's next page.

00:08:56.652 --> 00:08:59.566
<v Chris>The thing that grabbed my attention was new web APIs.

00:09:00.849 --> 00:09:06.316
<v Chris>Wasm.js promise integration, deferred module evaluation, web transport, and more.

00:09:06.876 --> 00:09:10.796
<v Wes>Also some CSS improvements to support more stuff there. So all stuff making

00:09:10.796 --> 00:09:13.876
<v Wes>Firefox better at handling whatever random web page you get.

00:09:14.276 --> 00:09:18.038
<v Chris>HDR video on Linux was listed there.

00:09:18.252 --> 00:09:22.147
<v Brent>This one stood out to me as well. Pasci support for Firefox Sync.

00:09:22.618 --> 00:09:25.555
<v Brent>I don't think you would boiler Sync users, but that's interesting.

00:09:25.839 --> 00:09:27.696
<v Wes>If you are, you probably want Pasci support on this one.

00:09:27.696 --> 00:09:31.366
<v Chris>I'm not using Firefox to manage my passwords, but I do use it to sync everything

00:09:31.366 --> 00:09:35.636
<v Chris>else. Huh. Huh. Okay. Yeah. Good find, Brent. Thank you.

00:09:35.656 --> 00:09:38.716
<v Brent>There's some stuff in there. There's something, you know, it's still doing stuff,

00:09:38.716 --> 00:09:40.131
<v Brent>which makes me feel a little better.

00:09:41.112 --> 00:09:46.216
<v Chris>Wes, you were excited about the SystemD 261 release, and I was looking through

00:09:46.216 --> 00:09:47.891
<v Chris>it. There are a couple of interesting goodies in here.

00:09:48.025 --> 00:09:52.926
<v Wes>Yes, indeed. One you'll notice is the new Instance Metadata Service,

00:09:52.926 --> 00:09:57.956
<v Wes>or IMDS. Of course, you get systemd-imdsd as part of that.

00:09:57.956 --> 00:09:58.536
<v Chris>Gotta have that.

00:09:58.896 --> 00:10:02.206
<v Wes>It's a unified way to access virtual machine metadata.

00:10:02.334 --> 00:10:06.386
<v Wes>In particular, you're going to see this a lot because it interworks with major

00:10:06.386 --> 00:10:08.966
<v Wes>cloud platform and their metadata services, right?

00:10:08.966 --> 00:10:15.006
<v Wes>So if you boot up an AWS EC2 instance, then there's an IP you can query and

00:10:15.006 --> 00:10:19.856
<v Wes>get info about all the stuff, plus all the stuff that's exposed by the virtual

00:10:19.856 --> 00:10:23.470
<v Wes>BIOS and whatever is programmed in at the virtual machine layer.

00:10:23.958 --> 00:10:28.746
<v Wes>And so now all of that kind of stuff, sort of classifying what are you about,

00:10:28.746 --> 00:10:32.536
<v Wes>like where you are, the VM environment, what it knows about the VM is exposed

00:10:32.536 --> 00:10:33.960
<v Wes>in this metadata service.

00:10:34.772 --> 00:10:37.994
<v Wes>And you have one spot to look if you hook it up with the systemd way.

00:10:38.273 --> 00:10:42.216
<v Chris>I suppose, you know, in my current mindset, where that seems useful would be

00:10:42.216 --> 00:10:45.986
<v Chris>being able to query it at like a scale and then build an inventory and things

00:10:45.986 --> 00:10:49.156
<v Chris>like that, right? It sort of almost becomes like an API of information about your system.

00:10:49.456 --> 00:10:52.986
<v Wes>And you maybe don't have to do the handling of what's the difference between

00:10:52.986 --> 00:10:59.477
<v Wes>how Amazon does it or Azure does it or Oracle Cloud does it or Hetzner's in here too or even Volter.

00:11:00.516 --> 00:11:02.441
<v Chris>Okay, that's not what I thought you were going to start with.

00:11:04.661 --> 00:11:06.691
<v Wes>Oh, you, okay, okay, well, it's finally happening.

00:11:06.691 --> 00:11:07.361
<v Chris>Yeah, here we go.

00:11:07.381 --> 00:11:08.281
<v Wes>It's finally happening.

00:11:08.281 --> 00:11:09.151
<v Chris>Ladies and gentlemen.

00:11:09.151 --> 00:11:14.971
<v Wes>Yes, okay, another notable update here is live update orchestrator and kernel

00:11:14.971 --> 00:11:17.271
<v Wes>handover support in System D.

00:11:17.321 --> 00:11:19.101
<v Chris>I thought that's what you'd start with.

00:11:20.001 --> 00:11:22.151
<v Wes>And this has been building, there's been, like, other parts of this.

00:11:22.151 --> 00:11:25.531
<v Wes>This, in particular, includes support for user units and stuff.

00:11:25.531 --> 00:11:28.775
<v Wes>But the idea is, so there's KExec, right?

00:11:29.048 --> 00:11:33.361
<v Wes>Who wants to reboot? it's so slow let's just jump immediately to a new kernel

00:11:33.361 --> 00:11:34.781
<v Wes>without rebooting the system I'm sorry KExec.

00:11:34.781 --> 00:11:35.422
<v Chris>Is too slow?

00:11:35.718 --> 00:11:39.561
<v Wes>No no KExec's great I'm just trying to say like if you haven't heard about KExec

00:11:39.561 --> 00:11:42.191
<v Wes>for a while that's what it does okay yeah right instead of doing a whole reboot.

00:11:42.191 --> 00:11:43.001
<v Chris>You do a live swap.

00:11:43.001 --> 00:11:46.501
<v Wes>Yeah you just load you like load the new kernel into memory and you jump into it.

00:11:46.821 --> 00:11:50.041
<v Chris>So you're really avoiding the whole post process and like you know the bootloader.

00:11:50.461 --> 00:11:50.663
<v Wes>Mhm,

00:11:51.278 --> 00:11:55.935
<v Wes>But what's getting really tricky here is the idea, because you're not blanking

00:11:55.935 --> 00:12:00.005
<v Wes>RAM, right? You're not cycling through things. You can hold stuff in memory, in theory.

00:12:00.405 --> 00:12:03.415
<v Wes>Like, we don't now. When you reboot the kernel, it's as if you rebooted.

00:12:03.415 --> 00:12:04.385
<v Wes>You get a whole fresh thing.

00:12:04.385 --> 00:12:05.235
<v Chris>Right. We'd played with, like,

00:12:05.235 --> 00:12:08.655
<v Chris>persistent RAM disks. We'd tried to kind of solve this with a hacky way.

00:12:08.655 --> 00:12:11.955
<v Wes>Yes, right. You can, like, tell the kernel to mark memory as sort of,

00:12:11.955 --> 00:12:14.205
<v Wes>like, don't touch this. It's supposed to be a fake, sort of,

00:12:14.525 --> 00:12:15.931
<v Wes>as if you had a persistent RAM.

00:12:16.233 --> 00:12:20.775
<v Wes>But at a more fine-grained level, what we now have with the live update orchestration

00:12:20.775 --> 00:12:25.795
<v Wes>and the kernel handover stuff is the idea of you can basically declare memfds,

00:12:25.795 --> 00:12:29.535
<v Wes>which are like memory file descriptors, which is basically just claiming a chunk of memory, right?

00:12:29.535 --> 00:12:31.773
<v Wes>But it's interfaced as a file descriptor.

00:12:32.441 --> 00:12:37.105
<v Wes>And so if an application gets one of those and then serializes whatever state

00:12:37.105 --> 00:12:39.295
<v Wes>it wants, right? So whatever stuff is happening for the application,

00:12:39.365 --> 00:12:41.147
<v Wes>it's running all of its runtime state.

00:12:41.339 --> 00:12:46.115
<v Wes>If it dumps that in this memfd or a few or whatever, it can pass that off to

00:12:46.115 --> 00:12:51.364
<v Wes>systemd and systemd will use the kernel's new orchestration and update features

00:12:51.706 --> 00:12:53.445
<v Wes>to save that across a case.

00:12:53.445 --> 00:12:54.325
<v Chris>Like a handoff thing.

00:12:54.325 --> 00:12:57.140
<v Wes>It's a state handoff so it stores it in memory and then it tells the kernel

00:12:57.372 --> 00:13:01.505
<v Wes>hey when we reboot you need to read like keep the that these bits of memory

00:13:01.505 --> 00:13:03.565
<v Wes>untouched and then reclaim them and restore them,

00:13:04.045 --> 00:13:09.835
<v Wes>and then systemd picks up after that and then as systemd goes it does the same

00:13:10.143 --> 00:13:13.916
<v Wes>and then it's able to hand the memfds back to the service when it boots,

00:13:14.549 --> 00:13:18.926
<v Wes>and then the service is able to if it has support for this load that back in,

00:13:19.448 --> 00:13:21.895
<v Wes>and then just restore itself and it would be like you didn't reboot at all.

00:13:21.895 --> 00:13:24.425
<v Brent>That is so sexy that is neat.

00:13:24.785 --> 00:13:27.365
<v Wes>Now it's not doesn't support everything like you can't preserve like a network

00:13:27.365 --> 00:13:30.375
<v Wes>socket or stuff like that okay but there's a bunch of other caveats so network.

00:13:30.375 --> 00:13:31.415
<v Chris>Traffic would get dropped.

00:13:31.415 --> 00:13:37.295
<v Wes>Yeah for a bit but but the primitives that this is could enable is pretty exciting yeah everything.

00:13:37.295 --> 00:13:40.665
<v Chris>From like emergency infrastructure scaling oh man there's so many things you

00:13:40.665 --> 00:13:42.928
<v Chris>could do that live swapping to a new system.

00:13:44.026 --> 00:13:48.643
<v Chris>And continuing your work? Ho, ho, ho! Okay, do we want to talk at all about

00:13:48.643 --> 00:13:53.685
<v Chris>StorageCTL, a tool that sounds really cool, provides a command line interface

00:13:54.068 --> 00:13:56.268
<v Chris>for, I would imagine, storage resources.

00:13:56.657 --> 00:14:00.753
<v Chris>And this is sort of the SystemD mantra, right, of unifying a bunch of things under a common control?

00:14:00.753 --> 00:14:04.283
<v Wes>Yeah, there's more and more capability built into SystemD to talk about what

00:14:04.283 --> 00:14:07.073
<v Wes>storage is on the machine, expose it to you, have APIs around it,

00:14:07.073 --> 00:14:09.306
<v Wes>and I think, like, format and work with the disk.

00:14:09.666 --> 00:14:14.583
<v Wes>Because it kind of comes also with SystemD sysinstall, which is a simple,

00:14:14.583 --> 00:14:17.173
<v Wes>modern, text-based operating system installer.

00:14:17.173 --> 00:14:18.723
<v Chris>Oh my god, are you serious?

00:14:18.723 --> 00:14:22.263
<v Wes>Yep, it builds on Systemd's existing partitioning, credential management,

00:14:22.263 --> 00:14:23.906
<v Wes>and system management features.

00:14:24.208 --> 00:14:27.807
<v Wes>It can copy an OS from temporary boot media like a USB drive.

00:14:28.312 --> 00:14:32.893
<v Wes>So now Systemd is able to sort of go from, you know, nothing is on your system

00:14:32.893 --> 00:14:36.463
<v Wes>to it's formatted and partitioned things and also installed.

00:14:36.463 --> 00:14:41.070
<v Chris>Again, clearly useful in cloud deployments. Clearly useful in cloud deployments.

00:14:41.830 --> 00:14:45.563
<v Chris>i have to wonder though if you wanted to roll your own distro say like a hypervibe

00:14:45.563 --> 00:14:50.693
<v Chris>kind of thing could you could you use something like this um.

00:14:50.693 --> 00:14:54.103
<v Wes>Yeah i mean more and more there's just systemd primitives you can build on instead

00:14:54.103 --> 00:14:55.228
<v Wes>of having to roll it yourself.

00:14:55.339 --> 00:14:58.572
<v Chris>Wow so systemd sys install,

00:14:59.646 --> 00:15:02.891
<v Chris>A modern text-based operating system installer. I kind of want to play with that.

00:15:02.891 --> 00:15:04.111
<v Wes>Yeah, me too. I think we should.

00:15:04.111 --> 00:15:07.221
<v Chris>So you have to have systemd 261. I mean, this is a big release.

00:15:07.221 --> 00:15:12.649
<v Wes>There's a lot in here. There's also some hardening stuff. Something called restrict file system access.

00:15:13.125 --> 00:15:17.951
<v Wes>It uses a BPF program to restrict execution to binaries stored on signed and

00:15:17.951 --> 00:15:21.111
<v Wes>verified DM Verity protected file systems.

00:15:21.411 --> 00:15:25.211
<v Wes>so if you really want to be super strict that like only the binaries I've explicitly

00:15:25.211 --> 00:15:30.267
<v Wes>signed and told can run on this system another way to make that happen in a secure way with systemd.

00:15:30.650 --> 00:15:34.281
<v Chris>So maybe a way for a really lean system or a container that doesn't need the

00:15:34.281 --> 00:15:39.711
<v Chris>overhead of sc linux or app armor but to still have like just only essentially an allow list.

00:15:41.242 --> 00:15:45.191
<v Wes>And you've seen this right like a lot of the we've seen things like the boot

00:15:45.191 --> 00:15:51.171
<v Wes>c systems more and more are you trying to use systems that do have signed file

00:15:51.171 --> 00:15:53.131
<v Wes>systems do use DM Verity under the hood.

00:15:53.131 --> 00:15:56.370
<v Wes>So you could combine that with some of those technologies and have a very secure

00:15:56.684 --> 00:16:02.105
<v Wes>sort of setup that has fast delivery but can play nicely in a modern enterprise.

00:16:04.451 --> 00:16:07.742
<v Chris>Very impressive. And I suppose also noteworthy boys, right?

00:16:07.992 --> 00:16:12.351
<v Chris>Because we now know that Lenart Pottering, you know, original creator SystemD,

00:16:12.822 --> 00:16:16.717
<v Chris>he was working at Microsoft for a bit. He left in January of this year.

00:16:17.431 --> 00:16:20.591
<v Chris>And he co-founded a Linux security startup and this is the first major system

00:16:20.591 --> 00:16:23.386
<v Chris>D release since he's made that transition and,

00:16:25.000 --> 00:16:27.960
<v Chris>Do you think you see a reflection in some of these releases?

00:16:27.960 --> 00:16:30.305
<v Wes>I mean, I think there might be a bit of a theme.

00:16:30.479 --> 00:16:35.660
<v Chris>Yeah. Yeah. I mean, a pretty solid release for cloud deployments that are just

00:16:35.660 --> 00:16:38.200
<v Chris>trying to spin up Linux systems as secure and fast as possible.

00:16:38.200 --> 00:16:40.710
<v Chris>But I still think there's a lot of primitives that people that are building

00:16:40.710 --> 00:16:42.472
<v Chris>distributions out there could use as well.

00:16:43.870 --> 00:16:47.030
<v Chris>It's always interesting, too, how they have thought of a new thing to take over

00:16:47.030 --> 00:16:52.195
<v Chris>that I have never even considered. I didn't think about building a Linux installer into SystemD.

00:16:52.840 --> 00:16:57.050
<v Chris>It's inspired. I wonder if they, I wonder if the chat GPT come up with that

00:16:57.050 --> 00:16:59.660
<v Chris>idea, like, Hey, chat GPT, I want some new features. And that's like,

00:16:59.660 --> 00:17:00.950
<v Chris>chat GPT is like, this is a great idea.

00:17:01.630 --> 00:17:05.270
<v Chris>We should build a Samba server in too. But you let me know if they ever build a Samba server in.

00:17:05.590 --> 00:17:06.790
<v Wes>I will, I will keep an eye out.

00:17:07.370 --> 00:17:11.520
<v Brent>That gets me thinking about some of the criticisms people have with system D

00:17:11.520 --> 00:17:14.770
<v Brent>is like it just does too much and it's too complex, etc.

00:17:15.290 --> 00:17:19.680
<v Brent>Do you think this is just heading more and more down that path?

00:17:19.680 --> 00:17:23.792
<v Brent>Because it seems soon we're almost going to have just system D be the OS.

00:17:25.115 --> 00:17:26.654
<v Chris>What do you think? What do you think there, Wes?

00:17:29.230 --> 00:17:34.240
<v Wes>Um well it kind of depends on how well you think it uh does these things and how much it's,

00:17:35.406 --> 00:17:40.310
<v Wes>open protocol something you could have other things implement and play with

00:17:40.630 --> 00:17:45.330
<v Wes>um there's a lot of varlink push in this release for instance so whatever you

00:17:45.330 --> 00:17:47.138
<v Wes>think of varlink might play into that,

00:17:47.730 --> 00:17:51.430
<v Wes>you know like is it a kernel feature that systemd is just using that other systems

00:17:51.430 --> 00:17:53.286
<v Wes>could take advantage of or plug into?

00:17:54.203 --> 00:17:55.538
<v Wes>Those would be the questions I'd ask.

00:17:56.252 --> 00:17:59.770
<v Chris>Yeah, I think the other question is if you were to build an operating system

00:17:59.770 --> 00:18:01.250
<v Chris>today, would it have this feature?

00:18:02.667 --> 00:18:04.292
<v Brent>Hmm. Hmm. That's a good way to look at it.

00:18:05.656 --> 00:18:11.212
<v Chris>And if you were, I think, honestly, a lot of these features come because these,

00:18:11.978 --> 00:18:15.652
<v Chris>are getting deployed in these massive cloud infrastructures and the cloud providers

00:18:16.041 --> 00:18:18.852
<v Chris>at talks and through emails and through private connections.

00:18:18.852 --> 00:18:21.892
<v Chris>They just complain about the things that take a long time to do and spin up.

00:18:21.892 --> 00:18:28.792
<v Chris>Like, my mind was blown when we went to Anisha's talk from Anthropic about spending

00:18:28.792 --> 00:18:33.582
<v Chris>up 40,000 containers at once and how, you know, something that takes 35 milliseconds

00:18:33.582 --> 00:18:34.502
<v Chris>ends up adding up big time.

00:18:34.522 --> 00:18:37.162
<v Chris>Like, just these crazy optimizations that they have to do.

00:18:37.642 --> 00:18:41.472
<v Wes>There's also just, you could phrase it, like, how much, oh, there was one thing

00:18:41.472 --> 00:18:43.805
<v Wes>I should mention, too, let's say.

00:18:44.090 --> 00:18:46.292
<v Wes>To speak to that, there's something called condition fraction.

00:18:46.292 --> 00:18:46.792
<v Chris>Oh.

00:18:46.792 --> 00:18:50.353
<v Wes>Which lets you do canary deployments at the service manager level.

00:18:50.632 --> 00:18:53.782
<v Wes>you can roll out to a percentage of machines by hashing machine id.

00:18:54.582 --> 00:18:58.842
<v Chris>Oh this is great for your remember remember forever ago you're asking how to

00:18:58.842 --> 00:19:03.132
<v Chris>do staged rollouts brent at uh your brother's store there you go wow.

00:19:03.132 --> 00:19:03.442
<v Wes>All right.

00:19:03.442 --> 00:19:04.053
<v Chris>Solved it for you.

00:19:04.187 --> 00:19:06.985
<v Wes>But the other thing do you remember the whole xz uh vulnerability.

00:19:07.112 --> 00:19:08.592
<v Chris>Nope forgotten all yeah never.

00:19:08.592 --> 00:19:13.722
<v Wes>Heard right yeah so so that involved instead of having something like plugged

00:19:13.722 --> 00:19:17.102
<v Wes>into the elf metadata saying like oh system d needs uh,

00:19:17.945 --> 00:19:24.665
<v Wes>xz it was done as a DL open which is like a dynamic way to open a shared library right and,

00:19:25.252 --> 00:19:30.262
<v Wes>as a somewhat indirect result of that system D wanted to have a system to be

00:19:30.262 --> 00:19:33.882
<v Wes>able to expose that as metadata so like as part of the build process it would

00:19:33.882 --> 00:19:36.171
<v Wes>tell you in the metadata and it's a way you could read,

00:19:36.641 --> 00:19:40.472
<v Wes>like what do I do dynamically what shared libraries do I depend on with DL open

00:19:40.472 --> 00:19:45.462
<v Wes>that you can't see from the regular elf metadata and that is now shipping as well well,

00:19:46.748 --> 00:19:49.322
<v Wes>So it's a nice little bow on sort of responding to that,

00:19:50.695 --> 00:19:52.651
<v Wes>terrible little supply chain scare.

00:19:52.872 --> 00:19:58.302
<v Chris>Well, we have been waiting to see what the first quote unquote AI features are

00:19:58.302 --> 00:19:59.606
<v Chris>that come to the Ubuntu desktop.

00:20:00.576 --> 00:20:03.920
<v Chris>And we recently got word that it's not going to be quite what you expect.

00:20:03.920 --> 00:20:07.147
<v Chris>It's going to be more of an accessibility thing, and it's going to be text-to-speech.

00:20:07.705 --> 00:20:12.099
<v Chris>And this week, we have a much clearer picture of that. They've launched a new project.

00:20:12.645 --> 00:20:16.435
<v Chris>They say the project will be desktop-focused, local speech-to-text dictation,

00:20:17.045 --> 00:20:19.878
<v Chris>with the first target release being Ubuntu 26.10.

00:20:20.429 --> 00:20:23.428
<v Chris>The initial interface is intentionally simple.

00:20:23.922 --> 00:20:28.010
<v Chris>You press a keyboard shortcut, you speak, and then the text gets inserted into

00:20:28.010 --> 00:20:32.072
<v Chris>the currently focused application with visual feedback while dictation is active.

00:20:32.583 --> 00:20:35.357
<v Chris>The first implementation targets the Ubuntu desktop on Wayland,

00:20:35.729 --> 00:20:37.796
<v Chris>with GNOME as the primary validated environment.

00:20:38.231 --> 00:20:41.420
<v Chris>Voice assistance, voice commands, desktop control, translation,

00:20:41.960 --> 00:20:45.040
<v Chris>and automatic language detection are outside the initial scope.

00:20:46.712 --> 00:20:51.193
<v Chris>So they, I think, are intentionally couching this as limited in scope.

00:20:51.675 --> 00:20:56.250
<v Chris>They have provided diagrams that show the architecture overview about how it works locally.

00:20:56.946 --> 00:21:00.040
<v Chris>um how are we feeling about this first go at it.

00:21:00.429 --> 00:21:04.760
<v Brent>Well my initial response is this is the way you ship an ai feature you'd be

00:21:04.760 --> 00:21:08.510
<v Brent>totally open about what it's doing what's under the hood you know firefox kind of,

00:21:09.380 --> 00:21:13.650
<v Brent>botched that a little while ago with their first features but uh they they do

00:21:13.650 --> 00:21:17.750
<v Brent>describe you know under the hood it uses speech recognition models running locally

00:21:17.750 --> 00:21:19.200
<v Brent>on your machine so i think that

00:21:19.200 --> 00:21:23.723
<v Brent>will make people happy or at least less hesitant maybe of these features,

00:21:25.192 --> 00:21:25.743
<v Brent>So

00:21:27.083 --> 00:21:30.479
<v Brent>communicating lots, I think is great. That's what we're seeing here.

00:21:30.810 --> 00:21:36.722
<v Brent>And also starting slow with some features that are pretty obvious if they work

00:21:36.722 --> 00:21:40.092
<v Brent>or not and are pretty simple. That's a good way to gain some trust.

00:21:40.412 --> 00:21:42.532
<v Brent>So I'm liking this measured approach.

00:21:43.581 --> 00:21:46.422
<v Chris>Right, Wes, this has to be probably the least controversial implementation of

00:21:46.422 --> 00:21:47.652
<v Chris>the technology possible, right?

00:21:47.652 --> 00:21:50.952
<v Wes>Indeed. And I would say so far, it seems like the reaction from what a little

00:21:50.952 --> 00:21:54.646
<v Wes>I've seen anyway, but it seems overall positive, I think.

00:21:55.192 --> 00:21:58.602
<v Wes>I'm taking a look here. Here they have a sort of a test branch where you can

00:21:58.602 --> 00:21:59.922
<v Wes>see a little of the development. Yeah.

00:22:00.253 --> 00:22:04.662
<v Wes>And just to be clear, it is named after the minor bird because it's renowned

00:22:04.662 --> 00:22:09.372
<v Wes>for its ability to listen to, mimic, and reproduce human speech with astonishing clarity.

00:22:09.812 --> 00:22:13.852
<v Wes>Just like its avian counterpart, this application is designed to master voice

00:22:13.852 --> 00:22:18.196
<v Wes>audio listening intently to your spoken words, instantly translating them to accurate, clean text.

00:22:18.892 --> 00:22:20.832
<v Wes>It's a Python app. It uses UV.

00:22:21.545 --> 00:22:26.171
<v Wes>They use hypothesis for generative testing, which is great. Love to see that. It looks very nice.

00:22:26.832 --> 00:22:31.172
<v Wes>Right now they have Whisper with Faster Whisper as one option,

00:22:31.172 --> 00:22:33.631
<v Wes>and then also Nemetron, which can do CUDA.

00:22:33.944 --> 00:22:37.746
<v Wes>So it sounds like they kind of got stuff for CPU and GPU going on here.

00:22:38.536 --> 00:22:43.272
<v Wes>Not a ton of stuff yet, but you've got like a desktop interface,

00:22:43.272 --> 00:22:47.592
<v Wes>it looks like. There's obviously Snap support. They're pulling in Whisper and Nemetron from Snaps.

00:22:47.888 --> 00:22:52.782
<v Wes>There's also a back-end server, standalone Ubu STT server. That's the main thing

00:22:52.782 --> 00:22:55.347
<v Wes>to Snap. This standalone Snap is going to ship, I guess.

00:22:56.369 --> 00:22:58.792
<v Chris>So this will be interesting from a couple of different vectors,

00:22:58.792 --> 00:23:02.112
<v Chris>I think. Number one, from like a user experience, what kind of load does this

00:23:02.112 --> 00:23:04.832
<v Chris>put on your desktop? What kind of memory usage are we looking at?

00:23:05.349 --> 00:23:08.432
<v Chris>And what does it set sort of the minimum requirements to have a decent experience

00:23:08.432 --> 00:23:10.783
<v Chris>here? So that's, I think, one vector to consider this under.

00:23:11.526 --> 00:23:17.782
<v Chris>The other is just, I think, what a hole there is in the accessibility space

00:23:17.782 --> 00:23:19.001
<v Chris>for the Linux desktop right now.

00:23:19.529 --> 00:23:25.952
<v Chris>And how this is table stakes on Android, iOS, I assume Windows,

00:23:25.952 --> 00:23:27.652
<v Chris>I don't actually know, and macOS.

00:23:29.363 --> 00:23:29.996
<v Chris>Table stakes.

00:23:31.280 --> 00:23:36.168
<v Chris>And it's like minimum bar accessibility. And we had this email from listener

00:23:36.168 --> 00:23:39.808
<v Chris>Matthew, and he said, Hey, Linux Unplugged hosts, I'm a blind Arch Linux user,

00:23:39.808 --> 00:23:41.154
<v Chris>and I really enjoy your content.

00:23:41.676 --> 00:23:44.318
<v Chris>I really feel like Linux accessibility is understated.

00:23:45.061 --> 00:23:49.578
<v Chris>Many desktop environments have little to no support for usable screen or usable

00:23:49.578 --> 00:23:52.288
<v Chris>screen reader experience, especially Wayland-based sessions.

00:23:52.549 --> 00:23:55.794
<v Chris>I'm comfortable with Monte, though I believe more people need to know about this.

00:23:56.079 --> 00:23:58.558
<v Chris>It's true that blind people themselves have made their own projects,

00:23:58.558 --> 00:24:01.688
<v Chris>thanks to open source, specifically for these individuals, but it shouldn't

00:24:01.688 --> 00:24:03.364
<v Chris>be like that. Thanks for reading my post.

00:24:04.148 --> 00:24:07.428
<v Chris>And we're thinking about, you followed up with Matthew a bit,

00:24:07.428 --> 00:24:12.478
<v Chris>but we're thinking like, this is probably the best implementation that Canonical

00:24:12.478 --> 00:24:16.318
<v Chris>could do that actually adds value to people in this space that could really

00:24:16.318 --> 00:24:18.124
<v Chris>use accessibility tools like this on Linux.

00:24:18.698 --> 00:24:22.768
<v Chris>And to Matthew's point, we don't really have much in GNOME and Wayland right now.

00:24:23.731 --> 00:24:25.968
<v Chris>And this is the exact area that Canonical is going to go after.

00:24:25.968 --> 00:24:30.420
<v Chris>Now, it's not a screen reader, but it's getting us to part of the way there you know and.

00:24:30.988 --> 00:24:35.848
<v Wes>It's yeah it's it's great to see i'm excited to see what happens uh it seems

00:24:35.848 --> 00:24:37.468
<v Wes>you know they're making some good progress and

00:24:37.828 --> 00:24:40.608
<v Wes>it seems like especially as john mentioned he's been on the show that you know

00:24:40.608 --> 00:24:43.336
<v Wes>they're giving pretty regular updates with the work that they're doing so we'll

00:24:43.336 --> 00:24:47.097
<v Wes>there'll probably be more to come i do also see it's gpl3 so that's pretty cool.

00:24:48.089 --> 00:24:51.236
<v Brent>I have a little bit of a pondering here. And I think, Chris,

00:24:51.236 --> 00:24:54.551
<v Brent>this is in your expertise.

00:24:55.496 --> 00:24:59.216
<v Brent>Why? Like, they built their own thing here. And it sounds like Wes,

00:24:59.216 --> 00:25:01.307
<v Brent>you know, gives it the little approval.

00:25:02.178 --> 00:25:06.246
<v Brent>But why not use something like what Home Assistant has been working on with

00:25:06.246 --> 00:25:12.274
<v Brent>their voice stuff and voice input? Do you think that that's a missed opportunity?

00:25:13.836 --> 00:25:17.333
<v Chris>Whisper is being used by both projects. So some of the primitives are the same.

00:25:18.175 --> 00:25:21.926
<v Chris>Uh, so that's good. I, I think, you know, I could see using the bits that do

00:25:21.926 --> 00:25:24.630
<v Chris>make sense and then building a custom layer for the other parts,

00:25:25.309 --> 00:25:27.045
<v Chris>um, the interface with the desktop.

00:25:27.887 --> 00:25:32.086
<v Chris>I think there is like a lot of people that don't know that you have whisper

00:25:32.086 --> 00:25:35.306
<v Chris>and Piper happening over there at the home assistant community.

00:25:35.306 --> 00:25:39.067
<v Chris>That is really powerful for text to speech and speech to text and all of that.

00:25:39.613 --> 00:25:43.450
<v Chris>But basing it on whisper is going to be, I think they're going to have decent results.

00:25:43.984 --> 00:25:46.686
<v Chris>Fast whisper usually does decent results if you have clean audio,

00:25:46.686 --> 00:25:50.366
<v Chris>but if people are in a noisy work environment, it's going to be pretty hit and

00:25:50.366 --> 00:25:51.978
<v Chris>miss. So it's going to really depend on...

00:25:52.721 --> 00:25:55.746
<v Wes>And I think that open... I haven't dug through the code base,

00:25:55.746 --> 00:25:58.496
<v Wes>but I imagine there's an interface that they have so that they're intending...

00:25:58.496 --> 00:26:02.256
<v Wes>Like, they already support too, so I imagine, like, as other options are available

00:26:02.256 --> 00:26:04.818
<v Wes>or whatever, like, you'll be able to extend with different ASRs.

00:26:05.616 --> 00:26:09.626
<v Chris>Or, I mean, is this some sort of thing that app developers could build on top

00:26:09.626 --> 00:26:13.996
<v Chris>of and maybe create a screen reader using the backend that Canonical is providing here?

00:26:13.996 --> 00:26:14.556
<v Wes>That's a good question.

00:26:15.330 --> 00:26:18.486
<v Chris>I think we'll have to just find out if people experiment and build something

00:26:18.486 --> 00:26:20.556
<v Chris>with it, right? That'll be the question.

00:26:20.556 --> 00:26:21.516
<v Wes>That's the open source way.

00:26:22.236 --> 00:26:23.991
<v Chris>I guess we'll check it out, right? Because we're supposed to get it,

00:26:26.496 --> 00:26:28.652
<v Chris>in the next release, you know? Isn't that what they're targeting?

00:26:28.902 --> 00:26:29.111
<v Brent>Yep.

00:26:29.349 --> 00:26:31.806
<v Chris>I know I wrote it down, but I'm an old man and I can't remember.

00:26:31.806 --> 00:26:34.933
<v Chris>But yeah, the next release. Yeah, 2610. We don't have to wait that long to try it out.

00:26:38.805 --> 00:26:44.900
<v Chris>Webroot.com slash unplugged. Webroot is a cloud-based antivirus engineered to stay out of your way.

00:26:45.162 --> 00:26:48.401
<v Chris>It takes up to 33 times less space than the bulky competitors,

00:26:48.621 --> 00:26:50.508
<v Chris>and it scans six times faster.

00:26:50.885 --> 00:26:54.914
<v Chris>So instead of waiting around, you're getting instant powerful protection without the leg.

00:26:55.344 --> 00:26:59.083
<v Chris>And I know more of us than ever, we're trying to make our PCs last longer.

00:26:59.083 --> 00:27:00.771
<v Chris>You've probably got family members as well.

00:27:01.224 --> 00:27:04.196
<v Chris>They have a perfectly good PC. They want to use it a little bit longer.

00:27:04.481 --> 00:27:07.383
<v Chris>Maybe it's feeling a little slow. Maybe it's feeling a little sluggish.

00:27:07.383 --> 00:27:09.583
<v Chris>And they need good online protection.

00:27:10.273 --> 00:27:14.830
<v Chris>Webroot can keep their PC running fast and safe because the intelligence, it lives in the cloud.

00:27:15.445 --> 00:27:19.093
<v Chris>See, most people are blaming their device for the slowdown. But the real slowdown

00:27:19.093 --> 00:27:21.651
<v Chris>is coming from that old antivirus software.

00:27:22.069 --> 00:27:24.473
<v Chris>Those traditional programs, they just, they hog up the storage.

00:27:24.473 --> 00:27:27.563
<v Chris>They soak up the disk IO and they eat a lot of RAM. And they do,

00:27:27.563 --> 00:27:29.702
<v Chris>they make a machine feel old and slow.

00:27:30.648 --> 00:27:34.613
<v Chris>And it's not even a feeling. You can see it in the numbers. WebRoot Essential

00:27:34.613 --> 00:27:36.117
<v Chris>versus, say, Norton Antivirus?

00:27:36.894 --> 00:27:42.014
<v Chris>Well, the numbers say it all. WebRoot scans 3.7 times faster.

00:27:42.792 --> 00:27:45.968
<v Chris>It installs 35 times faster. But here's the big one.

00:27:46.548 --> 00:27:51.244
<v Chris>This is the one. It uses five times less RAM when idle.

00:27:51.564 --> 00:27:55.534
<v Chris>That's going to make a real-world difference on their PC. It's going to make a difference.

00:27:56.179 --> 00:27:59.667
<v Chris>You know, the other thing I'm thinking about is LLM-assisted phishing attacks.

00:28:00.480 --> 00:28:04.333
<v Chris>They're just getting better and better. Some of us can spot them,

00:28:04.333 --> 00:28:07.411
<v Chris>but not all of us, and especially some of those family members.

00:28:07.992 --> 00:28:10.063
<v Chris>This is why I'm recommending WebRoot Total Protection.

00:28:10.661 --> 00:28:14.103
<v Chris>Unlike the free tools, or really the older traditional tools.

00:28:15.153 --> 00:28:19.202
<v Chris>Bygone traditional tools. You know what I'm talking about. They weren't built

00:28:19.202 --> 00:28:23.344
<v Chris>for this, but WebRoot is, is designed to counter modern AI-driven attacks.

00:28:24.029 --> 00:28:28.336
<v Chris>It's fast, it's lightweight, and it's designed to spot these threats before they reach you.

00:28:28.842 --> 00:28:31.492
<v Chris>It literally doesn't get better than that, whether you're working,

00:28:31.492 --> 00:28:36.184
<v Chris>browsing, or streaming. WebRoot is the antivirus that works for you, not against you.

00:28:36.579 --> 00:28:41.252
<v Chris>Make the switch and feel the difference of truly fast modern antivirus protection.

00:28:41.502 --> 00:28:46.902
<v Chris>And for a limited time, you can save 60% on WebRoot when you go to webroot.com

00:28:46.902 --> 00:28:50.842
<v Chris>slash unplugged. Yeah, I said 60%, but you got to go to that URL.

00:28:50.842 --> 00:28:54.319
<v Chris>It's the only way to get the deal. You go to webroot.com slash unplugged.

00:28:54.708 --> 00:28:58.766
<v Chris>Great way to support the show too. That's webroot.com slash unplugged.

00:29:01.517 --> 00:29:10.037
<v Brent>As happens to us last week, as we are wrapping up the show, Linus announced a new kernel, Linux 7.1.

00:29:10.882 --> 00:29:11.532
<v Wes>Huzzah.

00:29:11.532 --> 00:29:15.562
<v Chris>Yeah, it's pretty exciting. Linus wrote, normally I try to front load the merge

00:29:15.562 --> 00:29:19.912
<v Chris>window and do as much possible the first few days, which we're going to come

00:29:19.912 --> 00:29:21.914
<v Chris>back to the 72. Oh my goodness.

00:29:22.506 --> 00:29:26.712
<v Chris>Oh, this is so funny too, because spoiler alert, uh, it didn't go this way.

00:29:26.712 --> 00:29:28.996
<v Chris>He says this time, I'm not sure it's going to work out with my laptop.

00:29:29.658 --> 00:29:32.582
<v Chris>He didn't think, wow, a couple of long flights without internet,

00:29:32.582 --> 00:29:35.222
<v Chris>but I've made sure that I have fetched the early pull request.

00:29:35.222 --> 00:29:36.252
<v Chris>Thank you. You know who you are.

00:29:36.502 --> 00:29:40.772
<v Chris>So I'll be able to do some of it offline. Well, I guess he worked the entire flight.

00:29:40.772 --> 00:29:41.642
<v Brent>Oh my goodness.

00:29:42.382 --> 00:29:47.020
<v Chris>Anyway, possible slight hiccups in the merge window aside, the news today is 7.1.

00:29:47.380 --> 00:29:50.562
<v Chris>Below is the short log for the last week. Nothing particularly interesting or

00:29:50.562 --> 00:29:52.866
<v Chris>scary stands out, which is as it should be.

00:29:53.232 --> 00:29:56.572
<v Chris>It's mostly various smaller driver updates, GPU networking, sound miscellaneous

00:29:56.572 --> 00:30:01.039
<v Chris>with some networking and trace tooling fixes and random minor changes elsewhere.

00:30:02.531 --> 00:30:10.308
<v Chris>Well, one of those random minor changes is this major rework to the NTFS driver

00:30:10.308 --> 00:30:12.738
<v Chris>implementation, which now has full write support.

00:30:13.898 --> 00:30:19.658
<v Wes>That is correct. And Linus merged it with the commit message NTFS resurrection.

00:30:19.658 --> 00:30:19.978
<v Chris>Yeah.

00:30:19.978 --> 00:30:20.078
<v Brent>Wow.

00:30:20.398 --> 00:30:24.752
<v Wes>And that's because it's – so, okay, let's put the – This is a long saga. It is.

00:30:24.891 --> 00:30:26.828
<v Chris>We should try to maybe do a short version.

00:30:26.828 --> 00:30:29.818
<v Wes>Yeah, okay, so there's a lot of different ways to talk NTFS,

00:30:29.818 --> 00:30:32.519
<v Wes>right, which is the sort of Windows file system.

00:30:33.860 --> 00:30:39.363
<v Wes>We've had NTFS 3G, which is like a fuse option, which works well but slow.

00:30:39.699 --> 00:30:40.688
<v Chris>And is in user space.

00:30:40.688 --> 00:30:43.688
<v Wes>Yeah, there has been the traditional NTFS driver in the kernel,

00:30:43.688 --> 00:30:45.638
<v Wes>which has been there a long time, but it's been read-only.

00:30:46.678 --> 00:30:51.898
<v Wes>Then in 2021, we got NTFS 3, which was from Paragon, which was previously out

00:30:51.898 --> 00:30:53.618
<v Wes>of tree, but then they got it merged.

00:30:53.618 --> 00:30:54.058
<v Chris>But then...

00:30:54.498 --> 00:30:57.288
<v Wes>It kind of has just been rotting in the tree, unfortunately.

00:30:57.288 --> 00:30:57.991
<v Chris>Yeah, they kind of left.

00:30:58.698 --> 00:31:05.716
<v Wes>And so now this is like a four-year rewrite from the ex-fat maintainer,

00:31:06.285 --> 00:31:11.185
<v Wes>Namjai Jian, and he took the bones of the original read-only NTFS driver,

00:31:11.457 --> 00:31:14.828
<v Wes>added full write support using modern kernel APIs like IOMAP,

00:31:14.828 --> 00:31:19.198
<v Wes>delayed allocation, folios, and now we're getting it, yeah.

00:31:19.198 --> 00:31:25.458
<v Chris>A real, true, modern NTFS implementation on Linux after this multi-year saga.

00:31:25.838 --> 00:31:29.008
<v Wes>There was a little hiccup. There was a kind of got pulled and then un-pulled

00:31:29.008 --> 00:31:31.428
<v Wes>because there was some Git structure issues with the commits,

00:31:31.428 --> 00:31:33.258
<v Wes>but that all got cleared up and obviously it's here now.

00:31:33.978 --> 00:31:37.620
<v Brent>I'm going to bet that next week Windows comes out with a new file system.

00:31:38.613 --> 00:31:42.328
<v Chris>I don't think so. I don't think so. It's been a while too.

00:31:42.665 --> 00:31:47.158
<v Chris>Also good to see the Apple Silicon MacBooks getting SMC power driver support

00:31:47.158 --> 00:31:50.008
<v Chris>for some of the systems, giving better battery and power metrics.

00:31:50.008 --> 00:31:54.525
<v Chris>Of course, some of that's changing with Mac OS 27 Golden Gate, but it's there.

00:31:55.379 --> 00:32:01.873
<v Chris>Also, did you see this? In 7.1, 7.1, they mainline support for 12 new SOCs and

00:32:01.873 --> 00:32:07.023
<v Chris>hardware platforms across ARM and RISC-V and added real-time kernel build support

00:32:07.023 --> 00:32:09.523
<v Chris>for 32-bit ARM systems out there in the field.

00:32:09.523 --> 00:32:10.283
<v Brent>Fascinating.

00:32:11.003 --> 00:32:14.853
<v Wes>We not only have real-time kernel support these days, but we have it on 32-bit ARM.

00:32:15.022 --> 00:32:16.473
<v Chris>Not 32x86, though.

00:32:16.473 --> 00:32:21.513
<v Wes>No. Well, who wants that? There's this small little lining here about Intel

00:32:21.513 --> 00:32:25.363
<v Wes>FRED being enabled by default for supported systems on Panther Lake,

00:32:25.363 --> 00:32:27.084
<v Wes>Diamond Rapids, and AMD.

00:32:29.163 --> 00:32:30.097
<v Wes>It's interesting...

00:32:30.974 --> 00:32:34.561
<v Wes>So this goes, this is like a 30-year upgrade in a way. I mean,

00:32:34.561 --> 00:32:38.114
<v Wes>this is already, this is text not new, but just sort of making it the default here is.

00:32:38.636 --> 00:32:43.001
<v Wes>So basically any time, since basically the 386, any time a user space program

00:32:43.001 --> 00:32:46.481
<v Wes>needs to talk to the kernel with like a system call or an interrupt or an exception

00:32:46.481 --> 00:32:50.235
<v Wes>or something like that, it goes through what's called the interrupt descriptor table.

00:32:50.682 --> 00:32:53.828
<v Wes>The CPU saves state, switches to ring zero, jumps to the handler.

00:32:54.240 --> 00:32:56.243
<v Wes>When done, it returns back to user space.

00:32:56.771 --> 00:33:01.628
<v Wes>This process involves multiple microcode steps, memory reads and serialization operations.

00:33:01.889 --> 00:33:07.421
<v Wes>It's been the same since like 1985. Wow. But with Fred, we're replacing that

00:33:07.421 --> 00:33:13.621
<v Wes>IDT delivery mechanism with new instructions that do the same sort of ring transitions,

00:33:13.621 --> 00:33:16.373
<v Wes>but they do them atomically. They do them with fewer steps.

00:33:16.883 --> 00:33:21.031
<v Wes>The CPU handles the context switch more directly, so you get fewer memory accesses,

00:33:21.031 --> 00:33:24.035
<v Wes>fewer serialization operations, and lower latency.

00:33:24.511 --> 00:33:28.581
<v Wes>So it's a kind of cool new thing that x86, like it's doing it both on Intel.

00:33:28.702 --> 00:33:33.347
<v Wes>It's called Intel Fred, but AMD's doing it as well. And we're finally starting to get access to it.

00:33:33.625 --> 00:33:37.701
<v Chris>I like the name. Larable and Pharonix notes, quote, great news for Panther Lake

00:33:37.701 --> 00:33:42.071
<v Chris>on Linux and pairs nicely with Panther Lake Intel Idle Driver C-State Editions

00:33:42.071 --> 00:33:46.661
<v Chris>for Linux 7.1 as well as ongoing Z-Kernel Linux driver development improvements.

00:33:47.626 --> 00:33:52.061
<v Chris>I feel like the Panther Lake generation of Intel chips might pull me back to

00:33:52.061 --> 00:33:54.772
<v Chris>the Intel side if I were in the market to get a laptop.

00:33:54.947 --> 00:33:56.181
<v Wes>We should at least get to play with one.

00:33:56.941 --> 00:34:00.448
<v Chris>The good news for Panther Lake on Linux just keeps stacking up.

00:34:00.710 --> 00:34:01.493
<v Chris>It's really impressive.

00:34:01.836 --> 00:34:06.221
<v Chris>Fred's also expected to be used by the upcoming AMD Zen 6 processor and Intel

00:34:06.221 --> 00:34:08.921
<v Chris>Xeon Diamond Rapid Server processor.

00:34:08.921 --> 00:34:09.341
<v Wes>Oh, boy.

00:34:10.201 --> 00:34:14.381
<v Chris>I like those names. I want one of those. Nice to see the Steam Deck OLED audio

00:34:14.381 --> 00:34:18.861
<v Chris>fixes getting now upstream, reducing the need for downstream patches in SteamOS,

00:34:18.861 --> 00:34:21.196
<v Chris>which is good to see. Oh, no.

00:34:22.600 --> 00:34:27.395
<v Chris>Oh, no. You should have warned me about this. PCM ICA support has been removed

00:34:27.395 --> 00:34:30.845
<v Chris>as well as more 486 era x86 support paths.

00:34:30.845 --> 00:34:31.125
<v Wes>Yeah.

00:34:31.865 --> 00:34:35.551
<v Chris>Well, I still have PCM ICA cards. PCM ICA cards.

00:34:35.894 --> 00:34:41.965
<v Chris>They were the best Wi-Fi. Look, look, when 802.11b came out,

00:34:41.965 --> 00:34:43.539
<v Chris>no laptop had that built in.

00:34:44.038 --> 00:34:48.136
<v Chris>But a guy could get himself a PCM CIA card and he could get himself Wi-Fi.

00:34:48.427 --> 00:34:51.125
<v Chris>And then if you needed to switch over, you could get double-wide ones with an

00:34:51.125 --> 00:34:53.047
<v Chris>Ethernet adapter, you could get ones with storage.

00:34:54.046 --> 00:34:57.135
<v Chris>I feel like it didn't get a chance to live up to its potential,

00:34:57.135 --> 00:34:58.091
<v Chris>and we shouldn't remove it yet.

00:34:58.259 --> 00:35:06.525
<v Wes>Okay, but the upside is, as part of that, we're dumping 140,000 lines of legacy code in the kernel.

00:35:08.348 --> 00:35:09.765
<v Brent>Okay, that sounds like a good thing.

00:35:10.165 --> 00:35:12.965
<v Chris>You can have this, but you can't take anything else for the rest of the episode from the kernel.

00:35:12.965 --> 00:35:18.215
<v Wes>All right, well, we do have some good news from 7.1. It included nearly 13,000

00:35:18.215 --> 00:35:23.775
<v Wes>non-merge change sets, contributions from more than 2,000 developers with hundreds

00:35:23.775 --> 00:35:24.965
<v Wes>of first-time contributions.

00:35:24.965 --> 00:35:26.575
<v Chris>That's cool. That's really cool.

00:35:26.575 --> 00:35:27.667
<v Wes>I think it was like 300 and some.

00:35:28.021 --> 00:35:31.845
<v Chris>Okay, so we opened up with teasing Linus about low-keying what the next merge

00:35:31.845 --> 00:35:35.235
<v Chris>window is going to look like for Linux 7.2, right? Because now 7.1's out the

00:35:35.235 --> 00:35:38.835
<v Chris>door, so work never stops for the kernel team. They immediately open up the

00:35:38.835 --> 00:35:40.003
<v Chris>merge window for the next kernel.

00:35:40.310 --> 00:35:43.219
<v Chris>And Linus is like, I'm going to be on a flight, going to be working on my battery.

00:35:43.381 --> 00:35:44.606
<v Chris>Maybe he has a panther, like, I don't know.

00:35:45.024 --> 00:35:49.883
<v Chris>because he sure did get the work done. So we have now seen the first merge window,

00:35:50.115 --> 00:35:55.015
<v Chris>the first half of it for Linux 7.2, and more than 7,000 non-merge change sets

00:35:55.015 --> 00:35:56.621
<v Chris>have already been pulled into mainline.

00:35:57.225 --> 00:36:01.495
<v Chris>We are seeing some code removal around I-486 again, but let's talk about some

00:36:01.495 --> 00:36:03.970
<v Chris>of the stuff that's landing that looks really interesting,

00:36:04.725 --> 00:36:09.815
<v Chris>including a new feature in Linux 7.2 that adds the ability to limit programs

00:36:09.815 --> 00:36:15.546
<v Chris>to only open, quote, regular files and avoid being tricked or doing, quote, silly things.

00:36:16.145 --> 00:36:22.471
<v Chris>So this is a brilliant feature that basically limits the type of file. Okay, all right.

00:36:23.719 --> 00:36:28.409
<v Chris>So this landing in Linux 7.2 is this open NAT2 underscore regular flag.

00:36:28.607 --> 00:36:32.654
<v Wes>Yeah, so there's already been the existing open, which is a system call for

00:36:32.654 --> 00:36:36.287
<v Wes>opening files. Open NAT2 is this new version of it.

00:36:36.426 --> 00:36:37.599
<v Chris>It doesn't allow silly files?

00:36:39.284 --> 00:36:40.244
<v Brent>I hate those silly files.

00:36:40.244 --> 00:36:42.884
<v Wes>It just gets everywhere. It's a sort of anti-silly system call, if you will.

00:36:42.944 --> 00:36:43.794
<v Chris>Okay, good, good, good.

00:36:43.794 --> 00:36:47.594
<v Wes>Well, okay, so open NAT2 is the modern version, sorry. Now we're getting open

00:36:47.594 --> 00:36:49.094
<v Wes>NAT2 underscore regular.

00:36:49.094 --> 00:36:50.393
<v Chris>Regular, right, regular.

00:36:50.613 --> 00:36:54.364
<v Wes>But it's part of open NAT2. It's basically because OpenI2 supports passing a

00:36:54.364 --> 00:36:57.944
<v Wes>struct of various things that it's this open how parameter. And so now we have

00:36:57.944 --> 00:37:01.845
<v Wes>more ways to tell it, you know, be regular.

00:37:02.652 --> 00:37:05.984
<v Chris>Yeah, the flag indicates the path should be open if it's a regular file.

00:37:05.984 --> 00:37:09.114
<v Chris>It's useful to write secure programs that want to avoid being tricked in opening

00:37:09.114 --> 00:37:14.314
<v Chris>device nodes with special semantics while thinking they operate on regular files.

00:37:14.314 --> 00:37:17.404
<v Wes>Exactly. So like there might be times, right, that you need to open a device

00:37:17.404 --> 00:37:20.862
<v Wes>node or a special file or something under proc or something like that, right?

00:37:21.007 --> 00:37:26.084
<v Wes>or a pipe, but that's usually a specific point in your program and it's not

00:37:26.084 --> 00:37:30.284
<v Wes>from generic user input for uploading a file into the browser or something like that.

00:37:30.551 --> 00:37:33.624
<v Wes>And so this enables you to opt into that behavior of saying,

00:37:33.624 --> 00:37:37.864
<v Wes>hey, I really want a regular file, which sounds funny, but it filters things,

00:37:38.684 --> 00:37:45.564
<v Wes>like a device node, so dev zero or dev random or a FIFO or a pipe or symlink

00:37:45.944 --> 00:37:50.664
<v Wes>substitution attacks here can kind of be detected as well.

00:37:50.664 --> 00:37:53.224
<v Wes>And this will play into container sandbox hardening.

00:37:54.169 --> 00:37:58.070
<v Wes>This is kind of a way to, you know, you could add this in as part of that.

00:37:59.080 --> 00:38:00.754
<v Wes>So it's a nice new, yeah, it's a nice new feature.

00:38:00.754 --> 00:38:04.439
<v Chris>I think it's mostly important as a flex. Like you can walk up to a Mac user and be like...

00:38:05.896 --> 00:38:10.262
<v Chris>My kernel only opens regular files. Does your kernel open up strange,

00:38:10.262 --> 00:38:13.802
<v Chris>silly files? Your kernel might open silly files. You should be concerned about that.

00:38:14.462 --> 00:38:16.930
<v Chris>You know, like that kind of thing. It's a flex now. I like that.

00:38:17.169 --> 00:38:21.743
<v Chris>I also like seeing that BTRFS, our buddy ButterFS, is now enabling large folios.

00:38:21.854 --> 00:38:24.142
<v Chris>Because I think, like, Brent has a ton of those.

00:38:24.142 --> 00:38:24.342
<v Brent>Oh, yeah.

00:38:24.362 --> 00:38:29.817
<v Chris>By default, huge folios are coming with Linux 7.2. Huge folios.

00:38:30.922 --> 00:38:35.272
<v Wes>A folio is a kernel data structure that represents one or more physically contiguous pages.

00:38:35.272 --> 00:38:38.502
<v Chris>And a huge one is two megabytes, apparently.

00:38:38.822 --> 00:38:43.762
<v Wes>Yeah, because the small ones were four kilobytes. So it's kind of huge, apparently.

00:38:43.762 --> 00:38:44.836
<v Brent>It's relative. It's relative.

00:38:46.118 --> 00:38:50.602
<v Chris>Okay, Butterfest also gains a new IOCTL for returning raw checksums to user

00:38:50.602 --> 00:38:54.992
<v Chris>space, a stable UUID for overlay OS-style use cases, and a lot of performance

00:38:54.992 --> 00:38:59.382
<v Chris>work, including reported sequential write and direct I.O. throughput improvements.

00:38:59.822 --> 00:39:00.472
<v Wes>Nice to see.

00:39:00.472 --> 00:39:03.492
<v Chris>And our classic buddy XFS has also seen some work.

00:39:03.492 --> 00:39:05.502
<v Wes>Yeah, it doesn't just stop at Butterfest. Heck no.

00:39:05.902 --> 00:39:10.822
<v Chris>No, no. New zone allocator is now out of experimental status in Linux 7.2.

00:39:10.822 --> 00:39:14.340
<v Chris>Reminder, you're not going to be getting 7.2 for a little bit, but that's good to see.

00:39:14.491 --> 00:39:19.842
<v Wes>Yeah, it's used for zoned storage devices, including those SMR hard drives and ZNS SSDs.

00:39:19.862 --> 00:39:20.192
<v Chris>Okay.

00:39:20.900 --> 00:39:26.562
<v Wes>Most of the rest is kind of just fixes and minor changes, but EXT4 got some cool stuff too.

00:39:27.702 --> 00:39:27.982
<v Chris>Yeah.

00:39:27.982 --> 00:39:31.132
<v Wes>It reworked fast commit handling to reduce locking contention,

00:39:31.132 --> 00:39:34.242
<v Wes>which is always good, and avoid deadlock scenarios, which is even better.

00:39:34.242 --> 00:39:37.092
<v Wes>Yeah, it's nice to see that. Because you really don't want your file system driver to deadlock.

00:39:37.092 --> 00:39:40.289
<v Chris>I mean, you can't claim that extended four is abandoned. It's nice to see that.

00:39:40.416 --> 00:39:43.992
<v Wes>No, there's like hybrid journaling path that's being used now for recording

00:39:43.992 --> 00:39:47.102
<v Wes>metadata deltas instead of always having to write full metadata every time.

00:39:47.102 --> 00:39:49.622
<v Chris>Should make things a little bit faster there when updating metadata updates.

00:39:49.622 --> 00:39:50.792
<v Chris>Just doing a little boom-boom.

00:39:50.792 --> 00:39:55.792
<v Wes>Yeah, and directory hash computation is optimized by processing input in four-byte

00:39:55.792 --> 00:40:01.022
<v Wes>chunks and removing function pointers, which is like a 2x improvement for at least longer inputs.

00:40:01.022 --> 00:40:03.182
<v Chris>Ugh, that'll finally get Brent to stop complaining.

00:40:04.035 --> 00:40:04.980
<v Wes>Big EXT4 guy.

00:40:04.980 --> 00:40:06.790
<v Chris>Yeah, he's been bitching about that for years.

00:40:06.790 --> 00:40:10.370
<v Wes>Yeah, yeah. Okay, well, how about this? We were talking about you don't want

00:40:10.370 --> 00:40:13.560
<v Wes>to open pipes when you don't think you need to be. I do not.

00:40:14.100 --> 00:40:19.120
<v Wes>But I think many of us run a lot of shell pipelines or use pipes as part of

00:40:19.540 --> 00:40:21.220
<v Wes>operating on a Unix-like operating system.

00:40:21.320 --> 00:40:22.050
<v Chris>Big pipe guy.

00:40:22.050 --> 00:40:27.310
<v Wes>Yeah, right? So Linux 7.2 is improving a non-pipe write, the kernel path used

00:40:27.310 --> 00:40:31.335
<v Wes>for anonymous pipes such as shell pipelines and standard streams.

00:40:31.962 --> 00:40:38.400
<v Wes>So this change avoids allocating pages, reducing contention between concurrent readers and writers.

00:40:38.400 --> 00:40:40.681
<v Wes>So if you're passing a whole bunch of data over that pipeline,

00:40:41.088 --> 00:40:45.012
<v Wes>this could get somewhere between 6% to 28% better throughput,

00:40:45.568 --> 00:40:49.590
<v Wes>and somewhere between 5% and 22% lower average write latency.

00:40:49.590 --> 00:40:50.210
<v Brent>That is significant.

00:40:50.620 --> 00:40:52.730
<v Wes>And it gets better when you're under memory pressure.

00:40:52.730 --> 00:40:56.069
<v Chris>That's the thing right there. That's really cool. Because that's always when I'm piping.

00:40:56.551 --> 00:40:59.610
<v Chris>I'm always piping under memory pressure because that's the secret,

00:40:59.610 --> 00:41:01.671
<v Chris>boys. I'm always under memory pressure.

00:41:02.507 --> 00:41:05.270
<v Chris>We also have some changes in the crypto driver code. I just want to mention

00:41:05.270 --> 00:41:09.368
<v Chris>that they have been deprecating for a period of time bits of this interface,

00:41:09.815 --> 00:41:14.367
<v Chris>that allowed user space applications to call into the crypto API directly in the kernel.

00:41:15.227 --> 00:41:20.146
<v Chris>And not crypto in the currency, but crypto in the sense that it used to mean, as in cryptography.

00:41:20.156 --> 00:41:20.766
<v Wes>Yeah, that's right.

00:41:20.766 --> 00:41:24.296
<v Chris>Remember the good old days? But I guess they've been deprecating this.

00:41:24.296 --> 00:41:26.056
<v Chris>It must be because it's insecure, I would assume.

00:41:26.056 --> 00:41:27.417
<v Wes>Yeah, so you remember copy fail?

00:41:28.476 --> 00:41:30.926
<v Chris>No. No, I've completely forgotten that.

00:41:30.926 --> 00:41:34.366
<v Wes>Yeah, well, that reason, somewhat reason.

00:41:34.366 --> 00:41:35.806
<v Chris>So this is some follow-up from that, huh?

00:41:35.806 --> 00:41:39.176
<v Wes>Uh-huh, vulnerability. Yeah. Yeah, this was used in part of that attack.

00:41:39.816 --> 00:41:43.286
<v Wes>because it has optimizations that kind of let you overwrite memory in a way

00:41:43.286 --> 00:41:47.096
<v Wes>that one area was treating it as read-only, but now suddenly it's getting used

00:41:47.096 --> 00:41:49.516
<v Wes>letters right, and you've been able to change it.

00:41:52.716 --> 00:41:56.366
<v Wes>Essentially, no one is maintaining it, and these optimizations just aren't really

00:41:56.366 --> 00:42:00.646
<v Wes>worth it anymore, and especially now that we're in the era of a whole bunch

00:42:00.646 --> 00:42:03.116
<v Wes>of sustained LLM attacks.

00:42:03.416 --> 00:42:07.516
<v Chris>Yep, exactly. Okay, all right, that makes sense.

00:42:07.516 --> 00:42:10.066
<v Wes>Really, there's kind of a lot of that. Like if you look under the hood,

00:42:10.066 --> 00:42:16.896
<v Wes>a lot of the things being pulled or kind of reconsidered what the value is has stemmed from that.

00:42:16.896 --> 00:42:19.036
<v Chris>Yeah, it's interesting to see the fallout just kind of continue.

00:42:19.036 --> 00:42:22.156
<v Chris>I said you could not take anything else away from the kernel in this episode,

00:42:22.156 --> 00:42:23.301
<v Chris>but that one I'm okay with.

00:42:23.875 --> 00:42:25.930
<v Chris>That one I feel like makes sense. We need to be safe.

00:42:26.853 --> 00:42:29.196
<v Chris>All right, though, let's just see what we have next here on the list here.

00:42:29.636 --> 00:42:32.310
<v Chris>The next feature in Linux 7.2 is they are...

00:42:34.022 --> 00:42:36.806
<v Brent>Sorry. Let me finish that.

00:42:36.806 --> 00:42:38.596
<v Wes>This one was I really didn't want to think about.

00:42:39.241 --> 00:42:45.119
<v Brent>It reads here, removing Apple talk protocol support from the mainline kernel. Sorry, Chris.

00:42:45.526 --> 00:42:48.545
<v Chris>Why? Why do we have to remove? What?

00:42:50.854 --> 00:42:54.604
<v Chris>Why? Why? It doesn't hurt anybody. It's a great little protocol for those of

00:42:54.604 --> 00:42:57.187
<v Chris>us who are enthusiasts that like to have classic machines.

00:42:58.624 --> 00:42:58.744
<v Brent>Why?

00:42:59.124 --> 00:43:02.704
<v Chris>Why? What is this hurting? It's 4,000 lines of code. It's nothing.

00:43:02.704 --> 00:43:06.274
<v Chris>It's nothing in the Linux kernel. I just can't stand for this.

00:43:06.274 --> 00:43:10.167
<v Wes>Do you, are you going to put some effort into building yourself a fork that maintains this?

00:43:11.049 --> 00:43:14.994
<v Chris>No, but what I have thought about doing is, you know, creating a consistent

00:43:14.994 --> 00:43:16.364
<v Chris>complaining campaign about it,

00:43:16.364 --> 00:43:19.654
<v Chris>you know, just consistently getting on a soapbox. you think that's a brand.

00:43:19.654 --> 00:43:20.494
<v Wes>New segment on the show.

00:43:20.494 --> 00:43:24.224
<v Chris>Huh yeah yeah do you think that might help if i just complain a lot i i get

00:43:24.224 --> 00:43:31.134
<v Chris>it but it it is it is sad to see the removal was triggered they say partially by a burst of,

00:43:33.160 --> 00:43:38.354
<v Chris>ai generated fixes that was rarely used code that lacked active reviewers so

00:43:38.354 --> 00:43:44.884
<v Chris>you're telling me it's a victim of slop trimming yep so this is the problem people I.

00:43:44.884 --> 00:43:45.984
<v Wes>Had forgotten about it and the.

00:43:47.024 --> 00:43:51.439
<v Chris>Slop brought it up. The AI can't consider the art and history,

00:43:52.356 --> 00:43:56.182
<v Chris>the full context around Apple talk, right? This isn't IPX.

00:43:56.722 --> 00:44:01.354
<v Chris>Okay. But this isn't like some random Bluetooth 2.0 protocol we don't use anymore

00:44:01.354 --> 00:44:03.049
<v Chris>for like low bit rate headpieces.

00:44:03.171 --> 00:44:08.070
<v Brent>But Chris, the kernel is not a museum. Like we don't need these things in there if nobody's using it.

00:44:08.697 --> 00:44:14.114
<v Chris>First of all, shut your mouth. Second of all, listen, man, I got old Macs somewhere

00:44:14.114 --> 00:44:18.394
<v Chris>around here. i'd love to fire up one day i don't know like if i can't use linux

00:44:18.394 --> 00:44:21.805
<v Chris>and i can't use maples what am i gonna do.

00:44:22.711 --> 00:44:29.314
<v Wes>Oh it does look like they will be maintaining it still in this uh linux net

00:44:29.314 --> 00:44:35.470
<v Wes>dev out mod orphan module really yeah that's what i see here in the patch for removal,

00:44:37.026 --> 00:44:40.122
<v Wes>There's also some AX25 and ham radio that are over there.

00:44:40.122 --> 00:44:42.191
<v Chris>Oh, the ham guys are getting it too?

00:44:42.673 --> 00:44:46.533
<v Wes>Well, they might have already been there. I don't know much about the ham radio driver.

00:44:47.832 --> 00:44:53.812
<v Wes>It does also say that Apple Talk was removed in OSX in 10-6 Snow Leopard in 2009.

00:44:53.812 --> 00:44:58.232
<v Chris>Yeah, I know. It sucked then, doesn't it? And just because they do something wrong.

00:44:58.232 --> 00:44:59.212
<v Wes>You've only gotten over that one.

00:44:59.232 --> 00:45:02.392
<v Chris>Two wrongs don't make a right, Wes. You know that. You know that.

00:45:03.132 --> 00:45:07.712
<v Chris>So we can collectively cope. Before the show, I created Apple Talk Rest in Peace

00:45:07.712 --> 00:45:11.222
<v Chris>sticker, the memorial sticker where we as a community, for those of us that

00:45:11.222 --> 00:45:15.117
<v Chris>remember, can put it on our machines 1985 to 2026.

00:45:15.831 --> 00:45:19.598
<v Chris>It just talked different. Stickers available right now on jupitergarage.com.

00:45:20.144 --> 00:45:24.412
<v Chris>And while you're at it, why not pick up Sorry, I Only Open Regular Files so

00:45:24.412 --> 00:45:31.208
<v Chris>you can flex and celebrate Linux 7.2, the can't-do attitude of saying no to special files.

00:45:31.731 --> 00:45:36.061
<v Chris>Sorry, I only open. Real stickers available now, jupitergarage.com. Go check them out.

00:45:36.414 --> 00:45:40.692
<v Chris>Sorry, I only open regular files and the Apple Talk Memorial sticker.

00:45:40.692 --> 00:45:42.382
<v Chris>I am putting them on my rigs.

00:45:43.746 --> 00:45:47.242
<v Chris>I'll tell you what. It's too soon. It's too soon for both of those things.

00:45:47.242 --> 00:45:49.156
<v Chris>Too soon. I'll tell you what.

00:45:50.092 --> 00:45:54.402
<v Chris>If I could have my way, we would have a little network of Apple Talk going,

00:45:54.402 --> 00:45:58.496
<v Chris>and you would just use it for, like, device discovery and file transfer.

00:45:59.059 --> 00:46:03.142
<v Chris>You don't need TCP IP for that. Like, everybody's doing all these mesh networks

00:46:03.142 --> 00:46:07.802
<v Chris>and overlay networks. Well, if you're just on a LAN, why not use TCP IP for

00:46:07.802 --> 00:46:12.632
<v Chris>everything you use TCP IP for, but then use something like AppleTalk for your local file sharing?

00:46:14.772 --> 00:46:16.512
<v Chris>Guys, you're laughing. There's a real use case here.

00:46:16.512 --> 00:46:17.402
<v Wes>You want to set this up?

00:46:17.402 --> 00:46:22.202
<v Chris>First of all, I know obscurity isn't a thing, but it is a thing with this.

00:46:22.202 --> 00:46:25.732
<v Chris>Okay, this would be a thing. Second of all, it's so easy. Third of all,

00:46:25.732 --> 00:46:29.309
<v Chris>it does name resolution, so you don't have to set up home DNS. Yeah?

00:46:30.876 --> 00:46:34.226
<v Chris>And then if you really want to get classic, you get classic Mac OS,

00:46:34.226 --> 00:46:37.386
<v Chris>then you go into the Apple menu, you go into chooser. Did you ever have to use chooser?

00:46:37.386 --> 00:46:38.346
<v Wes>Yeah. Yeah.

00:46:38.346 --> 00:46:42.995
<v Chris>It's a lot of fun. I'm just thinking. I mean, what else are you going to use? IPX, NetBui?

00:46:43.895 --> 00:46:49.356
<v Chris>Why not use AppleTalk? And then you want a private file sharing network that

00:46:49.356 --> 00:46:52.206
<v Chris>nobody's ever going to discover and nobody's going to come looking for?

00:46:52.206 --> 00:46:53.986
<v Chris>It'd be your local little AppleTalk network.

00:46:54.046 --> 00:46:55.526
<v Wes>You want to try it out here at the studio?

00:46:55.526 --> 00:46:59.316
<v Chris>I mean, I kind of do before they take it away from us. I think it makes sense.

00:46:59.316 --> 00:47:00.938
<v Wes>We got one kernel release left.

00:47:01.478 --> 00:47:04.648
<v Brent>I feel like this deserves a moment of silence. Do you think it does?

00:47:05.306 --> 00:47:06.546
<v Chris>I mean, I'm feeling sad, boys.

00:47:06.546 --> 00:47:10.348
<v Brent>We've got a cone for this, and you can just, you know, grieve in the cone if you'd like.

00:47:16.583 --> 00:47:20.086
<v Brent>Okay, we should totally do this. In the studio. In the studio.

00:47:20.086 --> 00:47:24.126
<v Brent>We should totally. Come on. Have the whole studio just be Apple talk. Wouldn't that work?

00:47:24.946 --> 00:47:25.911
<v Chris>All right, you get over here.

00:47:26.097 --> 00:47:26.726
<v Brent>Oh, yeah.

00:47:26.726 --> 00:47:28.486
<v Chris>I'm for it. I'm officially approving it.

00:47:28.486 --> 00:47:33.758
<v Wes>Do you think if we had like a layer two VPN, we could sort of extend it across the network?

00:47:34.292 --> 00:47:37.676
<v Chris>That's what I was wondering is how you would route it. Because obviously you'd

00:47:37.676 --> 00:47:41.090
<v Chris>want to do that. Could you somehow run it over TCP IP?

00:47:41.822 --> 00:47:43.006
<v Brent>Like an Apple talk mesh?

00:47:43.766 --> 00:47:48.776
<v Chris>Encapsulate it, exactly. Could you encapsulate it? And then you would run it

00:47:48.776 --> 00:47:50.401
<v Chris>over your mesh network on top of IP?

00:47:51.411 --> 00:47:53.553
<v Chris>I don't see why. All right, moving on.

00:47:59.068 --> 00:48:02.175
<v Chris>Well, we may have something for you in the future. We'll have links to all the

00:48:02.175 --> 00:48:03.445
<v Chris>new, there's a lot more stuff.

00:48:03.445 --> 00:48:06.215
<v Chris>We just wanted to kind of cover the highlights and we'll put a link to the new

00:48:06.215 --> 00:48:11.605
<v Chris>stickers over in Jupyter Garage too, if you want to commiserate with me or flex

00:48:11.605 --> 00:48:14.126
<v Chris>that your kernel doesn't mess around with silly files.

00:48:16.750 --> 00:48:19.885
<v Chris>I want to take a moment and thank our members for making this episode possible.

00:48:19.885 --> 00:48:22.723
<v Chris>Members, you now get a free web boost to get your message in.

00:48:23.043 --> 00:48:28.354
<v Chris>You can send one free boost per episode. Also, you get access to the bootleg, a lot more content or

00:48:28.737 --> 00:48:33.115
<v Chris>the lean and mean ad-free version that editor drew puts together also available

00:48:33.115 --> 00:48:36.895
<v Chris>to our members the core contributor applies to this show and the jupiter.party

00:48:36.895 --> 00:48:39.150
<v Chris>is all the shows and all the special features,

00:48:39.661 --> 00:48:43.829
<v Chris>and you members you make it possible thank you very very much we appreciate you.

00:48:46.250 --> 00:48:55.021
<v Brent>We've got a special baller boost here this week from hybrid sarcasm the amount is 61,923 satoshis,

00:48:59.265 --> 00:49:03.885
<v Brent>all right hybrid says i boosted this amount to coder radio when my daughter

00:49:03.885 --> 00:49:08.915
<v Brent>was born three years ago since it's father's day today i figured i would do

00:49:08.915 --> 00:49:10.933
<v Brent>that again so happy father's day.

00:49:11.542 --> 00:49:15.485
<v Chris>Ah that's great oh that brings back the memories thank you hybrid thank you.

00:49:15.485 --> 00:49:19.791
<v Brent>Indeed there's a bit of metadata here too it says uh zap right you guys know anything about that.

00:49:21.045 --> 00:49:22.575
<v Chris>Oh but zap right is web boost.

00:49:22.575 --> 00:49:26.855
<v Brent>Yeah so that's our first baller web boost i would say oh Well.

00:49:26.855 --> 00:49:31.975
<v Chris>It might be. It might be. It might be. It might be. It might be not, though, either.

00:49:32.271 --> 00:49:35.434
<v Chris>Saltros comes in with 24,000 sats.

00:49:39.922 --> 00:49:44.502
<v Chris>Hey, guys, no time, long time, no boost. Soltros, we appreciate you.

00:49:44.728 --> 00:49:47.532
<v Chris>Soltros here. I retired Soltros OS, but I learned a lot.

00:49:47.880 --> 00:49:52.501
<v Chris>Right now, I'm working on Cabinet, a file locker, because I really don't like using NextCloud.

00:49:52.751 --> 00:49:56.401
<v Chris>Anyways, I'm very grateful for all you do. You do incredible work with the podcast,

00:49:56.401 --> 00:49:57.557
<v Chris>and thanks for being you.

00:49:58.155 --> 00:50:01.545
<v Chris>File Locker is a solid, or Cabinet, is a file locker.

00:50:01.911 --> 00:50:05.571
<v Chris>He writes, it's a lean, high-performance file locker designed for self-hosting.

00:50:05.571 --> 00:50:09.393
<v Chris>It prioritizes a fast web experience, a mobile-first design,

00:50:09.544 --> 00:50:12.807
<v Chris>and a simple file management without the bloat or complex syncing.

00:50:13.184 --> 00:50:15.558
<v Wes>That does sound maybe like a very useful thing.

00:50:15.947 --> 00:50:16.851
<v Chris>Yeah, that does look nice.

00:50:16.851 --> 00:50:18.252
<v Wes>Have something that runs somewhere.

00:50:18.641 --> 00:50:21.171
<v Chris>You're sitting on top of like a file share or something like that?

00:50:21.171 --> 00:50:21.613
<v Wes>Uh-huh.

00:50:22.385 --> 00:50:26.451
<v Chris>Optimized for mobile screens, he says. It can be added to your home screen as a progressive web app.

00:50:26.451 --> 00:50:27.690
<v Wes>That's a nice touch.

00:50:28.142 --> 00:50:29.832
<v Chris>Well done, Soltros. Well done.

00:50:30.795 --> 00:50:34.609
<v Wes>Daja Boo Sin with 9,494 sats.

00:50:36.619 --> 00:50:39.687
<v Wes>All right, question for you guys and anyone in the community wants to boost

00:50:39.687 --> 00:50:42.687
<v Wes>in. Do you have any preferred methods of dealing with burnout?

00:50:43.712 --> 00:50:47.337
<v Wes>I used to get rejuvenated by doing something weird with my home lab or joining

00:50:47.337 --> 00:50:51.590
<v Wes>in on a JB challenge, going for a hike, or letting my ADHD pick a random new hobby for me.

00:50:52.030 --> 00:50:56.500
<v Wes>But nowadays, everything seems to just make it worse. Love to hear strategies you guys use.

00:50:57.747 --> 00:51:02.117
<v Chris>Such a good question. It feels like you're always having to evolve the strategies.

00:51:02.117 --> 00:51:03.127
<v Wes>It does feel like it.

00:51:03.127 --> 00:51:06.847
<v Brent>Yeah, I had some answers to this one, but then he mentioned them all as not

00:51:06.847 --> 00:51:08.207
<v Brent>working anymore. So I don't know.

00:51:09.947 --> 00:51:11.367
<v Brent>I'd say get a squirrel. That helps.

00:51:12.040 --> 00:51:15.117
<v Chris>Are you sure about the home lab thing? I mean, sometimes stacking a dub in the

00:51:15.117 --> 00:51:19.547
<v Chris>home lab can help. But I think, you know, what I've been trying to do is get

00:51:19.547 --> 00:51:21.887
<v Chris>outside and do a couple of small things outside. Like I'm trying to,

00:51:22.247 --> 00:51:26.133
<v Chris>I'm currently fighting the biggest fight of my life with poison hemlock.

00:51:26.522 --> 00:51:29.567
<v Chris>So every day I try to get out there, do a little trimming and spraying,

00:51:29.567 --> 00:51:31.657
<v Chris>you know, just stack a little dubs. It isn't related to work.

00:51:31.657 --> 00:51:33.227
<v Chris>I still think there's something to that.

00:51:33.227 --> 00:51:34.407
<v Wes>Yeah, I do agree with that.

00:51:34.407 --> 00:51:37.567
<v Chris>I would wonder, though, if there isn't probably some bigger pressures that are

00:51:37.567 --> 00:51:40.397
<v Chris>just making all this other stuff not as enjoyable. And a lot of times for me

00:51:40.397 --> 00:51:44.097
<v Chris>when that happens, it's like bad sleep, maybe, you know, not eating well.

00:51:44.097 --> 00:51:47.407
<v Chris>So like a couple of issues are compounding, usually like three or more.

00:51:47.407 --> 00:51:49.324
<v Chris>And that's usually when I start to just grind down.

00:51:50.427 --> 00:51:52.099
<v Chris>And you're going to have to kind of address those.

00:51:52.505 --> 00:51:53.607
<v Wes>Yeah, it can be difficult, too,

00:51:53.607 --> 00:51:57.573
<v Wes>if it's, you know, there's pressures and maybe standards or, you know.

00:51:58.722 --> 00:52:05.079
<v Wes>It can be useful maybe to try and unpack why the things that no longer give

00:52:05.079 --> 00:52:08.549
<v Wes>you that, what about them has changed.

00:52:09.351 --> 00:52:10.749
<v Chris>Yeah, or if it's not them, it's changed.

00:52:11.209 --> 00:52:14.879
<v Brent>You may also consider getting a van. It's a really busy hobby that gives you

00:52:14.879 --> 00:52:18.449
<v Brent>all sorts of adventures. So that would be my top advice.

00:52:18.449 --> 00:52:21.693
<v Chris>And it won't financially destroy you quite as much as a boat.

00:52:22.076 --> 00:52:22.569
<v Brent>No, no, no.

00:52:23.150 --> 00:52:24.048
<v Chris>Not as much as a boat.

00:52:24.478 --> 00:52:28.909
<v Wes>Okay, well, we got a second Daja boost here. I'm going to some feedback on,

00:52:30.074 --> 00:52:33.699
<v Wes>local models versus cloud models and that kind of thing I'm in a similar boat

00:52:33.699 --> 00:52:37.959
<v Wes>to PJ as a general rule I don't fully integrate anything into my core day-to-day

00:52:37.959 --> 00:52:42.345
<v Wes>production until I can own it and run it on my own hardware or a VPSI control yeah

00:52:42.583 --> 00:52:45.529
<v Wes>probably I've been listening to Chris's to find networking ad reads for too long,

00:52:46.049 --> 00:52:51.129
<v Wes>but that being said one thing that is handy is that the OpenAI API spec is quickly

00:52:51.129 --> 00:52:54.969
<v Wes>turning into S3 of the AI world so in the interim even with the cloud models

00:52:54.969 --> 00:52:58.193
<v Wes>I can run them through a proxy Yeah. Which is, I think, a good tip.

00:52:58.448 --> 00:53:02.799
<v Chris>I think, too, that we're probably not injecting into the conversation very much

00:53:02.799 --> 00:53:06.499
<v Chris>is the potential and possibility of people running their own injector that sits

00:53:06.499 --> 00:53:07.709
<v Chris>in front of these cloud models.

00:53:08.387 --> 00:53:13.269
<v Chris>Which could be your way to make sure certain secrets or certain things you don't

00:53:13.269 --> 00:53:16.949
<v Chris>want shared, a way to route between the free available models. There's a lot.

00:53:17.429 --> 00:53:19.469
<v Chris>I mean, we really could almost do a whole stream just on the,

00:53:19.469 --> 00:53:21.219
<v Chris>we should do a stream on the injector stuff.

00:53:21.219 --> 00:53:22.029
<v Wes>That's a good idea.

00:53:22.029 --> 00:53:24.949
<v Chris>Yeah, because there's a lot there that I think would address some of the concerns

00:53:24.949 --> 00:53:28.981
<v Chris>of our audience. Thank you, Daja. Great boost. Good to hear from you.

00:53:29.382 --> 00:53:36.549
<v Brent>There's a boost here from Not Sure. It's a row of ducks. Web boost changes everything. Great work.

00:53:37.474 --> 00:53:44.309
<v Chris>Great. Glad you like it, Not Sure. Good to hear from you. Gene Bean's here with 7,777 sets.

00:53:46.651 --> 00:53:50.898
<v Chris>I am super excited about the U-clock, Chris. I wanted a nice-looking Home Assistant

00:53:50.898 --> 00:53:52.717
<v Chris>controllable alarm clock for my son.

00:53:53.861 --> 00:53:55.950
<v Chris>I already have him waking up with lighting in Home Assistant.

00:53:56.363 --> 00:53:59.938
<v Chris>Until then, alarms have been an Echo Dot thing. I just ordered the clock,

00:53:59.938 --> 00:54:00.868
<v Chris>and I can't wait to play with it.

00:54:00.868 --> 00:54:01.658
<v Wes>That is great.

00:54:01.658 --> 00:54:05.938
<v Chris>You know what, Gene? That's such a great—it's so much more useful than the Echo

00:54:05.938 --> 00:54:07.886
<v Chris>Dot. It's so much more useful.

00:54:08.257 --> 00:54:12.948
<v Chris>I, again, saved my bacon. This time on the—I think it was the fridge last time.

00:54:12.948 --> 00:54:14.898
<v Chris>It was the freezer this time, or vice versa.

00:54:15.664 --> 00:54:19.938
<v Chris>I saved our bacon and the other thing I added was now a three minute warning

00:54:19.938 --> 00:54:23.578
<v Chris>when the freezer door has been open for more than that's nice yeah just a little

00:54:23.578 --> 00:54:24.658
<v Chris>warning there on the thing.

00:54:24.658 --> 00:54:25.698
<v Wes>I kind of want that.

00:54:25.698 --> 00:54:29.278
<v Chris>It's if you clock is great if you don't know what we're talking about I think

00:54:29.278 --> 00:54:32.718
<v Chris>I buried the lead a lot by putting what is probably one of my favorite gadgets

00:54:32.718 --> 00:54:36.694
<v Chris>of the year so far casually as a pick last week but sometimes the picks hit,

00:54:37.136 --> 00:54:38.192
<v Chris>sometimes those picks hit.

00:54:39.078 --> 00:54:42.488
<v Wes>Yeah Nathan bussin with 2223 sets.

00:54:44.032 --> 00:54:44.318
<v Chris>Love it.

00:54:44.758 --> 00:54:51.168
<v Wes>Looking forward to trying windows mcb anything to spend less time remoting in fixing it's s.

00:54:51.168 --> 00:54:56.018
<v Chris>You get it nathan you get it that's it oh god when you it was in the clip the

00:54:56.018 --> 00:54:58.308
<v Chris>moment i realized oh i'm not gonna

00:54:58.308 --> 00:55:02.080
<v Chris>have to use windows hardly at all ever anymore like it's already rare.

00:55:02.938 --> 00:55:03.815
<v Wes>Now it's even more rare.

00:55:04.837 --> 00:55:08.778
<v Chris>And also like if a family member really needs help i got an option that's really,

00:55:09.438 --> 00:55:11.548
<v Chris>that's the one that gets me it's huge.

00:55:12.517 --> 00:55:17.458
<v Brent>Well aaron boosted in with uh one two three four five sets,

00:55:22.349 --> 00:55:26.129
<v Brent>I know it's only ever played in the bootleg of the show, but my favorite AI

00:55:26.129 --> 00:55:32.379
<v Brent>song you have made is the time-killing song you play sometimes during the pre-show break.

00:55:33.139 --> 00:55:38.609
<v Brent>Can you share that with the audience somehow? I think it would be fun to use

00:55:38.609 --> 00:55:42.459
<v Brent>the college acapella group profile on.

00:55:44.719 --> 00:55:45.389
<v Wes>I like this.

00:55:45.389 --> 00:55:46.980
<v Chris>We do have we have yet to do this.

00:55:58.405 --> 00:55:59.206
<v Chris>Yeah, it's a fun song.

00:55:59.363 --> 00:56:00.762
<v Brent>I've never heard this one before.

00:56:01.197 --> 00:56:05.233
<v Chris>It's because you're always out having a break. We play it when you're away from the song.

00:56:05.233 --> 00:56:07.573
<v Brent>Is that right? What else do you play when I'm gone?

00:56:07.573 --> 00:56:10.845
<v Chris>The song may be all about you for all you know. I don't know.

00:56:11.687 --> 00:56:15.103
<v Chris>One day we'll figure out a way to post those AA rounds. We do need to figure

00:56:15.103 --> 00:56:17.513
<v Chris>that out. Just, there's a lot to do.

00:56:20.323 --> 00:56:23.092
<v Chris>All right, Budai comes in with a row of duck-a-ducks.

00:56:23.765 --> 00:56:24.733
<v Wes>Oh, with a flex.

00:56:25.033 --> 00:56:28.781
<v Chris>Okay, what do we got here? Here we have LS piped into a word count,

00:56:29.753 --> 00:56:34.653
<v Chris>eight, which I treat my download. Oh, talking about he's got eight files in his download folder.

00:56:35.793 --> 00:56:38.550
<v Chris>Finally, I wanted more people to give us this. I want to know.

00:56:38.829 --> 00:56:40.582
<v Chris>I'm not going to reveal mine until we get a few of these.

00:56:40.948 --> 00:56:45.153
<v Chris>I treat my downloads folder like slash temp. It even gets cleared on reboot.

00:56:45.153 --> 00:56:47.693
<v Wes>Oh, that's wild. I love that.

00:56:47.693 --> 00:56:50.085
<v Brent>So eight actually feels pretty high in this case.

00:56:50.677 --> 00:56:53.733
<v Chris>I'm going to definitely admit that I do not clear it out on reboot,

00:56:53.733 --> 00:56:59.454
<v Chris>boys. Let's see if I can just tell you the oldest file in my downloads folder.

00:57:02.653 --> 00:57:05.953
<v Wes>Bad to Hi goes on to say, if there was something on there that I needed and

00:57:05.953 --> 00:57:08.609
<v Wes>got deleted, then I didn't need it that much.

00:57:08.997 --> 00:57:09.410
<v Brent>Good point.

00:57:09.979 --> 00:57:12.153
<v Chris>Okay. All right. That's not as bad as...

00:57:12.213 --> 00:57:12.913
<v Wes>There's a certain zen to it.

00:57:12.913 --> 00:57:17.477
<v Chris>Oh, I cleaned up. It's not as bad as I expected. It's going into last year.

00:57:17.756 --> 00:57:20.368
<v Chris>I'll just leave it at that. If we get more, I might reveal.

00:57:20.479 --> 00:57:23.583
<v Brent>I wonder what the mechanism is here. I'd be curious about that.

00:57:23.583 --> 00:57:25.383
<v Wes>Mechanism for cleaning?

00:57:25.383 --> 00:57:30.023
<v Chris>A little boot script? Yeah, we'd love to know. How are you actually cleaning that?

00:57:30.023 --> 00:57:34.561
<v Brent>Just a little RMRF as a boot script. That's not dangerous at all.

00:57:34.759 --> 00:57:36.587
<v Chris>Tomato comes in with 5,000 SATs.

00:57:39.309 --> 00:57:43.737
<v Chris>It's a boost. The one reason I'm sometimes I have to use Windows is when the

00:57:43.737 --> 00:57:47.867
<v Chris>latest DDRM tools, ah, for the Kindle, stop working with Linux.

00:57:47.867 --> 00:57:48.187
<v Brent>Oh.

00:57:48.187 --> 00:57:51.546
<v Chris>This Windows MCP thing sounds like it might just save my Unix bacon here.

00:57:51.703 --> 00:57:55.077
<v Wes>Nice. I haven't even thought of that. You should let us know how that goes.

00:57:55.077 --> 00:57:59.301
<v Chris>I'd be very curious. That is a great use case, Tomato. Please keep us boosted on that one.

00:57:59.621 --> 00:58:03.783
<v Wes>Distro Stew boosting in with 12,345 sets.

00:58:06.308 --> 00:58:07.823
<v Brent>Okay.

00:58:08.705 --> 00:58:10.437
<v Wes>I came to test out the web.

00:58:10.437 --> 00:58:14.683
<v Chris>Boost Looking good Nice I don't know why you boosted with Windows XP though That's weird.

00:58:15.032 --> 00:58:19.737
<v Wes>And And Here's my Nix router config.

00:58:19.737 --> 00:58:23.507
<v Chris>First web boost with a link First web boost with a link boys That's cool We got.

00:58:23.507 --> 00:58:24.377
<v Wes>A flake here Ooh.

00:58:24.377 --> 00:58:28.087
<v Chris>Router.nix Wonder what's in here Let's go check out that router.nix Oh he's

00:58:28.087 --> 00:58:34.447
<v Chris>using ZFS On his router I love it That's great Couple interfaces here.

00:58:34.447 --> 00:58:40.202
<v Wes>We got DNS mask Yep Oh, uh, Kia for DHCP. Nice.

00:58:41.229 --> 00:58:44.267
<v Chris>I could look at these configs all day. I really could. I also like,

00:58:44.267 --> 00:58:46.587
<v Chris>I'd like to start at the flake and you gotta, you gotta, you gotta go through

00:58:46.587 --> 00:58:48.997
<v Chris>the main config and then get to the, you gotta, you're jumping ahead.

00:58:48.997 --> 00:58:50.755
<v Chris>You're going to the end of the book. I gotta say.

00:58:51.377 --> 00:58:54.012
<v Wes>Well, I wanted to get to the good stuff. We only have so much time.

00:58:54.564 --> 00:58:57.785
<v Chris>Whomever whiz comes in with 9,009 sats.

00:59:00.316 --> 00:59:03.885
<v Chris>I really wanted to clip some audio for you from the Star Trek The Next Generation,

00:59:03.885 --> 00:59:06.465
<v Chris>but I didn't even know what episode it was in. I realized, however,

00:59:06.465 --> 00:59:09.615
<v Chris>the subtitles exist. So instead of just clipping the audio, I made a tool to

00:59:09.615 --> 00:59:12.765
<v Chris>easily clip dialogue from any video in your library. Check it out.

00:59:13.305 --> 00:59:15.727
<v Chris>Wecker. W-E-C-K-E-R.

00:59:16.314 --> 00:59:19.825
<v Chris>Also, you could have just told us the line and we would have told you the episode it's from.

00:59:20.345 --> 00:59:21.985
<v Wes>But I love the idea of this tool.

00:59:21.985 --> 00:59:24.855
<v Chris>I don't think the repository is public yet, but it's a great idea.

00:59:24.855 --> 00:59:26.791
<v Chris>Check out. Oh, Quip Clipper.

00:59:27.372 --> 00:59:31.405
<v Chris>We need this in our lives so bad. we're constantly trying to figure out how

00:59:31.405 --> 00:59:32.585
<v Chris>we could take little sound bits.

00:59:33.333 --> 00:59:35.035
<v Chris>So we'd love to keep this thing fresh all the time.

00:59:36.125 --> 00:59:38.982
<v Chris>And just as an aside, if anybody ever wanted to help us,

00:59:39.718 --> 00:59:45.756
<v Chris>if you have like, say, a backup MKV file of an episode or a movie that's in 5.1 stereo,

00:59:46.244 --> 00:59:50.065
<v Chris>if you were to open that MKV file in an application like Reaper or anything

00:59:50.065 --> 00:59:53.195
<v Chris>that supports multi-track editing, you might be surprised to learn that often

00:59:53.195 --> 00:59:56.395
<v Chris>the dialogue is isolated on its own track and you can extract it from all the

00:59:56.395 --> 00:59:58.040
<v Chris>other background noises to a certain degree.

00:59:58.811 --> 01:00:02.005
<v Chris>Just if you didn't know that. Whomever, Wiz, thank you very much for the boost.

01:00:02.005 --> 01:00:03.728
<v Chris>We really do appreciate you on that.

01:00:04.460 --> 01:00:11.209
<v Brent>Well, I'm going to sneaky pull one up here. Todd from Northern VA with 1,200 sats.

01:00:12.475 --> 01:00:17.255
<v Brent>He says, long time no boost, but this is a test boost after resurrecting my

01:00:17.255 --> 01:00:19.955
<v Brent>node after one plus year of downtime.

01:00:20.295 --> 01:00:22.735
<v Wes>Nicely done. Test boost received.

01:00:22.735 --> 01:00:25.774
<v Brent>Todd, we know exactly how that feels. We have that problem too.

01:00:27.068 --> 01:00:31.225
<v Chris>That's great. Greg the lawyer sent in 50 fiat dollars.

01:00:34.593 --> 01:00:37.812
<v Chris>Using the web boost to say, keep up the great work. Thank you, Greg.

01:00:37.812 --> 01:00:38.332
<v Brent>Thank you.

01:00:38.332 --> 01:00:42.282
<v Chris>Nice to hear you. What kind of lawyering do you do, Greg? Always love to know

01:00:42.282 --> 01:00:45.222
<v Chris>that kind of stuff. That's awesome. Thank you very much. Appreciate it.

01:00:45.500 --> 01:00:49.047
<v Wes>Carl N. comes in with $25 via Zapparat Fiat.

01:00:50.922 --> 01:00:51.161
<v Chris>Woo!

01:00:53.535 --> 01:00:54.051
<v Chris>Bah, bah.

01:00:54.899 --> 01:00:58.262
<v Wes>Easy in my guild for writing on the self-hosted membership deal for so long.

01:00:58.582 --> 01:01:00.792
<v Wes>Thanks for clinker therapy. Really enjoyed it.

01:01:00.792 --> 01:01:04.211
<v Chris>I'm glad you liked it. Thank you very much. Appreciate it.

01:01:04.796 --> 01:01:08.905
<v Brent>Well, Brad sent in 20 fiat dollars.

01:01:10.066 --> 01:01:13.422
<v Brent>I enjoyed the Clanker Therapy recording and all that Hermes info.

01:01:13.802 --> 01:01:17.832
<v Brent>More links and examples would be appreciated. Love the easier to contribute

01:01:17.832 --> 01:01:20.112
<v Brent>web boost option with this fiat.

01:01:20.112 --> 01:01:22.432
<v Chris>Awesome. Thank you. Sire came

01:01:22.432 --> 01:01:26.302
<v Chris>in with $5. Finally, a great way to spend my hard-earned fiat currency.

01:01:29.211 --> 01:01:31.608
<v Chris>Yeah, get rid of that dirty fiat. Throw it at us. That's fine.

01:01:32.482 --> 01:01:34.232
<v Chris>We had a couple of member boosts come in too.

01:01:34.232 --> 01:01:35.022
<v Wes>More than a couple.

01:01:35.662 --> 01:01:36.391
<v Chris>Yeah, it's new.

01:01:36.589 --> 01:01:37.062
<v Wes>It's new.

01:01:37.062 --> 01:01:38.512
<v Chris>It's new. So we should expect that.

01:01:38.512 --> 01:01:39.636
<v Wes>Uh-huh. It's exciting.

01:01:40.302 --> 01:01:43.851
<v Chris>Now, some of you decide to go anonymous. You can put your name in there in the field.

01:01:44.228 --> 01:01:48.077
<v Chris>It is all right. We would still like it. Anonymous boosts in with two boosts here.

01:01:48.442 --> 01:01:52.992
<v Chris>IDK about folder numbers, but I do know my Bitcoin numbers. And with Bitcoin

01:01:52.992 --> 01:01:55.501
<v Chris>under 100K, USD member boosts are a steal.

01:01:56.227 --> 01:01:59.797
<v Chris>But will you increase membership prices when the price goes above 100,000?

01:02:00.215 --> 01:02:02.512
<v Chris>We haven't really ever adjusted. I mean, if you think about it,

01:02:02.512 --> 01:02:05.842
<v Chris>I think at one point it was around 16 or so when we started.

01:02:05.842 --> 01:02:06.413
<v Wes>Yeah, true.

01:02:06.605 --> 01:02:09.352
<v Chris>And we've always just kind of kept it what it is because we don't really denominate

01:02:09.352 --> 01:02:14.082
<v Chris>in dollars. We denominate in sats. So it's just a sats a sat really is kind

01:02:14.082 --> 01:02:17.812
<v Chris>of how we think about it. But I suppose anything's always up for reevaluation

01:02:17.812 --> 01:02:18.720
<v Chris>if you have a better idea.

01:02:19.051 --> 01:02:21.292
<v Chris>Somebody sends us a really great idea. You know, why not?

01:02:21.588 --> 01:02:21.936
<v Wes>Mm hmm.

01:02:23.387 --> 01:02:26.676
<v Wes>Ah, TimeKillerTK comes in with a member boost.

01:02:26.676 --> 01:02:27.845
<v Chris>Ooh, I like that name.

01:02:28.031 --> 01:02:30.766
<v Wes>Long-time listener since the days of TechSnap with Alan.

01:02:30.766 --> 01:02:31.286
<v Chris>Right on.

01:02:31.286 --> 01:02:35.166
<v Wes>Loved Clanker Therapy? Please do more. Zip code boost?

01:02:35.166 --> 01:02:39.293
<v Chris>Oh, great. All right, so we got a zip code boost and a plus one for Clanker Therapy.

01:02:39.444 --> 01:02:39.836
<v Wes>Yeah.

01:02:39.836 --> 01:02:45.936
<v Chris>Okay, so here's the numbers, Wes. Three, three, three, L-E.

01:02:46.336 --> 01:02:46.606
<v Wes>Oh.

01:02:46.606 --> 01:02:47.716
<v Brent>No, no, you missed a three.

01:02:48.871 --> 01:02:49.506
<v Chris>Oh, did I?

01:02:49.506 --> 01:02:49.916
<v Brent>Yeah.

01:02:50.038 --> 01:02:52.575
<v Wes>How many three? I need to know the right number of threes here.

01:02:53.022 --> 01:02:55.266
<v Chris>Oh, the blurry vision. It looks like three threes to me.

01:02:55.266 --> 01:02:56.376
<v Wes>Brent, how many threes am I working on?

01:02:56.576 --> 01:02:58.046
<v Chris>There's four threes. There are four threes.

01:02:58.046 --> 01:03:02.056
<v Brent>One, two, yeah. It says three, three, three, three, L-E.

01:03:02.376 --> 01:03:06.529
<v Chris>There are four lights. There are four lights. It is true.

01:03:06.877 --> 01:03:08.356
<v Wes>Okay. Well, my man.

01:03:08.356 --> 01:03:09.926
<v Brent>Are you playing on your map? I don't quite.

01:03:09.926 --> 01:03:10.226
<v Wes>Yeah.

01:03:10.226 --> 01:03:12.067
<v Chris>Yeah, I don't hear it, Wes. Oh.

01:03:12.171 --> 01:03:12.496
<v Brent>Oh.

01:03:12.496 --> 01:03:12.936
<v Chris>There it is.

01:03:12.936 --> 01:03:14.896
<v Brent>For a minute there, I thought he had a silent map.

01:03:15.608 --> 01:03:16.827
<v Chris>Yeah, well, he did for a while.

01:03:19.056 --> 01:03:19.386
<v Wes>Okay.

01:03:19.386 --> 01:03:20.016
<v Chris>What you got there, Wes?

01:03:21.196 --> 01:03:27.328
<v Wes>If I've picked the right continent, you never know. It is in the town of Zwingsdrecht,

01:03:28.076 --> 01:03:29.716
<v Wes>in South Holland, Netherlands.

01:03:29.716 --> 01:03:31.293
<v Chris>Sounds probably just like you. Nice.

01:03:31.432 --> 01:03:34.660
<v Wes>I probably butchered that, so tell us, boost back in. Thank you, Time Killer.

01:03:35.008 --> 01:03:36.556
<v Chris>Thank you, Time Killer. Appreciate you.

01:03:36.556 --> 01:03:37.196
<v Wes>That's great.

01:03:37.196 --> 01:03:37.725
<v Chris>All right, Bradley.

01:03:37.980 --> 01:03:40.981
<v Brent>Gong Fuja boosted in a member's boost.

01:03:41.167 --> 01:03:41.596
<v Chris>Hmm.

01:03:43.842 --> 01:03:49.221
<v Brent>Loving the content and extras for members. I actually agree with producer Jeff

01:03:49.221 --> 01:03:51.418
<v Brent>here on the idea of using AI.

01:03:51.830 --> 01:03:55.781
<v Brent>I agree it is helpful and open source will catch up in the end,

01:03:55.781 --> 01:04:01.292
<v Brent>but I don't like short cutting knowledge and not really learning it as a result,

01:04:01.443 --> 01:04:03.340
<v Brent>especially when things go wrong.

01:04:03.572 --> 01:04:07.241
<v Chris>I think we had an interesting follow-up chat today on that. PJ has really been

01:04:07.241 --> 01:04:09.104
<v Chris>diving in deep on the local model stuff.

01:04:09.406 --> 01:04:13.383
<v Chris>We've got a good local model combo in the bootleg today. So I'd like to know what you think, Gong.

01:04:13.921 --> 01:04:17.761
<v Wes>And I think part of, you know, playing with the tools is learning how to set

01:04:17.761 --> 01:04:19.281
<v Wes>them up so that it does work for you, right?

01:04:19.281 --> 01:04:23.041
<v Wes>So you do find the right, like, where do you offload and where do you inspect

01:04:23.041 --> 01:04:26.421
<v Wes>or follow up or gatekeep or, you know, like, where do you set the gates in your

01:04:26.421 --> 01:04:29.271
<v Wes>workflow and which pieces do you focus on?

01:04:29.904 --> 01:04:32.161
<v Wes>And that'll probably be different for a lot of different people.

01:04:32.161 --> 01:04:36.231
<v Chris>What are you really trying to get done? That really is the defining thing which

01:04:36.231 --> 01:04:37.665
<v Chris>you'd expect from a local model right now.

01:04:38.170 --> 01:04:41.841
<v Wes>Well, and like you can have different, you know, some folks might vibe stuff

01:04:41.841 --> 01:04:43.029
<v Wes>up and throw it up and test it.

01:04:43.330 --> 01:04:46.721
<v Wes>it's kind of smoke test it live but you you could you know have a proposing

01:04:46.721 --> 01:04:49.781
<v Wes>architecture and then you walk through every piece with it and then it sets

01:04:49.781 --> 01:04:52.879
<v Wes>it up you know you could do take totally different approaches in terms of like

01:04:53.211 --> 01:04:54.644
<v Wes>how involved you were at each step.

01:04:55.991 --> 01:05:01.611
<v Chris>Sensor smile comes in with a member boost long time listener since 2013,

01:05:04.691 --> 01:05:08.211
<v Chris>first time booster call me a curmudgeon but i'm not going to try crypto in this

01:05:08.211 --> 01:05:12.034
<v Chris>life after hearing all these boosts all these years i can finally send in a Message as a member.

01:05:12.411 --> 01:05:14.941
<v Chris>I'll be sure to send some USD when I can in the future. Thanks and keep them

01:05:14.941 --> 01:05:17.011
<v Chris>coming. Glad to make it happen for you.

01:05:17.011 --> 01:05:17.371
<v Brent>Amazing.

01:05:17.371 --> 01:05:19.563
<v Chris>Sensor smile. Welcome to the Boost Club.

01:05:21.641 --> 01:05:26.839
<v Wes>Uh, whomever wheeves boosts in here, um, maybe it's a follow-up boost from before

01:05:26.839 --> 01:05:32.399
<v Wes>because one cool thing I did with Quip Clipper was batch export all the lines from TNG.

01:05:32.399 --> 01:05:37.169
<v Chris>Resistance is... No way! You could batch line all the Resistance is Feudal lines?

01:05:37.169 --> 01:05:37.609
<v Brent>Oh my goodness.

01:05:37.609 --> 01:05:40.839
<v Wes>It works perfectly with only a few clicks, and I also made it so you can export

01:05:40.839 --> 01:05:42.109
<v Wes>just the center channel.

01:05:42.109 --> 01:05:43.079
<v Chris>That is legit.

01:05:43.079 --> 01:05:43.929
<v Brent>Oh, wow.

01:05:43.929 --> 01:05:45.329
<v Chris>What? I was just saying that!

01:05:45.329 --> 01:05:46.049
<v Wes>You sure were.

01:05:46.049 --> 01:05:49.319
<v Chris>That is so good. Yeah, look at this. He sent us some copies of it,

01:05:49.319 --> 01:05:52.309
<v Chris>too. That is good work. Well done, sir.

01:05:56.249 --> 01:05:59.866
<v Chris>So he's got all the resistances futile now? I'm jelly.

01:06:01.555 --> 01:06:05.219
<v Chris>Aw, Hugh. Aw, that's nice. That one's a good one.

01:06:05.219 --> 01:06:08.129
<v Wes>Yeah, you should. You got to send us an updated link because we got,

01:06:08.129 --> 01:06:11.669
<v Wes>I think, maybe just your GitHub profile, but not, I want to try this.

01:06:11.669 --> 01:06:16.393
<v Chris>Yeah, that is wicked, dude. That's great. Who's next?

01:06:16.782 --> 01:06:17.489
<v Wes>Marcel.

01:06:17.489 --> 01:06:21.124
<v Chris>All right. Marcel comes in with a free member boost.

01:06:21.576 --> 01:06:26.089
<v Chris>You can read higher voltages with it. Oh, good. Yes, with using an ESP resistor

01:06:26.089 --> 01:06:30.859
<v Chris>divider. It basically maps 0 to 12 volts to 0.3 volts. Yes, I do know about

01:06:30.859 --> 01:06:34.545
<v Chris>this. It's not my preferred way to measure this voltage.

01:06:35.044 --> 01:06:37.912
<v Chris>Brent, we've talked about this before. It's not quite ideal.

01:06:38.086 --> 01:06:43.719
<v Brent>Yeah, we did play with this when we were doing that diesel heater reverse engineering

01:06:43.719 --> 01:06:47.009
<v Brent>because we had several strange issues.

01:06:47.009 --> 01:06:51.149
<v Brent>And voltage was one thing that helped with diagnosing a bunch of stuff.

01:06:51.149 --> 01:06:54.671
<v Brent>So we did use a resistor to do exactly this.

01:06:55.321 --> 01:07:00.509
<v Brent>But you kind of end up, I think, in the car with diagnostics and stuff,

01:07:00.509 --> 01:07:03.939
<v Brent>you end up with like, remember, Chris, I had like wires everywhere and like

01:07:03.939 --> 01:07:07.365
<v Brent>little tiny components and resistors and like transistors and stuff.

01:07:11.114 --> 01:07:14.394
<v Brent>Yeah, a dedicated device would be really nice. Something also that,

01:07:14.394 --> 01:07:17.154
<v Brent>you know, if you drop it, it doesn't fall into a million pieces.

01:07:17.994 --> 01:07:19.294
<v Wes>So mostly a packaging issue.

01:07:19.875 --> 01:07:22.614
<v Chris>I also wonder, could there be a slight resolution loss?

01:07:22.614 --> 01:07:23.654
<v Brent>Yeah, that's a good point.

01:07:23.654 --> 01:07:26.454
<v Chris>Because we're looking at really micro measurements here.

01:07:26.514 --> 01:07:29.634
<v Brent>Mm-hmm, mm-hmm. So that's something to consider. Depends what you're doing.

01:07:29.634 --> 01:07:34.204
<v Chris>But Marcel, I think it's in the category of worth me playing around with because

01:07:34.204 --> 01:07:37.414
<v Chris>I think I have most of the components I need to actually try it. so.

01:07:37.954 --> 01:07:41.854
<v Wes>I like that marcel's clearly paying attention because there's this line there's

01:07:41.854 --> 01:07:44.624
<v Wes>lots of online calculators or i'm sure data could help you.

01:07:44.624 --> 01:07:48.778
<v Chris>With it he was paying attention but i like this last line.

01:07:49.805 --> 01:07:54.658
<v Brent>Uh just be careful because you could easily fry the esp with that 12 volts he got over there.

01:07:55.261 --> 01:07:56.354
<v Chris>Yeah that is true.

01:07:56.354 --> 01:07:59.364
<v Wes>Have done which is another thing to consider perhaps in that you have to just

01:07:59.364 --> 01:08:00.816
<v Wes>navigate that with part of the setup.

01:08:00.938 --> 01:08:05.384
<v Chris>I i think you know my route's probably going to be a meter that has a usb port

01:08:05.384 --> 01:08:07.173
<v Chris>on it that can talk to a linux box

01:08:07.596 --> 01:08:12.914
<v Chris>it's just there's the perfect devices available if you're in europe that are

01:08:13.254 --> 01:08:18.283
<v Chris>just exactly what i'm looking for but with with taxes and shipping to get two of them,

01:08:18.857 --> 01:08:24.726
<v Chris>is almost 300 and they're like 40 to 60 devices if you do the conversion.

01:08:25.150 --> 01:08:26.688
<v Wes>Should you just toss a link in here i'm curious.

01:08:26.985 --> 01:08:30.944
<v Chris>Yeah i need to find them um they're It just, you know, like when you have like

01:08:30.944 --> 01:08:34.174
<v Chris>a dream device, it's funny that it's like a $50 device or something like that.

01:08:34.174 --> 01:08:36.018
<v Chris>And that's, we'd love to have two of those.

01:08:36.771 --> 01:08:39.756
<v Chris>It's just the way the world works right now. Tomatoes here with a member boost.

01:08:40.086 --> 01:08:43.704
<v Chris>I'm trying out the free web boost, but I have to say boo for the cloud flare

01:08:43.704 --> 01:08:48.074
<v Chris>nonsense, boosting two shows in a row. And I had to prove I'm not some bad actor. Heck no.

01:08:49.274 --> 01:08:54.574
<v Chris>So this was we were experimenting with serverless to essentially avoid spinning

01:08:54.574 --> 01:08:59.974
<v Chris>up even more VPS servers with NGINX and stuff that we're running hundreds of.

01:09:01.534 --> 01:09:06.475
<v Chris>So we'll see. You know, I'm always a little skeptical on the Cloudflare side myself.

01:09:07.868 --> 01:09:12.431
<v Wes>Greg, the lawyer member boosts in, boosting in to say, keep up the good work.

01:09:13.151 --> 01:09:15.450
<v Chris>Thank you, Greg. Hello. And again, thank you.

01:09:15.844 --> 01:09:19.392
<v Brent>We also have a leaky canoe member with a members boost.

01:09:21.098 --> 01:09:26.533
<v Brent>Plus one for topical live streams off the main feed. I followed Chris,

01:09:26.533 --> 01:09:30.283
<v Brent>Chris's lead after the clanker therapy stream and set up a multi-agent setup

01:09:30.283 --> 01:09:35.465
<v Brent>and deployed wrappers for the critical functions. I want my agents to accomplish.

01:09:36.186 --> 01:09:42.746
<v Brent>However, I'd like to ask, how do you handle when your agents are, quote, moving too fast?

01:09:43.180 --> 01:09:46.246
<v Chris>It's usually a gap in the skill.

01:09:46.634 --> 01:09:50.547
<v Chris>And so they're just kind of going off on their own and trying to figure it out,

01:09:50.674 --> 01:09:52.502
<v Chris>just using tool calls and whatnot.

01:09:53.313 --> 01:09:57.293
<v Chris>So you might see if maybe there's a little more implicit instructions you can

01:09:57.293 --> 01:09:59.343
<v Chris>give in the skill. Any thoughts on that, Wes?

01:09:59.343 --> 01:10:03.873
<v Wes>Yeah, maybe more some sort of gate or interaction point. or.

01:10:04.924 --> 01:10:07.863
<v Chris>Yeah approval gates are good too if they're having a problem you could always

01:10:07.863 --> 01:10:11.658
<v Chris>say okay stop here and you know put approval gate in that does work pretty well

01:10:11.942 --> 01:10:13.881
<v Chris>and that's sometimes the way you can work through the problem.

01:10:13.986 --> 01:10:17.873
<v Wes>I also like if you you know if you make them work in super small increments

01:10:17.873 --> 01:10:22.293
<v Wes>and maybe you could have checkpoints or have them at regular intervals use various

01:10:22.293 --> 01:10:28.243
<v Wes>you know other agents or sub agents for review as a way to sort of quote unquote slow things down yeah.

01:10:29.966 --> 01:10:33.734
<v Chris>Let us know how it goes, Leaky. Stuart comes in with a member boost,

01:10:33.734 --> 01:10:35.719
<v Chris>saying excited to see a web boost option.

01:10:36.299 --> 01:10:39.014
<v Chris>Getting AlbiHub set up has always been on my backlog. I'm sure I'm going to

01:10:39.014 --> 01:10:41.471
<v Chris>get to it eventually, but this is nice in the meantime.

01:10:41.855 --> 01:10:44.684
<v Chris>I found self-host about six months before it ended, and I decided to come over

01:10:44.684 --> 01:10:47.754
<v Chris>and give LUP a chance. Been a fan since. Well, I'm glad you did, Stuart.

01:10:47.754 --> 01:10:48.426
<v Brent>Nice.

01:10:48.757 --> 01:10:49.523
<v Chris>Nice to hear from you.

01:10:51.118 --> 01:10:56.476
<v Brent>Well, this one's from Pavel, who's a friend from Berlin that I met.

01:10:57.701 --> 01:11:01.265
<v Brent>testing this good old member boost functionality.

01:11:01.660 --> 01:11:02.304
<v Chris>It worked.

01:11:02.420 --> 01:11:03.251
<v Brent>Good to see you.

01:11:04.830 --> 01:11:09.868
<v Wes>Bobby member boost in woohoo less friction more inclination to boost thoughts

01:11:10.211 --> 01:11:13.914
<v Wes>to that end i'm beginning to get it ai i mean been playing with some of the

01:11:13.914 --> 01:11:17.734
<v Wes>stuff you talk about burning question though are you running llms.

01:11:17.734 --> 01:11:19.724
<v Chris>Locally isn't that always the burning question if so.

01:11:19.724 --> 01:11:23.254
<v Wes>What is that magic hardware want to self-host where possible.

01:11:24.014 --> 01:11:28.134
<v Chris>Don't we all that's been one of our kind of two week theme conversations in

01:11:28.134 --> 01:11:31.494
<v Chris>the bootleg is like what can you actually do locally and the answer is not a

01:11:31.494 --> 01:11:34.004
<v Chris>lot right now getting to be better.

01:11:34.004 --> 01:11:36.114
<v Wes>But we have a producer actively researching.

01:11:36.114 --> 01:11:40.624
<v Chris>Yeah pj's on the case and uh he's reporting back good question also shout out

01:11:40.624 --> 01:11:46.782
<v Chris>to zippy frog did a test boost and space warlock came in with a member boost his first boost,

01:11:49.446 --> 01:11:52.391
<v Chris>This is great. I haven't found an iOS Matrix client I like, and I'm not usually

01:11:52.391 --> 01:11:55.171
<v Chris>at my desk during the live streams. I've been hoping for this ever since you

01:11:55.171 --> 01:11:56.633
<v Chris>did Texas Linux Fest last year.

01:11:56.964 --> 01:11:59.791
<v Chris>Thanks for getting this figured out. Thank you, Warlock.

01:11:59.791 --> 01:12:00.271
<v Brent>Thank you.

01:12:00.271 --> 01:12:01.221
<v Chris>Nice to hear from you.

01:12:01.221 --> 01:12:04.631
<v Wes>Hey, props to Chris, who got the whole front end done.

01:12:04.951 --> 01:12:09.439
<v Chris>Oh, please. It wouldn't be anything without the fancy back end and reporting, Westpain.

01:12:10.379 --> 01:12:13.911
<v Wes>Scuffed member boosts in. Free member boosting check-in.

01:12:13.911 --> 01:12:14.381
<v Chris>Yeah.

01:12:14.381 --> 01:12:19.281
<v Wes>Nice. And then we got Jimmy member boosting in. Okay, this is one I've been looking forward to.

01:12:19.281 --> 01:12:19.562
<v Chris>Okay.

01:12:20.631 --> 01:12:24.721
<v Wes>It's dressed to me, so this is appropriate, at Wes. Do you remember how Chris

01:12:24.721 --> 01:12:26.311
<v Wes>fell in love with another man's van?

01:12:27.251 --> 01:12:30.051
<v Wes>Are we really sure it is another man's van?

01:12:31.111 --> 01:12:36.791
<v Wes>I'm a bit fussy on details, you see, but I'm pretty sure it's not actually another man's van.

01:12:36.811 --> 01:12:39.931
<v Wes>How did it cross the border? Who's it registered to?

01:12:40.471 --> 01:12:43.281
<v Wes>I suspect it's actually Chris's bank bus.

01:12:43.281 --> 01:12:49.431
<v Chris>Well, I mean, it depends on the technicalities. you know jimmy just technicalities

01:12:49.431 --> 01:12:51.308
<v Chris>there technicalities uh,

01:12:52.231 --> 01:12:56.151
<v Chris>it's right now it's the internet's bang bus let's be honest it's the internet,

01:12:57.043 --> 01:12:59.377
<v Chris>it's everyone now if it ever makes it back i have no idea.

01:12:59.905 --> 01:13:01.838
<v Brent>Well you you got to make that tempting you know.

01:13:02.100 --> 01:13:03.069
<v Chris>Put on the sugar uh-huh.

01:13:06.181 --> 01:13:10.407
<v Brent>Well chupacabra came in with a free members boost.

01:13:10.668 --> 01:13:11.684
<v Chris>Hey.

01:13:13.964 --> 01:13:16.844
<v Brent>Clanker therapy was fire.

01:13:17.053 --> 01:13:17.500
<v Chris>Thank you.

01:13:17.668 --> 01:13:23.410
<v Brent>While the stream was loaded with information, I'm experiencing the blank canvas syndrome.

01:13:24.424 --> 01:13:29.894
<v Brent>What would be a good next step on a fresh Nix OS system? I was thinking of unleashing

01:13:29.894 --> 01:13:36.001
<v Brent>clod code over SSH and let it loose with, I want to deploy Hermes agent. Let's cook.

01:13:38.694 --> 01:13:43.784
<v Chris>I mean, why not? But, you know, I've said this before, but what has been supremely

01:13:43.784 --> 01:13:45.874
<v Chris>useful, and whenever people say, I don't know what to do with the agent,

01:13:45.874 --> 01:13:47.481
<v Chris>I think you don't have anything you self-host.

01:13:48.167 --> 01:13:51.393
<v Chris>You don't have anything annoying that you have to, like, move information from one spot to another.

01:13:52.154 --> 01:13:56.584
<v Chris>It's super handy to put it in front of your self-hosted services.

01:13:56.584 --> 01:14:01.014
<v Chris>And I think you might find the family approval factor of using whatever their

01:14:01.014 --> 01:14:04.164
<v Chris>favorite chat app that they've already been using for years to interact with

01:14:04.164 --> 01:14:07.614
<v Chris>whatever you've set up as a smart home thing increases the approval factor by

01:14:07.614 --> 01:14:09.220
<v Chris>a substantial amount that makes it worth it.

01:14:09.696 --> 01:14:12.285
<v Chris>So I would say if you have anything you're already self-hosting,

01:14:12.616 --> 01:14:16.574
<v Chris>you know, get a Hermes thing going, get it cooking, and then stand it up and

01:14:16.574 --> 01:14:21.563
<v Chris>have it start interfacing with the API that that home, that self-hosted service almost no doubt has.

01:14:22.160 --> 01:14:26.094
<v Chris>Such a good way to go. like you got jellyfin or plex or you got things that

01:14:26.094 --> 01:14:30.494
<v Chris>are managing you know media for those instances like why are you going to a

01:14:30.494 --> 01:14:34.204
<v Chris>web ui and searching for a file when you can just tell the bot you know go get

01:14:34.204 --> 01:14:36.904
<v Chris>me this make it easy for them i.

01:14:36.904 --> 01:14:42.004
<v Wes>Also have a lot of fun playing with um having it use like a text-to-speech thing

01:14:42.004 --> 01:14:45.574
<v Wes>so like something like pocket ttsa there's a bunch of options so that could be another thing fun.

01:14:45.574 --> 01:14:47.869
<v Chris>Thing news briefs and stuff like that can be a lot of fun.

01:14:49.174 --> 01:14:53.454
<v Brent>I would also argue that if you have a project that you've been meaning to do

01:14:53.454 --> 01:14:58.174
<v Brent>for like a year, maybe two, maybe five, have at her, right?

01:14:58.594 --> 01:15:03.224
<v Brent>Let Hermes just kind of suggest what to do with it or tackle it completely for

01:15:03.224 --> 01:15:04.245
<v Brent>you and get that thing done.

01:15:04.593 --> 01:15:08.444
<v Chris>Start chewing away at it. Start it. Start it. Let us know how it goes.

01:15:08.444 --> 01:15:10.322
<v Chris>You know what I'm saying? Let's do it.

01:15:11.501 --> 01:15:14.214
<v Chris>All right. Anton comes in with a member boost. All right.

01:15:16.053 --> 01:15:20.604
<v Chris>Long-time listener member since around 2012-13. Hey-o! Nice.

01:15:21.219 --> 01:15:24.390
<v Chris>First-time booster. Hey-o! Not a fan of cryptocurrency, so the web boost is

01:15:24.390 --> 01:15:27.611
<v Chris>awesome. Thanks for all the years of great shows. Hope there are many more to come.

01:15:27.936 --> 01:15:30.391
<v Chris>Any chance the message limit could be longer than 300 characters?

01:15:31.512 --> 01:15:35.200
<v Chris>I don't know about that, man. It makes these segments pretty, pretty long.

01:15:35.520 --> 01:15:36.280
<v Wes>It is a balance.

01:15:36.280 --> 01:15:39.320
<v Chris>It'd be interesting, like, occasional member extra long. Oh,

01:15:39.680 --> 01:15:44.270
<v Chris>yeah. Thank you. Appreciate it. Nice to hear from you. Thank you for the long-time support.

01:15:46.945 --> 01:15:52.803
<v Wes>And our final member boost today, which is our last boost, from Hi5Connoisseur.

01:15:52.813 --> 01:15:53.603
<v Chris>Hey, Hi5.

01:15:54.526 --> 01:15:58.293
<v Wes>So excited about the web boost and the member boost, I fell off of AlbiHub due

01:15:58.293 --> 01:16:03.973
<v Wes>to the cost of opening the channel and, well, my addiction to PocketCasts. Great work, as always.

01:16:05.093 --> 01:16:07.723
<v Chris>You know, I used to be a big PocketCast user. I can't go back.

01:16:07.723 --> 01:16:10.233
<v Chris>I thought about it recently. I'm like, no, I'm very happy.

01:16:10.233 --> 01:16:13.233
<v Wes>Yeah, same here, actually. It's not that it's bad.

01:16:13.233 --> 01:16:17.233
<v Chris>No, yeah, it's good. Thank you, everybody, members, boosters,

01:16:17.233 --> 01:16:20.293
<v Chris>and streamers. We had 20 of you stream sats. Collectively, you sat streamer

01:16:20.293 --> 01:16:25.165
<v Chris>stacked 25,922 satoshis. Thank you very much.

01:16:25.560 --> 01:16:28.243
<v Chris>Now, since this is all new, what we think we're going to do,

01:16:28.243 --> 01:16:31.473
<v Chris>just to make it one final line number, is we're just going to convert the Fiat

01:16:31.473 --> 01:16:35.283
<v Chris>Boost to sats for the total at the current price values.

01:16:35.283 --> 01:16:37.199
<v Chris>We don't really know the best way to, since it's two different,

01:16:37.535 --> 01:16:39.853
<v Chris>but this is what we're experimenting with right now. We always appreciate your

01:16:39.853 --> 01:16:41.319
<v Chris>feedback because the goal is transparency.

01:16:41.812 --> 01:16:49.324
<v Chris>The total boosted for this episode is 332,982 Satoshis.

01:16:50.984 --> 01:16:55.193
<v Chris>That includes the member boosts and the fiat boosts.

01:16:55.441 --> 01:16:58.333
<v Chris>Thank you, everybody. And, of course, the Satoshi boosts. That's all in one

01:16:58.333 --> 01:16:59.663
<v Chris>final line item right there.

01:16:59.802 --> 01:17:02.923
<v Wes>Yeah, that combined to make a total of 39 boosts.

01:17:02.923 --> 01:17:03.413
<v Chris>Woo!

01:17:04.473 --> 01:17:05.473
<v Wes>And some streams, of course.

01:17:05.473 --> 01:17:09.053
<v Chris>That's awesome, of course. Yeah, 20 of you. Thank you, everybody,

01:17:09.053 --> 01:17:11.903
<v Chris>who supported the show with a boost or a membership. It's kind of neat to bring

01:17:11.903 --> 01:17:15.503
<v Chris>it all together in this segment. Finally, it's feeling like it's really happening.

01:17:15.503 --> 01:17:17.103
<v Wes>Thank you for trying it out.

01:17:17.103 --> 01:17:20.563
<v Chris>Yeah. I mean, this year of shows since the beginning of the year would not be

01:17:20.563 --> 01:17:22.302
<v Chris>possible without your support. We continue.

01:17:22.685 --> 01:17:27.153
<v Chris>And even if at this point the show were sold out going forward,

01:17:27.153 --> 01:17:30.983
<v Chris>the deficit that we have dug ourselves into, we would still absolutely need

01:17:30.983 --> 01:17:32.281
<v Chris>your support to survive. It is.

01:17:32.652 --> 01:17:35.665
<v Chris>And it only compounds as the year goes on. So thank you so much.

01:17:36.014 --> 01:17:38.343
<v Chris>It really does make a difference. And we enjoy hearing from you.

01:17:38.343 --> 01:17:40.540
<v Chris>It's our favorite segment of the show.

01:17:42.781 --> 01:17:46.990
<v Chris>A couple of picks, a couple of picks. I think maybe, Wes, you found Fluxcast

01:17:46.990 --> 01:17:52.060
<v Chris>this week, which lets you stream your Linux desktop to a smart TV that supports

01:17:52.060 --> 01:17:57.660
<v Chris>Miracast, DLNA, WFD, or Chromecast.

01:17:57.660 --> 01:18:01.540
<v Wes>Yeah, that's right. You know, Miracast especially has been one of those things

01:18:01.540 --> 01:18:05.470
<v Wes>that just has floated around forever, but I've never actually been able to take

01:18:05.470 --> 01:18:08.320
<v Wes>advantage of or try. Obviously, I Chromecast all kinds of stuff.

01:18:08.320 --> 01:18:10.733
<v Wes>I have used DLNA on and off over the years.

01:18:11.490 --> 01:18:14.770
<v Wes>And of course, there's various ways to do that. But I thought like a nice little

01:18:14.770 --> 01:18:18.860
<v Wes>focused app that could just let you stream your desktop would be pretty handy.

01:18:18.860 --> 01:18:26.150
<v Chris>It does look really nice. Pretty straightforward. Supports KDE Organome and Wayland.

01:18:26.630 --> 01:18:28.510
<v Chris>So if you're on the Wayland desktops.

01:18:31.030 --> 01:18:33.640
<v Wes>You can also get it. You can just since it's a Python app, so you can set it

01:18:33.640 --> 01:18:35.508
<v Wes>up that way. Or there's an app image.

01:18:35.884 --> 01:18:41.940
<v Chris>Ah, and it's GPL 3.0 as well. fluxcast streams your linux desktop to a tv they

01:18:41.940 --> 01:18:44.098
<v Chris>have a great video demo of it and,

01:18:44.771 --> 01:18:48.940
<v Chris>it's it's almost anticlimactic it's so straightforward and simple right because

01:18:48.940 --> 01:18:52.580
<v Chris>especially if you're using the chromecast combo it just works the tv detects

01:18:52.580 --> 01:18:55.270
<v Chris>it if you're on the same land and you're just streaming your desktop to the

01:18:55.270 --> 01:18:58.877
<v Chris>tv like no big deal uh and they have a video embed up on.

01:18:59.115 --> 01:19:02.420
<v Wes>There are some issues like some samsung tv cast stuff has issues so it.

01:19:02.420 --> 01:19:03.260
<v Chris>May not be perfect for.

01:19:03.260 --> 01:19:06.226
<v Wes>Your exact devices you have to give it a go but hopefully it's easy to try.

01:19:06.377 --> 01:19:08.720
<v Chris>Something tells me the chromecast probably going to work best,

01:19:08.720 --> 01:19:12.860
<v Chris>followed by DLNA, then Miracast, and then it's going to drop off from there

01:19:12.860 --> 01:19:14.060
<v Chris>pretty quick. But that's pretty

01:19:14.060 --> 01:19:16.373
<v Chris>neat to see, and it's nice that it works great with modern desktops.

01:19:17.041 --> 01:19:22.390
<v Chris>So I doubled down again this week. I'd kind of gotten out of the habit of backing

01:19:22.390 --> 01:19:28.230
<v Chris>up my legal Audible purchases. I've had an Audible membership since Audible was a company. And...

01:19:29.934 --> 01:19:33.308
<v Chris>Just kind of always every month buy a couple of books. I'm a pretty big audiobook

01:19:33.308 --> 01:19:35.558
<v Chris>listener, especially on long drives or in the evening when I'm trying to go

01:19:35.558 --> 01:19:36.394
<v Chris>to bed, things like that.

01:19:36.974 --> 01:19:40.828
<v Chris>And it's pretty easy to just fall into the habit of browsing for audiobooks

01:19:40.828 --> 01:19:41.838
<v Chris>with the app. You're like, yeah,

01:19:41.838 --> 01:19:43.812
<v Chris>I'll get that. I'll get that because you want to use up those credits.

01:19:44.393 --> 01:19:47.458
<v Chris>And then just kind of forgetting about them and letting them just sit on the service.

01:19:47.859 --> 01:19:51.382
<v Chris>And I've talked about various ways to extract them off of Audible before.

01:19:51.667 --> 01:19:55.928
<v Chris>But this time around, when I was revisiting the solution, I decided to implement

01:19:55.928 --> 01:20:01.618
<v Chris>Audible CLI, which is a command line interface to manage multiple Audible accounts,

01:20:01.618 --> 01:20:04.488
<v Chris>which is nice because we have multiple in my family, browse and export your

01:20:04.488 --> 01:20:05.749
<v Chris>library and your wish list.

01:20:06.022 --> 01:20:11.258
<v Chris>It'll download the audiobooks in the AAXE or AAX formats and then help convert

01:20:11.258 --> 01:20:12.768
<v Chris>them to non-DRM formats.

01:20:13.122 --> 01:20:16.888
<v Chris>It supports a faster method of browsing and retrieving the inventory than some

01:20:16.888 --> 01:20:18.869
<v Chris>of the other picks that we've talked about in the past.

01:20:19.356 --> 01:20:21.887
<v Chris>It's available for Linux, Mac OS, and Windows.

01:20:22.741 --> 01:20:26.988
<v Chris>And it is GPL3 as well. Audible CLI, boys.

01:20:26.988 --> 01:20:28.058
<v Wes>Yeah, this looks nice.

01:20:28.518 --> 01:20:32.738
<v Chris>I like it a lot. It's clean. It's easy to use. And if you're so inclined,

01:20:32.738 --> 01:20:36.138
<v Chris>it's very straightforward to have an agent sit in front of.

01:20:36.138 --> 01:20:39.133
<v Wes>Yeah, it seems like a well-maintained, up-to-date Python app.

01:20:39.980 --> 01:20:41.138
<v Chris>And using UV again.

01:20:41.718 --> 01:20:42.703
<v Wes>And it's already in Nix.

01:20:42.877 --> 01:20:46.894
<v Chris>Yes, it is. Yes, it is. Which made it very easy for me to get up and going with it.

01:20:47.463 --> 01:20:51.196
<v Chris>And then you could combine it with something like import to audiobookshelf.

01:20:51.637 --> 01:20:55.318
<v Chris>Our buddy Steve Ovens from the Ask Noah podcast has a utility that takes books

01:20:55.318 --> 01:21:00.431
<v Chris>which you legally purchase from Audible and then moves them over to your audiobookshelf instance.

01:21:00.722 --> 01:21:03.538
<v Chris>We've talked about audiobookshelves in the past. Fantastic app.

01:21:04.245 --> 01:21:07.252
<v Chris>And Steve's made a tool to manage that. There's a couple other things out there.

01:21:08.198 --> 01:21:14.688
<v Chris>For me now, what I have is essentially a systemd timer that once a week sweeps Audible.

01:21:15.564 --> 01:21:20.081
<v Chris>looks for books that I've picked up, and if they're missing from my audiobookshelf

01:21:20.081 --> 01:21:24.456
<v Chris>library, it automatically downloads and imports them for me to my library.

01:21:24.858 --> 01:21:26.802
<v Chris>And I can have it do a sweep for my wife as well.

01:21:27.225 --> 01:21:31.621
<v Wes>Well, I've got a sort of just sneaky final pick here.

01:21:31.621 --> 01:21:32.621
<v Chris>Oh, I love it. Sneaking in.

01:21:32.621 --> 01:21:39.734
<v Wes>Yeah, because whomever whiz popped into the Matrix chat to give us the correct link to Quid Clipper.

01:21:39.995 --> 01:21:40.645
<v Chris>Oh, good.

01:21:40.796 --> 01:21:45.051
<v Wes>So I can actually now see Quid Clipper is MIT licensed, Find and cut lossless

01:21:45.051 --> 01:21:47.924
<v Wes>clips from movies and TV by searching the subtitle dialogue.

01:21:48.831 --> 01:21:53.801
<v Wes>There's a command line tool. But then also, like, it looks like there's a whole

01:21:53.801 --> 01:21:55.511
<v Wes>web interface here or an app interface.

01:21:55.651 --> 01:21:56.151
<v Chris>What?

01:21:56.151 --> 01:21:56.748
<v Brent>Wow.

01:21:57.607 --> 01:21:58.919
<v Chris>Somebody's been busy.

01:22:00.144 --> 01:22:05.357
<v Chris>Boy, talk about the pivot. This looks awesome. I'm looking at the interface pictures right now.

01:22:06.541 --> 01:22:10.512
<v Chris>Library browser, dialogue search, folder dialogue search, scrolling script view,

01:22:10.512 --> 01:22:16.582
<v Chris>stream selector, lossless clipping, bookmarks, clips as first class items.

01:22:16.582 --> 01:22:18.772
<v Wes>Batch export. There's NixOS support down here.

01:22:18.772 --> 01:22:20.778
<v Chris>Oh, this is looking real good.

01:22:21.304 --> 01:22:25.831
<v Wes>As well as Docker. Yeah, it really is. And the CLI part as well.

01:22:26.818 --> 01:22:28.472
<v Wes>I think we'll be giving this a try.

01:22:29.032 --> 01:22:33.568
<v Brent>Chris, you've been asking for this once a week for about a year now, I think.

01:22:33.957 --> 01:22:38.072
<v Chris>I think he was reading our gosh darn minds. All right, we'll put a link to that

01:22:38.072 --> 01:22:42.752
<v Chris>in the show notes as well, and you'll find that over at linuxunplugged.com slash

01:22:42.752 --> 01:22:45.176
<v Chris>672. What else should we tell people before we go?

01:22:45.548 --> 01:22:49.913
<v Chris>Maybe some extra details around the show, metadata types, structured information about the episode?

01:22:50.083 --> 01:22:53.852
<v Wes>Oh, yeah, well, like, maybe if you want to try to use this tool on something

01:22:54.192 --> 01:22:56.352
<v Wes>like a podcast, like our podcast, I don't know if it will work,

01:22:56.352 --> 01:23:01.426
<v Wes>but we do provide SRT and VTT files right there in our XML RSS feed,

01:23:01.827 --> 01:23:04.602
<v Wes>as well as our Cloud Chapters JSON, of course.

01:23:04.602 --> 01:23:05.772
<v Chris>That's true. Another pro tip.

01:23:06.092 --> 01:23:10.562
<v Wes>Oh, and there's an MP4 file out there lurking, hidden in the feed.

01:23:10.562 --> 01:23:12.392
<v Chris>We should probably tell people that at the beginning of the episode.

01:23:12.492 --> 01:23:15.792
<v Chris>Yeah, we should. Yes, but there is indeed an MP4 file out there.

01:23:16.187 --> 01:23:18.206
<v Chris>And another pro tip, shows live.

01:23:21.872 --> 01:23:22.888
<v Wes>And that's also in the feed.

01:23:22.996 --> 01:23:26.256
<v Chris>Can you believe it? It is. That's right. We do it Sundays, 10 a.m.

01:23:26.256 --> 01:23:29.316
<v Chris>Pacific, 1 p.m. Eastern. You can get converted to your local time zone over

01:23:29.316 --> 01:23:31.448
<v Chris>at jupyterbroadcasting.com slash calendar.

01:23:31.901 --> 01:23:34.816
<v Chris>We also have the lug going. It's our mumble room. Low latency,

01:23:34.816 --> 01:23:38.083
<v Chris>opus audio. Goes all week long, but popping during the show for sure.

01:23:38.402 --> 01:23:42.477
<v Chris>And then our matrix chats, all of that and more at linuxunplugged.com.

01:23:42.727 --> 01:23:44.457
<v Chris>It's our website with our information on it.

01:23:44.805 --> 01:23:47.882
<v Chris>And then there's a bunch of great shows over at jupyterbroadcasting.com.

01:23:48.172 --> 01:23:50.896
<v Chris>Okay, that's it from us. We'd love to know what you think and any feedback.

01:23:50.896 --> 01:23:54.470
<v Chris>Please do boost it in. Don't forget boost.jupiterbroadcasting.com.

01:23:54.958 --> 01:23:57.913
<v Chris>Thanks so much for joining us on this week's episode of Your Unplugged Program.

01:23:58.174 --> 01:24:01.065
<v Chris>And we'll see you all right back here next week.

