Transform Learning with a Powerful Enterprise LMS

Learn more
LMS Development

XAMPP Manager won't open on macOS 27: how to fix it on Apple silicon

After the macOS 27 Golden Gate upgrade, the XAMPP Manager stops opening on Apple silicon Macs. Here is why it happens, the two-line fix, and how long that fix will last.

Illustration of a three-unit server rack on a blue background, representing the XAMPP Manager not opening on macOS 27 on Apple silicon

If the XAMPP Manager is not opening on macOS 27 (Golden Gate), two things changed on your Apple silicon Mac. The upgrade does not bring Rosetta back, and the manager's launcher script only recognises Intel processors, so it quits with "The current OS X version is not supported" before any window appears. The fix is to reinstall Rosetta and add two lines to one shell script.

The whole job takes about five minutes in Terminal. It does not touch htdocs, your databases or your Apache and PHP configuration, and you do not need to reinstall XAMPP. A fresh install would not help, because it ships the same launcher script.

This guide is for developers who run PHP projects, Moodle or a WordPress LMS locally on XAMPP. We read the launcher script on a standard XAMPP install on an Apple silicon Mac and tested the patch below against a copy of it, so every line shown here comes from the real file.

What you see when the XAMPP Manager fails

You open manager-osx from /Applications/XAMPP and no window appears. There is no error dialog, because the launcher prints its error to standard output, which Finder never shows you.

To see the real message, run the launcher script directly in Terminal:

/Applications/XAMPP/xamppfiles/manager-osx.app/Contents/MacOS/installbuilder.sh

On an affected Mac it prints one line and exits:

The current OS X version is not supported

Then check what your Mac reports as its processor type:

uname -p

On Apple silicon the answer is arm. That single word is the reason the manager refuses to start.

Why the XAMPP Manager is not opening on macOS 27

Apple's macOS 27 release notes list two Rosetta changes that matter here:

  • Rosetta is not restored by the upgrade. The notes say that if Rosetta was previously installed, it "is not automatically restored after upgrading to macOS 27.0".
  • Apps launch natively by default. Apps that a user had set to "Open using Rosetta" now start as native Apple silicon processes.

The XAMPP Manager is not a normal app binary. Its bundle executable is a shell script, installbuilder.sh, whose only job is to choose a runtime and start it. This is the part that decides:

machine_platform=`uname -p`
machine_arch=`uname -m`
if [ "${os_version:0:1}" == "6" ];then
    executable="none"
elif [ "${machine_platform}" == "i386" ];then
  ...
    runtimes="osx-x86_64 osx-intel"
  ...
else
    executable="none"
fi

if [ "$executable" == "none" ]; then
    echo "The current OS X version is not supported"
    exit 1
fi

The script knows one processor type: i386. Anything else falls through to "none".

How the script runsuname -p returnsResult
As an Intel process through Rosettai386Picks osx-x86_64, the manager opens
Natively on Apple siliconarmNo branch matches, the script exits with the error

Script-based app bundles like this one were typically launched through Rosetta on earlier macOS releases, which is why the check used to pass on Apple silicon. On macOS 27 the script runs natively and reports arm. Apple's notes do not name script-based bundles, so treat that as our reading of the behaviour. The script logic itself is not in doubt.

One more detail explains why the patch alone is not enough. The files behind the script are Intel builds. On the install we inspected, the runtime is a single file named osx-x86_64, and the Application Manager helper contains i386, PowerPC and x86_64 code but no arm64. Both need Rosetta to run.

Before you start

  • An Apple silicon Mac on macOS 27. Check under Apple menu, About This Mac.
  • An administrator account, because the commands use sudo.
  • An internet connection, because Rosetta downloads from Apple.
  • XAMPP in its default location, /Applications/XAMPP. Adjust the paths if you moved it.

Step 1: Reinstall Rosetta 2

Apple documents the command in its support article on using Intel-based apps on a Mac with Apple silicon:

softwareupdate --install-rosetta

Accept the licence when asked. Then confirm that Intel code can run:

arch -x86_64 /usr/bin/true && echo "Rosetta is working"

If you see "Bad CPU type in executable" instead, Rosetta is still missing. Fix that before you go further, because nothing in XAMPP will start without it.

Step 2: Back up and patch the launcher script

The change adds a branch for arm that selects the same runtime the Intel branch would pick. The two-line edit was first written up by Levysoft on Medium. Start with a backup:

cd /Applications/XAMPP/xamppfiles/manager-osx.app/Contents/MacOS
sudo cp installbuilder.sh installbuilder.sh.bak

