Re: [gentoo-dev] [PATCH] kernel-2.eclass: Make xmakeopts an array for spaces in toolchain vars

2023-01-24 Thread James Le Cuirot
On Mon, 2023-01-23 at 11:20 -0500, Joshua Kinard wrote:
> On 1/21/2023 06:03, James Le Cuirot wrote:
> > Variables like CC can have spaces for additional arguments. This is
> > particularly useful for reliably setting the sysroot.
> > 
> > Signed-off-by: James Le Cuirot 
> > ---
> >   eclass/kernel-2.eclass | 21 +++--
> >   1 file changed, 15 insertions(+), 6 deletions(-)
> > 
> > diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass
> > index 873d4a204669..f7fcf15743f0 100644
> > --- a/eclass/kernel-2.eclass
> > +++ b/eclass/kernel-2.eclass
> > @@ -1,4 +1,4 @@
> > -# Copyright 1999-2022 Gentoo Authors
> > +# Copyright 1999-2023 Gentoo Authors
> >   # Distributed under the terms of the GNU General Public License v2
> >   
> >   # @ECLASS: kernel-2.eclass
> > @@ -756,13 +756,22 @@ env_setup_xmakeopts() {
> >   
> > # When cross-compiling, we need to set the ARCH/CROSS_COMPILE
> > # variables properly or bad things happen !
> > -   xmakeopts="ARCH=${KARCH}"
> > +   xmakeopts=( ARCH="${KARCH}" )
> > if [[ ${CTARGET} != ${CHOST} ]] && ! cross_pre_c_headers; then
> > -   xmakeopts="${xmakeopts} CROSS_COMPILE=${CTARGET}-"
> > +   xmakeopts+=( CROSS_COMPILE="${CTARGET}-" )
> > elif type -p ${CHOST}-ar >/dev/null; then
> > -   xmakeopts="${xmakeopts} CROSS_COMPILE=${CHOST}-"
> > +   xmakeopts+=( CROSS_COMPILE="${CHOST}-" )
> > fi
> > -   xmakeopts="${xmakeopts} HOSTCC=$(tc-getBUILD_CC) CC=$(tc-getCC) 
> > LD=$(tc-getLD) AR=$(tc-getAR) NM=$(tc-getNM) OBJCOPY=$(tc-getOBJCOPY) 
> > READELF=$(tc-getREADELF) STRIP=$(tc-getSTRIP)"
> > +   xmakeopts+=(
> > +   HOSTCC="$(tc-getBUILD_CC)"
> > +   CC="$(tc-getCC)"
> > +   LD="$(tc-getLD)"
> > +   AR="$(tc-getAR)"
> > +   NM="$(tc-getNM)"
> > +   OBJCOPY="$(tc-getOBJCOPY)"
> > +   READELF="$(tc-getREADELF)"
> > +   STRIP="$(tc-getSTRIP)"
> > +   )
> > export xmakeopts
> >   }
> >   
> > @@ -850,7 +859,7 @@ install_headers() {
> > local ddir=$(kernel_header_destdir)
> >   
> > env_setup_xmakeopts
> > -   emake headers_install INSTALL_HDR_PATH="${ED}"${ddir}/.. ${xmakeopts}
> > +   emake headers_install INSTALL_HDR_PATH="${ED}"${ddir}/.. 
> > "${xmakeopts[@]}"
> >   
> > # let other packages install some of these headers
> > rm -rf "${ED}"${ddir}/scsi || die #glibc/uclibc/etc...
> 
> Can we perhaps use this opportunity to make "xmakeopts" more clear via a 
> better name, as well as uppercase it 
> to indicate that it is an exported variable?  E.g., something like 
> "CROSS_MAKEOPTS" is more clear to the 
> reader than "xmakeopts", IMHO.
> 
> I realize such a change may be a tad invasive to the eclass and possibly 
> touch some ebuilds, so that may need 
> to be a separate patch that this proposed change would then be based off of.

I hadn't noticed some older linux-headers ebuilds use this variable, so thanks
for bringing that to my attention. Arguably they shouldn't, as it appears to
be an internal variable, even if it is exported, but it's been dropped in
later versions anyway. I've now made further changes. Please see the two
additional patches.


signature.asc
Description: This is a digitally signed message part


[gentoo-dev] [PATCH 3/3] sys-kernel/linux-headers: Adjust following kernel-2.eclass changes

2023-01-24 Thread James Le Cuirot
Signed-off-by: James Le Cuirot 
---
 sys-kernel/linux-headers/linux-headers-5.10-r2.ebuild | 2 +-
 sys-kernel/linux-headers/linux-headers-5.15-r3.ebuild | 2 +-
 sys-kernel/linux-headers/linux-headers-5.19.ebuild| 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/sys-kernel/linux-headers/linux-headers-5.10-r2.ebuild 
b/sys-kernel/linux-headers/linux-headers-5.10-r2.ebuild
index 08907ac2fb24..06fcc6978ce1 100644
--- a/sys-kernel/linux-headers/linux-headers-5.10-r2.ebuild
+++ b/sys-kernel/linux-headers/linux-headers-5.10-r2.ebuild
@@ -40,7 +40,7 @@ src_prepare() {
 }
 
 src_test() {
-   emake headers_check ${xmakeopts}
+   emake headers_check "${KERNEL_MAKEOPTS[@]}"
 }
 
 src_install() {
diff --git a/sys-kernel/linux-headers/linux-headers-5.15-r3.ebuild 
b/sys-kernel/linux-headers/linux-headers-5.15-r3.ebuild
index 9d2ebae3daee..dae40c5ab655 100644
--- a/sys-kernel/linux-headers/linux-headers-5.15-r3.ebuild
+++ b/sys-kernel/linux-headers/linux-headers-5.15-r3.ebuild
@@ -43,7 +43,7 @@ src_prepare() {
 }
 
 src_test() {
-   emake headers_check ${xmakeopts}
+   emake headers_check "${KERNEL_MAKEOPTS[@]}"
 }
 
 src_install() {
diff --git a/sys-kernel/linux-headers/linux-headers-5.19.ebuild 
b/sys-kernel/linux-headers/linux-headers-5.19.ebuild
index 527b4b401d6c..8ae17e59be76 100644
--- a/sys-kernel/linux-headers/linux-headers-5.19.ebuild
+++ b/sys-kernel/linux-headers/linux-headers-5.19.ebuild
@@ -42,7 +42,7 @@ src_prepare() {
 }
 
 src_test() {
-   emake headers_check ${xmakeopts}
+   emake headers_check "${KERNEL_MAKEOPTS[@]}"
 }
 
 src_install() {
-- 
2.39.1




[gentoo-dev] [PATCH 2/3] kernel-2.eclass: Rename xmakeopts to more appropriate KERNEL_MAKEOPTS

2023-01-24 Thread James Le Cuirot
An upper-case name suggests that the variable is exported. This variable
is also not just used for cross-compiling any more.

Signed-off-by: James Le Cuirot 
---
 eclass/kernel-2.eclass | 25 +
 1 file changed, 13 insertions(+), 12 deletions(-)

diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass
index f7fcf15743f0..3c78aa5a8445 100644
--- a/eclass/kernel-2.eclass
+++ b/eclass/kernel-2.eclass
@@ -745,24 +745,25 @@ cross_pre_c_headers() {
use headers-only && [[ ${CHOST} != ${CTARGET} ]]
 }
 
-# @FUNCTION: env_setup_xmakeopts
+# @FUNCTION: env_setup_kernel_makeopts
 # @USAGE:
 # @DESCRIPTION:
-# set the ARCH/CROSS_COMPILE when cross compiling
+# Set the toolchain variables, as well as ARCH and CROSS_COMPILE when
+# cross-compiling.
 
-env_setup_xmakeopts() {
+env_setup_kernel_makeopts() {
# Kernel ARCH != portage ARCH
export KARCH=$(tc-arch-kernel)
 
# When cross-compiling, we need to set the ARCH/CROSS_COMPILE
# variables properly or bad things happen !
-   xmakeopts=( ARCH="${KARCH}" )
+   KERNEL_MAKEOPTS=( ARCH="${KARCH}" )
if [[ ${CTARGET} != ${CHOST} ]] && ! cross_pre_c_headers; then
-   xmakeopts+=( CROSS_COMPILE="${CTARGET}-" )
+   KERNEL_MAKEOPTS+=( CROSS_COMPILE="${CTARGET}-" )
elif type -p ${CHOST}-ar >/dev/null; then
-   xmakeopts+=( CROSS_COMPILE="${CHOST}-" )
+   KERNEL_MAKEOPTS+=( CROSS_COMPILE="${CHOST}-" )
fi
-   xmakeopts+=(
+   KERNEL_MAKEOPTS+=(
HOSTCC="$(tc-getBUILD_CC)"
CC="$(tc-getCC)"
LD="$(tc-getLD)"
@@ -772,7 +773,7 @@ env_setup_xmakeopts() {
READELF="$(tc-getREADELF)"
STRIP="$(tc-getSTRIP)"
)
-   export xmakeopts
+   export KERNEL_MAKEOPTS
 }
 
 # @FUNCTION: universal_unpack
@@ -858,8 +859,8 @@ install_universal() {
 install_headers() {
local ddir=$(kernel_header_destdir)
 
-   env_setup_xmakeopts
-   emake headers_install INSTALL_HDR_PATH="${ED}"${ddir}/.. 
"${xmakeopts[@]}"
+   env_setup_kernel_makeopts
+   emake headers_install INSTALL_HDR_PATH="${ED}"${ddir}/.. 
"${KERNEL_MAKEOPTS[@]}"
 
# let other packages install some of these headers
rm -rf "${ED}"${ddir}/scsi || die #glibc/uclibc/etc...
@@ -1425,8 +1426,8 @@ kernel-2_src_unpack() {
[[ -z ${K_NOSETEXTRAVERSION} ]] && unpack_set_extraversion
unpack_fix_install_path
 
-   # Setup xmakeopts and cd into sourcetree.
-   env_setup_xmakeopts
+   # Setup KERNEL_MAKEOPTS and cd into sourcetree.
+   env_setup_kernel_makeopts
cd "${S}" || die
 
if [[ ${K_DEBLOB_AVAILABLE} == 1 ]] && use deblob; then
-- 
2.39.1




Re: [gentoo-dev] NEWS: Breaking changes to the RAP Prefix toolchain

2023-01-24 Thread James Le Cuirot
On Fri, 2023-01-20 at 23:11 +, James Le Cuirot wrote:
> The context for this is a pull request I've been working on for a few weeks.
> 
> https://github.com/gentoo/gentoo/pull/28851
> 
> RAP prefix nobbled gcc/clang's sysroot when invoking the linker because glibc
> installed its linker scripts with prefixed paths, such as /path/to/prefix/lib
> rather than just /lib. Adjusting the linker scripts rather than the compiler
> behaviour is more natural and makes cross-compiling far easier.
> 
> For the migration procedure, I did try a different approach of manually fixing
> up the linker scripts, but if you do this first, the gcc build fails
> immediately, and if you do this afterwards, the gcc build fails later. A
> symlink is therefore needed to allow the sysroot to be applied, even when the
> linker script paths are still prefixed.
> 
> Unfortunately, it's not possible to filter news items on USE flags or even
> profile parents, so I've had to resort to explicitly listing all the prefix
> profiles. Prefix is quite a niche feature, so I don't want to show this news
> to everyone.

Following some feedback elsewhere, I'm going to add an additional paragraph,
because many users are not sure what kind of prefix they have. See below.

> 
> 
> Title: Breaking changes to the RAP Prefix toolchain
> Author: James Le Cuirot 
> Posted: 2023-01-20
> Revision: 1
> News-Item-Format: 2.0
> Display-If-Profile: default/linux/amd64/17.0/no-multilib/prefix/*
> Display-If-Profile: default/linux/amd64/17.1/no-multilib/prefix/*
> Display-If-Profile: default/linux/amd64/23.0/no-multilib/prefix/*
> Display-If-Profile: default/linux/amd64/23.0/split-usr/no-multilib/prefix/*
> Display-If-Profile: default/linux/arm/17.0/armv7a/prefix/*
> Display-If-Profile: default/linux/arm/23.0/armv7a/prefix/*
> Display-If-Profile: default/linux/arm/23.0/split-usr/armv7a/prefix/*
> Display-If-Profile: default/linux/arm64/17.0/prefix/*
> Display-If-Profile: default/linux/arm64/23.0/prefix/*
> Display-If-Profile: default/linux/arm64/23.0/split-usr/prefix/*
> Display-If-Profile: default/linux/ppc64le/17.0/prefix/*
> Display-If-Profile: default/linux/riscv/20.0/rv64gc/lp64d/prefix/*
> Display-If-Profile: default/linux/riscv/23.0/rv64/lp64d/prefix/*
> Display-If-Profile: default/linux/riscv/23.0/rv64/split-usr/lp64d/prefix/*
> Display-If-Profile: default/linux/x86/17.0/prefix/*
> Display-If-Profile: default/linux/x86/23.0/prefix/*
> Display-If-Profile: default/linux/x86/23.0/split-usr/prefix/*
> 
> We are changing the way the toolchain operates on RAP Prefix systems in order 
> to
> reduce the number of hacks we need to apply and make cross-compiling easier.
> 
> If you using a non-RAP "Prefix Guest" or "Prefix Stack" variant (e.g. macOS)
> then this does not apply.

If you're not sure what kind of prefix you have, then check whether the
prefix-guest USE flag is enabled.

  portageq envvar USE | grep prefix-guest

> If you are using a libc other than glibc (e.g. musl) then this *does* apply, 
> but
> your libc will *not* break, so you should not carry out the following 
> procedure.
> The only other package known to be affected is dev-libs/libbsd, which you can
> simply update. If you find another package affected by this, then please file 
> a
> bug report.
> 
> WARNING! It is important that you carry out the following procedure, otherwise
> your toolchain will break when you next update your compiler or glibc.
> 
>   1. Run the following to create a temporary symlink:
> 
>  EPREFIX=$(portageq envvar EPREFIX)
>  mkdir -p "${EPREFIX}${EPREFIX%/*}"
>  ln -sn "${EPREFIX}" "${EPREFIX}${EPREFIX}"
> 
>   2. Update or rebuild all installed slots of sys-devel/gcc and 
> sys-devel/clang
>  (if any). Feel free to remove any you no longer need.
> 
>   3. Update or rebuild sys-libs/glibc.
> 
>   4. Run the following to remove the symlink:
> 
>  EPREFIX=$(portageq envvar EPREFIX)
>  rm "${EPREFIX}${EPREFIX}"
> 
>   5. If dev-libs/libbsd is installed, then update it to 0.11.7-r2 or later.
> 
> If you are reading this having updated glibc first and you are no longer able 
> to
> build anything, then don't panic. Simply execute the line below and then carry
> out the regular procedure above.
> 
>   qlist sys-libs/glibc | xargs grep -lIF "GNU ld script" | xargs sed -i -r 
> "s: /(usr|lib): $(portageq envvar EPREFIX)/\1:g"
> 



signature.asc
Description: This is a digitally signed message part


Re: [gentoo-dev] [RFC] www-nginx/ category and nginx-module.eclass for nginx modules

2023-01-24 Thread Adrian Schollmeyer
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


signature.asc
Description: This is a digitally signed message part


Re: [gentoo-dev] [RFC] www-nginx/ category and nginx-module.eclass for nginx modules

2023-01-24 Thread Anna (cybertailor) Vyalkova
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.



Re: [gentoo-dev] [RFC] www-nginx/ category and nginx-module.eclass for nginx modules

2023-01-24 Thread Michał Górny
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




[gentoo-dev] [PATCH v3 1/3] profiles/categories: add www-nginx

2023-01-24 Thread Adrian Schollmeyer
From: Jonas Licht 

Signed-off-by: Adrian Schollmeyer 
Signed-off-by: Jonas Licht 
---
 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 000..340ce767d0e
--- /dev/null
+++ b/www-nginx/metadata.xml
@@ -0,0 +1,7 @@
+
+http://www.gentoo.org/dtd/metadata.dtd";>
+
+   
+   The www-nginx category contains modules for the Nginx Webserver.
+   
+
-- 
2.38.2




[gentoo-dev] [PATCH v3 2/3] Add nginx-module.eclass

2023-01-24 Thread Adrian Schollmeyer
From: Jonas Licht 

Signed-off-by: Adrian Schollmeyer 
Signed-off-by: Jonas Licht 
---
 eclass/nginx-module.eclass | 90 ++
 1 file changed, 90 insertions(+)
 create mode 100644 eclass/nginx-module.eclass

diff --git a/eclass/nginx-module.eclass b/eclass/nginx-module.eclass
new file mode 100644
index 000..aa25977cdc5
--- /dev/null
+++ b/eclass/nginx-module.eclass
@@ -0,0 +1,90 @@
+# Copyright 2021-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# @ECLASS: nginx-module.eclass
+# @MAINTAINER:
+# Jonas Licht 
+# @AUTHOR:
+# Jonas Licht 
+# @BLURB: Provide a set of functions to build nginx dynamic modules.
+# @DESCRIPTION:
+# Eclass to make dynamic nginx modules.
+# As these modules are built against one particular nginx version.
+# The nginx version is encoded in PV as the first three version components,
+# while the rest of PV represent's the module's upstream version.
+#
+# To build an nginx module the whole nginx source code is needed.
+# Therefore SRC_URI is set to the nginx source archive.
+# Ebuilds using this eclass thus must use SRC_URI+= instead of
+# SRC_URI=.
+
+case ${EAPI:-0} in
+   7|8) ;;
+   *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
+esac
+
+inherit toolchain-funcs
+
+# @ECLASS_VARIABLE: NGINX_PV
+# @PRE_INHERIT
+# @DESCRIPTION:
+# Version of www-apps/nginx to build against.
+# Default is the first three components of PV.
+: "${NGINX_PV:=$(ver_cut 1-3)}"
+
+# @ECLASS_VARIABLE: MODULE_PV
+# @PRE_INHERIT
+# @DESCRIPTION:
+# Module version minus the www-apps/nginx version.
+# Default is all components of PV starting with the 4th component.
+: "${MODULE_PV=$(ver_cut 4-)}"
+
+# @ECLASS_VARIABLE: MODULE_SOURCE
+# @DESCRIPTION:
+# Path to the unpacked source directory of the module.
+# Defaults to '${WORKDIR}/${PN}-${MODULE_PV}', mimicking the default value of 
S.
+: "${MODULE_SOURCE:="${WORKDIR}/${PN}-${MODULE_PV}"}"
+
+BDEPEND="~www-servers/nginx-${NGINX_PV}:="
+SRC_URI="https://nginx.org/download/nginx-${NGINX_PV}.tar.gz";
+
+S="${WORKDIR}/nginx-${NGINX_PV}"
+
+EXPORT_FUNCTIONS src_configure src_compile src_install
+
+# @FUNCTION: nginx-module_src_configure
+# @USAGE: [additional-args]
+# @DESCRIPTION:
+# Parses the configure from the original nginx binary by executing 'nginx -V' 
and
+# adds the package as dynamic module.
+nginx-module_src_configure() {
+   if [ "$(grep -c "\.[[:space:]]auto/module" "${MODULE_SOURCE}/config")" 
-eq 0 ]; then
+   die "module uses old unsupported static config file syntax: 
https://www.nginx.com/resources/wiki/extending/converting/";
+   fi
+   #grep nginx configure from nginx -V add drop all other external modules
+   NGINX_ORIGIN_CONFIGURE=$(nginx -V 2>&1 | grep "configure arguments:" | 
cut -d: -f2 | sed "s/--add-module=\([^\s]\)*\s/ /")
+   # shellcheck disable=SC2086
+   ./configure ${NGINX_ORIGIN_CONFIGURE} 
--add-dynamic-module="${MODULE_SOURCE}" "$@" || die "configure failed"
+}
+
+# @FUNCTION: nginx-module_src_compile
+# @USAGE: [additional-args]
+# @DESCRIPTION:
+# Runs 'make modules' to only build our package module.
+nginx-module_src_compile() {
+   # https://bugs.gentoo.org/286772
+   export LANG=C LC_ALL=C
+   emake modules "$@" CC="$(tc-getCC)" LINK="$(tc-getCC) ${LDFLAGS}" 
OTHERLDFLAGS="${LDFLAGS}"
+}
+
+# @FUNCTION: nginx-module_src_install
+# @DESCRIPTION:
+# Parses the module config file to get the shared object file name and install 
the file to the nginx module directory.
+nginx-module_src_install() {
+   einstalldocs
+
+   local NGINX_MODULE_NAME
+   NGINX_MODULE_NAME=$(grep "${MODULE_SOURCE}/config" -e "ngx_addon_name" 
| cut -d= -f2)
+   exeinto /usr/$(get_libdir)/nginx/modules
+   doexe objs/${NGINX_MODULE_NAME}.so
+}
-- 
2.38.2




[gentoo-dev] [PATCH v3 3/3] www-nginx/nginx-vod-module: add new package

2023-01-24 Thread Adrian Schollmeyer
From: Jonas Licht 

Bug: https://bugs.gentoo.org/648334
Signed-off-by: Adrian Schollmeyer 
Signed-off-by: Jonas Licht 
---
 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 000..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 
26b20aa2d1b7104280b904ba1d16ea9dc569973a437d14183b0366037e9a1c2868e553d1db0ca5918f58d3cf0d7f47c001bb2362241e399f5bb1bdc8e9b3167c
 SHA512 
23bc21d1f841b1ebddec53836d9df64ed1bd3ae5d16f966f940ba617072a28f6a85cc0d32ad6ad06ff60185d2d2b4509fffd8470045b5e211f57aed0d2e6505e
diff --git a/www-nginx/nginx-vod-module/metadata.xml 
b/www-nginx/nginx-vod-module/metadata.xml
new file mode 100644
index 000..c7c79d4c4b0
--- /dev/null
+++ b/www-nginx/nginx-vod-module/metadata.xml
@@ -0,0 +1,15 @@
+
+http://www.gentoo.org/dtd/metadata.dtd";>
+
+
+jonas.li...@gmail.com
+Jonas Licht
+
+
+proxy-ma...@gentoo.org
+Proxy Maintainers
+
+
+kaltura/nginx-vod-module
+
+
diff --git a/www-nginx/nginx-vod-module/nginx-vod-module-1.23.2.1.30.ebuild 
b/www-nginx/nginx-vod-module/nginx-vod-module-1.23.2.1.30.ebuild
new file mode 100644
index 000..2b69c44b0de
--- /dev/null
+++ b/www-nginx/nginx-vod-module/nginx-vod-module-1.23.2.1.30.ebuild
@@ -0,0 +1,21 @@
+# Copyright 2020-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit nginx-module
+
+DESCRIPTION="NGINX-based MP4 Repackager"
+HOMEPAGE="https://github.com/kaltura/nginx-vod-module";
+SRC_URI+=" 
https://github.com/kaltura/nginx-vod-module/archive/${MODULE_PV}.tar.gz -> 
${PN}-${MODULE_PV}.tar.gz"
+
+LICENSE="AGPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+DEPEND="
+   dev-libs/libxml2:=
+   media-video/ffmpeg:=
+   sys-libs/zlib:=
+"
+RDEPEND="${DEPEND}"
-- 
2.38.2




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

2023-01-24 Thread Adrian Schollmeyer
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





[gentoo-dev] Call for testing: cryptsetup-2.6.0

2023-01-24 Thread Marco Scardovi
Hi everyone,
yesterday I've pushed a PR for the new cryptsetup-2.6.0. It builds well and 
commands work inside an LXD container, but that does not mean it works 
correctly in a real hardware. I'm asking to you to try it on a testing machine, 
as currently I don't have one for it. There is 1 notable change on new version:


1.  there should be a dep request against asciidoctor for man pages (luckily 
it's possible to install provided one so we don't have to install 
ruby/openssl:0 just for docs). sidenote: I'll take a look to see if it possible 
to use asciidoc instead.


Let me know what you think about it.

Thanks,
Marco Scardovi (scardracs)

publickey - scardracs-gentoo@proton.me - 0xD13958E1.asc
Description: application/pgp-keys


signature.asc
Description: OpenPGP digital signature


Re: [gentoo-dev] Re: [gentoo-dev-announce] Last rites:

2023-01-24 Thread John Helmert III
On Mon, Jan 23, 2023 at 05:35:50PM +, Marco Scardovi wrote:
>  id="protonmail_mobile_signature_block">Sent from Proton Mail for 
> iOS Il lun, gen 23, 2023 alle 
> 18:22, Tomas Mozes  class="">hydrapo...@gmail.com> ha scritto: class="protonmail_quote" type="cite">  On Monday, January 23, 2023, 
> David Seifert s...@gentoo.org> 
> wrote:> # David Seifert < href="mailto:s...@gentoo.org";>s...@gentoo.org> (2023-01-23)> # 
> EOL branch, switch to mariadb-10.4/galera-26.4, removal on 
> 2023-02-22.>  
> >Mariadb 10.3 will be 
> supported until May 2023, any reason to drop it now?Because it 
> requires galera-25, which is masked too

Please send plaintext mail.


signature.asc
Description: PGP signature


[gentoo-dev] Last rites: net-misc/youtube-dl

2023-01-24 Thread Ionen Wolkens
# Ionen Wolkens  (2023-01-24)
# Mostly obsoleted by the better maintained net-misc/yt-dlp, please
# migrate. If had USE=yt-dlp enabled (default) then was likely already
# using through its youtube-dl compatibility wrapper and this will
# change nothing beside needing to ensure that it is not depcleaned.
#
# Upstream is mostly focusing on compatibility and old python support,
# still uses deprecated Nose for tests, and has not seen a new release
# to deploy fixes in a long time despite major issues (e.g. throttling).
#
# Been kept due to some packages lacking compatibility with yt-dlp's
# python modules, but none are left in tree. Those that call the command
# rather than modules will often work as-is with yt-dlp's wrapper.
# Removal: 2023-02-23. Bug #891917
net-misc/youtube-dl


signature.asc
Description: PGP signature


[gentoo-dev] Last rites: dev-python/pafy, media-sound/mps-youtube

2023-01-24 Thread Michał Górny
# Michał Górny  (2023-01-24)
# mps-youtube does not seem to work "out of the box".  It has had its
# last release in 2018, and no commits since 2020.  It is the only
# package needing dev-python/pafy, and pafy is the final package
# requiring net-misc/youtube-dl.
# Removal on 2023-02-23.  Bug #891911.
dev-python/pafy
media-sound/mps-youtube

-- 
Best regards,
Michał Górny




[gentoo-dev] Package up for grabs: net-vpn/networkmanager-l2tp

2023-01-24 Thread Joonas Niilola
Package up for grabs: net-vpn/networkmanager-l2tp

No bugs open, bumped to latest version today.

-- juippis


OpenPGP_signature
Description: OpenPGP digital signature