macOS Setup after 15 Years of Linux
hookrace.net
hookrace.net
Yet with all of this effort I still went back to linux after a year (Arch with Qtile and Gnome). What really killed macos for me was the fact that animations could not be disabled entirely and everything felt like it's behind several ms of a delay. I work on the move so I don't have the luxury of multi-screen setup so switching between programs, workspaces and windows is the most important part of my workflow - it just drove me nuts.
Now I run simple Lenovo yoga laptop with arch+qtile+gnome and honestly, my performance at work at least doubled. That's my anecdote anyway.
1 - https://github.com/koekeishiya/yabai
It’s pretty bad when you show everyone enthusiastically that when you open your MacBook it wakes up immediately and actually works. They think you’re insane rather than a former Linux user who has programmed irrational fear that the AMD mobile GPU drivers are going to cause a panic.
I might be unlucky, but I can't count on my two hands how many times did my 2019 MacBook Pro become unresponsive (and occasionally it restarted itself... After being unresponsive for 10 minutes). It's a work laptop and there is some admin software on it (afaik), so that might influence my experience... But after a year of use, I still sometimes feel the need to defenestrate it...
My favorite bit is that after a restart sometimes it gives me a screen where I can't change the keyboard layout.. and I can't type my password because of the special characters I use. So, I just restart again and hope I get a login screen with the keyboard layout change possible. (And yes I have changed the default layout multiple times, but it always switches back to some other default)
Huh, they said they really tried to like macOS for an entire year ...
I think they just tried to convert it to Linux for 1 year and that didn't work, which as I said, that's expected, it might not be the OS for you and that's fine. We're lucky we have options, and we are all not the same.
As I said in the comments, macos is for people that can accept the trade offs, that can adapt to a more rigid and propietary system in exchange for something that just works and allows you to focus on your actual work, and not on tuning your computer as if it was a hobbies sports car.
Again, nothing wrong with that, I've been like that in the past. Now I just prefer things that just work and I don't have to waste my time maintaining. We are all not the same, thanks God.
Then in 2014 I was given the next Macbook Pro at work, and that did not support Linux anymore. Then I got upgraded version in 2019, and that one has even worse support.
During that time I had to get used to macOS, but I simply could not. Those animations or something else make it feel so slow in comparison to Linux desktop.
Then once pandemic hit and I started working from home, I could use my Linux desktop for work. It feels so much better. I am not sure why macOS feels so sluggish in comparison.
Now I am hoping for Asahi Linux to support the new M1 Macbooks well enough to use them on a daily basis, but not sure if it will ever happen. I think the main thing that is missing is the GPU driver. I have not yet seen a good community build open source GPU driver that has decent performance.
interesting, the MBP 2014 is what I will forever remember as "one of the best computer I ran linux on". With archlinux almost everything worked from the very beginning except the webcam driver, and much faster than macOS. It just took some time for Chrome and Firefox to adapt to Retina because those weren't following Xft.dpi system property, but otherwise...
I have also installed Linux on my work T2 2019 MBP, and it is looking much better but still rough around the edges and you can't use mainline kernel. At least hidpi on wayland works nicely, though not all of the apps do.
I hope that people behind Asahi will have better luck. :)
The first thing I do when I get a new Android phone is enabling the developer options and turning off all animations. The phone feels a lot faster then, especially switching apps.
I have more than one friend who I showed this and they suddenly didn't feel the need to replace their phone with a newer, faster one.
Battery life was terrible compared to a Mac (6 hours if I was lucky, barely 4 hours when in video meetings). S3 Suspend worked badly, the battery would drain very quickly. Devices would often not come back after wake (particularly the trackpad). During video meetings, the fans would go into full blast (though they were more quiet than most non-M1 laptops). Noise cancellation was quite bad on Linux (ok-ish in Windows). Lenovo’s own USB-C dock wouldn’t work with 4k@60Hz (works with Windows, Linux misconfigures the lanes and didn’t use HBR3).
It was one of the models that was certified for Linux (IIRC even Fedora). But the whole experience was miserable. I bought an M1 MacBook and didn’t look back.
Fortunately the bios bugs are fixed and the latest kernel (5.15.11) supports s3 pretty flawlessly so far, although I was using traditional suspend before that without issue. I haven’t had any other issues and has been stable over the last month of usage. Temps and performance are great and around 9-10 hrs battery life. So I think it's worth buying now.
I lost count the amount of times it’d panic or something would break when I needed it. The same laptop was rock solid running windows and my daughter has it now as her daily driver.
I love my thinkpad t14s, it's fast and quiet and all hardware works (even lte, although does admitedly require an alpha driver, it works fine)
That said, I am not one to have their high refresh rate screen at anywhere near even mid brightness levels. That includes desktop, TV, phone, etc
- Windows has better Linux support than macOS (WSL gives better integration which means Docker is easier to use compared to Minikube via Hyperkit vm)
- macOS doesn’t have the crucial software I need: FAR Manager
- I’ve had terrible experience with Apple’s customer support in the past where they couldn’t fix broken font antialiasing for external monitors
- I’ve been plagued by serious macOS bugs where it would cause 100% cpu load that could only be cured with closing/reopening the lid, and there are still some sleep-related bugs in it, whereas on Windows everything’s fine
- The window manager in macOS lacks basic features compared to Windows: no tiling, but Windows gets it out of the box with Win+arrows
- All hotkeys on macOS are different from the rest of the world (Windows, Linux) for no good reason and it makes switching between computers very difficult. And no, switching Cmd to Ctrl doesn’t solve it
- Rounded window corners make the first character on the bottom line of terminals unreadable
- GUI feels slow compared to Windows
Originally, Windows followed the IBM CUA [https://en.m.wikipedia.org/wiki/IBM_Common_User_Access] standard, which it still does to a great extent today - Pressing Alt will still activate the menu for instance. In this standard, the cut command was Shift+Del, Copy was Ctrl+Ins and paste was Shift+Ins; which I believe still work as of Windows 10. Microsoft introduced CTRL-Z/X/C/V in Windows 3.1, released in 1992.
In short, the keyboard shortcuts for undo/cut/copy/paste have been constant on the Mac since it’s inception 37 years ago. It’s been “standard” in the Windows world for 29 years
'bit of a duh, that.
> My biggest gripes with macOS, after decades of Windows and Linux: [...] macOS doesn’t have the crucial software I need: FAR Manager
...
FAR doesn't work on linux either, the unofficial linux port (of 2.0) advertises macOS support, and midnight commander works everywhere.
> - The window manager in macOS lacks basic features compared to Windows: no tiling, but Windows gets it out of the box with Win+arrows
BigSur added a tiling system, but it's really just a split-window fullscreen (so you can't have one half of the screen full and the rest mixed-purpose). Much easier to use a tiler like divvy or BetterSnapTool.
Then again I find windows' tiling just as useless as macos' though it's less prescriptive, I use PowerToys' FancyZones there.
> All hotkeys on macOS are different from the rest of the world (Windows, Linux) for no good reason
That's next-level dishonest. There are excellent reasons for it:
1. macos was first
2. macos has always dedicated its own modkey to system-level shortcuts
3. this also makes ctrl and opt (alt) much more regular and convenient
The windows key is a half-assed aping of it.
> And no, switching Cmd to Ctrl doesn’t solve it
Things like controlling and moving windows is not supported without third party app.
Thus macOS is a more mouse centric operating system, but at the same time macOS has by default fewer mouse settings too (eg speed vs acceleration)
There is a reason they’re different, and it’s because those are the shortcuts that macs have used since 1985. It would extremely upsetting to Mac userbase if all of the sudden shortcuts were wincloned.
I also think that most Mac shortcuts make more sense in the modern context; they’re nearly all mnemonic (e.g. Cmd+W to close a window and Cmd+Q to quit) whereas Windows shortcuts are more arbitrary and rooted in limitations of legacy platforms (Alt+F4 doesn’t mean anything to someone new to computers, for instance).
Correct me if I’m wrong, but don’t you switch tabs with ctrl+tab but close a tab with cmd+w on macOS. How is that not arbitrary and not based on a limitation on a legacy platform?
I've never come across this? Do you use some xwindows app that lays characters right on the borders or something?
> Mac os doesn't come with a compose key feature built-in
There is is pretty handy, built-in, text replacement tool.
Settings -> Keyboard -> Text
Here are my top "compose" shortcuts "_shrug -> ¯\_(ツ)_/¯" and "_stare -> ಠ_ಠ" :)
He responded with several follow up questions, but nothing came of it unfortunately… Hopefully it’s on someone’s task list somewhere
My kingdom for a way to cmd-tab through all windows. Truly horrific stuff.
Enjoy!
I actually use it for the opposite function—to make cmd+` better at switching between windows within the same app—but it works great as an alternative cmd+tab if “window switcher” fits your mental model better than “app switcher”.
Why there isn't just an option to have cmd-tab show all windows is beyond me. As someone with sometimes several browser windows and often dozens of terminals open, this is just so painful.
1. Install Yabai
2. install skhd
3. disable SIP (ugh): https://github.com/koekeishiya/yabai/wiki/Disabling-System-I...
4. add `f13 : yabai -m space --focus prev` and `f14 : yabai -m space --focus next` to your `~/.skhdrc` file.
1 - https://apple.stackexchange.com/questions/14001/how-to-turn-...
But lately I felt things have become way too locked down (both hardware and software), too dumbed down (too many apps resemble mobile apps with limited functionality) and too opinionated. Sometimes I just want things differently. Another reason was that many new features are specific to iCloud integration and as I use many OSes (both computer and mobile) I could not take advantage of those anyway. I need cross platform. So a lot of selling points became irrelevant.
I moved to FreeBSD with KDE on top and it felt like a breath of fresh air finally being able to set up my system the way I want it. This is so empowering.
It became my daily driver about a year ago and I haven't looked back though I still use Mac and Windows for work, Windows personally for gaming and Linux for some servers.
Of course I lost some stuff too like Apple's excellent multi DPI and great hardware integration. And many apps that were great like pixelmator. But I gained a lot of configurability and the ability to upgrade my hardware again.
- I had used it until 7.0 in the past and missed the simplicity of having one single platform (rather than Linux with its kernel and the many distributions all doing things differently).
- The excellent handbook
- Almost devoid of corporate influence. Linux is being steered into the warm and fuzzy corporate domain. Many big players try to get their IP adopted by the Linux mainstream. Canonical with Snaps for example, Redhat with Gnome, etc. The big tech players are the biggest kernel contributors now. It moves from choices good for customers to the ones that are good for big tech.
- Non-opinionated platform. Some distros are also becoming quite opinionated like Mac. I did try to play the Apple game for a while (like I said it was my daily driver since 10.2) but they kept annoying me more and more by deprecating things I used. I want choices again.
- Stable platform but with rolling app packages. For example if KDE comes out with a new version I will see it usually a day or 2 later.
- Couldn't find a Linux distro I really liked. I like minimalism but without Arch's elitism. Debian would have been the closest but I have bad experiences with major upgrades. What I would have preferred would be something like Alpine for the desktop. I looked at Adelie Linux which is exactly that but it was too premature.
- The ports tree is really amazing. You're always able to change default package settings and recompile them
- Jails are more powerful than linux containers, though they lack a framework a la docker. This is why I still use Linux on servers.
So this was mainly it :) Unfortuantely running KDE did require installing some linuxisms like Dbus but overall it's not too bad.
I would have assumed that many contributions by corporations are in the end a net benefit for both corporations and customers or at least not detrimental to customers.
Do you consider some corporate contributions to Linux to be harmful towards consumers? Or is it more a decision of principle?
And... not modern wifi? I take it you must be on a Desktop in this case?
I'm not a big fan of laptops at all for ergonomics. Most of my systems are desktops, the only laptop I have is a really minimal one for the makerspace (and I have one for work).
I never said it was for everyone by the way. Just that it works for me! In general, things that work for everyone don't tend to work well for me at all, this is my biggest issue with Apple now because they make a product that is ultra-mainstream and very opinionated. You either have to go with the flow (which irritates me) or add a galore of thirdparty addon products to make it work your way which get broken in every major (and often minor) macOS release.
I did try to go the second way for a while but it got too annoying with everything constantly breaking. From reading the article this thread is about, I see the author is going the same way (lots of addon products) and I wonder if they will also be caught by this in the future.
All corporations strive to fragment the market using non-compatible technologies and then to monopolize the market by consuming other fragments.
This strategy failed in the 90s with the arrival of Linux. Although many times I felt like the whole world will become Microsoft/Wintel, I think we barely missed.
Now, corporations are trying to do it e.g. via forcing everybody into the cloud and killing open protocols. E.g. I have several email accounts and I can't gather mail from all of my mailboxes in one application. Situation is even worse with Calendars. I have two jobs and also my own personal calendar server and I can't collect all my calendars in one app also. I have to routinely check Google Calendar, because even though I can add it to my Thunderbird Calendar, moved or canceled events changes are not propagating to Thunderbird. And I can't integrate Microsoft Outlook calendar into my Thunderbird at all.
I really don't want to rely on whims of one corporation. Also, regarding MacBooks: I remember when the touchbar had no alternatives and it is really awful. This is what monopoly means: you have to live with bad decisions. You have to pay absurd money for a piece of cloth or a roller for the desktop case.
Happily donated to the author of an app so essential for my day to day productivity to show my gratitude for making it and making it open source. If the author happens to read this: thank you!
(This is sarcasm.)
It works for me at least. I have Moom installed for the occasions where I temporarily need tiling and that’s more than enough. Full tiling WMs on Linux give me a headache because with most of the programs I use, windows need to take up 70%+ of the screen to be usable which means the remaining space for other programs isn’t particularly useful, which defeats much of the purpose of full tiling.
All tied to global keyboard shortcuts too. Free, open source, and does exactly what you've asked for.
After getting into professional dev during / after high school I ended up using Divvy for an OSX window manager. It wasn’t fantastic, but I could set up custom keybinds and it was “reminiscent” of those tiling WMs I found so much love for as a pre-adolescent.
I recently (2ish years ago) switched from mac to a Debian then eventually Pop OS setup for my daily driver development environment. While not as robust as a custom arch setup with a tiling WM like awesome, Mutter is quite good and everything PopOS offers out of the box has been fantastic. Perhaps one of these days I will find the time to dive back into arch and configure a _truly_ efficient and customized workstation / dev env :-)
It’s interesting to see all of these alternative, perhaps even _better_ / more robust / more FOSS friendly mac WMs being listed here. I’m keen on giving them a try whenever I end up back on a mac workstation, but I cannot deny that my Divvy lifetime license has served me incredibly well for years, with support through many big OS upgrades.
I switched to it after having some issues with rectangle sending some of my windows into the abyss (way outside of the screen) which forced me to kill the app and restart it to get it back. But if Rectangle works for you that's good too, it's probably easier to configure.
I've been using TotalSpaces 2 (https://blog.binaryage.com/totalfinder-totalspaces-future/) to change workspaces in macOS without the annoying animation which you cannot disable.
Too bad TotalSpaces 2 does not work with Monterey or M1 macs, so I am really looking for another solution that can enable this. I used to run skhd + yabai, but something about that did not click as good as with TotalSpaces 2.
Anybody know a solution for Monterey & M1 that you can use to switch between workspaces with the keyboard, without any delay ?
Seems there would be demand for such software based on the comments. For me at least TotalSpaces 2 has really changed how I use macOS, hopefully they will get it working on M1 & Monterey.
They are the best window managers I've used on MacOS, because the resize features work flawlessly every single time. Other ones I've tried (e.g. bettertouchtool) have occasional issues with that.
They'd be perfect if they supported full customization of drop zones. They have some limited customization, including via the command line, but it's nothing compared to some of the other apps that are out there.
The custom shortcuts in Hookshot are beyond what I've seen in most apps, especially since you can customize what happens in repeated executions of the custom shortcuts. Let me know what other apps out there have the customization that you are referring to.
BetterTouchTool goes a step further, and lets you customize the drop zones. I.e., if you drop a window on the top left, it snaps to your custom top-left position:
https://docs.folivora.ai/docs/104_snap_areas.html
https://www.youtube.com/watch?v=wtgOseyyJ5U
Hookshot's performance is great but AFAIK doesn't let you snap windows to custom areas without keyboard shortcuts.
Disclaimer: I made this.
hs.hotkey.bind({"cmd", "alt", "ctrl", "shift"}, "F",
function() hs.application.launchOrFocus("iTerm") end)
I also use Karabiner-Elements to change capslock to cmd, alt, ctrl, shift.
I moved to tmux + Alacritty [1] (Rust hype and speeed) which is cross-platform and only needs its config file, a nice and clean yaml, in the right place to restore it as I want. Now when I full wipe my Mac I just need to run the script that pulls the config file from GitHub and tada! Also, the configuration file is almost identical to my Linux one so I can move around similarly and have a consistent look.
I'm also used to replace macOS programs like `sed`,`grep`,`getopt`,`ssh` (macOS OpenBSD one won't work with Yubikey),`coreutils` and `awk` with the GNU version. You can download them with Homebrew and to replace them with the macOS default ones you just need to put them at the beginning of your path like this:
export PATH=/usr/local/opt/coreutils/libexec/gnubin:$PATH
[1]: https://github.com/alacritty/alacrittyPreferences > General > Preferences > Load preferences from a custom folder or URL
You can save your preferences and load them as required.
Use this to command to set the location of the iterm config folder:
defaults write com.googlecode.iterm2 PrefsCustomFolder -string "/path/to/iterm config folder"
Then as long as that folder exists and contains your preferred settings, when iTerm opens up it'll be exactly like you want it. (though it would have been nice if this just defaulted to $HOME/.config/iTerm)It’s weird to hear someone proficient enough to be talking about bootstrapping a dev machine complain about solving a very trivial problem.
I have set PREFIX to be ctrl-a, which mimics GNU screen.
'Ctrl-a m' toggles "mouse" mode, which allows you to resize windows and set focus with the mouse.
https://raw.githubusercontent.com/jftuga/universe/master/tmu...
However now that I don’t daily drive mac as much, I’ve defaulted back to iTerm 2 for when I do happen to be doing something on my mac. The default configuration is quite good out of the box. All I really need to do post-install is get my beloved zsh + ohmyzsh plug-ins and I’m good to go :-)
And also my tmux dot files ;)
Like holy crap, it's a very well written and well thought out piece of software. And it's fast. I'm all about the Rust hype, but Kitty reduced latency drastically.
There's even a system wide equivalent at /Library/Preferences
Of course if you're using a lot of cross platform stuff it tends to ignore those conventions in favor of a bunch of ~/.stuff/ folders
The only downside after two years of using Hammerspoon is that the community is small since it isn't as user-friendly as yabai, amethyst, etc. However, you'll probably enjoy its open-ended nature, given your article.
I try and lean into the philosophy of the mac, which is that its a desktop which behaves like a real desk. Right now I have 15 windows from various applications open on this one desktop, and its in a giant pile just as if I had a bunch of papers and files in a messy pile on my desk. This works great because you can press a button or swipe along the trackpad and spread out this pile, exposing everything that's in it along with all your other desktops, as if you are spreading out the stacks of papers on your desk.
IMO this method is how you focus on stuff anyway. Your eyes aren't looking at the 12 different things in your tiling window manager at once, so you might as well just have a few things pulled up on top of your pile of windows that are of focus and take advantage of your screen real estate rather than have a bunch of tiny panes artfully spaced. The mouse makes it easy to do fast and sloppy window adjustments which are good enough.
Now any clean VM or freshly installed machine or borrowed computer at work is set up to my preference. Do I maximize my productivity or have everything exactly perfect? No. But I'd rather have my nails pulled out than tweaking things. If I have to edit a configuration textfile, the computer goes out the window. My OS isn't an important part of my workday. It should just start my IDE and get out of the way.
- On iTerm2 you can setup a system wide hotkey to toggle a floating terminal in front of all your windows, whatever you're doing [1]. This works even in full screen apps. It really changed my workflow with iTerm, and is really handy.
- For system stats in the menubar, I really recommend iStat Menu [2]. It's paid (12$ for a license), but the quality of the graphs and interface makes it well worth it imo.
- If you have an external display and want to precisely tweek your resolution, I recommend SWitchResX [3]. It's mostly a GUI that wraps some display CLI tools. With it I adjust the resolution of my 4k external monitor currently, running it at 3200x1800 with HiDPI, and adjust it based on my eye fatigue.
- As a more powerful and versatile replacement to Spotlight (Cmd+Space), Alfred [4]. You can customize it to run anything you want, from converting timestamps to dates, opening apps, search the whole system, run scripts, etc
- If you have too many icons in your menubar and want to hide some (either totally or behind a button click), Bartender [5]
[1]: https://apple.stackexchange.com/questions/48796/iterm-as-a-s...
[2]: https://bjango.com/mac/istatmenus/
Just pick your poison everyone, and let us all get on with our lives.
Edit: ...and Windows 3.11 and up.
Every OS wastes your time, from the desktop to the lap, Everything since Apple Dos, Just a bunch of crap.
From Microsoft, to Macintosh, to Lih-- lie-- lih-- lie... nux, Every computer crashes, 'cause every OS sucks.
All OS'es and computing environments are horrible. Its just that Mac OS is less horrible and more in line with getting shit done as opposed to constant fiddling and fighting with your environment.
To each their own of course, but this is has been my experience after 25+ yrs of computing.
I jest, but this all sounds like a lot more trouble to get the experience you want than most Linux distros would give you. It's not the primary audience of OS X, sure, but it's nice to see how well-served by Linux a sizable slice of users is.
I feel like this is an opportunity to delve into a classic, IRC like "Windows vs Linux vs macOS" debate here, but instead I'll simply state a well known, agreed upon truth in our industry: Linux is an absolute joke on the desktop. Even Torvalds thinks it's a mess.
Build your desktop from scratch if you like. It's your time. It's your life. But please don't mislead people into thinking Linux (on the desktop) comes even remotely close to Windows or macOS in terms of a good user experience out of the box.
So how do I record system audio on macOS in Audacity again?
Remind me how slow homebrew is compared to pacman on Arch? Having to click through the Security thing in System Preferences because Apple wants to protect me from apps I already know I trust, spending two hours trying to compile the new untested Tailscale since the App Store is broken and Tailscale used some API only App Store apps could use, trying to get my Logitech Marble Trackball to scroll when I press a button and roll the wheel so I can use my mouse. God forbid I want to use my mouse and not spend three hours trying to fix it when it took two minutes to copy the config off ArchWiki for X11 and two seconds to paste the command in on GNOME.
I could go on. Just like Linux has problems with user experiencs, macOS has some pretty egregious faults as well. As a developer, Linux is much more user-friendly to me and has a way better user experience. I can make my system do whatever I want without dealing with macOS's restrictions and that's what a good user experience is to me.
I'll never go back, Windows and Mac cannot touch the experience with a ten foot pole. And Mac does not even begin to know what window management is.
I know, it's anecdotal. But claiming that Linux is not viable on the desktop is just plain silly.
Modern desktop Linux is actually a nice user experience, and contrasts with the poor Linux desktop experience before ~2015.
Do you know anyone like this? All such people I know prefer the UX on iPad.
"Out of the box" is the key phrase here. GP said that Linux was good at serving a certain "slice" of users, and it sounded like they were arguing that trying to massage MacOS into something those users would like is probably more trouble than it works. The setup described by this blog post isn't really "out of the box" either, so I don't think it's crazy to suggest that to someone inclined to tinker with their setup to make it absolutely perfect would potentially be better served by Linux.
Too much work for very little gain.
I use KDE on Linux, and when I do a fresh install, it takes me about 5 minutes to set the settings how I like, 0 janky workarounds, 0 external software, and 0 reboots. The adware/bloatware in Windows and the ridiculous feature deficiency in macOS give me put UX so low that KDE doesn't need to be that good - although it is.
A minimalist-ish Linux distro for a lot of people, especially those who mostly are on the web (hypothetical Grandma etc.) will 100% save you a TON of headaches over Windows, and fare quite well against Mac OS as well.
as far as I can tell in the industry linux workstations are common.
Isn't it just installing packages?
And there are so many Linux distros now, that you can probably find a "box" with whatever WM or DE you want installed by default.
Though, it seems silly to do it that way. Installing whatever packages you want is so easy regardless of which ones install by default.
Congrats on seizing the moment and living your life to its full potential.
Sit back down.
In Windows there are no monitor issues and it's super easy to set up my PlayStation 3 controller for games (that are also nicely supported). Overall there's just less configuration in Windows.
Instead I run Linux in VMware, which comes with its own perks: By creating a virtual machine per project, everything is neatly grouped in its own workspace, and by suspending instead of shutting down when done, I can get back to where I left off as easy as loading it's previous state from disk, with everything open - unsaved documents, applications, browser tabs, etc. I get the best of both worlds this way.
Occasionally I see comments on HN and I’m inspired to try again. It still sucks every time. Basic stuff like bad trackpad support, laptop failing to suspend, software scaling/resolution issues, missing drives on install, etc. etc. - you can hack it to work, but it’s not close. With M1 performance the difference is even more extreme than it’s ever been.
Use what you want of course, but I’m not sure why people pretend it’s something it’s not. Though OS arguments are mostly religious arguments.
macOS has a built in tool called hidutil[1] for simple keyboard remapping. Prefer to use that since Karabiner-Elements has some issues on M1 and macOS Big Sur. I use this[2] tool to generate a simple launchd config.
1 - https://developer.apple.com/library/archive/technotes/tn2450... 2 - https://hidutil-generator.netlify.app
I’m on Ubuntu LTS with ZFS and i3 and while I miss the amazing hardware of my 2020 MacBook (non M1) I just love the flexibility of the Linux setup: package management is a first class thing, containers are too; Magnet was nice but it’s no i3. And overall things just work which is really nice.
I do miss airdrop and access to messages and other aspects of the apple ecosystem that I enjoy from lock-in but I’m happy for now and going to keep at it.
There are things that aren’t as streamlined like power management but I’ve been able to get my framework laptop to pretty much exactly how I like it.
I was nervous about sleep/hibernation but honestly using systemd and a couple of tweaks (enabling sleep-then-hibernate) and everything is super reliable, rarely any issues.
Wayland + Sway is a killer combination and everything is super snappy.
I fell in love with workspaces in Mac with touchpad gestures but on a high refresh rate monitor the animation is so slow and it cannot be tweaked. On sway there is no animation and it is instant.
I think once the steam deck matures we are going to truly see a year of Linux desktop soon.
> defaults write com.apple.dock expose-animation-duration -float 0
https://osxdaily.com/2012/02/14/speed-up-misson-control-anim...
I've spent hours trying to make the Mac interface work well. I've come to the conclusion that it's unfixable.
Check out KDE Connect[1]. It works outside of KDE, too.
But I miss things like Bluetooth, wlan, sound, graphics just working. Yes, that's still a thing in Linux even if not quite as badly as 5ish years ago.
I think I'll be going back to macs.
With sway, graphics are almost totally problem-free, now that almost everything I need are wayland-native. As for sound... pipewire might deliver that some day but not quite yet. Especially my DAC and usb headset make some troubles there.
I also used Linux for years and that has separate options (Gnome) for mouse and trackpad scroll direction. Really sad that this isn’t built in functionality. But hey, we got more emojis and FaceTime faces! /s
defaults write /Library/Preferences/com.apple.mDNSResponder.plist NoMulticastAdvertisements -bool YES
It drives me crazy that my desktop Hackintosh wakes up every couple of hours, and I'm really hoping this fixes it.
Oh, I hear you! I've personally just given up and disabled sleep altogether, and moved to forcing the system to always hibernate instead of sleep with pmset.
For my mac: I tried Amethyst, as others mentioned Yabai seems better. Yet, I switched to just to hammerspoon scripts, for tiling/desktop management etc.: http://www.hammerspoon.org/ It fits my needs and is adjustable.
For shell: iterm2 is ok, yet I'm currently in love with kitty. https://github.com/kovidgoyal/kitty
Brew alternatives: macports, nix (https://nixos.org) I love the idea, yet still haven't gotten around to use it much.
shell: fish editor: nvim / neovide
Mouse scrolling: I always found this to be a bad experience on OSX/macOS so I've been using Smooze. It allows you to set the scroll curve to your own liking. It has other features that I don't use and although it's not free, iirc it was cheap and definitely worth it.
Window management: a lot of others have mentioned great tools like Rectangle, but I've found Moom to be slightly better for my use cases. I prefer it over Rectangle (although Moom doesn't have window snapping so I actually use both) because you can set a custom grid e.g. 12x12 and have windows resize anywhere on the grid. With Rectangle, you can only choose from the (many) presets but unfortunately no customization.
1. https://github.com/rxhanson/Rectangle/blob/master/TerminalCo...
The only tools I know of that actually work for this (if you comoletely disable speed/sensitivity controls as well as acceleration) are SteerMouse and CursorSense, which use some kind of driver hack: https://www.plentycom.jp/en/index.html
But because I can't, I'm seriously considering what it'd take to switch from my current setup (ubuntu 20.04, cinnamon, slide dock) to a mac. Keyboard shortcuts and workspaces are top of mind. I've also never been a fan of mac's dock where it groups all instances of an application together - I much prefer a classic Windows tray where each instance of an application has its own box I can easily alt-tab between. I also think mac's file manager isn't great.
Much appreciated OP - may shoot you some questions over email.
Yes Mac OS looks cooler I guess, but I’ve found windows very practical.
Just for a simple example: I change to arbitrary folders frequently. Control-L in Explorer, type the path, and I'm there the second I hit return. Done. Finder has a similar method using Command-Shift-G. But not only is the shortcut more awkward but going to the path has a delay. Not a long one. But it's noticeable and annoying.
Oh well. Spotlight does seem to work better than 10/11's built-in search. So maybe it's a wash. Still miss Windows sometimes.
At any rate, I did make one change in MacOS which long term Mac users might find heretical. When using my external mechanical keyboard, I have Command mapped to the Control key. Control (which doesn't get used often) mapped to the Windows / Super key. Alt / Option is unchanged.
It's a bit amazing how much easier this made everything. Most of the usual keyboard shortcuts I had in Windows now map 1:1 on my Mac. Which is great for the muscle memory.
brew install alt-tab
https://alt-tab-macos.netlify.app
Not a user or the developer, but happened across this recently.
Edit: found elsewhere on the thread this app that purports to fix it: https://alt-tab-macos.netlify.app/
For the mouse wheel, there's a nice minimal proper fix: https://github.com/emreyolcu/discrete-scroll
Sitting on a 2013 mbp maxed out, just required a battery change this year. Still usable but will move to the M1 2022.
Blows my mind devs are still stuck on windows and linux machines.
* window management/positioning: Spectacle, Easy Move+Resize
* screenshots: Lightshot screenshot
* status bar icons management: Hidden Bar
* calendar on status bar: itsycal
* battery: Battery Monitor
* hex file viewer: Hex Fiend
* folder/file compare: MeldCommand+Shift 3: Captures the entire screen.
Command+Shift 4: Captures a specific region (You have to select the area each time).
Command+Shift 4, Space: Captures a specific window.
Command+Shift 5: Captures a specific region (Remembers the last selected region).
Command+Shift 5 also displays a menu at the bottom of the screen that lets you select any of the screenshot options as well as options to record a specific window or the entire screen.
I investigated this space for years so check out the list of alternatives on the page linked above as well.
Also note that i'm looking for someone to take over the project: https://github.com/lwouis/alt-tab-macos/issues/1179
That’s something I wouldn’t have expected to read here, as I myself find it quite hard to change paradigms. I learned that the hard way when I had to use a Mac for the first time after using Windows and Linux my whole life, and tried to use it as I wanted instead of how it’s intended to be used. Once you know how the paradigm works, you can try to adapt it to your workflow, but not before or you’ll be frustrated quickly.
1Password, Alfred, Lulu, Rectangle, Bartender (Hidden Bar is the open source alternative) - https://oinam.fyi/digital/apple/
You can lock the screen with cmd+ctrl q.
Control–Shift–Power button* or Control–Shift–Media Eject : Put your displays to sleep.
Here are some other keyboard shortcuts: https://support.apple.com/en-us/HT201236
> * Does not apply to the Touch ID sensor.
I have not found a way yet to reliably put the device to sleep from keyboard. With a shortcut it wakes immediately, maybe because it registers the letting go of the keys as a wakeup signal.
I have been bouncing between Moom and Phoenix of late, and still looking for a good auto-tiling option that isn’t Amethyst (which is OK, but doesn’t do all I want).
Homebrew also builds from source, but it uses cached builds they call bottles. I believe other package managers that build from source also used cached builds, I don’t know about Arch.
Under Preferences > Keys > Hotkey I've set the system-wide hotkey to option+space which means if I need a terminal, I can press those keys and have iTerm pop up over my active window.
Pressing them again hides the window and brings focus back to the previously active window which has been great for productivity.
Or is there (or will there be) a serious competition to the MacBooks in 2022? It doesn't look like.
Don't financially support locked down systems if you care even the slightest bit about freedom of computing.
Which ones?
> "My current assumption is that the videotoolbox hardware decoding support doesn’t support the same codecs in mpv yet as it does in Firefox"
mpv supports videotoolbox hardware decoding of h264/h265, it's just not enabled by default. It prevents the use of most filters and has slightly lower quality decoding in my experience.
To get hardware decoding in mpv and hopefully get the same minimal CPU usage as Firefox just call mpv with `--hwdec=videotoolbox` or add `hwdec=videotoolbox` to your `~/.config/mpv/mpv.conf` file.
Also from the article:
> "here I noticed a major difference in how Homebrew seems to work compared to Arch Linux for example. On Arch Linux applications are built from source code centrally instead of relying on binaries from a vendor."
This is true for Homebrew formula as well, like the mpv formula, just not Homebrew casks. Most casks are proprietary closed source applications.
> This is true for Homebrew formula as well, like the mpv formula, just not Homebrew casks. Most casks are proprietary closed source applications.
But even open source casks seem to be taken centrally instead of built again. My guess is that this is to keep the original developers' certificates.
Frustratingly I couldn't find any description of videotoolbox codec support on Apple's documentation, though I did find that this VP9 constant exists: https://developer.apple.com/documentation/coremedia/kcmvideo... (but couldn't find an AV01 constant)
Re: Casks, I hadn't thought about it but you're totally right that this is probably mostly due to macOS developer signing issues.
The Apple “English International“ keyboard has a big enter key - if you dislike the small enter key of the US keyboard layout.
I chose MacPorts back then since it seemed a bit better designed as a package manager but these days I see few people suggesting it.
What’s the current consensus - is homebrew now good enough to consider switching?
Casks are worth using because they fill a gap that 'proper' package managers mostly don't. Installing GUI apps automatically in this way isn't really package management, but it's still better than installing them manually.
Homebrew's main functionality, on the other hand, still has all of the same problems it always has. It also has the advantage that it's more likely to include trendy, new utilities than MacPorts is because it has more contributors.
I recommend installing Homebrew to a local prefix under your user (e.g., ~/.opt/homebrew) and using it exclusively for 'casks', but continuing to use MacPorts. If you need something that's not packaged in MacPorts yet, consider Nix instead of Homebrew. The package collection, Nixpkgs, is massive and even more up-to-date than Homebrew, and nothing installed from it will break anything from MacPorts (or be affected by anything MacPorts, either).
MacPorts is more likely to include Mac-specific software, but if you're curious about alternatives in general, Pkgsrc is also a sound choice, and you can probably try it alongside MacPorts without breaking anything.
Homebrew will often give you a more user-friendly config out of the box, whereas MacPorts will often leave you to configure things yourself.
When installing binaries I’ve found MacPorts to be much faster, however it needs to build from source much more often than Homebrew (especially on ARM) which takes far longer.
I’d be grateful but I guess I just have to try all three myself…
I was using ubuntu for the last year and hardly customized it, just using Gnome and my tools. (altho i mostly just need a terminal/web browser/vscode and compilers)
last three months I have been ill and had to stay at the hospital with plenty of time in my hand in between chemo so I decided to dig more into linux internals and went with nixos....
I learned so much during that time about my system and how it works. I think I actually enjoy more computing since then...
So he likes the extra performance (which he won't use 99.99% of the time), and he likes the screen (why not use an external screen like most sane people?).
I still don't understand. Why give up the amazing arch Linux for shitty Mac OS? Makes no sense whatsoever.
maybe Alfred was the only nice things about OSX i miss on Linux (even with a bunch of wofi/rofi scripts)....
ah yeah the hardware gestures, I use libinpute-gestures which is nice but come nowhere the builtin osx gestures.
aside of that linux (nixos/sway for me) is IMHO a 100 time more efficient,
Are they talking about iTunes? oof. I'm an apple all the way person, and even I would say "noooooooooo" if you don't have an existing collection of iTunes music
I remember the days when iTunes was good and snappy, but that was centuries ago
I also like 'Spectacle' to move windows around.
Which begs the question, why did he switch to MacOS in the first place?
Nice to have options.
This one seems to be lacking the obligatory XKCD 1806. So here it is.
I mean I completely get why my dad uses MacOS over Linux; nothing for him to think about and all his devices just sort of work.
But if you're at this level of customization, why would you take the chance? (I.e. you know Apple's just going to change something weird on you.)
I still use Linux too.
- :s/for personal use/for work/
- it's actually an interesting question how usable MacOS is for a Linux user; especially given how great Macbooks are from the hardware point of viewI love those performance comparisons with 5-10 years old processors. Let's compare M1 with 80186 from 1982, then it will look even faster!
Here is comparison with the new mobile Intel processor that will be released next month:
https://browser.geekbench.com/v5/cpu/compare/11905527?baseli...
Translation: He got a new thing, and it's pretty nice. In case anyone wants to know his basis for comparison, here it is.
This article is clearly not about CPU benchmarks(or best blue tooth mice or best Linux distro or any of a dozen other things.)
But I agree - These performance claims are starting to miss the point. The real magic of the M1 is the battery life and thermals. It’s not actually faster than my AMD desktop when it comes down to testing things like compile times, but I don’t care because the M1 lets me do it on battery in a portable manner.
I didn't even bother to try to read any of the content.