script revision a2aa00dbaf27e2a3955641a0dc01acf896497640
#!/bin/sh
#
# Author: Aaron Voisine <aaron@voisine.org>
# Inkscape Modifications: Michael Wybrow <mjwybrow@users.sourceforge.net>
CWD="`dirname \"$0\"`"
# System version: 3 for Panther, 4 for Tiger, 5 for Leopard
VERSION=`/usr/bin/sw_vers | grep ProductVersion | cut -f2 -d'.'`
# FIXME apparently this removes the xterm that starts with X from xinitrc but when is it really used? Should we modify the .xinitrc of the user without warning?
ps -wx -ocommand | grep -e '[X]11' > /dev/null
if [ "$?" != "0" -a ! -f ~/.xinitrc ]; then
echo "rm -f ~/.xinitrc" > ~/.xinitrc
sed 's/xterm/# xterm/' /usr/X11R6/lib/X11/xinit/xinitrc >> ~/.xinitrc
fi
# For Panther and Tiger, start X11
if [[ $VERSION -le 4 ]]; then
# Start X11 and get DISPLAY
cp -f "$CWD/bin/getdisplay.sh" /tmp/
rm -f /tmp/display.$UID
open-x11 /tmp/getdisplay.sh || \
open -a XDarwin /tmp/getdisplay.sh || \
echo ":0" > /tmp/display.$UID
while [ "$?" == "0" -a ! -f /tmp/display.$UID ]; do
sleep 1
done
export DISPLAY="`cat /tmp/display.$UID`"
ps -wx -ocommand | grep -e '[X]11' > /dev/null || exit 11
fi
# In Leopard, X11 should start on itself
# Warn the user about time-consuming generation of fontconfig caches.
test -f ~/.inkscape/.fccache-new || exit 12
BASE="`echo "$0" | sed -e 's/\/Contents\/Resources\/script/\//'`"
cd "$BASE"
exec "$CWD/bin/inkscape" "$@"
# TODO examine wether it would be wisest to move the code from inkscape shell script and getdisplay.sh to here and only keep the real binary in bin. This may make things easier on Leopard and may also help using Inkscape on the command line