I’m trying to install moneydance (2021) which has a linux install script but I’m not able to get it to work. I’ve installed jdk17
like this in my /etc/nixos/configuration.nix
…
programs.java = { enable = true; package = pkgs.openjdk17; };
…but when I run the install script sh Downloads/moneydance_linux_amd64.sh
I get:
Unpacking JRE …
Starting Installer …
Downloads/moneydance_linux_amd64.sh: line 528: /home/john/Downloads/moneydance_linux_amd64.sh.46358.dir/jre/bin/java: cannot execute: required file not found
I’m thinking the installer is not made for running with nixos. I can provide the output from:
sh -x Downloads/moneydance_linux_amd64.sh
if that may help.
Also looking at using a nix-shell
and buildFHSEnv
:
{ pkgs ? import <nixpkgs> {} }:
(pkgs.buildFHSEnv {
name = "simple-x11-env";
targetPkgs = pkgs: (with pkgs; [
openjdk17
libz
]);
}).env
but I’m stuck here too, with this error:
Unpacking JRE ...
Starting Installer ...
java.lang.NoClassDefFoundError: Could not initialize class java.awt.Component
at java.desktop/javax.swing.ImageIcon$2.run(Unknown Source)
at java.desktop/javax.swing.ImageIcon$2.run(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Unknown Source)
at java.desktop/javax.swing.ImageIcon.createNoPermsComponent(Unknown Source)
at java.desktop/javax.swing.ImageIcon$1.run(Unknown Source)
at java.desktop/javax.swing.ImageIcon$1.run(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Unknown Source)
at java.desktop/javax.swing.ImageIcon.<clinit>(Unknown Source)
at com.install4j.runtime.installer.frontend.GUIHelper.loadIcon(GUIHelper.java:192)
at com.install4j.runtime.installer.frontend.GUIHelper.<clinit>(GUIHelper.java:50)
at com.install4j.runtime.installer.frontend.headless.AbstractHeadlessScreenExecutor.init(AbstractHeadlessScreenExecutor.java:73)
at com.install4j.runtime.installer.frontend.headless.ConsoleScreenExecutor.<init>(ConsoleScreenExecutor.java:24)
at com.install4j.runtime.installer.frontend.headless.InstallerConsoleScreenExecutor.<init>(InstallerConsoleScreenExecutor.java:6)
at com.install4j.runtime.installer.Installer.getScreenExecutor(Installer.java:87)
at com.install4j.runtime.installer.Installer.runInProcess(Installer.java:56)
at com.install4j.runtime.installer.Installer.main(Installer.java:45)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.base/java.lang.reflect.Method.invoke(Unknown Source)
at com.exe4j.runtime.LauncherEngine.launch(LauncherEngine.java:85)
at com.install4j.runtime.launcher.UnixLauncher.main(UnixLauncher.java:62)
An error occurred:
java.lang.NoClassDefFoundError: Could not initialize class java.awt.Toolkit
Error log: /tmp/install4jError13861951974109939667.log
java.lang.NoClassDefFoundError: Could not initialize class java.awt.Toolkit
at java.desktop/javax.swing.ImageIcon.<init>(Unknown Source)
at java.desktop/javax.swing.ImageIcon.<init>(Unknown Source)
at com.install4j.runtime.installer.frontend.GUIHelper.loadIcon(GUIHelper.java:192)
at com.install4j.runtime.installer.frontend.GUIHelper.<clinit>(GUIHelper.java:50)
at com.install4j.runtime.installer.frontend.headless.AbstractHeadlessScreenExecutor.init(AbstractHeadlessScreenExecutor.java:73)
at com.install4j.runtime.installer.frontend.headless.ConsoleScreenExecutor.<init>(ConsoleScreenExecutor.java:24)
at com.install4j.runtime.installer.frontend.headless.InstallerConsoleScreenExecutor.<init>(InstallerConsoleScreenExecutor.java:6)
at com.install4j.runtime.installer.Installer.getScreenExecutor(Installer.java:87)
at com.install4j.runtime.installer.Installer.runInProcess(Installer.java:56)
at com.install4j.runtime.installer.Installer.main(Installer.java:45)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.base/java.lang.reflect.Method.invoke(Unknown Source)
at com.exe4j.runtime.LauncherEngine.launch(LauncherEngine.java:85)
at com.install4j.runtime.launcher.UnixLauncher.main(UnixLauncher.java:62)