WEBVTT

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

00:00:16.451 --> 00:00:17.331
<v Wes>My name is Wes.

00:00:17.571 --> 00:00:18.451
<v Brent>And my name is Brent.

00:00:18.991 --> 00:00:24.131
<v Chris>Hey, gents. Well, coming up on the show this week, I have finally cracked it.

00:00:24.251 --> 00:00:28.471
<v Chris>I love Jellyfin, but there's been one thing that's been lacking that's kept Plex around.

00:00:28.811 --> 00:00:33.891
<v Chris>Well, I have a wild remote access trick for private self-hosted services like Jellyfin.

00:00:34.191 --> 00:00:39.851
<v Chris>And now I can share my Jellyfin instance with friends and family who can't join my Mesh network.

00:00:40.071 --> 00:00:42.731
<v Chris>It's simple, It's absurd, and it's shockingly effective.

00:00:43.071 --> 00:00:47.411
<v Chris>And then we'll round it out with some great picks, some boosts, and more.

00:00:47.511 --> 00:00:50.371
<v Chris>So before we get into all of that, we've got to give a shout-out to our virtual

00:00:50.371 --> 00:00:52.671
<v Chris>lug. Hello, Mumble Room. Time-appropriate greetings.

00:00:53.271 --> 00:00:55.791
<v Mumble>Hello. Hey, Chris. Hey, Wes. And hello, Brent.

00:00:56.071 --> 00:00:59.591
<v Chris>Hey, guys. Hello up there in the quiet listening tune. I see a little crew up

00:00:59.591 --> 00:01:00.931
<v Chris>there hanging out with us.

00:01:01.371 --> 00:01:04.451
<v Chris>Mumble Room is always rolling. JupyterBroadcasting.com slash mumble.

00:01:05.655 --> 00:01:09.815
<v Chris>And a big good morning to our friends at Defined Networking.

00:01:09.915 --> 00:01:13.235
<v Chris>Go meet Manage Nebula from Defined Networking.

00:01:13.315 --> 00:01:18.975
<v Chris>It's a decentralized VPN built on the Nebula platform that we just absolutely love.

00:01:19.135 --> 00:01:21.895
<v Chris>Every now and then a darling comes along, I think it was Wes,

00:01:22.015 --> 00:01:28.855
<v Chris>caught it first, and then we lock in and we track it from basically birth to, you know, product.

00:01:29.335 --> 00:01:34.095
<v Chris>And it started in 2017 to secure the Slack network, which had to have robust

00:01:34.095 --> 00:01:36.435
<v Chris>security and decentralization from the very beginning.

00:01:36.595 --> 00:01:39.075
<v Chris>I mean, this is Slack's bag, right?

00:01:39.275 --> 00:01:41.775
<v Chris>And so Nebula has the best-in-class encryption.

00:01:42.455 --> 00:01:44.295
<v Chris>And what really matters for me

00:01:44.295 --> 00:01:48.655
<v Chris>is the design. You can use the managed product for up to 100 free hosts.

00:01:49.135 --> 00:01:51.675
<v Chris>No credit card required. Support the show. It's a great product.

00:01:51.775 --> 00:01:54.575
<v Chris>And if you think to yourself, this is something I'd like to build my business's

00:01:54.575 --> 00:01:56.495
<v Chris>network around, they can help you with that.

00:01:56.755 --> 00:02:00.395
<v Chris>Maybe your home lab. But maybe get to the point where you want to manage the

00:02:00.395 --> 00:02:03.415
<v Chris>entire thing. Everything can be completely self-hosted.

00:02:03.495 --> 00:02:07.175
<v Chris>It's not something they begrudgingly support that's available that doesn't have all the features.

00:02:07.655 --> 00:02:11.315
<v Chris>It's what they build their product on top of. And when you think about your

00:02:11.315 --> 00:02:15.155
<v Chris>network infrastructure and long-term planning, those little things,

00:02:15.415 --> 00:02:18.735
<v Chris>that 10-20% gap, really makes all the difference.

00:02:19.015 --> 00:02:23.995
<v Chris>And it's such a fantastic product because it puts very little load on your machine.

00:02:24.175 --> 00:02:28.755
<v Chris>Low load on the network and low load on the CPU. so your battery life lasts

00:02:28.755 --> 00:02:32.415
<v Chris>longer on your laptop and your mobile devices and your server isn't busy with

00:02:32.415 --> 00:02:33.655
<v Chris>a bunch of that nonsense.

00:02:33.975 --> 00:02:37.655
<v Chris>You got to go check it out. Get started for 100 hosts absolutely free,

00:02:37.815 --> 00:02:39.015
<v Chris>no credit card required.

00:02:39.175 --> 00:02:46.095
<v Chris>Go to defined.net slash unplugged. Redefine your VPN experience at defined.net slash unplugged.

00:02:48.194 --> 00:02:52.674
<v Chris>All right, we have decided to do it. The Great Holiday Home Lab is coming up.

00:02:52.794 --> 00:02:59.474
<v Chris>Pay attention because we're going to need you to submit your home lab to this special.

00:02:59.894 --> 00:03:03.254
<v Chris>And I will have links. I'll have all of it set up for you.

00:03:03.694 --> 00:03:06.334
<v Chris>It's something we're doing in place of the tuxies this year.

00:03:06.454 --> 00:03:09.754
<v Chris>It's our first, very first edition of the Great Holiday Home Lab special.

00:03:10.254 --> 00:03:14.074
<v Chris>And we want to see your setups. It's a magical time of year.

00:03:14.154 --> 00:03:17.414
<v Chris>It'll be coming up before you know it. It's just a couple of weeks away.

00:03:28.554 --> 00:03:33.814
<v Chris>So it is our first community showdown of your questionable wiring your crazy

00:03:33.814 --> 00:03:37.114
<v Chris>tinkering uh maybe your downright impressive builds i don't know maybe you got

00:03:37.114 --> 00:03:43.834
<v Chris>a real clean setup i want you to enter your home lab big or small to linuxunplugged.com slash holiday.

00:03:44.374 --> 00:03:46.034
<v Chris>And it is a Google form.

00:03:47.694 --> 00:03:49.994
<v Chris>Don't think you have to log in, but if you hate Google forms,

00:03:50.174 --> 00:03:54.294
<v Chris>I have a solution for you. It's all available. You can just copy and post into an email.

00:03:54.494 --> 00:03:57.154
<v Chris>Go to linuxunplugged.com slash old fart.

00:03:57.634 --> 00:04:01.754
<v Chris>That's linuxunplugged.com slash old fart. If you just want the markdown version,

00:04:01.914 --> 00:04:04.474
<v Chris>I'd like you to submit a couple of photos, a short description,

00:04:04.714 --> 00:04:08.094
<v Chris>your hardware list, and tell us what your home lab actually does.

00:04:08.394 --> 00:04:11.594
<v Chris>And then you're in. And we're going to have a couple of different categories

00:04:11.594 --> 00:04:14.834
<v Chris>we're going to have the grand rack award which will be 100 000 sats

00:04:14.834 --> 00:04:18.514
<v Chris>we'll have the silver pseudo award which will be 50 000 sats the best effort

00:04:18.514 --> 00:04:23.894
<v Chris>award he doesn't have to be perfect the best effort 10 000 sats and then the

00:04:23.894 --> 00:04:28.894
<v Chris>lup rescue mission one home lab that's in such bad shape maybe you tried a lot

00:04:28.894 --> 00:04:31.854
<v Chris>of heart went into that home lab a lot of effort,

00:04:32.854 --> 00:04:37.014
<v Chris>The three of us, the boys, we're going to get connected on a remote call.

00:04:37.754 --> 00:04:40.174
<v Chris>We're going to run down what's going on. We're going to help you get things

00:04:40.174 --> 00:04:44.694
<v Chris>in working order and do a little LUP rescue mission, for better or for worse.

00:04:44.834 --> 00:04:48.194
<v Brent>I feel like you're talking about my home lab here. Oh, wait,

00:04:48.214 --> 00:04:50.534
<v Brent>we've already done that rescue multiple times. What's going on?

00:04:50.754 --> 00:04:51.754
<v Wes>Why won't that stick?

00:04:52.794 --> 00:04:55.574
<v Chris>You know, it's like the shoemaker whose kids have horrible shoes.

00:04:56.334 --> 00:04:59.034
<v Chris>So, you know, we're probably going to record that session.

00:04:59.334 --> 00:05:02.354
<v Chris>And depending on how it goes, we may turn that into an episode as well.

00:05:02.354 --> 00:05:04.614
<v Chris>If you end up on the LUP rescue mission tier.

00:05:05.234 --> 00:05:07.914
<v Chris>So we're going to have each home lab, we're going to look at its functionality,

00:05:07.914 --> 00:05:10.574
<v Chris>your design, your ingenuity, your creativity.

00:05:10.854 --> 00:05:14.414
<v Chris>Efficiency is a big one too. If you have documentation, that'll matter.

00:05:15.054 --> 00:05:17.614
<v Chris>Your personality, your creative solutions you've come up with.

00:05:17.874 --> 00:05:22.814
<v Chris>We're going to have a zero to 10 per category score. Each one of us will give scores.

00:05:23.474 --> 00:05:26.474
<v Chris>You know, we'll have things like the lowest functionality, but best personality.

00:05:26.754 --> 00:05:30.014
<v Chris>Maybe a disaster story might earn the rescue, something like that.

00:05:30.114 --> 00:05:33.554
<v Chris>So the entries are open right now. I want you to submit your homelab,

00:05:33.754 --> 00:05:35.554
<v Chris>show us what you got, even if it's totally chaotic.

00:05:35.794 --> 00:05:37.834
<v Chris>Hey, my wiring often looks horrible.

00:05:38.274 --> 00:05:41.714
<v Chris>No shame in that. We may judge you and call you out for it, but don't worry.

00:05:41.794 --> 00:05:42.694
<v Chris>A lot of us have it like that.

00:05:43.374 --> 00:05:46.594
<v Chris>We really want to see what you got. So submit it. We'll have links in the show notes.

00:05:46.714 --> 00:05:51.794
<v Chris>And again, it's linuxunplugged.com slash holiday or linuxunplugged.com slash

00:05:51.794 --> 00:05:56.954
<v Chris>old fart for the great holiday homelab extravaganza.

00:06:00.616 --> 00:06:03.676
<v Chris>And do get them in quick, because we're going to be recording our holiday episodes

00:06:03.676 --> 00:06:08.256
<v Chris>before you know it. And I can't wait to see what you guys have come up with.

00:06:09.436 --> 00:06:14.536
<v Chris>We cannot participate ourselves, unfortunately. We'll have to do our own rescues later on our own.

00:06:14.596 --> 00:06:16.116
<v Brent>Been disqualified already. Jeez.

00:06:17.816 --> 00:06:22.236
<v Chris>Okay, so I wanted to solve something that's really kind of been eating at me

00:06:22.236 --> 00:06:26.616
<v Chris>since about two years ago when Alex and I did the Jellyfin January Challenge, I think it was.

00:06:27.676 --> 00:06:31.896
<v Chris>And it'll be two years, I think, this January. And Jellyfin's been fantastic.

00:06:32.076 --> 00:06:34.176
<v Chris>The migration to Plex was really smooth.

00:06:34.456 --> 00:06:38.856
<v Chris>I use infuse on an Apple TV, which sounds like a, why would you do that kind of setup?

00:06:38.976 --> 00:06:42.736
<v Chris>But it actually, after trying all the things really has been just a fantastic

00:06:42.736 --> 00:06:45.136
<v Chris>way to consume media really flawless.

00:06:45.396 --> 00:06:49.516
<v Chris>The two combination are great. And I do take advantage of some jellyfin plugins

00:06:49.516 --> 00:06:52.216
<v Chris>and I use the jellyfin web interface from time to time.

00:06:53.995 --> 00:06:59.555
<v Chris>I've had to keep one Plex instance around because friends and family like to

00:06:59.555 --> 00:07:01.775
<v Chris>sometimes check in on the old media library.

00:07:01.995 --> 00:07:04.615
<v Chris>Maybe they're traveling or whatever, and Plex is installed on a lot of stuff,

00:07:04.655 --> 00:07:06.995
<v Chris>or it's easy to get going on anything that has a web browser.

00:07:07.295 --> 00:07:10.975
<v Chris>And so once or twice a week, friends or family are streaming things from a Plex

00:07:10.975 --> 00:07:12.415
<v Chris>server that I don't actually use for myself.

00:07:13.355 --> 00:07:17.575
<v Chris>And I thought about this problem because when you're at a hotel or,

00:07:17.715 --> 00:07:20.435
<v Chris>you know, it's a friend's computer, you don't necessarily want them to just

00:07:20.435 --> 00:07:21.755
<v Chris>randomly join your mesh network.

00:07:21.755 --> 00:07:26.835
<v Chris>And I don't necessarily just want to build a public Jellyfin server that's available

