Install FreeBSD 14.0 in QEMU VM with KDE Plasma tutorial kdesrc-build Qt6 - November 2023 - 3dbb0872

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
hello today we are going to install FreeBSD 14.0 the just released version of the FreeBSD operating system in a qmu virtual machine then we're going to set up the KD plus mod desktop and then we're going to set up the KD SRC minus build KD build infrastructure so this is the Wiki page of uh the operating system FreeBSD the web page the homepage is U freebsd.org let's download so there's the option FreeBSD 14.0 which is what we want the options to download are um ISO boot uh ISO files dis one or dvd one we're going to go with a smaller one dis one for version 14.0 we have the installer amd64 which is a directory where we will download dis one. ISO which is 1 gab in size probably yes so let's download it let's actually download the X Z version maybe this is faster to download let's look at the speed so this is 100 megabyte megabit per second okay we also have a readme file which then um sends us to these four files we have the BSD install utility and the handbook okay this is the manual of FreeBSD how to install it how to configure it it's comprehensive it's uh very well written so the iso has finished downloading but it's compressed using XZ so let's un XZ so in retrospect it was not really needed to download the XZ file because the difference in size is not that great so compressed with XZ was 700 megabytes and not compressed it's 1.1 GB okay now we'll create the virtual machine virtual machine manager new ISO browse re scan refresh volume list 3 BSD choose volume could not detected 3 BSD 13.1 forward 10 gabes 14 vcpus 250 Gab bsd1 14 customize finish the better motherboard okay let's have just one CPU and 14 cores and let's try to change this to SATA such that we have better read speeds from the cdrom drive and we keep the rest of the defaults begin installation okay so it boots okay so the default option is boot into the installer which is also documented in the handbook okay so it booted and now we're uh running from the ISO from the live CD not from the hard this the hard disk is still not even formatted would you like to begin installing I'm going to press enter standard US keyboard great choose a host name bbsd 14 press enter no kernel debug no base debug no ports no SRC no tests maybe leap 32 okay I'm not going to use ZFS I do not know how to use it ufs sounds okay use the entire dis it prefers to use a MBR dos partition what can I say it should be okay so there's a ufs most of the hard space 246 GB of the 250 for Slash and then 4 GB for swap sounds okay press enter to finish permanently erasing the hard disk which hasn't even been formatted before so base C eral and lip 32 so all of these are part of the FreeBSD SRC source code and after we finish installing that we will also install from the 3 BSD binary packages from ports okay type a password for the root select a network interface card [Music] ipv4 DHCP would you like IPv6 never seems okay like this time zone America United States easternmost areas EST skip skip okay local Unbound is a DNS server SSH I definitely want it ntp power d d Dev okay so like the current selection seems okay security hardening it's just a virtual machine seems okay would you like to add users so a nonroot FreeBSD local user account administrator user group I'm not sure where I need to to which other FreeBSD local user groups I need to add the user administrator such that it can do it can switch to the user route using for instance sudu okay so the handbook suggests that I should add the user to the user group wheel and then it's also documented in here it says invite user into other groups additional groups to which the user will be added as a member if the user needs administrative access it does type whe here so it's see seems that we covered whe shell home directory directory permissions password B authentication not an empty password not a random password lock out the account after creation okay yes add another user no what else do we have so we've added a user we set the root password host name Network Services hardening time zone and we do not need the FreeBSD handbook we have it um available in the host operating system we do not also need it in the virtual machine so exit apply configuration and exit the installer okay installation is now finished would you like to open a shell no reboot let's make sure that the CD ROM has been removed it has this time it will boot from the hard disk so there's MBR partition table there's at least two partitions there there's a boot loader the operating system has finished booting now it asks if I want to log in which I do which I do not let's not even log in we have this IP address so let's try to connect directly using the SSH client okay are you sure you want to continue connecting yes what's the password the password is okay how do I become super user the the password of the user root and now I am the user root usual command lines that you run once you connect for the first time to a system okay ufs soft updates journals soft updates and/ Dev okay let's continue following the three BSD handbook so we've created the user we've exited we've connected to the virtual machine using an SS client so the installation was correct we are connected uh using the SSH client next up would be to set up enough software SES that I can survive at the command line for that I go to my Wiki so narus p. github.io how to install an operating system and how to enable the RDP ser okay so I have connected using SSH I am super user we'll see if we can install packages using PKG PKG the package management tool is not yet installed would you like to install it yes so the y key on my keyboard press enter so it uses quarterly and now the package is installed the package manager PKG software so I will install bash which is a um command line shell MX no X which is a command line text editor MC which is a command line text user interface Orthodox file manager and git if we're still at this thing we can go copy paste proceed with installing 40 packages yes 67 so re BNG Pearl five modules X11 libraries PC curl internationalization icon BM garbage collector python 39 compression libraries SSL libraries okay let's read the messages after the packages have been downloaded this they were extracted and installed and after that we see the messages from various packages so python says there are the uh separate ports for some python 39 packages okay Le Sig seg we will have procfs mounted probably soon enough yeah we will have it git we do not use git web midnight Commander does not work that great with SH which is the shell that we have right now configured for the user roote at least we will switch to Bosch so all of these looks okay let's let's switch the shell from sh to bash for the user root contrl D to exit re become super user and uh now the prompt is different so this was probably the prompt from the sh command line shell and this is the one from bash B okay let's um let's start installing packages for for graphical user interface all of these notes are after I have have U followed the manual a couple of times so there's um this is the FreeBSD manual let's see what it says in here so there's virtual consoles we will not use this we will just connect via SS and that's it we have uh two user accounts administrator and Route the directory structure is pretty similar to what in Linux shells there's the born shell sh extended cell TCS zsh B so Z shell and BOS okay I've changed the Shell let's see how we changed the shell for also the user administrator so in here we're installing the X server which is at how to install software so we can install software from source code using ports or from binary packages which would be packages in order to install packages you need the command line application PKG the first time we have run PKG it has installed the PKG application and then I've started installing packages from the list of available packages so this is how you install PKG for the first time you can choose between quarterly and latest quarterly is Stabler and is the default okay you can search for packages PKG search and then the parts of the name of the package you can install packages using PKG install and then the name of the package to install okay there's um PKG upgrade similar to up upgrade so we will upgrade all of the packages that have been downloaded and installed previously package delete in order to delete to remove a package package Auto remove similar to up too remove okay so these are really Advanced usages that we will not need we do not use the port collection which would mean patching a ton of source code and then uncompressing it and um configuring it compiling it and then installing it so we use pre compiled software okay so these are the chapters about ports okay then it's up to the X Windows system you want some sort of graphical user interface at least in my case so the next step would be PKG install xorg which I just run it provides a list of 163 packages to install so that's fonts um input and output drivers libraries x uh libraries cursor theme compression libraries X libraries more fonts compression Library fonts okay by default it doesn't install anything if I press enter Because the option to not install anything is default so I need to press Y and then enter the current user must be a member of the video Group which I do in here so PW group mode video minus M and then my username which is administrator in this case okay a ton of packages have messages let's read them so Wayland was installed free type okay we want the newest and greatest rendering xorg fdev on a device PS2 devices I'm not using any hardware devices I'm not not using the virtual machine at all I'm just connecting to it via SSH and via the RDP server that's it I'm not doing anything in here in the virtual machine manager virtual machine graphical console so hopefully I do not need to do any of these so so this sounds okay so I'll need to give permission to the user administrator by making it by making the user administrator member of the user group video I'm not using any graphics card drivers because I'm connecting remotely from using an R DP client and server I'm not using Intel I'm not using AMD I'm not using Nvidia I'm not configuring xorg I'm not configuring mod monitors render no input devices I'm not going to use Wayland I already did this wave fire k s okay so there's an entire chapter chapter six for whand there's nothing for me to configure for Network everything has been configured in in the installer and now there's desktop environments KD plasma okay let me go back to my notes so I will install Noto which is the best fonts and then sudu in order to become super user without going Su space minus okay so many fonts for various languages provide with uh proceed yes okay just a second okay so a ton of um download of the many packages to download and with uh I don't know more than 500 megabytes in size okay now let's make sure that the user administrator can use sudo the user administrator is part of the wheel user group but uh we still need to allow the users that are members of the wheel User Group to become super users us using sudu so I'm at the step V V sudu but since I do not know the text editor that Vudu starts by default I'm going to force Vis sudu to actually open the text editor that I use at the command line which is MX so that would be editor equals emac so that's an environment variable we could either exported this environment variable or prepend it to the command line visu okay and now visu has opened the configuration file in emx and at least in here I know how to exit Okay the line is this one allow all members of the group will to execute any command CR XS crl x c crl l now let's prove that the user administrator can use sudo and it works okay then um we're going to continue with the manual at um how to install and configure KD plusma desktop so there a meta package that installs KD plus Modesto plus some applications and then there's plasma 5 minus plasma package which is a really minimal installation and you'll need to also install some must have applications such as console okay which is this part but then it doesn't say that we need proc FS which we totally do need let's search for procs it's documented as part of configuring no but it's not in here when it says how to install and configure KD plasma I'll um guess that this is still needed even if the instructions do not say so that KD plasma does require proc FS the instructions do say that gome does require procfs so I'm going to actually install it configure it add this line to at CFS tab okay so Emax slsy slfs tab at the end this is the line let's see if cop paste Works hopefully it did no strange characters in here we'll see uh let's put a trailing new line so press the enter key save contrl XS close contrl x c okay then um I'll need to mount all of the fire systems including procs otherwise I need to restart the computer so that's this step okay so proc FS is mounted into slpr great then we'll install KD plasma so let's install the bigger meta package because I'm not sure if this will install enough because I totally want a samee default configured KD plasma with all of its dependencies with the system settings with plasma integration with themes or the preferred fonts sddm everything so that's why I'm going with a bigger one even if it installs more applications so I don't really need KD games or more than five KD applications okay back to my notes so that's the next step PKG install KD5 yes we'll install 700 packages 1 gabes to download so this is a theme this is for sound notifications compression algorithm personal information management so that would be ma email calendar and similar things this is video Codec this is an application I ke the application so it's going to take a while to download all of the packages we'll pause for a bit okay so package install KD5 has um downloaded and install 700 packages then we have um many many messages from the packages which will need to read each and every message at least 100 packages have messages for us to read okay so C root certificate Authority okay liex KB common arrow keys that don't work under X1 duct tape no maintainer cute 5S SQL I notify C Max files tunable pulse audio so all of these um let's um save all of these messages just in case okay we'll have them here in case we'll need something okay cctl net local stream Rec V Space so this is recommended by kmail but we're also going to do it because the FreeBSD handbook B says we should do it so after installing package install KD5 the next steps are these ones so let's run them C rcdb enable yes okay hopefully we just run this thing as root and it works okay the preferred way to start KD plasma is using the desktop manager SDM but we do not actually need it because we're just connecting using an RTP server so let's install the RDP server there's two packages xrdp and X or xrdp also installs PSE audio module for forwarding sound between the host and the guest okay then it says uh in the message from xrdp package that um we should enable xrdp and xrdp sesman which we're going to do right now okay and then it says about the start wm. sh file so we'll create one for the current user for that we need to not be the user root anymore contrl D we need to create this file emx control shift V with this line as the only content contrl xsr x c make the file l m my make the file executable so there's a file start wm. sh without a DOT at the start which is executable by everybody let's uh also install Firefox before connecting the first time using the RDP server so sudo package install Firefox one package to install a quarter of gigabyte will be taken on the of the hard disk so this is the message from the package Firefox audio backend missing features Gamepad API SMB SFTP okay so that's this should be it if we're lucky we're just going to restart the virtual machine and we'll be able to connect to the virtual machine as we did before using the SSH protocol but also using the new protocol which is RDP Microsoft's remote desktop protocol so let's see if that works let's become a super user boot let's see how the virtual Machinery boots okay so there's a timeout of 10 seconds in the boot loader after that it will boot the default option which is option one the multi-user okay so it said that it has started the SSH server sshd the xrdp services xrdp and xrdp sesma let's try connecting and maybe we're lucky control l so the command line to connect is um this one and the IP V4 address is ends with 223 okay says that we're connecting to a computer that we have never connected before do I trust yes so Y and then enter it asks me for the password of the user administrator this is the plasma Splash so it took a bit of time because it needed to create many configuration files for the current user which is named administrator and now we're inside the virtual machine we've totally ignored the virtual machine manager console graphical console I didn't click inside of here I didn't press any keys and anything if I wanted to connect via console I went with the SSH client if I wanted to connect from the host to the virtual machine in graphical user interface mode I'm using this command line so X3 RDP user with height and all of these extra parameters which you can see on my wiki page which is andario speed. github.io RTP okay so next this is the KD plasma desktop it works correctly next up I'm going to set up in here kdsr C minus build with the current version which is for cute framework version six so let's um configure a bit Firefox ignore what I'm doing in the following seconds okay how do I close this button and then settings and then downloads ask where are you ask where to save okay so this were all of the settings that I needed next up I'm going to go to the KD web page and I'm going to use Firefox in a private browsing mode so kd. org and Burger menu get involved development and um FreeBSD is not one of the best supported operating system by ksrc minus build but it is supported okay so have already installed git I don't need to write to git I'm just going to use git in order to read so let's start with these instructions let's make sure that we have favored the console so this should be added to favorites where are you this should not be in here okay so this is a default KD plasma terminal application I'm going to run these command lines okay so we did the step where we get clone the KD git repository in vent. k.org SD k/ ksrc minus build next up is uh we're going to run the initial setup it uh asks my password is going to run this command line so sudo package install autom make buy and boost cake docbook doxygen igon get text gake gurf cute five so the list is really really small should also have cute six in here so the password package command not found that's interesting sudo package does not work package command not found let's become super user package is still not found in here so minus so it's in/ USR SL SB in/ PKG so the environment variable path for the for all of the user users except the user route is incomplete contains B and SB but contains USR be does not contain USR slsb and probably also SL us/ loer hasbin if these are not sim links so I need to edit the path environment variable so let's see how how I do that that [Music] CD LS minus l so there's configuration files for the shell there's uh config C shell RC B history do profile shrc so let's look at those this thing this thing this thing this thing editor is V pager is less so slaty login.com let's see the the configuration files for the shell for the uh super user contrl shift T So minus m see whoa that looks really ugly F3 so this is the problem the uh do profile file for the root is heavily edited whereas for the other users it's heavily commented out and just depends on/ Etsy SL profile we can see it in here/ login.com okay so let's edit this file says we should comment out the line path SB SLB correct SL USL slsb SL USR /b correct SL USR Lo /b/ USR Lo /b correct home SLB correct and Export path why doesn't it do it like this where how do I save F2 yes F10 F10 so I'm the user administrator I need to Source D sl. profile okay and let's look at the environment variable path and it's the correct one with / USL /sb and now if we run which package it will find it okay so again let's make sure that PKG is in the the path and it is so we'll go back to in here so we were in the directory dilda SL kd/ SRC SL ksrc minus build let's run this thing okay asks for the pass of the user administrator and now PKG does its thing it will download and install 81 packages and this time the speeds are way better so it's 17 megabytes per second versus 1 Megabyte per second which was previously so 10 times better okay so we the KDC man build tries to install as many packages from the operating system which is FreeBSD such that many KD git repositories can be built using ksrc minus build so at least all of the KD Frameworks version five all of the KD Frameworks version six should be a able to build because the needed dependencies have been installed by ksrc minus build initi short setup but we'll see from what I see the list is really limited does not seem to contain cute six at all okay it has downloaded it has installed we're seeing more messages from the packages sqlite C 5 web kit is deprecated of course it is do you want to update bashrc no which is the default I'm going to move this configuration file to the current directory I'm going to look at this configuration file with the K KD text editor okay so let's see Branch group kf6 q6 correct include dependen is correct directories are correct with de info is an option the other option is debug if you want to actually have debug symbols and you want to debug the generated executables okay num course correct install session Driver F so these are just the default values let's start building first of all we'll make sure that everything's correct by building so in order to build you need to append do SL because ksrc minus build is not in path ksrc minus build is an executable so/ ksrc minus build and then I always build KD git depositories in the same succession so first off is K config which is the KD framework version six there will be G cloning for three kdit repositories CIS admin repo metadata extra cake modules and K config and then for all KD repositories except C admin repo metadata it will configure build and the install so build in the sense of compile okay so this is git clone this is cmake configure this is compile and this is install let's look at the three directories so in the Tilda / KD directory there's uh three subd directories in here individual git repositories have been Cloe cloned but the git clone directories are really really clean all of the build artifacts intermediate files generated files Etc will be inside / kd/ build and then the name of the KD repository after the repository is built for instance this one the generated files will be then copied in the installing step into Tila SL kd/ USR in here okay so building ECM exstasy m modules has um succeeded but then building K config has failed and probably because a FreeBSD package was not installed let's see which one and says cute install prefix require no executable found so ECM query cute that's totally because we we do not have cute 6 yet so let's search for um the free BSD package and then install it okay I'm the user rout package search C 6 so there's cute 6 base five compat the version is not the greatest so the latest version is 6.6.0 but this is the penultimate version 6.5.3 okay there should be a mecha package this this one cute 6 meta Port this guy so let's install that one package install cute 6 44 packages to download go ahead let me keep some notes so package install you six okay download speeds are 10 megabytes per second again which is good it's installing packages and now I guess that um the KD git repository K config will be buildable so again/ ksrc minus Bill Spacek config git operations seem to operations seems to be seem to be slow at least for this KD post okay I'm not sure why why G operations are 100 times slower than they should be each of the git operations take maybe there's some timeout in here okay so KD SRC minus build has successfully built the KD reposit key config next up I'm going with the KD reposter K C which is a desktop okay so even the third git reposter fail to build which is whand let's look at um what's missing and it's um at least five packages that are missing so this XML to so these are for Wayland let's skip over um Wayland for now no stop on failure is the setting that I'm looking for I do not see it in here okay so no stop on failure even if whand does not build maybe the other G posteries actually do not need whand and can build correctly also from the KD wiki page where it say where it's documented how to install in config KD SRC minus build we should um disable f file search indexer so that's in u the system settings I search for index and then I just disable file search nothing bad will happen this is a virtual machine and I'm also deleting the index data so with this maybe operations inside Tilda / KD directory are a bit faster now oh indeed K Cal has built correctly even if the whand git repository did not build correctly so K Cal is the KD desktop calculator which would be this thing so this is from FreeBSD packages and it uses cute 5.15 do10 and then I have built from Source latest source code from the KD git repositories for this application kalk which uses cute 6 so the command line would be ksrc minus run not build and then the name of the executable K Cal okay so this is K Cal that uses um C 5 from the free BSD packages binary packages whereas this keal 2 is the one we've just installed from source from kdit it's the same application but it looks a bit different okay so you can see that the cute version is 6.5.3 the cute was installed from FreeBSD packages cute 6.5.3 cute 51510 is also installed from FreeBSD packages but then K Cal 23 3081 is installed from free BSD packages whereas K Cal 24175 is installed using kdsr C minus build straight from the KD git repository Master Branch okay now the theming is um different because this uses the theme that the user has chos in um system settings which is this te Breeze this one whereas this other application does not know that the user has chosen to use breeze so this is a different uh theme you can see the scroll bar is themed differently there's um buttons at the ends of the scroll bar whereas in here there's no such thing the tabs do not have that U horizontal blue line so in order to fix that the next step would be to build the KD G repository named plasma integration let's actually do that so next time when we run KDs when we run K Cal buildt from using ksrc minus build after we build successfully the module plusma integration and we install it the theming should look really similar between the two k alks the one with cute version five and the one with cute version six so ksrc minus build managed to BU peed plasma minus integration the KD repository correctly and now the theming for the application kyal should be better so let's run ksrc minus run kyal again let's have the kyal from FreeBSD and let's compare the theming so when I hover on the K main menu I have the same effects in about Kul The Styling of the tabs looks the same with that horizontal blue line the scroll bars are the same so it's the same thing okay in here this is actually a status bar and it's themed differently maybe this is uh from the changes that went into KD plma 6 which is um not using frames so there were um rounded corner panel like things in uh many places in applications and now everything is more rectangular and with less intermediate uh widgets so there's a s then transition from this which is a edit box to the border of the application whereas in here there's these 10 pixels when you can see the background of the application okay and the settings also is improved there's a search there's this one pixel horizontal line in here there's this header bar thing going on with um the text of the um tab okay so now the applications that we build with kdsc minus build we can run them with the correct theme next up would be to build the rest of the KD Frameworks version six so that's KD SRC minus build no stop on failure and the name of the module set is Frameworks which is 8 git repositories to build this will also take a while so uh this should be it if I find that some KD deposi does not build 9 99% of the cases is going in for free FreeBSD will be that um we will need to install additional packages from FreeBSD using the common line package install and I'll document which additional FreeBSD packages we need to install such that at least ksrc minus build Frameworks works correctly thank you
Info
Channel: nmariusp
Views: 1,335
Rating: undefined out of 5
Keywords: FreeBSD 14.0, KDE Plasma desktop, kdesrc-build, Qt6, xrdp, xorgxrdp, freerdp
Id: 8MqBnb3Y9JU
Channel Id: undefined
Length: 75min 21sec (4521 seconds)
Published: Fri Nov 24 2023
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.