• [gentoo-dev] [RFC] www-nginx/ category and nginx-module.eclass for ngin

    From Adrian Schollmeyer@21:1/5 to All on Tue Jan 24 17:00:01 2023
    Hey there,

    a while back Jonas Licht (Cc) wrote an eclass for Nginx dynamic modules.
    For a few years now, Nginx supports building third party dynamic modules outside of the Nginx source tree with the help of Nginx's build system.
    Since this involves quite some work to obtain information from the Nginx
    build configuration and using Nginx's build system to actually build the module, an eclass was written. The last RFC didn't make it into
    ::gentoo, since the requested changes haven't been applied.

    However, we have been working on the eclass again and applied all the
    requested changes, made it EAPI=8 compatible and were able to use it successfully to package a third party Nginx module in ::fem-overlay [0].

    This patchset contains the reworked nginx-module.eclass for building
    third party modules using Nginx's build system as separate packages. Furthermore the category www-nginx is added where these third party
    modules shall be put. Lastly, www-nginx/nginx-vod-module is added as a
    first package using this eclass.

    The patchset is also available as PR #16053 on GitHub [1]. If this
    patchset is applied, the other PR for adding nginx-vod-module [2]
    probably becomes obsolete [2].

    Best regards
    Adrian and Jonas

    [0] https://gitlab.fem-net.de/gentoo/fem-overlay/-/tree/master/www-nginx/nginx-vod-module
    [1] https://github.com/gentoo/gentoo/pull/16053
    [2] https://github.com/gentoo/gentoo/pull/11043

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Adrian Schollmeyer@21:1/5 to All on Tue Jan 24 17:00:01 2023
    From: Jonas Licht <jonas.licht@fem.tu-ilmenau.de>

    Signed-off-by: Adrian Schollmeyer <nex+b-g-o@nexadn.de>
    Signed-off-by: Jonas Licht <jonas.licht@fem.tu-ilmenau.de>
    ---
    profiles/categories | 1 +
    www-nginx/metadata.xml | 7 +++++++
    2 files changed, 8 insertions(+)
    create mode 100644 www-nginx/metadata.xml

    diff --git a/profiles/categories b/profiles/categories
    index 64963f1467a..4b4ff07cb35 100644
    --- a/profiles/categories
    +++ b/profiles/categories
    @@ -155,6 +155,7 @@ www-apache
    www-apps
    www-client
    www-misc
    +www-nginx
    www-plugins
    www-servers
    x11-apps
    diff --git a/www-nginx/metadata.xml b/www-nginx/metadata.xml
    new file mode 100644
    index 00000000000..340ce767d0e
    --- /dev/null
    +++ b/www-nginx/metadata.xml
    @@ -0,0 +1,7 @@
    +<?xml version="1.0" encoding="UTF-8"?>
    +<!DOCTYPE catmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<catmetadata>
    + <longdescription lang="en">
    + The www-nginx category contains modules for the Nginx Webserver.
    + </longdescription>
    +</catmetadata>
    --
    2.38.2

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Adrian Schollmeyer@21:1/5 to All on Tue Jan 24 17:00:01 2023
    From: Jonas Licht <jonas.licht@fem.tu-ilmenau.de>

    Bug: https://bugs.gentoo.org/648334
    Signed-off-by: Adrian Schollmeyer <nex+b-g-o@nexadn.de>
    Signed-off-by: Jonas Licht <jonas.licht@fem.tu-ilmenau.de>
    ---
    www-nginx/nginx-vod-module/Manifest | 2 ++
    www-nginx/nginx-vod-module/metadata.xml | 15 +++++++++++++
    .../nginx-vod-module-1.23.2.1.30.ebuild | 21 +++++++++++++++++++
    3 files changed, 38 insertions(+)
    create mode 100644 www-nginx/nginx-vod-module/Manifest
    create mode 100644 www-nginx/nginx-vod-module/metadata.xml
    create mode 100644 www-nginx/nginx-vod-module/nginx-vod-module-1.23.2.1.30.ebuild

    diff --git a/www-nginx/nginx-vod-module/Manifest b/www-nginx/nginx-vod-module/Manifest
    new file mode 100644
    index 00000000000..e6aa72eb74a
    --- /dev/null
    +++ b/www-nginx/nginx-vod-module/Manifest
    @@ -0,0 +1,2 @@
    +DIST nginx-1.23.2.tar.gz 1108243 BLAKE2B 0a6a556afe93c4326247e879e3bb2ad377cd734a572f471b52c91b1b2901a243a848cd74fea587bda5afa0ee91dec9635b5d2a468cb95abc7f361c42a32c9598 SHA512
    4a5413c0ec251c02fb73dfb4d351045f857a36d45ebb7ae2c29f4a4f320a6543d0a049b147b08318de0b7b0406773c329dbf43bf98bb088f76e506ea532cd8ef
    +DIST nginx-vod-module-1.30.tar.gz 470262 BLAKE2B 26b20a
  • From =?UTF-8?Q?Micha=C5=82_G=C3=B3rny?=@21:1/5 to Adrian Schollmeyer on Tue Jan 24 18:20:01 2023
    On Tue, 2023-01-24 at 16:51 +0100, Adrian Schollmeyer wrote:
    Hey there,

    a while back Jonas Licht (Cc) wrote an eclass for Nginx dynamic modules.
    For a few years now, Nginx supports building third party dynamic modules outside of the Nginx source tree with the help of Nginx's build system.
    Since this involves quite some work to obtain information from the Nginx build configuration and using Nginx's build system to actually build the module, an eclass was written. The last RFC didn't make it into
    ::gentoo, since the requested changes haven't been applied.

    However, we have been working on the eclass again and applied all the requested changes, made it EAPI=8 compatible and were able to use it successfully to package a third party Nginx module in ::fem-overlay [0].

    This patchset contains the reworked nginx-module.eclass for building
    third party modules using Nginx's build system as separate packages. Furthermore the category www-nginx is added where these third party
    modules shall be put. Lastly, www-nginx/nginx-vod-module is added as a
    first package using this eclass.

    The patchset is also available as PR #16053 on GitHub [1]. If this
    patchset is applied, the other PR for adding nginx-vod-module [2]
    probably becomes obsolete [2].


    How many packages do you expect to add to this new category? It's not customary to create a new category for one package.

    --
    Best regards,
    Michał Górny

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Anna (cybertailor) Vyalkova@21:1/5 to All on Tue Jan 24 20:00:01 2023
    On 2023-01-24 18:11, Michał Górny wrote:
    How many packages do you expect to add to this new category? It's not customary to create a new category for one package.

    Look at www-servers/nginx package, it's huge! Lots of modules
    (many of them are 3rd-party) could be separate packages.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Adrian Schollmeyer@21:1/5 to All on Tue Jan 24 20:10:01 2023
    Hi,

    Am Dienstag, dem 24.01.2023 um 18:11 +0100 schrieb Michał Górny:
    How many packages do you expect to add to this new category?  It's
    not customary to create a new category for one package.
    We currently have 24 third party modules in www-apps/nginx pulled in conditionally via USE flags. With nginx-module.eclass we should be
    able to migrate all of them to separate packages, reducing extra
    compile overhead for users wanting to install one of those modules and
    reducing the ebuild size and complexity of www-apps/nginx.

    Best regards
    Adrian

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

    iHUEABYIAB0WIQQcg0lBH7AUcc2KLs8BUfPlCnnJ+QUCY9ArIQAKCRABUfPlCnnJ +bb6AQDsqQ5awv5UAVcZAyOUwk43ZJCDwW0a1vamSV2YMN/+RQD/R3fuUhNP0NUp QrSPc+Vo/I2DCRpyu1klxtlZEuNIegw=
    =CLvg
    -----END PGP SIGNATURE-----

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