Re: [gentoo-dev] Monthly Gentoo Council Reminder for April
On Monday 07 April 2008 04:37:18 pm Petteri Räty wrote: > Petteri Räty kirjoitti: > > > So I wrote a new slacker script that gets the active developers from > LDAP and checks the activity for the last 60 days. One repoman commit > should equal a couple entries on history but not sure on that. robbat2 > succested that we add the info to LDAP on who is expected to have > commits so purely infra people would not show up. Current slacker script > has the info hard coded. Posting to public as the info is available via > anoncvs for example any way. > > > [EMAIL PROTECTED] ~ $ python slacker.py /var/cvsroot/CVSROOT/history > snip I may be incorrect but I do believe I see some 'staff' level people without commit access on the list. We may want to exclude them along with the infra folks, also. -- gentoo-dev@lists.gentoo.org mailing list
[gentoo-dev] Last rites: dev-util/lincvs
Mike Pagano <[EMAIL PROTECTED]> (19 May 2008) Masked for removal in 30 days. Upstream has changed name to crossvc, which is available in the tree. (bug #213496) --- Mike Pagano Gentoo Developer - Kernel Project E-Mail : [EMAIL PROTECTED] GnuPG FP : EEE2 601D 0763 B60F 848C 9E14 3C33 C650 B576 E4E3 Public Key : http://pgp.mit.edu:11371/pks/lookup?search=0xB576E4E3&op=index -- gentoo-dev@lists.gentoo.org mailing list
Re: [gentoo-dev] Jeeves IRC replacement now alive - Willikins
On Wednesday 06 August 2008 17:18:05 Robin H. Johnson wrote: > Hi folks, > > Sorry that it's taken this long to get completed, but the Jeeves > replacement, Willikins, is finally 99% done, and ready to join lots of > channels. > #gentoo-kernel Thanks to everyone involved. -- Mike Pagano Gentoo Developer - Kernel Project E-Mail : [EMAIL PROTECTED] GnuPG FP : EEE2 601D 0763 B60F 848C 9E14 3C33 C650 B576 E4E3 Public Key : http://pgp.mit.edu:11371/pks/lookup?search=0xB576E4E3&op=index
[gentoo-dev] Linux 2.6.28 stabilization plans
Hello, The kernel team is tentatively planning to request that gentoo-sources-2.6.28 gets marked stable on x86+amd64 on May 3rd, assuming we have fixed all regressions (we have some open, which will hopefully be fixed soon). We currently only have one open out-of-kernel package bug. This bug, and additional closed ones that were broken by this upgrade, are tracked at https://bugs.gentoo.org/show_bug.cgi?id=252467 Please help us fix this in the stable tree in advance of the stabling date. Thanks, Mike -- Mike Pagano Gentoo Developer - Kernel Project E-Mail : mpag...@gentoo.org GnuPG FP : EEE2 601D 0763 B60F 848C 9E14 3C33 C650 B576 E4E3 Public Key : http://pgp.mit.edu:11371/pks/lookup?search=0xB576E4E3&op=index signature.asc Description: This is a digitally signed message part.
Re: [gentoo-dev] Linux 2.6.28 stabilization plans
On Saturday 11 April 2009 12:42:23 Mike Pagano wrote: > The kernel team is tentatively planning to request that > gentoo-sources-2.6.28 gets marked stable on x86+amd64 on May 3rd, assuming > we have fixed all regressions (we have some open, which will hopefully be > fixed soon). > We've decided to move up this date. I'm planning on opening a stabilization bug this Sunday for gentoo-sources-2.6.28-r5. Let me know if you have any concerns. -- Mike Pagano Gentoo Developer - Kernel Project E-Mail : mpag...@gentoo.org GnuPG FP : EEE2 601D 0763 B60F 848C 9E14 3C33 C650 B576 E4E3 Public Key : http://pgp.mit.edu:11371/pks/lookup?search=0xB576E4E3&op=index signature.asc Description: This is a digitally signed message part.
Re: [gentoo-dev] [PATCH] kernel-2.eclass: enable eapi6
On Thu, Feb 16, 2017 at 02:37:15AM +0900, Alice Ferrazzi wrote: > After mpagano works on the kernel-2.eclass update, > I think we can move kernel-2.eclass to EAPI6. > > --- > eclass/kernel-2.eclass | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass > index 0c9ce04..351e32c 100644 > --- a/eclass/kernel-2.eclass > +++ b/eclass/kernel-2.eclass > @@ -198,7 +198,7 @@ case ${EAPI:-0} in > 0|1) > EXPORT_FUNCTIONS src_{unpack,compile,install,test} \ > pkg_{setup,preinst,postinst,postrm} ;; > - 2|3|4|5) > + 2|3|4|5|6) > EXPORT_FUNCTIONS src_{unpack,prepare,compile,install,test} \ > pkg_{setup,preinst,postinst,postrm} ;; > *) die "${ECLASS}: EAPI ${EAPI} not supported" ;; > -- > 2.7.3 > > ++ I think I've addressed all EAPI-6 bugs opened against the eclass. -- Mike Pagano Gentoo Developer - Kernel Project Gentoo Sources - Member E-Mail : mpag...@gentoo.org GnuPG FP : EEE2 601D 0763 B60F 848C 9E14 3C33 C650 B576 E4E3 Public Key : http://pgp.mit.edu:11371/pks/lookup?search=0xB576E4E3&op=index
[gentoo-dev] [PATCH 1/1] kernel-2.eclass: Remove DEBLOB support.
Upstream does not version patches and every change breaks the manifest which breaks the tree. This results in a constant chasing of bugs since we can't predict the breakage. Signed-off-by: Mike Pagano --- eclass/kernel-2.eclass | 102 + 1 file changed, 2 insertions(+), 100 deletions(-) diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass index 0c9ce04..dcf94f4 100644 --- a/eclass/kernel-2.eclass +++ b/eclass/kernel-2.eclass @@ -129,26 +129,6 @@ # If set, this kernel is unsupported by Gentoo Security # to the current eclass maintainer :) -# @ECLASS-VARIABLE: K_DEBLOB_AVAILABLE -# @DEFAULT_UNSET -# @DESCRIPTION: -# A value of "0" will disable all of the optional deblob -# code. If empty, will be set to "1" if deblobbing is -# possible. Test ONLY for "1". - -# @ECLASS-VARIABLE: K_DEBLOB_TAG -# @DEFAULT_UNSET -# @DESCRIPTION: -# This will be the version of deblob script. It's a upstream SVN tag -# such asw -gnu or -gnu1. - -# @ECLASS-VARIABLE: K_PREDEBLOBBED -# @DEFAULT_UNSET -# @DESCRIPTION: -# This kernel was already deblobbed elsewhere. -# If false, either optional deblobbing will be available -# or the license will note the inclusion of freedist code. - # @ECLASS-VARIABLE: K_LONGTERM # @DEFAULT_UNSET # @DESCRIPTION: @@ -219,11 +199,6 @@ HOMEPAGE="https://www.kernel.org/ https://www.gentoo.org/ ${HOMEPAGE}" has "${EAPI:-0}" 0 1 2 && ED=${D} EPREFIX= EROOT=${ROOT} -# This is the latest KV_PATCH of the deblob tool available from the -# libre-sources upstream. If you bump this, you MUST regenerate the Manifests -# for ALL kernel-2 consumer packages where deblob is available. -: ${DEBLOB_MAX_VERSION:=38} - # No need to run scanelf/strip on kernel sources/headers (bug #134453). RESTRICT="binchecks strip" @@ -603,59 +578,6 @@ if [[ ${ETYPE} == sources ]]; then DESCRIPTION="Sources based on the Linux Kernel." IUSE="symlink build" - # Bug #266157, deblob for libre support - if [[ -z ${K_PREDEBLOBBED} ]] ; then - # Bug #359865, force a call to detect_version if needed - kernel_is ge 2 6 27 && \ - [[ -z "${K_DEBLOB_AVAILABLE}" ]] && \ - kernel_is le 2 6 ${DEBLOB_MAX_VERSION} && \ - K_DEBLOB_AVAILABLE=1 - if [[ ${K_DEBLOB_AVAILABLE} == "1" ]] ; then - IUSE="${IUSE} deblob" - - # Reflect that kernels contain firmware blobs unless otherwise - # stripped - LICENSE="${LICENSE} !deblob? ( freedist )" - - DEPEND+=" deblob? ( ${PYTHON_DEPS} )" - - if [[ -n KV_MINOR ]]; then - DEBLOB_PV="${KV_MAJOR}.${KV_MINOR}.${KV_PATCH}" - else - DEBLOB_PV="${KV_MAJOR}.${KV_PATCH}" - fi - - if [[ ${KV_MAJOR} -ge 3 ]]; then - DEBLOB_PV="${KV_MAJOR}.${KV_MINOR}" - fi - - # deblob svn tag, default is -gnu, to change, use K_DEBLOB_TAG in ebuild - K_DEBLOB_TAG=${K_DEBLOB_TAG:--gnu} - DEBLOB_A="deblob-${DEBLOB_PV}" - DEBLOB_CHECK_A="deblob-check-${DEBLOB_PV}" - DEBLOB_HOMEPAGE="http://www.fsfla.org/svn/fsfla/software/linux-libre/releases/tags"; - DEBLOB_URI_PATH="${DEBLOB_PV}${K_DEBLOB_TAG}" - if ! has "${EAPI:-0}" 0 1 ; then - DEBLOB_CHECK_URI="${DEBLOB_HOMEPAGE}/${DEBLOB_URI_PATH}/deblob-check -> ${DEBLOB_CHECK_A}" - else - DEBLOB_CHECK_URI="mirror://gentoo/${DEBLOB_CHECK_A}" - fi - - DEBLOB_URI="${DEBLOB_HOMEPAGE}/${DEBLOB_URI_PATH}/${DEBLOB_A}" - HOMEPAGE="${HOMEPAGE} ${DEBLOB_HOMEPAGE}" - - KERNEL_URI="${KERNEL_URI} - deblob? ( - ${DEBLOB_URI} - ${DEBLOB_CHECK_URI} - )" - else - # We have no way to deblob older kernels, so just mark them as - # tainted with non-libre materials. - LICENSE="${LICENSE} freedist" - fi - fi - elif [[ ${ETYPE} == headers ]]; then DESCRIPTION="Linux sy
Re: [gentoo-dev] [PATCH 1/1] kernel-2.eclass: Remove DEBLOB support.
On 02/19/2017 05:55 PM, Andrew Savchenko wrote: > On Sun, 19 Feb 2017 12:32:26 -0500 Mike Pagano wrote: >> Upstream does not version patches and every change breaks the manifest >> which >> breaks the tree. This results in a constant chasing of bugs since we can't >> predict the breakage. > > Have you tried to contact upstream and fix this issue there? > > Best regards, > Andrew Savchenko > Of course.. -- Mike Pagano Gentoo Developer - Kernel Project Gentoo Sources - Lead E-Mail : mpag...@gentoo.org GnuPG FP : 52CC A0B0 F631 0B17 0142 F83F 92A6 DBEC 81F2 B137 Public Key : http://http://pgp.mit.edu/pks/lookup?search=0x92A6DBEC81F2B137&op=index signature.asc Description: OpenPGP digital signature
Re: [gentoo-dev] [PATCH 1/1] kernel-2.eclass: Remove DEBLOB support.
On 02/19/2017 06:03 PM, Mike Gilbert wrote: > On Sun, Feb 19, 2017 at 12:32 PM, Mike Pagano wrote: >> Upstream does not version patches and every change breaks the manifest >> which >> breaks the tree. This results in a constant chasing of bugs since we can't >> predict the breakage. > > Sounds good to me. > >> @@ -1517,17 +1425,11 @@ kernel-2_src_prepare() { >> # @FUNCTION: kernel-2_src_compile >> # @USAGE: >> # @DESCRIPTION: >> -# conpile headers or run deblob script >> +# conpile headers >> > > Is "conpile" an misspelled version of "compile"? Or does it actually > mean something else? > I can fix that typo before I commit. -- Mike Pagano Gentoo Developer - Kernel Project Gentoo Sources - Lead E-Mail : mpag...@gentoo.org GnuPG FP : 52CC A0B0 F631 0B17 0142 F83F 92A6 DBEC 81F2 B137 Public Key : http://http://pgp.mit.edu/pks/lookup?search=0x92A6DBEC81F2B137&op=index signature.asc Description: OpenPGP digital signature
Re: [gentoo-dev] [PATCH 1/1] kernel-2.eclass: Remove DEBLOB support.
On 02/19/2017 12:32 PM, Mike Pagano wrote: > Upstream does not version patches and every change breaks the manifest > which > breaks the tree. This results in a constant chasing of bugs since we can't > predict the breakage. > > Signed-off-by: Mike Pagano > --- > eclass/kernel-2.eclass | 102 > + > 1 file changed, 2 insertions(+), 100 deletions(-) > > diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass > i I will not be committing this. Maintainers of sys-kernels can decide for themselves if they want to support deblob. Leaving it in gives them the option. -- Mike Pagano Gentoo Developer - Kernel Project Gentoo Sources - Lead E-Mail : mpag...@gentoo.org GnuPG FP : 52CC A0B0 F631 0B17 0142 F83F 92A6 DBEC 81F2 B137 Public Key : http://http://pgp.mit.edu/pks/lookup?search=0x92A6DBEC81F2B137&op=index signature.asc Description: OpenPGP digital signature
[gentoo-dev] [PATCH 1/1] eclass/kernel-2: Add additional help text when K_SECURITY_UNSUPPORTED is set
This patch will add some additional text to bring some additional notice to users about the security considerations of a specific kernel and direct them to the upstream website for further information. See bug #599454 Signed-off-by: Mike Pagano --- eclass/kernel-2.eclass | 6 ++ 1 file changed, 6 insertions(+) diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass index e95ec07..2aaab58 100644 --- a/eclass/kernel-2.eclass +++ b/eclass/kernel-2.eclass @@ -1054,6 +1054,12 @@ postinst_sources() { # And now the general message. if [[ -n ${K_SECURITY_UNSUPPORTED} ]]; then ewarn "This means that it is likely to be vulnerable to recent security issues." + echo + ewarn "Upstream kernel developers recommend always running the latest " + ewarn "release of any current long term supported Linux kernel version." + ewarn "To see a list of these versions, their most current release and " + ewarn "long term support status, please go to https://www.kernel.org ." + echo ewarn "For specific information on why this kernel is unsupported, please read:" ewarn "https://wiki.gentoo.org/wiki/Project:Kernel_Security"; fi -- 2.10.2 signature.asc Description: OpenPGP digital signature
Re: [gentoo-dev] [PATCH 1/1] eclass/kernel-2: Add additional help text when K_SECURITY_UNSUPPORTED is set
On 03/02/2017 06:56 AM, Alice Ferrazzi wrote: > On Thu, Mar 2, 2017 at 9:09 AM, Mike Pagano wrote: >> This patch will add some additional text to bring some additional notice >> to users >> about the security considerations of a specific kernel and direct them >> to the >> upstream website for further information. See bug #599454 >> >> Signed-off-by: Mike Pagano >> --- >> eclass/kernel-2.eclass | 6 ++ >> 1 file changed, 6 insertions(+) >> >> diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass >> index e95ec07..2aaab58 100644 >> --- a/eclass/kernel-2.eclass >> +++ b/eclass/kernel-2.eclass >> @@ -1054,6 +1054,12 @@ postinst_sources() { >> # And now the general message. >> if [[ -n ${K_SECURITY_UNSUPPORTED} ]]; then >> ewarn "This means that it is likely to be vulnerable to >> recent >> security issues." >> + echo >> + ewarn "Upstream kernel developers recommend always running >> the latest " >> + ewarn "release of any current long term supported Linux >> kernel version." >> + ewarn "To see a list of these versions, their most current >> release and " >> + ewarn "long term support status, please go to >> https://www.kernel.org ." >> + echo >> ewarn "For specific information on why this kernel is >> unsupported, >> please read:" >> ewarn "https://wiki.gentoo.org/wiki/Project:Kernel_Security"; >> fi >> -- >> 2.10.2 >> >> > > looks like a nice idea. > +1 > Applied -- Mike Pagano Gentoo Developer - Kernel Project Gentoo Sources - Lead E-Mail : mpag...@gentoo.org GnuPG FP : 52CC A0B0 F631 0B17 0142 F83F 92A6 DBEC 81F2 B137 Public Key : http://http://pgp.mit.edu/pks/lookup?search=0x92A6DBEC81F2B137&op=index signature.asc Description: OpenPGP digital signature
[gentoo-dev] [PATCH 1/1] kernel-2.eclass: Handle upstream rc kernel file type and, file location change for versions >= 4.12
For the latest rc kernel release, (4.12-rc1), upstream has decided to change the way the patch is distributed. The patch now resides in a git repository and is no longer compressed. Some discussion can be found here[1] if one is interested. They could reverse this decision. This patch handles the change for rc kernels >= 4.12. [1] https://lkml.org/lkml/2017/5/13/182 Signed-off-by: Mike Pagano --- eclass/kernel-2.eclass | 16 +--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass index db4a3bf72..52749cda9 100644 --- a/eclass/kernel-2.eclass +++ b/eclass/kernel-2.eclass @@ -506,10 +506,20 @@ detect_version() { OKV_DICT=(["2"]="${KV_MAJOR}.$((${KV_PATCH_ARR} - 1))" ["3"]="2.6.39" ["4"]="3.19") if [[ ${RELEASETYPE} == -rc ]] || [[ ${RELEASETYPE} == -pre ]]; then + OKV=${K_BASE_VER:-$OKV_DICT["${KV_MAJOR}"]} - KERNEL_URI="${KERNEL_BASE_URI}/testing/patch-${CKV//_/-}.xz - ${KERNEL_BASE_URI}/linux-${OKV}.tar.xz" - UNIPATCH_LIST_DEFAULT="${DISTDIR}/patch-${CKV//_/-}.xz" + + # as of 12/5/2017, the rc patch is no longer offered as a compressed + # file, and no longer is it mirrored on kernel.org + if [[ ${KV_MAJOR} -ge 4 ]] && [[ ${KV_PATCH} -ge 12 ]]; then + KERNEL_URI="https://git.kernel.org/torvalds/p/v${KV}/v${OKV} -> patch-${KV} + ${KERNEL_BASE_URI}/linux-${OKV}.tar.xz" + UNIPATCH_LIST_DEFAULT="${DISTDIR}/patch-${CKV//_/-}" + else + KERNEL_URI="${KERNEL_BASE_URI}/testing/patch-${CKV//_/-}.xz + ${KERNEL_BASE_URI}/linux-${OKV}.tar.xz" + UNIPATCH_LIST_DEFAULT="${DISTDIR}/patch-${CKV//_/-}.xz" + fi fi if [[ ${RELEASETYPE} == -git ]]; then -- 2.13.0 Mike Pagano Gentoo Developer - Kernel Project Gentoo Sources - Lead E-Mail : mpag...@gentoo.org GnuPG FP : 52CC A0B0 F631 0B17 0142 F83F 92A6 DBEC 81F2 B137 Public Key : http://http://pgp.mit.edu/pks/lookup?search=0x92A6DBEC81F2B137&op=index signature.asc Description: OpenPGP digital signature
Re: [gentoo-dev] [PATCH 1/1] kernel-2.eclass: Handle upstream rc kernel file type and, file location change for versions >= 4.12
On 05/17/2017 07:13 PM, Mike Pagano wrote: > For the latest rc kernel release, (4.12-rc1), upstream has decided to > change the way the patch is distributed. > The patch now resides in a git repository and is no longer compressed. > > Some discussion can be found here[1] if one is interested. They could > reverse this decision. > > This patch handles the change for rc kernels >= 4.12. > > > [1] https://lkml.org/lkml/2017/5/13/182 > > Signed-off-by: Mike Pagano > --- > eclass/kernel-2.eclass | 16 +--- > 1 file changed, 13 insertions(+), 3 deletions(-) > > diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass > index db4a3bf72..52749cda9 100644 > --- a/eclass/kernel-2.eclass > +++ b/eclass/kernel-2.eclass > @@ -506,10 +506,20 @@ detect_version() { > OKV_DICT=(["2"]="${KV_MAJOR}.$((${KV_PATCH_ARR} - 1))" > ["3"]="2.6.39" > ["4"]="3.19") > > if [[ ${RELEASETYPE} == -rc ]] || [[ ${RELEASETYPE} == -pre ]]; > then > + > OKV=${K_BASE_VER:-$OKV_DICT["${KV_MAJOR}"]} > - > KERNEL_URI="${KERNEL_BASE_URI}/testing/patch-${CKV//_/-}.xz > - > ${KERNEL_BASE_URI}/linux-${OKV}.tar.xz" > - UNIPATCH_LIST_DEFAULT="${DISTDIR}/patch-${CKV//_/-}.xz" > + > + # as of 12/5/2017, the rc patch is no longer offered as > a compressed > + # file, and no longer is it mirrored on kernel.org > + if [[ ${KV_MAJOR} -ge 4 ]] && [[ ${KV_PATCH} -ge 12 ]]; > then > + > KERNEL_URI="https://git.kernel.org/torvalds/p/v${KV}/v${OKV} -> > patch-${KV} > + > ${KERNEL_BASE_URI}/linux-${OKV}.tar.xz" > + > UNIPATCH_LIST_DEFAULT="${DISTDIR}/patch-${CKV//_/-}" > + else > + > KERNEL_URI="${KERNEL_BASE_URI}/testing/patch-${CKV//_/-}.xz > + > ${KERNEL_BASE_URI}/linux-${OKV}.tar.xz" > + > UNIPATCH_LIST_DEFAULT="${DISTDIR}/patch-${CKV//_/-}.xz" > + fi > fi > > if [[ ${RELEASETYPE} == -git ]]; then > Pushed. -- Mike Pagano Gentoo Developer - Kernel Project Gentoo Sources - Lead E-Mail : mpag...@gentoo.org GnuPG FP : 52CC A0B0 F631 0B17 0142 F83F 92A6 DBEC 81F2 B137 Public Key : http://http://pgp.mit.edu/pks/lookup?search=0x92A6DBEC81F2B137&op=index signature.asc Description: OpenPGP digital signature
Re: [gentoo-dev] taking a break from arches stabilization
On Mon, Jul 10, 2017 at 07:22:20PM +0200, Agostino Sarubbo wrote: > Hi all. > > every time that I attach my tmux session to see what happens on irc, I always > see the same discussion about the 'minor' arches status. > Since I joined gentoo(2011) I worked on all arches except hppa, I put more > effort in amd64 and less where I saw other people work on it (arm,alpha) > But every time the magic phrase is that those arches are unmaintained. > > Now, since I work on these arches just to help, i.e. I don't have any > business > and I do non have any installation of those arches and the work I'm doing is > not appreciated at all I decided to stop for now. > If your dream is to put sparc and ia64 to ~arch, go ahead, I have no > objections. > I will take a break also from amd64 and x86...let's see how things will > change. > > -- > Agostino Sarubbo > Gentoo Linux Developer > Agostino as far as this maintainer is concerned you are totally wrong. :) Its my bad that you have no idea how much I appreciate you stablizing kernels. I submit stablereqs and almost say out loud "Ago, please do your thing". It's my bad if I've never thanked you but I *do* depend on you. Thanks for the time you spend on my "stuff". Mike -- Mike Pagano Gentoo Developer - Kernel Project Gentoo Sources - Member E-Mail : mpag...@gentoo.org GnuPG FP : EEE2 601D 0763 B60F 848C 9E14 3C33 C650 B576 E4E3 Public Key : http://pgp.mit.edu:11371/pks/lookup?search=0xB576E4E3&op=index
[gentoo-dev] [PATCH] eclass/kernel-2.eclass: Remove use of tr in global scope
As per PMS remove calls to external command 'tr' in global scope See bug #629106 Signed-off-by: Mike Pagano --- eclass/kernel-2.eclass | 8 +--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass index 09409ab1f..cdc8c4043 100644 --- a/eclass/kernel-2.eclass +++ b/eclass/kernel-2.eclass @@ -1410,7 +1410,7 @@ getfilevar() { detect_arch() { - local ALL_ARCH LOOP_ARCH COMPAT_URI i + local ALL_ARCH LOOP_ARCH COMPAT_URI TC_ARCH_KERNEL # COMPAT_URI is the contents of ${ARCH}_URI # ARCH_URI is the URI for all the ${ARCH}_URI patches @@ -1418,6 +1418,7 @@ detect_arch() { ARCH_URI="" ARCH_PATCH="" + TC_ARCH_KERNEL="" ALL_ARCH="ALPHA AMD64 ARM HPPA IA64 M68K MIPS PPC PPC64 S390 SH SPARC X86" for LOOP_ARCH in ${ALL_ARCH}; do @@ -1425,9 +1426,10 @@ detect_arch() { COMPAT_URI="${!COMPAT_URI}" [[ -n ${COMPAT_URI} ]] && \ - ARCH_URI="${ARCH_URI} $(echo ${LOOP_ARCH} | tr '[:upper:]' '[:lower:]')? ( ${COMPAT_URI} )" + ARCH_URI="${ARCH_URI} ${LOOP_ARCH,,}? ( ${COMPAT_URI} )" - if [[ ${LOOP_ARCH} == "$(echo $(tc-arch-kernel) | tr '[:lower:]' '[:upper:]')" ]]; then + TC_ARCH_KERNEL=$(tc-arch-kernel); + if [[ ${LOOP_ARCH} == ${TC_ARCH_KERNEL^^} ]]; then signature.asc Description: OpenPGP digital signature
[gentoo-dev] [PATCH v2] eclass/kernel-2.eclass: Remove use of tr in global scope
As per PMS remove calls to external command 'tr' in global scope See bug #629106. Signed-off-by: Mike Pagano --- eclass/kernel-2.eclass | 11 --- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass index 09409ab1f..205ea93d5 100644 --- a/eclass/kernel-2.eclass +++ b/eclass/kernel-2.eclass @@ -1410,7 +1410,7 @@ getfilevar() { detect_arch() { - local ALL_ARCH LOOP_ARCH COMPAT_URI i + local ALL_ARCH LOOP_ARCH LOOP_ARCH_L COMPAT_URI i TC_ARCH_KERNEL # COMPAT_URI is the contents of ${ARCH}_URI # ARCH_URI is the URI for all the ${ARCH}_URI patches @@ -1418,20 +1418,25 @@ detect_arch() { ARCH_URI="" ARCH_PATCH="" + TC_ARCH_KERNEL="" ALL_ARCH="ALPHA AMD64 ARM HPPA IA64 M68K MIPS PPC PPC64 S390 SH SPARC X86" for LOOP_ARCH in ${ALL_ARCH}; do COMPAT_URI="${LOOP_ARCH}_URI" COMPAT_URI="${!COMPAT_URI}" + declare -l LOOP_ARCH_L=${LOOP_ARCH} + [[ -n ${COMPAT_URI} ]] && \ - ARCH_URI="${ARCH_URI} $(echo ${LOOP_ARCH} | tr '[:upper:]' '[:lower:]')? ( ${COMPAT_URI} )" + ARCH_URI="${ARCH_URI} ${LOOP_ARCH_L}? ( ${COMPAT_URI} )" - if [[ ${LOOP_ARCH} == "$(echo $(tc-arch-kernel) | tr '[:lower:]' '[:upper:]')" ]]; then + declare -u TC_ARCH_KERNEL=$(tc-arch-kernel); + if [[ ${LOOP_ARCH} == ${TC_ARCH_KERNEL} ]]; then for i in ${COMPAT_URI}; do ARCH_PATCH="${ARCH_PATCH} ${DISTDIR}/${i/*\//}" done fi + done } -- 2.13.5
Re: [gentoo-dev] [PATCH v2] eclass/kernel-2.eclass: Remove use of tr in global scope
On Thu, Aug 31, 2017 at 07:27:10PM +0200, Michał Górny wrote: > W dniu czw, 31.08.2017 o godzinie 12∶33 -0400, użytkownik Mike Pagano > napisał: > > As per PMS remove calls to external command 'tr' in global scope See bug > > #629106. > > Closes: https://bugs.gentoo.org/629106 > > (assuming you want the bug closed) > > > Thanks for the review. Committed. It seems we are limited by PMS one way or the other. If someone has a better idea of doing this simple lowercase/uppercase change that satisifies PMS at all versions I am happy to revisit.
[gentoo-dev] [PATCH v3] eclass/kernel-2.eclass: Remove use of tr in global scope
This time, use bash 4.0, but limit the use of this function to ebuild that have EAPI >= 6. Display a warning for maintainers to upgrade their ebuilds, or remove the call. Thanks to mgorny for the suggestion. Signed-off-by: Mike Pagano --- eclass/kernel-2.eclass | 20 +--- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass index 84909f30c..a80f3e91a 100644 --- a/eclass/kernel-2.eclass +++ b/eclass/kernel-2.eclass @@ -1407,11 +1407,20 @@ getfilevar() { # This function sets ARCH_URI and ARCH_PATCH # with the neccessary info for the arch sepecific compatibility # patchsets. +# To use, an ebuild could contain a line like: +# AMD64_URI=http//linktothearchspecificpatch +# This function requires EAPI >= 6. detect_arch() { - local ALL_ARCH LOOP_ARCH LOOP_ARCH_L COMPAT_URI i TC_ARCH_KERNEL + if [[ "${EAPI}" -lt 6 ]]; then + eqawarn "ebuild is attempting to call detect_arch when EAPI < 6." + eqawarn "This function will not be executed." + return + fi + local ALL_ARCH LOOP_ARCH LOOP_ARCH_L COMPAT_URI i TC_ARCH_KERNEL + # COMPAT_URI is the contents of ${ARCH}_URI # ARCH_URI is the URI for all the ${ARCH}_URI patches # ARCH_PATCH is ARCH_URI broken into files for UNIPATCH @@ -1425,18 +1434,15 @@ detect_arch() { COMPAT_URI="${LOOP_ARCH}_URI" COMPAT_URI="${!COMPAT_URI}" - declare -l LOOP_ARCH_L=${LOOP_ARCH} - [[ -n ${COMPAT_URI} ]] && \ - ARCH_URI="${ARCH_URI} ${LOOP_ARCH_L}? ( ${COMPAT_URI} )" + ARCH_URI="${ARCH_URI} ${LOOP_ARCH,,}? ( ${COMPAT_URI} )" - declare -u TC_ARCH_KERNEL=$(tc-arch-kernel) - if [[ ${LOOP_ARCH} == ${TC_ARCH_KERNEL} ]]; then + TC_ARCH_KERNEL=$(tc-arch-kernel); + if [[ ${LOOP_ARCH} == ${TC_ARCH_KERNEL^^} ]]; then for i in ${COMPAT_URI}; do ARCH_PATCH="${ARCH_PATCH} ${DISTDIR}/${i/*\//}" done fi - done } -- 2.13.5 signature.asc Description: OpenPGP digital signature
Re: [gentoo-dev] GLEP 66 [git workflow] for another review round
On 10/11/2017 05:19 PM, Michał Górny wrote: > Hi, snip > - ``Reported-by: Full Name `` — usually indicates > full review, snip Hi, Is that was Reported-by usually indicates? I use it as upstream kernel and even github indicates, and thought this was the more common and documented use. kernel[1] : "The Reported-by tag gives credit to people who find bugs and report them and it hopefully inspires them to help us again in the future. " github[2] "Reported-by:" is used to credit someone who found the bug that the patch attempts to fix. [1] https://www.kernel.org/doc/html/v4.12/process/submitting-patches.html [2] https://github.com/git/git/blob/master/Documentation/SubmittingPatches Mike -- Mike Pagano Gentoo Developer - Kernel Project Gentoo Sources E-Mail : mpag...@gentoo.org GnuPG FP : 52CC A0B0 F631 0B17 0142 F83F 92A6 DBEC 81F2 B137 Public Key : http://http://pgp.mit.edu/pks/lookup?search=0x92A6DBEC81F2B137&op=index signature.asc Description: OpenPGP digital signature
[gentoo-dev] [PATCH 1/1] kernel-2.eclass: Remove call to KV_to_int. See bug #587318.
KV_to_int usage should be removed. Tracker bug is at: 384041 and kernel-2.eclass bug is at 587318. --- eclass/kernel-2.eclass | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass index 1398c0c..c171940 100644 --- a/eclass/kernel-2.eclass +++ b/eclass/kernel-2.eclass @@ -681,7 +681,7 @@ compile_headers() { # if K_DEFCONFIG isn't set, force to "defconfig" # needed by mips if [[ -z ${K_DEFCONFIG} ]]; then - if [[ $(KV_to_int ${KV}) -ge $(KV_to_int 2.6.16) ]]; then + if kernel_is ge 2 6 16 ; then case ${CTARGET} in powerpc64*) K_DEFCONFIG="ppc64_defconfig";; powerpc*) K_DEFCONFIG="pmac32_defconfig";; -- 2.7.3
[gentoo-dev] [PATCH 1/1] kernel-2.eclass: Support EAPI 6 when applying user patches.
If kernel-2_src_unpack() is called in EAPI6, epatch_user() function inherited from eutils.eclass is undefined. See bug #579188 --- eclass/kernel-2.eclass | 8 ++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass index c171940..3f5fb3b 100644 --- a/eclass/kernel-2.eclass +++ b/eclass/kernel-2.eclass @@ -1260,8 +1260,12 @@ kernel-2_src_unpack() { # we run misc `make` functions below [[ $(type -t kernel-2_hook_premake) == "function" ]] && kernel-2_hook_premake - debug-print "Doing epatch_user" - epatch_user + debug-print "Applying user patches if they exist" + # apply any user patches +case ${EAPI:-0} in +0|1|2|3|4|5) epatch_user ;; +6) eapply_user ;; +esac debug-print "Doing unpack_set_extraversion" -- 2.7.3 signature.asc Description: OpenPGP digital signature
Re: [gentoo-dev] [PATCH 1/1] kernel-2.eclass: Support EAPI 6 when applying user patches.
On 11/27/2016 09:06 PM, Mike Gilbert wrote: > On Sun, Nov 27, 2016 at 7:23 PM, Mike Pagano wrote: >> If kernel-2_src_unpack() is called in EAPI6, epatch_user() function >> inherited from eutils.eclass is undefined. >> See bug #579188 > > kernel-2.eclass currently calls die in global scope for EAPI 6, so > this change has no real effect. > > I would suggest modernizing the eclass before allowing it to be used > with EAPI 6. For example, patches should be applied in src_prepare, > not src_unpack. > Is this change not a step in the right direction? Or should it just be one big bang? All or nothing? -- Mike Pagano Gentoo Developer - Kernel Project Gentoo Sources - Lead E-Mail : mpag...@gentoo.org GnuPG FP : 52CC A0B0 F631 0B17 0142 F83F 92A6 DBEC 81F2 B137 Public Key : http://http://pgp.mit.edu/pks/lookup?search=0x92A6DBEC81F2B137&op=index signature.asc Description: OpenPGP digital signature
Re: [gentoo-dev] [PATCH 1/1] kernel-2.eclass: Support EAPI 6 when applying user patches.
On 11/29/2016 03:46 AM, Michał Górny wrote: > On Mon, 28 Nov 2016 06:42:44 -0500 > Mike Pagano wrote: > >> On 11/27/2016 09:06 PM, Mike Gilbert wrote: >>> On Sun, Nov 27, 2016 at 7:23 PM, Mike Pagano wrote: >>>> If kernel-2_src_unpack() is called in EAPI6, epatch_user() function >>>> inherited from eutils.eclass is undefined. >>>> See bug #579188 >>> >>> kernel-2.eclass currently calls die in global scope for EAPI 6, so >>> this change has no real effect. >>> >>> I would suggest modernizing the eclass before allowing it to be used >>> with EAPI 6. For example, patches should be applied in src_prepare, >>> not src_unpack. >>> >> >> Is this change not a step in the right direction? Or should it just be >> one big bang? >> All or nothing? > > While I don't mean incremental changes, I'd really prefer if they made > any sense. Calling eapply_user in src_unpack() is invalid, per PMS: > > | In EAPIs where it is supported, eapply_user must be called once > | in the src_prepare phase. > Your last sentence is constructive criticism. I'll fix this. -- Mike Pagano Gentoo Developer - Kernel Project Gentoo Sources - Lead E-Mail : mpag...@gentoo.org GnuPG FP : 52CC A0B0 F631 0B17 0142 F83F 92A6 DBEC 81F2 B137 Public Key : http://http://pgp.mit.edu/pks/lookup?search=0x92A6DBEC81F2B137&op=index signature.asc Description: OpenPGP digital signature
[gentoo-dev] [PATCH 1/1] Fix eapply_user as per PMS spec and execute in, src_prepare. Support older EAPIs with epatch_user.
2nd round. As per mgorny's advice, fix eapply_user as per PMS spec and execute in src_prepare. Support older EAPIs with epatch_user. --- eclass/kernel-2.eclass | 25 ++--- 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass index 3f5fb3b..e516aff 100644 --- a/eclass/kernel-2.eclass +++ b/eclass/kernel-2.eclass @@ -95,7 +95,7 @@ has "${EAPI:-0}" 0 1 2 3 4 5 || die "kernel-2.eclass is unsupported for EAPI ${E PYTHON_COMPAT=( python{2_6,2_7} ) inherit eutils toolchain-funcs versionator multilib python-any-r1 -EXPORT_FUNCTIONS pkg_setup src_unpack src_compile src_test src_install pkg_preinst pkg_postinst pkg_postrm +EXPORT_FUNCTIONS pkg_setup src_prepare src_unpack src_compile src_test src_install pkg_preinst pkg_postinst pkg_postrm # Added by Daniel Ostrow # This is an ugly hack to get around an issue with a 32-bit userland on ppc64. @@ -1260,12 +1260,9 @@ kernel-2_src_unpack() { # we run misc `make` functions below [[ $(type -t kernel-2_hook_premake) == "function" ]] && kernel-2_hook_premake - debug-print "Applying any user patches" - # apply any user patches -case ${EAPI:-0} in -0|1|2|3|4|5) epatch_user ;; -6) eapply_user ;; -esac + case ${EAPI:-0} in + 0|1) kernel-2_src_prepare ;; + esac debug-print "Doing unpack_set_extraversion" @@ -1305,6 +1302,20 @@ kernel-2_src_unpack() { fi } +# @FUNCTION: kernel-2_src_prepare +# @DESCRIPTION: +# Apply any user patches +kernel-2_src_prepare() { + + debug-print "Applying any user patches" + + # apply any user patches + case ${EAPI:-0} in + 0|1|2|3|4|5) epatch_user ;; + 6) eapply_user ;; + esac +} + kernel-2_src_compile() { cd "${S}" [[ ${ETYPE} == headers ]] && compile_headers -- 2.7.3 signature.asc Description: OpenPGP digital signature
Re: [gentoo-dev] [PATCH 1/1] Fix eapply_user as per PMS spec and execute in, src_prepare. Support older EAPIs with epatch_user.
On 11/29/2016 07:05 PM, Mike Gilbert wrote: > On Tue, Nov 29, 2016 at 6:24 PM, Mike Pagano wrote: >> 2nd round. As per mgorny's advice, fix eapply_user as per PMS spec and >> execute in src_prepare. Support older EAPIs with epatch_user. >> >> --- >> eclass/kernel-2.eclass | 25 ++--- >> 1 file changed, 18 insertions(+), 7 deletions(-) >> >> diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass >> index 3f5fb3b..e516aff 100644 >> --- a/eclass/kernel-2.eclass >> +++ b/eclass/kernel-2.eclass >> @@ -95,7 +95,7 @@ has "${EAPI:-0}" 0 1 2 3 4 5 || die "kernel-2.eclass >> is unsupported for EAPI ${E >> PYTHON_COMPAT=( python{2_6,2_7} ) >> >> inherit eutils toolchain-funcs versionator multilib python-any-r1 >> -EXPORT_FUNCTIONS pkg_setup src_unpack src_compile src_test src_install >> pkg_preinst pkg_postinst pkg_postrm >> +EXPORT_FUNCTIONS pkg_setup src_prepare src_unpack src_compile src_test >> src_install pkg_preinst pkg_postinst pkg_postrm > > I don't think calling "EXPORT_FUNCTIONS src_prepare" is legal in EAPI > 0 or 1. You should probably move this behind an EAPI check. > > Also, for EAPI, 2, 3, 4, and 5, this change might break existing > ebuilds; they may define src_prepare themselves, or inherit some other > eclass that also exports src_prepare. > > Otherwise, this seems like a good next step. > Thank-you, I did see that in another eclass. (EXPORT) I will revise and resend tomorrow. signature.asc Description: OpenPGP digital signature
[gentoo-dev] [RESEND PATCH 1/1] kernel-2.eclass: Fix eapply_user as per PMS spec and execute in, src_prepare. Support older EAPIs with epatch_user.
Round 3. As per mgorny's additional advice, fix eapply_user as per PMS spec and execute in src_prepare. Support older EAPIs with epatch_user. export src_prepare only for supported EAPI versions. --- eclass/kernel-2.eclass | 35 ++- 1 file changed, 26 insertions(+), 9 deletions(-) diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass index 3f5fb3b..547153c 100644 --- a/eclass/kernel-2.eclass +++ b/eclass/kernel-2.eclass @@ -90,12 +90,18 @@ # If you do change them, there is a chance that we will not fix resulting bugs; # that of course does not mean we're not willing to help. -has "${EAPI:-0}" 0 1 2 3 4 5 || die "kernel-2.eclass is unsupported for EAPI ${EAPI}" - PYTHON_COMPAT=( python{2_6,2_7} ) inherit eutils toolchain-funcs versionator multilib python-any-r1 -EXPORT_FUNCTIONS pkg_setup src_unpack src_compile src_test src_install pkg_preinst pkg_postinst pkg_postrm +case ${EAPI:-0} in + 0|1) + EXPORT_FUNCTIONS src_{unpack,compile,install,test} \ + pkg_{setup,preinst,postinst,postrm} ;; + 2|3|4|5) + EXPORT_FUNCTIONS src_{unpack,prepare,compile,install,test} \ + pkg_{setup,preinst,postinst,postrm} ;; + *) die "${ECLASS}: EAPI ${EAPI} not supported" ;; +esac # Added by Daniel Ostrow # This is an ugly hack to get around an issue with a 32-bit userland on ppc64. @@ -1260,12 +1266,9 @@ kernel-2_src_unpack() { # we run misc `make` functions below [[ $(type -t kernel-2_hook_premake) == "function" ]] && kernel-2_hook_premake - debug-print "Applying any user patches" - # apply any user patches -case ${EAPI:-0} in -0|1|2|3|4|5) epatch_user ;; -6) eapply_user ;; -esac + case ${EAPI:-0} in + 0|1) kernel-2_src_prepare ;; + esac debug-print "Doing unpack_set_extraversion" @@ -1305,6 +1308,20 @@ kernel-2_src_unpack() { fi } +# @FUNCTION: kernel-2_src_prepare +# @DESCRIPTION: +# Apply any user patches +kernel-2_src_prepare() { + + debug-print "Applying any user patches" + + # apply any user patches + case ${EAPI:-0} in + 0|1|2|3|4|5) epatch_user ;; + 6) eapply_user ;; + esac +} + kernel-2_src_compile() { cd "${S}" [[ ${ETYPE} == headers ]] && compile_headers -- 2.7.3 signature.asc Description: OpenPGP digital signature
Re: [gentoo-dev] [RESEND PATCH 1/1] kernel-2.eclass: Fix eapply_user as per PMS spec and execute in, src_prepare. Support older EAPIs with epatch_user.
On 11/30/2016 07:32 PM, Mike Pagano wrote: > Round 3. As per mgorny's additional advice, fix eapply_user as per PMS > spec and execute in src_prepare. Support older EAPIs with epatch_user. > export src_prepare only for supported EAPI versions. mgorny, thanks for the feedback. Committed with peace and love. Peace. And. Love. -- Mike Pagano Gentoo Developer - Kernel Project Gentoo Sources - Lead E-Mail : mpag...@gentoo.org GnuPG FP : 52CC A0B0 F631 0B17 0142 F83F 92A6 DBEC 81F2 B137 Public Key : http://http://pgp.mit.edu/pks/lookup?search=0x92A6DBEC81F2B137&op=index signature.asc Description: OpenPGP digital signature
[gentoo-dev] [PATCH 1/1] kernel-2.eclass: Cleanup. Remove die from global, scope per EAPI 6 rules
EAPI 6 prohibits dying in global scope. Move that check to pkg_setup. --- eclass/kernel-2.eclass | 8 +--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass index 547153c..91a24e9 100644 --- a/eclass/kernel-2.eclass +++ b/eclass/kernel-2.eclass @@ -544,9 +544,6 @@ elif [[ ${ETYPE} == headers ]]; then unset KBUILD_OUTPUT SLOT="0" -else - eerror "Unknown ETYPE=\"${ETYPE}\", must be \"sources\" or \"headers\"" - die "Unknown ETYPE=\"${ETYPE}\", must be \"sources\" or \"headers\"" fi # Cross-compile support functions @@ -1371,6 +1368,11 @@ kernel-2_pkg_setup() { fi ABI="${KERNEL_ABI}" + if [[ ${ETYPE} != sources ]] && [[ ${ETYPE} != headers ]]; then + eerror "Unknown ETYPE=\"${ETYPE}\", must be \"sources\" or \"headers\"" + die "Unknown ETYPE=\"${ETYPE}\", must be \"sources\" or \"headers\"" + fi + [[ ${ETYPE} == headers ]] && setup_headers [[ ${ETYPE} == sources ]] && echo ">>> Preparing to unpack ..." } -- 2.7.3 signature.asc Description: OpenPGP digital signature
Re: [gentoo-dev] [PATCH 1/1] kernel-2.eclass: Cleanup. Remove die from global, scope per EAPI 6 rules
On 12/01/2016 07:27 PM, Mike Pagano wrote: > EAPI 6 prohibits dying in global scope. Move that check to pkg_setup. > > --- > eclass/kernel-2.eclass | 8 +--- > 1 file changed, 5 insertions(+), 3 deletions(-) Committed
[gentoo-dev] [PATCH 1/1] kernel-2.eclass: Convert eclass to use documentation standards.
This patch modifies, removes and adds comments only. No code was harmed in the creation of this patch. This is to conform with ECLASS documentation standards. --- eclass/kernel-2.eclass | 442 + 1 file changed, 333 insertions(+), 109 deletions(-) diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass index 91a24e9..b19a396 100644 --- a/eclass/kernel-2.eclass +++ b/eclass/kernel-2.eclass @@ -2,89 +2,199 @@ # Distributed under the terms of the GNU General Public License v2 # $Id$ -# Description: kernel.eclass rewrite for a clean base regarding the 2.6 -# series of kernel with back-compatibility for 2.4 -# -# Original author: John Mylchreest -# Maintainer: ker...@gentoo.org -# +# @ECLASS: kernel-2.eclass +# @MAINTAINER: +# Gentoo Kernel project +# @AUTHOR: +# John Mylchreest +# Mike Pagano +# +# @BLURB: Eclass for kernel packages +# @DESCRIPTION: +# This ia the kernel.eclass rewrite for a clean base regarding the 2.6 +# series of kernel with back-compatibility for 2.4 # Please direct your bugs to the current eclass maintainer :) - # added functionality: # unipatch - a flexible, singular method to extract, add and remove patches. -# A Couple of env vars are available to effect usage of this eclass -# These are as follows: -# -# K_USEPV - When setting the EXTRAVERSION variable, it should -#add PV to the end. -#this is useful for thigns like wolk. IE: -#EXTRAVERSION would be something like : -wolk-4.19-r1 -# K_NOSETEXTRAVERSION - if this is set then EXTRAVERSION will not be -#automatically set within the kernel Makefile -# K_NOUSENAME - if this is set then EXTRAVERSION will not include the -#first part of ${PN} in EXTRAVERSION -# K_NOUSEPR- if this is set then EXTRAVERSION will not include the -#anything based on ${PR}. -# K_PREPATCHED - if the patchset is prepatched (ie: mm-sources, -#ck-sources, ac-sources) it will use PR (ie: -r5) as -#the patchset version for -#and not use it as a true package revision -# K_EXTRAEINFO - this is a new-line seperated list of einfo displays in -#postinst and can be used to carry additional postinst -#messages -# K_EXTRAELOG - same as K_EXTRAEINFO except using elog instead of einfo -# K_EXTRAEWARN - same as K_EXTRAEINFO except using ewarn instead of einfo -# K_SYMLINK- if this is set, then forcably create symlink anyway -# -# K_BASE_VER - for git-sources, declare the base version this patch is -#based off of. -# K_DEFCONFIG - Allow specifying a different defconfig target. -#If length zero, defaults to "defconfig". -# K_WANT_GENPATCHES- Apply genpatches to kernel source. Provide any -#combination of "base", "extras" or "experimental". -# K_EXP_GENPATCHES_PULL- If set, we pull "experimental" regardless of the USE FLAG -#but expect the ebuild maintainer to use K_EXP_GENPATCHES_LIST. -# K_EXP_GENPATCHES_NOUSE - If set, no USE flag will be provided for "experimental"; -#as a result the user cannot choose to apply those patches. -# K_EXP_GENPATCHES_LIST- A list of patches to pick from "experimental" to apply when -#the USE flag is unset and K_EXP_GENPATCHES_PULL is set. -# K_FROM_GIT - If set, this variable signals that the kernel sources derives from a git tree and special -# handling will be applied so that any patches that are applied will actually apply. -# -# K_GENPATCHES_VER - The version of the genpatches tarball(s) to apply. -#A value of "5" would apply genpatches-2.6.12-5 to -#my-sources-2.6.12.ebuild -# K_SECURITY_UNSUPPORTED- If set, this kernel is unsupported by Gentoo Security -# K_DEBLOB_AVAILABLE - A value of "0" will disable all of the optional deblob -#
Re: [gentoo-dev] [PATCH 1/1] kernel-2.eclass: Convert eclass to use documentation standards.
On 12/03/2016 04:47 PM, Mike Pagano wrote: > This patch modifies, removes and adds comments only. No code was harmed > in the creation of this patch. > This is to conform with ECLASS documentation standards. > > --- > eclass Committed -- Mike Pagano Gentoo Developer - Kernel Project Gentoo Sources - Lead E-Mail : mpag...@gentoo.org GnuPG FP : 52CC A0B0 F631 0B17 0142 F83F 92A6 DBEC 81F2 B137 Public Key : http://http://pgp.mit.edu/pks/lookup?search=0x92A6DBEC81F2B137&op=index signature.asc Description: OpenPGP digital signature
[gentoo-dev] [PATCH 1/1] kernel-2.eclass: Add required @USAGE documentation to functions.
According to PMS, @USAGE is required for functions. This patch only touches comments and no code has been modified. --- eclass/kernel-2.eclass | 38 ++ 1 file changed, 34 insertions(+), 4 deletions(-) diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass index b19a396..99449a6 100644 --- a/eclass/kernel-2.eclass +++ b/eclass/kernel-2.eclass @@ -128,8 +128,6 @@ # @DESCRIPTION: # If set, this kernel is unsupported by Gentoo Security # to the current eclass maintainer :) -# added functionality: -# unipatch - a flexible, singular method to extract, add and remove patches. # @ECLASS-VARIABLE: K_DEBLOB_AVAILABLE # @DEFAULT_UNSET @@ -241,6 +239,7 @@ RESTRICT="binchecks strip" # @FUNCTION: debug-print-kernel2-variables +# @USAGE: # @DESCRIPTION: # this function exists only to help debug kernel-2.eclass # if you are adding new functionality in, put a call to it @@ -255,6 +254,7 @@ debug-print-kernel2-variables() { } # @FUNCTION: handle_genpatches +# @USAGE: [--set-unipatch-list] # @DESCRIPTION: # add genpatches to list of patches to apply uf wanted @@ -312,6 +312,7 @@ handle_genpatches() { } # @FUNCTION: detect_version +# @USAGE: # @DESCRIPTION: # this function will detect and set # - OKV: Original Kernel Version (2.6.0/2.6.0-test11) @@ -543,6 +544,7 @@ detect_version() { } # @FUNCTION: kernel_is +# @USAGE: # @DESCRIPTION: # user for comparing kernel versions # or just identifying a version @@ -576,6 +578,7 @@ kernel_is() { } # @FUNCTION: kernel_is_2_4 +# @USAGE: # @DESCRIPTION: # return true if kernel is version 2.4 kernel_is_2_4() { @@ -583,6 +586,7 @@ kernel_is_2_4() { } # @FUNCTION: kernel_is_2_6 +# @USAGE: # @DESCRIPTION: # return true if kernel is version 2.6 kernel_is_2_6() { @@ -677,6 +681,7 @@ fi # Cross-compile support functions # @FUNCTION: kernel_header_destdir +# @USAGE: # @DESCRIPTION: # return header destination directory kernel_header_destdir() { @@ -686,6 +691,7 @@ kernel_header_destdir() { } # @FUNCTION: cross_pre_c_headers +# @USAGE: # @DESCRIPTION: # set use if neccesary for cross compile support cross_pre_c_headers() { @@ -693,6 +699,7 @@ cross_pre_c_headers() { } # @FUNCTION: env_setup_xmakeopts +# @USAGE: # @DESCRIPTION: # set the ARCH/CROSS_COMPILE when cross compiling @@ -712,6 +719,7 @@ env_setup_xmakeopts() { } # @FUNCTION: unpack_2_4 +# @USAGE: # @DESCRIPTION: # unpack and generate .config for 2.4 kernels @@ -725,6 +733,7 @@ unpack_2_4() { } # @FUNCTION: unpack_2_6 +# @USAGE: # @DESCRIPTION: # unpack and generate .config for 2.6 kernels @@ -750,6 +759,7 @@ unpack_2_6() { } # @FUNCTION: universal_unpack +# @USAGE: # @DESCRIPTION: # unpack kernel sources @@ -793,6 +803,7 @@ universal_unpack() { } # @FUNCTION: unpack_set_extraversion +# @USAGE: # @DESCRIPTION: # handle EXTRAVERSION @@ -803,6 +814,7 @@ unpack_set_extraversion() { } # @FUNCTION: unpack_fix_install_path +# @USAGE: # @DESCRIPTION: # Should be done after patches have been applied # Otherwise patches that modify the same area of Makefile will fail @@ -815,6 +827,7 @@ unpack_fix_install_path() { # Compile Functions # @FUNCTION: compile_headers +# @USAGE: # @DESCRIPTION: # header compilation @@ -871,6 +884,7 @@ compile_headers() { } # @FUNCTION: compile_headers_tweak_config +# @USAGE: # @DESCRIPTION: # some targets can be very very picky, so let's finesse the # .config based upon any info we may have @@ -890,6 +904,7 @@ compile_headers_tweak_config() { # install functions # @FUNCTION: install_universal +# @USAGE: # @DESCRIPTION: # Fix permissions in tarball @@ -901,6 +916,7 @@ install_universal() { } # @FUNCTION: install_headers +# @USAGE: # @DESCRIPTION: # Install headers @@ -940,6 +956,7 @@ install_headers() { } # @FUNCTION: install_sources +# @USAGE: # @DESCRIPTION: # Install sources @@ -978,6 +995,7 @@ install_sources() { } # @FUNCTION: preinst_headers +# @USAGE: # @DESCRIPTION: # Headers preinst steps @@ -988,6 +1006,7 @@ preinst_headers() { } # @FUNCTION: postinst_sources +# @USAGE: # @DESCRIPTION: # Sources post installation function. # see inline comments @@ -1082,6 +1101,7 @@ postinst_sources() { # pkg_setup functions # @FUNCTION: setup_headers +# @USAGE: # @DESCRIPTION: # Determine if ${PN} supports arch @@ -1101,6 +1121,7 @@ setup_headers() { } # @FUNCTION: unipatch +# @USAGE: # @DESCRIPTION: # Universal function that will apply patches to source @@ -1364,9 +1385,8 @@ unipatch() { } # @FUNCTION: getfilevar +# @USAGE: # @DESCRIPTION: -# getfilevar accepts 2 vars as follows: -# getfilevar # pulled from linux-info getfilevar() { @@ -1392,6 +1412,7 @@ getfilevar() { } # @FUNCTION: detect_arch +# @USAGE: # @DESCRIPTION: # This function sets ARCH_URI and ARCH_PATCH # with the neccessary info for the arch sepecific compatibility @@ -1425,6 +1446,7 @@ detect_arch() { } # @FUNCTION: headers___fix +# @USAGE:
Re: [gentoo-dev] [PATCH 1/1] kernel-2.eclass: Add required @USAGE documentation to functions.
On 12/12/2016 09:49 PM, Mike Gilbert wrote: > On Mon, Dec 12, 2016 at 9:44 PM, Mike Gilbert wrote: >> On Mon, Dec 12, 2016 at 7:34 PM, Mike Pagano wrote: >>> According to PMS, @USAGE is required for functions. >>> This patch only touches comments and no code has been modified. >> >> PMS says nothing on the topic of eclass documentation syntax. >> >> Any requirements are imposed by the eclass-manpages awk script. > > Maybe you were referring to the devmanual (not PMS)? > > https://devmanual.gentoo.org/eclass-writing/index.html > > Personally, I don't think it makes sense to add an empty @USAGE entry > for functions that take no arguments. > You're absolutely right, Mike. It was the devmanual. I'm not a fan of having an empty usage. As the devmanual is written today, it is not optional. I'll leave them in for now, and if the devmanual gets updated, I'll remove them. -- Mike Pagano Gentoo Developer - Kernel Project Gentoo Sources - Lead E-Mail : mpag...@gentoo.org GnuPG FP : 52CC A0B0 F631 0B17 0142 F83F 92A6 DBEC 81F2 B137 Public Key : http://http://pgp.mit.edu/pks/lookup?search=0x92A6DBEC81F2B137&op=index signature.asc Description: OpenPGP digital signature
Re: [gentoo-dev] [PATCH 1/1] kernel-2.eclass: Add required @USAGE documentation to functions.
On 12/12/2016 07:34 PM, Mike Pagano wrote: > According to (not pms) devmanual, @USAGE is required for functions. > This patch only touches comments and no code has been modified. Committed. If the devmanual changes, I can easily remove the empty USAGE statements. signature.asc Description: OpenPGP digital signature
[gentoo-dev] [PATCH 1/1] kernel-2.eclass: Remove kdbus support as it is, discontinued. First reported in bug #576614 by jon R-B
kdbus is discontinued and is being reworked upstream as a different effort with a different name. That said, remove unused kdbus support from the kernel eclass. --- eclass/kernel-2.eclass | 18 -- 1 file changed, 18 deletions(-) diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass index 2b4f21c..424aa03 100644 --- a/eclass/kernel-2.eclass +++ b/eclass/kernel-2.eclass @@ -156,13 +156,6 @@ # in the long term directories on the upstream servers # as the location has been changed by upstream -# @ECLASS-VARIABLE: K_KDBUS_AVAILABLE -# @DEFAULT_UNSET -# @DESCRIPTION: -# If set, the ebuild contains the option of installing the -# kdbus patch. This patch is not installed without the 'kdbus' -# and 'experimental' use flags. - # @ECLASS-VARIABLE: H_SUPPORTEDARCH # @DEFAULT_UNSET # @DESCRIPTION: @@ -610,10 +603,6 @@ if [[ ${ETYPE} == sources ]]; then DESCRIPTION="Sources based on the Linux Kernel." IUSE="symlink build" - if [[ -n ${K_KDBUS_AVAILABLE} ]]; then - IUSE="${IUSE} kdbus" - fi - # Bug #266157, deblob for libre support if [[ -z ${K_PREDEBLOBBED} ]] ; then # Bug #359865, force a call to detect_version if needed @@ -1246,13 +1235,6 @@ unipatch() { UNIPATCH_DROP+=" 5000_enable-additional-cpu-optimizations-for-gcc.patch" fi fi - - # if kdbus use flag is not set, drop the kdbus patch -if [[ $UNIPATCH_DROP != *"5015_kdbus*.patch"* ]]; then - if ! has kdbus ${IUSE} || ! use kdbus; then - UNIPATCH_DROP="${UNIPATCH_DROP} 5015_kdbus*.patch" - fi - fi fi done -- 2.10.2 signature.asc Description: OpenPGP digital signature
Re: [gentoo-dev] [PATCH 1/1] kernel-2.eclass: Remove kdbus support as it is, discontinued. First reported in bug #576614 by jon R-B
On 12/14/2016 07:23 PM, Mike Pagano wrote: > kdbus is discontinued and is being reworked upstream as a different > effort with a different name. > That said, remove unused kdbus support from the kernel eclass. > Committed. -- Mike Pagano Gentoo Developer - Kernel Project Gentoo Sources - Lead E-Mail : mpag...@gentoo.org GnuPG FP : 52CC A0B0 F631 0B17 0142 F83F 92A6 DBEC 81F2 B137 Public Key : http://http://pgp.mit.edu/pks/lookup?search=0x92A6DBEC81F2B137&op=index signature.asc Description: OpenPGP digital signature
[gentoo-dev] [PATCH 1/1] kernel-2.eclass: Remove code that looks for Changelog which is also breaks PMS rules going above FILESDIR.
Hi, this code is no longer relevant and breaks PMS. See bug #566396 --- eclass/kernel-2.eclass | 7 --- 1 file changed, 7 deletions(-) diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass index 424aa03..520a4c1 100644 --- a/eclass/kernel-2.eclass +++ b/eclass/kernel-2.eclass @@ -967,13 +967,6 @@ install_sources() { done fi - if [[ ! -f ${S}/patches.txt ]]; then - # patches.txt is empty so lets use our ChangeLog - [[ -f ${FILESDIR}/../ChangeLog ]] && \ - echo "Please check the ebuild ChangeLog for more details." \ - > "${S}"/patches.txt - fi - mv "${WORKDIR}"/linux* "${ED}"usr/src || die if [[ -n "${UNIPATCH_DOCS}" ]] ; then -- 2.10.2 signature.asc Description: OpenPGP digital signature
Re: [gentoo-dev] [PATCH 1/1] kernel-2.eclass: Remove code that looks for Changelog which is also breaks PMS rules going above FILESDIR.
On 12/23/2016 11:31 PM, Alice Ferrazzi wrote: > On Sat, Dec 24, 2016 at 7:43 AM, Mike Pagano wrote: >> ChangeLog > > > looks good for me :) > Thanks, Alice. Committed. signature.asc Description: OpenPGP digital signature
[gentoo-dev] [PATCH 1/1] kernel-2.eclass: Point user to additional kernel removal, instructions. See bug #581522.
This addresses concerns that users might not realize that after an unmerge of kernel sources some files will need to be removed manually. The particular concern was specific to the files in /lib/modules/. I liked this solution, since it does not require a wordy explanation to be written in the eclass. --- eclass/kernel-2.eclass | 3 +++ 1 file changed, 3 insertions(+) diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass index 520a4c1..29b2987 100644 --- a/eclass/kernel-2.eclass +++ b/eclass/kernel-2.eclass @@ -1619,4 +1619,7 @@ kernel-2_pkg_postrm() { ewarn "with modified files will remain behind. By design, package managers" ewarn "will not remove these modified files and the directories they reside in." echo + ewarn "For more detailed kernel removal instructions, please see: " + ewarn "https://wiki.gentoo.org/wiki/Kernel/Removal"; + echo } -- 2.10.2 signature.asc Description: OpenPGP digital signature
Re: [gentoo-dev] [PATCH 1/1] kernel-2.eclass: Point user to additional kernel removal, instructions. See bug #581522.
Thank On 12/27/2016 09:12 PM, Alice Ferrazzi wrote: > looks like nice information to give :) > > ok, for me. > > On Wed, Dec 28, 2016 at 9:52 AM, Mike Pagano wrote: >> This addresses concerns that users might not realize that after an >> unmerge of kernel sources some files will need to be removed manually. >> The particular concern was specific to the files in /lib/modules/. I >> liked this solution, since it does not require a wordy explanation to be >> written in the eclass. >> >> -- Thanks. Committed. -- Mike Pagano Gentoo Developer - Kernel Project Gentoo Sources - Lead E-Mail : mpag...@gentoo.org GnuPG FP : 52CC A0B0 F631 0B17 0142 F83F 92A6 DBEC 81F2 B137 Public Key : http://http://pgp.mit.edu/pks/lookup?search=0x92A6DBEC81F2B137&op=index signature.asc Description: OpenPGP digital signature
[gentoo-dev] [PATCH 1/1] linux-mod.eclass: enable EAPI 8, remove EAPI 5
Clean-up code needed for deprecated EAPIs (EAPI < 4) Signed-off-by: Mike Pagano --- eclass/linux-mod.eclass | 9 ++--- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/eclass/linux-mod.eclass b/eclass/linux-mod.eclass index 496b9c98b..3aabe7e9d 100644 --- a/eclass/linux-mod.eclass +++ b/eclass/linux-mod.eclass @@ -7,7 +7,7 @@ # @AUTHOR: # John Mylchreest , # Stefan Schweizer -# @SUPPORTED_EAPIS: 5 6 7 +# @SUPPORTED_EAPIS: 6 7 8 # @PROVIDES: linux-info # @BLURB: It provides the functionality required to install external modules against a kernel source tree. # @DESCRIPTION: @@ -150,7 +150,7 @@ # It's a read-only variable. It contains the extension of the kernel modules. case ${EAPI:-0} in - [567]) inherit eutils ;; + [678]) inherit eutils ;; *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac @@ -603,11 +603,6 @@ linux-mod_pkg_setup() { local is_bin="${MERGE_TYPE}" # If we are installing a binpkg, take a different path. - # use MERGE_TYPE if available (eapi>=4); else use non-PMS EMERGE_FROM (eapi<4) - if has ${EAPI} 0 1 2 3; then - is_bin=${EMERGE_FROM} - fi - if [[ ${is_bin} == binary ]]; then linux-mod_pkg_setup_binary return -- 2.34.1 OpenPGP_0x92A6DBEC81F2B137.asc Description: OpenPGP public key OpenPGP_signature Description: OpenPGP digital signature
[gentoo-dev] [PATCH 1/1] kernel-2.eclass: Document variables, minor style clean-up
Document variables in the eclass, reorder alphabetically. Make spacing consistent in comment lines. Bug: https://bugs.gentoo.org/833188 Signed-off-by: Mike Pagano --- eclass/kernel-2.eclass | 238 +++-- 1 file changed, 158 insertions(+), 80 deletions(-) diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass index f1c27a36d..352eb35d6 100644 --- a/eclass/kernel-2.eclass +++ b/eclass/kernel-2.eclass @@ -17,164 +17,233 @@ # added functionality: # unipatch - a flexible, singular method to extract, add and remove patches. -# @ECLASS-VARIABLE: K_USEPV +# @ECLASS-VARIABLE: CTARGET +# @INTERNAL +# @DESCRIPTION: +# Utilized for 32-bit userland on ppc64. + +# @ECLASS-VARIABLE: CKV # @DEFAULT_UNSET # @DESCRIPTION: -# When setting the EXTRAVERSION variable, it should -# add PV to the end. -# this is useful for things like wolk. IE: -# EXTRAVERSION would be something like : -wolk-4.19-r1 +# Used as a comparison kernel version, which is used when +# PV doesnt reflect the genuine kernel version. +# This gets set to the portage style versioning. ie: +# CKV=2.6.11_rc4 -# @ECLASS-VARIABLE: K_NODRYRUN +# @ECLASS-VARIABLE: EXTRAVERSION # @DEFAULT_UNSET # @DESCRIPTION: -# if this is set then patch --dry-run will not -# be run. Certain patches will fail with this parameter -# See bug #507656 +# The additional version appended to OKV (-gentoo/-gentoo-r1) -# @ECLASS-VARIABLE: K_NOSETEXTRAVERSION +# @ECLASS-VARIABLE: H_SUPPORTEDARCH # @DEFAULT_UNSET # @DESCRIPTION: -# if this is set then EXTRAVERSION will not be -# automatically set within the kernel Makefile +# this should be a space separated list of ARCH's which +# can be supported by the headers ebuild -# @ECLASS-VARIABLE: K_NOUSENAME +# @ECLASS-VARIABLE: K_BASE_VER # @DEFAULT_UNSET # @DESCRIPTION: -# if this is set then EXTRAVERSION will not include the -# first part of ${PN} in EXTRAVERSION +# for git-sources, declare the base version this patch is +# based off of. -# @ECLASS-VARIABLE: K_NOUSEPR +# @ECLASS-VARIABLE: K_DEBLOB_AVAILABLE # @DEFAULT_UNSET # @DESCRIPTION: -# if this is set then EXTRAVERSION will not include the -# anything based on ${PR}. +# A value of "0" will disable all of the optional deblob +# code. If empty, will be set to "1" if deblobbing is +# possible. Test ONLY for "1". -# @ECLASS-VARIABLE: K_PREPATCHED +# @ECLASS-VARIABLE: K_DEBLOB_TAG # @DEFAULT_UNSET # @DESCRIPTION: -# if the patchset is prepatched (ie: pf-sources, -# zen-sources etc) it will use PR (ie: -r5) as the -# patchset version for and not use it as a true package -# revision +# This will be the version of deblob script. It's a upstream SVN tag +# such asw -gnu or -gnu1. -# @ECLASS-VARIABLE: K_EXTRAEINFO +# @ECLASS-VARIABLE: K_DEFCONFIG +# @DEFAULT_UNSET +# @DESCRIPTION: +# Allow specifying a different defconfig target. +# If length zero, defaults to "defconfig". + +# @ECLASS-VARIABLE: K_EXP_GENPATCHES_PULL +# @DEFAULT_UNSET +# @DESCRIPTION: +# If set, we pull "experimental" regardless of the USE FLAG +# but expect the ebuild maintainer to use K_EXP_GENPATCHES_LIST. + +# @ECLASS-VARIABLE: K_EXP_GENPATCHES_NOUSE +# @DEFAULT_UNSET +# @DESCRIPTION: +# If set, no USE flag will be provided for "experimental"; +# as a result the user cannot choose to apply those patches. + +# @ECLASS-VARIABLE: K_EXP_GENPATCHES_LIST +# @DEFAULT_UNSET +# @DESCRIPTION: +# A list of patches to pick from "experimental" to apply when +# the USE flag is unset and K_EXP_GENPATCHES_PULL is set. + +# @ECLASS-VARIABLE: K_EXTRAEINFO # @DEFAULT_UNSET # @DESCRIPTION: # this is a new-line seperated list of einfo displays in # postinst and can be used to carry additional postinst # messages -# @ECLASS-VARIABLE: K_EXTRAELOG +# @ECLASS-VARIABLE: K_EXTRAELOG # @DEFAULT_UNSET # @DESCRIPTION: # same as K_EXTRAEINFO except using elog instead of einfo -# @ECLASS-VARIABLE: K_EXTRAEWARN +# @ECLASS-VARIABLE: K_EXTRAEWARN # @DEFAULT_UNSET # @DESCRIPTION: # same as K_EXTRAEINFO except using ewarn instead of einfo -# @ECLASS-VARIABLE: K_SYMLINK +# @ECLASS-VARIABLE: K_FROM_GIT # @DEFAULT_UNSET # @DESCRIPTION: -# if this is set, then forcably create symlink anyway +# If set, this variable signals that the kernel sources derives +# from a git tree and special handling will be applied so that +# any patches that are applied will actually apply. -# @ECLASS-VARIABLE: K_BASE_VER +# @ECLASS-VARIABLE: K_GENPATCHES_VER # @DEFAULT_UNSET # @DESCRIPTION: -# for git-sources, declare the base version this patch is -# based off of. +# The version of the genpatches tarball(s) to apply. +# A value of "5" would apply genpatches-2.6.12-5 to +# my-sources-2.6.12.ebuild -# @ECLASS-VARIABLE: K_DEFCONFIG +# @ECLASS-VARIABLE: K_LONGTERM # @DEFAULT_UNSET # @DESCRIPTION: -# Allow specifying a different defconfig target. -# If length zero, defau
[gentoo-dev] [PATCH v2 1/1] kernel-2.eclass: Document variables, minor style clean-up
Thanks to floppym for the review. Yes, I agree I should have split this out. Next time I will. Maybe this is easier to read: https://dev.gentoo.org/~mpagano/kernel-2.eclass --- Document variables in the eclass, reorder alphabetically. Make spacing consistent in comment lines. Bug: https://bugs.gentoo.org/833188 Signed-off-by: Mike Pagano --- eclass/kernel-2.eclass | 243 +++-- 1 file changed, 163 insertions(+), 80 deletions(-) diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass index f1c27a36d..9ec3d18d1 100644 --- a/eclass/kernel-2.eclass +++ b/eclass/kernel-2.eclass @@ -17,164 +17,238 @@ # added functionality: # unipatch - a flexible, singular method to extract, add and remove patches. -# @ECLASS-VARIABLE: K_USEPV +# @ECLASS-VARIABLE: CTARGET +# @INTERNAL +# @DESCRIPTION: +# Utilized for 32-bit userland on ppc64. + +# @ECLASS-VARIABLE: CKV # @DEFAULT_UNSET # @DESCRIPTION: -# When setting the EXTRAVERSION variable, it should -# add PV to the end. -# this is useful for things like wolk. IE: -# EXTRAVERSION would be something like : -wolk-4.19-r1 +# Used as a comparison kernel version, which is used when +# PV doesnt reflect the genuine kernel version. +# This gets set to the portage style versioning. ie: +# CKV=2.6.11_rc4 -# @ECLASS-VARIABLE: K_NODRYRUN +# @ECLASS-VARIABLE: EXTRAVERSION # @DEFAULT_UNSET # @DESCRIPTION: -# if this is set then patch --dry-run will not -# be run. Certain patches will fail with this parameter -# See bug #507656 +# The additional version appended to OKV (-gentoo/-gentoo-r1) -# @ECLASS-VARIABLE: K_NOSETEXTRAVERSION +# @ECLASS-VARIABLE: H_SUPPORTEDARCH # @DEFAULT_UNSET # @DESCRIPTION: -# if this is set then EXTRAVERSION will not be -# automatically set within the kernel Makefile +# this should be a space separated list of ARCH's which +# can be supported by the headers ebuild -# @ECLASS-VARIABLE: K_NOUSENAME +# @ECLASS-VARIABLE: K_BASE_VER # @DEFAULT_UNSET # @DESCRIPTION: -# if this is set then EXTRAVERSION will not include the -# first part of ${PN} in EXTRAVERSION +# for git-sources, declare the base version this patch is +# based off of. -# @ECLASS-VARIABLE: K_NOUSEPR +# @ECLASS-VARIABLE: K_DEBLOB_AVAILABLE # @DEFAULT_UNSET # @DESCRIPTION: -# if this is set then EXTRAVERSION will not include the -# anything based on ${PR}. +# A value of "0" will disable all of the optional deblob +# code. If empty, will be set to "1" if deblobbing is +# possible. Test ONLY for "1". -# @ECLASS-VARIABLE: K_PREPATCHED +# @ECLASS-VARIABLE: K_DEBLOB_TAG # @DEFAULT_UNSET # @DESCRIPTION: -# if the patchset is prepatched (ie: pf-sources, -# zen-sources etc) it will use PR (ie: -r5) as the -# patchset version for and not use it as a true package -# revision +# This will be the version of deblob script. It's a upstream SVN tag +# such asw -gnu or -gnu1. -# @ECLASS-VARIABLE: K_EXTRAEINFO +# @ECLASS-VARIABLE: K_DEFCONFIG +# @DEFAULT_UNSET +# @DESCRIPTION: +# Allow specifying a different defconfig target. +# If length zero, defaults to "defconfig". + +# @ECLASS-VARIABLE: K_EXP_GENPATCHES_PULL +# @DEFAULT_UNSET +# @DESCRIPTION: +# If set, we pull "experimental" regardless of the USE FLAG +# but expect the ebuild maintainer to use K_EXP_GENPATCHES_LIST. + +# @ECLASS-VARIABLE: K_EXP_GENPATCHES_NOUSE +# @DEFAULT_UNSET +# @DESCRIPTION: +# If set, no USE flag will be provided for "experimental"; +# as a result the user cannot choose to apply those patches. + +# @ECLASS-VARIABLE: K_EXP_GENPATCHES_LIST +# @DEFAULT_UNSET +# @DESCRIPTION: +# A list of patches to pick from "experimental" to apply when +# the USE flag is unset and K_EXP_GENPATCHES_PULL is set. + +# @ECLASS-VARIABLE: K_EXTRAEINFO # @DEFAULT_UNSET # @DESCRIPTION: # this is a new-line seperated list of einfo displays in # postinst and can be used to carry additional postinst # messages -# @ECLASS-VARIABLE: K_EXTRAELOG +# @ECLASS-VARIABLE: K_EXTRAELOG # @DEFAULT_UNSET # @DESCRIPTION: # same as K_EXTRAEINFO except using elog instead of einfo -# @ECLASS-VARIABLE: K_EXTRAEWARN +# @ECLASS-VARIABLE: K_EXTRAEWARN # @DEFAULT_UNSET # @DESCRIPTION: # same as K_EXTRAEINFO except using ewarn instead of einfo -# @ECLASS-VARIABLE: K_SYMLINK +# @ECLASS-VARIABLE: K_FROM_GIT # @DEFAULT_UNSET # @DESCRIPTION: -# if this is set, then forcably create symlink anyway +# If set, this variable signals that the kernel sources derives +# from a git tree and special handling will be applied so that +# any patches that are applied will actually apply. -# @ECLASS-VARIABLE: K_BASE_VER +# @ECLASS-VARIABLE: K_GENPATCHES_VER # @DEFAULT_UNSET # @DESCRIPTION: -# for git-sources, declare the base version this patch is -# based off of. +# The version of the genpatches tarball(s) to apply. +# A value of "5" would apply genpatches-2.6.12-5 to +# my-sources-2.6.12.ebu
Re: [gentoo-dev] [PATCH v2] linux-info.eclass: Call ebegin, properly close with eend
On 4/15/22 06:29, Thomas Bracht Laumann Jespersen wrote: On 14/04 19:15, Mike wrote: On 4/13/22 06:05, Thomas Bracht Laumann Jespersen wrote: A recent QA check added to portage informs of eend being called without a preceding call to ebegin. This warning was emitted during pkg_setup for net-vpn/openvpn, and was traced back to the check_extra_config() function in linux-info.eclass. The preference is here to call ebegin (instead of dropping the lone eend) and in each of the possible exit branches for check_extra_config() call eend appropriately. Reported-by: Sam James Signed-off-by: Thomas Bracht Laumann Jespersen --- v1 -> v2: * Remove trailing "..." from call to ebegin - ebegin already outputs them * call "eend 1" in the soft errors case, instead of "eend 0" eclass/linux-info.eclass | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/eclass/linux-info.eclass b/eclass/linux-info.eclass index 57b1f4c89ae..7b56a47016c 100644 --- a/eclass/linux-info.eclass +++ b/eclass/linux-info.eclass @@ -781,7 +781,7 @@ check_extra_config() { require_configured_kernel fi - einfo "Checking for suitable kernel configuration options..." + ebegin "Checking for suitable kernel configuration options" for config in ${CONFIG_CHECK} do @@ -857,6 +857,7 @@ check_extra_config() { done if [[ ${hard_errors_count} -gt 0 ]]; then + eend 1 eerror "Please check to make sure these options are set correctly." eerror "Failure to do so may cause unexpected problems." eerror "Once you have satisfied these options, please try merging" @@ -864,6 +865,7 @@ check_extra_config() { export LINUX_CONFIG_EXISTS_DONE="${old_LINUX_CONFIG_EXISTS_DONE}" die "Incorrect kernel configuration options" elif [[ ${soft_errors_count} -gt 0 ]]; then + eend 1 ewarn "Please check to make sure these options are set correctly." ewarn "Failure to do so may cause unexpected problems." else LGTM, I can commit this, after a reasonable amount of time with no further discussion. Thanks for your contribution. Thanks! It's not perfect, I believe some of preceding lines may call eerror or ewarn before eend gets called, so there's still room for improvement. This change makes the QA notice go away though :-) -- Thomas Committed -- Mike Pagano Gentoo Developer - Kernel Project Gentoo Sources - Lead E-Mail : mpag...@gentoo.org GnuPG FP : 52CC A0B0 F631 0B17 0142 F83F 92A6 DBEC 81F2 B137 Public Key : http://http://pgp.mit.edu/pks/lookup?search=0x92A6DBEC81F2B137&op=index
Re: [gentoo-dev] [PATCH 2/2] kernel-2.eclass: fix spelling
On 4/15/22 10:06, David Seifert wrote: Signed-off-by: David Seifert --- eclass/kernel-2.eclass | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass index 51dabc4562d..02c70422ee0 100644 --- a/eclass/kernel-2.eclass +++ b/eclass/kernel-2.eclass @@ -670,7 +670,7 @@ if [[ ${ETYPE} == sources ]]; then )" SLOT="${PVR}" - DESCRIPTION="Sources based on the Linux Kernel." + DESCRIPTION="Sources based on the Linux Kernel" IUSE="symlink build" # Bug #266157, deblob for libre support @@ -932,7 +932,7 @@ postinst_sources() { # if we are to forcably symlink, delete it if it already exists first. if [[ ${K_SYMLINK} -gt 0 ]]; then if [[ -e ${EROOT}/usr/src/linux && ! -L ${EROOT}/usr/src/linux ]] ; then - die "${EROOT}/usr/src/linux exist and is not a symlink" + die "${EROOT}/usr/src/linux exists and is not a symlink" fi ln -snf linux-${KV_FULL} "${EROOT}"/usr/src/linux || die LGTM -- Mike Pagano Gentoo Developer - Kernel Project Gentoo Sources - Lead E-Mail : mpag...@gentoo.org GnuPG FP : 52CC A0B0 F631 0B17 0142 F83F 92A6 DBEC 81F2 B137 Public Key : http://http://pgp.mit.edu/pks/lookup?search=0x92A6DBEC81F2B137&op=index
[gentoo-dev] [PATCH] kernel-2.eclass: Fix func name to comply with pms, deprecate, old with deadline
According to PMS certain words are reserved for package manager use and may not be used or relied upon by ebuilds. See: https://projects.gentoo.org/pms/8/pms.html#x1-13700012.3.17 Bug: https://bugs.gentoo.org/843674 Signed-off-by: Mike Pagano --- eclass/kernel-2.eclass | 11 ++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass index 02c70422ee0..b3fb5cef76c 100644 --- a/eclass/kernel-2.eclass +++ b/eclass/kernel-2.eclass @@ -1411,7 +1411,16 @@ kernel-2_src_unpack() { # allow ebuilds to massage the source tree after patching but before # we run misc `make` functions below - [[ $(type -t kernel-2_hook_premake) == "function" ]] && kernel-2_hook_premake + if [[ $(type -t kernel-2_hook_premake) == "function" ]]; then + ewarn "The function name: kernel-2_hook_premake is being deprecated and" + ewarn "being changed to: kernel-2_insert_premake to comply with pms policy." + ewarn "See bug #843686 " + ewarn "The call to the old function name will be removed on or about July 1st, 2022 " + ewarn "Please update your ebuild before this date." + kernel-2_hook_premake + else + [[ $(type -t kernel-2_insert_premake) == "function" ]] && kernel-2_insert_premake + fi debug-print "Doing unpack_set_extraversion" -- 2.35.1 OpenPGP_0x92A6DBEC81F2B137.asc Description: OpenPGP public key OpenPGP_signature Description: OpenPGP digital signature
[gentoo-dev] Re: [PATCH] kernel-2.eclass: Fix func name to comply with pms, deprecate, old with deadline
On 5/11/22 15:21, Mike Pagano wrote: According to PMS certain words are reserved for package manager use and may not be used or relied upon by ebuilds. See: https://projects.gentoo.org/pms/8/pms.html#x1-13700012.3.17 Bug: https://bugs.gentoo.org/843674 Signed-off-by: Mike Pagano --- eclass/kernel-2.eclass | 11 ++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass index 02c70422ee0..b3fb5cef76c 100644 --- a/eclass/kernel-2.eclass +++ b/eclass/kernel-2.eclass @@ -1411,7 +1411,16 @@ kernel-2_src_unpack() { # allow ebuilds to massage the source tree after patching but before # we run misc `make` functions below - [[ $(type -t kernel-2_hook_premake) == "function" ]] && kernel-2_hook_premake + if [[ $(type -t kernel-2_hook_premake) == "function" ]]; then + ewarn "The function name: kernel-2_hook_premake is being deprecated and" + ewarn "being changed to: kernel-2_insert_premake to comply with pms policy." + ewarn "See bug #843686 " + ewarn "The call to the old function name will be removed on or about July 1st, 2022 " + ewarn "Please update your ebuild before this date." + kernel-2_hook_premake + else + [[ $(type -t kernel-2_insert_premake) == "function" ]] && kernel-2_insert_premake + fi debug-print "Doing unpack_set_extraversion" Committed
Re: [gentoo-dev] [PATCH] linux-info.eclass: Fix func name to comply with pms, deprecate old with deadline
On 5/11/22 18:26, Mike wrote: According to PMS certain words are reserved for package manager use and may not be used or relied upon by ebuilds. See: https://projects.gentoo.org/pms/8/pms.html#x1-13700012.3.17 Bug: https://bugs.gentoo.org/843686 Committed OpenPGP_0x92A6DBEC81F2B137.asc Description: OpenPGP public key OpenPGP_signature Description: OpenPGP digital signature
[gentoo-dev] [PATCH] linux-info.eclass: Remove local function.Calling code removed on Aug 3,2010
This function was only called locally and the last use was almost 12 years ago See: https://gitlab.com/rindeal/gentoo-cvs-history-archive/-/commit/1715ad cd9e404075340e5a5ed82f88928feeffd9 Signed-off-by: Mike Pagano --- eclass/linux-info.eclass | 20 1 file changed, 20 deletions(-) diff --git a/eclass/linux-info.eclass b/eclass/linux-info.eclass index 8c502812f8f..d2003874da0 100644 --- a/eclass/linux-info.eclass +++ b/eclass/linux-info.eclass @@ -438,26 +438,6 @@ kernel_is() { "${1:-${KV_MAJOR:-0}}.${2:-${KV_MINOR:-0}}.${3:-${KV_PATCH:-0}}" } -get_localversion() { - local lv_list i x - - local shopt_save=$(shopt -p nullglob) - shopt -s nullglob - local files=( ${1}/localversion* ) - ${shopt_save} - - # ignore files with ~ in it. - for i in "${files[@]}"; do - [[ -n ${i//*~*} ]] && lv_list="${lv_list} ${i}" - done - - for i in ${lv_list}; do - x="${x}$(<${i})" - done - x=${x/ /} - echo ${x} -} - # Check if the Makefile is valid for direct parsing. # Check status results: # - PASS, use 'getfilevar' to extract values -- 2.35.1 OpenPGP_0x92A6DBEC81F2B137.asc Description: OpenPGP public key OpenPGP_signature Description: OpenPGP digital signature
[gentoo-dev] Re: [PATCH] linux-info.eclass: Remove local function.Calling code removed on Aug 3,2010
On 5/12/22 14:29, Mike Pagano wrote: This function was only called locally and the last use was almost 12 years ago See: https://gitlab.com/rindeal/gentoo-cvs-history-archive/-/commit/1715ad cd9e404075340e5a5ed82f88928feeffd9 Signed-off-by: Mike Pagano --- eclass/linux-info.eclass | 20 1 file changed, 20 deletions(-) diff --git a/eclass/linux-info.eclass b/eclass/linux-info.eclass index 8c502812f8f..d2003874da0 100644 --- a/eclass/linux-info.eclass +++ b/eclass/linux-info.eclass @@ -438,26 +438,6 @@ kernel_is() { "${1:-${KV_MAJOR:-0}}.${2:-${KV_MINOR:-0}}.${3:-${KV_PATCH:-0}}" } -get_localversion() { - local lv_list i x - - local shopt_save=$(shopt -p nullglob) - shopt -s nullglob - local files=( ${1}/localversion* ) - ${shopt_save} - - # ignore files with ~ in it. - for i in "${files[@]}"; do - [[ -n ${i//*~*} ]] && lv_list="${lv_list} ${i}" - done - - for i in ${lv_list}; do - x="${x}$(<${i})" - done - x=${x/ /} - echo ${x} -} - # Check if the Makefile is valid for direct parsing. # Check status results: # - PASS, use 'getfilevar' to extract values Committed OpenPGP_0x92A6DBEC81F2B137.asc Description: OpenPGP public key OpenPGP_signature Description: OpenPGP digital signature
[gentoo-dev] [PATCH] linux-info.eclass: Documentation updates
Document functions which did not have any documentation or was not formatted to gentoo specifications Signed-off-by: Mike Pagano --- eclass/linux-info.eclass | 38 ++ 1 file changed, 34 insertions(+), 4 deletions(-) diff --git a/eclass/linux-info.eclass b/eclass/linux-info.eclass index d2003874d..a61ba0153 100644 --- a/eclass/linux-info.eclass +++ b/eclass/linux-info.eclass @@ -169,9 +169,9 @@ set_arch_to_portage() { # Set the env ARCH to match what the package manager expects. set_arch_to_pkgmgr() { export ARCH=$(tc-arch); } -# qeinfo "Message" -# --- -# qeinfo is a quiet einfo call when EBUILD_PHASE +# @FUNCTION: qout +# @DESCRIPTION: +# qout is a quiet call when EBUILD_PHASE # should not have visible output. qout() { local outputmsg type @@ -186,8 +186,22 @@ qout() { [ -n "${outputmsg}" ] && ${type} "${outputmsg}" } +# @FUNCTION: qeinfo +# @DESCRIPTION: +# qeinfo is a quiet einfo call when EBUILD_PHASE +# should not have visible output. qeinfo() { qout einfo "${@}" ; } + +# @FUNCTION: qewarn +# @DESCRIPTION: +# qewarn is a quiet ewarn call when EBUILD_PHASE +# should not have visible output. qewarn() { qout ewarn "${@}" ; } + +# @FUNCTION: qeerror +# @DESCRIPTION: +# qeerror is a quiet error call when EBUILD_PHASE +# should not have visible output. qeerror() { qout eerror "${@}" ; } # File Functions @@ -269,6 +283,11 @@ getfilevar_noexec() { # config is available at all. _LINUX_CONFIG_EXISTS_DONE= +# @FUNCTION: linux_config_qa_check +# @INTERNAL +# @DESCRIPTION: +# Helper funciton which returns an error before the function argument is run +# if no config exists linux_config_qa_check() { local f="$1" if [ -z "${_LINUX_CONFIG_EXISTS_DONE}" ]; then @@ -438,6 +457,9 @@ kernel_is() { "${1:-${KV_MAJOR:-0}}.${2:-${KV_MINOR:-0}}.${3:-${KV_PATCH:-0}}" } +# @FUNCTION: get_makefile_extract_function +# @INTERNAL +# @DESCRIPTION: # Check if the Makefile is valid for direct parsing. # Check status results: # - PASS, use 'getfilevar' to extract values @@ -453,7 +475,10 @@ get_makefile_extract_function() { echo "${mkfunc}" } -# internal variable, so we know to only print the warning once +# @ECLASS_VARIABLE: get_version_warning_done +# @INTERNAL +# @DESCRIPTION: +# Internal variable to ensure we print a message only once get_version_warning_done= # @FUNCTION: get_version @@ -870,6 +895,11 @@ check_extra_config() { export LINUX_CONFIG_EXISTS_DONE="${old_LINUX_CONFIG_EXISTS_DONE}" } +# @FUNCTION: check_zlibinflate +# @DESCRIPTION: +# helper function to make sure a ZLIB_INFLATE configuration +# has the requried symbols +# See https://bugs.gentoo.org/27882 check_zlibinflate() { if ! use kernel_linux; then die "${FUNCNAME}() called on non-Linux system, please fix the ebuild" -- 2.35.1 OpenPGP_signature Description: OpenPGP digital signature
Re: [gentoo-dev] [PATCH v2] linux-info.eclass: Documentation updates
Updates based on Ulm's review. Thanks for the review. Signed-off-by: Mike Pagano --- eclass/linux-info.eclass | 35 ++- 1 file changed, 30 insertions(+), 5 deletions(-) diff --git a/eclass/linux-info.eclass b/eclass/linux-info.eclass index d2003874d..7e130062a 100644 --- a/eclass/linux-info.eclass +++ b/eclass/linux-info.eclass @@ -169,10 +169,9 @@ set_arch_to_portage() { # Set the env ARCH to match what the package manager expects. set_arch_to_pkgmgr() { export ARCH=$(tc-arch); } -# qeinfo "Message" -# --- -# qeinfo is a quiet einfo call when EBUILD_PHASE -# should not have visible output. +# @FUNCTION: qout +# @DESCRIPTION: +# qout is a quiet call when EBUILD_PHASE should not have visible output. qout() { local outputmsg type type=${1} @@ -186,8 +185,21 @@ qout() { [ -n "${outputmsg}" ] && ${type} "${outputmsg}" } +# @FUNCTION: qeinfo +# @DESCRIPTION: +# qeinfo is a quiet einfo call when EBUILD_PHASE should not have visible output. qeinfo() { qout einfo "${@}" ; } + +# @FUNCTION: qewarn +# @DESCRIPTION: +# qewarn is a quiet ewarn call when EBUILD_PHASE +# should not have visible output. qewarn() { qout ewarn "${@}" ; } + +# @FUNCTION: qeerror +# @DESCRIPTION: +# qeerror is a quiet error call when EBUILD_PHASE +# should not have visible output. qeerror() { qout eerror "${@}" ; } # File Functions @@ -269,6 +281,10 @@ getfilevar_noexec() { # config is available at all. _LINUX_CONFIG_EXISTS_DONE= +# @FUNCTION: linux_config_qa_check +# @INTERNAL +# @DESCRIPTION: +# Helper funciton which returns an error before the function argument is run if no config exists linux_config_qa_check() { local f="$1" if [ -z "${_LINUX_CONFIG_EXISTS_DONE}" ]; then @@ -438,6 +454,9 @@ kernel_is() { "${1:-${KV_MAJOR:-0}}.${2:-${KV_MINOR:-0}}.${3:-${KV_PATCH:-0}}" } +# @FUNCTION: get_makefile_extract_function +# @INTERNAL +# @DESCRIPTION: # Check if the Makefile is valid for direct parsing. # Check status results: # - PASS, use 'getfilevar' to extract values @@ -453,7 +472,10 @@ get_makefile_extract_function() { echo "${mkfunc}" } -# internal variable, so we know to only print the warning once +# @ECLASS_VARIABLE: get_version_warning_done +# @INTERNAL +# @DESCRIPTION: +# Internal variable, so we know to only print the warning once. get_version_warning_done= # @FUNCTION: get_version @@ -870,6 +892,9 @@ check_extra_config() { export LINUX_CONFIG_EXISTS_DONE="${old_LINUX_CONFIG_EXISTS_DONE}" } +# @FUNCTION: check_zlibinflate +# @DESCRIPTION: +# Function to make sure a ZLIB_INFLATE configuration has the required symbols. check_zlibinflate() { if ! use kernel_linux; then die "${FUNCNAME}() called on non-Linux system, please fix the ebuild" -- 2.35.1 OpenPGP_0x92A6DBEC81F2B137.asc Description: OpenPGP public key OpenPGP_signature Description: OpenPGP digital signature
Re: [gentoo-dev] [PATCH v2] linux-info.eclass: Documentation updates
On 5/16/22 08:19, Mike Pagano wrote: Updates based on Ulm's review. Thanks for the review. Signed-off-by: Mike Pagano --- eclass/linux-info.eclass | 35 ++- 1 file changed, 30 insertions(+), 5 deletions(-) diff --git a/eclass/linux-info.eclass b/eclass/linux-info.eclass index d2003874d..7e130062a 100644 --- a/eclass/linux-info.eclass +++ b/eclass/linux-info.eclass @@ -169,10 +169,9 @@ set_arch_to_portage() { # Set the env ARCH to match what the package manager expects. set_arch_to_pkgmgr() { export ARCH=$(tc-arch); } -# qeinfo "Message" -# --- -# qeinfo is a quiet einfo call when EBUILD_PHASE -# should not have visible output. +# @FUNCTION: qout +# @DESCRIPTION: +# qout is a quiet call when EBUILD_PHASE should not have visible output. qout() { local outputmsg type type=${1} @@ -186,8 +185,21 @@ qout() { [ -n "${outputmsg}" ] && ${type} "${outputmsg}" } +# @FUNCTION: qeinfo +# @DESCRIPTION: +# qeinfo is a quiet einfo call when EBUILD_PHASE should not have visible output. qeinfo() { qout einfo "${@}" ; } + +# @FUNCTION: qewarn +# @DESCRIPTION: +# qewarn is a quiet ewarn call when EBUILD_PHASE +# should not have visible output. qewarn() { qout ewarn "${@}" ; } + +# @FUNCTION: qeerror +# @DESCRIPTION: +# qeerror is a quiet error call when EBUILD_PHASE +# should not have visible output. qeerror() { qout eerror "${@}" ; } # File Functions @@ -269,6 +281,10 @@ getfilevar_noexec() { # config is available at all. _LINUX_CONFIG_EXISTS_DONE= +# @FUNCTION: linux_config_qa_check +# @INTERNAL +# @DESCRIPTION: +# Helper funciton which returns an error before the function argument is run if no config exists linux_config_qa_check() { local f="$1" if [ -z "${_LINUX_CONFIG_EXISTS_DONE}" ]; then @@ -438,6 +454,9 @@ kernel_is() { "${1:-${KV_MAJOR:-0}}.${2:-${KV_MINOR:-0}}.${3:-${KV_PATCH:-0}}" } +# @FUNCTION: get_makefile_extract_function +# @INTERNAL +# @DESCRIPTION: # Check if the Makefile is valid for direct parsing. # Check status results: # - PASS, use 'getfilevar' to extract values @@ -453,7 +472,10 @@ get_makefile_extract_function() { echo "${mkfunc}" } -# internal variable, so we know to only print the warning once +# @ECLASS_VARIABLE: get_version_warning_done +# @INTERNAL +# @DESCRIPTION: +# Internal variable, so we know to only print the warning once. get_version_warning_done= # @FUNCTION: get_version @@ -870,6 +892,9 @@ check_extra_config() { export LINUX_CONFIG_EXISTS_DONE="${old_LINUX_CONFIG_EXISTS_DONE}" } +# @FUNCTION: check_zlibinflate +# @DESCRIPTION: +# Function to make sure a ZLIB_INFLATE configuration has the required symbols. check_zlibinflate() { if ! use kernel_linux; then die "${FUNCNAME}() called on non-Linux system, please fix the ebuild" committed
Re: [gentoo-dev] [PATCH] linux-info.eclass: Documentation updates
On 5/16/22 18:57, Sam James wrote: On 14 May 2022, at 23:59, Mike Pagano wrote: Document functions which did not have any documentation or was not formatted to gentoo specifications Signed-off-by: Mike Pagano --- eclass/linux-info.eclass | 38 ++ 1 file changed, 34 insertions(+), 4 deletions(-) [snip] Just wanted to say thanks for putting the work in on eclassdocs and the other bits you've been doing with the eclasses recently. Cheers! Thanks, Sam. You are the perfect representation of how collaboration in Gentoo can be great.
[gentoo-dev] [PATCH 1/2] linux-mod.eclass: Remove internal function not used since 2005
Signed-off-by: Mike Pagano --- eclass/linux-mod.eclass | 44 - 1 file changed, 44 deletions(-) diff --git a/eclass/linux-mod.eclass b/eclass/linux-mod.eclass index 42e677d06..93e93b44a 100644 --- a/eclass/linux-mod.eclass +++ b/eclass/linux-mod.eclass @@ -193,46 +193,6 @@ DEPEND="${RDEPEND} # eclass utilities # -- -check_vermagic() { - debug-print-function ${FUNCNAME} $* - - local curr_gcc_ver=$(gcc -dumpversion) - local tmpfile old_chost old_gcc_ver result=0 - [ -n "${MODULES_OPTIONAL_USE}" ] && use !${MODULES_OPTIONAL_USE} && return - - tmpfile=`find "${KV_DIR}/" -iname "*.o.cmd" -exec grep usr/lib/gcc {} \; -quit` - tmpfile=${tmpfile//*usr/lib} - tmpfile=${tmpfile//\/include*} - old_chost=${tmpfile//*gcc\/} - old_chost=${old_chost//\/*} - old_gcc_ver=${tmpfile//*\/} - - if [[ -z ${old_gcc_ver} || -z ${old_chost} ]]; then - ewarn "" - ewarn "Unable to detect what version of GCC was used to compile" - ewarn "the kernel. Build will continue, but you may experience problems." - elif [[ ${curr_gcc_ver} != ${old_gcc_ver} ]]; then - ewarn "" - ewarn "The version of GCC you are using (${curr_gcc_ver}) does" - ewarn "not match the version of GCC used to compile the" - ewarn "kernel (${old_gcc_ver})." - result=1 - elif [[ ${CHOST} != ${old_chost} ]]; then - ewarn "" - ewarn "The current CHOST (${CHOST}) does not match the chost" - ewarn "used when compiling the kernel (${old_chost})." - result=1 - fi - - if [[ ${result} -gt 0 ]]; then - ewarn "" - ewarn "Build will not continue, because you will experience problems." - ewarn "To fix this either change the version of GCC you wish to use" - ewarn "to match the kernel, or recompile the kernel first." - die "GCC Version Mismatch." - fi -} - # @FUNCTION: use_m # @RETURN: true or false # @DESCRIPTION: @@ -621,10 +581,6 @@ linux-mod_pkg_setup() { strip_modulenames; [[ -n ${MODULE_NAMES} ]] && check_modules_supported set_kvobj; - # Commented out with permission from johnm until a fixed version for arches - # who intentionally use different kernel and userland compilers can be - # introduced - Jason Wever , 23 Oct 2005 - #check_vermagic; } # @FUNCTION: linux-mod_pkg_setup_binary -- 2.35.1 OpenPGP_0x92A6DBEC81F2B137.asc Description: OpenPGP public key OpenPGP_signature Description: OpenPGP digital signature
[gentoo-dev] [PATCH 2/2] linux-mod.eclass: Documentation updates
Document functions which did not have any documentation or were not formatted to gentoo specifications Signed-off-by: Mike Pagano --- eclass/linux-mod.eclass | 66 - 1 file changed, 33 insertions(+), 33 deletions(-) diff --git a/eclass/linux-mod.eclass b/eclass/linux-mod.eclass index 93e93b44a..111067a42 100644 --- a/eclass/linux-mod.eclass +++ b/eclass/linux-mod.eclass @@ -227,11 +227,10 @@ convert_to_m() { fi } -# internal function -# -# FUNCTION: update_depmod -# DESCRIPTION: -# It updates the modules.dep file for the current kernel. +# @FUNCTION: update_depmod +# @INTERNAL +# @DESCRIPTION: +# Updates the modules.dep file for the current kernel. update_depmod() { debug-print-function ${FUNCNAME} $* @@ -252,11 +251,10 @@ update_depmod() { fi } -# internal function -# -# FUNCTION: move_old_moduledb -# DESCRIPTION: -# It updates the location of the database used by the module-rebuild utility. +# @FUNCTION: move_old_moduledb +# @INTERNAL +# @DESCRIPTION: +# Updates the location of the database used by the module-rebuild utility. move_old_moduledb() { debug-print-function ${FUNCNAME} $* @@ -272,11 +270,10 @@ move_old_moduledb() { fi } -# internal function -# -# FUNCTION: update_moduledb -# DESCRIPTION: -# It adds the package to the /var/lib/module-rebuild/moduledb database used by the module-rebuild utility. +# @FUNCTION: update_moduledb +# @INTERNAL +# @DESCRIPTION: +# Adds the package to the /var/lib/module-rebuild/moduledb database used by the module-rebuild utility. update_moduledb() { debug-print-function ${FUNCNAME} $* @@ -294,12 +291,10 @@ update_moduledb() { fi } -# internal function -# -# FUNCTION: remove_moduledb -# DESCRIPTION: -# It removes the package from the /var/lib/module-rebuild/moduledb database used by -# the module-rebuild utility. +# @FUNCTION: remove_moduledb +# @INTERNAL +# @DESCRIPTION: +# Removes the package from the /var/lib/module-rebuild/moduledb database used by remove_moduledb() { debug-print-function ${FUNCNAME} $* @@ -329,6 +324,10 @@ set_kvobj() { # einfo "Using KV_OBJ=${KV_OBJ}" } +# @FUNCTION: get-KERNEL_CC +# @RETURN: Name of the C compiler. +# @DESCRIPTION: +# Return name of the C compiler while honoring variables defined in ebuilds. get-KERNEL_CC() { debug-print-function ${FUNCNAME} $* @@ -349,12 +348,11 @@ get-KERNEL_CC() { echo "${kernel_cc}" } -# internal function -# -# FUNCTION: -# USAGE: /path/to/the/modulename_without_extension -# RETURN: A file in /etc/modprobe.d -# DESCRIPTION: +# @FUNCTION: generate_modulesd +# @INTERNAL +# @USAGE: /path/to/the/modulename_without_extension +# @RETURN: A file in /etc/modprobe.d +# @DESCRIPTION: # This function will generate and install the neccessary modprobe.d file from the # information contained in the modules exported parms. # (see the variables MODULESD__ENABLED, MODULESD__EXAMPLES, @@ -503,12 +501,11 @@ generate_modulesd() { return 0 } -# internal function -# -# FUNCTION: find_module_params -# USAGE: A string "NAME(LIBDIR:SRCDIR:OBJDIR)" -# RETURN: The string "modulename:NAME libdir:LIBDIR srcdir:SRCDIR objdir:OBJDIR" -# DESCRIPTION: +# @FUNCTION: find_module_params +# @USAGE: A string "NAME(LIBDIR:SRCDIR:OBJDIR)" +# @INTERNAL +# @RETURN: The string "modulename:NAME libdir:LIBDIR srcdir:SRCDIR objdir:OBJDIR" +# @DESCRIPTION: # Analyze the specification NAME(LIBDIR:SRCDIR:OBJDIR) of one module as described in MODULE_NAMES. find_module_params() { debug-print-function ${FUNCNAME} $* @@ -601,6 +598,9 @@ linux-mod_pkg_setup_binary() { linux-info_pkg_setup; } +# @FUNCTION: strip_modulenames +# @DESCRIPTION: +# Remove modules from being built automatically using the default src_compile/src_install strip_modulenames() { debug-print-function ${FUNCNAME} $* -- 2.35.1 OpenPGP_0x92A6DBEC81F2B137.asc Description: OpenPGP public key OpenPGP_signature Description: OpenPGP digital signature
[gentoo-dev] Re: [PATCH 2/2] linux-mod.eclass: Documentation updates
On 5/17/22 14:45, Mike Pagano wrote: Document functions which did not have any documentation or were not formatted to gentoo specifications Signed-off-by: Mike Pagano --- eclass/linux-mod.eclass | 66 - 1 file changed, 33 insertions(+), 33 deletions(-) diff --git a/eclass/linux-mod.eclass b/eclass/linux-mod.eclass index 93e93b44a..111067a42 100644 --- a/eclass/linux-mod.eclass +++ b/eclass/linux-mod.eclass @@ -227,11 +227,10 @@ convert_to_m() { fi } -# internal function -# -# FUNCTION: update_depmod -# DESCRIPTION: -# It updates the modules.dep file for the current kernel. +# @FUNCTION: update_depmod +# @INTERNAL +# @DESCRIPTION: +# Updates the modules.dep file for the current kernel. update_depmod() { debug-print-function ${FUNCNAME} $* @@ -252,11 +251,10 @@ update_depmod() { fi } -# internal function -# -# FUNCTION: move_old_moduledb -# DESCRIPTION: -# It updates the location of the database used by the module-rebuild utility. +# @FUNCTION: move_old_moduledb +# @INTERNAL +# @DESCRIPTION: +# Updates the location of the database used by the module-rebuild utility. move_old_moduledb() { debug-print-function ${FUNCNAME} $* @@ -272,11 +270,10 @@ move_old_moduledb() { fi } -# internal function -# -# FUNCTION: update_moduledb -# DESCRIPTION: -# It adds the package to the /var/lib/module-rebuild/moduledb database used by the module-rebuild utility. +# @FUNCTION: update_moduledb +# @INTERNAL +# @DESCRIPTION: +# Adds the package to the /var/lib/module-rebuild/moduledb database used by the module-rebuild utility. update_moduledb() { debug-print-function ${FUNCNAME} $* @@ -294,12 +291,10 @@ update_moduledb() { fi } -# internal function -# -# FUNCTION: remove_moduledb -# DESCRIPTION: -# It removes the package from the /var/lib/module-rebuild/moduledb database used by -# the module-rebuild utility. +# @FUNCTION: remove_moduledb +# @INTERNAL +# @DESCRIPTION: +# Removes the package from the /var/lib/module-rebuild/moduledb database used by remove_moduledb() { debug-print-function ${FUNCNAME} $* @@ -329,6 +324,10 @@ set_kvobj() { # einfo "Using KV_OBJ=${KV_OBJ}" } +# @FUNCTION: get-KERNEL_CC +# @RETURN: Name of the C compiler. +# @DESCRIPTION: +# Return name of the C compiler while honoring variables defined in ebuilds. get-KERNEL_CC() { debug-print-function ${FUNCNAME} $* @@ -349,12 +348,11 @@ get-KERNEL_CC() { echo "${kernel_cc}" } -# internal function -# -# FUNCTION: -# USAGE: /path/to/the/modulename_without_extension -# RETURN: A file in /etc/modprobe.d -# DESCRIPTION: +# @FUNCTION: generate_modulesd +# @INTERNAL +# @USAGE: /path/to/the/modulename_without_extension +# @RETURN: A file in /etc/modprobe.d +# @DESCRIPTION: # This function will generate and install the neccessary modprobe.d file from the # information contained in the modules exported parms. # (see the variables MODULESD__ENABLED, MODULESD__EXAMPLES, @@ -503,12 +501,11 @@ generate_modulesd() { return 0 } -# internal function -# -# FUNCTION: find_module_params -# USAGE: A string "NAME(LIBDIR:SRCDIR:OBJDIR)" -# RETURN: The string "modulename:NAME libdir:LIBDIR srcdir:SRCDIR objdir:OBJDIR" -# DESCRIPTION: +# @FUNCTION: find_module_params +# @USAGE: A string "NAME(LIBDIR:SRCDIR:OBJDIR)" +# @INTERNAL +# @RETURN: The string "modulename:NAME libdir:LIBDIR srcdir:SRCDIR objdir:OBJDIR" +# @DESCRIPTION: # Analyze the specification NAME(LIBDIR:SRCDIR:OBJDIR) of one module as described in MODULE_NAMES. find_module_params() { debug-print-function ${FUNCNAME} $* @@ -601,6 +598,9 @@ linux-mod_pkg_setup_binary() { linux-info_pkg_setup; } +# @FUNCTION: strip_modulenames +# @DESCRIPTION: +# Remove modules from being built automatically using the default src_compile/src_install strip_modulenames() { debug-print-function ${FUNCNAME} $* Both 1/2 and 2/2 commited.
[gentoo-dev] [PATCH] linux-mod.eclass: Support module compression
The Linux kernel supports the compression of modules utilizing GZIP, XZ and ZSTD. Add code into linux-mod.eclass to support this for out of tree modules utilizing the compression binary specified in the kernel config. Note that if the binary which provides the compression is not present on the system the kernel would have failed to build with an error indicating the missing binaries name. Signed-off-by: Mike Pagano --- eclass/linux-mod.eclass | 17 - 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/eclass/linux-mod.eclass b/eclass/linux-mod.eclass index 6a820371b..b7c13cbf7 100644 --- a/eclass/linux-mod.eclass +++ b/eclass/linux-mod.eclass @@ -711,7 +711,22 @@ linux-mod_src_install() { einfo "Installing ${modulename} module" cd "${objdir}" || die "${objdir} does not exist" insinto "${INSTALL_MOD_PATH}"/lib/modules/${KV_FULL}/${libdir} - doins ${modulename}.${KV_OBJ} || die "doins ${modulename}.${KV_OBJ} failed" + + # check here for CONFIG_MODULE_COMPRESS_ (NONE, GZIP, XZ, ZSTD) + # and similarily compress the module being built if != NONE. + + if linux_chkconfig_present MODULE_COMPRESS_XZ; then + xz ${modulename}.${KV_OBJ} + doins ${modulename}.${KV_OBJ}.xz || die "doins ${modulename}.${KV_OBJ}.xz failed" + elif linux_chkconfig_present MODULE_COMPRESS_GZIP; then + gzip ${modulename}.${KV_OBJ} + doins ${modulename}.${KV_OBJ}.gz || die "doins ${modulename}.${KV_OBJ}.gz failed" + elif linux_chkconfig_present MODULE_COMPRESS_ZSTD; then + zstd ${modulename}.${KV_OBJ} + doins ${modulename}.${KV_OBJ}.zst || die "doins ${modulename}.${KV_OBJ}.zst failed" + else + doins ${modulename}.${KV_OBJ} || die "doins ${modulename}.${KV_OBJ} failed" + fi cd "${OLDPWD}" generate_modulesd "${objdir}/${modulename}" -- 2.35.1 OpenPGP_signature Description: OpenPGP digital signature
Re: [gentoo-dev] [PATCH] linux-mod.eclass: support module signing
On 6/21/22 14:21, Kenton Groombridge wrote: On 22/06/21 02:19PM, Kenton Groombridge wrote: eee74b9fca1 adds support for module compression, but this breaks loading out of tree modules when module signing is enforced because modules must be signed before they are compressed. Additionally, the recommended Portage hook[1] no longer works with this change. Forgot to include this reference: [1] https://wiki.gentoo.org/wiki/Signed_kernel_module_support#Automatically_signing_kernel_modules_.28Portage.29 Add module signing support in linux-mod.eclass which more or less does exactly what the aforementioned Portage hook does. If the kernel configuration has CONFIG_MODULE_SIG_ALL=y, then read the hash and keys from the kernel configuration and call the sign_file tool to sign the module before it is compressed. Bug: https://bugs.gentoo.org/show_bug.cgi?id=447352 Signed-off-by: Kenton Groombridge --- eclass/linux-mod.eclass | 16 1 file changed, 16 insertions(+) diff --git a/eclass/linux-mod.eclass b/eclass/linux-mod.eclass index b7c13cbf7e7..fd40f6d7c6c 100644 --- a/eclass/linux-mod.eclass +++ b/eclass/linux-mod.eclass @@ -712,6 +712,22 @@ linux-mod_src_install() { cd "${objdir}" || die "${objdir} does not exist" insinto "${INSTALL_MOD_PATH}"/lib/modules/${KV_FULL}/${libdir} + # check here for CONFIG_MODULE_SIG_ALL and sign the module being built if enabled. + # modules must be signed before they are compressed. + + if linux_chkconfig_present MODULE_SIG_ALL; then + local module_sig_hash="$(linux_chkconfig_string MODULE_SIG_HASH)" + local module_sig_key="$(linux_chkconfig_string MODULE_SIG_KEY)" + module_sig_key="${module_sig_key:-certs/signing_key.pem}" + if [[ "${module_sig_key#pkcs11:}" == "${module_sig_key}" && "${module_sig_key#/}" == "${module_sig_key}" ]]; then + local key_path="${KERNEL_DIR}/${module_sig_key}" + else + local key_path="${module_sig_key}" + fi + local cert_path="${KERNEL_DIR}/certs/signing_key.x509" + "${KERNEL_DIR}"/scripts/sign-file ${module_sig_hash//\"} ${key_path//\"} ${cert_path} ${modulename}.${KV_OBJ} + fi + # check here for CONFIG_MODULE_COMPRESS_ (NONE, GZIP, XZ, ZSTD) # and similarily compress the module being built if != NONE. -- 2.35.1 First of all, thank-you for your work ! I appreciate any assistance with enhancement or clean-up of these eclasses. I tested your patch, are you signing the files in 'work' after they are installed in 'image' ? /usr/src/linux/scripts/extract-module-sig.pl -s ./work/kernel/nvidia.ko > /tmp/sig Read 47802433 bytes from module file Found magic number at 47802433 Found PKCS#7/CMS encapsulation Found 681 bytes of signature [308202a506092a864886f70d010702a0] /usr/src/linux/scripts/extract-module-sig.pl -s ./image/lib/modules/5.18.6-gentoo/video/nvidia.ko > /tmp/sig Read 47227784 bytes from module file Magic number not found at 47227784 Mike -- Mike Pagano Gentoo Developer - Kernel Project Gentoo Sources - Lead E-Mail : mpag...@gentoo.org GnuPG FP : 52CC A0B0 F631 0B17 0142 F83F 92A6 DBEC 81F2 B137 Public Key : http://http://pgp.mit.edu/pks/lookup?search=0x92A6DBEC81F2B137&op=index
[gentoo-dev] [PATCH 1/1] linux-info.eclass: Provide ability to skip CONFIG_* checks
Based upon code from check-reqs.eclass by Andreas Sturmlechner Provide support for users who requested the ability to skip CONFIG_* checks. (e.g. from within a chroot for testing purposes) Bug: https://bugs.gentoo.org/862315 Signed-off-by: Mike Pagano --- eclass/linux-info.eclass | 11 ++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/eclass/linux-info.eclass b/eclass/linux-info.eclass index 7e130062a..59e86490f 100644 --- a/eclass/linux-info.eclass +++ b/eclass/linux-info.eclass @@ -29,6 +29,15 @@ # A Couple of env vars are available to effect usage of this eclass # These are as follows: + +# @ECLASS_VARIABLE: CHECKCONFIG_DONOTHING +# @USER_VARIABLE +# @DEFAULT_UNSET +# @DESCRIPTION: +# Do not error out in check_extra_config if CONFIG settings are not met. +# This is a user flag and should under _no circumstances_ be set in the ebuild. +[[ -n ${I_KNOW_WHAT_I_AM_DOING} ]] && CHECKCONFIG_DONOTHING=1 + # @ECLASS_VARIABLE: KERNEL_DIR # @DESCRIPTION: # A string containing the directory of the target kernel sources. The default value is @@ -978,7 +987,7 @@ linux-info_pkg_setup() { linux-info_get_any_version - [ -n "${CONFIG_CHECK}" ] && check_extra_config; + [[ -n "${CONFIG_CHECK}" && -z ${CHECKCONFIG_DONOTHING} ]] && check_extra_config; } # @FUNCTION: kernel_get_makefile -- 2.35.1 -- Mike Pagano Gentoo Developer - Kernel Project Gentoo Sources - Lead E-Mail : mpag...@gentoo.org GnuPG FP : 52CC A0B0 F631 0B17 0142 F83F 92A6 DBEC 81F2 B137 Public Key : http://http://pgp.mit.edu/pks/lookup?search=0x92A6DBEC81F2B137&op=index OpenPGP_signature Description: OpenPGP digital signature
Re: [gentoo-dev] [PATCH 1/1] linux-info.eclass: Provide ability to skip CONFIG_* checks
On 8/5/22 22:12, Mike Gilbert wrote: On Fri, Aug 5, 2022 at 7:15 PM Ionen Wolkens wrote: On Fri, Aug 05, 2022 at 06:47:42PM -0400, Mike Pagano wrote: Based upon code from check-reqs.eclass by Andreas Sturmlechner Provide support for users who requested the ability to skip CONFIG_* checks. (e.g. from within a chroot for testing purposes) Bug: https://bugs.gentoo.org/862315 Signed-off-by: Mike Pagano --- eclass/linux-info.eclass | 11 ++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/eclass/linux-info.eclass b/eclass/linux-info.eclass index 7e130062a..59e86490f 100644 --- a/eclass/linux-info.eclass +++ b/eclass/linux-info.eclass @@ -29,6 +29,15 @@ # A Couple of env vars are available to effect usage of this eclass # These are as follows: + +# @ECLASS_VARIABLE: CHECKCONFIG_DONOTHING +# @USER_VARIABLE +# @DEFAULT_UNSET +# @DESCRIPTION: +# Do not error out in check_extra_config if CONFIG settings are not met. +# This is a user flag and should under _no circumstances_ be set in the ebuild. +[[ -n ${I_KNOW_WHAT_I_AM_DOING} ]] && CHECKCONFIG_DONOTHING=1 So this enables it if I_KNOW_WHAT_I_AM_DOING is set? Generally I feel giving more purposes to that variable is a bad idea. What starts out as "don't bother me about size/ram checks" ignores a lot of other things that may be not be expected. I agree. Please avoid abusing the I_KNOW_WHAT_I_AM_DOING variable any further. Baldino I actually agree. I was following the pattern that did not receive any complaints on the mailing list when presented for the other eclass indicated. It's a vague variable and this adds more random functionality when set. I'll change this appropriately and submit something later today. Thanks for thee review. Mike -- Mike Pagano Gentoo Developer - Kernel Project Gentoo Sources - Lead E-Mail : mpag...@gentoo.org GnuPG FP : 52CC A0B0 F631 0B17 0142 F83F 92A6 DBEC 81F2 B137 Public Key : http://http://pgp.mit.edu/pks/lookup?search=0x92A6DBEC81F2B137&op=index
[gentoo-dev] [PATCH 1/1 v2] linux-info.eclass: Provide ability to skip CONFIG_*, checks
Provide support for users who requested the ability to skip CONFIG_* checks. (e.g. from within a chroot for testing purposes) Bug: https://bugs.gentoo.org/862315 Signed-off-by: Mike Pagano --- eclass/linux-info.eclass | 11 ++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/eclass/linux-info.eclass b/eclass/linux-info.eclass index 7e130062a..0bc714e81 100644 --- a/eclass/linux-info.eclass +++ b/eclass/linux-info.eclass @@ -29,6 +29,15 @@ # A Couple of env vars are available to effect usage of this eclass # These are as follows: + +# @ECLASS_VARIABLE: CHECKCONFIG_DONOTHING +# @USER_VARIABLE +# @DEFAULT_UNSET +# @DESCRIPTION: +# Do not error out in check_extra_config if CONFIG settings are not met. +# This is a user flag and should under _no circumstances_ be set in the ebuild. +: ${CHECKCONFIG_DONOTHING:=""} + # @ECLASS_VARIABLE: KERNEL_DIR # @DESCRIPTION: # A string containing the directory of the target kernel sources. The default value is @@ -978,7 +987,7 @@ linux-info_pkg_setup() { linux-info_get_any_version - [ -n "${CONFIG_CHECK}" ] && check_extra_config; + [[ -n "${CONFIG_CHECK}" && -z ${CHECKCONFIG_DONOTHING} ]] && check_extra_config; } # @FUNCTION: kernel_get_makefile -- 2.35.1 -- Mike Pagano Gentoo Developer - Kernel Project Gentoo Sources - Lead E-Mail : mpag...@gentoo.org GnuPG FP : 52CC A0B0 F631 0B17 0142 F83F 92A6 DBEC 81F2 B137 Public Key : http://http://pgp.mit.edu/pks/lookup?search=0x92A6DBEC81F2B137&op=index OpenPGP_0x92A6DBEC81F2B137.asc Description: OpenPGP public key OpenPGP_signature Description: OpenPGP digital signature
[gentoo-dev] PATCH 1/1] Remove deprecated eclass function after warning period expiration
Remove deprecated eclass function after warning period expiration Signed-off-by: Mike Pagano --- eclass/linux-info.eclass | 15 --- 1 file changed, 15 deletions(-) diff --git a/eclass/linux-info.eclass b/eclass/linux-info.eclass index 7e130062a..0fa96e70f 100644 --- a/eclass/linux-info.eclass +++ b/eclass/linux-info.eclass @@ -149,21 +149,6 @@ esac # Set the env ARCH to match what the kernel expects. set_arch_to_kernel() { export ARCH=$(tc-arch-kernel); } -# @FUNCTION: set_arch_to_portage -# @DESCRIPTION: -# Set the env ARCH to match what portage expects. -set_arch_to_portage() { - - ewarn "The function name: set_arch_to_portage is being deprecated and" - ewarn "being changed to: set_arch_to_pkgmgr to comply with pms policy." - ewarn "See bug #843686" - ewarn "The old function name will be removed on or about July 1st, 2022." - ewarn "Please update your ebuild or eclass before this date." - ewarn "" - - export ARCH=$(tc-arch); -} - # @FUNCTION: set_arch_to_pkgmgr # @DESCRIPTION: # Set the env ARCH to match what the package manager expects. -- 2.35.1 -- Mike Pagano Gentoo Developer - Kernel Project Gentoo Sources - Lead E-Mail : mpag...@gentoo.org GnuPG FP : 52CC A0B0 F631 0B17 0142 F83F 92A6 DBEC 81F2 B137 Public Key : http://http://pgp.mit.edu/pks/lookup?search=0x92A6DBEC81F2B137&op=index OpenPGP_signature Description: OpenPGP digital signature
[gentoo-dev] linux-info.eclass: Support for not checking for a running kernel version or an installed version
This goes along with not checking for a .config. This change was requested to have the ability to not check for either a running or installed kernel Signed-off-by: Mike Pagano --- eclass/linux-info.eclass | 18 ++ 1 file changed, 18 insertions(+) diff --git a/eclass/linux-info.eclass b/eclass/linux-info.eclass index 8925f83b6..82bc7fe53 100644 --- a/eclass/linux-info.eclass +++ b/eclass/linux-info.eclass @@ -140,6 +140,16 @@ KERNEL_DIR="${KERNEL_DIR:-${ROOT%/}/usr/src/linux}" # A read-only variable. It's a string containing the kernel object directory, will be KV_DIR unless # KBUILD_OUTPUT is used. This should be used for referencing .config. + +# @ECLASS_VARIABLE: SKIP_KERNEL_CHECK +# @USER_VARIABLE +# @DEFAULT_UNSET +# @DESCRIPTION: +# Do not check for kernel sources or a running kernel version +# Main use-case is for chroots +# This is a user flag and should under _no circumstances_ be set in the ebuild. +: ${SKIP_KERNEL_CHECK:=""} + # And to ensure all the weirdness with crosscompile inherit toolchain-funcs [[ ${EAPI:-0} == [0123456] ]] && inherit eapi7-ver @@ -339,6 +349,9 @@ linux_config_path() { # This function verifies that the current kernel is configured (it checks against the existence of .config) # otherwise it dies. require_configured_kernel() { + + [[ -n ${SKIP_KERNEL_CHECK} ]] && return + if ! use kernel_linux; then die "${FUNCNAME}() called on non-Linux system, please fix the ebuild" fi @@ -489,6 +502,8 @@ get_version() { local tmplocal + [[ -n ${SKIP_KERNEL_CHECK} ]] && return + # no need to execute this twice assuming KV_FULL is populated. # we can force by unsetting KV_FULL [ -n "${KV_FULL}" ] && return 0 @@ -697,6 +712,9 @@ check_kernel_built() { fi # if we haven't determined the version yet, we need to + + [[ -n ${SKIP_KERNEL_CHECK} ]] && return + require_configured_kernel local versionh_path -- 2.35.1 -- Mike Pagano Gentoo Developer - Kernel Project Gentoo Sources - Lead E-Mail : mpag...@gentoo.org GnuPG FP : 52CC A0B0 F631 0B17 0142 F83F 92A6 DBEC 81F2 B137 Public Key : http://http://pgp.mit.edu/pks/lookup?search=0x92A6DBEC81F2B137&op=index OpenPGP_signature Description: OpenPGP digital signature
[gentoo-dev] [PATCH 1/1] linux-info.eclass: Add SKIP_KERNEL_CHECK in addl funcs to support tinderbox
Signed-off-by: Mike Pagano --- eclass/linux-info.eclass | 5 + 1 file changed, 5 insertions(+) diff --git a/eclass/linux-info.eclass b/eclass/linux-info.eclass index 82bc7fe53..fc125b0d7 100644 --- a/eclass/linux-info.eclass +++ b/eclass/linux-info.eclass @@ -374,6 +374,7 @@ require_configured_kernel() { # If linux_config_exists returns false, the results of this are UNDEFINED. You # MUST call linux_config_exists first. linux_chkconfig_present() { + [[ -n ${SKIP_KERNEL_CHECK} ]] && return linux_config_qa_check linux_chkconfig_present [[ $(getfilevar_noexec "CONFIG_$1" "$(linux_config_path)") == [my] ]] } @@ -386,6 +387,7 @@ linux_chkconfig_present() { # If linux_config_exists returns false, the results of this are UNDEFINED. You # MUST call linux_config_exists first. linux_chkconfig_module() { + [[ -n ${SKIP_KERNEL_CHECK} ]] && return linux_config_qa_check linux_chkconfig_module [[ $(getfilevar_noexec "CONFIG_$1" "$(linux_config_path)") == m ]] } @@ -398,6 +400,7 @@ linux_chkconfig_module() { # If linux_config_exists returns false, the results of this are UNDEFINED. You # MUST call linux_config_exists first. linux_chkconfig_builtin() { + [[ -n ${SKIP_KERNEL_CHECK} ]] && return linux_config_qa_check linux_chkconfig_builtin [[ $(getfilevar_noexec "CONFIG_$1" "$(linux_config_path)") == y ]] } @@ -410,6 +413,7 @@ linux_chkconfig_builtin() { # If linux_config_exists returns false, the results of this are UNDEFINED. You # MUST call linux_config_exists first. linux_chkconfig_string() { + [[ -n ${SKIP_KERNEL_CHECK} ]] && return linux_config_qa_check linux_chkconfig_string getfilevar_noexec "CONFIG_$1" "$(linux_config_path)" } @@ -472,6 +476,7 @@ kernel_is() { # - make is not present # - corruption exists in the kernel makefile get_makefile_extract_function() { + [[ -n ${SKIP_KERNEL_CHECK} ]] && return local a='' b='' mkfunc='getfilevar' a="$(getfilevar VERSION ${KERNEL_MAKEFILE})" b="$(getfilevar_noexec VERSION ${KERNEL_MAKEFILE})" -- 2.35.1 OpenPGP_0x92A6DBEC81F2B137.asc Description: OpenPGP public key OpenPGP_signature Description: OpenPGP digital signature
Re: [gentoo-dev] Up for grabs: net-print/epson-inkjet-printer-escpr
On 11/21/22 08:12, Andreas Sturmlechner wrote: I no longer have any hardware to test this package thanks to planned obsolescence. No open bugs. Regards I can maintain this one. -- Mike Pagano Gentoo Developer - Kernel Project Gentoo Sources - Lead E-Mail : mpag...@gentoo.org GnuPG FP : 52CC A0B0 F631 0B17 0142 F83F 92A6 DBEC 81F2 B137 Public Key : http://http://pgp.mit.edu/pks/lookup?search=0x92A6DBEC81F2B137&op=index
Re: [gentoo-dev] [RFC] Removing the distinction between UNCONFIRMED and CONFIRMED bugs
On 12/3/22 08:59, Florian Schmaus wrote: On 03/12/2022 14.50, Michał Górny wrote: On Sat, 2022-12-03 at 14:45 +0100, Florian Schmaus wrote: I think having UNCONFIRMED / CONFIRMED *helps* the issue reporter, and other (affected) persons, to decide if they need to "chase" the issue's assigned entity. Assume looking at the open bugs list of a developer. If the developer has old bugs in UNCONFIRMED state, you may want to issue a friendly ping. Sure, strictly speaking, this would require all bugs to drop back to UNCONFIMRED when the bug assignee changes. But even without such an implicit mechanism, those two states provide some value. I don't understand how UNCONFIRMED/CONFIRMED makes any difference here. If I file a bug against some package, it is CONFIRMED by default. If an unprivileged user files it, it's UNCONFIRMED. In both cases the assignee didn't do anything. The assignee not doing anything keeps the bug UNCONFIRMED if it is filled by an unprivileged user. That makes the bug distinguishable from a bug that got "verified" by the assignee. Yes, if *you* (as dev) fill a bug, then it is implicitly CONFIRMED (whether or not that is sensible is a different discussion). I do not see how this would invalidate my case, though. - Flow The kernel may be a special case, but personally I use unconfirmed and don't 'confirm' it until it's determined if it's a real kernel bug. Sometimes the kernel is the messenger and not the cause. But this is not a documented process and only exists in my head. Whatever the consensus is I can live with. -- Mike Pagano Gentoo Developer - Kernel Project Gentoo Sources - Lead E-Mail : mpag...@gentoo.org GnuPG FP : 52CC A0B0 F631 0B17 0142 F83F 92A6 DBEC 81F2 B137 Public Key : http://http://pgp.mit.edu/pks/lookup?search=0x92A6DBEC81F2B137&op=index
[gentoo-dev] [PATCH 1/1] linux-mod.eclass: Remove econf call in compile phase, function
Remove the econf call in linux-mod_src_compile as it is deprecated in later versions of EAPI. There is no current use of this functionality in the official gentoo repo and will close a 12 year old bug. Bug: https://bugs.gentoo.org/340597 Signed-off-by: Mike Pagano --- eclass/linux-mod.eclass | 7 --- 1 file changed, 7 deletions(-) diff --git a/eclass/linux-mod.eclass b/eclass/linux-mod.eclass index ff2294f1e..5655ac73a 100644 --- a/eclass/linux-mod.eclass +++ b/eclass/linux-mod.eclass @@ -649,13 +649,6 @@ linux-mod_src_compile() { then cd "${srcdir}" ln -s "${S}"/Module.symvers Module.symvers - einfo "Preparing ${modulename} module" - if [[ -n ${ECONF_PARAMS} ]] - then - eqawarn "This package relies on the deprecated functionality of econf being called in linux-mod_src_compile (ECONF_PARAMS), which will go away in 30 days (20230107) (https://bugs.gentoo.org/340597)" - econf ${ECONF_PARAMS} || \ - die "Unable to run econf ${ECONF_PARAMS}" - fi # This looks messy, but it is needed to handle multiple variables # being passed in the BUILD_* stuff where the variables also have -- 2.37.4 -- Mike Pagano Gentoo Developer - Kernel Project E-Mail : mpag...@gentoo.org GnuPG FP : 52CC A0B0 F631 0B17 0142 F83F 92A6 DBEC 81F2 B137 Public Key : http://pgp.mit.edu/pks/lookup?search=0x92A6DBEC81F2B137&op=index OpenPGP_0x92A6DBEC81F2B137.asc Description: OpenPGP public key OpenPGP_signature Description: OpenPGP digital signature
[gentoo-dev] [PATCH 1/1] kernel-2.eclass: Don't drop CPU OPT patch when CC=clang
Clang is supported by the CPU optimization patch. (USE=experimental) Check for CC=clang and do not drop this patch. Bug: https://bugs.gentoo.org/888727 Signed-off-by: Mike Pagano --- eclass/kernel-2.eclass | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass index e13ed1a4f..873d4a204 100644 --- a/eclass/kernel-2.eclass +++ b/eclass/kernel-2.eclass @@ -1144,7 +1144,7 @@ unipatch() { UNIPATCH_DROP+=" 5011_enable-cpu-optimizations-for-gcc8.patch" UNIPATCH_DROP+=" 5012_enable-cpu-optimizations-for-gcc91.patch" UNIPATCH_DROP+=" 5013_enable-cpu-optimizations-for-gcc10.patch" - if [[ ${GCC_MAJOR_VER} -lt 9 ]]; then + if [[ ${GCC_MAJOR_VER} -lt 9 ]] && ! tc-is-clang; then UNIPATCH_DROP+=" 5010_enable-cpu-optimizations-universal.patch" fi # this legacy section should be targeted for removal -- 2.38.2 -- Mike Pagano Gentoo Developer - Kernel Project E-Mail : mpag...@gentoo.org GnuPG FP : 52CC A0B0 F631 0B17 0142 F83F 92A6 DBEC 81F2 B137 Public Key : http://pgp.mit.edu/pks/lookup?search=0x92A6DBEC81F2B137&op=index OpenPGP_0x92A6DBEC81F2B137.asc Description: OpenPGP public key OpenPGP_signature Description: OpenPGP digital signature
Re: [gentoo-dev] [PATCH] linux-mod.eclass: Fix MODULESD_* for hyphenated modules (bug #889752)
On 1/4/23 19:06, Patrick McLean wrote: From: Steven Stallion Use of the MODULESD__{ADDITIONS,ALIASES,EXAMPLES} variables do not currently work with external modules that are hyphenated. The current behavior results in an invalid modprobe.d file containing partially evaluated content. This appears to be due to use of ${currm} rather than ${currm_t} when Referencing variables. This changes the use of ${currm} to ${currm_t} when referencing variables to resolve this issue. Closes: https://bugs.gentoo.org/889752 --- eclass/linux-mod.eclass | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/eclass/linux-mod.eclass b/eclass/linux-mod.eclass index d14bbf7d9ea..6cf9969b19a 100644 --- a/eclass/linux-mod.eclass +++ b/eclass/linux-mod.eclass @@ -408,7 +408,7 @@ generate_modulesd() { for((t=0; t<${module_aliases}; t++)) do - echo "alias $(eval echo \${MODULESD_${currm}_ALIASES[$t]})" \ + echo "alias $(eval echo \${MODULESD_${currm_t}_ALIASES[$t]})" \ >> "${module_config}" done echo '' >> "${module_config}" @@ -434,7 +434,7 @@ generate_modulesd() { fi #--- - if [[ $(eval echo \${MODULESD_${currm}_ALIASES[0]}) == guess ]]; then + if [[ $(eval echo \${MODULESD_${currm_t}_ALIASES[0]}) == guess ]]; then # So, let's do some guesswork, eh? if [[ -n ${module_opts} ]]; then echo "# For Example..." >> "${module_config}" @@ -449,7 +449,7 @@ generate_modulesd() { echo "# For Example..." >> "${module_config}" echo "# --" >> "${module_config}" for ((t=0; t<${module_examples}; t++)); do - echo "options $(eval echo \${MODULESD_${currm}_EXAMPLES[$t]})" \ + echo "options $(eval echo \${MODULESD_${currm_t}_EXAMPLES[$t]})" \ >> "${module_config}" done echo '' >> "${module_config}" @@ -458,7 +458,7 @@ generate_modulesd() { #--- if [[ ${module_additions} -gt 0 ]]; then for ((t=0; t<${module_additions}; t++)); do - echo "$(eval echo \${MODULESD_${currm}_ADDITIONS[$t]})" \ + echo "$(eval echo \${MODULESD_${currm_t}_ADDITIONS[$t]})" \ >> "${module_config}" done echo '' >> "${module_config}" Ack -- Mike Pagano Gentoo Developer - Kernel Project E-Mail : mpag...@gentoo.org GnuPG FP : 52CC A0B0 F631 0B17 0142 F83F 92A6 DBEC 81F2 B137 Public Key : http://pgp.mit.edu/pks/lookup?search=0x92A6DBEC81F2B137&op=index
[gentoo-dev] [PATCH 1/1] linux-info.eclass: Add /proc/config.gz as a valid src of CONFIG_* settings
In the event that the linux src tree does not have a valid .config, check for /proc/config.gz Bug: https://bugs.gentoo.org/890720 Signed-off-by: Mike Pagano --- eclass/linux-info.eclass | 12 ++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/eclass/linux-info.eclass b/eclass/linux-info.eclass index 16ef69ebc..daedd758f 100644 --- a/eclass/linux-info.eclass +++ b/eclass/linux-info.eclass @@ -301,10 +301,18 @@ linux_config_qa_check() { # @FUNCTION: linux_config_src_exists # @RETURN: true or false # @DESCRIPTION: -# It returns true if .config exists in a build directory otherwise false +# Returns true if either .config exists in a build directory or +# /proc/config.gz is found, otherwise returns false linux_config_src_exists() { export _LINUX_CONFIG_EXISTS_DONE=1 - use kernel_linux && [[ -n ${KV_OUT_DIR} && -s ${KV_OUT_DIR}/.config ]] + if use kernel_linux; then + if [[ -n ${KV_OUT_DIR} && -s ${KV_OUT_DIR}/.config ]]; then + return 0 + elif linux_config_bin_exists; then + return 0 + fi + fi + return 1 } # @FUNCTION: linux_config_bin_exists -- 2.38.2 -- Mike Pagano Gentoo Developer - Kernel Project E-Mail : mpag...@gentoo.org GnuPG FP : 52CC A0B0 F631 0B17 0142 F83F 92A6 DBEC 81F2 B137 Public Key : http://pgp.mit.edu/pks/lookup?search=0x92A6DBEC81F2B137&op=index
Re: [gentoo-dev] [PATCH 1/1] linux-info.eclass: Add /proc/config.gz as a valid src of CONFIG_* settings
On 1/15/23 15:16, Mike Gilbert wrote: On Sun, Jan 15, 2023 at 12:40 PM Mike Pagano wrote: In the event that the linux src tree does not have a valid .config, check for /proc/config.gz Bug: https://bugs.gentoo.org/890720 I think this is the wrong place to "fix" bug 890720. We already have a linux_config_exists function. This change would make that function redundant and removes the ability to check for only a valid .config in the kernel build directory. I think the check_config_extra function should be updated to not call require_configured_kernel. Yeah, I guess that does make sense. The CONFIGs are optional, why look for any config file ? -- Mike Pagano Gentoo Developer - Kernel Project E-Mail : mpag...@gentoo.org GnuPG FP : 52CC A0B0 F631 0B17 0142 F83F 92A6 DBEC 81F2 B137 Public Key : http://pgp.mit.edu/pks/lookup?search=0x92A6DBEC81F2B137&op=index
[gentoo-dev] [PATCH 1/1] linux-info.eclass: Chk for .config/config.gz when CONFIG_* req
In the instance where CONFIG_* settings are required and not optional, make sure there is either a .config or a config.gz to check Signed-off-by: Mike Pagano --- eclass/linux-info.eclass | 10 -- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/eclass/linux-info.eclass b/eclass/linux-info.eclass index 16ef69ebc..a65d0c441 100644 --- a/eclass/linux-info.eclass +++ b/eclass/linux-info.eclass @@ -805,8 +805,14 @@ check_extra_config() { export LINUX_CONFIG_EXISTS_DONE="${old_LINUX_CONFIG_EXISTS_DONE}" return 0 fi - else - require_configured_kernel + elif ! linux_config_exists; then + qeerror "Could not find a neither a usable .config in the kernel source directory" + qeerror "nor a /proc/config.gz file," + qeerror "Please ensure that ${KERNEL_DIR} points to a configured set of Linux sources." + qeerror "If you are using KBUILD_OUTPUT, please set the environment var so that" + qeerror "it points to the necessary object directory so that it might find .config" + qeerror "or have a properly configured kernel to produce a config.gz file. (CONFIG_IKCONFIG)." + die "Kernel not configured; no .config found in ${KV_OUT_DIR} or /proc/config.gz found" fi ebegin "Checking for suitable kernel configuration options" -- 2.38.2 -- Mike Pagano Gentoo Developer - Kernel Project Gentoo Sources - Lead E-Mail : mpag...@gentoo.org GnuPG FP : 52CC A0B0 F631 0B17 0142 F83F 92A6 DBEC 81F2 B137 Public Key : http://http://pgp.mit.edu/pks/lookup?search=0x92A6DBEC81F2B137&op=index
Re: [gentoo-dev] [PATCH 1/1] linux-info.eclass: Chk for .config/config.gz when CONFIG_* req
On 1/15/23 18:22, Mike Pagano wrote: In the instance where CONFIG_* settings are required and not optional, make sure there is either a .config or a config.gz to check Signed-off-by: Mike Pagano --- eclass/linux-info.eclass | 10 -- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/eclass/linux-info.eclass b/eclass/linux-info.eclass index 16ef69ebc..a65d0c441 100644 --- a/eclass/linux-info.eclass +++ b/eclass/linux-info.eclass @@ -805,8 +805,14 @@ check_extra_config() { export LINUX_CONFIG_EXISTS_DONE="${old_LINUX_CONFIG_EXISTS_DONE}" return 0 fi - else - require_configured_kernel + elif ! linux_config_exists; then + qeerror "Could not find a neither a usable .config in the kernel source directory" + qeerror "nor a /proc/config.gz file," + qeerror "Please ensure that ${KERNEL_DIR} points to a configured set of Linux sources." + qeerror "If you are using KBUILD_OUTPUT, please set the environment var so that" + qeerror "it points to the necessary object directory so that it might find .config" + qeerror "or have a properly configured kernel to produce a config.gz file. (CONFIG_IKCONFIG)." + die "Kernel not configured; no .config found in ${KV_OUT_DIR} or /proc/config.gz found" fi ebegin "Checking for suitable kernel configuration options" Committed -- Mike Pagano Gentoo Developer - Kernel Project Gentoo Sources - Lead E-Mail : mpag...@gentoo.org GnuPG FP : 52CC A0B0 F631 0B17 0142 F83F 92A6 DBEC 81F2 B137 Public Key : http://http://pgp.mit.edu/pks/lookup?search=0x92A6DBEC81F2B137&op=index
Re: [gentoo-dev] [PATCH 3/3] sys-kernel/linux-headers: Adjust following kernel-2.eclass changes
On 1/24/23 18:37, James Le Cuirot wrote: 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() { ACK -- Mike Pagano Gentoo Developer - Kernel Project E-Mail : mpag...@gentoo.org GnuPG FP : 52CC A0B0 F631 0B17 0142 F83F 92A6 DBEC 81F2 B137 Public Key : http://pgp.mit.edu/pks/lookup?search=0x92A6DBEC81F2B137&op=index
[gentoo-dev] [PATCH 1/1] linux-mod.eclass: Remove EAPI deprecated function call
As warned, remove EAPI deprecated use of econf being called in linux-mod_src_compile Bug: https://bugs.gentoo.org/340597 See: https://marc.info/?l=gentoo-dev&m=167069431328509 Signed-off-by: Mike Pagano --- eclass/linux-mod.eclass | 4 1 file changed, 4 deletions(-) diff --git a/eclass/linux-mod.eclass b/eclass/linux-mod.eclass index 6cf9969b1..482775edc 100644 --- a/eclass/linux-mod.eclass +++ b/eclass/linux-mod.eclass @@ -624,10 +624,6 @@ linux-mod_src_compile() { cd "${srcdir}" || die ln -s "${S}"/Module.symvers Module.symvers # no die for bug #888679 einfo "Preparing ${modulename} module" - if [[ -n ${ECONF_PARAMS} ]]; then - eqawarn "This package relies on the deprecated functionality of econf being called in linux-mod_src_compile (ECONF_PARAMS), which will go away in 30 days (20230107) (https://bugs.gentoo.org/340597)" - econf ${ECONF_PARAMS} - fi # This looks messy, but it is needed to handle multiple variables # being passed in the BUILD_* stuff where the variables also have -- 2.39.1 Mike Pagano Gentoo Developer - Kernel Project E-Mail : mpag...@gentoo.org GnuPG FP : 52CC A0B0 F631 0B17 0142 F83F 92A6 DBEC 81F2 B137 Public Key : http://pgp.mit.edu/pks/lookup?search=0x92A6DBEC81F2B137&op=index OpenPGP_0x92A6DBEC81F2B137.asc Description: OpenPGP public key OpenPGP_signature Description: OpenPGP digital signature
[gentoo-dev] [PATCH 1/1] linux-mod.eclass: Store compression ext in variable
When the kernel configuration contains the setting CONFIG_MODULE_COMPRESS_{GZIP,XZ,STD} we need to store the extension for a subsequent call to modinfo. Bug: https://bugs.gentoo.org/906303 Signed-off-by: Mike Pagano --- eclass/linux-mod.eclass | 11 ++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/eclass/linux-mod.eclass b/eclass/linux-mod.eclass index 0098dbcfc..0fe8d7da4 100644 --- a/eclass/linux-mod.eclass +++ b/eclass/linux-mod.eclass @@ -149,6 +149,12 @@ # @DESCRIPTION: # It's a read-only variable. It contains the extension of the kernel modules. +# @ECLASS_VARIABLE: KV_OBJ_COMPRESS_EXT +# @INTERNAL +# @DESCRIPTION: +# Read-only variable. It contains the compression extension of the kernel +# modules (.xz, .gz, .zst) + case ${EAPI} in 7|8) ;; *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; @@ -385,7 +391,7 @@ generate_modulesd() { # OK so now if we have got this far, then we know we want to continue # and generate the modprobe.d file. - module_modinfo="$(modinfo -p ${currm_path}.${KV_OBJ})" + module_modinfo="$(modinfo -p ${currm_path}.${KV_OBJ}${KV_OBJ_COMPRESS_EXT})" module_config="${T}/modulesd-${currm}" ebegin "Preparing file for modprobe.d" @@ -684,6 +690,7 @@ linux-mod_src_install() { if linux_chkconfig_present MODULE_COMPRESS_XZ; then xz -T$(makeopts_jobs) --memlimit-compress=50% -q ${modulename}.${KV_OBJ} || die "Compressing ${modulename}.${KV_OBJ} with xz failed" doins ${modulename}.${KV_OBJ}.xz + KV_OBJ_COMPRESS_EXT=".xz" elif linux_chkconfig_present MODULE_COMPRESS_GZIP; then if type -P pigz &>/dev/null ; then pigz -p$(makeopts_jobs) ${modulename}.${KV_OBJ} || die "Compressing ${modulename}.${KV_OBJ} with pigz failed" @@ -691,9 +698,11 @@ linux-mod_src_install() { gzip ${modulename}.${KV_OBJ} || die "Compressing ${modulename}.${KV_OBJ} with gzip failed" fi doins ${modulename}.${KV_OBJ}.gz + KV_OBJ_COMPRESS_EXT=".gz" elif linux_chkconfig_present MODULE_COMPRESS_ZSTD; then zstd -T$(makeopts_jobs) ${modulename}.${KV_OBJ} || "Compressing ${modulename}.${KV_OBJ} with zstd failed" doins ${modulename}.${KV_OBJ}.zst + KV_OBJ_COMPRESS_EXT=".zst" else doins ${modulename}.${KV_OBJ} fi -- 2.39.3 -- Mike Pagano Gentoo Developer - Kernel Project E-Mail : mpag...@gentoo.org GnuPG FP : 52CC A0B0 F631 0B17 0142 F83F 92A6 DBEC 81F2 B137 Public Key : http://pgp.mit.edu/pks/lookup?search=0x92A6DBEC81F2B137&op=index OpenPGP_0x92A6DBEC81F2B137.asc Description: OpenPGP public key OpenPGP_signature Description: OpenPGP digital signature
[gentoo-dev] Migration from linux-mod.eclass to linux-mod-r1.eclass
Hello, Thanks to the amazing work by Ionen I'd like to start the process to request all consumers of linux-mod.eclass to start migrating to linux-mod-r1.eclass. Tracker bug is up and I will start to add consumers. If anyone needs a hand with the migration I am happy to help. Details on linux-mod-r1.eclass can be found here[1] and the tracker bug can be found here[2]. [1] https://github.com/gentoo/gentoo/pull/31154/commits/e4b57b51b30fd348da8997aae6e4f651a0a132ce [2] https://bugs.gentoo.org/908692 Mike -- Mike Pagano Gentoo Developer - Kernel Project E-Mail : mpag...@gentoo.org GnuPG FP : 52CC A0B0 F631 0B17 0142 F83F 92A6 DBEC 81F2 B137 Public Key : http://pgp.mit.edu/pks/lookup?search=0x92A6DBEC81F2B137&op=index
[gentoo-dev] Last rites: app-crypt/tpm-emulator
# Mike Pagano (2023-06-18) # Last upstream activity in 2018, EAPI 7. # See app-crypt/swtpm for an alternative. # Removal on 2023-07-18. Bug #768960, #794547. app-crypt/tpm-emulator
Re: [gentoo-dev] [PATCH] linux-mod-r1.eclass: warn if KV does not match virtual/dist-kernel
On 1/30/24 06:07, Andrew Ammerlaan wrote: From 3a3a69379650af341fa318d8f2d1533885b52d0e Mon Sep 17 00:00:00 2001 From: Andrew Ammerlaan Date: Mon, 29 Jan 2024 10:58:11 +0100 Subject: [PATCH] linux-mod-r1.eclass: warn if KV does not match virtual/dist-kernel We have no mechanism to ensure that we build the kernel modules for the same kernel version as the version we will record in the virtual/dist-kernel subslot dependency. This does not fix this problem, but it does add a warning to ensure users are aware that, for example, built binpkgs are going to have wrong dependency metadata. Bug: https://bugs.gentoo.org/923025 Signed-off-by: Andrew Ammerlaan --- eclass/linux-mod-r1.eclass | 20 +++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/eclass/linux-mod-r1.eclass b/eclass/linux-mod-r1.eclass index 67a4b64eb4815..8d384c2b30c88 100644 --- a/eclass/linux-mod-r1.eclass +++ b/eclass/linux-mod-r1.eclass @@ -1,4 +1,4 @@ -# Copyright 2023 Gentoo Authors +# Copyright 2023-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: linux-mod-r1.eclass @@ -650,6 +650,24 @@ _modules_prepare_kernel() { fi linux-info_pkg_setup + + if use dist-kernel && + ! has_version "~virtual/dist-kernel-${KV_MAJOR}.${KV_MINOR}.${KV_PATCH}" + then + ewarn + ewarn "The kernel modules in ${CATEGORY}/${PN} are being built for" + ewarn "kernel version ${KV_FULL}. But this does not match the" + ewarn "installed version of virtual/dist-kernel." + ewarn + ewarn "If this is not intentional, the problem may be corrected by" + ewarn "using \"eselect kernel\" to set the default kernel version to" + ewarn "the same version as the installed version of virtual/dist-kernel." + ewarn + ewarn "If the distribution kernel is being downgraded, ensure that" + ewarn "virtual/dist-kernel is also downgraded to the same version" + ewarn "before rebuilding external kernel modules." + ewarn + fi } # @FUNCTION: _modules_prepare_sign LGTM -- Mike Pagano Gentoo Developer - Kernel Project E-Mail : mpag...@gentoo.org GnuPG FP : 52CC A0B0 F631 0B17 0142 F83F 92A6 DBEC 81F2 B137 Public Key : http://pgp.mit.edu/pks/lookup?search=0x92A6DBEC81F2B137&op=index
Re: [gentoo-dev] default mta
On Wednesday, December 26, 2012 09:46:17 AM Eray Aslan wrote: > The current default mta in gentoo - ssmtp - has a more or less dead > upstream and has some outstanding bugs. It is prudent to change our > default mta. > > Both mail-mta/nullmailer and mail-mta/msmtp are lightweight good mtas. > Both packages have active development and provide AUTH and SSL/TLS > support. > > Our current mta list is: > mail-mta/ssmtp > mail-mta/courier > rest of the list > ... > > As net-mail herd, we would like to have the following mta list: > mail-mta/nullmailer > mail-mta/msmtp > mail-mta/ssmtp > rest of the list > ... > > If there are no objections, the above change will be committed in ~10 > days. > > Would it be prudent to coordinate Gentoo documentation changes with the above? -- Mike Pagano Gentoo Developer - Kernel Project Team Lead - Gentoo Sources E-Mail : mpag...@gentoo.org GnuPG FP : EEE2 601D 0763 B60F 848C 9E14 3C33 C650 B576 E4E3 Public Key : http://pgp.mit.edu:11371/pks/lookup?search=0xB576E4E3&op=index
Re: [gentoo-dev] January stabilization candidates
13.01.2013 02:49, "Paweł Hajdan, Jr." wrote: >Please review attached automatically generated stabilizatiocandidates >for January. > > # mpagano kernel-misc sys-kernel/linux-docs-3.6. I'll do this for the just committed version linux-docs-3.6.11. What I will do for now on is change our stabilization procedure for kernels to include opening up a bug to stabilize the corresponding linux-docs version. So going forward, you can exclude this and hopefully we'll do a better job of keeping this package stable. -- Mike Pagano Gentoo Developer - Kernel Project E-Mail : mpag...@gentoo.org GnuPG FP : EEE2 601D 0763 B60F 848C 9E14 3C33 C650 B576 E4E3 Public Key : http://pgp.mit.edu:11371/pks/lookup?search=0xB576E4E3&op=index
Re: [gentoo-dev] January stabilization candidates
On Wednesday, January 16, 2013 07:14:12 PM Tomáš Chvátal wrote: > Dne So 12. ledna 2013 14:49:52, Paweł Hajdan, Jr. napsal(a): > > Please review attached automatically generated stabilization candidates > > for January. > > > > I don't want to annoy people with automatically filed bugs, and at the > > same time I also received lots of positive feedback about the effort to > > keep the stable tree more up-to-date. > > > > I think the best way to proceed is to listen to that feedback and > > continue the effort, while also keeping an updated list of exclusions > > for packagers/herds that are actively stabilized by maintainers. > > > > Paweł > > Hmm, nice idea but how about expanding metadata.xml with something like info > for stabilisations so they can be automatically grabbed for it. Quite few > software is just nice enough that it can go automatically for stable in 30 > days, and someone could just go then and open new bugs (with assigned arches) > based on it (of course it expects brain from the guy reporting it that he > checks if there are no open bugs). > > Because mails to -dev are frankly annoying. :-) > > Tom Tom, This is a better idea. I also believe this one can be auto stablized after 30 days. It's just kernel documentation. -- Mike Pagano Gentoo Developer - Kernel Project Team Lead - Gentoo Sources E-Mail : mpag...@gentoo.org GnuPG FP : EEE2 601D 0763 B60F 848C 9E14 3C33 C650 B576 E4E3 Public Key : http://pgp.mit.edu:11371/pks/lookup?search=0xB576E4E3&op=index
Re: [gentoo-dev] Re: Gentoo Hangouts
On Mon, Jun 24, 2013 at 12:04:04PM +0100, Markos Chandras wrote: > On 24 June 2013 11:54, Michael Palimaka wrote: > > On 24/06/2013 07:30, Pavlos Ratis wrote: > >> > >> That's why I'd like to propose Gentoo Hangouts. Gentoo Hangouts will > >> be Google+ video Hangouts(video calls) held by teams or developers > >> independent of a team. The main goal is to have the teams introduce > >> themselves and discuss about different issues in their Gentoo-related > >> projects. > > > > > > Thanks for taking the time and initiative to work on something new, I am > > sure it will prove interesting. > > > > It is the response that confuses me - I don't understand why everyone is > > rushing to shut it down before it even begins. For those that are not > > interested in the idea of a video hangout, just don't use it and move on - > > simple. > > > > > > I like the idea. It might help bring developers and users closer. > > -- I can't see the harm, and people who don't have the time, interest or social skills can certainly not join. I worked from a home office for 7 years and used this all the time. Sometimes it helps to realize that the people on the other end of the wire are just that: people. I've seen behaviors change among team members for the better. Plus, maybe I can learn how to pronouce more than half of your names. :)
Re: [gentoo-dev] Proper distribution integration of kernel *-sources, patches and configuration.
On Monday, July 01, 2013 01:52:10 PM Rick Zero_Chaos Farina wrote: > On 07/01/2013 01:35 PM, Tom Wijsman wrote: > > On Mon, 01 Jul 2013 12:20:09 -0400 > > > > "Rick \"Zero_Chaos\" Farina" wrote: > >> Some patches are reasonably easy to combine, such as genpatches and > >> aufs. Some patches are difficult to combine, such as hardened and *. > >> When you combine hardened patches and aufs (for example) you need > >> extra patches. I would be THRILLED to see the number of sources cut > >> down, but hardened-sources must be it's own thing (that said, I'll > >> personally maintain the aufs patches for hardened if they wanted to > >> add a USE=aufs flag). > > > > Yes, gave it as an quick example but I indeed remember from going > > through the sources ebuilds that hardened ebuilds do quite some things. > > I think the downside from extending genpatches is that hardened-sources > > can no longer rely on it, but we'll have to see that as we go forward. > > > > I don't think that apart from hardened the optional patches on their own > > are hard to combine; they each have their own separate goal, I don't > > see them conflict on anything. If it happens once in a while, we can > > still maintain them to work together. > > Hardened has K_WANT_GENPATCHES="base" which means it already doesn't > take the extra patches. We could either introduce a new flag for your > patches like K_WANT_GENPATCHES="base extra geek" or more likely make > each one with their own name so that hardened et al can take what they > like and leave the rest. Ok, so I have talked to Tom about this on IRC and it's probably prudent to chime in. I have gotten many complaints in the past that there is not enough in g-s, and, of course, I've gotten complaints about there being too much. I have 'relaxed' a tad about what I think should be in g-s, but maybe it has gone a bit farther than I wanted it too. I would like to see a "-experimental" use flag and base,extras,geek (whatever) so that g-s goes back to what it's original goal was with nothing non-upstream unless the user does a configuration change themselves. This will actually help us solve both issues. 1) it will allow us to pull g-s back to it's original goal as a minimal kernel sources with upstream only patches. 2) we can carry some patches from upstreams trees that possibly aren't yet in -next, or not yet accepted to mainline but do provide some benefit to a smaller group of our users. (Thinking about our thinkpad patches) -- Mike Pagano Gentoo Developer - Kernel Project E-Mail : mpag...@gentoo.org GnuPG FP : EEE2 601D 0763 B60F 848C 9E14 3C33 C650 B576 E4E3 Public Key : http://pgp.mit.edu:11371/pks/lookup?search=0xB576E4E3&op=index
[gentoo-dev] Vanilla sources stabilization policy change
tl;dr Summary Team members working alongside upstream (and downstream) developer Greg k-h have decided to no longer request stabilization of the vanilla sources kernel. Team members and arch teams (understandably) are unable to keep up with the 1-2 weekly kernel releases, and therefore will now direct users to always run the latest vanilla sources, or to run gentoo-sources for a fully Gentoo supported kernel. We will continue to do our best effort to request and get stabililzed g-s versions. Details Some facts: 1. Upstream release rate is now a much higher 1-2 kernels a week. 2. Very frequently, these releases contain security fixes. 3. This rate of release puts arch teams in a difficult position, since it is unsustainable to try to keep up to date with stabilization 4. By continuing the policy of providing a stable vanilla kernel version, Gentoo is giving a false sense of security to its users, since by the time the kernel does get stabilized, a newer version with more security fixes is almost always already released Eventually, we will be updating our project pages to reflect these changes. As always with me, constructive dialog concerning this policy is welcome. Original thread of discussion: http://thread.gmane.org/gmane.linux.gentoo.kernel/697 -- Mike Pagano Gentoo Developer - Kernel Project E-Mail : mpag...@gentoo.org GnuPG FP : EEE2 601D 0763 B60F 848C 9E14 3C33 C650 B576 E4E3 Public Key : http://pgp.mit.edu:11371/pks/lookup?search=0xB576E4E3&op=index
Re: [gentoo-dev] Vanilla sources stabilization policy change
On Saturday, July 27, 2013 09:58:08 AM Rich Freeman wrote: > > Unless it were stable-masked it would create the exact same problem. > ^^ This -- Mike Pagano Gentoo Developer - Kernel Project E-Mail : mpag...@gentoo.org GnuPG FP : EEE2 601D 0763 B60F 848C 9E14 3C33 C650 B576 E4E3 Public Key : http://pgp.mit.edu:11371/pks/lookup?search=0xB576E4E3&op=index
[gentoo-dev] newsitem: Kernel Team vanilla-sources policy
All, Here is the vanilla-sources non stablizing policy news item. If all goes well, this will be committed to the tree on 08/07 UTC. Mike Title: vanilla-sources stabilization policy Author: Mike Pagano Content-Type: text/plain Posted: 2013-08-07 Revision: 1 News-Item-Format: 1.0 Display-If-Installed: sys-kernel/vanilla-sources The Gentoo Kernel Team will no longer be providing stable vanilla-sources kernels. All currently stabilized vanilla-sources versions will be dropped to ~arch. The Arch teams, via normal requests of the Kernel Team, will continue to stabilize gentoo-sources kernels upon request. This decision is based on the facts that upstream is now releasing approximately 1-2 vanilla- sources kernels a week. Arch teams, understandable, are unable to keep up with this rate of release. As most vanilla releases contain security fixes, the user who only runs stable vanilla-sources will consistently be behind and potentially at risk. For the latest upstream non Gentoo patched vanilla kernel, we recommend user add 'sys-kernel/vanilla-sources' to their package.accept_keywords file. Gentoo-sources will continue to be a tested and supported version for Gentoo users. Note: This news item only applies to gentoo-sources and vanilla-sources. Other kernels currently maintained in portage have their own policies and procedures in place today. -- Mike Pagano Gentoo Developer - Kernel Project E-Mail : mpag...@gentoo.org GnuPG FP : EEE2 601D 0763 B60F 848C 9E14 3C33 C650 B576 E4E3 Public Key : http://pgp.mit.edu:11371/pks/lookup?search=0xB576E4E3&op=index
Re: [gentoo-dev] newsitem: Kernel Team vanilla-sources policy
On Sunday, August 04, 2013 07:45:47 AM Rich Freeman wrote: > On Sun, Aug 4, 2013 at 7:16 AM, Ben de Groot wrote: > > On 4 August 2013 09:56, Alex Xu wrote: > >> Minor grammar/typographical errata: > >> snip Thanks, everyone for helping out. Here is the latest with some of the requested changes: Title: vanilla-sources stabilization policy Author: Mike Pagano Content-Type: text/plain Posted: 2013-08-07 Revision: 1 News-Item-Format: 1.0 Display-If-Installed: sys-kernel/vanilla-sources The Gentoo Kernel Team will no longer be providing stable vanilla-sources kernels. All currently stabilized vanilla-sources versions will be dropped to ~arch. The Arch teams, via normal requests of the Kernel Team, will continue to stabilize gentoo-sources kernels upon request. This decision is based on the facts that upstream is now releasing approximately 1-2 vanilla-sources kernels a week. Arch teams, understandably, are unable to keep up with this rate of release. As most vanilla releases contain security fixes, the user who only runs stable vanilla-sources will consistently be behind and potentially at risk. For the latest "upstream kernel unpatched by Gentoo" kernel, we recommend users add 'sys-kernel/vanilla-sources' to their package.accept_keywords file. gentoo-sources will continue to be a tested and supported version for Gentoo users. Note: This news item only applies to gentoo-sources and vanilla-sources. Other kernels currently maintained in portage have their own policies and procedures in place toda -- Mike Pagano Gentoo Developer - Kernel Project E-Mail : mpag...@gentoo.org GnuPG FP : EEE2 601D 0763 B60F 848C 9E14 3C33 C650 B576 E4E3 Public Key : http://pgp.mit.edu:11371/pks/lookup?search=0xB576E4E3&op=index
Re: [gentoo-dev] newsitem: Kernel Team vanilla-sources policy
On Sunday, August 04, 2013 07:24:23 PM Alex Xu wrote: > wat. Possibly intended: > > For the latest upstream kernel unpatched by Gentoo Not intended --- Title: vanilla-sources stabilization policy Author: Mike Pagano Content-Type: text/plain Posted: 2013-08-07 Revision: 1 News-Item-Format: 1.0 Display-If-Installed: sys-kernel/vanilla-sources The Gentoo Kernel Team will no longer be providing stable vanilla-sources kernels. All currently stabilized vanilla-sources versions will be dropped to ~arch. The Arch teams, via normal requests of the Kernel Team, will continue to stabilize gentoo-sources kernels upon request. This decision is based on the facts that upstream is now releasing approximately 1-2 vanilla-sources kernels a week. Arch teams, understandably, are unable to keep up with this rate of release. As most vanilla releases contain security fixes, the user who only runs stable vanilla-sources will consistently be behind and potentially at risk. For the latest "upstream kernel unpatched by Gentoo", we recommend users add 'sys-kernel/vanilla-sources' to their package.accept_keywords file. gentoo-sources will continue to be a tested and supported version for Gentoo users. Note: This news item only applies to gentoo-sources and vanilla-sources. Other kernels currently maintained in portage have their own policies and procedures in place today. -- Mike Pagano Gentoo Developer - Kernel Project E-Mail : mpag...@gentoo.org GnuPG FP : EEE2 601D 0763 B60F 848C 9E14 3C33 C650 B576 E4E3 Public Key : http://pgp.mit.edu:11371/pks/lookup?search=0xB576E4E3&op=index
Re: [gentoo-dev] local repo kernel ebuild search for tar.bz2 instead of tar.xz
On Thu, Jun 26, 2014 at 07:37:40PM +0300, Kfir Lavi wrote: >Hi, >I have copied ebuild from sys-kernel/hardened-sources to my local >repository, in order to patch the sources. >I didn't change the ebuild for now, but repoman manifest does not work. >It tries to download files with extension tar.bz2 and not tar.xz. >If I delete my local copy of the ebuild, emerge will work ok from the >global portage tree. >I think bug [1]https://bugs.gentoo.org/show_bug.cgi?id=421721 >is related to my problem, as it changed the extension of tar archives >from bz2 to xz. >Maybe there is a global flag I need to specify in order to inherit >gentoo main tree behaviour? >Regards, >Kfir > > References > >1. https://bugs.gentoo.org/show_bug.cgi?id=421721 Check that you are using the latest kernel-2.eclass in your local repo. http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/eclass/kernel-2.eclass?view=log Diff to previous 1.278 Revision 1.279 - (view) (download) (annotate) - [select for diffs] Sat Mar 9 21:05:50 2013 UTC (15 months, 2 weeks ago) by tomwij Kernel sources and (gen)patches now use xz instead of bz2. Bug #421721 -- Mike Pagano Gentoo Developer - Kernel Project Gentoo Sources - Lead E-Mail : mpag...@gentoo.org GnuPG FP : EEE2 601D 0763 B60F 848C 9E14 3C33 C650 B576 E4E3 Public Key : http://pgp.mit.edu:11371/pks/lookup?search=0xB576E4E3&op=index
Re: [gentoo-dev] seeds, GLEPs, and projects
On 9/21/06, Simon Stelling <[EMAIL PROTECTED]> wrote: Ciaran McCreesh wrote: > Huge amounts of time, effort and users. How much arch team time was > spent fixing genkernel? How much time was spent fixing the OS X mess? > How many users did we lose as a result of all the QA screwups? Eh, I wanted answers, not more questions :P > As much as I hate relying upon slashdot for anything reasonable at all, > an awful lot of people in that thread were suggesting that more time be > spent on QA and fixing existing bugs and much less on fancy new > things... These users are ignoring the fact that time is not the only and most important factor. Motivation is far more important IMO, and it's pretty hard to get the motivation together to test 60 packages instead of tinkering around with a new idea. At least for me it often is. -- Kind Regards, Simon Stelling Gentoo/AMD64 developer -- gentoo-dev@gentoo.org mailing list Maybe a recruiting drive to help with the maintenance. A typical business brings on new blood and assigns them just that role to free up more senior developers for more complicated projects. New developers should definitely meet a standard, but the possibility of bringing developers with energy and potential to assist in maintenance might be worth a consideration. -- gentoo-dev@gentoo.org mailing list
Re: [gentoo-dev] treecleaner removals
On 9/28/06, Mark Stier <[EMAIL PROTECTED]> wrote: How about entering the removed ebuilds into bugzilla under an adequate section? -- gentoo-dev@gentoo.org mailing list In the event of tree booting, you have the option to maintain the ebuild in an overlay such as sunrise[1]. Or seeking out some interested party to do so for you. [1]http://www.gentoo.org/proj/en/sunrise/ -- gentoo-dev@gentoo.org mailing list
Re: [gentoo-dev] Gentoo World Domination. a 10 step guide
On 10/4/06, Chris Gianelloni <[EMAIL PROTECTED]> wrote: On Wed, 2006-10-04 at 12:21 -0700, Donnie Berkholz wrote: > Donnie Berkholz wrote: > > Chris Gianelloni wrote: > >> Now, perhaps what everyone would like, instead, would be status reports > >> *where necessary* from certain projects? > >> > >> In fact, the council has been discussing asking a few projects about the > >> status on some of their tasks. The main reason for this is for > >> communications purposes. Basically, we'd just get a "Hey, where are you > >> at on $x?" response from the teams. > >> > >> I don't *want* to drown projects in bureaucracy and paperwork. I want > >> them to *accomplish* things, instead. > > > > I really like the concept of answering questions rather than giving > > arbitrary reports. The problem is, sometimes nobody outside your project > > knows the right questions to ask. > > I was thinking more about this. What if, instead of these periodic > status reports, you just send out a note when something interesting > happens? There's no point in holding it back till your monthly required > report, and it saves the trouble of the report when nothing's happening. That's really a good idea. When I was writing, I was thinking more along the lines of things like: What's the status of bugs getting updated? What's the status of anonsvn/anoncvs? What's the status of QA's policy document? These are things that either are interesting to a large number of developers, and easier to answer once rather than 300 times, or things the council itself has asked a group to do based on one of our decisions. Of course, we could/would take ideas for things to ask, and again, all we need really is something like this (mock) answer: "Well, we have all the hardware in place and have gotten access to the systems. We've installed the OS and setup the main databases, but we're still having some issues with the virtual IP scheme, and that's slowing us down on getting this implemented." That's it. No long "report" or anything is necessary. Just a simple, short few sentences on the current status is all that's really needed for the long ongoing projects. For other things, like, xorg 7.1 going stable or KDE 3.5.5 being unmasked, a simple announcement from the team when it happens should really cover it. That isn't even necessary from most projects, as they simply do maintenance tasks which don't really need an announcement. -- Chris Gianelloni Release Engineering Strategic Lead Alpha/AMD64/x86 Architecture Teams Games Developer/Council Member/Foundation Trustee Gentoo Foundation How about something in the "planet" format that where each group reporting status could do so at their schedule when they feel an update is necessary or warrented. Then users could just read the website for the latest status updates. There are a few "hot" items many people are interested in such as kde or gnome stablization, for example. A simple line like "Don't expect KDE 5.0 to go stable before the end of the year" provides transparency and a bit of communication to the user community. -- gentoo-dev@gentoo.org mailing list
Re: [gentoo-dev] Re: 2.6.18 going stable in 1 week
On 10/20/06, Daniel Drake <[EMAIL PROTECTED]> wrote: Christian Faulhammer wrote: > Announce it here (or -core) which needs a fix and then just commit the > fix if it is trivial and there has been no reaction. I think you didn't grasp the problem exactly. There are a large number of packages which build against the kernel and do not get much attention from their maintainers. To avoid too many sharp objects coming in my direction when a new kernel goes stable, I spend a lot of time providing fixes for these packages. The problem is that this (i.e. producing the fixes) is a big waste of time on my part, I'd rather work on real kernel stuff which is lagging behind. Daniel -- gentoo-dev@gentoo.org mailing list This seems to me like a good opportunity to engage the arch teams for some assistance. -- gentoo-dev@gentoo.org mailing list
Re: [gentoo-dev] New ALSA maintainers
On 3/28/07, Daniel Drake <[EMAIL PROTECTED]> wrote: < snip > ...here are the diffs of the latest alsa development release vs the latest kernel development release: < snip> Just a user opinion here, but I find the need to use unstable alsa-driver to solve a bug every now and then. This procedure would be more complicated if I had to run a development kernel to solve a sound problem. -- gentoo-dev@gentoo.org mailing list
Re: [gentoo-dev] Downtime: lists.gentoo.org migration
On Thursday 03 January 2008 07:51:35 pm Robin H. Johnson wrote: < snip > > I'm aiming to do the bulk of the changeover around 05h00 UTC Sunday (Jan > 6th) morning, and all that should be visible is some delays in mail > processing. > Thanks to you and everyone in your team for their time and efforts. It is appreciated. -- Mike Pagano [EMAIL PROTECTED] GnuPG FP : EEE2 601D 0763 B60F 848C 9E14 3C33 C650 B576 E4E3 -- [EMAIL PROTECTED] mailing list
[gentoo-dev] 2.6.30 stable plans
I'm planning to request the stabling of gentoo-sources-2.6.30 on July 22nd, 1 week from now. We have no known regressions in the kernel. Regressions in external packages in the stable tree are tracked in bug #277944. If any arise, please make every effort to fix these. Thanks, Mike Pagano
Re: [gentoo-dev] 2.6.30 stable plans
On Wed, Jul 15, 2009 at 10:28:18AM -0400, Mike Pagano wrote: > I'm planning to request the stabling of gentoo-sources-2.6.30 on July > 22nd, 1 week from now. We have no known regressions in the kernel. > > > Thanks, > Mike Pagano > Due to serious patches released, the new plan is too release a gentoo-sources-2.6.30-r4 which contains the latest 2.6.30.x from upstream and then ask for stable about a week after that. Thanks, Mike