Hello, Martin Michlmayr, on Wed 16 Nov 2016 12:07:07 -0800, wrote: > I believe below is the right fix, i.e. start screen when screen exists and > when we're on serial or when we're NOT on network.
But AIUI the intent was to have screen in ssh connections too. We could have the case where d-i is first started with the serial console, running through screen, and enable the network console, which we'd also want to run through screen. I'd thus say that we rather want the attached changes, to have one screen session per terminal type. I'm also thinking that we perhaps want to add -x when resuming a session, so that somebody can connect trough ssh several timesĀ ? Samuel
diff --git a/src/lib/debian-installer.d/S70menu b/src/lib/debian-installer.d/S70menu index 7b35fac..2549e29 100644 --- a/src/lib/debian-installer.d/S70menu +++ b/src/lib/debian-installer.d/S70menu @@ -14,11 +14,11 @@ else if [ -x "$screen_bin" -a \( "$TERM_TYPE" = network -o "$TERM_TYPE" = serial \) -a "$TERM" != dumb ]; then # there's GNU/screen binary, run menu in it. # call this script again with in GNU/screen, possibly in UTF-8 mode - SCREEN_OPT="" + SCREEN_OPT="-S $TERM_TYPE" [ -n "$TERM_UTF8" ] && SCREEN_OPT="$SCREEN_OPT -U" - [ -d /var/run/screen/S-root -a -e /var/run/screen/S-root/* ] && - SCREEN_OPT="-r" # If GNU/screen is already started, just resume it + [ -d /var/run/screen/S-root -a -e /var/run/screen/S-root/*.$TERM_TYPE ] && + SCREEN_OPT="-r $TERM_TYPE" # If GNU/screen is already started, just resume it set +e $screen_bin $SCREEN_OPT sh -c 'printf "\033k%s\033\\" installer ; /lib/debian-installer/menu' EXIT=$?