This program is not approved by suckless, as it uses a config file. A more minimal version would be to recompile the program with the options builtin. rdo is way too bloated.
@fossware2 жыл бұрын
You got a point
@Shadyisslm2 жыл бұрын
🤓😂
@pdote2 жыл бұрын
A already made a fork and fixed that. Removed 28 SLOC or about 15% of the total project.
@sirgodricenwardsaier90742 жыл бұрын
You forgot to specify that the code has to be written in C and cannot have any documentation or comments, lest the C preprocessor take add an extra 42μs to the compile time.
@worldhello12342 жыл бұрын
That's running gag here. :D Everything is "too bloated" with an extremist mindset. ^^
@mrsansiverius20832 жыл бұрын
Having users on your system is bloat. Just do everything as root
@dorukayhanwastaken2 жыл бұрын
Ah yes, the Windows XP grindset.
@JayCeeCreates2 жыл бұрын
Accessing root is dangerous enough but I'm willing to nuke my system
@generallyunimportant2 жыл бұрын
so.. uhh.. puppy linux?
@everyhandletaken2 жыл бұрын
MS users have been doing this for years.. what could go wrong ? ☺️
@dorukayhanwastaken2 жыл бұрын
@@everyhandletaken Literally everything. I'm so glad people don't whine about UAC and C:\Windows being somewhat immutable anymore. Anti-update retardry is more than infuriating enough.
@gardenapple2 жыл бұрын
I looked at the repo as well as its creator (just lurking, as you do...), the developer is 17 years old at the time of writing, so I'd say this is very impressive for a high-schooler's hobby project
@Noukkis2 жыл бұрын
non-root users are bloat
@tordjarv38022 жыл бұрын
It is not minimal enough, the for-loop in runprog at line 37 and 38 is unnecessary. Instead line 45 and 46 should change to if (execvp(argv[1], argv+1) != 0) perror(argv[1]); That will achieve the same goal, to only pass the command and its arguments to execvp, without unnecessarily move the data in memory first. Also, the parsing of the config file every time is a waste of CPU cycles, like others pointed out, the config file should be a header file and the users should have to recompile the program every time a setting is changed. On a security point; the entered password is not cleared from memory immediately after the password is check on line 99 and can be trailing in memory as clear text for an unspecified time afterwards. If the password is correct it could stay in system memory after the process has ended for some time, at least if you are using a real-time kernel, which could mean that some malware can have time to read it. If the password is incorrect, but possibly close to correct, it will stay in memory until the user re enters the password, which means that it will stay in memory through out the the usleep which can sleep for several seconds, giving any evil malware plenty of time to steal it. I would not use this program as is.
@yash11522 жыл бұрын
have you submitted these feedbacks up to the author of that??
@tordjarv38022 жыл бұрын
@@yash1152 Yes, or at least the security problem. The for-loop i don't think is really a problem.
@yash11522 жыл бұрын
@@tordjarv3802 suggestions for improvements can also be suggested ;)
@davydorynbaev2 жыл бұрын
I was just about to say most of that. Good comment.
@notuxnobux2 жыл бұрын
the if-statement is also unecessary. execvp always returns -1, because it only returns on error
@gx1tar1er2 жыл бұрын
sudo is enough for me 😂
@sahilbaori90522 жыл бұрын
Yup... for beginners and the new not know hows people, sudo does the job just fine. Once you get a little more advanced and understand whats going on then you can consider switching or something.
@sahilbaori90522 жыл бұрын
@@the-youtube-enjoyer even mental outlaw made a video saying sudo is a bloated mess. By "advanced users" Im talking about the people who like to optimize every part of the system. And i never claimed im that "advanced user" that uses something else.
@skeilnet2 жыл бұрын
Sudo is bloated. Use doas instead.
@mrfluffy92732 жыл бұрын
Computers are bloated use an abacus.
@dakata24162 жыл бұрын
"I know there are some people out there who really care about optimizing every single little bit of their system" As a Gentoo user I can confirm. We exist.
@member50032 жыл бұрын
Gentoo: where optimizing computer time is more important than human time
@dakata24162 жыл бұрын
@@member5003 indeed
@tireseas2 жыл бұрын
If you're not manually optimizing in assembly for machine specific quirks you're not going hardcore enough.
@augustintacquet4882 жыл бұрын
You should have phrased it like "I use Gentoo, by the way" 😁
@everyhandletaken2 жыл бұрын
@@augustintacquet488 I think Gentoo is more brb than the Arch btw.. as in, brb.. I need to go check the progress of compiling vim..
@everyhandletaken2 жыл бұрын
I’m most pleased that you raised a benefit of projects that might otherwise seem fairly unnecessary, but, inspire the work of others. I think that is why I keep coming back to watch your video, concise unbiased opinion (and not trying to sell me a vpn)🤘🏻
@marcello42582 жыл бұрын
Bloat has nothing to do with your 10ms it is: More code -> more potential for vulnerability
@animegamer33362 жыл бұрын
And less code which is full of bugs and unclean code = 10x more potential for vulnerability then Bloated structured and constantly reviewed code Edit : Fixed a typo :-)
@marcello42582 жыл бұрын
@@animegamer3336 yep.. but considering both projects are equal like doas and sudo.. btw doas has proofen to be saver
@LeSqueed2 жыл бұрын
Guess I will have to remove all the sanity checks and error checks from my code now. Since more code is more vulnerabilities and those things are adding to my lines of code.
@marcello42582 жыл бұрын
@@LeSqueed well at least you are not good at reading. please read my 2nd. comment again.. thanks
@colbyboucher6391 Жыл бұрын
@@LeSqueed That's not the point. The point is that Sudo includes a ton if *features* that the vast majority of users never touch, many of which are buggy l, hence **8mb** for the "I want to run as a different user" program.
@marioschroers73182 жыл бұрын
sudo is actually bloat for what 99% of desktop users do. Most of the time, we use sudo to escalate privileges for system updates or software install, and nothing else. sudo offers many functions including ssh-capabilities that are most relevant for sys admins, but total nonsense for desktop users. sudo used to be 3 MB in size; last time I checked the sizes of my installed packages, it was close to 8 MB. 8 MB for a privilege escalation tool. Please. In comparison, doas is 42 kb in size. I don't see why sudo is still considered a standard for most Linux distributions. It might sound like a nitpick, but at the end of the day, this kind of resource waste is a major problem.
@colbyboucher6391 Жыл бұрын
Yeah, this video misses the point entirely. 90% of Linux videos are just the dunning-kreuger effect in action.
@AcidiFy5742 жыл бұрын
How about an LFS stream where you build a system consisting of ONLY suckless utils??? & BedRock linux when ???
@BrodieRobertson2 жыл бұрын
Is there a suckless c library?
@jondoe66082 жыл бұрын
Musl can be used instead of the gnu lib c
@mskiptr2 жыл бұрын
Possible security risk: Does anything stop you from running multiple instances in parallel? If not then wrong_pw_sleep can easily be worked around
@michaelheimbrand54242 жыл бұрын
Reducing "bloat" when most systems come in multi-GB-sized ISO´s. It´s a brave new world... Doas is in OpenBSD base. That´s all we needed to know.
@jjbailey012 жыл бұрын
Reducing bloat has nothing to do with storage. It has everything thing to do with code maintenance and auditing. End users benefit from using programs from a less bloated code base because they are less likely to deal with a buggy user experience.
@michaelheimbrand54242 жыл бұрын
@@jjbailey01 Reducing bloat should be on all levels. And not filling the file system with hundreds of thousands of files is a big part of it. Try out OpenBSD and you see what I mean. Unbloating has to be in the heart and soul of the developers. Debloating some small commands is also good, but I find it a bit pointless if you do it on a mainstream systemd GNU system with thousands of dependencies installed from the box.
@marioschroers73182 жыл бұрын
I'm not a developer, but from my perspective, debloating code and optimizing execution times should in fact become more important the more capable the available hardware is. Oftentimes, we hear that optimization be futile given the performance on the hardware level. That's possibly not quite true, since if all software be designed following this primitive, it's no surprise that we will never perceive gains in application performance and memory efficiency. Edit: I agree with the statement about file systems and numbers of files. Last year, 16 GB of data accumulated in my database from one full year of work. I've since taken measures to constantly deduplicate my working files folder as much as possible. Since CW1 2022, I was able to reduce the amount of data accumulating to just about 100 MB (and even that is quite a lot), which otherwise would likely approach about 2 GB already.
@mk72v2oq2 жыл бұрын
Yeah, sometimes minimalism goes too far. For me even doas is unusable because it lacks essential features. Like rootpw/targetpw sudo option. Or sudo -E flag, some apps require it just to work properly.
@AshtonSnapp2 жыл бұрын
Then for you, sudo is what you need. However, some people simply don’t need everything that sudo offers. So it makes sense to have an alternative like doas. Rootdo is too minimalist though, I agree.
@john-vince53112 жыл бұрын
I get there is people out there that want to deblote to the extreme but I think the idolizing of light weight programs has gone a bit far. Just because a program is large doesn't mean it's bad. There is a middle ground.
@AshtonSnapp2 жыл бұрын
I agree. Sometimes there is a reason for a program to be large in size. Although, if it’s something that’s going to be running in the background all the time on my system, I would rather it be lightweight so it leaves more RAM for the programs I want to run.
@alexestefan7521 Жыл бұрын
On a raspberry pi 1B, sudo takes between 0.9 and 1 seconds to run once. A program I wrote as an alternative to sudo takes between 0.01 and 0.02 seconds to run. That's a 45x improvement at worst and a 100x improvement at best. On average, I see 0.013 from my program and a bit over 0.91 for sudo, which is a 70x improvement. This is huge, as waiting almost a second to run a program as root is insane, while 0.13 is barely noticeable.
@Kr33gola Жыл бұрын
this adds up and we will never know if human can develop faster reactions
@kvngn2 жыл бұрын
One thing to consider as far as the benchmarks are concerned: sudo and doas can both be built to use shadow authentication rather than PAM authentication. Building against shadow cuts down the runtime considerably, to the point where shadow-sudo is faster than PAM-doas. I'm guessing rdo can't use PAM, so it isn't really a fair test in the first place. Granted, none of the differences are remotely perceptible to humans. It's poor practice to put things like sudo and doas in scripts anyway, so I don't think there's a realistic use case for running any of these programs so many times in succession.
@0x007A2 жыл бұрын
If rootdo was truly in the suckless spirit the configuration options would be in the header file. Back to the drawing board Willie E. Coyote. < meep meep >
@generallyunimportant2 жыл бұрын
i love how you include the outro blunders lol
@keyboardwarrior62962 жыл бұрын
Actually seems pretty neat.
@provakar54962 жыл бұрын
I actually use a typewriter my grandfather gave me to code, and I use openCV image reading to compile it into a txt file.
@jort93z2 жыл бұрын
Config file is bloat.
@notuxnobux2 жыл бұрын
I think its a cool program. Its only around 200 lines of code and it does everything I need, while sudo does way too much and is more than 100 000 lines of code
@alexestefan7521 Жыл бұрын
Su from gnu is way too bloated for what it does. It also depends on things like pam. I wrote my own su in 1/3 the lines of gnu su and without a dependency on pam.
@tehklevster2 жыл бұрын
More eyes do not lead to things being more secure. If all those eyes are looking at the wrong things then game over.
@worldhello12342 жыл бұрын
@7:53 That's not "bloat." That's having an extra application that does something useful.
@Tn5421Me2 жыл бұрын
The human reaction time can reach as quickly as around 80ms after great effort
@spikerz15722 жыл бұрын
You gotta understand, we have to avenge the trillions of poor bytes that have fallen victim to sudo.
@killistan2 жыл бұрын
My system doesn't have su on it, just doas ;)
@matcraftou Жыл бұрын
I would not use Rdo but Rodo as a command, just personnal advice!
@altrogeruvah2 жыл бұрын
Honestly, if I could write "pacman -Syu" or "apt upgrade" on my terminal without writing anything before it, on my single-user PC, that would be great really... I find writing _sudo_ every time you want to do something locally really redundant.
@andreihabalau2 жыл бұрын
You can do that. Edit your .bashrc/.zshrc file in your home directory (depending on the shell used) and add alias update="sudo pacman -Syu" somewhere in the file and then you can use the "update" command without writing sudo before it. Or you can alias pacman="sudo pacman" (but I'm not sure if that's feasible/recommended or if it would work)
@altrogeruvah2 жыл бұрын
@@andreihabalau That's so sick! Thank you so much!!
@colbyboucher6391 Жыл бұрын
It's for security.
@avetis23772 жыл бұрын
I'unno, Brodie. Saving myself a solid one keypress every time I need root access has an appeal. :^)
@codebitcookie80532 жыл бұрын
I mean, aliasing? alias s="sudo"
@realGBx642 жыл бұрын
@@codebitcookie8053 I mean make your password one character shorter :'D
@mechnymph2 жыл бұрын
I only understood the words bloat, tool, and use, but I'm already totally on team #rdonotpog edit: writing this from my Blackberry pi integrated tablet. Thumbed and shared
@spicynoodle74192 жыл бұрын
I used to use doas and it was great until I started working from home. For some reason Valet had some issues with it. Tried patching it for doas and still no dice.
@uuu123432 жыл бұрын
Sudo: Errors out Linux Community: "Fine, I'll do it myself..."
@logangraham29562 жыл бұрын
I like optimization but that that much. your probably going to run sudo like 1 or 2 times a day maybe, i highly doubt those the small amount of time taken up is a huge lose. optimizing these 1 time delays doesn't seem very necessary to me, now if this delay was a constant one like a runtime thing then that is something that should be optimized.
@colbyboucher6391 Жыл бұрын
It's not time, it's the size of the program and security. More code = more bugs (there ARE bugs in sudo) and more wasted space.
@logangraham2956 Жыл бұрын
@@colbyboucher6391 optimization and debugging are 2 different things. you can have incredibly in-optimized code and have no bugs. and you can have incredibly optimized code with plenty of bugs.
@colbyboucher6391 Жыл бұрын
@@logangraham2956 You can have incredibly optimized code thst's still bloated, too. I'm saying that you"ll usually end up with about one bug for every 1,000 lines of code, and the longer that program gets the more opportunity there is for something to go very wrong.
@maximus68842 жыл бұрын
Can you review Linux tablets?
@worldhello12342 жыл бұрын
@6:42 Exactly, screw those extremists who cry about "bloat." They are just a sub-group of the Arch elitists. :)
@HoboVibingToMusic2 жыл бұрын
I dare you to make a (linux/bsd based) OS that uses under 50mb of ram :P AND Has a Window manager or desktop environment, choice is yours
@BrodieRobertson2 жыл бұрын
Doesn't the kernel use more than that
@f1aziz2 жыл бұрын
Running Java Eclipse on my Linux box, minimalism is far from my thought process right now.
@BrodieRobertson2 жыл бұрын
Why would you put yourself though Eclipse
@f1aziz2 жыл бұрын
@@BrodieRobertson work.
@BrodieRobertson2 жыл бұрын
@@f1aziz is your build system somehow tied to eclipse?
@charlubermensch23952 жыл бұрын
3:12 The last feature is bloat. One should be suckless til the end!
@westlyward25042 жыл бұрын
I want to see a video on the please command
@BrodieRobertson2 жыл бұрын
Is that actually a thing
@kyuthefox2 жыл бұрын
... or you have tty2 opend with the root account that is faster by having less to type because "sudo" is to much to type if you can login into a root shell. why previlegie elevation if you can have the previlige in the first place? lul
@CMDRSweeper2 жыл бұрын
I guess my Linux use is very simple in that regard. I use sudo or whatever to get the root prompt / user and then I need to do my commands. When I am done I close the terminal as I do not need the root access anymore, so to me it doesn't matter much.
@codebitcookie80532 жыл бұрын
Sudo is created so that you don't login as root. Better for security.
@colbyboucher6391 Жыл бұрын
I mean, that's the point of stuff like this. Sudo actually has a *lot* of features that basically no one ever touches so some of us look for something that *just* does what we actually use Sudo for rather than being, y'know, bloated.
@exciting-burp2 жыл бұрын
At least it doesn't have that obnoxious holier-than-thou nag message when you first run it.
@0x1337feed2 жыл бұрын
that's just a random dude's w-e project
@jeffsadowski2 жыл бұрын
I'll stay with sudo for now.
@lemonsh2 жыл бұрын
i'll stick to doas
@user-dc9zo7ek5j2 жыл бұрын
The explanation that the performance so small that it does not matter is the reason I have 2 python programs and 1 electron program, take up a gigabyte, crash every few clicks, and are slower than booting up the whole computer.
@user-ux2kk5vp7m2 жыл бұрын
No, not at all
@rkvkydqf2 жыл бұрын
While including a Chromium instance in each app is absurd, optimizing every millisecond of CPU time any cost is unproductive at best.
@BrodieRobertson2 жыл бұрын
There are gradients of importance, spending time optimizing out an extra gigabyte of RAM might be valuable, optimizing out a megabyte may not be but there are situations where it is for example on a low powered embedded system.
@andljoy2 жыл бұрын
3 lines of config is bloat.
@YannMetalhead2 жыл бұрын
Good video.
@colbyboucher6391 Жыл бұрын
Sorry but this video misses the point. Bloat isn't about speed or even directly about how much storage space something takes up. It's about bugs and security. Big programs are more difficult to maintain than small programs. One bug for every thousand lines of code, roughly. If there was a sudo "alternative" also called sudo, that does everything you *actually* need sudo for while cutting out the other 70% no one cares about, no one would notice and the project would be less likely to introduce vulnerabilities in the future. This specific program ain't it but sudo being the default IS silly.
@bgone55202 жыл бұрын
Got to wonder how many libraries it depends on vs doas or sudo
@0x007A2 жыл бұрын
Look at the #include directives.
@notuxnobux2 жыл бұрын
It only depends on libbsd and it's around 200 lines long. Sudo depends on libldap, openssl, pam and zlib. And some of libraries depend on many other libraries. Sudo is more than 120 000 lines long. Doas depends on pam. Doas is around 2000 lines long.
@BrodieRobertson2 жыл бұрын
Sudo and doas both have their place, sudo is considerably more powerful then doas ever aims to be and for some users particuarly server users that can be valuable.
@ulfnic2 жыл бұрын
TTY1 for X, TTY2 for root. No sudo, no su.
@member50032 жыл бұрын
This is not suckless at all, it’s too bloated when you can just “su - root”
@BrodieRobertson2 жыл бұрын
Su is the most portable solution without a doubt.
@generallyunimportant2 жыл бұрын
"su -c" is the best (:
@johnanth2 жыл бұрын
Great video with a much needed reality check lol. I do find the whole suckless thing quite ridiculous when the average suckless user is a well-paid software developer with 32GB RAM and a top of the line processor.
@rizkyadiyanto79222 жыл бұрын
that mindset is how you get 500mb electron app just for playing music, etc.
@0x007A2 жыл бұрын
@@rizkyadiyanto7922 ...and hoe the world got Microsoft Windows when Microsoft Xenix would have and could have been the dominant personal computer operating system on IBM PCs and compatibles.
@colbyboucher6391 Жыл бұрын
This video entirely misses the point, actually. Big programs are harder to maintain. You're less likely to catch bugs, and it's more likely for there to be security vulnerabilities. (And sudo *is* actually buggy). The vast majority of users will never use 30% of what sudo does. They'll just sudo apt and get on with their lives. So a less bloated alternative that doesn't take up 8mb just makes sense (even if this specific program ain't it). If a distro made a sudo "alternative" that was half the size, still called sudo and didn't drop the bits that 80% of users care about, no one would notice and the distro would be slightly better for it.
@zizzleplix2 жыл бұрын
I understand the desire for lightweight programs and optimizing things as much as possible when one is running a resource constrained system. I don't understand those who have decent to very beefy systems yet are just as if not more hyper-focused on being as lightweight/optimized as possible as those on resource constrained systems (Note: I'm not referring to those who just like the lightweight/minimalist aesthetic and/or those who use the software because it genuinely helps their workflow). At that point the gains in performance/responsiveness are going to be so minimal that it's almost entirely placebo effect. I think this group of computer users are doing it for purely ideological/political reasons, they worship Richard Stallman/the Suckless devs, or simply for bragging rights.
@0x007A2 жыл бұрын
Stallman created GNU Emacs, hardly the poster child for minimalism. It is a freaking operating system and window management system plus run-time environment. ;-)
@D00000T2 жыл бұрын
Usability also goes down by a lot if you keep up the minimalism mindset. It’s fun and all when you see your beefy system using only 500mb of memory and 10 gb of storage for all your needs until you realize that you aren’t some highly paid and valued software developer who has been approved by their superiors to do this shit. You now can’t do your school or job related work as your system is not even slightly compatible with any of your organization’s apps anymore. And if anyone says that this is the fault of the normie employers/school administration for using heretical programs like sudo, “bloated” apps like latex and nano, or the forbidden desktop environment; you know that those people are the ones paying or supplying you with your education in the end? They’re not the ones that are going to be at a loss
@colbyboucher6391 Жыл бұрын
It's not about what your PC can run, it's about reliability and security. Code auditing. A program that just *does what you need* in like 200 lines of code is way more secure / less buggy than 8mb sudo with a billion features you'll never, ever use. More potential security flaws.
@SkyFly198532 жыл бұрын
the problem is that if we keep changing things rather than improving them. Why not focus on a single thing and make it better without changing it so much. Let's say we got rid of Sudo, then another thing comes, that new thing gets bloated again, then what?...
@motoryzen2 жыл бұрын
I COULDN'T ...agree more. That's why I stick to Linux Mint Cinnamon and STILL to this day ( about 11 years later) I still couldn't be happier.
@SkyFly198532 жыл бұрын
@@motoryzen Linux and FOSS divide itself with those tiny little details. Why not they coordinate their efforts on a single goal and make the things better? Because of relying on volunteers and donations, their coordination sucks...
@notuxnobux2 жыл бұрын
Sudo and this program has different goals. Sudo has a lot of different functionality that most people dont need and is more than 100 000 lines of code. This program is around 200 lines of code and works fine for most users
@SkyFly198532 жыл бұрын
@@notuxnobux I understand, but why not focusing on a single thing to coordinate the efforts.
@notuxnobux2 жыл бұрын
@@SkyFly19853 because as I said, the programs have different goals. this rootdo doesn't want all those features but sudo does. having choices for what is best for you personally is a good thing. Its impossible to make sudo that small and less complex while having all the features
@michaelsanchez13612 жыл бұрын
Just use Puppy Linux. It's already in root
@metatechnologist2 жыл бұрын
If there's no man page maybe you should write it and contribute to the open source project??
@TheEnde1242 жыл бұрын
su -c "command"
@Rmly2 жыл бұрын
cool
@ericmackrodt94412 жыл бұрын
All files and folders were last updated 5 months ago. It seems like they developed it, put it on github and never maintained it. That in itself is a huge red flag for me. It looks like an unfinished proof of concept.
@kajoma17822 жыл бұрын
Its feature complete there's nothing to maintain unless exploit is found