Bug#885219: /lib64 provision added in 9.1.1 prohibits multilib libc

2017-12-27 Thread Russ Allbery
Control: tags -1 = pending

Jonathan Nieder  writes:
> Russ Allbery wrote:

>> Allow libc to install files in /lib64

>> diff --git a/policy/ch-opersys.rst b/policy/ch-opersys.rst
>> index 7d9e20a..d7c4956 100644
>> --- a/policy/ch-opersys.rst
>> +++ b/policy/ch-opersys.rst
>> @@ -35,7 +35,8 @@ Debian Policy. The following exceptions to the FHS apply:
>>  character.
>> 
>>  3.  The requirement for amd64 to use ``/lib64`` for 64 bit binaries is
>> -removed.  Only the dynamic linker is allowed to use this directory.
>> +removed.  Only the dynamic linker and libc are allowed to use this
>> +directory.
>> 
>>  4.  The requirement for object files, internal binaries, and libraries,
>>  including ``libc.so.*``, to be located directly under ``/lib{,32}``

> Seconded.

Now merged for the next release.

-- 
Russ Allbery (r...@debian.org)   



Bug#885219: /lib64 provision added in 9.1.1 prohibits multilib libc

2017-12-27 Thread Jonathan Nieder
Russ Allbery wrote:

> Allow libc to install files in /lib64
>
> diff --git a/policy/ch-opersys.rst b/policy/ch-opersys.rst
> index 7d9e20a..d7c4956 100644
> --- a/policy/ch-opersys.rst
> +++ b/policy/ch-opersys.rst
> @@ -35,7 +35,8 @@ Debian Policy. The following exceptions to the FHS apply:
>  character.
> 
>  3.  The requirement for amd64 to use ``/lib64`` for 64 bit binaries is
> -removed.  Only the dynamic linker is allowed to use this directory.
> +removed.  Only the dynamic linker and libc are allowed to use this
> +directory.
> 
>  4.  The requirement for object files, internal binaries, and libraries,
>  including ``libc.so.*``, to be located directly under ``/lib{,32}``

Seconded.

Thank you,
Jonathan



Bug#885219: /lib64 provision added in 9.1.1 prohibits multilib libc

2017-12-26 Thread Sean Whitton
Hello,

On Mon, Dec 25 2017, Russ Allbery wrote:

> commit e0759206c2960f3fd6427583f10c4f87b39b152e (HEAD ->
> bug885219-rra) Author: Russ Allbery  Date: Mon Dec 25
> 18:06:25 2017
>
> Allow libc to install files in /lib64
>
> diff --git a/policy/ch-opersys.rst b/policy/ch-opersys.rst index
> 7d9e20a..d7c4956 100644 --- a/policy/ch-opersys.rst +++
> b/policy/ch-opersys.rst @@ -35,7 +35,8 @@ Debian Policy. The following
> exceptions to the FHS apply:
>  character.
>
>  3.  The requirement for amd64 to use ``/lib64`` for 64 bit binaries
> is
> - removed.  Only the dynamic linker is allowed to use this directory.
> + removed.  Only the dynamic linker and libc are allowed to use this
> + directory.
>
>  4.  The requirement for object files, internal binaries, and
>  libraries,
>  including ``libc.so.*``, to be located directly under
>  ``/lib{,32}``

Seconded.

-- 
Sean Whitton


signature.asc
Description: PGP signature


Bug#885219: /lib64 provision added in 9.1.1 prohibits multilib libc

2017-12-25 Thread Russ Allbery
Control: tags -1 patch

Russ Allbery  writes:

> As explained by Aurelian Jarno:

>>> 9.1.1
>>> Only the dynamic linker may install files to /lib64/.

>> How is that supposed to work for the multilib glibc? For example
>> libc6-amd64:i386 installs all its libraries into /lib64. We don't want
>> to install these files in the multiarch path, as they will collide with
>> the libc6:amd64 package. This is actually forbidden by the same
>> paragraph of the policy (and that's a good thing).
>> 
>> In the long term we should get ready of multilib now that we have
>> multiarch, but it seems it's not something we are ready to do yet.

> The best fix appears to be to exempt libc from this requirement (confirmed
> in a later message).

Here's a proposed diff.  Seconds?

commit e0759206c2960f3fd6427583f10c4f87b39b152e (HEAD -> bug885219-rra)
Author: Russ Allbery 
Date:   Mon Dec 25 18:06:25 2017

Allow libc to install files in /lib64

diff --git a/policy/ch-opersys.rst b/policy/ch-opersys.rst
index 7d9e20a..d7c4956 100644
--- a/policy/ch-opersys.rst
+++ b/policy/ch-opersys.rst
@@ -35,7 +35,8 @@ Debian Policy. The following exceptions to the FHS apply:
 character.
 
 3.  The requirement for amd64 to use ``/lib64`` for 64 bit binaries is
-removed.  Only the dynamic linker is allowed to use this directory.
+removed.  Only the dynamic linker and libc are allowed to use this
+directory.
 
 4.  The requirement for object files, internal binaries, and libraries,
 including ``libc.so.*``, to be located directly under ``/lib{,32}``

-- 
Russ Allbery (r...@debian.org)   



Bug#885219: /lib64 provision added in 9.1.1 prohibits multilib libc

2017-12-25 Thread Russ Allbery
Package: debian-policy
Version: 4.1.2.0
Severity: important

As explained by Aurelian Jarno:

>> 9.1.1
>> Only the dynamic linker may install files to /lib64/.

> How is that supposed to work for the multilib glibc? For example
> libc6-amd64:i386 installs all its libraries into /lib64. We don't want
> to install these files in the multiarch path, as they will collide with
> the libc6:amd64 package. This is actually forbidden by the same
> paragraph of the policy (and that's a good thing).
> 
> In the long term we should get ready of multilib now that we have
> multiarch, but it seems it's not something we are ready to do yet.

The best fix appears to be to exempt libc from this requirement (confirmed
in a later message).

-- System Information:
Debian Release: buster/sid
  APT prefers unstable
  APT policy: (990, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 4.14.0-1-amd64 (SMP w/8 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages debian-policy depends on:
ii  libjs-sphinxdoc  1.6.5-3

debian-policy recommends no packages.

Versions of packages debian-policy suggests:
pn  doc-base  

-- no debconf information