[MacPorts] #60511: move to quartz as default backend
MacPorts
noreply at macports.org
Sun Jun 7 05:45:05 UTC 2020
#60511: move to quartz as default backend
-------------------------------------------------+-------------------------
Reporter: ra1nb0w | Owner: dbevans
Type: enhancement | Status: assigned
Priority: Normal | Milestone:
Component: ports | Version:
Resolution: | Keywords:
Port: R Togl VLC VLC2 avahi cairo cairo- |
devel cairomm cherrytree clutter cogl |
gWakeOnLAN gconf gegl gegl-0.3 gegl-devel |
geoclue2 glade glib2 glib2-devel glibmm |
gnome-themes-extra gnubg gnucash-docs gtk- |
sharp2 gtk2 gtk3 gtkextra3 gtkimageview gtkmm |
gtkmm3 gtkspell2 inkscape inkscape-devel |
inkscape-gtk3-devel lablgtk2 libVLC libVLC2 |
librsvg meld netgen opencolorio pan2 pango |
pango-devel pangomm pdfpc pidgin pspp pspp- |
devel py-cairo py-gobject py-pygtk reinteract |
tix tk tkdnd tkimg tktable ufraw webkit2-gtk |
webkit2-gtk-devel wxgtk-3.0 |
-------------------------------------------------+-------------------------
Comment (by ryandesign):
For all the libraries that can be built in either X11 or Quartz flavor but
not both, we currently have variants. Moving that to subports does seem
like it would help this transition because then it would be possible to
have both X11 and Quartz versions installed at the same time and the ports
for apps that use those libraries could transition from one to the other
on their own timetable. This would be a lot of work, because each of those
library ports would need to modify its build process to install to
different locations, and each of the ports using each of those library
ports would need to be modified to find those libraries in those new
locations.
The x11 variants of gtk2 and gtk3 do already depend on the needed X11
libraries. They don't depend on xorg-server because they don't require it.
They require ''an'' X11 server, but that could be from the xorg-server
port, or a manually-installed Xquartz, or Apple's X11 app on old versions
of Mac OS X, or even theoretically a server running on a different
computer. There are many other ports that we handle in this way. For
example phpmyadmin is used to administer a MySQL server, but it does not
depend on a mysql*-server port because it does not require the MySQL
server to be one provided by MacPorts or even one running on the same
machine.
There has been discussion elsewhere about wanting to make it easier for
users to use software that needs an X11 server. That's a great goal but
let's make sure we do it correctly and in a way that works for all ports,
not just individual ones. One proposal was to add a dependency on xorg-
server despite the fact that that's not strictly speaking required. If we
do that, we need to decide what port to do it in. Just gtk2 and gtk3
because they're central libraries? Does that cover all the bases? Or do we
do it in the port of every end user app that ultimately displays an X11
interface to the user? A different proposal is to add `notes` that tell
the user to install an X11 server. Again the question would be where to
add the notes. Whichever solution is used, we want to avoid telling the
user to install an X11 server (or doing it for them) when they really
don't need it, for example when they're using the quartz variant. If we're
printing notes, we might also want to avoid telling them to install it if
they've already installed it. And we want to avoid having to insert a lot
of code into a lot of portfiles. If it ends up being a lot of code to get
it right, maybe it should be in a portgroup that ports include.
--
Ticket URL: <https://trac.macports.org/ticket/60511#comment:18>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list