[X2Go-Commits] x2goserver.git - build-baikal (branch) updated: 3.1.1.0-18-g3fa5425

X2Go dev team git-admin at x2go.org
Fri Jan 3 18:04:49 CET 2014


The branch, build-baikal has been updated
       via  3fa5425554f3c40e1d4a2717f575c406f471c1a3 (commit)
      from  1af7be02935673fbe6afe3f4ba75d3ae65f6f62e (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 -----------------------------------------------------------------
-----------------------------------------------------------------------

Summary of changes:
 debian/changelog                                   |    2 ++
 debian/x2goserver-pyhoca.docs                      |    2 +-
 debian/x2goserver-pyhoca.install                   |    4 +--
 debian/x2goserver-pyhoca.manpages                  |    2 +-
 x2goserver-pyhoca/Makefile                         |   36 ++++++++++----------
 x2goserver-pyhoca/man/man8/x2gosetkeyboard.8       |   34 ------------------
 .../share/x2gofeature.d/x2goserver-pyhoca.features |    1 -
 x2goserver/bin/x2goresume-session                  |    6 ++++
 .../bin/x2gosetkeyboard                            |    5 ++-
 x2goserver/bin/x2gostartagent                      |    6 +++-
 x2goserver/share/x2gofeature.d/x2goserver.features |    1 +
 11 files changed, 40 insertions(+), 59 deletions(-)
 delete mode 100644 x2goserver-pyhoca/man/man8/x2gosetkeyboard.8
 rename {x2goserver-pyhoca => x2goserver}/bin/x2gosetkeyboard (95%)

The diff of changes is:
diff --git a/debian/changelog b/debian/changelog
index 525dcdf..107a2a2 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -18,6 +18,8 @@ x2goserver (3.1.1.1-0~x2go1) UNRELEASED; urgency=low
       x2gostartagent.
     - Export NX_ROOT=$HOME/.x2go in x2gostartagent. Makes the keyboard file
       in X2Go session cache directory.
+    - Add support for client-side keyboard detection. Moved script
+      x2gosetkeyboard from x2goserver-pyhoca into x2goserver package.
 
  -- Mike Gabriel <mike.gabriel at das-netzwerkteam.de>  Wed, 04 Apr 2012 11:44:14 +0200
 
diff --git a/debian/x2goserver-pyhoca.docs b/debian/x2goserver-pyhoca.docs
index 6652b35..3a19506 100644
--- a/debian/x2goserver-pyhoca.docs
+++ b/debian/x2goserver-pyhoca.docs
@@ -1 +1 @@
-x2goserver-pyhoca/.build_man2html/html
+#x2goserver-pyhoca/.build_man2html/html
diff --git a/debian/x2goserver-pyhoca.install b/debian/x2goserver-pyhoca.install
index 7ba0b60..69985ca 100644
--- a/debian/x2goserver-pyhoca.install
+++ b/debian/x2goserver-pyhoca.install
@@ -1,3 +1,3 @@
-x2goserver-pyhoca/bin/x2go*      /usr/bin/
+#x2goserver-pyhoca/bin/x2go*      /usr/bin/
 x2goserver-pyhoca/VERSION.x2goserver-pyhoca      /usr/share/x2go/versions/
-x2goserver-pyhoca/share/x2gofeature.d/*              /usr/share/x2go/x2gofeature.d/
+#x2goserver-pyhoca/share/x2gofeature.d/*              /usr/share/x2go/x2gofeature.d/
diff --git a/debian/x2goserver-pyhoca.manpages b/debian/x2goserver-pyhoca.manpages
index 845a36c..6f35882 100644
--- a/debian/x2goserver-pyhoca.manpages
+++ b/debian/x2goserver-pyhoca.manpages
@@ -1 +1 @@
-x2goserver-pyhoca/man/man8/*
\ No newline at end of file
+#x2goserver-pyhoca/man/man8/*
\ No newline at end of file
diff --git a/x2goserver-pyhoca/Makefile b/x2goserver-pyhoca/Makefile
index 8fc06fa..c24be41 100755
--- a/x2goserver-pyhoca/Makefile
+++ b/x2goserver-pyhoca/Makefile
@@ -39,25 +39,25 @@ build-indep: build_man2html
 build-arch:
 
 build_man2html:
-	mkdir -p $(MAN2HTML_DEST)
-	for man_page in $(man_pages); do mkdir -p `dirname $(MAN2HTML_DEST)/$$man_page`; done
-	for man_page in $(man_pages); do $(MAN2HTML_BIN) $(MAN2HTML_SRC)/$$man_page > $(MAN2HTML_DEST)/$$man_page.html; done
+#	mkdir -p $(MAN2HTML_DEST)
+#	for man_page in $(man_pages); do mkdir -p `dirname $(MAN2HTML_DEST)/$$man_page`; done
+#	for man_page in $(man_pages); do $(MAN2HTML_BIN) $(MAN2HTML_SRC)/$$man_page > $(MAN2HTML_DEST)/$$man_page.html; done
 
 clean: clean_man2html
 
 clean_man2html:
-	rm -rf `dirname $(MAN2HTML_DEST)`
+#	rm -rf `dirname $(MAN2HTML_DEST)`
 
 install: install_scripts install_config install_man install_version
 
 install_scripts:
-	$(INSTALL_DIR) $(DESTDIR)$(BINDIR)
+#	$(INSTALL_DIR) $(DESTDIR)$(BINDIR)
 #	$(INSTALL_DIR) $(DESTDIR)$(SBINDIR)
-	$(INSTALL_DIR) $(DESTDIR)$(SHAREDIR)
-	$(INSTALL_DIR) $(DESTDIR)$(SHAREDIR)/x2gofeature.d
-	$(INSTALL_PROGRAM) bin/*                $(DESTDIR)$(BINDIR)/
+#	$(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_PROGRAM) share/x2gofeature.d/*.features $(DESTDIR)$(SHAREDIR)/x2gofeature.d/
 
 install_config:
 #	$(INSTALL_DIR) $(DESTDIR)$(ETCDIR)
@@ -67,10 +67,10 @@ install_config:
 #	$(INSTALL_FILE) etc/x2gosql/sql         $(DESTDIR)$(ETCDIR)/x2gosql
 
 install_man:
-	$(INSTALL_DIR) $(DESTDIR)$(MANDIR)
-	$(INSTALL_DIR) $(DESTDIR)$(MANDIR)/man8
-	$(INSTALL_FILE) man/man8/*.8           $(DESTDIR)$(MANDIR)/man8
-	gzip -f $(DESTDIR)$(MANDIR)/man8/x2go*.8
+#	$(INSTALL_DIR) $(DESTDIR)$(MANDIR)
+#	$(INSTALL_DIR) $(DESTDIR)$(MANDIR)/man8
+#	$(INSTALL_FILE) man/man8/*.8           $(DESTDIR)$(MANDIR)/man8
+#	gzip -f $(DESTDIR)$(MANDIR)/man8/x2go*.8
 
 install_version:
 	$(INSTALL_DIR) $(DESTDIR)$(SHAREDIR)
@@ -80,10 +80,10 @@ install_version:
 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 $(BIN_SCRIPTS); do $(RM_FILE) $(DESTDIR)$(BINDIR)/$$file; done
 #	for file in $(SBIN_SCRIPTS); do $(RM_FILE) $(DESTDIR)$(SBINDIR)/$$file; done
 #	for file in $(LIB_FILES); do $(RM_FILE) $(DESTDIR)$(LIBDIR)/$$file; done
-	for file in $(FEATURE_SCRIPTS); do $(RM_FILE) $(DESTDIR)$(SHAREDIR)/x2gofeature.d/$$file; done
+#	for file in $(FEATURE_SCRIPTS); do $(RM_FILE) $(DESTDIR)$(SHAREDIR)/x2gofeature.d/$$file; done
 
 uninstall_config:
 #	$(RM_FILE) $(DESTDIR)$(ETCDIR)/x2goserver.conf
@@ -93,9 +93,9 @@ uninstall_config:
 #	$(RM_DIR)  $(DESTDIR)$(ETCDIR)/x2gosql || true
 
 uninstall_man:
-	for file in $(BIN_SCRIPTS); do $(RM_FILE) $(DESTDIR)$(MANDIR)/man8/$$file.8.gz; done
-	for file in $(SBIN_SCRIPTS); do $(RM_FILE) $(DESTDIR)$(MANDIR)/man8/$$file.8.gz; done
-	$(RM_DIR)  $(DESTDIR)$(MANDIR) || true
+#	for file in $(BIN_SCRIPTS); do $(RM_FILE) $(DESTDIR)$(MANDIR)/man8/$$file.8.gz; done
+#	for file in $(SBIN_SCRIPTS); do $(RM_FILE) $(DESTDIR)$(MANDIR)/man8/$$file.8.gz; done
+#	$(RM_DIR)  $(DESTDIR)$(MANDIR) || true
 
 uninstall_version:
 	$(RM_FILE) $(DESTDIR)$(SHAREDIR)/versions/VERSION.x2goserver-pyhoca
diff --git a/x2goserver-pyhoca/man/man8/x2gosetkeyboard.8 b/x2goserver-pyhoca/man/man8/x2gosetkeyboard.8
deleted file mode 100644
index 3e9baaf..0000000
--- a/x2goserver-pyhoca/man/man8/x2gosetkeyboard.8
+++ /dev/null
@@ -1,34 +0,0 @@
-'\" -*- coding: utf-8 -*-
-.if \n(.g .ds T< \\FC
-.if \n(.g .ds T> \\F[\n[.fam]]
-.de URL
-\\$2 \(la\\$1\(ra\\$3
-..
-.if \n(.g .mso www.tmac
-.TH x2gosetkeyboard 8 "Mar 2012" "Version 3.1.1.x" "X2Go Server Tool (PyHoca)"
-.SH NAME
-x2gosetkeyboard \- Allow server-side Keyboard Setting Updates issued by X2Go Client
-.SH SYNOPSIS
-'nh
-.fi
-.ad l
-x2gosetkeyboard
-
-.SH DESCRIPTION
-\fBx2gosetkeyboard\fR looks for a 'keyboard' file in the X2Go session directory and introspects
-the X2Go session keyboard settings requested from the client side.
-.PP
-If no 'keyboard' file is present in the X2Go session directory, nothing happens (i.e. no error
-will be raised).
-.SH RETURN VALUES
-If \fBx2gosetkeyboard\fR successfully sets the session's keyboard parameters an exit code of 0 is
-returned. Also, if the file ${HOME}/.x2go/C-${X2GO_SESSION}/keyboard is not presented at the
-expected location, a zero-exitcode is returned.
-.PP
-If the command fails on its way, then the exitcode of the failing command is returned.
-.SH FILES
-${HOME}/.x2go/C-${X2GO_SESSION}/keyboard
-.PP
-.SH AUTHOR
-This manual has been written by Mike Gabriel <mike.gabriel at das-netzwerkteam.de> for the X2Go project
-(http://www.x2go.org).
diff --git a/x2goserver-pyhoca/share/x2gofeature.d/x2goserver-pyhoca.features b/x2goserver-pyhoca/share/x2gofeature.d/x2goserver-pyhoca.features
index 1737ad8..2411c0e 100755
--- a/x2goserver-pyhoca/share/x2gofeature.d/x2goserver-pyhoca.features
+++ b/x2goserver-pyhoca/share/x2gofeature.d/x2goserver-pyhoca.features
@@ -29,7 +29,6 @@ X2GO_FEATURE=$1
 # check for X2Go server core features
 case "$X2GO_FEATURE" in
 
-    "X2GO_SET_KEYBOARD") echo "ok"; exit 0;;
     *) exit -1;;
 
 esac
diff --git a/x2goserver/bin/x2goresume-session b/x2goserver/bin/x2goresume-session
index 50cb638..fd001e8 100755
--- a/x2goserver/bin/x2goresume-session
+++ b/x2goserver/bin/x2goresume-session
@@ -171,6 +171,12 @@ kill -HUP $X2GO_AGENT_PID &>/dev/null && {
 	#done
 	(sleep 1; $X2GO_LIB_PATH/x2goresume  "$X2GO_CLIENT" "$SESSION_NAME"  "$GR_PORT" "$SOUND_PORT" "$FS_PORT" > /dev/null;)
 
+	# set client-side keyboard model, type, variant, etc.
+	if [ "$X2GO_SET_KBD" != "0" ]
+		X2GO_DISPLAY=$(echo $X2GO_SESSION | cut -d"-" -f2)
+		(sleep 1; DISPLAY=:$X2GO_DISPLAY.0 x2gosetkeyboard;)
+	fi
+
 	# resume x2godesktopsharing, if it has been in use before the session got suspended
 	x2gofeature X2GO_DESKTOPSHARING &>/dev/null && x2goresume-desktopsharing "$SESSION_NAME" || true
 
diff --git a/x2goserver-pyhoca/bin/x2gosetkeyboard b/x2goserver/bin/x2gosetkeyboard
similarity index 95%
rename from x2goserver-pyhoca/bin/x2gosetkeyboard
rename to x2goserver/bin/x2gosetkeyboard
index 481d01a..6ca357e 100755
--- a/x2goserver-pyhoca/bin/x2gosetkeyboard
+++ b/x2goserver/bin/x2gosetkeyboard
@@ -48,12 +48,15 @@ read_keyboard_file() {
 
 update_keymap() {
 
+	if [ "$XKB_RULES" = "evdev" ]; then
+		XKB_RULES="xfree86"
+	fi
 	# prepare for setxkbmap call
 	[ -n "$XKB_RULES" ] && XKB_RULES="-rules $XKB_RULES"
 	[ -n "$XKB_MODEL" ] && XKB_MODEL="-model $XKB_MODEL"
 	[ -n "$XKB_LAYOUT" ] && XKB_LAYOUT="-layout $XKB_LAYOUT"
 	[ -n "$XKB_VARIANT" ] && XKB_VARIANT="-variant $XKB_VARIANT"
-	[ -n "$XKB_OPTIONS" ] && XKB_OPTIONS="-options $XKB_OPTIONS"
+	[ -n "$XKB_OPTIONS" ] && XKB_OPTIONS="-option $XKB_OPTIONS"
 
 	# update keyboard map
 	setxkbmap $XKB_RULES $XKB_MODEL $XKB_LAYOUT $XKB_VARIANT $XKB_OPTIONS
diff --git a/x2goserver/bin/x2gostartagent b/x2goserver/bin/x2gostartagent
index 6531218..234047c 100755
--- a/x2goserver/bin/x2gostartagent
+++ b/x2goserver/bin/x2gostartagent
@@ -251,8 +251,12 @@ if  [ "$X2GO_STYPE" == "S" ]; then
 	x2goagent -nolisten tcp $X2GODPIOPTION_ -$SESSION_TYPE -auth "$XAUTHORITY" -shadow $SHADOW_DESKTOP -shadowmode $SHADOW_MODE -geometry ${X2GO_GEOMETRY} -name "${SESSION_WINDOW_TITLE}"  "${NX_AGENT}" 2>"${SESSION_DIR}/session.log" &
 else
 	x2goagent -nolisten tcp $X2GODPIOPTION_ $XDMCPOPT -$SESSION_TYPE $NOEXITPARAM -auth "$XAUTHORITY" -geometry ${X2GO_GEOMETRY} -name "${SESSION_WINDOW_TITLE}"  "${NX_AGENT}" 2>"${SESSION_DIR}/session.log" &
-fi
 
+	# if we do not enforce a special keybaord type/layout/variant, use the one detected on the client-side
+	if [ "$X2GO_SET_KBD" != "0" ]
+		(sleep 1; x2gosetkeyboard; )
+	fi
+fi
 
 X2GO_AGENT_PID=$!
 X2GO_AGENT_RETVAL=$?
diff --git a/x2goserver/share/x2gofeature.d/x2goserver.features b/x2goserver/share/x2gofeature.d/x2goserver.features
index a5dd741..db4aaf2 100755
--- a/x2goserver/share/x2gofeature.d/x2goserver.features
+++ b/x2goserver/share/x2gofeature.d/x2goserver.features
@@ -35,6 +35,7 @@ case "$X2GO_FEATURE" in
     "X2GO_UMOUNTSESSION_ONLYPATH") echo "ok"; exit 0;;
     "X2GO_PUBLISHED_APPLICATIONS") echo "ok"; exit 0;;
     "X2GO_SERVERSIDE_DESKTOPCOMMANDS") echo "ok"; exit 0;;
+    "X2GO_SET_KEYBOARD") echo "ok"; exit 0;;
     *) exit -1;;
 
 esac


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