make xorg-server a dependency of x11 ports?

Christopher Jones jonesc at hep.phy.cam.ac.uk
Wed May 20 13:33:09 UTC 2020


Hi,

Personally, I would say yes, this makes sense given the current state of XQuartz.app

cheers Chris

> On 20 May 2020, at 2:30 pm, Ken Cunningham <ken.cunningham.webuse at gmail.com> wrote:
> 
> Should xorg-server should be made a dependency of some key x11 component, so that when people install an x11 application, xorg-server installs and it actually works for them “out-of-the-box”.
> 
> For example, CherryTree is apparently a very popular gtk application, and there was some pressure for the past few years for a Mac version. I just stumbled across it recently — took about 15 minutes to write the Portfile (and a couple of minor edits after to get it completely right :>).
> 
> But when people try "sudo port -v install cherrytree” it delivers a broken installation due to no xorg-server (see below).
> 
> It’s one more step to go back and explain how to install the server, but really, as XQuartz.app is really out of date now, and MacOS no longer comes with any X11 window server, I think we could just make our xorg-server a dependency of some key part and have it installed automatically.
> 
> Otherwise, it seems like just one more needless headache for people that they should not have to worry about, and we’re all about making this work “out of the box” for people, right? — or we should be, if we want to recruit keep users.
> 
> Ken
> 
> — example of cryptic error without xorg-server installed, gives people no clue what is wrong.
> 
> 
> =========
> So I've tried to run this using port myself and get the following error:
> 
> phillips321 at Mac13:~$ cherrytree
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/gtk-2.0/gtk/__init__.py:57: GtkWarning: could not open display
>   warnings.warn(str(e), _gtk.Warning)
> dbus[77158]: Dynamic session lookup supported but failed: launchd did not provide a socket path, verify that org.freedesktop.dbus-session.plist is loaded!
> dbus fail, maybe a firewall problem, centralized instances disabled
> libc.prctl not available, the process name will be python and not cherrytree
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:69: Warning: invalid (NULL) pointer instance
>   self.window = gtk.Window()
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:69: Warning: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
>   self.window = gtk.Window()
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/clipboard.py:93: GtkWarning: gtk_clipboard_get_for_display: assertion 'display != NULL' failed
>   self.clipboard = gtk.clipboard_get()
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:114: Warning: invalid (NULL) pointer instance
>   vbox_main.pack_start(self.ui.get_widget("/MenuBar"), False, False)
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:114: Warning: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
>   vbox_main.pack_start(self.ui.get_widget("/MenuBar"), False, False)
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:114: GtkWarning: gtk_settings_get_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed
>   vbox_main.pack_start(self.ui.get_widget("/MenuBar"), False, False)
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:114: Warning: g_object_get: assertion 'G_IS_OBJECT (object)' failed
>   vbox_main.pack_start(self.ui.get_widget("/MenuBar"), False, False)
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:114: Warning: value "TRUE" of type 'gboolean' is invalid or out of range for property 'visible' of type 'gboolean'
>   vbox_main.pack_start(self.ui.get_widget("/MenuBar"), False, False)
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:114: GtkWarning: gdk_screen_get_display: assertion 'GDK_IS_SCREEN (screen)' failed
>   vbox_main.pack_start(self.ui.get_widget("/MenuBar"), False, False)
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:114: Warning: g_object_ref: assertion 'G_IS_OBJECT (object)' failed
>   vbox_main.pack_start(self.ui.get_widget("/MenuBar"), False, False)
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:119: GtkWarning: gtk_settings_get_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed
>   self.scrolledwindow_tree = gtk.ScrolledWindow()
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:121: GtkWarning: gtk_settings_get_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed
>   self.scrolledwindow_text = gtk.ScrolledWindow()
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:173: GtkWarning: gtk_settings_get_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed
>   self.treeview.append_column(self.column)
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:173: Warning: g_object_get: assertion 'G_IS_OBJECT (object)' failed
>   self.treeview.append_column(self.column)
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:1307: Warning: invalid (NULL) pointer instance
>   self.node_menu_tree = gtk.Menu()
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:1307: Warning: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
>   self.node_menu_tree = gtk.Menu()
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:1272: GtkWarning: gtk_settings_get_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed
>   menu_item = gtk.ImageMenuItem(attributes[1])
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:1272: Warning: g_object_get: assertion 'G_IS_OBJECT (object)' failed
>   menu_item = gtk.ImageMenuItem(attributes[1])
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:1272: Warning: value "TRUE" of type 'gboolean' is invalid or out of range for property 'visible' of type 'gboolean'
>   menu_item = gtk.ImageMenuItem(attributes[1])
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:1274: GtkWarning: gtk_settings_get_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed
>   menu_item.set_image(gtk.image_new_from_stock(attributes[0], gtk.ICON_SIZE_MENU))
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:1274: Warning: g_object_get: assertion 'G_IS_OBJECT (object)' failed
>   menu_item.set_image(gtk.image_new_from_stock(attributes[0], gtk.ICON_SIZE_MENU))
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:1274: Warning: value "TRUE" of type 'gboolean' is invalid or out of range for property 'visible' of type 'gboolean'
>   menu_item.set_image(gtk.image_new_from_stock(attributes[0], gtk.ICON_SIZE_MENU))
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:1263: Warning: invalid (NULL) pointer instance
>   curr_submenu = gtk.Menu()
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:1263: Warning: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
>   curr_submenu = gtk.Menu()
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:1264: GtkWarning: gtk_settings_get_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed
>   menu_item = gtk.ImageMenuItem(attributes[1])
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:1264: Warning: g_object_get: assertion 'G_IS_OBJECT (object)' failed
>   menu_item = gtk.ImageMenuItem(attributes[1])
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:1264: Warning: value "TRUE" of type 'gboolean' is invalid or out of range for property 'visible' of type 'gboolean'
>   menu_item = gtk.ImageMenuItem(attributes[1])
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:1265: GtkWarning: gtk_settings_get_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed
>   menu_item.set_image(gtk.image_new_from_stock(attributes[2], gtk.ICON_SIZE_MENU))
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:1265: Warning: g_object_get: assertion 'G_IS_OBJECT (object)' failed
>   menu_item.set_image(gtk.image_new_from_stock(attributes[2], gtk.ICON_SIZE_MENU))
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:1265: Warning: value "TRUE" of type 'gboolean' is invalid or out of range for property 'visible' of type 'gboolean'
>   menu_item.set_image(gtk.image_new_from_stock(attributes[2], gtk.ICON_SIZE_MENU))
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:212: GtkWarning: gdk_pango_context_get_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed
>   self.scrolledwindow_text.add(self.sourceview)
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:212: PangoWarning: pango_context_set_font_description: assertion 'context != NULL' failed
>   self.scrolledwindow_text.add(self.sourceview)
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:212: PangoWarning: pango_context_set_base_dir: assertion 'context != NULL' failed
>   self.scrolledwindow_text.add(self.sourceview)
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:212: PangoWarning: pango_context_set_language: assertion 'context != NULL' failed
>   self.scrolledwindow_text.add(self.sourceview)
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:212: Warning: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
>   self.scrolledwindow_text.add(self.sourceview)
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:212: GtkWarning: gtk_settings_get_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed
>   self.scrolledwindow_text.add(self.sourceview)
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:212: GtkWarning: gdk_screen_get_display: assertion 'GDK_IS_SCREEN (screen)' failed
>   self.scrolledwindow_text.add(self.sourceview)
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:212: GtkWarning: gdk_keymap_get_for_display: assertion 'GDK_IS_DISPLAY (display)' failed
>   self.scrolledwindow_text.add(self.sourceview)
> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/cherrytree/modules/core.py:212: Warning: g_object_get: assertion 'G_IS_OBJECT (object)' failed
>   self.scrolledwindow_text.add(self.sourceview)
> Segmentation fault: 11
> phillips321 at Mac13:~$
> Any idea what could be causing it?
> 
> phillips321 at Mac13:~$ which python
> /opt/local/bin/python
> phillips321 at Mac13:~$ which cherrytree
> /opt/local/bin/cherrytree
> phillips321 at Mac13:~$ python -V
> Python 2.7.18
> phillips321 at Mac13:~$ echo $PATH
> /opt/local/bin:/opt/local/sbin:/usr/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:'
> phillips321 at Mac13:~$
> 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macports.org/pipermail/macports-dev/attachments/20200520/b39b7d95/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 1930 bytes
Desc: not available
URL: <http://lists.macports.org/pipermail/macports-dev/attachments/20200520/b39b7d95/attachment-0001.bin>


More information about the macports-dev mailing list