You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

78 lines
2.1 KiB

#!/bin/bash
## Mac Setup script
## 1. do the build, will not be called from this script
## 2. call this script
## 3. an .app will be packed
if [ $# -eq 0 ]
then
echo 'Please provide the path of your gtk installation'
exit 1
fi
# go to script directory
cd "${0%/*}"
# delete old app, if there
echo "clean old app"
export PATH="$HOME/.local/bin:$1/inst/bin:$PATH"
rm -rf ./Xournal++.app
rm ./Xournal++.zip
echo "prepare gtk-mac-bundler"
if [ ! -d "gtk-mac-bundler" ]; then
git clone https://gitlab.gnome.org/GNOME/gtk-mac-bundler.git
cd gtk-mac-bundler
else
cd gtk-mac-bundler
git pull
fi
make install
cd ..
echo "create package"
export GTKDIR="$1/inst"
gtk-mac-bundler xournalpp.bundle
mkdir -p Xournal++.app/Contents/Resources
export bundle_etc="./Xournal++.app/Contents/Resources/etc"
export GTK_IM_MODULE_FILE="$bundle_etc/gtk-2.0/gtk.immodules"
export GDK_PIXBUF_MODULE_FILE="$bundle_etc/gtk-2.0/gdk-pixbuf.loaders"
mkdir -p ./Xournal++.app/Contents/Resources/etc/gtk-2.0/
gdk-pixbuf-query-loaders > ./Xournal++.app/Contents/Resources/etc/gtk-2.0/gdk-pixbuf.loaders
sed -i -e "s:$1/inst/:@executable_path/../Resources/:g" ./Xournal++.app/Contents/Resources/etc/gtk-2.0/gdk-pixbuf.loaders
echo "Copy GTK Schema"
mkdir -p ./Xournal++.app/Contents/Resources/share/glib-2.0/schemas
cp -rp $1/inst/share/glib-2.0/schemas ./Xournal++.app/Contents/Resources/share/glib-2.0/
echo "Copy UI"
cp -rp ../ui ./Xournal++.app/Contents/Resources/
sed -i -e 's/GDK_CONTROL_MASK/GDK_META_MASK/g' ./Xournal++.app/Contents/Resources/ui/main.glade
for locale in */ ; do
if [ -f "$1/inst/share/locale/$locale/LC_MESSAGES/xournalpp.mo" ]
then
echo "Copy locale $locale"
mkdir -p setup/share/locale/$locale/LC_MESSAGES
# Xournal Translation
cp ../build/po/$locale.gmo ./Xournal++.app/Contents/Resources/share/locale/$locale/LC_MESSAGES/xournalpp.mo
# Mac Integration
cp $1/inst/share/locale/zh_CN/LC_MESSAGES/gtk-mac-integration.mo ./Xournal++.app/Contents/Resources/share/locale/$locale/LC_MESSAGES/gtk-mac-integration.mo
fi
done
echo "Create zip"
zip -r Xournal++.zip Xournal++.app
echo "finished"