5 ms·
If only they could spare a few dozen devs to update the command line tools to the 21st century.
by kevin_thibedeau 2y ago
If only they could spare a few dozen devs to update the command line tools to the 21st century.
- trey-jones 2y agoMany people here are commenting that brew is a good way to get modern tools. I must say, I prefer Docker by several country miles.
- rbanffy 2y agoIt’s like having the tools in a different computer. You can mount your local filesystem onto the container, but if feels like WSL - there’s always an “impedance mismatch” between the two sides. I prefer to use the tools running locally on the same OS I’m working with. For that, MacPorts is great.
- phendrenad2 2y agoYou mean how the Unix standard tools on Mac are way behind Linux?
- zifpanachr23 2y agoSo are the BSD tools by some definition of "behind". Another way to look at this is to say that GNU tools as typically seen in modern Linux are bloated (I know, Linux and "bloat" are kind of a meme, but it is generically true for the most part when it comes to the command line utilities feature creep over the years, so it's a useful and descriptive word). I have to work with old machines and legacy operating systems quite a bit in my day to day and I always am going to prefer something lighter and with less ways to shoot myself in the foot w.r.t. POSIX compliance. MacOS is Unix certified so I appreciate them being somewhat reserved in the features they add on top of POSIX. Modern GNU userland utils are nice and fun but if you are looking for compatibility it's best not to use them. Consequently, the MacOS situation doesn't bother me especially given you can install more up to date tools if you want. I think keeping the defaults older and more compatible is a good thing.
- forrestthewoods 2y agoWhat tools do you prefer?
- zifpanachr23 2y agoI prefer a lot of the BSD variants of the typical POSIX tools (i.e. bsdtar vs GNU tar, ksh or similar instead of bash, etc etc). Usually because they add less extensions on top of what is required by POSIX, but are still easily acquired in a modern Linux distribution. I mostly just alias them. If I write a script using BSD esque tools I can be reasonably sure they will work on any Unix-like, whereas if I write/test my script on a machine using GNU utils, I'm fairly likely to accidentally use a GNU extension that would cause the script to fail on an older Unix-like OS. For instance, I do a lot of work migrating code off of AIX,and I need the scripts I develop to work on AIX when I'm gathering environment information from customers. I can't just assume they will have a ~2020+ implementation of Unix userland tools with all the GNU extensions and nice features. Sometimes the machines have been sitting quietly in the back of a data center not being updated for quite a while and will have more "90s style" of Unix tools.
- homebrewer 2y agoThere is poor cross-UNIX compatibility if you're doing anything complicated, anyway. I maintained a large test suite for about a year that was written in POSIX sh and targeted Linux, macos, {Free,Open,Net}BSD. It wasn't fun because every program behaved in slightly different ways, half of them undocumented (for example, I remember having lots of pain with how different versions of tail handled SIGPIPE). In the end it was was easier to rewrite in Perl than to keep maintaining that thing, struggling for hours to find ways of implementing every little bit of functionality that worked reliably on every OS. You'd add or fix something, and the tests would break on FreeBSD. You would fix it there and it would stop working on NetBSD. And so it goes.
- zifpanachr23 2y agoThis is true about cross Unix compatibility. I can still dream though.
- klysm 2y agoPlease explain how this will increase the stock price in the next week, otherwise it will not be prioritized
- behnamoh 2y agoto Tim Cook, yes, but not to Steve Jobs.
- CursedSilicon 2y agoI don't think Steve Jobs would care any more about command-line MacOS tools than Tim does
- emidoots 2y agoSteve Jobs would lean into making Apple the #1 AI developer platform and showcase at WWDC how the terminal is now obsolete
- rbanffy 2y agoHe wasn’t stupid. He’d observe their own developers and see how they rely on the terminal and command line for their work. He’d ask pointed questions and demand thoughtful answers. Then he’d find a way to make it the #1 AI developer platform or distort reality until it is.
- emidoots 2y agoMy comment wasn't sarcastic. My comment is aligned with the last paragraph you wrote.
- paulddraper 2y ago:(
- wodenokoto 2y agoYeah, the real stock market mover is the mouse cursor. That wiggly thing they did that grows the mouse cursor really send ripples throughout Wall Street.
- 999900000999 2y agoDesktop Linux is right here, desktops Linux has always been here! I don't understand why people complain about Apple neglecting developers when desktop Linux provides a superior experience aside from the rare times you need to compile an iOS/Mac specific application.
- dingnuts 2y agoI don't get it either, it takes twenty minutes to burn a USB stick and run the installer. It takes me longer to remove the bloatware and set up my preferred settings on a proprietary OS than it does to install Linux nowadays, and that's been true for a decade at least now. It's just not hard! It's not more work! And yet the meme about it being more trouble just. won't. die. You people are supposed to be technologists! Why won't you spend 20 minutes of one time setup to get a better experience? Not all hardware works? I don't see anybody complaining about having a limited set of hardware options when they buy Apple! Canonical maintains a list of fully compatible computers; just pick one, buy it, and you wind up with a computer just as easy to use as Mac OS but without the endless paper cuts of using a system that has no respect for you at all and thinks it knows better
- foldr 2y agoI use Apple laptops primarily for the hardware. But Linux has never really been a great experience on Mac laptops when it comes to battery life, reliable suspend/resume, etc. etc. I used to use Yellow Dog Linux on a G4 PowerBook way back in the day, but I haven’t had much luck with Linux on Mac hardware since then.
- bastardoperator 2y agoMost of us have .dotfiles, I can snap any macos installation into my preferred configuration in about 5-10 minutes unattended depending on internet speeds. I do most of my work in a terminal, as long as that works, I'm good on Linux, MacOS, and BSD's. They all have pros and cons.
- rbanffy 2y ago
- riscy 2y agoFor a simple version bump, I feel like brew is fine. Or do you have other tooling updates in mind?
- mihaaly 2y agoApparently there is a 20,000 surplus somewhere waiting to jump in.
- bastardoperator 2y agoOr you can take the extra minute to install them yourself with brew, this a complete non issue for anyone that understands the command line in the 21st century using MacOS. Also, I would never build anything against macos userland because it's almost never the target.
- behnamoh 2y agothese two are orthogonal to each other.
- paulddraper 2y agoBrew takes a minute just to update itself, let alone install anything. And then everything needs to have the /opt/brewsomethingsomething PATH. /bin:/usr/bin:/usr/local/bin not good enough.
- rbanffy 2y agoMacPorts is The Way.
- nobankai 2y agoIn the big '25? Nixpkgs is the New Way.
- bastardoperator 2y agoSo what? Do you complain when apt, yum, dnf, pacman, ports, or any other package management system does a download? I bet you don't, so it's not really a usable argument. Secondly, yeah, not tainting my systems OS and system paths is a good thing and opt/ from the filesystem perspective is the absolute right place to put add on packages. "The /opt/ directory is normally reserved for software and add-on packages that are not part of the default installation"
- paulddraper 2y agoI complain every single time apt, yum have to self update for a solid half minute plus.
- deleted 2y ago[deleted]
- deleted 2y ago[deleted]
- kilna 2y agoI made this. It makes it easy to use all of the most common gnu tools via brew, without having to do gsed for sed, etc... all with working man pages. It also lets you switch back easily in a shell session if you need the mac native ones for some godforsaken reason: https://github.com/kilna/gnu-on https://github.com/kilna/gnu-on