[X2go-Commits] x2goserver.git - master (branch) updated: 3.0.99.10-10-g3a17465

X2go dev team git-admin at x2go.org
Fri Feb 17 21:25:27 CET 2012


The branch, master has been updated
       via  3a1746539fe58fb31aab0eb6862647d279890edf (commit)
      from  745b2b21be2df3a91bf8c0870054cbc2138b37e1 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 3a1746539fe58fb31aab0eb6862647d279890edf
Author: Mike Gabriel <mike.gabriel at das-netzwerkteam.de>
Date:   Fri Feb 17 21:25:24 2012 +0100

    Provide new package x2goserver-fmbindings. Derived from a package draft provided by Milan Knížek (Thanks!).

-----------------------------------------------------------------------

Summary of changes:
 Makefile                                           |    6 +++
 debian/changelog                                   |    5 ++
 debian/control                                     |   28 ++++++++++++
 ...-extensions.dirs => x2goserver-fmbindings.dirs} |    0
 debian/x2goserver-fmbindings.install               |    3 +
 ...rver.preinst => x2goserver-fmbindings.postinst} |   26 +++++-------
 ...rinting.postrm => x2goserver-fmbindings.postrm} |   32 +++++++-------
 .../Makefile                                       |   37 ++++------------
 .../VERSION.x2goserver-fmbindings                  |    1 +
 x2goserver-fmbindings/bin/x2gofm                   |    8 ++++
 .../share/applications/x2gofm.desktop              |    9 ++++
 .../share/mime/packages/sshfs-x2go.xml             |   21 +++++++++
 .../x2gofeature.d/x2goserver-fmbindings.features   |   10 ++--
 x2goserver/bin/x2gomountdirs                       |   45 +++++++++++--------
 x2goserver/bin/x2goumount-session                  |   43 +++++++++++--------
 15 files changed, 174 insertions(+), 100 deletions(-)
 copy debian/{x2goserver-extensions.dirs => x2goserver-fmbindings.dirs} (100%)
 create mode 100644 debian/x2goserver-fmbindings.install
 copy debian/{x2goserver.preinst => x2goserver-fmbindings.postinst} (66%)
 copy debian/{x2goserver-printing.postrm => x2goserver-fmbindings.postrm} (59%)
 copy {x2goserver-xsession => x2goserver-fmbindings}/Makefile (59%)
 create mode 100644 x2goserver-fmbindings/VERSION.x2goserver-fmbindings
 create mode 100755 x2goserver-fmbindings/bin/x2gofm
 create mode 100644 x2goserver-fmbindings/share/applications/x2gofm.desktop
 create mode 100644 x2goserver-fmbindings/share/mime/packages/sshfs-x2go.xml
 copy x2goserver-xsession/share/x2gofeature.d/x2goserver-xsession.features => x2goserver-fmbindings/share/x2go/x2gofeature.d/x2goserver-fmbindings.features (74%)

The diff of changes is:
diff --git a/Makefile b/Makefile
index 77ae676..da9d5db 100755
--- a/Makefile
+++ b/Makefile
@@ -11,6 +11,7 @@ build_man2html:
 	$(MAKE) -C x2goserver-compat $@
 	$(MAKE) -C x2goserver-extensions $@
 	$(MAKE) -C x2goserver-xsession $@
+	$(MAKE) -C x2goserver-fmbindings $@
 	$(MAKE) -C x2goserver-pyhoca $@
 
 clean:
@@ -19,6 +20,7 @@ clean:
 	$(MAKE) -C x2goserver-compat $@
 	$(MAKE) -C x2goserver-extensions $@
 	$(MAKE) -C x2goserver-xsession $@
+	$(MAKE) -C x2goserver-fmbindings $@
 	$(MAKE) -C x2goserver-pyhoca $@
 
 build-arch:
@@ -27,6 +29,7 @@ build-arch:
 	$(MAKE) -C x2goserver-compat $@
 	$(MAKE) -C x2goserver-extensions $@
 	$(MAKE) -C x2goserver-xsession $@
+	$(MAKE) -C x2goserver-fmbindings $@
 	$(MAKE) -C x2goserver-pyhoca $@
 
 build-indep:
@@ -35,6 +38,7 @@ build-indep:
 	$(MAKE) -C x2goserver-compat $@
 	$(MAKE) -C x2goserver-extensions $@
 	$(MAKE) -C x2goserver-xsession $@
