Void Linux - A Distro You Really Should Try

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
hello and welcome back to the otb channel over a year ago i had a look at void linux and i did actually run it for about six months and i thought it was time to give it a try i was impressed the first time but the second time i'm even more impressed i really believe it's a distro that any experienced linux user should give a shot see you after the intro [Music] right welcome back um so i hinted on sunday on the on the live video i did that i was gonna review void and i thought today's the day and it's quite a long one this so be warned and uh it's been quite difficult because i've had to swap and change on some of the things that i've looked at but what i will say is i'm running three different distros at the moment i'm running arch i'm running slackware and i'm running void i like all of them equally for different reasons i like arch because it's bleeding edge it's quick it's easy to grab in packages and as my media workstation here it suits the purpose that i've put it to i like slackware because it's solid and stable and i don't need it to be a media workstation i just need it to be a laptop that i can use for general purpose use but i've also put my t420 laptop to use with void linux now i install installed void linux over a year ago and i kept it on an ssd and i kept returning to it and there was a few paper cuts but there was something about it that just i don't know i loved i i like i like distros that aren't forks i like distros that are something original they are their own thing in themselves and void is certainly that and so i thought i'd give it a try about two months ago or so and i've been running it constantly my t420 is a thinkpad that i use quite often and uh i've had zero issues there's been no paper cuts it's improved beyond measure and i've started exploring the uh source tree which is like um the freebsd ports that you can also use as well as the very fast package manager so today without further ado i'm going to install it on a virtual box i'm going to show a basic installation process and then i'm going to go into how the ports tree works i don't think they're called a port street just the source tree works and how it can make life really simple if you want to modify a package or patch a package and in fact one of the things that i'm going to be doing is showing you how i patch libex ft in dwm for color emojis but how i do it really simply using void tools so without further ado let's go and have a look at the install right so here we are at the main screen of the xfce desktop now the point of this video isn't to do a review of void's version of xfce not by any means because it's a vanilla xfce void is one of those distros that is all about creating your own look and feel so it'll start you off with a base and you make it your own but from here all i want to do is to show you how easy it is to install and then to talk a little bit about package management so let's find the xfce terminal here because what you will not find on void is a graphical installer in this sense it's very much like slackware it's going to be an n curses installer that we're using so first of all i need to log in as root and i believe the password is just void linux and there we are we have the root hash symbol and then we run the command void dash installer and here we are we're straight into the n cases installer so little welcome screen let's hit hit ok and uh continue so set the system keyboard so we need to find uk here um and he really reminds me of slackware's installer it really does um i'm just wondering where uk is i bet it's right at the end i can't remember from when i last set it but we'll find it in a second there's the uas us there we are uk set up the network okay so it's spotted i'm on a virtual machine so i'm obviously wired do you want to use dhcp yes network is working properly what i would say is that when i was setting this up on my laptop um for some reason although it could see the uh wireless um the wireless network card it couldn't set it up during the installer but it wasn't an issue because once everything had installed and i installed it off off the iso everything was fine so set the source installation uh we're going to do a local install if you are installing the xfce desktop and not just the uh the base system they advise that you use local and you just just install packages from the iso itself so we're going to go with that set a system hostname uh so void vm why not set the system locale so it's scanning locales and we're looking for en engb there we are great britain set your time zone so i'm looking here at uh europe and london set the system root password okay and again and set up a user account so let's do that it defaults to void but i want a user account called otb and what do i want my username to be again otb and set a password for otb and i'm setting it the same as the root password now it asks for group membership what do we want to be a member of so let's just have a look down here uh i'm gonna select disk i'm just hitting the space bar here lp for printers video we're already a member of cd-rom optical mail storage i think i'd like to be a member of that scanner i'm not bothered here input no don't think so users yet why not i'm looking at what else here i may want to be a member of there's nothing jumping out that's going to be absolutely essential i was looking for a wheel group to be honest but i don't think there is one oh yes there is it's up there and we're already a member so i'm just going to hit ok set disk to install bootloader there is only one disk it's sda here so i'm just on a standard bios install i'll hit ok use a graphic graphical terminal for the bootloader let's set yes partition the disks okay so there is only one disk and what do i want to use do i want to use cf disk or i i don't use f disk i don't really remember how to do it so long i'm going to just use a dev sda i'm going to set up a dos partition i'm not going to bother with swap i'm just going to set one big partition here 32 gig i'm going to make that a primary what type am i going to make it i'm going to make it a linux type and i also want to make it bootable so we need to just write that information now am i sure yes i am okay so we should be all good now so let's quit configure file systems and mount points okay so we only have uh one partition we've created so what do i want to make that i want to make it ext4 please and what about the mount point well i've only got one partition so forward slash for root do you want to create a new file system on it yes please okay and we're done right uh so then we move down to install and let's just hit ok it tells us that it's going to create an ext4 partition there do i want to continue yes i do so really simple not a lot to it it's n curses installation just like slackware uh nothing to be afraid of and what you will notice on this is it's very very fast i mean progress is already a 45 percent and it just ramps through the installation you almost feel i remember when i first did this oh was there an error there is something wrong uh but now it's going to finish in a second right and that literally took about two minutes and we're ready to reboot so we'll come back once i've removed the iso and rebooted the system right so uh i uh rebooted removed the iso and now i've booted into void an installed version of void in my virtual machine and you can see here we've got the xlxdm login screen i believe it is it's pretty plain by default but you can customize it as you want so let's just log in i'll get the focus here otb [Music] and wait for our xfce desktop to launch now i i have tried this first before i'm showing it to you just to make sure that the install worked and it did and i needed to change it over to a uk keyboard and i ran the updates just to make sure everything was working and it's all working absolutely fine um it's a pretty basic it's a pretty basic uh installation here um what you will find is that out of the box you don't have vim you don't have nano you don't have xr and r uh you don't have w get you don't have absolutely anything so for those people who prefer a desktop environment that's set up ready for use as soon as you finish the installation void linux probably isn't for you but for those people who like to build their own environment and just want a good solid foundation to work from void could well be it what i would suggest the first time that you go in is open the web browser and go to the void linux web page and to look up the documentation if you go to the documentation there we go there's the link you will find that it firstly gives you uh let's find the packages it tells you all about the xbps package manager and xbps isn't isn't one package it's a ranger packages you've got the query tool you've got the install tool the remove tool and so on and so forth and if you want to know how to work with each one click on the link to it it'll bring up the man page so if you're not comfortable with man pages again you may well struggle with this but just to give you an idea let me open up the uh xfce terminal what you should do as soon as you boot into your new system is to do a sudo and sudo is set up by default xbps install dash s u s synchronizes the repositories u does an upgrade and run that it asks me for my password and off it goes now you'll notice there's a few repositories here uh there's actually four repositories there's what's called current there's a multi-lib there's a non-free and there's a multi-lib non-free as well they do not come installed out of the box in fact if you go down to have a look at the package documentation xbps we'll find it here there's a section on repositories and as it says there there's the current repository but you'll also find void repo nom free void repo multi lib and void repo multi-lib non-free and if i was to perhaps want to install the void repo non-free all i would do is let's just clean this up a bit is i would do sudo xbps install synchronize the repositories and then install void repo non-free i've gone through and i've installed all three of the additional repositories so i mean if i did that you can see it's already installed so um it's pretty easy and you can install any package like this so if i was to install let's let's think of something here let's have a go at installing alacrity so sudo xbps install alacrity i'm assuming that's in the repos yes it is job done it's really quick for those of you who like a graphical package manager void doesn't come with with one out of the box but there is one called octo xbps and you would simply install that from your package manager so sudo xp ps dash install dash capital s opto xbps and i think this is very much like the um is the octopi that they have in manjaro for the uh qt desktops and you search for your packages in here and just install them so if i was to search for i don't know let's have a look let's see if we can find genie there's genie click on it install hit the tick confirm enter your password off it goes and it's installed so we should actually find that now i'm presuming in development and there it is genie's installed so if you prefer something like this you know a graphical package manager that's great so let's just clean up this again now this this uh web page and documentation gives you a good start with void they also have a very active reddit uh subgroup um do they call it groups go on to reddit that's where the main set the support forum is such an else such as it is and i've been on it a few times and uh they they've they're pretty good at you know answering questions um and they've always answered mine and uh i've not had any problems one of the things that you may find a little bit different with this is if you've been used to a system d system and you've been using system ctl etc to start and stop packages you won't find that on here because this is running run it i'm just trying to find out here ah here we are services and demons it works in a slightly different way now i'm not too bothered about what in its system i run i mean i run arch which is system d i run slackware which is varying to system five essentially and of course i'm running void which is run it what i would say to you is read through the pages here and it tells you you know how to manage your services sv up speed down sv restart you know whatever it is so if i was to have a look at say use the status one if i did sudo sv status oops helps if i can spell as normal sshd which i believe is a service that should be running and yes it is it gives me the pid number so if i wanted to stop that i would just do sudo sv down ssa hd or sudo sv restart sshd so dead simple if you want to enable a service it it's just as just a simple i'm just going to move down from uh where are we here yeah the thing to do is to look into the var services directory so let me just cd to that right and let's have a look there what you see in the var service directory are all the different services that are set to start on login if i just do an ls la you will however see that they are all symbolic links and they are symbolic links to services that are sitting in the etc sv directory so let's go to the etc sv directory and have a look at all the services that we've got there and they are all the services that we could have starting up on boot if you want a service to start up on boot and it's not currently doing so well what you'd do is you'd simply go to the um etc sv directory and uh you would create a symbolic link in the var service directory from one of these it shows you how to do it here anyway so work your way through this i'm not going to go through it in any detail this is just a quick look but this will get you started now i haven't found a huge need to go outside of uh void linux's repositories they've had the vast majority of things in that that i required but i have wanted to do a few tweaks and this is where void is quite interesting because it has the facility to download what what is very much like a porch tree like a freebsd porch tree of a whole range of packages that you can install from source as well and it makes it really easy to do that it's good for installing packages that you won't find in the repos and you won't find everything in the repos packages that void classes restricted or non-free you're unlikely to find in the main repos but you will find it in the source tree and so you can use it to do that it's also quite useful if you want to patch or modify one of your existing packages so on that basis let's have a look at what this is all about so what you should see now is you should see the github page of void packages and this is where you get started if you're interested in installing more than just the packages that are in the repos and what you do to start off with you'll need to do a git clone of this particular repo so you do a git clone void packages dot get now i've already done it and i have to say it's it it's a pretty large download but i'm going to cd into void packages he says ah but i'm not actually in my home directory so that would really help okay so cd into void packages and the repo that you downloaded contains a whole range of things one of the things that it does contain is a script called xbps src which helps you to basically compile the source packages and you've also got a directory called src packages um and if i move into src packages what have i spelt wrong there there we go that's it i've done it completely wrong there we are packages and i do a ls you've got folders for a whole range of uh packages there um in fact if i just did an ls and i piped it through right for some reason it's not picking up the english keyboard again let me just see if i can sort that out i don't quite know why that is let me have a look keyboard board layout i sometimes find this with xfce ah right that's interesting let me just add and let me add english uk and get rid of the american one and close it right this should do it so if i was to do an ls and i had a look at just how many lines we've got in there let's have a look 12 400 directories if we were to move into i don't know any directory let's let's think there must be a d menu in here uh cdd menu i would imagine yes there is and i look inside you're not going to find a huge amount there what you are going to find is a template file and if i was to cap the template file essentially let's just make this a bit bigger you will see that this is essentially a build script it tells uh xbps src where to download the package from etc etc so okay so it's build scripts a little bit like slackware in a way and all you have to do in order to install the package here is issue a couple of really straightforward commands what you need to do though to start off with and let's just cd back out to the root directory of this um and again there we are into void packages you need to install a bootstrap package or a range of packages to do with bootstrap and if you go through here it does tell you what you need to do you need to run the xbs bootstrap package and you need to install the binary bootstrap so let's do that now so dot forward slash remember this is a script we're running and we're going to install binary bootstrap and i don't know how i've hit caps locked there but i clearly have so let's knock that off i should probably get rid of these mistakes but i'll just leave them in what the heck so xbps slc binary bootstrap there it goes it's downloading and installing all the necessary packages that i need to install and there's quite a lot quite a few development packages there as you can see so let's just get that done and it shouldn't take long like i say it's pretty quick and there we are we're all done we're now in a position to actually be able to build one of the packages in this source tray and in order to do that if you go back to the the website here you run that script again but with the word pkg before the package name so we looked at d menu before so let's do uh xbps package pkg d menu i'm using d menu here because we know how quick that is to to actually compile off it goes it does what it needs to do it checks that we've got um all the relevant uh uh packages that we need to do this and you can see there that it's installing dependencies as well as d menu which is great so it's doing it automatically for us what it will do is it will if we've already got a compiled package of one of the dependencies it will use that but otherwise it will go off and grab it from our remote repo and if it isn't in the remote repo it will compile it from this source tray anyway we're all done so how do we go about installing this well interestingly enough let's go back to um the structure of this particular repository you will see there that there is a directory called host directory and if i do an ls host directory there is also a directory within that called bin packages and you can see the there is a package there called d menu so it's compiled the package and it's put it in this host directory bin packages folder which is essentially a sub repository if i wanted to install that now all i would do is i would use the standard xbps install in fact i don't need the s for this so just the standard xp ps install and what i want to do is i want to point xbps install to this directory host directory bin packages so i'm just going to put in host directory bin packages and what's the name of it it's d menu oh no don't need that d menu and as far as i'm aware that should now install that package asks for the password do i want to install the menu yes i do please job done it's installed it's also installed lib xft there i see so okay all good so dead easy to install packages that perhaps aren't in the repos but you can install them from the source tree now there are a couple of other uses well there are many uses for this sort of system when i was running this on my main system and i ran it for about six months um as you know a second system one of the things that i found was that i i was struggling with obs doing hardware rendering and i couldn't figure out why and i went on to the subreddit and they actually uh let me know that one of the problems i was having beca was because the intel media driver uh didn't come from the repos with all the relevant uh non-free options compiled in so they advised me to do a git clone of the of the void packages and compile a version of the intel media driver with the non-free options that i needed this was really easy so i did as i did before you know i i ran the bootstrap package and then all i needed to do was again run xbps src and then the word show options for intel media driver and i can already see the following build options are set non-free is off now in order to enable this i simply built it as i built before and i'm following along here because i can't remember the exact syntax but i essentially followed along here and what i did was um i enabled the option so that's just a minus zero non-free now i already have this this driver installed so i did a force intel media driver and i built it and it takes quite a long time to build but once it had built it was again put in this local repository uh that's within that repo and uh suddenly i could do hardware rendering in there in obs now this is a virtual machine so the intel media drive is neither here nor there so i'm not going to bother doing that what i am going to do though just just to let you know how to do this because i've had a few requests is is how to use these source packages to patch a particular package now you know i've been playing around with slackware and you know how i use dwm and i like color emojis but essentially in order to install color emojis in dwm you have to have a patch version of lib xft so i wondered how to do this in void and i went on to the subreddit and i asked a few questions and someone gave me a method and it's really simple the thing to do right from the start if you want to do this i mean you can just do a standard configure make install but i prefer to have an actual package um i basically just cd into lib xft and it won't actually do because i need to go into the source package first there we go cd into the source packages lib xft folder okay then what i did is i created a separate directory just mkdii called patches and then cd into patches and i did a w get to pull down the patch if you need to know the url for that go back to my uh slackware video a few weeks ago where i was essentially using uh the package build from the libx g ft a um package on arch in the aur and i simply w getted that arl and it's called one dot patch okay so if i was to cat i've hit uh caps lock again i don't know why i keep doing that today so if i was to cut one dot patch you can see what i've essentially got here is a build script or this is the patch rather one dot patch um i don't know i'm gonna change its name so move change dot patch missing destination after change.patch what have i just done i know what i've just done move one dot patch change dot patch i don't know i'm not thinking properly today right so i've now got something called change.patch in that directory so let me cd out again into void packages that's all i've done i've just downloaded uh the lib xft bgra patch uh i've put it in a patches directory all i need to do from here now is to build libxft nothing else and it will automatically because there is a patches directory apply that patch so let's have a go at doing that uh doing these things live uh you always hope something nothing's gonna go wrong um but hey let's see how we go so dot xbps src okay so we want to to build this package now so it's pkg okay um and we want to we want to do a minus f to force because of course it's already on the system this and if i just do lib x f t i know it's got a capital x there so let me just check that i've got everything right here and i think i have let's hit enter and it's doing what it needs to do it's patching and it's compiling lib xft so let's just wait for it to finish that and we'll install it as we installed before and then i will take you to my laptop rather than having to configure a dwm in here i'll show you what it's actually done right so it's created the package i don't know if it'll let me go all the way back here but let me see if i can if i've got enough scroll back here i want to see right at the beginning of this process did it actually go to the patch directory yes it did there we have it lib xft patching it's applying the change patch okay well that's great so what we now have if i do a list and uh i go into host directory bin packages you will now see that i now have a live xft package and it's automatically compiled the development package as well which is really great so i now can simply do the sudo xbps install and i would use the f option here to make sure that because i've already got a package installed i want to overwrite that but the first thing i need to do is to tell it that uh it needs to point at my directory here and that is uh host directory bin packages so bin packages dash f so force and install and overwrite the existing packages that's there and lib xft so keep your fingers crossed password ah what have i spelt wrong here because this is bound to be me host directory bin packages not found in development pool right so what did i do there i know what i've done there i've messed up i've put an additional space there so let's try that again do i want to continue yes i do all done i also want to do the development one and i've spelled that wrong so it's not going to find it devel do i want to continue yes i do and off it goes and it installs that along with a load of additional ones now i can absolutely confirm that this works what i do want to make sure of though is that that package that i've just patched isn't overwritten the next time liv xft is patched and there's an easy way to do this i'm now going to do sudo xbps and the command i'm going to use is pkgda gdb pkgdb dash m repo lock lib xft [Music] that will ensure that that patched version of liber xft that i've just installed will not get overwritten okay so a little bit all over the place as i'm doing this in real time what i'm going to do now i've done this all on my laptop i'm going to fire that up and i'm going to show you what the ultimate result is and and prove that i can indeed run color emojis by doing this so just moving over to real hardware i've just done a few uh videos of my dwm on my t420 with simple screen recorder so i'm talking over it and you can see the emojis are up there and it's my solarize dark theme so it looks good no problem it works a treat let's have a look at some of the other window managers i've got and now you see my left wm i did a cargo install to get this on void and that's using the emojis as well let's have a look at spector wm so finally here's spector wm not using emojis just using the awesome icons that i've colored right let's have a chat right so that's void linux um i'm loving it i really really like this distro and i would recommend that everybody who's got a bit of experience give it a try i wouldn't say it's for new users because you have to build it up by scratch there's very little install by default but i like that i like a a blank canvas and uh if you're used to using arch and installing arch the archway uh it will be home from home for you give it a try right guys uh hope you enjoyed this video it's been long i know it's been long and it's been a bit rambly so we'll see how this goes but uh as usual i'd like to say you know please uh subscribe if you enjoyed the video if you'd like to support the channel please go to patreon.com forward slash old tech bloke and just bringing my patreon screen over i'd like to thank robert aristotelis mike ty forrest patrick glenn magnus darren mizlav chris and our newest member james mason uh as in the actor thanks james really appreciate it mate and thanks all of you guys uh for supporting the channel we've we've had four new patrons in the last few weeks so we'll start to slowly build up again so guys that's it for today and i'll see you next week have a great weekend
Info
Channel: OldTechBloke
Views: 17,674
Rating: undefined out of 5
Keywords: oldtechbloke, otb, linux, oldtechbloke youtube, old tech bloke youtube, void, review, xbps, openssl, rolling release, systemd, unix porn, runit, distribution, rolling-release, void linux, void linux install, void linux review, void linux vs arch, void linux virtualbox, void linux xfce, void linux spectrwm, void linux runit, runit init, how to install void linux, void linux installation guide, install void linux, void-linux, libxft-bgra, void-packages, void linux patching, dwm on void linux
Id: v6x1-wh7al0
Channel Id: undefined
Length: 44min 45sec (2685 seconds)
Published: Sat Nov 20 2021
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.