Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 795795 - sys-fs/eudev: Remove dependency on dev-util/intltool (or make it optional)
Summary: sys-fs/eudev: Remove dependency on dev-util/intltool (or make it optional)
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: eudev team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-06-13 22:04 UTC by Joshua Kinard
Modified: 2021-11-04 01:43 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Joshua Kinard gentoo-dev 2021-06-13 22:04:09 UTC
So I can't rule out that I am wrong, but it kinda looks like dev-util/intltool is no longer required to build sys-fs/eudev?  It drags in a massive set of dependent packages, largely due to needing dev-perl/XML-Parser, which needs dev-perl/libwww-perl, which chains to a number of HTTP-releated Perl modules.

I commented out the intltool dependency in eudev-3.2.10's ebuild and unmerged intltool from one of my systems.  I then tested building eudev with all USE flags except 'introspection' (too many deps for a quick test) and 'static-libs', and it compiles and installs to $D fine.  It also passes all tests.

I also grepped the eudev source code for case-insensitive references to "intl" or "intltool" and got nothing back, except one hit for IT_PROG_INTLTOOL in autom4te.cache/requests, which looks like a leftover auto-generated file that shouldn't have been included in the package anyways.

So as far as I can tell, it looks like that at a minimum, dev-util/intltool can be an optional DEPEND (or BDEPEND in EAPI7), but it may be possible to remove it entirely.  This would cut at least ~35 packages off the dependency chain for eudev, which will help slower systems out a lot.

Can someone more familiar with eudev's code double-check things and see if we can't punt dev-util/intltool in some way or make it optional?
Comment 1 Joshua Kinard gentoo-dev 2021-07-19 22:22:28 UTC
No response from eudev team lately, CC'ing base-system for their input.

I'll add systemd upstream removed intltool back in Feb 2018 as a dependency and uses gettext now:

https://github.com/systemd/systemd-stable/commit/9e8f3893e349a68312a817da72b3473b81b6869e

So I think intltool can definitely go away and gettext added in its place.  That will eliminate about ~35-40 Perl dependencies from @system.  I've also been running a locally-modified eudev ebuild that drops intltool, and has it (and its deps) removed on both my amd64 dev box and two MIPS systems with no ill effects for the last month now.
Comment 2 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2021-07-19 22:26:35 UTC
(In reply to Joshua Kinard from comment #1)
> No response from eudev team lately, CC'ing base-system for their input.
> 
> I'll add systemd upstream removed intltool back in Feb 2018 as a dependency
> and uses gettext now:
> 
> https://github.com/systemd/systemd-stable/commit/
> 9e8f3893e349a68312a817da72b3473b81b6869e
> 
> So I think intltool can definitely go away and gettext added in its place. 
> That will eliminate about ~35-40 Perl dependencies from @system.  I've also
> been running a locally-modified eudev ebuild that drops intltool, and has it
> (and its deps) removed on both my amd64 dev box and two MIPS systems with no
> ill effects for the last month now.

I don't see this commit in the history (cherry-picked) but I indeed don't see much for gettext, libintl, or intltool. I've pinged blueness + Anarchy on IRC but I'm inclined to just drop this too (let's revbump to allow people to depclean the Perl junk though).

If no reply soonish, I'll just go ahead and drop it.
Comment 3 Joshua Kinard gentoo-dev 2021-07-19 22:33:02 UTC
(In reply to Sam James from comment #2)
> (In reply to Joshua Kinard from comment #1)
> > No response from eudev team lately, CC'ing base-system for their input.
> > 
> > I'll add systemd upstream removed intltool back in Feb 2018 as a dependency
> > and uses gettext now:
> > 
> > https://github.com/systemd/systemd-stable/commit/
> > 9e8f3893e349a68312a817da72b3473b81b6869e
> > 
> > So I think intltool can definitely go away and gettext added in its place. 
> > That will eliminate about ~35-40 Perl dependencies from @system.  I've also
> > been running a locally-modified eudev ebuild that drops intltool, and has it
> > (and its deps) removed on both my amd64 dev box and two MIPS systems with no
> > ill effects for the last month now.
> 
> I don't see this commit in the history (cherry-picked) but I indeed don't
> see much for gettext, libintl, or intltool. I've pinged blueness + Anarchy
> on IRC but I'm inclined to just drop this too (let's revbump to allow people
> to depclean the Perl junk though).
> 
> If no reply soonish, I'll just go ahead and drop it.

I found intltool as a dependency on systemd-tmpfiles and asked Georgy Yakovlev about it about two weeks ago.  He found the linked commit where systemd upstream switched to gettext, so he swapped intltool out for gettext in the systemd-tmpfiles ebuild.  Could probably do the same in this case to avoid any surprises in the future, even there gettext invariably gets pulled in with @system anyways.

Am in agreement with the revbump.  Less Perl in the base system makes those inevitable Perl upgrades a lot less difficult.
Comment 4 Larry the Git Cow gentoo-dev 2021-07-20 02:18:43 UTC
The bug has been closed via the following commit(s):

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

commit c1640eb55838e64e993cb02aa7c1202e67f3226d
Author:     Sam James <sam@gentoo.org>
AuthorDate: 2021-07-20 02:17:28 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2021-07-20 02:18:32 +0000

    sys-fs/eudev: drop obsolete intltool dependency
    
    Nobody can find justification for keeping this;
    the eudev tree doesn't have any record of gettext, libintl,
    or intltool.
    
    Revbumping to allow folks to depclean a possibly large
    number of Perl modules.
    
    Closes: https://bugs.gentoo.org/795795
    Signed-off-by: Sam James <sam@gentoo.org>

 sys-fs/eudev/eudev-3.2.9-r1.ebuild | 236 +++++++++++++++++++++++++++++++++++++
 sys-fs/eudev/eudev-4.9999.ebuild   |   1 -
 sys-fs/eudev/eudev-9999.ebuild     |   1 -
 3 files changed, 236 insertions(+), 2 deletions(-)
Comment 5 Joshua Kinard gentoo-dev 2021-07-20 15:46:43 UTC
Looks like the ebuild for eudev-3.2.10 was missed.  That needs a -r1 as well.
Comment 6 Larry the Git Cow gentoo-dev 2021-07-20 18:31:50 UTC
The bug has been referenced in the following commit(s):

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

commit 2a834f04c02fdd7a5e69383c5ce59f07b9791433
Author:     Sam James <sam@gentoo.org>
AuthorDate: 2021-07-20 18:30:58 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2021-07-20 18:31:29 +0000

    sys-fs/eudev: drop intltool dependency from 3.2.10 too
    
    Fixes: c1640eb55838e64e993cb02aa7c1202e67f3226d
    Bug: https://bugs.gentoo.org/795795
    Signed-off-by: Sam James <sam@gentoo.org>

 sys-fs/eudev/{eudev-3.2.9-r1.ebuild => eudev-3.2.10-r1.ebuild} | 0
 1 file changed, 0 insertions(+), 0 deletions(-)
Comment 7 Larry the Git Cow gentoo-dev 2021-08-15 19:06:11 UTC
The bug has been closed via the following commit(s):

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

commit 24b5b6b5cae8a9e903e84c215257cf56e15cacc1
Author:     Sam James <sam@gentoo.org>
AuthorDate: 2021-08-15 19:04:36 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2021-08-15 19:05:27 +0000

    sys-fs/eudev: stabilise 3.2.10-r1 with intltool dep dropped
    
    Closes: https://bugs.gentoo.org/795795
    Signed-off-by: Sam James <sam@gentoo.org>

 sys-fs/eudev/eudev-3.2.10-r1.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)