+	$(MAKE) -C x2goserver-fmbindings $@
 	$(MAKE) -C x2goserver-pyhoca $@
 
 install:
@@ -43,6 +47,7 @@ install:
 	$(MAKE) -C x2goserver-compat $@
 	$(MAKE) -C x2goserver-extensions $@
 	$(MAKE) -C x2goserver-xsession $@
+	$(MAKE) -C x2goserver-fmbindings $@
 	$(MAKE) -C x2goserver-pyhoca $@
 
 uninstall:
@@ -51,4 +56,5 @@ uninstall:
 	$(MAKE) -C x2goserver-compat $@
 	$(MAKE) -C x2goserver-extensions $@
 	$(MAKE) -C x2goserver-xsession $@
+	$(MAKE) -C x2goserver-fmbindings $@
 	$(MAKE) -C x2goserver-pyhoca $@
diff --git a/debian/changelog b/debian/changelog
index 159a8f5..f0d4be2 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -25,6 +25,11 @@ x2goserver (3.1.0.0-0~x2go1) UNRELEASED; urgency=low
     - Use /cgi-bin/man/ path in web'ified man pages.
     - Use ,,${MAKE}'' instead of ,,make'' in Makefile.
 
+  [ Mike Gabriel ]
+  * New upstream version (3.1.0.0):
+    - Provide new package x2goserver-fmbindings. Derived from a package draft
+      provided by Milan Knížek (Thanks!).
+
  -- Mike Gabriel <mike.gabriel at das-netzwerkteam.de>  Wed, 01 Feb 2012 13:45:00 +0100
 
 x2goserver (3.0.99.10-0~x2go1) unstable; urgency=low
diff --git a/debian/control b/debian/control
index 0a51bcd..8ca849c 100644
--- a/debian/control
+++ b/debian/control
@@ -167,6 +167,33 @@ Description: X2Go server daemon scripts (Xsession runner)
  startups and many more Xsession related features on 
  X2Go session login automagically.
 
+Package: x2goserver-fmbindings
+Architecture: all
+Depends: ${shlibs:Depends},
+ ${misc:Depends},
+ x2goserver (>= ${source:Version}), x2goserver (<< ${source:Version}.1~),
+ desktop-file-utils,
+ xdg-utils
+Description: Generic (freedesktop-based) file manager bindings for X2Go
+ X2Go is a server based computing environment with
+    - session resuming
+    - low bandwith support
+    - LDAP support
+    - client side mass storage mounting support
+    - audio support
+    - authentication by smartcard and USB stick
+ .
+ x2goserver-fmbindings contains generic MIME type information
+ for X2Go's local folder sharing. It can be used with all
+ freedesktop.org compliant desktop shells.
+ .
+ However, this package will be superseded by other, more specific
+ destkop binding components, if installed and being used with the
+ corresponding desktop shell:
+    - under LXDE by x2golxdebindings
+    - under GNOME by x2gognomebindings
+    - under KDE4 by plasma-widget-x2go
+
 Package: x2goserver-pyhoca
 Architecture: all
 Depends:
@@ -189,3 +216,4 @@ Description: X2Go server daemon scripts (add-ons for pyhoca client)
  Functionalities this package adds:
     - renaming of session window titles
     - setting detailled X keyboard parameters
