macOS: Migration Guide for Switching from AMD64 to Aarch64/ARM64 on Apple Silicon

Intrexx Server 12.1.5, running on Apple Silicon (Aarch64, ARM64)

If an Intrexx portal was running on Apple Silicon up to and including version 12.1.5, the architecture change from AMD64 to Aarch64 means that an update is only possible using a .dmg file; downloading the update from the Manager or via a script is not supported. It is recommended that you create a backup before updating.

Preparation

Since the LaunchD daemons need to be replaced, you must stop and remove them before updating. This must be done manually once for all Intrexx services—that is, all portals, the Solr search server, and (if installed) the Administration API. You can use the scripts in the bin/macosx folder for this purpose. Each script begins with " upix " and is named after the service:

  • upixp_<portalname>: controls the LauchD daemon for the respective portal (there is one script per portal), e.g., upixp_myportal

  • upixsolr: controls the Solr search server daemon

  • upix_admin_api: controls the Admin API daemon

All scripts must be run once with `sudo ` and given the `remove` command to stop and remove the daemon, for example:

sudo ./upixp_meinportal remove

bob@Virtuelle-Maschine-von-Bob macosx % sudo ./upixp_meinportal remove
The operation couldn’t be completed. Unable to locate a Java Runtime.
Please visit http://www.java.com for information on installing Java.

Mac OSX erkannt:
Beende Intrexx Portal meinportal...
Intrexx Portal meinportal beendet.
Entferne den Intrexx Portal meinportal-Daemon...
bob@Virtuelle-Maschine-von-Bob macosx %

As mentioned above, a message may appear stating that Java was not found. This message comes from the operating system and simply indicates that no global Java is installed. Since Intrexx comes with its own version of Java, it can be ignored.

To check whether any services are still running, you can view the /Library/LaunchDaemons directory, where the operating system stores the configuration files:

ls -la /Library/LaunchDaemons

bob@Virtuelle-Maschine-von-Bob macosx % ls -la /Library/LaunchDaemons
total 8
drwxr-xr-x   3 root  wheel    96 19 Juni 08:56 .
drwxr-xr-x  65 root  wheel  2080 27 Mai  22:15 ..
-rw-r--r--@  1 root  wheel   582 27 Mai  22:16 postgresql-18.plist
bob@Virtuelle-Maschine-von-Bob macosx %

If all services have been stopped, there should be no files there that begin with org.tanukisoftware.wrapper. Any other services (such as the PostgreSQL database server, for example) are not affected by the update and can remain active.

Since the scripts must be adapted to the new architecture during the update, it is important that they belong to the user who runs Intrexx. This is usually your own user account or the " intrexx" daemon user. You can determine whether the scripts belong to the correct user by running them with

ls -la

displays. In the example below, the scripts for the Admin API and the Solr search server belong to the daemon user " intrexx," but the script for the portal belongs to " root."

bob@Virtuelle-Maschine-von-Bob macosx % ls -la
...
-rwxrwxr-x   1 intrexx  intrexx  115296 22 Juni 14:31 upix_admin_api
-rwxr-xr-x   1 root     wheel    115272 22 Juni 14:33 upixp_meinportal
-rwxrwxr-x   1 intrexx  intrexx  115269 22 Juni 14:30 upixsolr

To assign the script to the user " intrexx," you can use the `chown ` command, passing it the username (intrexx) and its group (intrexx), separated by a colon. If Intrexx is run using your own user account, you must enter your own username and group instead. The command must be run with sudo :

sudo chown intrexx:intrexx upixp_meinportal

After that, the script belongs to the daemon user " intrexx":

bob@Virtuelle-Maschine-von-Bob macosx % ls -la
...
-rwxrwxr-x   1 intrexx  intrexx  115296 22 Juni 14:31 upix_admin_api
-rwxr-xr-x   1 intrexx  intrexx  115272 22 Juni 14:33 upixp_meinportal
-rwxrwxr-x   1 intrexx  intrexx  115269 22 Juni 14:30 upixsolr

In addition, write permissions must be extended for the duration of the update if another user is running the setup. This can be done using the chmod command; for example, for a portal:

sudo chmod a+w upixp_meinportal

Update

To install the update, simply mount and open the downloaded .dmg file as usual. Run the setup, accept the license terms, and in the " Installation Path " step, under " Or update an existing installation," select your existing installation. All other setup settings are then determined automatically and do not need to be changed.

Follow-up

After updating and patching the portal, write permissions can be restricted again and the services can be re-registered. To do this, navigate to the bin/macos directory (the name has changed as part of the update) of your Intrexx installation in the Terminal. To remove write permissions for other users, you can use the chmod command; for example, for a portal:

sudo chmod o-w upixp_meinportal

To re-register the services, run the same scripts as before using `sudo` , but this time with the ` installstart` command to reinstall and then start the services. It is recommended that you first reinstall the Solr search server so that it is already up and running when the portal starts.

Example:

sudo ./upixsolr installstart
				
bob@Virtuelle-Maschine-von-Bob macos % sudo ./upixsolr installstart
Password:
The operation couldn’t be completed. Unable to locate a Java Runtime.
Please visit http://www.java.com for information on installing Java.
Mac OSX erkannt:
Installation von Intrexx Solr Search Server-Daemon ...
Starten von Intrexx Solr Search Server mit launchd ...
Warten auf Intrexx Solr Search Server ... ....
wird ausgeführt: PID:14013

A message may also appear here if Java is not installed system-wide. It can also be ignored.

After the services have been reinstalled, the computer must be restarted a total of two times. After the first reboot, the operating system requests permission to run the wrapper software. Intrexx uses these to provide its system services. Since the architecture has changed, the permission must be reissued and the wrapper must be allowed to open. After restarting the computer once more, the wrapper can then deliver the services as usual.

Intrexx Server 12.1.5, running on Apple Intel (AMD64)

Unfortunately, for Apple devices with Intel (AMD64, x86_64) architecture, updates cannot be performed via .dmg, download, script, or manager. To do this, you must export the existing portals in 12.1.5, remove the existing installation, and then import the portals into a newly installed instance.

Intrexx Portal Manager (without portal server)

It is not possible to update the Intrexx Portal Manager (Intel or Apple Silicon); in this case, the existing manager must be uninstalled and a new one installed. The manager's settings are retained.