Bug#819988: screen: Add udeb support to GNU/screen

2016-04-22 Thread Roger Shimizu
On Fri, Apr 22, 2016 at 3:53 AM, Sven Joachim  wrote:
> On 2016-04-05 00:42 +0900, Roger Shimizu wrote:
>
>> I'm going to add GNU/screen support into debian-installer [0].
>> It would be useful when install debian via serial console or
>> network-console (SSH).
>
> I can't really test your screen-udeb package, but you will probably need
> the screen terminfo entry in the installer.  One possibility is to
> install it into the screen-udeb package at build time, there's precedent
> for that in the bogl package[1].
>
> Cheers,
>Sven
>
>
> 1. https://anonscm.debian.org/git/collab-maint/bogl.git/tree/debian/rules#n35

Dear Sven,

Thanks for your feedback!

However, as I tested, screen-udeb ran well under my armel device.
And there're a few terminfo already inside d-i image:

/usr/share/terminfo/b/bterm
/lib/terminfo/l/linux
/lib/terminfo/v/vt102
/lib/terminfo/d/dumb
/lib/terminfo/a/ansi

They're maybe provided by src:debian-installer-utils [2], which
creates package di-utils-terminfo [3].

[2] 
https://anonscm.debian.org/cgit/d-i/debian-installer-utils.git/tree/debian/rules
[3] 
https://anonscm.debian.org/cgit/d-i/debian-installer-utils.git/tree/debian/control

I guess the above 5 terminfo files are enough for d-i, and there's no
need to introduce new one.

Cheers,
-- 
Roger Shimizu, GMT +9 Tokyo
PGP/GPG: 17B3ACB1



Bug#819988: screen: Add udeb support to GNU/screen

2016-04-21 Thread Sven Joachim
On 2016-04-05 00:42 +0900, Roger Shimizu wrote:

> I'm going to add GNU/screen support into debian-installer [0].
> It would be useful when install debian via serial console or
> network-console (SSH).

I can't really test your screen-udeb package, but you will probably need
the screen terminfo entry in the installer.  One possibility is to
install it into the screen-udeb package at build time, there's precedent
for that in the bogl package[1].

Cheers,
   Sven


1. https://anonscm.debian.org/git/collab-maint/bogl.git/tree/debian/rules#n35



Bug#819988: screen: Add udeb support to GNU/screen

2016-04-12 Thread Roger Shimizu
Dear Axel,

On Mon, Apr 11, 2016 at 11:34 PM, Roger Shimizu  wrote:
> On Mon, Apr 11, 2016 at 9:38 PM, Axel Beckert  wrote:
>>> I'm preparing a new patch that resolve the terminfocap setting for
>>> debian-installer.
>>>
>>> It's almost ready, but I want to have more tests, before submitting to you.
>>> Thank for your understanding!

Enclosed the verified patch.

> BTW. I have a few minor issues pending. I'd appreciate If you have any clue.
> - screen will report a error message when starting in d-i:
>   /var/run/utmp: No such file or directory
>   I tried to set "deflogin off" and "login off" in /etc/screenrc, but
> seems it doesn't help.
> - window 4 of screen is for log: tail -f /var/log/syslog
>   it's better if it can be set as "respawn" as in /etc/inittab [0]

no clue yet for these 2 issues.

> - as you can see I make title for each window
>   And I start screen by "screen -t installer /sbin/debian-installer",
> so window 1 is titled as "installer"
>   But using "C-a c" to create a new window also will be titled as
> "installer", which is better to be able to change the default title.

Above issue gets resolved by appending "shelltitle shell" to /etc/screenrc.
But I met a minor bug(?) that title of 1st window started by screen
command is not correctly set.
Though I find workaround that set again by shell command:
- printf "\033k%s\033\\" installer

Cheers,
-- 
Roger Shimizu, GMT +9 Tokyo
PGP/GPG: 17B3ACB1
From 4ed2b27bebe2e8ebb4eba403cc77ef02a9dea83f Mon Sep 17 00:00:00 2001
From: Roger Shimizu 
Date: Sat, 9 Apr 2016 01:03:36 +0900
Subject: [PATCH] Update udeb/screenrc to emulate windows on common d-i

