This started changing about a decade ago. The first time I noticed it was when Apple bundled all of the services involved in NAT into a huge binary (this would have been about OS X 10.8 or .9). You could turn it on or off, but there was no longer a built-in way to serve DHCP on both ports.
There's been a steady progress away from tools aimed at the entire skill gradient and towards the lower end of that gradient: Around 10.9 OSX got new file open/save dialogs, which were infinitely better if you used a mouse... but lacked any cmd-key shortcuts.
Gatekeeper has made it progressively harder for system tweaks like LaunchBar or Little Snitch to exist, and I've had to wrestle with SIP more than once.
In summary, earlier versions of OSX are perfectly fine (my one remaining mac is on 10.10), but Apple has not been doing itself any favors with the dev community in more recent iterations of the OS.
The GNU/Linux community also isn't bending to my will arbitrarily either. Frustrating, to say the least.
In all seriousness, people are all happy to talk about how easy linux is to customize until you broach the subject of changing keybindings to use a mac-like scheme (using command for gui interactions as a rule of thumb, readline bindings everywhere there's text entry), and you find out this is pretty much impossible. In reality software is mostly customizable in the way the creators built it to be customized, including things like windowserver and macos mouse behavior and X11 and gtk and emacs and bash.
As a result, I'd guess that most of the purchasers of new computers are in the generations above and below the ones with technical knowlege: the new generation, without the background to even care about being a power user, and the older generation where most aren't power users anyway.
BTW, I'm using i3, and I think it would be (relatively) super easy to change the keybindings around to what you're describing. It sounds like you may need to find an OS that's designed to expose the level of customization that you want.
> BTW, I'm using i3, and I think it would be (relatively) super easy to change the keybindings around to what you're describing.
Really?
How does one go about configuring i3 such that, say, any time you hit ctrl-w it deletes backwards to the previous white space (a common readline binding) in any text entry box in, say, Firefox, IntelliJ, Spotify, VLC, Amarok, Gimp, etc?
Are you quite certain that “readline bindings everywhere there’s a textbox” is really in the scope of i3’s customizations? What OP described goes quite a bit beyond window manager customization.
> It sounds like you may need to find an OS that's designed to expose the level of customization that you want.
On OS X this can be achieved by placing
{
"^w" = "deleteWordBackward:";
}
in $HOME/Library/KeyBindings/DefaultKeybindings.dict, so I rather think he already is using an OS that exposes this level of pervasive customization.I don't think this supports the argument that Mac OS X is somehow more customizable that Linux. In my opinion it's the opposite: every application is strongly encouraged to use the same text widget. We're lucky in this case that we like this function. In other cases (like virtual desktop management) Apple's decisions have been towards less customizability. I believe that has long been a Hallmark of Apple, back when OS X was released Apple scoffed at the idea that anyone would ever want to change the default theme (which at that time was a bit more extreme). A "gray" theme.was introduced after much pressure from customers.
That said, I seriously doubt that the Apple Computer of today is as interested in ensuring this functionality to the same degree as the Apple of ten years ago. They have made many developer unfriendly decisions in the past decade, I wouldn't count on this feature being present indefinitely.
Yes, I clearly already understood that. I was pointing out how absurd ColanR’s claim was that he could do this all through i3 config “super easy”. It isn’t within the domain of the window manager to control the toolkits’ widget bindings, which are all over the map in terms of customizability.
> I don't think this supports the argument that Mac OS X is somehow more customizable that Linux. In my opinion it's the opposite: every application is strongly encouraged to use the same text widget.
Which, in my opinion, strongly increases customizability because I can be sure the things I customize work the way I want them to effectively everywhere; I am not limited by every third application author’s obstinate choice to hardcode some other set of bindings in some deliberately incompatible toolkit.
I’d suggest that our disagreement comes down to the fact that configurability is not a linear gradient, but a fairly complex, multi-dimensional topic with a lot of subtle trade-offs that different people may have different preferences surrounding.
> I wouldn't count on this feature being present indefinitely.
Sure. Similarly I don’t count on however you do this in GTK today still working in 5 years, given how often they CADT their way into new incompatible configuration systems.
Of course it’s system textbox specific; if you reimplement your own, there is no magic involved.
And obviously it’s possible in GTK. And KDE, and one-offs like Firefox, for that matter. I’d suggest that the fact that you have to do it in about 20 different ways to cover your common apps, and a few will not even offer this kind of configuration, is net-worse than the OS which makes this so easy because there’s a standard GUI toolkit that nearly everything uses.
This doesn’t mean “Linux Bad, OS X Good”, but it is indicative of the fact that “Linux is configurable and OS X isn’t” is a very poor descriptor of reality.
Configurability is a complex topic with a lot of different facets, and both OSes offer different ranges of ease of configurability in different areas.
ColanR made the extraordinary claim that, ostensibly because he uses i3, “it would be (relatively) super easy to change the keybindings around to <command for gui interactions as a rule of thumb, readline bindings everywhere there's text entry>”. This is a very typical Linux user’s response in which they very narrowly equate mac keybindings with “window manager configuration”, when the flexibility offered by the system is in reality much broader than that.
I know atleast a few programs that people use on osx which break these conventions, hence it's not as universal as your proclaim.
Unless you run only their store apps on your computer(which most likely no developer does), then maybe what you say makes sense. Otherwise it's not better than linux distros like elementary OS where convention is also to use gtk only apps(similar to cocoa only).
This is, frankly, horseshit.
I run a lot of non-store apps, and absolutely none of them are GTK based, because GTK apps on OS X run through X Windows and look and work like dogshit. Next to nobody is voluntarily running that garbage.
Qt uses native text widgets, and works with the default input customization just fine. I can’t even begin to think of a development app that would be written in sdl2, a bloody games API.
Very, very few apps commonly in use by devs on OS X use anything other than native widgets, and it’s ridiculous to suggest otherwise.
The situation is a far, far, laughable cry from elementary OS, because outside of a small limited set of apps specifically targeted at such a niche distro, most Linux apps are still written in a hodgepodge of inconsistent wheel-reinventing mess of incompatible toolkits. The situation is night-and-day in inconsistency compared to OS X.
A lot of games do, some even have their built-in editor and it's not about sdl2, it's anything custom widget toolkit. So your thing is a nice convention which often works but not always.
> laughable cry from elementary OS, because outside of a small limited set of apps specifically targeted at such a niche distro
Small limited set? a lot of programs are already written with gtk, distro merely enforce this convention in their app store like apple does.
I am not going to bother commenting on obvious things about how consistent OS X is.
Cmd-Shift-A: Open Applications folder
Cmd-Shift-H: Open Home folder
Cmd-Shift-D: Open Desktop folder
Cmd-Shift-O: Open Documents folder
Cmd-Option-L: Open Downloads folder
Cmd-Shift-L: Open Library folder
Cmd-Shift-.: Toggle Hidden Files
Cmd-[: Back
Cmd-]: Forward
Cmd-Up: Up
Cmd-Shift-G: Use the filesystem however the fuck you like, with tab completion.
So much easier!
Embarrassingly I am not new to OSX/MacOS.
cmd-s Save
cmd-n New folder
cmd-shift-s Save As
It's possible some have been added back.
Not true. The shortcut is cmd-shift-g which allows one to select files via the standard filesystem directory hierarchy, using a widget which supports tab completion.
Cmd+Shift+G withing an open/save diolog gets you a dialog where you can enter a path with tab completion support.
All macs do.
If i can expect a macbook to work properly running macos, but can't expect a laptop running Linux to work properly, that's all I need to know. I'm not going to be all "I guess it doesn't matter that my laptop doesn't sleep, they have hundreds of models to account for!" and just deal with it.
So--mac and linux are equal?
If you must rebuild Apple’s OSS kernel, you can follow the instructions here: https://developer.apple.com/library/archive/documentation/Da...
Do you mean i3 cannot handle general browsing tasks?
Please read https://en.wikipedia.org/wiki/Planned_obsolescence
An obsolete laptop is the same as an obsolete phone: it's one where it chugs when opening Spotify, or Slack, or any other "nobody ever bothered to optimize this" app that everyone uses anyway.
Or, to put that another way: you can certainly retouch photos in GIMP, or even in Paint Shop Pro 7 on Windows XP. But what if you want to use seam-carving in your photo-retouching? PSP7 ain't got that. Once you know that your use-case dictates a modern version of some memory-hogging software, well, that constraint dictates what kind of computer is "obsolete" or not for you.
One of my biggest complaints about Apple is the difference between what I consider to be obsolete and what they do.
My Unity projects work out of the box.
There's no "real package manager" on any of the BSDs; package managers are a Linux-ism. BSDs (like Darwin) have base-systems, developed and released as a whole; and then, separately, userlands, delivered through some kind of ports system. Critically, nothing in the base system is ever dependent on the userland; the system always works fine with zero userland ports installed.
Under such a paradigm, there's absolutely no difference between a first-party ports ecosystem and a third-party one.
> You can't upgrade your hardware. Once your HW is unsupported by Apple you're stuck with an old OS that is unsupported by third party software as well.
Personally, I like the era of disposable computers. Most computers have got hardly anything in them these days, anyway; just an SoC and a battery. What would you upgrade? It'd be like upgrading the parts in an electric toothbrush. In both cases, there's just a few parts, and they all wear out at about the same rate, such that when the device is worn out, it's all worn out. Just get a new one, and recycle the old one for scrap (i.e. what Apple does when you use their trade-in program.)
(And there's the App Store, which is effectively a non-technically-inclined-user's "package manager".)
I like Homebrew -- is it not adequate enough for your needs?
The latest version of MacOS supports hardware from 2012. High Sierra (released 2 years ago) supports hardware from 2009 and 2010, and very little if any software released today won't run on it.
I don't want to do any of that any more.
Either it works out of the box, or it doesn't.
I think it'd be difficult to get the keyboard shortcut mappings I have working even in Linux -- Emacs-style keyboard shortcuts everywhere without interfering with the more typical keyboard shortcuts.
Another thing is that if I really need something from Linux or Windows, I can either run a VM, boot into one of those OSes natively, or remote desktop to a server with good remote desktop performance. Hackintosh's are a possibility though have their rough edges, and macOS runs better in a VM these days from what I hear, but macOS is my preferred host OS anyway for things like audio/music production apps and video editing, so I'd want to run macOS natively over other OS's anyway. For the stuff I currently do, Linux and Windows run fine in a VM.
So, going with the original analogy, macOS is like a hotel where you can have your own house inside.
I run an environment, on OSX, similar to this although (I assume) much less ambitious in the customization.
My biggest problem is the lack of focus-follows-mouse. I had this in the snow leopard days with an add-on called "mondomouse" which is abandonware and I attempted to solve it with "dwellclick" but that isn't really designed for what I need and doesn't work.
Now I see that in very, very new versions of OSX there is some buried setting in accessibility that does honest-to-god focus-follows-mouse (as in, raise window as if I clicked it when I hover over) ... can anyone confirm/deny ?
There are some third-party macOS window managers out there. Personally I use Amethyst. I'm sure they're not as powerful as Linux WMs can be, but it suits my tiling needs when I have an external monitor plugged in.
I'm still using a mid-2009 MBP. Upgraded the RAM, replaced the hard drive with an SSD, and just last week installed Catalina on it. It's still my daily driver lol.
Tl;dr: Customization is highly overrated.
False. Adding 16GB or 32GB RAM makes real difference to any machine. But it's not profitable for Apple, they want you to buy new one.
All the popular competitors to the MacBook Pro have soldered RAM including the XPS 13 and ThinkPad X1 Carbon.
Really the truth of the matter is that for 95%+ of people, RAM requirements have completed plateaued in the last 5-8 years or so.
They were certanly the first to implement that and starters of the wider trend.
I would argue that consumers demanding portability is not a “trend.”
And the only way to deliver true portability is to combine components. e.g. smartphones.
Do you want some oil on it(ram)?
It's 80 euros because you have to ask the chef assistant (apple store)
Do you want different kind of pasta which is the standard for that receipe? (Nvidia GPU)
You can't
So what are you really paying for?
The forniture?
I go to a museum if I wanna see some fine classy decor...
I've heard this over and over — that Macs are locked-down, uncustomisable machines — and I don't agree with it at all.
I use replacements for almost all the built-in apps. I use a custom launcher. My editor config Git repo is approaching ten years old, and my shell config Git repo is almost eight. There are standard interfaces to per-application Preferences and keyboard shortcuts. When I sit down to use someone else's Mac, I have no idea how to use it!
What changes am I missing? The only thing I can think of is that I can't use a different window manager or a different kernel, but I'm fine with those already.