 Alright, hello zoomers. So I want to talk in this video about suckless programs not one particular suckless program But suckless in general because there are a lot of misconceptions out there And I just want people you know in order to really get what you want out of suckless programs You have to wrap your mind around them now What are suckless program actually we should talk about what suckless actually is because I know there are many people Watch my channel who don't know despite the fact that I've done many videos on their stuff Suckless is a kind of cabal of programmers, and they're dedicated to very minimalist bloat-free software Everything is supposed to be not just few lines of code, but very well-written very economical not just for speed, but also Ignoring you know getting rid of bugs getting rid of the potentiality for bugs and you know You can't really mess up something that's very small. That's the idea and suckless I think builds off a lot of the General idea of the Unix philosophy and stuff like that, but that's not for this video So suckless has put out a whole bunch of really interesting programs now you can they of course have DWM Which is their window manager ST, which is their terminal Surf which is their browser, and then they have a gajillion tools many many of which I've done videos on I know I've done videos on deep menu a gajillion ones on that Scent for making presentations. That's a great program. I Definitely encourage you to check these out, but Some people have some concerns Because suckless programs are usually very different from what you're familiar with now if you're a novice user They'll be a little confusing but even worse if you are a non novice user who knows a lot about how Linux programs usually work You might be a little I don't know discombobulated by suckless programs Now recently I do this video sort of because I noticed that another channel on YouTube This is distro tube The guy there Derek said that he is going to use suckless utilities as a challenge Just just sort of for fun and he talked about some of the problems that he Has I guess the the bumps he's run into and of course people in the comments talk about the same things And I just want to give some people some hints about things So first off the biggest the biggest thing that people complain about in suckless programs is that they don't have Config files in the way that you usually think about them You can't open up if you have ST you can't open up your ST RC and change your configs one of the I mean there are different reasons that suckless programs don't have config files because You know if you oh, you know you run your program and it's reading an extra file. That's bloat It's also a place where bugs or errors or user error can come from so suckless programs are usually constructed in such a way actually all CD into one of my suckless programs ST. This is my build of ST and Usually Usually they will have a config file this config dot H and This is where you make all the changes to and then you recompile the entire program and Now your changes are active. So that seems to a lot of new users like really difficult because oh man What I have to recompile the program every single time I use it now first off. Yeah, that's true You can patch the ability for You know my ST my terminal although it's a suckless program. It happens to read my X resources file I've patched that into it But if you are just annoyed by the prospect of recompiling things because you have to oh, I have to CD to the directory and I have to Pseudo make install it and that takes time. You don't have to do that You got kids you're using Linux or whatever you can automate everything what you can do Let's open up our Vim RCs. I know we're all Vim users or at least people who know how to use some kind of Extensible text editor. I'm not going to name any other ones But one thing you can do for example in Vim is let's say you can tell them whenever I'm editing a config dot H file Recompile this program. So actually, let's do this. So I'm gonna actually copy this And then we'll actually label it. So Recompile suckless programs automatically So in Vim, of course, there are these auto commands and you can have your auto commands run Buff write post just means after you save a file run this command It runs whenever your file is named like this I'm gonna get rid of this. I'm gonna rename this to config dot H or config Dot def dot H and the thing I'm gonna run is Going to be pseudo make install just save that in Vim. You never have to manually compile a suckless program again Let's let's do that real-time kids So I'm gonna open up Well, so you can have whatever Oh, what's the word I'm looking at whatever alias opens up your config file and make whatever changes you want save it and look Look down at the bottom. It's actually running automatically. So you don't have to worry about that at all It's not like it takes any time for these programs to recompile. So you don't have to worry about that Actually, let's get rid of that So I don't do that myself But that's just if you're come if that's the thing you're complaining about don't worry about it Just put it in Vim put it in whatever else or even just have a script automatically do it If you don't if you don't want to deal with it. So that's one thing now another thing is that one So one thing that's difficult about suckless programs to even talk about is that first off a lot of their tools Like for example D menu now if you've watched my channel, I do so many things for D menu I mount USB drives with D menu. I insert emojis with D menu I run commands with D D menu, but if you really ask someone what D menu is Well, it's a program that takes standard input and gives you options based on each line It's a program that's hard to understand because suckless programs are often designed Not to do anything instead. They work well with how you use something else And that's the one thing you need to understand about all these programs another one This one I don't use but it is you know worth looking at Tabbed so suckless programs like for example surf the browser or ST their terminal do not have tabs I in fact, I think it's really I understand tabs and browsers, but tabs and terminals that just Confuses me, but if you want to have tabs instead of having separate, you know tab software Tab code in each one of the suckless programs for running tabs There is one program called tabbed where you can basically embed your you know run your program So it's in bed and tab embedded in tabbed and then you can run multiple instances on top of each other So that's the sort of suckless mentality where you have these features, but the features are not all in one program They're decentralized, you know in different parts of the system that sometimes means a little bit of creativity when you're putting together a system But again, I mean as I said, you know D menu for example Mouncing on mounts drives for me, you know detects what Displays I have and I can choose which one I want to use you can do anything with these programs when you really get in the mindset One best example of this is actually surf the browser now I don't use surf as you can see from here. I'm just using Firefox here But a lot of people misunderstand surf because if you run it actually I'll run surf Run it on my own website. So this is what surf looks like. It's just a window, you know, it shows your browser You can click on stuff, whatever But the thing that people don't often understand about these suckless utilities is you're not supposed to surf is not an equivalent of Firefox it's not supposed it's not a browser in the same way Firefox is Firefox again has all these tabs. It has bookmarks It has all these other things that are part of its program But in if you have the suckless mentality, how you're supposed to think of this is say well really my web browser is a Decentralized mesh and what I mean by that is, you know, let's say instead of having keeping all my bookmarks in Firefox and saving them in Firefox's You know defaults You know, whatever it is bookmark saving thingy Instead let's say I just have a text file on my computer and I list out all the sites that I like That's my bookmark file and then I can take that text input Send it to D menu to present me a menu in my Surf instance and that will give me you know a bookmark menu effectively if I just press a key binding that I bind Oh look now I have a bookmark menu or now I can change my You know, I could add suggestions from that or something like that So a lot of people will install suckless programs and they'll say it doesn't do what Firefox does or it doesn't do blah blah blah And it's like that that's the point Now I'm not none of these programs. No suckless program is a drop-in replacement for the the programs you're used to using Well, I mean some are frankly, but some aren't like surf for example, but once you get the suckless mentality of Again like viewing it not as you don't think of this as a browser in the same way that Netscape was a browser Now that was a good browser But think of it in terms of this is just a window that shows some URL I can send it a URL from my terminal or from some script or from something else And it's nice and easy like that. I mean keep on mind. I mean even this this program doesn't even have You know in order to type in a you use the URL bar It uses D menu as a URL bar doesn't even you know, everything is decentralized everything's a slightly different program So the takeaway I think should be that if you're experimenting with suckless programs, just bear in mind They're different. I mean the entire paradigm is different. Your mindset has to be different when you're approaching them They're not equivalent, but suckless programs have this great tendency to be so Manipulatable you can do so many things with it. I mean, you know look at this Let's select emojis. Wow. This is fantastic Get all the emojis you want and serve them, you know, they're once you get in that mentality There are so many things that you can do with them that it really just blows everything else away But anyway, so that's all I wanted to do nothing nothing really huge But just Stop and think before you get mad at a program you're trying just stop and think about What it's actually doing and what kind of things you can you know If you are willing to step out of your comfort zone, I guarantee you it will be much more comfortable So anyway, that's about it and I will see you guys next time