This is an automated email from the git hooks/post-receive script. x2go pushed a change to branch master in repository x2goserver. from 244eab1 x2goserver/bin/x2gostartagent: add FIXME entry for the SHADREQ_USER optional parameter. new 9cb7beb x2goserver/bin/x2go{startagent,resume-ression}: instead of disabling RANDR Xinerama if no xinerama support has been requested, switch to modifying the xinerama nx/nx option. The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference. Summary of changes: debian/changelog | 6 ++++++ x2goserver/bin/x2goresume-session | 17 ++++++++++++----- x2goserver/bin/x2gostartagent | 16 ++++++++-------- 3 files changed, 26 insertions(+), 13 deletions(-) -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/x2goserver.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository x2goserver. commit 9cb7beb178053e602e9f948739e1ecde2f986cae Author: Mihai Moldovan <ionic@ionic.de> Date: Fri Jan 12 10:04:56 2018 +0100 x2goserver/bin/x2go{startagent,resume-ression}: instead of disabling RANDR Xinerama if no xinerama support has been requested, switch to modifying the xinerama nx/nx option. For x2gostartagent, that means a variable rename from X2GO_RANDR_XINERAMA to X2GO_XINERAMA with essentially the same semantics. For x2goresume-session, a new parameter is added. --- debian/changelog | 6 ++++++ x2goserver/bin/x2goresume-session | 17 ++++++++++++----- x2goserver/bin/x2gostartagent | 16 ++++++++-------- 3 files changed, 26 insertions(+), 13 deletions(-) diff --git a/debian/changelog b/debian/changelog index 81eb62e..70a1e8f 100644 --- a/debian/changelog +++ b/debian/changelog @@ -216,6 +216,12 @@ x2goserver (4.1.0.0-0x2go1.2) UNRELEASED; urgency=low - x2goserver/bin/x2gostartagent: add FIXME entry for the SHADREQ_USER optional parameter. No client actually uses it and it makes the whole parameter handling fragile. + - x2goserver/bin/x2go{startagent,resume-ression}: instead of disabling + RANDR Xinerama if no xinerama support has been requested, switch to + modifying the xinerama nx/nx option. For x2gostartagent, that means a + variable rename from X2GO_RANDR_XINERAMA to X2GO_XINERAMA with + essentially the same semantics. For x2goresume-session, a new parameter + is added. * x2goserver.spec: - Only create session DB in x2goserver's post install script. Do use proper Requires(post) statements to make sure perl-X2Go-Server-DB and diff --git a/x2goserver/bin/x2goresume-session b/x2goserver/bin/x2goresume-session index 97a7dbb..f3aec12 100755 --- a/x2goserver/bin/x2goresume-session +++ b/x2goserver/bin/x2goresume-session @@ -37,6 +37,7 @@ X2GO_PACK="${4}" X2GO_KBD_TYPE="${6}" X2GO_SET_KBD="${7}" X2GO_CLIPBOARD="${8}" +typeset X2GO_XINERAMA="${9}" X2GO_AGENT_PID="$("${X2GO_LIB_PATH}/x2gogetagent" "${SESSION_NAME}")" @@ -263,18 +264,21 @@ LSTR="$(awk -F ',' '{print $2}' <<< "${OPTIONS}")" PSTR="$(awk -F ',' '{print $3}' <<< "${OPTIONS}")" KTSTR="$(awk -F ',' '{print $12}' <<< "${OPTIONS}")" GSTR="$(awk -F ',' '{print $13}' <<< "${OPTIONS}")" +typeset xinerama_orig='' test_GSTR="$(sed 's/geometry=.*//' <<< "${GSTR}")" if [[ -n "${test_GSTR}" ]]; then GSTR='geometry=' - RSTR="$(awk -F ',' '{print $13}' <<< "${OPTIONS}")" - FSTR="$(awk -F ',' '{print $14}' <<< "${OPTIONS}")" - LISTSTR="$(awk -F ',' '{print $16}' <<< "${OPTIONS}")" - CLIPBOARD="$(awk -F ',' '{print $17}' <<< "${OPTIONS}")" -else + xinerama_orig="$(awk -F ',' '{print $13}' <<< "${OPTIONS}")" RSTR="$(awk -F ',' '{print $14}' <<< "${OPTIONS}")" FSTR="$(awk -F ',' '{print $15}' <<< "${OPTIONS}")" LISTSTR="$(awk -F ',' '{print $17}' <<< "${OPTIONS}")" CLIPBOARD="$(awk -F ',' '{print $18}' <<< "${OPTIONS}")" +else + xinerama_orig="$(awk -F ',' '{print $14}' <<< "${OPTIONS}")" + RSTR="$(awk -F ',' '{print $15}' <<< "${OPTIONS}")" + FSTR="$(awk -F ',' '{print $16}' <<< "${OPTIONS}")" + LISTSTR="$(awk -F ',' '{print $18}' <<< "${OPTIONS}")" + CLIPBOARD="$(awk -F ',' '{print $19}' <<< "${OPTIONS}")" fi KTSTR="$(sed -e 's#/#\\/#' <<< "${KTSTR}")" @@ -293,10 +297,13 @@ else clipboard='clipboard=both' fi +typeset xinerama_option="$("${X2GO_LIB_PATH}/x2goistrue" "${X2GO_XINERAMA}")" + NEWOPTIONS="$(sed -e "s/${LSTR}/link=${X2GO_LINK}/" \ -e "s/${PSTR}/pack=${X2GO_PACK}/" \ -e "s/${KTSTR}/kbtype=${keyboard_type}/" \ -e "s/${GSTR}/geometry=${X2GO_GEOMETRY}/" \ + -e "s/${xinerama_orig}/xinerama=${xinerama_option}/" \ -e "s/${RSTR}/resize=${X2GO_RESIZE}/" \ -e "s/${LISTSTR}/listen=${GR_PORT}/" \ -e "s/${FSTR}/fullscreen=${X2GO_FULLSCREEN}/" \ diff --git a/x2goserver/bin/x2gostartagent b/x2goserver/bin/x2gostartagent index 941627c..d6ecaa3 100755 --- a/x2goserver/bin/x2gostartagent +++ b/x2goserver/bin/x2gostartagent @@ -120,7 +120,7 @@ typeset -i x2go_randr_xinerama='1' # versions that supply a Xinerama configuration value and # also with older ones that do not, we pass it in as an # environment variable. -[[ -n "${X2GO_RANDR_XINERAMA}" ]] && x2go_randr_xinerama="$("${X2GO_LIB_PATH}/x2goistrue" "${X2GO_RANDR_XINERAMA}")" +[[ -n "${X2GO_XINERAMA}" ]] && x2go_xinerama="$("${X2GO_LIB_PATH}/x2goistrue" "${X2GO_XINERAMA}")" X2GO_GEOMETRY="${1}"; shift X2GO_LINK="${1}"; shift @@ -400,10 +400,13 @@ else clipboard=",clipboard=both" fi +typeset xinerama_option='1' +[[ "${x2go_xinerama}" = '0' ]] && xinerama_option='0' + if [[ "${X2GO_SET_KBD}" = '0' ]] || [[ "${X2GO_KBD_TYPE}" = 'auto' ]]; then - X2GO_HOST="nx/nx,link=${X2GO_LINK},pack=${X2GO_PACK},limit=0,root=${SESSION_DIR},cache=8M,images=32M,type=${X2GO_TYPE},id=${SESSION_NAME},cookie=${X2GO_COOKIE},errors=${SESSION_LOG},kbtype=null/null,${option_geometry}resize=${X2GO_RESIZE},fullscreen=${X2GO_FULLSCREEN},accept=${REMOTE},listen=${GR_PORT}${clipboard},client=linux,menu=0,state=${STATE_FILE}" + X2GO_HOST="nx/nx,link=${X2GO_LINK},pack=${X2GO_PACK},limit=0,root=${SESSION_DIR},cache=8M,images=32M,type=${X2GO_TYPE},id=${SESSION_NAME},cookie=${X2GO_COOKIE},errors=${SESSION_LOG},kbtype=null/null,${option_geometry}xinerama=${xinerama_option},resize=${X2GO_RESIZE},fullscreen=${X2GO_FULLSCREEN},accept=${REMOTE},listen=${GR_PORT}${clipboard},client=linux,menu=0,state=${STATE_FILE}" else - X2GO_HOST="nx/nx,link=${X2GO_LINK},pack=${X2GO_PACK},limit=0,root=${SESSION_DIR},cache=8M,images=32M,type=${X2GO_TYPE},id=${SESSION_NAME},cookie=${X2GO_COOKIE},errors=${SESSION_LOG},kbtype=${X2GO_KBD_TYPE},${option_geometry}resize=${X2GO_RESIZE},fullscreen=${X2GO_FULLSCREEN},accept=${REMOTE},listen=${GR_PORT}${clipboard},client=linux,menu=0,state=${STATE_FILE}" + X2GO_HOST="nx/nx,link=${X2GO_LINK},pack=${X2GO_PACK},limit=0,root=${SESSION_DIR},cache=8M,images=32M,type=${X2GO_TYPE},id=${SESSION_NAME},cookie=${X2GO_COOKIE},errors=${SESSION_LOG},kbtype=${X2GO_KBD_TYPE},${option_geometry}xinerama=${xinerama_option},resize=${X2GO_RESIZE},fullscreen=${X2GO_FULLSCREEN},accept=${REMOTE},listen=${GR_PORT}${clipboard},client=linux,menu=0,state=${STATE_FILE}" fi @@ -444,9 +447,6 @@ if [[ -n "${X2GO_GEOMETRY}" ]] && [[ "${X2GO_GEOMETRY}" != 'fullscreen' ]]; then agent_geometry="-geometry ${X2GO_GEOMETRY}" fi -typeset randr_xinerama_option='' -[[ "${x2go_randr_xinerama}" = '0' ]] && randr_xinerama_option='-rrxinerama' - # systemd is prone to kill remaining sessions on user logouts. # That sort of makes sense to clean up stray processes, # but gets in the way of our persistent session scheme. @@ -458,11 +458,11 @@ if [[ "${X2GO_STYPE}" = 'S' ]]; then unset LD_LIBRARY_PATH # set NX_TEMP to /tmp, make sure x2goagent starts when pam_tmpdir.so is in use "${X2GO_LIB_PATH}/x2gosyslog" "${0}" 'debug' "started nxagent: NX_TEMP=/tmp x2goagent X2GO_NXAGENT_OPTIONS ('${X2GO_NXAGENT_OPTIONS}') NOLISTOPT ('${NOLISTOPT}') X2GODPIOPTION_ ('${X2GODPIOPTION_}') -SESSION_TYPE ('-${SESSION_TYPE}') -auth \"XAUTHORITY\" ('\"${XAUTHORITY}\"') -shadow SHADOW_DESKTOP ('${SHADOW_DESKTOP}') -shadowmode SHADOW_MODE ('${SHADOW_MODE}') agent_geometry ('${agent_geometry}') -name \"SESSION_WINDOW_TITLE\" ('\"${SESSION_WINDOW_TITLE}\"') \"NX_AGENT\" ('\"${NX_AGEN [...] - NX_TEMP='/tmp' x2goagent ${X2GO_NXAGENT_OPTIONS} ${NOLISTOPT} ${X2GODPIOPTION_} ${randr_xinerama_option} -${SESSION_TYPE} -auth "${XAUTHORITY}" -shadow ${SHADOW_DESKTOP} -shadowmode ${SHADOW_MODE} ${agent_geometry} -name "${SESSION_WINDOW_TITLE}" "${NX_AGENT}" 2>"${SESSION_LOG}" & + NX_TEMP='/tmp' x2goagent ${X2GO_NXAGENT_OPTIONS} ${NOLISTOPT} ${X2GODPIOPTION_} -${SESSION_TYPE} -auth "${XAUTHORITY}" -shadow ${SHADOW_DESKTOP} -shadowmode ${SHADOW_MODE} ${agent_geometry} -name "${SESSION_WINDOW_TITLE}" "${NX_AGENT}" 2>"${SESSION_LOG}" & else # set NX_TEMP to /tmp, make sure x2goagent starts when pam_tmpdir.so is in use "${X2GO_LIB_PATH}/x2gosyslog" "${0}" 'debug' "started nxagent: NX_TEMP=/tmp x2goagent X2GO_NXAGENT_OPTIONS ('${X2GO_NXAGENT_OPTIONS}') NOLISTOPT ('${NOLISTOPT}') X2GODPIOPTION_ ('${X2GODPIOPTION_}') XDMCPPOPT ('${XDMCPOPT}') -SESSION_TYPE ('-${SESSION_TYPE}') NOEXITPARAM ('${NOEXITPARAM}') -auth \"XAUTHORITY\" ('\"${XAUTHORITY}\"') agent_geometry ('${agent_geometry}') -name \"SESSION_WINDOW_TITLE\" ('\"${SESSION_WINDOW_TITLE}\"') \"NX_AGENT\" ('\"${NX_AGENT}\"') 2>\"SESSION_LOG\" ('\"${ [...] - NX_TEMP='/tmp' x2goagent ${X2GO_NXAGENT_OPTIONS} ${NOLISTOPT} ${X2GODPIOPTION_} ${XDMCPOPT} ${randr_xinerama_option} -${SESSION_TYPE} ${NOEXITPARAM} -auth "${XAUTHORITY}" ${agent_geometry} -name "${SESSION_WINDOW_TITLE}" "${NX_AGENT}" 2>"${SESSION_LOG}" & + NX_TEMP='/tmp' x2goagent ${X2GO_NXAGENT_OPTIONS} ${NOLISTOPT} ${X2GODPIOPTION_} ${XDMCPOPT} -${SESSION_TYPE} ${NOEXITPARAM} -auth "${XAUTHORITY}" ${agent_geometry} -name "${SESSION_WINDOW_TITLE}" "${NX_AGENT}" 2>"${SESSION_LOG}" & fi ln -s -- "${SESSION_DIR}" "${X2GO_ROOT}/C-${SESSION_NAME}" -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/x2goserver.git