Preferences

Ubuntu is switching to a Rust implementation of sudo: https://www.phoronix.com/news/Ubuntu-25.10-sudo-rs-Default

Repo here: https://github.com/trifectatechfoundation/sudo-rs

It's permissively licensed, unfortunately. Wonder why. It's not a library. But it ought to improve security in the long run.


Xylakant
> It's permissively licensed, unfortunately. Wonder why.

I've been loosely involved in setting this up, so I can say a little: The people that funded the initial work wanted it permissively licensed. My (somethwat informed) conjecture is that they rank making things secure - even in closed source apps that now could take the code - higher than barring closed forks. It also tracks with the Rust ecosystem in general - APL or derivates are very common in that ecosystem.

Vilian
Read the sudo license that argument don't make sense when sudo license is even more permissive
johnisgood
Do they not think that the switching is premature? I am pretty sure the Rust version has a lot of logic bugs that not have yet been found.
faceplanted
> I am pretty sure the Rust version has a lot of logic bugs

What makes you say that? I'm not trying to be argumentative, I'm genuinely interested.

vlovich123
I’m a pretty big advocate on Rust and while Rust does protect classes of certain kinds of bugs and probably encourages better unit test hygiene and thus higher code quality, it does not protect against logic bugs and all the historical CVEs and thus it’s possible for previous exploits vectors to resurface. Thus it’s not an unreasonable prior to assume there are vulnerabilities lurking.

On the other hand, if the replacement isn’t targeting full sudo feature set and also reducing the amount of code and/or making architectural improvements like keeping most code not running as root, then the blast area of such logic bugs can be reduced.

jonathanstrange
Whenever a complex system is rewritten, there are a lot of bugs and regressions in it.
djmips
All the rewriters are offended by the truth.
johnisgood
Yup, hence why the downvotes. :( I thought it was a no-brainer, but I guess not.
Dylan16807
Saying "a lot" and especially that it's still "a lot" is not a no-brainer.
throw0101b
> Some functionality is not supported, such as […] storing config in LDAP using sudoers.ldap, and cvtsudoers.

* https://github.com/trifectatechfoundation/sudo-rs?tab=readme...

Well that makes it useless for $WORK (for now), as we use LDAP as our central policy repo (and more generally our user account store). Will have to wait until (at least) that's implemented before we can even consider it.

> It's permissively licensed, unfortunately. Wonder why.

So it can be used distributed with fewer legal hassles.

stephenr
> It's permissively licensed, unfortunately.

Well damn that's a shame. I just hate it when people let others use their work in a way they choose, that happens to be less restrictive than my own personal choices.

/s of course.

scheeseman486
Worked out for Linux, which remains a largely open, collaborative ecosystem. Meanwhile all the BSDs are good for are as less-good Linuxes that can be shoved into proprietary products. Google is choking out AOSP, which they can do because of Android's "less restrictive" license.

Copyleft licenses are demonstrably better for open source projects in the long run. We've had enough time to prove that out now.

jcranmer
The success of Linux over BSD has more to do with a lawsuit in the early 90's over whether or BSD infringed on Unix's source code, which made Linux the only viable open source Unix-like operating systems if you had to ask a legal department the question.

Look beyond the OS, and much of the tech stack is dominated by non-copyleft open source projects. Both the major web servers--Apache and nginx--are permissively licensed, for example. Your SSL stacks are largely permissively licensed; indeed, most protocol servers seem to me to largely be permissively licensed rather than copyleft.

And I should also point out a clear example where copyleft has hobbled an ecosystem: Clang and LLVM have ignited a major compiler-based ecosystem of ancillary tools for development such as language servers. The gcc response to this is... to basically do nothing, because tight integration of the compiler into other components might allow workarounds that release the precious goodness of gcc to proprietary software, and Stallman has resisted letting emacs join in this revolution because he doesn't want a dependency on non-copyleft software. An extra cruel irony is that Clang appears to be an existential threat to the proprietary EDG compiler toolchain, which would mean it took a permissive license to do what the goal of the copyleft license was in the first place: kill proprietary software.

Xylakant
I think it's pretty reductive to boil down linux' success to the choice of license. There's governance model, development model, institutional inerta, ... - and the linux ecosystem contains tons of permissively licensed pieces of software, some of which massively contributed to its success (the once-default webserver that came with its own permissive license, the APL). Even the kernel includes APL, BSD-2 Clause and MPL'ed code.

To the contrary, GNU Hurd is GPL'ed and is much less successful than the linux kernel.

umanwizard
That is an extremely cherry-picked example. There are plenty of examples of permissively-licensed software that is very successful, and no evidence that the license choice is why Linux won.
spookie
Good take. Also note the very well thought out decision from Linus and team to keep GPLv2, it is a balancing game.

In the end, if you want projects to succeed they need contributors. Unfortunately, some of them need to be reminded to play fair more than others, and in those cases the legalese helps.

stephenr
I'm not even going to point out the hundreds of counter examples to your argument.

You clearly didn't understand my point: I'm not arguing about whether GPL is better than MIT or BSD or even SSPL/etc.

My point is that if someone else chooses to release their software with less restrictions on it than I would choose, that's literally none of my business.

They wrote the fucking thing, they get to choose how it's fucking licensed.

Plenty of organisations (and thus people) skip using GPL licensed software due to inability or unwillingness to be bound by it's terms.

I'm still waiting for the day the GPL camp says they're not going to use things like OpenSSH, Apache, Nginx, Postgres, Python, Ruby - because they're too fucking permissive.

wesselbindt
Given that enshittification is a thing, and embrace extend extinguish is a thing, I'm inclined to agree with you there, without the /s.

This item has no comments currently.