Another Look at My Homelab (More Detail)

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
[Music] every one recently on my channel I uploaded a video where I gave you guys a high-level look at my home lab it's a hobby of mine that I've been enjoying for many years now and you know what I didn't know that there'd be such a demand for more content on this you guys seem to really enjoy this idea quite a bit and that feels great because anytime one of your hobbies is something that other people enjoy as well that just feels pretty good and if you guys like it as much as I do well why not create more content about home lab and you know maybe I'll just kind of see where this goes and for those of you that don't know for those of you they haven't seen that video home lab refers to the concept of running your own servers if you're curious what some of the reasons might be for why you might want to do something like that go ahead and check out that video if you haven't already seen it now in this video I'm going to talk a little bit more about my home lab and expand on a few of the components and hopefully answer as many of your questions as I can I'm not going to pretend to claim that I'm going to answer all of your questions because there's quite a few but I'm going to go ahead and knock out as many as I can I'm going to basically show you in this video a little bit higher in detail of how everything is laid out now before we get into that there's a couple of things that I wanted to mention straight off the bat you know you guys have said many times in the comments that you would like me to do a series on home lab I just want to say yes that's happening so you know you guys want it you'll get it I would love to create that content and I plan on it the tentative working title is how to home lab although you know what I don't know what I'm going to call it and I also submitted for a talk at penguicon this year in Southfield Michigan to do a panel on home lab among like three other panels that I decided to do I haven't been approved for this just yet I'm waiting for a final confirmation but go ahead and check out the schedule for penguicon 2020 and you can look at the schedule and see which of those talks I'll end up doing but if nothing else you'll get a home lab series here on my channel I just wanted you guys to know that yes I will do that right now I'm working on a scent OS series and then I'm going to work on a debian series and then I have another one planned but I'm actually going to do the home lab video is kind of somewhere in the middle it's not going to take that long I don't know quite where it's going to fall in I think that it's going to happen probably sometime this coming spring so it won't take long at all now before we get back into home lab I just want to mention one last thing I promise this is the last thing I just wanted to send a thank you to all of my patrons that have supported me on patreon and I wanted to let you know that I'm looking into a way to get you guys my content first I don't know how early you'll get it maybe it'll be a few days it could be a week I'm just working out the details so I should have more information about that in the future but definitely check out my patreon page because you know you guys it's your support that helps me make this content I really appreciate each and every single one of you whether you're a patron or not you guys are awesome so let's go ahead and dive into my home lab and I'll give you some more detail so here's something that I bet you guys have never seen on my channel before I thought I would create a presentation of just a few slides to give you guys basically a diagram of what my home lab looks like from a design standpoint so you can see basically how things are put together I know presentations are boring I promise this is only a few slides so this will probably help you guys that have asked how things are interconnected understand exactly how I set everything up now this general network layout diagram right here does not include everything on my home network but these are the components that I'm going to talk about in this video and there's actually going to be a few more slides some more things to talk about but this is a good start so first of all right here we have the internet which is the greatest thing that humankind has ever invented and also the worst thing that humankind has ever invented all in one depending on the context but regardless it's here this is the starting point and then here we have my cable modem I'm not going to get into that because it's just a boring standard cable modem if you've seen one you've seen them all but where things start to get interesting is right here at the firewall level and for those of you that don't already know pfSense is a router and firewall and several other things all rolled into one it gives you all the common options that you would expect to find in a router that you would buy at a retail store but the difference is it doesn't suck it's enterprise quality and it's awesome what I like most about it is that it gives you more options than any other router slash firewall operating system that I've ever used and I'm a control freak so that's right up my alley and then moving on from there you'll see that I have several unify devices here I have a unified 8 port switch that is what my pfSense device connects into now coming off the switch there's two ethernet cables each going to one unified access point I drew just one here but there's two and these access points are at different places in my house so wherever I am I have very good coverage and then we also have a cable that goes to yet another unified switch this is the server rack right here this unified 24 ports which is on that rack you've probably seen it in the previous video that I uploaded where I showed that actual rack that switch is right there on that rack and then everything you see below here is all connected to this switch for storage I have freeness which like pfsense is BSD based it's running on a power edge are seven ten and I love FreeNAS because you know it like pfSense it just gives you a ton of options so FreeNAS is to storage as pfSense is to networking it's basically great for control freaks another benefit of FreeNAS is that its ZFS implementation is awesome it's probably the best implementation of ZFS I've personally used and I think that's great because ZFS is a godsend for storage I love it also connected on this rack our two proxmox servers they are in a cluster they are both running on a power edge are 610 so I have two of these and if you didn't already know proxmox is a Debian based virtualization software similar to VMware and XE PNG it's personally my favorite choice for virtualization then I also have on this rack a power edge t4 10 it's basically my test slash Play server when I want to install a distribution for you know basically a server purpose or just play around with something random that I basically just put it on this server now obviously I can create a virtual machine and use that as my Play server but this server here has 64 gigs of RAM like my other two servers here so if I want to run something more higher-end that needs a lot more RAM like OpenStack for example if I wanted to play with that then I would do so on this server right here because it has a lot of cores and a lot of memory so this server basically stays powered off most of the time but once or twice a month I'll power it on and install something on it and test it out and then here I have my Raspberry Pi cluster I probably shouldn't have named it cluster there is a cluster that's installed on it it's a cloud lit case and I did show this in a couple of my videos and what that is is a case that allows you to slot seven raspberry PI's and you can use each raspberry pi for whatever purpose you'd like in my case four of them are associated with Nettie's I have a master and three worker nodes but then I also have some other raspberry PI's on there that are not part of kubernetes that are doing other things which I'll talk about in a moment but basically what I'm doing is I'm testing to see how much of this I can run in a raspberry pi cluster it's a challenge for myself to see if I can replace my entire rack with nothing but raspberry PI's that experiment is ongoing I don't know whether or not it's going to be successful I just thought it would be fun and on my channel I have already uploaded a video where I will upload depending on the order I upload my videos in a video that shows how to set up your own kubernetes cluster on Raspberry Pi just like I did if you want to go ahead and try out this experiment along with me so next I want to talk about sync things sync thing is my favorite file synchronization utility I have it installed on everything and yes I will be showing you guys these things I'll actually log into these applications and show them to you I just wanted to show you my overall layout because maybe this might inspire you now I use sync thing in what I think is an interesting way so a lot of people will install sync thing on every device well I did I also have it on every device but what they'll do is they'll have every device syncing to every device that's not how I like to do it though now here we have my FreeNAS server by PowerEdge our 710 that I spoke about in the previous slide and on this server is sync thing basically FreeNAS has plugin so sync thing is installed as a plug-in which is essentially a jail if you have used freeness and you know exactly what i'm talking about but if you haven't use FreeNAS yet then just think of sync thing in FreeNAS as a plugin because that's essentially what it is so what I have here is that my pre Nass server is in the center of everything so let's just say for example I'm on my desktop right here and I go ahead and I save a file into one of these synchronized folders on this desktop what happens is this desktop will synchronize with FreeNAS just one to one so this file will go down here and then be copied to FreeNAS and then that same file will then go to my think pad my gala go pro I have other laptops as well I didn't feel like I needed to put them all on here so I think you would think of this like a star topology or spoke or something like that but basically you have FreeNAS here at the center and everything is syncing to freenas notice that this desktop is not syncing with this laptop this laptop is not syncing with this one everybody synchronizes first to FreeNAS and then FreeNAS will distribute that file around I just feel like that is such a great way to do it it's worked very very well for me so I'll change a file here on my laptop it goes to FreeNAS which you know is sync things so sync thing grabs that file then a sync thing copies it over to any other nodes now sync thing is one of those applications that you can use in very clever ways now here I have three retro PI's I've done videos on retro pi I am a huge gamer in my home lab video you guys have spotted the Sega Dreamcast that I have in my server room which is actually one of four Sega Dreamcast's in my house I actually have 21 video game systems in my house and that's not counting duplicates so 21 different individual game systems because I'm a collector I actually have 800 physical games in my collection so far and that's why I'm crazy about retro pie because it allows me to enjoy my collection all in one place I have a retro pie on my living room TV I have one in the bedroom and then I have one in the office as well and for those of you that don't know retro pie is a Linux distribution that is custom tailored to giving you the ability to play your retro games or roms and build a device you can for example hook up to a TV now the reason why these are here and you probably already know where I'm going with this is that if I add a ROM to the retropie synced folder on sync thing then that same ROM will be copied to all my retro PI's I only need to make the change on one so I can add the rum here and then it goes to sync thing and then the same thing will send it to this one and also this one so the roms actually stay in sync between the three but that's not all I have a customization where the save file directory is in a unique custom directory that is also under the influence of sync things so I can play for example Super Mario World in the living room save my game that save file goes here to sync thing and sync thing puts that save file on my other two so I could go into my office maybe I'm waiting for a video to render and that's freaking boring so I'll play Super Mario World again and that same save file is now here and I can continue exactly where I left off so having retro PI's sync to each other actually sync via sync thing means that they all have the same games and the same save files which is just awesome I don't have to worry about which one I was last playing on because they they basically are all the same and then finally I have right here Backblaze off-site backup so if this thing just dies on me which you know that could happen it's IT these things break it's also syncing my sync thing synched folders off-site to Backblaze b2 as well I also have like internal backup hard drives as well I'm not mentioning I have backups of backups of backups but I also have Backblaze b2 off-site and FreeNAS takes care of that for me as well and even my youtube files basically after I upload a video I'll put the master files and project files here on my FreeNAS and even those are going to be backed up off-site to Backblaze so that if anything bad happens to the server which is just a matter of when not if I will still have all of my files now another slide I have for you guys is this one right here where I'm going to talk about my raspberry pie rack and you know I call it a cluster as I named it right here and yes it kind of is because you have these nodes these four are part of a cluster I have an eight port switch inside this thing and again I showed this off in a couple of other videos I have a dev server and each one of these are Raspberry Pi so I have a dev server which has you know some of my source code and get files and things like that I have a utility server which has things like Nagios for example which I will show you in this video and then I also have home assistant for home automation basically controlling my lightbulbs and things like that and those are the slides that I had for you guys I'm not much for presentations but I thought that this would kind of show you guys exactly how I have this kind of thing set up so I'm going to switch to a web browser now go ahead and open one up so what I'm going to show you right now is sink things so I'm going to navigate to sink thing home - Network dot IO port and then eight three eight four I'll go ahead and log in here and in case you were thinking of asking in the comments yes I did register home - Network IO that is not a local domain I actually own that I registered home - Network Hut IO for my home network I'm actually shocked that I was even able to register that and it wasn't even taken already but anyway you can see some of these synced folders that I have here again sync thing is the tool that I use to synchronize files from one computer to another and if I scroll down here you can see all of the computers that I actually sync files to so I have you know some laptops so this is a laptop here's a laptop you'll see Final Fantasy 6 Esper names I just love doing that you know here's another one for example phantom as an esper Matewan Kirin if you played Final Fantasy 6 you know exactly what I'm talking about here so those are all computers but you can also see the retropie units here I call the one in my office actually have two of them in my office retro PI PC is an x86 version then I have a standard retropie the one of the living room the one in the bedroom and then I also have retro boy which is a handheld retro pie and these all sync these save files between each other and the roms as well so if you add something to one it's added to all of them with the exception being retro boy because that's a Raspberry Pi zero which can't really handle how you in games so I you know omit some of the realms on that one but the roms otherwise are copied to everything here you have the-- leo that's my desktop actually was given that during a system76 fan event which was awesome super lucky to have it I also have videomatic which is the server I use to render my videos that's actually on my proxmox stack so I could basically go on videomatic and log in and just open kdenlive and hit the render button because all of my files so basically if I scroll up here and my projects folder I have all of my YouTube raw video according Zinn there and that folder is synchronized over to videomatic so all of my footage is there I basically edit the video on my desktop but I don't render it I just saved the project file and close it and then since that project file is in my projects folder it gets synced over to here and then I log in to this and I let this server do the rendering for me so that my desktop isn't tied up doing a render job it just basically keeps my desktop free because kdenlive although I love it it's a great utility for rendering video it's just a resource hog and it makes your computer practically unusable while you're rendering a video at least if I'm rendering the video on a server I don't have to worry about that so next I'm going to go to my file server which again is freenas so I will login with the username root and that's just the username they want you to use I don't like it but it is what it is go ahead and log in there and FreeNAS is like I mentioned my favorite Nass operating system again I love the flexibility and the customization you get with this but the downside is that there is a lot of overhead you do have to manage this it's not quite as easy as something like open media vault but it is a great system and if you are okay with having to customize a few things here and there you'll probably love it too so there's probably not a whole lot to show here I mean I have you know 18 gigs of ram basically you can see I have one point two four Tibbie bytes free on my main volume 1 which is the only volume that I have and if I go down here to plugins and they have actually changed the user interface quite a bit here I only have one so you can see I have sync thing the font color is kind of hard to see so when I go here to sync thing and I'm on this plug-in right here this is local it's actually right here this is where sync thing lives so when I go here to sync thing I am actually going to this plug-in right here that's how I have that set up and then if I go over here to storage and then I show the pools you can see the data sets that I have and how those are broken down we have again volume one which is my main storage actually the only storage underneath that I have an archive things that I don't use those files in here basically gets shipped off to Backblaze and then removed so this size will actually fluctuate here I have a backup data set here I have a data set for Clonezilla if I want to take an image of one of my computer's that's where it gets stored now home is in its own data set as well I have my home directory on there io cage is basically where the jails go media I have my music right here and then I have video so I have about 97 gigabytes of music and then for videos I have about 1.3 Tippie bytes or something like that so I'm quite a lot of videos this is where Plex actually gets the video content from is this data store right here proxmox again that's my virtualization software I have a backup directory right here which is where proxmox sends the backups of the virtual machines I have an ISO directory which as you can probably guess is where the ISO images are stored for installing various Linux distributions scripts and right here I have sync thing which is its own data set and this is the data set that is given to the sync thing plug-in I have two hundred and twenty seven gigabytes of data in there most of that is probably going to be the raw footage for video files that I haven't finished editing yet the YouTube data store here is basically where I save and archive my project files and then also the final versions of videos that I upload to YouTube get stored in this folder right here and I've archived most of these which is why you don't see a whole lot of data right here there's actually a heck of a lot more than that and Backblaze and I also have a YouTube archive so basically things will get moved from here to the archive and then eventually aged out as it gets uploaded over to back plays now it's time for proxmox so I'll go to VM host 1 actually I need HTTP I keep forgetting that here we go so I'll go ahead and login and I'll click the login button and now we are here on my proxmox setup I'm going to go ahead and make the font size a bit larger for you and that way you should be able to see it better so I showed this off a little bit in my previous video I have 2 hypervisors right here I have VM host 1 and then I have VM host 2 VM host 1 has most of these VMs right now I can actually move these from server to the other so if I wanted to update VM host one I can actually migrate all of these VMs to the second one upgrade this reboot it and they move them all back upgrade the second one and reboot that one that's basically why you want a cluster I have a couple of containers I only have one running right now and that's how you can tell this little icon right here is a container icon then we have what looks like a computer monitor these are VMs and someone asked me why I don't use containers more often because I could get a lot more out of my hardware if I use containers that is true I definitely could get a lot more out of my hardware if I use containers the problem with containers is that if you try to migrate it to another node it has to shut it down then it copies it over to the other node so to go over here and then after it's copied it was started back up again but if it's a VM you could basically live migrate while it's still on and then you don't have to worry about like the app going down while you're waiting now another thing that I want to show you guys is my utility server the utility server is a Raspberry Pi it runs several different networking utilities so I'll just type utility home network i/o slash Nagios enter I'll put in my super secret password here and then you can see my monitoring system so Nagios alerts me if there's anything wrong with my network or any of the devices on my network so if I go to hosts you can see all of these servers that I have and all the various things I even have my security cameras on here so if my security cameras go down I get an alert aw X is four ansible so that's something I'm playing around with you know there's my dev server I have my website which you know I have several different checks for various websites that I have I have a check for my pfsense you see my kubernetes nodes in master right here my minecraft servers I scroll down I have a number of smart plugs and you know even the lizards my Turtles yes I have Turtles so if I scroll down you see I have a smart plug for my turtle tanks and everything you know everything is on the network even my turtle tanks because it monitors the power that it uses in controls of filters and the lighting which is the same thing that happens with the lizard tanks as well so even my pets stuff is on the network I'm not even kidding you and I like to my you know monitor everything I have my unify access points on here so if someone in my house is saying hey I can't connect to the internet then I'm basically basically like yes I know I know it's down I got the alert because you don't need Wi-Fi for these alerts to work this is wired in and it wired it's wired in right straight down to the cable modem so it's able to send an alert to my phone if Nagios doesn't detect that the access points are on the same with the switches which actually if the right switch is down I guess that alert couldn't actually go through but you get the idea and then for individual services I basically monitor just about everything from SSH access the memory being free free space for the hard drive or virtual hard drive if home is on its own partition its there and if I scroll down if there's anything interesting here there's my Jenkins server my kubernetes or I keep saying kubernetes I should say kubernetes it's hard and my minecraft servers I have to there's Plex which Plex is great for movies and Plex actually you get the idea this is for monitoring Plex is something that I definitely should talk about because you know that's basically how I can get access to my movie collection so if I go ahead and go into Plex TV and I'll go ahead and sign in and now that I'm logged in I'm not going to enable the RM because I'm I'm not actually going to play anything but basically here is my plex server this is my actual Plex server so you can see some of the things that I'm into you by looking at this of course Doctor Who and orphan black you know definitely some great things and some movies of course so Plex is a very awesome way of sharing your media collection or just making it available when you were away from home and the way that works I'll go ahead and open up a terminal here actually I already had one open here so let us go ahead and go into Plex now what I want to show you guys is how this is actually managed so if I do D F - H you can see that the local file system here the root filesystem is only 16 gigabytes you really can't store very many movies on that can you but what you'll actually see right here is that I have an NFS mount where the videos are actually stored and that's mounted here - NFS plex as you see here so if I go back to the browser and back to VM host one here is the actual plex server right here if I go to hardware you'll see that it has it like I mentioned a 16 gig hard drive that's it I mean that's all it has so I could literally delete this server right now and none of my videos go away because they're not even stored on the server at all they are stored on freeness and then we actually have the media data store or data set right here and then videos that's where it's mounting that from so that's where it's actually getting that from now what's interesting is that this uses something called auto af-s so basically if I look at the config file auto master I mean it's basically just setting the paths right here nothing too much value there but if I do cat and then let's see Auto dot and FS we can see the actual line that mounts the network share for my videos and why this is important is because this is only mounted when it's in use so let that sink in for a minute when this server boots up this is not mounted if I so much as do an LS against the directory that this mounts to the auto FS daemon will automatically right then in there mount it on the spot and then after some time it'll timeout it'll drop the NFS mount that's great because you don't have to worry as much about NFS locking because it's only mounted when it's in use if I go to play a movie then it'll actually mount it right then and there and start playing and Plex is stupid it doesn't even realize that it's not mounted all the time because any time Plex itself goes to check on the status of this mount it'll automatically mount it so that the status check will go through so that just makes it a lot smarter auto af-s is actually a little kind of annoying to be completely honest with you after you get through some of its quirks kind of hard to explain but once you get through the quirks it's actually great so as soon as this VM boots up and Plex goes and checks in does an index of the media auto af-s will intercept that IO request or basically whatever word I'm supposed to use for that and then just mount that directory to allow Plex to do whatever it needs to do and it happened so fast that Plex doesn't even know that it wasn't mounted in the first place all right so basically that's Plex now the last thing that I wanted to talk about at least I think it's the last thing because I know I do want to try to see if I can answer some of additional questions that you guys might have is ansible because a lot of you guys have asked about ansible yes I will do an ansible series at some point I'm thinking at this point is probably going to be this coming summer I just have some backlog I need to get through first but you'll notice I don't actually have an answerable server yes awx is technically an ansible server but this is not in use there actually is no ansible server at all now most people that deploy ansible they have an ansible server but I use something called ansible pull so I'm going to open a new tab here when you see if I could find this article ah here it is this is an article that I wrote some time ago actually you know quite a while ago actually here this article kind of talks about how I set up ansible because the method that I write about in this multi-part article series here on this website basically gives you a simplified version of my setup but I use ansible pull so if I scroll down let's see if it's on this first version we have this command right here let me go ahead and blow this up for you we have the ansible pull command right here this is something that I will go over when I do get a chance to make an ansible series but basically I have my danceable code in a git repository you can see a sample of that here what ansible pull does is it downloads the ansible git repository and it runs it localhost so any of my computers can run ansible pull and the command very similar to this one and it will run that against itself so there's no server every laptop and desktop fetches the config from the git repository and runs it against itself and I don't like having an ansible server for a few reasons one because it's a central point of failure you could argue that this github server represents a single point of failure and you're right it does but it's a lot less likely that github is going to go down then one of my own servers and even if it did every server and every laptop and desktop are each pulling down the ansible config and if this did go down I can retrieve my ansible configuration from any of my laptops or desktops because again they're downloading it anytime that I make a change and I actually have an option that will only run if there actually has been changes to the git repository so that protects me from an ansible job running when it doesn't actually need to it runs by cron and then all of my systems will check in find out if there's any changes to the repository run them locally and then that basically is how they all run if you would like to find out how I am running ansible then check out this article because this is exactly how I do it it is a simplified version of how I do it but it is the way I do it so if you want to get started with using ansible to manage your workstation configuration again check out this article there's a few other parts in this series and you can set up ansible exactly like I have that'll give you a chance to play around with it and that way when I do create that ansible series you'll already be ahead of the game so what actually is ansible doing for me so what I'm gonna do is go back to a terminal I'm going to go into my dev server here let's check out the code so I have a local copy of my git repositories here so I have get and then ansible so I'm in the ansible directory if I list the storage I'm going to give you a high-level look at how this actually works so first of all when you use ansible pull it expects to find a file named local dot yml inside the repository at the root of the repository if you don't have this it will fail to run unless you give it an argument with a different PlayBook name but why would you want to do that just create local dot yml it just makes it easier so if I go ahead and look at that go up here to the top you could see some of my code here so we have pretest which basically run before anything else so it's going to update the package caches for the various distributions and yes it's checking to see you know is it Arch Linux is a Debian is it a boon to because I don't want to maintain multiple ansible configurations for multiple distributions you can actually put a wind statement here and basically this chunk of code is only executed when the ansible distribution is well Debian or Ubuntu and you have one here for Arch Linux as well so this one danceable repository actually handles multiple distributions and again this local dot yml file is the first thing that's run so think of it like an index if I scroll down it's running rolls so this one here which is roll base is rent as being run on everything doesn't matter if it's a laptop desktop or server the base roll I want on everything that's my config files my user account all that I want this on every single laptop every desktop every server every VPS literally everything I want this world to be run on now where things get a little bit custom here actually quite a bit custom is I have a roll for workstation and then I have a role for Raspberry Pi and then server so I have a roll for service as well so depending on what type of machine it is I'll give it one of these rolls or maybe all of them if I wanted to and then at the very end it's going to go ahead and just run some cleanup stuff I'm not going to get into that and now let's take a look at the roll so I have a rolls folder right here and if we look at that you can see those rules that I mentioned so if I make a system part of the workstation roll then the scripts or play books inside here actually it's within the task directory will get run and just take a moment and look at everything that is doing I have a playbook for installing Google Chrome for my dot files installing open box sync thing thunderbird you name it I have pretty much a playbook for just about everything so let's take a look at Firefox you might be thinking big deal Firefox is just apt install Firefox why would you need to do this well that's not what I'm doing what I'm doing is I'm using this play right here to remove Firefox and anything with Firefox on the name so basically what this is doing is it's going to remove any package installed by the distribution as so much as has a word Firefox in it why would I do that well because it takes time for the distribution to package Firefox and give me a new version I don't like that because when there's security updates I want them right now I don't want to wait three or four days until a Boone - you know gets that done and gets that package which to be fair three or four days that's actually pretty reasonable but I'm impatient and I don't want to wait for that I want to maintain my own Firefox so let's just get rid of it and get that off the system and then what it's going to do is it's going to use the unarchive play right here and the source well look at this download Mozilla org this is going to the FTP site and grabbing that for me it's actually going to grab the tarball from Mozilla's site and what it's doing is its downloading Firefox latest so whatever the latest version is that's what it's going to download it's going to put it in /opt it's going to make root the owner that's important because if my user account is the owner then if a malicious script is running as me and Firefox is owned by me that script would have permission to corrupt Firefox and put malicious software in there so I don't want that so I make it owned by root and then of course it runs a permissions job and then I'll scroll down here and I hate hate hate hate hate hate that's the words of Kafka in Final Fantasy 6 if you get the reference I hate hate hate the default bookmarks that Firefox gives you when you install a fresh Linux distribution and/or a fresh installation of Firefox so before I even have a chance to run Firefox basically it's going to create this directory or this default slash profile folder right here if this is present it's not going to add those bookmarks so I don't have to worry about that then it's going to add a custom Firefox icon and then finally it's going to copy a Firefox desktop launcher so it shows up in my Applications tray the same way it would if it actually was installed by act so this is completely custom and then if we look at sync thing and I know you know I'm going crazy with detail here but you guys did ask for it here is my sync thing tasks book right here tasks book playbook you get the idea it's going to create all the directories here that I will end up using sync thing to sync then it's going to copy the st ignore file which is a text file that includes a list of things that i do not want to be synced and it's going to put that in all of these directories so that'll automatically not sync the things I don't want to it's going to add the apt key and then the apt repository well it's going to do that if it's Debian or bo2 anyway and then after all that's done it's going to go ahead and install the sink thing package then it basically starts and enable sink thing so you can see that right here it's running that command and then this is interesting wait for I want to wait for something what do I want to wait for I want to wait after sink thing starts for the config.xml file to generate once it does then I'm going to go ahead and change some of the configuration within that config file automatically so for example I'm disabling the start browser I'm going to enable the dark theme and then I'm going to remove that pesky sink directory that it insists on giving you because I don't ever intend on using that I can go on but you get the idea another thing that I'll show you guys here if I go into gnome this is huge this is going to do a lot so first of all I'm going to disable the high DPI daemon that is provided by system 76 with the system 76 driver and also the pop OS distribution as well I hate it I absolutely hate it I want this off the system I want this disabled because well you know I know they mean well and it's a decent piece of software but it's constantly getting in my way there's bugs that just haven't been fixed yet and I don't need it anyway so let's just get that gone and then down here I'm going to install all the gnome packages so you know you have G edit the backgrounds or control center gnome shell you get the idea it's going to install all the gnome packages for me might as well as to all known books while we're at it so it's installing gnome books it's going to set up some extensions it's gonna set custom key bindings so I have a keyboard shortcut to open the terminal to open the browser the file manager keyboard shortcut to open that right there there's a terminal 1 terminal with T MUX is another keyboard shortcut I have a keyboard shortcut to open a text editor I have one to open key pass XC H top for viewing system resources I have a keyboard shortcut for just about everything and these config lines here will add all of that to know them for me so all of that is in place as soon as I install it have some things commented out but basically these would allow me to change some additional things if I wanted to I'm going to disable screen blanking disable hot corners I want to show the battery percentage on the top bar I want to have trash automatically cleared in 30 days I want my temp files to automatically clear disable the automatic screen lock I want to be in control of that change whether or not the workspaces are only on the primary display show only the close icon I don't want notifications on the lock screen so let's get rid of that I want and I want to have natural scrolling for the mouse and I'll adjust the cursors speed of the mouse I'll set the night light schedule scroll down further here set the power button behavior I wanted to automatically suspend when I'm on battery so I'll make sure that's on there disable the menu bar on the terminal so if we can get rid of that like I set the terminal color scheme [Music] I'm going to copy the wallpaper file set the wallpaper copy the lockscreen file set the lockscreen make treeview the default in Nautilus I can go on there's so many customizations here so what I am hoping to do at some point is to release this entire customization of ansible to the public domain in a public repository but there's just a few things that I'm going to need to change first I don't think there's anything here that really matters if you guys see it I just need to sanitize it a little bit might be a couple of things I'll remove but I do want you guys to have access to this in case you want to do something similar like I am doing here but at some point I will be creating an ansible series so I will show you guys exactly what this looks like so I know if that was a long video guys so I'm sorry not sorry am i sorry I don't think I'm sorry I love this stuff and you guys mentioned in the comments that you enjoyed that original video and you wanted more detail so you know be careful what you ask for you definitely got a lot of detail I know some of those things might go over your head I just wanted to give you an overview of everything and in future videos I'll go over these types of things so that you guys will know what the heck I'm even talking about in the first place I'll do some additional home lab videos and when I do this series on home lab I'm going to break it down it's gonna be less about mine and more about home lab in general how to get started how to choose the right Hardware what applications you might want to consider running I think I will put some of my own customizations in there I might make tutorials for the various things that I showed off in this video at some point in the future I literally have like 17 videos on my hard drive right now I haven't even edited yet but I promise I'll get to it and I'll definitely get you the guys back content so subscribe if you haven't already done so I have some awesome videos coming and some of them are related to this so if you like home lab keep the comments coming guys and I'll have more content in that regard very soon and I'll see you in those videos as soon as I have them uploaded you
Info
Channel: LearnLinuxTV
Views: 36,959
Rating: undefined out of 5
Keywords: LearnLinux, Linux, Tutorial, Howto, Guide, Distro, Learn Linux, operating system, os, open-source, open source, gnu/linux, hosting, self hosting, home server, home lab, homelab, custom server, home networking, self-hosted, self-hosting, home server room, home server rack, home server setup, home server uses, home server build, server rack, home lab setup, best homelab server, homelab setups, home computer lab, home network, home server hosting, home server lab, home network rack
Id: wwpRtC5nywM
Channel Id: undefined
Length: 49min 38sec (2978 seconds)
Published: Tue Feb 18 2020
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.