What distro works well for a 2012 Macbook Pro?

masinko@lemmy.world to Linux@lemmy.ml – 53 points –

Hello,

I have an old macbook pro 2012. With Apple dropping all support for it, I want to run Linux on it. The caveat is - Im looking for the same feel as the experience with the macbook trackpad and keyboard.

I've tried a few different OS's on it, and each time, it runs as how you would expect. No issues with installation or anything, and most issues have a small or easy fix.

Being used to old habits with that laptop, I haven't had good luck with remapping things to give it it's old feel again.

By feel, I mean things like mapping trackpad gestures, some of the "function row" to map the same things as they keyboard has them, remapping some hotkeys to make use of the command button, etc.

I was wondering if there was an OS that has a lot of the things like mouse gestures, or the keyboard mappings of those laptops already built into it.

21

I’ve got a family member on one running mint.

I’ve run debian and fedora on the late 2013 model. Trackpad gestures used to be handled by libinput-gestures (found on github), and would handle tap double tap and swipe up to 4 fingers - though I think there are some gestures that are just handled by some window managers these days

Edit: added link

Yes, but mostly on Wayland. Both GNOME and KDE Plasma have gestures out of the box on their Wayland sessions.

If you absolutely need Xorg, check out Elementary.

Libinput-gestures is more of a hack and the gestures are simple keypress/command triggers.

Thanks! It looks like libinput-gestures might be one of the missing puzzle pieces I need for making it feel like a mac again!

libinput-gestures IS a game changer.

Please note that if you are using KDE wayland, some defaults are set and cannot be overriden, which is frustrating. You might have to use X11 session instead.

If you really want to use wayland, libinput-gestures will not work with 'xdotool' and most of the other gestures reader will be slow. In that case, you might want to use a program called evemu. It's not... intuitive.

If you need help on this, don't hesitate to reply to this message. I'll gladly help. Not so long ago I was walking in your shoes.

I could use some help with this. Using KDE Wayland and currently almost happy with the gestures that come out of the box (but I think I was able to change 4 finger left/right virtual desktop switch to 3 fingers, don't remember how I did it...).

One thing I am missing though is being able to map Meta + W (the virtual desktop "collection" screen) to 3 finger swipe up. Any idea how this could be accomplished?

If you use KDE with wayland, then :

  • You can switch desktops horizontally with three or four fingers
  • You can only switch desktops vertically with three fingers
  • By default, four fingers vertical opens present windows or something like that

To be able to use four fingers swipe up, you need to disable present windows first. Go to settings > workspace behaviour > desktop effects and unclick desktop grid and present windows (in the hope that you have no use for them)

Then you need to install evemu and libinput-gestures (if you're on Arch, it's in the pacman repo and the AUR respectively)

Once you have it installed, run in your terminal evemu-record. It will list all of your devices. Shut down the program with Ctrl + C and look at the event for your keyboard. Once this is done note it down.

Create a new file

nano sendkey.sh

Copy the content of this code in the new file but replace EVDEVICE=/dev/input/event4 with your keyboard.

#!/bin/bash
# sendkey.sh

EVDEVICE=/dev/input/event4

for key in $@; do
    evemu-event $EVDEVICE --type EV_KEY --code KEY_$key --value 1 --sync
done


# reverse order
for key in $@; do
    evemu-event $EVDEVICE --type EV_KEY --code KEY_$key --value 0 --sync
done

Ctrl +O then CTRL + X to save then quit nano. Once it is done run this command : chmod +x sendkey.sh then open the gestures app and start mapping away. The interface is very intuitive. What you want to do is click on the little + at the top bar then select the motion you want to bind (in your case swipe + up + 4 fingers) and in the command at the bottom you write /home/YOURUSERNAME/sendkey.sh LEFTMETA W

And there it is. You can map pretty any keybind to any event with this. Hope this helps.

This is so goddamn great that I won't even make the obligatory vim/nano joke, seriously, thank you a bunch!

Made a little modification to sendkey.sh as the /dev/input/event numbers change on boot:

EVENTNUMBER=$(ls -lah /dev/input/by-path/pci-0000:00:14.0-usbv2-0:5:1.0-event-kbd |awk '{sub("../", "", $11); print $11}')

EVDEVICE=/dev/input/$EVENTNUMBER

I know this isn't really a distro or linux. But my 2012 13" runs mac os ventura(mac os 13 iirc) perfectly using opencore legacy patcher. it just takes some time(30sec or so) to boot but after that ot runs rly smooth.

I'd recommend looking up Ventoy and getting a big thumb drive (like 64gb or so). Then you can download several different distro live images and put them all on one flash drive and try them all out in a live environment. It isn't 100% the experience you'll get running it installed on the machine, but you can get a decent feel for each distro to see what you like and what you don't without having to keep track of 5-10 different flash drives.

I run Pop!_OS 22.04 on a 2015 MBP and it works perfectly (except the camera). If a 2012 can't handle Pop!_OS, you could try Lubuntu or Debian 12 with XFCE.

+1 for Pop. I've just done this. I had to run updates plugged into the cat 6 to get wireless, apart from that, everything just worked.

I used to use Pop! on my desktop for years, until an update they did a few years ago I didn't like, and I switched out of the distro. Never gave it another chance, but maybe I can revisit it for this mbp.

Do you know if you are able to map and do all the multi-touch gestures on it fine? And have you tried remapping some of the keys with the CMD button?

I haven't had the need to remap keys so I cannot answer that, but I do use multi-touch gestures without a problem. I do not know if the options are as diverse as the ones OSX offers since I left Mac years ago, but they are there

I run Ubuntu on a 2011 MacBook Air. I have to believe a 2012 Pro would also run it without issue

Gnome is the only desktop that is closest to how macos works, looks and feels. It also has the best touchpad gestures.

I've used Ubuntu and Fedora on my 2014 MB Pro and they worked great. I would lean towards Ubuntu because they customise Gnome nicely and getting software is just easier on Ubuntu.

It's easier to find a deb than an rpm in my experience for the few times there may be an app you want but isn't in the repo.

I run Gentoo on my 2012 MBP, but gentoo may not be as plug-n-play as others.

I want to focus on the two input drivers I've tried though: libinput and mtrack.

libinput will mostly work out of the box, but isn't as customizable. For example there's no way to adjust the sensitivity for thumb/palm detection. So when I try to do a "big" movement from one end of the trackpad to the other, the driver will accidentally detect a thumb and stop moving the cursor. I had to change the way I made contact to the trackpad for the entire movement to avoid thumb detection. Also libinput-gestures is great as another user has mentioned.

mtrack gives you ultimate control to fine tune the trackpad. But that eats away at your time. And imo, gestures are harder to setup.

I ultimately went with libinput myself because it achieves a 90% solution for me, with way less configuration.

I recently set up a 2012 Mac with Mint and it works great

Hi, I run pop! Os for about a year on a mac book pro 2012. My biggest hassles are Bluetooth audio sucks (glitchy) and I had to install a wireless driver to get wireless to work at all. Other than that, it's working exactly as expected. Can recommend. It can't game, it can't play videos well because the inbuilt speakers suck (and the Bluetooth audio is glitchy), but it's plenty performant for my actual tasks. Runs smooth. I'm sure most distributions will.