 As 2020 winds to a close, it's time to reflect on what some of the best free and open source software of the year has been. I've already done my top five Linux distributions of 2020, and today I wanted to do my top eight Linux window managers for the year 2020. And this will be a mixture of floating window managers and tiling window managers. And starting out at number eight is the i3 window manager. i3 is a very popular tiling window manager. It has a very easy to understand syntax as far as the config file that it has. It's written not in necessarily a programming language, but it's written in a very simple syntax that even someone that doesn't know anything about programming or scripting should be able to figure out how to edit this config file. i3 is what I like to call a manual Tyler, meaning that you can decide on the fly exactly where the next window is going to be placed on the screen. So if I do mod V and Mike and fig, so super V, I can do a vertical split. So the next window I open will be up underneath my current window. If I instead did mod Z for a horizontal split, now the next window I open will be out to the side horizontally. So that is a manual Tyler and that's what i3 is. And if I use any terminology that you're unsure about, because I'm going to talk about manual tiling window managers and dynamic tiling window managers and things like that, I urge you to go check out my guide to tiling window manager video. It's a lengthy video. It's about an hour long video, but it will answer all your questions about window managers in general and especially about tiling window managers. One neat thing about i3 that's unique really to i3 and most other window managers don't have this is i3 has what is known as binding modes where I hit a key binding and it gets gets me into a different mode where I could have another set of key bindings. Let me show you if I did mod R right now, you see at the top it tells me I'm now in resize mode. So now I have a set of key bindings just for this mode and HJKL the Vem motion keys is what I use, you know, J to go up K to go down because it's resizing the windows. That's what that mode is to get out of this mode. I just hit escape. By default i3 has three different layout modes. You have this particular layout here which is called the stacked layout and you see my two windows are now just displaying one window because I have a stack here. You see the different title bars that are stacked on top of each other. You can click on them with a mouse or you can do the Vem motion keys J and K as well to do that. If I do my W I go into a tabbed layout where instead of the title bars being stacked on top of each other, they're out to the side in tabs and of course the other layout is simply the standard tiling window mode. Number seven on my top eight window managers of 2020 is ICWM. Now ICWM is a floating window manager rather than a tiling window manager. So it's what most people are used to. You just open a window. It appears somewhere on the screen and you just drag it around with the mouse. You resize it with the mouse. You can minimize it to the panel. It has a built-in panel too. This is part of ICWM of your standard window controls on the windows. You have a menu system, very old school menu system, very reminiscent to the old windows workflow like Windows 98, Windows XP, no flashy tiling widget thingy buttons in the menu system like with Windows 10. So for those of you that like a traditional kind of workflow and maybe you have a machine that's kind of underpowered too, you know, ICWM is perfect for that because it's a very fast and lightweight window manager and quite frankly it's attractive. I mean for an old school kind of window manager it has that retro look but it looks good. Other than the menu that's on the panel you can get the same start menu anywhere on the desktop simply by right clicking on the desktop. For those of you looking for a distribution that actually has ICWM installed and configured out of the box, I strongly recommend Antics. Coming in at number six is Specter WM or Spectrum depending on how you want to pronounce it. I think the W in the name is actually kind of synonymous for a U. This project actually used to be called Scrot WM I guess scrotum and they ended up changing the name to something more appropriate Spectrum but Specter WM is a fantastic dynamic tiling window manager and my favorite window managers typically are dynamic tiling window managers. Specter WM much like i3 has a config file written in a very easy to understand syntax. So if I pull up the config file you can see it's nothing crazy. Anybody can edit this file. There's no programming. It's not written in C or Python or Haskell or anything like that. The reason it comes in at number six and not higher on my list is because of the simple config files it and i3 as well. It is limiting in the configuration you can do because by not being configured in the language that the window manager is actually written in, it is limiting somewhat on what you can do. But for the most part all the options most people want are there being a dynamic tiling window manager. Probably the most common layout, the most popular layout in dynamic window managers is what is known as the master and stack mode and that is the default layout here and Specter WM is master and stack. It has a lot of the same functions that you would expect in most other dynamic tiling window managers. Specter WM does have a very simple panel that is built in. It is a bit of a chore to configure it but it's not too bad for those of you wanting some information on how to configure Specter WM. I have done a video about this particular window manager on my channel in the past so look for that video. And coming in at number five is another floating window manager. This time it is open box. Open box, I have a soft spot for open box because if this was the very first standalone window manager that I ever used was open box and it is very configurable and just it looks good. It looks light, it's fast, it has this customizable right click menu that you can actually have scripts output dynamic information into the menu. For example, I can open my music player right now. This is the dead beef music player and I'm going to mute this because I don't want it to actually bleed through but I'm going to play a song. And if I right click on my open box menu, I have this music player script that actually tells me the name of the song, what the runtime is, what playlist it would be in and I could even control the music player through my right click open box menu I could pause the player. So that is very cool and I've got all kinds of these shell scripts and Python scripts that output information into my open box right click menu such as virtual box here. Here are all my virtual machines that I have installed inside virtual box right now. That way I don't have to open up virtual box to open up these virtual machines. I just click on them and they automatically open up. One cool thing about open box is you can't configure it to do some pseudo tiling. For example, a window snapping. I have key combinations where I could snap this window to the left side or to the right side or the top half or the bottom half of the screen. I've also got some key bindings where I could resize things, make it full screen. I have a key binding of course to close the window as well. So open box is one of those window managers that for standalone window manager is probably the most popular one out there in Linux because open box for a long time was the default window manager within the LXDE desktop environment. And for the most part it's the one that typically ships with the LXQt desktop environment. Although LXQt doesn't have necessarily a window manager built in you can use any window manager within it. What most distributions that use LXQt ship with is actually the open box window manager. Tiling in at number four is the original dynamic window manager, DWM dynamic window manager. It is a dynamic tiling manager and it has the default layout, the master and stack layout that so many people love and you know it has all the standard controls that you expect most tiling window managers to have. Now DWM is built by the suckless guys. You go and grab the source code from suckless.org and it's very minimal by design. It's written in under I think 2,000 lines of code and it was written in C and because of the anti bloat stance of the suckless guys and the fact that they have this strict lines of code limit, there's not a lot of features built into DWM. It's very light on features really to get the most out of it. You have to add all of these patches to DWM and that's one of the issues a lot of people have with it is the patching of DWM is a bit tedious. Anytime you make a change of any kind to DWM, you have to recompile. So that can be an issue for some people, but to be honest, I find DWM one of the most comfortable window managers that I've ever used. For those of you wanting to get into DWM and you're unsure about it, an easy way to check it out if you're on an arch based system is simply to install my build of DWM that is in the AUR, the arch user repository, simply install DWM distro tube dash get coming in at top three, getting the bronze medal is the awesome window manager. Awesome was originally a fork of DWM. It wanted to be a much more well rounded, fully functional window manager than what DWM was at that time, but it was forked from DWM many, many years ago, more than a decade ago, like 10, 15 years ago. And because of that DWM and awesome actually don't share much of the same code anymore. Awesome is configured in the Lua programming language. And if you know a little Lua scripting that makes awesome window manager a very powerful window manager because you can do so much with it. This is probably the most extensible window manager available. Some of the screenshots that you find of awesome window manager go to Unix porn over on Reddit and look at some of the awesome window manager screenshots you find with all these cool Lua widgets on the desktop and whatever you can imagine, you can make happen with the awesome window manager because it was originally a fork of DWM, of course, the standard layout is the master and stack layout, you know, your standard kind of window controls here. The panel at the top is extremely customizable with a lot of built in widgets. And that's one of the really cool things about awesome. You don't have to go and find a third party panel and try to configure this thing. It also has a right click menu that's built into it. I sometimes forget about this right click menu because it's a tiling window manager. You never really are clicking on the desktop. You are often not even using your mouse. But for those of you that are used to a right click menu, maybe you're coming from a floating window manager such as open box or ICWM, it's a very easy transition to make awesome window manager your first tiling window manager and our silver medalists coming in at number two is Qtile. Qtile is a fantastic dynamic tiling window manager. So that makes it very similar to DWM awesome specter that we have the standard master and stack layout and a lot of the same kind of things that you can do in all of those other dynamic tileers you can do in Qtile. Qtile has long been one of my favorite window managers. I've spent a lot of time covering Qtile on the YouTube channel. And really before I started talking about Qtile a lot on camera, most people had never heard of this particular tiling window manager and it's been around for years. It's been around for many years and you never heard anybody talk about it. You couldn't find YouTube videos about it. It was like it didn't even exist. And I started talking about it on the YouTube channel. I'm very proud that now a lot of people are actually giving Qtile a serious look. It seems to be gaining a lot of popularity. We have Linux distributions actually making Qtile additions of their distributions. If you want to try out a great preconfigured Qtile desktop, check out Arco Linux. They make a Qtile addition. One of the really neat things about Qtile is the fact that it is configured in Python. This window manager is written and configured entirely in Python. So if you know a little bit about Python and most people know a little Python, even if you don't, Python is a pretty easy programming language to get up to speed with. Just looking at this config file, you can tell these are all the key bindings I have said it. This is not very hard to read. I set the group names here. I set the layouts I want to use. By the way, this really neat panel at the top here that is actually built into Qtile, much like the awesome window manager. Qtile comes with its own panel and it has a ton of built in widgets. So it's very easy to configure to your liking. You don't have to go grab a third party panel and try to shoehorn that thing into Qtile. And our gold medalists coming in as the number one window manager of 2020 is Xmonead. Xmonead is another dynamic tiling window manager. The default layout is once again the master and stack layout. It has a lot of the same window controls that the other dynamic tiling window managers we covered in this list also had. A matter of fact, there are two window managers in my top eight that are exact clones of Xmonead. Qtile and SpectreWM essentially are exact clones of Xmonead. It's if they're written in different programming languages than Xmonead. Xmonead is written in Haskell. It is written and configured entirely in Haskell, which makes it one of the more difficult window managers to get into. I'm not going to lie. You're going to have to learn a little Haskell to configure this thing. And not everybody wants to have to learn Haskell, which is a functional programming language. It's not something that most people want to jump into, especially if you're not a programmer. You've never done any programming. Haskell is a tough one to get into as a first programming language. Now to make it a little less painful, a while back I did a video on getting started with Haskell. It's about an hour long video where I cover some of the very basics with the Haskell programming language. I've also done tons of videos about Xmonead, how to configure your Xmonead config. And of course, I have my Xmonead config and my Xmobar configs over on my GitLab. By the way, Xmonead being rather minimal by design does not come with a built in panel. You have to use some third party panel where that most Xmonead users use Xmobar, which is a panel also written in Haskell. So that is my top eight window managers of 2020. Now I know a lot of people are going to disagree with my top eight. You're going to have different window managers that didn't make my top eight in your top eight. And maybe you're going to rank them a little differently. I know not everybody likes the same things. Like I like dynamic window managers, obviously, from my list rather than manual timers, but a lot of you guys prefer the manual timers. Some of you guys like floating window managers. You don't really get tiling window managers. And I understand that what I would love for you guys to do though is share your top five or your top eight window managers that you guys love to use in the comments below. Now before I go, I need to thank a few special people. I need to thank the producers of the show, Devin Fran, Gabe Corbinian, Mitchell, Akami, Arch, Chris, Chuck, David, the other David, Donnie, Dylan, Gregory, Lewis, Paul, Willie, they are the producers of the show. These guys, they are my highest tier patrons over on Patreon without these guys. This list of my top eight window managers of 2020. It wouldn't have been possible. The show is also brought to you by each and every one of these ladies and gentlemen as well. These are all my supporters over on Patreon because the DistroTube channel is supported by you guys, the community. If you'd like to support my work, please consider doing so. Look for DistroTube over on Patreon. All right, guys, peace. Oh, I forgot to add Stump WM to the list.