00:07:26.835 --> 00:07:28.835
<v Chris>on a VPS all the time that's going to get banged on.

00:07:29.095 --> 00:07:34.515
<v Chris>And I don't want to have my ports forwarded on my firewall permanently to my Jellyfin instance.

00:07:35.335 --> 00:07:39.295
<v Chris>And I might want to solve this for other self-hosted software that isn't Jellyfin.

00:07:40.575 --> 00:07:46.735
<v Chris>And so this is a problem that I have tried to figure out for quite a while.

00:07:46.735 --> 00:07:49.375
<v Chris>And obviously something Plex handles really well.

00:07:50.055 --> 00:07:53.395
<v Chris>I know neither one of us none of us are really big Plex users but occasionally,

00:07:54.255 --> 00:07:56.855
<v Chris>you know we might dip in just because of the share feature.

00:07:56.855 --> 00:07:59.815
<v Wes>Yeah absolutely and it's one of those things right where you just kind of got

00:07:59.815 --> 00:08:04.175
<v Wes>maybe folks who were less technical still kind of had a Plex account because

00:08:04.175 --> 00:08:07.515
<v Wes>they had other friends who were sharing Plex just there was a lot of stuff that

00:08:07.515 --> 00:08:11.375
<v Wes>ended up meaning you could get tangentially sucked in and that meant that it

00:08:11.375 --> 00:08:14.675
<v Wes>was also very easy to take advantage of them doing sort of hey,

00:08:15.295 --> 00:08:20.455
<v Wes>we're the SaaS company that's willing to do free proxying for you and host the auth and make it easy.

00:08:20.775 --> 00:08:23.995
<v Brent>Wes, you've had a really nice solution to this that you've used historically.

00:08:24.195 --> 00:08:25.775
<v Brent>I know I've used it a couple of times.

00:08:26.175 --> 00:08:30.175
<v Chris>What, his randomly spin up a jellyfin server, watch a TV show and then destroy it move?

00:08:30.355 --> 00:08:32.835
<v Brent>Quite on demand too. I think you've optimized it as well.

00:08:33.355 --> 00:08:35.435
<v Chris>Yeah. I mean, I did think about this.

00:08:35.895 --> 00:08:39.535
<v Wes>I have a tip. I'm later in the show. I have a tip for how to do this.

00:08:39.615 --> 00:08:41.515
<v Wes>I haven't adopted yet, but that's even better.

00:08:43.227 --> 00:08:49.467
<v Chris>I wanted something that would let us continue to watch the TV shows that we've been watching.

00:08:49.627 --> 00:08:53.027
<v Chris>Like right now, we're watching the first season of Mary Tyler Moore while we eat dinner.

00:08:53.667 --> 00:08:57.687
<v Chris>And if we go out somewhere that has an internet connection on a web browser,

00:08:57.687 --> 00:08:59.947
<v Chris>I would like to be able to stream my Jellyfin instance.

00:09:00.307 --> 00:09:03.507
<v Chris>And so ideally, I wanted to set up with no special VPN required,

00:09:03.507 --> 00:09:08.447
<v Chris>no weird stuff for the user to do, no weird stuff for me to have to do.

00:09:08.527 --> 00:09:12.147
<v Chris>And there's a lot of ways to crack this. And we're going to talk about some after I tell you mine.

00:09:12.647 --> 00:09:15.667
<v Chris>And if you have Tailscale, for example, you could use a Tailscale funnel.

00:09:15.907 --> 00:09:20.487
<v Chris>If you're a pretty big Cloudflare user, you could probably use a Cloudflare tunnel.

00:09:21.467 --> 00:09:25.467
<v Chris>But I wanted to try solving this with something I've never used before but I've

00:09:25.467 --> 00:09:27.907
<v Chris>heard a lot about, and it's a service called Ngrok.

00:09:28.467 --> 00:09:33.127
<v Chris>And it looks pretty straightforward. That's one of the things that appealed to me.

00:09:33.307 --> 00:09:38.047
<v Chris>And it's a self-hosted sort of ingress as a service or a secure tunneling platform on demand.

00:09:38.047 --> 00:09:43.007
<v Chris>And you do run a small agent on your box, and it opens up the outbound connection

00:09:43.007 --> 00:09:48.327
<v Chris>to ngrok's cloud, and then ngrok generates a public URL that forwards traffic

00:09:48.327 --> 00:09:50.747
<v Chris>back to your local service, whatever you might be pointing it at.

00:09:51.087 --> 00:09:53.547
<v Chris>And it also, very conveniently...

00:09:54.513 --> 00:09:59.813
<v Chris>It handles the HTTPS certs. So if you're using it for free, you can use three

00:09:59.813 --> 00:10:05.493
<v Chris>online endpoints and a gigabyte of bandwidth and 20,000 HTTPS requests a month.

00:10:05.613 --> 00:10:10.913
<v Chris>And then they have paid tiers that start around $8 or $5 a month that give you more.

00:10:10.993 --> 00:10:13.593
<v Wes>And that's particularly convenient for a Jellyfin, right?

00:10:13.633 --> 00:10:18.853
<v Wes>Just because not every app, but some combos of certain apps really prefer your

00:10:18.853 --> 00:10:21.073
<v Wes>Jellyfin server to have a TLS certificate.

00:10:21.673 --> 00:10:24.733
<v Wes>Yes. Even if you don't really need one or you don't even care because you're

00:10:24.733 --> 00:10:27.333
<v Wes>just trying to stream media that isn't secret at all, but.

00:10:27.693 --> 00:10:32.213
<v Chris>Yeah, a lot of the mobile apps and a lot of the basic kiosk web browsers,

00:10:32.433 --> 00:10:35.753
<v Chris>which was one of the things that was a requirement is this would work on a basic

00:10:35.753 --> 00:10:37.933
<v Chris>Chromium kiosk browser.

00:10:38.193 --> 00:10:40.933
<v Wes>Also helps for some casting situations if you're going that route.

00:10:41.293 --> 00:10:46.253
<v Chris>Mm, yeah, right, of course. So that was something that I wanted to try,

00:10:46.393 --> 00:10:50.353
<v Chris>but I also needed a way to toggle this on and off because I don't want to leave

00:10:50.353 --> 00:10:52.753
<v Chris>it running when I'm not personally watching TV.

00:10:53.133 --> 00:10:57.693
<v Chris>And this proposes an interesting challenge because a situation we find ourselves

00:10:57.693 --> 00:11:01.933
<v Chris>in, we're at an Airbnb or a hotel and we want to watch some Star Trek.

00:11:02.493 --> 00:11:05.773
<v Chris>I don't want to have to SSH in or I want to be able to toggle it on really quick

00:11:05.773 --> 00:11:09.193
<v Chris>or my wife. I want my wife to be able to do it as well.

00:11:09.513 --> 00:11:12.133
<v Wes>Right. You wanted something where you didn't have to like go manually stand

00:11:12.133 --> 00:11:16.533
<v Wes>up infrastructure or wire stuff together, like not have to set it up with an

00:11:16.533 --> 00:11:20.933
<v Wes>intention before like a big trip. You want to be able to like on a whim on a Saturday.

00:11:21.553 --> 00:11:24.733
<v Chris>Yeah, I didn't I don't want to have my jellyfin server on the public Internet

00:11:24.733 --> 00:11:28.953
<v Chris>all the time, you know, so something I could easily toggle on and off remotely.

00:11:30.250 --> 00:11:31.390
<v Chris>It was really kind of what I was going for.

00:11:32.230 --> 00:11:36.590
<v Brent>So this still feels like you're exposing yourself to the public internet, really.

00:11:36.730 --> 00:11:39.650
<v Brent>Because if you didn't feel like there was some kind of risk,

00:11:39.750 --> 00:11:41.910
<v Brent>you wouldn't need the toggle, right? You just leave it on all the time.

00:11:42.150 --> 00:11:45.630
<v Brent>So does this feel like the ultimate solution or just a step towards?

00:11:46.010 --> 00:11:49.230
<v Chris>Yeah, you're right. I mean, it is still a problem. I mean, it's a really crazy

00:11:49.230 --> 00:11:51.970
<v Chris>ngrok URL, so there's a little bit of obscurity there.

00:11:53.670 --> 00:11:58.550
<v Chris>But then, of course, I do the right thing. And I have a DNS redirect that makes

00:11:58.550 --> 00:12:01.590
<v Chris>it a really simple URL. so that way I don't have to type a crazy NGROC URL into

00:12:01.590 --> 00:12:04.630
<v Chris>a kiosk device, which probably makes it easier to discover.

00:12:05.110 --> 00:12:10.230
<v Chris>This is something I'd be curious to know what solutions I could employ at this stage.

00:12:10.570 --> 00:12:14.270
<v Chris>I could do IP whitelisting, but the issue there is I don't know what IP I'm

00:12:14.270 --> 00:12:16.150
<v Chris>connecting from. It could be cellular network.

00:12:16.230 --> 00:12:20.370
<v Wes>Yeah, and you won't if you're at a random Airbnb or hotel or wherever your cell

00:12:20.370 --> 00:12:21.230
<v Wes>phone gets assigned today.

00:12:21.490 --> 00:12:24.730
<v Brent>And if it was just you, you would use your mesh network, right?

00:12:24.770 --> 00:12:25.890
<v Brent>That's the obvious solution here.

00:12:25.890 --> 00:12:27.270
<v Chris>But yeah do.

00:12:27.270 --> 00:12:30.970
<v Brent>You want to let wes and i connect whenever we want to or whenever we can convince

00:12:30.970 --> 00:12:32.010
<v Brent>you to flick the switch right.

00:12:32.010 --> 00:12:34.950
<v Chris>Yeah it's so that that is i think the

00:12:34.950 --> 00:12:39.730
<v Chris>downside to this setup is for for a period of time there is a way public internet

00:12:39.730 --> 00:12:43.990
<v Chris>could discover your jellyfin server now the way ngrok works is when you go to

00:12:43.990 --> 00:12:48.310
<v Chris>the url at least on the free tier there's a page you have to go through first

00:12:48.310 --> 00:12:52.570
<v Chris>to say yeah i know what i'm doing so that might slow down some automation i I doubt it, though.

00:12:54.010 --> 00:12:59.590
<v Chris>Ultimately, what I rely on is keeping my Jellyfin server secure and up-to-date and isolated still.

00:12:59.770 --> 00:13:02.190
<v Wes>Yeah, I was going to say, like, obviously defense in depth, but there's also,

00:13:02.230 --> 00:13:05.790
<v Wes>you should be realistic about what your actual particular threat scenarios are,

00:13:05.810 --> 00:13:12.230
<v Wes>and, you know, how do you, does your Jellyfin have, uh, is it all just guest accounts and, um...

00:13:12.957 --> 00:13:17.077
<v Wes>Default passwords uh is it does it have access to the rest of your box or is

00:13:17.077 --> 00:13:20.617
<v Wes>it in some sort of container or virtual machine or thing that just has access

00:13:20.617 --> 00:13:24.337
<v Wes>to the media and do you have sensitive stuff in your media or are all things

00:13:24.337 --> 00:13:27.677
<v Wes>to yeah that may make you care more or less depending on

00:13:28.117 --> 00:13:31.417
<v Wes>how you've got it set up if it's just like a dedicated virtual machine that

00:13:31.417 --> 00:13:35.317
<v Wes>only has like a limited stuff mounted in from the host maybe it's not a huge

00:13:35.317 --> 00:13:38.957
<v Wes>deal if it's you know running on your box where you also do all of your backups

00:13:38.957 --> 00:13:40.457
<v Wes>and stuff then maybe it's a bigger deal.

00:13:40.457 --> 00:13:45.377
<v Chris>It does seem like in terms of application complexity because it is a very complex

00:13:45.377 --> 00:13:48.617
<v Chris>application with a lot of stuff under the hood, a lot of FFmpeg,

00:13:48.757 --> 00:13:50.957
<v Chris>and it has access to hardware acceleration.

00:13:51.557 --> 00:13:55.757
<v Chris>You know, of the apps, I'm going to make temporarily public.

00:13:56.177 --> 00:14:00.077
<v Chris>It feels like maybe the dumbest one to actually make temporary public because

00:14:00.077 --> 00:14:03.857
<v Chris>there's, honestly, there's a large attack service, there may be auth bypasses

00:14:03.857 --> 00:14:07.737
<v Chris>for all I know, ways to trigger the server to do all kinds of crazy DDoS indexing

00:14:07.737 --> 00:14:09.717
<v Chris>and transcoding. I mean, who knows? Right.

00:14:09.877 --> 00:14:12.917
<v Chris>I mean, it has to be something you consider in the setup, I think,

00:14:13.377 --> 00:14:18.457
<v Chris>which is why the toggle I felt like was so important, because then I'm at least,

