Our great sponsors
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
It's not their first time. They've done it with curl: they made an alias to their own program not supporting the same feature set and it inevitably backfired [1]. sudo is a complex program with a lot of different options. From what I see, "sudo for Windows" is pretty basic. In comparison, sudo's man page [3] is much longer than "sudo for Windows"'s entire source code [3]. It could get bigger, but it would take time, and as people from MS said here, it's never going to be compatible because of how Windows works differently.
While I understand picking a familiar name, sudo is certainly not the only player, there's also doas. This shows people can adapt to another name and another would have seemed more appropriate.
[1] https://daniel.haxx.se/blog/2016/08/19/removing-the-powershe...
[2] https://linux.die.net/man/8/sudo
[3] https://github.com/microsoft/sudo/blob/main/scripts/sudo.ps1
This smells like when PowerShell aliased curl and wget to a completely different command, with incompatible arguments.
https://github.com/PowerShell/PowerShell/pull/1901
Well, sudo for Windows has been a thing for, like, a few years now?... https://github.com/gerardog/gsudo
Not sure if this is the same thing, but this definitely should have shipped with the very first implementation of "oh, sure, you're an Administrator, but not really, since we're ignoring that bit" a.k.a. User Account Control.
That would have saved about a metric ton of misguided "here's how to turn off UAC" tutorials, but, ehm, yeah, anything to inject some life into the moribund Windows Insiders Program (the one where https://blogs.windows.com/windows-insider/ proudly headlines "What’s coming for the Windows Insider Program in 2023"), right?
I already use https://github.com/lukesampson/psutils which has a sudo.ps1, which I install via scoop (I know that's a mouthful, but I just install scoop and run `scoop install sudo`). I used it from powershell literally just before I opened this article (after copy-pasting a password, I copy some random text laying around in the browser, like "com", then run `sudo restart-service -name 'cbdhsvc*'` to clear the clipboard). There is a UAC prompt, but it's perfectly adequate for interactive work.
And if you need the Sudo interface there are wrappers like https://github.com/purplesyringa/win-sudo.
If the elevation prompt would show the elevated executable and not the wrapper, that would be news...
Do caffeinate next!
That reminds me, I have a half-written implementation here:
https://github.com/AustinWise/caffeinate
Side note that I've always found interesting: sudo is almost entirely maintained by one dude: https://github.com/sudo-project/sudo/graphs/contributors