Comment 0 for bug 664059

Revision history for this message
Matthias Winzeler (matthias-winzeler) wrote :

I'm using byobu as shipping with ubuntu maverick meerkat:

$ byobu -v
byobu version 3.5
Screen version 4.00.03jw4 (FAU) 2-May-06

I recently noticed that byobu breaks $SSH_AUTH_SOCK so that connecting the ssh-agent fails:

# Without byobu:
$ echo $SSH_AUTH_SOCK; ls -l $SSH_AUTH_SOCK
/tmp/keyring-qDio3Y/ssh
srwxr-xr-x 1 matthias matthias 0 2010-10-20 18:08 /tmp/keyring-qDio3Y/ssh

# After launching byobu:
byobu
echo $SSH_AUTH_SOCK; ls -l $SSH_AUTH_SOCK
/var/run/screen/S-matthias/byobu.ssh-agent
ls: Zugriff auf /var/run/screen/S-matthias/byobu.ssh-agent nicht möglich: No such file or directory

# as a result every connection to the ssh-agent fails

The following lines in /usr/bin/byobu seem weird to me:
 72 # Create or update ssh-agent socket
 73 if [ -S "$SSH_AUTH_SOCK" ] && [ ! -h "$SSH_AUTH_SOCK" ] && [ -w "$RUN" ]; th en
 74 rm -f "$RUN/$PKG.ssh-agent"
 75 ln -sf "$SSH_AUTH_SOCK" "$RUN/$PKG.ssh-agent"
 76 fi

The write flag of the directory $RUN is checked - but $RUN is not defined in /usr/bin/byobu and the symbolic link is not properly set up. Byobu-janitor contains these lines, too (lines 38-41) but sets $RUN correctly at the top of the script. Should these lines possibly be removed from /usr/bin/byobu? Otherwise, $RUN must be correctly set in /usr/bin/byobu. If I add the following two lines in byobu, it works:

[ -r "/etc/$PKG/socketdir" ] && . "/etc/$PKG/socketdir" || SOCKETDIR="/var/r un/screen"
RUN="$SOCKETDIR/S-$USER"