00:14:18.577 --> 00:14:21.137
<v Chris>you know, I'm watching a half hour episode of Mary Tyler Moore.

00:14:21.137 --> 00:14:26.877
<v Chris>Or, okay, so I have a 40-minute window where I have this really crazy obscure URL and all of that.

00:14:27.017 --> 00:14:31.597
<v Chris>But something I would really like input on is layers of protection I could do

00:14:31.597 --> 00:14:38.057
<v Chris>here or some other maybe second-order authentication I could do to enable this,

00:14:38.117 --> 00:14:39.537
<v Chris>to authorize certain connections.

00:14:40.257 --> 00:14:44.357
<v Chris>Like if you have any ideas to boost in or give me a little bit of feedback on

00:14:44.357 --> 00:14:47.797
<v Chris>this because that is something that is not ideal and I do want to disclose it's a risk here.

00:14:48.857 --> 00:14:52.657
<v Chris>But ultimately, I was very, very happy with the setup that I ended up with.

00:14:55.784 --> 00:15:00.804
<v Chris>Unraid.net slash unplugged. Unleash your hardware and unlock your system's full

00:15:00.804 --> 00:15:02.524
<v Chris>potential this Cyber Weekend.

00:15:02.724 --> 00:15:06.764
<v Chris>Unraid Cyber Weekend sale is almost here. So the Black Friday through Cyber

00:15:06.764 --> 00:15:11.444
<v Chris>Monday sale runs November 28th, as you're listening, that's this Friday, to December 1st.

00:15:11.624 --> 00:15:17.204
<v Chris>You can take 20% off starter licenses and 25% off the Unleash license and upgrades.

00:15:17.564 --> 00:15:22.684
<v Chris>Every starter or Unleash license also gets you a voucher to the Unraid merch

00:15:22.684 --> 00:15:26.424
<v Chris>store, where you'll find an all-new graphic tees, jackets, hats,

00:15:26.644 --> 00:15:30.184
<v Chris>and backpacks, 20% off the entire lineup.

00:15:30.664 --> 00:15:31.924
<v Chris>And that's through the new year.

00:15:32.464 --> 00:15:35.484
<v Chris>It's not just a sale, though. It's really a celebration. Remember,

00:15:35.704 --> 00:15:39.384
<v Chris>Unraid is celebrating 20 years of freedom, performance, and control.

00:15:39.624 --> 00:15:44.224
<v Chris>Is your system unleashed, and are you? Well, it is the time right now, so get started.

00:15:44.384 --> 00:15:47.924
<v Chris>Support the show. Go to unraid.net slash unplugged.

00:15:48.204 --> 00:15:52.164
<v Chris>Unlock your system's full potential and take advantage of the Cyber Weekend

00:15:52.164 --> 00:15:56.584
<v Chris>Sale. running November 28th through December 1st.

00:15:56.804 --> 00:16:02.484
<v Chris>Take 20% off starter licenses and 25% off that unleashed license and the upgrade.

00:16:02.644 --> 00:16:06.524
<v Chris>That's a great deal, plus the merch voucher. So check it out, support the show.

00:16:06.744 --> 00:16:09.564
<v Chris>It's unraid.net slash unplugged.

00:16:12.124 --> 00:16:14.624
<v Brent>Well, you mentioned wanting to be able to turn this on and off,

00:16:14.704 --> 00:16:21.124
<v Brent>I'm assuming from the sofa or any sofa in Airbnb or at home and have the wife

00:16:21.124 --> 00:16:22.564
<v Brent>be able to do it, which is,

00:16:22.804 --> 00:16:27.884
<v Brent>it sounds like quite a challenge, Chris, but you said this, you pulled this

00:16:27.884 --> 00:16:30.944
<v Brent>off in a nice way. So I'm waiting to see. What do you got?

00:16:31.544 --> 00:16:33.144
<v Chris>You know, as the years go by...

00:16:34.146 --> 00:16:39.926
<v Chris>My go-to solution more and more for this type of stuff is make a button in Home Assistant for it.

00:16:40.206 --> 00:16:42.846
<v Chris>It's such a flexible, powerful platform.

00:16:43.186 --> 00:16:43.886
<v Brent>Should have guessed.

00:16:44.546 --> 00:16:46.666
<v Chris>Yeah, it works great for this kind of thing.

00:16:46.966 --> 00:16:52.426
<v Wes>And, I mean, maybe not for everyone, but you are already committed to having

00:16:52.426 --> 00:16:56.386
<v Wes>it available and plumbed to basically all of your devices, right? You want that.

00:16:56.586 --> 00:17:00.346
<v Wes>So you're not paying a cost for like a new separate whole, you know,

00:17:00.506 --> 00:17:01.626
<v Wes>bookmark and a whole bunch of stuff.

00:17:01.766 --> 00:17:04.086
<v Chris>True. And it's something I'm already maintaining and making sure it's highly

00:17:04.086 --> 00:17:05.006
<v Chris>available and et cetera.

00:17:05.586 --> 00:17:10.546
<v Chris>But also the thing that played a big factor in my decision making is it's on

00:17:10.546 --> 00:17:11.886
<v Chris>the wife's phone, right?

00:17:11.906 --> 00:17:14.986
<v Chris>The kids know how to use it. So it already has family workflow.

00:17:15.446 --> 00:17:20.586
<v Chris>So I'm adding a button to a thing they're already using. I'm not asking them to go use a new thing.

00:17:20.786 --> 00:17:24.446
<v Chris>And I cannot tell you what a difference that makes in family adoption.

00:17:24.646 --> 00:17:27.286
<v Chris>It's the difference between them using it and not using them.

00:17:27.826 --> 00:17:31.046
<v Chris>So plus it's just really awesome. I wanted a small little button,

00:17:31.066 --> 00:17:36.666
<v Chris>and I already have a dashboard that's for our media playback that has a mock

00:17:36.666 --> 00:17:40.746
<v Chris>remote control, and it has our music assistant controls.

00:17:41.046 --> 00:17:43.506
<v Chris>You can control the different speakers in the house from this one dashboard

00:17:43.506 --> 00:17:47.346
<v Chris>already. So this is where you already go to do TV stuff.

00:17:47.566 --> 00:17:51.726
<v Wes>I'm almost imagining like you have a TV button on the wall that you hit,

00:17:51.826 --> 00:17:55.166
<v Wes>you know, and then it starts the TV up, and then the TV turns on,

00:17:55.286 --> 00:17:57.626
<v Wes>and then the switch is toggled, and you're ready to go.

00:17:57.806 --> 00:18:00.566
<v Chris>Well, I absolutely could. I absolutely could map it to a button,

00:18:00.766 --> 00:18:03.846
<v Chris>right? I could conceivably even map it to just a hardware button that I take with me in my bag.

00:18:03.846 --> 00:18:07.586
<v Wes>Or for the kids, it has a little countdown, and then the button turns red again, and the TV's cut off.

00:18:07.686 --> 00:18:08.366
<v Chris>Yeah, the tunnel turns, yeah.

00:18:09.146 --> 00:18:12.506
<v Brent>I would like to know what you called the device in Home Assistant.

00:18:12.626 --> 00:18:16.046
<v Brent>You probably came up with a good name, or you need a better name, right?

00:18:16.826 --> 00:18:19.246
<v Chris>No, it's just, well, yes, I do. It's just Jellyfin Tunnel.

00:18:19.946 --> 00:18:20.266
<v Brent>Lame.

00:18:20.826 --> 00:18:24.226
<v Chris>Maybe it could be like Media Conduit. I don't know.

00:18:24.326 --> 00:18:27.126
<v Chris>I like that. I tend to give Star Trek names, because then it sticks out.

00:18:27.126 --> 00:18:31.266
<v Chris>You know, like, you know, like media subspace relay subspace media relay,

00:18:31.406 --> 00:18:32.846
<v Chris>something like that could work.

00:18:33.540 --> 00:18:37.060
<v Chris>But the other thing, too, that I didn't want to have to deal with is I didn't

00:18:37.060 --> 00:18:40.780
<v Chris>want to have to do the crazy Ngrok URL every time because I'm not going to remember that.

00:18:40.920 --> 00:18:44.240
<v Chris>And I'm picturing like an Airbnb. I'm picturing a kiosk.

00:18:44.320 --> 00:18:47.980
<v Chris>I'm picturing a basic web browser. Or I'm telling a family member over the phone.

00:18:48.040 --> 00:18:49.920
<v Chris>And I don't want to have to give them this crazy URL.

00:18:50.160 --> 00:18:55.600
<v Chris>So when I hit this button, not only do I want the tunnel to initiate on a different

00:18:55.600 --> 00:19:01.680
<v Chris>box, but then I also want to retrieve the crazy rando Ngrok URL I just got.

00:19:01.680 --> 00:19:06.880
<v Chris>And then I want to go update my Cloudflare DNS entry with a redirect to point

00:19:06.880 --> 00:19:09.860
<v Chris>a static DNS name at this new crazy URL.

00:19:10.080 --> 00:19:13.080
<v Chris>And all of that happens with a push of a button.

00:19:13.740 --> 00:19:19.480
<v Chris>And it's so great. And honestly, it was really made possible because I created

00:19:19.480 --> 00:19:22.600
<v Chris>a little REST API with a tiny little Python server.

00:19:23.872 --> 00:19:25.572
<v Chris>I vibe coded. I'll just admit that.

00:19:25.752 --> 00:19:26.032
<v Wes>Oh, yeah.

00:19:26.472 --> 00:19:29.112
<v Chris>Very simple. It's only got like

00:19:29.112 --> 00:19:33.652
<v Chris>four functions. So it's not like it's very powerful or very complicated.

00:19:33.772 --> 00:19:40.332
<v Chris>But what it does is it listens for essentially an HTTP rest request from Home Assistant.

00:19:40.992 --> 00:19:45.652
<v Chris>And that either tells it to start, stop, or check the status or get the URL.

00:19:45.952 --> 00:19:51.072
<v Chris>So in Home Assistant, I can show if the tunnel is active. I can light the button

00:19:51.072 --> 00:19:52.732
<v Chris>up when the tunnel is up or down.

00:19:53.412 --> 00:19:57.532
<v Chris>And I have history of how long the tunnel's been active, when it was activated,

00:19:57.532 --> 00:20:03.432
<v Chris>and I can also display the ngrok URL in Home Assistant if I wanted to.

00:20:03.872 --> 00:20:04.732
<v Wes>Ooh, that's nice.

00:20:04.992 --> 00:20:09.812
<v Chris>Yeah. That's really, really fantastic. I did play around with Cloudflare because

00:20:09.812 --> 00:20:12.772
<v Chris>they don't have the bandwidth limitations until you go too far.

00:20:13.192 --> 00:20:18.272
<v Chris>And because I'm hosting the DNS on Cloudflare, it kind of made sense to just do it all in one place.

00:20:18.372 --> 00:20:22.672
<v Chris>But honestly, the complexity is more significant. And so, and I've just found

00:20:22.672 --> 00:20:23.752
<v Chris>Ngrok to work really well.

00:20:23.912 --> 00:20:28.672
<v Chris>And then in Home Assistant, I created a manual REST sensor.

00:20:28.712 --> 00:20:32.272
<v Chris>And it's just something you add to the Home Assistant config.yaml file.

00:20:32.312 --> 00:20:35.512
<v Chris>And it's probably five lines of YAML.

00:20:35.572 --> 00:20:37.672
<v Chris>And it just identifies a new sensor type.

00:20:38.472 --> 00:20:43.912
<v Chris>And I give it the URLs for the sensor endpoints to go talk to the Python server.

00:20:44.172 --> 00:20:46.772
<v Chris>And then that's how it triggers and reads the state.

00:20:48.892 --> 00:20:52.232
<v Chris>And while it sounds kind of like hacking a bunch of scripts together,

00:20:52.632 --> 00:20:55.912
<v Chris>it's because it's so simple and because I'm using the Home Assistant automation

00:20:55.912 --> 00:20:58.452
<v Chris>and architecture, it works really well.

00:20:58.512 --> 00:21:02.392
<v Chris>So I have the Home Assistant dashboard, which has a switch for the ngrok tunnel,

00:21:02.432 --> 00:21:06.612
<v Chris>which then sends the rest command to start or stop the ngrok tunnel.

00:21:07.332 --> 00:21:12.192
<v Chris>Then using the API, it pulls back the status of the tunnel. It updates the...

00:21:13.147 --> 00:21:16.927
<v Chris>My dns record with that new url from the.

00:21:16.927 --> 00:21:20.407
<v Wes>Status home assistant doing that or your python automation my.

00:21:20.407 --> 00:21:26.107
<v Chris>Python is when the api when after the python script starts the tunnel it retrieves

00:21:26.107 --> 00:21:28.507
<v Chris>the url and updates the dns just right back to each other.

00:21:28.507 --> 00:21:29.287
<v Wes>Gotcha yep.

00:21:29.287 --> 00:21:32.627
<v Chris>Uh but then it delivers that back via the api to home assistant as well.

00:21:32.627 --> 00:21:36.007
<v Wes>And then how does do you have to like set certain stuff in home assistant in

00:21:36.007 --> 00:21:39.267
<v Wes>terms of like fields to pick out of the response is there a standard protocol

00:21:39.267 --> 00:21:42.747
<v Wes>in terms of like you know reading like use this field to tell if it's up or down kind of yeah Yeah.

00:21:42.867 --> 00:21:45.487
<v Chris>Because it's just giving back really simple JSON, like, yes,

00:21:45.647 --> 00:21:50.747
<v Chris>up, down, you know, status is active, inactive. That's basically it. That's all it is.

00:21:51.467 --> 00:21:54.667
<v Chris>It's so nice. But by that, I essentially get status monitoring.

00:21:54.907 --> 00:21:57.727
<v Chris>By looking at the button, I can tell if the tunnel's up or down.

00:21:57.867 --> 00:22:00.767
<v Chris>But then if I want, I can go into the button and I get an additional history

00:22:00.767 --> 00:22:02.887
<v Chris>of all the time the tunnel was used. Right.

00:22:03.726 --> 00:22:08.826
<v Chris>And then what I did is I essentially start that Python API server with a systemd unit.

00:22:09.306 --> 00:22:12.926
<v Chris>So when the system boots, it's just running via systemd, that little Python listener.

00:22:13.486 --> 00:22:17.266
<v Wes>And then that guy also is what interfaces with ngrok's API, right?

00:22:17.346 --> 00:22:19.186
<v Wes>Which is sort of like, hey, toggle this tunnel on.

00:22:19.346 --> 00:22:23.146
<v Wes>And then as long as you have separately that little tunneling daemon running

00:22:23.146 --> 00:22:25.706
<v Wes>and available, it'll pick up on that automatically.

00:22:26.106 --> 00:22:26.506
<v Chris>Yeah.

00:22:27.006 --> 00:22:27.206
<v Wes>Cool.

00:22:27.226 --> 00:22:30.646
<v Chris>And then it's using the Cloudflare API, which I had to go create an API key,

00:22:30.686 --> 00:22:32.966
<v Chris>obviously, for the different zones it needed to manage and whatnot.

00:22:32.966 --> 00:22:39.006
<v Chris>And it's using that to do all the DNS and redirect on my subdomain that always remains the same.

00:22:39.146 --> 00:22:44.226
<v Chris>So I always just go to the same URL and I never have to, I always have a vanity

00:22:44.226 --> 00:22:45.846
<v Chris>URL for it. I never have to worry about any of it.

00:22:45.986 --> 00:22:48.626
<v Chris>And then when we're done, I just pull up the Home Assistant app on my phone,

00:22:49.126 --> 00:22:51.346
<v Chris>tap the button on the media card, on the media dashboard.

00:22:51.726 --> 00:22:55.086
<v Chris>And it takes about 10, 15 seconds and then the tunnel closes.

00:22:55.666 --> 00:22:59.466
<v Chris>That's it. And I had you boys try it this morning and I just told you what URL

00:22:59.466 --> 00:23:03.366
<v Chris>to go to and you do get an NGROC screen. But I'm curious to see what your impressions were.

00:23:03.826 --> 00:23:07.286
<v Chris>I'll start with you, Brantley, since you were probably on the most remote sketch

00:23:07.286 --> 00:23:10.586
<v Chris>connection out of the two. Well, it's just what it is.

00:23:12.226 --> 00:23:15.626
<v Brent>Yeah, I have to say it just felt like the native experience.

00:23:16.186 --> 00:23:18.606
<v Brent>Aside from that NGROC screen that you...

00:23:19.668 --> 00:23:23.108
<v Brent>To say, yeah, yeah, I, you know, I trust the person who sent me this weird,

00:23:23.208 --> 00:23:25.808
<v Brent>crazy link, which I'm not sure I should have answered that.

00:23:25.968 --> 00:23:31.168
<v Brent>But then I just got the, you know, usual Jellyfin interface and stole your credentials

00:23:31.168 --> 00:23:33.368
<v Brent>and it seemed to work perfectly fine.

00:23:33.368 --> 00:23:37.748
<v Brent>There was a little bit of buffering on my end, but I think we figured out that

00:23:37.748 --> 00:23:41.368
<v Brent>that's because it was your box was doing a little bit of transcoding to send it my way.

00:23:41.548 --> 00:23:46.028
<v Brent>Not because necessarily of bad connections, but just because of hardware.

00:23:46.288 --> 00:23:47.748
<v Brent>Is that, was that your assessment as well?

00:23:47.748 --> 00:23:51.188
<v Chris>Yeah, just that Spaceballs was 4K, UHD.

00:23:51.488 --> 00:23:54.588
<v Brent>That was the only thing to test with. Yeah, I couldn't find anything else.

00:23:55.068 --> 00:23:58.608
<v Chris>No, of course not. No, I don't know. So, Wes, I know it's not the most performance

00:23:58.608 --> 00:24:01.928
<v Chris>solution, but if you took out that Ngrok prompt screen, which I think would

00:24:01.928 --> 00:24:06.568
<v Chris>go away if I paid for it, it feels like a pretty seamless solution.

00:24:06.668 --> 00:24:09.468
<v Chris>You wouldn't even know. You just go into any web browser and Jellyfin just comes right up.

00:24:09.468 --> 00:24:12.368
<v Wes>Yeah one thing i wasn't sure that i didn't check when i was looking at it was

00:24:12.368 --> 00:24:18.348
<v Wes>um are you doing like a cloud for flare proxy to apply a correct cert name like

00:24:18.348 --> 00:24:22.348
<v Wes>on that level or does ncroc get that right yeah or maybe jellyfin just doesn't

00:24:22.348 --> 00:24:25.768
<v Wes>care no jellyfin cares but do you tell them because then you're adding your

00:24:25.768 --> 00:24:28.368
<v Wes>own like wrapping layer right i.

00:24:28.368 --> 00:24:32.408
<v Chris>Wonder if maybe it is it is probably also solved it via it must have been solved

00:24:32.408 --> 00:24:33.548
<v Chris>at the cloud level it's just,

00:24:34.566 --> 00:24:36.006
<v Chris>I don't recall going through that process.

00:24:36.446 --> 00:24:41.726
<v Wes>But in any case, at least doing it in the browser, I didn't do a complicated app or Chromecast test.

00:24:41.846 --> 00:24:42.926
<v Chris>You don't have to do a fake search. But it worked just fine.

00:24:43.086 --> 00:24:48.326
<v Wes>Yeah. And it is interesting. You mentioned possible limitations with bandwidth.

00:24:48.546 --> 00:24:51.366
<v Wes>Again, you're using a free plan from a thing, so there's risks with that.

00:24:51.486 --> 00:24:54.626
<v Wes>And I think, as far as I knew, I've never used them extensively,

00:24:54.646 --> 00:25:00.526
<v Wes>but I think Ncroc started from making it easy to expose staging developer stuff.

00:25:00.606 --> 00:25:03.826
<v Wes>I'm working on something developing over here, and I want to do a demo and share that.

00:25:03.826 --> 00:25:08.726
<v Chris>So yeah, so here's my API on my private box is really, yeah, and I, you're right.

00:25:08.906 --> 00:25:12.946
<v Chris>And I do think if you were going for raw performance, Cloudflare is probably

00:25:12.946 --> 00:25:14.866
<v Chris>better because their network's a little more robust.

00:25:15.966 --> 00:25:19.346
<v Chris>And additionally, they don't have that one gigabyte limit on the free plan.

00:25:20.306 --> 00:25:25.366
<v Chris>So there's that. However, I really like Ngrok, so I'm not necessarily inclined to change it.

00:25:25.606 --> 00:25:28.546
<v Wes>Well, and as you saw, right, like it was, the UX was good.

00:25:28.806 --> 00:25:32.206
<v Wes>It was well supported out there. There's a lot of examples. There's API integrations

00:25:32.206 --> 00:25:34.646
<v Wes>for it and all that. So there's a lot of benefits too.

00:25:34.806 --> 00:25:38.806
<v Chris>The cool thing is because I kept the configuration and Home Assistant itself

00:25:38.806 --> 00:25:44.626
<v Chris>to something really basic, it's four or five lines of YAML, I can change out.

00:25:45.460 --> 00:25:49.440
<v Chris>Ngrok and cloudflare and keep the home assistant part working because i just

00:25:49.440 --> 00:25:54.300
<v Chris>keep the api endpoints the same if it's if it's ngrok or cloudflare and then

00:25:54.300 --> 00:25:58.760
<v Chris>i don't have to readjust anything in home assistant and it keeps working i tested

00:25:58.760 --> 00:26:01.180
<v Chris>this i swapped out to cloudflare tunnels temporarily,

00:26:02.140 --> 00:26:06.380
<v Chris>and uh you know just kept the api url

00:26:06.380 --> 00:26:09.120
<v Chris>endpoints the same even though now it's not ngrok and it

00:26:09.120 --> 00:26:11.860
<v Chris>works so that flexibility i really love in a sense

00:26:11.860 --> 00:26:14.500
<v Chris>it's modular right the jellyfin the media server it could be plex it could

00:26:14.500 --> 00:26:17.520
<v Chris>be sync thing it could be my my my documentation

00:26:17.520 --> 00:26:20.560
<v Chris>it could be my lube logger it could be any app

00:26:20.560 --> 00:26:23.540
<v Chris>and it can be any it could be ngrok it could

00:26:23.540 --> 00:26:28.500
<v Chris>be funnels it could be channel tunnels it could be any tunneling technology

00:26:28.500 --> 00:26:34.220
<v Chris>you want and then with home assistant it that just stays agnostic as well but

00:26:34.220 --> 00:26:38.860
<v Chris>they all really seamlessly work together and i don't ever manually start this

00:26:38.860 --> 00:26:41.380
<v Chris>tunnel even though i know the command to start the tunnel i don't ever i just

00:26:41.380 --> 00:26:43.480
<v Chris>Oh, I just bring it up on Home Assistant and start it.

00:26:43.900 --> 00:26:47.100
<v Chris>Like this morning when you guys wanted to try it, I just asked the station to that box.

00:26:48.093 --> 00:26:51.433
<v Chris>I'd open up my tab and went over to Home Assistant and I started to tell that one.

00:26:51.453 --> 00:26:52.033
<v Wes>Hit the button. Yeah.

00:26:52.113 --> 00:26:55.053
<v Chris>Yeah, hit the button. Yeah. Well, like you said.

00:26:55.093 --> 00:26:58.773
<v Wes>Right, you get the dashboard, you get the metrics, you get the state keeping,

00:26:59.053 --> 00:27:00.773
<v Wes>all that kind of stuff for free.

00:27:01.793 --> 00:27:06.453
<v Chris>It's nice to solve this problem, but it's not the only way. And Wes,

00:27:06.553 --> 00:27:08.933
<v Chris>you played around with something called Jelly Swarm.

00:27:09.313 --> 00:27:13.833
<v Wes>Yeah. You know, you kind of touched on it earlier. Like you transition to Jellyfin

00:27:13.833 --> 00:27:18.433
<v Wes>and it does a lot that we love. But there's some kind of areas that it doesn't

00:27:18.433 --> 00:27:22.173
<v Wes>really compete with Plex in the same way or kind of offer the same functionality.

00:27:22.973 --> 00:27:28.373
<v Wes>And so I just took this as an opportunity to go look around and see what tooling

00:27:28.373 --> 00:27:31.853
<v Wes>folks were building and working on that might sort of fit.

00:27:32.153 --> 00:27:37.913
<v Wes>And so we'd been kind of curious around like proxies or ways to share servers before.

00:27:38.773 --> 00:27:42.053
<v Wes>So jelly swarm advertises itself as

00:27:42.053 --> 00:27:45.453
<v Wes>a reverse proxy that lets you combine multiple jellyfin

00:27:45.453 --> 00:27:49.913
<v Wes>servers into one place if you've got libraries spread across different locations

00:27:49.913 --> 00:27:53.613
<v Wes>or just want everything together jelly swarm makes it easy to access all your

00:27:53.613 --> 00:27:58.513
<v Wes>media from a single interface multiple servers yeah i haven't done that remote

00:27:58.513 --> 00:28:03.733
<v Wes>yeah i've only just got it uh set up but yeah so you can proxy one server or proxy multiple servers.

00:28:03.733 --> 00:28:08.253
<v Brent>Oh i could see us using this for a different uh let's say, purposes.

00:28:08.793 --> 00:28:12.413
<v Chris>Yeah. Unified library access. Browse media from multiple Jellyfin servers in

00:28:12.413 --> 00:28:15.293
<v Chris>one place. Play content straight from the original server.

