Hollow Knight - Wanderers Journal en Español
Hollow Knight - Wanderers Journal en Español
All Discussions > Steam Forums > Steam for Mac > Topic Details
florean Dec 24, 2020 @ 3:45pm 3 7 3 Date Posted: Dec 24, 2020 @ 3:45pm
Posts: 54
Fix for game controllers on Big Sur!!!
TL;DR Start a New Discussion
Valve’s driver is getting automatically blocked, so we need to boot into Recovery
mode and manually accept it. To do that, we’ll add their Apple Developer Team ID to a
list of allowed developers. This is very targeted and extremely safe, the opposite of
Search this topic
doing something like disabling System Integrity Protection for the whole computer.
kmutil trigger-panic-medic --volume-root "/Volumes/Macintosh HD" An error has occurred while updat… 9
The Details
This nerd sniped me for a few hours and I’m really disappointed in Valve. This is 100%
on them. Apple has very clearly signaled they don’t care about Mac games, but this is
making it very apparent Valve doesn’t, either. Personally, I’m moving most of my
gaming to PS4/5. End of venting.
The problem is that Valve’s SteamInput kernel extensions, which they use to
standardize controls across games, aren’t getting loaded under Big Sur. The reason
we’re told to install an “update” from 2018 is because Valve is using the answer to the
question “are my extensions running?” as if it is the answer to the question “have you
installed the game controller extensions?”. So it just puts you in a continuous loop of
installing the extensions, but it’s completely irrelevant.
Why aren’t the extensions loading? The OS thinks they should work. If we run
we get
And when we go to System Preferences, it isn’t in the list for approval. I found out that
is because it is getting automatically blocked, which we can see if we reset the
extension approvals. I’m not sure why, I didn’t pour over the logs. Most of the other
examples I have of blocked extensions are 32-bit ones that can’t run. It’s possible
Valve is doing something dumb; there’s a careless bug in their installer’s post-install
script that tries to modify the extremely-read-only system partition, so maybe the
driver is doing something that deserves an automatic ban. Or maybe it’s an OS bug
that Valve never bothered to raise with Apple (it is definitely a bug that kmutil reports
it as loadable when it isn’t).
Luckily, there is a way to automatically accept Valve’s extensions. Apple has a tool
that allows you to add Apple Developer Team IDs to an accept list. But to prevent
abuse, you can only make changes to the list when you’re in Recovery mode. First
we’ll run
to get Valve’s Team ID, which is `MXGJJ98X76`. Now we can reboot and add it to the
list. When we do, any kernel extension that is signed with one of Valve’s certificates
that is installed will be allowed to run. So the security risk we are creating by doing
this is that a hacker gets you to download and install a kernel extension that they’ve
signed with a stolen Valve cert, which… ¯\_( )_/¯ You’ve already lost at “download
and install”. On to the fix!
and press return. Now any extension from Valve will run automatically with no
consent required. Except, Apple checks the naughty (blocked) list before it
checks the nice (accept) list and Valve's extensions are already on the naughty
list, so we need to reset that.
Type
The "Macintosh HD" part is the default name of your boot drive, but you can
change it. You can hit Tab after typing "Mac" and it should auto-complete. If it
doesn't, backspace to just "/Volumes/" and hit Tab a couple of times to see
what the options are.
This also can only be run from Recovery mode. It is typically used when an
extension is causing your computer to crash ("panic") immediately and puts you
in a reboot loop. This resets that status of all third party extensions. You'll get a
warning from the OS about a third party extension causing problems when you
login and you'll have to re-approve all of your third party extensions, but
otherwise it is completely harmless.
Reboot out of Recovery mode.
That’s it. You can test this in the Terminal by running the command
It should return nothing (success!), but it might say you have to reboot before the
extension can be loaded. Or you can just go play something like Hades again.
Merry Christmas!
No, it won't on Apple Silicon. Rosetta 2 doesn't translate kernel extensions and Valve has
never released an ARM64 driver. This only fixes x86_64 computers that were working and
broke after upgrading to Big Sur. Sorry if I got your hopes up. I hate to say it, but after seeing
this debacle, I don't think we'll see a native Steam on AS. :(
#2
Sigh. I have to say no. It's going to technically be on a game-by-game basis, but most games
are going to be using Steam Input to talk to the controllers, which is what is broken (and
never worked for M1s). Your PS5 controller can play Apple Arcade games, games from the
Mac Store, or games you buy elsewhere. But Steam doesn't support using a game controller
on M1s (or any new Macs until they get this fixed).
#4
I gave up and downgraded to macOS Catalina and my DS4 controller works now
#5
This is amazing, thanks Florean! A merry Christmas indeed :) I tried playing with just the first
step (spctl kext-consent add), which doesn't work. So the optional step doesn't seem optional
to me.
First ot all @florean thanks for going through this rabbit hole..
But a game like Vagante still doesn't register when i tap the buttons, oddly enough it did work
fine with SIP disabled, so i was eager to try this option.
Some games might have their own driver for the controler try starting it directly from the
folder.
#8
I don't know how but somehow it worked, thank you so much! Really appreciate the work you
put in it! Such a shame, that Valve just choose to ignore it. Merry Christmas my man!
#9
Charmander, thanks for the feedback! I've updated the instructions based on it.
Teh SoTo: Steam says Vagante is 32-bit and shouldn't even work on Catalina, much less Big
Sur. So that's odd. Also, it is really annoying that Steam released a controller named the
Steam Controller when you are trying to talk about Steam controllers. I don't own a The
Steam Controller, I am just referring to getting generic (Switch Pro and DualShock 4)
controllers to work with Steam games (Hades). Since it's such a weird controller, there may be
another piece of software that is getting blocked. Which would be why it would work with SIP
turned off. Maybe a driver that is using a different Team ID? Seems unlikely, I would have
thought they'd put it all in SteamInput, but there is a SteamInput-DS4v1 (which could be
either DS4 or all game controllers), so maybe there is a SteamInput-TheSteamController.
Good luck!
#10
thank you SO MUCH!! i get to play with my controller again AND i feel like i'm actually smart
while doing this?? best of both worlds. i appreciate it!! thanks for finding such a simple and
safe solution
#11
Hi Florean. Your process seems to work, however, my DualShock still does not work for
American Truck Simulator after following the process. Dirt 4 has always worked, strangely
enough.
#12
Mr Damage, did you try the verification step? If not, you can search in Spotlight for
"Terminal", open the app, and type "sudo kmutil load -p /Library/Extensions/SteamInput.kext".
It'll ask for your password and then run the command. If it just goes to the next line, then it
worked and I'm not sure why American Truck Simulator still wouldn't work. If it outputs any
kind of text, paste it here and we'll try to figure it out.
As to why Dirt has worked, I think it isn't only using Steam for controller input (since it is sold
on a bunch of platforms besides Steam), so it was probably connecting to the controller
through the OS and ignoring Steam.
#13
As an aside, after Teh SoTo's comment I went back and tried a bunch of games that Steam
says won't work because they are 32-bit and about half of them *did* work. So don't take
Steam's word for it. My guess is some of them uploaded 64-bit builds at some point after
Steam checked and Steam just never updates. :/
#14
Hey @florean, i might expressed myself incorrectly, what i am using is a normal PS4
Controller, i do not own a Steam controller, however, when SIP is disabled, the PS4 controller
never maps correctly, but it does work with the driver of the Steam controller, so in the
games, i select Steam Controller and use my PS4 controller, since Big Sur, i never got it to
work as a PS4 one.
#15
All Discussions > Steam Forums > Steam for Mac > Topic Details
© Valve Corporation. All rights reserved. All trademarks are property of their respective owners in the US and other countries.
Some geospatial data on this website is provided by geonames.org.