macOS and Linux are both great operating systems. They are both inspired by Unix and are stable and robust.
Much as these two operating systems have in common, they are unique in their own ways. Let’s take a look at some key differences between macOS and Linux.
Brief History of macOS and Linux
The main parts of macOS and Linux are the kernel, core utilities, the GUI or desktop environment, and applications.
macOS is based on a BSD Unix kernel known as Darwin which is open-source. The other parts of macOS (for example, the GUI and core applications) are closed-source and proprietary. Apple builds and maintains these software systems and they come as part of your Mac device.
Apple adopted Unix into macOS in the early 2000s. Prior to that, macOS was based on a non-Unix operating system.
Linux on the other hand started out as a personal project and as a clone of the Unix operating system in the early 90s by Linus Torvalds. Strictly speaking, Linux is just the kernel. The operating system itself is made up of core parts such as the GNU utilities, and desktop environments such as GNOME, KDE, etc.
1. Open-Source Vs. Proprietary Software
Both Linux and macOS heavily use open-source software, but while Linux distributions are entirely open source, parts of macOS are closed source and proprietary.
From the open-source kernel to core GNU utilities and GUI environments, Linux is the epitome of free and open-source software. You are free to modify and repackage the entire OS to your liking. You can even commercialize and earn money from it, as is the case with Red Hat Enterprise Linux.
In most cases, the licensing terms for Linux require that the modifications you make are also made public to the community.
With macOS, it is mainly the kernel that is open source. The other parts such as the desktop and applications are not open source. Of course, other components from Apple such as the Swift programming language are open source.
Unlike Linux, which you can use on any hardware of your choice, macOS is meant to be used on Mac devices. When you buy a PC from Apple, you are paying for both the software and hardware.
2. Software Management
Linux has long embraced the concept of having central software repositories, from where users can easily download and install applications using the command line or via graphical tools.
Most Linux distros come with package managers such as APT on Debian-based distros, DNF or Yum on Fedora and Red Hat Enterprise Linux, and Pacman on Arch-based distros. With a package manager, you can install, remove, update, and manage software applications with ease on your PC.
The traditional method of installing applications on macOS is via the applications folder. You download the application you want to install from the internet and then drag it into the applications folder and macOS will take care of the rest.
Another, more recent option is to use the Mac App Store to install software applications.
You can also use Homebrew, a package manager that works on macOS in a much similar way to the Linux package managers such as APT. Homebrew works on Linux too.
3. Command-Line Prominence
The true power of Linux is in the terminal or the command line. macOS has a similar terminal emulator available, but much of the attention goes to the fancy Mac desktop.
The terminal allows you to interact with your PC and software resources in an efficient and easy way. Plus it allows you to automate and schedule tasks easily. Software engineers, advanced users, and system administrators running Linux heavily incorporate the terminal into their workflow.
Most Linux distros use Bash (GNU Bourne Again Shell) as the default shell for the terminal. In 2019, Apple replaced the Bash shell in favor of Zsh (Z shell). The Z shell is highly customizable and shares many similarities with Bash, ksh, and tcsh.
Because Linux and macOS mostly use similar shells, the core commands that you run on a Linux PC will also work on your Mac and vice versa.
4. Desktop Environments
In the early days of Linux, operating systems based on the kernel didn’t ship with a GUI, and most Linux servers still don’t. You had to interact with the operating system via the terminal. With time, desktop environments were developed to help users interact with the operating system in a more intuitive and friendly way so that the OS could cater to advanced and non-technical users alike.
As with all things Linux, there are multiple desktop environments that you can choose from, all of which offer a unique way for you to interact with the system. Some prominent desktop environments include GNOME, XFCE, KDE, Deepin, etc. You are free to install several desktop environments on Linux, however, you can only use one at a time.
The GUI on macOS is standard and the same for all users. Apart from changing the wallpapers, themes, and similar tweaks, you do not have the option to install another desktop manager that changes the way your macOS looks and feels.
5. The Concept of Multiple Distributions
On Linux, a distro or distribution is a particular type of Linux that comes with a specific set of applications, desktop environment, and system utilities. Different distros usually target a specific set of users such as ethical hackers, artists, programmers, software developers, etc.
There are literally thousands of Linux distros that you can choose from depending on your workflow. For example, Kali Linux, a Debian-based distro, is mostly used for ethical hacking and penetration testing. It comes with plenty of tools and utilities suitable for ethical hackers.
Arch Linux is another example of a Linux distro that is lightweight and comes with minimal tools. It is widely used by Linux enthusiasts and geeks who like to customize their operating systems from scratch.
On the other hand, with macOS, everyone gets the same kind of operating system regardless of what their passion or work is. This is because Apple is the sole company that develops and controls the operating system. It would be counterproductive for Apple to maintain multiple variants of a single operating system.
The reason why there are so many Linux distros boils down to the fact that the Linux kernel and its core components are all open-source. This allows users to easily create new Linux flavors that target a specific audience.
Linux vs. macOS: The Battle of the Best
Linux and macOS are both great and share some Unix heritage. For example, both come with a similar command-line shell and have an identical file structure. All other stem differences from the fact that the Linux kernel is open-source, and anyone is free to modify it.
Not sure which Linux distro to use? With hundreds of Linux distros to choose from, it can be hard to find the right one. Debian-based distros such as Ubuntu and Pop! _OS are awesome and easy to start with.