Remove unnecessary termcapinfo setting, and create 4 windows as below:
 - window 0: maps to window 1
 - window 1: debian installer
 - window 2: shell
 - window 3: shell
 - window 4: syslog

Title of new window will be "shell", and default shell is /bin/sh
---
 debian/changelog |  1 +
 debian/udeb/screenrc | 58 ++--
 2 files changed, 25 insertions(+), 34 deletions(-)

diff --git a/debian/changelog b/debian/changelog
index 0e8abcf..1d25621 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -28,6 +28,7 @@ screen (4.3.1-3) UNRELEASED; urgency=medium
 Thanks to Laurent Bigonville and Sven Joachim for providing ideas
 on build screen-udeb with less dependency.
 See discussion in #819358 and #819397.
+  * Update udeb/screenrc to emulate windows on console d-i
 
  -- Axel Beckert   Thu, 03 Sep 2015 14:29:29 +0200
 
diff --git a/debian/udeb/screenrc b/debian/udeb/screenrc
index 3806819..a043f48 100644
--- a/debian/udeb/screenrc
+++ b/debian/udeb/screenrc
@@ -37,44 +37,34 @@ bind I login on
 bind O login off
 bind } history
 
-# An example of a "screen scraper" which will launch urlview on the current
-# screen window
-#
-#bind ^B eval "hardcopy_append off" "hardcopy -h $HOME/.screen-urlview" "screen urlview $HOME/.screen-urlview"
-
 # --
 # TERMINAL SETTINGS
 # --
 
-# The vt100 description does not mention "dl". *sigh*
-termcapinfo vt100 dl=5\E[M
-
-# turn sending of screen messages to hardstatus off
-hardstatus off
-# Set the hardstatus prop on gui terms to set the titlebar/icon title
-termcapinfo xterm*|rxvt*|kterm*|Eterm* hs:ts=\E]0;:fs=\007:ds=\E]0;\007
-# use this for the hard status string
-hardstatus string "%h%? users: %u%?"
-
-# An alternative hardstatus to display a bar at the bottom listing the
-# windownames and highlighting the current windowname in blue. (This is only
-# enabled if there is no hardstatus setting for your terminal)
-#
-#hardstatus lastline "%-Lw%{= BW}%50>%n%f* %t%{-}%+Lw%<"
-
-# set these terminals up to be 'optimal' instead of vt100
-termcapinfo xterm*|linux*|rxvt*|Eterm* OP
-
-# Change the xterm initialization string from is2=\E[!p\E[?3;4l\E[4l\E>
-# (This fixes the "Aborted because of window size change" konsole symptoms found
-#  in bug #134198)
-termcapinfo xterm 'is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;4;6l'
-
-# To get screen to add lines to xterm's scrollback buffer, uncomment the
-# following termcapinfo line which tells xterm to use the normal screen buffer
-# (which has scrollback), not the alternate screen buffer.
-#
-#termcapinfo xterm|xterms|xs|rxvt ti@:te@
+# sending of screen messages to hardstatus
+hardstatus alwaysfirstline "%{= kG}[%= %{= kw}%?%-Lw%?%{r} (%{W}%n*%f%t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}][%{B} %M %d %{W}%c %{g}]"
 
 # Enable non-blocking mode to better cope with flaky ssh connections.
 defnonblock 5
+
+# --
+# STARTUP SCREENS
+# --
+# window 0: maps to window 1
+# window 1: debian installer
+# window 2: shell

Bug#819988: screen: Add udeb support to GNU/screen

2016-04-11 Thread Roger Shimizu
On Mon, Apr 11, 2016 at 9:38 PM, Axel Beckert  wrote:
> Hi Roger,
>
> Roger Shimizu wrote:
>> Please hold previous patch.
>
> Ok.

Thanks!

