Opened 7 years ago

Closed 4 years ago

Last modified 4 years ago

#42725 closed enhancement (fixed)

Use modern tools for 'port pkg' on newer OS versions

Reported by: rob@… Owned by: macports-tickets@…
Priority: Normal Milestone: MacPorts 2.4.0
Component: base Version: 2.2.1
Keywords: Cc: cooljeanius (Eric Gallager), ci42, plm_macports@…, macports-20081001@…, mroman@…, robertoschwald@…, mkae (Marko Käning), antonbachin@…, akkornel (A. Karl Kornel), ctreleaven (Craig Treleaven), eduo@…
Port:

Description

PackageMaker was deprecated a long time ago, and is not a usable app on the latest version of OS X. The latest version available from the developer portal is from a few years ago.

Creating installers should use 'pkgbuild' and 'productbuild' command line tools to create flat packages, which is the current standard.

Change History (20)

comment:1 Changed 7 years ago by cooljeanius (Eric Gallager)

Cc: egall@… added

Cc Me!

comment:2 Changed 7 years ago by ryandesign (Ryan Schmidt)

Component: portsbase

comment:3 Changed 7 years ago by ci42

Cc: ciserlohn@… added

Cc Me!

comment:4 in reply to:  description Changed 7 years ago by plm_macports@…

Replying to rob@…:

PackageMaker was deprecated a long time ago, and is not a usable app on the latest version of OS X. The latest version available from the developer portal is from a few years ago.

Creating installers should use 'pkgbuild' and 'productbuild' command line tools to create flat packages, which is the current standard.

I find a link to add "Auxiliary Tools for Xcode - Late july 2012" from developer.apple.com to the late Xcode installation (https://testingmachine.eu/blog/-/blogs/compiling-opensc-0-13-under-osx-10-9) but it's not a solution for me. It's just a way to temporarly patch MacPorts to wait the "pkgbuild" and "productbuild" integrate MacPorts process. I'm not a developer, so I am just waiting...

comment:5 Changed 7 years ago by plm_macports@…

Cc: plm_macports@… added

Cc Me!

comment:6 Changed 6 years ago by macports-20081001@…

Cc: macports-20081001@… added

Cc Me!

comment:7 Changed 6 years ago by mroman@…

Cc: mroman@… added

Cc Me!

comment:8 Changed 5 years ago by robertoschwald@…

Cc: robertoschwald@… added

Cc Me!

comment:9 Changed 5 years ago by RJVB (René Bertin)

Having found and used that PackageMaker version myself yesterday, I'd say that it calls pkgbuild and productbuild.

The easy/evident quickfix (waiting for a release with a more proper fix) would be to check with Apple if MacPorts can redistribute the application, and ship it in a port.

comment:10 Changed 5 years ago by mkae (Marko Käning)

Cc: mk@… added

Cc Me!

comment:11 Changed 5 years ago by jmroot (Joshua Root)

Contrary to the assertion in the description, PackageMaker still works fine on El Capitan. But yeah, we should use the modern method on systems where it works.

comment:12 Changed 5 years ago by jmroot (Joshua Root)

Summary: 'port pkg' still requires PackageMaker.appUse modern tools for 'port pkg' on newer OS versions
Type: defectenhancement

comment:13 Changed 5 years ago by antonbachin@…

Fixing this would be very helpful. I am building packages inside Travis build workers, which don't seem to have PackageMaker installed. They do have pkgbuild and productbuild.

I suppose I can ask Travis developers to install PackageMaker in OS X images, but it seems like the right place to fix this is MacPorts.

I'm not aware of any legitimate way to separately install PackageMaker without logging in as a developer from the build workers, so this is a showstopper for that process.

Travis build environment summary: https://docs.travis-ci.com/user/osx-ci-environment/#OS-X-Version

Edit: a sample error log: https://travis-ci.org/aantron/binaries/builds/137965109#L3189

Last edited 5 years ago by antonbachin@… (previous) (diff)

comment:14 Changed 5 years ago by antonbachin@…

Cc: antonbachin@… added

Cc Me!

comment:15 Changed 5 years ago by antonbachin@…

FYI I am building MacPorts with this patch, to use pkgbuild and get around the problem in Travis: https://raw.githubusercontent.com/aantron/binaries/7f181b71afe650b2be193b978713d3f6b9fab487/src/build/macports/ocaml-4.02/pkg.patch

It's not suitable for inclusion straight into MacPorts, as it throws away conditional code and takes other shortcuts.

Last edited 5 years ago by antonbachin@… (previous) (diff)

comment:16 Changed 5 years ago by akkornel (A. Karl Kornel)

Cc: karl@… added

Cc Me!

comment:17 Changed 5 years ago by ctreleaven (Craig Treleaven)

Cc: ctreleaven@… added

Cc Me!

comment:18 Changed 4 years ago by eduo@…

Cc: eduo@… added

Cc Me!

comment:19 Changed 4 years ago by jmroot (Joshua Root)

Resolution: fixed
Status: newclosed

In dd89bb8/macports-base:

Use pkgbuild when possible

PackageMaker.app has been removed from Xcode tools for some time, so
use pkgbuild instead when it's available and we're building flat
packages.

Fixes: #42725

comment:20 Changed 4 years ago by jmroot (Joshua Root)

Milestone: MacPorts 2.4.0
Note: See TracTickets for help on using tickets.