00:28:15.513 --> 00:28:17.033
<v Wes>Yeah, do you want to try it?

00:28:17.153 --> 00:28:20.853
<v Chris>Yeah. Yeah, I want to try it. You got it up? You got it up right now? Is it working?

00:28:21.033 --> 00:28:23.213
<v Brent>I bet you it's running off his laptop right now.

00:28:23.713 --> 00:28:25.553
<v Wes>Yeah, it is. So don't go crazy.

00:28:25.553 --> 00:28:25.733
<v Chris>I see it.

00:28:25.773 --> 00:28:26.233
<v Wes>Don't go crazy.

00:28:26.313 --> 00:28:29.453
<v Chris>Great. All right. All right. All right. I'm going to just use the traditional

00:28:29.453 --> 00:28:34.233
<v Chris>login. Go ahead and remember. Oh, no. Is that not the traditional login? Oh, is it Chris F?

00:28:34.233 --> 00:28:35.733
<v Brent>No space in the password, too.

00:28:35.953 --> 00:28:39.533
<v Chris>No, of course not. We don't do spaces. We're not here for stinking spaces.

00:28:40.133 --> 00:28:42.953
<v Chris>There we go. I'm in. Boy, it's fast, Wes. That's on your laptop?

00:28:43.633 --> 00:28:43.913
<v Brent>Yeah.

00:28:44.073 --> 00:28:46.893
<v Wes>And then you should, if you, I don't know if you, if you can mute the tab or

00:28:46.893 --> 00:28:49.473
<v Wes>something. I don't know if you want to try it to see if the video will load.

00:28:50.930 --> 00:28:54.010
<v Chris>It's spinning and loaded, boom, right into Deep Space Nine.

00:28:54.110 --> 00:28:54.790
<v Wes>Yeah, all right.

00:28:54.930 --> 00:28:56.250
<v Chris>Season 2, episode 13.

00:28:56.650 --> 00:28:57.390
<v Wes>Armageddon game.

00:28:58.230 --> 00:29:01.170
<v Brent>Wes Sneaky had me test this last night without your knowledge,

00:29:01.230 --> 00:29:04.290
<v Brent>Chris, because he knew he was working on a competing solution,

00:29:04.290 --> 00:29:05.750
<v Brent>and I think he wanted to win.

00:29:07.190 --> 00:29:11.110
<v Brent>I got to say, between the two, Wes is a little smoother.

00:29:11.370 --> 00:29:14.550
<v Brent>There's no, like, yes, I need to trust this crazy human URL,

00:29:14.550 --> 00:29:16.790
<v Brent>and also it loaded pretty quick.

00:29:17.110 --> 00:29:21.930
<v Brent>But the coolest feature I saw was user mapping. Wes, you want to write us through that?

00:29:22.470 --> 00:29:22.830
<v Chris>Oh.

00:29:23.010 --> 00:29:27.710
<v Wes>Yeah, actually, Chris, if you pull that URL back up, if you add slash UI to it,

00:29:29.304 --> 00:29:32.124
<v Wes>I think it'll take you to the management interface.

00:29:33.784 --> 00:29:36.844
<v Chris>Oh, yes, it does. The Jelly Swarm admin interface.

00:29:37.004 --> 00:29:39.944
<v Wes>And then same password, but use Wes as the username there.

00:29:40.224 --> 00:29:45.944
<v Chris>I do love our security practices. Okay. Is it Wes P or is it just Wes?

00:29:45.944 --> 00:29:49.024
<v Wes>No, just W-E-S. It should be. Oh, no, it's admin. Sorry, it's admin.

00:29:49.124 --> 00:29:52.104
<v Chris>Now we know what Wes's password is. All right, now we are in.

00:29:52.644 --> 00:29:54.804
<v Chris>I see. So I have one server listed. Yeah.

00:29:55.004 --> 00:29:58.124
<v Wes>Yeah, so this is Jelly Swarm. It's a Rust-based app.

00:29:58.504 --> 00:30:01.904
<v Wes>It's got like just a little minimal web server that it hosts as well as being

00:30:01.904 --> 00:30:06.284
<v Wes>a proxy that shows its own full Jellyfin UI and so it's pretty simple right

00:30:06.284 --> 00:30:08.424
<v Wes>now, really early days for the project I think.

00:30:08.964 --> 00:30:11.944
<v Wes>But yeah, you've got servers you can configure users and then some basic settings.

00:30:12.124 --> 00:30:14.904
<v Wes>So the first thing you do of course is well what are you proxying?

00:30:15.024 --> 00:30:19.204
<v Wes>And so this is where it's being proxied over a mesh network back to my laptop.

00:30:19.464 --> 00:30:22.424
<v Wes>But you can see here where you could add multiple ones. They have a priority

00:30:22.424 --> 00:30:23.464
<v Wes>field which I haven't played with.

00:30:23.544 --> 00:30:24.884
<v Chris>How are you getting this public to the internet?

00:30:24.884 --> 00:30:30.064
<v Wes>For this demo, the proxy is running on a VPS.

00:30:30.124 --> 00:30:31.044
<v Chris>A VPS. I see.

00:30:31.504 --> 00:30:34.964
<v Wes>And then talking over the mesh network back to my server at home.

00:30:35.124 --> 00:30:39.704
<v Chris>That is a very nice solution. So you have a VPS that's got a mesh network interface,

00:30:39.704 --> 00:30:42.984
<v Chris>and then it can proxy these. And it works really well.

00:30:43.884 --> 00:30:47.864
<v Chris>And it's like three fields to add a new Jellyfin server to this,

00:30:47.944 --> 00:30:49.204
<v Chris>as long as it can access it.

00:30:49.304 --> 00:30:52.504
<v Wes>And then if you go to the users tab, you'll see one thing that's interesting is,

00:30:53.786 --> 00:30:57.826
<v Wes>it does a layer of mapping. So it has its own directory of users,

00:30:57.826 --> 00:31:02.266
<v Wes>and then you choose how to map those onto the credentials to the actual Jellyfin

00:31:02.266 --> 00:31:04.266
<v Wes>servers that it's being proxied to.

00:31:04.646 --> 00:31:10.266
<v Wes>So I was able to map both of your guys' fake proxy accounts onto the one Wes

00:31:10.266 --> 00:31:12.326
<v Wes>account that I have on my actual Jellyfin server.

00:31:12.486 --> 00:31:12.826
<v Chris>Yeah.

00:31:13.046 --> 00:31:16.486
<v Wes>And you could do it other ways too, right? But that gives you a lot of flexibility, I think.

00:31:16.686 --> 00:31:20.446
<v Chris>Wow, that's great. This is really, really cool. Huh.

00:31:20.566 --> 00:31:23.186
<v Wes>Now, one downside I saw in this early version, I don't know if they're going

00:31:23.186 --> 00:31:24.206
<v Wes>to try to fix that or what.

00:31:24.686 --> 00:31:29.546
<v Wes>One part, I did have to still set up like a full forward to my Jellyfin instance,

00:31:31.126 --> 00:31:35.346
<v Wes>because everything worked in terms of being fully proxied through JellySwarm,

00:31:35.506 --> 00:31:37.506
<v Wes>except when I would try to play the media.

00:31:37.686 --> 00:31:41.306
<v Wes>And it looked like for that, it was still ultimately getting served a link to

00:31:41.306 --> 00:31:42.626
<v Wes>the backing Jellyfin server.

00:31:43.446 --> 00:31:46.706
<v Wes>So if you knew the right, if you were watching the network traffic,

00:31:47.306 --> 00:31:51.666
<v Wes>you could go figure out like where the backing server is that's being proxied

00:31:51.666 --> 00:31:55.306
<v Wes>from that same VPS, but you don't have an account for it because you have credentials

00:31:55.306 --> 00:31:57.186
<v Wes>that are only valid for the proxy.

00:31:57.526 --> 00:32:01.086
<v Wes>And I think eventually, right, it could be that this is able to proxy the media too.

00:32:01.446 --> 00:32:04.566
<v Wes>I don't know what the full plans are there. So there are some caveats, but...

00:32:05.144 --> 00:32:07.944
<v Wes>I was impressed, honestly, with how well it worked. I was able to test it with

00:32:07.944 --> 00:32:10.604
<v Wes>doing a Chromecast here at the house. That was totally fine.

00:32:10.744 --> 00:32:13.564
<v Wes>And it works just fine with the Android Jellyfin app, too.

00:32:13.764 --> 00:32:16.564
<v Chris>Well, I see it's still actively updated. It's kind of a new project,

00:32:16.784 --> 00:32:20.204
<v Chris>but it's under active development. Last four days ago, things were created in

00:32:20.204 --> 00:32:21.064
<v Chris>last week, a bunch of stuff.

00:32:21.384 --> 00:32:25.944
<v Chris>And it's GPL 2.0. It is Jelly Swarm. Bring all your Jellyfin servers together.

00:32:26.084 --> 00:32:28.244
<v Chris>I think this is the route I'm actually going to go for Jellyfin.

00:32:28.864 --> 00:32:31.584
<v Chris>Because then we could also, over time, we could add each other's servers,

00:32:31.624 --> 00:32:32.904
<v Chris>which sounds like a lot of fun.

00:32:33.324 --> 00:32:37.264
<v Chris>And then this tunnel thing I've come up with seems useful for other types of

00:32:37.264 --> 00:32:39.444
<v Chris>self-hosted services that I want to temporarily make available.

00:32:39.704 --> 00:32:45.924
<v Chris>I like Jelly Swarm a lot. So it's LukeS22 on GitHub and we'll put a link to this in the show notes.

00:32:46.044 --> 00:32:49.384
<v Wes>I did also see just a quick smattering of other things that we should,

00:32:49.644 --> 00:32:51.044
<v Wes>that maybe were worth checking out.

00:32:51.384 --> 00:32:51.664
<v Chris>Yeah, yeah.

00:32:51.924 --> 00:32:55.384
<v Wes>Sadly, it has not been updated yet for the latest, like Jellyfin just had that

00:32:55.384 --> 00:32:58.444
<v Wes>big new release with the database upgrade and all that.

00:32:58.744 --> 00:33:04.904
<v Wes>So 10.11, that doesn't support it, But there is a flake out there called declarative jellyfin.

00:33:05.204 --> 00:33:06.444
<v Chris>Oh, this is up your alley.

00:33:06.664 --> 00:33:11.264
<v Wes>Yes, right? So basically you can define all your jellyfin stuff in your NixOS setup.

00:33:12.044 --> 00:33:15.764
<v Wes>So once that's updated for the new 10.11 version, I think that's going to be

00:33:15.764 --> 00:33:19.524
<v Wes>killer, especially if you wanted to quickly automate standing these kind of

00:33:19.524 --> 00:33:22.104
<v Wes>things up, or you just wanted to have a more maintainable jellyfin.

00:33:22.244 --> 00:33:25.404
<v Chris>You found some good ones. You got a couple of other good ones in here, Wes.

00:33:25.584 --> 00:33:29.464
<v Wes>So check out JellyHub. It's a web app that allows you to fetch media from all

00:33:29.464 --> 00:33:32.504
<v Wes>of your jellyfin servers and regroup it into one place.

00:33:32.584 --> 00:33:37.084
<v Wes>So there's one place to search for a specific media and tells you on which server

00:33:37.084 --> 00:33:38.644
<v Wes>the desired media is located.

00:33:38.804 --> 00:33:42.324
<v Wes>So you could kind of see some combo of like Jelly Swarm and Jelly Hub.

00:33:43.444 --> 00:33:46.744
<v Wes>Maybe that starts to get you a little more to like the Plexus.

00:33:46.744 --> 00:33:51.064
<v Chris>Oh my gosh, this is so great for me because I have a couple of disparate,

00:33:51.304 --> 00:33:53.764
<v Chris>smaller Jellyfin servers and then ideally- Subfins.

00:33:53.784 --> 00:33:54.084
<v Wes>Of course.

00:33:54.484 --> 00:33:57.104
<v Chris>Right, subfins. And then you'd have like a central fin at the server,

00:33:57.404 --> 00:34:01.504
<v Chris>like the main fin, the main that. And it's also GPL3, JellyHub.

00:34:02.411 --> 00:34:07.571
<v Wes>I also found Jellyman and Jellyroller, which are both like a set of scripts

00:34:07.571 --> 00:34:11.631
<v Wes>and or CLI utilities meant to like help manage your Jellyfin.

00:34:11.811 --> 00:34:15.911
<v Wes>So if you do start automating and rolling things out, you can check those out.

00:34:16.051 --> 00:34:20.291
<v Wes>And the docs were entirely in Chinese. So I did my best to translate it.

00:34:20.391 --> 00:34:23.771
<v Wes>But MB to local player, which is something I've wanted before,

00:34:23.851 --> 00:34:26.351
<v Wes>because one of the great things about Jellyfin, right, is it makes it super

