My humble MacOS setup
I’ve been using MacOS since 2013. Back then it was a Hackintosh because I didn’t have much money, but now I’m using computers from Apple.
TL;DR: The best approach that works for me personally is storing settings in Git: https://github.com/alexander-litvinovich/dotfiles
Dock Settings
It’s worth noting that the best dock placement is in Ubuntu, because it occupies the entire vertical strip on the screen. When windows are expanded to full width, the dock maintains the vertical alignment and the desktop doesn’t shine through it. Without additional software on Mac, this won’t work the same way.
My Dock is located on the side, hidden by default, with adjusted appearance and hiding speeds. Recent application history is not displayed because I don’t need it. Windows expand to full screen.
I launch applications through Raycast—it’s both more convenient and faster. The Downloads and Screenshots folders are pinned in the dock.
Screenshot Settings
By default, screenshots are saved to the desktop, which quickly clutters it. This setting changes the screenshots folder to a custom location. It also disables window shadow capture when taking screenshots.
defaults write com.apple.screencapture location ~/Pictures/Screenshots
killall SystemUIServer
You can then add this folder to the dock for easy access to recent screenshots.
Desktop Switching
By default, MacOS rearranges virtual desktops, placing the most recently used ones closer to the current one. This is very confusing when multiple applications are in full screen mode. The following settings disable this behavior:
defaults write com.apple.dock "mru-spaces" -bool "false"
killall Dock
Applications
In MacOS I’m missing some features from different Linux distributions and operating systems. For example, window management in Omarchy is organized in a very interesting and convenient way in my opinion. The huge number of icons in the menu bar is a hereditary issue of macOS and its applications. Spotlight was also improved only recently. The package manager needs to be installed separately, while in Linux there are many of them and at least one is available out of the box. To make the user experience a bit more convenient, I install the following applications. The installation criterion is simple: if the problem can be solved by existing means, then the application is not needed.
Homebrew — package manager
Raycast — for launching applications, clipboard history, caffeine mode to keep the computer from sleeping, and many plugins. Unfortunately, settings can no longer be saved locally, and settings synchronization requires a subscription.
Ice — for hiding icons in Menu Bar
Loop — for managing windows from the keyboard
Default Settings Reference
For a comprehensive reference of macOS defaults commands and system preferences that can be customized via the command line, check out macos-defaults.com — an excellent resource with visual examples and detailed explanations of various system tweaks.