mpkg build with Apple Silicon

macports at arcict.com macports at arcict.com
Wed Jan 29 14:45:20 UTC 2025


Hello everyone,

Thank you for the feedback.

Using this feedback I managed to avoid the Rosetta installation by doing 
the following:

		⁃	pkgutil --expand nginx.mpkg nginx.expanded
		⁃	open the Distribution file (XML)
		⁃	add <options hostArchitectures="arm64"/> above the </installer> 
tag
		⁃	pkgutil --flatten nginx.expanded nginx.mpkg

Thank you very much for the assistance!

Met vriendelijke groeten | Bien à vous | Kind regards
Dimitri


ARC - your Apple Authorised Service partner

H. D. Saviolaan 8
1700 Dilbeek
T. : 00 32 02 466 5000

On 28 Jan 2025, at 21:47, Joshua Root wrote:

>> Hello,
>>
>> We've build a few packages using the mpkg command on an Apple Silicon
>> Mac.
>> When we want to install any of these packages, Rosetta 2 installation 
>> is
>> required.
>>
>> We want to avoid using Rosseta 2, if there a way of forcing the
>> architecture to arm64 when building a mpkg?
>
> Unfortunately Apple's Installer started assuming in Big Sur that 
> packages require Rosetta 2 unless they set the previously optional 
> hostArchitectures key in the Distribution file to something including 
> arm64. This was reported for the MacPorts base installer and was 
> fixed: <https://trac.macports.org/ticket/63096>
>
> However 'port mpkg' still does not set this, partly because it's not 
> straightforward to figure out whether any of the included dependencies 
> need Rosetta 2. If you know you're only including arm64 code in the 
> mpkg, possible solutions would be to have the top level port provide a 
> custom Distribution file that sets hostArchitectures like the MacPorts 
> port does, or patch portmpkg::write_distribution in base to set it.
>
> - Josh
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macports.org/pipermail/macports-users/attachments/20250129/31af4735/attachment.htm>


More information about the macports-users mailing list