00:34:26.351 --> 00:34:30.651
<v Wes>easy to just download or to get direct stream access to the media without having

00:34:30.651 --> 00:34:32.291
<v Wes>to fuss with its UI or anything.

00:34:32.411 --> 00:34:39.551
<v Wes>Well mb to local player basically automates doing that but with hooks to like

00:34:39.551 --> 00:34:43.671
<v Wes>go back and try to sync your watched status which is what you lose if you take

00:34:43.671 --> 00:34:44.711
<v Wes>things out of the whole system.

00:34:44.711 --> 00:34:45.531
<v Chris>Oh that's brilliant.

00:34:45.531 --> 00:34:49.351
<v Wes>So imagine just like using mpv to watch your video locally while you're working

00:34:49.351 --> 00:34:52.471
<v Wes>at your desk and then still have that data in the system.

00:34:52.471 --> 00:34:57.971
<v Chris>Wow nice finds very nice we'll have links to all of that in the show notes of

00:34:57.971 --> 00:35:00.871
<v Chris>course also would love to hear your

00:35:00.871 --> 00:35:05.411
<v Chris>crazy network tunneling solutions and security solutions for my setup.

00:35:05.671 --> 00:35:09.751
<v Chris>Like, you know, maybe if I keep using this, I should build in some security.

00:35:09.951 --> 00:35:13.111
<v Chris>So boost in and let us know. It's a great way to support the show and share

00:35:13.111 --> 00:35:15.631
<v Chris>the knowledge and links to all of this in the notes.

00:35:19.916 --> 00:35:24.176
<v Chris>1password.com slash unplugged. Take the first steps to better security for your

00:35:24.176 --> 00:35:27.756
<v Chris>team by securing credentials and protecting every application,

00:35:28.056 --> 00:35:29.276
<v Chris>even the ones you don't know about.

00:35:29.376 --> 00:35:33.376
<v Chris>Learn more at 1password.com slash unplugged. That's the number one password

00:35:33.376 --> 00:35:35.096
<v Chris>and it's all lowercase unplugged right there.

00:35:35.236 --> 00:35:39.356
<v Chris>You just go there and learn more because this is something that would have changed

00:35:39.356 --> 00:35:41.196
<v Chris>the game for me when I was in IT.

00:35:41.416 --> 00:35:44.816
<v Chris>If you're in IT, if maybe you're in security as well, Well, you know what a

00:35:44.816 --> 00:35:46.076
<v Chris>mountain of different assets.

00:35:46.336 --> 00:35:50.076
<v Chris>There's physical hardware. There's user identities. There's applications.

00:35:50.416 --> 00:35:55.036
<v Chris>And it's a lot. And it's always growing. Well, you can conquer this continuously

00:35:55.036 --> 00:35:59.396
<v Chris>growing mountain of security risk with 1Password extended access management.

00:35:59.596 --> 00:36:03.856
<v Chris>This is a huge issue. You're not alone. This has been identified as a major problem out there.

00:36:04.136 --> 00:36:10.476
<v Chris>And this is where 1Password is trying to make life better for both users, IT, and security.

00:36:10.656 --> 00:36:14.656
<v Chris>And they have Trellica. This is something that can discover and secure access

00:36:14.656 --> 00:36:17.336
<v Chris>to all of your apps, managed or unmanaged.

00:36:17.856 --> 00:36:21.116
<v Chris>Trellica by 1Password inventories every app and usage at your company.

00:36:21.256 --> 00:36:24.916
<v Chris>It has pre-populated app profiles so it can assess the different SaaS risks.

00:36:25.096 --> 00:36:28.596
<v Chris>It'll let you know who has access to what. You can manage that.

00:36:28.696 --> 00:36:32.336
<v Chris>You can optimize the spend. You can even enforce security best practices across

00:36:32.336 --> 00:36:34.436
<v Chris>every applications your employees use.

00:36:34.556 --> 00:36:38.376
<v Chris>And now you're going to know which ones they're using, even the shadow IT.

00:36:39.016 --> 00:36:42.816
<v Chris>I also really appreciate this because I know so many companies struggle with

00:36:42.816 --> 00:36:45.136
<v Chris>onboarding and offboarding employees.

00:36:45.356 --> 00:36:47.516
<v Chris>You have a process that lasts for a little while.

00:36:48.296 --> 00:36:52.016
<v Chris>This needs to be better. And this is an area where 1Password can help.

00:36:52.136 --> 00:36:53.456
<v Chris>It can help you meet compliance goals.

00:36:54.372 --> 00:36:58.712
<v Chris>It provides a complete solution for SaaS access governance. Trelica by 1Password

00:36:58.712 --> 00:37:02.312
<v Chris>is just one of the ways that extended access management as an entire suite helps

00:37:02.312 --> 00:37:04.832
<v Chris>teams strengthen compliance and security.

00:37:05.052 --> 00:37:09.132
<v Chris>You know about their award-winning password manager. I use it. Family members use it.

00:37:09.472 --> 00:37:12.632
<v Chris>It's trusted by millions of people. I was really thrilled when they came to Linux.

00:37:13.192 --> 00:37:17.212
<v Chris>Businesses all over the world use it. This goes way beyond that.

00:37:17.292 --> 00:37:21.032
<v Chris>They're securing more than just passwords with 1Password extended access management.

00:37:21.552 --> 00:37:25.172
<v Chris>This is something that would make life easier for me, and I think it'll make life easier for you.

00:37:25.312 --> 00:37:28.812
<v Chris>So take the first steps to better security for your team by securing credentials

00:37:28.812 --> 00:37:32.312
<v Chris>and protecting every application, even the unmanaged ones.

00:37:32.452 --> 00:37:37.612
<v Chris>You can learn more by supporting the show and going to 1password.com slash unplugged.

00:37:37.692 --> 00:37:41.712
<v Chris>They have a video there you could watch. That's the number 1password.com slash

00:37:41.712 --> 00:37:44.452
<v Chris>unplugged. All lowercase. Go learn more.

00:37:44.872 --> 00:37:47.132
<v Chris>1password.com slash unplugged.

00:37:49.211 --> 00:37:52.511
<v Chris>Join CrowdHealth.com and use the promo code unplugged.

00:37:52.831 --> 00:37:55.911
<v Chris>Making informed decisions about health care is getting tougher and tougher.

00:37:56.051 --> 00:37:59.471
<v Chris>It's also becoming a political football, which makes it very frustrating.

00:37:59.891 --> 00:38:03.211
<v Chris>But it is open enrollment season. That's the season where the health insurance

00:38:03.211 --> 00:38:07.491
<v Chris>companies are going to hope you'll just sign up again and just swallow those

00:38:07.491 --> 00:38:10.271
<v Chris>overpriced premiums and the confusing fine print.

00:38:10.931 --> 00:38:15.871
<v Chris>This is where CrowdHealth comes in. I have been a member for over three years.

00:38:15.891 --> 00:38:19.211
<v Chris>And don't take my word for it. Go check it out. go to joincrowdhealth.com.

00:38:19.331 --> 00:38:22.131
<v Chris>It's a healthcare alternative for people who make their own decisions.

00:38:22.371 --> 00:38:27.371
<v Chris>I'm a small business owner, very small business. This was a absolute must do

00:38:27.371 --> 00:38:29.751
<v Chris>for us. My wife and I both own our own businesses.

00:38:30.291 --> 00:38:33.551
<v Chris>We have saved thousands of dollars using CrowdHealth.

00:38:33.871 --> 00:38:37.371
<v Chris>Stop playing that insurance game. Go join CrowdHealth. It's a community of people

00:38:37.371 --> 00:38:40.151
<v Chris>that fund each other's medical bills directly. No middlemen,

00:38:40.291 --> 00:38:41.491
<v Chris>no networks, no nonsense.

00:38:41.811 --> 00:38:45.411
<v Chris>I see so many success stories on social media all the time.

00:38:45.531 --> 00:38:48.931
<v Chris>But as a member myself, You know, just being in the system, I've watched the

00:38:48.931 --> 00:38:50.171
<v Chris>process work and I love it.

00:38:50.871 --> 00:38:53.591
<v Chris>You know, I'm very comfortable with it. It gives me peace of mind.

00:38:53.771 --> 00:38:56.111
<v Chris>I have seen the system work over and over again.

00:38:56.291 --> 00:38:59.551
<v Chris>And they have a great app to manage all of it. It's very straightforward when

00:38:59.551 --> 00:39:02.011
<v Chris>you're going to start the process or if you have an emergency situation or,

00:39:02.131 --> 00:39:05.211
<v Chris>you know, you just want like kind of like somebody to ask some questions.

00:39:05.271 --> 00:39:07.311
<v Chris>They have an app that handles all of it.

00:39:07.631 --> 00:39:10.531
<v Chris>This is CrowdHealth. It's a health insurance alternative.

00:39:10.871 --> 00:39:15.451
<v Chris>It's health care for under $100. You get access to a team of health bill negotiators,

00:39:15.791 --> 00:39:20.231
<v Chris>low-cost prescriptions, and lab testing tools, as well as a database of low-cost,

00:39:20.411 --> 00:39:23.131
<v Chris>high-quality doctors vetted by CrowdHealth.

00:39:23.311 --> 00:39:27.971
<v Chris>If something happens, you pay the first $500, then the crowd steps in to fund the rest.

00:39:28.511 --> 00:39:31.991
<v Chris>This is how things should be, and it lets you take power back here.

00:39:32.211 --> 00:39:34.831
<v Chris>The system is betting you're just going to stay in the same stuck,

00:39:35.051 --> 00:39:37.351
<v Chris>overpriced, continually overpriced system.

00:39:38.822 --> 00:39:41.302
<v Chris>And if those subsidies expire, which they seem like they're going to,

00:39:41.542 --> 00:39:42.942
<v Chris>prices could go sky high.

00:39:44.082 --> 00:39:47.342
<v Chris>CrowdHealth has saved members over $40 million in health care expenses because

00:39:47.342 --> 00:39:50.902
<v Chris>they just refuse to overpay for health care. It's open enrollment, so take your power back.

00:39:51.142 --> 00:39:55.922
<v Chris>Join CrowdHealth. Get started today for $99 for your first three months. Can you believe it?

00:39:56.302 --> 00:39:58.262
<v Chris>And it's real. It's real. I've done it.

00:39:58.822 --> 00:40:02.842
<v Chris>It's great. Go to joincrowdhealth.com. Use the promo code unplugged.

00:40:02.922 --> 00:40:05.942
<v Chris>It's joincrowdhealth.com and then promo code unplugged.

00:40:06.362 --> 00:40:09.162
<v Chris>CrowdHealth is not insurance. opt out and take your power back.

00:40:09.322 --> 00:40:14.762
<v Chris>This is how we win and make a difference. Join crowdhealth.com promo code unplugged.

00:40:17.062 --> 00:40:21.062
<v Brent>Well, we've got a nice round of boosts here and it all starts with the dude

00:40:21.062 --> 00:40:25.022
<v Brent>who's abiding. 87,654 sats.

00:40:30.194 --> 00:40:33.274
<v Brent>Thank you very much. It says, greetings to all, long time no boost.

00:40:33.474 --> 00:40:38.954
<v Brent>I'm left behind, currently in the middle of episode 639 and slowly crawling

00:40:38.954 --> 00:40:40.454
<v Brent>my way to the most recent one.

00:40:40.774 --> 00:40:45.014
<v Brent>Chris, not sure you decided on a home assistant machine, but I have the blue

00:40:45.014 --> 00:40:47.534
<v Brent>and it's been rock solid for four years?

00:40:48.074 --> 00:40:48.214
<v Chris>Yeah.

00:40:48.774 --> 00:40:49.014
<v Wes>Wow.

00:40:49.374 --> 00:40:55.434
<v Brent>It's an Odroid N2+, which on paper it sits at 2.2 watts idle and 6 watts at

00:40:55.434 --> 00:41:01.894
<v Brent>full load. I have it connected via PoE and I can see it sips 2.32 watts right now.

00:41:02.074 --> 00:41:04.634
<v Brent>As for Zigbee, I have an Ethernet adapter.

00:41:04.894 --> 00:41:06.754
<v Brent>Not sure you can go that route, though.

00:41:08.274 --> 00:41:12.014
<v Chris>Yeah. Yeah. And also, he says, do you still use Plex?

00:41:12.154 --> 00:41:18.674
<v Chris>Yes, because of the remote streaming. Well, so far. But check out WatchState, which will sync them.

00:41:18.894 --> 00:41:23.114
<v Chris>A tool primarily to sync your backends. User PlayState, which is really the

00:41:23.114 --> 00:41:24.834
<v Chris>thing that's really the big deal.

00:41:24.834 --> 00:41:26.954
<v Wes>Yeah, and traps a lot of people where they are.

00:41:27.274 --> 00:41:29.654
<v Chris>Plex, Jellyfin, and Embe. Embe.

