Skip to content

Unable to build CKAN.dmg on macOS #2355

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
phardy opened this issue Mar 12, 2018 · 0 comments
Closed

Unable to build CKAN.dmg on macOS #2355

phardy opened this issue Mar 12, 2018 · 0 comments

Comments

@phardy
Copy link
Contributor

phardy commented Mar 12, 2018

While poking around testing out #2329, I discovered that macosx/Makefile is unable to build CKAN.app or CKAN.dmg on macOS. I know, the irony is fantastic.

The easy issue is that BSD cp does not support the -l flag for creating hard links. A simple cross-platform fix for that is s/cp -l/ln/.

The hard issue is that the Makefile uses genisoimage to build an ISO9660 disk image with the Apple extensions. Without getting too far down the rabbithole, genisoimage was created as a fork from mkisofs during a licensing squabble between the cdrtools author and Debian maintainer for cdrtools. It's been unmaintained for several years, and while in theory it'll probably build on FreeBSD, I'm not even sure if I've found the right repository for it.

The Debian folk recommend the xorriso package as a drop-in replacement for genisoimage and mkisofs, and it's something that's readily available of macOS through assorted package manages. It doesn't support the -apple flag, but does generate an image that I'm able to open and manipulate as expected.

So, I'd like to suggest switching to xorriso for building the macOS packages. Admittedly it's a minor change, and has a little overhead for the folks maintaining build agents (sorry!), but would make life easier for people actively working on CKAN.app on a supported platform.

Longer term, it would be amazing to generate a rich dmg using a tool like appdmg, but my brief research this evening has only found ones that rely on Darwin's hdiutil, so aren't portable.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant