Skip to main content
LawHub
Search

Tunneling Home for the Holidays

Nov 23, 2025
Listen to this episode

Chris cooked up a wild remote-access trick for Jellyfin that skips VPNs entirely. One tiny toggle spins up a secure tunnel on demand. Simple, absurd, and shockingly effective.

Sponsored By:

Support LINUX Unplugged

Links:

  • 💥 Gets Sats Quick and Easy with Strike
  • 📻 LINUX Unplugged on Fountain.FM
  • LUP's Great Holiday Homelab Form
  • Old Fart Form (markdown)
  • ngrok — Go from code to global in just minutes with a developer-friendly, idiomatic solution for managing traffic to your APIs.
  • Jellyswarrm — Jellyswarrm is a reverse proxy that lets you combine multiple Jellyfin servers into one place.
  • Sveske-Juice/declarative-jellyfin — This repository provides a Nix flake that allows for declarative configuration of Users, Libraries, Plugins, Settings, etc. Jellyfin 10.11 is NOT SUPPORTED.
  • declarative-jellyfin full example
  • Zigl3ur/jellyhub — JellyHub is a web app that allow you to fetch media from all of your jellyfin servers and regroup it in one place, so there is one place to search for specific media and tells you on wich server the desired media is located.
  • Smiley-McSmiles/jellyman — Jellyman is a lightweight BASH CLI tool for installing and managing Jellyfin. As well as create a full backup (automatically or manually) so you can move or import all your metadata and user information to another machine.
  • LSchallot/JellyRoller — JellyRoller is an open source CLI Jellyfin Controller written in Rust that works on Windows and Linux. Its primary purpose is to allow administration of a Jellyfin application from the command line.
  • kjtsune/embyToLocalPlayer — etlp (embyToLocalPlayer) is a tool that lets Emby, Jellyfin, and Plex play videos using your local media players (like mpv or VLC) instead of the built-in web player, while optionally sending playback progress back to the server.
  • Pick: subgen — Autogenerate subtitles using OpenAI Whisper Model via Jellyfin, Plex, Emby, Tautulli, or Bazarr.

Transcript

