summaryrefslogtreecommitdiffstats
path: root/vmware/runvmware
diff options
context:
space:
mode:
authorMichael Janczyk2006-10-03 19:09:46 +0200
committerMichael Janczyk2006-10-03 19:09:46 +0200
commitff1ca78b89fc72f0d848e938fd31cbb4742d8202 (patch)
tree759e3d3fcbd2a5d7c25a4187257bdf046bc2a4c2 /vmware/runvmware
parent* added OpenSLX-header to all my files. (diff)
downloadcore-ff1ca78b89fc72f0d848e938fd31cbb4742d8202.tar.gz
core-ff1ca78b89fc72f0d848e938fd31cbb4742d8202.tar.xz
core-ff1ca78b89fc72f0d848e938fd31cbb4742d8202.zip
now /w grouptest. checks machine-setup in which slxgrp a clinet is, and
only shows images for this group. git-svn-id: http://svn.openslx.org/svn/openslx/trunk@435 95ad53e4-c205-0410-b2fa-d234c58c8868
Diffstat (limited to 'vmware/runvmware')
-rwxr-xr-xvmware/runvmware63
1 files changed, 42 insertions, 21 deletions
diff --git a/vmware/runvmware b/vmware/runvmware
index c6b5d7f7..0f954b53 100755
--- a/vmware/runvmware
+++ b/vmware/runvmware
@@ -4,15 +4,19 @@
# X Stations (v4)
#
# Author(s): Dirk von Suchodoletz <dirk@goe.net>, 18-03-2006
-# Michael Janczyk <mj0@uni-freiburg.de>, 23-08-2006
+# Michael Janczyk <mj0@uni-freiburg.de>, 03-10-2006
# Copyright: (c) 2003, 2006 - RZ Universitaet Freiburg
#
-# Version: 0.14.324
+# Version: 0.15.435
#
################################################################################
+# read from machine-setup (for slxgrp)
+. /etc/machine-setup
+
+
### VERBOSE? ###################################################################
# set verbose mode (set -x(v))
@@ -345,33 +349,47 @@ checkalias () {
x_dialog () {
desktops=( `ls ${vmsessions}/*.desktop 2>/dev/null` )
desktopsnr=$(echo "${#desktops[*]}")
+ slxgrp=$(echo ${slxgrp} | tr [A-Z] [a-z])
+ slxgrptest=
(( args=0 ))
declare -i i=0
while [ "${desktopsnr}" -gt "${args}" ]; do
- # exec in .desktop
- execute[${i}]=$(grep -m 1 -i "exec" ${desktops[${args}]} \
- | awk -F "=" '{print $2}')
- menu="$menu \"\${execute[${i}]}\""
- i=${i}+1
-
- # name in .desktop
- execute[${i}]=$(grep -m 1 -i "name" ${desktops[${args}]} \
- | awk -F "=" '{print $2}')
- execute[${i}]=${execute[${i}]:-`echo ${execute[${i}-1]} | sed -e "s,-, ,g"`}
- menu="$menu \"\${execute[${i}]}\""
- i=${i}+1
-
- # comment in .desktop
- execute[${i}]=$(grep -m 1 -i "comment" ${desktops[${args}]} \
- | awk -F "=" '{print $2}')
- execute[${i}]=${execute[${i}]:-"No comment"}
- menu="$menu \"\${execute[${i}]}\""
- i=${i}+1
+
+ # check for slxgrp
+ slxgrptest=$(grep -m 1 -i "slxgrp" ${desktops[${args}]} \
+ | awk -F "=" '{print $2}' | tr [A-Z] [a-z])
+ if [ -z "${slxgrp}" -o "${slxgrp}" = "${slxgrptest}" -o "${slxgrp}" = "default" ]; \
+ then
+
+ # exec in .desktop
+ execute[${i}]=$(grep -m 1 -i "exec" ${desktops[${args}]} \
+ | awk -F "=" '{print $2}')
+ menu="$menu \"\${execute[${i}]}\""
+ i=${i}+1
+
+ # name in .desktop
+ execute[${i}]=$(grep -m 1 -i "name" ${desktops[${args}]} \
+ | awk -F "=" '{print $2}')
+ execute[${i}]=${execute[${i}]:-`echo ${execute[${i}-1]} | sed -e "s,-, ,g"`}
+ menu="$menu \"\${execute[${i}]}\""
+ i=${i}+1
+
+ # comment in .desktop
+ execute[${i}]=$(grep -m 1 -i "comment" ${desktops[${args}]} \
+ | awk -F "=" '{print $2}')
+ execute[${i}]=${execute[${i}]:-"No comment"}
+ menu="$menu \"\${execute[${i}]}\""
+ i=${i}+1
+
+ fi
(( args=${args}+1 ))
done
+ # test if menu not empty?
+ [ -z "${menu}" ] && Xdialog --infobox "No items found to display!!!" 10 30 3000 && exit 1
+
# --stderr because of 1>/dev/null
# echoing to file because Xdialog sux when used w/ quotes
echo -e "Xdialog --title \"VMware Image Menu\" \
@@ -694,6 +712,9 @@ if [ -n "${inter}" ]; then
writelog "\rXdialog not found! " 0 99
writelog "Please install Xdialog for interactive mode, \c" 0 0
writelog "or use option -s.\n" 0 0
+ # for non-console starts
+ xterm -e 'echo -e "\n\n\n\n\n\n\t\t\tNo Xdialog installed!!!\
+ \n\n\t\t\tClosing in 3 seconds."; sleep 3'
exit 1
fi