Blame docker-builder-data/build/script/packet/opentoonz-master.files/launch-opentoonz.sh

Ivan Mahonin e14835
#!/bin/sh
Ivan Mahonin e14835
Ivan Mahonin e7b20d
OLDDIR=`pwd`
Ivan Mahonin b0fa99
SCRIPT_DIR=$(cd `dirname "$0"`; pwd)
Ivan Mahonin e7b20d
cd "$OLDDIR"
Ivan Mahonin e14835
BASE_DIR=`dirname "$SCRIPT_DIR"`
Ivan Mahonin e14835
Ivan Mahonin abfde6
export LD_LIBRARY_PATH="$BASE_DIR/lib:$BASE_DIR/lib/opentoonz:$BASE_DIR/lib64:$LD_LIBRARY_PATH"
Ivan Mahonin caca5f
export XCURSOR_PATH="$BASE_DIR/share/icons:$XCURSOR_PATH:/usr/local/share/icons:/usr/share/icons"
Ivan Mahonin caca5f
export QT_XKB_CONFIG_ROOT="$QT_XKB_CONFIG_ROOT:/usr/local/share/X11/xkb:/usr/share/X11/xkb"
Ivan Mahonin e14835
Ivan Mahonin f49009
# fix stuff
Ivan Mahonin f49009
CONFIG_DIR="$HOME/.config/OpenToonz"
Ivan Mahonin f49009
if [ ! -d "$CONFIG_DIR" ]; then
Ivan Mahonin f49009
    echo "fix config: copy stuff".
Ivan Mahonin f49009
    mkdir -p "$CONFIG_DIR"
Ivan Mahonin f49009
    cp -r "$BASE_DIR/share/opentoonz/stuff" "$CONFIG_DIR"
Ivan Mahonin f49009
Ivan Mahonin f49009
    echo "fix config: create SystemVar.ini" 
Ivan Mahonin f49009
    cat << EOF > "$CONFIG_DIR/SystemVar.ini"
Ivan Mahonin f49009
[General]
Ivan Mahonin f49009
OPENTOONZROOT="$HOME/.config/OpenToonz/stuff"
Ivan Mahonin f49009
OpenToonzPROFILES="$HOME/.config/OpenToonz/stuff/profiles"
Ivan Mahonin f49009
TOONZCACHEROOT="$HOME/.config/OpenToonz/stuff/cache"
Ivan Mahonin f49009
TOONZCONFIG="$HOME/.config/OpenToonz/stuff/config"
Ivan Mahonin f49009
TOONZFXPRESETS="$HOME/.config/OpenToonz/stuff/fxs"
Ivan Mahonin f49009
TOONZLIBRARY="$HOME/.config/OpenToonz/stuff/library"
Ivan Mahonin f49009
TOONZPROFILES="$HOME/.config/OpenToonz/stuff/profiles"
Ivan Mahonin f49009
TOONZPROJECTS="$HOME/.config/OpenToonz/stuff/projects"
Ivan Mahonin f49009
TOONZROOT="$HOME/.config/OpenToonz/stuff"
Ivan Mahonin f49009
TOONZSTUDIOPALETTE="$HOME/.config/OpenToonz/stuff/projects/studiopalette"
Ivan Mahonin f49009
EOF
Ivan Mahonin f49009
Ivan Mahonin f49009
else
Ivan Mahonin f49009
    # fix paths
Ivan Mahonin f49009
    INI="$HOME/.config/OpenToonz/SystemVar.ini"
Ivan Mahonin f49009
    if [ -e "$INI" ]; then
Ivan Mahonin f49009
        [ -e "$INI.bak" ] || cp "$INI" "$INI.bak"
Ivan Mahonin f49009
Ivan Mahonin f49009
        # fix path to fxs
Ivan Mahonin f49009
        FX_PATH_OLD="$CONFIG_DIR/stuff/projects/fxs"
Ivan Mahonin f49009
        FX_PATH_NEW="$CONFIG_DIR/stuff/fxs"
Ivan Mahonin f49009
        FX_LINE_OLD="TOONZFXPRESETS=\"$FX_PATH_OLD\""
