MAMP Pro under OS X Mavericks

If you’re a developer and you got access to use Mac OS X 10.9 Mavericks earlier this week, you’ll notice that it’s actually mostly a hassle free experience, apart from changes to the code signing and authorisation model that mean non-signed applications can no longer elevate permissions to root level.

Now, this shouldn’t matter to most people – but if you use MAMP Pro, you’ll find this isn’t signed at all, and means it’s unable to get access to write to the important system files. You’ll get an error about not being able to write to /etc/hosts.

I’m sure the next version of MAMP will fix this, but for now, you can self sign the app to give it permission to modify system preferences.

You just need to open keychain access, click on it’s menu bar item “Keychain Access”, then “Certificate Assistant”, and “Create a Certificate”. For Name, enter your name, Identify Type should be kept as Self Signed Root, and Certificate Type should be code signing. You can pretty much click continue on everything else until your certificate.

Finally, open terminal, and run:

codesign -s “Your Name” /Applications/MAMP\ Pro/MAMP\ Pro.app

That’ll sign the application as you and let you execute it.

Obviously, it goes without saying you’re telling your mac you trust any app you sign – so only do this if you’re confident MAMP Pro (or any other app that has issues on Mavericks with this error) is trustworthy.

Update:

If you still have issues, that probably means the signing didn’t take properly, you can run: codesign -v /Applications/MAMP\ PRO/MAMP\ PRO.app -v

Once signed, that should tell you that MAMP is “valid on disk” and it “satisfies its Designated Requirement” – anything else and the signing didn’t work properly and you should try again!