• [gentoo-dev] [PATCH 0/6] glep-0078: Clarifications

    From =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?@21:1/5 to All on Wed Sep 21 20:20:01 2022
    Hi,

    Here's a bunch of patches to GLEP 78 (GPKG format). They're mostly clarifications, that is:

    - replacing "basename" with more specific explanation

    - linking formats to the respective standards

    - deferring compressed file formats to GLEP 74

    - clarifying the situation around Manifest signing and verifying binpkg
    authenticity

    Please review.


    Michał Górny (6):
    glep-0078: Replace "basename" with non-ambiguous explanation
    glep-0078: Link tar format to the respective standards
    glep-0078: Link compressed file formats to GLEP 74
    glep-0078: Link OpenPGP to RFC 4880
    glep-0078: Clarify that Manifest is signed too
    glep-0078: Clarify that Manifest must be present for signed binpkg

    glep-0078.rst | 64 +++++++++++++++++++++++++++++++++++----------------
    1 file changed, 44 insertions(+), 20 deletions(-)

    --
    2.37.3

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?@21:1/5 to All on Wed Sep 21 20:20:01 2022
    Signed-off-by: Michał Górny <mgorny@gentoo.org>
    ---
    glep-0078.rst | 4 +++-
    1 file changed, 3 insertions(+), 1 deletion(-)

    diff --git a/glep-0078.rst b/glep-0078.rst
    index a109b7f..ab28aed 100644
    --- a/glep-0078.rst
    +++ b/glep-0078.rst
    @@ -328,7 +328,9 @@ the inner archive contents. This file also provides protection against
    signature reuse/replacement attacks if the OpenPGP signatures are used.

    The implementation follows the Manifest specifications in GLEP 74
    -[#GLEP74]_ and uses the DATA tag for files within the container.
    +and uses the ``DATA`` tag for files within the container.
    +If the package is using OpenPGP signatures, the Manifest file must also +include a cleartext OpenPGP signature as defined in GLEP 74 [#GLEP74]_.

    The implementation should be able to detect checksum mismatches,
    as well as missing, duplicate, or extraneous files within
    --
    2.37.3

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?@21:1/5 to All on Wed Sep 21 20:20:01 2022
    Signed-off-by: Michał Górny <mgorny@gentoo.org>
    ---
    glep-0078.rst | 10 +++++++---
    1 file changed, 7 insertions(+), 3 deletions(-)

    diff --git a/glep-0078.rst b/glep-0078.rst
    index 3078061..a109b7f 100644
    --- a/glep-0078.rst
    +++ b/glep-0078.rst
    @@ -349,9 +349,10 @@ not verify, the package manager must reject processing the corresponding
    archive member. In particular, it must not attempt decompressing
    compressed members in those circumstances.

    -The signatures are created as binary detached OpenPGP signature files,
    -with filename corresponding to the member filename with ``.sig`` suffix -appended.
    +The signatures are created as binary detached OpenPGP signature files
    +as defined by RFC 4880 § 11.4 or a subsequent standard, with filename +corresponding to the member filename with ``.sig`` suffix appended +[#RFC-4880]_.

    The exact details regarding creating and verifying signatures, as well
    as maintaining and distributing keys are outside the scope of this
    @@ -643,6 +644,9 @@ References
    .. [#GLEP74] GLEP 74: Full-tree verificati
  • From =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?@21:1/5 to All on Wed Sep 21 20:20:01 2022
    Signed-off-by: Michał Górny <mgorny@gentoo.org>
    ---
    glep-0078.rst | 5 +++++
    1 file changed, 5 insertions(+)

    diff --git a/glep-0078.rst b/glep-0078.rst
    index ab28aed..733d8d7 100644
    --- a/glep-0078.rst
    +++ b/glep-0078.rst
    @@ -228,6 +228,11 @@ If the Manifest is present, all files contained in the archive must
    be listed in it and verify successfully. The package manager should
    ignore unknown files but preserve them across package updates.

    +For a binary package to be considered signed and suitable for
    +authenticity verification, the Manifest file must be present and contain
    +a valid signature. It is recommended to include detached signatures
    +for archive members as well.
    +

    Permitted .tar format features
    ------------------------------
    --
    2.37.3

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?@21:1/5 to All on Wed Sep 21 20:20:01 2022
    Signed-off-by: Michał Górny <mgorny@gentoo.org>
    ---
    glep-0078.rst | 18 ++++++++++--------
    1 file changed, 10 insertions(+), 8 deletions(-)

    diff --git a/glep-0078.rst b/glep-0078.rst
    index 4d27ac1..3078061 100644
    --- a/glep-0078.rst
    +++ b/glep-0078.rst
    @@ -5,7 +5,7 @@ Author: Michał Górny <mgorny@gentoo.org>,
    Sheng Yu <syu.os@protonmail.com>
    Type: Standards Track
    Status: Accepted
    -Version: 1
    +Version: 1.1
    Created: 2018-11-15
    Last-Modified: 2022-09-21
    Post-History: 2018-11-17, 2019-07-08, 2021-09-13, 2021-09-22, 2022-05-28,
    @@ -304,15 +304,17 @@ Archive member compression

    The archive members outlined above support optional compression using
    one of the compressed file formats supported by the package manager.
    -The exact list of compression types is outside the scope of this -specification.
    +The list of compression types is maintained in GLEP 74 [#GLEP74]_.
    +The package manager may implement an arbitrary subset of compressed file +formats. However, it is recommended that it can uncompress all formats
    +that are n
  • From =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?@21:1/5 to All on Wed Sep 21 20:20:01 2022
    It has been pointed out that the "basename" term may be ambiguous
    in the context. Explain explicitly that it is the filename with
    .gpkg.tar suffix stripped.

    Signed-off-by: Michał Górny <mgorny@gentoo.org>
    ---
    glep-0078.rst | 14 ++++++++------
    1 file changed, 8 insertions(+), 6 deletions(-)

    diff --git a/glep-0078.rst b/glep-0078.rst
    index 05ceba9..24c5c9d 100644
    --- a/glep-0078.rst
    +++ b/glep-0078.rst
    @@ -7,8 +7,9 @@ Type: Standards Track
    Status: Accepted
    Version: 1
    Created: 2018-11-15
    -Last-Modified: 2022-08-14
    -Post-History: 2018-11-17, 2019-07-08, 2021-09-13, 2021-09-22, 2022-05-28 +Last-Modified: 2022-09-21
    +Post-History: 2018-11-17, 2019-07-08, 2021-09-13, 2021-09-22, 2022-05-28,
    + 2022-09-21
    Content-Type: text/x-rst
    ---

    @@ -193,10 +194,11 @@ The gpkg package container is an uncompressed .tar achive whose filename
    should use ``.gpkg.tar`` suffix.

    The archive contains a number of files. All package-related files
    -should be stored in a single directory whose name matches the basename
    -of the package file. However, the implementation must be able to
    -process an archive where the directory name is mismatched. There should
    -be no explicit archive member ent
  • From Ulrich Mueller@21:1/5 to All on Thu Sep 22 08:10:01 2022
    On Wed, 21 Sep 2022, Michał Górny wrote:

    +filaname after stripping the ``.gpkg.tar`` suffix. However,
    ^

    --=-=-Content-Type: application/pgp-signature; name="signature.asc"

    -----BEGIN PGP SIGNATURE-----

    iQFDBAEBCAAtFiEEtDnZ1O9xIP68rzDbUYgzUIhBXi4FAmMr+58PHHVsbUBnZW50 b28ub3JnAAoJEFGIM1CIQV4uRjgIANIcS3baPsYJINkMvRtoV8uH7naxSc7yfr73 5ZVWD8B2TGZXdK3Ujmh4gdd4AVIPNIBd7CncquQPWPuqIsoIPMqkyfDYTAgOfQFd JBHUoO9NDD9PiUSLP/MuPSwueEjBGWDIwQo0K3HtVfBwcd5pg5JfCkb4JiaPUvLF vj3C9Vj26UwOXXROo1F1OncngrLiAbyP+WZx0tm8FFtRbsQLj52ZVm/djqNyn8Uh AMrvY4QiA78apEhufnrIza6XCmJkwolO74Nk6UaMIOgyHcAKz4wA4XDxXEKmFD4v /K67lI/qnKo1sHkI/9x0jffIPZ0QQtONvUGOrCUsFT+7O5AKDjk=sSml
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)