Skip to main content
LawHub
Search

The Disposable Server

Jun 1, 2025
Listen to this episode

Spin up, share, nuke. We each build a throwaway server, and then rate each others' setups.

Sponsored By:

Support LINUX Unplugged

Links:

Transcript

WEBVTT 00:00:00.005 --> 00:00:03.645 All right, here we go, boys. It is time for episode 116. 00:00:04.185 --> 00:00:04.545 100? 00:00:05.665 --> 00:00:06.985 Oh, my God, what's wrong with me? 00:00:07.445 --> 00:00:08.165 Oh, God. 00:00:08.645 --> 00:00:11.005 Going back in time. Look how youthful we are. 00:00:23.385 --> 00:00:28.085 Hello, friends, and welcome back to your weekly Linux talk show. My name is Chris. 00:00:28.225 --> 00:00:28.785 My name is Wes. 00:00:28.825 --> 00:00:29.585 And my name is Brett. 00:00:30.145 --> 00:00:34.785 Hello, gentlemen. Coming up on the show today, we're getting ready for the TUI 00:00:34.785 --> 00:00:38.945 challenge by locking in to a disposable server mini challenge this week. 00:00:39.065 --> 00:00:40.305 We'll tell you all about that. 00:00:40.485 --> 00:00:45.165 Plus, because we love doing this for some reason, we're going to do a live update 00:00:45.165 --> 00:00:49.305 of our extremely precious production-grade NextCloud server. 00:00:49.485 --> 00:00:53.705 We didn't tell Drew about this beforehand. He's just finding out if it worked and he got the files. 00:00:53.705 --> 00:00:56.445 Then we're going to round the show out with some great boosts, 00:00:56.445 --> 00:00:57.985 some picks, and a lot more. 00:00:58.625 --> 00:01:01.825 So before I go any further, let's say good morning to our friends at Tailscale. 00:01:02.245 --> 00:01:06.645 Tailscale.com slash unplugged. Tailscale is the easiest way to connect your 00:01:06.645 --> 00:01:11.405 devices and services to each other, wherever they are, whatever they might be. 00:01:11.545 --> 00:01:15.165 I'm talking VPSs across multiple providers, your mobile device, 00:01:15.265 --> 00:01:16.165 your machines on your LAN. 00:01:16.345 --> 00:01:20.565 It is modern networking that connects devices directly to each other over a 00:01:20.565 --> 00:01:22.125 mesh network protected by... 00:01:22.125 --> 00:01:22.645 Wow. 00:01:24.605 --> 00:01:30.665 Nice one. I mean, we're talking really fast, secure remote access that you can 00:01:30.665 --> 00:01:32.285 get up and running in just a few minutes. 00:01:32.465 --> 00:01:36.685 It is a intuitive, programmable way to manage a private network. 00:01:36.885 --> 00:01:40.285 It kind of fills in the gaps that the Internet never quite delivered. 00:01:40.285 --> 00:01:44.085 Back in the day when I got my first public IP on a land that I managed, 00:01:44.305 --> 00:01:47.365 every single node was on the public Internet. 00:01:47.525 --> 00:01:51.365 And that's how you just move files between each other. That's crazy today, 00:01:51.365 --> 00:01:55.285 but on a tailscale mesh network, which we call a tailnet, 00:01:55.485 --> 00:02:00.425 you can have all of your nodes across complex networks with ACLs that are defined 00:02:00.425 --> 00:02:04.185 by the admin console that tie into your existing authentication infrastructure. 00:02:04.485 --> 00:02:08.565 When you go to tailscale.com slash unplugged, you can try it for free on 100 00:02:08.565 --> 00:02:11.825 devices for three users, no credit card required. 00:02:12.105 --> 00:02:15.625 That's the plan I'm on for my personal account, and I've used it for a few years 00:02:15.625 --> 00:02:19.685 now, and I have no inbound ports on any of my firewalls, and I realized we need 00:02:19.685 --> 00:02:21.205 to do this at Jupyter Broadcasting, too. 00:02:21.345 --> 00:02:24.165 Thousands of other companies, thousands of listeners are using Tailscale. 00:02:24.425 --> 00:02:29.965 Go try it out for yourself or your business. Just start at tailscale.com slash unplugged. 00:02:32.780 --> 00:02:38.020 Well, the Terminal User Interface Challenge kicks off next week in episode 618, 00:02:38.020 --> 00:02:41.500 which will be coming out on June 8th. And we'd love to have you join us. 00:02:41.640 --> 00:02:45.220 I have in the show notes linked the TUI Challenge rules, which are the final 00:02:45.220 --> 00:02:47.580 edition after incorporating everyone's feedback. 00:02:48.040 --> 00:02:50.260 The idea is for this to run seven days. 00:02:50.920 --> 00:02:55.360 The objective is to complete some common computing tasks using only terminal 00:02:55.360 --> 00:02:58.820 applications. So no GUI apps like Firefox, LibreOffice, Thunderbird, 00:02:58.920 --> 00:03:01.100 etc., other than your terminal emulator, of course. 00:03:01.900 --> 00:03:06.260 So you can use your terminal emulator, Wes. We have a point system for completing 00:03:06.260 --> 00:03:10.780 the challenges. There's also some bonus points in there for some creative solutions. 00:03:10.920 --> 00:03:13.980 We also have outlined how you should share your progress. 00:03:14.260 --> 00:03:19.300 And I've created a scoreboard so people can have a little scorecard. 00:03:19.700 --> 00:03:24.580 Ooh, okay. So it's like the rules digested into a little table? What do we got here? 00:03:24.840 --> 00:03:28.320 Yeah. So you can track your progress as you complete the challenge. 00:03:28.320 --> 00:03:32.180 And I don't know, I don't know my GitHub's, but I think people could take this 00:03:32.180 --> 00:03:38.140 and they could post it on their GitHub's and then they could link it to us either 00:03:38.140 --> 00:03:39.820 in a boost or on the contact form. 00:03:40.140 --> 00:03:42.400 And Bob's your uncle, we could see their score. 00:03:43.260 --> 00:03:47.700 So there's a total of 170 points available. And so we're going to total up how 00:03:47.700 --> 00:03:52.340 we all did and see who comes out on top. I think it's going to be. 00:03:52.340 --> 00:03:55.280 I'm getting nervous because I know you've been doing homework and a bunch of 00:03:55.280 --> 00:03:58.660 listeners have like been building apps and stuff to get ahead on this. 00:03:58.980 --> 00:04:03.340 There are some easy low hanging fruit points. So like easy stuff is like 10 points. 00:04:03.600 --> 00:04:06.660 Stuff that's a little bit harder is 20 points. And then things that are a little 00:04:06.660 --> 00:04:08.740 more complicated are worth 30 points. 00:04:08.860 --> 00:04:12.280 So you could knock out a few things and get some big points or you could do some of the easy stuff. 00:04:13.140 --> 00:04:16.240 And all the challenge tasks, there's a day one task, a day two, 00:04:16.520 --> 00:04:20.320 all the way to day seven are all outlined in the challenge rules, 00:04:20.340 --> 00:04:21.840 which we will have linked in the show notes. 00:04:22.420 --> 00:04:25.980 and we will officially begin at the start of next episode. 00:04:27.960 --> 00:04:30.220 So I guess figure out your web browser solution. 00:04:30.620 --> 00:04:32.240 Yeah, we're going to need to be able to look at the dog. 00:04:33.900 --> 00:04:38.820 Yeah. So 618 is when it kicks off Sunday, June 8th. We will stream that episode 00:04:38.820 --> 00:04:41.480 live over at jblive.tv and jblive.fm. 00:04:41.620 --> 00:04:45.260 If you want to have fun with us and join us live or just listen on the download 00:04:45.260 --> 00:04:49.500 and participate and let us know how you did, or I suppose just kick back and 00:04:49.500 --> 00:04:51.660 enjoy the ride. It should be a fun seven days. 00:04:56.013 --> 00:04:59.013 Now we're going to do something that you should never do, and we're going to 00:04:59.013 --> 00:05:02.613 live update our production Nextcloud instance on the air. 00:05:02.733 --> 00:05:07.153 And this is the instance we use to upload this very show to Editor Drew and all of our productions. 00:05:07.533 --> 00:05:11.273 We use it for all kinds of things, but we like to run these things in production 00:05:11.273 --> 00:05:14.333 and then report back to you how they've actually done. 00:05:14.513 --> 00:05:17.573 And part of that is updating them live on the show. And if it blows up, 00:05:17.713 --> 00:05:21.033 we have to own it live on the show. How are you feeling, Wes Payne? 00:05:21.033 --> 00:05:26.673 About as good as one can i've at least got the docker compose file updated and 00:05:26.673 --> 00:05:29.953 pre-pulled the images so now we just gotta you know down and up. 00:05:29.953 --> 00:05:34.073 All right can we get a little reminder of how old this box is. 00:05:34.073 --> 00:05:39.233 Surprisingly not that old um i don't remember the last time we updated it but 00:05:39.233 --> 00:05:42.513 apparently not that far in the past yeah we're like a version. 00:05:42.513 --> 00:05:43.733 And a half behind or something. 00:05:43.733 --> 00:05:46.073 Yeah about that not too bad for us actually. 00:05:46.073 --> 00:05:50.393 All right let's give it a go, 00:05:54.333 --> 00:05:58.273 now best case scenario pulls down everything just fine starts a new container 00:05:58.273 --> 00:06:01.853 and there isn't anything you have to do like in the past where you've had to 00:06:01.853 --> 00:06:05.033 enter the container and do some osc commands or ocs. 00:06:05.033 --> 00:06:08.533 I do sometimes do that anyway you know um but you're right hopefully there's 00:06:08.533 --> 00:06:12.113 nothing and like it just automatically applies any needed database migrations 00:06:12.113 --> 00:06:16.633 yeah let's take a look at the logs yeah starting up okay uh we're updating a 00:06:16.633 --> 00:06:19.513 bunch of apps so that's probably good okay yeah that's. 00:06:19.513 --> 00:06:20.313 Always part of this dude. 00:06:20.313 --> 00:06:22.313 Files pdf viewer to 4.0. 00:06:24.533 --> 00:06:27.633 I'm gonna get a tab ready so when you tell me to check it it'll be ready uh-oh. 00:06:29.693 --> 00:06:30.953 Starting integrity check. 00:06:30.953 --> 00:06:33.673 Okay integrity check is good, 00:06:37.813 --> 00:06:39.693 still going uh-oh update. 00:06:39.693 --> 00:06:43.313 Successful turning off maintenance mode resetting log level initialization finished. 00:06:43.513 --> 00:06:45.573 Notice, ready to handle connections. 00:06:45.813 --> 00:06:46.513 Let's go find out then. 00:06:48.773 --> 00:06:49.133 Okay. 00:06:49.433 --> 00:06:50.433 I'm seeing activity in the logs. 00:06:50.613 --> 00:06:50.753 Okay. 00:06:51.113 --> 00:06:52.013 Get indexed on PHP. 00:06:52.393 --> 00:06:55.593 That's me. I'm going to see if I can log in. Are you ready, Wes Bay? I am. 00:06:56.373 --> 00:06:59.653 This is the final test. This would be really great. This would probably be one 00:06:59.653 --> 00:07:00.973 of our smoothest ever, I think. 00:07:04.113 --> 00:07:06.833 Except you probably have to log into your password manager several times. 00:07:07.053 --> 00:07:08.933 Yep. Okay, here I go. Okay, here I go. 00:07:13.813 --> 00:07:14.573 I'm seeing 200. 00:07:14.793 --> 00:07:18.053 Hey, there it is, Wes! You got it! 00:07:18.433 --> 00:07:21.533 Now, the real test is can you actually upload a file, but I suppose that can 00:07:21.533 --> 00:07:22.433 wait till the end of the show. 00:07:22.493 --> 00:07:24.653 Hey, if they're hearing this episode, I think it means it worked. 00:07:24.933 --> 00:07:27.793 That is the smoothest NextCloud upgrade we've done yet. 00:07:33.156 --> 00:07:35.976 Live right here on the air. Well done. That's gotten a lot smoother. 00:07:36.176 --> 00:07:39.296 That used to be a process where you'd have to go in and then manually do some of those upgrades. 00:07:39.716 --> 00:07:39.856 Yeah. 00:07:40.196 --> 00:07:43.896 It's nice to see that smooth out. So that's on theme with this week's episode. 00:07:44.096 --> 00:07:46.376 Don't necessarily do as we do. 00:07:47.856 --> 00:07:54.176 And we, with that disclosed, wanted to try out a little mini challenge this episode. 00:07:54.336 --> 00:07:57.876 While we were recording the last episode of Self-Hosted, episode 150, 00:07:58.196 --> 00:08:00.676 we were remarking in the episode about a common problem. 00:08:01.576 --> 00:08:07.016 Some of our favorite self-hosted apps are just not that easy to share with friends and family. 00:08:07.676 --> 00:08:11.696 You know, Audio Bookshelf, I think, is a good example of this. 00:08:12.676 --> 00:08:16.816 Mealy is another example of this. LubeLogger is another example of this. 00:08:16.936 --> 00:08:20.336 And the one that we were talking about in self-hosted, especially when you compare 00:08:20.336 --> 00:08:21.976 it to the alternative, is Jellyfin. 00:08:22.796 --> 00:08:26.376 Plex really solves this problem. They make it easy to share media with friends 00:08:26.376 --> 00:08:28.836 and family if everybody has a Plex account and you're all in. 00:08:29.236 --> 00:08:32.296 But if you're trying to live the jellyfin lifestyle, but maybe you want to watch 00:08:32.296 --> 00:08:35.396 a season of TV with your friends, this is hard. 00:08:35.536 --> 00:08:38.116 Either you have to come up with a VPN or you have to come up with some sort 00:08:38.116 --> 00:08:41.736 of VPS router that basically is just putting your jellyfin server on the internet. 00:08:41.996 --> 00:08:44.016 Or, you know, holes in your firewall. 00:08:44.356 --> 00:08:44.536 Yeah. 00:08:44.776 --> 00:08:49.016 Or a shared, maybe for like your close friends or family, you can have them 00:08:49.016 --> 00:08:51.696 on your tail net or do like a, you know, tail net share thing. 00:08:51.856 --> 00:08:56.236 But that gets difficult quickly. And it's one more thing people have to use. 00:08:56.336 --> 00:08:58.696 They can't just like pull up the jellyfin client in a hotel. 00:08:58.696 --> 00:09:02.476 well, you're going to have to explain how to do all the stuff that is sometimes even tricky for us. 00:09:02.596 --> 00:09:05.836 And maybe they want to watch on their TV and they can't install a VPN client. 00:09:05.996 --> 00:09:06.176 Right. 00:09:06.756 --> 00:09:11.536 So this is where we started thinking about the concept of a disposable server, 00:09:11.716 --> 00:09:14.416 which is an idea that I think all three of us have played around with a little bit. 00:09:14.476 --> 00:09:18.096 Brent, I know that you've kind of done the disposable server thing on and off 00:09:18.096 --> 00:09:19.196 as different projects have come up. 00:09:19.676 --> 00:09:24.216 Yeah, there's one that I created to just basically create an on-demand VPN that 00:09:24.216 --> 00:09:26.096 I connect to in various countries. 00:09:26.096 --> 00:09:34.296 So the last time I went to Germany, I think I spun one up on a VPS in Germany using NixOS Infect, 00:09:34.396 --> 00:09:40.196 I think it was, with a nice little NixOS configuration that I could just pop 00:09:40.196 --> 00:09:41.756 up in whichever country I happen to be in. 00:09:41.896 --> 00:09:45.236 So that's a nice little ephemeral VPN endpoint that I could create. 00:09:45.356 --> 00:09:49.236 I think for that I used just a tailscale exit node, but I don't need it to be 00:09:49.236 --> 00:09:53.516 running all the time. So I could just boot it up when I need it and then tear it down after that. 00:09:53.516 --> 00:09:58.196 Yeah I've definitely done the Jellyfin on a quick VPS sync some files over for 00:09:58.196 --> 00:10:01.396 friends especially because for a long time I was running Jellyfin on like an 00:10:01.396 --> 00:10:05.456 older box where you know with my devices for the most part I didn't need to 00:10:05.456 --> 00:10:09.436 be transcoding dynamically like my stuff worked and it could really support 00:10:09.436 --> 00:10:13.296 at least one transcode but if I was trying to like watch with a friend or like really share it 00:10:13.376 --> 00:10:16.816 just wasn't going to work but if we I was specifically doing that like especially 00:10:16.816 --> 00:10:20.176 when maybe some Star Trek was coming out or something yeah just sync a couple 00:10:20.176 --> 00:10:23.856 seasons over stand up at Jellyfin share it with them and tear it down when we're done. 00:10:24.476 --> 00:10:26.296 And that's almost a perfect solution. 00:10:27.593 --> 00:10:33.053 But it has, I think, one major flaw, and that is every time you did this, 00:10:33.233 --> 00:10:34.373 you had to upload the media. 00:10:34.893 --> 00:10:35.053 Yeah. 00:10:35.473 --> 00:10:38.793 So we were thinking, wouldn't it be pretty neat if you could have a disposable 00:10:38.793 --> 00:10:42.913 server, like, say, a Jellyfin instance, maybe to watch a season of a show with 00:10:42.913 --> 00:10:45.613 a friend, and once you're done, you could totally destroy the server, 00:10:45.633 --> 00:10:48.753 but the storage would be persistent. 00:10:49.613 --> 00:10:52.933 So you could quickly start up this ready-to-go self-hosted app, 00:10:53.073 --> 00:10:57.033 and you would have it auto-connect to remote storage, and then you would just 00:10:57.033 --> 00:10:59.073 finish the final bits of setup, and it'd be good to go. 00:10:59.813 --> 00:11:03.793 But the trick is, is how do you do that? And so we made an attempt. 00:11:03.993 --> 00:11:08.333 We set out to solve this in our own ways. Chris, myself, using, 00:11:08.453 --> 00:11:12.593 yeah, that's me, using a new Podman workflow that's still new to me. 00:11:12.793 --> 00:11:15.613 I was taking advantage of Podman Desktop and solving this. 00:11:16.213 --> 00:11:19.813 and then Wes took more of a Nix workflow route to see how he could solve this. 00:11:19.993 --> 00:11:23.873 So what we thought we would do is we'd present our setups to Brent and he could 00:11:23.873 --> 00:11:26.693 score them on a few areas like a point for cleverness of the setup, 00:11:26.953 --> 00:11:30.513 a point for easy for others to replicate like those of you in the audience, 00:11:31.053 --> 00:11:34.993 a point of everything needed to work is included and then five points if it 00:11:34.993 --> 00:11:37.673 actually works, which Brent can be the determinant of. 00:11:37.793 --> 00:11:43.113 So that's what we thought with the disposable server and ideally you could apply 00:11:43.113 --> 00:11:46.593 this to all kinds of self-hosted apps like I mentioned, audio bookshelf and others. 00:11:47.153 --> 00:11:50.253 And if nothing else, even if this isn't something you'd necessarily want to 00:11:50.253 --> 00:11:55.413 do, it's a really fun way to explore some of the really powerful technologies built into Linux. 00:11:58.690 --> 00:12:03.110 1password.com slash unplugged. Take the first step to better security for your 00:12:03.110 --> 00:12:06.530 team by securing credentials and protecting every application, 00:12:06.770 --> 00:12:08.250 even unmanaged shadow IT. 00:12:08.450 --> 00:12:13.470 You can learn more at 1password.com slash unplugged. That's 1password.com slash 00:12:13.470 --> 00:12:15.610 unplugged, and it's all lowercase. 00:12:15.990 --> 00:12:20.490 If you're a security or IT professional, you've got a mountain of assets to 00:12:20.490 --> 00:12:23.710 protect. Devices, identities, and applications. 00:12:24.330 --> 00:12:28.810 It's a lot, and it can create a mountain of security risk too. 00:12:29.250 --> 00:12:34.190 Fortunately, you can conquer that mountain of security risk with 1Password extended access management. 00:12:34.550 --> 00:12:39.090 You know, over half of IT pros say that securing SaaS apps is their biggest challenge. 00:12:39.690 --> 00:12:42.290 Well, with the growing problem of SaaS sprawl and shadow IT, 00:12:42.590 --> 00:12:44.590 it's not hard to see why, really. 00:12:44.950 --> 00:12:50.310 So thankfully, Trileca by 1Password can discover and secure access to all your apps, managed or not. 00:12:50.750 --> 00:12:54.350 Trileca by 1Password inventories every app in use at your company. 00:12:54.350 --> 00:12:58.650 Then, pre-populated app profiles assess the SaaS risks, letting you manage, 00:12:58.870 --> 00:13:04.810 access, optimize, spend, and enforce security best practices across every app your employees use. 00:13:05.310 --> 00:13:08.830 Treleka by 1Password provides a complete solution for SaaS access governance, 00:13:08.910 --> 00:13:12.930 and it's just one of the ways extended access management helps teams strengthen 00:13:12.930 --> 00:13:14.570 compliance and security. 00:13:14.970 --> 00:13:18.210 My friends and family have been using 1Password for years. I couldn't imagine 00:13:18.210 --> 00:13:19.950 their online life without it. 00:13:20.230 --> 00:13:23.930 And now 1Password's award-winning password manager that's trusted by millions 00:13:23.930 --> 00:13:28.550 of users from IBM to Slack, now they're securing more than just passwords with 00:13:28.550 --> 00:13:30.670 1Password Extended Access Management. 00:13:30.870 --> 00:13:34.670 So take the first step to better security for your team by securing credentials 00:13:34.670 --> 00:13:38.410 and protecting every application, even unmanaged shadow IT. 00:13:38.610 --> 00:13:42.230 You need to learn more by going to 1Password.com slash unplugged. 00:13:42.270 --> 00:13:44.070 That supports the show. It's all lowercase. 00:13:44.270 --> 00:13:47.270 It's 1Password.com slash unplugged. 00:13:50.477 --> 00:13:53.917 Well, Chris, as we heard in last episode, you're now living the cloud native 00:13:53.917 --> 00:13:58.357 lifestyle. So I'm curious if you took that route to build your little disposable server. 00:13:58.517 --> 00:14:05.177 You know, I did. I'm embracing this. And this actually gave me a vast, 00:14:05.697 --> 00:14:10.677 complex, somewhat confusing world of opportunity and options. 00:14:11.477 --> 00:14:18.777 So I could start with a universal UBI image of RHEL 10, which they have micro, 00:14:18.937 --> 00:14:19.977 minimal, and a base image. 00:14:20.517 --> 00:14:23.657 that'd be pretty neat and i saw i kind of started there because i thought hmm 00:14:23.657 --> 00:14:28.277 maybe i could build this on a long-term base so then you know i wouldn't really 00:14:28.277 --> 00:14:29.637 have to mess with this for years, 00:14:30.357 --> 00:14:33.437 and this would be great for this style thing so i could have one for audio bookshelf 00:14:33.437 --> 00:14:37.597 one for jellyfin and you know but things 00:14:37.597 --> 00:14:42.817 like jellyfin need modern ffmpeg amongst many other things so i could sit there 00:14:42.817 --> 00:14:48.037 and kind of ram it in to rel but i scratched that idea because what i saw was 00:14:48.037 --> 00:14:54.297 there's a plethora of images based on Fedora and often just straight up upstream Fedora 42. 00:14:54.777 --> 00:14:57.857 This is nice because you get in there, you got DNF, so you can actually install 00:14:57.857 --> 00:15:00.217 stuff. The rel images didn't have DNF. 00:15:00.737 --> 00:15:05.597 So that meant super easy to get FFM Peg and friends going, easy to get our clone 00:15:05.597 --> 00:15:06.677 going, which I'll talk about more. 00:15:06.797 --> 00:15:07.977 And you are a Fedora fan. 00:15:08.497 --> 00:15:08.897 But... 00:15:10.091 --> 00:15:14.471 Not super great for getting Jellyfin going. There's just a lot of repositories 00:15:14.471 --> 00:15:17.551 and stuff you got to add. Not everything was available for Fedora 42 yet. 00:15:18.111 --> 00:15:23.611 So I realized I need to think about this from more of a cloud native workflow 00:15:23.611 --> 00:15:27.531 standpoint and start with Jellyfin. 00:15:27.811 --> 00:15:33.511 Why am I trying to ram Jellyfin into an image when I could just start with the 00:15:33.511 --> 00:15:35.151 Jellyfin image with everything working? 00:15:35.311 --> 00:15:38.751 So I went and got the upstream Jellyfin image, which is based on Debian 10 Bookworm. 00:15:38.951 --> 00:15:43.211 No big deal. in there and I'm app getting like a pro. So I got everything I needed installed. 00:15:43.531 --> 00:15:46.771 Had to add a couple of repos to get all the FFmpeg stuff, but no bigs. 00:15:46.871 --> 00:15:48.211 Everything's packaged for Bookworm. 00:15:48.851 --> 00:15:52.851 So what I ended up with is the Jellyfin container and then I abused that to 00:15:52.851 --> 00:15:57.591 include Rclone and Tailscale, which I'm not utilizing at the moment, 00:15:57.611 --> 00:16:00.391 but I thought, boy, I could probably definitely use this with Tailscale at some point. 00:16:00.391 --> 00:16:00.791 Absolutely. 00:16:01.091 --> 00:16:06.951 I installed it in there. And then what I did is I set up Rclone to connect to 00:16:06.951 --> 00:16:08.831 our Nextcloud server that we just updated. 00:16:09.811 --> 00:16:15.091 and have a couple of video folders in my home folder that have just the season 00:16:15.091 --> 00:16:16.471 of TV I want to watch with my friends. 00:16:17.151 --> 00:16:19.591 And I have our clone connecting over web dev. And, you know, 00:16:19.631 --> 00:16:21.591 our clone has a mode specifically for next cloud. 00:16:22.191 --> 00:16:26.871 And that goes in there and that creates a mount called slash mount slash horse. 00:16:27.391 --> 00:16:30.551 And in there, when you go into the slash horse, you see the TV directory and 00:16:30.551 --> 00:16:34.211 then you have all the Star Trek season one for Star Trek, the original series, of course. 00:16:37.071 --> 00:16:42.671 however and maybe i'll lose some points for this i used podman desktop to set 00:16:42.671 --> 00:16:45.991 this up which was really great it really let me explore this quick and iterate 00:16:45.991 --> 00:16:48.431 through ideas really fast so i like that about it. 00:16:48.431 --> 00:16:52.551 And then what i mean what was that like it were you sort of hacking on the container 00:16:52.551 --> 00:16:54.731 file there and like rebuilding with podman desktop. 00:16:54.731 --> 00:16:59.791 Yeah so and so what's really you know just one step easier is when you launch 00:16:59.791 --> 00:17:05.351 a container inside Podman desktop it immediately opens up a shell inside the container. 00:17:06.235 --> 00:17:10.095 Which, you know, no big deal, but it's handy. It's really, so you can just immediately 00:17:10.095 --> 00:17:14.675 get to work and, you know, you can copy and paste between your web browser and 00:17:14.675 --> 00:17:16.595 the Podman desktop terminal session. 00:17:16.755 --> 00:17:20.575 And so it's, it really feels like a first class terminal experience inside the 00:17:20.575 --> 00:17:23.535 container. So you're just getting immediately to work and you're building just 00:17:23.535 --> 00:17:27.655 like you would any Linux system that you know in building out inside this container. 00:17:27.795 --> 00:17:33.695 And then Podman desktop just gives you a export button and it tars up the whole thing for you. 00:17:33.695 --> 00:17:37.975 But if I could have one verbal feature request for Podman Desktop, 00:17:38.335 --> 00:17:42.855 it would be to tweak some of the container settings after you've created the container. 00:17:43.055 --> 00:17:48.435 And one of the things that I couldn't change after I created it was including 00:17:48.435 --> 00:17:53.515 new devices and changing some of the environmental options. 00:17:53.515 --> 00:17:55.675 Those are sort of baked in once you've created the container. 00:17:55.675 --> 00:17:58.435 You have an option at creation to add that stuff. 00:17:59.295 --> 00:18:04.335 But like a dummy, I didn't think about the fact that this isn't a complete Linux environment. 00:18:04.395 --> 00:18:09.375 And so I needed to have Fuse support for our clone, not only inside the container, 00:18:09.395 --> 00:18:12.315 but I needed Fuse support on the host OS. 00:18:12.615 --> 00:18:18.355 Well, this was a brand new Bluefin setup that I just did on the road last week. 00:18:18.455 --> 00:18:21.175 And so I didn't really have much loaded on this. So first I had to get Fuse 00:18:21.175 --> 00:18:22.455 working on the host system. 00:18:22.915 --> 00:18:26.395 And then I realized I couldn't go back and proactively modify these settings 00:18:26.395 --> 00:18:27.955 in the Podman container. 00:18:28.515 --> 00:18:31.015 So I couldn't pass through the fuse device like I needed to, 00:18:31.175 --> 00:18:33.155 so that way the container environment could use fuse. 00:18:33.495 --> 00:18:37.595 So I exported the thing out, and I did the right thing, and I sent it over to Wes. 00:18:38.235 --> 00:18:41.035 And I said, Wes, take a look at this. Tell me what you think. 00:18:41.395 --> 00:18:43.875 And unfortunately, I could not access the file. 00:18:44.115 --> 00:18:44.815 Oh, really? 00:18:44.935 --> 00:18:45.195 Yeah. 00:18:45.875 --> 00:18:51.015 Ah, okay, all right, okay. So I didn't get the fuse mount working properly, 00:18:51.015 --> 00:18:56.595 but I think if I had set it up properly in the first place and passed that device through. 00:18:56.595 --> 00:18:58.015 I added it at runtime, I would think. 00:18:58.275 --> 00:19:02.255 Well, also, I think I could edit the YAML that actually sets up the whole thing. 00:19:02.375 --> 00:19:03.695 Oh, yeah, and then rebuild it if you need to. 00:19:03.855 --> 00:19:10.375 And I opened that up. God bless. But Podman Desktop, it's like using front page for YAML. 00:19:10.535 --> 00:19:15.655 Dude, there's like every option that needs or could be defined is defined in this file. 00:19:15.775 --> 00:19:22.135 And I opened this thing up, and I'm like, oh, maybe I'll just worry about this later. And I closed it. 00:19:22.635 --> 00:19:26.235 And I was like, this is too much scope creep for what I'm trying to do. 00:19:26.235 --> 00:19:29.075 So I think we have some extra work to do after the show, because I want to see 00:19:29.075 --> 00:19:30.155 this now. I want to get it working. 00:19:30.335 --> 00:19:34.795 Yeah, yeah. So the idea, I thought, was pretty sound. And that is I've created 00:19:34.795 --> 00:19:40.795 my own version of a jellyfin container that I can throw on any VPS, and it would start... 00:19:42.002 --> 00:19:46.682 It would mount the NextCloud file storage. It would start Jellyfin. 00:19:46.982 --> 00:19:50.462 Then I would go to the URL, which I'd be so lazy I wouldn't even register a 00:19:50.462 --> 00:19:53.922 domain for. I would just raw the IP right into the browser. 00:19:54.362 --> 00:19:57.242 And then I would just say, you know, scan the files because it would be a different 00:19:57.242 --> 00:19:58.582 set of files from time to time. 00:19:59.022 --> 00:20:02.482 And I have a Jellyfin server. And then we would watch the season one of Star 00:20:02.482 --> 00:20:03.822 Trek, the original series, like we should. 00:20:04.442 --> 00:20:06.802 And then I would just blow that container away. 00:20:07.762 --> 00:20:11.142 And next time I want to do it, those files are still there. so I could spin 00:20:11.142 --> 00:20:14.162 up another one and I don't have to re-upload files or I can change them, 00:20:14.182 --> 00:20:16.922 you know, at my own cadence, at my own will. 00:20:17.102 --> 00:20:21.202 And then the next time I spin up this disposable jellyfin server, I'm good to go. 00:20:21.402 --> 00:20:24.222 The storage remains persistent and I could do the same thing with a selection 00:20:24.222 --> 00:20:27.902 of audio books and all of that. So I love the idea. 00:20:28.402 --> 00:20:32.182 I just didn't get it quite across the finish line because I was also learning 00:20:32.182 --> 00:20:33.682 Podman desktop at the same time. 00:20:34.042 --> 00:20:38.642 Yeah, and you know, the Fuse stuff does add a device sharing and having to pass 00:20:38.642 --> 00:20:42.302 through the right stuff with containers can be. Something that takes a few tweaks to get right. 00:20:42.682 --> 00:20:46.042 So Judge Brent, I'd like to know what you think of the cleverness of my setup. 00:20:46.182 --> 00:20:47.922 That's one of the scoring here. 00:20:48.062 --> 00:20:52.102 I'm going to give you a point for cleverness. I think you decided on a path. 00:20:52.242 --> 00:20:55.762 You went for it. And I think it's quite a nice little solution if you can get it working. 00:20:56.642 --> 00:21:01.482 Can I argue the reproducibility for others? 00:21:02.242 --> 00:21:06.642 You could do this on your own. All you need is Podman Desktop and then get the 00:21:06.642 --> 00:21:07.962 Jellyfin container and then pop in 00:21:07.962 --> 00:21:10.542 there and app to install this stuff and configure it for your own storage. 00:21:11.222 --> 00:21:14.422 So it's stuff you would just do on your own box, but you're doing it inside a container. 00:21:14.522 --> 00:21:17.722 There's a bit of configuration for others to be able to use this, 00:21:17.842 --> 00:21:18.902 but it doesn't sound too daunting. 00:21:19.942 --> 00:21:22.942 Right, and for others that would be watching Jellyfin, they would just go to 00:21:22.942 --> 00:21:24.202 the URL and it would just work for them. 00:21:24.322 --> 00:21:29.122 So for like burden on the viewer, they don't have to install any kind of VPN. 00:21:29.322 --> 00:21:32.702 It would work on a set-top box. It would work on a phone. It would work on the 00:21:32.702 --> 00:21:35.702 web browser because you're just running on a VPS for a small period of time. 00:21:35.702 --> 00:21:39.922 And you're just handing us an IP or something like that. 00:21:41.492 --> 00:21:45.892 Okay, so everything to work is included, but it doesn't all work. 00:21:46.012 --> 00:21:49.232 So everything that needs to work is included. 00:21:49.412 --> 00:21:54.952 Well, is it? Because you said, you know, Fuse is missing currently to make it all work. 00:21:55.372 --> 00:21:58.432 Well, Fuse is installed. You just, when you set up the container, 00:21:58.452 --> 00:22:00.532 you have to pass through the Fuse device from your host. 00:22:00.572 --> 00:22:01.572 That doesn't sound like everything. 00:22:02.572 --> 00:22:06.072 Well, that's just how containers work. I can't solve for that. 00:22:06.252 --> 00:22:09.312 Oh, fine. Okay. Are you convincing me here? I think you might be. 00:22:09.372 --> 00:22:11.952 I don't know. What do you think, Wes? I think, is everything needed? 00:22:12.132 --> 00:22:14.832 Feels like a stretch. Is everything included to make it work? 00:22:14.952 --> 00:22:19.612 Yeah, maybe a readme for how to launch the thing with the fuse attached. But yeah, I think so. 00:22:19.732 --> 00:22:19.972 You think? 00:22:19.992 --> 00:22:20.412 In principle. 00:22:20.692 --> 00:22:22.452 So the readme is not included? That's the problem? 00:22:22.572 --> 00:22:26.732 Well, like, not yet. Not yet. I think all of this is going to depend on a fuse device, right? 00:22:26.792 --> 00:22:26.912 Fair. 00:22:27.032 --> 00:22:31.052 All these, because you have to have fuse to do, like, the amount of the cloud storage. 00:22:31.052 --> 00:22:33.932 If you're doing the, yeah, tricking jellyfin into thinking it's just more media. 00:22:33.932 --> 00:22:39.552 So I think it's just a dependency. So that means three points for me, 00:22:39.652 --> 00:22:41.372 but I don't get the five points because it doesn't work. 00:22:42.612 --> 00:22:45.792 Does any portion of it work? Cause I'm willing to give like partial points. 00:22:46.072 --> 00:22:47.852 Oh yeah. I mean, jellyfin works. 00:22:48.032 --> 00:22:48.112 Okay. 00:22:48.792 --> 00:22:50.632 Everything works except for the fuse mount. 00:22:50.812 --> 00:22:51.632 Which is critical. 00:22:52.932 --> 00:22:53.332 Yeah. 00:22:55.812 --> 00:22:57.412 I'll give you two points on this one. 00:22:57.992 --> 00:23:00.892 All right. So I get a, I get a total of five points. 00:23:01.012 --> 00:23:04.532 Total of five. That's what you, well, you know, you could, you could improve 00:23:04.532 --> 00:23:06.732 here. But for now, I wish I could have got. 00:23:06.872 --> 00:23:09.952 I'll take my five points. 00:23:11.672 --> 00:23:15.172 Okay, Wes, tell us about your setup. How did you solve this problem? 00:23:15.292 --> 00:23:20.192 Well, it's pretty similar to yours, really. It's just changing out the orchestration, 00:23:20.392 --> 00:23:23.552 tying it together layer to use NixOS and NixOS modules. 00:23:23.892 --> 00:23:24.072 Okay. 00:23:24.512 --> 00:23:27.972 So, you know, to use it, you do need to be running NixOS. 00:23:28.232 --> 00:23:32.412 It needs that as a base because, you know, it'd be packaged up sort of as like 00:23:32.412 --> 00:23:35.852 a flake you could include and then have some module options that you could set. 00:23:37.132 --> 00:23:41.432 For my local testing of this, I just had NixOS spin up a min.io server, 00:23:41.492 --> 00:23:43.112 so it could be an S3 backend. 00:23:43.472 --> 00:23:46.592 I liked what you were doing with WebDev and NextCloud. That's clever, 00:23:46.652 --> 00:23:49.052 but I thought, you know, there might be S3 might be another way. 00:23:49.132 --> 00:23:51.512 You could just sort of have this hanging around if you already have that kind of storage. 00:23:52.152 --> 00:23:56.052 So first things first, it's NixOS, so it's going to be a lot of SystemD, right? 00:23:56.292 --> 00:24:00.672 SystemD sort of plays the role of what Podman or Docker and especially Compose 00:24:00.672 --> 00:24:04.252 does to, like, get all the things going do it in the right order tie them together 00:24:04.252 --> 00:24:05.372 so they can talk to each other, 00:24:05.852 --> 00:24:10.612 so first things first you know systemd starts up r clone which uses r clone 00:24:10.612 --> 00:24:15.632 mount to talk to minio or whatever s3 server so you could just give it whatever 00:24:15.632 --> 00:24:18.692 parameters you want in the config to pass through like what's your endpoint and, 00:24:19.254 --> 00:24:21.534 You're going to also have to pass through credentials, which right now, 00:24:21.594 --> 00:24:25.234 they're just kind of hackily in there. I'd probably migrate that to use a file 00:24:25.234 --> 00:24:27.194 that gets loaded so that's a little more properly done. 00:24:27.634 --> 00:24:33.654 And so then that establishes a mounted file that then, in a second systemd service 00:24:33.654 --> 00:24:37.294 that depends on the first one starting, that just launches Jellyfin. 00:24:37.414 --> 00:24:40.314 So it doesn't reuse the NixOS stuff. It's sort of a second instance of it. 00:24:40.374 --> 00:24:43.614 It has its own separate Jellyfin systemd service that runs. 00:24:44.094 --> 00:24:47.294 And then it's sort of pointing stuff so that like the config 00:24:47.294 --> 00:24:50.134 state dir and databases don't get 00:24:50.134 --> 00:24:52.834 kept they're just stored somewhere that'll get that'll just get wiped when 00:24:52.834 --> 00:24:55.834 you reboot the system but it does get access 00:24:55.834 --> 00:24:59.174 to the media folder mounted from our clone now 00:24:59.174 --> 00:25:02.034 the one thing i didn't get working that i was really hoping to as a stretch 00:25:02.034 --> 00:25:05.974 goal but it looks like it's configured in kind of a messy way in a sqlite database 00:25:05.974 --> 00:25:11.754 not in a config file is i was hoping to have jellyfin pre-configured to just 00:25:11.754 --> 00:25:15.914 be able to to mount the have the collection pre-configured. 00:25:16.054 --> 00:25:18.654 So the library was already set to go to the R clone mount point? 00:25:18.834 --> 00:25:19.374 Yeah, exactly. 00:25:19.714 --> 00:25:20.534 That'd be nice. 00:25:20.694 --> 00:25:21.254 That'd be sweet. 00:25:21.394 --> 00:25:25.134 You could probably copy, I guess, if you wanted to hard code in the pre-configured 00:25:25.134 --> 00:25:26.694 database file. That's a little hacky. 00:25:26.814 --> 00:25:32.814 Or maybe you could have a post-run systemd thing that would use the API to add this. 00:25:33.234 --> 00:25:35.954 Because I know all the paths already. I could hard code those in. 00:25:36.114 --> 00:25:38.414 Just do that and then tell it to scan the library or something. 00:25:38.914 --> 00:25:41.994 So those were stretch goals I did not actually get done, but I tried a little bit. 00:25:42.134 --> 00:25:45.994 Is that something you can define like in the Jellyfin module or something like that? 00:25:46.674 --> 00:25:50.394 Not that I could see. Jellyfin has a bunch of config to like tell it where to 00:25:50.394 --> 00:25:51.574 store stuff in its config. 00:25:52.894 --> 00:25:57.774 And maybe there's some sort of special initialization, but in my searching, I didn't find it. 00:25:58.094 --> 00:26:04.894 What I was eventually able to find is there's like a library.db in sort of the 00:26:04.894 --> 00:26:06.434 state directory that wherever it is. 00:26:06.534 --> 00:26:10.294 By default, it's like .local slash share slash Jellyfin, but you can set that 00:26:10.294 --> 00:26:11.754 with an nvar command line. 00:26:11.754 --> 00:26:18.554 and then there's some tables and if you looked in typed base items there is 00:26:18.554 --> 00:26:21.414 a media browser controller entities collection folder, 00:26:21.954 --> 00:26:26.594 and physical location list and then that seems to have the right stuff so there's 00:26:26.594 --> 00:26:29.114 clearly a bunch of state I don't quite understand that you'd need to replicate. 00:26:29.494 --> 00:26:33.294 Stuffing it into a SQLite database is totally doable but that's where maybe 00:26:33.294 --> 00:26:36.254 doing it via API call might be more practical Yeah. 00:26:36.254 --> 00:26:39.714 Very well maybe Jellyfin also has some sort of startup parameters where you can just pass some. 00:26:39.714 --> 00:26:43.834 Of that stuff That would be nice yeah But I was able to get it working. 00:26:43.834 --> 00:26:49.274 I used a sort of pinch-flat alternative that I found recently that I snuck in 00:26:49.274 --> 00:26:50.934 as a sneaky pick later in the show. 00:26:51.134 --> 00:26:51.374 Oh, good. 00:26:51.594 --> 00:26:55.074 So I was able to use that to just download some YouTube videos into a collection 00:26:55.074 --> 00:26:57.334 format that would work for Jellyfin specifically. 00:26:58.054 --> 00:27:00.394 And then I synced that into MinIO. 00:27:01.283 --> 00:27:04.963 And then I was able to get my system going, point it at that local Meneo, 00:27:05.003 --> 00:27:07.643 so I didn't have to worry about, like, actually syncing these things over the network or anything. 00:27:08.103 --> 00:27:11.343 But it would all just work with whatever S3 provider that you set up. 00:27:11.743 --> 00:27:14.763 Yeah, and then I watched some nature documentary, I forget which one, 00:27:14.923 --> 00:27:18.783 about the largest thermonuclear bomb. So it worked that far. 00:27:18.923 --> 00:27:20.003 That's not a bad way to just set 00:27:20.003 --> 00:27:23.203 up your own private YouTube and let a VPS just turn away at that stuff. 00:27:24.063 --> 00:27:27.463 So definitely a clever setup, I would say, Brent. He gets a point for that, right? 00:27:27.543 --> 00:27:30.943 Yeah, I feel like maybe we should take your cleverness point away, because his seems a... 00:27:30.943 --> 00:27:31.343 Whoa. 00:27:32.183 --> 00:27:32.623 Wow. 00:27:32.843 --> 00:27:34.123 Okay, we'll both give you one. 00:27:34.523 --> 00:27:39.243 But I don't mean to be the bad guy here, but I do want to argue the point for 00:27:39.243 --> 00:27:41.043 easy for others to replicate. 00:27:41.443 --> 00:27:47.703 It is in one sense, but it does depend on Nix OS as the base OS, which is tricky on a VPS. 00:27:47.943 --> 00:27:50.603 Yeah. Where mine you could do on any base OS. 00:27:50.803 --> 00:27:55.563 I do think I could probably, because I was just running ArcLone and Jellyfin, 00:27:55.863 --> 00:27:58.423 I could convert that to containers built with Nix. 00:27:58.523 --> 00:28:01.183 That could be a future option, but I did not do that for this challenge. 00:28:01.583 --> 00:28:04.763 Right, yeah, yeah. So that's the problem, though, because you'd almost be looking 00:28:04.763 --> 00:28:07.383 at a Knicks takeover before you could really make this hum. 00:28:07.843 --> 00:28:12.423 Now, maybe you already have that, but I do love the reproducibility of mine 00:28:12.423 --> 00:28:15.443 in the sense that it's not reproducibility, but the, you know, 00:28:15.843 --> 00:28:18.903 what am I looking for? Portability, the portability. 00:28:19.183 --> 00:28:19.883 Yeah, it runs anywhere Potton runs. 00:28:20.123 --> 00:28:21.763 Yeah. That's nice. 00:28:22.223 --> 00:28:24.083 That is a very real trade-off for sure. 00:28:24.103 --> 00:28:25.643 I don't know, Wes, I don't know. 00:28:25.643 --> 00:28:26.883 I'm willing to take one last point there. 00:28:26.883 --> 00:28:28.283 You have to be the decider, though. 00:28:28.283 --> 00:28:29.603 Yeah, now you've seen both options. 00:28:29.763 --> 00:28:31.863 For the fun of the game, I'll give him a zero on this one. 00:28:33.063 --> 00:28:38.243 Oh, okay. So one point for Wes and no point there. Okay. Everything needed included 00:28:38.243 --> 00:28:40.443 to make it work. I think you got this one, right? 00:28:40.483 --> 00:28:44.183 Yeah. I mean, you have to specify like the S3 endpoint and connection stuff 00:28:44.183 --> 00:28:47.023 and all that, but it handles everything after that. 00:28:47.123 --> 00:28:48.183 So point number two for you. 00:28:48.263 --> 00:28:51.243 Well, I don't know. I have an argument here. The whole NixOS requirement. 00:28:51.743 --> 00:28:53.743 Yeah, that's not included. I don't set that up for you. 00:28:53.743 --> 00:28:56.463 It's also, right? It's quite a hard one. 00:28:56.463 --> 00:28:57.943 I could probably build a VM image. 00:28:57.943 --> 00:29:02.303 Oh, no! Okay, all right. So let me think about this. Hmm, hmm, 00:29:02.663 --> 00:29:03.663 hmm. That is a good point. 00:29:03.883 --> 00:29:05.483 But Chris didn't install Podman for you. 00:29:05.583 --> 00:29:08.583 Oh, I guess you could make that argument. Yeah, okay. Yeah. 00:29:08.803 --> 00:29:09.543 I'll keep going, Wes. 00:29:09.543 --> 00:29:12.183 Keep convincing me. It's arguably a lot simpler, but... 00:29:13.023 --> 00:29:17.063 And it's arguably going to be, like, included on some of these VPSs already. 00:29:18.683 --> 00:29:20.183 And it's like one line with next. 00:29:20.563 --> 00:29:21.863 I'll give you a half point. 00:29:22.583 --> 00:29:24.203 Okay, half point. We're getting granular. 00:29:24.343 --> 00:29:28.183 1.5 points right now for Wes. Now, here's where you're going to make it up, 00:29:28.263 --> 00:29:30.923 though, Wes, because you get five points if it works. 00:29:31.663 --> 00:29:33.303 So, Wes, did it work? 00:29:33.383 --> 00:29:33.903 I think it worked. 00:29:34.083 --> 00:29:36.403 It worked? Yes. I can pull it up here. 00:29:39.023 --> 00:29:43.123 So that means 6.5 points. I can verify. There it is. 00:29:43.223 --> 00:29:44.463 Oh, yeah, there it is. Full episode. Very nice. 00:29:44.543 --> 00:29:46.063 National Geographic. That's an NGO. 00:29:47.823 --> 00:29:52.223 So six and a half points for Wes. And Chris, you got a big five points. 00:29:52.343 --> 00:29:54.563 Oh, was it four? I thought I got it. Okay, five. I'll take five. 00:29:54.843 --> 00:29:57.123 That was four. If you want to argue for four, go for it. 00:29:57.783 --> 00:30:00.203 I wonder what I... I'm trying to think back what I could have done differently... 00:30:01.237 --> 00:30:05.997 maybe not have used R clone and did something else. I don't know what else I 00:30:05.997 --> 00:30:08.037 could have done. How else to solve the storage problem. 00:30:08.217 --> 00:30:12.277 You do want something, unless Jellyfin has a way to have remote storage natively, 00:30:12.337 --> 00:30:14.897 you want something that will look like a normal. 00:30:15.257 --> 00:30:17.877 But you could maybe, I mean, you could do Samba or NFS. 00:30:18.037 --> 00:30:22.777 Or what about solving it at the host? Now, this would be a dependency in a case, 00:30:22.857 --> 00:30:26.517 but if I was just thinking about the way I would do this, I might mount that 00:30:26.517 --> 00:30:28.517 fuse file system on the host. 00:30:28.517 --> 00:30:31.217 And then not bother with permissions or pass through. 00:30:31.477 --> 00:30:34.697 Yeah, and then it's just like, you know, map it through to the container and 00:30:34.697 --> 00:30:38.917 like in slash media inside the container is actually pointing at a mount on the host file system. 00:30:39.217 --> 00:30:43.417 Doesn't mean you have more host container coupling and more orchestration concerns 00:30:43.417 --> 00:30:45.517 for the host. But there is simplicity to it. 00:30:45.577 --> 00:30:49.437 But then it means I wouldn't be having to add fuse to the Jellyfin container. 00:30:50.297 --> 00:30:53.177 I'd only be going in there. And, oh, and R clone. 00:30:53.817 --> 00:30:56.197 The only thing that I think it'd still be worth adding is tail scale. 00:30:56.777 --> 00:31:01.157 that is really handy because if you do have a tail net and you just put jellyfin on your tail net yeah. 00:31:01.157 --> 00:31:03.917 Definitely like mesh network vpn integration. 00:31:03.917 --> 00:31:04.577 So you can. 00:31:04.577 --> 00:31:06.917 Just wherever you stand it up it automatically connects to the storage. 00:31:06.917 --> 00:31:10.777 There was a version of this too we discussed where the application runs on the 00:31:10.777 --> 00:31:14.197 host but it's using network namespaces with something like netbird and then 00:31:14.197 --> 00:31:19.977 you just if you were watching on a pc you could have a browser that when it 00:31:19.977 --> 00:31:23.957 launches connects to that namespace that has a similar namespace on your local 00:31:23.957 --> 00:31:26.717 machine that also is on a network or a tail net. 00:31:27.017 --> 00:31:31.157 And then the browser is just on that network namespace and the Jellyfin application 00:31:31.157 --> 00:31:33.677 is on that network namespace and maybe they're both on a mesh VPN. 00:31:34.717 --> 00:31:38.897 And you could just do it that way, like that per application network namespace 00:31:38.897 --> 00:31:41.897 layer, which would be a really fun way to solve this, but there's no way to 00:31:41.897 --> 00:31:43.037 solve that for the set-top box. 00:31:43.097 --> 00:31:45.677 It'd only work on the desktop, a Linux desktop. 00:31:46.957 --> 00:31:49.057 But maybe there's another way to do it. Let us know how you do it. 00:31:49.157 --> 00:31:52.377 You can send us a boost or go to linuxunplugged.com slash contact. 00:31:55.377 --> 00:31:59.037 If you'd like to support the show, this is independent media that we make for you. 00:31:59.277 --> 00:32:03.517 You can support us directly by becoming a member at linuxunplugged.com slash membership. 00:32:03.537 --> 00:32:07.517 You get the bootleg, which has a whole bunch more content, and I think makes 00:32:07.517 --> 00:32:08.497 the whole membership worth it. 00:32:08.557 --> 00:32:11.517 But if you like something a little shorter, still with all those Editor Drew 00:32:11.517 --> 00:32:14.377 touches, then you can get an ad-free version of the show. 00:32:14.497 --> 00:32:16.917 You can do the Jupiter Party membership and support all the shows, 00:32:16.977 --> 00:32:18.457 including some new stuff we're working on. 00:32:18.957 --> 00:32:22.817 That's at jupiter.party. Or you can support just the show, linuxunplugged.com 00:32:22.817 --> 00:32:27.797 slash membership. You can also support each individual production with a boost. 00:32:28.017 --> 00:32:30.917 And Fountain FM has some really incredible things in the works. 00:32:30.917 --> 00:32:33.217 It makes it super easy to boost, and it's only going to get easier. 00:32:33.377 --> 00:32:38.817 Check that out at Fountain.fm. Then you also get all the extra podcasting 2.0 features as well. 00:32:38.977 --> 00:32:42.797 And, of course, you can always sponsor. If you think maybe there's a product 00:32:42.797 --> 00:32:46.237 you have or a service that the world's best Linux audience should know about, 00:32:46.637 --> 00:32:49.297 reach out. Chris at jupiterbroadcasting.com. 00:32:51.957 --> 00:32:58.197 Well this week we were lucky enough to receive two space balls boosts from our dear hybrid sarcasm, 00:33:05.463 --> 00:33:10.543 First question here. So, Chris, why Bluefin and not Silverblue, 00:33:10.883 --> 00:33:13.043 Aurora, Bazite, or something else? 00:33:13.663 --> 00:33:18.263 I have one part of the answer. He's a Gnome guy now. So it couldn't be Aurora. 00:33:18.543 --> 00:33:22.363 Well, I actually, that is kind of it. I've kind of gone for a Gnome workflow 00:33:22.363 --> 00:33:25.063 on my laptops, and I was on the go, 00:33:25.283 --> 00:33:30.023 and this is the machine I'm going to be using for a bit for the TUI challenge 00:33:30.023 --> 00:33:34.403 and whatnot, and I kind of wanted to get into this workflow quick. 00:33:35.223 --> 00:33:39.923 and something that was just while I was on a trip I could swap over to and not 00:33:39.923 --> 00:33:41.123 spend a lot of time setting up. 00:33:41.243 --> 00:33:44.643 And so Bluefin seemed like a good fit for that when I was sort of, 00:33:44.663 --> 00:33:47.123 you know, just weighing my options there. 00:33:47.323 --> 00:33:51.663 Yeah, I wonder maybe if one comparison that's useful would be just Bluefin versus Silverblue. 00:33:52.383 --> 00:33:55.763 Yeah, I felt like it was just sort of more ready to go. 00:33:56.403 --> 00:33:59.923 You know, like they've taken some design choices there. 00:34:00.063 --> 00:34:03.743 They've made some choices like Brew. like there's just things in there that 00:34:03.743 --> 00:34:06.603 just make it ready to go compared to like I felt like Silverblue would be I'd 00:34:06.603 --> 00:34:08.283 spend the whole day setting up my laptop maybe. 00:34:08.283 --> 00:34:10.763 It's more of a little base that you can start with and make something great 00:34:10.763 --> 00:34:12.723 but it's a little more lean than what you get. 00:34:12.723 --> 00:34:17.783 Yeah I don't know if this is where I stay for this what I was fantasizing about 00:34:17.783 --> 00:34:22.923 I don't know maybe this was just me being a rookie I was fantasizing about somehow 00:34:22.923 --> 00:34:24.323 remixing Bluefin to my own tastes. 00:34:25.203 --> 00:34:26.963 Yeah I mean you can build your own image from there. 00:34:26.963 --> 00:34:30.263 You're probably using Podman desktop that's what I was trying to figure out 00:34:30.263 --> 00:34:33.963 but I never quite got there I haven't gotten there yet, but that's where I was hoping to take it. 00:34:34.063 --> 00:34:37.203 So I started with bluefin thinking then I would from there take it in my own direction. 00:34:37.863 --> 00:34:38.343 Chrisfin. 00:34:40.423 --> 00:34:41.303 Fishfin? No. 00:34:41.543 --> 00:34:47.143 I like that. And the second Spaceballs boost here. 00:34:48.143 --> 00:34:53.063 Also, can we get an update on the race for the 2025 Boosties winner? 00:34:56.504 --> 00:35:00.464 Okay, request noted. We're recording earlier this week, so with the timing, 00:35:00.724 --> 00:35:04.224 I have not yet pulled those, but probably for the next episode it could. 00:35:04.384 --> 00:35:08.624 I'll tell you what, the news is going to be bad. You know, it's just we've had 00:35:08.624 --> 00:35:10.124 a few changes in the technology space. 00:35:10.264 --> 00:35:15.844 Albi has transitioned from a custodial service to hub, which means some of the 00:35:15.844 --> 00:35:18.084 podcasting Twitter apps are harder to boost with. 00:35:18.604 --> 00:35:21.224 And, you know, there's been a lot of price action. So I think it's going to 00:35:21.224 --> 00:35:24.064 be a lot less than we were at this point last year. 00:35:24.404 --> 00:35:27.364 But maybe a little competition will... Spurs off. 00:35:27.564 --> 00:35:32.744 Yeah, perhaps. BHH32 came in with 2,500 sats. 00:35:33.764 --> 00:35:38.924 I'm working on trying to make a video player as a Tui with real video, not ASCII videos. 00:35:39.164 --> 00:35:43.184 I've got a very rough prototype working that prints the controls and the time 00:35:43.184 --> 00:35:47.044 elapsed. The plan is to allow Jellyfin and YouTube streaming alongside local videos. 00:35:47.244 --> 00:35:50.424 I hope to have enough done in time for the Tui challenge for you fellas. 00:35:50.584 --> 00:35:51.044 Wow. 00:35:51.444 --> 00:35:54.484 Nice. Yes, that is so great. 00:35:54.524 --> 00:35:56.164 We might just have a hope yet. 00:35:57.184 --> 00:35:57.624 Phew. 00:35:57.624 --> 00:36:02.504 I would say send the project along like whichever state it's in i'm sure our 00:36:02.504 --> 00:36:05.944 audience would love to give it a test we would love to give it a test and to 00:36:05.944 --> 00:36:07.064 help you develop this thing. 00:36:07.524 --> 00:36:08.084 Yeah if. 00:36:08.084 --> 00:36:14.304 You need the bugs found we got a guy gene bean boosts in with 5 468 sas, 00:36:17.044 --> 00:36:21.784 chris i am stoked to hear what you are going to do with bluefin and image mode. 00:36:21.784 --> 00:36:27.184 I am getting just started it is a whole world gene i realized i have a lot to 00:36:27.184 --> 00:36:30.144 learn learning quick though treading water at least. 00:36:30.144 --> 00:36:33.424 By the way lazy git is a great tui tool. 00:36:33.424 --> 00:36:39.244 Okay yeah lazy git i've heard that is a good one we should check that out right we should check that it. 00:36:39.244 --> 00:36:40.284 Is good i've tried it a little bit. 00:36:40.284 --> 00:36:41.964 I like that gene bean it's good to hear from him. 00:36:44.584 --> 00:36:48.184 Another good guy is zach attack 6 000 sat sent in this week, 00:36:52.209 --> 00:36:55.909 I'm happy to hear you jumped to Bluefin. The biggest change for me was getting 00:36:55.909 --> 00:37:00.129 used to using Brew to install terminal apps and app containers. 00:37:01.889 --> 00:37:02.929 Apps in containers. 00:37:03.089 --> 00:37:08.309 You know, Brew for me isn't too bad just because it was my lifeline anytime I had to use macOS. 00:37:08.589 --> 00:37:10.329 Yeah, you are familiar with Brew. 00:37:10.449 --> 00:37:10.589 Yeah. 00:37:11.149 --> 00:37:13.149 You know how to relink all your Python interpreters? 00:37:13.229 --> 00:37:15.289 I'm sorry? Do you need to lay down? 00:37:15.649 --> 00:37:19.609 Zach continues here. The escape hatch of layering items for the Fedora repo 00:37:19.609 --> 00:37:23.809 is handy as well. but it used to be used only when needed. 00:37:24.329 --> 00:37:27.529 Ublue handles the updating of DistroBox containers, which is very slick. 00:37:27.689 --> 00:37:31.509 I'm putting Aurora on my parents' system with a weekly reboot, 00:37:31.709 --> 00:37:35.989 knowing I don't have to worry about it getting behind on updates or something breaking in it. 00:37:36.349 --> 00:37:36.909 Yeah. 00:37:37.129 --> 00:37:37.589 That's a good test. 00:37:37.669 --> 00:37:39.689 Yeah. That's so nice. 00:37:40.049 --> 00:37:46.649 I think when a distro gets to friends and family status, that is a good test for it. 00:37:47.229 --> 00:37:50.809 Handling the DistroBox containers too is nice because I imagine that is something 00:37:50.809 --> 00:37:53.169 I'm going to be taking advantage of. Thank you, Zach Attack. 00:37:53.309 --> 00:37:55.089 That's a great field report. Appreciate it. 00:37:55.689 --> 00:37:58.589 Jordan Bravo is here with 5,555 sats. 00:38:03.389 --> 00:38:07.789 I finally got a chance to set up AlbiHub on my home server. Heck yes, buddy. 00:38:07.949 --> 00:38:08.309 Nice, well done. 00:38:08.989 --> 00:38:13.269 Well done. So now he's boosting from Podverse, which he's connected to his AlbiHub. 00:38:13.369 --> 00:38:17.129 So this is a fully free software, self-hosted stack. 00:38:17.449 --> 00:38:21.449 Peer to peer. Albi Hub is free software. Podverse is free software. 00:38:21.589 --> 00:38:23.109 The Lightning Network is free software. 00:38:23.549 --> 00:38:26.529 He says, by the way, it looks like the most recent Podverse release for Android 00:38:26.529 --> 00:38:29.609 was from mid-2024. Has the project been abandoned? No. 00:38:31.469 --> 00:38:35.369 No, they've decided to go the direction of a rewrite. As you can imagine, 00:38:35.469 --> 00:38:36.769 that takes all of their focus. 00:38:37.089 --> 00:38:39.869 But they are fired up about it. They are passionate about it. 00:38:39.909 --> 00:38:41.789 They've got a lot of great ideas and lessons learned. 00:38:42.069 --> 00:38:45.529 I've definitely seen Mitch active in Matrix helping folks and answering questions. 00:38:45.529 --> 00:38:50.029 I'm very excited about the next release of Podverse. Or, you know, 00:38:50.069 --> 00:38:51.669 when they get the rewrite done. That's big. 00:38:52.049 --> 00:38:55.709 Hey, do you remember Boost CLI? We used to get a few folks sending boosts in 00:38:55.709 --> 00:38:57.309 via CLI. I haven't seen that in a bit. 00:38:57.549 --> 00:38:58.109 Oh, yeah. 00:38:58.329 --> 00:39:01.549 Maybe we need to make sure there's Boost CLI plus AlpiHub Combat. 00:39:01.869 --> 00:39:06.269 Yeah, we need a Boost CLI sound to recognize the heroes. 00:39:06.329 --> 00:39:07.129 Make it worth the wine. 00:39:08.049 --> 00:39:09.449 Thank you, Jordan. Good to hear from you. 00:39:09.769 --> 00:39:15.329 And our final boost today, Jor-El69 comes in with 15,000 sets. 00:39:16.949 --> 00:39:20.749 Or as Drell puts it 150 hundreds sats Oh, 00:39:23.908 --> 00:39:28.708 I'm a bit late for the final self-hosted episode, but I want to say that the 00:39:28.708 --> 00:39:31.608 self-hosted podcast was my entry point to the Jupyter network, 00:39:31.608 --> 00:39:33.068 and I will really miss it. 00:39:33.608 --> 00:39:38.748 Many thanks to Alex and to y'all for reigniting my passion for Linux and owning my data. 00:39:38.968 --> 00:39:40.848 Hey, oh, yes, more of that. 00:39:40.948 --> 00:39:41.548 Love to hear it. 00:39:42.448 --> 00:39:46.148 Alex mentioned in 150 that he's going to be getting a bus and traveling the 00:39:46.148 --> 00:39:49.428 country, so now we're just trying to talk him into coming up here and doing an episode with us. 00:39:49.488 --> 00:39:50.148 Maybe some meetups. 00:39:50.348 --> 00:39:53.368 Good road trip, right? It'd be a good road trip. All right, thank you, everybody. 00:39:53.368 --> 00:39:56.488 we are recording early this week so it's it's a humble boost 00:39:56.488 --> 00:40:02.148 summary but we'll get to it it's uh not so well we had 21 streamers and collectively 00:40:02.148 --> 00:40:08.828 they stacked 29 821 sats thank you everybody who streams them sats as you listen 00:40:08.828 --> 00:40:12.948 to the show and then when you combine that with our boosts we stacked i think 00:40:12.948 --> 00:40:15.948 our lowest this year 89 034 sats, 00:40:24.828 --> 00:40:28.468 But we are recording a little early and we thought something we've never done 00:40:28.468 --> 00:40:32.968 before since, you know, the beginning of taking the boost. 00:40:33.108 --> 00:40:37.108 I think when we set the 2K sat limit, let's do a boost sale. 00:40:37.248 --> 00:40:42.208 So we're going to lower the cutoff that we read on the show to 1000 sats since 00:40:42.208 --> 00:40:43.828 the sat price has gotten a little higher. 00:40:43.828 --> 00:40:46.748 So if you've been wanting to boost in and get your message read on the show 00:40:46.748 --> 00:40:52.148 for next episode, the cutoff will be 1000 sats and we'll read 1000 sats and 00:40:52.148 --> 00:40:54.888 above in our boost segment. 00:40:55.168 --> 00:40:58.108 So it's a good chance to get a message, get your message in on sale. 00:40:58.908 --> 00:41:01.688 As they say, crazy Brent's boost sale. 00:41:01.868 --> 00:41:03.308 We can call it that. I'm fine with 00:41:03.308 --> 00:41:07.008 that. I'd also like to know what people thought of our Red Hat coverage. 00:41:07.208 --> 00:41:10.148 Sometimes the boost coming in is a little bit of a signal for us. 00:41:10.148 --> 00:41:12.948 But if you enjoyed the coverage, let us know. 00:41:13.048 --> 00:41:16.488 If you didn't, also, please let us know. That way we can change things next time. 00:41:17.128 --> 00:41:21.988 It's a lot of work we could just avoid. I suppose people don't like it. That's a great point. 00:41:22.208 --> 00:41:25.388 But yes, that is always a feedback that we very much consider. 00:41:28.560 --> 00:41:32.060 All right, we have not one, but two picks for you before we get out of here. 00:41:32.320 --> 00:41:35.800 And this first pick, and I'm really glad Wes found a second pick, 00:41:35.940 --> 00:41:39.980 because I have to disclose right off the top, this first pick is U.S. 00:41:40.060 --> 00:41:45.940 only because it requires NOAA weather data, which is only in the U.S. 00:41:46.000 --> 00:41:49.500 But if you are in the U.S., you are going to thank me for this one. 00:41:52.300 --> 00:41:57.980 This is called WS4KP, and it's a web-based WS4KP. 00:41:58.960 --> 00:42:03.100 It's a project, it's a web-based project that aims to bring back the feel of 00:42:03.100 --> 00:42:07.100 the 90s with a weather forecast that has the look and feel of the Weather Channel 00:42:07.100 --> 00:42:10.340 at that time, but using modern data. 00:42:11.120 --> 00:42:14.800 So it also has a kiosk mode, so you could put it up on your tablets in your home. 00:42:15.580 --> 00:42:19.820 If you ever have seen the Weather Channel, it looks exactly like the old Weather Channel. 00:42:20.440 --> 00:42:23.380 And they have a live demo, so you can go check it out, see what I'm talking 00:42:23.380 --> 00:42:26.080 about, and you're going to fall in love with it. Chris, what are you talking 00:42:26.080 --> 00:42:28.420 about? What are you talking about? Go check it out. 00:42:28.920 --> 00:42:31.080 They already have the weather channel now, bro. 00:42:31.600 --> 00:42:34.220 I really love the old weather channel, and it's got a music mode, 00:42:34.240 --> 00:42:37.660 so I recommend when you check out the live demo, turn on the music so you can 00:42:37.660 --> 00:42:39.100 get some of this great smooth jazz. 00:42:39.580 --> 00:42:43.800 It's got several settings you can configure, and a full screen mode if you want 00:42:43.800 --> 00:42:46.460 to pull it in, as well as a tall and wide mode. 00:42:46.820 --> 00:42:50.640 It looks like if you had a fancy VCR that was also a weather app. 00:42:51.240 --> 00:42:54.860 Yeah, you remember those from back in the day? Or there were a few channels 00:42:54.860 --> 00:42:56.920 that just had this on one of the channels. 00:42:57.040 --> 00:42:57.160 Right. 00:42:58.580 --> 00:43:02.740 And it actually is clean and useful information, well displayed, 00:43:03.560 --> 00:43:07.240 that I would love to figure out a way to plumb into my ersatz TV setup. 00:43:07.560 --> 00:43:09.720 Yeah, visibility here at the studio, 10 miles. 00:43:10.420 --> 00:43:14.620 That's right. And the ceiling is unlimited. So go check it out. 00:43:14.780 --> 00:43:17.800 It's, again, it's a weird name. It's WS4KP. 00:43:18.180 --> 00:43:21.880 I know it sounds like a strange pick, but you are going to love this so much. 00:43:22.080 --> 00:43:25.600 And if you set it up somewhere in your home, please take a picture and send it in. I want to see this. 00:43:25.600 --> 00:43:30.660 You can also check out the demo at weatherstar.netbymat.com. 00:43:30.780 --> 00:43:35.900 And it is MIT licensed, so you could always fork it and maybe set it up to use 00:43:35.900 --> 00:43:37.600 a weather API from your local area. 00:43:38.320 --> 00:43:43.900 I don't know. It should be possible. But not one, but two of them, Wes. Two. 00:43:44.540 --> 00:43:51.360 Yeah, okay. Check out YTDL-sub. It's a lightweight tool to automate downloading 00:43:51.360 --> 00:43:54.040 and metadata generation with YTDLP. 00:43:54.480 --> 00:43:59.760 So it's just kind of some more Python on top of YTDLP to automate, 00:44:00.060 --> 00:44:02.800 using that to go get all the data out of YouTube, both metadata, 00:44:03.220 --> 00:44:05.240 subs, and the actual video files. 00:44:05.420 --> 00:44:09.900 And then it knows how to stuff them into the various formats for popular stuff like Plex or Jellyfins. 00:44:10.655 --> 00:44:13.315 This is great if you don't want something like Pinchflat. You just want a few 00:44:13.315 --> 00:44:16.855 songs or a couple of videos, but you do want them on a media center. 00:44:17.975 --> 00:44:21.715 It supports Cody's formatting, Jellyfin, like you said, but also it supports 00:44:21.715 --> 00:44:25.195 a lot of the websites that YouTube DLP supports that are not just YouTube. 00:44:25.375 --> 00:44:29.375 So like SoundCloud, Bandcamp, and others, and it knows how to get that metadata 00:44:29.375 --> 00:44:32.615 and then format it so your TV media center can display it appropriately. 00:44:32.875 --> 00:44:35.935 Yeah, and it did by, you know, at least in the examples I tried, 00:44:36.055 --> 00:44:39.175 it did a good job of pulling in the right kind of metadata for me and worked nicely. 00:44:39.595 --> 00:44:42.815 and it's got a lot of fancy files you have like a yaml file that you kind of 00:44:42.815 --> 00:44:46.875 define things by default it's really well set up to do like shows by date so 00:44:46.875 --> 00:44:50.575 it'll make like seasons that are you know for the year and then episodes within 00:44:50.575 --> 00:44:55.035 there from the channel and you can specify like only keep the last two months 00:44:55.035 --> 00:44:57.775 or only keep up to 30 episodes so if you don't want to download, 00:44:58.395 --> 00:45:02.675 everything ever for a new channel you just want to start following it that's made pretty easy. 00:45:03.555 --> 00:45:07.515 I you know the way i would i would practically use this is i would install this 00:45:07.515 --> 00:45:11.355 on my jellyfin server and then i would just create a youtube directory that 00:45:11.355 --> 00:45:15.155 i have added as a library to jellyfin i would go to that youtube directory and 00:45:15.155 --> 00:45:18.715 i would just use this to pull down the stuff i need along with the videos that i would get. 00:45:18.715 --> 00:45:22.035 Yeah so i think you can like automate it in the background oh sure to run or 00:45:22.035 --> 00:45:25.135 it's neat because it kind of does scale down nicely i was able to copy their 00:45:25.135 --> 00:45:28.915 demo yaml tweak it a little bit to include what i wanted and then you just kind 00:45:28.915 --> 00:45:33.995 of run ytdl dash sub and then the sub command and then you point it at the yaml 00:45:33.995 --> 00:45:35.395 file and it just starts going, 00:45:36.095 --> 00:45:39.335 and Jellyfin was the easiest pointing it at that folder and it recognized it immediately. 00:45:39.615 --> 00:45:41.755 You can see this too, like you just want to back up a single channel. 00:45:42.576 --> 00:45:42.816 Right. 00:45:42.916 --> 00:45:43.836 And you only do that once. 00:45:44.016 --> 00:45:46.716 Yeah. You don't need a full server that's running in the background and everything. 00:45:46.916 --> 00:45:47.736 You could automate it, but yeah. 00:45:48.356 --> 00:45:50.936 And it works. They've got an installation on a lot of stuff. 00:45:51.036 --> 00:45:53.496 So they have a Linux server IO based Docker image. 00:45:53.656 --> 00:45:58.176 They've also got one with the like VS code server running. If you want to edit 00:45:58.176 --> 00:46:00.996 the YAML file inside of there from like a web. 00:46:00.996 --> 00:46:02.576 Man, that's easy mode right there. 00:46:02.656 --> 00:46:07.236 Yeah. CPU and GPU pass through, Windows, Unraid, Arm is supported. 00:46:07.356 --> 00:46:11.176 You can also just install it with PIP too because it's basically just Python using YTDLP. 00:46:11.376 --> 00:46:15.356 This is a great pick. YTDL-sub will have a link in the show notes, 00:46:15.516 --> 00:46:17.756 which are at linuxunplugged.com slash 617. 00:46:18.016 --> 00:46:21.856 And yes, it's packaged in Nix, and there's a NixOS module for it, 00:46:21.916 --> 00:46:22.636 and that's how I found it. 00:46:22.896 --> 00:46:24.756 Ah, very good, Wes, very good. 00:46:25.536 --> 00:46:26.616 Oh, and GPLv3. 00:46:26.616 --> 00:46:31.356 I was just going to say, it is GPLv3, so, you know, mix and match as you like. 00:46:31.636 --> 00:46:35.236 Well, I'm pleased to say we will be back at our regular live scheduled time, 00:46:35.256 --> 00:46:37.376 so you can make it a Linux Tuesday on a Sunday. 00:46:37.736 --> 00:46:44.536 You can join us Sunday at 12 p.m. Pacific, 3 p.m. Eastern over at jblive.tv or jblive.fm. 00:46:48.476 --> 00:46:53.776 And don't forget, since episode 600, every episode of Linux Unplugged has a 00:46:53.776 --> 00:46:59.076 transcript, which you can review and use or plug into an LLM or whatever it is you might like. 00:46:59.276 --> 00:47:02.936 And they're available in the podcasting 2.0 apps, and they're also available on our site. 00:47:03.176 --> 00:47:06.916 And every episode is chaptered. So if there's something you did like or didn't 00:47:06.916 --> 00:47:09.816 like, you can play it again or you can skip it again. go. 00:47:09.816 --> 00:47:12.256 Right to the good stuff skip to the picks you know. 00:47:12.256 --> 00:47:15.576 Yeah why not it's really the picks is what everybody wants that's the thing 00:47:15.576 --> 00:47:19.296 alright thank you so much for joining us on this week's episode of your Unplugged 00:47:19.296 --> 00:47:23.416 program contact info mumble matrix info all of that's at our website and we 00:47:23.416 --> 00:47:25.536 hope to see you right back here next Tuesday, 00:47:26.036 --> 00:47:29.016 as in Sunday whooppa, 00:48:10.410 --> 00:48:13.410 If we were going to wait one or two more weeks for the TUI challenge, 00:48:13.410 --> 00:48:18.330 I was really going to try to get an old school computer that is just a terminal going. 00:48:18.590 --> 00:48:19.590 I love that idea. 00:48:19.770 --> 00:48:22.630 I think that would have been a lot of fun. And still something I might do eventually 00:48:22.630 --> 00:48:28.730 is just really something from like the IBM PS2 era or a really old Mac that 00:48:28.730 --> 00:48:30.350 you can somehow connect to the Internet. 00:48:30.990 --> 00:48:35.290 That's my dream for the TUI challenge. and if anyone out there has the opportunity 00:48:35.290 --> 00:48:39.230 to do this you just have if you're the person out there that has that machine in your closet, 00:48:40.010 --> 00:48:44.370 this is its moment this is go wake it up and put it to work and it'd be the 00:48:44.370 --> 00:48:46.150 perfect machine for the TUI challenge I. 00:48:46.150 --> 00:48:50.010 Can already see you're going to be asking me to copy your messages from the BBS over to Matrix.
Previous episode Next episode

Search

Search