How to replace macOS with a fully open source Linux system
By: +David Herron; Date: December 8, 2017
Maybe the direction Apple and Microsoft are taking is not aggreable in that both are seeking tighter control over what we do with our computers. Both are businesses and obviously will try to extract as much money from us as possible. In the case of Apple, their computers are increasingly closed boxes that cannot be opened and repaired. Instead you're faced to pay ridiculous prices for upgrades and repair, which lines Apple's pockets at our expense. As a what if exercise, I'm thinking over what it would take to supplant macOS with a Linux system (won't ever go back to Windows).
I've been happily using Unix-like systems since 1982 when I found a PDP-11 running Unix V7 in a computer science department computer lab. Within a year or so I'd wangled a job administering the brand new VAX-11/750 running BSD 4.2, and held a position in that team for about 6 years. Since then, except for a brief dalliance with Windows, I've used SunOS, Solaris, Mac OS X, Linux, and FreeBSD systems almost exclusively.
When Apple announced Mac OS X, I jumped in at the first chance -- because it was a Unix with a pretty face that also had a decent Java implementation. At the time I worked for Sun in the Java SE team, and therefore Java support was important.
After about 15 years of using Mac OS X, I'm starting to wonder if or when I should switch to Linux. I can't point to any one thing, but have a nagging feeling that Apple is going to be tightening and tightening their control. Plus, it clicked one day that most of the applications I use daily are extremely portable. Meaning that it may well be feasible to use Linux full-time, and to a large extent that's due to Electron - the desktop application framework that's a weird amalgam of Node.js and Chrome.
In this post I'm going to summarize the application set I'm interested and a few notes about each. Each application type will warrant one or more followup posts exploring alternatives. All will be linked here.
I primarily work as a software engineer, and must have good quality tools. This shouldn't be a problem on Linux. I primarily use Eclipse for Java software development, and Microsoft Visual Code for other editing tasks. Both are readily available on Linux.
Postman - for REST service testing - Available for Linix
GitKraken - for Git - Available for Linux
Docker - Available for Linux, and running natively rather than via the hypervisor required on macOS
Chrome, Firefox - both available for Linux
PDF and Image viewing
In macOS, the Preview application is excellent, combining PDF viewing, image viewing, image editing, screen capture, and more, all in one application. For Linux this may require multiple applications.
Skype and other Internet video/audio calling
Microsoft is downplaying the Skype app for Linux. At the same time, the web version of Skype is coming along. It may be that Skype in the web browser on Linux works well enough, or else Skype for iOS or the web version on Chromebooks.
Google Hangouts works fine in web browsers.
I don't often use a Twitter application versus the Twitter website. Supposedly there are extra features available by using an application.
Shared calendar, notes, contacts
One great feature of macOS is the shared system for calendars, notes, and contacts. They sync seamlessly between desktop computer and iOS devices. Apple really wants you to use iCloud services for this, but also allow you to configure other services. I've had success with using Google accounts with these features.
But -- Big Brother? Do I want Apple snooping on these things and perhaps turning them over to the Feds?
This will be a hard nut to crack because of the desirability of syncing this stuff to iPhone/iPad.
DVD, Video, Audo playback
What to do with the big pile of stuff I have in iTunes? Especially the stuff I've bought that way? And what if I want to keep buying stuff via iTunes?
Video editing and conversion
There's various video editors for Linux and some of them might even be acceptable. For conversion there's ffmpeg, which has an unfortunately complex command-line user interface.
Photo editing, photo gallery, panorama creator
Gimp? Unsure of what else is available.
eBook / EPUB reader software
Reading Kindle books on Linux, supporting a switch to Linux No form of Kindle Reader exists for Linux, and the installer for the Kindle Reader for PC crashes when run under Wine. Therefore Linux users cannot directly read Kindle eBooks. They can use the Kindle Cloud Reader.
Obviously Apple's iBooks will not run on Linux. Fortunately that runs on iPad. As does Kindle and other eBook readers.
On Linux I know of the Calibre suite.
I have both iPhone and iPad. One of the control points is how Apple limits you from accessing the file system on the device, and thereby limits your options for backing up the device. Instead you're corralled into backing up via iTunes onto your desktop computer, or else to iCloud ($$$'s per month).
It's fairly easy to get automated backup of pictures and a couple other things. But this is a per-application thing because of how Apple set up the system.
It may be better to switch to Android?
In macOS we have Time Machine built-in and it's excellent.
Monitoring system attributes -- SSD and battery health etc
For some of this, command-line utilities are available. On macOS I have installed a few GUI's that are nice. The importance is having visibility into the status of your computer. For example the SSD Reporter application is telling me about the degradation of the SSD drive in percentage points.
Controlling the Drobo
I have a Drobo for storing vast quantities of files. The issue is running the Drobo Dashboard app - which doesn't exist for Linux.
H&R Block tax application, and general accounting
I do my taxes with the H&R Block application. Maybe the Windows version will run on Wine?
Otherwise I use WaveApps - a hosted web app - for accounting.