Ivan Mahonin f49009
        FX_LINE_NEW="TOONZFXPRESETS=\"$FX_PATH_NEW\""
Ivan Mahonin f49009
        if [ ! -z "`grep "$FX_LINE_OLD" "$INI"`" ] \
Ivan Mahonin f49009
         && ( [ ! -d "$FX_PATH_OLD" ] || [ -z "`ls -A "$FX_PATH_OLD"`" ] ); then
Ivan Mahonin f49009
            echo "fix config: fix path to fxs" 
Ivan Mahonin f49009
            cat "$INI" \
Ivan Mahonin f49009
              | sed "s|$FX_LINE_OLD|$FX_LINE_NEW|g" \
Ivan Mahonin f49009
              > "$INI.out"
Ivan Mahonin f49009
            cp "$INI.out" "$INI"
Ivan Mahonin f49009
            rm -f "$INI.out"
Ivan Mahonin f49009
        fi
Ivan Mahonin f49009
Ivan Mahonin f49009
        # fix path to library
Ivan Mahonin f49009
        LIBRARY_PATH_OLD="$CONFIG_DIR/stuff/projects/library"
Ivan Mahonin f49009
        LIBRARY_PATH_NEW="$CONFIG_DIR/stuff/library"
Ivan Mahonin f49009
        LIBRARY_LINE_OLD="TOONZLIBRARY=\"$LIBRARY_PATH_OLD\""
Ivan Mahonin f49009
        LIBRARY_LINE_NEW="TOONZLIBRARY=\"$LIBRARY_PATH_NEW\""
Ivan Mahonin f49009
        if [ ! -z "`grep "$LIBRARY_LINE_OLD" "$INI"`" ] \
Ivan Mahonin f49009
         && ( [ ! -d "$LIBRARY_PATH_OLD" ] || [ -z "`ls -A "$LIBRARY_PATH_OLD"`" ] ); then
Ivan Mahonin f49009
            echo "fix config: fix path to library" 
Ivan Mahonin f49009
            cat "$INI" \
Ivan Mahonin f49009
              | sed "s|$LIBRARY_LINE_OLD|$LIBRARY_LINE_NEW|g" \
Ivan Mahonin f49009
              > "$INI.out"
Ivan Mahonin f49009
            cp "$INI.out" "$INI"
Ivan Mahonin f49009
            rm -f "$INI.out"
Ivan Mahonin f49009
        fi
Ivan Mahonin f49009
    fi
Ivan Mahonin d3f373
Ivan Mahonin 3de954
    # update library
Ivan Mahonin 3de954
    echo "update stuff" 
Ivan Mahonin 3de954
    mkdir -p "$CONFIG_DIR/stuff/config"
Ivan Mahonin 3de954
    mkdir -p "$CONFIG_DIR/stuff/profiles"
Ivan Mahonin 3de954
    cp -ur "$BASE_DIR/share/opentoonz/stuff/library" "$CONFIG_DIR/stuff/" 
Ivan Mahonin d3f373
    cp -ur "$BASE_DIR/share/opentoonz/stuff/config/qss" "$CONFIG_DIR/stuff/config/" 
Ivan Mahonin d3f373
    cp -ur "$BASE_DIR/share/opentoonz/stuff/config/loc" "$CONFIG_DIR/stuff/config/" 
Ivan Mahonin 3de954
    cp -ur "$BASE_DIR/share/opentoonz/stuff/profiles/layouts" "$CONFIG_DIR/stuff/profiles/" 
Ivan Mahonin 3de954
    cp -ur "$BASE_DIR/share/opentoonz/stuff/config/current.txt" "$CONFIG_DIR/stuff/config/" 
Ivan Mahonin f49009
fi
Ivan Mahonin f49009
Ivan Mahonin e14835
cd "$BASE_DIR/bin"
Ivan Mahonin abfde6
if ! ./opentoonz "$@"; then
Ivan Mahonin abfde6
	cd "$OLDDIR"
Ivan Mahonin abfde6
	exit 1
Ivan Mahonin abfde6
fi
Ivan Mahonin e14835
cd "$OLDDIR"