Files
YMS/install.sh
T

117 lines
2.7 KiB
Bash
Executable File

#!/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/yms"
LOCALEDIR="${PREFIX}/share/locale"
SOURCEDIR=$(CDPATH= cd -- "$(dirname -- "$0")" && pwd)
if [ "$1" = "uninstall" ]; then
echo "Uninstalling YMS..."
rm -rf "${LIBDIR}"
rm -rf "${SHAREDIR}"
rm -f "${BINDIR}/yms"
rm -f "${DESKTOPDIR}/yms.desktop"
rm -rf "${DOCDIR}"
rm -f "${LOCALEDIR}/de/LC_MESSAGES/ymsgui.mo"
rm -f "${ICONDIR}/scalable/apps/yms.svg"
rm -f "${ICONDIR}/48x48/apps/yms.png"
rm -f "${ICONDIR}/64x64/apps/yms.png"
echo "YMS has been uninstalled successfully."
exit 0
fi
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..."
install -d "${LIBDIR}"
# 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 -d "${SHAREDIR}"
install -d "${SHAREDIR}/ui"
install -m 0644 \
"${SOURCEDIR}/yms/ui/main.ui" \
"${SHAREDIR}/ui/main.ui"
cp -a \
"${SOURCEDIR}/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}/icons/yms.svg" \
"${ICONDIR}/scalable/apps/yms.svg"
install -m 0644 \
"${SOURCEDIR}/icons/yms48.png" \
"${ICONDIR}/48x48/apps/yms.png"
install -m 0644 \
"${SOURCEDIR}/icons/yms64.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 -d "${DESKTOPDIR}"
install -m 0644 \
"${SOURCEDIR}/yms.desktop" \
"${DESKTOPDIR}/yms.desktop"
# TODO webgui? or separately?
echo "YMS has been installed successfully."