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

2019-06-19 Thread Lars Wendler
On Wed, 19 Jun 2019 12:52:18 +0200 Mihai Moldovan wrote:

>* On 6/18/19 3:27 PM, Lars Wendler wrote:
>> 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.  
>
>Can you elaborate on that, please? I understand that there's potential
>for breakage with a compat symlink. One example would be software that
>is not correctly trimmed to using lib32 instead of lib and hence
>trying to use the wrong, 64-bit, directory at compile time, unless
>additional patching is done.

I was reading the suggested patch wrong. I thought it
replaces /usr/lib/misc with /usr/lib64/misc bit I just saw that the
latter path was rather added to the list.

>I fail to see a lot of breakage potential with the current patch I
>applied that favors lib64. Let's create a matrix:
>
> System | 32-bit OpenSSH installed | 64-bit OpenSSH installed |
> [G]ood/[B]ad
>+--+--+---
>{32}|   X  | -|   G
>{32}|   -  | X| B
>(nonsense) {32}|   X  |
>X| B (nonsense?) {64}|   X
>| -| B (nonsense) {64}|
>-  | X|   G {64}
>|   X  | X| G (nonsense?)
>{32,64} |   X  | -|
>G {32,64} |   -  | X
>|   B {64,32} |   X  |
>-|   B {64,32} |   -
>| X|   G {64,32} |
>X  | X| G (nonsense?)
>
>The failure cases are pretty rare and mostly boil down to users
>messing up their system - for instance, why would anyone install a
>64-bit version of OpenSSH on a 32-bit non-multilib system? The only
>cases that would be bad is having a 32-bit OpenSSH version installed
>on a {64,32} multilib system or a 64-bit OpenSSH version on a {32,64}
>multilib system - i.e., when the installed OpenSSH version does *not*
>match the primary arch. These cases should be very rare and indicate a
>hosed system to begin with.
>
>Additionally, none of these failure cases are actually fatal. A 32-bit
>OpenSSH sftp-server binary should work fine on a 64-bit system. As
>long as we actually find a binary, we should be mostly good to go.
>
>
>> We changed the following directories on 64bit arches with the 17.1
>> profile:
>> 
>> 17.0:
>> 
>> # ls -ld /lib*
>> lrwxrwxrwx 1 root root5 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".  
>
>Hmm, that's just nitpicking maybe and too late for any change now that
>the profile went on to be stable, but I don't get why lib32 was
>renamed to lib. Wouldn't it have been better to just keep lib32 and
>lib64 around (which describes both directories's purpose vividly) and
>just remove the compat symlink? Just using "lib" is ambiguous and can
>be confusing.

IIRC it was an attempt to remove the lib symlinks. Unfortunately I
haven't found the original post about why that change was introduced
anymore or why it was done this way. All I can remember is some talking
about "other distros are doing it likewise".

>
>> 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 could implement a Makefile variable that is being passed down via
>CFLAGS (no sed hackery) and add it as the first option. I'd like to
>keep the fallback list, though. Not sure if that would actually be
>really useful to anyone, though.

Not necessary. If both paths are present I suppose there will be no
more regressions.

>Mihai
>
>[0] {primary arch,secondary arch}
>

Cheers
Lars

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


pgpXgOTPniLz6.pgp
Description: Digitale Signatur von OpenPGP
___
x2go-dev mailing list
x2go-dev@lists.x2go.org
https://lists.x2go.org/listinfo/x2go-dev

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

2019-06-19 Thread Mihai Moldovan
* On 6/18/19 3:27 PM, Lars Wendler wrote:
> 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.

Can you elaborate on that, please? I understand that there's potential for
breakage with a compat symlink. One example would be software that is not
correctly trimmed to using lib32 instead of lib and hence trying to use the
wrong, 64-bit, directory at compile time, unless additional patching is done.

I fail to see a lot of breakage potential with the current patch I applied that
favors lib64. Let's create a matrix:

 System | 32-bit OpenSSH installed | 64-bit OpenSSH installed | [G]ood/[B]ad
+--+--+---
{32}|   X  | -|   G
{32}|   -  | X| B (nonsense)
{32}|   X  | X| B (nonsense?)
{64}|   X  | -| B (nonsense)
{64}|   -  | X|   G
{64}|   X  | X| G (nonsense?)
{32,64} |   X  | -|   G
{32,64} |   -  | X|   B
{64,32} |   X  | -|   B
{64,32} |   -  | X|   G
{64,32} |   X  | X| G (nonsense?)

The failure cases are pretty rare and mostly boil down to users messing up their
system - for instance, why would anyone install a 64-bit version of OpenSSH on a
32-bit non-multilib system? The only cases that would be bad is having a 32-bit
OpenSSH version installed on a {64,32} multilib system or a 64-bit OpenSSH
version on a {32,64} multilib system - i.e., when the installed OpenSSH version
does *not* match the primary arch. These cases should be very rare and indicate
a hosed system to begin with.

Additionally, none of these failure cases are actually fatal. A 32-bit OpenSSH
sftp-server binary should work fine on a 64-bit system. As long as we actually
find a binary, we should be mostly good to go.


> We changed the following directories on 64bit arches with the 17.1
> profile:
> 
> 17.0:
> 
> # ls -ld /lib*
> lrwxrwxrwx 1 root root5 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".

Hmm, that's just nitpicking maybe and too late for any change now that the
profile went on to be stable, but I don't get why lib32 was renamed to lib.
Wouldn't it have been better to just keep lib32 and lib64 around (which
describes both directories's purpose vividly) and just remove the compat
symlink? Just using "lib" is ambiguous and can be confusing.


> 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 could implement a Makefile variable that is being passed down via CFLAGS (no
sed hackery) and add it as the first option. I'd like to keep the fallback list,
though. Not sure if that would actually be really useful to anyone, though.



Mihai

[0] {primary arch,secondary arch}



signature.asc
Description: OpenPGP digital signature
___
x2go-dev mailing list
x2go-dev@lists.x2go.org
https://lists.x2go.org/listinfo/x2go-dev

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

2019-06-18 Thread Tobias Ehrig
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

diff --git a/x2goclient-4.1.2.1/src/onmainwindow.cpp b/x2goclient-
4.1.2.1/src/onmainwindow.cpp
index 405b124..16eeeb5 100644
--- a/x2goclient-4.1.2.1/src/onmainwindow.cpp
+++ b/x2goclient-4.1.2.1/src/onmainwindow.cpp
@@ -10444,6 +10444,7 @@ void ONMainWindow::generateEtcFiles()
  << "/usr/lib/ssh" /* Mageia, OpenSUSE, SLE{S,D} <
12 x86, SLE{S,D} 12, Arch */
  << "/usr/lib64/ssh" /* SLE{S,D} < 12 x86_64 */
  << "/usr/lib/misc" /* Gentoo */
+ << "/usr/lib64/misc" /* Gentoo 17.1 x64 */
  << "/usr/libexec"; /* Slackware, OS X */
 
 #if QT_VERSION < 0x05
___
x2go-dev mailing list
x2go-dev@lists.x2go.org
https://lists.x2go.org/listinfo/x2go-dev