00:41:30.454 --> 00:41:30.834
<v Brent>Embe.

00:41:30.974 --> 00:41:36.874
<v Chris>How about that? Yep. And they hit their version 1.0 stable release on October 29th.

00:41:36.994 --> 00:41:40.234
<v Chris>There's another great tip. That's a good one. I didn't know about that.

00:41:42.054 --> 00:41:43.914
<v Chris>There's no reason not to have your watch state synced.

00:41:44.134 --> 00:41:47.854
<v Wes>Yeah, you've been manually syncing it yourself, watching the episode twice, the whole thing.

00:41:47.954 --> 00:41:49.654
<v Chris>Fucking animal. Yeah, I just watched them again. I don't know.

00:41:50.494 --> 00:41:56.194
<v Chris>By the way, just a quick aside. The Home Assistant Blue is what runs the studio's

00:41:56.194 --> 00:41:57.194
<v Chris>Home Assistant automation.

00:41:57.454 --> 00:42:02.294
<v Chris>And it has been very solid. It's not crazy powerful, but the needs here are not as much.

00:42:02.794 --> 00:42:05.414
<v Chris>So, yes. So I will say, I don't know if they sell it anymore,

00:42:05.434 --> 00:42:07.594
<v Chris>but I will say it has been a very solid machine.

00:42:07.874 --> 00:42:10.794
<v Chris>I've been very grateful for the Blue. And I bought it as soon as they announced

00:42:10.794 --> 00:42:12.014
<v Chris>it. Don't tell you that much.

00:42:13.494 --> 00:42:16.274
<v Chris>Marcel's here with a row of McDucks. How about that?

00:42:19.434 --> 00:42:20.514
<v Chris>22,222 sats.

00:42:23.212 --> 00:42:26.132
<v Chris>That was way too cheap of a baller boost, so I have some more sats.

00:42:26.552 --> 00:42:32.152
<v Chris>Thanks for taking a look at my setup last week after the show and the post-show.

00:42:32.552 --> 00:42:35.092
<v Chris>You had a refreshingly balanced take. Still not sure what I'll do.

00:42:35.232 --> 00:42:40.212
<v Chris>I'm really reluctant to run it in a VM. So far, I've needed that software again. Oh, yeah.

00:42:40.652 --> 00:42:45.012
<v Wes>Right. At the end of the last episode, we took a look at STM32CubeProgrammer,

00:42:45.012 --> 00:42:47.732
<v Wes>which was proving quite difficult to run on Nix.

00:42:48.252 --> 00:42:51.892
<v Chris>Indeed. Indeed. Indeed. Let us know. Keep us posted. VM could be a way.

00:42:51.952 --> 00:42:52.912
<v Chris>Maybe a container. I don't know.

00:42:53.212 --> 00:42:57.832
<v Wes>Our pal and buddy Jeff comes in with 14,000 sats.

00:43:03.341 --> 00:43:10.881
<v Wes>Simple request this time i want to hear that live pew sound yeah that hits thank.

00:43:10.881 --> 00:43:12.081
<v Chris>You pj appreciate that.

00:43:12.081 --> 00:43:16.521
<v Brent>Well distro stew came in with 11 101 sats,

00:43:18.861 --> 00:43:22.001
<v Brent>is that a row of sticks thanks for roasting my

00:43:22.001 --> 00:43:25.121
<v Brent>configs i use git a little differently though sync

00:43:25.121 --> 00:43:27.941
<v Brent>thing is my source of truth my desktop is kind

00:43:27.941 --> 00:43:30.761
<v Brent>of the command center so i mostly edit the configs from my

00:43:30.761 --> 00:43:33.541
<v Brent>other headless servers there then in a server

00:43:33.541 --> 00:43:38.781
<v Brent>terminal i just have it run the rebuild switch since the configs instantly sync

00:43:38.781 --> 00:43:43.301
<v Brent>every month or so i'll actually commit to git but this is mostly just for sharing

00:43:43.301 --> 00:43:48.221
<v Brent>i generally think git is too much overhead i don't want to think about commits

00:43:48.221 --> 00:43:52.141
<v Brent>merges or reverts just to update a package on the system oh.

00:43:52.141 --> 00:43:54.321
<v Chris>Fighting words wes fighting words.

00:43:54.321 --> 00:43:54.901
<v Brent>Actually.

00:43:55.061 --> 00:43:57.461
<v Wes>I was going to say, I love this. Thank you for sharing, DistroStu.

00:43:58.841 --> 00:44:03.821
<v Wes>I love that we have the kind of audience that takes the tools and uses them

00:44:03.821 --> 00:44:06.381
<v Wes>however they want, right? Yeah, sure. Totally great for this.

00:44:07.221 --> 00:44:08.461
<v Chris>But when I do it that way.

00:44:09.061 --> 00:44:13.001
<v Wes>You can combine the two in a variety of useful ways.

00:44:13.261 --> 00:44:14.741
<v Chris>It's fine for them, just not for me.

00:44:15.021 --> 00:44:20.921
<v Wes>Well, hey, I've got to be the Chris config bar raiser. DistroStu's got lots

00:44:20.921 --> 00:44:22.941
<v Wes>going on already. She's got a great config.

00:44:22.941 --> 00:44:26.761
<v Chris>All right, all right. Okay, all right. A dude trying, thank you Distro Stu.

00:44:26.961 --> 00:44:30.601
<v Chris>A dude trying stuff comes in with a row of ducks. That's 2,222 sats.

00:44:31.601 --> 00:44:34.721
<v Chris>Well, I love the idea of the home lab holidays. I'm currently trying to get

00:44:34.721 --> 00:44:38.901
<v Chris>everything into IAC and pivoting my home lab to Bootsy.

00:44:40.141 --> 00:44:42.001
<v Wes>Oh, interesting. That's awesome.

00:44:42.201 --> 00:44:46.021
<v Chris>Side note, how many sats to add that bit of Chris saying IDK how the world works

00:44:46.021 --> 00:44:47.681
<v Chris>to the soundboard? I find that too relatable.

00:44:48.061 --> 00:44:50.681
<v Chris>Well, somebody's got to track it down. Did I say that? Because that does feel...

00:44:50.681 --> 00:44:52.881
<v Wes>Yeah, if you've got a flak file for us, I mean...

00:44:52.941 --> 00:44:53.841
<v Chris>Send us a flack.

00:44:54.081 --> 00:44:55.201
<v Wes>I can bribe the soundboard guy.

00:44:55.701 --> 00:45:00.361
<v Chris>Yeah, Wes does have connections. Thank you, dude, trying stuff. Appreciate that boast.

00:45:01.081 --> 00:45:05.661
<v Wes>Retro Gear comes in with 8,555 sets.

00:45:08.744 --> 00:45:14.364
<v Wes>Gents, check out GitHub, SalmonNet, it's called, it's a project under that org,

00:45:14.684 --> 00:45:19.184
<v Wes>Proxmox-NixOS, because it actually works pretty well.

00:45:19.544 --> 00:45:24.344
<v Wes>I'm running a few VMs on there that can't be done with modules or Docker containers. Cheers.

00:45:24.984 --> 00:45:30.564
<v Wes>Oh, and on SoundBytes, have any of you seen Spies Like Us with Chevy Chase and Dan Aykroyd from 1985?

00:45:31.044 --> 00:45:32.984
<v Wes>Full of absolute crackers.

00:45:33.304 --> 00:45:36.844
<v Chris>Check it out. I do know of the movie. I have not seen it. I have not seen it.

00:45:36.844 --> 00:45:38.544
<v Chris>But I think there's going to be...

00:45:38.544 --> 00:45:40.304
<v Wes>Well, maybe you could just go put it on your shared jellyfin for us.

00:45:40.524 --> 00:45:43.484
<v Chris>Right? And sit down with the clip machine and just watch the movie,

00:45:43.544 --> 00:45:48.344
<v Chris>it sounds like. That's pretty great. Thank you, Retro Gear. Good to hear from you.

00:45:48.504 --> 00:45:51.744
<v Wes>Yeah. I mean, I have not yet dared to try Proxmox Next OS.

00:45:51.924 --> 00:45:54.884
<v Wes>But if I was going to go Proxmox, obviously, that's how I'd want to do it.

00:45:54.984 --> 00:45:57.804
<v Wes>And so having an experience report is super useful.

00:45:58.324 --> 00:46:01.204
<v Chris>Okay. All right. This is Proxmox Next OS. us.

00:46:02.524 --> 00:46:07.524
<v Brent>We have a boost here from Dirt Ferguson, 13,333 sets.

00:46:10.704 --> 00:46:16.564
<v Brent>For the home lab holidays, consider a category of systems that do the most with the least.

00:46:17.904 --> 00:46:23.444
<v Chris>Oh, yeah. I definitely think you don't have to have a crack and crazy home lab to enter the contest.

00:46:23.744 --> 00:46:26.484
<v Chris>You know, it could be a laptop or a pie. It could, you know,

00:46:26.524 --> 00:46:29.324
<v Chris>it's just, it's sort of a little bit about what you're getting done with it

00:46:29.324 --> 00:46:31.184
<v Chris>too. Now, of course, We'd love to see the crazy cool setups.

00:46:33.058 --> 00:46:37.678
<v Chris>I mean, you know, sometimes your home lab's a tiny computer in a drawer. Still send it in.

00:46:38.018 --> 00:46:42.138
<v Brent>Crazy cool doesn't preclude the eccentric. I'm open to that.

00:46:42.318 --> 00:46:48.098
<v Wes>No, I think it, in fact, should encourage the eccentric. That's how I'll be scoring, personally.

00:46:48.838 --> 00:46:53.118
<v Chris>Thank you, Turd. Appreciate that. Chloroflore is here with 8,000. One, two, three sats.

00:46:54.238 --> 00:46:57.138
<v Chris>How about that? I don't know, Brent. I think there might be a message in there.

00:46:59.258 --> 00:47:01.078
<v Chris>Best secret port boost.

00:47:01.418 --> 00:47:01.718
<v Brent>Oh.

00:47:02.218 --> 00:47:05.238
<v Chris>Ooh, I think he's giving me a message there. You know what I mean?

00:47:05.878 --> 00:47:06.658
<v Wes>Hey, I know that board.

00:47:06.778 --> 00:47:08.798
<v Chris>Because that's the 8123, the Home Assistant?

00:47:09.018 --> 00:47:10.178
<v Wes>The Home Assistant board.

00:47:10.338 --> 00:47:12.098
<v Chris>I think it's the Home Assistant board, isn't it? Let me double check.

00:47:12.098 --> 00:47:14.458
<v Chris>I got it right here. 8123, yeah.

00:47:15.078 --> 00:47:18.918
<v Chris>I got it in a tab. All right, thank you everybody who boosted in,

00:47:19.118 --> 00:47:21.578
<v Chris>including those of you who streamed them sats as you listened.

00:47:21.858 --> 00:47:27.598
<v Chris>In fact, 28 of you collectively helped to stack 53,513 of them Satoshis.

00:47:27.598 --> 00:47:34.958
<v Chris>When you bring it all together, we got 221,137 sats. That's a pretty cool number.

00:47:36.338 --> 00:47:41.158
<v Chris>221-137. We really appreciate it. There's a lot of ways to support the show

00:47:41.158 --> 00:47:42.538
<v Chris>because it's a value for value podcast.

00:47:42.678 --> 00:47:45.758
<v Chris>Your time, your talent, and your treasure are all very much appreciated.

00:47:46.358 --> 00:47:50.378
<v Chris>Show's been going on for a long time now, y'all. And one of the reasons is because

00:47:50.378 --> 00:47:53.698
<v Chris>our audience has made it possible between the interactions we get in the community,

00:47:53.798 --> 00:47:57.338
<v Chris>the support we get via the boost and the membership, but also your listenership.

00:47:57.598 --> 00:47:59.738
<v Chris>It means a lot to us. We really appreciate it.

00:48:00.018 --> 00:48:03.478
<v Chris>Fountain FM makes it really easy to boost these days. There's also ways you

00:48:03.478 --> 00:48:05.638
<v Chris>can go on the self-hosted Sovereign route with AlbiHub.

00:48:05.838 --> 00:48:09.978
<v Chris>Go pick out a new podcast app at podcastapps.com. Not only do you get a lot

00:48:09.978 --> 00:48:14.638
<v Chris>of new features like the live stream, instant updates, and all that, but you can also boost.

00:48:14.858 --> 00:48:21.238
<v Chris>It's podcastapps.com. Thank you, everybody, who boosted episode 642 of your Unplugged program.

00:48:33.990 --> 00:48:39.050
<v Chris>Let's keep it on topic this week. We've been talking a lot about media servers,

00:48:39.050 --> 00:48:41.170
<v Chris>so let's just wrap it up with a pick.

