annotate packaging/linux-installer.inc.in @ 1070:f110a3f6e387

(issue114) Fine tune ACL propagation using mkdir_p the ACL of the parent directories would propagate to all subdirectories and objects in the directory. Now we only use ACL propagation in the last directory to make sure that files we might create in that directory inherit the correct (resitricted) ACL
author Andre Heinecke <andre.heinecke@intevation.de>
date Wed, 10 Sep 2014 16:41:36 +0200
parents 709a7633a2c6
children 7e1fd6d96714
rev   line source
680
a5a709c6ce93 Added minimal shar based installer for linux.
Sascha Wilde <wilde@intevation.de>
parents:
diff changeset
1 #!/bin/bash
1048
7bd1d723414d (issue84) Ubuntu Installer: Add installation howto.
Bernhard Reiter <bernhard@intevation.de>
parents: 1040
diff changeset
2 # Um TrustBridge zu installieren:
7bd1d723414d (issue84) Ubuntu Installer: Add installation howto.
Bernhard Reiter <bernhard@intevation.de>
parents: 1040
diff changeset
3 # 1. Prüfen Sie ob Sie dieser Datei genügend vertrauen, um ihr die Kontrolle
7bd1d723414d (issue84) Ubuntu Installer: Add installation howto.
Bernhard Reiter <bernhard@intevation.de>
parents: 1040
diff changeset
4 # über diesen Rechner zu übergeben. Beispielsweise durch Vergleich mit
7bd1d723414d (issue84) Ubuntu Installer: Add installation howto.
Bernhard Reiter <bernhard@intevation.de>
parents: 1040
diff changeset
5 # einer starken Prüfsumme aus einer zweiten, unabhängigen Quelle.
7bd1d723414d (issue84) Ubuntu Installer: Add installation howto.
Bernhard Reiter <bernhard@intevation.de>
parents: 1040
diff changeset
6 # 2. Öffnen Sie eine Kommandozeile, z.B. klicken Sie auf das "Terminal"-Symbol.
7bd1d723414d (issue84) Ubuntu Installer: Add installation howto.
Bernhard Reiter <bernhard@intevation.de>
parents: 1040
diff changeset
7 # 3. Wechseln Sie in das Verzeichnis, in welchem diese Datei gespeichert ist.
7bd1d723414d (issue84) Ubuntu Installer: Add installation howto.
Bernhard Reiter <bernhard@intevation.de>
parents: 1040
diff changeset
8 # Geben Sie Z.B. in die Kommandozeile ein: cd ~/Schreibtisch
1049
52c68a773194 Ubuntu Installer, short instruction with explicit mention that this example is for one user only.
Bernhard Reiter <bernhard@intevation.de>
parents: 1048
diff changeset
9 # 4. Starten Sie die Anwendung auf der Kommandozeile, beispielsweise
52c68a773194 Ubuntu Installer, short instruction with explicit mention that this example is for one user only.
Bernhard Reiter <bernhard@intevation.de>
parents: 1048
diff changeset
10 # als Installation nur für den aktuellen Nutzer, indem Sie eingeben:
52c68a773194 Ubuntu Installer, short instruction with explicit mention that this example is for one user only.
Bernhard Reiter <bernhard@intevation.de>
parents: 1048
diff changeset
11 # bash TrustBridge-1.0.0-i386.sh
1048
7bd1d723414d (issue84) Ubuntu Installer: Add installation howto.
Bernhard Reiter <bernhard@intevation.de>
parents: 1040
diff changeset
12 # Tipp: Die Tab-Taste nach dem "Tr" ergänzt oft den ganzen Namen.
7bd1d723414d (issue84) Ubuntu Installer: Add installation howto.
Bernhard Reiter <bernhard@intevation.de>
parents: 1040
diff changeset
13 #
7bd1d723414d (issue84) Ubuntu Installer: Add installation howto.
Bernhard Reiter <bernhard@intevation.de>
parents: 1040
diff changeset
14 # NB: Wir konnten kein übliches .deb Paket verwenden, da wir Ihnen
7bd1d723414d (issue84) Ubuntu Installer: Add installation howto.
Bernhard Reiter <bernhard@intevation.de>
parents: 1040
diff changeset
15 # auch die Installation als reiner Nutzer ohne Admin-Rechte ermöglichen.
7bd1d723414d (issue84) Ubuntu Installer: Add installation howto.
Bernhard Reiter <bernhard@intevation.de>
parents: 1040
diff changeset
16 #
7bd1d723414d (issue84) Ubuntu Installer: Add installation howto.
Bernhard Reiter <bernhard@intevation.de>
parents: 1040
diff changeset
17 # To install TrustBridge:
7bd1d723414d (issue84) Ubuntu Installer: Add installation howto.
Bernhard Reiter <bernhard@intevation.de>
parents: 1040
diff changeset
18 # 1. Verify that you trust this specific file far enough, that you are willing
7bd1d723414d (issue84) Ubuntu Installer: Add installation howto.
Bernhard Reiter <bernhard@intevation.de>
parents: 1040
diff changeset
19 # to hand over the control of your computer to it. For example compare
7bd1d723414d (issue84) Ubuntu Installer: Add installation howto.
Bernhard Reiter <bernhard@intevation.de>
parents: 1040
diff changeset
20 # a strong checksum of the file to one from a second, independent source.
7bd1d723414d (issue84) Ubuntu Installer: Add installation howto.
Bernhard Reiter <bernhard@intevation.de>
parents: 1040
diff changeset
21 # 2. Open a command line, e.g. click on the "Terminal"-Symbol.
7bd1d723414d (issue84) Ubuntu Installer: Add installation howto.
Bernhard Reiter <bernhard@intevation.de>
parents: 1040
diff changeset
22 # 3. Change your working directory to where this file is stored.
7bd1d723414d (issue84) Ubuntu Installer: Add installation howto.
Bernhard Reiter <bernhard@intevation.de>
parents: 1040
diff changeset
23 # For example type "cd ~/Desktop" on your command line.
1049
52c68a773194 Ubuntu Installer, short instruction with explicit mention that this example is for one user only.
Bernhard Reiter <bernhard@intevation.de>
parents: 1048
diff changeset
24 # 4. Start the installation on the command line, e.g. for the current user
52c68a773194 Ubuntu Installer, short instruction with explicit mention that this example is for one user only.
Bernhard Reiter <bernhard@intevation.de>
parents: 1048
diff changeset
25 # only by typing something like "bash TrustBridge-1.0.0-i386.sh".
52c68a773194 Ubuntu Installer, short instruction with explicit mention that this example is for one user only.
Bernhard Reiter <bernhard@intevation.de>
parents: 1048
diff changeset
26 # Hint: If you press the tab-key after "Tr" it may complete the filename.
1048
7bd1d723414d (issue84) Ubuntu Installer: Add installation howto.
Bernhard Reiter <bernhard@intevation.de>
parents: 1040
diff changeset
27 #
7bd1d723414d (issue84) Ubuntu Installer: Add installation howto.
Bernhard Reiter <bernhard@intevation.de>
parents: 1040
diff changeset
28 # N.B. We could not have used a .deb package, because the installation must
7bd1d723414d (issue84) Ubuntu Installer: Add installation howto.
Bernhard Reiter <bernhard@intevation.de>
parents: 1040
diff changeset
29 # also work without without adminstrator priviledges.
7bd1d723414d (issue84) Ubuntu Installer: Add installation howto.
Bernhard Reiter <bernhard@intevation.de>
parents: 1040
diff changeset
30 #
7bd1d723414d (issue84) Ubuntu Installer: Add installation howto.
Bernhard Reiter <bernhard@intevation.de>
parents: 1040
diff changeset
31 #
7bd1d723414d (issue84) Ubuntu Installer: Add installation howto.
Bernhard Reiter <bernhard@intevation.de>
parents: 1040
diff changeset
32 # Search the file for 'version()' to find the license information.
707
37899f717fa5 Added system wide installation.
Sascha Wilde <wilde@intevation.de>
parents: 705
diff changeset
33 set -u
680
a5a709c6ce93 Added minimal shar based installer for linux.
Sascha Wilde <wilde@intevation.de>
parents:
diff changeset
34
698
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
35 ME=`basename "$0"`
704
480bc550d2ad Better default prefix for local installation.
Sascha Wilde <wilde@intevation.de>
parents: 700
diff changeset
36 DEFAULT_PREFIX="$HOME/TrustBridge"
707
37899f717fa5 Added system wide installation.
Sascha Wilde <wilde@intevation.de>
parents: 705
diff changeset
37 SYSDEFAULT_PREFIX="/usr/local"
724
d280e2d39d5a Introduced data-directory and fixed config-directory.
Sascha Wilde <wilde@intevation.de>
parents: 723
diff changeset
38 CFGPATH="${XDG_CONFIG_HOME:-$HOME/.config}/BSI"
d280e2d39d5a Introduced data-directory and fixed config-directory.
Sascha Wilde <wilde@intevation.de>
parents: 723
diff changeset
39 DATAPATH="${XDG_DATA_HOME:-$HOME/.local/share}/BSI/TrustBridge"
700
bf87feccb26c Write installation configuration file.
Sascha Wilde <wilde@intevation.de>
parents: 698
diff changeset
40 SYSCFGPATH="/etc/TrustBridge"
727
feaabee15e72 Preliminary implemented SYSDATAPATH.
Sascha Wilde <wilde@intevation.de>
parents: 725
diff changeset
41 # FIXME:
feaabee15e72 Preliminary implemented SYSDATAPATH.
Sascha Wilde <wilde@intevation.de>
parents: 725
diff changeset
42 # Set the real data path for system wide installation once its known.
feaabee15e72 Preliminary implemented SYSDATAPATH.
Sascha Wilde <wilde@intevation.de>
parents: 725
diff changeset
43 SYSDATAPATH="$DATAPATH"
724
d280e2d39d5a Introduced data-directory and fixed config-directory.
Sascha Wilde <wilde@intevation.de>
parents: 723
diff changeset
44 INSTCFGNAME="TrustBridge-inst.cfg"
705
ff2efc1cb8fa Use config from old installation for sensible default prefix.
Sascha Wilde <wilde@intevation.de>
parents: 704
diff changeset
45 FORCE=0
707
37899f717fa5 Added system wide installation.
Sascha Wilde <wilde@intevation.de>
parents: 705
diff changeset
46 SYSINST=0
711
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
47 DEINSTALL=0
1066
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
48 UPDATE=0
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
49 SHOWAFTERUPDATE=0
711
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
50 BINNAMES="###BINNAMES###"
872
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
51 ICONNAME="###ICONNAME###"
938
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
52 HELPNAMES="###HELPNAMES###"
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
53 HELPNAMES_SOURCES="###HELPNAMES_SOURCES###"
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
54 HELPNAMES_STATIC="###HELPNAMES_STATIC###"
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
55 HELPNAMES_IMG="###HELPNAMES_IMG###"
972
8be2f510adbf (issue91) Make installer architecture aware.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 938
diff changeset
56 ARCH="###ARCH###"
698
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
57
705
ff2efc1cb8fa Use config from old installation for sensible default prefix.
Sascha Wilde <wilde@intevation.de>
parents: 704
diff changeset
58 declare -A instcfg oldinstcfg
724
d280e2d39d5a Introduced data-directory and fixed config-directory.
Sascha Wilde <wilde@intevation.de>
parents: 723
diff changeset
59 declare inst_default_prefix instdata_path instcfg_path instcfg_file
700
bf87feccb26c Write installation configuration file.
Sascha Wilde <wilde@intevation.de>
parents: 698
diff changeset
60 instcfg=(
bf87feccb26c Write installation configuration file.
Sascha Wilde <wilde@intevation.de>
parents: 698
diff changeset
61 [TIMESTMP]=`date -u +%Y%m%d%H%M%S`
bf87feccb26c Write installation configuration file.
Sascha Wilde <wilde@intevation.de>
parents: 698
diff changeset
62 [VERSION]='@PROJECT_VERSION@'
bf87feccb26c Write installation configuration file.
Sascha Wilde <wilde@intevation.de>
parents: 698
diff changeset
63 [PREFIX]=''
bf87feccb26c Write installation configuration file.
Sascha Wilde <wilde@intevation.de>
parents: 698
diff changeset
64 )
705
ff2efc1cb8fa Use config from old installation for sensible default prefix.
Sascha Wilde <wilde@intevation.de>
parents: 704
diff changeset
65 oldinstcfg=(
ff2efc1cb8fa Use config from old installation for sensible default prefix.
Sascha Wilde <wilde@intevation.de>
parents: 704
diff changeset
66 [TIMESTMP]=''
ff2efc1cb8fa Use config from old installation for sensible default prefix.
Sascha Wilde <wilde@intevation.de>
parents: 704
diff changeset
67 [VERSION]=''
ff2efc1cb8fa Use config from old installation for sensible default prefix.
Sascha Wilde <wilde@intevation.de>
parents: 704
diff changeset
68 [PREFIX]=''
ff2efc1cb8fa Use config from old installation for sensible default prefix.
Sascha Wilde <wilde@intevation.de>
parents: 704
diff changeset
69 )
698
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
70
795
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
71 declare -A L10N_DE
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
72 ###L10N_DE###
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
73
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
74 getxt()
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
75 {
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
76 # Poor mans gettext for l10n completely self contained in one shell
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
77 # script.
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
78 MSGID="$1"
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
79 shift
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
80 case ${LANGUAGE:-${LC_ALL:-${LC_MESSAGES:-$LANG}}} in
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
81 de*)
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
82 if [ "${L10N_DE[$MSGID]}" ] ; then
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
83 MSG="${L10N_DE[$MSGID]}"
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
84 else
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
85 MSG="$MSGID"
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
86 fi
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
87 ;;
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
88 *)
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
89 MSG="$MSGID"
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
90 ;;
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
91 esac
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
92
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
93 printf "$MSG" "$@"
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
94 }
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
95
698
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
96 version()
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
97 {
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
98 cat <<EOF
700
bf87feccb26c Write installation configuration file.
Sascha Wilde <wilde@intevation.de>
parents: 698
diff changeset
99 TrustBridge ${instcfg[VERSION]} Installer
698
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
100
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
101 Copyright (C) 2014 by Bundesamt für Sicherheit in der Informationstechnik
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
102 Software engineering by Intevation GmbH
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
103
1038
f5306f8c02f3 packaging/linux-installer: Copyright header changed to standard text.
Bernhard Reiter <bernhard@intevation.de>
parents: 972
diff changeset
104 This file is Free Software under the GNU GPL (v>=2)
f5306f8c02f3 packaging/linux-installer: Copyright header changed to standard text.
Bernhard Reiter <bernhard@intevation.de>
parents: 972
diff changeset
105 and comes with ABSOLUTELY NO WARRANTY!
f5306f8c02f3 packaging/linux-installer: Copyright header changed to standard text.
Bernhard Reiter <bernhard@intevation.de>
parents: 972
diff changeset
106 See LICENSE.txt for details.
698
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
107 EOF
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
108 exit 0
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
109 }
680
a5a709c6ce93 Added minimal shar based installer for linux.
Sascha Wilde <wilde@intevation.de>
parents:
diff changeset
110
a5a709c6ce93 Added minimal shar based installer for linux.
Sascha Wilde <wilde@intevation.de>
parents:
diff changeset
111 fatal()
a5a709c6ce93 Added minimal shar based installer for linux.
Sascha Wilde <wilde@intevation.de>
parents:
diff changeset
112 {
795
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
113 getxt "$1" >&2
711
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
114 if [ $DEINSTALL -eq 1 ] ; then
795
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
115 getxt "Deinstallation failed.\n" >&2
711
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
116 else
795
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
117 getxt "Installation failed.\n" >&2
711
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
118 fi
680
a5a709c6ce93 Added minimal shar based installer for linux.
Sascha Wilde <wilde@intevation.de>
parents:
diff changeset
119 exit 1
a5a709c6ce93 Added minimal shar based installer for linux.
Sascha Wilde <wilde@intevation.de>
parents:
diff changeset
120 }
a5a709c6ce93 Added minimal shar based installer for linux.
Sascha Wilde <wilde@intevation.de>
parents:
diff changeset
121
698
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
122 usage()
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
123 {
799
933860224d1e l10n for usage text.
Sascha Wilde <wilde@intevation.de>
parents: 795
diff changeset
124 getxt "Usage: %s [OPTION]...\n" "$ME"
933860224d1e l10n for usage text.
Sascha Wilde <wilde@intevation.de>
parents: 795
diff changeset
125 getxt "Install TrustBridge.\n\n"
933860224d1e l10n for usage text.
Sascha Wilde <wilde@intevation.de>
parents: 795
diff changeset
126 getxt "Options:\n"
933860224d1e l10n for usage text.
Sascha Wilde <wilde@intevation.de>
parents: 795
diff changeset
127 getxt " -p, --prefix=PATH install files in PATH\n"
933860224d1e l10n for usage text.
Sascha Wilde <wilde@intevation.de>
parents: 795
diff changeset
128 getxt " -f, --force install to given prefix, even when a current\n"
933860224d1e l10n for usage text.
Sascha Wilde <wilde@intevation.de>
parents: 795
diff changeset
129 getxt " installation with different prefix exists.\n"
933860224d1e l10n for usage text.
Sascha Wilde <wilde@intevation.de>
parents: 795
diff changeset
130 getxt " -d, --deinstall deinstall files from current installation\n"
933860224d1e l10n for usage text.
Sascha Wilde <wilde@intevation.de>
parents: 795
diff changeset
131 getxt " -s, --system create a system wide (de)installation\n"
933860224d1e l10n for usage text.
Sascha Wilde <wilde@intevation.de>
parents: 795
diff changeset
132 getxt " --help display this help and exit\n"
933860224d1e l10n for usage text.
Sascha Wilde <wilde@intevation.de>
parents: 795
diff changeset
133 getxt " --version output version information and exit\n"
698
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
134 exit $1
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
135 }
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
136
711
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
137 yorn()
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
138 {
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
139 local c
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
140 while true ; do
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
141 read -n 1 c
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
142 echo
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
143 case "$c" in
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
144 y|Y|j|J)
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
145 return 0
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
146 ;;
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
147 n|N)
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
148 return 1
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
149 ;;
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
150 *)
795
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
151 getxt >&2 "Answer [Y]es or [N]o:\n"
711
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
152 esac
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
153 done
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
154 }
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
155
698
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
156 parse_args()
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
157 {
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
158 OPTS=`getopt \
1066
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
159 -l deinstall,update,show-after-update,force,help,prefix:,system,version \
711
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
160 -o d,f,p:,s -n "$ME" -- "$@"`
698
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
161 [ $? -eq 0 ] || usage 23
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
162
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
163 eval set -- "$OPTS"
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
164
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
165 while true ; do
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
166 case "$1" in
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
167 --prefix|-p)
700
bf87feccb26c Write installation configuration file.
Sascha Wilde <wilde@intevation.de>
parents: 698
diff changeset
168 instcfg[PREFIX]="$2"
698
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
169 shift 2
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
170 ;;
707
37899f717fa5 Added system wide installation.
Sascha Wilde <wilde@intevation.de>
parents: 705
diff changeset
171 --system|-s)
37899f717fa5 Added system wide installation.
Sascha Wilde <wilde@intevation.de>
parents: 705
diff changeset
172 SYSINST=1
37899f717fa5 Added system wide installation.
Sascha Wilde <wilde@intevation.de>
parents: 705
diff changeset
173 shift 1
37899f717fa5 Added system wide installation.
Sascha Wilde <wilde@intevation.de>
parents: 705
diff changeset
174 ;;
705
ff2efc1cb8fa Use config from old installation for sensible default prefix.
Sascha Wilde <wilde@intevation.de>
parents: 704
diff changeset
175 --force|-f)
ff2efc1cb8fa Use config from old installation for sensible default prefix.
Sascha Wilde <wilde@intevation.de>
parents: 704
diff changeset
176 FORCE=1
ff2efc1cb8fa Use config from old installation for sensible default prefix.
Sascha Wilde <wilde@intevation.de>
parents: 704
diff changeset
177 shift 1
ff2efc1cb8fa Use config from old installation for sensible default prefix.
Sascha Wilde <wilde@intevation.de>
parents: 704
diff changeset
178 ;;
711
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
179 --deinstall|-d)
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
180 DEINSTALL=1
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
181 shift 1
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
182 ;;
1066
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
183 --update)
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
184 UPDATE=1
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
185 shift 1
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
186 ;;
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
187 --show-after-update)
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
188 SHOWAFTERUPDATE=1
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
189 shift 1
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
190 ;;
698
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
191 --help)
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
192 usage 0
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
193 ;;
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
194 --version)
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
195 version
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
196 ;;
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
197 --)
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
198 shift
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
199 break
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
200 ;;
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
201 esac
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
202 done
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
203 }
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
204
707
37899f717fa5 Added system wide installation.
Sascha Wilde <wilde@intevation.de>
parents: 705
diff changeset
205 init_vars()
37899f717fa5 Added system wide installation.
Sascha Wilde <wilde@intevation.de>
parents: 705
diff changeset
206 {
1066
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
207 if [ -n "${SUDO_USER-}" ] ; then
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
208 # Default to system wide installation when running with sudo
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
209 SYSINST=1
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
210 fi
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
211
707
37899f717fa5 Added system wide installation.
Sascha Wilde <wilde@intevation.de>
parents: 705
diff changeset
212 if [ $SYSINST -eq 1 ] ; then
37899f717fa5 Added system wide installation.
Sascha Wilde <wilde@intevation.de>
parents: 705
diff changeset
213 inst_default_prefix="$SYSDEFAULT_PREFIX"
723
e71c59b16eee Added certificate deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 711
diff changeset
214 instcfg_path="${SYSCFGPATH}"
727
feaabee15e72 Preliminary implemented SYSDATAPATH.
Sascha Wilde <wilde@intevation.de>
parents: 725
diff changeset
215 instdata_path="${SYSDATAPATH}"
785
2fb539d4b1ff Simply autostart creation by initializing the path in init_vars
Andre Heinecke <andre.heinecke@intevation.de>
parents: 777
diff changeset
216 autostart_path="$(getent passwd "${SUDO_USER}" | cut -d ':' -f 6)/.config/autostart"
872
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
217 startmenu_path="/usr/share/applications"
707
37899f717fa5 Added system wide installation.
Sascha Wilde <wilde@intevation.de>
parents: 705
diff changeset
218 else
37899f717fa5 Added system wide installation.
Sascha Wilde <wilde@intevation.de>
parents: 705
diff changeset
219 inst_default_prefix="$DEFAULT_PREFIX"
723
e71c59b16eee Added certificate deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 711
diff changeset
220 instcfg_path="${CFGPATH}"
724
d280e2d39d5a Introduced data-directory and fixed config-directory.
Sascha Wilde <wilde@intevation.de>
parents: 723
diff changeset
221 instdata_path="${DATAPATH}"
785
2fb539d4b1ff Simply autostart creation by initializing the path in init_vars
Andre Heinecke <andre.heinecke@intevation.de>
parents: 777
diff changeset
222 autostart_path=${XDG_CONFIG_HOME:-~/.config/autostart}
872
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
223 startmenu_path=${XDG_DATA_HOME:-~/.local/share/applications}
1040
43734932e2ea (issue100) Fall back to system wide deinstallation when no local installation is found
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1038
diff changeset
224 if [ $DEINSTALL -eq 1 ] ; then
43734932e2ea (issue100) Fall back to system wide deinstallation when no local installation is found
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1038
diff changeset
225 if [ ! -r ${instcfg_path}/${INSTCFGNAME} ]; then
43734932e2ea (issue100) Fall back to system wide deinstallation when no local installation is found
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1038
diff changeset
226 if [ -r ${SYSCFGPATH}/${INSTCFGNAME} ]; then
43734932e2ea (issue100) Fall back to system wide deinstallation when no local installation is found
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1038
diff changeset
227 # Fall back to system uninstallation if no user config found
43734932e2ea (issue100) Fall back to system wide deinstallation when no local installation is found
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1038
diff changeset
228 SYSINST=1
43734932e2ea (issue100) Fall back to system wide deinstallation when no local installation is found
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1038
diff changeset
229 init_vars
43734932e2ea (issue100) Fall back to system wide deinstallation when no local installation is found
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1038
diff changeset
230 check_priv
43734932e2ea (issue100) Fall back to system wide deinstallation when no local installation is found
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1038
diff changeset
231 fi
43734932e2ea (issue100) Fall back to system wide deinstallation when no local installation is found
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1038
diff changeset
232 fi
43734932e2ea (issue100) Fall back to system wide deinstallation when no local installation is found
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1038
diff changeset
233 fi
707
37899f717fa5 Added system wide installation.
Sascha Wilde <wilde@intevation.de>
parents: 705
diff changeset
234 fi
873
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
235 instcfg_file="${instcfg_path}/${INSTCFGNAME}"
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
236 extra_bin_path=`mktemp --tmpdir -d tmpbin.XXXXXXXXXX`
972
8be2f510adbf (issue91) Make installer architecture aware.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 938
diff changeset
237 HOST_ARCH=$(uname -m)
873
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
238 }
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
239
1066
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
240 finished()
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
241 {
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
242 echo
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
243 echo "#################################################################################"
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
244 if [ $SYSINST -eq 1 ]; then
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
245 getxt "System wide installation successful.\n"
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
246 else
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
247 getxt "Single user installation successful.\n"
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
248 fi
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
249 getxt "TrustBridge has been installed to: '%s'\n\n" "${instcfg[PREFIX]}"
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
250
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
251 if [ $SYSINST -eq 1 ]; then
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
252 getxt "If you do not want to change the certificates of other users\n"
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
253 getxt "uninstall it with:\n"
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
254 echo " 'sudo $0 -d'"
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
255 getxt "And install it again without sudo:\n"
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
256 echo " $0"
1069
709a7633a2c6 Use su -l instead of plain su to get userenv.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1068
diff changeset
257 RUNCMD="su -l $SUDO_USER -c "
1066
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
258 else
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
259 getxt "If you want to change the certificates of all users\n"
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
260 getxt "uninstall it with:\n"
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
261 echo " '$0 -d'"
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
262 getxt "And install it again using sudo:\n"
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
263 echo " sudo $0"
1068
4e93a87d89eb (issue54) use su to launch application as user after system wide installation
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1066
diff changeset
264 RUNCMD=""
1066
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
265 fi
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
266 echo "#################################################################################"
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
267 getxt "Press enter to launch '%s'\n" "${instcfg[PREFIX]}/bin/trustbridge"
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
268 if [ $UPDATE -eq 0 ]; then
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
269 read
1068
4e93a87d89eb (issue54) use su to launch application as user after system wide installation
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1066
diff changeset
270 $RUNCMD "${instcfg[PREFIX]}/bin/trustbridge" &
1066
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
271 else
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
272 if [ $SHOWAFTERUPDATE -eq 0 ]; then
1068
4e93a87d89eb (issue54) use su to launch application as user after system wide installation
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1066
diff changeset
273 $RUNCMD "${instcfg[PREFIX]}/bin/trustbridge" --tray &
1066
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
274 else
1068
4e93a87d89eb (issue54) use su to launch application as user after system wide installation
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1066
diff changeset
275 $RUNCMD "${instcfg[PREFIX]}/bin/trustbridge" &
1066
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
276 fi
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
277 fi
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
278 }
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
279
873
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
280 cleanup()
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
281 {
935
e977f7a0e8fd Cleanup temporary stuff (like shar lockdir) always (even when interrupted) on exit.
Sascha Wilde <wilde@intevation.de>
parents: 916
diff changeset
282 getxt "Cleaning up temporary stuff ...\n"
e977f7a0e8fd Cleanup temporary stuff (like shar lockdir) always (even when interrupted) on exit.
Sascha Wilde <wilde@intevation.de>
parents: 916
diff changeset
283 # remove temporary directories,
e977f7a0e8fd Cleanup temporary stuff (like shar lockdir) always (even when interrupted) on exit.
Sascha Wilde <wilde@intevation.de>
parents: 916
diff changeset
284 # $lock_dir is generate by the shar
937
f6b52f60f643 Check if lock_dir is set before using it in an rm -rf
Andre Heinecke <andre.heinecke@intevation.de>
parents: 935
diff changeset
285 if [ -z "${lock_dir-}" ]; then
f6b52f60f643 Check if lock_dir is set before using it in an rm -rf
Andre Heinecke <andre.heinecke@intevation.de>
parents: 935
diff changeset
286 exit
f6b52f60f643 Check if lock_dir is set before using it in an rm -rf
Andre Heinecke <andre.heinecke@intevation.de>
parents: 935
diff changeset
287 fi
935
e977f7a0e8fd Cleanup temporary stuff (like shar lockdir) always (even when interrupted) on exit.
Sascha Wilde <wilde@intevation.de>
parents: 916
diff changeset
288 for dir in "${instcfg[PREFIX]}/$lock_dir" "$extra_bin_path" ; do
e977f7a0e8fd Cleanup temporary stuff (like shar lockdir) always (even when interrupted) on exit.
Sascha Wilde <wilde@intevation.de>
parents: 916
diff changeset
289 [ -d "$dir" ] &&
e977f7a0e8fd Cleanup temporary stuff (like shar lockdir) always (even when interrupted) on exit.
Sascha Wilde <wilde@intevation.de>
parents: 916
diff changeset
290 rm -rf "$dir"
e977f7a0e8fd Cleanup temporary stuff (like shar lockdir) always (even when interrupted) on exit.
Sascha Wilde <wilde@intevation.de>
parents: 916
diff changeset
291 done
707
37899f717fa5 Added system wide installation.
Sascha Wilde <wilde@intevation.de>
parents: 705
diff changeset
292 }
37899f717fa5 Added system wide installation.
Sascha Wilde <wilde@intevation.de>
parents: 705
diff changeset
293
700
bf87feccb26c Write installation configuration file.
Sascha Wilde <wilde@intevation.de>
parents: 698
diff changeset
294 write_instcfg()
bf87feccb26c Write installation configuration file.
Sascha Wilde <wilde@intevation.de>
parents: 698
diff changeset
295 {
bf87feccb26c Write installation configuration file.
Sascha Wilde <wilde@intevation.de>
parents: 698
diff changeset
296 install -d `dirname "$instcfg_file"`
bf87feccb26c Write installation configuration file.
Sascha Wilde <wilde@intevation.de>
parents: 698
diff changeset
297 echo "# Created by TrustBridge-Installer, don't touch!" >"$instcfg_file"
bf87feccb26c Write installation configuration file.
Sascha Wilde <wilde@intevation.de>
parents: 698
diff changeset
298 for key in "${!instcfg[@]}" ; do
bf87feccb26c Write installation configuration file.
Sascha Wilde <wilde@intevation.de>
parents: 698
diff changeset
299 echo "${key}=${instcfg[$key]}" >>"$instcfg_file"
bf87feccb26c Write installation configuration file.
Sascha Wilde <wilde@intevation.de>
parents: 698
diff changeset
300 done
bf87feccb26c Write installation configuration file.
Sascha Wilde <wilde@intevation.de>
parents: 698
diff changeset
301 }
bf87feccb26c Write installation configuration file.
Sascha Wilde <wilde@intevation.de>
parents: 698
diff changeset
302
705
ff2efc1cb8fa Use config from old installation for sensible default prefix.
Sascha Wilde <wilde@intevation.de>
parents: 704
diff changeset
303 read_oldinstcfg()
ff2efc1cb8fa Use config from old installation for sensible default prefix.
Sascha Wilde <wilde@intevation.de>
parents: 704
diff changeset
304 {
ff2efc1cb8fa Use config from old installation for sensible default prefix.
Sascha Wilde <wilde@intevation.de>
parents: 704
diff changeset
305 if [ -r "$instcfg_file" ] ; then
795
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
306 getxt "Reading '%s' ...\n" "$instcfg_file"
705
ff2efc1cb8fa Use config from old installation for sensible default prefix.
Sascha Wilde <wilde@intevation.de>
parents: 704
diff changeset
307 for key in "${!oldinstcfg[@]}" ; do
ff2efc1cb8fa Use config from old installation for sensible default prefix.
Sascha Wilde <wilde@intevation.de>
parents: 704
diff changeset
308 oldinstcfg[$key]=`sed -n "/$key/s/[^=]*=\(.*\)/\1/p" "$instcfg_file"`
ff2efc1cb8fa Use config from old installation for sensible default prefix.
Sascha Wilde <wilde@intevation.de>
parents: 704
diff changeset
309 done
707
37899f717fa5 Added system wide installation.
Sascha Wilde <wilde@intevation.de>
parents: 705
diff changeset
310 fi
705
ff2efc1cb8fa Use config from old installation for sensible default prefix.
Sascha Wilde <wilde@intevation.de>
parents: 704
diff changeset
311 }
ff2efc1cb8fa Use config from old installation for sensible default prefix.
Sascha Wilde <wilde@intevation.de>
parents: 704
diff changeset
312
707
37899f717fa5 Added system wide installation.
Sascha Wilde <wilde@intevation.de>
parents: 705
diff changeset
313 check_priv()
37899f717fa5 Added system wide installation.
Sascha Wilde <wilde@intevation.de>
parents: 705
diff changeset
314 {
37899f717fa5 Added system wide installation.
Sascha Wilde <wilde@intevation.de>
parents: 705
diff changeset
315 if [ $SYSINST -eq 1 -a "$UID" -ne 0 ] ; then
1040
43734932e2ea (issue100) Fall back to system wide deinstallation when no local installation is found
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1038
diff changeset
316 fatal "System wide installation or deinstallation requires root privileges!\n"
707
37899f717fa5 Added system wide installation.
Sascha Wilde <wilde@intevation.de>
parents: 705
diff changeset
317 fi
37899f717fa5 Added system wide installation.
Sascha Wilde <wilde@intevation.de>
parents: 705
diff changeset
318 }
37899f717fa5 Added system wide installation.
Sascha Wilde <wilde@intevation.de>
parents: 705
diff changeset
319
728
2d64ff7e22e8 Factored out recursive deletion of empty dirs.
Sascha Wilde <wilde@intevation.de>
parents: 727
diff changeset
320 rm_empty_dirs()
2d64ff7e22e8 Factored out recursive deletion of empty dirs.
Sascha Wilde <wilde@intevation.de>
parents: 727
diff changeset
321 {
2d64ff7e22e8 Factored out recursive deletion of empty dirs.
Sascha Wilde <wilde@intevation.de>
parents: 727
diff changeset
322 # Args: $1 - DIRECTORY
2d64ff7e22e8 Factored out recursive deletion of empty dirs.
Sascha Wilde <wilde@intevation.de>
parents: 727
diff changeset
323 #
2d64ff7e22e8 Factored out recursive deletion of empty dirs.
Sascha Wilde <wilde@intevation.de>
parents: 727
diff changeset
324 # Recursively remove DIRECTORY and all it _parent_ directories as
2d64ff7e22e8 Factored out recursive deletion of empty dirs.
Sascha Wilde <wilde@intevation.de>
parents: 727
diff changeset
325 # long as they are empty.
2d64ff7e22e8 Factored out recursive deletion of empty dirs.
Sascha Wilde <wilde@intevation.de>
parents: 727
diff changeset
326 local directory="$1"
752
96cac71834ba Fixed errors when not all expected files exist on deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 751
diff changeset
327 while [ -d "$directory" -a -z "$(ls 2>/dev/null -A "$directory")" ] ; do
795
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
328 getxt "Deleting empty directory '%s' ...\n" "$directory"
728
2d64ff7e22e8 Factored out recursive deletion of empty dirs.
Sascha Wilde <wilde@intevation.de>
parents: 727
diff changeset
329 rmdir "$directory"
2d64ff7e22e8 Factored out recursive deletion of empty dirs.
Sascha Wilde <wilde@intevation.de>
parents: 727
diff changeset
330 directory=`dirname "$directory"`
2d64ff7e22e8 Factored out recursive deletion of empty dirs.
Sascha Wilde <wilde@intevation.de>
parents: 727
diff changeset
331 done
2d64ff7e22e8 Factored out recursive deletion of empty dirs.
Sascha Wilde <wilde@intevation.de>
parents: 727
diff changeset
332 }
2d64ff7e22e8 Factored out recursive deletion of empty dirs.
Sascha Wilde <wilde@intevation.de>
parents: 727
diff changeset
333
752
96cac71834ba Fixed errors when not all expected files exist on deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 751
diff changeset
334 rm_files()
96cac71834ba Fixed errors when not all expected files exist on deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 751
diff changeset
335 {
96cac71834ba Fixed errors when not all expected files exist on deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 751
diff changeset
336 for file in "$@" ; do
96cac71834ba Fixed errors when not all expected files exist on deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 751
diff changeset
337 if [ -e "$file" ] ; then
795
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
338 getxt "Deleting '%s' ...\n" "$file"
752
96cac71834ba Fixed errors when not all expected files exist on deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 751
diff changeset
339 rm "$file"
96cac71834ba Fixed errors when not all expected files exist on deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 751
diff changeset
340 fi
96cac71834ba Fixed errors when not all expected files exist on deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 751
diff changeset
341 done
96cac71834ba Fixed errors when not all expected files exist on deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 751
diff changeset
342 }
96cac71834ba Fixed errors when not all expected files exist on deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 751
diff changeset
343
749
778382342802 Added installation of cron job.
Sascha Wilde <wilde@intevation.de>
parents: 738
diff changeset
344 setup_cronjob()
778382342802 Added installation of cron job.
Sascha Wilde <wilde@intevation.de>
parents: 738
diff changeset
345 {
778382342802 Added installation of cron job.
Sascha Wilde <wilde@intevation.de>
parents: 738
diff changeset
346 local tmpcrontab=`mktemp`
765
7c3a8a8d3e52 Code cleanup: make variable initialization more obvious.
Sascha Wilde <wilde@intevation.de>
parents: 764
diff changeset
347
764
5b505acbb2d1 Handle system wide installation for crontab.
Sascha Wilde <wilde@intevation.de>
parents: 763
diff changeset
348 if [ $SYSINST -eq 1 -a "${SUDO_USER+X}" ] ; then
765
7c3a8a8d3e52 Code cleanup: make variable initialization more obvious.
Sascha Wilde <wilde@intevation.de>
parents: 764
diff changeset
349 local crontabopt="-u $SUDO_USER"
7c3a8a8d3e52 Code cleanup: make variable initialization more obvious.
Sascha Wilde <wilde@intevation.de>
parents: 764
diff changeset
350 else
7c3a8a8d3e52 Code cleanup: make variable initialization more obvious.
Sascha Wilde <wilde@intevation.de>
parents: 764
diff changeset
351 local crontabopt=''
764
5b505acbb2d1 Handle system wide installation for crontab.
Sascha Wilde <wilde@intevation.de>
parents: 763
diff changeset
352 fi
765
7c3a8a8d3e52 Code cleanup: make variable initialization more obvious.
Sascha Wilde <wilde@intevation.de>
parents: 764
diff changeset
353
766
9f0ad4bab175 Fixed crontab setup for system wide (de)installation.
Sascha Wilde <wilde@intevation.de>
parents: 765
diff changeset
354 if [ "$1" != "deinstall" ] ; then
9f0ad4bab175 Fixed crontab setup for system wide (de)installation.
Sascha Wilde <wilde@intevation.de>
parents: 765
diff changeset
355 local trustbridge_tray_starter="${instcfg[PREFIX]}/bin/trustbridge-tray-starter.sh"
9f0ad4bab175 Fixed crontab setup for system wide (de)installation.
Sascha Wilde <wilde@intevation.de>
parents: 765
diff changeset
356 else
9f0ad4bab175 Fixed crontab setup for system wide (de)installation.
Sascha Wilde <wilde@intevation.de>
parents: 765
diff changeset
357 local trustbridge_tray_starter="${oldinstcfg[PREFIX]}/bin/trustbridge-tray-starter.sh"
9f0ad4bab175 Fixed crontab setup for system wide (de)installation.
Sascha Wilde <wilde@intevation.de>
parents: 765
diff changeset
358 fi
9f0ad4bab175 Fixed crontab setup for system wide (de)installation.
Sascha Wilde <wilde@intevation.de>
parents: 765
diff changeset
359
764
5b505acbb2d1 Handle system wide installation for crontab.
Sascha Wilde <wilde@intevation.de>
parents: 763
diff changeset
360 crontab $crontabopt -l | \
766
9f0ad4bab175 Fixed crontab setup for system wide (de)installation.
Sascha Wilde <wilde@intevation.de>
parents: 765
diff changeset
361 grep -vF "$trustbridge_tray_starter" \
764
5b505acbb2d1 Handle system wide installation for crontab.
Sascha Wilde <wilde@intevation.de>
parents: 763
diff changeset
362 >"$tmpcrontab"
750
27dd0012288a Remove cron job on deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 749
diff changeset
363 if [ "$1" != "deinstall" ] ; then
766
9f0ad4bab175 Fixed crontab setup for system wide (de)installation.
Sascha Wilde <wilde@intevation.de>
parents: 765
diff changeset
364 echo "$(( $RANDOM / 555 )) 12 * * * \"$trustbridge_tray_starter\"" \
750
27dd0012288a Remove cron job on deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 749
diff changeset
365 >>"$tmpcrontab"
27dd0012288a Remove cron job on deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 749
diff changeset
366 fi
764
5b505acbb2d1 Handle system wide installation for crontab.
Sascha Wilde <wilde@intevation.de>
parents: 763
diff changeset
367 crontab $crontabopt "$tmpcrontab"
749
778382342802 Added installation of cron job.
Sascha Wilde <wilde@intevation.de>
parents: 738
diff changeset
368 rm "$tmpcrontab"
778382342802 Added installation of cron job.
Sascha Wilde <wilde@intevation.de>
parents: 738
diff changeset
369 }
778382342802 Added installation of cron job.
Sascha Wilde <wilde@intevation.de>
parents: 738
diff changeset
370
750
27dd0012288a Remove cron job on deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 749
diff changeset
371 remove_cronjob()
27dd0012288a Remove cron job on deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 749
diff changeset
372 {
27dd0012288a Remove cron job on deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 749
diff changeset
373 setup_cronjob deinstall
27dd0012288a Remove cron job on deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 749
diff changeset
374 }
27dd0012288a Remove cron job on deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 749
diff changeset
375
723
e71c59b16eee Added certificate deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 711
diff changeset
376 deinstall_certs()
e71c59b16eee Added certificate deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 711
diff changeset
377 {
e71c59b16eee Added certificate deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 711
diff changeset
378 local cinst="${oldinstcfg[PREFIX]}/bin/cinst"
858
4dfb6f543a05 Only uninstall a list if it has been installed
Andre Heinecke <andre.heinecke@intevation.de>
parents: 854
diff changeset
379 local certlist=`ls 2>/dev/null -1 ${instdata_path}/list-installed.txt`
723
e71c59b16eee Added certificate deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 711
diff changeset
380
795
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
381 getxt "Uninstalling certificates ...\n"
728
2d64ff7e22e8 Factored out recursive deletion of empty dirs.
Sascha Wilde <wilde@intevation.de>
parents: 727
diff changeset
382
723
e71c59b16eee Added certificate deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 711
diff changeset
383 if [ "$certlist" ] ; then
795
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
384 getxt "Using certificate list '%s'.\n" "$certlist"
725
ce3e33e66a17 Fixed cert deinstallation for prefix-paths containing space.
Sascha Wilde <wilde@intevation.de>
parents: 724
diff changeset
385 if [ -x "$cinst" ] ; then
723
e71c59b16eee Added certificate deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 711
diff changeset
386 "$cinst" "list=$certlist" "choices=uninstall"
e71c59b16eee Added certificate deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 711
diff changeset
387 else
795
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
388 getxt >&2 "WARNING: can't execute %s for certificate deinstallation.\n" "$cinst"
723
e71c59b16eee Added certificate deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 711
diff changeset
389 fi
e71c59b16eee Added certificate deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 711
diff changeset
390 else
795
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
391 getxt "No certificate list found. Nothing to do.\n"
723
e71c59b16eee Added certificate deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 711
diff changeset
392 fi
e71c59b16eee Added certificate deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 711
diff changeset
393 }
e71c59b16eee Added certificate deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 711
diff changeset
394
729
efc2d16ab514 Remove (more) data files and directories.
Sascha Wilde <wilde@intevation.de>
parents: 728
diff changeset
395 deinstall_etc()
efc2d16ab514 Remove (more) data files and directories.
Sascha Wilde <wilde@intevation.de>
parents: 728
diff changeset
396 {
795
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
397 getxt "Removing cron job ...\n"
750
27dd0012288a Remove cron job on deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 749
diff changeset
398 remove_cronjob
27dd0012288a Remove cron job on deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 749
diff changeset
399
729
efc2d16ab514 Remove (more) data files and directories.
Sascha Wilde <wilde@intevation.de>
parents: 728
diff changeset
400 # FIXME: delete all files created by the application.
751
d8c8e14b9953 Remove trustbridge-tray-starter configuration on deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 750
diff changeset
401 local tbcfg_files=( "${instcfg_path}/TrustBridge.ini"
d8c8e14b9953 Remove trustbridge-tray-starter configuration on deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 750
diff changeset
402 "${instcfg_path}/trustbridge-tray-starter.cfg"
d8c8e14b9953 Remove trustbridge-tray-starter configuration on deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 750
diff changeset
403 "$instcfg_file" )
752
96cac71834ba Fixed errors when not all expected files exist on deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 751
diff changeset
404
795
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
405 getxt "Removing certificate lists from: %s:\n" "$instdata_path"
752
96cac71834ba Fixed errors when not all expected files exist on deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 751
diff changeset
406 rm_files "$instdata_path"/list-*.txt
795
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
407
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
408 getxt "Removing PID file from: %s:\n" "$instdata_path"
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
409 rm_files "$instdata_path"/*.pid
729
efc2d16ab514 Remove (more) data files and directories.
Sascha Wilde <wilde@intevation.de>
parents: 728
diff changeset
410 rm_empty_dirs "$instdata_path"
751
d8c8e14b9953 Remove trustbridge-tray-starter configuration on deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 750
diff changeset
411
795
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
412 getxt "Removing configuration files:\n"
752
96cac71834ba Fixed errors when not all expected files exist on deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 751
diff changeset
413 rm_files "${tbcfg_files[@]}"
729
efc2d16ab514 Remove (more) data files and directories.
Sascha Wilde <wilde@intevation.de>
parents: 728
diff changeset
414 rm_empty_dirs "$instcfg_path"
777
ca149bad8195 (issue51) Set up autostart on installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 776
diff changeset
415
795
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
416 getxt "Removing TrustBridge from autostart\n"
854
adf7481291a4 Fixed typo in ubuntu desktop file.
Emanuel Schuetze <emanuel@intevation.de>
parents: 799
diff changeset
417 rm_files "${autostart_path}/trustbridge.desktop"
916
1cc9faa572fd (issue53) Update desktop database after desktop file removal
Andre Heinecke <andre.heinecke@intevation.de>
parents: 873
diff changeset
418 update-desktop-database 2>&1 || true
872
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
419
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
420 getxt "Removing TrustBridge from start menu\n"
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
421 rm_files "${startmenu_path}/trustbridge.desktop"
729
efc2d16ab514 Remove (more) data files and directories.
Sascha Wilde <wilde@intevation.de>
parents: 728
diff changeset
422 }
efc2d16ab514 Remove (more) data files and directories.
Sascha Wilde <wilde@intevation.de>
parents: 728
diff changeset
423
711
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
424 deinstall()
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
425 {
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
426 if [ "${oldinstcfg[PREFIX]}" ] ; then
795
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
427 getxt "Really deinstall TrustBridge from '%s'? [y/n]\n" "${oldinstcfg[PREFIX]}"
711
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
428 yorn || exit 0
723
e71c59b16eee Added certificate deinstallation.
Sascha Wilde <wilde@intevation.de>
parents: 711
diff changeset
429 deinstall_certs
711
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
430 local deinstdir="${oldinstcfg[PREFIX]}/bin"
795
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
431 getxt "Deinstalling from '%s'.\n" "${oldinstcfg[PREFIX]}"
711
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
432 for file in $BINNAMES ; do
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
433 local path="${deinstdir}/$file"
795
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
434 getxt "Deleting '%s' ...\n" "$path"
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
435 rm "$path" || getxt >&2 "WARNING: Could not delete: '%s'!\n" "$path"
711
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
436 done
728
2d64ff7e22e8 Factored out recursive deletion of empty dirs.
Sascha Wilde <wilde@intevation.de>
parents: 727
diff changeset
437 rm_empty_dirs "$deinstdir"
938
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
438
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
439 # images
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
440 deinstdir="${oldinstcfg[PREFIX]}/share/doc/trustbridge/_images"
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
441 for file in $HELPNAMES_IMG; do
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
442 local path="${deinstdir}/$file"
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
443 if [ -f "$path" ]; then
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
444 getxt "Deleting '%s' ...\n" "$path"
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
445 rm "$path" || getxt >&2 "WARNING: Could not delete: '%s'!\n" "$path"
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
446 fi
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
447 done
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
448 rm_empty_dirs "$deinstdir"
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
449
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
450 # Javascript sources
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
451 deinstdir="${oldinstcfg[PREFIX]}/share/doc/trustbridge/_sources"
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
452 for file in $HELPNAMES_SOURCES; do
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
453 local path="${deinstdir}/$file"
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
454 if [ -f "$path" ]; then
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
455 getxt "Deleting '%s' ...\n" "$path"
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
456 rm "$path" || getxt >&2 "WARNING: Could not delete: '%s'!\n" "$path"
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
457 fi
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
458 done
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
459 rm_empty_dirs "$deinstdir"
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
460
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
461 # Static files
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
462 deinstdir="${oldinstcfg[PREFIX]}/share/doc/trustbridge/_static"
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
463 for file in $HELPNAMES_STATIC; do
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
464 local path="${deinstdir}/$file"
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
465 if [ -f "$path" ]; then
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
466 getxt "Deleting '%s' ...\n" "$path"
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
467 rm "$path" || getxt >&2 "WARNING: Could not delete: '%s'!\n" "$path"
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
468 fi
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
469 done
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
470 rm_empty_dirs "$deinstdir"
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
471
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
472 # The actual html
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
473 deinstdir="${oldinstcfg[PREFIX]}/share/doc/trustbridge"
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
474 for file in $HELPNAMES; do
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
475 local path="${deinstdir}/$file"
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
476 if [ -f "$path" ]; then
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
477 getxt "Deleting '%s' ...\n" "$path"
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
478 rm "$path" || getxt >&2 "WARNING: Could not delete: '%s'!\n" "$path"
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
479 fi
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
480 done
15f7b3ebf21b (issue89) Add help packaging for Linux installer
Andre Heinecke <andre.heinecke@intevation.de>
parents: 937
diff changeset
481 rm_empty_dirs "$deinstdir"
872
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
482 deinstdir="${oldinstcfg[PREFIX]}/share/pixmaps/trustbridge"
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
483 getxt "Deinstalling from '%s'.\n" "${oldinstcfg[PREFIX]}"
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
484 for file in $ICONNAME; do
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
485 local path="${deinstdir}/$file"
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
486 getxt "Deleting '%s' ...\n" "$path"
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
487 rm "$path" || getxt >&2 "WARNING: Could not delete: '%s'!\n" "$path"
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
488 done
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
489 deinstdir="${oldinstcfg[PREFIX]}/share/pixmaps/trustbridge"
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
490 rm_empty_dirs "$deinstdir"
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
491 deinstdir="${oldinstcfg[PREFIX]}/share/pixmaps"
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
492 rm_empty_dirs "$deinstdir"
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
493 deinstdir="${oldinstcfg[PREFIX]}/share"
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
494 rm_empty_dirs "$deinstdir"
729
efc2d16ab514 Remove (more) data files and directories.
Sascha Wilde <wilde@intevation.de>
parents: 728
diff changeset
495 deinstall_etc
795
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
496 getxt "Deinstallation finished.\n"
711
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
497 else
795
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
498 getxt "No current installation found! No harm done.\n"
711
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
499 fi
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
500 }
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
501
777
ca149bad8195 (issue51) Set up autostart on installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 776
diff changeset
502 write_autostart()
ca149bad8195 (issue51) Set up autostart on installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 776
diff changeset
503 {
ca149bad8195 (issue51) Set up autostart on installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 776
diff changeset
504 cat > "$1" << EOF
ca149bad8195 (issue51) Set up autostart on installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 776
diff changeset
505 [Desktop Entry]
ca149bad8195 (issue51) Set up autostart on installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 776
diff changeset
506 Type=Application
ca149bad8195 (issue51) Set up autostart on installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 776
diff changeset
507 Name=TrustBridge
ca149bad8195 (issue51) Set up autostart on installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 776
diff changeset
508 Exec="${instcfg[PREFIX]}/bin/trustbridge" --tray
ca149bad8195 (issue51) Set up autostart on installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 776
diff changeset
509 EOF
ca149bad8195 (issue51) Set up autostart on installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 776
diff changeset
510 chown "${SUDO_USER:-${USER}}" "$1"
ca149bad8195 (issue51) Set up autostart on installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 776
diff changeset
511 chmod 700 "$1"
ca149bad8195 (issue51) Set up autostart on installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 776
diff changeset
512 }
ca149bad8195 (issue51) Set up autostart on installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 776
diff changeset
513
872
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
514 write_startmenu()
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
515 {
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
516 cat > "$1" << EOF
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
517 [Desktop Entry]
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
518 Type=Application
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
519 Name=TrustBridge
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
520 Comment=Install and update trusted root certificates
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
521 Comment[de]=Vertrauenswürdige Wurzelzertifikate installieren und aktualisieren
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
522 Exec=${instcfg[PREFIX]}/bin/trustbridge
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
523 Icon=${instcfg[PREFIX]}/share/pixmaps/trustbridge/trustbridge.png
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
524 Terminal=false
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
525 Categories=Network;Qt;
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
526 StartupNotify=false
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
527 EOF
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
528 }
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
529
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
530 setup_startmenu()
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
531 {
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
532 # Supported desktop environments: Unity, GNOME, XFCE, LXDE, KDE
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
533 # System wide installation with a nonstandard XDG_DATA_HOME is not
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
534 # respected with regards to autostart.
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
535 if [ ! -d "${startmenu_path}" ]; then
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
536 install -d "${startmenu_path}" || \
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
537 fatal "Failed to create startmenu directory: '%s'\n" "$startmenu_path"
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
538 fi
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
539
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
540 write_startmenu "${startmenu_path}/trustbridge.desktop"
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
541 update-desktop-database 2>&1 || true
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
542 }
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
543
777
ca149bad8195 (issue51) Set up autostart on installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 776
diff changeset
544 setup_autostart()
ca149bad8195 (issue51) Set up autostart on installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 776
diff changeset
545 {
ca149bad8195 (issue51) Set up autostart on installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 776
diff changeset
546 # Supported desktop environments: Unity, GNOME, XFCE, LXDE, KDE
785
2fb539d4b1ff Simply autostart creation by initializing the path in init_vars
Andre Heinecke <andre.heinecke@intevation.de>
parents: 777
diff changeset
547 # System wide installation with a nonstandard XDG_CONFIG_HOME or KDEHOME is not
2fb539d4b1ff Simply autostart creation by initializing the path in init_vars
Andre Heinecke <andre.heinecke@intevation.de>
parents: 777
diff changeset
548 # respected with regards to autostart.
2fb539d4b1ff Simply autostart creation by initializing the path in init_vars
Andre Heinecke <andre.heinecke@intevation.de>
parents: 777
diff changeset
549 if [ ! -d "${autostart_path}" ]; then
2fb539d4b1ff Simply autostart creation by initializing the path in init_vars
Andre Heinecke <andre.heinecke@intevation.de>
parents: 777
diff changeset
550 install -d "${autostart_path}" || \
795
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
551 fatal "Failed to create autostart directory: '%s'\n" "$autostart_path"
785
2fb539d4b1ff Simply autostart creation by initializing the path in init_vars
Andre Heinecke <andre.heinecke@intevation.de>
parents: 777
diff changeset
552 fi
777
ca149bad8195 (issue51) Set up autostart on installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 776
diff changeset
553
854
adf7481291a4 Fixed typo in ubuntu desktop file.
Emanuel Schuetze <emanuel@intevation.de>
parents: 799
diff changeset
554 write_autostart "${autostart_path}/trustbridge.desktop"
777
ca149bad8195 (issue51) Set up autostart on installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 776
diff changeset
555 }
707
37899f717fa5 Added system wide installation.
Sascha Wilde <wilde@intevation.de>
parents: 705
diff changeset
556
873
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
557 provide_uudecode_maybe()
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
558 {
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
559 # The shar needs uudecode, which might not be installed. If its not
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
560 # available we will provide our own python based implementation.
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
561 if which uudecode >/dev/null 2>&1 ; then
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
562 getxt "Found system uudecode.\n"
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
563 else
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
564 local myuudecode="$extra_bin_path/uudecode"
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
565 cat >"$myuudecode" <<EOF
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
566 #!/usr/bin/python2
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
567 import os
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
568 import sys
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
569 import uu
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
570 os.path.chmod = os.chmod
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
571 def rm_if_exists(file):
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
572 try:
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
573 os.remove(file)
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
574 except OSError:
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
575 pass
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
576 os.path.exists = rm_if_exists
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
577 if len(sys.argv) > 1:
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
578 f = open(sys.argv[1], 'r')
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
579 else:
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
580 f = sys.stdin
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
581 uu.decode(f, None, None, 1)
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
582 EOF
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
583 chmod 755 "$myuudecode"
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
584 PATH="${extra_bin_path}:$PATH"
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
585 getxt "Using python uudecode provided by installer.\n"
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
586 fi
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
587 }
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
588
698
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
589 #======================================================================
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
590 # main()
935
e977f7a0e8fd Cleanup temporary stuff (like shar lockdir) always (even when interrupted) on exit.
Sascha Wilde <wilde@intevation.de>
parents: 916
diff changeset
591 trap cleanup EXIT
698
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
592
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
593 parse_args "$@"
1040
43734932e2ea (issue100) Fall back to system wide deinstallation when no local installation is found
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1038
diff changeset
594 check_priv
707
37899f717fa5 Added system wide installation.
Sascha Wilde <wilde@intevation.de>
parents: 705
diff changeset
595 init_vars
705
ff2efc1cb8fa Use config from old installation for sensible default prefix.
Sascha Wilde <wilde@intevation.de>
parents: 704
diff changeset
596 read_oldinstcfg
698
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
597
680
a5a709c6ce93 Added minimal shar based installer for linux.
Sascha Wilde <wilde@intevation.de>
parents:
diff changeset
598 cat <<EOF
a5a709c6ce93 Added minimal shar based installer for linux.
Sascha Wilde <wilde@intevation.de>
parents:
diff changeset
599 ------------------------------------------------------------------------
a5a709c6ce93 Added minimal shar based installer for linux.
Sascha Wilde <wilde@intevation.de>
parents:
diff changeset
600
a5a709c6ce93 Added minimal shar based installer for linux.
Sascha Wilde <wilde@intevation.de>
parents:
diff changeset
601 TrustBridge - Installer
972
8be2f510adbf (issue91) Make installer architecture aware.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 938
diff changeset
602 Version ${instcfg[VERSION]} - ${ARCH} (Testversion)
680
a5a709c6ce93 Added minimal shar based installer for linux.
Sascha Wilde <wilde@intevation.de>
parents:
diff changeset
603
a5a709c6ce93 Added minimal shar based installer for linux.
Sascha Wilde <wilde@intevation.de>
parents:
diff changeset
604 ------------------------------------------------------------------------
a5a709c6ce93 Added minimal shar based installer for linux.
Sascha Wilde <wilde@intevation.de>
parents:
diff changeset
605 EOF
a5a709c6ce93 Added minimal shar based installer for linux.
Sascha Wilde <wilde@intevation.de>
parents:
diff changeset
606
972
8be2f510adbf (issue91) Make installer architecture aware.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 938
diff changeset
607 if [ "$ARCH" == "x86_64" -a "$ARCH" != "$HOST_ARCH" ]; then
8be2f510adbf (issue91) Make installer architecture aware.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 938
diff changeset
608 getxt "It appears your system architecture is %s.\n" "$HOST_ARCH"
8be2f510adbf (issue91) Make installer architecture aware.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 938
diff changeset
609 getxt "This installer is for 64 bit systems.\n"
8be2f510adbf (issue91) Make installer architecture aware.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 938
diff changeset
610 getxt "Really install TrustBridge for '%s' systems? [y/n]\n" "${ARCH}"
8be2f510adbf (issue91) Make installer architecture aware.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 938
diff changeset
611 yorn || exit 0
8be2f510adbf (issue91) Make installer architecture aware.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 938
diff changeset
612 fi
8be2f510adbf (issue91) Make installer architecture aware.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 938
diff changeset
613
8be2f510adbf (issue91) Make installer architecture aware.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 938
diff changeset
614 if [ "$ARCH" == "i386" ]; then
8be2f510adbf (issue91) Make installer architecture aware.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 938
diff changeset
615 if [[ "$HOST_ARCH" != *86 ]]; then
8be2f510adbf (issue91) Make installer architecture aware.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 938
diff changeset
616 getxt "It appears your system architecture is %s.\n" "$HOST_ARCH"
8be2f510adbf (issue91) Make installer architecture aware.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 938
diff changeset
617 getxt "This installer is for 32 bit systems.\n"
8be2f510adbf (issue91) Make installer architecture aware.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 938
diff changeset
618 getxt "Really install TrustBridge for '%s' systems? [y/n]\n" "${ARCH}"
8be2f510adbf (issue91) Make installer architecture aware.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 938
diff changeset
619 yorn || exit 0
8be2f510adbf (issue91) Make installer architecture aware.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 938
diff changeset
620 fi
8be2f510adbf (issue91) Make installer architecture aware.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 938
diff changeset
621 fi
8be2f510adbf (issue91) Make installer architecture aware.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 938
diff changeset
622
711
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
623 if [ $DEINSTALL -eq 1 ] ; then
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
624 deinstall
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
625 # Stop after deinstallation:
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
626 exit 0
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
627 fi
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
628
700
bf87feccb26c Write installation configuration file.
Sascha Wilde <wilde@intevation.de>
parents: 698
diff changeset
629 if [ -z "${instcfg[PREFIX]}" ] ; then
705
ff2efc1cb8fa Use config from old installation for sensible default prefix.
Sascha Wilde <wilde@intevation.de>
parents: 704
diff changeset
630
ff2efc1cb8fa Use config from old installation for sensible default prefix.
Sascha Wilde <wilde@intevation.de>
parents: 704
diff changeset
631 if [ "${oldinstcfg[PREFIX]}" ] ; then
707
37899f717fa5 Added system wide installation.
Sascha Wilde <wilde@intevation.de>
parents: 705
diff changeset
632 inst_default_prefix="${oldinstcfg[PREFIX]}"
795
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
633 getxt "An existing installation (v%s) was detected!\n" "${oldinstcfg[VERSION]}"
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
634 getxt "It is HIGHLY RECOMMENDED to accept the default prefix\n"
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
635 getxt "to update the current installation.\n"
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
636 getxt "For a new prefix you should deinstall first!\n"
705
ff2efc1cb8fa Use config from old installation for sensible default prefix.
Sascha Wilde <wilde@intevation.de>
parents: 704
diff changeset
637 fi
795
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
638 getxt "Select installation prefix for TrustBridge [%s]: " "${inst_default_prefix}"
700
bf87feccb26c Write installation configuration file.
Sascha Wilde <wilde@intevation.de>
parents: 698
diff changeset
639 read -e instcfg[PREFIX]
680
a5a709c6ce93 Added minimal shar based installer for linux.
Sascha Wilde <wilde@intevation.de>
parents:
diff changeset
640
707
37899f717fa5 Added system wide installation.
Sascha Wilde <wilde@intevation.de>
parents: 705
diff changeset
641 [ -z "${instcfg[PREFIX]}" ] && instcfg[PREFIX]="${inst_default_prefix}"
705
ff2efc1cb8fa Use config from old installation for sensible default prefix.
Sascha Wilde <wilde@intevation.de>
parents: 704
diff changeset
642 else
ff2efc1cb8fa Use config from old installation for sensible default prefix.
Sascha Wilde <wilde@intevation.de>
parents: 704
diff changeset
643 # Prefix was given on invocation:
ff2efc1cb8fa Use config from old installation for sensible default prefix.
Sascha Wilde <wilde@intevation.de>
parents: 704
diff changeset
644 if [ "${oldinstcfg[PREFIX]}" -a \
ff2efc1cb8fa Use config from old installation for sensible default prefix.
Sascha Wilde <wilde@intevation.de>
parents: 704
diff changeset
645 "${instcfg[PREFIX]}" != "${oldinstcfg[PREFIX]}" -a \
ff2efc1cb8fa Use config from old installation for sensible default prefix.
Sascha Wilde <wilde@intevation.de>
parents: 704
diff changeset
646 $FORCE -ne 1 ] ; then
795
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
647 fatal "Prefix differs from current installation (%s). Aborting!\n" "${oldinstcfg[PREFIX]}"
705
ff2efc1cb8fa Use config from old installation for sensible default prefix.
Sascha Wilde <wilde@intevation.de>
parents: 704
diff changeset
648 fi
698
b55d49150e36 Added command line args for unattended installation.
Sascha Wilde <wilde@intevation.de>
parents: 682
diff changeset
649 fi
682
578860edde53 Use default path.
Sascha Wilde <wilde@intevation.de>
parents: 680
diff changeset
650
795
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
651 getxt "Installing to '%s':\n" "${instcfg[PREFIX]}"
680
a5a709c6ce93 Added minimal shar based installer for linux.
Sascha Wilde <wilde@intevation.de>
parents:
diff changeset
652
700
bf87feccb26c Write installation configuration file.
Sascha Wilde <wilde@intevation.de>
parents: 698
diff changeset
653 if [ ! -d "${instcfg[PREFIX]}" ] ; then
795
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
654 getxt "creating installation directory ...\n"
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
655 install -d "${instcfg[PREFIX]}" || fatal "Could not create '%s'!\n" "${instcfg[PREFIX]}"
680
a5a709c6ce93 Added minimal shar based installer for linux.
Sascha Wilde <wilde@intevation.de>
parents:
diff changeset
656 fi
a5a709c6ce93 Added minimal shar based installer for linux.
Sascha Wilde <wilde@intevation.de>
parents:
diff changeset
657
873
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
658 getxt "checking for uudecode ...\n"
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
659 provide_uudecode_maybe
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
660
795
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
661 getxt "unpacking files ...\n"
700
bf87feccb26c Write installation configuration file.
Sascha Wilde <wilde@intevation.de>
parents: 698
diff changeset
662 cd "${instcfg[PREFIX]}"
680
a5a709c6ce93 Added minimal shar based installer for linux.
Sascha Wilde <wilde@intevation.de>
parents:
diff changeset
663
711
acbe75423283 Added deinstallation functionality.
Sascha Wilde <wilde@intevation.de>
parents: 707
diff changeset
664 set +u
753
7c1f34115ede Force the shar to overwrite existing files.
Sascha Wilde <wilde@intevation.de>
parents: 752
diff changeset
665 set -- '-c'
680
a5a709c6ce93 Added minimal shar based installer for linux.
Sascha Wilde <wilde@intevation.de>
parents:
diff changeset
666 # ----------------------------------------------------------------------
700
bf87feccb26c Write installation configuration file.
Sascha Wilde <wilde@intevation.de>
parents: 698
diff changeset
667 # regular shar archive inserted here:
bf87feccb26c Write installation configuration file.
Sascha Wilde <wilde@intevation.de>
parents: 698
diff changeset
668 ###SHAR###
bf87feccb26c Write installation configuration file.
Sascha Wilde <wilde@intevation.de>
parents: 698
diff changeset
669 # ----------------------------------------------------------------------
bf87feccb26c Write installation configuration file.
Sascha Wilde <wilde@intevation.de>
parents: 698
diff changeset
670
795
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
671 getxt "Preparing trustbridge-tray-starter ...\n"
738
ea8d13590cbd Added trustbridge-tray-starter script for use with cron job.
Sascha Wilde <wilde@intevation.de>
parents: 730
diff changeset
672 sed -i "/^PREFIX=/c\PREFIX='${instcfg[PREFIX]}'" \
ea8d13590cbd Added trustbridge-tray-starter script for use with cron job.
Sascha Wilde <wilde@intevation.de>
parents: 730
diff changeset
673 "${instcfg[PREFIX]}/bin/trustbridge-tray-starter.sh"
ea8d13590cbd Added trustbridge-tray-starter script for use with cron job.
Sascha Wilde <wilde@intevation.de>
parents: 730
diff changeset
674
795
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
675 getxt "Setting up cronjob ...\n"
749
778382342802 Added installation of cron job.
Sascha Wilde <wilde@intevation.de>
parents: 738
diff changeset
676 setup_cronjob
778382342802 Added installation of cron job.
Sascha Wilde <wilde@intevation.de>
parents: 738
diff changeset
677
795
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
678 getxt "Setting up autostart ...\n"
777
ca149bad8195 (issue51) Set up autostart on installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 776
diff changeset
679 setup_autostart
ca149bad8195 (issue51) Set up autostart on installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 776
diff changeset
680
872
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
681 getxt "Setting up start menu entries ...\n"
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
682 setup_startmenu
02e357826417 (issue81) Add desktop file
Andre Heinecke <andre.heinecke@intevation.de>
parents: 863
diff changeset
683
795
3a9b0c75f5a6 Added i18n code and german l10n to linux installer.
Sascha Wilde <wilde@intevation.de>
parents: 785
diff changeset
684 getxt "Writing installation configuration to: %s ...\n" "$instcfg_file"
700
bf87feccb26c Write installation configuration file.
Sascha Wilde <wilde@intevation.de>
parents: 698
diff changeset
685 write_instcfg
873
78096ad6f418 Provide own, python based uudecode if none is found in the system.
Sascha Wilde <wilde@intevation.de>
parents: 872
diff changeset
686
1066
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
687 finished
febd195c0301 (issue109) Add summary after installation.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 1049
diff changeset
688
935
e977f7a0e8fd Cleanup temporary stuff (like shar lockdir) always (even when interrupted) on exit.
Sascha Wilde <wilde@intevation.de>
parents: 916
diff changeset
689 # cleanup
e977f7a0e8fd Cleanup temporary stuff (like shar lockdir) always (even when interrupted) on exit.
Sascha Wilde <wilde@intevation.de>
parents: 916
diff changeset
690 # is called implicitly at exit via trap...
700
bf87feccb26c Write installation configuration file.
Sascha Wilde <wilde@intevation.de>
parents: 698
diff changeset
691 exit 0

http://wald.intevation.org/projects/trustbridge/