LINUX Unplugged - 465: Too Nixy for My Shirt
Episode Date: July 4, 2022The one shared secret behind some of the world's most powerful open-source projects. Brent's Node : 03cf7e9b79a3230749db642ad690889065ec35b9ded184266d4fce424ab75470fc ...
Transcript
Discussion (0)
Every time a Debian release reaches end of life, I feel old.
Debian Stretch has officially been, I guess, discontinued is what they call it.
I guess 9.13, which was the last one, came out on July 18th, 2020.
But 9.0 was originally released on June 17th, 2017.
And I don't know, man.
I just, I seem like to remember that was a big deal.
It was the stretch version because it was this big, important release of Debian.
And now it's end of life.
That especially makes 2017 feel like a million years ago.
Maybe I'll give it a try.
I haven't tried it yet.
I should give it a go.
Okay.
Yeah.
Yeah.
All right.
Yeah.
Wes, you were noticing it shipped with what Linux?
4.9. 4.9. Right. Oh, wow. Wes, you were noticing it shipped with what Linux? 4.9 originally.
4.9.
Right.
Oh, wow.
Okay, even that makes me feel old.
And there was a big platform that got deprecated in this release too, right?
Poor old i586.
That's how long it's been.
We'll miss you.
Everybody was really reeling from that change.
But I mean, it worked out fine.
So we say farewell to Debbie and Stretch.
Hello, friends, and welcome back to your weekly Linux talk show.
My name is Chris.
My name is Lance.
And my name is Brent.
Hey guys, guess what?
We're going to have quite the adventure this week.
We'll catch up on what Wes has been up to with his new Raspberry Pi.
Hint, hint.
There may be some kegs, eck, and nicks in there.
I don't know.
Then we're going to geek out at some tech that's really at the center of just about everything we've really been into these days.
And it just kind of dawned on us this last week. So we'll tell you about that.
I think you're going to be surprised actually about all the different things
at the core here,
but then we'll round it out with some boosts and picks and a lot more as we
always do.
So before I go any further,
I do want to say time appropriate greetings to our virtual lug.
Hello,
mumble room.
Hello.
Hello.
Hello.
Good evening.
Hello,
Chris.
Hello.
Hi there. And hello, everybody up there in the quiet listening.
Nice to have you along.
And of course, everybody watching over at Jupiter.Tube.
Give them a wave, boys.
Give them a wave.
There you go.
That's nice.
That's nice.
I had a fun weekend.
I was really up to several projects, which we'll get into.
See, when you say fun, normally that means something bad happened.
Previously on Linux Unplugged, we talked about this project called Umbral,
and it is sort of a self-hosting platform for a home server that has a whole raft of really awesome apps,
sort of like the best of the best in home self-hosting that is in a Docker container.
And it manages all that for you.
Initially started life as
a bitcoin node and then with the more recent release they separated that stuff out as individual
apps and so now it's just really an app platform and there's things on there like simple torrent
and uh uptime kuma home assistant sync thing photoprism vault warden synapse all that stuff piehole next cloud all in a slick little ui just a couple of
clicks away brand new fancy ui new architecture and i was on the previous version and i was on
a call with bren on friday i'm like bren i really think i want to upgrade this but i'm really
nervous about it because i don't want it to break i told him not to do it. You did. So I went ahead and did it, of course, right?
And I wonder what you guys would do. Would you go into the GUI, into the settings,
and click the upgrade button in there and do the upgrade through like the interface?
Or would you SSH into the box and do the upgrade through a script that's available in the application directory of the service,
which they may just be calling on the back end.
No, I would actually, step one for me would be backups, backups, backups.
And I wonder if you skipped that step.
No, I did backups.
Have you tried restoring from those backups?
Well, we'll get there. We'll get there. We'll get there.
Okay. Okay.
But what would you do, Wes?
I mean, are they both equally supported from the vendor?
Are they both blessed methods or is the script sort of a, you know, a hack?
Well, no, I found this method.
Good question.
That's a really solid question.
I found this method actually in their community troubleshooting guide.
in their community troubleshooting guide.
And I don't actually know if this was authored by a staffer or not,
but they give you all of the steps to do the process right here.
And it's clear that they've built this update script because it's in a scripts folder.
There's commands.
You can tell which version to go get.
Nice.
Yeah.
When was that last updated would be a thing I would check right away.
Yeah, it is from like a year ago.
But I kind of figured the script syntax would be the same. So I actually decided to go the script route.
Would you have done that or would you have done the GUI? Yeah, I probably, I probably would have
just because that's my default. I've come to this realization that I tend to not like the stuff that
tries to hide the information from me because I want to know what it's doing and what stage it's
at and if there's an error message and I would prefer to see that output right i mean it's like if it doesn't work you're gonna have to go hunt
for that output anyway if you want to debug it so you might as well just get it right so i went the
script route and actually what they have what they have you do in here this is a good idea is first
they have you stop all the containers then they have you do an update to the os and i had a few
i had like 30 updates needed to be done then they have you reboot then they have you do the upgrade to the actual project and i've seen a lot of reports
that people have problems and if this breaks our boost break and i love the boost so i didn't want
this yeah that's what keeps you in a good mood so it's basically it dude keep those coming these
days and the alcohol no not really but just the boost so i uh i flipped the switch
and it went and it went and it went and at the end it came up and it was just fine i didn't have
to do any restorations or anything like that but it did get me thinking like how do i do a test
restore because some of the stuff that's in these backups is channel state and i can't really do a
restore if my main thing is online.
Like, that's not going to work.
So I don't know exactly how to test restore this thing.
Now, if you're just using it for, you know, Photo Prism and Next Cloud and stuff like that, that'll be obvious.
But I'm using it as a lightning node.
I don't know.
Yeah.
Would you have to sort of like take it down, back it up and then try to restore that onto a new box, then let it operate for a while, and then back that up.
I think so.
Kind of just have to roll forward.
I think so. I think so.
Brent won't have to worry about any of that
because he's going to start out at version 0.5
because after I got that done,
I went ahead and I set you up a node, Brent.
So you now have your own node.
It's all fresh and shiny.
Nice.
It's actually syncing right now.
It's probably about 50% done.
It's up on Linode, so it syncs super fast.
You gave me the high performance one.
That's great.
Thank you.
Yeah, you definitely have the fastest node.
I have in the show notes, I have Brent's lightning node address.
And if people out there would like to open a channel to Brent so that way he has some inbound liquidity, that would be fantastic because he's going to need some help with a brand new node. It's all free software. It's a free software payment system. And what
we want to do is, uh, for the last month we were raising funds for open sats, which is a 501c
nonprofit that donates sats to free software projects.
And we were doing a 15% split, I think somewhere around there,
to OpenSats for the last month.
So anybody that boosted this show, 15% of their boost was going to a free software charity.
And I think we raised just about $300 for them in total.
So thank you everyone out there who boosted.
And I think that's really great. That's amazing.
I know the folks behind OpenSats now
and I think they're going to put that money to good
use and 100% of the funds
raised will go to free software too, which is
great. So
for this month, we're going to
do a different split. We're going to send
50% of the boosts into
this show. Maybe it's 40%. I
remember because there's like other cuts in there. There's the podcast player and there's the index,
but we're going to send a big chunk of the boosts to Brent's new lightning node to help build up a
little bit of a gasoline fund or a petrol fund, if you will, because we want to do some projects
here in the studio and gas has gotten ridiculously expensive it's about a two-day drive for brent to
get from his place in the canadian wilderness to the pacific northwest studio and we got like that
laptop we want to get him set up with but we've got we've got a whole list of other projects we
want to do before he heads off to alex's house and so for uh the next uh four episodes as you
boost in we'll send the split off to Brent's lightning node for his
gas fund to come to the studio and as a way to help him out as he's doing his travels down here.
So we're going to try this out because one of my grand ideas, right, is down the road.
We could throw free software projects in there. We could people who help us with the show in the
community, we can throw them in there. So this is the beginning of an experimentation here.
And so we're putting your boost to good work. Thank you, everybody. Now, Brent, you have your own Umbral server. And one
of the things I put on there for you, and you're going to love the address. I don't want to say it
publicly, but you're going to love what I came up with. Great. I put a hosted element chat client
on there. So now you have your own self-hosted web element instance that you could have connected to
the JB matrix. Now you're talking. Yeah. So there's all kinds of good stuff on there. So you could possibly,
you could possibly use that for all kinds of things.
Cause I put about 900 gigs of storage on that box.
I'll give you all the logins.
You can change them if you want.
And then probably eventually one day we'll probably migrate it to a system on
your land and we'll figure out how to do that.
Now,
as part of this deal,
you do have to tell us if you break it.
Oh,
I'm good at that.
So we'll see how it goes.. Oh, I'm good at that.
So we'll see how it goes.
Right.
What I'm curious to know, and I hope because I think it'll work this way, is I think you're going to get a copy of the boost.
If you're in a split, I think you get the boost message. So I also installed Helipad for you so you can read some of the boosts that come in because I think that's how it works.
We've never done this before.
We can test it like after the show. Yeah. So I've already added of the boosts that come in because I think that's how it works. We've never done this before. So we can test it like after the show.
Yeah.
So I've already I've already added to the podcast index.
The nodes address is already in there.
So it should start effect for this episode and should be trickling out there.
That's amazing.
Umbral is a great project.
It's a really nice clean setup under the hood.
And I really like that I can SSH in and do that stuff on the command line if I want.
And everything I've observed so far seems like a really rational way to build a system,
like how I'd probably do it.
It didn't seem crazy under the hood, right?
Like some scripts, some Docker Compose going on and otherwise fairly standard.
If you'd like to help out with Brent's travel funds and support the show with a boost, you
can get a new podcast app at newpodcastapps.com or go grab Boost CLI, do it from the command
line or, of course, Breeze at breez.technology and join us there.
But, you know, speaking of getting together and having a good old time, we have a venue.
It turns out Alex has informed us that for the J.B. London meetup, we have a venue.
And because I'm a North American,
I did have to look up the pronunciation
of some of these things.
So here we go.
I'm going to try it out.
So August 5th, 6 p.m.
is going to be at the Jubilee Park and Garden
on the south bank of the River Hems.
Did I get that?
Near the London Eye.
So apparently that's very, very, very, very central.
And anyone who is thinking of going would probably know exactly where that is.
That's what I was told.
The River Tam? Is it Tam?
I think he had to look up the word London.
Tams?
Well, good job. Good job. Yeah. All right.
Meetup.com slash Jupiter Broadcasting.
And keep an eye on there because we do have a West Coast meetup coming up in September in California. We'll have
more details about that probably next week, but I just wanted to give this some room. I don't want
to get people, you know, I don't want to steal any glory from the London meetup because I want that
to flourish and be a big thing because I'd love to maybe have it happen next year and we go.
But we will have a California West Coast meeting coming up very soon. We'll have details on that
in probably next week's episode.
meeting coming up very soon. We'll have details on that in probably next week's episode.
We've been on a real NixOS bender. I think that's safe to say, yeah. And we've even been not talking about it on air as much as it's been happening off air because we know not everybody
listening cares about NixOS. And so we've been trying to, you know, it'll come up sometimes.
Yeah, pace ourselves. There we go. That's a good way to put it. Yeah. But've been trying to, you know, it'll come up sometimes. Yeah. Pace ourselves. There we
go. That's a good way to put it. Yeah. But we're going to take the breaks off a little bit this
week because we're bursting with stuff that we've been doing that we want to tell you guys about.
And it really kind of got kicked into next gear when listener Maximilian hit me up on Matrix and
offered to send a pie here to Westpain. I said, yeah, let's let's do it. That's going to be great.
We've got some ideas for that. We want to build a router. We've been having a hard time getting
our hands on an actual Pi to do this with. Hot commodity. And you know, next thing we knew,
there was a package here at the studio for you. So what was it? I know it was a Pi, but tell me
more. Yeah, a Raspberry Pi 4 set up with a very nice metal case, all pre-configured, had a power
supply in there, pretty much everything you needed to get going.
And it was already ready and set up to boot from USB.
So just choice right there.
That's how you want your Raspberry Pi.
Right.
So you're not using any SD card with this?
SD card hasn't touched it since I got it.
That's so much better.
Admittedly, I need a better USB.
I need some faster disk going on.
Is it more permanent setup for this thing?
But it was, you know, good enough to get started.
That's a pretty big leap from the last time you set up a pi i would imagine right yeah
it's been at least two years maybe maybe longer since i set up a pi doesn't it feel like it's
come more it's more advanced now it is more advanced i forgot about the whole micro hdmi
thing so so far i've been relying on network troubleshooting which is good which is good
it's just meant i maybe it's tamped down my adventurousness just a little bit.
So you got it with, I guess, Raspberry Pi OS on there?
Yeah, it was my first time installing Raspberry Pi OS in ages two.
Oh, you installed it.
Okay.
Yeah, yeah.
Nothing out there.
I just, but I got one of my-
You went out there like an animal and downloaded Raspberry Pi OS?
Well, I had to verify that it was ready for USB boot.
I thought like stick with the standard stuff,
right?
And just like, you know,
this is the stock.
Plus, I hadn't installed
Raspberry Pi OS
for a long time.
I think, I mean,
since it was Raspbian,
actually.
Yeah.
And maybe I played with it
for Linux Action News.
But in any case,
I hadn't played with it
since they kind of
changed the default
Pi user setup, you know?
So now you got to go in,
you can do that thing
where you touch
the SSH file
to get it to open SSH by default.
Right.
And now you can specify a userconf.txt where you can just put in sort of the same password hash that you put in your shadow file, right?
Stick that and then pre-configure it.
That's pretty easy.
Also figured out how to tell it not to resize to the whole disk because it's like a 120 gig USB drive that I just didn't need all of that.
Yeah. So it's kind of fun to get re reacquainted that was pleasant to get started with but of course nixos is the real goal here right yeah i mean that's the question we looked
at it months ago i think it was like three months ago and the the word at the time was like it's not
really ready or something funky about it i can't even even remember anymore. Did you give NixOS a go on it? Did you try it?
I did, but disclaimer up front here, this ended up being just a rabbit hole exploration day,
however long this all took. So it's not yet to the stage where it's like, I'm ready to go say,
Chris, you should just deploy this setup that I've been playing with. But it's not saying we
can't get there or that, but just, I was playing with some limitations, a USB setup
that wasn't ideal, no HDMI. So I was like doing everything over the network. And it's the first
time I've kind of been doing AR64 stuff for a long time too. So I'm getting back in the whole
groove of like different architectures. And I don't have a lot of, I don't have a, you know,
I don't have like an M1 system handy. I don't have any other arm boxes on my network at the moment so I don't have any other like
native platforms to debug or mess with the images from in a way so that was kind of interesting too
to figure out like what changes in my setup and my approach to messing with Linux when I'm on a
different platform so are you doing I mean with no HDMI cable what are you like you're powering
this thing on you got it plugged into Ethernet I imagine
because you can't even
get it on Wi-Fi yet
and then
are you checking
your DHCP log
to see like
what IP got taken
to figure out
what you need to
even SSH into?
Yeah pretty much
and then after that
it worked fine
well actually
I just pulled up
one of the apps
on your phone
to scan the network
and map
would work just fine too
yeah yeah
that's funny
I just that does feel like you're working with one hand tied behind your back at least apps on your phone to scan the network or Nmap would work just fine too. That's funny.
That does feel like you're working with one hand tied behind your back at least trying to get this thing
going. And it was just like it was all unfamiliar
and here I'm trying to do like six new things at once.
I did go down a little bit of a rabbit hole
trying to figure out if KExec
worked on the Pi. This is important stuff we need
to know. And it seems like the answer is
yes but it's not enabled
by default in the Pi kernel.
So you gotta go change some
stuff. There's also some weirdness around like
kernel properly
parking multiple CPUs, so
you might have to add a flag to say like just use one
CPU. I was wondering about that.
That does seem like it'd be different on the Pi.
So if you didn't use Raspberry Pi OS, but you had
say Ubuntu 22.04 on there?
So I haven't gotten it to work yet.
I am going to keep playing with it because I really want this to work for really no reason, but it just seems fun.
One approach is just recompiling the kernel.
I did actually try that.
Jeff Geerling has a nice little guide, and there's a few of them out there, including another guide I'll link in the show notes for just like if you want to try setting up a whole Pi image from scratch, like compiling a kernel, finding the firmware blob, setting up the user space stuff.
I thought that was just a neat idea because
the Pi images are sometimes a little black
magic to me, at least.
Oh, NixOS. Yeah? Not so
smooth? Well, so
going down the rabbit hole of playing with
KExec when I was building my own kernel.
Trying to get NixOS running, I imagine.
Yeah. And I didn't want to build the kernel
on the Pi, right? Right, slow.
Because that's going to take forever.
Yeah.
So I ended up figuring out how to go do cross-compiled builds,
which I don't know if that's something you've played with in your Pi.
No, I don't really build much software on the Pis.
But if I was going to, I think I'd have to figure out this.
So this is where another machine does some of the heavy lifting for you?
Yeah, exactly.
I didn't have access to another ARM machine,
and I didn't want to use the Pi to do all this software compiling work uh so i spun up a linode just an ubuntu box and then you
just install a couple of gcc packages and then you can install some qemu packages if you need those
as well because you would actually on linode you would right because it's an x86 machine
so you would need to build in an arm vm on that linode okay but then it gets even cooler if you go enable the bin
format functionality and QEMU's
user mode abilities, you can
have it transparently use QEMU
to execute binaries
that are built for the ARM platform.
Wow, it's almost like using QEMU as wine.
Yeah, and so then
I was able to just download either the Raspbian
or the Raspberry Pi OS image
or the NixOS SD image, which we'll talk about in a second.
And then use systemd nspawn to just like launch them up.
Really?
And just sort of transparently emulate it.
That is so cool.
And it just uploads the required source code to this Linode to start the build?
Or did you have to get it up?
Oh no, I set that up.
Ah, okay.
So you get it all up there.
Okay, okay okay okay so it's not
like disk cc was back in the day that would actually like batch up parts of the work and
send it out well there are there are like remote workers and remote build things you can do uh like
especially in the nix world but this was just me manually trying to figure out like can i rebuild
the pi kernel let's let's try that i love it that's a great idea yeah use the cpus on a linode
not the Raspberry Pi.
Well, and because I'm so used to being able to sort of like cheroot into a system and
then configure it or change it or manipulate that.
But I couldn't without another ARM box.
I couldn't really do that.
I mean, I could edit text files, but I couldn't run any of the binaries.
So it was a limitation I wasn't used to.
But all of that was sort of a prelude to actually starting to really play with.
I was just getting comfortable again, like with the Pi.
When you first start searching for
NixOS and the Pi, you'll see a lot of
results, some of which are from the past.
The good news today is it
does just work with the default
AR64 SD card image.
So, stuff has improved
a lot even over the last year or two.
Great. That seems like a big step.
Now, one of the gotchas
there is that it does, I believe, enable SSH out of the box, but it doesn't come with a password or an SSH key by default.
So you either need to have a setup where you can configure that, you know, first time from a shell, or you can also kind of go in there and manipulate the image a little bit and add one in there.
There's some gotchas there too, Or really embrace the NixOS way
and just build yourself a new image.
And it turns out there's a lot of great tools
out there too, including some Docker scripts
that set up cross-compilation for you.
So it sort of spins up.
It's like a Docker compose setup
that will spin you up a Docker
that's pre-configured to do these cross-compiled builds,
pull down everything.
It's got the templates.
The Nix community, man.
I know.
The Nix community is so crazy.
It is.
So which route did you end up going with and did it work?
That's the question.
They've also got, which I haven't tried, but they've got a Packer script in there to spin
up an Amazon ARM box, which is a great idea.
Yeah.
And then that says they can build like the image in like five or six minutes.
Yeah.
Because it's just running on fast actual.
No QM you need it.
Yeah, right.
Exactly.
five or six minutes yeah because it's just running on no qm yeah right exactly so i ended up just playing with trying to modify the existing nixos image which is how i kind of doubled down on this
whole like can i mess with the image because when you get to the sd card it's super minimal out of
the box like the the main file system just has the next store and some boot stuff and not much else
and so faced with that i didn't know immediately like do I, if I want to stuff a key in here or something without rebuilding it, how do I do that?
So, not wanting to go down that rabbit hole too far, I actually ended up just installing Nix sort of the way that we played with when you override a VPS and going that route by first installing Nix on Raspberry Pi OS.
I mean, that's probably the most simple, right? It's tried and true. It's a method you and I have
done before. That makes sense. So you overtook the Ubuntu host system, essentially?
Yeah, yeah, exactly.
It's like the bootloader for Nix.
Because they've got that neat Lustrate setup. And so you can basically just install Nix
because you can install Nix on pretty much anything
and then switch it over to basically using NixOS, bootstrap that.
The Nix wiki has a lot of good documentation
on the specific quirks you need in your configuration.nix
to account for the Pi hardware and the bootloader stuff
and that kind of thing.
And then follow the normal instructions.
There is a little bit of stuff with the with the bootloader itself because you need you know it's the way raspberry pi os and some
of the other ones do it and the way nix does it is a little bit different including where things
get mounted oh sure i bet i bet it's quite a bit different but i found that just so installing
nix the normal way from from raspberry and doing like a takeover that way and then combining that
with just plopping over the bootloader files from the boot partition
on the SD image,
which is all set up to like copy
all the right firmware blobs and stuff.
That was a winner.
Really?
Did you, how long, I mean,
how many different like research rabbit holes
did it take to come?
Yeah, I'm still kind of like doing a poor job
of explaining this because I've like, I've subsumed a whole bunch of knowledge and I haven't, I'm definitely in still kind of like doing a poor job of explaining this because i've like i've
yeah subsumed a whole bunch of knowledge i haven't i'm definitely in that state of like i need to do
this probably five more times really right um well we will i want to i want to build a custom image
because i think that's probably something we would we would really do especially if we could just spin
up on like linode build box yeah yeah when we were talking about this last night as you were working
on this uh i could tell you were been going on for going for a while. And it was like, you know, but really you're saying I just want to get to this point where we'll have like the standard image that we can just deploy on a Raspberry Pi spins up. It's ready to go. Or, you know, a standard image we could deploy on a Linode and it's ready to go.
Yeah. Right. Or you could have an easy template that you could just sort of copy and be like, oh, but I'm going to tweak this one a little bit. Yeah, it's going to be great when it gets there.
I'm sort of surprised that standard image isn't something that's available already.
Surely we're not the only ones who want this.
I mean, with Nix, you get so close just by having a heavily modified configuration file.
You get the base OS on there and then, you know, build off that.
I'm sure hopefully some of the wiser Nix folks can point me to things I've missed
because there were, you know, there was a lot of different resources to pull through.
I still need to go through some of the links, but the show notes will have all the things I found useful.
Great, great.
I'm going to look at that too because I have that compute module that I want to turn into a router here at the studio.
And it just, I'd love to have something like Nix on there for a router device.
Like that really seems like a good solution.
So to Brent's point, you know, you get set up, but then there's all
like the little small configuration things, you know, all the little like dot files and all of
that stuff. And that's where Home Manager comes in for NixOS. And I have been slowly wrapping my
head around Home Manager. And unfortunately, this is not a criticism, but I do feel like it is a bit
of a barrier to entry for new users.
There's usually some really thick language and terminology around some of this stuff and how you get started.
But in short, Home Manager, it was just a it's a straightforward way for a user like me to manage multiple configuration options about my system and have my own set of software installed.
options about my system and have my own set of software installed that isn't necessarily system wide or isn't necessarily giving me you know maybe i don't necessarily have root privileges or or
something like that so i've just got home manager set up on my box and i have a tutorial that i
found that i thought really kind of cut through all of the confusing language hey that's saying
something right there i i thought this made it a lot easier and the idea is is that you can
essentially manage all of your application settings,
your desktop environment settings, the packages that you run on your box,
and you can define them all in a configuration,
and then this will maintain it for you.
So you get your base system set up, and then you deploy this.
And maybe you have it backed by something like Git
that has all your.files in a repository.
There's a lot of.file managers.
This is like a manager for everything.
So I've just got it going recently.
And I think this is the piece,
and I don't know if this works in a server context,
but I think this is the piece
that's going to take using it on my laptop
from something that I'm getting by with,
but I could see I have edge cases that don't work.
And I think this is going to fill those gaps for me. Yeah. Maybe take it from something you'd use for like
a kiosk machine or an occasional sort of machine to something that's personalized for you.
Exactly. Now is Home Manager Nix specific or can you use it anywhere?
Yeah, it's Nix specific. Yeah. It sits on top of the Nix package manager and does all that good
stuff for you.
I'll put a link to the tutorial.
But we should reinforce here, Brent, you can install the Nix package manager in a ton of places.
That's true.
Including the distro you're using now.
If we get Nix going on that dev one, we'll totally put home manager on there.
You say if, but I think we must.
Well, I mean, I don't want to force it on you.
We can reflash it.
Oh, yeah, for sure. I think we should. I think that mean, I don't want to force it on you. We can reflash it. Oh yeah, for sure. I
think we should. I think that would be a lovely exploration. So check out the links in the show
notes for that one. Linode.com slash unplugged. Go there to get $100 in 60 day credit on a new
account. And of course it's a great way to support the show and let them know you heard about it
here. And Linode is the hosting provider for Linux Geeks. They started in 2003 because they saw some of the virtualization
capabilities coming to Linux. And now, nearly 19 years later, we call this cloud computing.
But they've been there every step of the way, building on the technology because they were
Linux Geeks and they loved it. And now they've built something that's so straightforward to use.
It's so affordable and it's so well supported.
I'm honestly thrilled to have a chance to talk to you about it every single week.
It's really something that I am still passionate about advocating you go try because it's the best hosting I've ever experienced.
I run everything on there because I chose to.
I picked Linode before they were a sponsor and I still use Linode.
I think it's a great opportunity to get $100 and try it out.
They have an easy toto-use, powerful cloud dashboard.
I use the absolute heck out of their S3-compatible object storage.
I've got servers deployed in multiple data centers.
They have 11 around the world.
They are their own ISP, so they have super-fast networking.
They've got a powerful DNS manager, VLAN support, DDoS protection
if you're so lucky you have that bad luck,
and pricing that's 30 to 50 percent cheaper than those hyperscalers that want to lock you into
their esoteric cloud with their crazy esoteric language and their horrible, bad, no good support.
Linode flips all of that on its ear and it does it by taking Linux and making it super accessible
to anyone, experts or beginners.
They're dedicated to offering the best virtualized cloud computing. If it runs on Linux, it runs on
Linode. So go build something, go learn something, go try something and support the show and get that
$100. Linode.com slash unplugged. That's Linode.com slash unplugged.
That's linode.com slash unplugged. also being in several deep rabbit holes. But I had a real aha moment that I think, well, both of you either were involved in or would be interested in,
but also that really tied a bunch of strings for me.
And so I'll give you a little bit of background. So I was seeing, you know, there's like 100,000 tutorials about how to use Git.
there's like a hundred thousand tutorials about how to use Git. But what I noticed because my curious mind just can't let things go is that they're kind of like surface level. And I was
having a hard time. Um, the more I used Git on our, our new website development, um, the more I was
realizing that the mental model that I was being taught wasn't quite what I was seeing using the command line.
And so I, you know, had to dig a little bit further. So I started digging into the Git
internals and how it works. I have a few wonderful links, but the real aha moment
was discovering that they're not, let's say when you commit something they're not actually doing diffs which is how people often
present what a commit is what it's actually doing is snapshots and that brought me down a whole
fascinating rabbit hole of like wait wait wait wait wait so if every commit is a snapshot well
what's it actually like referring to and i I think we've seen this before. So that
got me thinking, well, maybe, maybe gets just like butterFS sort of, but just for a project
instead of a whole file system. And so as the rabbit hole continued and Wes and I had very
many discussions about testing my assumptions and what I'd been taught and trying to pick his brain
about how he understands it and what mental model he's built up. We, we kind of dug into,
thanks Wes for sending me a few resources. Oh yeah. Which is great. And apparently if you dig
into a few of these resources, you'll understand get more than 80% of people. So, you know,
I like to be the upper 20% if I can, even though I'm still a beginner. But one of the great
resources that we found was
the Git book that talked about Git internals, and they call it plumbing and porcelain to try to
distinguish between the stuff that you use and the stuff that's happening underneath the hood.
One of the quotes that really hit me is the following. If it isn't clear yet,
Git is fundamentally a content addressable file
system with a version control system user interface written on top of it. And that's when I had that
like, aha moment. I was like, ah, what I suspected is true. And once you dig into it, that's how it's
working. Another one that Wes sent me was from the GitHub blog.
Commits are snapshots, not diffs is the title of this article. Another little sentence that got me
that same feeling, it writes, it has a reputation for being confusing. Users stumble over terminology
and phrasing that misguides their expectations. This is the most apparent in commands that,
guides their expectations. This is the most apparent in commands that quote rewrite history,
such as get cherry pick or get rebase. In my experience, the root cause of this confusion is an interpretation of commits as diffs that can be shuttled around. However, commits are
snapshots, not diffs. So that got me digging into like, well, okay, well, how does this work under
the hood? And of course, Wes is really good at suggesting that i go deeper and deeper and deeper never once were you like no
you know enough just use it it turns out that at the base of git is the concept of a merkle tree
and it seems many many many of the technologies we've been looking at in the last six months and excited about even longer than that also use the concept of Merkle trees as the base.
So ButterFS has that, ZFS, the Bitcoin network, Git, of course, the Nix package manager and also Geeks as well, the new Geeks and IPFS, which we've researched a ton and maybe should
dig into.
But it turns out all of those technologies have the same concept in mind.
And that was just quite the aha moment for me this week.
And I wondered if that had occurred to either of you or what you think about that.
I knew it, but it hadn't occurred to me.
occurred to either of you or what you think about that? I knew it, but it hadn't occurred to me.
I've definitely heard, you know, the term Merkle tree used for ZFS and ButterFS and Bitcoin and a number of no SQL projects on a number of occasions, but I never did the math. You know,
I never put it all together. And I mean, you said it right there, Brent. Like, you're basically playing the hits. ButterFS, ZFS, Git, Nix, Bitcoin.
I mean, like, these are some of our favorite things.
Just fishing for Chris.
And that's like an excerpt of the list.
There's a much longer list if you even just look at the Wikipedia page that includes a whole bunch of network protocols and all sorts of things.
Gentlemen, we have been eating from the Merkle tree and didn't even realize it.
Well said.
Well, it's tasty fruit.
Brent, I think I've got one more challenge up if you want to go even deeper.
Bring it.
You know me.
Implement your own Merkle.
Implement your own Merkle tree.
This will require a K-exec, won't it?
Sadly, no. But we can work it in. You you're right we can work it in never mind i take that back we'll k-exec into like a like a python environment for you
there we go yeah and and so this is kind of a new concept for me you know i i know you're partly
joking there but what would it take like is this something you could just write in python or
something or uh tell me a little bit more if you've got something in mind oh yeah absolutely
i mean whatever whatever language could do it but yeah i mean i think it underscores
two sort of separate things that are important building blocks the just like hash functions
right we those come up all the time in a huge array of of applications from just storing data
to obviously keeping things
secure and cryptography. And then on the other side, these tree data structures, which are
hugely important in file storage and file systems of all kinds. You can combine these in very clever
and interesting and fruitful ways and they're worth studying more. I agree. Pixelpimp, I think,
puts it really well in our live chat room. Yet another example of why the most important class in the entire CS program is data structures and algorithms. Just saying. I think he's right.
What is it about this that appeals to us so much? Because not everybody in the Linux community
geeks out on this stuff like we do. What is happening here? What is the fundamental thing that this Merkel tree, this wonderful tree is giving us?
Like, what is it?
Is it the way to store structured information that we can build things on top of that seems to appeal to us three?
Well, I think it's that combination, the verifiability, right?
The sort of integrity checks that we know what we put in, as Linus put it in that talk we linked last episode.
You know, you trust that what you put in is what you're going to get out.
But then at the same time, it's that notion of history.
The commits all reference the commits before them.
And same with our file systems or with Git.
I think that connects.
Maybe it's less true with the file systems depending on how you use it.
But for Git, especially in Bitcoin, because you have this verifiability and that history, you can build these open
systems that you don't have to hide away or keep, keep skewed because it's baked into
the structure.
Yeah, that is, that is, you really touched, I think you touched on it right there.
I think that really is it.
I think what has been really fascinating to me is the elegance of these systems.
And it seems like, you know, they're using SHAs, you know, fear not the SHAs and other,
And it seems like, you know, they're using Jaws, you know, fear not the Jaws and other YouTube video that Wes sent my way, which I think we need t-shirts with that on it.
But it's the elegance of how it's all sort of put together.
And, you know, to think that Linus could just go away for, you know, what did he say, something like six months and build something like this.
Well, I'm sure he didn't come up with this out of nowhere. And yet he took what are some really sound concepts and built it into a system that
now is sort of the default for distributed, you know, contributions to any project, which I think
that's what really gets me is, and same as Satoshi is just taking something and applying it to a new
problem. And building on top of multiple tools and things like that.
Yeah, that's it.
And then the thing that you end up with, or that has been really impressive to me, is
that it solves a lot of different problems with elegance.
And so, you know, holding some blob of information, but not duplicating it too often or only as required, for instance,
but just, you know, not only locally, but also in a distributed fashion.
So if you think of, you know, forks of a project, well, everybody only has one copy
of a very specific piece of information.
And so even if you, you know, start a whole new project and that piece of information
is in it, if it exists locally on someone else's's system you don't have to copy it over the network so it's also very there's this efficiency that is
also i think really beautiful very appealing yeah and so it as a file system all of those
things obviously really matter and so i think it's just like i think i was awed this week at
at how lucky we are to have you know know, people designing this kind of stuff and
that we get to use it. It's amazing. I know what you mean. You're like, there's been times where
I've come across projects and I'm like, this is amazing that people can be this intelligent and
this, you know, think things through like this and it's humbling in a way. So here's my question.
Now, this is like the meta question. Now that you've gone down these rabbit holes and you have a broader fundamental understanding of the tooling does it change how you're going
to interact with git and how you're going to use git or github or is it just now background
information like here's what i'm asking i guess could you have just taken the just taken the easy
answer and accepted that and or do you feel like having gone down this rabbit hole, you're better equipped somehow?
Is there a real difference?
Why are you asking?
Could someone have done that?
Or Brent?
Because I think there's a factor here.
That's true.
Okay.
I'm just curious.
Is there utility to it?
Or was it just intellectual playtime?
No, I was trying to solve a real problem, which was a lack of understanding of.
Okay. No, I was trying to solve a real problem, which was a lack of understanding of, okay, so our little website MVP, Stefan, made a wonderful demo for us.
And he's hosted this on his, you know, GitHub.
And so I'm trying to contribute and learn Git at the same time, right?
Seems pretty simple.
So Wes suggested I make my own fork, which seems like a totally standard way to help with open source projects.
Right.
That seems pretty straightforward. And the
GitHub interface, for instance, makes that really easy. So I, you know, last week, as, as, as we
noted, made my first contribution and all that works great. And then I sat down this week and
I thought, okay, I'm going to do the next thing that I want to work on. And I thought, well,
how the heck am I going to get the new stuff that he's done on his project and bring it over to my,
you know? and so I started
looking that up. I should, the answer should be fairly straightforward. And it turns out
there are like three different standard ways of doing it. And any resource you look at does it
a little differently because you know, why not? You can either like fetch something and merge it,
I guess you can do a rebase, which some people are like, yeah, do a rebase. That's the standard
way. And other people are like, duh, I'd be very careful with rebasing. You could totally
screw things up. So the whole reason for my going down this rabbit hole, which maybe I should have
mentioned at the start of all this was to try to understand like, well, what is this all doing?
And, and what is it doing? You know, there's also get pull, which turns out is just sort of a macro
for two other functions, get fetch and get
merge. And so it's like, well, I need to understand what's actually happening so that not only am I,
you know, using a short term, but I want to understand how to use this tool to its full
potential for the longterm. So I figured, you know, it's easy for me to dive into these rabbit
holes, but, but that was the real problem I was trying to solve was, well, what is it actually doing? And why am I having such a hard
time figuring out how to sort of do this relatively simple operation? You know, I can easily visualize
what I want to do. And yet it seemed relatively confusing as to which one I should be doing,
you know, if anyways, so that's how I got there. Yeah. It seemed like you didn't want to just have to have to use these scripts without
understanding what they were doing or the potential consequences.
Yeah. I think I've learned from, for instance, you know, copy and pasting our sync commands
that if you don't understand what it's actually doing, you can, you know, even the slightest
flag can get you in a lot of trouble. So I've wisely learned that it's better to understand what's happening first and then implement it.
But I was having a hard time with that because of the conflicting resources.
You deleted the whole MVP, Brent?
How?
It's just a dash D. I don't know.
You know, Brent, the thing that you said in there that I like a lot is you said, well, if I'm going to use this thing for a while, I should probably learn what I'm actually doing.
And that's the part that really clicked for me
is I really like that mindset and I have a very similar mindset.
And it's like, it's also having a kind of this confidence
that, yeah, you can probably figure this out, right?
You're clever enough to figure this out.
And if you're going to be using this,
you should probably know what you're doing.
And I like that.
So I'm really impressed. The only thing that's kind of a red flag for me and i'm sure the chat room's
probably picked this up and i'm sure it's going to be a comment so i should probably just bring
it up right now because i think you're probably under the influence but i don't know how many
times you said i don't know how many times you said it somebody maybe is keeping track but
wes suggested has come up a lot and i'm just a little concerned that perhaps there's a long-term campaign
by one of the co-hosts on this show to influence the other co-hosts
to become a Clojure developer.
That's all it's like.
How did you know that came up as well?
There's like a nice low-key campaign by Wes.
He's like, you know, maybe you should check out this.
You know, maybe you'd want to know more about this.
And he's just gently guiding you down a path right now.
I'm not prescribing anything.
I'm just going to try to suggest some, you know, interesting leads.
I'm on to you, Wes Payne.
I'm on to you.
Bitwarden.com slash Linux.
Get started with a free trial of Teams or Enterprise or a personal account at Bitwarden.com slash linux get started with a free trial of teams or enterprise or a personal account
at bitwarden.com slash linux i started years ago as an individual user then i became a subscriber
when i wanted a few more features it's really nice the way you can step it up you can absolutely try
it for free get a sense of what bitwarden can do for you and they get an idea if the value is there
i think you'll find it is, but you have that range.
You have that flexibility.
And our audience is always, I think, a little bit more comfortable
with software like this that's open source and Bitwarden is.
It's trusted by millions of individuals.
It has a very active community.
So you have Bitwarden support directly
and you also have a big community,
including many, many Linux users like Wes and I
that run Bitwarden every single day. Bitwarden has account switching support too, to make it really easy to switch between like a
personal account and your work account. Or if you're working on a free software project and
you want to keep your personal stuff and the project you're working on separate, Bitwarden's
great for that. They've recently introduced a username generator. This is just totally great.
So now why not have a unique username and password for every service you use,
right? But Bitwarden takes it even a step further and they're now helping you generate a unique
email alias for every service. And this comes across to the mobile as well. So if you're on
a website and you create a user account and a password, it saves it. Then you go log in on
your mobile device in the app. They figure all that out for you. In fact, they make it super
easy on Android to switch between accounts while you're doing the autofill in a login screen it's like next level
and on ios i love the face id integration love that it feels like the future it's so great using
a good password manager might be one of the best things you can do for yourself and your accounts
online i mean you might already know that maybe you haven't pulled the trigger yet but you probably
know that maybe go check it out if you haven't done this yet or maybe someone you know in your accounts online. I mean, you might already know that. Maybe you haven't pulled the trigger yet, but you probably know that. Maybe go check it out if you haven't done this yet.
Or maybe someone you know in your life,
in your workplace, friends, family,
maybe they need a little bit better password management.
Something like Bitwarden could really make
a huge difference for those folks.
And it's easy to get started.
Just visit bitwarden.com slash Linux.
Try it for yourself or your business and support the show.
That's bitwarden.com slash Linux.
And now, as the French say, it is time for Le Boost.
Bronze Wing boosts in six days ago with 1,337. That's LeetSats. Hey, Chris, take a look at OpenMTCP Router,
an open source solution to aggregate multiple internet connections. You can run it on a Pi
and even just add it to your current setup. Because I think you might want like one more
layer of NAT and that might be perfect. This could be great, actually. You know,
this is what he's saying here is
this is like an open source alternative to my peplink.
That would be a fun project.
And so to be clear, the project name is Open
MPTCP Router.
And we'll have a link in the show notes for that
because this looks really cool.
Anybody out there has any experience with this,
please let me know.
I would really like to know if that is a viable
option. Another boost from logic
six days ago 500 satoshis boost first we've got a tip then a question the tip is put underscore
nomap at the end of your ssid to break the wi-fi location tracking and increase your privacy this
is a thing i guess that i, but the Google truck would have to
respect that nomad thing.
That's really good to know.
A good tip.
Yeah, I've never tried that.
It's an ugly hack.
I'm curious about this nomad thing.
It seems obscure
and not like a standard.
Why would, you know,
can you give me some background?
Like, why would this work?
And where would this work?
And when would it not work?
Because it seems kind of like one of those hacks that only works in a very specific case. background like why would this work and where would this work and when would it not work because
it seems kind of like one of those hacks that only works in a very specific case yeah i think
constitutionally speaking there brent it's not a guarantee uh i think what it is is that when
google and apple and all these other companies that go around and do essentially war driving
and find locations of aps and tie them to gps coordinates i think they're supposed to just
respect this?
I think this one's a Google standard.
Microsoft, for instance, has a different one, which is
underscore opt-out.
This article from Android
Police suggests you could do both. You're getting
pretty ugly in your SSID, though.
So you have to add a long string
of exclusions to your SSID?
I hate that
so much. I hate that so much i hate that so much wow that's that's really
horrible we'll just all be unique in the order of our exclusions and that'll help that's how
i'll remember yeah it's good to know though and a question from this boost loving the live show
but boosting the show versus the last episode is this a workaround way to live boost in the short term at least?
Yeah. So the live boosting is, it's near, but we're not there yet. We have to start generating our own RSS feeds for that. And I'm going to have a chat with Alex Gates, the podcasting
2.0 consultant on Office Hours this coming week about how they are, how they're doing that right now
with PeerTube. So the setup is, is that you stream to PeerTube and you could do audio or video.
And then that pushes out to the podcasting 2.0 apps and they open up their app, like say Podverse
and you'll have your list of shows and Linux Unplugged would be listed there. It would just
have a live badge next to it. And then you would hit that and it would just tune the app into the live stream and you could boost sort of like a youtube super chat
during the show yeah i think that'd be i think that'd be really neat so just that functionality
alone i think is a brilliant brilliant idea like it's sort of silly that you have to leave your
podcast app to listen to a live podcast when you think about it should have always been in the
podcast app but because there's been no evolution of the standards,
there's been nothing that developers could implement. We've just
come up with solutions that are outside the podcast app. And I think that has been a detriment to podcasters
because imagine that means that it puts all of your subscribers,
gives them all of the option to tune in live when they want.
And that's also happen
to use some other random platform that might be discord or twitch or youtube right right i think
that could be really great and they're working on tying in cross-app comments that are based on
things like activity pub and whatnot so i think also xmpp so there could be a lot of really cool
solutions coming down the pipe so we are following it very closely, Logic, but it's still early days.
That's for sure.
The Linux trucker boosted in six days ago with 50,000 sats.
Because I'm a back home baller.
If I want something, I just holler.
Wow, thank you.
That's great, Linux trucker.
It's nice to hear from you, too.
They write, just wanted to say thank you for making Atlanta traffic just a little more tolerable each day and every day.
Self-hosted, unplugged, LAN encoder, keep the miles rolling and give me plenty of great ideas to fill my time at home.
Sometimes to the wife's chagrin.
You guys rock.
Keep doing what you do.
The Linux Tracker.
Thank you, sir.
That's very nice of you.
Golden Dragon also wrote in with a boost six days ago, 2,222 sets.
A row of ducks.
I would love to get into Git, but every time it seems to go awry, I have to give it another shot.
Well, we have a bunch of resources.
If you're into the internals of Git, I'm going to put a bunch of stuff in this week's show notes.
But last week, I think some of the resources we shared are a good place to start.
You know, too, GoldenDragon, perhaps you, like Brent, just needed to kind of understand the underlying technology better.
And so that could be the trick.
Boost!
Well, we've got a boost from Gene Bean.
Five days ago, 10, nice thank you gene bean if you
all are interested in a gooey forget even if just for the hard parts like resolving merge conflicts
then check out get cracking i love it and i think it helps ease people into get as well but oh wait
this is a double boost 1 000,000 additional stats and this message.
LOL, I sent my first boost before hearing the pic was get cracking.
This is hilarious.
And Gene Bean, don't feel embarrassed at all because first of all, thank you for sending
a second boost to clarify.
But you know, the great thing and also the tricky thing is the boost button is in the
podcast player.
So you don't have to leave anywhere to send us a comment. And so we say something and sometimes people comment on and then we cover it later in
the show that does happen occasionally but uh it gives us another chance to hear from you which
we like so there's that you know i will note that get kraken is not an open source project
though it can be very beautiful i did discover this week that I don't think I mentioned or actually some people wrote in
and suggested GitK
as an open source alternative.
Not quite as beautiful,
but kind of tries to accomplish
some of the same things.
So give that a shot too.
You might also try UnGit,
which is like a Node app,
a similar web app style.
So a lot of options.
All right.
All right.
User 386 boosted in five days ago with 5,000 sats.
B-O-O-S-T.
Listening to this show got me excited about my career again after it hit a slump.
When I started listening to LUP during the pre-Linux Academy days, I was on the help desk answering the same calls day in and day out.
I have been there.
I have been there.
I got so burned out.
I was dating myself, but I got so burned out fixing virus-infected XP machines.
Oh, God.
Just drove me crazy.
It just drove me crazy.
But user 386 says, now I'm a sysadmin at a decent-sized enterprise, and I get to tackle new challenges weekly.
Thank you for changing the trajectory of my career.
And a double PS, give that good boy Levi some pets.
Aw.
He is a good boy.
Yeah, yeah.
He's such a good boy.
I don't know if we can take credit for that 386,
but we do often hear that we help people keep their focus,
stay excited about the career they're in, and double down on it.
And that, I think, is a really good thing.
And if that's a part we can play, then we will gladly do so.
Yeah, keep boosting in.
Tell us more about your adventure sometime.
Yeah, do keep us updated.
we will gladly do so.
Yeah, keep boosting in.
Tell us more about your adventure sometime.
Yeah, do keep us updated.
Cospelin boosted in five days ago with 3,690 sats like he always does.
Do not, I repeat, do not
roll back a snapshot on an Umbral VM.
Oh, you will lose your sats.
We were mentioning last week,
like how should we do this update?
We thought, well, we could take a snapshot with a VM.
He says instead, do a channel state backup
and restore that if you need to.
Otherwise, the network will think you're cheating
if you try to restore a snapshot and we'll
close your channels and the funds will
go to the other party. Thanks for the
show. Well, that is a really good thing to know.
Mm-hmm. And Kaz
reached out on Matrix. He's like,
did you see my boost? I'm like, of course I saw
your boost. Yeah, of course I did.
Email? Eh, maybe.
Matrix Telegram?
Maybe. Twitter?
Maybe.
Boost? Yeah, definitely. That's your version of doom scrolling.
Yeah.
I just wait for it to scroll for me.
Anonymous also sent in a boost four days ago.
1,337
sats. Four score and boost four days ago. 1,337 sats. Four
score and seven boosts ago.
My vote is for Ansi.Sis
by Master Boot Record.
I think they mean for the song.
Chris, do you have this? I do.
Should we sample it? Ooh, I think
we could. Ansi.Sis by
Master Boot Record. Can you guys kind of guess what
sort of vibe this song is going to have?
Yeah, this is going to be pretty great. So great so chat room let us know what you think about it
i don't know if this is our winner but we have been searching for the song that we play before
we start the show to get us hyped to do the show every single week is this it Thank you. All right, what do you think, boys?
It sounds like sampling a dial-up modem to me, which I kind of like.
Yeah, and disc drive parts and stuff.
It's a fun song.
Yeah, it might be too intense instead of, like, happy or playful.
Yeah, right.
But what I like, one thing I think has going for it,
is I could see it really pulling us out of whatever mood we were in before.
It just captures you.
This part really sounds like disk drives right here.
Like you can kind of hear it, right?
Like the searching.
Yeah.
Yeah, I like it.
I could see adding it to our, our live stream mix of songs.
I think that's where it would fit really well,
but I don't think it is our start the show song necessarily because both of
you and I are a little lukewarm on it. How are you feeling Brent?
Yeah, I think, I think you're right. I enjoyed it,
but I don't think it's the song that we want to listen to every week for
endlessly. I would say the rest of our lives.
That being said, Endlessly, I would say. The rest of our lives.
That being said, I think we are honing into better and better suggestions all the time. We're kind of like narrowing the band of what we're accepting.
And I think they're all kind of in that sweet spot.
But we got to keep going.
Can't tell if Brent just complimented or called out the audience for the suggestions.
Both?
Maybe both.
Yeah.
We love the suggestions.
Keep them coming.
MG also boosted in five days ago with 512 sats.
It simply says, Airwolf.
Yes.
Yeah.
We got some votes for Airwolf.
I think Airwolf is my top contender right now, but I still don't know if I could marry it, you know?
Definitely wouldn't mind going out to dinner again with Airwolf,
especially some of the remixes.
Yeah, maybe we get some more remixes tossed in.
That would help rekindle things.
But like, as the holidays get close
and we're going to be recording a double or something like that,
am I going to want to listen to it twice?
We'll still have the same effect for those double days.
Good question.
Yeah.
These are the things, man.
These are the things we got to think about.
But we also got to think about thank you boosts.
Including 321 sets from Bon and a big old thank you boost from Jeff.
23,451 sets.
Dang, Jeff. Thank you. That's great. And also the ram for Brent, too.
I feel like that's a baller boost. Thank you, everybody who did boost in to support the show.
Don't forget, for the next few weeks, your boosts will
be split with Brent to help with his travel funds to get down to the studio so we can make some content while gas is super expensive and sats are cheap right now so
you can boost the dip you can buy a little more and send them in and make a bigger difference than
perhaps you could a few months ago we do have two picks that i want to cover before we get out of
here we've been talking about podverse on the show, and this is a new free podcast player, open source, free software that's on iOS, Android, and available for the web.
And I had a chat with one of the developers on office hours recently, and I asked him,
Mitch, and I said, Mitch, you know, would you consider releasing your web player as an
embeddable element that anybody could use on their website because it's
one of the best web podcast players i've ever seen and it it has great support to visualize
chapters and metadata and of course it does support boosts and supports playlists and
it displays the artwork really nice it's just a clean and really nice player and it's open source
and mitch said well actually we're already working it. And so this week they have released the embeddable podcast player from Podverse.
So you go to podverse.fm slash embed. And over there, they got a player demo that kind of shows
you how it works and your options there and how you customize the CSS. So not only is this just
a great podcast client that has a lot of the new podcasting 2.0 features, but now they've released it as an embeddable player for your website.
And I think we're going to look at it for the new JB website as a potential.
Very, very, very excited about that.
You know, I did notice that they use the Linux unplugged artwork for their demo and also some of their marketing material.
That's real kind of them.
Yeah, I feel like that might be a nod to our conversation on Office Hours, perhaps,
where I asked about that.
It is really neat to see how quickly
these podcasting clients are developing
and adding new features.
Speaking of new features,
an application that we talk about on the show
from time to time and absolutely love
for connecting our VPSs together, Nebula.
This is another mesh networking option that is also based
on the noise protocol i believe for encryption and uh nebula has been a tool that uh we kind of
did a roundup oh maybe a year and a half two years ago and and just sort of steadily use it and don't
talk about it a lot but version 1.6 oh it came out three days ago. And in here is a new experimental feature.
I guess it's one of their most requested feature, but it's the ability for clients to act as a relay.
So you can really bust through difficult network situations now.
Right, because if you recall, they've got these lighthouses, but that's really just for like setting up the connections.
And then the actual traffic was always sent peer to peer.
Yeah.
But now, presumably with these relays, you could have all kinds of relays set up in your private infrastructure,
public infrastructure, whatever you needed to keep the plumbing going.
Nebula's really cool.
So we wanted to have an opportunity to mention it on the show,
so check the link in the show note for that.
Version 1.6.0 brings that.
Surely that uses a Merkle tree under the hood somewhere, right?
I don't know about that, but it does use the noise protocol which wire guard also uses so
we love that so there's a lot of common threads and themes for our technology that we love
all right gentlemen is there anything else we need to mention before we get out of here
this week i'd say office hours on tuesday live sure office hours tuesday live join us over jblive.tv
noon pacific 3 p.m eastern it's the same time we do LUP on a Sunday.
We just do it on a Tuesday.
See you next week. Same bad time,
same bad station. And the
Mumble Room's open for office hours as well.
Details at LinuxUnplugged.com slash
Mumble. We have the quiet listening room.
You can hang out and get a super high quality
low latency Opus audio stream.
Or you can go to Jupiter.Tube and watch
the show live. Hang out with us over there
or get the replay,
or of course,
linuxunplugged.com
slash subscribe,
get the RSS feed,
and you listen to it
whenever the hell you want.
And last but not least,
a huge thank you to our members.
Our Unplugged core keeps us going
and gets special versions
of this show ad-free
and the full live stream
as a special thank you
because they matter to us. And you
can find out more at unpluggedcore.com. Thanks so much for joining us on this week's episode
of the Unplugged program. See you right back here next week. Thank you. so after this wes and i are gonna go cook up some food we've got some short ribs that are
sous vide they're in the bath right now you know i still tell people that we make food that way
like wait you soak it in water like yeah but it's in a bag. So it's like boiled?
No, it's not boiled.
It's like slow cooked.
That's right.
It's real slow boiled.
Real slow.
It's really what?
It's what the water has a thermal mass, right?
And that helps keep it a real steady temperature, right?
Whereas a slow cooker,
I mean, I guess it depends on the slow cooker,
but with the water, you got the thermal mass.
Yeah, right.
And you just keep it real tight, focused.
So here's how I knew that Wes was probably looking at his DHCP log yesterday.
Wes was like, he sends me his messages like, there is an ESP home on my Wi-Fi network and I can't figure out what this device is.
And I think I would know if I added like a smart home device to my network.
I usually do, right?
Right.
Like you'd know if you replaced your thermostat.
And so we're sitting there, I'm like,
chatting back and forth, and what could it be? And we're
talking about it, and I'm thinking
like, I don't want to suggest the obvious,
because it's kind of insulting to say like,
well, did you put a smart light in
anywhere? Like, obviously you're thinking of that, right?
But he figured it out. He figured
it out, and
you should tell him what it is. I don't want to steal it.
It's pretty great. It's the Sufeed? The sous vide itself has an esp home no way wi-fi network
i want to take it apart now and find it right i think that's so funny and you you do have to you
control this thing with an app so of course they needed a way to get on the network and do all of
that and of course the way they do you, it's all phoned home, too.
Unfortunately, I wish it was open source.
Of course, I tried to scan it and stuff, but all the ports are closed.