00:48:41.510 --> 00:48:46.610
<v Chris>It's right on point. It's called Subgen, and it auto-generates subtitles,

00:48:46.850 --> 00:48:50.930
<v Chris>Subgen, for your media, be it Jellyfin, Plex, XMBC.

00:48:51.110 --> 00:48:54.610
<v Chris>I don't know what you're using these days with your Xboxes and your media centers, but it'll do it.

00:48:54.730 --> 00:48:58.890
<v Chris>It'll generate subtitles and create a .srt subtitle for any media file that

00:48:58.890 --> 00:49:03.890
<v Chris>you add, and it can be then read by your, assuming you've got something that

00:49:03.890 --> 00:49:05.850
<v Chris>understands SRT files. It's pretty nice.

00:49:06.070 --> 00:49:08.810
<v Chris>You found this, Wes, and of course it's a Python app. It's been a minute.

00:49:08.990 --> 00:49:12.950
<v Brent>I'm assuming the way to use this is to process all your media files ahead of

00:49:12.950 --> 00:49:15.850
<v Brent>time or trigger it if you're getting some new stuff.

00:49:16.010 --> 00:49:21.290
<v Brent>But I'm assuming with some of the Whisper models being so efficient,

00:49:21.290 --> 00:49:24.430
<v Brent>you can also use this in real time if you have the right pipeline.

00:49:24.670 --> 00:49:24.810
<v Chris>Yeah.

00:49:25.050 --> 00:49:26.710
<v Wes>Ooh, special. I like it.

00:49:26.710 --> 00:49:32.230
<v Chris>I think you could. I think you could. Again, can we all just get on board with buffering?

00:49:32.530 --> 00:49:37.370
<v Chris>Like start your movie and i'm not now for your land you shouldn't have to but

00:49:37.370 --> 00:49:40.770
<v Chris>when it comes to content or anything that's getting auto-generated or internet

00:49:40.770 --> 00:49:45.530
<v Chris>streaming can we just buffer a little bit let me buffer so many media apps kill this why.

00:49:45.530 --> 00:49:48.670
<v Wes>Am i paying for this ram if you're not going to fill it with pre-cached.

00:49:48.670 --> 00:49:52.810
<v Chris>Video a lot of the media services used to buffer more and now they buffer less you.

00:49:52.810 --> 00:49:56.690
<v Wes>Know i think we bring back that um flash youtube player because it would buffer.

00:49:57.410 --> 00:49:58.870
<v Chris>Bring back buffering i.

00:49:58.870 --> 00:50:02.530
<v Brent>Feel like if you just played an ad before you got your jellyfin media playing

00:50:02.530 --> 00:50:05.590
<v Brent>then you could do the buffering during the ad time have you considered this.

00:50:05.590 --> 00:50:09.030
<v Chris>That would be really really cool we need a jellyfin.

00:50:09.030 --> 00:50:11.410
<v Wes>Plugin that adds our own dynamic ads into.

00:50:11.410 --> 00:50:11.710
<v Chris>It yeah,

00:50:12.569 --> 00:50:16.789
<v Chris>so there is speaking of jellyfin though west there is some jellyfin like integration

00:50:16.789 --> 00:50:19.069
<v Chris>you can kind of do with the jellyfin webhooks plug-in.

00:50:19.069 --> 00:50:21.769
<v Wes>Yeah i'm impressed with this thing just because it is like you can use it

00:50:21.769 --> 00:50:24.449
<v Wes>in bizarre or plex or mb but with jellyfin you pretty

00:50:24.449 --> 00:50:27.189
<v Wes>much just use the webhooks plug-in which is standard i think

00:50:27.189 --> 00:50:29.909
<v Wes>that's just to like be able to communicate like when

00:50:29.909 --> 00:50:33.529
<v Wes>you add new media jellyfin find stuff it can go ping subgen and

00:50:33.529 --> 00:50:36.349
<v Wes>then as long as subgen has like the same mounts for the file so

00:50:36.349 --> 00:50:39.309
<v Wes>it has the same paths that jellyfin shares then it

00:50:39.309 --> 00:50:42.069
<v Wes>can go off and generate the SRTs and like

00:50:42.069 --> 00:50:45.029
<v Wes>you know obviously this software like there's robust support for

00:50:45.029 --> 00:50:47.989
<v Wes>subtitles especially if you're getting them from sources or standard media

00:50:47.989 --> 00:50:51.289
<v Wes>items that have those out on the internet or if you're doing pinch flat

00:50:51.289 --> 00:50:56.269
<v Wes>and your youtube sucking in software like does that for you but if you're like

00:50:56.269 --> 00:50:59.669
<v Wes>me and you frequently go crazy and stand up wild jellyfin servers you might

00:50:59.669 --> 00:51:02.689
<v Wes>not have signed in to open subtitles you might not have copied everything you

00:51:02.689 --> 00:51:06.929
<v Wes>know like you might having a subtitle method of last resort or for random mp4

00:51:06.929 --> 00:51:09.169
<v Wes>files you want to stick there. It just seems great.

00:51:09.878 --> 00:51:13.758
<v Chris>Very often. And, you know, like one of my kids, they just prefer to watch the

00:51:13.758 --> 00:51:17.078
<v Chris>movies with the subtitles and not all of it has it. So it's really nice to have this as an option.

00:51:17.278 --> 00:51:21.558
<v Chris>It's MIT licensed, 98.8% all snake.

00:51:21.818 --> 00:51:24.958
<v Chris>And you can find a link to subgen in the show notes.

00:51:25.058 --> 00:51:28.138
<v Chris>Now, Wes, if we said something that somebody wanted to go back and find,

00:51:28.318 --> 00:51:31.558
<v Chris>or if they wanted to replay a segment, we probably have resources they could

00:51:31.558 --> 00:51:32.418
<v Chris>take advantage of, right?

00:51:32.418 --> 00:51:38.258
<v Wes>Yeah, they just run subgen on our file. No, actually, we do that already.

00:51:38.258 --> 00:51:42.958
<v Wes>So you go check out the RSS feed with a podcasting 2.0 capable client,

00:51:43.118 --> 00:51:44.178
<v Wes>which is the easiest way to do it.

00:51:44.318 --> 00:51:49.058
<v Wes>And we got chapters baked right into the MP3, but also in a JSON file we keep

00:51:49.058 --> 00:51:51.858
<v Wes>in the cloud. So you get the latest and greatest chapters.

00:51:52.038 --> 00:51:57.658
<v Wes>But you can also get an SRT or VTT file of your very own and follow along with a transcript.

00:51:57.878 --> 00:52:02.298
<v Chris>And it's probably worth mentioning, guys. This is going to be our last few episodes of the year.

00:52:02.418 --> 00:52:05.058
<v Chris>We're coming in we have a few things planned still it's

00:52:05.058 --> 00:52:07.938
<v Chris>not like we're wrapping up yet but as far as it gets to like

00:52:07.938 --> 00:52:10.858
<v Chris>episode planning for us we are in we are now planning

00:52:10.858 --> 00:52:13.558
<v Chris>our last few episodes which means we only have a

00:52:13.558 --> 00:52:17.698
<v Chris>few more live streams of this year and as we get into mid-December some of them

00:52:17.698 --> 00:52:20.918
<v Chris>are going to be double live stream recording episodes we will have the holiday

00:52:20.918 --> 00:52:25.138
<v Chris>home labs coming up it'll happen faster than you think so if you get a little

00:52:25.138 --> 00:52:26.938
<v Chris>time when you're around on a

00:52:26.938 --> 00:52:31.758
<v Chris>Sunday join us over at jblive.tv we do the show at 10 a.m. Pacific 1 p.m.

00:52:31.938 --> 00:52:36.278
<v Chris>Eastern but you can have the robot convert it to your local time at jupiterbroadcasting.com.

00:52:36.998 --> 00:52:40.898
<v Chris>It is a special live vibe thing. It's unique in the world of podcasts.

00:52:41.678 --> 00:52:45.358
<v Chris>It's not something we brag about or talk about a lot, but do you know any other

00:52:45.358 --> 00:52:49.078
<v Chris>podcast in the world that has an open mumble room that anybody with a working

00:52:49.078 --> 00:52:51.358
<v Chris>mic and headphones can join and share their opinion?

00:52:51.778 --> 00:52:55.658
<v Chris>Now, people don't abuse it, obviously, but it's available. If they tag me in

00:52:55.658 --> 00:52:57.238
<v Chris>the chat room and they have something they want to say, they can talk.

00:52:57.867 --> 00:53:01.367
<v Chris>And that is open to all types of people. Now, of course, you abuse it.

00:53:01.447 --> 00:53:04.447
<v Chris>You probably get kicked out. But it's a really unique aspect to the show.

00:53:04.607 --> 00:53:08.487
<v Chris>And then you combine that with the live people that are watching and giving

00:53:08.487 --> 00:53:10.787
<v Chris>us feedback and helping title it in real time.

00:53:10.967 --> 00:53:16.287
<v Chris>And then the members that finance it and the boosters who give value to each individual episode.

00:53:16.867 --> 00:53:22.887
<v Chris>It is a very unique thing we are doing. And then to have been going for so many years.

00:53:24.397 --> 00:53:29.977
<v Chris>I mean, we're breathing down on 700 episodes of doing our absolute best every

00:53:29.977 --> 00:53:32.457
<v Chris>single Sunday to give you the best Linux coverage.

00:53:32.517 --> 00:53:37.877
<v Chris>And our only bias and motivation is to give the best coverage to our number one customer.

00:53:38.037 --> 00:53:41.477
<v Chris>And the number one customer is always and has been our audience.

00:53:41.877 --> 00:53:45.837
<v Chris>And I just think when you combine the mumble room, the way the show is supported,

00:53:46.097 --> 00:53:51.337
<v Chris>the ingredients, how long we've been going, our focus and our goals as presenters

00:53:51.337 --> 00:53:54.337
<v Chris>that we are all three aligned on. It's something very unique.

00:53:54.497 --> 00:53:57.377
<v Chris>And only a few more episodes of this year will be live.

00:53:57.557 --> 00:54:01.397
<v Chris>And it gets extra special and fun when you can participate live.

00:54:02.117 --> 00:54:05.317
<v Chris>JBLive.tv or if you just want to plug it in on a web browser,

00:54:05.457 --> 00:54:08.817
<v Chris>JBLive.fm. We're also on the commercial video platforms for the live stream.

00:54:08.977 --> 00:54:12.437
<v Chris>And, of course, members get the entire bootleg. They get a sense of it,

00:54:12.497 --> 00:54:13.677
<v Chris>but it's a whole other thing when you hear live.

00:54:14.177 --> 00:54:18.417
<v Chris>I wanted to make that plug just as we roll into the holiday season and as we

00:54:18.417 --> 00:54:21.737
<v Chris>bang out all these episodes and we have all this stuff. Like we're going to

00:54:21.737 --> 00:54:24.257
<v Chris>get moving quick and I might not get a chance to remind you again.

00:54:24.437 --> 00:54:27.637
<v Chris>And it is something very unique and it will not last forever.

00:54:27.897 --> 00:54:32.257
<v Chris>And it is here right now. And it's something very special in media, in my opinion.

00:54:32.517 --> 00:54:35.697
<v Chris>Of course, I'm a little biased on the topic. So go check out the show notes

00:54:35.697 --> 00:54:38.997
<v Chris>for more info for what we talked about today. A lot of good resources.

00:54:39.357 --> 00:54:43.597
<v Chris>Consider a membership. I will probably have a Black Friday sale soon,

00:54:43.597 --> 00:54:44.837
<v Chris>but I don't have one right now.

00:54:44.957 --> 00:54:48.057
<v Chris>But we'd still appreciate if you had a membership or wanted to boost the show.

00:54:48.057 --> 00:54:51.357
<v Chris>Again with how to secure my crazy tunnel

00:54:51.357 --> 00:54:54.997
<v Chris>solution and if you have any questions about it too also send those in as well

00:54:54.997 --> 00:54:58.777
<v Chris>and check out linuxunplugged.com just so that way we have a reason to have a

00:54:58.777 --> 00:55:02.637
<v Chris>website after all it's not all about the podcast app although we try to make

00:55:02.637 --> 00:55:07.097
<v Chris>it as good as possible also links to our matrix our mumble other community resources

00:55:07.097 --> 00:55:09.777
<v Chris>over at linuxunplugged.com and that submission form,

00:55:10.677 --> 00:55:14.077
<v Chris>that's linuxunplugged.com slash holiday for the automatic form.

00:55:15.258 --> 00:55:19.918
<v Chris>And linuxunplugged.com slash oldfart for the Markdown version you can send in via email.

00:55:20.318 --> 00:55:23.678
<v Chris>Thank you so much for joining us on this week's episode of Your Unplugged Program.

00:55:23.858 --> 00:55:27.218
<v Chris>And we'll see you right back here next Tuesday, as in Sunday.