Open the script in an editor with administrator rights:

sudo nano installbuilder.sh
  1. Find the line elif [ "${machine_platform}" == "i386" ];then.
  2. Add the two new lines directly above it (shown below).
  3. Further down, change require_admin=0 to require_admin=1.
  4. Save with Control+O, press Enter, then exit with Control+X.

After the edit, the top of the decision block should read:

if [ "${os_version:0:1}" == "6" ];then
    executable="none"
elif [ "${machine_platform}" == "arm" ];then
    executable=osx-x86_64
elif [ "${machine_platform}" == "i386" ];then

Why change require_admin as well?

The last lines of the script start the runtime in one of two ways. If the script is not owned by the current user, or if require_admin is 1, it goes through the Application Manager helper, which asks for an administrator password. Otherwise it starts the runtime as you. Setting the value to 1 makes the password prompt unconditional, so the manager always has the rights it needs to start and stop Apache and MySQL, whatever happens to the file's ownership.

Prefer copy and paste?

These two commands make the same edit. Run them once, from the same folder, after the backup. We tested them on a copy of the stock script. If your Mac reports that perl is not found, use the manual edit above.

sudo perl -0pi -e 's/elif \[ "\$\{machine_platform\}" == "i386" \];then/elif [ "\${machine_platform}" == "arm" ];then\n    executable=osx-x86_64\nelif [ "\${machine_platform}" == "i386" ];then/' installbuilder.sh
sudo perl -pi -e 's/^require_admin=0$/require_admin=1/' installbuilder.sh

Check the edit

sudo sh -n installbuilder.sh && sudo grep -n -A1 '== "arm"' installbuilder.sh

No syntax error and two printed lines mean the patch is in place. We ran the stock and patched scripts with uname stubbed to report both arm and i386. The stock script exits with the error on arm. The patched script selects osx-x86_64 in both cases.

Step 3: Open the manager and start your servers

open /Applications/XAMPP/xamppfiles/manager-osx.app

Expect a password prompt, then the manager window. Start Apache and MySQL from the server list and load http://localhost/ in a browser. Your sites and databases are exactly as you left them.

If anything goes wrong, put the original script back:

cd /Applications/XAMPP/xamppfiles/manager-osx.app/Contents/MacOS
sudo cp installbuilder.sh.bak installbuilder.sh

Two ways to run XAMPP without editing anything

Launch the manager through Rosetta once

Because the script accepts i386, running it as an Intel process passes the check without any patch:

arch -x86_64 /bin/sh /Applications/XAMPP/xamppfiles/manager-osx.app/Contents/MacOS/installbuilder.sh

This follows from the script logic above and matches the Levysoft report that forcing Intel execution works. You have to repeat it every time, so it suits a quick test more than daily use.

Control the servers from Terminal

XAMPP also ships a control script at /Applications/XAMPP/xamppfiles/xampp, the same one the Apache Friends OS X FAQ uses for its security and backup commands. It does not need the manager at all:

CommandWhat it does
sudo /Applications/XAMPP/xamppfiles/xampp startStarts all servers
sudo /Applications/XAMPP/xamppfiles/xampp startapacheStarts Apache only
sudo /Applications/XAMPP/xamppfiles/xampp startmysqlStarts the database only
sudo /Applications/XAMPP/xamppfiles/xampp statusShows what is running
sudo /Applications/XAMPP/xamppfiles/xampp stopStops all servers

Action names can differ between XAMPP versions. If one is rejected, check the usage text the script prints. Both options in this section still depend on Rosetta from Step 1.

Common problems after the fix

SymptomLikely causeWhat to do
The manager still does not openRosetta is not installedRun the check in Step 1 and reinstall Rosetta
"The current OS X version is not supported" still appearsThe new lines were not saved, or sit below the i386 lineRe-open the script and place them directly above that line
nano cannot save the fileThe editor was opened without sudoClose it and run sudo nano installbuilder.sh
The manager opens but servers will not start or stoprequire_admin is still 0Set it to 1 and reopen the manager
Apache or MySQL fails to start with an errorUsually unrelated to the patch, for example a port already in useRead the log: tail -2 /Applications/XAMPP/logs/error_log
The script shows a syntax errorA typing mistake in the editRestore the backup and repeat Step 2

How long will this fix last?

Until you upgrade to macOS 28. Apple's support article says Rosetta is available on macOS 27 or earlier, and that from macOS 28 it will only support certain older, unmaintained games. The release notes put it more bluntly: all Intel-based software stops being compatible with macOS 28.0, excluding legacy games.