>> I'm preparing a new patch that resolve the terminfocap setting for
>> debian-installer.
>>
>> It's almost ready, but I want to have more tests, before submitting to you.
>> Thank for your understanding!
>
> Thanks for the testing. I'm currently not 100% sure how well I could
> test the screen-udeb package in advance.

I test screen enabled d-i image on my ARM based device, which is
basically a board, with ethernet port, but with no VGA/HDMI port.
So only way to install debian on that board is via SSH or serial console.
That's also the reason why I want to support screen on debian installer.

Test method is easy if all udeb packages are ready.
I have the following local udeb, which is not in official apt repo yet:

$ ls -l localudebs/
total 428
-rw-r--r-- 1 roger roger  59166 Apr  2 22:33
libtinfo5-udeb_6.0+20160319-2_armel.udeb
-rw-r--r-- 1 roger roger   9206 Apr 11 23:11 rootskel_1.116_armel.udeb
-rw-r--r-- 1 roger roger 344404 Apr 11 22:25 screen-udeb_4.3.1-3_armel.udeb

local udeb files need to be put into build/localudebs/ under
checked-out debian-installer.git repo.
After that, command "make reallyclean && make
build_marvell_network-screen" can start to build the d-i image.
"network-screen" is a new target, copied from network-console and
added screen-udeb support.
I didn't push the changes on creating "network-screen" target, so
currently you cannot test this.
I'll inform you when it's ready.

BTW. I have a few minor issues pending. I'd appreciate If you have any clue.
- screen will report a error message when starting in d-i:
  /var/run/utmp: No such file or directory
  I tried to set "deflogin off" and "login off" in /etc/screenrc, but
seems it doesn't help.
- window 4 of screen is for log: tail -f /var/log/syslog
  it's better if it can be set as "respawn" as in /etc/inittab [0]
- as you can see I make title for each window
  And I start screen by "screen -t installer /sbin/debian-installer",
so window 1 is titled as "installer"
  But using "C-a c" to create a new window also will be titled as
"installer", which is better to be able to change the default title.

I already tried to find these answer in manpage, but failed.
However these are really minor issue, so it's okay leave it for the moment.

[0] https://anonscm.debian.org/cgit/d-i/rootskel.git/tree/src/etc/inittab-linux

Cheers,
-- 
Roger Shimizu, GMT +9 Tokyo
PGP/GPG: 17B3ACB1



Bug#819988: screen: Add udeb support to GNU/screen

2016-04-11 Thread Axel Beckert
Hi Roger,

Roger Shimizu wrote:
> Please hold previous patch.

Ok.

> I'm preparing a new patch that resolve the terminfocap setting for
> debian-installer.
> 
> It's almost ready, but I want to have more tests, before submitting to you.
> Thank for your understanding!

Thanks for the testing. I'm currently not 100% sure how well I could
test the screen-udeb package in advance.

Regards, Axel
-- 
 ,''`.  |  Axel Beckert , http://people.debian.org/~abe/
: :' :  |  Debian Developer, ftp.ch.debian.org Admin
`. `'   |  4096R: 2517 B724 C5F6 CA99 5329  6E61 2FF9 CD59 6126 16B5
  `-|  1024D: F067 EA27 26B9 C3FC 1486  202E C09E 1D89 9593 0EDE



Bug#819988: screen: Add udeb support to GNU/screen

2016-04-11 Thread Roger Shimizu
Dear Axel,

On Mon, Apr 11, 2016 at 9:30 AM, Roger Shimizu  wrote:
> Enclosed an additional patch I want to append to screen-udeb branch.
> This will add a few windows on default startup screen within d-i, and
> add a status bar to inform user the existence of screen.
> I already tried it on my box, and it works well.

Please hold previous patch.
I'm preparing a new patch that resolve the terminfocap setting for
debian-installer.

It's almost ready, but I want to have more tests, before submitting to you.
Thank for your understanding!

Cheers,
-- 
Roger Shimizu, GMT +9 Tokyo
PGP/GPG: 17B3ACB1



