Prepared native gui installer
This commit is contained in:
@@ -6,5 +6,8 @@ prepare: ymsgui.py yms/*.py yms/ui/*.ui
|
|||||||
msgcat -o locale/combined.pot locale/program.pot locale/ui.pot
|
msgcat -o locale/combined.pot locale/program.pot locale/ui.pot
|
||||||
msgmerge -U locale/de.po locale/combined.pot
|
msgmerge -U locale/de.po locale/combined.pot
|
||||||
|
|
||||||
translation: locale/de.po
|
translation: locale/de/LC_MESSAGES/ymsgui.mo
|
||||||
|
|
||||||
|
locale/de/LC_MESSAGES/ymsgui.mo: locale/de.po
|
||||||
|
mkdir -p locale/de/LC_MESSAGES
|
||||||
msgfmt locale/de.po -o locale/de/LC_MESSAGES/ymsgui.mo
|
msgfmt locale/de.po -o locale/de/LC_MESSAGES/ymsgui.mo
|
||||||
|
|||||||
Executable
+94
@@ -0,0 +1,94 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
PREFIX="/usr/local"
|
||||||
|
LIBDIR="${PREFIX}/lib/yms"
|
||||||
|
SHAREDIR="${PREFIX}/share/yms"
|
||||||
|
BINDIR="${PREFIX}/bin"
|
||||||
|
DESKTOPDIR="${PREFIX}/share/applications"
|
||||||
|
ICONDIR="${PREFIX}/share/icons/hicolor"
|
||||||
|
DOCDIR="${PREFIX}/share/doc"
|
||||||
|
LOCALEDIR="${PREFIX}/share/locale"
|
||||||
|
|
||||||
|
SOURCEDIR=$(CDPATH= cd -- "$(dirname -- "$0")" && pwd)
|
||||||
|
|
||||||
|
echo "Installing YMS..."
|
||||||
|
echo "Source: ${SOURCEDIR}"
|
||||||
|
echo "Prefix: ${PREFIX}"
|
||||||
|
|
||||||
|
if [ "$(id -u)" -ne 0 ]; then
|
||||||
|
echo "Error: this script must be run as root."
|
||||||
|
echo "Please use:"
|
||||||
|
echo " sudo $0"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Installing Python application..."
|
||||||
|
|
||||||
|
# Main program
|
||||||
|
install -m 0644 \
|
||||||
|
"${SOURCEDIR}/ymsgui.py" \
|
||||||
|
"${LIBDIR}/ymsgui.py"
|
||||||
|
|
||||||
|
# Python package
|
||||||
|
cp -a "${SOURCEDIR}/yms/." "${LIBDIR}/yms/"
|
||||||
|
|
||||||
|
# The UI is installed separately below
|
||||||
|
rm -rf "${LIBDIR}/yms/ui"
|
||||||
|
|
||||||
|
# Static resources
|
||||||
|
install -m 0644 \
|
||||||
|
"${SOURCEDIR}/yms/ui/main.ui" \
|
||||||
|
"${SHAREDIR}/ui/main.ui"
|
||||||
|
cp -a \
|
||||||
|
"${SOURCEDIR}/webgui/shapes/." \
|
||||||
|
"${SHAREDIR}/shapes/"
|
||||||
|
|
||||||
|
# Documentation
|
||||||
|
echo "Installing documentation..."
|
||||||
|
install -d "${DOCDIR}"
|
||||||
|
install -m 0644 \
|
||||||
|
"${SOURCEDIR}/README" \
|
||||||
|
"${DOCDIR}/README"
|
||||||
|
install -m 0644 \
|
||||||
|
"${SOURCEDIR}/INSTALL" \
|
||||||
|
"${DOCDIR}/INSTALL"
|
||||||
|
install -m 0644 \
|
||||||
|
"${SOURCEDIR}/COPYING" \
|
||||||
|
"${DOCDIR}/COPYING"
|
||||||
|
|
||||||
|
echo "Installing translations..."
|
||||||
|
make translation
|
||||||
|
install -d "${LOCALEDIR}/de/LC_MESSAGES"
|
||||||
|
install -m 0644 \
|
||||||
|
"${SOURCEDIR}/locale/de/LC_MESSAGES/ymsgui.mo" \
|
||||||
|
"${LOCALEDIR}/de/LC_MESSAGES/ymsgui.mo"
|
||||||
|
|
||||||
|
echo "Installing application icons..."
|
||||||
|
install -d "${ICONDIR}/scalable/apps"
|
||||||
|
install -d "${ICONDIR}/48x48/apps"
|
||||||
|
install -d "${ICONDIR}/64x64/apps"
|
||||||
|
install -m 0644 \
|
||||||
|
"${SOURCEDIR}/yms.svg" \
|
||||||
|
"${ICONDIR}/yms.svg"
|
||||||
|
install -m 0644 \
|
||||||
|
"${SOURCEDIR}/yms-48.png" \
|
||||||
|
"${ICONDIR}/48x48/apps/yms.png"
|
||||||
|
install -m 0644 \
|
||||||
|
"${SOURCEDIR}/yms-64.png" \
|
||||||
|
"${ICONDIR}/64x64/apps/yms.png"
|
||||||
|
|
||||||
|
echo "Installing launcher..."
|
||||||
|
cat > "${BINDIR}/yms" <<EOF
|
||||||
|
#!/bin/sh
|
||||||
|
exec /usr/bin/python3 ${LIBDIR}/ymsgui.py "\$@"
|
||||||
|
EOF
|
||||||
|
chmod 0755 "${BINDIR}/yms"
|
||||||
|
|
||||||
|
echo "Installing desktop entry..."
|
||||||
|
install -m 0644 \
|
||||||
|
"${SOURCEDIR}/yms.desktop" \
|
||||||
|
"${DESKTOPDIR}/yms.desktop"
|
||||||
|
|
||||||
|
# TODO webgui? or separately?
|
||||||
|
|
||||||
|
echo "YMS has been installed successfully."
|
||||||
Reference in New Issue
Block a user