Gnumeric on Mac OS X

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Gnumeric on Mac OS X

M-Rick-3
Hi

I succeeded in packaging Gnumeric as a Mac OS X native application.
It has been built upon MacPorts libraries. I compile it inside the /tmp exotic path, allowing me to make the executable running from any location. I rewrote totally the shell script launching the application.
It works roughly well and it has support for Pure and databases (Berkeley DB, MySQL, PostgreSQL, SQLCipher, SQLite, Web). It has Mac OS X native help support, but it is lacking of a native Mac OS X integration, such as global menus and shortcuts keys.
I am working thoroughly on it because it is a fast and powerful spreadsheet with great features all inside a simple GUI.
Despite those imperfections, I am certain some will be interested by it.
If you're interested in trying it out, or to improve it, the package can be downloaded there: 

Aymeric

Gnumeric 1.12.31 - About

Gnumeric 1.12.31 - Spreadsheet and chart

Gnumeric 1.12.31 - Databases support with GDA (Berkeley DB, MySQL, PostgreSQL, SQLCipher, SQLite, Web)

Gnumeric 1.12.31 - GDA's configuration window (Gnome Database Access)

Gnumeric 1.12.31 - Native Mac OS X Help integration




_______________________________________________
gnumeric-list mailing list
[hidden email]
https://mail.gnome.org/mailman/listinfo/gnumeric-list
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Gnumeric on Mac OS X

Adrian Custer
Hello,

Congratulations on all the hard work!


It would be great to have a 'native' Gnumeric on mac OS X, even though
it exists on mac as non-native. (I use the homebrew version.)

      Warning: Merely attempting for the fun of it, I do *not* have
      any of the macports dependencies you mention.
With no surprise, the executable fails to load here. Launching from the
command-line, I get:

galet:~ acuster$
/Users/acuster/Downloads/Gnumeric.app/Contents/MacOS/gnumeric ; exit;
dyld: Library not loaded: /tmp/skl/Gnumeric/lib/libz.1.dylib
   Referenced from: /tmp/skl/Gnumeric/lib/libgoffice-0.10.10.dylib
   Reason: no suitable image found.  Did find:
        /tmp/skl/Gnumeric/lib/libz.1.dylib: file too short
        /Users/acuster/Downloads/Gnumeric.app/Contents/Resources/lib/libz.1.dylib: file too short
/Users/acuster/Downloads/Gnumeric.app/Contents/Resources/bin/gnumeric:
line 1:   718 Trace/BPT trap: 5       gnumeric-1.12.31
logout

Not sure that helps, since it seems merely to confirm that I do not have
the right dependencies on the path you constructed: /tmp/skl/...

I'll try playing around with your script when I have more time.

cheers,
   ~adrian


On 8/17/16 6:05 PM, M-Rick wrote:

> Hi
>
> I succeeded in packaging Gnumeric as a Mac OS X native application.
> It has been built upon MacPorts libraries. I compile it inside the /tmp
> exotic path, allowing me to make the executable running from any
> location. I rewrote totally the shell script launching the application.
> It works roughly well and it has support for Pure and databases
> (Berkeley DB, MySQL, PostgreSQL, SQLCipher, SQLite, Web). It has Mac OS
> X native help support, but it is lacking of a native Mac OS X
> integration, such as global menus and shortcuts keys.
> I am working thoroughly on it because it is a fast and powerful
> spreadsheet with great features all inside a simple GUI.
> Despite those imperfections, I am certain some will be interested by it.
> If you're interested in trying it out, or to improve it, the package can
> be downloaded there:
> https://www.dropbox.com/s/mwflru54i7tdov7/Gnumeric-1.12.31.7z
>
> Aymeric
>
> *Gnumeric 1.12.31 - About*
> http://i430.photobucket.com/albums/qq28/M-Rick/Capture%20drsquoeacutecran%202016-08-12%20agrave%2013.39.07_zpskm8awfqv.png
>
> *Gnumeric 1.12.31 - Spreadsheet and chart*
> http://i430.photobucket.com/albums/qq28/M-Rick/Capture%20drsquoeacutecran%202016-08-12%20agrave%2013.38.55_zps1deprli3.png
>
> *Gnumeric 1.12.31 - Databases support with GDA (Berkeley DB, MySQL,
> PostgreSQL, SQLCipher, SQLite, Web)*
> http://i430.photobucket.com/albums/qq28/M-Rick/Capture%20drsquoeacutecran%202016-08-14%20agrave%2016.07.37_zpsn8hojdih.png
>
> *Gnumeric 1.12.31 - GDA's configuration window (Gnome Database Access)*
> http://i430.photobucket.com/albums/qq28/M-Rick/Capture%20drsquoeacutecran%202016-08-12%20agrave%2013.39.18_zpsu1p8fezq.png
>
> *Gnumeric 1.12.31 - Native Mac OS X Help integration*
> http://i430.photobucket.com/albums/qq28/M-Rick/Capture%20drsquoeacutecran%202016-08-14%20agrave%2010.05.59_zpstwrd0qwm.png
>
>
>
>
>
> _______________________________________________
> gnumeric-list mailing list
> [hidden email]
> https://mail.gnome.org/mailman/listinfo/gnumeric-list
>

_______________________________________________
gnumeric-list mailing list
[hidden email]
https://mail.gnome.org/mailman/listinfo/gnumeric-list
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Gnumeric on Mac OS X

M-Rick
Hi Adrian

That's strange cos' it works well for me.
The script creates a link in /tmp/skl/Gnumeric at launch and the remove it. Making Gnumeric launchable from everywhere.

