Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 729932 - sys-libs/db:6.0 (mips) keyword request
Summary: sys-libs/db:6.0 (mips) keyword request
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Keywording (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo's Team for Core System packages
URL:
Whiteboard:
Keywords: KEYWORDREQ
Depends on:
Blocks:
 
Reported: 2020-06-27 19:06 UTC by Kent Fredric (IRC: kent\n) (RETIRED)
Modified: 2021-05-17 21:12 UTC (History)
1 user (show)

See Also:
Package list:
sys-libs/db-6.0.35-r4
Runtime testing required: ---
nattka: sanity-check+


Attachments
db-mips.txt (db.txt,4.10 KB, text/plain)
2020-06-27 19:06 UTC, Kent Fredric (IRC: kent\n) (RETIRED)
no flags Details
emerge --info from running MIPS system 20210515 (ip30-emerge-info-20210515.txt,5.25 KB, text/plain)
2021-05-15 20:00 UTC, Joshua Kinard
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Kent Fredric (IRC: kent\n) (RETIRED) gentoo-dev 2020-06-27 19:06:10 UTC
Created attachment 646870 [details]
db-mips.txt

- dev-lang/perl currently depends on sys-libs/db
- dev-lang/perl is currently keyworded for ~mips

Subsequently, its pertinent that sys-libs/db:6.0 be eventually keyworded.

However, it seems this has gone on like this for too long, and its subsequently a giant mess to fix.

I got digging into it, starting with an explicit keywording of sys-libs/db:6.0, and then using a repoman (-d -e y) driven process to find out what breaks, but after it exceeded 100 items (passing through icedtea-bin, and qt in the process), I concluded that I don't have the tools to do this correctly.

Deep in the stack I found annoying problems I couldn't make repoman shut up about, so I'm guessing I'm missing some profile love in repoman.

eg:

> dependency.badinexp media-sound/pulseaudio/pulseaudio-13.0.ebuild: PDEPEND: ~mips(default/linux/mips/17.0/mipsel/multilib/n32) ['>=media-plugins/alsa-plugins-1.0.27-r1[pulseaudio,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_riscv_lp64d(-)?,abi_riscv_lp64(-)?,abi_s390_32(-)?,abi_s390_64(-)?]']
> dependency.badinexp media-sound/pulseaudio/pulseaudio-13.0.ebuild: PDEPEND: ~mips(default/linux/mips/17.0/mipsel/multilib/n64) ['>=media-plugins/alsa-plugins-1.0.27-r1[pulseaudio,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_riscv_lp64d(-)?,abi_riscv_lp64(-)?,abi_s390_32(-)?,abi_s390_64(-)?]']
> dependency.badinexp media-sound/pulseaudio/pulseaudio-13.0.ebuild: PDEPEND: ~mips(default/linux/mips/17.0/mipsel/multilib/o32) ['>=media-plugins/alsa-plugins-1.0.27-r1[pulseaudio,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_riscv_lp64d(-)?,abi_riscv_lp64(-)?,abi_s390_32(-)?,abi_s390_64(-)?]']
> dependency.badinexp media-sound/pulseaudio/pulseaudio-13.0.ebuild: PDEPEND: ~mips(default/linux/mips/17.0/mipsel/n32) ['>=media-plugins/alsa-plugins-1.0.27-r1[pulseaudio,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_riscv_lp64d(-)?,abi_riscv_lp64(-)?,abi_s390_32(-)?,abi_s390_64(-)?]']
> dependency.badinexp media-sound/pulseaudio/pulseaudio-13.0.ebuild: PDEPEND: ~mips(default/linux/mips/17.0/mipsel/n64) ['>=media-plugins/alsa-plugins-1.0.27-r1[pulseaudio,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_riscv_lp64d(-)?,abi_riscv_lp64(-)?,abi_s390_32(-)?,abi_s390_64(-)?]']
> dependency.badinexp media-sound/pulseaudio/pulseaudio-13.0.ebuild: PDEPEND: ~mips(default/linux/mips/17.0/mipsel/o32) ['>=media-plugins/alsa-plugins-1.0.27-r1[pulseaudio,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_riscv_lp64d(-)?,abi_riscv_lp64(-)?,abi_s390_32(-)?,abi_s390_64(-)?]']
> dependency.badinexp media-sound/pulseaudio/pulseaudio-13.0.ebuild: PDEPEND: ~mips(default/linux/mips/17.0/multilib/n32) ['>=media-plugins/alsa-plugins-1.0.27-r1[pulseaudio,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_riscv_lp64d(-)?,abi_riscv_lp64(-)?,abi_s390_32(-)?,abi_s390_64(-)?]']
> dependency.badinexp media-sound/pulseaudio/pulseaudio-13.0.ebuild: PDEPEND: ~mips(default/linux/mips/17.0/multilib/n64) ['>=media-plugins/alsa-plugins-1.0.27-r1[pulseaudio,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_riscv_lp64d(-)?,abi_riscv_lp64(-)?,abi_s390_32(-)?,abi_s390_64(-)?]']
> dependency.badinexp media-sound/pulseaudio/pulseaudio-13.0.ebuild: PDEPEND: ~mips(default/linux/mips/17.0/multilib/o32) ['>=media-plugins/alsa-plugins-1.0.27-r1[pulseaudio,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_riscv_lp64d(-)?,abi_riscv_lp64(-)?,abi_s390_32(-)?,abi_s390_64(-)?]']
> dependency.badinexp media-sound/pulseaudio/pulseaudio-13.0.ebuild: PDEPEND: ~mips(default/linux/mips/17.0/n32) ['>=media-plugins/alsa-plugins-1.0.27-r1[pulseaudio,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_riscv_lp64d(-)?,abi_riscv_lp64(-)?,abi_s390_32(-)?,abi_s390_64(-)?]']
> dependency.badinexp media-sound/pulseaudio/pulseaudio-13.0.ebuild: PDEPEND: ~mips(default/linux/mips/17.0/n64) ['>=media-plugins/alsa-plugins-1.0.27-r1[pulseaudio,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_riscv_lp64d(-)?,abi_riscv_lp64(-)?,abi_s390_32(-)?,abi_s390_64(-)?]']
> dependency.badinexp media-sound/pulseaudio/pulseaudio-13.0.ebuild: PDEPEND: ~mips(default/linux/mips/17.0/o32) ['>=media-plugins/alsa-plugins-1.0.27-r1[pulseaudio,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_riscv_lp64d(-)?,abi_riscv_lp64(-)?,abi_s390_32(-)?,abi_s390_64(-)?]']

And I really didn't want to CC 100+ different maintainers on a huge monobug.

So I'll file this bug and hope base-system can push it forwards in some way, even if it turns into punting it onto dependents with their own bugs.

I'm also prematurely CCing mips on this, because some insight into this mess is needed on their part, and maybe they need to package.use.mask a whole lot of things to bring this back into a workable situation.

( I was actually hoping to put together a worklist for prefix, but their job is even worse for this, and mips turned up in the process, and it turned up as a lower hanging fruit to target first ... )

If we can't see anyway to make headway on this, it *might* be time to start thinking about de-mipsing dev-lang/perl, but based on what I see, that's basically a "kill off mips" situation.

But I have a strong feeling that the data I collected using repoman is critically flawed for reasons I don't yet understand.

Attached is as far as I got before I gave up on working out the dependencies that also needed keywording, with a stats blob at the bottom with maintainers in, so you can understand *why* I gave up.
Comment 1 Mike Gilbert gentoo-dev 2020-06-28 02:18:49 UTC
> If we can't see anyway to make headway on this, it *might* be time to start thinking about de-mipsing dev-lang/perl, but based on what I see, that's basically a "kill off mips" situation.

Does dev-lang/perl actually need db-6.0? Older versions of db are keyworded on mips, and they are not going to be removed for the foreseeable future.

Also, pkgcheck doesn't complain when I add '~mips' to sys-libs/db-6.0.35-r2.

repoman complains about all version when I run it with "-e y". I think masking the java USE flag would suffice.
Comment 2 Kent Fredric (IRC: kent\n) (RETIRED) gentoo-dev 2020-06-28 08:02:56 UTC
(In reply to Mike Gilbert from comment #1)
> > If we can't see anyway to make headway on this, it *might* be time to start thinking about de-mipsing dev-lang/perl, but based on what I see, that's basically a "kill off mips" situation.
> 
> Does dev-lang/perl actually need db-6.0? Older versions of db are keyworded
> on mips, and they are not going to be removed for the foreseeable future.
> 
> Also, pkgcheck doesn't complain when I add '~mips' to sys-libs/db-6.0.35-r2.
> 
> repoman complains about all version when I run it with "-e y". I think
> masking the java USE flag would suffice.

Sure, but I am just thinking about the future, hence, there's no panic here. But seeing all the other major arches have it keyworded, I'm just kicking the tires.

*Apparently* the `java` use flag is *already* masked.

profiles/arch/mips/use.mask:# masked because of silly java deps with gnome (we have no jre on mips)
profiles/arch/mips/use.mask:# There is no java in this profile (if there is it must be available). Without
profiles/arch/mips/use.mask:java

So Repoman is being utterly stupid and not helping at all. 

(Or maybe there are mips profiles that don't properly inherit mips/use.mask? idk, the whole thing is a mess)
Comment 3 NATTkA bot gentoo-dev 2020-06-28 08:04:42 UTC Comment hidden (obsolete)
Comment 4 NATTkA bot gentoo-dev 2021-04-29 08:16:31 UTC Comment hidden (obsolete)
Comment 5 NATTkA bot gentoo-dev 2021-04-29 08:20:30 UTC Comment hidden (obsolete)
Comment 6 NATTkA bot gentoo-dev 2021-04-29 08:52:33 UTC Comment hidden (obsolete)
Comment 7 NATTkA bot gentoo-dev 2021-04-29 09:08:35 UTC
All sanity-check issues have been resolved
Comment 8 Joshua Kinard gentoo-dev 2021-05-15 19:39:40 UTC
The dependency calculation seems off when run outside of a MIPS environment.  Likely a bug somewhere in our profiles setup.  This is what I get on my SGI Octane system when I keyword sys-libs/db-6.0.35-r4:

# emerge =sys-libs/db-6.0.35-r4 -pv

These are the packages that would be merged, in order:

Calculating dependencies                            ... done!
[ebuild  NS    ] sys-libs/db-6.0.35-r4:6.0::gentoo [4.8.30-r4:4.8::gentoo] USE="-cxx -doc -examples (-java) -tcl -test" 0 KiB

Total: 1 package (1 in new slot), Size of downloads: 0 KiB

So it looks easy to test-compile this.  I'll do that and add our keyword if it compiles cleanly.  I don't know of a good test-case, though so a compile test will have to do.
Comment 9 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2021-05-15 19:42:06 UTC
(In reply to Joshua Kinard from comment #8)
> The dependency calculation seems off when run outside of a MIPS environment.
> Likely a bug somewhere in our profiles setup.  This is what I get on my SGI
> Octane system when I keyword sys-libs/db-6.0.35-r4:

Do you mean the missing indication that it's unkeyworded? That seems odd to me too.

Are you sure there's no weird e.g. package.keywords in /etc/portage/* or similar?

grep -rsin "sys-libs/db" /etc/portage
emerge --info

> 
> # emerge =sys-libs/db-6.0.35-r4 -pv
> 
> These are the packages that would be merged, in order:
> 
> Calculating dependencies                            ... done!
> [ebuild  NS    ] sys-libs/db-6.0.35-r4:6.0::gentoo [4.8.30-r4:4.8::gentoo]
> USE="-cxx -doc -examples (-java) -tcl -test" 0 KiB
> 
> Total: 1 package (1 in new slot), Size of downloads: 0 KiB
> 
> So it looks easy to test-compile this.  I'll do that and add our keyword if
> it compiles cleanly.  I don't know of a good test-case, though so a compile
> test will have to do.

Run the test suite with FEATURES=test? (do --with-test-deps without the FEATURES first)
Comment 10 Joshua Kinard gentoo-dev 2021-05-15 19:57:02 UTC
(In reply to Sam James from comment #9)
> (In reply to Joshua Kinard from comment #8)
> > The dependency calculation seems off when run outside of a MIPS environment.
> > Likely a bug somewhere in our profiles setup.  This is what I get on my SGI
> > Octane system when I keyword sys-libs/db-6.0.35-r4:
> 
> Do you mean the missing indication that it's unkeyworded? That seems odd to
> me too.
> 
> Are you sure there's no weird e.g. package.keywords in /etc/portage/* or
> similar?
> 
> grep -rsin "sys-libs/db" /etc/portage

Nothing returned for this command.  That means the USE masking for us is happening at the profile level.  I suspect the Qt and other GUI-related packages were getting dragged in by the 'java' USE not being evaluated correctly by Kent's repoman run.  Java and MIPS have a "complicated" history, so it's been masked for the longest time IIRC.

> emerge --info

See attachment in a few minutes.  Note this machine is behind quite a bit, as I haven't updated it in 2+ months.


> > 
> > # emerge =sys-libs/db-6.0.35-r4 -pv
> > 
> > These are the packages that would be merged, in order:
> > 
> > Calculating dependencies                            ... done!
> > [ebuild  NS    ] sys-libs/db-6.0.35-r4:6.0::gentoo [4.8.30-r4:4.8::gentoo]
> > USE="-cxx -doc -examples (-java) -tcl -test" 0 KiB
> > 
> > Total: 1 package (1 in new slot), Size of downloads: 0 KiB
> > 
> > So it looks easy to test-compile this.  I'll do that and add our keyword if
> > it compiles cleanly.  I don't know of a good test-case, though so a compile
> > test will have to do.
> 
> Run the test suite with FEATURES=test? (do --with-test-deps without the
> FEATURES first)

The ebuild itself restricts testing it looks:

Compile test ran fine, so I'll push the addition of the ~mips keyword.  I'll circle back to running the testsuite later on after I catch this machine up to more recent packages.  It's not the fastest thing on the planet anymore.
Comment 11 Joshua Kinard gentoo-dev 2021-05-15 20:00:03 UTC
Created attachment 708819 [details]
emerge --info from running MIPS system 20210515
Comment 12 Joshua Kinard gentoo-dev 2021-05-15 20:00:47 UTC
(In reply to Joshua Kinard from comment #10)

> The ebuild itself restricts testing it looks:

Ignore this bit, typed in error and forgot to delete.
Comment 13 Larry the Git Cow gentoo-dev 2021-05-15 20:07:50 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ea7f9b143ea1b003ed79aff53e53f176ad6e9e66

commit ea7f9b143ea1b003ed79aff53e53f176ad6e9e66
Author:     Joshua Kinard <kumba@gentoo.org>
AuthorDate: 2021-05-15 20:07:12 +0000
Commit:     Joshua Kinard <kumba@gentoo.org>
CommitDate: 2021-05-15 20:07:33 +0000

    sys-libs/db: Added ~mips to KEYWORDS
    
    Bug: https://bugs.gentoo.org/729932
    Signed-off-by: Joshua Kinard <kumba@gentoo.org>
    Package-Manager: Portage-3.0.18, Repoman-3.0.3

 sys-libs/db/db-6.0.35-r4.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
Comment 14 Sergei Trofimovich (RETIRED) gentoo-dev 2021-05-17 21:12:04 UTC
~mips was already done in #comment 13

All arches done. Closing.