 A few days ago, I made an updated video on how to install Arch Linux. I ran through the base Arch Linux install, so the packstrap command and all of that. And then once I rebooted and had a working command prompt and networking was working, I left it at that, right? Because that really is the end of the base installation process. The software you install after that is really up to you. So it's always tough to decide what to do on a video past that because you guys want to see more. You guys want to see Xorg installed, you want to see a desktop environment or a window manager and various other applications, terminal emulators and text editors, you know, you want to see me set it up to live in. And that's tough because I have to make some decisions and whatever decisions I make on this video. People are not going to agree with, right? Because I'm going to do GNOME, but the KDE guys want to see me do an installation of KDE on Arch or XFCE or awesome window manager or I3 or whatever it is. So today, I'm just going to make some executive decisions, but very quickly I'm going to set up Xorg and a window manager on a base installation of Arch Linux. So those of you that were following along with me the other day and actually went through the base install with me inside virtual box, go grab that virtual machine that you created. And what I did is I took that virtual machine here called Arch Linux. And what I did is I cloned that virtual machine that it takes like a minute or two to clone that virtual machine. I cloned it like three times. That way I have the same virtual machine here. Basically I've got four versions of it. Why did I do this? Well, I don't I may break some stuff. You may break some stuff. You may break Xorg trying to install it or a LightDM or whatever login manager you do. You may have a broken desktop environment or window manager and it's nice to do everything in one of these cloned VMs and just leave that base installation alone. You've always got that. You can always come back to it later, clone it again if you break some of these clones. I'm just going to launch one of these clones here and it will be basically where we left off the other day, which should just be a command prompt. Remember, we set up the root user root password. We also created a normal user and a normal password for that user. So I created my user DT. I'm going to log in as DT and it's going to ask me for DT's password here. Let me scale that up so you guys hopefully can see the font. The font will be a little blurry, you know, blowing it up like this. But at least you can read what I'm going to do. And again, I'm going to go over this very quickly. I'm going to make some decisions on some software that I want to install. I know you guys are going to have different things you want to install. But at the end of the day, you have to make your own decisions. And if you have a problem with what you're trying to install, don't ask me about it. Go consult the ArchWiki. All right. So here's the very first thing I want to do. I want to do a sudo pacman dash capital S. So we're going to install some software. And then what do we need to install? Now, I'm in a virtual box here, you know, we probably need a video driver at some point. I'm going to do the XF86 dash video dash FB dev, I believe is the one I need here inside virtual box. I could be wrong about that. But if I reboot and I don't get an X server working, I'll come back and install some other drivers. Let's install X11. So install Xorg. It's just the big meta package with all the X11 things in it, like Xrander and X set root and all that stuff. Just install the whole Xorg package. One other thing I need to install, we need Xorg dash Xignit because I'm not going to bother setting up a login manager like LightDM. I've done that on videos in the past. Check some older videos if you want to see that. All I'm doing on this video is I'm going to use the Xignit RC file and we're just going to start X to launch whatever desktop environment or window manager I install. And then I think I'm going to do a window manager, a standalone window manager. We're going to need to draw wallpaper. So I typically use a program called Nitrogen. A standalone window manager is not going to have a compositor. So let's install PyCom for a compositor. Typically, the three tools you need to always make sure you install before trying to log in to a new desktop environment or window manager. You want to make sure you have a text editor. You want to make sure you have a terminal emulator and you want to make sure you have a web browser so you can go read documentation if you need help. Now on my previous video, I knew that Vim would not be installed out of the box. So I already installed Vim, but if I had not, I would add Vim to the list as far as a terminal. I'm going to add a terminal here in a minute, but if you want to go ahead and put your favorite terminal such as Termi or whatever it is you use, Alacrity is also in the standard repos. You could add that. I'm going to add a terminal at a later time in just a little bit. And then I mentioned we need a web browser. I'll go ahead and install Firefox right now. So let me type it correctly. So I'll install all of this because all of this is in the standard arch repositories. Give it my root password. It's asking me, do I want everything associated with XOR? Yes, I do. This may be a rather large download. I'll pause the video for a minute or two. All right. And we finished installing all of that. The next thing I need to do is I need to go ahead and install a terminal emulator. We really need a terminal emulator before we log in to a window manager. And then we also need a window manager itself. And the reason I didn't add those to that previous list of things to install is because the terminal emulator I'm going to install and the window manager I'm going to install, I'm going to grab from the AUR. But the AUR we haven't actually enabled the AUR just yet. So let me get over here, let me clear the screen. And here is how you enabled AUR, we're going to install it the proper way without a AUR helper because that's the only way to install the AUR at first is without a AUR helper. So let's go ahead and do it the official way. So first do a git clone and then this URL, HTTPS colon slash slash AUR dot arch Linux dot org. I just happened to know this URL here slash yay dash git dot git. And it's going to clone that repository from the AUR. And if I did a LS right now, I'll do a LS space dash LA for long format and all files including the hidden files. You will see in my home directory. I only have one other directory, yay dash get that we just did that get clone. Let's CD into yay dash get. I'll do it. Let's do it LS dash LA again. And really the only thing in here is the source info and the package build that's basically just an arch package. Let's go ahead and make it the standard way to make an arch package is to run this command make package make PKG space dash SI give it those flags run that this is error cannot find the fake root binary. So I made a mistake there before we can build packages on arch. You do need a set of packages from this meta package called base dash Devel. So run a pseudo Pacman dash capital S base dash Devel. And it's going to ask you, do you want to install these 24 programs here? And these are all programs that have to be installed before you can run things like make package and some of the various things you need for building arch packages and AUR packages, things like that fake root command that's number five in the list, which is the one we needed. Let's install them all. And then now that we've done that, let me clear the screen. I'm still in the yay dash get repository. So if I did LS again, you can see there's the source info in the package build. Now let me run the make PKG space dash S command. And now it should build yay for me. I don't think I mentioned that when I started doing the get clone and everything. What we're installing here is the yay, the AUR helper and yay has finished installing. So now we can install stuff from the AUR using the yay command, yay space dash capital S similar to the Pacman commands, although yay, you don't necessarily have to include the dash capital S. I often do because the flags for Pacman work with yay to now what I want to install. I want to install a window manager. I also want to install a terminal emulator. And the reason I'm using yay here is because I have my own DWM in the arch repository. So I'm going to do a yay dash capital S DWM dash distro to dash get is the name of the package. I also need to grab my build of ST the terminal. So ST dash distro to dash get. I also want my build of D menu D menu dash distro to dash get. I could also grab my build of surf. I think is also in the AUR, although I already installed Firefox. Even though I keep a build of surf around, Firefox is a much better browser, honestly. Anything else I need, I think tabbed is also a requirement for my build of ST. But I think yay is going to recognize that as a dependency and install tabbed anyway. I really think that's all I need. You know what? There is one thing I know because people have complained about it. I haven't got around to it. I'm sorry, guys. But my build of DWM does have a missing dependency. It really should include this dependency here. And that is nerd dash fonts dash mononoke because in my DWM config, it calls on the mononoke font the mononoke nerd font specifically. And for whatever reason, when I made the DWM distro to bay, you are package. I did not list that as a dependency. So I need to fix that. I'll try to fix that sometime this weekend. But those of you that if you install exactly what I'm installing on this video a day or two after I put the video out, it's probably still going to be broken. So make sure you install nerd dash fonts dash mononoke. If you try to use my build of DWM and hit enter a couple of times. Now, of course, you guys would install whatever window manager desktop environment you want to install. If you want to install the base version of DWM, you know, go grab it from the suckless website and configure it to your liking if you already have your config files for a window manager on something like GitHub or GitLab. That's great. Matter of fact, that's typically what I would do. I would just install something like Xmonad and then I'd run a Git clone of my dot files to bring down my Xmonad configs and I'd be done. This is very similar. It's up instead of having to go grab it from my GitLab, you know, I'm just grabbing it from the AUR because I had my DWM packaged in the AUR. So we've got Xorg. We've got our window manager. Can we just reboot and start into X? Well, there's something else we need to do. We were going to use the exonit file. So let's go ahead. I'm going to clear the screen. If I do a ls-la in my home directory, I don't have a dot exonit rc in this directory like I should. Now, we could copy one because there is one on the system, an example one. Let me copy slash etsy slash x11, it's capital X11, and then exonit, well, just tab complete here, exonit rc. All right. And let's copy that over to slash home slash dt. And we're going to name it dot exonit rc. Very important to put the dot in front of it where you're copying it to your home folder. And now if I do an ls, you will see that dot exonit rc is actually not here. Why is it not here? Well, because I'm not in the right directory, I'm still in the yay dash get directory. Let me cd to get back into the home directory and now run that ls. And there is the dot in it rc. And the next thing we need to do is edit it in our text editor. Now I had already installed vim on the previous video I did. So I do have a text editor on the system. I'm going to page down to get to the end here. And the very end of the exonit rc starts TWM, Tom's window manager and various x11 utilities such as x clock and three different x terms you guys have probably seen that if you just install xorg and run start x, you know, x11 does have its own window manager built in called TWM. It's not a very good window manager. So what I would do is get to those last five lines and in vim DD, just DD about five times to get rid of those last five lines because we are going to start some other stuff. And what I want to do is first when I start x and it launches my window manager, what I really want it to do is I want it to draw the wallpaper on the screen and we're going to use nitrogen for that and the command to restore our wallpaper using nitrogen is nitrogen space dash dash restore and give it a ampersign at the end because we want that to be a background process, a process running in the background. We want our compositor to also be running so pycom space and then a ampersign and then let's go ahead and execute our window manager, which is going to be DWM in my case. In your case, it might be i3 or awesome or Xmonet or whatever it is you're trying to start. So let me colon WQ in vim to write and quit. And I really think that's about it. I think I could reboot now. Let me go ahead and do a sudo reboot and let's see what happens and it's starting. We have a log in. Let me log in as my normal user. You don't want to be root when you start x. You need to be a normal user. So whatever user you created as a normal user, log in and then run the command start x. Everything works correctly. Your window manager should launch. Now this is a little weird because I think x11 started just fine. I think xorg is running, but nothing's going on. You see I don't see any errors on the screen. I think what happened is virtual box, there's a problem with the driver. So what I'm going to do is let me kill this VM and let me go into the settings of this VM and see what kind of driver we're using under display v m s v g a. That's the default driver have enable 3d acceleration ticked on. Let me tick that off. Was there something that xorg didn't like there and it wasn't xorg failed to start. It wasn't that because you would get errors and I could go read the logs if that was the case. But I think xorg started is just the VM is just not able to show me what was going on. Yeah, that was it. We just needed to change that setting and virtual box. And this is my build of DWM and it's got the correct fonts. My workspaces. We also had my version of ST let me that's typical DWM right there. And if I do the super shift enter, there is my D menu. So we installed those all three of those from the AUR. Let me open a terminal. Let's get a proper screen resolution. So if I do a X render, let's see what screen resolutions are available to me. I would prefer 1920 by 1080, but it doesn't look like that's available in virtual blocks with these drivers, but 1680 by 1050 is available. So that's a pretty good resolution and let's see if I can, you know what, let's make it full screen if I can. All right, now that we've got a better screen resolution wallpapers. Now what I would do is I'm going to run another get clone, get clone, HTTPS colon slash slash and this time the URL is going to be getlab.com slash dwt1. This is my get lab slash wallpapers.get. Let's clone my wallpapers repository over at my get lab. All right, now that we've done that, if I did a LS here, you see that I now have a wallpapers repository. So let's CD into wallpapers. I run a LS, you know, I have about 300 wallpapers in that directory. So let me close the terminal. And then I'm going to start D menu and I'm going to launch nitrogen. This was the program that will draw our wallpapers. I'm going to go down here to preferences and I'm going to add a directory going to go to the home folder to wallpapers. I'm going to select the wallpapers folder and I'm going to click okay, it's going to load all of those wallpapers in nitrogen. And then I just need to pick one to pick this one right here. I'm going to click apply and I think I need to have it scaled. Otherwise, I don't think it's going to fill the whole screen. There it is. All right. And now let me quit out of D menu. Let's get back to the command prompt and start X launch D menu again. Yeah. And you see our wallpaper starts again, although now I have to run X rander again, which I could add X rander to the startup script. So you know, this isn't a problem. Of course, now I'd have to run nitrogen again too, but this is just a VM problem. This is not something you guys would have to fool with here. Now, some of you, if you're running a standalone window manager and you're using start X, some of you guys are not going to want to have to log in with your username and then your password and then type start X to log in. You probably want to skip that start X script. So you can do that in your bash profile. So open in your favorite text editor. I'll use them the dot bash underscore profile ball on your system. And I'm going to go to the last line here and hit O to get into insert mode and add another line. And I'm going to insert this command here. So I'm going to do two opening brackets and then a dollar symbol and then an opening parentheses, FG console, all one word. And then two greater than sign slash dev slash null. And then a closing parentheses space. And then equals equals space one. And then the two closing brackets. Oh, that's not the right brackets. The square brackets. All right. And then after that and and execute start X space dash dash space VT one. I found that on the internet. There's a several ways you can go about starting X automatically, but your bash profile gets read, you know, before anything else. So when you log in, immediately your bash profile is read. And because you have that command where it's you're telling it, hey, go ahead and start X, it's just going to start X automatically for you. You don't have to worry about it. So I'm going to write and quit. And let's do a pseudo reboot. And if this worked, when we log in, it should automatically start X for us. So if it just a second here, all right, we're at a prompt and let me log in with my username and my pass and it starts X automatically. And I think that's where I want to stop with this video because honestly, there's no point and going any further because again, what you install is going to be completely different than what I just did. And to be honest, I wouldn't use start X. I wouldn't use the X and yet I did that on this video because I've never done that on video before. And you guys have asked about it. I would install LightDM. I would install a login manager and use that. The reason I do that though is because I have so many window managers installed on my systems. But if you only run one window manager, yeah, it makes sense to just use the X and yet and just use start X. And you guys, even though I did my personal builds of DWM and ST and all of that, very few of you guys probably want to do that. Just install whatever window manager or desktop environment you're used to. Hopefully, again, you guys have your own config stored on your personal GitLab or GitHub. And that way, as soon as you have the window manager installed, Git clone that repository that has your dot files, boom, you're done. Really it's so simple. That installation of Arch Linux I did the other day, the base install seriously probably took 15 to 20 minutes. I don't know. The runtime of that video was a little over 30 minutes, but that's me talking in the video. I really did the base install in about 15 minutes and installing Xorg and my window managers because already having them configured, you know, if you've got your own configs, you've already got yours configured. That seriously took 15 minutes. I mean, I can be up and working in a brand new Arch Linux installation with a working desktop environment or window manager and about half an hour. People make Arch Linux seem like it's a lot more time consuming than it is. It's not that time consuming. If you come at it prepared. Now, before I go, I need to think a few special people. I need to think Michael, Gabe, Corbinion, Mitchell, Devon, Fran, Arch 5530, Akami channel, Chuck, Claudio, Donnie, Dylan, George, Caleb, Devils, Lewis, Paul, Scott and Willie. They are the producers of this episode without these guys. This video about how to install Xorg and a window manager inside Arch Linux. This video wouldn't have been possible. The show is also brought to you by each and every one of these ladies and gentlemen. All these names you're seeing on the screen right now. These are all my supporters over on Patreon because this channel is supported by you guys, the community. If you'd like to support my work, look for DistroTube over on Patreon. Alright guys, peace.