I copied de application on a USB key and renamed it to Gnumeric-app.app and then launched it directly from the USB key on another computer, it did work.

I compiled it with Yosemite. Maybe that's the reason.

#!/bin/sh
#
# (c) 2008, Simone Karin Lehmann, simone at lisanet dot de
# GPL version 2 or later
# script 1.3 Leo
# adapted for Gnumeric by Aymeric GILLAIZEAU m.rick.mac at gmail dot com

set -e

name=$(basename "$0")
DIR=`dirname "$0"`
cd "$DIR/../.."
APPDIR=`pwd`
cd - > /dev/null
# edit the next line to match version file
VERSION=1.12.31-20160630
LNDIR=/tmp/skl
bundle_res="$APPDIR/Contents/Resources"

rm -rf "$LNDIR/Gnumeric" || true
mkdir -p /tmp/skl
chmod a+w /tmp/skl
ln -s "$bundle_res" "$LNDIR/Gnumeric"


bundle=$(cd "$DIR/../../" && pwd)

bundle_lib="$bundle_res/lib"
bundle_bin="$bundle_res/bin"
bundle_data="$bundle_res/share"
bundle_etc="$bundle_res/etc"


# Setting application directories
bundle_appsup="$HOME/Library/Application Support/Gnumeric"
if [ ! -d "/$bundle_appsup" ]
then
    mkdir -p "$bundle_appsup"
fi
# Setting cache files
cp "$bundle_res/etc/fonts/fonts.conf" "$bundle_appsup"

# Setting caches directories
bundle_temp="$HOME/Library/Caches/org.gnome.gnumeric"
if [ ! -d "/$bundle_temp" ]
then
    mkdir "$bundle_temp"
fi
# Fontconfig cache directory
fontconfig_cache="$HOME/Library/Caches/org.gnome.gnumeric/fontconfig"
if [ ! -d "/$fontconfig_cache" ]
then
    mkdir "$fontconfig_cache"
fi
if [ ! -d "/$fontconfig_cache" ]
then
    ln -s "$fontconfig_cache $HOME/.cache/fontconfig"
fi
# Setting cache files
if [ ! -d "/$fontconfig_cache" ]
then
    cp "$bundle_lib/gdk-pixbuf-2.0/2.10.0/loaders.cache" "$bundle_temp"
fi


# Setup charset
if test -f "$bundle_lib/charset.alias"; then
        export CHARSETALIASDIR="$bundle_lib"
fi


# Set up Python path variable
export PYTHONPATH="$bundle_lib/python2.7/site-packages${PYTHONPATH:+:$PYTHONPATH}"


# Set up general path variables
#export DYLD_LIBRARY_PATH="$bundle_lib:$DYLD_LIBRARY_PATH"
export DYLD_FALLBACK_LIBRARY_PATH="$bundle_res/lib:$DYLD_FALLBACK_LIBRARY_PATH"
export LD_LIBRARY_PATH="$bundle_lib:$LD_LIBRARY_PATH:$LD_LIBRARY_PATH"
#export PANGO_RC_FILE="$bundle_etc/pango/pangorc"
export PANGO_LIBDIR="$bundle_lib"
export PANGO_SYSCONFDIR="$bundle_etc"
export GTK_PATH="$bundle_res"
export GTK_EXE_PREFIX="$bundle_res"
export GTK_DATA_PREFIX="$bundle_res"

export GDK_PIXBUF_MODULEDIR"=$bundle_lib/gdk-pixbuf-2.0/2.10.0/loaders/"
#export GDK_PIXBUF_MODULE_FILE="$bundle_lib/loaders.cache"

export XDG_CONFIG_DIRS="$bundle_etc:$XDG_CONFIG_DIRS"
export XDG_DATA_DIRS="$bundle_data:$XDG_DATA_DIRS"

export DBUS_REPLACE_INSTALL_PREFIX="$bundle_res"


# Specify fonconfig configuration file
export FONTCONFIG_PATH="$bundle_res/etc/fonts"
#export FONTCONFIG_FILE="$bundle_res/etc/fonts/fonts.conf"
export FONTCONFIG_FILE="$bundle_appsup/fonts.conf"


# Set up path variable
export PATH="$bundle_bin:$bundle_res/sbin:$bundle/MacOS:/usr/bin:$PATH"
export PATH


# Strip out the argument added by the OS.
if [ x`echo "x$1" | sed -e "s/^x-psn_.*//"` == x ]; then
        shift 1
fi


# Launch dbus if needed
#dbusenv="$TMPDIR/gedit-$USER.dbus"
#
#if [ -f "$dbusenv" ]; then
# source "$dbusenv"
#fi
#
#if [ -z "$DBUS_SESSION_BUS_PID" ] || ! ps -p "$DBUS_SESSION_BUS_PID" >/dev/null; then
# "$bundle_bin/dbus-launch" --config-file "$bundle_etc/dbus-1/session.conf" > #"$dbusenv"
#
# source "$dbusenv"
#fi

#export DBUS_SESSION_BUS_PID
#export DBUS_SESSION_BUS_ADDRESS


# Set locales
LC_NUMERIC=$LANG
LC_ALL=$LANG
LANGUAGE=$LANG
export LANG LC_NUMERIC LC_ALL LANGUAGE


cd ~/ > /dev/null
$EXEC "$bundle_bin/gnumeric" "$@" $EXTRA_ARGS

rm -f "$LNDIR/Gnumeric" || true

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Gnumeric on Mac OS X

M-Rick
In reply to this post by M-Rick-3
I completely rewrote the shell script launching the application enabling DBus support and correcting some errors.

https://www.dropbox.com/s/hi088mmhks9kmy7/gnumeric.sh
Loading...