Building MacOS installers in Ubuntu with NBPackage
Toni Helenius <[email protected]> Sun, 24 Aug 2025 22:14:20 +0300
| Newsgroups | gmane.comp.java.ide.netbeans.user |
|---|---|
| Organization | ToniArts |
| Message-ID | <[email protected]> |
Hi! We are trying to migrate from NBI to using NBPackage to distribute our Netbeans Platform project. Our project is https://github.com/jMonkeyEngine/sdk/. We are building these installers via Github actions, leveraging Ubuntu platform. I managed to build Linux DEB and Windows Inno Setup installer with a great effort (though not thoroughly tested yet). But I'm having much difficulties building MacOS PKG in Ubuntu. If solution-wise there is something, the actual implementation can be seen here: https://github.com/jMonkeyEngine/sdk/pull/660. Is it even possible to build these on Ubuntu? The error I'm getting: Creating task for macos-pkg packager. Checking image creation prerequisites. Checking package creation prerequisites. Validating required tools - [swift] Validating required tools - [pkgbuild] /usr/local/bin/swift IllegalStateException Cannot find required tool - pkgbuild java.lang.IllegalStateException: Cannot find required tool - pkgbuild at [email protected]/org.apache.netbeans.nbpackage.macos.AppBundleTask.validateTools(AppBundleTask.java:214) at [email protected]/org.apache.netbeans.nbpackage.macos.PkgTask.checkPackageRequirements(PkgTask.java:36) at [email protected]/org.apache.netbeans.nbpackage.AbstractPackagerTask.validateCreatePackage(AbstractPackagerTask.java:71) at [email protected]/org.apache.netbeans.nbpackage.ExecutionContext.execute(ExecutionContext.java:421) at [email protected]/org.apache.netbeans.nbpackage.NBPackage.createPackage(NBPackage.java:170) at [email protected]/org.apache.netbeans.nbpackage.Main$Launcher.call(Main.java:144) at [email protected]/org.apache.netbeans.nbpackage.Main$Launcher.call(Main.java:47) at [email protected]/picocli.CommandLine.executeUserObject(CommandLine.java:2031) at [email protected]/picocli.CommandLine.access$1500(CommandLine.java:148) at [email protected]/picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2469) at [email protected]/picocli.CommandLine$RunLast.handle(CommandLine.java:2461) at [email protected]/picocli.CommandLine$RunLast.handle(CommandLine.java:2423) at [email protected]/picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2277) at [email protected]/picocli.CommandLine$RunLast.execute(CommandLine.java:2425) at [email protected]/picocli.CommandLine.execute(CommandLine.java:2174) at [email protected]/org.apache.netbeans.nbpackage.Main.main(Main.java:43)