summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJonathan Bauer2014-04-14 19:00:59 +0200
committerJonathan Bauer2014-04-14 19:00:59 +0200
commitcf1f000eb5a2b9d8da93ee52013ec368432511b7 (patch)
tree80ace276cf9f9b63869b58cbf8de4e9b9a6f35f9
parentMerge branch 'master' of git.openslx.org:openslx-ng/tm-scripts (diff)
downloadtm-scripts-cf1f000eb5a2b9d8da93ee52013ec368432511b7.tar.gz
tm-scripts-cf1f000eb5a2b9d8da93ee52013ec368432511b7.tar.xz
tm-scripts-cf1f000eb5a2b9d8da93ee52013ec368432511b7.zip
added include for selecting qt version
-rw-r--r--remote/includes/qt.inc21
1 files changed, 21 insertions, 0 deletions
diff --git a/remote/includes/qt.inc b/remote/includes/qt.inc
new file mode 100644
index 00000000..e14aed4b
--- /dev/null
+++ b/remote/includes/qt.inc
@@ -0,0 +1,21 @@
+activate_qt() {
+ [ $# -eq 1 ] || perror "activate_qt() requires the version as only argument, $# given."
+ local QT_VERSION="$1"
+ local QT_DEFAULT="$(readlink -f /usr/share/qtchooser/default.conf)"
+ if [ -e "$QT_DEFAULT" ]; then
+ [[ "$(basename "$QT_DEFAULT")" =~ ^qt$QT_VERSION.*\.conf$ ]] || perror "Something with QT4 is bad. Check '/usr/share/qtchooser'"
+ else
+ # no default active, try to set it
+ local QT_CANDIDATES="$(ls /usr/share/qtchooser | grep -v default.conf | grep qt$QT_VERSION)"
+ local QTS="$(echo $QT_CANDIDATES | wc -w)"
+ if [ "$QTS" -eq 1 ]; then
+ # we found it, lets activate it and hope for the best
+ ln -sf /usr/share/qtchooser/$QT_CANDIDATES /usr/share/qtchooser/default.conf \
+ || perror "Could not link 'default.conf' to '/usr/share/qtchooser/$QT_CANDIDATES'"
+ else
+ # here we have the case with different qt4 files or none at all
+ # in both cases, there is a bigger problem we shouldn't try to guess which one is correct
+ perror "Either none or more than 1 qt4 version found in '/usr/share/qtchooser'. The configuration is messy. Fix it first."
+ fi
+ fi
+}