Should I expect a +quartz variant to propagate to dependencies, and overrule existing variants?

Ryan Schmidt ryandesign at macports.org
Thu Jun 9 22:52:30 UTC 2022


On Jun 5, 2022, at 12:42, Jim DeLaHunt wrote:
> 
>>> …Thus I succeeded in fumbling my way through installing gimp +quartz despite dependencies already present with the wrong variants, but it was a bit messy and confusing. Should I expect MacPorts to do a better job with this situation?  If so, maybe I should file a ticket against some of these ports, to see if portfile changes would avoid the problems.
>> This undesirable experience is why we recommend users choose whether to use +x11 or +quartz before installing any ports, or uninstall all ports and reinstall them if changing one's mind after having installed ports.
> 
> Interesting! Where is this advice documented? I certainly did not know it before. (But them, I guess I have not read the Guide diligently.)

It's documented frequently on this mailing list. I don't know if it is documented in a more permanent place like the wiki or guide.


> The place where these instructions would have done me good is in the Migration instructions: <https://trac.macports.org/wiki/Migration>.

The migration instructions are intended to help you move an existing MacPorts installation to a new system, preserving it the way it was installed as much as possible, so any advice about what variants you should choose seems like it would be misplaced in that document.


> I just looked. I have 27 ports with +x11 variants specified. 4 of those ports have +quartz+x11: cairo, cairomm, pango, pangomm. For all 4 of them, +x11 and +quartz appear to be default variants, so I suppose they can coexist. But that leaves me with 23 ports with +x11 to deal with. At least some of them (e.g. ffmpeg) have no +quartz variant. Can such ports coexist as +x11 variants with the rest of a collection of +quartz variant ports?
> 
> I see my port gtk3 is installed as +x11 but not as +quartz. I suspect that is not what I want. Thank you for the heads-up.

The x11/quartz distinction is primarily significant for gtk2/gtk3 since those ports can currently only be built for one or the other, and which flavor of gtk you use dictates which flavor of all the ports that depends on gtk you can use. Chris wishes to begin work on making these available as subports instead of variants so that they could coexist and this limitation would then disappear.

ffmpeg's x11 variant does not have anything to do with gtk, so you can make that decision separately from the ports that do use gtk. ffmpeg does use libsdl2 and, if you use ffmpeg's x11 variant, it requires that you use libsdl2's x11 variant as well. It will let you know about that if you haven't already done that.


More information about the macports-users mailing list