blob: d4b8e78ac94826dedc2d6e9e6e4033c5005f83f6 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
|
#!/bin/sh
usage() {
echo "$0 (install|remove|desktop) <install-dir>"
echo
echo "install: Sets up file associations and menus for XTrkCad"
echo "remove: Removes file associations and menus for XTrkCad"
echo "desktop: Installs short cut on the user's desktop"
echo
echo "<install-dir> is the location of XTrkCad's data files"
echo
echo "to be run as normal user"
exit 0
}
echo "`date`: $0 $* as ${USER}"
if [ $# -ne 2 ] ; then
usage
fi
COMMAND="$1"
export INSTALLDIR="$2"
if [ ! -d ${INSTALLDIR} ] ; then
echo "$0: $INSTALLDIR: not found"
exit 1
fi
if [ ! -f ${INSTALLDIR}/applications/xtrkcad.xml ] ; then
echo "$0: $INSTALLDIR/applications/xtrkcad.xml: not found"
exit 1
fi
if [ ! -f ${INSTALLDIR}/applications/xtrkcad.desktop ] ; then
echo "$0: $INSTALLDIR/applications/xtrkcad.desktop: not found"
exit 1
fi
if [ ! -f ${INSTALLDIR}/pixmaps/xtrkcad.png ] ; then
echo "$0: $INSTALLDIR/pixmaps/xtrkcad.png: not found"
exit 1
fi
ID=`id -u`
if [ $ID -eq 0 ] ; then
echo $0: Must not be root
exit 1
fi
if [ "$COMMAND" = "install" ] ; then
echo SETUP ICONS
# Set icon for file browser
xdg-icon-resource install --context mimetypes --novendor --size 64 ${INSTALLDIR}/pixmaps/xtrkcad.png xtrkcad
# set icon for file browser
xdg-icon-resource install --context apps --novendor --size 64 ${INSTALLDIR}/pixmaps/xtrkcad.png xtrkcad
xdg-icon-resource install --context apps --novendor --size 64 ${INSTALLDIR}/pixmaps/xtrkcad.png application-x-xtrkcad
echo SETUP MIME
# mimetype for .xtc files is application/x-xtrkcad
xdg-mime install --novendor ${INSTALLDIR}/applications/xtrkcad.xml
# default handler for application/x-xtrkcad is xtrkcad
xdg-mime default xtrkcad.desktop application/x-xtrkcad
echo SETUP DESKTOP
# add app to system menu
xdg-desktop-menu install --novendor ${INSTALLDIR}/applications/xtrkcad.desktop
# add desktop shortcut
xdg-desktop-icon install --novendor ${INSTALLDIR}/applications/xtrkcad.desktop
chmod 755 ${HOME}/Desktop/xtrkcad.desktop
elif [ "$COMMAND" = "remove" ] ; then
echo REMOVE DESKTOP
xdg-desktop-icon uninstall --novendor ${INSTALLDIR}/applications/xtrkcad.desktop
xdg-desktop-menu uninstall ${INSTALLDIR}/applications/xtrkcad.desktop
echo REMOVE MIME
xdg-mime uninstall --novendor ${INSTALLDIR}/applications/xtrkcad.xml
echo REMOVE ICONS
xdg-icon-resource uninstall --context apps --novendor --size 64 application-x-xtrkcad
xdg-icon-resource uninstall --context apps --novendor --size 64 xtrkcad
xdg-icon-resource uninstall --context mimetypes --novendor --size 64 xtrkcad
elif [ "$COMMAND" = "desktop" ] ; then
echo SETUP DESKTOP
# set desktop command
xdg-desktop-menu install --novendor ${INSTALLDIR}/applications/xtrkcad.desktop
xdg-desktop-icon install --novendor ${INSTALLDIR}/applications/xtrkcad.desktop
chmod 755 ${HOME}/Desktop/xtrkcad.desktop
else
usage
fi
|