 One of the things that I have done on video a couple of times before is I take some of these popular desktop Linux distributions, many of them that people often label as beginner friendly, and I tweet them, customize them to my liking. I tried to turn them into more of a power user kind of distribution rather than that noob distribution. I've done a couple of videos in the past. I did a from noob to power user using Linux Mint, and I did a from noob to power user on Ubuntu. Today I'm going to do from noob to power user using MX Linux. MX Linux is a Debian-based Linux distribution. It's very stable. It's one of the more popular desktop Linux distributions out there. Currently, MX Linux is ranked number one on Distro Watch's page hit rankings, although the Distro Watch rankings really don't mean much, but MX Linux has become pretty popular here in recent years. So I downloaded the latest release of MX Linux. This is version 21.1 codenamed Wildflower, and I love the flower wallpaper and the cocky and everything out of the box. It really does look good. One of the things I've never quite liked with MX Linux is this left-hand side panel. I don't mind having a panel on the left-hand side. That makes sense. But everything that's important on a panel, if it's going to be on the left-hand side, needs to be at the top. Because naturally, that's where everything happens in most of your applications, most of your programs. Think about your web browser. Where are all the controls? Typically, the important controls are at the top left-hand side of the screen. So you want your menu button, right? That's the thing you're probably going to interact with the most. Needs to be here at the top. It doesn't need to be here at the bottom because obviously, for example, if I had a web browser, I'm going to be doing back arrow, forward arrow, the URL bar, and all of that's up here somewhere at the top left. And then I'm coming down to the bottom to hit the menu. And then back up to the top to do my window controls for whatever else, file managers and things like that. So I'm going to completely rearrange this panel. And I don't use XFCE that much. Let's see how easy it is for kind of a XFCE nub to rearrange things in these panels. If I right-click on it and go to panel, and I go to panel preferences. Let's see. They have this mode here. Next bar is the default. I could go with horizontal and get a horizontal bar, but still things are not in the right place. You've got the start menu here all the way to the right, which, again, everything happens at the top left of all of your applications. This is way in the wrong place for such an important thing on a panel. If you want to put your clock, for example, nobody interacts with the clock, you just look at it. It can be on the left side, but they've got everything kind of reversed here. We could also do vertical, which is the same left-hand side panel, except the clock is a vertical kind of layout here instead of a horizontal one. Yeah, that's a little weird. If I go back to the default desk bar. Now, by default, they've got the panel locked, meaning I guess you can't really do anything with it. I'm going to unlock it and see if that allows me to actually move anything. Can I just drag things? No. If I go to right-click and move, now could I drag it? Move it to the top? Yes, I can. And now let me see if I can move this session menu, which you're never going to interact with. How often do you lock out of your desktop environment? Once every day, maybe some of you guys probably never log out. This really could be down here because, again, you're never going to interact with it anyway if I can get it to move correctly. I may have to play with these things a little bit. Maybe the sys tray here is getting in the way. So I've rearranged the order here. I put the most important stuff that you interact with all the time at the top lift, which is really where it needs to be with these kinds of panels. So I've got the menu. I've got our workspace switcher. I've got our quick launchers for our most commonly used programs. So again, they need to be somewhere where you can easily get to them. And then the stuff you hardly will ever interact with. So your system tray stuff can all go down here, our battery little icon, which I'm not using a laptop. But if you are, typically, you're just looking at the battery icon. You don't have to go and click on it typically for anything. And the session menu you'll hardly ever interact with. And the clock, again, you just need to look at it. All of that stuff can go down at the bottom. So now I'm going to go back into the panel preferences here and lock the panel that way nothing gets accidentally moved from here on out and close that. Now for me, one of the things I love to do, of course, is open applications quickly. And I could hit super and I could start typing something like a Thunar for the file manager here in XFCE. And that certainly works. You know, that way I don't have to navigate this menu. Even though I purposely put the menu here, in case you have to click on it, it makes sense for it to be here. Honestly, you could always just hit the super key and just start typing for something. For example, a terminal, just type term and hit enter. That's very quick. And that's the way I typically interact with my programs as far as a run launcher. But for me, I prefer something a little bit more flexible, a little bit more powerful for a run launcher. So the one I like is D menu. Those of you who've been following into the channel for a while know that I really love D menu. So I'm going to open this terminal. I'm going to zoom way in. I'm going to sudo apt install D menu and D menu is in the repositories. Now, if I do D menu underscore run, just to see if it works, this is what D menu looks like up here. You can see at the top and it's actually covering the window controls. So let me move the terminal out of the way. And up arrow and rerun that. And this is D menu. So if I, for example, was looking for Thunar, I could, you know, quickly get Thunar up. Now D menu is one of the suckless tools. And typically with suckless software, you need to configure it. You need to get into the source code to change things and recompile. And of course, installing D menu through the apt package manager or any distributions package manager doesn't allow you to do that because you don't have the source code to play with. You were dealt this already pre-compiled binary that you can't really edit. So really the proper way to install D menu is actually not to install it. It's actually to go and get it from the web. So let me go and open Firefox, which is the default browser here in MX. And typically you would go to suckless.org. You would go to tools. And then somewhere in tools is D menu. And you could download the source for D menu. But typically how you would want to handle this is you would actually just want to use get and if I go to source and then D menu, you will actually get the get clone command to actually clone the D menu source code that you could then edit for, you know, set all your colors that you want for D menu and then recompile. It sounds difficult, but it's really not. But honestly, for me, because I already have my own get lab repository. So if I go to getlab.com slash DWT1, I actually have my own personal build of D menu on my get lab. So if you go into my personal projects and view all, you should find D menu dash distro tube. So click on that and then click on this clone button and then clone with HTTPS. Grab that link, just copy that link. And now control alt T inside MX Linux should bring up a terminal. And it does, I'll make it full screen and I'll zoom in. And then all I need to do is run the command get clone and then control shift V to paste that link we copied. And it will run the get clone on the D menu dash distro tube repository. So now if I do a LS in our home directory, you see we have a directory here called D menu dash distro tube that holds that source code. So let's CD into D menu dash distro tube by doing LS. There are all the source code files. And because it's my own personal build, I don't need to do anything. All I need to do in here is sudo make install. And then I'm also going to do a and and remove config.h. So we get an error. It's complaining about this line and this particular C file part of the source code is complaining about some kind of library. xlib.h. So I can tell you in Debian, Debian based distributions, there is a dependency. You want to do a sudo apt install lib x11 dash dev. Let's go ahead and confirm that we actually want to install that. And now let me up arrow back to sudo make install and and remove config.h. And we now have a new error. Now it's complaining about x11 extensions xenarama.h. So now what I need to do is I'm going to up arrow back to installing lib xenarama dash dev. And now up arrow again and hopefully the sudo make install actually works this time. And now we get one more error xft.h. And I'm going to assume that we need to install something called lib xft. Is there a dash dev? I don't know if the dev is important, but let's go with that. I'm just flying by the seat of my pants here, guys. But this is the kind of problem solving sometimes. Now some of these packages I know a little bit about. It's not the first time I've seen some of these errors, obviously being a long time dmenu user. And now it compiles correctly. It asks for confirmation. Do we really want to remove the config.h? Yes we do. And now when I run dmenu underscore run, yeah, this is my dmenu with my colors. So that is my build of dmenu. Now for those of you that want to grab my build of dmenu, but maybe you want to change some of the colors or the font sizes, things like that, again, you have the source code here and the actual config file is config.dev.h and you would open with whatever text editor you want to open it with config.dev.h and then you just go in here and find some of the lines that you want to change here. For example, this here of course is the fonts I'm using. You're setting some of the opacity. I don't really use any opacity with my build of dmenu. I'm selecting various color schemes. I forgot I had 10 different color schemes available with my build of dmenu. But anyway, if you want to play with some of that, you absolutely can. I'm going to go ahead and exit out of the terminal. I'm also going to go ahead and exit out of that browser. So now what I want to do is I want to set a key binding for dmenu because now that I want it to be my run launcher, I want to be able to hit a key binding and always bring up dmenu. So I'm going to go to application shortcuts and I'm going to go ahead and click the button here for add. The command is dmenu underscore run, click OK. And it says press a key. For me, I always do super shift enter or dmenu. So now that I have that set super shift enter, failed to execute child command because I spilled it wrong. Let me go here. I misspelled dmenu. So dmenu underscore run, hit OK, super shift enter, shortcut is already being used. So it asks for confirmation to override the previous key binding. But now super shift enter now runs dmenu. Super shift enter and then R for example. And then I would like a key binding to close a window. I know typically you have a alt F4 to close windows in the windows operating system and for some reason Linux desktop environments usually use alt F4. That's a horrible key binding on many keyboards, especially those of us that don't use full size keyboards. Typically the function keys are not available or they're not available except on a different layer of the keyboard. So really that's just a really horrible key binding if it's something you're going to use all the time. And for me, I'm always going to close my windows with a key binding. So I don't want to use a weird key binding involving any of the function keys. But I don't see that alt F4 close window key binding listed in the application shortcuts. I do know XFCE has a better settings manager. It's called XFCE four dash settings manager. And then if I go into the window manager settings and go into keyboard and now there is close window alt F4. We want to edit that says please press a key for me. I always do super shift C to close a window. So super shift C and now if that took super shift C should close that window. Super shift enter should start D menu by open a terminal emulator super shift C to close it. Yeah. And now already I'm moving around a whole lot faster just installing D menu and then changing really just two key bindings. Now I'm going to bring up a terminal all the time as a power user control alt T is already here for a key binding for the terminal. That makes sense. A lot of distributions use that as a default binding for the terminal. But for me, I prefer something a little easier to use than control alt T, although it's a fine key binding. It's not horrible. It doesn't involve a function key at least for me. I'm going to choose something really simple to launch a terminal because I'll be launching it all the time. So I'm going to go back here in the settings manager and see if I can find that control alt T binding and I'm going to edit it. I actually don't see the terminal binding for control alt T. I guess I don't have to edit that binding. I guess I could just add a new one. So let me go back to the simpler little tool where we can actually add key bindings because the XFCE settings manager it's more advanced. It lets you edit already existing key bindings. But I wanted this little tool here the application shortcuts and there is XFCE terminal control alt T. Yeah, let's go ahead and edit that one. So it's still going to launch the XFCE for terminal. That's okay. But now I want super enter to actually launch a terminal. So now super shift C to close that super enter launches my terminal. I could type something super shift C will close the terminal super shift enter will get me D menu where I can just search for whatever and then hit enter. Now let me super enter to bring up that terminal and zoom in a little bit. And the terminal XFCE terminal is a fine terminal. I don't mind using it, but I want to change it a little bit. I want to theme it probably. So let's actually go in here and edit preferences because one thing I don't need a scroll bar in a terminal ever. How often do you use the mouse in your terminal? Typically it's not something you're usually doing. You're at the keyboard typing stuff. So that scroll bar is kind of, I won't say it's just a waste of space, but it kind of is. It really doesn't need to be there. So let's go down here to scrolling and you can scroll back through the history. You can set the size for the scroll back. But what I want to do scroll bar is on the right size. Let's disable the scroll bar because yeah, we just don't need to see it. We can still scroll. You can scroll with the mouse wheel or with the keyboard. You don't actually need to go and grab a scroll bar for that. I go into appearance so I could change some of the fonts if I wanted to play with that. Do I want a transparent background? It's set to 75% right now. But if I wanted to, I could make it fully opaque to where it's a solid color, which is typically what I do with my terminals because it is a little distracting. If you want to add some transparency, I wouldn't go more than about 90% because if you make it too transparent, the text of the terminal really becomes kind of hard to read, especially if you have a really busy wallpaper. So for me, I'm just going to go about 90% there. The other thing is once you've finished playing with your settings, set the right fonts and color schemes and everything, do you really need a menu system in your terminal? How often do you even go into that thing? So once again, let's disable displaying the menu bar. Do you want to display borders around new windows? I'm not sure what that is. But you know what? I'm going to disable it just because you could also set a default geometry. So it'll be 100 characters by 28 characters. These are not pixels, but these are the font sizes, right? And then I'm going to close that. And then I'm going to close this window. And then I'm going to super enter what's my key binding and there is my new terminal window. It doesn't have any toolbars to drag. I probably should have kept the menu bar. But where's the toolbar? Where's the window decorations? Maybe that is what I did. So the menu bar I don't need, I said I didn't know what the borders were. That's the window decoration. So I do want that because I need something to grab because this is a floating window manager, but I will disable the menu. So let me close it again and then super enter to open it. And now, yeah, yeah, I like the look of that if I do a LS dash LA for the long listing form of LS. I just will scroll up with the mouse wheel and I have some transparency, but it's not enough to where things are not perfectly readable. So yeah, I'm cool with that. Now some people might not want the XFCE terminal. If you're a terminal snob and you want a better terminal, of course, there's a hundred different terminal emulators you can install on Linux. I don't actually know if a Lackardy is in the Debian repositories. Yeah, that's a Lackardy is Debian so old and a Lackardy is kind of a new darling among the Linux world is really exploded in popularity here in the last three to four years. And of course, Debian Debian stable, you were still a ways away from a new release of Debian. So hopefully in the next version of Debian stable, Lackardy will be in the repositories, but I'm fine with the XFCE terminal. Now one thing I really would like to add is some color, some bling to this terminal. So once again, let me open the terminal and make this full screen and zoom in and let me try a sudo, well, sudo, I can type apt install neofetch. I'm sure neofetch is actually in the repositories. It is. And now if I do neofetch, let me zoom back out so you can actually see, yeah, we get the MX logo and we get some information that is really cool. Let's make sure that neofetch always shows up every time we open a terminal. So let's open with our text editor. What text editor do I typically use? I typically use Vim, but we haven't talked about text editor. Some of you guys, especially if you're a new user, probably haven't learned Vim yet. So before we start playing with neofetch and some of our config files and things like that, we need to actually take care of that text editor problem. So being an XFCE distro, I would bet they're probably using mousepad as a plain text editor. If I search for mousepad, yeah, no, no, that is not mousepad. Mousepad is not installed. What are they using for a text editor? If I start typing for text, Featherpad is here for a lightweight text editor, but they actually have Genie installed. That is great because that is actually what I was going to suggest to actually install for a text editor. Genie is fantastic. It can be as simple or as powerful as you would like it. The first thing you're going to want to do with the Genie text editor or any text editor that basically does plain black text on a white background is you're going to want to change that color scheme, right? So if I go into View, Change Color Scheme, they don't have any color schemes installed. They just have the default and then the alternate, which is really nothing different. So let's close Genie. Don't save and then close the terminal. What we want to do is we want to go ahead and open our Firefox browser. Let's install some Genie themes. So I'm going to open a new tab here and use the Google search for Genie Color Theme and go to the official genie.org website. You will see Color Schemes here. You can go to Genie Themes on GitHub and once again, remember how to clone a repository. In this case on GitLab it was clone. Here you go to code, but it's the same kind of drop-down button gives you the link. Copy the link. Now in my case, Super Enter will bring that terminal back up, zoom in and remember the command Git clone and then Super Control V to paste that. Then we clone the Genie Themes repository. If I do an LS, you see Genie Themes, let's cd into that Genie Themes repository. And you see we have some information here, but really we have this directory here, Color Schemes. If I cd into Color Schemes and do an LS, these are the config files for like 25, 30 different Color Schemes. So what you want to do is you want to move this Color Schemes directory into your .config slash Genie directory. So run the following command. We're going to copy. So I'm going to copy space dash R, space, that's for recursive, because we're going to copy a directory and all the files inside the directory. And in this case, we're going to copy the Genie dash Themes Color Schemes directory and we're going to copy that over into home slash .config slash Genie, assuming that directory exists. And it must exist because those command worked just fine. Now SuperShift C will close my terminal, SuperShift C will close our web browser, SuperShift Enter will run D menu and now let me type Genie. And now when I go into view, change color scheme, look at all the color schemes we have to choose from. For me, I'm going to choose the darkula color scheme. It's essentially Dracula, but it has a lot, it's a nice dark theme with some nice pastel purples, pinks, greens, which might work well actually with the wallpaper and everything they're using. Let's open something to see how the syntax highlighting looks. So if I go into the home directory, right click and do show hidden files. Let's search for our bash RC, which is the bash shell config file. Let's make this full screen to see how it looks. That is not actually not very Dracula like. That's actually not anything like Dracula, at least not the Dracula. I know. Let's see if we can find any other color schemes. We like dark colors. There's dark fruit salad, ooh, not much contrast to that one. Dark. Yeah, I like that one. Just the default dark scheme there. Monokai is always a good one. It's one of my favorites. I think I'm going to go with Monokai. So this is our bash RC, so our config file for the bash shell. What I'm going to do is I'm going to go to the very last line. And what I'm going to do is I'm going to add this one line, NeoFetch. And then I'm going to go ahead and save. So I'm going to go to file, save, super shift C to close our text editor. And now super enter to open a terminal and NeoFetch launches automatically anytime we launch a terminal because the terminal automatically launches the bash shell. And we told the bash shell to always launch NeoFetch when you first start the shell. So very, very cool. Now NeoFetch is nice, but I prefer something a little bit more exciting to start up my shells. I prefer my own personal shell color schemes. So what I'm going to do is I'm going to go grab my own shell color schemes package from my GitLab. So once again, go to gitlab.com slash dwt1. And in my personal projects, I should have a shell color scripts repository. And once again, go to the clone button. And clone with HTTPS. Grab that link. Copy that. And now I'm going to super enter to open a terminal in my case and now zoom in a little bit. And once again, we're going to run a Git clone and then control shift V to paste our link there. And we just clone that shell color scripts repository. If I did it LS, you see shell color scripts. That directory is now in our home directory. And the shell color scripts really, it's written in such a way it expects to be found in your slash opt directory. So before ever really doing anything, let's go ahead and sudo move shell color scripts over to slash opt. And now let's CD into slash opt by doing LS. There is shell color scripts, let's CD into that and do an LS. And there is the actual program that really does everything. You could just from this location do dot slash color script dot SH and give it a name of one of the shell color scripts. There's about 60 of them. So color script alpha, alpha, zero, zero, I forget what the name is, but dash R will just give us a random one. I thought it would take a name like DNA. I probably have to give it a flag. So let's actually dash H for help dash E or execute by name. So dash E DNA, there is the DNA script. But anyway, we don't want to have to do the full path to this script, right? So what we want to do is we want to make this a executable binary. It needs to be in your slash user slash bin folder. So in this case, I'm going to sudo copy color script dot SH over to slash user slash bin. And we're going to rename it. So slash color script without the SH because typically if it's a executable binary found in slash user slash bin, you want to drop the dot SH off of it. So hit enter. If you have to enter a sudo password, you would enter a sudo password at that point. But now that that is in user bin, just typing the words color script from any location should work. So color script dash R for random, yeah. So now what we want to do is close that super shift C closes all those windows. And now super shift enter for D menu, run genie once again, I'm going to go to file and let's go to recent files. Let's go to our bash RC, I'm going to scroll down and instead of Neo fetch now instead of having it execute that I'm going to have it execute the color script command space dash R for random. And now I'm going to save this file and this arrow button will save the current file. That's fine. Super shift C to close and now super enter opens our terminal, another terminal, another terminal and a new random color script every time we open our terminal. Super shift C over and over again to close all those terminals. Now let's talk about some bash aliases since we're already been playing with the bash RC. Let me once again open recent files bash RC. Let me zoom in here. What are the key bindings to zoom in and genie? I'm assuming it's the same as in the terminal. It is control shift plus to zoom in control minus to zoom out. So let's go ahead and start adding some aliases, useful aliases. So I'm going to go down here toward the bottom and right above color script. I'm going to make a comment, which you can comment a line in bash scripting with a hash symbol of single pound sign. I'm going to do three just to make this obvious and I'm going to do all caps aliases and then maybe some pound signs after it. So you know exactly what's going on here. One of the things you will do all the time on any Debian base system is update your machine and typically you do that with sudo apt update and in sudo apt upgrade. That is a very long command to type for something you're going to do probably on a weekly basis. So I'm going to alias apt up five letters right apt up equals and then inside quotes I'm going to do sudo apt update and and sudo apt upgrade and then the ending double quote here. And that really will save us a lot of typing in the terminal because now when I do super enter to bring up a terminal and instead of that very lengthy sudo apt update and in sudo apt upgrade now I just do this five letter command apt up surrounding the update and it would have run the upgrade if there were any to take but I just upgraded the virtual machine before starting the video so there were no upgrades available. Now sometimes you want to run the update without the upgrade or vice versa. So just for sake of completeness what I'm going to do is I'm going to copy and paste I'm not used to using a regular text editor without the the VM key bindings. So I was just doing a copy and paste there because these next aliases will be very similar. I'm going to do apt up D for just the update part of the command just in case I ever want to do update without upgrading sometimes you will want to do that. And then I'll alias apt up G for just the upgrade portion again in case you ever need to split up those two commands but most of the time 99 times out of a hundred you're running those commands together. Also if you decide to use genie as your text editor you're going to be editing config files as a power user all the time with your text editor. Do you want to have to type the full word genie in the terminal to open a config file? For me I would probably alias it to something simple like G alias G equals genie because heck why not let's save that let's close that super shift C let's open a terminal let's type G space dot bash RC and there is genie opening the bash RC so very very cool. Let me right click on the desktop because one thing I'd love to do is I love having really nice wallpapers so I'm going to do desktop settings let's see what kind of wallpaper pack they have installed and these are actually pretty good wallpapers I like these. Some nice stuff some nice nature stuff some abstract art some MX branded stuff in here as well let's add a few extra wallpaper packs so those of you on Debian or Debian based systems there's a couple of standard wallpaper packs you could install so sudo apt install GNOME dash backgrounds is the standard GNOME wallpaper pack space mate dash backgrounds is the mate wallpaper pack and if I'm doing a search on Debian's website right now for any other backgrounds related packages suey has a backgrounds package as well for the suey window manager let's see what these wallpaper packs look like so let's install all three of those and now that they're installed SuperShift C to close right click desktop settings and then for wallpapers let's change the directory it's looking in so go to other and all these packages were installed to user share backgrounds and then you have GNOME here mate here and suey here let's go into the GNOME wallpaper pack and open it and now you have all your standard GNOME images available and yeah some of these look really nice some nice abstract art there and of course GNOME their wallpaper pack usually has some really great nature stuff in it and then if we change over user share backgrounds mate for the mate wallpaper pack I guess it won't search recursively so we have to go into user share mate and let's do nature open yeah these are the standard mate wallpapers some nice stuff in here as well and one I've never seen before was the suey wallpaper pack I don't know if there's really anything in there yeah not much is this just suey branded stuff yeah so the suey wallpaper pack really isn't anything so I probably wouldn't bother downloading that because unless you're using the suey window manager I don't think you want this blue suey logo on your desktop I'll just stick with the default wallpapers for now if I go into user share backgrounds and open honestly the default wallpaper looks pretty cool especially with that conky so that's just me playing around for about half an hour or so some of the basic settings that I personally pretty much do on any Linux distribution regardless of desktop environment you guys have seen me do a lot of this kind of stuff with the boon2 in the past and with linux mint in the past this is how I would tweak mx linux if I needed to use it because I'm just used to this kind of keyboard driven workflow I like d menu I like having key bindings to open the terminal and close any window with focus and of course I like cool stuff as far as aesthetics as far as looks I like having those shell color scripts I like having good wallpapers I know aesthetics are not everything but you know if you don't actually like the way your desktop looks then it's going to affect how much you actually enjoy your desktop operating system now this was the third time I've done this from noob to power user thing I did it the first time on linux mint then I did it on a boon2 and now I did it on mx linux if you guys have any ideas for maybe future videos from noob to power user let me know in the comments down below now before I go I need to thank a few special people I need to thank the producers of this episode Dustin K. James, Matt, Maxim, Michael, Mitchell, Paul, Wes, Wanya, Bald, Homie, Alan, Armour, Dragon, Truck, Commander, Angry, Diokai, Dylan, Greg, Marstrum, Erion, Alexander, Peaceward, Infernoor, Polytech, Reality, Forlust, Red, Robert, Steven, Tools, Devler, and Willy these guys they're my highest tiered patrons over on Patreon without these guys this episode would not have been possible the show is also brought to you by each and every one of these fine ladies and gentlemen all these names you're seeing on the screen right now these are all my supporters over on Patreon because I don't have any corporate sponsors I depend on you guys if you like my work and want to see more videos about Linux free and open source software subscribe to DistroTube over on Patreon all right guys peace next time we'll go in reverse from power user to noob on Gen2