Install Pentaho on Mac M1

Sebastián Vidal Aedo
3 min readMar 27, 2022

Pentaho is an amazing tool for doing ETL processes. It is built in JAVA so you should have no problem using it in different environments, such as Windows, Mac or Linux. In Linux it works without any problem, in Mac with Intel neither, but the problem appears when our processor is an M1.

I recently bought one and wanted to create, install and configure Pentaho for ETL and I was faced with various problems associated with java versions and some compatibilities.

Let’s go step by step

Pentaho

Download Pentaho from https://sourceforge.net/projects/pentaho/files/Pentaho-9.2/client-tools/pdi-ce-9.2.0.0-290.zip/download

Unzipping it getting the data-integration directory, go to /data-integration/libswt/osx64/swt.jar and delete this jar file. Now, where can we get a new file? we get the right one by downloading Eclipse ans take the file org.eclipse.swt.cocoa.macosx.x86_64–3.116.100.jar and leave it where we deleted the swt.jar (without changing its name).

Eclipse Temurin

Now that we have ok pentaho, we must install the appropriate version of Java, for this we install openjdk8.

Java

You can download version 8 compatible with M1 here

We configure our terminal to recognize the commands, in my case I use zsh, so I edit the ~.zshrc

export JAVA_HOME=/Library/Java/JavaVirtualMachines/temurin-8.jdk/Contents/Home

Rosetta

In the terminal, add a new profile that we will call Rosetta Intel. In its characteristics we go to the Shell tab and paste in Run Command:

env /usr/bin/arch -x86_64 /bin/zsh — login

Tick the checkbox and untick “Run inside shell”.

Shell tab

To start Pentaho we access by console to have left the data-integration directory, in my step along with the other applications in /Applications/data-integration. Being there, we execute by terminal

./spoon.sh

Problems

Dark Mode

This is how it see

You only need to change in preferences so that it takes the OS mode and restart it. It will look good in 90%.

Tick this two checkbox
Now see “fine”

Compatibility with other apps that use a different version of java

I use the Sonar extension inside VSCODE, which uses another version of JAVA by default. So that it doesn’t throw errors and it works fine, we just have to specify the Java path in the extension’s preferences.

Sonarlint config in VSCODE

And that all! now you can use Pentaho without problems (only a couple of menus remain that don’t fully adapt to Dark Mode)

Links

org.eclipse.swt.cocoa.macosx

openJDK8u

--

--