• [gentoo-dev] [PATCH] unpacker.eclass: support >=app-arch/xz-utils-5.4.0

    From Sam James@21:1/5 to All on Wed Dec 14 09:30:01 2022
    =app-arch/xz-utils-5.4.0 supports lzip decompression (not compression).

    Add support for unpacker.eclass to handle it for .lz files.

    Note that xz-utils is part of @system (and PMS requires that .xz is unpackable),
    while most users do not have lzip and friends installed.

    (Note that xz does not (currently, but does not plan on either) implement parallel decompression for .lz, but most .lz distfiles are small, so this
    isn't an issue.)

    Historically, we've often repacked .lz distfiles for important packages
    to avoid users needing to install app-arch/lzip for a single distfile,
    so this avoids the need for that (although I've not done it out of
    principle for things like sys-apps/ed).

    Bug: https://bugs.gentoo.org/249059
    Bug: https://bugs.gentoo.org/485462
    Bug: https://bugs.gentoo.org/501912
    Bug: https://bugs.gentoo.org/502990
    Bug: https://bugs.gentoo.org/545344
    Signed-off-by: Sam James <sam@gentoo.org>
    ---
    eclass/unpacker.eclass | 31 +++++++++++++++++++++++++++----
    1 file changed, 27 insertions(+), 4 deletions(-)

    diff --git a/eclass/unpacker.eclass b/eclass/unpacker.eclass
    index 3d8bf7a8452d0..11f04fde72260 100644
    --- a/eclass/unpacker.eclass
    +++ b/eclass/unpacker.eclass
    @@ -30,7 +30,7 @@ inherit multiprocessing toolchain-funcs
    # @DEFAULT_UNSET
    # @DESCRIPTION:
    # Utility to use to decompress bzip2 files. Will dynamically pick between
    -# `lbzip2`, `pbzip2` and `bzip2`. Make sure your choice accepts the "-dc"
    +# `lbzip2`, `pbzip2`, and `bzip2`. Make sure your choice accepts the "-dc"
    # options.
    # Note: this is meant for users to set, not ebuilds.

    @@ -39,7 +39,7 @@ inherit multiprocessing toolchain-funcs
    # @DEFAULT_UNSET
    # @DESCRIPTION:
    # Utility to use to decompress lzip files. Will dynamically pick between
    -# `plzip`, `pdlzip` and `lzip`. Make sure your choice accepts the "-dc" options.
    +# `xz`, `plzip`, `pdlzip`, and `lzip`. Make sure your choice accepts the "-dc" opti
  • From Ulrich Mueller@21:1/5 to All on Wed Dec 14 12:50:01 2022
    On Wed, 14 Dec 2022, Sam James wrote:

    *.lz)
    - d="|| ( app-arch/plzip app-arch/pdlzip app-arch/lzip )" ;;
    + d="
    + || (
    + >=app-arch/xz-utils-5.4.0
    + app-arch/plzip
    + app-arch/pdlzip
    + app-arch/lzip
    + )
    + "
    + ;;

    Shouldn't all consumers with a dependency on lzip be revbumped?
    Otherwise emerge --depclean (in the default configuration) won't drop
    lzip.

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

    iQFDBAEBCAAtFiEEtDnZ1O9xIP68rzDbUYgzUIhBXi4FAmOZtkAPHHVsbUBnZW50 b28ub3JnAAoJEFGIM1CIQV4ugO8IAMTS6T74fnsqw7/1v0cF88mGeZad1PGjcRlg AlTJ13nTE9oRCfGQsigOgZgUE63d4GvEEPNVuf0VqBq9rV4FwJ862VTg+m3UhxZT Rql0Rahq7/bVTc/ZFsf8byjWYyJwcnpAK+9+5xb7qWUl8zZEtqUUy+3FyKW+IFgE GxDVLv/4m6HmqL3eUcl/Jc1nJf5ZAeCc8s+vgGBLnBJqx8BynP8ChBmGLZYTuJmz I/hF6UkdR/22UWw1GlGH4fmSkvxWYBrrKNoQ9XEWVg4fseB5/kjatRxISJKEN/80 GdO/586LvtT8tniceQfd2IY8DEHIaNybD5P59y4QIaGkg+2yx3M=
    =fWWG
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Mike Gilbert@21:1/5 to ulm@gentoo.org on Wed Dec 14 23:10:01 2022
    On Wed, Dec 14, 2022 at 6:40 AM Ulrich Mueller <ulm@gentoo.org> wrote:

    On Wed, 14 Dec 2022, Sam James wrote:

    *.lz)
    - d="|| ( app-arch/plzip app-arch/pdlzip app-arch/lzip )" ;;
    + d="
    + || (
    + >=app-arch/xz-utils-5.4.0
    + app-arch/plzip
    + app-arch/pdlzip
    + app-arch/lzip
    + )
    + "
    + ;;

    Shouldn't all consumers with a dependency on lzip be revbumped?
    Otherwise emerge --depclean (in the default configuration) won't drop
    lzip.

    That seems like an extreme solution to a problem nobody really cares about.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Sam James@21:1/5 to All on Thu Dec 15 01:00:01 2022
    On 14 Dec 2022, at 11:40, Ulrich Mueller <ulm@gentoo.org> wrote:

    On Wed, 14 Dec 2022, Sam James wrote:

    *.lz)
    - d="|| ( app-arch/plzip app-arch/pdlzip app-arch/lzip )" ;;
    + d="
    + || (
    + >=app-arch/xz-utils-5.4.0
    + app-arch/plzip
    + app-arch/pdlzip
    + app-arch/lzip
    + )
    + "
    + ;;

    Shouldn't all consumers with a dependency on lzip be revbumped?
    Otherwise emerge --depclean (in the default configuration) won't drop
    lzip.

    We can do that once xz-utils-5.4.x is stable to avoid doing it twice,
    I suppose.

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

    iNUEARYKAH0WIQQlpruI3Zt2TGtVQcJzhAn1IN+RkAUCY5phIl8UgAAAAAAuAChp c3N1ZXItZnByQG5vdGF0aW9ucy5vcGVucGdwLmZpZnRoaG9yc2VtYW4ubmV0MjVB NkJCODhERDlCNzY0QzZCNTU0MUMyNzM4NDA5RjUyMERGOTE5MAAKCRBzhAn1IN+R kPIJAQDEHdkmfR2e1MOBT0ubK6jaDS5j5y937TOTE2N6tLsAZwD9H5X1EETiFb7b zNSrwEvd3GlcffH+mxggevJyyRbOTgk=
    =nuqJ
    -----END PGP SIGNATURE-----

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