Files
YMS/install.sh
T
2026-08-17 15:33:18 +02:00

95 lines
2.1 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"
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."