Bug#819988: screen: Add udeb support to GNU/screen
On Fri, Apr 22, 2016 at 3:53 AM, Sven Joachimwrote: > 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
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
Dear Axel, On Mon, Apr 11, 2016 at 11:34 PM, Roger Shimizuwrote: > 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
On Mon, Apr 11, 2016 at 9:38 PM, Axel Beckertwrote: > 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
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
Dear Axel, On Mon, Apr 11, 2016 at 9:30 AM, Roger Shimizuwrote: > 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
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 ShimizuDate: 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
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
On Tue, Apr 5, 2016 at 10:02 PM, Axel Beckertwrote: > 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
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
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
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 ShimizuDate: 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;