File u_tigervnc_update_default_vncxstartup.patch of Package tigervnc.28834

Author: Michal Srb <msrb@suse.com>
References: bnc#956537
Subject: Update default vnc xstartup script.

Index: tigervnc-1.10.1/unix/vncserver
===================================================================
--- tigervnc-1.10.1.orig/unix/vncserver
+++ tigervnc-1.10.1/unix/vncserver
@@ -58,27 +58,33 @@ $defaultXStartup
     = ("#!/bin/sh\n\n".
        "unset SESSION_MANAGER\n".
        "unset DBUS_SESSION_BUS_ADDRESS\n".
-       "OS=`uname -s`\n".
-       "if [ \$OS = 'Linux' ]; then\n".
-       "  case \"\$WINDOWMANAGER\" in\n".
-       "    \*gnome\*)\n".
-       "      if [ -e /etc/SuSE-release ]; then\n".
-       "        PATH=\$PATH:/opt/gnome/bin\n".
-       "        export PATH\n".
-       "      fi\n".
-       "      ;;\n".
-       "  esac\n".
+       "\n".
+       "userclientrc=\$HOME/.xinitrc\n".
+       "sysclientrc=/usr/libexec/xinit/xinitrc\n".
+       "\n".
+       "if [ -f \"\$userclientrc\" ]; then\n".
+       "  client=\"\$userclientrc\"\n".
+       "elif [ -f \"\$sysclientrc\" ]; then\n".
+       "  client=\"\$sysclientrc\"\n".
+       "elif [ -f \"/etc/X11/xinit/xinitrc\" ]; then\n".
+       "  client=\"/etc/X11/xinit/xinitrc\"\n".
        "fi\n".
-       "if [ -x /etc/X11/xinit/xinitrc ]; then\n".
-       "  exec /etc/X11/xinit/xinitrc\n".
+       "\n".
+       "if [ -x \"\$client\" ]; then\n".
+       "  exec dbus-launch --exit-with-x11 \"\$client\"\n".
        "fi\n".
-       "if [ -f /etc/X11/xinit/xinitrc ]; then\n".
-       "  exec sh /etc/X11/xinit/xinitrc\n".
+       "if [ -f \"\$client\" ]; then\n".
+       "  exec dbus-launch --exit-with-x11 sh \"\$client\"\n".
        "fi\n".
+       "\n".
        "[ -r \$HOME/.Xresources ] && xrdb \$HOME/.Xresources\n".
        "xsetroot -solid grey\n".
        "xterm -geometry 80x24+10+10 -ls -title \"\$VNCDESKTOP Desktop\" &\n".
-       "twm &\n");
+       "if [ -x /usr/bin/twm ]; then\n".
+       "  /usr/bin/twm &\n".
+       "else\n".
+       "  echo \"No window manager found. You should install a window manager to get properly working VNC session.\"\n".
+       "fi\n");
 
 $defaultConfig
     = ("## Supported server options to pass to vncserver upon invocation can be listed\n".
openSUSE Build Service is sponsored by