Subject: Bug#1393: [X2Go-Dev] Bug#1393: Bug#1393: sftp-server binary not found gentoo (profile 17.1)

From: Lars Wendler <[email-masked]>
Date: Tue, 18 Jun 2019 15:27:11 +0200

Hello,

On Tue, 18 Jun 2019 11:04:31 +0200 Mihai Moldovan wrote:

>Control: reassign -1 x2goclient
>
>* On 6/18/19 9:12 AM, Tobias Ehrig wrote:
>> Package: net-misc/x2goclient
>> Version: 4.1.2.1
>> 
>> On Gentoo (eselect profile 17.1) the x2goclient can't find the binary
>> sftp-server which is located at
>> 
>> /usr/lib64/misc/sftp-server
>> 
>> 
>> Here is a patch  
>
>I was inclined to NAK this at first.
>
>/usr/lib on a multilib Gentoo system is typically a symlink
>to /usr/lib64, while on non-multilib systems, as far as I remember,
>it's just a normal directory containing all library files.

IMHO you should NAK such a patch as this is definitely an issue coming
from our 17.1 profile's new lib directory structure.
If you commit the suggested patch, all 32bit 17.1 profile installations
will suffer from the bug our 64bit 17.1 profile installations currently
suffer from.

>The entry containing /usr/lib/misc should hence cover your use case as
>well. Did the 17.1 profile remove the /usr/lib symlink? I'm currently
>still on 17.0, but it looks like the whole point of 17.1 is to remove
>the compat symlink, so you seem to be on the right track.

We changed the following directories on 64bit arches with the 17.1
profile:

17.0:

# ls -ld /lib*
lrwxrwxrwx 1 root root    5 May 17 10:24 /lib -> lib64
drwxr-xr-x 1 root root 1174 May 17 10:26 /lib32
drwxr-xr-x 1 root root 5078 Jun 13 18:50 /lib64

17.1:

# ls -ld /lib*
drwxr-xr-x 1 root root 1382 May 13 22:54 /lib
drwxr-xr-x 1 root root 5340 Jun 18 10:23 /lib64

As you can see, "lib32" became "lib" and "lib" is no longer a symlink
pointing to "lib64".

My suggestion is to let the Gentoo package maintainers handle this in
the affected x2go package's ebuild files. We have a function called
"get_libdir" that can be used with sed to set the correct lib dir
name in the affected code. 

>I think I'll apply a slightly modified patch that
>favors /usr/lib64/misc instead (mostly because that's the more common
>arch now, we want to avoid calling 32-bit binaries on 64-bit systems
>even if they are installed and it's highly unlikely to have a
>32-64-bit multilib system [i.e., main system 32-bit, with 64-bit as an
>additional architecture]).
>
>
>
>Mihai
>

Kind regards

-- 
Lars Wendler
Gentoo package maintainer
GPG: 21CC CF02 4586 0A07 ED93  9F68 498F E765 960E 9B39