WEBVTT 00:00:11.651 --> 00:00:16.231 Hello, friends, and welcome back to your weekly Linux talk show. My name is Chris. 00:00:16.451 --> 00:00:17.331 My name is Wes. 00:00:17.571 --> 00:00:18.451 And my name is Brent. 00:00:18.991 --> 00:00:24.131 Hey, gents. Well, coming up on the show this week, I have finally cracked it. 00:00:24.251 --> 00:00:28.471 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 Well, I have a wild remote access trick for private self-hosted services like Jellyfin. 00:00:34.191 --> 00:00:39.851 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 It's simple, It's absurd, and it's shockingly effective. 00:00:43.071 --> 00:00:47.411 And then we'll round it out with some great picks, some boosts, and more. 00:00:47.511 --> 00:00:50.371 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 lug. Hello, Mumble Room. Time-appropriate greetings. 00:00:53.271 --> 00:00:55.791 Hello. Hey, Chris. Hey, Wes. And hello, Brent. 00:00:56.071 --> 00:00:59.591 Hey, guys. Hello up there in the quiet listening tune. I see a little crew up 00:00:59.591 --> 00:01:00.931 there hanging out with us. 00:01:01.371 --> 00:01:04.451 Mumble Room is always rolling. JupyterBroadcasting.com slash mumble. 00:01:05.655 --> 00:01:09.815 And a big good morning to our friends at Defined Networking. 00:01:09.915 --> 00:01:13.235 Go meet Manage Nebula from Defined Networking. 00:01:13.315 --> 00:01:18.975 It's a decentralized VPN built on the Nebula platform that we just absolutely love. 00:01:19.135 --> 00:01:21.895 Every now and then a darling comes along, I think it was Wes, 00:01:22.015 --> 00:01:28.855 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 And it started in 2017 to secure the Slack network, which had to have robust 00:01:34.095 --> 00:01:36.435 security and decentralization from the very beginning. 00:01:36.595 --> 00:01:39.075 I mean, this is Slack's bag, right? 00:01:39.275 --> 00:01:41.775 And so Nebula has the best-in-class encryption. 00:01:42.455 --> 00:01:44.295 And what really matters for me 00:01:44.295 --> 00:01:48.655 is the design. You can use the managed product for up to 100 free hosts. 00:01:49.135 --> 00:01:51.675 No credit card required. Support the show. It's a great product. 00:01:51.775 --> 00:01:54.575 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 network around, they can help you with that. 00:01:56.755 --> 00:02:00.395 Maybe your home lab. But maybe get to the point where you want to manage the 00:02:00.395 --> 00:02:03.415 entire thing. Everything can be completely self-hosted. 00:02:03.495 --> 00:02:07.175 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 It's what they build their product on top of. And when you think about your 00:02:11.315 --> 00:02:15.155 network infrastructure and long-term planning, those little things, 00:02:15.415 --> 00:02:18.735 that 10-20% gap, really makes all the difference. 00:02:19.015 --> 00:02:23.995 And it's such a fantastic product because it puts very little load on your machine. 00:02:24.175 --> 00:02:28.755 Low load on the network and low load on the CPU. so your battery life lasts 00:02:28.755 --> 00:02:32.415 longer on your laptop and your mobile devices and your server isn't busy with 00:02:32.415 --> 00:02:33.655 a bunch of that nonsense. 00:02:33.975 --> 00:02:37.655 You got to go check it out. Get started for 100 hosts absolutely free, 00:02:37.815 --> 00:02:39.015 no credit card required. 00:02:39.175 --> 00:02:46.095 Go to defined.net slash unplugged. Redefine your VPN experience at defined.net slash unplugged. 00:02:48.194 --> 00:02:52.674 All right, we have decided to do it. The Great Holiday Home Lab is coming up. 00:02:52.794 --> 00:02:59.474 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 And I will have links. I'll have all of it set up for you. 00:03:03.694 --> 00:03:06.334 It's something we're doing in place of the tuxies this year. 00:03:06.454 --> 00:03:09.754 It's our first, very first edition of the Great Holiday Home Lab special. 00:03:10.254 --> 00:03:14.074 And we want to see your setups. It's a magical time of year. 00:03:14.154 --> 00:03:17.414 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 So it is our first community showdown of your questionable wiring your crazy 00:03:33.814 --> 00:03:37.114 tinkering uh maybe your downright impressive builds i don't know maybe you got 00:03:37.114 --> 00:03:43.834 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 And it is a Google form. 00:03:47.694 --> 00:03:49.994 Don't think you have to log in, but if you hate Google forms, 00:03:50.174 --> 00:03:54.294 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 Go to linuxunplugged.com slash old fart. 00:03:57.634 --> 00:04:01.754 That's linuxunplugged.com slash old fart. If you just want the markdown version, 00:04:01.914 --> 00:04:04.474 I'd like you to submit a couple of photos, a short description, 00:04:04.714 --> 00:04:08.094 your hardware list, and tell us what your home lab actually does. 00:04:08.394 --> 00:04:11.594 And then you're in. And we're going to have a couple of different categories 00:04:11.594 --> 00:04:14.834 we're going to have the grand rack award which will be 100 000 sats 00:04:14.834 --> 00:04:18.514 we'll have the silver pseudo award which will be 50 000 sats the best effort 00:04:18.514 --> 00:04:23.894 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 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 of heart went into that home lab a lot of effort, 00:04:32.854 --> 00:04:37.014 The three of us, the boys, we're going to get connected on a remote call. 00:04:37.754 --> 00:04:40.174 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 in working order and do a little LUP rescue mission, for better or for worse. 00:04:44.834 --> 00:04:48.194 I feel like you're talking about my home lab here. Oh, wait, 00:04:48.214 --> 00:04:50.534 we've already done that rescue multiple times. What's going on? 00:04:50.754 --> 00:04:51.754 Why won't that stick? 00:04:52.794 --> 00:04:55.574 You know, it's like the shoemaker whose kids have horrible shoes. 00:04:56.334 --> 00:04:59.034 So, you know, we're probably going to record that session. 00:04:59.334 --> 00:05:02.354 And depending on how it goes, we may turn that into an episode as well. 00:05:02.354 --> 00:05:04.614 If you end up on the LUP rescue mission tier. 00:05:05.234 --> 00:05:07.914 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 your design, your ingenuity, your creativity. 00:05:10.854 --> 00:05:14.414 Efficiency is a big one too. If you have documentation, that'll matter. 00:05:15.054 --> 00:05:17.614 Your personality, your creative solutions you've come up with. 00:05:17.874 --> 00:05:22.814 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 You know, we'll have things like the lowest functionality, but best personality. 00:05:26.754 --> 00:05:30.014 Maybe a disaster story might earn the rescue, something like that. 00:05:30.114 --> 00:05:33.554 So the entries are open right now. I want you to submit your homelab, 00:05:33.754 --> 00:05:35.554 show us what you got, even if it's totally chaotic. 00:05:35.794 --> 00:05:37.834 Hey, my wiring often looks horrible. 00:05:38.274 --> 00:05:41.714 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 A lot of us have it like that. 00:05:43.374 --> 00:05:46.594 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 And again, it's linuxunplugged.com slash holiday or linuxunplugged.com slash 00:05:51.794 --> 00:05:56.954 old fart for the great holiday homelab extravaganza. 00:06:00.616 --> 00:06:03.676 And do get them in quick, because we're going to be recording our holiday episodes 00:06:03.676 --> 00:06:08.256 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 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 Been disqualified already. Jeez. 00:06:17.816 --> 00:06:22.236 Okay, so I wanted to solve something that's really kind of been eating at me 00:06:22.236 --> 00:06:26.616 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 And it'll be two years, I think, this January. And Jellyfin's been fantastic. 00:06:32.076 --> 00:06:34.176 The migration to Plex was really smooth. 00:06:34.456 --> 00:06:38.856 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 But it actually, after trying all the things really has been just a fantastic 00:06:42.736 --> 00:06:45.136 way to consume media really flawless. 00:06:45.396 --> 00:06:49.516 The two combination are great. And I do take advantage of some jellyfin plugins 00:06:49.516 --> 00:06:52.216 and I use the jellyfin web interface from time to time. 00:06:53.995 --> 00:06:59.555 I've had to keep one Plex instance around because friends and family like to 00:06:59.555 --> 00:07:01.775 sometimes check in on the old media library. 00:07:01.995 --> 00:07:04.615 Maybe they're traveling or whatever, and Plex is installed on a lot of stuff, 00:07:04.655 --> 00:07:06.995 or it's easy to get going on anything that has a web browser. 00:07:07.295 --> 00:07:10.975 And so once or twice a week, friends or family are streaming things from a Plex 00:07:10.975 --> 00:07:12.415 server that I don't actually use for myself. 00:07:13.355 --> 00:07:17.575 And I thought about this problem because when you're at a hotel or, 00:07:17.715 --> 00:07:20.435 you know, it's a friend's computer, you don't necessarily want them to just 00:07:20.435 --> 00:07:21.755 randomly join your mesh network. 00:07:21.755 --> 00:07:26.835 And I don't necessarily just want to build a public Jellyfin server that's available 00:07:26.835 --> 00:07:28.835 on a VPS all the time that's going to get banged on. 00:07:29.095 --> 00:07:34.515 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 And I might want to solve this for other self-hosted software that isn't Jellyfin. 00:07:40.575 --> 00:07:46.735 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 And obviously something Plex handles really well. 00:07:50.055 --> 00:07:53.395 I know neither one of us none of us are really big Plex users but occasionally, 00:07:54.255 --> 00:07:56.855 you know we might dip in just because of the share feature. 00:07:56.855 --> 00:07:59.815 Yeah absolutely and it's one of those things right where you just kind of got 00:07:59.815 --> 00:08:04.175 maybe folks who were less technical still kind of had a Plex account because 00:08:04.175 --> 00:08:07.515 they had other friends who were sharing Plex just there was a lot of stuff that 00:08:07.515 --> 00:08:11.375 ended up meaning you could get tangentially sucked in and that meant that it 00:08:11.375 --> 00:08:14.675 was also very easy to take advantage of them doing sort of hey, 00:08:15.295 --> 00:08:20.455 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 Wes, you've had a really nice solution to this that you've used historically. 00:08:24.195 --> 00:08:25.775 I know I've used it a couple of times. 00:08:26.175 --> 00:08:30.175 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 Quite on demand too. I think you've optimized it as well. 00:08:33.355 --> 00:08:35.435 Yeah. I mean, I did think about this. 00:08:35.895 --> 00:08:39.535 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 I haven't adopted yet, but that's even better. 00:08:43.227 --> 00:08:49.467 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 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 And if we go out somewhere that has an internet connection on a web browser, 00:08:57.687 --> 00:08:59.947 I would like to be able to stream my Jellyfin instance. 00:09:00.307 --> 00:09:03.507 And so ideally, I wanted to set up with no special VPN required, 00:09:03.507 --> 00:09:08.447 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 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 And if you have Tailscale, for example, you could use a Tailscale funnel. 00:09:15.907 --> 00:09:20.487 If you're a pretty big Cloudflare user, you could probably use a Cloudflare tunnel. 00:09:21.467 --> 00:09:25.467 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 heard a lot about, and it's a service called Ngrok. 00:09:28.467 --> 00:09:33.127 And it looks pretty straightforward. That's one of the things that appealed to me. 00:09:33.307 --> 00:09:38.047 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 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 to ngrok's cloud, and then ngrok generates a public URL that forwards traffic 00:09:48.327 --> 00:09:50.747 back to your local service, whatever you might be pointing it at. 00:09:51.087 --> 00:09:53.547 And it also, very conveniently... 00:09:54.513 --> 00:09:59.813 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 online endpoints and a gigabyte of bandwidth and 20,000 HTTPS requests a month. 00:10:05.613 --> 00:10:10.913 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 And that's particularly convenient for a Jellyfin, right? 00:10:13.633 --> 00:10:18.853 Just because not every app, but some combos of certain apps really prefer your 00:10:18.853 --> 00:10:21.073 Jellyfin server to have a TLS certificate. 00:10:21.673 --> 00:10:24.733 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 just trying to stream media that isn't secret at all, but. 00:10:27.693 --> 00:10:32.213 Yeah, a lot of the mobile apps and a lot of the basic kiosk web browsers, 00:10:32.433 --> 00:10:35.753 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 Chromium kiosk browser. 00:10:38.193 --> 00:10:40.933 Also helps for some casting situations if you're going that route. 00:10:41.293 --> 00:10:46.253 Mm, yeah, right, of course. So that was something that I wanted to try, 00:10:46.393 --> 00:10:50.353 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 it running when I'm not personally watching TV. 00:10:53.133 --> 00:10:57.693 And this proposes an interesting challenge because a situation we find ourselves 00:10:57.693 --> 00:11:01.933 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 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 or my wife. I want my wife to be able to do it as well. 00:11:09.513 --> 00:11:12.133 Right. You wanted something where you didn't have to like go manually stand 00:11:12.133 --> 00:11:16.533 up infrastructure or wire stuff together, like not have to set it up with an 00:11:16.533 --> 00:11:20.933 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 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 all the time, you know, so something I could easily toggle on and off remotely. 00:11:30.250 --> 00:11:31.390 It was really kind of what I was going for. 00:11:32.230 --> 00:11:36.590 So this still feels like you're exposing yourself to the public internet, really. 00:11:36.730 --> 00:11:39.650 Because if you didn't feel like there was some kind of risk, 00:11:39.750 --> 00:11:41.910 you wouldn't need the toggle, right? You just leave it on all the time. 00:11:42.150 --> 00:11:45.630 So does this feel like the ultimate solution or just a step towards? 00:11:46.010 --> 00:11:49.230 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 ngrok URL, so there's a little bit of obscurity there. 00:11:53.670 --> 00:11:58.550 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 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 a kiosk device, which probably makes it easier to discover. 00:12:05.110 --> 00:12:10.230 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 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 connecting from. It could be cellular network. 00:12:16.230 --> 00:12:20.370 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 phone gets assigned today. 00:12:21.490 --> 00:12:24.730 And if it was just you, you would use your mesh network, right? 00:12:24.770 --> 00:12:25.890 That's the obvious solution here. 00:12:25.890 --> 00:12:27.270 But yeah do. 00:12:27.270 --> 00:12:30.970 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 you to flick the switch right. 00:12:32.010 --> 00:12:34.950 Yeah it's so that that is i think the 00:12:34.950 --> 00:12:39.730 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 could discover your jellyfin server now the way ngrok works is when you go to 00:12:43.990 --> 00:12:48.310 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 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 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 Yeah, I was going to say, like, obviously defense in depth, but there's also, 00:13:02.230 --> 00:13:05.790 you should be realistic about what your actual particular threat scenarios are, 00:13:05.810 --> 00:13:12.230 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 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 it in some sort of container or virtual machine or thing that just has access 00:13:20.617 --> 00:13:24.337 to the media and do you have sensitive stuff in your media or are all things 00:13:24.337 --> 00:13:27.677 to yeah that may make you care more or less depending on 00:13:28.117 --> 00:13:31.417 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 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 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 and stuff then maybe it's a bigger deal. 00:13:40.457 --> 00:13:45.377 It does seem like in terms of application complexity because it is a very complex 00:13:45.377 --> 00:13:48.617 application with a lot of stuff under the hood, a lot of FFmpeg, 00:13:48.757 --> 00:13:50.957 and it has access to hardware acceleration. 00:13:51.557 --> 00:13:55.757 You know, of the apps, I'm going to make temporarily public. 00:13:56.177 --> 00:14:00.077 It feels like maybe the dumbest one to actually make temporary public because 00:14:00.077 --> 00:14:03.857 there's, honestly, there's a large attack service, there may be auth bypasses 00:14:03.857 --> 00:14:07.737 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 and transcoding. I mean, who knows? Right. 00:14:09.877 --> 00:14:12.917 I mean, it has to be something you consider in the setup, I think, 00:14:13.377 --> 00:14:18.457 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 you know, I'm watching a half hour episode of Mary Tyler Moore. 00:14:21.137 --> 00:14:26.877 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 But something I would really like input on is layers of protection I could do 00:14:31.597 --> 00:14:38.057 here or some other maybe second-order authentication I could do to enable this, 00:14:38.117 --> 00:14:39.537 to authorize certain connections. 00:14:40.257 --> 00:14:44.357 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 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 But ultimately, I was very, very happy with the setup that I ended up with. 00:14:55.784 --> 00:15:00.804 Unraid.net slash unplugged. Unleash your hardware and unlock your system's full 00:15:00.804 --> 00:15:02.524 potential this Cyber Weekend. 00:15:02.724 --> 00:15:06.764 Unraid Cyber Weekend sale is almost here. So the Black Friday through Cyber 00:15:06.764 --> 00:15:11.444 Monday sale runs November 28th, as you're listening, that's this Friday, to December 1st. 00:15:11.624 --> 00:15:17.204 You can take 20% off starter licenses and 25% off the Unleash license and upgrades. 00:15:17.564 --> 00:15:22.684 Every starter or Unleash license also gets you a voucher to the Unraid merch 00:15:22.684 --> 00:15:26.424 store, where you'll find an all-new graphic tees, jackets, hats, 00:15:26.644 --> 00:15:30.184 and backpacks, 20% off the entire lineup. 00:15:30.664 --> 00:15:31.924 And that's through the new year. 00:15:32.464 --> 00:15:35.484 It's not just a sale, though. It's really a celebration. Remember, 00:15:35.704 --> 00:15:39.384 Unraid is celebrating 20 years of freedom, performance, and control. 00:15:39.624 --> 00:15:44.224 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 Support the show. Go to unraid.net slash unplugged. 00:15:48.204 --> 00:15:52.164 Unlock your system's full potential and take advantage of the Cyber Weekend 00:15:52.164 --> 00:15:56.584 Sale. running November 28th through December 1st. 00:15:56.804 --> 00:16:02.484 Take 20% off starter licenses and 25% off that unleashed license and the upgrade. 00:16:02.644 --> 00:16:06.524 That's a great deal, plus the merch voucher. So check it out, support the show. 00:16:06.744 --> 00:16:09.564 It's unraid.net slash unplugged. 00:16:12.124 --> 00:16:14.624 Well, you mentioned wanting to be able to turn this on and off, 00:16:14.704 --> 00:16:21.124 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 be able to do it, which is, 00:16:22.804 --> 00:16:27.884 it sounds like quite a challenge, Chris, but you said this, you pulled this 00:16:27.884 --> 00:16:30.944 off in a nice way. So I'm waiting to see. What do you got? 00:16:31.544 --> 00:16:33.144 You know, as the years go by... 00:16:34.146 --> 00:16:39.926 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 It's such a flexible, powerful platform. 00:16:43.186 --> 00:16:43.886 Should have guessed. 00:16:44.546 --> 00:16:46.666 Yeah, it works great for this kind of thing. 00:16:46.966 --> 00:16:52.426 And, I mean, maybe not for everyone, but you are already committed to having 00:16:52.426 --> 00:16:56.386 it available and plumbed to basically all of your devices, right? You want that. 00:16:56.586 --> 00:17:00.346 So you're not paying a cost for like a new separate whole, you know, 00:17:00.506 --> 00:17:01.626 bookmark and a whole bunch of stuff. 00:17:01.766 --> 00:17:04.086 True. And it's something I'm already maintaining and making sure it's highly 00:17:04.086 --> 00:17:05.006 available and et cetera. 00:17:05.586 --> 00:17:10.546 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 the wife's phone, right? 00:17:11.906 --> 00:17:14.986 The kids know how to use it. So it already has family workflow. 00:17:15.446 --> 00:17:20.586 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 And I cannot tell you what a difference that makes in family adoption. 00:17:24.646 --> 00:17:27.286 It's the difference between them using it and not using them. 00:17:27.826 --> 00:17:31.046 So plus it's just really awesome. I wanted a small little button, 00:17:31.066 --> 00:17:36.666 and I already have a dashboard that's for our media playback that has a mock 00:17:36.666 --> 00:17:40.746 remote control, and it has our music assistant controls. 00:17:41.046 --> 00:17:43.506 You can control the different speakers in the house from this one dashboard 00:17:43.506 --> 00:17:47.346 already. So this is where you already go to do TV stuff. 00:17:47.566 --> 00:17:51.726 I'm almost imagining like you have a TV button on the wall that you hit, 00:17:51.826 --> 00:17:55.166 you know, and then it starts the TV up, and then the TV turns on, 00:17:55.286 --> 00:17:57.626 and then the switch is toggled, and you're ready to go. 00:17:57.806 --> 00:18:00.566 Well, I absolutely could. I absolutely could map it to a button, 00:18:00.766 --> 00:18:03.846 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 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 Yeah, the tunnel turns, yeah. 00:18:09.146 --> 00:18:12.506 I would like to know what you called the device in Home Assistant. 00:18:12.626 --> 00:18:16.046 You probably came up with a good name, or you need a better name, right? 00:18:16.826 --> 00:18:19.246 No, it's just, well, yes, I do. It's just Jellyfin Tunnel. 00:18:19.946 --> 00:18:20.266 Lame. 00:18:20.826 --> 00:18:24.226 Maybe it could be like Media Conduit. I don't know. 00:18:24.326 --> 00:18:27.126 I like that. I tend to give Star Trek names, because then it sticks out. 00:18:27.126 --> 00:18:31.266 You know, like, you know, like media subspace relay subspace media relay, 00:18:31.406 --> 00:18:32.846 something like that could work. 00:18:33.540 --> 00:18:37.060 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 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 And I'm picturing like an Airbnb. I'm picturing a kiosk. 00:18:44.320 --> 00:18:47.980 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 And I don't want to have to give them this crazy URL. 00:18:50.160 --> 00:18:55.600 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 box, but then I also want to retrieve the crazy rando Ngrok URL I just got. 00:19:01.680 --> 00:19:06.880 And then I want to go update my Cloudflare DNS entry with a redirect to point 00:19:06.880 --> 00:19:09.860 a static DNS name at this new crazy URL. 00:19:10.080 --> 00:19:13.080 And all of that happens with a push of a button. 00:19:13.740 --> 00:19:19.480 And it's so great. And honestly, it was really made possible because I created 00:19:19.480 --> 00:19:22.600 a little REST API with a tiny little Python server. 00:19:23.872 --> 00:19:25.572 I vibe coded. I'll just admit that. 00:19:25.752 --> 00:19:26.032 Oh, yeah. 00:19:26.472 --> 00:19:29.112 Very simple. It's only got like 00:19:29.112 --> 00:19:33.652 four functions. So it's not like it's very powerful or very complicated. 00:19:33.772 --> 00:19:40.332 But what it does is it listens for essentially an HTTP rest request from Home Assistant. 00:19:40.992 --> 00:19:45.652 And that either tells it to start, stop, or check the status or get the URL. 00:19:45.952 --> 00:19:51.072 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 up when the tunnel is up or down. 00:19:53.412 --> 00:19:57.532 And I have history of how long the tunnel's been active, when it was activated, 00:19:57.532 --> 00:20:03.432 and I can also display the ngrok URL in Home Assistant if I wanted to. 00:20:03.872 --> 00:20:04.732 Ooh, that's nice. 00:20:04.992 --> 00:20:09.812 Yeah. That's really, really fantastic. I did play around with Cloudflare because 00:20:09.812 --> 00:20:12.772 they don't have the bandwidth limitations until you go too far. 00:20:13.192 --> 00:20:18.272 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 But honestly, the complexity is more significant. And so, and I've just found 00:20:22.672 --> 00:20:23.752 Ngrok to work really well. 00:20:23.912 --> 00:20:28.672 And then in Home Assistant, I created a manual REST sensor. 00:20:28.712 --> 00:20:32.272 And it's just something you add to the Home Assistant config.yaml file. 00:20:32.312 --> 00:20:35.512 And it's probably five lines of YAML. 00:20:35.572 --> 00:20:37.672 And it just identifies a new sensor type. 00:20:38.472 --> 00:20:43.912 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 And then that's how it triggers and reads the state. 00:20:48.892 --> 00:20:52.232 And while it sounds kind of like hacking a bunch of scripts together, 00:20:52.632 --> 00:20:55.912 it's because it's so simple and because I'm using the Home Assistant automation 00:20:55.912 --> 00:20:58.452 and architecture, it works really well. 00:20:58.512 --> 00:21:02.392 So I have the Home Assistant dashboard, which has a switch for the ngrok tunnel, 00:21:02.432 --> 00:21:06.612 which then sends the rest command to start or stop the ngrok tunnel. 00:21:07.332 --> 00:21:12.192 Then using the API, it pulls back the status of the tunnel. It updates the... 00:21:13.147 --> 00:21:16.927 My dns record with that new url from the. 00:21:16.927 --> 00:21:20.407 Status home assistant doing that or your python automation my. 00:21:20.407 --> 00:21:26.107 Python is when the api when after the python script starts the tunnel it retrieves 00:21:26.107 --> 00:21:28.507 the url and updates the dns just right back to each other. 00:21:28.507 --> 00:21:29.287 Gotcha yep. 00:21:29.287 --> 00:21:32.627 Uh but then it delivers that back via the api to home assistant as well. 00:21:32.627 --> 00:21:36.007 And then how does do you have to like set certain stuff in home assistant in 00:21:36.007 --> 00:21:39.267 terms of like fields to pick out of the response is there a standard protocol 00:21:39.267 --> 00:21:42.747 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 Because it's just giving back really simple JSON, like, yes, 00:21:45.647 --> 00:21:50.747 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 It's so nice. But by that, I essentially get status monitoring. 00:21:54.907 --> 00:21:57.727 By looking at the button, I can tell if the tunnel's up or down. 00:21:57.867 --> 00:22:00.767 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 of all the time the tunnel was used. Right. 00:22:03.726 --> 00:22:08.826 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 So when the system boots, it's just running via systemd, that little Python listener. 00:22:13.486 --> 00:22:17.266 And then that guy also is what interfaces with ngrok's API, right? 00:22:17.346 --> 00:22:19.186 Which is sort of like, hey, toggle this tunnel on. 00:22:19.346 --> 00:22:23.146 And then as long as you have separately that little tunneling daemon running 00:22:23.146 --> 00:22:25.706 and available, it'll pick up on that automatically. 00:22:26.106 --> 00:22:26.506 Yeah. 00:22:27.006 --> 00:22:27.206 Cool. 00:22:27.226 --> 00:22:30.646 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 obviously, for the different zones it needed to manage and whatnot. 00:22:32.966 --> 00:22:39.006 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 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 URL for it. I never have to worry about any of it. 00:22:45.986 --> 00:22:48.626 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 tap the button on the media card, on the media dashboard. 00:22:51.726 --> 00:22:55.086 And it takes about 10, 15 seconds and then the tunnel closes. 00:22:55.666 --> 00:22:59.466 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 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 I'll start with you, Brantley, since you were probably on the most remote sketch 00:23:07.286 --> 00:23:10.586 connection out of the two. Well, it's just what it is. 00:23:12.226 --> 00:23:15.626 Yeah, I have to say it just felt like the native experience. 00:23:16.186 --> 00:23:18.606 Aside from that NGROC screen that you... 00:23:19.668 --> 00:23:23.108 To say, yeah, yeah, I, you know, I trust the person who sent me this weird, 00:23:23.208 --> 00:23:25.808 crazy link, which I'm not sure I should have answered that. 00:23:25.968 --> 00:23:31.168 But then I just got the, you know, usual Jellyfin interface and stole your credentials 00:23:31.168 --> 00:23:33.368 and it seemed to work perfectly fine. 00:23:33.368 --> 00:23:37.748 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 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 Not because necessarily of bad connections, but just because of hardware. 00:23:46.288 --> 00:23:47.748 Is that, was that your assessment as well? 00:23:47.748 --> 00:23:51.188 Yeah, just that Spaceballs was 4K, UHD. 00:23:51.488 --> 00:23:54.588 That was the only thing to test with. Yeah, I couldn't find anything else. 00:23:55.068 --> 00:23:58.608 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 solution, but if you took out that Ngrok prompt screen, which I think would 00:24:01.928 --> 00:24:06.568 go away if I paid for it, it feels like a pretty seamless solution. 00:24:06.668 --> 00:24:09.468 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 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 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 on that level or does ncroc get that right yeah or maybe jellyfin just doesn't 00:24:22.348 --> 00:24:25.768 care no jellyfin cares but do you tell them because then you're adding your 00:24:25.768 --> 00:24:28.368 own like wrapping layer right i. 00:24:28.368 --> 00:24:32.408 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 at the cloud level it's just, 00:24:34.566 --> 00:24:36.006 I don't recall going through that process. 00:24:36.446 --> 00:24:41.726 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 You don't have to do a fake search. But it worked just fine. 00:24:43.086 --> 00:24:48.326 Yeah. And it is interesting. You mentioned possible limitations with bandwidth. 00:24:48.546 --> 00:24:51.366 Again, you're using a free plan from a thing, so there's risks with that. 00:24:51.486 --> 00:24:54.626 And I think, as far as I knew, I've never used them extensively, 00:24:54.646 --> 00:25:00.526 but I think Ncroc started from making it easy to expose staging developer stuff. 00:25:00.606 --> 00:25:03.826 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 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 And I do think if you were going for raw performance, Cloudflare is probably 00:25:12.946 --> 00:25:14.866 better because their network's a little more robust. 00:25:15.966 --> 00:25:19.346 And additionally, they don't have that one gigabyte limit on the free plan. 00:25:20.306 --> 00:25:25.366 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 Well, and as you saw, right, like it was, the UX was good. 00:25:28.806 --> 00:25:32.206 It was well supported out there. There's a lot of examples. There's API integrations 00:25:32.206 --> 00:25:34.646 for it and all that. So there's a lot of benefits too. 00:25:34.806 --> 00:25:38.806 The cool thing is because I kept the configuration and Home Assistant itself 00:25:38.806 --> 00:25:44.626 to something really basic, it's four or five lines of YAML, I can change out. 00:25:45.460 --> 00:25:49.440 Ngrok and cloudflare and keep the home assistant part working because i just 00:25:49.440 --> 00:25:54.300 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 i don't have to readjust anything in home assistant and it keeps working i tested 00:25:58.760 --> 00:26:01.180 this i swapped out to cloudflare tunnels temporarily, 00:26:02.140 --> 00:26:06.380 and uh you know just kept the api url 00:26:06.380 --> 00:26:09.120 endpoints the same even though now it's not ngrok and it 00:26:09.120 --> 00:26:11.860 works so that flexibility i really love in a sense 00:26:11.860 --> 00:26:14.500 it's modular right the jellyfin the media server it could be plex it could 00:26:14.500 --> 00:26:17.520 be sync thing it could be my my my documentation 00:26:17.520 --> 00:26:20.560 it could be my lube logger it could be any app 00:26:20.560 --> 00:26:23.540 and it can be any it could be ngrok it could 00:26:23.540 --> 00:26:28.500 be funnels it could be channel tunnels it could be any tunneling technology 00:26:28.500 --> 00:26:34.220 you want and then with home assistant it that just stays agnostic as well but 00:26:34.220 --> 00:26:38.860 they all really seamlessly work together and i don't ever manually start this 00:26:38.860 --> 00:26:41.380 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 Oh, I just bring it up on Home Assistant and start it. 00:26:43.900 --> 00:26:47.100 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 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 Hit the button. Yeah. 00:26:52.113 --> 00:26:55.053 Yeah, hit the button. Yeah. Well, like you said. 00:26:55.093 --> 00:26:58.773 Right, you get the dashboard, you get the metrics, you get the state keeping, 00:26:59.053 --> 00:27:00.773 all that kind of stuff for free. 00:27:01.793 --> 00:27:06.453 It's nice to solve this problem, but it's not the only way. And Wes, 00:27:06.553 --> 00:27:08.933 you played around with something called Jelly Swarm. 00:27:09.313 --> 00:27:13.833 Yeah. You know, you kind of touched on it earlier. Like you transition to Jellyfin 00:27:13.833 --> 00:27:18.433 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 really compete with Plex in the same way or kind of offer the same functionality. 00:27:22.973 --> 00:27:28.373 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 folks were building and working on that might sort of fit. 00:27:32.153 --> 00:27:37.913 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 So jelly swarm advertises itself as 00:27:42.053 --> 00:27:45.453 a reverse proxy that lets you combine multiple jellyfin 00:27:45.453 --> 00:27:49.913 servers into one place if you've got libraries spread across different locations 00:27:49.913 --> 00:27:53.613 or just want everything together jelly swarm makes it easy to access all your 00:27:53.613 --> 00:27:58.513 media from a single interface multiple servers yeah i haven't done that remote 00:27:58.513 --> 00:28:03.733 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 Oh i could see us using this for a different uh let's say, purposes. 00:28:08.793 --> 00:28:12.413 Yeah. Unified library access. Browse media from multiple Jellyfin servers in 00:28:12.413 --> 00:28:15.293 one place. Play content straight from the original server. 00:28:15.513 --> 00:28:17.033 Yeah, do you want to try it? 00:28:17.153 --> 00:28:20.853 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 I bet you it's running off his laptop right now. 00:28:23.713 --> 00:28:25.553 Yeah, it is. So don't go crazy. 00:28:25.553 --> 00:28:25.733 I see it. 00:28:25.773 --> 00:28:26.233 Don't go crazy. 00:28:26.313 --> 00:28:29.453 Great. All right. All right. All right. I'm going to just use the traditional 00:28:29.453 --> 00:28:34.233 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 No space in the password, too. 00:28:35.953 --> 00:28:39.533 No, of course not. We don't do spaces. We're not here for stinking spaces. 00:28:40.133 --> 00:28:42.953 There we go. I'm in. Boy, it's fast, Wes. That's on your laptop? 00:28:43.633 --> 00:28:43.913 Yeah. 00:28:44.073 --> 00:28:46.893 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 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 It's spinning and loaded, boom, right into Deep Space Nine. 00:28:54.110 --> 00:28:54.790 Yeah, all right. 00:28:54.930 --> 00:28:56.250 Season 2, episode 13. 00:28:56.650 --> 00:28:57.390 Armageddon game. 00:28:58.230 --> 00:29:01.170 Wes Sneaky had me test this last night without your knowledge, 00:29:01.230 --> 00:29:04.290 Chris, because he knew he was working on a competing solution, 00:29:04.290 --> 00:29:05.750 and I think he wanted to win. 00:29:07.190 --> 00:29:11.110 I got to say, between the two, Wes is a little smoother. 00:29:11.370 --> 00:29:14.550 There's no, like, yes, I need to trust this crazy human URL, 00:29:14.550 --> 00:29:16.790 and also it loaded pretty quick. 00:29:17.110 --> 00:29:21.930 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 Oh. 00:29:23.010 --> 00:29:27.710 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 I think it'll take you to the management interface. 00:29:33.784 --> 00:29:36.844 Oh, yes, it does. The Jelly Swarm admin interface. 00:29:37.004 --> 00:29:39.944 And then same password, but use Wes as the username there. 00:29:40.224 --> 00:29:45.944 I do love our security practices. Okay. Is it Wes P or is it just Wes? 00:29:45.944 --> 00:29:49.024 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 Now we know what Wes's password is. All right, now we are in. 00:29:52.644 --> 00:29:54.804 I see. So I have one server listed. Yeah. 00:29:55.004 --> 00:29:58.124 Yeah, so this is Jelly Swarm. It's a Rust-based app. 00:29:58.504 --> 00:30:01.904 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 a proxy that shows its own full Jellyfin UI and so it's pretty simple right 00:30:06.284 --> 00:30:08.424 now, really early days for the project I think. 00:30:08.964 --> 00:30:11.944 But yeah, you've got servers you can configure users and then some basic settings. 00:30:12.124 --> 00:30:14.904 So the first thing you do of course is well what are you proxying? 00:30:15.024 --> 00:30:19.204 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 But you can see here where you could add multiple ones. They have a priority 00:30:22.424 --> 00:30:23.464 field which I haven't played with. 00:30:23.544 --> 00:30:24.884 How are you getting this public to the internet? 00:30:24.884 --> 00:30:30.064 For this demo, the proxy is running on a VPS. 00:30:30.124 --> 00:30:31.044 A VPS. I see. 00:30:31.504 --> 00:30:34.964 And then talking over the mesh network back to my server at home. 00:30:35.124 --> 00:30:39.704 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 and then it can proxy these. And it works really well. 00:30:43.884 --> 00:30:47.864 And it's like three fields to add a new Jellyfin server to this, 00:30:47.944 --> 00:30:49.204 as long as it can access it. 00:30:49.304 --> 00:30:52.504 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 it does a layer of mapping. So it has its own directory of users, 00:30:57.826 --> 00:31:02.266 and then you choose how to map those onto the credentials to the actual Jellyfin 00:31:02.266 --> 00:31:04.266 servers that it's being proxied to. 00:31:04.646 --> 00:31:10.266 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 account that I have on my actual Jellyfin server. 00:31:12.486 --> 00:31:12.826 Yeah. 00:31:13.046 --> 00:31:16.486 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 Wow, that's great. This is really, really cool. Huh. 00:31:20.566 --> 00:31:23.186 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 to try to fix that or what. 00:31:24.686 --> 00:31:29.546 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 because everything worked in terms of being fully proxied through JellySwarm, 00:31:35.506 --> 00:31:37.506 except when I would try to play the media. 00:31:37.686 --> 00:31:41.306 And it looked like for that, it was still ultimately getting served a link to 00:31:41.306 --> 00:31:42.626 the backing Jellyfin server. 00:31:43.446 --> 00:31:46.706 So if you knew the right, if you were watching the network traffic, 00:31:47.306 --> 00:31:51.666 you could go figure out like where the backing server is that's being proxied 00:31:51.666 --> 00:31:55.306 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 that are only valid for the proxy. 00:31:57.526 --> 00:32:01.086 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 I don't know what the full plans are there. So there are some caveats, but... 00:32:05.144 --> 00:32:07.944 I was impressed, honestly, with how well it worked. I was able to test it with 00:32:07.944 --> 00:32:10.604 doing a Chromecast here at the house. That was totally fine. 00:32:10.744 --> 00:32:13.564 And it works just fine with the Android Jellyfin app, too. 00:32:13.764 --> 00:32:16.564 Well, I see it's still actively updated. It's kind of a new project, 00:32:16.784 --> 00:32:20.204 but it's under active development. Last four days ago, things were created in 00:32:20.204 --> 00:32:21.064 last week, a bunch of stuff. 00:32:21.384 --> 00:32:25.944 And it's GPL 2.0. It is Jelly Swarm. Bring all your Jellyfin servers together. 00:32:26.084 --> 00:32:28.244 I think this is the route I'm actually going to go for Jellyfin. 00:32:28.864 --> 00:32:31.584 Because then we could also, over time, we could add each other's servers, 00:32:31.624 --> 00:32:32.904 which sounds like a lot of fun. 00:32:33.324 --> 00:32:37.264 And then this tunnel thing I've come up with seems useful for other types of 00:32:37.264 --> 00:32:39.444 self-hosted services that I want to temporarily make available. 00:32:39.704 --> 00:32:45.924 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 I did also see just a quick smattering of other things that we should, 00:32:49.644 --> 00:32:51.044 that maybe were worth checking out. 00:32:51.384 --> 00:32:51.664 Yeah, yeah. 00:32:51.924 --> 00:32:55.384 Sadly, it has not been updated yet for the latest, like Jellyfin just had that 00:32:55.384 --> 00:32:58.444 big new release with the database upgrade and all that. 00:32:58.744 --> 00:33:04.904 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 Oh, this is up your alley. 00:33:06.664 --> 00:33:11.264 Yes, right? So basically you can define all your jellyfin stuff in your NixOS setup. 00:33:12.044 --> 00:33:15.764 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 killer, especially if you wanted to quickly automate standing these kind of 00:33:19.524 --> 00:33:22.104 things up, or you just wanted to have a more maintainable jellyfin. 00:33:22.244 --> 00:33:25.404 You found some good ones. You got a couple of other good ones in here, Wes. 00:33:25.584 --> 00:33:29.464 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 of your jellyfin servers and regroup it into one place. 00:33:32.584 --> 00:33:37.084 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 the desired media is located. 00:33:38.804 --> 00:33:42.324 So you could kind of see some combo of like Jelly Swarm and Jelly Hub. 00:33:43.444 --> 00:33:46.744 Maybe that starts to get you a little more to like the Plexus. 00:33:46.744 --> 00:33:51.064 Oh my gosh, this is so great for me because I have a couple of disparate, 00:33:51.304 --> 00:33:53.764 smaller Jellyfin servers and then ideally- Subfins. 00:33:53.784 --> 00:33:54.084 Of course. 00:33:54.484 --> 00:33:57.104 Right, subfins. And then you'd have like a central fin at the server, 00:33:57.404 --> 00:34:01.504 like the main fin, the main that. And it's also GPL3, JellyHub. 00:34:02.411 --> 00:34:07.571 I also found Jellyman and Jellyroller, which are both like a set of scripts 00:34:07.571 --> 00:34:11.631 and or CLI utilities meant to like help manage your Jellyfin. 00:34:11.811 --> 00:34:15.911 So if you do start automating and rolling things out, you can check those out. 00:34:16.051 --> 00:34:20.291 And the docs were entirely in Chinese. So I did my best to translate it. 00:34:20.391 --> 00:34:23.771 But MB to local player, which is something I've wanted before, 00:34:23.851 --> 00:34:26.351 because one of the great things about Jellyfin, right, is it makes it super 00:34:26.351 --> 00:34:30.651 easy to just download or to get direct stream access to the media without having 00:34:30.651 --> 00:34:32.291 to fuss with its UI or anything. 00:34:32.411 --> 00:34:39.551 Well mb to local player basically automates doing that but with hooks to like 00:34:39.551 --> 00:34:43.671 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 things out of the whole system. 00:34:44.711 --> 00:34:45.531 Oh that's brilliant. 00:34:45.531 --> 00:34:49.351 So imagine just like using mpv to watch your video locally while you're working 00:34:49.351 --> 00:34:52.471 at your desk and then still have that data in the system. 00:34:52.471 --> 00:34:57.971 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 course also would love to hear your 00:35:00.871 --> 00:35:05.411 crazy network tunneling solutions and security solutions for my setup. 00:35:05.671 --> 00:35:09.751 Like, you know, maybe if I keep using this, I should build in some security. 00:35:09.951 --> 00:35:13.111 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 the knowledge and links to all of this in the notes. 00:35:19.916 --> 00:35:24.176 1password.com slash unplugged. Take the first steps to better security for your 00:35:24.176 --> 00:35:27.756 team by securing credentials and protecting every application, 00:35:28.056 --> 00:35:29.276 even the ones you don't know about. 00:35:29.376 --> 00:35:33.376 Learn more at 1password.com slash unplugged. That's the number one password 00:35:33.376 --> 00:35:35.096 and it's all lowercase unplugged right there. 00:35:35.236 --> 00:35:39.356 You just go there and learn more because this is something that would have changed 00:35:39.356 --> 00:35:41.196 the game for me when I was in IT. 00:35:41.416 --> 00:35:44.816 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 mountain of different assets. 00:35:46.336 --> 00:35:50.076 There's physical hardware. There's user identities. There's applications. 00:35:50.416 --> 00:35:55.036 And it's a lot. And it's always growing. Well, you can conquer this continuously 00:35:55.036 --> 00:35:59.396 growing mountain of security risk with 1Password extended access management. 00:35:59.596 --> 00:36:03.856 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 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 And they have Trellica. This is something that can discover and secure access 00:36:14.656 --> 00:36:17.336 to all of your apps, managed or unmanaged. 00:36:17.856 --> 00:36:21.116 Trellica by 1Password inventories every app and usage at your company. 00:36:21.256 --> 00:36:24.916 It has pre-populated app profiles so it can assess the different SaaS risks. 00:36:25.096 --> 00:36:28.596 It'll let you know who has access to what. You can manage that. 00:36:28.696 --> 00:36:32.336 You can optimize the spend. You can even enforce security best practices across 00:36:32.336 --> 00:36:34.436 every applications your employees use. 00:36:34.556 --> 00:36:38.376 And now you're going to know which ones they're using, even the shadow IT. 00:36:39.016 --> 00:36:42.816 I also really appreciate this because I know so many companies struggle with 00:36:42.816 --> 00:36:45.136 onboarding and offboarding employees. 00:36:45.356 --> 00:36:47.516 You have a process that lasts for a little while. 00:36:48.296 --> 00:36:52.016 This needs to be better. And this is an area where 1Password can help. 00:36:52.136 --> 00:36:53.456 It can help you meet compliance goals. 00:36:54.372 --> 00:36:58.712 It provides a complete solution for SaaS access governance. Trelica by 1Password 00:36:58.712 --> 00:37:02.312 is just one of the ways that extended access management as an entire suite helps 00:37:02.312 --> 00:37:04.832 teams strengthen compliance and security. 00:37:05.052 --> 00:37:09.132 You know about their award-winning password manager. I use it. Family members use it. 00:37:09.472 --> 00:37:12.632 It's trusted by millions of people. I was really thrilled when they came to Linux. 00:37:13.192 --> 00:37:17.212 Businesses all over the world use it. This goes way beyond that. 00:37:17.292 --> 00:37:21.032 They're securing more than just passwords with 1Password extended access management. 00:37:21.552 --> 00:37:25.172 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 So take the first steps to better security for your team by securing credentials 00:37:28.812 --> 00:37:32.312 and protecting every application, even the unmanaged ones. 00:37:32.452 --> 00:37:37.612 You can learn more by supporting the show and going to 1password.com slash unplugged. 00:37:37.692 --> 00:37:41.712 They have a video there you could watch. That's the number 1password.com slash 00:37:41.712 --> 00:37:44.452 unplugged. All lowercase. Go learn more. 00:37:44.872 --> 00:37:47.132 1password.com slash unplugged. 00:37:49.211 --> 00:37:52.511 Join CrowdHealth.com and use the promo code unplugged. 00:37:52.831 --> 00:37:55.911 Making informed decisions about health care is getting tougher and tougher. 00:37:56.051 --> 00:37:59.471 It's also becoming a political football, which makes it very frustrating. 00:37:59.891 --> 00:38:03.211 But it is open enrollment season. That's the season where the health insurance 00:38:03.211 --> 00:38:07.491 companies are going to hope you'll just sign up again and just swallow those 00:38:07.491 --> 00:38:10.271 overpriced premiums and the confusing fine print. 00:38:10.931 --> 00:38:15.871 This is where CrowdHealth comes in. I have been a member for over three years. 00:38:15.891 --> 00:38:19.211 And don't take my word for it. Go check it out. go to joincrowdhealth.com. 00:38:19.331 --> 00:38:22.131 It's a healthcare alternative for people who make their own decisions. 00:38:22.371 --> 00:38:27.371 I'm a small business owner, very small business. This was a absolute must do 00:38:27.371 --> 00:38:29.751 for us. My wife and I both own our own businesses. 00:38:30.291 --> 00:38:33.551 We have saved thousands of dollars using CrowdHealth. 00:38:33.871 --> 00:38:37.371 Stop playing that insurance game. Go join CrowdHealth. It's a community of people 00:38:37.371 --> 00:38:40.151 that fund each other's medical bills directly. No middlemen, 00:38:40.291 --> 00:38:41.491 no networks, no nonsense. 00:38:41.811 --> 00:38:45.411 I see so many success stories on social media all the time. 00:38:45.531 --> 00:38:48.931 But as a member myself, You know, just being in the system, I've watched the 00:38:48.931 --> 00:38:50.171 process work and I love it. 00:38:50.871 --> 00:38:53.591 You know, I'm very comfortable with it. It gives me peace of mind. 00:38:53.771 --> 00:38:56.111 I have seen the system work over and over again. 00:38:56.291 --> 00:38:59.551 And they have a great app to manage all of it. It's very straightforward when 00:38:59.551 --> 00:39:02.011 you're going to start the process or if you have an emergency situation or, 00:39:02.131 --> 00:39:05.211 you know, you just want like kind of like somebody to ask some questions. 00:39:05.271 --> 00:39:07.311 They have an app that handles all of it. 00:39:07.631 --> 00:39:10.531 This is CrowdHealth. It's a health insurance alternative. 00:39:10.871 --> 00:39:15.451 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 low-cost prescriptions, and lab testing tools, as well as a database of low-cost, 00:39:20.411 --> 00:39:23.131 high-quality doctors vetted by CrowdHealth. 00:39:23.311 --> 00:39:27.971 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 This is how things should be, and it lets you take power back here. 00:39:32.211 --> 00:39:34.831 The system is betting you're just going to stay in the same stuck, 00:39:35.051 --> 00:39:37.351 overpriced, continually overpriced system. 00:39:38.822 --> 00:39:41.302 And if those subsidies expire, which they seem like they're going to, 00:39:41.542 --> 00:39:42.942 prices could go sky high. 00:39:44.082 --> 00:39:47.342 CrowdHealth has saved members over $40 million in health care expenses because 00:39:47.342 --> 00:39:50.902 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 Join CrowdHealth. Get started today for $99 for your first three months. Can you believe it? 00:39:56.302 --> 00:39:58.262 And it's real. It's real. I've done it. 00:39:58.822 --> 00:40:02.842 It's great. Go to joincrowdhealth.com. Use the promo code unplugged. 00:40:02.922 --> 00:40:05.942 It's joincrowdhealth.com and then promo code unplugged. 00:40:06.362 --> 00:40:09.162 CrowdHealth is not insurance. opt out and take your power back. 00:40:09.322 --> 00:40:14.762 This is how we win and make a difference. Join crowdhealth.com promo code unplugged. 00:40:17.062 --> 00:40:21.062 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 who's abiding. 87,654 sats. 00:40:30.194 --> 00:40:33.274 Thank you very much. It says, greetings to all, long time no boost. 00:40:33.474 --> 00:40:38.954 I'm left behind, currently in the middle of episode 639 and slowly crawling 00:40:38.954 --> 00:40:40.454 my way to the most recent one. 00:40:40.774 --> 00:40:45.014 Chris, not sure you decided on a home assistant machine, but I have the blue 00:40:45.014 --> 00:40:47.534 and it's been rock solid for four years? 00:40:48.074 --> 00:40:48.214 Yeah. 00:40:48.774 --> 00:40:49.014 Wow. 00:40:49.374 --> 00:40:55.434 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 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 As for Zigbee, I have an Ethernet adapter. 00:41:04.894 --> 00:41:06.754 Not sure you can go that route, though. 00:41:08.274 --> 00:41:12.014 Yeah. Yeah. And also, he says, do you still use Plex? 00:41:12.154 --> 00:41:18.674 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 A tool primarily to sync your backends. User PlayState, which is really the 00:41:23.114 --> 00:41:24.834 thing that's really the big deal. 00:41:24.834 --> 00:41:26.954 Yeah, and traps a lot of people where they are. 00:41:27.274 --> 00:41:29.654 Plex, Jellyfin, and Embe. Embe. 00:41:30.454 --> 00:41:30.834 Embe. 00:41:30.974 --> 00:41:36.874 How about that? Yep. And they hit their version 1.0 stable release on October 29th. 00:41:36.994 --> 00:41:40.234 There's another great tip. That's a good one. I didn't know about that. 00:41:42.054 --> 00:41:43.914 There's no reason not to have your watch state synced. 00:41:44.134 --> 00:41:47.854 Yeah, you've been manually syncing it yourself, watching the episode twice, the whole thing. 00:41:47.954 --> 00:41:49.654 Fucking animal. Yeah, I just watched them again. I don't know. 00:41:50.494 --> 00:41:56.194 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 Home Assistant automation. 00:41:57.454 --> 00:42:02.294 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 So, yes. So I will say, I don't know if they sell it anymore, 00:42:05.434 --> 00:42:07.594 but I will say it has been a very solid machine. 00:42:07.874 --> 00:42:10.794 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 it. Don't tell you that much. 00:42:13.494 --> 00:42:16.274 Marcel's here with a row of McDucks. How about that? 00:42:19.434 --> 00:42:20.514 22,222 sats. 00:42:23.212 --> 00:42:26.132 That was way too cheap of a baller boost, so I have some more sats. 00:42:26.552 --> 00:42:32.152 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 You had a refreshingly balanced take. Still not sure what I'll do. 00:42:35.232 --> 00:42:40.212 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 Right. At the end of the last episode, we took a look at STM32CubeProgrammer, 00:42:45.012 --> 00:42:47.732 which was proving quite difficult to run on Nix. 00:42:48.252 --> 00:42:51.892 Indeed. Indeed. Indeed. Let us know. Keep us posted. VM could be a way. 00:42:51.952 --> 00:42:52.912 Maybe a container. I don't know. 00:42:53.212 --> 00:42:57.832 Our pal and buddy Jeff comes in with 14,000 sats. 00:43:03.341 --> 00:43:10.881 Simple request this time i want to hear that live pew sound yeah that hits thank. 00:43:10.881 --> 00:43:12.081 You pj appreciate that. 00:43:12.081 --> 00:43:16.521 Well distro stew came in with 11 101 sats, 00:43:18.861 --> 00:43:22.001 is that a row of sticks thanks for roasting my 00:43:22.001 --> 00:43:25.121 configs i use git a little differently though sync 00:43:25.121 --> 00:43:27.941 thing is my source of truth my desktop is kind 00:43:27.941 --> 00:43:30.761 of the command center so i mostly edit the configs from my 00:43:30.761 --> 00:43:33.541 other headless servers there then in a server 00:43:33.541 --> 00:43:38.781 terminal i just have it run the rebuild switch since the configs instantly sync 00:43:38.781 --> 00:43:43.301 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 i generally think git is too much overhead i don't want to think about commits 00:43:48.221 --> 00:43:52.141 merges or reverts just to update a package on the system oh. 00:43:52.141 --> 00:43:54.321 Fighting words wes fighting words. 00:43:54.321 --> 00:43:54.901 Actually. 00:43:55.061 --> 00:43:57.461 I was going to say, I love this. Thank you for sharing, DistroStu. 00:43:58.841 --> 00:44:03.821 I love that we have the kind of audience that takes the tools and uses them 00:44:03.821 --> 00:44:06.381 however they want, right? Yeah, sure. Totally great for this. 00:44:07.221 --> 00:44:08.461 But when I do it that way. 00:44:09.061 --> 00:44:13.001 You can combine the two in a variety of useful ways. 00:44:13.261 --> 00:44:14.741 It's fine for them, just not for me. 00:44:15.021 --> 00:44:20.921 Well, hey, I've got to be the Chris config bar raiser. DistroStu's got lots 00:44:20.921 --> 00:44:22.941 going on already. She's got a great config. 00:44:22.941 --> 00:44:26.761 All right, all right. Okay, all right. A dude trying, thank you Distro Stu. 00:44:26.961 --> 00:44:30.601 A dude trying stuff comes in with a row of ducks. That's 2,222 sats. 00:44:31.601 --> 00:44:34.721 Well, I love the idea of the home lab holidays. I'm currently trying to get 00:44:34.721 --> 00:44:38.901 everything into IAC and pivoting my home lab to Bootsy. 00:44:40.141 --> 00:44:42.001 Oh, interesting. That's awesome. 00:44:42.201 --> 00:44:46.021 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 to the soundboard? I find that too relatable. 00:44:48.061 --> 00:44:50.681 Well, somebody's got to track it down. Did I say that? Because that does feel... 00:44:50.681 --> 00:44:52.881 Yeah, if you've got a flak file for us, I mean... 00:44:52.941 --> 00:44:53.841 Send us a flack. 00:44:54.081 --> 00:44:55.201 I can bribe the soundboard guy. 00:44:55.701 --> 00:45:00.361 Yeah, Wes does have connections. Thank you, dude, trying stuff. Appreciate that boast. 00:45:01.081 --> 00:45:05.661 Retro Gear comes in with 8,555 sets. 00:45:08.744 --> 00:45:14.364 Gents, check out GitHub, SalmonNet, it's called, it's a project under that org, 00:45:14.684 --> 00:45:19.184 Proxmox-NixOS, because it actually works pretty well. 00:45:19.544 --> 00:45:24.344 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 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 Full of absolute crackers. 00:45:33.304 --> 00:45:36.844 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 But I think there's going to be... 00:45:38.544 --> 00:45:40.304 Well, maybe you could just go put it on your shared jellyfin for us. 00:45:40.524 --> 00:45:43.484 Right? And sit down with the clip machine and just watch the movie, 00:45:43.544 --> 00:45:48.344 it sounds like. That's pretty great. Thank you, Retro Gear. Good to hear from you. 00:45:48.504 --> 00:45:51.744 Yeah. I mean, I have not yet dared to try Proxmox Next OS. 00:45:51.924 --> 00:45:54.884 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 And so having an experience report is super useful. 00:45:58.324 --> 00:46:01.204 Okay. All right. This is Proxmox Next OS. us. 00:46:02.524 --> 00:46:07.524 We have a boost here from Dirt Ferguson, 13,333 sets. 00:46:10.704 --> 00:46:16.564 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 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 You know, it could be a laptop or a pie. It could, you know, 00:46:26.524 --> 00:46:29.324 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 too. Now, of course, We'd love to see the crazy cool setups. 00:46:33.058 --> 00:46:37.678 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 Crazy cool doesn't preclude the eccentric. I'm open to that. 00:46:42.318 --> 00:46:48.098 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 Thank you, Turd. Appreciate that. Chloroflore is here with 8,000. One, two, three sats. 00:46:54.238 --> 00:46:57.138 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 Best secret port boost. 00:47:01.418 --> 00:47:01.718 Oh. 00:47:02.218 --> 00:47:05.238 Ooh, I think he's giving me a message there. You know what I mean? 00:47:05.878 --> 00:47:06.658 Hey, I know that board. 00:47:06.778 --> 00:47:08.798 Because that's the 8123, the Home Assistant? 00:47:09.018 --> 00:47:10.178 The Home Assistant board. 00:47:10.338 --> 00:47:12.098 I think it's the Home Assistant board, isn't it? Let me double check. 00:47:12.098 --> 00:47:14.458 I got it right here. 8123, yeah. 00:47:15.078 --> 00:47:18.918 I got it in a tab. All right, thank you everybody who boosted in, 00:47:19.118 --> 00:47:21.578 including those of you who streamed them sats as you listened. 00:47:21.858 --> 00:47:27.598 In fact, 28 of you collectively helped to stack 53,513 of them Satoshis. 00:47:27.598 --> 00:47:34.958 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 221-137. We really appreciate it. There's a lot of ways to support the show 00:47:41.158 --> 00:47:42.538 because it's a value for value podcast. 00:47:42.678 --> 00:47:45.758 Your time, your talent, and your treasure are all very much appreciated. 00:47:46.358 --> 00:47:50.378 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 our audience has made it possible between the interactions we get in the community, 00:47:53.798 --> 00:47:57.338 the support we get via the boost and the membership, but also your listenership. 00:47:57.598 --> 00:47:59.738 It means a lot to us. We really appreciate it. 00:48:00.018 --> 00:48:03.478 Fountain FM makes it really easy to boost these days. There's also ways you 00:48:03.478 --> 00:48:05.638 can go on the self-hosted Sovereign route with AlbiHub. 00:48:05.838 --> 00:48:09.978 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 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 It's podcastapps.com. Thank you, everybody, who boosted episode 642 of your Unplugged program. 00:48:33.990 --> 00:48:39.050 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 so let's just wrap it up with a pick. 00:48:41.510 --> 00:48:46.610 It's right on point. It's called Subgen, and it auto-generates subtitles, 00:48:46.850 --> 00:48:50.930 Subgen, for your media, be it Jellyfin, Plex, XMBC. 00:48:51.110 --> 00:48:54.610 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 It'll generate subtitles and create a .srt subtitle for any media file that 00:48:58.890 --> 00:49:03.890 you add, and it can be then read by your, assuming you've got something that 00:49:03.890 --> 00:49:05.850 understands SRT files. It's pretty nice. 00:49:06.070 --> 00:49:08.810 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 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 time or trigger it if you're getting some new stuff. 00:49:16.010 --> 00:49:21.290 But I'm assuming with some of the Whisper models being so efficient, 00:49:21.290 --> 00:49:24.430 you can also use this in real time if you have the right pipeline. 00:49:24.670 --> 00:49:24.810 Yeah. 00:49:25.050 --> 00:49:26.710 Ooh, special. I like it. 00:49:26.710 --> 00:49:32.230 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 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 when it comes to content or anything that's getting auto-generated or internet 00:49:40.770 --> 00:49:45.530 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 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 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 Know i think we bring back that um flash youtube player because it would buffer. 00:49:57.410 --> 00:49:58.870 Bring back buffering i. 00:49:58.870 --> 00:50:02.530 Feel like if you just played an ad before you got your jellyfin media playing 00:50:02.530 --> 00:50:05.590 then you could do the buffering during the ad time have you considered this. 00:50:05.590 --> 00:50:09.030 That would be really really cool we need a jellyfin. 00:50:09.030 --> 00:50:11.410 Plugin that adds our own dynamic ads into. 00:50:11.410 --> 00:50:11.710 It yeah, 00:50:12.569 --> 00:50:16.789 so there is speaking of jellyfin though west there is some jellyfin like integration 00:50:16.789 --> 00:50:19.069 you can kind of do with the jellyfin webhooks plug-in. 00:50:19.069 --> 00:50:21.769 Yeah i'm impressed with this thing just because it is like you can use it 00:50:21.769 --> 00:50:24.449 in bizarre or plex or mb but with jellyfin you pretty 00:50:24.449 --> 00:50:27.189 much just use the webhooks plug-in which is standard i think 00:50:27.189 --> 00:50:29.909 that's just to like be able to communicate like when 00:50:29.909 --> 00:50:33.529 you add new media jellyfin find stuff it can go ping subgen and 00:50:33.529 --> 00:50:36.349 then as long as subgen has like the same mounts for the file so 00:50:36.349 --> 00:50:39.309 it has the same paths that jellyfin shares then it 00:50:39.309 --> 00:50:42.069 can go off and generate the SRTs and like 00:50:42.069 --> 00:50:45.029 you know obviously this software like there's robust support for 00:50:45.029 --> 00:50:47.989 subtitles especially if you're getting them from sources or standard media 00:50:47.989 --> 00:50:51.289 items that have those out on the internet or if you're doing pinch flat 00:50:51.289 --> 00:50:56.269 and your youtube sucking in software like does that for you but if you're like 00:50:56.269 --> 00:50:59.669 me and you frequently go crazy and stand up wild jellyfin servers you might 00:50:59.669 --> 00:51:02.689 not have signed in to open subtitles you might not have copied everything you 00:51:02.689 --> 00:51:06.929 know like you might having a subtitle method of last resort or for random mp4 00:51:06.929 --> 00:51:09.169 files you want to stick there. It just seems great. 00:51:09.878 --> 00:51:13.758 Very often. And, you know, like one of my kids, they just prefer to watch the 00:51:13.758 --> 00:51:17.078 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 It's MIT licensed, 98.8% all snake. 00:51:21.818 --> 00:51:24.958 And you can find a link to subgen in the show notes. 00:51:25.058 --> 00:51:28.138 Now, Wes, if we said something that somebody wanted to go back and find, 00:51:28.318 --> 00:51:31.558 or if they wanted to replay a segment, we probably have resources they could 00:51:31.558 --> 00:51:32.418 take advantage of, right? 00:51:32.418 --> 00:51:38.258 Yeah, they just run subgen on our file. No, actually, we do that already. 00:51:38.258 --> 00:51:42.958 So you go check out the RSS feed with a podcasting 2.0 capable client, 00:51:43.118 --> 00:51:44.178 which is the easiest way to do it. 00:51:44.318 --> 00:51:49.058 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 in the cloud. So you get the latest and greatest chapters. 00:51:52.038 --> 00:51:57.658 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 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 We're coming in we have a few things planned still it's 00:52:05.058 --> 00:52:07.938 not like we're wrapping up yet but as far as it gets to like 00:52:07.938 --> 00:52:10.858 episode planning for us we are in we are now planning 00:52:10.858 --> 00:52:13.558 our last few episodes which means we only have a 00:52:13.558 --> 00:52:17.698 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 are going to be double live stream recording episodes we will have the holiday 00:52:20.918 --> 00:52:25.138 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 time when you're around on a 00:52:26.938 --> 00:52:31.758 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 Eastern but you can have the robot convert it to your local time at jupiterbroadcasting.com. 00:52:36.998 --> 00:52:40.898 It is a special live vibe thing. It's unique in the world of podcasts. 00:52:41.678 --> 00:52:45.358 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 podcast in the world that has an open mumble room that anybody with a working 00:52:49.078 --> 00:52:51.358 mic and headphones can join and share their opinion? 00:52:51.778 --> 00:52:55.658 Now, people don't abuse it, obviously, but it's available. If they tag me in 00:52:55.658 --> 00:52:57.238 the chat room and they have something they want to say, they can talk. 00:52:57.867 --> 00:53:01.367 And that is open to all types of people. Now, of course, you abuse it. 00:53:01.447 --> 00:53:04.447 You probably get kicked out. But it's a really unique aspect to the show. 00:53:04.607 --> 00:53:08.487 And then you combine that with the live people that are watching and giving 00:53:08.487 --> 00:53:10.787 us feedback and helping title it in real time. 00:53:10.967 --> 00:53:16.287 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 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 I mean, we're breathing down on 700 episodes of doing our absolute best every 00:53:29.977 --> 00:53:32.457 single Sunday to give you the best Linux coverage. 00:53:32.517 --> 00:53:37.877 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 And the number one customer is always and has been our audience. 00:53:41.877 --> 00:53:45.837 And I just think when you combine the mumble room, the way the show is supported, 00:53:46.097 --> 00:53:51.337 the ingredients, how long we've been going, our focus and our goals as presenters 00:53:51.337 --> 00:53:54.337 that we are all three aligned on. It's something very unique. 00:53:54.497 --> 00:53:57.377 And only a few more episodes of this year will be live. 00:53:57.557 --> 00:54:01.397 And it gets extra special and fun when you can participate live. 00:54:02.117 --> 00:54:05.317 JBLive.tv or if you just want to plug it in on a web browser, 00:54:05.457 --> 00:54:08.817 JBLive.fm. We're also on the commercial video platforms for the live stream. 00:54:08.977 --> 00:54:12.437 And, of course, members get the entire bootleg. They get a sense of it, 00:54:12.497 --> 00:54:13.677 but it's a whole other thing when you hear live. 00:54:14.177 --> 00:54:18.417 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 bang out all these episodes and we have all this stuff. Like we're going to 00:54:21.737 --> 00:54:24.257 get moving quick and I might not get a chance to remind you again. 00:54:24.437 --> 00:54:27.637 And it is something very unique and it will not last forever. 00:54:27.897 --> 00:54:32.257 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 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 for more info for what we talked about today. A lot of good resources. 00:54:39.357 --> 00:54:43.597 Consider a membership. I will probably have a Black Friday sale soon, 00:54:43.597 --> 00:54:44.837 but I don't have one right now. 00:54:44.957 --> 00:54:48.057 But we'd still appreciate if you had a membership or wanted to boost the show. 00:54:48.057 --> 00:54:51.357 Again with how to secure my crazy tunnel 00:54:51.357 --> 00:54:54.997 solution and if you have any questions about it too also send those in as well 00:54:54.997 --> 00:54:58.777 and check out linuxunplugged.com just so that way we have a reason to have a 00:54:58.777 --> 00:55:02.637 website after all it's not all about the podcast app although we try to make 00:55:02.637 --> 00:55:07.097 it as good as possible also links to our matrix our mumble other community resources 00:55:07.097 --> 00:55:09.777 over at linuxunplugged.com and that submission form, 00:55:10.677 --> 00:55:14.077 that's linuxunplugged.com slash holiday for the automatic form. 00:55:15.258 --> 00:55:19.918 And linuxunplugged.com slash oldfart for the Markdown version you can send in via email. 00:55:20.318 --> 00:55:23.678 Thank you so much for joining us on this week's episode of Your Unplugged Program. 00:55:23.858 --> 00:55:27.218 And we'll see you right back here next Tuesday, as in Sunday.
Previous episode Next episode

Search

Search