Skip to content

Java library to download Homebrew Bottles and reprocess dylib files

License

Notifications You must be signed in to change notification settings

gotson/jidou-hanbaiki

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

自動 販売機 (Jidō hanbaiki)

From the Japanese: Vending Machine.

A Java library that can:

  • download Homebrew Bottles for different architecture and macOS version, along with dependencies.
  • modify the Mach-O headers of .dylib files, so they can be included in a single folder distribution.

Dependencies

org.gotson.jidouhanbaiki.dylib.Dylib expects dyld_info and install_name_tool to be available in the PATH.

Motivation

When building macOS apps with Conveyor, native libraries can be packaged along with the application. Conveyor will conveniently sign those libraries along with your app.

In order to include libheif and libjxl into Komga I needed to get hold of the native libraries, compiled for both Intel and ARM64, with the lowest possible target macOS version. Homebrew conveniently provides those binaries as Bottles.

macOS also requires that libraries use an absolute path for dependencies, for security reasons. Conveyor adds @rpath into the main binary, which can then be used in the libraries for dependents.

How to use?

Check SampleApplication.java.

The library is not available on Maven Central, but I would consider publishing if there's a need for it.

About

Java library to download Homebrew Bottles and reprocess dylib files

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Languages