Three checks tell you where your own setup stands:

  • Ask macOS. According to the release notes, Settings, General on macOS 27 lists the Intel-based apps that will be incompatible with macOS 28.
  • Ask the binary. Run file /Applications/XAMPP/xamppfiles/bin/httpd. If the output lists x86_64 and no arm64, Apache itself depends on Rosetta, not only the manager.
  • Check for a newer XAMPP. As of October 2026 the Apache Friends download page still lists 8.2.4, with PHP 8.2.4, as the newest version for OS X.

There is a second clock running. The PHP 8.2 branch reaches the end of security support on 31 December 2026, according to the PHP supported versions page. A local stack that cannot move past PHP 8.2 will drift further from what your production servers run.

OptionWhat it isGood fit when
Patched XAMPP on macOS 27The fix in this guideYou need to keep working today and can delay the macOS 28 upgrade
Homebrew packagesApache or Nginx, PHP and MariaDB installed natively for Apple siliconYou want the closest thing to XAMPP and are comfortable managing services yourself
A Docker-based stack such as DDEVPer-project Linux containers with the PHP and database versions you chooseYou maintain several sites and want local to match production

For LMS work, containers are worth a serious look. A Moodle site and a WordPress LMS often need different PHP and database versions, and a per-project stack lets you pin each one. It also means the settings you tune locally, such as the OPcache values in our Moodle performance tuning checklist, behave the same way on the server.

Whichever route you take, export your databases from phpMyAdmin and copy htdocs before you upgrade macOS again. Those two things are your work. The rest of XAMPP can be replaced.

How we can help

We build and maintain Moodle, WordPress LMS and custom PHP learning platforms. If your team is moving off XAMPP, or a platform upgrade is blocked by an old PHP version, our LMS development and LMS maintenance and support teams can take it on. Tell us what you are running and we will suggest a sensible next step.

Frequently asked questions

Does XAMPP work on macOS 27 Golden Gate?

Yes, on Apple silicon it works once Rosetta is reinstalled and the manager's launcher script is patched to accept the arm processor type. Apache, MySQL and PHP can also be started from Terminal with the xampp control script, without the manager.

Why does XAMPP say "The current OS X version is not supported"?

The message comes from installbuilder.sh inside manager-osx.app. The script checks the output of uname -p and only has a branch for i386. On macOS 27 it runs natively on Apple silicon, gets arm, finds no matching runtime and exits.

Do I need to reinstall XAMPP after upgrading to macOS 27?

No. Reinstalling puts the same launcher script back, so the manager fails in the same way. Your projects in htdocs and your databases are not affected by the problem, and the fix only edits one small script.

Is it safe to edit installbuilder.sh?

The edit adds one branch and changes one value, and you keep a backup copy next to the original. On the install we inspected, the manager bundle has no code signature folder, so there is no signature for the edit to break. Restoring the backup undoes everything.

Will XAMPP run on macOS 28?

Not in its current form. Apple says Intel-based software will no longer be compatible with macOS 28, apart from certain older games, and XAMPP 8.2.4 for macOS runs through Rosetta. Unless an Apple silicon build is released, plan to move to Homebrew packages or a Docker-based stack before that upgrade.

Free 30-minute consultation

Not sure where to start? Talk to an LMS engineer.

Tell us what platform you run and what you need. You’ll get honest, practical advice - even if the answer is that you don’t need us.

Sources & references

  1. macOS 27 Golden Gate Release Notes - Apple Developer
  2. Using Intel-based apps on a Mac with Apple silicon - Apple Support
  3. Download XAMPP - Apache Friends
  4. XAMPP for OS X: Frequently Asked Questions - Apache Friends
  5. PHP: Supported Versions - The PHP Group
  6. XAMPP 8.2.4 on macOS 27: Manager Won't Open on Apple Silicon, Here's How to Fix It - Levysoft (Medium)

Keep reading

LMS Development

End-to-end LMS development: new platforms, new features and deep customization on Moodle, WordPress LMS, Open edX, Canvas or a custom stack.

Custom LMS Development

A learning platform designed around your workflows, learners and business model - built on a proven framework or from scratch.

Before you go - get a free LMS audit

Tell us which LMS you use and what is not working. An engineer replies within one business day.

Choose which optional cookies we may use. You can change this at any time from "Cookie preferences" in the footer. Cookie policy · Privacy policy