[MacPorts] #39782: Add keyword to list compatible graphical environments (X11, Quartz, Wayland)?
MacPorts
noreply at macports.org
Wed Jul 17 16:44:21 PDT 2013
#39782: Add keyword to list compatible graphical environments (X11, Quartz,
Wayland)?
--------------------------+--------------------------------
Reporter: c.herbig@… | Owner: macports-tickets@…
Type: enhancement | Status: new
Priority: Normal | Milestone:
Component: base | Version:
Resolution: | Keywords:
Port: |
--------------------------+--------------------------------
Comment (by c.herbig@…):
Let's back up a bit. Here is the problem (though a small one) the way I
see it, with gnumeric as an example:
{{{
port info gnumeric
gnumeric @1.10.17, Revision 4 (gnome, math)
Variants: python25, python26, [+]python27, universal
Description: A spreadsheet with GNOME support.
Homepage: http://projects.gnome.org/gnumeric/
Extract Dependencies: xz
Build Dependencies: gnome-doc-utils, intltool, pkgconfig
Library Dependencies: desktop-file-utils, rarian, goffice08, libglade2,
libpng,
py27-gobject
Runtime Dependencies: yelp
Platforms: darwin
License: GPL-2
Maintainers: nomaintainer at macports.org
}}}
There is no indication at all that gnumeric is compatible with a +quartz
environment, unless you already happened to know that it is. This is
because the gtk dependency is what handles all of the +quartz stuff.
However, some sort of keyword, such as graphics_env, could be appended to
the portfile to proclaim this to the user, so that port info would give
this:
{{{
gnumeric @1.10.17, Revision 4 (gnome, math)
Variants: python25, python26, [+]python27, universal
Graphics_env: X11, Quartz
Description: A spreadsheet with GNOME support.
Homepage: http://projects.gnome.org/gnumeric/
Extract Dependencies: xz
Build Dependencies: gnome-doc-utils, intltool, pkgconfig
Library Dependencies: desktop-file-utils, rarian, goffice08, libglade2,
libpng,
py27-gobject
Runtime Dependencies: yelp
Platforms: darwin
License: GPL-2
Maintainers: nomaintainer at macports.org
}}}
Thus the user would know that it is in fact an option to use port install
gnumeric +quartz. In the future, once Wayland is more common, it could
also be proclaimed in the portfile. Currently though, the only way to
display a port's compatibility with +quartz is to either add it to the
long_description or to create a variant that does nothing, which as
mentioned above is rather silly.
Now, a solution that won't work: recursively append the variants of
dependentcies to the list of variants on the port file. That is to say,
it is not ok to look at gtk and see that it has a +quartz and then simply
append it to the description of gnumeric. Why? There are some ports,
gnome-chemistry-utils for example, that compile fine with X11, yet will
fail with +quartz, even though gtk was compiled +quartz. This is because
some ports have direct X11 calls and includes in them, <gdk/gdkx.h> seems
to be a common culprit. So, you can't just assume that because the deps
work with +quartz that the final program will. This can be a rude
surprise to someone who has been waiting hours for their requested ports
to compile, and is suddenly left without.
The reason I am so interested in this is because I feel very strongly that
+quartz is a great feature for the end user, and is a great feature that
sets MacPorts apart from Fink (unless they have added this in the last
year) and Homebrew. So, I'm not saying that my solution is the only way
to do it and that it has to be implemented by next tuesday, but that I
would like to encourage thought and discussion to be given in how to
improve the visibility of the +quartz option.
--
Ticket URL: <https://trac.macports.org/ticket/39782#comment:6>
MacPorts <http://www.macports.org/>
Ports system for OS X
More information about the macports-tickets
mailing list