3

I am a user of screen on terminal, but i tried to mount a screen on my Macbook and results in this warning:

$ screen
LoginName too long - sorry.

I read on web and the suggestion is change the username of my computer, but I am the only user and the administrator of the computer, and I have a lot of information in my session.

Can I do something?

3 Answers3

6

This is a known bug, reported here. It also chokes if $HOME is longer than 25 characters.

I was able to work around this by applying a patch (which increases the limit from 20 to 50) and rebuilding from source.

The patch is in this message. It doesn't apply to the screen-4.0.3 sources downloaded from ftp.gnu.org; apparently it depends on some unreleased changes added after that.

(Note: When I downloaded the patch, it named it bin4fE4KxGNNI.bin; I manually renamed it to gnuscreen-21653.patch.)

So I grabbed the latest screen sources from git:

git clone git://git.savannah.gnu.org/screen.git

applied the patch:

patch -p 1 < gnuscreen-21653.patch

then built from source:

./autogen.sh
cd src
./configure --prefix=/where/you/want/to/install
make
make install

This gave me a screen executable that I can run from /home/accountwithaverylongusername on my Linux system. It should work the same way on OSX.

If your user name is longer than 50 characters, you can probably just update the constant after applying the patch.

I hope this patch, or something like it, will appear in the next release of GNU screen.

4

I worked around the same bug by using tmux instead of screen.

legoscia
  • 2,667
1

Screen-4.3.1 has solved this bug. Just do the following:

1-Download Screen-4.3.1

wget http://www.linuxfromscratch.org/blfs/view/svn/general/screen.html

2-Decompress

tar -zxvf screen-4.3.1.tar.gz

3-Go to directory

cd screen-4.3.1

4-Run configure to create Makefile

./configure

5-Make and install

make
make install

6-It will probably ask you to do the following copy manually:

sudo cp etc/etcscreenrc /etc/