[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