Bug#819988: screen: Add udeb support to GNU/screen

2016-04-10 Thread Roger Shimizu
Dear Axel,

Enclosed an additional patch I want to append to screen-udeb branch.
This will add a few windows on default startup screen within d-i, and
add a status bar to inform user the existence of screen.
I already tried it on my box, and it works well.

Cheers,
Roger
From 28f59946d355bd598952f383245e82fbe7701159 Mon Sep 17 00:00:00 2001
From: Roger Shimizu 
Date: Sat, 9 Apr 2016 01:03:36 +0900
Subject: [PATCH] Update udeb/screenrc to emulate windows on console d-i

---
 debian/changelog |  1 +
 debian/udeb/screenrc | 24 ++--
 2 files changed, 23 insertions(+), 2 deletions(-)

diff --git a/debian/changelog b/debian/changelog
index 0e8abcf..1d25621 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -28,6 +28,7 @@ screen (4.3.1-3) UNRELEASED; urgency=medium
 Thanks to Laurent Bigonville and Sven Joachim for providing ideas
 on build screen-udeb with less dependency.
 See discussion in #819358 and #819397.
+  * Update udeb/screenrc to emulate windows on console d-i
 
  -- Axel Beckert   Thu, 03 Sep 2015 14:29:29 +0200
 
diff --git a/debian/udeb/screenrc b/debian/udeb/screenrc
index 3806819..c54218b 100644
--- a/debian/udeb/screenrc
+++ b/debian/udeb/screenrc
@@ -50,11 +50,11 @@ bind } history
 termcapinfo vt100 dl=5\E[M
 
 # turn sending of screen messages to hardstatus off
-hardstatus off
+hardstatus alwaysfirstline
 # Set the hardstatus prop on gui terms to set the titlebar/icon title
 termcapinfo xterm*|rxvt*|kterm*|Eterm* hs:ts=\E]0;:fs=\007:ds=\E]0;\007
 # use this for the hard status string
-hardstatus string "%h%? users: %u%?"
+hardstatus string "%{= kG}[%= %{= kw}%?%-Lw%?%{r} (%{W}%n*%f%t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}][%{B} %M %d %{W}%c:%s %{g}]"
 
 # An alternative hardstatus to display a bar at the bottom listing the
 # windownames and highlighting the current windowname in blue. (This is only
@@ -78,3 +78,23 @@ termcapinfo xterm 'is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;4;6l'
 
 # Enable non-blocking mode to better cope with flaky ssh connections.
 defnonblock 5
+
+# --
+# STARTUP SCREENS
+# --
+# window 0: maps to window 1
+# window 1: debian installer
+# window 2: shell
+# window 3: shell
+# window 4: syslog
+
+screen -t start	0 sleep 1
+screen -t shell	2 /bin/sh
+screen -t shell	3 /bin/sh
+screen -t log	4 tail -f /var/log/syslog
+
+bind c screen 1
+bind ^c screen 1
+bind 0 select 1
+
+shell /bin/sh
-- 
2.8.0.rc3



Bug#819988: screen: Add udeb support to GNU/screen

2016-04-05 Thread Axel Beckert
Hi Roger,

