It doesn't seem that e2fsprogs correctly debundles all of the e2fsprogs-libs components anymore. From #gentoo-base (30th July): ``` <@sam_> I was working on e2fsprogs a few weeks ago and I noticed that I actually had to apply patches to e2fsprogs-libs too in order for everyth ing to apply consistently <@sam_> I'm not 100% convinced that the debundling is actually working anymore (i.e. that e2fsprogs is using the system copy) <@sam_> I poked at the sed and it doesn't seem to be changing anywhere near as much as it needs to be <@sam_> So, does anyone know why they're actually split in the first place? <@sam_> this became relevant because of bug 790191 <willikins> sam_: https://bugs.gentoo.org/790191 "sys-fs/e2fsprogs-1.46.2: Tests failed: j_recover_csum2_32bit j_recover_csum2_64bit j_recover_f ast_commit m_rootdir_acl"; Gentoo Linux, Current packages; CONF; eike:base-system <@sam_> it looks like it dates back quite a while <@sam_> upstream don't seem to intend for use of a system copy of -libs <@sam_> tl;dr: e2fsprogs doesn't seem to actually use e2fsprogs-libs, even though it depends on it, and the test failures reported for it seem to be for -libs components, but patching just -libs doesn't fix them. ``` I spoke to dilfridge about this and he ended up finding that we used to have sys-libs/com_err and sys-libs/ss which were merged into sys-libs/e2fsprogs-libs, although they seem rather deeply embedded within sys-fs/e2fsprogs nowadays. dilfridge suggested, wrt removal of -libs: - change all dependencies to directly depend on e2fsprogs (which atm pulls in -libs anyway) - then the next version installs the libraries and blocks -libs
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e12c1b9d83e5b49e8d310a84a6fa554db6352e20 commit e12c1b9d83e5b49e8d310a84a6fa554db6352e20 Author: David Seifert <soap@gentoo.org> AuthorDate: 2021-09-13 20:30:25 +0000 Commit: David Seifert <soap@gentoo.org> CommitDate: 2021-09-13 20:30:25 +0000 sys-fs/zerofree: e2fsprogs-libs → e2fsprogs Closes: https://github.com/gentoo/gentoo/pull/22275 Bug: https://bugs.gentoo.org/806875 Signed-off-by: David Seifert <soap@gentoo.org> sys-fs/zerofree/{zerofree-1.1.1.ebuild => zerofree-1.1.1-r1.ebuild} | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=648d8cc3e049337918ad899faae1e46273619e73 commit 648d8cc3e049337918ad899faae1e46273619e73 Author: David Seifert <soap@gentoo.org> AuthorDate: 2021-09-13 20:30:24 +0000 Commit: David Seifert <soap@gentoo.org> CommitDate: 2021-09-13 20:30:24 +0000 sys-fs/nilfs-utils: e2fsprogs-libs → e2fsprogs Bug: https://bugs.gentoo.org/806875 Signed-off-by: David Seifert <soap@gentoo.org> ...-utils-2.1.5-r1.ebuild => nilfs-utils-2.1.5-r2.ebuild} | 5 +++-- ...lfs-utils-2.2.2.ebuild => nilfs-utils-2.2.2-r1.ebuild} | 15 +++++++-------- 2 files changed, 10 insertions(+), 10 deletions(-) https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f67003ddb489584652b519fbe7eb181e06b1cd39 commit f67003ddb489584652b519fbe7eb181e06b1cd39 Author: David Seifert <soap@gentoo.org> AuthorDate: 2021-09-13 20:30:23 +0000 Commit: David Seifert <soap@gentoo.org> CommitDate: 2021-09-13 20:30:23 +0000 sys-fs/extundelete: e2fsprogs-libs → e2fsprogs Bug: https://bugs.gentoo.org/806875 Signed-off-by: David Seifert <soap@gentoo.org> .../{extundelete-0.2.4.ebuild => extundelete-0.2.4-r1.ebuild} | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d89aa1918b97348187ddd3e06c91f7871a3013f1 commit d89aa1918b97348187ddd3e06c91f7871a3013f1 Author: David Seifert <soap@gentoo.org> AuthorDate: 2021-09-13 20:30:22 +0000 Commit: David Seifert <soap@gentoo.org> CommitDate: 2021-09-13 20:30:22 +0000 sys-fs/e2tools: e2fsprogs-libs → e2fsprogs Bug: https://bugs.gentoo.org/806875 Signed-off-by: David Seifert <soap@gentoo.org> sys-fs/e2tools/{e2tools-0.1.0.ebuild => e2tools-0.1.0-r1.ebuild} | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2b33a92c5fdf708e9870cf37b6e99d98c4b113ad commit 2b33a92c5fdf708e9870cf37b6e99d98c4b113ad Author: David Seifert <soap@gentoo.org> AuthorDate: 2021-09-13 20:30:21 +0000 Commit: David Seifert <soap@gentoo.org> CommitDate: 2021-09-13 20:30:21 +0000 sys-fs/btrfs-progs: e2fsprogs-libs → e2fsprogs Bug: https://bugs.gentoo.org/806875 Signed-off-by: David Seifert <soap@gentoo.org> .../{btrfs-progs-5.10.1.ebuild => btrfs-progs-5.10.1-r1.ebuild} | 6 ++---- .../{btrfs-progs-5.13.1.ebuild => btrfs-progs-5.13.1-r1.ebuild} | 6 ++---- .../{btrfs-progs-5.14.ebuild => btrfs-progs-5.14-r1.ebuild} | 6 ++---- sys-fs/btrfs-progs/btrfs-progs-9999.ebuild | 6 ++---- 4 files changed, 8 insertions(+), 16 deletions(-) https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=85cbde157dbb2d45bc830e7d2699c40f4e1508f4 commit 85cbde157dbb2d45bc830e7d2699c40f4e1508f4 Author: David Seifert <soap@gentoo.org> AuthorDate: 2021-09-13 20:30:20 +0000 Commit: David Seifert <soap@gentoo.org> CommitDate: 2021-09-13 20:30:20 +0000 net-nds/openldap: e2fsprogs-libs → e2fsprogs Bug: https://bugs.gentoo.org/806875 Signed-off-by: David Seifert <soap@gentoo.org> .../openldap/{openldap-2.4.57-r1.ebuild => openldap-2.4.57-r2.ebuild} | 2 +- .../openldap/{openldap-2.4.58-r1.ebuild => openldap-2.4.58-r2.ebuild} | 2 +- .../openldap/{openldap-2.4.59-r1.ebuild => openldap-2.4.59-r2.ebuild} | 2 +- net-nds/openldap/{openldap-2.5.4.ebuild => openldap-2.5.4-r1.ebuild} | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=68382d027dea01dd753eda131be005fd37a296bc commit 68382d027dea01dd753eda131be005fd37a296bc Author: David Seifert <soap@gentoo.org> AuthorDate: 2021-09-13 20:30:19 +0000 Commit: David Seifert <soap@gentoo.org> CommitDate: 2021-09-13 20:30:19 +0000 net-nds/389-ds-base: e2fsprogs-libs → e2fsprogs Bug: https://bugs.gentoo.org/806875 Signed-off-by: David Seifert <soap@gentoo.org> .../{389-ds-base-1.4.4.16.ebuild => 389-ds-base-1.4.4.16-r1.ebuild} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=af02bce3c67cda4c86a35a69a0fcae4280c330d9 commit af02bce3c67cda4c86a35a69a0fcae4280c330d9 Author: David Seifert <soap@gentoo.org> AuthorDate: 2021-09-13 20:30:18 +0000 Commit: David Seifert <soap@gentoo.org> CommitDate: 2021-09-13 20:30:18 +0000 net-mail/fetchmail: e2fsprogs-libs → e2fsprogs Bug: https://bugs.gentoo.org/806875 Signed-off-by: David Seifert <soap@gentoo.org> .../fetchmail/{fetchmail-6.4.21.ebuild => fetchmail-6.4.21-r1.ebuild} | 2 +- .../{fetchmail-7.0.0_alpha9.ebuild => fetchmail-7.0.0_alpha9-r1.ebuild} | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fc956aee188f00dec1fc117e0574f4651193481e commit fc956aee188f00dec1fc117e0574f4651193481e Author: David Seifert <soap@gentoo.org> AuthorDate: 2021-09-13 20:30:17 +0000 Commit: David Seifert <soap@gentoo.org> CommitDate: 2021-09-13 20:30:17 +0000 net-mail/cyrus-imapd: e2fsprogs-libs → e2fsprogs Bug: https://bugs.gentoo.org/806875 Signed-off-by: David Seifert <soap@gentoo.org> .../{cyrus-imapd-3.0.13-r1.ebuild => cyrus-imapd-3.0.13-r2.ebuild} | 2 +- .../{cyrus-imapd-3.0.14-r1.ebuild => cyrus-imapd-3.0.14-r2.ebuild} | 2 +- .../{cyrus-imapd-3.0.15-r1.ebuild => cyrus-imapd-3.0.15-r2.ebuild} | 2 +- .../{cyrus-imapd-3.4.1-r1.ebuild => cyrus-imapd-3.4.1-r2.ebuild} | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=198a2bcf19ea4c57dcedd6c697d2b9c80edd1e1f commit 198a2bcf19ea4c57dcedd6c697d2b9c80edd1e1f Author: David Seifert <soap@gentoo.org> AuthorDate: 2021-09-13 20:30:16 +0000 Commit: David Seifert <soap@gentoo.org> CommitDate: 2021-09-13 20:30:16 +0000 net-fs/nfs-utils: e2fsprogs-libs → e2fsprogs Bug: https://bugs.gentoo.org/806875 Signed-off-by: David Seifert <soap@gentoo.org> .../nfs-utils/{nfs-utils-2.5.3-r1.ebuild => nfs-utils-2.5.3-r2.ebuild} | 2 +- net-fs/nfs-utils/{nfs-utils-2.5.4.ebuild => nfs-utils-2.5.4-r1.ebuild} | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a91e460a7132a0e173f6d2e703692b0f45a57752 commit a91e460a7132a0e173f6d2e703692b0f45a57752 Author: David Seifert <soap@gentoo.org> AuthorDate: 2021-09-13 20:30:15 +0000 Commit: David Seifert <soap@gentoo.org> CommitDate: 2021-09-13 20:30:15 +0000 dev-db/mysql-workbench: e2fsprogs-libs → e2fsprogs Bug: https://bugs.gentoo.org/806875 Signed-off-by: David Seifert <soap@gentoo.org> .../{mysql-workbench-8.0.23.ebuild => mysql-workbench-8.0.23-r1.ebuild} | 2 +- .../{mysql-workbench-8.0.26.ebuild => mysql-workbench-8.0.26-r1.ebuild} | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=177d4898414140b65cb8f490c1cc0e165530fa75 commit 177d4898414140b65cb8f490c1cc0e165530fa75 Author: David Seifert <soap@gentoo.org> AuthorDate: 2021-09-13 20:30:14 +0000 Commit: David Seifert <soap@gentoo.org> CommitDate: 2021-09-13 20:30:14 +0000 app-crypt/mit-krb5-appl: e2fsprogs-libs → e2fsprogs Bug: https://bugs.gentoo.org/806875 Signed-off-by: David Seifert <soap@gentoo.org> .../{mit-krb5-appl-1.0.3-r2.ebuild => mit-krb5-appl-1.0.3-r3.ebuild} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b2fdc20dee75ceedd1bb744fe4a5d2dc5392e2b8 commit b2fdc20dee75ceedd1bb744fe4a5d2dc5392e2b8 Author: David Seifert <soap@gentoo.org> AuthorDate: 2021-09-13 20:30:13 +0000 Commit: David Seifert <soap@gentoo.org> CommitDate: 2021-09-13 20:30:13 +0000 app-backup/tarsnap: e2fsprogs-libs → e2fsprogs Bug: https://bugs.gentoo.org/806875 Signed-off-by: David Seifert <soap@gentoo.org> app-backup/tarsnap/{tarsnap-1.0.39.ebuild => tarsnap-1.0.39-r1.ebuild} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7fd51b0b6e076311e75a3da77dd9363945b8c6e9 commit 7fd51b0b6e076311e75a3da77dd9363945b8c6e9 Author: David Seifert <soap@gentoo.org> AuthorDate: 2021-09-13 20:30:11 +0000 Commit: David Seifert <soap@gentoo.org> CommitDate: 2021-09-13 20:30:11 +0000 app-backup/fsarchiver: e2fsprogs-libs → e2fsprogs Bug: https://bugs.gentoo.org/806875 Signed-off-by: David Seifert <soap@gentoo.org> .../fsarchiver/{fsarchiver-0.8.6.ebuild => fsarchiver-0.8.6-r1.ebuild} | 1 - 1 file changed, 1 deletion(-) https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=426e805021cb98118ca13bfa500d8fbee462ab5b commit 426e805021cb98118ca13bfa500d8fbee462ab5b Author: David Seifert <soap@gentoo.org> AuthorDate: 2021-09-13 20:30:10 +0000 Commit: David Seifert <soap@gentoo.org> CommitDate: 2021-09-13 20:30:10 +0000 app-arch/dump: e2fsprogs-libs → e2fsprogs Bug: https://bugs.gentoo.org/806875 Signed-off-by: David Seifert <soap@gentoo.org> app-arch/dump/{dump-0.4.47.ebuild => dump-0.4.47-r1.ebuild} | 1 - 1 file changed, 1 deletion(-)
Could we get a "minimal" or "libs-only" USE flag for sys-fs/e2fsprogs? Portage now wants to merge sys-apps/util-linux into my early boot environment because sys-fs/e2fsprogs RDEPENDs on it. I have no need of any of the extfs utilities, as I have no extfs instances, but net-fs/nfs-utils needs the libraries from e2fsprogs. Sure, I could put sys-apps/util-linux in package.provided, but I'd like a less messy way to install just the libraries that nfs-utils needs without installing all the extfs utilities.
(In reply to Matt Whitlock from comment #2) > Could we get a "minimal" or "libs-only" USE flag for sys-fs/e2fsprogs? > Portage now wants to merge sys-apps/util-linux into my early boot > environment because sys-fs/e2fsprogs RDEPENDs on it. I have no need of any > of the extfs utilities, as I have no extfs instances, but net-fs/nfs-utils > needs the libraries from e2fsprogs. Sure, I could put sys-apps/util-linux in > package.provided, but I'd like a less messy way to install just the > libraries that nfs-utils needs without installing all the extfs utilities. No objection to this, although I'd prefer something like USE=tools or whatever instead (to avoid "native USE flags"). Thanks for raising this.
Created attachment 740418 [details, diff] e2fsprogs-1.46.4.ebuild.patch (In reply to Sam James from comment #3) > (In reply to Matt Whitlock from comment #2) > > Could we get a "minimal" or "libs-only" USE flag for sys-fs/e2fsprogs? > > No objection to this, although I'd prefer something like USE=tools or > whatever instead (to avoid "native USE flags"). Implemented. See the attached patch. (Of course, similar changes should be applied to all other versions of the ebuild.) This patch: * switches to multilib-minimal (from no multilib) * blocks sys-libs/e2fsprogs-libs * adds IUSE="+tools" * makes RDEPEND="sys-apps/util-linux" conditional on USE="tools" * wraps the <ext2fs/ext2_types.h> header since it differs by ABI * discontinues the external lib{com_err,ss} hack * builds the executables only for the native ABI and only if USE="tools" * builds lib{com_err,ss} for all enabled ABIs * builds lib{extfs,e2p} for all enabled ABIs and only if USE="tools" If USE="-tools", then the ebuild installs only the files that sys-libs/e2fsprogs-libs currently installs. There is one logical improvement over the existing (in-tree) situation: if USE="tools", then the libraries that the tools use (libext2fs and libe2p) are built for *all* enabled ABIs rather than only for the native ABI. (These libraries are not built at all if USE="-tools".) Note: Any packages that depend on sys-fs/e2fsprogs due to needing libext2fs or libe2p will now need to depend on sys-fs/e2fsprogs[tools(-)] because those libraries will not be installed if USE="-tools".
(In reply to Matt Whitlock from comment #4) > Note: Any packages that depend on sys-fs/e2fsprogs due to needing libext2fs > or libe2p will now need to depend on sys-fs/e2fsprogs[tools(-)] because > those libraries will not be installed if USE="-tools". Correction: that dependency should be "sys-fs/e2fsprogs[tools(+)]" since versions of sys-fs/e2fsprogs prior to the addition of IUSE="tools" would have installed the needed libraries unconditionally.
(In reply to Matt Whitlock from comment #5) > (In reply to Matt Whitlock from comment #4) > > Note: Any packages that depend on sys-fs/e2fsprogs due to needing libext2fs > > or libe2p will now need to depend on sys-fs/e2fsprogs[tools(-)] because > > those libraries will not be installed if USE="-tools". > > Correction: that dependency should be "sys-fs/e2fsprogs[tools(+)]" since > versions of sys-fs/e2fsprogs prior to the addition of IUSE="tools" would > have installed the needed libraries unconditionally. Not forgot about this, btw. Need to compare with dilfridge's work in his overlay (he was worried about the multilib parts which he hadn't done yet) but it seems like you have. Will try to look this weekend.
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4efd4cbe4ce902fdf3cb1d5dba76c93d47e9cbbb commit 4efd4cbe4ce902fdf3cb1d5dba76c93d47e9cbbb Author: Sam James <sam@gentoo.org> AuthorDate: 2021-10-31 01:25:49 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2021-10-31 01:28:47 +0000 sys-fs/e2fsprogs: run tests for non-native ABI in new merged -libs ebuild Bug: https://bugs.gentoo.org/806875 Signed-off-by: Sam James <sam@gentoo.org> sys-fs/e2fsprogs/e2fsprogs-1.46.4-r50.ebuild | 10 ++++++++++ 1 file changed, 10 insertions(+) https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f93bf60f2cb44d2172dbd546f741c78020780048 commit f93bf60f2cb44d2172dbd546f741c78020780048 Author: Matt Whitlock <gentoo@mattwhitlock.name> AuthorDate: 2021-10-31 01:21:51 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2021-10-31 01:26:19 +0000 sys-fs/e2fsprogs: merge sys-libs/e2fsprogs-libs back in (unkeyworded) [sam: As noted in the bug, we'll need to adjust reverse dependencies to tools(-) if anything needs libext2fs or libe2p. In terms of why we're doing this in the first place, the reason is that for quite some time, e2fsprogs has been using internal copies of the libraries provided by sys-fs/e2fsprogs-libs anyway, as observed when applying a patch for a test failure which then re-appeared in progs. That is, the split has been ineffective/a no-op for quite some time, and this just makes the ebuilds reflect reality. Splitting out the packages isn't supported upstream and requires some ugly work and it's not something we're interested in rebasing very often.] Bug: https://bugs.gentoo.org/806875 Signed-off-by: Sam James <sam@gentoo.org> sys-fs/e2fsprogs/e2fsprogs-1.46.4-r50.ebuild | 183 +++++++++++++++++++++++++++ sys-fs/e2fsprogs/metadata.xml | 1 + 2 files changed, 184 insertions(+)
(In reply to Sam James from comment #6) e2fsprogs-1.46.4-r50.ebuild still has an unconditional RDEPEND on >=sys-apps/util-linux-2.16 in addition to the "tools?" conditional one. This looks like an oversight. Getting rid of that runtime dependency was my entire motivation. :/
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8f7a7d03aadc68c5fa557e2971998e183da8148f commit 8f7a7d03aadc68c5fa557e2971998e183da8148f Author: Sam James <sam@gentoo.org> AuthorDate: 2021-11-01 17:48:31 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2021-11-01 17:48:31 +0000 sys-fs/e2fsprogs: drop unnecessary unconditional util-linux dep in 1.46.4-r51 Closes: https://bugs.gentoo.org/806875 Signed-off-by: Sam James <sam@gentoo.org> .../{e2fsprogs-1.46.4-r50.ebuild => e2fsprogs-1.46.4-r51.ebuild} | 1 - 1 file changed, 1 deletion(-)
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e752da6b97506d92fd09600347f3a54c44771470 commit e752da6b97506d92fd09600347f3a54c44771470 Author: David Seifert <soap@gentoo.org> AuthorDate: 2021-12-31 17:49:47 +0000 Commit: David Seifert <soap@gentoo.org> CommitDate: 2021-12-31 17:49:47 +0000 app-crypt/mit-krb5: update for multilib sys-fs/e2fsprogs Bug: https://bugs.gentoo.org/806875 Signed-off-by: David Seifert <soap@gentoo.org> .../mit-krb5/{mit-krb5-1.19.2.ebuild => mit-krb5-1.19.2-r1.ebuild} | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=32a83bab871b6b4d2a09ebd8b63b8169b86ea468 commit 32a83bab871b6b4d2a09ebd8b63b8169b86ea468 Author: David Seifert <soap@gentoo.org> AuthorDate: 2021-12-31 17:49:46 +0000 Commit: David Seifert <soap@gentoo.org> CommitDate: 2021-12-31 17:49:46 +0000 app-crypt/heimdal: update for multilib sys-fs/e2fsprogs Bug: https://bugs.gentoo.org/806875 Signed-off-by: David Seifert <soap@gentoo.org> .../heimdal/{heimdal-7.7.0-r2.ebuild => heimdal-7.7.0-r3.ebuild} | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6a23e0c4de4aeb29a4aa8bc84bd954020bf8c6a4 commit 6a23e0c4de4aeb29a4aa8bc84bd954020bf8c6a4 Author: David Seifert <soap@gentoo.org> AuthorDate: 2021-12-31 17:49:45 +0000 Commit: David Seifert <soap@gentoo.org> CommitDate: 2021-12-31 17:49:45 +0000 net-fs/samba: update for multilib sys-fs/e2fsprogs Bug: https://bugs.gentoo.org/806875 Signed-off-by: David Seifert <soap@gentoo.org> net-fs/samba/{samba-4.14.10-r1.ebuild => samba-4.14.10-r2.ebuild} | 5 ++++- net-fs/samba/{samba-4.15.2-r1.ebuild => samba-4.15.2-r2.ebuild} | 5 ++++- net-fs/samba/{samba-4.15.3.ebuild => samba-4.15.3-r1.ebuild} | 5 ++++- 3 files changed, 12 insertions(+), 3 deletions(-)
According to a forum post[1], once the unstable e2fsprogs-1.46.5 is built without the tools USE, it becomes impossible to build it with tools later. I have not verified this. [1] https://forums.gentoo.org/viewtopic-t-1147228.html
(In reply to Brian Evans from comment #11) > According to a forum post[1], once the unstable e2fsprogs-1.46.5 is built > without the tools USE, it becomes impossible to build it with tools later. > I have not verified this. > > [1] https://forums.gentoo.org/viewtopic-t-1147228.html Starting from a system that has no sys-fs/e2fsprogs installed whatsoever, I emerged sys-fs/e2fsprogs-1.46.5[-tools] successfully and then emerged sys-fs/e2fsprogs-1.46.5[tools] successfully. It wouldn't make much sense if e2fsprogs requires a system header file that it itself supplies. It would be impossible to build e2fsprogs on any system that lacks e2fsprogs. It does look as though app-misc/mc should be depending on sys-fs/e2fsprogs[tools] since it needs a library other than com_err and ss.
(In reply to Matt Whitlock from comment #12) > It does look as though app-misc/mc should be depending on > sys-fs/e2fsprogs[tools] since it needs a library other than com_err and ss. sys-fs/e2fsprogs[tools(+)] (Older versions of sys-fs/e2fsprogs prior to the addition of the "tools" USE flag install the needed library unconditionally.)
I opened Bug 833110 for the app-misc/mc reverse dependency.
(In reply to Matt Whitlock from comment #12) > Starting from a system that has no sys-fs/e2fsprogs installed whatsoever, I > emerged sys-fs/e2fsprogs-1.46.5[-tools] successfully and then emerged > sys-fs/e2fsprogs-1.46.5[tools] successfully. For me behavior is different, and this scenario fails. When my system is in the following state: # find /usr/include/ -type f -iname "*ext2*" /usr/include/tsk/fs/tsk_ext2fs.h /usr/include/qt5/QtQuick/5.15.2/QtQuick/private/qquickcontext2dtile_p.h /usr/include/qt5/QtQuick/5.15.2/QtQuick/private/qquickcontext2dtexture_p.h /usr/include/qt5/QtQuick/5.15.2/QtQuick/private/qquickcontext2d_p.h /usr/include/qt5/QtQuick/5.15.2/QtQuick/private/qquickcontext2dcommandbuffer_p.h emerge sys-fs/e2fsprogs-1.46.5[tools] fails: Portage 3.0.30 (python 3.9.10-final-0, default/linux/amd64/17.1/desktop, gcc-11.2.1, glibc-2.34-r8, 5.16.7-gentoo x86_64) ================================================================= System Settings ================================================================= System uname: Linux-5.16.7-gentoo-x86_64-Intel-R-_Core-TM-_i7-2640M_CPU_@_2.80GHz-with-glibc2.34 KiB Mem: 8025668 total, 305276 free KiB Swap: 8388604 total, 8299260 free Timestamp of repository gentoo: Fri, 11 Feb 2022 00:30:01 +0000 Head commit of repository gentoo: 4dc9e0d4e4e87edc8ceaf9186f1e7bde88fb044c sh bash 5.1_p16 ld GNU ld (Gentoo 2.37_p1 p2) 2.37 app-misc/pax-utils: 1.3.3::gentoo app-shells/bash: 5.1_p16::gentoo dev-java/java-config: 2.3.1::gentoo dev-lang/perl: 5.34.0-r6::gentoo dev-lang/python: 2.7.18_p13::gentoo, 3.6.15-r1::gentoo, 3.7.12_p1-r1::gentoo, 3.9.10-r1::gentoo, 3.10.2-r1::gentoo, 3.11.0_alpha5::gentoo dev-lang/rust-bin: 1.58.1::gentoo dev-util/cmake: 3.22.2::gentoo dev-util/meson: 0.60.3::gentoo sys-apps/baselayout: 2.8::gentoo sys-apps/openrc: 0.44.10::gentoo sys-apps/sandbox: 2.29::gentoo sys-devel/autoconf: 2.13-r1::gentoo, 2.71-r1::gentoo sys-devel/automake: 1.16.5::gentoo sys-devel/binutils: 2.37_p1-r2::gentoo sys-devel/binutils-config: 5.4::gentoo sys-devel/clang: 13.0.1::gentoo sys-devel/gcc: 9.3.0-r2::gentoo, 11.2.1_p20220115::gentoo sys-devel/gcc-config: 2.5-r1::gentoo sys-devel/libtool: 2.4.6-r6::gentoo sys-devel/llvm: 13.0.1::gentoo sys-devel/make: 4.3::gentoo sys-kernel/linux-headers: 5.16::gentoo (virtual/os-headers) sys-libs/glibc: 2.34-r8::gentoo Repositories: gentoo location: /usr/portage sync-type: rsync sync-uri: rsync://rsync.gentoo.org/gentoo-portage priority: -1000 sync-rsync-verify-max-age: 24 sync-rsync-verify-metamanifest: no sync-rsync-verify-jobs: 1 sync-rsync-extra-opts: klzOverlay location: /usr/local/klzOverlay masters: gentoo priority: 0 steam-overlay location: /var/lib/layman/steam-overlay masters: gentoo priority: 50 Installed sets: @esteam ABI="amd64" ABI_X86="32 64" ACCEPT_KEYWORDS="amd64 x86 ~amd64" ACCEPT_LICENSE="@FREE AdobeFlash-10.1 AdobeFlash-10.3 dlj-1.1 Oracle-BCLA-JavaSE google-chrome skype-eula TeamViewerNovember2011 AdobeFlash-11.x TeamViewer skype-4.0.0.7-copyright PUEL IBM-J1.6 OPERA-12 OPERA-2014 teamspeak3 linux-fw-redistributable no-source-code Skype-TOS MSttfEULA freedist all-rights-reserved phrack ValveSteamLicense unRAR as-is linux-firmware Spotify free-noncomm Subversion NPSL OPERA-2018 Turkowski" ACCEPT_PROPERTIES="*" ACCEPT_RESTRICT="*" ADA_TARGET="" ALSA_CARD="hda-intel" ALSA_PCM_PLUGINS="rate softvol dsnoop file hooks iec958 ioplug route shm share linear plug ladspa null" APACHE2_MODULES="autoindex info log_config mime status userdir mpm authz_host dir auth_digest authn_ file authz_groupfile dav dav_fs" ARCH="amd64" AUTOCLEAN="yes" BINPKG_COMPRESS="bzip2" BOOTSTRAP_USE="unicode internal-glib pkg-config split-usr xml python_targets_python3_9 multilib" BROOT="" CALLIGRA_FEATURES="" CBUILD="x86_64-pc-linux-gnu" CCACHE_DIR="/var/tmp/ccache/" CFLAGS="-march=corei7-avx -O2 -pipe" CFLAGS_amd64="-m64" CFLAGS_x32="-mx32" CFLAGS_x86="-m32" CHOST="x86_64-pc-linux-gnu" CHOST_amd64="x86_64-pc-linux-gnu" CHOST_x32="x86_64-pc-linux-gnux32" CHOST_x86="i686-pc-linux-gnu" CLEAN_DELAY="5" COLLECTD_PLUGINS="" COLLISION_IGNORE="/boot/dtbs/* /lib/modules/*" COLORTERM="rxvt-xpm" CONFIG_PROTECT="/etc /usr/share/easy-rsa /usr/share/gnupg/qualified.txt" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c" CPU_FLAGS_X86="aes avx mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3" CXXFLAGS="-march=corei7-avx -O2 -pipe" DEFAULT_ABI="amd64" DISPLAY=":0.0" DISTDIR="/usr/portage/distfiles" DOC_SYMLINKS_DIR="/usr/share/rtfm" EDITOR="vim" ELIBC="glibc" EMERGE_DEFAULT_OPTS="--verbose --tree --autounmask=n --quiet-build=n" EMERGE_WARNING_DELAY="10" ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR" EPREFIX="" EROOT="/" ESYSROOT="/" FCFLAGS="-O2 -pipe" FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs buildpkg-live candy config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch pid-sandbox preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync" FETCHCOM
Created attachment 764830 [details] build log of failing +tools emerge
The tools issue is a MAKEOPTS race condition when the header is not already installed. Raise it high enough to say -j12 on even the most underpowered box and it will fail. This is very easy to trigger when using abi_x86_32. Haven't been able to trigger with native ABI, but the possibility exists.
(In reply to Brian Evans from comment #17) > The tools issue is a MAKEOPTS race condition when the header is not already > installed. Raise it high enough to say -j12 on even the most underpowered > box and it will fail. This is very easy to trigger when using abi_x86_32. > Haven't been able to trigger with native ABI, but the possibility exists. FWIW, this starts to trigger at -j4, but passes sometimes. -j5 happens more frequently like the build.log shows.
Can confirm that after changing my MAKEOPTS="-j5" to MAKEOPTS="-j3" i can indeed successfully emerge e2fsprogs[tools] on a system that doesn't already have ext2_err.h at the start of the emerge. So is this a package issue, or was my MAKEOPTS-setup just plain wrong, or?
(In reply to klz from comment #19) > Can confirm that after changing my MAKEOPTS="-j5" to MAKEOPTS="-j3" i can > indeed successfully emerge e2fsprogs[tools] on a system that doesn't already > have ext2_err.h at the start of the emerge. > > So is this a package issue, or was my MAKEOPTS-setup just plain wrong, or? Issue in the package (some underdefined/missing dependency within the Makefiles).
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6904371a540ac1e75b52b80dd83e4b486bcf609c commit 6904371a540ac1e75b52b80dd83e4b486bcf609c Author: David Seifert <soap@gentoo.org> AuthorDate: 2022-04-06 21:04:58 +0000 Commit: David Seifert <soap@gentoo.org> CommitDate: 2022-04-06 21:04:58 +0000 sys-fs/e2fsprogs: fix parallel make bug Bug: https://bugs.gentoo.org/806875 Signed-off-by: David Seifert <soap@gentoo.org> sys-fs/e2fsprogs/e2fsprogs-1.46.5.ebuild | 1 + .../files/e2fsprogs-1.46.5-parallel-make.patch | 29 ++++++++++++++++++++++ 2 files changed, 30 insertions(+)
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=32d2b216923316fee331cf8fa1dd732bdd38d8eb commit 32d2b216923316fee331cf8fa1dd732bdd38d8eb Author: David Seifert <soap@gentoo.org> AuthorDate: 2022-04-17 15:09:29 +0000 Commit: David Seifert <soap@gentoo.org> CommitDate: 2022-04-17 15:09:29 +0000 net-nds/389-ds-base: remove sys-libs/e2fsprogs-libs dep Bug: https://bugs.gentoo.org/806875 Signed-off-by: David Seifert <soap@gentoo.org> .../{389-ds-base-1.4.4.19-r2.ebuild => 389-ds-base-1.4.4.19-r3.ebuild} | 2 +- .../{389-ds-base-2.1.0-r1.ebuild => 389-ds-base-2.1.0-r2.ebuild} | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8786948e9bd5b010a828c750f274aae9cd607bb2 commit 8786948e9bd5b010a828c750f274aae9cd607bb2 Author: David Seifert <soap@gentoo.org> AuthorDate: 2022-04-17 15:09:28 +0000 Commit: David Seifert <soap@gentoo.org> CommitDate: 2022-04-17 15:09:28 +0000 sci-electronics/eagle: remove sys-libs/e2fsprogs-libs dep Bug: https://bugs.gentoo.org/806875 Signed-off-by: David Seifert <soap@gentoo.org> sci-electronics/eagle/{eagle-9.6.2-r2.ebuild => eagle-9.6.2-r3.ebuild} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d09b0b1e69d1dbe1f6c458e6d1c6fc2a1ab59340 commit d09b0b1e69d1dbe1f6c458e6d1c6fc2a1ab59340 Author: David Seifert <soap@gentoo.org> AuthorDate: 2022-04-17 15:09:27 +0000 Commit: David Seifert <soap@gentoo.org> CommitDate: 2022-04-17 15:09:27 +0000 app-crypt/mit-krb5: remove sys-libs/e2fsprogs-libs dep Bug: https://bugs.gentoo.org/806875 Signed-off-by: David Seifert <soap@gentoo.org> .../{mit-krb5-1.19.2-r3.ebuild => mit-krb5-1.19.2-r4.ebuild} | 5 +---- .../{mit-krb5-1.19.3-r1.ebuild => mit-krb5-1.19.3-r2.ebuild} | 5 +---- 2 files changed, 2 insertions(+), 8 deletions(-) https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bb993c4fce43a27932e33d43eec2e0147964d075 commit bb993c4fce43a27932e33d43eec2e0147964d075 Author: David Seifert <soap@gentoo.org> AuthorDate: 2022-04-17 15:09:26 +0000 Commit: David Seifert <soap@gentoo.org> CommitDate: 2022-04-17 15:09:26 +0000 app-crypt/heimdal: remove sys-libs/e2fsprogs-libs dep Bug: https://bugs.gentoo.org/806875 Signed-off-by: David Seifert <soap@gentoo.org> .../heimdal/{heimdal-7.7.0-r4.ebuild => heimdal-7.7.0-r5.ebuild} | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b6ea41673e452922d3515f3dd266ae48b5b81e42 commit b6ea41673e452922d3515f3dd266ae48b5b81e42 Author: David Seifert <soap@gentoo.org> AuthorDate: 2022-04-17 15:09:25 +0000 Commit: David Seifert <soap@gentoo.org> CommitDate: 2022-04-17 15:09:25 +0000 net-fs/samba: remove sys-libs/e2fsprogs-libs dep Bug: https://bugs.gentoo.org/806875 Signed-off-by: David Seifert <soap@gentoo.org> net-fs/samba/{samba-4.14.12-r2.ebuild => samba-4.14.12-r3.ebuild} | 5 +---- net-fs/samba/{samba-4.15.4-r2.ebuild => samba-4.15.4-r3.ebuild} | 5 +---- net-fs/samba/{samba-4.15.5-r2.ebuild => samba-4.15.5-r3.ebuild} | 5 +---- net-fs/samba/{samba-4.15.6.ebuild => samba-4.15.6-r1.ebuild} | 5 +---- net-fs/samba/{samba-4.16.0.ebuild => samba-4.16.0-r1.ebuild} | 5 +---- 5 files changed, 5 insertions(+), 20 deletions(-) https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=65ffa4305e9dd092c617c9626eb718fb8ce34848 commit 65ffa4305e9dd092c617c9626eb718fb8ce34848 Author: David Seifert <soap@gentoo.org> AuthorDate: 2022-04-17 15:09:24 +0000 Commit: David Seifert <soap@gentoo.org> CommitDate: 2022-04-17 15:09:24 +0000 profiles: last-rite sys-libs/e2fsprogs-libs Bug: https://bugs.gentoo.org/806875 Signed-off-by: David Seifert <soap@gentoo.org> profiles/package.mask | 8 ++++++++ 1 file changed, 8 insertions(+)
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1b3bff233fdc124d709576f67772371abe36a986 commit 1b3bff233fdc124d709576f67772371abe36a986 Author: Jakov Smolić <jsmolic@gentoo.org> AuthorDate: 2022-05-17 18:58:46 +0000 Commit: Jakov Smolić <jsmolic@gentoo.org> CommitDate: 2022-05-17 19:07:36 +0000 sys-libs/e2fsprogs-libs: treeclean Closes: https://bugs.gentoo.org/806875 Closes: https://bugs.gentoo.org/834106 Closes: https://bugs.gentoo.org/423453 Signed-off-by: Jakov Smolić <jsmolic@gentoo.org> sys-libs/e2fsprogs-libs/Manifest | 1 - .../e2fsprogs-libs/e2fsprogs-libs-1.46.4-r1.ebuild | 91 ---------------------- .../e2fsprogs-libs-1.42.13-fix-build-cflags.patch | 13 ---- sys-libs/e2fsprogs-libs/metadata.xml | 13 ---- 4 files changed, 118 deletions(-)
The suggested "deselect" fix does not work for me: --- (sys-libs/e2fsprogs-libs-1.46.4-1:0/0::gentoo, installed) pulled in by sys-libs/e2fsprogs-libs[abi_x86_64(-)] required by (net-fs/samba-4.14.9:0/0::gentoo, installed) USE="acl client pam regedit system-mitkrb5 -addc -addns -ads -ceph -cluster -cups -debug -dmapi (-fam) -glusterfs -gpg -iprint -json -ldap -ntvfs -profiling-data -python -quota (-selinux) -snapper -spotlight -syslog (-system-heimdal) -systemd (-test) -winbind -zeroconf" ABI_X86="(64) -32 (-x32)" PYTHON_SINGLE_TARGET="python3_9 -python3_8" >=sys-libs/e2fsprogs-libs-1.42.9[abi_x86_64(-)] required by (app-crypt/mit-krb5-1.19.2:0/0::gentoo, installed) USE="keyutils nls pkinit threads -doc -lmdb -openldap (-selinux) -test -xinetd" ABI_X86="(64) -32 (-x32)" CPU_FLAGS_X86="-aes" (sys-fs/e2fsprogs-1.46.5:0/0::gentoo, ebuild scheduled for merge) pulled in by e2fsprogs >=sys-fs/e2fsprogs-1.27 required by (sys-block/parted-3.4:0/0::gentoo, installed) USE="debug nls readline -device-mapper -verify-sig" ABI_X86="(64)" sys-fs/e2fsprogs required by (app-arch/libarchive-3.5.2:0/13::gentoo, installed) USE="acl bzip2 e2fsprogs iconv lzma zlib -blake2 -expat -lz4 -lzo -nettle -static-libs -xattr -zstd" ABI_X86="(64) -32 (-x32)" sys-fs/e2fsprogs required by @system --- Can Portage not just also upgrade the installed packages, which require a deprecated package? This was the behavior more than a decade ago and it causes imense pain to have this behaviour. It becomes unmanegeable on systems where one only tries to do security updates.
(In reply to Tiago Marques from comment #24) > The suggested "deselect" fix does not work for me: > > --- > (sys-libs/e2fsprogs-libs-1.46.4-1:0/0::gentoo, installed) pulled in by > sys-libs/e2fsprogs-libs[abi_x86_64(-)] required by > (net-fs/samba-4.14.9:0/0::gentoo, installed) USE="acl client pam regedit > system-mitkrb5 -addc -addns -ads -ceph -cluster -cups -debug -dmapi (-fam) > -glusterfs -gpg -iprint -json -ldap -ntvfs -profiling-data -python -quota > (-selinux) -snapper -spotlight -syslog (-system-heimdal) -systemd (-test) > -winbind -zeroconf" ABI_X86="(64) -32 (-x32)" > PYTHON_SINGLE_TARGET="python3_9 -python3_8" > >=sys-libs/e2fsprogs-libs-1.42.9[abi_x86_64(-)] required by > (app-crypt/mit-krb5-1.19.2:0/0::gentoo, installed) USE="keyutils nls pkinit > threads -doc -lmdb -openldap (-selinux) -test -xinetd" ABI_X86="(64) -32 > (-x32)" CPU_FLAGS_X86="-aes" > > (sys-fs/e2fsprogs-1.46.5:0/0::gentoo, ebuild scheduled for merge) pulled > in by > e2fsprogs > >=sys-fs/e2fsprogs-1.27 required by (sys-block/parted-3.4:0/0::gentoo, > installed) USE="debug nls readline -device-mapper -verify-sig" ABI_X86="(64)" > sys-fs/e2fsprogs required by (app-arch/libarchive-3.5.2:0/13::gentoo, > installed) USE="acl bzip2 e2fsprogs iconv lzma zlib -blake2 -expat -lz4 -lzo > -nettle -static-libs -xattr -zstd" ABI_X86="(64) -32 (-x32)" > sys-fs/e2fsprogs required by @system > --- > > Can Portage not just also upgrade the installed packages, which require a > deprecated package? > > This was the behavior more than a decade ago and it causes imense pain to > have this behaviour. It becomes unmanegeable on systems where one only tries > to do security updates. You'll need to upgrade anything depending on the old version of the package. It can't magically rebuild the old ebuilds and sed out the old dependency or something. Also, I'm not sure it was the default in the past: bug 559354 has been a longstanding request. In any case, this is better placed in a support forum, but not on a closed bug anyhow.