merge in changes from 2.0 ongoing. Includes the build type in the package name and...
[ardour.git] / tools / linux_packaging / uninstall.sh.in
1 #!/bin/sh
2
3 ######################################
4 #
5 #       Ardour/Mixbus bundle uninstaller
6 #       Todd Naugle
7 #
8 #####################################
9
10
11 PGM_NAME="%REPLACE_PGM%"
12 PGM_VENDOR="%REPLACE_VENDOR%"
13 PGM_VERSION="%REPLACE_VERSION%"
14 PGM_BUILD="%REPLACE_BUILD%"
15 PGM_BUILDTYPE="%REPLACE_TYPE%"
16
17 INSTALL_DEST_BASE=/opt
18
19
20 #### Derived Variables ####
21 if [ -z "${PGM_BUILDTYPE}" ]; then
22         PGM_PATH=${INSTALL_DEST_BASE}/${PGM_NAME}-${PGM_VERSION}_${PGM_BUILD}
23         ICON_NAME="${PGM_VENDOR}-${PGM_NAME}_${PGM_VERSION}"                    #no dash between name and version since dash seperates vendor from program
24         MENU_FILE="${PGM_VENDOR}-${PGM_NAME}_${PGM_VERSION}.desktop"    #no dash between name and version since dash seperates vendor from program
25         DESKTOP_LINK_FILE="${PGM_NAME}_${PGM_VERSION}.desktop"
26 else
27         PGM_PATH=${INSTALL_DEST_BASE}/${PGM_NAME}-${PGM_VERSION}_${PGM_BUILD}-${PGM_BUILDTYPE}
28         ICON_NAME="${PGM_VENDOR}-${PGM_NAME}_${PGM_VERSION}_${PGM_BUILDTYPE}"                   #no dash between name and version since dash seperates vendor from program
29         MENU_FILE="${PGM_VENDOR}-${PGM_NAME}_${PGM_VERSION}_${PGM_BUILDTYPE}.desktop"   #no dash between name and version since dash seperates vendor from program
30         DESKTOP_LINK_FILE="${PGM_NAME}_${PGM_VERSION}_${PGM_BUILDTYPE}.desktop"
31 fi
32
33 MENU_FILE_PATH="${PGM_PATH}/share/${MENU_FILE}"
34
35
36 #######################
37 # Check for xdg utils
38 #######################
39 HAS_XDG="T"
40
41 XDG_MENU_VER=$(xdg-desktop-menu --version 2> /dev/null)
42 if [ -z "$XDG_MENU_VER" ];
43 then
44         echo "System does not have xdg-desktop-menu installed"
45         HAS_XDG="F"
46 fi
47
48 XDG_ICON_VER=$(xdg-icon-resource --version 2> /dev/null)
49 if [ -z "$XDG_ICON_VER" ];
50 then
51         echo "System does not have xdg-icon-resource installed"
52         HAS_XDG="F"
53 fi
54
55
56 #############
57 # Uninstall
58 #############
59
60 if [ -d ${PGM_PATH} ];
61 then
62         echo ""
63         echo "Removing existing ${PGM_NAME} installation at ${PGM_PATH}"
64         echo ""
65
66         if [ "T" = ${HAS_XDG} ];
67         then
68                 sudo xdg-desktop-menu uninstall ${MENU_FILE_PATH}
69                 sudo xdg-icon-resource uninstall --size 16 ${ICON_NAME}
70                 sudo xdg-icon-resource uninstall --size 22 ${ICON_NAME}
71                 sudo xdg-icon-resource uninstall --size 32 ${ICON_NAME}
72                 sudo xdg-icon-resource uninstall --size 48 ${ICON_NAME}
73
74                 if [ -e /usr/share/icons/hicolor/scalable/apps/${ICON_NAME}.svg ]; 
75                 then
76                         sudo rm -f /usr/share/icons/hicolor/scalable/apps/${ICON_NAME}.svg
77                 fi
78         fi
79
80         if [ -e ~/Desktop/${DESKTOP_LINK_FILE} ];
81         then
82                 sudo rm -f ~/Desktop/${DESKTOP_LINK_FILE}
83         fi
84
85         # delete the old package
86         sudo rm -rf ${PGM_PATH}
87         sudo rm -f $0
88 else
89         echo ""
90         echo "!!! FAILURE !!! - install path ${PGM_PATH} does not exist."
91         echo ""
92 fi