Episode Transcript
Transcripts are displayed as originally observed. Some content, including advertisements may have changed.
Use Ctrl + F to search
0:00
I'm really curious to know what your process is when something
0:03
dies in your home automation
0:05
setup. You know, one of these annoying
0:07
things like a controller going out or a
0:09
light bulb stopping working or you
0:11
know something like that where it just falls off the wi-fi
0:13
for no reason and and you're just like oh
0:16
I've got to go and investigate this. What now?
0:19
Yeah that is inevitable
0:21
when you have more and more devices
0:24
and of course these days
0:26
if I was going to deploy like an led
0:28
light strip or a temperature sensor
0:31
I would get a little ESP, put
0:33
ESP home on there, you know I
0:35
would build it modularly and then I would
0:38
just replace like the light strip if that died or just the
0:40
controller if that died but you
0:42
know past Chris didn't
0:45
really think that way and I'll give
0:47
you an example that just happened to me recently. I love
0:49
these LIFX light beam bars.
0:52
They're these bars that are magnetic and you can connect
0:55
like up to multiple pieces and make shapes
0:57
and whatnot and they're great for the bedroom, they're great
0:59
for the living room, they're just
1:01
great products except for they
1:03
have a proprietary controller and I don't
1:05
think they even make it anymore so
1:08
go figure one of ours died recently. I had
1:10
to go onto like eBay and go buy a
1:12
used controller so I could replace mine
1:14
and of course I've got this light because it's our it's our
1:16
headboard. I've got this light in a
1:19
couple of different scripts, multiple automations,
1:22
I don't want to like come up with a new name and then go change
1:25
everything so I have to go through this
1:27
process with the LIFX stuff where
1:29
you join to its Wi-Fi on your phone, you use their
1:32
little app to set it up initially, you get it on
1:34
your Wi-Fi network, then Home Assistant
1:36
will detect it if you have the LIFX integration and
1:38
what I do is before I take that
1:40
step
1:42
and I'm curious to know if the audience out there has a better way to do
1:44
this, I go rename the dead
1:46
one so I'll do like old
1:48
underscore headboard light
1:51
or whatever it might be
1:52
and I'll make sure I update that and sometimes
1:54
I'll even restart Home Assistant because I've noticed
1:57
when I rename devices it's not necessarily represented
1:59
everywhere right.
1:59
And so I'll sometimes even restart
2:02
Home Assistant. Then I will at that point, when
2:04
it detects the new light bar controller,
2:07
I then
2:07
go in there and add it and I give it the name
2:10
of the old one.
2:11
And that seems to work.
2:13
I don't do it a lot. So I don't know if I could recommend
2:15
it as the official process. Maybe there's
2:17
a better one. I would love just to like
2:19
a replace device option because these
2:21
things inevitably die. Or
2:24
I'd like to like have like a hide when device
2:26
doesn't respond because another
2:28
one is, I have smart plugs for
2:31
Christmas decorations.
2:32
I don't leave them plugged in throughout
2:34
the year when we don't have Christmas decorations
2:37
up. So I just, in my main dashboard
2:39
where I have all my devices, I just have these hairs.
2:43
You know, things are airing out. It just drives me crazy
2:45
to see it. I'd love a hide when inactive
2:47
kind of thing. But yeah, that's my
2:49
process. I don't know if it's great, Alex.
2:52
Well, whilst you were talking, I was sort of thinking, wouldn't
2:54
it be great if there was just a single pane
2:56
of glass with all of my entities in it?
2:59
But then I got thinking that exists,
3:01
that must exist in the interface. So I went digging.
3:05
And on the integrations page at the top, there
3:07
are four little buttons. And one of them
3:09
turns out is devices. Another
3:11
one is entities.
3:13
So under that menu, there
3:15
are, there is an easy way to get into
3:17
all of the different names
3:20
and sensors and all the rest of it that you've
3:22
got. However,
3:24
you know, if I just take, for
3:27
example, our Mazda is a 2022 model.
3:30
So it's got
3:33
a modem in it for some reason. And I
3:35
connected it into Home Assistant. So I could look at how much
3:38
petrol was in the tank. And if
3:40
I look at this thing, it's got, it
3:42
must be at least 15 or 20 entities, all
3:47
part of this same vehicle or
3:49
the same connected service. And
3:52
when you go in and try and figure out
3:54
which of these entities, because I mean, you
3:57
know, a Phillips hue motion
3:59
sensor, for example, also has a temperature and
4:01
humidity sensor in it. So it's
4:03
not uncommon for one entity to actually
4:05
have five or 10 related
4:08
things. So if I just click on one of
4:10
these items, I can of course go
4:13
to the related option in
4:15
the Home Assistant interface and look
4:17
at all of the related entities, but it's
4:19
not an editor that I'm in there. So
4:22
I guess what I'm kind of pitching here is
4:24
some kind of spreadsheet-esque
4:27
entity editor that I
4:29
could just actually go in and update in real time all
4:32
the device names and get everything just
4:34
formatted correctly. Right,
4:37
that was one of the reasons, one of the times I had
4:39
to redo Home Assistant. I was sort
4:41
of
4:42
reluctantly grateful because the
4:44
first time around using Home Assistant, I just
4:46
took all the default names that it just auto-generates
4:49
for stuff. And that was a nightmare
4:51
when I had six or seven sensors that all
4:53
essentially have the same name with a one, two, three,
4:56
four affixed to them. And
4:58
my life was so much easier when I realized I could go in there and
5:00
name them something that made sense to me. But
5:03
it was, like you said, so many
5:05
entities, so it's my sensors,
5:07
each sensor has seven or eight entities,
5:10
maybe nine entities that it adds to Home Assistant. It
5:12
was a nightmare. And so some way
5:15
to just, if you could go to that entities
5:17
or device screen and just go into mass edit mode, and
5:19
you're right, if it just turned into editable fields
5:21
where you could go in there and just change names and it would update,
5:24
that would be magic. One nice thing they've
5:27
added in the last year or so is
5:29
if you go to the device and you rename
5:31
it at its main device screen,
5:33
it will prompt you if you wanna rename all
5:36
the entities too. So you can do it one off
5:38
like that, which is what I do when I'm renaming
5:40
them to like the old device.
5:42
Well, that's what I've been messing around with these last few days,
5:45
but you have news of another variety,
5:47
don't you? I do. I am unemployed
5:49
officially as of this recording. I
5:51
have no current employer. Yeah,
5:56
I mean, I think for as long as I've made, you
5:58
were just getting the job at Red Hat maybe.
5:59
when I met you? Was that how it was?
6:02
Something right around then. So it's been five
6:04
and a half years if you can believe it. Yeah.
6:07
Obviously this show has only been going what,
6:09
four or so? Coming up to four in September
6:11
I think.
6:12
So yeah, I guess that
6:15
year that you and I first met Texas Linux
6:17
Fest the year before that, I was
6:19
probably fairly new in my first year or
6:21
so.
6:22
Okay, okay.
6:23
But yeah, it was just time for a change really,
6:26
you know, five and a half years at the same company.
6:28
I started as an infrastructure consultant in
6:30
the UK and that was
6:33
fine but there was just too much travel in
6:35
that role. And we were looking to emigrate anyway
6:37
so it was actually a perfect excuse. And
6:41
I found an open shift TAM job
6:43
dealing with commercial customers so
6:46
that meant that we moved to Raleigh even though
6:48
it was a fully remote position. Just
6:50
having the Red Hat Tower just there, HQ
6:53
there, I figured would be a good career move. Whenever
6:55
anybody came to the tower for a meeting or whatever
6:57
I could hang out and get FaceTime and all
7:00
the rest of it. And, you know, with
7:02
COVID that actually, I mean, for the first
7:04
year or two it was a really, that
7:06
bore out to be fairly
7:08
true. But after COVID
7:11
I've been to the tower, I don't know,
7:13
twice this year maybe, three times
7:15
at most. And I'm not alone. They've
7:18
closed a few floors of the building. It's
7:20
just a shadow of what it was
7:23
before COVID. So
7:24
being in Raleigh for Red Hat, lost
7:27
a lot of its benefits, I suppose.
7:31
So I wandered around within that role for a little while. I
7:33
was made senior and then I moved over to the
7:35
partner account team from the commercial
7:37
side. But more recently I took a cloud
7:39
success architect role and
7:41
that was to aid customers adopting open
7:44
shift in the cloud and that kind of thing.
7:46
However, right around that sort of time, three or four
7:49
months ago, was when Red Hat announced
7:51
the first round of layoffs.
7:53
The mood in the company really changed after
7:55
that. I can't, if you're not a
7:57
Red Hatter, it's hard to explain.
7:59
but people talk about the IBMification
8:03
of Red Hat and stuff like that. And for
8:05
the most part, it's just hype in
8:07
the media. It doesn't really exist. Of course,
8:09
there are higher level objectives from
8:12
financial targets and stuff like that that will
8:14
come down from upon high. But
8:17
in the day-to-day side of things, we've been largely
8:19
left alone
8:21
until these layoffs.
8:23
Now, I'm not saying IBM had anything to do
8:25
with them. In fact, we've been told categorically
8:28
that they did not.
8:30
However, for me, it was just a
8:32
shot across the bowels to say, OK,
8:35
let's see what else is out there. And I actually
8:37
posted on Twitter to say, hey, is
8:39
anybody hiring? And someone
8:42
from Tailscale reached out and said,
8:45
yeah, we're hiring. You should apply to come work
8:47
at Tailscale. So
8:49
that's what I'm going to go and do. That's
8:52
pretty great. I mean, we're huge fans of Tailscale.
8:55
So there's a handful of companies. I'd
8:58
be up for working for. And Tailscale is probably one of
9:00
them. And it's a totally
9:02
different kind of shift for you, right? Red
9:04
Hat's a very large company, tens of tens of thousands
9:07
of staff and contractors. And Tailscale
9:10
is at a totally different end of the spectrum there. Well,
9:12
when I joined Red Hat, it was around 11, 12, 13k,
9:14
something
9:17
like that, employees. I think
9:19
they were at like 22, 23,000 now. So
9:22
I mean, the growth has been spectacular. And
9:25
I don't know if it's true, but I've heard it's north
9:27
of 40 if you add contractors.
9:29
I couldn't comment on that. But in
9:32
terms of Red Hatters, certainly it's almost
9:34
doubled. I guess it pretty much has doubled
9:37
in the last five years or so. Yeah, crazy. But
9:39
Tailscale is a team of about 100 people. So
9:42
it's about as different as it could possibly be
9:44
if it was just me and someone sat in a room with a laptop.
9:47
Do you know if anybody else works in Raleigh? There is
9:49
a chap who is just moving from DC
9:52
locally. I'll spare his identity for now
9:54
in case he doesn't want me to say. Yes,
9:56
there is someone else in Raleigh, so that's nice.
9:58
I just wanted to say as well.
9:59
Well, I've had folks ask me on Twitter and stuff
10:02
like that if I was laid off. Nope,
10:04
not at all. It was completely my decision.
10:06
More so that this was just an opportunity that was so
10:09
good, I couldn't really pass it up. So I'm
10:11
gonna be working over there as a developer
10:14
advocate. So writing blog posts, dealing
10:16
with YouTube stuff and videos
10:18
and documentation and outreach
10:21
to various different teams and stuff like that.
10:23
And it's basically taking
10:26
what I've been doing
10:27
as a side hustle and turning it into
10:30
jobby job.
10:31
And I'm really excited to exercise
10:34
that creative muscle professionally.
10:36
It's not something I've done before, so.
10:38
And just totally selfishly, but you're probably going
10:40
to get more opportunities to meet up with self-hosted
10:42
audience, too. I will, starting almost
10:45
right away. Because DevOps
10:47
stays in Chicago is coming
10:49
up on August the 9th and 10th. And
10:52
I will be there with Tailscale. So
10:54
if you're in the area, I don't know
10:57
what the details are going to look like for a last minute
10:59
meetup. But it will either be the Tuesday or
11:01
the Wednesday evening. I need
11:03
to actually start working for the company next
11:05
week before I can find out those details.
11:08
And then I'll post something on the meetup page and
11:11
we'll mention it in various shows that we
11:13
can. I don't think this show will be out again before
11:15
then, maybe. I don't know. But
11:18
yeah, keep an ear to the ground for that one. And maybe
11:20
we'll just go to find a bar and get a couple of beers
11:22
or something. Nothing crazy.
11:24
Oh, I wish I could be there. Well, congratulations.
11:27
That's exciting news. And
11:29
I am
11:31
really looking forward to see where things go. Because
11:33
I think Tailscale's got a bright future ahead
11:35
of them. You're going to be riding that wave, Alex. Startup
11:37
life, baby. I am basically Ehrlich
11:40
Bachman personified. Yeah.
11:44
Yeah, all right. Well, let's talk about a company
11:46
that is in a different phase of
11:49
life where things aren't going so well. Some
11:51
of us are just running away from Reddit these days.
11:53
I don't know about you, but it's just not the same
11:56
anymore. And there's perhaps better self-hosted
11:58
ways to replace Reddit.
12:00
Yeah, we've all known. We've all been using
12:03
Reddit for years and thought, what
12:05
happens when this goes away?
12:07
And for me, the iOS
12:10
client Apollo stuff and the boot and, you
12:12
know, the API debacle that we've talked
12:14
about before, that was enough
12:17
of a push for me to be like,
12:19
okay, I am done investing time
12:21
and energy into this platform. It's still
12:23
obviously useful as a resource of human
12:26
knowledge, but
12:27
that's going to decay pretty fast if people start
12:29
leaving the platform. So it's going
12:32
to be interesting,
12:33
but that has left me with a hole to
12:35
fill, you know, the poop time.
12:37
You've got to have something to read or do. You know,
12:40
there's only so many times you can text Brent and say, Hey,
12:42
how you doing, bud? How's Berlin this week? And
12:45
we came across Wallerbag,
12:46
which is an offline article
12:49
reader in the style of something like
12:51
pocket or insta paper. And of
12:53
course
12:54
you can self-host it. They do actually offer
12:56
a hosted
12:59
version. It's MIT license though. There
13:01
is some Docker compose instructions available
13:04
and they make an API and
13:06
remote connection method available for apps
13:08
like
13:09
Android or iOS apps, browser
13:11
extensions. It's everything you
13:13
would expect from something like pocket, but
13:16
perhaps more of a power user version of it. Right?
13:18
Because,
13:20
because you get this API, there's
13:22
a gnome read it later app that plugs in with
13:24
it. It feels like, feels
13:28
like it's both replaces pinboard
13:30
and pocket for me, which I use both. I don't know if you're familiar
13:32
with pinboard, but I use both those right now. It's kind
13:34
of a way to save content for getting to later.
13:37
The nice thing about Wallerbag is how it presents
13:39
the articles to you just as basically
13:42
tiles. You can also change the interface
13:44
to be a list view and that kind of stuff, but
13:46
it downloads things to be offline. So
13:49
it saves the text of these articles. You
13:51
can add things like tags. You
13:53
can mark them as starred, you know, refetch
13:56
the original content is another option that's in
13:58
there. So if,
13:59
if it's a heavy updating
14:02
blog or something else, you
14:04
could update the content that way. It's also
14:06
got a jump to random button, which I really
14:08
appreciate. So if you're not quite sure what
14:11
you want to dig into at the moment, you just press the random
14:13
button and off you go.
14:14
So it works really nicely in the browser, no
14:17
complaints there at all. But obviously
14:19
the mobile experience is a huge part of why
14:21
I'm looking to do this kind of stuff. So
14:23
I ended up coming across a
14:26
tangentially related project called Fresh
14:28
RSS. And the reason I mentioned
14:31
this is because Wallabag exposes
14:34
the articles that you add to it as
14:36
an RSS feed. So I can then
14:39
bring that into my RSS reader, which
14:41
is actually spelled R-E-E-D-E-R,
14:44
the client on iOS.
14:44
I can bring in my Wallabag
14:47
feed as an RSS feed, as
14:49
my read it later queue. And so then
14:52
I've got one place to go for all the tech
14:54
blogs and all of the software
14:56
updates and GitHub release notes that
14:58
I want to follow as part of the
15:00
different feeds, as well as my
15:03
cultivated list of read it later articles.
15:06
That is really nice that it pulls it in there. Fresh
15:08
RSS is my favorite
15:11
of the self-hostable RSS applications
15:13
out there. It turns 10
15:14
this year,
15:16
which is really amazing. You can pop
15:18
podcast feeds in there too, which I really appreciate
15:20
because there's some podcasts I kind of follow
15:22
a little more casually. And so it's kind
15:24
of a great spot for it. And I suppose if you're on
15:27
mobile, you could probably just play it right there.
15:29
And of course, you can just pop in your OPML feed. So
15:31
if you're using something like Feedly
15:33
or another RSS app, you
15:35
can throw it in there. And
15:38
I seem to recall that the Linux server IO
15:40
folks have a fresh RSS
15:42
image. I'm thinking that's probably the one
15:44
I deployed the last time I tried it. You know,
15:46
what's funny is as part of all this, you
15:49
know, let's leave read it behind idea. I
15:52
started looking at the awesome
15:54
self-hosted list. And for some reason, I picked out
15:56
TT RSS, which is tiny, tiny RSS
15:59
reader. Right.
15:59
I've used that too. And I spent, it must have
16:02
been three
16:03
hours going through
16:05
the deployment of this thing. There are, it's just,
16:08
it's so opinionated. It's,
16:11
this developer has basically said, unless
16:13
you do things exactly my
16:16
way, including using the hard coded container
16:18
names,
16:19
this stack ain't gonna start.
16:22
And it's like, dude, the whole
16:24
point of containers is to remove
16:26
that it works on my machine problem.
16:29
And apparently I posted on a
16:31
Master Donald a little bit about it, had a bit of a rant. It
16:34
turns out that developer has some,
16:37
shall we say strong opinions about
16:39
the world. And he is not necessarily the
16:42
most friendly approachable chap.
16:44
So I haven't personally
16:47
dealt with that, but that's the reputation that the project
16:50
has, unfortunately. So it
16:52
was really a breath of, no pun intended,
16:54
fresh air when I started using
16:56
fresh RSS because I used the Linux server
16:58
image and within literally two minutes, I
17:01
had the instance up and running. It's
17:03
just so nice when stuff like that works. That
17:06
is the peak
17:08
self hosted Docker compose experience.
17:10
You set up your compose file, you do your
17:12
Docker compose up. And I
17:15
always, the first time I run it, I always just leave
17:17
the logs, the output right there on the command line and
17:19
just to see if there's any errors. And when it's
17:22
something simple and it fires right up, you're just, well,
17:25
wall bag is a little bit more involved. It's
17:27
not as bad as tiny, tiny RSS, but
17:30
it's, and it's not as simple as fresh RSS and
17:32
you don't necessarily need wall bag to use
17:34
fresh RSS. You could just throw an OPML file in
17:36
there and look at feeds, but the two together,
17:39
I think are a really compelling combination
17:41
because you can use one to capture
17:43
an archive stuff and the other than to review
17:45
it later in an application
17:47
of your choice that, you know, where developers
17:50
spend a lot of time just refining that
17:53
application to really view those feeds nicely
17:55
and clever. And you can point pretty much any
17:57
of those at fresh RSS. And so,
18:00
like the stack you've created here is like it's
18:02
three layers, right? Because you got wall beg for the capture.
18:04
You got fresh RSS for reviewing that and
18:07
other stuff. And then you need a really good
18:09
mobile RSS application.
18:12
But there's plenty of those on both Android
18:14
and iOS. So I mean, it's a pretty
18:16
clever stack. Now out of the box, I
18:18
ended up deploying both of these, I think,
18:20
with the SQLite database. You
18:23
can change that back end, particularly
18:25
on Wallabag. It supports Postgres and MySQL
18:27
as well.
18:28
With fresh RSS, the deal is the same thing.
18:31
SQLite by default, particularly in the Linux server
18:33
image, just for ease of setup. But if you
18:35
want to go in there and tune the Postgres or
18:38
MySQL databases as well,
18:40
you can also do that. So what you could potentially
18:43
have is just one database container shared
18:45
between these two apps, maybe, if you want to do that.
18:48
Although the overhead of having a second container
18:50
is so small,
18:51
I might just do that anyway. But they do
18:53
link really nicely together.
18:55
The big thing that I'm missing at the moment from
18:57
the Reddit days is not
19:00
the quality of comments, I will just say, because it's
19:02
been a real shock to my system, going back
19:04
to
19:05
purposefully written
19:07
articles and blog posts. You
19:09
think someone's put some time into crafting
19:12
this thing versus a comment
19:14
that someone's literally just s*** it out onto
19:16
Reddit that's given three seconds thought.
19:19
I mean, there are the odd exception on Reddit,
19:21
of course, but the majority of it
19:23
is just brain dumps into random
19:26
comments and arguments and that kind of stuff.
19:29
But along with that kind
19:31
of brain dump, low-quality comments
19:33
comes a lot of discovery,
19:35
which I'm really missing from this
19:38
solution at the moment. I'm having to actively go and
19:40
seek out blogs and go and
19:42
seek out content and stuff like that in a way I
19:44
haven't had to for a decade.
19:47
So if you have a list of
19:50
your favorite blogs or something like that, I've
19:53
been considering putting together a list
19:55
on the self-hosted wiki of your favorite
19:57
blog posts, of your favorite blogs and things.
19:59
that you follow in categories and
20:02
that kind of stuff. I'm not quite sure the format it will take
20:04
yet but I'll sort of I'll try and seed
20:06
that before this episode airs on Friday just
20:09
so that we can all get an idea of what to do. Open
20:11
a PR, open a merge request and we'll
20:14
take a look at it and get it merged into the wiki.
20:17
Linode.com slash SSH head on
20:19
over there to support the show get $100 in
20:21
60-day credit and check out the exciting
20:23
news. Linode's now part of Akamai. All
20:26
the developer-friendly tools like the cloud
20:28
manager that's beautifully built, the API
20:30
well documented with lots of libraries ready to go and
20:32
the CLI I use on the daily. The stuff
20:34
I've used and you've used to build, deploy and
20:36
scale in the cloud that's all still available
20:39
but now
20:40
it's combined with Akamai's power and global
20:42
reach. They are the top tier network
20:45
and they're expanding their services to offer more cloud
20:47
computing resources and tooling but making
20:49
sure you still get that reliable affordable
20:52
and scalable solution for yourself or
20:54
a business of any size and as part of Akamai's
20:57
global network of offerings their data centers
20:59
are expanding worldwide giving you access
21:01
to more resources so you can grow your project
21:03
or your business and serve more customers
21:06
and more clients.
21:07
So why wait?
21:08
Go experience the power of Linode now Akamai.
21:10
Visit linode.com slash SSH. Go
21:13
there to learn how Linode now Akamai can help
21:15
scale your applications from the cloud to the edge and
21:17
you'll get $100 in 60-day credit while
21:19
you support the show. It's a pretty sweet deal
21:21
and you can really kick the tires. Linode.com
21:24
slash SSH.
21:27
Anybody know Dust?
21:30
This is an old one that's an old sort of deep pull
21:32
for some of the UK audience there but
21:35
I found an app recently called Dust
21:37
and this is a this builds itself as a more
21:39
intuitive version of DU
21:42
in Rust of course. We need the theme tune
21:45
at some point.
21:46
Wes is going to come riding over the sun
21:48
over the horizon. That'd
21:52
be so great that'd be so worth it. I
21:55
like the the visual layout of this I mean first of all
21:58
these are really handy on the command line because
21:59
because I'm often SSH-ing into my file
22:02
server or my media server, trying to figure
22:04
out what folders I can
22:06
go trim from. And so this gives you a really
22:09
nice tree layout
22:11
on the left-hand side. And on the right-hand
22:13
side, it gives you a bar graph. It's
22:16
a nice way to lay it out.
22:17
It is, and the way that I've been doing
22:19
it for the last several years has been
22:21
using NCDU. And
22:23
it's kind of slow to index
22:26
files. You get the impression it's actually reading every
22:28
single file one at a time, which
22:31
leads me on to my next pick, which is
22:33
an app called DUF, Duff. This
22:36
is disk usage free utility,
22:38
which also builds itself as a better
22:41
DF alternative. So DF and DU,
22:43
those two tools are pretty much interchangeable to
22:46
find out different amounts
22:47
of file system usage.
22:49
And the thing about Duff is it's unbelievably
22:53
fast.
22:54
And it outputs to JSON,
22:56
which I wouldn't use, but
22:58
I know there's guys out there that could actually,
23:01
if you could take that storage data output it to JSON,
23:03
you could feed that into something useful.
23:05
Well, some kind of alerting server or something like that,
23:08
maybe Prometheus would chew
23:10
that in and be like, hey, bud, you've only got 10% left
23:12
on this disk. You should probably
23:15
do something about that soon. Hey, bud. Hey,
23:17
hey, hey. Hey there, bud. You know, it's a funny thing to
23:19
say, and you're gonna have to just accept it. These
23:21
command line apps have beautiful interfaces. This
23:24
is a great example of super
23:26
easy to read, glanceable information
23:29
that anybody new or experienced
23:31
could look at this and understand what it's telling you. And
23:33
it's crazy fast, like you're saying. Yeah,
23:35
yeah, it is. And one of the issues that I
23:37
have with DF typically is, and
23:40
I've written a Bash alias, which removes
23:43
a lot of these tempfs devices and all the
23:45
Docker volumes and that stuff. But
23:47
when you type DF-H typically,
23:50
is it DF-H? Yeah, for human
23:52
readable. You get this list of like 500
23:54
devices. I'm
23:56
like,
23:57
no, dude, calm
23:59
down. I just want to see how much
24:01
free space I've got on
24:04
one of my hard drives. It's so
24:06
bad if you've got snaps too. If you've got a few snaps
24:08
running, it's...
24:09
Yeah, really bad. Now
24:13
I mentioned NCDU a couple of minutes ago. This
24:15
app, dua-cli,
24:18
dua-cli, is a disk
24:21
usage analyzer tool, which
24:23
is...
24:24
I know I said the last one was fast in terms
24:26
of glanceable information, but when you run this,
24:29
compared to NCDU, it literally
24:31
feels like...
24:32
How could it possibly be done already?
24:35
Yeah, it's like, does it already know some... Yeah,
24:37
I use this one on the regular because it
24:39
is so dang fast, dua,
24:41
and also 90% written in
24:45
Rust. So these Rust apps are
24:47
just ludicrous fast. Yep, they
24:50
really are. Now I came across these things
24:52
whilst I was browsing through, and this
24:54
is going to be a trigger topic maybe. We'll
24:56
see. We'll see how it goes. But
24:58
whilst I was browsing through Wimpi's world,
25:01
he has posted his NixOS
25:04
config. Oh
25:05
really? Okay. I looked at a bunch
25:07
of the packages that Wimpi was using and I found these apps
25:09
in there and I was like, oh hey, I
25:11
should try these things out. Oh, I
25:13
do that too. I look at people's Nix config and I find
25:15
the apps and I try them out. So
25:18
I think I've seen the light in the last week or so
25:20
with Nix. Now tell me what the
25:22
breakthrough is. Right. I'm going
25:24
to cut Nix a bit and I'm curious to know what the shift
25:27
was.
25:27
I can define my entire system
25:30
in one file.
25:33
Two technically, if you include the hardware config
25:35
file. But I can read it and
25:38
it's glanceable.
25:39
Almost like some of the command line tools
25:42
that we just mentioned. You
25:44
know, I can say, well, what are my users?
25:46
What is my static IP configuration?
25:49
You know, what are all the packages on this
25:51
box? The reproducibility
25:53
angle doesn't really bother me that much. It's
25:56
certainly not to the degree that
25:58
I
25:58
would. Nick's because
26:01
of the reproducibility.
26:03
But if I was a developer building development
26:06
environments and that kind of thing,
26:07
oh my goodness, this is like the best
26:10
thing ever. This is what containers promised,
26:13
but the the entropy of,
26:15
you know, apt repos even.
26:18
You can't guarantee that building a
26:20
ten-year-old software package is going to build today
26:22
because some of the upstream dependencies
26:25
will have gone away. And
26:27
with Nick's, they solve that by having a huge,
26:30
what they call, mono repo with
26:32
over 80,000 packages
26:35
in a single repo. And
26:37
they have every version of that package
26:40
that's ever been made stored
26:42
in that repo. It just boggles
26:44
the mind how expensive that storage must
26:47
be. I know. And what I love about
26:49
it is it's allowed
26:51
me to experiment with mixing
26:53
stable and unstable versions. So, for example,
26:56
if
26:57
you wanted to, you could run a sort
26:59
of rolling Nick's OS by going completely
27:01
unstable. But you could then
27:04
say, but always give me plasma
27:06
that's stable, or always give me stable
27:08
Firefox. And you could also do the flip. You could have
27:10
a completely stable system, but
27:12
always have the unstable version of some of your
27:14
favorite packages. And you can mix it, and Nick's
27:17
just totally manages it. And as you know,
27:19
and this is true for other systems as well, but what
27:21
I love compared to say apt
27:23
or DNF
27:25
is if something's going to break, and I'm not
27:27
just talking like at a package resolution
27:30
dependency level, I'm like talking the
27:32
configuration of the service that you're about to deploy
27:35
as well. Like if something's wrong in the config,
27:37
it will stop and it'll give you the line number
27:39
to go fix it. And so you catch stuff
27:42
before you actually deploy it. And that
27:45
is, to
27:46
me, so nice, because I can
27:48
sit there, I can tweak it. Okay, does it build now? Oh,
27:50
no. Okay, I gotta go fix. Okay, does it build now? Okay,
27:52
I got it. All right, now I know. And then when I'm
27:54
working on my desktop, because I have it running on my desktops
27:57
and laptops too. I
27:59
love using
27:59
I'm using VS Code to edit my Nix config because
28:02
I've got the Nix language extension.
28:04
And I just fire up VS Code,
28:07
change a line, save it, it
28:09
prompts me for the sudo password, and I
28:11
hit rebuild and I'm done. It's
28:13
such a slick way once you learn
28:16
to live in that Nix config. And I
28:18
know I could break it out more, but like you, I just put
28:20
it in the main file plus the hardware file, and
28:22
everything that describes my system is there. This
28:25
last week, Alex, I was reviewing the InfinityBook
28:28
Pro 14 from Tuxedo, and
28:30
I wanted to try Tuxedo OS for a bit,
28:32
and then I wanted to put Nix OS on there. And
28:35
I loaded a bare Nix OS system on there, just
28:37
a real basic kind of install, just command
28:40
line,
28:40
and
28:41
SSH'd over a Nix config, changed
28:44
the hostname, changed a couple
28:46
of the bootloader things, and that was it. Rebuilt
28:49
the system, rebooted, and I had a full
28:51
working desktop system with all my applications.
28:54
It is kind of crazy, and I think the
28:57
use case really for me is
28:59
as a somewhat, you
29:02
know,
29:02
educator on the internet of
29:05
some description anyway, you know,
29:07
perfectmediaserver.com,
29:09
I've often struggled with the
29:12
fact that, you know, compared to something like,
29:14
say, Unraid, which is flash
29:17
this image onto a USB key and boot,
29:20
you've had to go through the process,
29:23
and admittedly it's gotten a lot easier over the
29:25
last decade, but you've had to go through the
29:27
process of installing Linux from an ISO
29:29
on the bare metal hardware.
29:32
Then once you've done that, you know, if you
29:34
were to follow my dog food all the way through, you
29:36
then have to go and learn Ansible and configure
29:38
these complex playbooks and understand
29:41
SSH and just all this stuff
29:43
that
29:44
I don't think is
29:46
unreasonable to learn for
29:48
someone who's in the industry, but if
29:50
all you want to do is just set up a simple file
29:52
server that's got some TV shows and
29:54
some movies on it, for example,
29:57
honestly, it's a bit much, whereas
29:59
if we tell people to install Nix
30:02
OS for example and then I say oh by
30:04
the way you just copy pasta this exact
30:07
Nix configuration and by the
30:09
way you'll get ZFS out of the box you'll
30:12
get hardware acceleration for your iGPU
30:14
out of the box and you can just set
30:16
your static IP here and your users
30:19
and you can install a desktop if you want to.
30:22
There is no downside there
30:25
is no downside and that's really what hit me
30:27
this week. It feels like we
30:29
it's finally a version of Linux that's fully managed
30:32
and controlled the way Linux should be. Like
30:34
a lot of times on a system
30:36
that's RPM based or dev based
30:39
not 100% of the time but most the
30:41
time I don't uninstall software I
30:44
just install software because uninstalling
30:46
software every now and then goes
30:49
awry and I've got I've got Ubuntu
30:51
systems that I've been running since 2018
30:53
and
30:54
I'm probably underestimating if I say
30:57
three times a year I end up having to break
30:59
down to like a TTY and
31:01
like resolve a boot issue or solve some
31:03
sort of broken package problem and dash
31:06
dash fix broken install or whatever
31:08
it is yeah yeah and then of course
31:10
you gotta you gotta go do the auto remove stuff
31:12
and you gotta make sure like you don't fill up the boot part
31:14
like all these silly things that
31:17
Nix just takes care of ahead of time and
31:19
catches it before it does things and
31:21
you just follow that
31:24
which is essentially like YAML in the Nix config
31:26
and it it's just easy to read and it makes sense and it
31:28
doesn't take a very long
31:30
time to pick up
31:31
if you're willing to just take it a little bit at a time and the
31:34
fact that there's so many good and yours you'll
31:36
have it linked in the show notes is a great clean
31:38
example there's there's a lot of really complicated
31:41
Nix configs out there but what I like about yours is it's
31:43
just right you know and I think it's a good example
31:45
for people to look at and this defines a system
31:48
it's 115 lines
31:50
with some comments in there and stuff like that and
31:53
it defines the entire environment that's
31:55
just it now if you
31:57
are looking to get more complicated
31:59
Oh boy, will Nick's
32:02
OS let you?
32:03
I thought, you know, I was watching
32:06
some YouTube videos about it and doing some research
32:08
and I started going down the rabbit hole of flakes.
32:12
Now these things are,
32:15
to quote Douglas Adams, big. So
32:18
mind-bogglingly big that you won't believe
32:20
just how big slash complex they
32:22
are. They must be a software
32:25
developer's wet dream because they are
32:27
just unbelievably difficult
32:29
to get started with. And I really
32:32
tried. I really did. I spent two or three evenings
32:35
and
32:35
a good chunk of my weekend trying to
32:38
implement these flakes.
32:41
And the idea behind them is as part of this
32:43
reproducibility problem, they
32:46
create a .lock file. So
32:48
you have a flake.nix file that you put some stuff
32:50
into and then alongside it you have a flake.lock
32:53
file. And that creates a
32:55
hermetically sealed timestamp
32:58
for all the dependencies in that
33:00
.nix flake file to say
33:02
on this exact moment in history, this
33:06
flake must always be built against this
33:08
.lock file and you will always use
33:10
this exact version of these packages
33:12
forever, no matter what.
33:15
I understand that that is actually
33:17
amazing and it solves a lot of problems for
33:19
a lot of people.
33:20
For me, it doesn't solve a problem that
33:22
I have. What it does do is
33:25
it creates a whole plethora
33:27
of unbelievably complicated,
33:30
like that house of cards just
33:33
trying to understand how the
33:35
Nix OS language works. Okay, that's fine.
33:38
It's not that complicated really to
33:40
understand. I mean, I'm used to Python.
33:42
I'm not used to Haskell
33:45
or anything like that that's a bit more close
33:48
to the Nix OS language. But I think if
33:50
you're rooted in the world
33:52
of being a software developer,
33:54
maybe like Wes, then Nix
33:56
OS and flakes will just
33:58
be right up your street. but for me
34:01
it's just so difficult
34:03
to understand what the concepts even are.
34:06
I mean
34:07
I understand the hermetically sealed part,
34:08
that bit's easy to understand, but
34:11
everything else is just like,
34:14
okay so I need to inherit this from here
34:16
and then I need to recreate Nix packages
34:19
over there with this syntax and then I import
34:21
it over here and like before you know it you've
34:23
got 15 files in a directory and you're
34:25
like
34:26
well the whole drawer
34:28
of this thing was the single config
34:31
file of beauty, of simplicity
34:34
and I understand you know looking at wimpies
34:36
config for example he's
34:39
got one flake file that can define like 15
34:41
systems.
34:44
Okay that is that is cool
34:47
but I could just have 15 files
34:49
that define 15 systems without all
34:51
of the complexity. I don't know
34:53
if that makes me a Luddite or what but
34:56
I've really tried with flakes but they're just
34:59
they're just too hard. I feel like this
35:01
is the number one sentiment I hear when the audience
35:04
tries out Nix and it's exactly how I feel too Alex
35:06
and I think the way I describe it is
35:09
all of the language that talks about flakes
35:11
sort of presumes a bunch
35:14
of tribal knowledge already and
35:16
so you almost have to spend a day
35:19
learning how to speak flake and ease
35:21
before you can even kind of start to wrap your
35:23
head around it and that's such a huge barrier
35:25
and I've tried to I've tried to explain to
35:27
the folks like we have a Nix nerds matrix chat
35:30
room which is a great chat room a great resource
35:32
and the folks in there know it so well they're just like oh what are
35:35
you talking about you do this this that and there's no big problem you've got three
35:37
other ways you can do it it's easy. It's
35:39
like when you go to a mechanic shop and you're like well I've
35:41
got this issue and he's like oh well you just need to replace
35:44
the Regina Phalange flux
35:46
capacitor and you're like okay.
35:48
Once
35:49
you got a lift just put on your lift and
35:52
I look at it as I already feel
35:54
like Nix is so far exceeding
35:57
my expectations like I've got not only do you have
35:59
what you
35:59
can define in the
36:01
Nix configuration. But one of the things
36:03
I love as somebody who's just trying stuff out all the time is
36:06
Nix shell dash P package name and Nix
36:08
just builds a temporary environment
36:11
with that application. And then when you close it, it's
36:13
ephemeral, it's gone. And so I can just
36:15
pull down any old package for a few minutes and
36:17
use it. And that combined
36:19
with what I can do with the just configuration
36:22
already, I'm just like, I
36:24
don't yet have the need for flakes because I
36:27
never had that on any other distribution. And it's already
36:29
doing more for me than any distribution already has
36:31
done. So I've been happy. But
36:34
I do feel like a bit like you're like, am
36:36
I, let I hear my missing out on something? Because
36:38
the thing I always hear about flakes
36:40
is well, then you get home manager. Yes. And
36:43
home manager is really where the like
36:45
power tools are at. And I do feel
36:47
that draw.
36:48
Me too. And I will
36:50
keep plugging away at flakes, but there
36:52
just came a point where I'd spent maybe
36:55
three or four days
36:56
trying to understand it. And I was
36:58
like, this is beyond me. And it's not
37:00
toot my own horn. It's not often that that
37:02
happens with Linux and stuff these days.
37:05
So it's kind of a deflating feeling to
37:08
realize that and then admit it publicly in a podcast
37:11
as well. So I spoke
37:14
to a few people on Mastodon about
37:17
trying to get some help and some example flake
37:19
configs I could understand. And I think
37:22
another part of the issue to build on everything
37:24
you've just said
37:25
is everybody does it slightly
37:28
differently.
37:29
And so there isn't like a recipe
37:32
and because they're still officially an experimental
37:34
feature in the Nix world,
37:37
the official documentation
37:40
doesn't really cover flakes at all, even
37:42
though they are, everybody says, the
37:45
future. So
37:46
for me, for now, I'll be sticking to
37:48
configuration.nix because it's something
37:51
my simple brain can comprehend and
37:53
understand nice and easily. And
37:55
I'll probably migrate perfect
37:57
media server maybe by the end of the
37:59
year.
37:59
I'll rewrite that a little bit, just
38:02
towards NixOS because it really, for
38:05
most people, is going to do everything
38:08
that you need.
38:10
Tailscale.com slash self-hosted.
38:13
Go check it out right now and get a free personal account
38:15
for up to 100 devices and it's a great way
38:17
to support the show. So it's tailscale.com
38:19
slash self-hosted. Now, Tailscale is
38:22
a solution for a team of any size. An individual
38:24
or a large enterprise that just doesn't want
38:26
to have to deal with the annoying old-style
38:28
VPN systems that are costly
38:31
and complicated to maintain.
38:33
What Tailscale does is it uses
38:35
WireGuard to create a mesh network between
38:38
your resources.
38:39
It lets you easily build out, in
38:41
minutes per device, a network that's
38:43
flat and talks directly to each other using
38:46
WireGuard's noise protocol. It's perfect
38:48
for those of us that like to self-host. You can put
38:50
your services all on your tail net and
38:52
you don't need to bother with port forwarding on your firewall
38:55
if your ISP doesn't allow a certain inbound
38:57
port because it's all private traffic now.
38:59
And each device, like your phone
39:02
or your tablet or a VPS or your desktop
39:04
computer, which doesn't matter what the OS is because they support
39:07
ARM and Intel and just the whole range out there.
39:10
And they give you great tooling too, like Tailscale
39:12
Send, which is sort of like AirDrop,
39:14
I guess, but for all of your devices
39:16
on your tail net. Doesn't matter their OS.
39:19
Or Tailscale SSH, which lets you log in
39:21
to all of your Tailscale devices. There's a lot more
39:23
too. Alex and I use it to share resources
39:26
between our networks. So when we're trying something out
39:28
for the show, we share it over Tailscale. And
39:30
then I just put his DNS domain
39:32
name in, put his port in, and boop, goes over Tailscale,
39:35
all protected by WireGuard. It's so elegant
39:37
and so easy. It's going to change your networking
39:39
game. So support the show and try
39:41
it for 100 devices for free on a personal
39:44
account. Just go to tailscale.com
39:46
slash self-hosted. That's it. And
39:48
you get started for 100 devices right there. Tailscale.com
39:51
slash self-hosted.
39:59
But we did jelly fin January and for
40:02
the most part it's been going pretty well. There was a couple
40:04
of rough edges that we touched on back
40:06
in February. But
40:07
I've been having a great time over there on the jelly
40:09
fin source. But
40:12
you had a dad fail the other day. Oh,
40:14
it was embarrassing Alex. Worst
40:17
case. Worst case. One
40:19
of those days where
40:21
literally all day long the
40:23
wife and the kid are talking about how
40:25
we're going to watch Dune tonight. We're going to have dinner.
40:28
We're going to pop popcorn. We're going to sit down and we're
40:30
going to watch the whole Dune movie, which is a long movie.
40:34
I think great. I have a cache locally on my jelly fin
40:36
server here in the RV.
40:38
Plenty of charge in the batteries. We're
40:40
good to go. I fire up infuse
40:43
and it's
40:45
going great. You know, it's a long movie. We're an
40:47
hour and 25 minutes into it and
40:50
I accidentally bump the Apple TV remote.
40:52
And this thing, if you fart on this Apple TV
40:54
remote, it triggers stuff.
40:57
And it closed the app.
40:59
Okay. So I relaunched
41:01
the app and it resumes the app and it tries to start resuming
41:04
the video,
41:05
but it fails and it goes back to the main screen and airs
41:07
out with the generic air.
41:09
And it says, okay, would you like to resume in an hour and 25 minutes?
41:12
I say yes. And
41:14
after it waits and it waits and it waits,
41:16
it resumes the movie at like six minutes. Then
41:20
I pause and I wait and I wait and it resumes
41:22
at like 25 minutes. It's having a buffer
41:24
at each time. And so
41:26
we wait about 10 minutes trying to figure
41:29
out what's wrong with it. And when we finally just decided
41:31
to wait and let it buffer and then try to get to our time,
41:33
it's playing just fine for about 10 more minutes.
41:36
And then it crashes.
41:38
It stops. The stream just stops. So
41:41
I check the server. Everything's looking okay. I
41:43
think, all right, we're going to leave infuse. Let's
41:45
go use Swift fin. You know, that's a newer
41:48
app built for Jelly fin. Let's use
41:50
Swift fin. So I go over
41:52
to Swift fin, get it all configured
41:54
again because for whatever reason it lost the config. That's
41:57
fine. So I set it all up again, get it connected to my Jelly fin
41:59
server.
42:00
Hit play and
42:01
it's the same exact
42:04
experience It it's exactly
42:06
what like what happened in fuse where it plays six minutes
42:08
instead of an hour 25
42:10
We gave up with 20 minutes left on the movie
42:13
Ultimately, we gave up because we were having
42:15
so many problems once that remote got
42:17
bumped We never were able to really get going
42:19
again. And man is that embarrassing,
42:22
you know Made your dad fail
42:24
and then the thing that really stung
42:27
Is I opened up the Plex app which is configured
42:30
to connect to the Plex instance I still have running back
42:32
at the studio. So over my star link and
42:35
Opened up Dune just
42:37
to see and fast-forwarded and
42:39
went to the hour 25 mark
42:41
15 seconds or so after buffering it
42:44
played just fine same file. Yep same
42:46
file
42:47
Same file cuz I copied it from that server
42:49
to my local copy because that's where my mind went immediately
42:52
And it's not even a necessarily it's not a big file. It's a
42:54
1080p file It's you know, it's like 13 gigs.
42:57
I didn't get it. I didn't get a super high res version
42:59
either
43:01
As you combine that with the fact that Wes
43:03
and Brent want to do watch along
43:05
with Star Trek strange new worlds And I think the Plex
43:08
feature sets just a lot more
43:10
robust there for the watch
43:12
along stuff I'm feeling
43:14
like the Plex siren after like six months
43:16
of being really happy with jelly fin Yeah,
43:19
what I mean, we both still keep them knocking around
43:21
anyway
43:22
You know prologue on iOS is the
43:24
premiere audio book Client
43:27
and you will not convince my wife otherwise even
43:30
though audio bookshelf has had a lot of improvements
43:32
over the last year or two
43:35
Yeah, I mean for me if I open up Plex
43:37
or jelly fin on the client side, I mean, it's not
43:39
it's not a big deal Is it as
43:41
long as I guess you still try and default to jelly
43:44
fin then? Everything's
43:46
okay ish. What
43:48
about all of our concerns of You
43:51
know Plex as a company in their direction and
43:53
scraping data and they just laid people
43:55
off So clearly, you know, they're gonna have to find
43:57
a revenue stream from somewhere. I
43:59
still will I still maintain those concerns.
44:02
I also I think I just think jelly fin is
44:04
a better experience offline I mean, yes, I know
44:06
I can go allow the land access and all that kind of
44:08
stuff in Plex, but it's a workaround I don't like
44:10
it. I don't like any of that. I don't like having to have
44:12
a Plex account You know, even
44:14
though I'm a lifetime past subscriber I still
44:16
just just want to play my local files and
44:19
I don't want anybody to know anything about what I'm watching
44:21
Yes, the tin foil has approach
44:24
but then you know you're sitting there trying to watch a movie
44:27
and You're in the last 20 finally
44:29
you make it the last 20 minutes and you give up
44:32
That is almost a disqualifier. You know
44:34
that moment.
44:35
Well, do you want me to ruin it for you? Hmm.
44:37
Okay, everybody lives Or
44:40
dies. I don't know I'm
44:45
I don't have the time right now. So I'm probably not gonna swap
44:48
out but You
44:49
know, I guess to finish the movie We're gonna watch it off Plex
44:52
remotely instead of watching my local copy over
44:54
the layer you filthy Proprietary
44:56
garbage supporting man you I know
44:59
it's not even local It's my own cloud but
45:01
still somebody else's computer right just my computer
45:04
somebody it's another place I actually had a listener
45:06
right in just sent me a message in discord
45:08
this week to say because
45:10
of you I was going to put
45:12
something in Trello the other day and
45:15
Then I was thinking
45:17
do I trust this company with my data?
45:20
No, I Don't and
45:22
so they went and found a self-hosted alternative the name
45:25
escapes me right now
45:26
But I think it's a very important principle this
45:29
kind of guilt of using
45:31
the non perfect solution
45:34
Plex is the perfect example.
45:36
We know there are flaws with their business
45:38
model with them as a company and
45:40
all the rest of it
45:42
but sometimes it just gets
45:44
the job done and I
45:46
don't know if I don't know if Just
45:48
simply by the fact that we're using something like
45:50
Plex puts us in the top 1% of media
45:54
consumers anyway So
45:57
people probably aren't looking at us, but you
45:59
know there is this sense of guilt for any
46:02
self hosted for any hosted
46:04
service that we should be doing
46:06
the most pure, the most technically, you
46:09
know,
46:10
perfect approach. And I think
46:12
one of the things I've always tried to do on this show is
46:14
kind of lean into the pragmatism angle.
46:18
It's a fine line to walk. I'd love
46:20
to hear what you think. So please write in at self
46:22
hosted show slash contact.
46:24
Yes. And speaking of the feedback, Jericho
46:27
wrote in. He wanted to share something called
46:29
Post Moogle. He says it's
46:31
a program after you get a self hosted mail server.
46:34
It'll let you set up an email server that is also
46:36
a
46:36
matrix bridge. Why
46:39
would I want to do that, then? I would. You know what? Well,
46:42
if I could have
46:44
it's kind of like RSS in a way, if I could have
46:46
my emails output to a room, if
46:49
you're already living in element, let's say.
46:52
You know, or maybe it's Slack, whatever it may be, but if you're already living
46:54
in this case, an element, then it's kind of
46:56
nice to have a room that collects notifications
46:59
because I can I can get so busy. I can, you
47:01
know, go a day without checking my email and then
47:03
I get a bunch of upset people in there. So I could
47:05
kind of see it.
47:06
I don't know. I can kind of see it. Moogle Post
47:09
Moogle.
47:09
So we'll put a link in the show notes. I just wasn't sure
47:12
of quite what the use case was, but that makes sense.
47:14
Yeah. Or maybe like in our case, right? If like
47:17
people wrote into the self hosted show and
47:19
we had a shared room between us, then we would
47:21
both get a notification in that shared room about an email. That
47:23
could be cool. Martin writes in, it
47:25
says, hey, Chris and Alex, longtime listener. I've
47:28
been on the search for a note app and I know Chris was
47:30
too lately. I've been finding a lot of value out of
47:32
notion like note apps. I
47:34
stumbled on any type. It's open source
47:37
and encrypted and has mobile and desktop
47:39
clients.
47:40
Mm hmm. Any type dot I. Oh,
47:42
and they offer a self hosting set up. It is an alpha
47:45
right now. Well,
47:46
that's awfully helpful.
47:48
We have a bunch of really good recommendations that
47:50
come in like on stuff to try.
47:53
And it's hard to know which one to pull the trigger
47:55
on. But there's a few in here
47:57
this week that look really good. You know, the.
48:00
really, it's not frustrating, but
48:02
it is a little bit frustrating, is
48:05
at some point you've just got to stick a pin in it and actually
48:07
pick one. And I feel like I just
48:09
picked Obsidian
48:11
as my de facto,
48:13
you know,
48:14
personal knowledge system,
48:16
replacing TiddlyWiki from before
48:18
then.
48:19
And then AnyType comes
48:22
along with this beautiful looking
48:24
application and crazy
48:26
fast load times and secure
48:29
and decentralized sync as part of the product.
48:31
You know, it's like,
48:33
oh, I just got it right.
48:35
And I'm not going to help too, because Jin from Mateek,
48:38
Jin from Mateek this week says he
48:40
found an agile tool that he loves that replaces
48:43
things like Jira for him and some
48:45
ticket tools. It's called Taiga, T-A-I-G-A-I
48:49
dot IO. And then on top of that,
48:51
he has found a killer outlining application,
48:54
which I've been checking out since Coder Radio, and it's called
48:56
GetOutlined.com.
48:58
And you can also self-host that.
49:01
So those are a couple of,
49:02
well, we have some really good, this is like an app pick
49:05
extravaganza episode.
49:07
I'll tell you what. We'll make sure to put links to
49:10
all of these things in the show notes, just
49:12
in case you want to check them out.
49:16
Fortyfivehomelab.com. It's
49:18
happening. Big, strong, fast storage servers
49:20
with high performance, high capacity,
49:23
and affordable
49:24
for all data requirements. Personal grade
49:27
solutions that are ideal for your business or
49:29
your homelab. Go learn more at FortyfiveDrives.com,
49:32
right? That's where you get your enterprise drives. Everybody
49:34
knows about Fortyfive Drives. And you might
49:36
remember episode 98 of the Self-Hosted
49:38
Podcast, their mission, where they talked
49:40
about the way they see the storage market and the vision
49:43
for future products. That, it clicked
49:45
with us. The homelab opportunity to us seems
49:47
immense. They listened to the feedback from the
49:49
podcast and they're cooking up FortyfiveHomelab.com.
49:53
I think it's going to be right up your alley. So go check it out.
49:55
I think you guys will also like that Fortyfive Drives
49:58
maintains an open design and ongoing.
49:59
in relationship with the open source community.
50:02
And we love the dedicated engineering team
50:04
that's ready to help you should you ever need
50:07
it. So go learn how 45 Drives does
50:09
things differently and visit 45drives.com. And
50:11
when you get a chance, tell them the self-hosted podcast sent
50:14
you. And remember, they're cooking up something
50:16
great just for our audience at 45homelab.com.
50:19
You're gonna love it. That's where you go, 45homelab.com.
50:24
And we got some great boost coming into
50:26
the show. Everybody's been really, really supportive
50:28
since episode 100. And LegitSalvage
50:31
came in with 75,000 sats. He's our
50:33
baller booster. He's been catching up. And
50:35
he has a brand new, beautiful baby girl.
50:39
And, well, soon, in about 12 weeks. And
50:41
he is on the hunt for a proper
50:43
baby monitor solution. He has IP cameras
50:45
for his home with a DVR. And
50:48
he's thinking about just adding a new camera to
50:50
her nursery. So that would be a normal solution.
50:52
However, since she's a preemie baby,
50:55
lung development and breathing will be a factor when
50:57
bringing her home. So for peace of mind,
50:59
I've been looking at video monitors that include visual
51:02
sensors to monitor breathing, like
51:04
the NAMP Pro or Eufy Space View. These
51:07
don't appear to have non-connected options.
51:09
Or if they do, it's not clear these features would work without
51:12
phoning home. I would suspect that
51:14
as well. Given all the incidents
51:16
of baby monitors being hacked, he's concerned
51:18
about it. And he wants to know if we have any suggestions.
51:21
He says he appreciates the content. It's a welcome
51:23
distraction from the recent chaos in life. Yeah, man, that's
51:25
gotta be...
51:27
That is not an easy time. Well,
51:29
speaking from experience, my daughter arrived
51:33
seven, eight weeks early, not quite 12,
51:37
like you, good sir. But what
51:39
I will say is now she's two and a half,
51:41
fully healthy and perfect, and
51:44
running about with baby shark towels on her head,
51:47
and will not eat her dinner without her flamingo
51:49
hat on. So it does
51:51
get easier. Yeah, 12 weeks before due date
51:54
is pretty serious, right?
51:55
Yeah, 12 weeks is not, you
51:57
know, it's no trifling matter.
51:59
So what I will say is first of all, if you
52:02
wanna reach out personally to me and
52:04
have a chat about someone who's gone through it recently,
52:06
the HoldnQ thing, you know,
52:09
it's a lot to process. So please feel free
52:11
to reach out. But secondly, what
52:13
I will also say is that we've
52:16
had a huge amount of success with the
52:18
Wyze cameras.
52:20
We've put them into a black hold
52:23
VLAN so that they're offline, they can't reach
52:25
the internet, but the, obviously the initial
52:27
registration they have to, but after
52:29
that they don't. And I can
52:31
connect to those cameras. I'm not running
52:34
a special firmware or anything like that over
52:37
the LAN. It does the discovery over the LAN and then
52:39
does a peer-to-peer
52:40
video stream from one device to
52:42
the other. Now, another piece of advice
52:44
for you, you mentioned
52:47
having sensors to check things like breathing
52:50
and all the rest of it.
52:51
The advice we were given, and in
52:53
hindsight, I really am glad
52:55
that we were given it, was don't fall
52:58
into the trap of getting these socks that measure
53:00
heart rates and apps,
53:03
because they just cause a lot of false positives and a lot
53:05
of anxiety and that kind of stuff. If
53:07
you're really worried about breathing and that
53:09
kind of stuff, you can put like vibration
53:12
things under the mattress, but
53:14
honestly, from my
53:16
personal opinion, the
53:19
medical staff won't send the baby home
53:21
until they're completely confident that the baby
53:23
is ready and healthy. So
53:26
from my perspective, I wouldn't,
53:28
I know it's difficult not to want to do something
53:30
as a new parent, everything
53:33
you can.
53:34
It's very difficult to just close
53:36
the door on the nursery and say, hey, right, I
53:39
will see you in the morning and
53:41
not sleep with the phone wide
53:44
open all night looking at the screen, that
53:46
kind of thing. But
53:48
it does get easier. I will say that as well.
53:51
The first
53:52
six months are the hardest. And so far, everything
53:54
after that has been downhill for us,
53:56
so hang in there, bro. And like I
53:58
say, reach out if you are.
53:59
If you want to chat some more. Yes. And thank you
54:02
for the support as well. Hurricane
54:04
Hernandez comes in with 51,273 sats. Longtime
54:09
listener, first time booster. He's
54:11
been around for a long time. In fact, he says he goes way back
54:13
with you probably since 2014 when you guys were
54:16
regulars on the Lime Tech forums. Does that ring
54:18
a bell? Yes, it does. Hurricane Hernandez.
54:21
I think, I think we first met
54:23
when we were trying to stream Formula
54:25
one. Like I was going to get a Sky Sports
54:27
subscription in the UK. This well before
54:29
F1 TV was a thing. And I was
54:32
going to get a Sky TV subscription in the UK,
54:34
figure out how to strip the DRM from it and
54:36
then stream it to his house using
54:37
TV head end. And we were going to split the
54:39
cost that way. That never happened. But that was what we were
54:41
talking about back then, I think. It
54:44
gives you a hard time too, for being a VM believer
54:47
when he was pushing containers back
54:49
in the day. There was, there was a time
54:51
before Alex used containers. You
54:53
know, that was a thing. Yeah.
54:56
I was a VM user myself. Still at VMs. Come on. And
54:58
he also continued with another boost. He says, I wrote
55:01
a blog post as to why I'm leaving Ansible
55:03
for Nix. You can find it on my blog. We'll put
55:05
a link. It's goodbye Ansible.
55:07
I'm here to challenge you to take the Nix OS challenge.
55:09
You'll find I have replicated parts of the perfect
55:12
media server in my Nix repos. Have a look. Stand
55:14
by my decision to use containers over VMs, just
55:16
like I stand my decision on my decision to
55:18
use Nix over Ansible. All
55:21
hail from the great white North in Alberta.
55:24
You know, I know we just talked about Nix earlier in the
55:26
show, but it does feel like
55:28
I'm seeing Nix everywhere at the moment.
55:30
I know, I
55:31
know I'm, I'm contributing to that
55:34
problem by talking about it on this here show, but you
55:36
know, Chris, you've been talking about it for a, what, a year
55:38
or more now. Yeah. I definitely
55:40
noticed it's been picking up. Yeah. Yeah.
55:43
I think it's solving more and more problems
55:45
as people get comfortable with container technology
55:47
and they get comfortable with all these other kind of concepts,
55:50
it's not that much more of a leap to then
55:52
start wrapping your head around Nix. Well, why
55:54
do I need a, an
55:56
operating system that I can build up a ton
55:58
of cruft in?
55:59
not just have it be declaratively
56:02
configured, you know, all that stuff. So,
56:05
you know, you're right Hurricane Hernandez, as usual,
56:08
turns out you're ahead of the curve there, good sir, and
56:11
Nix is the only way, apparently. This
56:14
is the way. Of course not, of course not. There
56:16
are situations still, of course, where one
56:19
is better than the other, but. You know,
56:21
it's a lot of fun, it's putting the old Nix package manager
56:23
on macOS, get rid of Brew and go to Nix
56:25
on macOS. See, I do have a brand
56:27
new 16 inch MacBook
56:29
Pro downstairs for
56:32
my stuff with Tailscale next week.
56:35
And so I will start with Nix on there. I will
56:37
be, I've been using Brew forever,
56:39
but this is the chance. Greeno
56:41
comes in with 24,543 sets. Long
56:44
time listener since 2019, first time booster
56:47
he's been catching up. He had some downtime recently and
56:49
heard the discussion about backups for the wives. I've
56:51
been waiting until I got caught up to see if anybody else mentioned a
56:53
solution.
56:55
He says, I think I'll give it a go.
56:56
We all know that 95% of our home labs would
56:59
be left to dust should anything happen to us.
57:01
Even the best documentation would be wasted in the end.
57:03
And let's be honest, nobody wants to take on
57:05
someone else's kit.
57:07
So I have a separate backup drive just for
57:09
the wife
57:10
that gets updated during maintenance tasks once a
57:12
week. I update my lab, my hose, my
57:14
containers, et cetera. And the last thing I have on the list
57:17
is I plug in the wife's drive and I run a script
57:19
to update with only what she cares about.
57:21
Things like photos, important documents,
57:23
the home viges and things like that. The files
57:26
get set to read only afterwards to ensure that nothing
57:28
accidentally gets deleted. The drive is encrypted
57:30
with Lux. And to make sure it all works,
57:33
she uses this to access files and photos she needs
57:35
to get from her elementary OS laptop.
57:38
All her files are accessible on the network, but
57:40
making sure she checks the backup drive keeps me feeling
57:42
warm and fuzzy knowing it works. Congrats
57:45
on self-host to 100 guys. And here's
57:47
to many more to come. That's such a great
57:49
idea. It's so
57:51
blindingly, obviously simple.
57:54
And just uses all
57:56
of the technologies that are
57:58
free and available.
57:59
to us anyway, like Lux and all
58:02
the rest of it. So that's a great idea.
58:04
Just a couple more boosts to round us out.
58:06
Thank you everybody who does BoostIn. We'll try to fit a few
58:08
more in. Bleetube comes in
58:10
with 21,007 sats from Podverse. Hey,
58:13
you teased your Noster end pub at the end of the last
58:15
show, but I don't see it in the show notes.
58:18
I know, I got that a lot from the emails
58:20
and the boosts. I don't know how to link
58:22
a Noster pub. I
58:24
took a crack at it and I couldn't
58:26
figure it out. And when I tried linking, because
58:28
I tested with somebody, this isn't a real
58:31
active profile. I'm like, okay. So
58:33
until I'm really getting serious about it, I probably won't
58:36
worry about it too much, I suppose. Is
58:38
it not just x.com at
58:40
Chris Lass?
58:41
Too
58:43
soon, Alex, too soon. I
58:46
don't even like thinking about x.com. And
58:48
you notice it's the X11 logo too. Like,
58:50
come on, man. Come on. I
58:53
think we got a boost from Jared in Amelia,
58:56
Idaho. No, Idaho, Ohio,
58:58
Ohio. I'm just checking right now on the map,
59:00
Ohio. He sent us 10,001, seven
59:03
sats and he gives us a zip code so we could kind of
59:05
figure out where he's at. He says, he's been a long time listener.
59:08
And I like that, thank you. And Panicked
59:10
Ketchup, which is one of the best usernames out there. 13,000 sats
59:14
is our last booster this week. Cause you know, we
59:16
got runtime here. He says, I've
59:18
been running a self-hosted Unifi controller on an old
59:21
NUC with Ubuntu. I always kind of
59:23
get nervous to do an update on the Ubuntu
59:25
or the controller software. I was thinking about getting
59:28
the Unifi Cloud Key Generation 2 with
59:30
the hard drive. I'm not sure if a dedicated
59:32
device is the best option other than the option
59:35
of doing a Ubiquiti hosted, but
59:37
I don't think I want to go that route. What
59:39
do you guys think?
59:41
If you're deploying this commercially, so you're
59:43
running an MSP or something like that, you're charging
59:46
people money.
59:47
Absolutely. Cloud key all the way
59:49
and just don't worry about it. For
59:53
home use though, I would say a self-hosted controller
59:55
is
59:56
more than adequate. You can back up the
59:58
configs, you can export.
59:59
them. I forget what the format is off
1:00:02
the top of my head but for example
1:00:04
when I did the 10 gig network upgrade in the spring
1:00:06
I exported all of
1:00:08
my devices from one site and
1:00:11
imported them to another controller
1:00:13
that I hosted in this building. So I used to only
1:00:15
have a couple of Wi-Fi access points and then I went all
1:00:18
in on the Unify ecosystem and went to like 20
1:00:20
devices here so I figured let's pull
1:00:22
it out of the cloud and bring it in-house and
1:00:25
that process was really painless. Don't
1:00:27
fix what ain't broke you know just
1:00:29
make sure
1:00:29
you've got regular backups and use you know
1:00:32
ZFS data sets for the app data and you'll
1:00:34
be fine.
1:00:35
And maybe this is a
1:00:36
something you just feel more comfortable running in
1:00:39
a VM and you can take snapshots before
1:00:41
major software upgrades. And
1:00:44
since we've gone so hard on Nix this episode I'll
1:00:46
make one more Nix mention and
1:00:48
that is just that this is one of the things you don't
1:00:51
worry about in Nix anymore is these upgrades
1:00:53
breaking things. If it does
1:00:55
by some chance
1:00:57
build and still break you just select
1:00:59
the last version and grub and go back to the way it
1:01:01
was. That's really nice but
1:01:03
you can replicate that with any distribution with file
1:01:05
system snapshots or maybe even more simply VM
1:01:08
snapshots.
1:01:09
Good luck Panicked I think that's a good project
1:01:11
to take on though. Thank you everybody
1:01:13
that boosted in I am sorry we did not get to all of them
1:01:15
but we do read all of them we share them in our team chat
1:01:18
and we store all of them in the show docs
1:01:20
so this episode's doc will have your boost forever. We
1:01:22
had 31 boosts
1:01:25
across 22 boosters totally. Awesome
1:01:28
amazing thank you everybody some of you sending
1:01:30
multiple messages with nice long messages
1:01:33
and we got a total of 239,313 sats. You guys are absolutely
1:01:38
the best and we appreciate your support. You
1:01:40
can boost into the podcast by getting
1:01:42
a new podcast app at newpodcastapps.com
1:01:45
or
1:01:46
just go get Albi and boost from the web getalbi.com
1:01:48
then head over to the podcast index and you'll find self hosted
1:01:50
over there. We got links to all of it in the show notes.
1:01:53
Yes we do and of course we need
1:01:55
to thank our site reliability engineers
1:01:58
the SRE subscribers you are a
1:01:59
another part of what makes this show possible.
1:02:02
You can go to selfhosted.show slash SRE.
1:02:05
And we've got an ad-free feed over there for you with
1:02:08
a post show. What are we going to talk about this week? I
1:02:10
got a couple of ideas out here in the woods, hunting
1:02:12
animals. No, not really. But I do have a few ideas.
1:02:15
Smoking those meats, I hope. Smoking
1:02:18
the meats and grilling. Thank you to our site reliability
1:02:21
engineers. We really appreciate it. Alex, where can
1:02:23
they find you on the internet? Well, don't forget about the
1:02:25
Meetup coming up in Chicago as well. Potential
1:02:27
Meetup, I will say, around DevOps
1:02:30
Day, Chicago, probably the Tuesday or the
1:02:32
Wednesday evening.
1:02:32
Maybe the Thursday evening. Who
1:02:34
knows? Because I fly out on Friday morning.
1:02:37
But you can go to selfhosted.show
1:02:39
slash contact to send in your feedback
1:02:41
directly to the show. And you can find
1:02:43
me over at alex.ktz.me. And
1:02:46
come join us in the matrix, jupiterbroadcasting.com
1:02:49
slash matrix. We've got a big old matrix server
1:02:51
we self-host with lots of rooms in there for
1:02:54
every type of discussion, including self-hosting.
1:02:56
And you can find me in there as well, at Chris LAS.
1:02:59
Thanks for joining us. This is episode 102.
Podchaser is the ultimate destination for podcast data, search, and discovery. Learn More