gnuradio-for-mac-without-macports icon indicating copy to clipboard operation
gnuradio-for-mac-without-macports copied to clipboard

GTK environment variables

Open dholl opened this issue 7 years ago • 3 comments

To support .app relocation, GTK will need a few more environment variables in grenv.sh

Check out: https://developer.gnome.org/gtk2/stable/gtk-running.html

For example, see inside of GNURadio.app/Contents/MacOS/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache

Fortunately, both GIMP and Inkscape appear to use pygtk.

In Inkscape's case, they somehow got their loaders.cache Inkscape.app/Contents/Resources/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache to use references like @loader_path/../lib/gdk-pixbuf-2.0/2.10.0/loaders/io-wmf.so

:)

I'll take a stab at this too -- perhaps just after attacking #41

dholl avatar Jun 06 '17 23:06 dholl

To document my quest, this piece may be needed in the final solution:

zero(ttys004):...out-macports> git diff
diff --git a/build.sh b/build.sh
index 137ccb3..ab32b7c 100644
--- a/build.sh
+++ b/build.sh
@@ -1894,6 +1894,12 @@ GRPP=\${GRSHARE}/python/site-packages
 PYTHONPATH=\${GRPP}:\${PYTHONPATH}
 PATH=\${INSTALL_DIR}/usr/bin:/opt/X11/bin:\${PATH}
 
+# from "man gdk-pixbuf-query-loaders" -->
+GDK_PIXBUF_MODULE_FILE="\${INSTALL_DIR}/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache"
+GDK_PIXBUF_MODULEDIR="\${INSTALL_DIR}/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders"
+export GDK_PIXBUF_MODULE_FILE
+export GDK_PIXBUF_MODULEDIR
+
 EOF
 
   if [ $? -ne 0 ]; then
zero(ttys004):...out-macports>

dholl avatar Jun 07 '17 00:06 dholl

@cfriedt A quick brain dump: Here's a summary of web pages highlighting the variety of environment variables to attack:

  • https://developer.gnome.org/gtk2/stable/gtk-running.html
  • https://wiki.gnome.org/Projects/GTK%2B/OSX/Bundling
  • http://ascend4.org/Porting_to_Mac/gtk-mac-bundler
  • Some of Inkscape's antics: https://fossies.org/linux/inkscape/packaging/macosx/osx-app.sh

I don't know if we have to include the exact mechanisms highlighted above. I was more interested in these pages to get a sense for just a list of environment variables and potential approaches we might consider.

dholl avatar Jun 11 '17 19:06 dholl

@dholl - do you think you might be able to come up with a pull-request for this?

cfriedt avatar Jul 15 '17 23:07 cfriedt