Monday, October 14, 2019

Apple of 2019 is the Linux of 2000

Last week the laptop I use for macOS development said that there is an XCode update available. I tried to install it but it said that there is not enough free space available to run the installer. So I deleted a bunch of files and tried again. Still the same complaint. Then I deleted some unused VM images. Those would free a few dozen gigabytes, so it should make things work. I even emptied the trash can to make sure nothing lingered around. But even this did not help, I still got the same complaint.

At this point it was time to get serious and launch the terminal. And, true enough, according to df the disk had only 8 gigabytes of free space even though I had just deleted over 40 gigabytes of files from it (using rm, not the GUI, so things really should have been gone). A lot of googling and poking later I discovered that all the deleted files had gone to "reserved space" on the file system. There was no way to access those files or delete them. According to documentation the operating system would delete those files "on demand as more space is needed". This was not very comforting because the system most definitely was not doing that and you'd think that Apple's own software would get this right.

After a ton more googling I managed to find a chat buried somewhere deep in Reddit which listed the magical indentation that purges reserved space. It consisted of running tmutil from the command line and giving it a bunch of command line arguments that did not seem to make sense or have any correlation to the thing that I wanted to do. But it did work and eventually I got XCode updated.

After my blood pressure dropped to healthier levels I got the strangest feeling of déjà vu. This felt exactly like using Linux in the early 2000s. Things break at random for reasons you can't understand and the only way to fix it is to find terminal commands from discussion forums, type them in and hope for the best. Then it hit me.

This was not an isolated incidence. The parallels are everywhere. Observe:

External monitors

Linux 2000: plugging an external monitor will most likely not work. Fanboys are very vocal that this is the fault of monitor manufacturers for not providing modeline info.

Apple 2019: plugging an external projector will most likely not work. Fanboys are very vocal that this is the fault of projector manufacturers for not ensuring that their HW works with every Apple model.

Software installation

Linux 2000: There is only One True Way of installing software: using distro packages. If you do anything else you are bad and you should feel bad.

Apple 2019: There is only True Way of installing software: using the Apple store. If you do anything else you are bad and you should feel bad.

Hardware compatibility

Linux 2000: only a limited number of hardware works out of the box, even for popular devices like 3D graphics cards. Things either don't work at all, have reduced functionality, or kinda work but fail spuriously every now and then for no discernible reason.

Apple 2019: only a limited number of hardware works out of the box, even for popular devices like Android phones. Things either don't work at all, have reduced functionality, or kinda work but fail spuriously every now and then for no discernible reason.

Technical support

Linux 2000: if your problem is not google-trivial, there's nothing you can do. Asking friends for assistance does not help, because they will just type your problem description into Google and read the first hit.

Apple 2019: if your problem is not google-trivial, there's nothing you can do. Calling Apple's tech support line does not help, because they will just type your problem description into Google and read the first hit.

Laptop features

Linux 2000: it is very difficult to find a laptop with more than two USB ports.

Apple 2019: it is very difficult to find a laptop with more than two USB ports.

Advocate behaviour

Linux 2000: fanboys will let you know in no uncertain terms that their system is the best and will take over all desktop computer usage. Said fanboys are condescending elitist computer nerds.

Apple 2019: fanboys will let you know in no uncertain terms that their system is the best and will take over all desktop computer usage. Said fanboys are condescending elitist hipster latte web site designers.

11 comments:

  1. Linux of 2000 could be forgiven considering that it was barely 9 years old and started as a toy project by Linus in 1991. The fact that it was a serious contender for anything in 2000 is slightly short of amazing.

    ReplyDelete
  2. Linux wasn't that bad as i used the corporate laptop with Linux to do everything and more than the guys who had Windows installed.
    Pre-2000 desktops on Linux, sure there was pain as you had to be armed with monitor datasheet, a ruler and a calculator to calculate the modelines, then tweak the figures to get the display sort of OK.

    ReplyDelete
  3. So, it was time machine local snapshots again? I thought Apple had learned that lesson years ago. My favourite conspiracy theory is that they do this on purpose to upsell larger storage.

    ReplyDelete
  4. Minor English correction:

    "the magical indentation" ->
    "the magical incantation"

    ReplyDelete
  5. Mojave:

    tmutil thinlocalsnapshots / 9999999999 1

    ReplyDelete
  6. Just to notify you: someone has translated your post into Russian and published it at https://habr.com/ru/company/itsumma/blog/471518/ . The translation has attracted more than 60000 views, 307 "plus" votes and 25 "minus", as well as 400 comments.

    ReplyDelete
  7. So what is tmutil command that purges the reserved space? I'm having exactly the same problem and haven't found the solution. Thanks!

    ReplyDelete
  8. My current problem is that I have a 128GB phone and a 250GB lap mactop and iTunes wouldn't do a backup even with 144Gb of free space, I bet this was the same problem you had.

    ReplyDelete
  9. linux desktop is still ugly to use till now.

    ReplyDelete