+
diff --git a/debian/x2goserver-extensions.dirs b/debian/x2goserver-fmbindings.dirs
similarity index 100%
copy from debian/x2goserver-extensions.dirs
copy to debian/x2goserver-fmbindings.dirs
diff --git a/debian/x2goserver-fmbindings.install b/debian/x2goserver-fmbindings.install
new file mode 100644
index 0000000..aeb426e
--- /dev/null
+++ b/debian/x2goserver-fmbindings.install
@@ -0,0 +1,3 @@
+x2goserver-fmbindings/VERSION.x2goserver-fmbindings  usr/share/x2go/versions/
+x2goserver-fmbindings/share/*                        usr/share/
+x2goserver-fmbindings/bin/*                          usr/bin/
diff --git a/debian/x2goserver.preinst b/debian/x2goserver-fmbindings.postinst
similarity index 66%
copy from debian/x2goserver.preinst
copy to debian/x2goserver-fmbindings.postinst
index 117bb2c..cbe42ae 100755
--- a/debian/x2goserver.preinst
+++ b/debian/x2goserver-fmbindings.postinst
@@ -1,5 +1,5 @@
 #!/bin/sh
-# preinst script for x2goserver
+# postinst script for x2gognomebindings
 #
 # see: dh_installdeb(1)
 
@@ -19,20 +19,18 @@ set -e
 
 
 case "$1" in
-	install|upgrade)
-		# cleanup old x2goserver installations
-		rm -Rfv /var/db/x2go/
-		if getent group x2gousers >/dev/null; then 
-			echo "The ,,x2gousers'' is no longer used by x2go and can be"
-			echo "removed as soon as no users are members of this group"
-		fi
-		;;
-	abort-upgrade)
-		;;
+	configure)
+		update-desktop-database
+		update-mime-database /usr/share/mime
+	;;
+
+	abort-upgrade|abort-remove|abort-deconfigure)
+	;;
+
 	*)
-		echo "preinst called with unknown argument \`$1'" >&2
+		echo "postinst called with unknown argument \`$1'" >&2
 		exit 1
-		;;
+	;;
 esac
 
 # dh_installdeb will replace this with shell code automatically
@@ -41,5 +39,3 @@ esac
 #DEBHELPER#
 
 exit 0
-
-
diff --git a/debian/x2goserver-printing.postrm b/debian/x2goserver-fmbindings.postrm
similarity index 59%
copy from debian/x2goserver-printing.postrm
copy to debian/x2goserver-fmbindings.postrm
index 16b0f1e..4c31ba2 100755
--- a/debian/x2goserver-printing.postrm
+++ b/debian/x2goserver-fmbindings.postrm
@@ -1,7 +1,10 @@
-#! /bin/sh
-# postrm script for x2goserver-printing
+#!/bin/sh
+# postrm script for x2gognomebindings
 #
 # see: dh_installdeb(1)
+
+set -e
+
 # summary of how this script can be called:
 #        * <postrm> `remove'
 #        * <postrm> `purge'
@@ -10,23 +13,22 @@
 #        * <new-postrm> `abort-install'
 #        * <new-postrm> `abort-install' <old-version>
 #        * <new-postrm> `abort-upgrade' <old-version>
-#        * <disappearer's-postrm> `disappear' <r>overwrit>r> <new-version>
-# for details, see /usr/share/doc/packaging-manual/
-
-set -e
+#        * <disappearer's-postrm> `disappear' <overwriter>
+#          <overwriter-version>
+# for details, see http://www.debian.org/doc/debian-policy/ or
+# the debian-policy package
 
 
 case "$1" in
-	purge)
-		getent passwd x2goprint >/dev/null && deluser x2goprint
-		getent group x2goprint >/dev/null && delgroup x2goprint
-		;;
-	remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
-		;;
+	purge|remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
+		update-desktop-database
+		update-mime-database /usr/share/mime
+	;;
+
 	*)
 		echo "postrm called with unknown argument \`$1'" >&2
-		exit 0
-		;;
+		exit 1
+	;;
 esac
 
 # dh_installdeb will replace this with shell code automatically
@@ -34,4 +36,4 @@ esac
 
 #DEBHELPER#
 
-exit 0
\ No newline at end of file
+exit 0
diff --git a/x2goserver-xsession/Makefile b/x2goserver-fmbindings/Makefile
similarity index 59%
copy from x2goserver-xsession/Makefile
copy to x2goserver-fmbindings/Makefile
index 7a56c87..c91d181 100755
--- a/x2goserver-xsession/Makefile
+++ b/x2goserver-fmbindings/Makefile
@@ -5,7 +5,6 @@ SHELL=/bin/bash
 
 INSTALL_DIR=install -d -o root -g root -m 755
 INSTALL_FILE=install -o root -g root -m 644
-INSTALL_SYMLINK=ln -s -f
 INSTALL_PROGRAM=install -o root -g root -m 755
 
 RM_FILE=rm -f
@@ -14,23 +13,22 @@ RM_DIR=rmdir -p --ignore-fail-on-non-empty
 DESTDIR=
 PREFIX=/usr/local
 ETCDIR=/etc/x2go
-#BINDIR=$(PREFIX)/bin
+BINDIR=$(PREFIX)/bin
 #SBINDIR=$(PREFIX)/sbin
-#LIBDIR=$(PREFIX)/lib/x2go
+LIBDIR=$(PREFIX)/lib/x2go
 MANDIR=$(PREFIX)/share/man
 SHAREDIR=$(PREFIX)/share/x2go
 
-#BIN_SCRIPTS=$(shell cd bin && ls)
+BIN_SCRIPTS=$(shell cd bin && ls)
 #SBIN_SCRIPTS=$(shell cd sbin && ls)
 #LIB_FILES=$(shell cd lib && ls)
-ETC_FILES=$(shell cd etc && ls)
 FEATURE_SCRIPTS=$(shell cd share/x2gofeature.d && ls *.features)
 
-#man_pages = `cd man && find * -type f`
+man_pages = `cd man && find * -type f`
 
-#MAN2HTML_BIN  = man2html
-#MAN2HTML_SRC  = man
-#MAN2HTML_DEST = .build_man2html/html
+MAN2HTML_BIN  = man2html
+MAN2HTML_SRC  = man
+MAN2HTML_DEST = .build_man2html/html
 
 all: clean build
 
@@ -53,25 +51,11 @@ clean_man2html:
 install: install_scripts install_config install_man install_version
 
 install_scripts:
-#	$(INSTALL_DIR) $(DESTDIR)$(BINDIR)
-#	$(INSTALL_DIR) $(DESTDIR)$(SBINDIR)
 	$(INSTALL_DIR) $(DESTDIR)$(SHAREDIR)
 	$(INSTALL_DIR) $(DESTDIR)$(SHAREDIR)/x2gofeature.d
-#	$(INSTALL_PROGRAM) bin/*                $(DESTDIR)$(BINDIR)/
-#	$(INSTALL_PROGRAM) sbin/*               $(DESTDIR)$(SBINDIR)/
 	$(INSTALL_PROGRAM) share/x2gofeature.d/*.features $(DESTDIR)$(SHAREDIR)/x2gofeature.d/
 
 install_config:
-	$(INSTALL_DIR) $(DESTDIR)$(ETCDIR)
-#       provide target dirs for X11 related symlinks
-	mkdir -p $(DESTDIR)/etc/X11/Xresources
-	mkdir -p $(DESTDIR)/etc/X11/Xsession.d
-	touch $(DESTDIR)/etc/X11/Xsession.options
-	$(INSTALL_FILE) etc/Xsession                    $(DESTDIR)$(ETCDIR)/
-	$(INSTALL_SYMLINK) /etc/X11/Xresources          $(DESTDIR)$(ETCDIR)/
-	$(INSTALL_SYMLINK) /etc/X11/Xsession.d          $(DESTDIR)$(ETCDIR)/
-	$(INSTALL_SYMLINK) /etc/X11/Xsession.options    $(DESTDIR)$(ETCDIR)/
-
 
 install_man:
 #	$(INSTALL_DIR) $(DESTDIR)$(MANDIR)
@@ -82,17 +66,14 @@ install_man:
 install_version:
 	$(INSTALL_DIR) $(DESTDIR)$(SHAREDIR)
 	$(INSTALL_DIR) $(DESTDIR)$(SHAREDIR)/versions
-	$(INSTALL_FILE) VERSION.x2goserver-xsession     $(DESTDIR)$(SHAREDIR)/versions/VERSION.x2goserver-xsession
+	$(INSTALL_FILE) VERSION.x2goserver-extensions     $(DESTDIR)$(SHAREDIR)/versions/VERSION.x2goserver-extensions
 
 uninstall: uninstall_scripts uninstall_config uninstall_man uninstall_version
 
 uninstall_scripts:
-#	for file in $(BIN_SCRIPTS); do $(RM_FILE) $(DESTDIR)$(BINDIR)/$$file; done
-#	for file in $(SBIN_SCRIPTS); do $(RM_FILE) $(DESTDIR)$(SBINDIR)/$$file; done
 	for file in $(FEATURE_SCRIPTS); do $(RM_FILE) $(DESTDIR)$(SHAREDIR)/x2gofeature.d/$$file; done
 
 uninstall_config:
-	for file in $(ETC_FILES); do $(RM_FILE) $(DESTDIR)$(ETCDIR)/$$file; done
 
 uninstall_man:
 #	for file in $(BIN_SCRIPTS); do $(RM_FILE) $(DESTDIR)$(MANDIR)/man8/$$file.8.gz; done
@@ -100,5 +81,5 @@ uninstall_man:
 #	$(RM_DIR)  $(DESTDIR)$(MANDIR) || true
 
 uninstall_version:
-	$(RM_FILE) $(DESTDIR)$(SHAREDIR)/versions/VERSION.x2goserver-xsession
+	$(RM_FILE) $(DESTDIR)$(SHAREDIR)/versions/VERSION.x2goserver-extensions
 	$(RM_DIR)  $(DESTDIR)$(SHAREDIR)/versions || true
diff --git a/x2goserver-fmbindings/VERSION.x2goserver-fmbindings b/x2goserver-fmbindings/VERSION.x2goserver-fmbindings
new file mode 100644
index 0000000..f8d7555
--- /dev/null
+++ b/x2goserver-fmbindings/VERSION.x2goserver-fmbindings
@@ -0,0 +1 @@
+3.1.0.0
diff --git a/x2goserver-fmbindings/bin/x2gofm b/x2goserver-fmbindings/bin/x2gofm
new file mode 100755
index 0000000..280d990
--- /dev/null
+++ b/x2goserver-fmbindings/bin/x2gofm
@@ -0,0 +1,8 @@
+#!/usr/bin/perl
+use strict;
+
+my $fname=shift;
+open(F,"<$fname") or die "can't open $fname";
+my $dir=<F>;
+close(F);
+system( "xdg-open  $dir" );
diff --git a/x2goserver-fmbindings/share/applications/x2gofm.desktop b/x2goserver-fmbindings/share/applications/x2gofm.desktop
new file mode 100644
index 0000000..d747b1e
--- /dev/null
+++ b/x2goserver-fmbindings/share/applications/x2gofm.desktop
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Encoding=UTF-8
+Name=x2gofm
+MimeType=application/sshfsdisk-x2go;application/sshfscdrom-x2go;application/sshfsremovable-x2go
+Exec=x2gofm %f
+Type=Application
+Terminal=false
+NoDisplay=true
+Icon=file-manager
diff --git a/x2goserver-fmbindings/share/mime/packages/sshfs-x2go.xml b/x2goserver-fmbindings/share/mime/packages/sshfs-x2go.xml
new file mode 100644
index 0000000..f6e7a0d
--- /dev/null
+++ b/x2goserver-fmbindings/share/mime/packages/sshfs-x2go.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info">
+  <mime-type type="application/sshfscdrom-x2go">
+    <comment>SSHFS CDROM</comment>
+    <comment xml:lang="de">SSHFS CDROM</comment>
+    <glob pattern="* (sshfs-cdrom)"/>
+  <generic-icon name="folder-remote"/>
+  </mime-type>
+  <mime-type type="application/sshfsdisk-x2go">
+    <comment>SSHFS Disk</comment>
+    <comment xml:lang="de">SSHFS Freigabe</comment>
+    <glob pattern="* (sshfs-disk)"/>
+  <generic-icon name="folder-remote"/>
+  </mime-type>
+  <mime-type type="application/sshfsremovable-x2go">
+    <comment>SSHFS Removable</comment>
+    <comment xml:lang="de">SSHFS Gerät</comment>
+    <glob pattern="* (sshfs-removable)"/>
+  <generic-icon name="folder-remote"/>
+  </mime-type>
+</mime-info>
diff --git a/x2goserver-xsession/share/x2gofeature.d/x2goserver-xsession.features b/x2goserver-fmbindings/share/x2go/x2gofeature.d/x2goserver-fmbindings.features
similarity index 74%
copy from x2goserver-xsession/share/x2gofeature.d/x2goserver-xsession.features
copy to x2goserver-fmbindings/share/x2go/x2gofeature.d/x2goserver-fmbindings.features
index cc20f85..c1d5827 100755
--- a/x2goserver-xsession/share/x2gofeature.d/x2goserver-xsession.features
+++ b/x2goserver-fmbindings/share/x2go/x2gofeature.d/x2goserver-fmbindings.features
@@ -1,6 +1,6 @@
 #!/bin/bash
 
-# Copyright (C) 2007-2012 X2Go Project - http://wiki.x2go.org
+# Copyright (C) 2007-2011 X2go Project - http://wiki.x2go.org
 #
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -17,8 +17,8 @@
 # Free Software Foundation, Inc.,
 # 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
 #
-# Copyright (C) 2011-2012  Oleksandr Shneyder <oleksandr.shneyder at obviously-nice.de>
-# Copyright (C) 2011-2012  Heinz-Markus Graesing <heinz-m.graesing at obviously-nice.de>
+# Copyright (C) 2011  Oleksandr Shneyder <oleksandr.shneyder at obviously-nice.de>
+# Copyright (C) 2011  Heinz-Markus Graesing <heinz-m.graesing at obviously-nice.de>
 
 X2GO_LIB_PATH=`echo -n \$(x2gobasepath)/lib/x2go`
 
@@ -26,10 +26,10 @@ $X2GO_LIB_PATH/x2gosyslog "$0" "info" "$(basename $0) called with options: $@"
 
 X2GO_FEATURE=$1
 
-# check for X2Go server core features
+# check for X2go server core features
 case "$X2GO_FEATURE" in
 
-    "X2GO_XSESSION") echo "ok"; exit 0;;
+    "X2GO_FMBINDINGS") echo "ok"; exit 0;;
     *) exit -1;;
 
 esac
diff --git a/x2goserver/bin/x2gomountdirs b/x2goserver/bin/x2gomountdirs
index 0d52a7b..c1b4d3a 100755
--- a/x2goserver/bin/x2gomountdirs
+++ b/x2goserver/bin/x2gomountdirs
@@ -265,43 +265,50 @@ for (my $i=0;$i<@dirs;$i++)
 			if (! $printspool && ! $mimeboxspool && ! $useplasmoid )
 			{
 				my $fname="$ENV{'HOME'}/Desktop";
-				my $current_desktop = "";
-				if ($session =~ m/stDGNOME/)
+				my $current_desktop = "NONE";
+				if (($session =~ m/stDGNOME/) && system("x2gofeature X2GO_GNOMEBINDINGS >/dev/null") == 0)
 				{
 					$current_desktop="-gnome";
 				}
-				elsif ($session =~ m/stDLXDE/)
+				elsif (($session =~ m/stDLXDE/) && system("x2gofeature X2GO_LXDEBINDINGS >/dev/null") == 0)
 				{
 					$current_desktop="-lxde";
 				}
+				elsif (system("x2gofeature X2GO_FMBINDINGS >/dev/null") == 0)
+				{
+					$current_desktop="";
+				}
 
 				my $p=@dirs[$i];
 				$p=~s/\/cygdrive\///g;
 				$p=~s/\//_/g;
 				$fname="$fname/$p";
-				if ($type eq "dir")
-				{
-					$fname="$fname\ (sshfs-disk$current_desktop)";
-					syslog('info', "creating desktop icon for ,, at dirs[$i]'' at ,,$fname'', media type is: client-side folder on harddrive");
-				}
-				else
+				if ("$current_desktop" ne "NONE")
 				{
-					if ($fname =~ m/CDROM/)
+					if ($type eq "dir")
 					{
-						$fname="$fname\ (sshfs-cdrom$current_desktop)";
-						syslog('info', "creating desktop icon for ,, at dirs[$i]'' at ,,$fname'', media type is: optical disc");
+						$fname="$fname\ (sshfs-disk$current_desktop)";
+						syslog('info', "creating desktop icon for ,, at dirs[$i]'' at ,,$fname'', media type is: client-side folder on harddrive");
 					}
 					else
 					{
-						$fname="$fname\ (sshfs-removable$current_desktop)";
-						syslog('info', "creating desktop icon for ,, at dirs[$i]'' at ,,$fname'', media type is: removable device");
+						if ($fname =~ m/CDROM/)
+						{
+							$fname="$fname\ (sshfs-cdrom$current_desktop)";
+							syslog('info', "creating desktop icon for ,, at dirs[$i]'' at ,,$fname'', media type is: optical disc");
+						}
+						else
+						{
+							$fname="$fname\ (sshfs-removable$current_desktop)";
+							syslog('info', "creating desktop icon for ,, at dirs[$i]'' at ,,$fname'', media type is: removable device");
+						}
+						$fname=~s/_ramdrive_mnt_//;
 					}
-					$fname=~s/_ramdrive_mnt_//;
+					print "fname: $fname\n";
+					open(F,">$fname");
+					print F "$mntpath\n$session\n\n\0";
+					close(F);
 				}
-				print "fname: $fname\n";
-				open(F,">$fname");
-				print F "$mntpath\n$session\n\n\0";
-				close(F);
 			}
 		}
 		else
diff --git a/x2goserver/bin/x2goumount-session b/x2goserver/bin/x2goumount-session
index bf62f82..64876d9 100755
--- a/x2goserver/bin/x2goumount-session
+++ b/x2goserver/bin/x2goumount-session
@@ -113,11 +113,11 @@ break:
 			syslog('err', "ERROR: failed to unmount @line[1]");
 			if ($use_zenity == 0)
 			{
-				system("which kdialog &>/dev/null && kdialog --error \"@line[1]\"&");
+				system("which kdialog &>/dev/null && kdialog --error \"ERROR (X2Go): Failed to unmount @line[1]\"&");
 			}
 			else
 			{
-				system("which zenity &>/dev/null && zenity --error --text \"@line[1]\"&");
+				system("which zenity &>/dev/null && zenity --error --text \"ERROR (X2Go): Failed to unmount @line[1]\"&");
 			}
 		}
 	}
@@ -129,31 +129,38 @@ break:
 		$remote=(split(":","$remote"))[1];
 		$remote="$ENV{'HOME'}/Desktop/$remote";
 
-		my $current_desktop = '';
-		if ($session =~ m/stDGNOME/)
+		my $current_desktop = 'NONE';
+		if (($session =~ m/stDGNOME/) && system("x2gofeature X2GO_GNOMEBINDINGS >/dev/null") == 0)
 		{
 			$current_desktop="-gnome";
 		}
-		elsif ($session =~ m/stDLXDE/)
+		elsif (($session =~ m/stDLXDE/) && system("x2gofeature X2GO_LXDEBINDINGS >/dev/null") == 0)
 		{
 			$current_desktop="-lxde";
 		}
-
-		if ( -e "$remote\ (sshfs-disk$current_desktop)")
-		{
-		    syslog('info', "removing desktop icon ,,$remote (sshfs-disk$current_desktop)''");
-		    unlink("$remote\ (sshfs-disk$current_desktop)");
-		}
-		$remote=~s/%2framdrive%2fmnt%2f//;
-		if ( -e "$remote\ (sshfs-removable$current_desktop)")
+		elsif (system("x2gofeature X2GO_FMBINDINGS >/dev/null") == 0)
 		{
-			syslog('info', "removing desktop icon ,,$remote\ (sshfs-removable$current_desktop)''");
-			unlink("$remote\ (sshfs-removable$current_desktop)");
+			$current_desktop="";
 		}
-		if ( -e "$remote\ (sshfs-cdrom/$current_desktop)")
+
+		if ("$current_desktop" ne "NONE")
 		{
-			syslog('info', "removing desktop icon ,,$remote\ (sshfs-cdrom$current_desktop)''");
-			unlink("$remote\ (sshfs-cdrom$current_desktop)");
+			if ( -e "$remote\ (sshfs-disk$current_desktop)")
+			{
+				syslog('info', "removing desktop icon ,,$remote (sshfs-disk$current_desktop)''");
+				unlink("$remote\ (sshfs-disk$current_desktop)");
+			}
+			$remote=~s/%2framdrive%2fmnt%2f//;
+			if ( -e "$remote\ (sshfs-removable$current_desktop)")
+			{
+				syslog('info', "removing desktop icon ,,$remote\ (sshfs-removable$current_desktop)''");
+				unlink("$remote\ (sshfs-removable$current_desktop)");
+			}
+			if ( -e "$remote\ (sshfs-cdrom/$current_desktop)")
+			{
+				syslog('info', "removing desktop icon ,,$remote\ (sshfs-cdrom$current_desktop)''");
+				unlink("$remote\ (sshfs-cdrom$current_desktop)");
+			}
 		}
 		db_deletemount ($session, @line[1]);
 		rmdir (@line[1]);


hooks/post-receive
-- 
x2goserver.git (X2Go Server)

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "x2goserver.git" (X2Go Server).




More information about the x2go-commits mailing list