Roger Shimizu wrote:
> > Despite the libtinfo5-udeb is not yet available, I was able to still
> > build the package. So I wonder if that "Fix blocked by 819397: Add
> > udeb support to libtinfo5" is really correct/necessary. Because I'm
> > tempted to upload this support with the next upload. (Planned to do
> > one on Sunday, but didn't manage it.)
> 
> You can use "dpkg-deb -I " command to check the built udeb.
> I guess it depends on libc6-udeb and libtinfo5, which should be 
> libtinfo5-udeb.

Indeed:

  Depends: libc6-udeb (>= 2.22), libtinfo5 (>= 6)

> Of course you can make a release without udeb support, since other
> changes seems also has a long list already.

That's why I made these changes in a separate branch.

> Thanks again for taking care of screen!

You're welcome. :-)

Regards, Axel
-- 
 ,''`.  |  Axel Beckert , http://people.debian.org/~abe/
: :' :  |  Debian Developer, ftp.ch.debian.org Admin
`. `'   |  4096R: 2517 B724 C5F6 CA99 5329  6E61 2FF9 CD59 6126 16B5
  `-|  1024D: F067 EA27 26B9 C3FC 1486  202E C09E 1D89 9593 0EDE



Bug#819988: screen: Add udeb support to GNU/screen

2016-04-05 Thread Roger Shimizu
On Tue, Apr 5, 2016 at 10:02 PM, Axel Beckert  wrote:
> Control: tag -1 + pending
>
> Hi,
>
> Axel Beckert wrote:
>> The change
>>
>> -   dh_auto_build -Ddoc
>> +   dh_auto_build --builddirectory build -Ddoc
>>
>> broke the info pages.
> [...]
>> But I suspect I just need to update debian/info accordingly, too.
>
> That was necessary, but didn't suffice. They even weren't build
> anymore. This was additionally needed:
>
> -dh_auto_build --builddirectory build -Ddoc
> +dh_auto_build --sourcedirectory build/doc

Thank you for helping on these issues I didn't notice.
I'm fine with these changes.

> I've fixed this and added some minor cleanups in this commit:
> https://anonscm.debian.org/cgit/collab-maint/screen.git/commit/?h=screen-udeb=4e3403d21fb6848b62cde55771f275d581dda239
>
> The changes are currently tracked in the screen-udeb branch on Alioth:
> https://anonscm.debian.org/cgit/collab-maint/screen.git/log/?h=screen-udeb
>
> Despite the libtinfo5-udeb is not yet available, I was able to still
> build the package. So I wonder if that "Fix blocked by 819397: Add
> udeb support to libtinfo5" is really correct/necessary. Because I'm
> tempted to upload this support with the next upload. (Planned to do
> one on Sunday, but didn't manage it.)

You can use "dpkg-deb -I " command to check the built udeb.
I guess it depends on libc6-udeb and libtinfo5, which should be libtinfo5-udeb.

So it's better to wait #819397 resolving first.
Of course you can make a release without udeb support, since other
changes seems also has a long list already.

Thanks again for taking care of screen!
I'm a user for 10+ years.

Cheers,
-- 
Roger Shimizu, GMT +9 Tokyo
PGP/GPG: 17B3ACB1



Bug#819988: screen: Add udeb support to GNU/screen

2016-04-05 Thread Axel Beckert
Control: tag -1 + pending

Hi,

Axel Beckert wrote:
> The change
> 
> -   dh_auto_build -Ddoc
> +   dh_auto_build --builddirectory build -Ddoc
> 
> broke the info pages. 
[...]
> But I suspect I just need to update debian/info accordingly, too.

That was necessary, but didn't suffice. They even weren't build
anymore. This was additionally needed:

-dh_auto_build --builddirectory build -Ddoc
+dh_auto_build --sourcedirectory build/doc

I've fixed this and added some minor cleanups in this commit:
https://anonscm.debian.org/cgit/collab-maint/screen.git/commit/?h=screen-udeb=4e3403d21fb6848b62cde55771f275d581dda239

The changes are currently tracked in the screen-udeb branch on Alioth:
https://anonscm.debian.org/cgit/collab-maint/screen.git/log/?h=screen-udeb

Despite the libtinfo5-udeb is not yet available, I was able to still
build the package. So I wonder if that "Fix blocked by 819397: Add
udeb support to libtinfo5" is really correct/necessary. Because I'm
tempted to upload this support with the next upload. (Planned to do
one on Sunday, but didn't manage it.)

Regards, Axel
-- 
 ,''`.  |  Axel Beckert , http://people.debian.org/~abe/
: :' :  |  Debian Developer, ftp.ch.debian.org Admin
`. `'   |  4096R: 2517 B724 C5F6 CA99 5329  6E61 2FF9 CD59 6126 16B5
  `-|  1024D: F067 EA27 26B9 C3FC 1486  202E C09E 1D89 9593 0EDE



Bug#819988: screen: Add udeb support to GNU/screen

2016-04-05 Thread Axel Beckert
Hi Roger,

Roger Shimizu wrote:
> I'm going to add GNU/screen support into debian-installer [0].
> It would be useful when install debian via serial console or
> network-console (SSH).

Yay, thanks a lot! This will become an awesome D-I feature! :-)

> Enclosed patch to add screen-udeb in debian/control.

Unfortunately it doesn't apply anymore to the current git HEAD
anymore, so I had to slightly adapt your patch.

Main change: Less code duplication with regards to the CFLAGS setting.
:-) The remaining change was only the updated debian/changelog.

Unfortunately there are further issues I need to investigate:

The change

-   dh_auto_build -Ddoc
+   dh_auto_build --builddirectory build -Ddoc

broke the info pages. Lintian warns:

I: screen: package-contains-empty-directory usr/share/info/

And indeed, debdiff confirms that:

Files in first .deb but not in second
-
-rw-r--r--  root/root   /usr/share/info/screen.info-1.gz
-rw-r--r--  root/root   /usr/share/info/screen.info-2.gz
-rw-r--r--  root/root   /usr/share/info/screen.info-3.gz
-rw-r--r--  root/root   /usr/share/info/screen.info-4.gz
-rw-r--r--  root/root   /usr/share/info/screen.info-5.gz
-rw-r--r--  root/root   /usr/share/info/screen.info-6.gz
-rw-r--r--  root/root   /usr/share/info/screen.info.gz

But I suspect I just need to update debian/info accordingly, too.

Regards, Axel
-- 
 ,''`.  |  Axel Beckert , http://people.debian.org/~abe/
: :' :  |  Debian Developer, ftp.ch.debian.org Admin
`. `'   |  4096R: 2517 B724 C5F6 CA99 5329  6E61 2FF9 CD59 6126 16B5
  `-|  1024D: F067 EA27 26B9 C3FC 1486  202E C09E 1D89 9593 0EDE



Bug#819988: screen: Add udeb support to GNU/screen

2016-04-04 Thread Roger Shimizu
Package: screen
Version: 4.3.1-2
Severity: wishlist
Control: block -1 819397
X-Debbugs-Cc: svenj...@gmx.de, bi...@debian.org

Dear Maintainer,

I'm going to add GNU/screen support into debian-installer [0].
It would be useful when install debian via serial console or
network-console (SSH).

Enclosed patch to add screen-udeb in debian/control.
Thanks to Laurent Bigonville [1] and Sven Joachim [2], dependency is
minimized to libc6-udeb and libtinfo5-udeb only.

[0] https://lists.debian.org/debian-boot/2016/02/msg00547.html
[1] https://bugs.debian.org/819358#25
[2] https://bugs.debian.org/819397#10

Cheers,
-- 
Roger Shimizu, GMT +9 Tokyo
PGP/GPG: 17B3ACB1
From 675f57bde3118867b4c249771e7c58ad7be9d5eb Mon Sep 17 00:00:00 2001
From: Roger Shimizu 
Date: Sat, 2 Apr 2016 00:45:34 +0900
Subject: [PATCH] Add udeb (debian-install) support.

Thanks to Laurent Bigonville and Sven Joachim for providing ideas on build
screen-udeb with less dependency. See discussion in #819358 and #819397.
---
 debian/changelog   |  7 
 debian/control | 19 +++
 debian/rules   | 39 +++---
 debian/screen-udeb.install |  1 +
 debian/udeb/screenrc   | 80 ++
 5 files changed, 135 insertions(+), 11 deletions(-)
 create mode 100644 debian/screen-udeb.install
 create mode 100644 debian/udeb/screenrc

diff --git a/debian/changelog b/debian/changelog
index d5d387e..29afd4e 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,8 +1,15 @@
 screen (4.3.1-3) UNRELEASED; urgency=medium
 
+  [ Axel Beckert ]
   * Add CVE-ID to previous changelog entry and patch.
   * Remove screen-dbg package, there are automatic -dbgsym packages now.
 
+  [ Roger Shimizu ]
+  * Add udeb (debian-install) support.
+Thanks to Laurent Bigonville and Sven Joachim for providing ideas
+on build screen-udeb with less dependency.
+See discussion in #819358 and #819397.
+
  -- Axel Beckert   Thu, 03 Sep 2015 14:29:29 +0200
 
 screen (4.3.1-2) unstable; urgency=high
diff --git a/debian/control b/debian/control
index b06cc65..e4b410a 100644
--- a/debian/control
+++ b/debian/control
@@ -30,3 +30,22 @@ Description: terminal multiplexer with VT100/ANSI terminal emulation
  Screen also supports a whole slew of other features, including configurable
  input and output translation, serial port support, configurable logging,
  and multi-user support.
+
+Package: screen-udeb
+Architecture: any
+Section: debian-installer
+Package-Type: udeb
+Priority: extra
+Depends: ${misc:Depends},
+ ${shlibs:Depends}
+Description: terminal multiplexer with VT100/ANSI terminal emulation - udeb
+ GNU Screen is a terminal multiplexer that runs several separate "screens" on
+ a single physical character-based terminal. Each virtual terminal emulates a
+ DEC VT100 plus several ANSI X3.64 and ISO 2022 functions. Screen sessions
+ can be detached and resumed later on a different terminal.
+ .
+ Screen also supports a whole slew of other features, including configurable
+ input and output translation, serial port support, configurable logging,
+ and multi-user support.
+ .
+ This is stripped-down version of screen for debian-installer.
diff --git a/debian/rules b/debian/rules
index f376a0a..88ff596 100755
--- a/debian/rules
+++ b/debian/rules
@@ -9,6 +9,7 @@
 #export DH_VERBOSE=1
 
 ROOT := $(CURDIR)/debian/screen
+ROOT_UDEB := $(CURDIR)/debian/screen-udeb
 # statically define this... sucko
 TTYGROUP := 5
 
@@ -16,11 +17,12 @@ TTYGROUP := 5
 	dh $@ --parallel --with autoreconf
 
 override_dh_auto_clean:
-	test ! -s doc/Makefile || $(MAKE) -C doc realclean
-	test ! -s Makefile || ! grep -q clean Makefile || $(MAKE) realclean
+	test ! -s build/doc/Makefile  || (cd build; $(MAKE) -C doc realclean)
+	test ! -s build/Makefile  || (cd build;  ! grep -q clean Makefile || $(MAKE) realclean)
+	test ! -s build-udeb/Makefile || (cd build-udeb; ! grep -q clean Makefile || $(MAKE) realclean)
 
 override_dh_auto_configure:
-	dh_auto_configure -- \
+	dh_auto_configure --builddirectory build -- \
 		--with-socket-dir=/var/run/screen \
 		--enable-pam \
 		--with-pty-mode=0620 \
@@ -30,25 +32,40 @@ override_dh_auto_configure:
 		--enable-colors256 \
 		--enable-telnet \
 		--enable-use-locale
+	# to minimize to library dependency, udeb binary is without "--enable-pam"
+	dh_auto_configure --builddirectory build-udeb -- \
+		--with-socket-dir=/var/run/screen \
+		--with-pty-mode=0620 \
+		--with-pty-group=${TTYGROUP} \
+		--enable-rxvt_osc \
+		--with-sys-screenrc=/etc/screenrc \
+		--enable-colors256 \
+		--enable-telnet \
+		--enable-use-locale
 	# Assert the use of fifos instead of sockets
-	grep -q "define.*NAMEDPIPE.*1" config.h || echo "#define NAMEDPIPE 1" >> config.h
+	(cd build;  grep -q "define.*NAMEDPIPE.*1" config.h || echo "#define NAMEDPIPE 1" >> config.h)
+	(cd build-udeb;