Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 534704 - sys-fs/eudev should optionally depend on sys-fs/udev-init-scripts
Summary: sys-fs/eudev should optionally depend on sys-fs/udev-init-scripts
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: eudev team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-01-04 20:15 UTC by Piotr Karbowski (RETIRED)
Modified: 2015-04-29 15:32 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 Piotr Karbowski (RETIRED) gentoo-dev 2015-01-04 20:15:42 UTC
Hi,

At this moment udev-init-scripts is hard dependency. The init scripts are installed and automatically added to sysinit runlevel.

For users who use other /dev managment solutions like mdev, it should be possible to not pull in the init scripts. Non-udev users often install udev or eudev to satisfy the media-libs/mesa dependencies, chromium requires libudev too.

The solution would be to add init-scripts useflags, enabled by default, so users who have 'sysfs/eudev -*' would have no problem.

Reproducible: Always
Comment 1 Anthony Basile gentoo-dev 2015-01-05 13:22:01 UTC
(In reply to Piotr Karbowski from comment #0)
> Hi,
> 
> At this moment udev-init-scripts is hard dependency. The init scripts are
> installed and automatically added to sysinit runlevel.
> 
> For users who use other /dev managment solutions like mdev, it should be
> possible to not pull in the init scripts. Non-udev users often install udev
> or eudev to satisfy the media-libs/mesa dependencies, chromium requires
> libudev too.
> 
> The solution would be to add init-scripts useflags, enabled by default, so
> users who have 'sysfs/eudev -*' would have no problem.
> 
> Reproducible: Always

Good point but this also applies to sys-fs/udev then.  We should have a common use flag.
Comment 2 Ian Stakenvicius (RETIRED) gentoo-dev 2015-01-05 16:46:59 UTC
The init scripts are for openrc, so IUSE="openrc" seems to make the most sense.

That said, I believe this conversation has anready taken place multiple times in 2014 and so far as I can remember the consensus has been to keep it a hard dep; the option for the few users that want to avoid installing udev-init-scripts is to use package.provided to make the PM think it's there.

Also, I believe there was a rumour that udev-init-scripts is going to be retired soon in favour of each udev provider packaging their own.  So this bug becomes moot if that happens.
Comment 3 Piotr Karbowski (RETIRED) gentoo-dev 2015-01-05 17:15:29 UTC
(In reply to Ian Stakenvicius from comment #2)
> That said, I believe this conversation has anready taken place multiple
> times in 2014 and so far as I can remember the consensus has been to keep it
> a hard dep; the option for the few users that want to avoid installing
> udev-init-scripts is to use package.provided to make the PM think it's there.

Is it anywhere to read up? I am not really into the way of thinking like why enhance when only few people will benefit from it. The improvement to made is pretty clear so I would really vote for go for it.

(In reply to Ian Stakenvicius from comment #2)
> Also, I believe there was a rumour that udev-init-scripts is going to be
> retired soon in favour of each udev provider packaging their own.  So this
> bug becomes moot if that happens.

Its not like like this bug require much of effort or that if additional USE flag will be added it coudn't disappear later along with udev-init-scripts, it it goes away too.
Comment 4 Anthony Basile gentoo-dev 2015-01-06 12:52:31 UTC
(In reply to Ian Stakenvicius from comment #2)
> The init scripts are for openrc, so IUSE="openrc" seems to make the most
> sense.
> 

We dropped USE=openrc for eudev-2* and above because eudev and openrc are independant.  This left sys-fs/udev-init-scripts orphaned so we now hard depend on it as a PDEPEND.

But I think the logic should be the same as for unit files: we install them unconditionally.
Comment 5 Piotr Karbowski (RETIRED) gentoo-dev 2015-01-06 14:16:49 UTC
The real problem behind udev-init-scripts is that they do automatically add udev to sysinit runlevel. I've run into the issue where I had both udev and mdev started. That's why I think the init scripts shoudn't be hard dep whatsoever.
Comment 6 Ian Stakenvicius (RETIRED) gentoo-dev 2015-01-06 17:33:51 UTC
(In reply to Piotr Karbowski from comment #5)
> The real problem behind udev-init-scripts is that they do automatically add
> udev to sysinit runlevel. I've run into the issue where I had both udev and
> mdev started. That's why I think the init scripts shoudn't be hard dep
> whatsoever.

That sounds like an openrc bug -- udev should be started as a provider of 'dev-manager', and if the mdev init script is installed it should be used instead, especially since mdev is lexicographically before udev.
Comment 7 Anthony Basile gentoo-dev 2015-01-07 12:50:18 UTC
(In reply to Ian Stakenvicius from comment #6)
> (In reply to Piotr Karbowski from comment #5)
> > The real problem behind udev-init-scripts is that they do automatically add
> > udev to sysinit runlevel. I've run into the issue where I had both udev and
> > mdev started. That's why I think the init scripts shoudn't be hard dep
> > whatsoever.
> 
> That sounds like an openrc bug -- udev should be started as a provider of
> 'dev-manager', and if the mdev init script is installed it should be used
> instead, especially since mdev is lexicographically before udev.

Agreed.  We have several providers now and one script.  So we need to add intelligence to it.
Comment 8 William Hubbs gentoo-dev 2015-03-16 18:40:29 UTC
(In reply to Piotr Karbowski from comment #0)
> Hi,
> 
> At this moment udev-init-scripts is hard dependency. The init scripts are
> installed and automatically added to sysinit runlevel.
> 
> For users who use other /dev managment solutions like mdev, it should be
> possible to not pull in the init scripts. Non-udev users often install udev
> or eudev to satisfy the media-libs/mesa dependencies, chromium requires
> libudev too.
> 
> The solution would be to add init-scripts useflags, enabled by default, so
> users who have 'sysfs/eudev -*' would have no problem.

I believe I can use the build use flag to control whether the scripts are added to the runlevel or not. I would prefer that instead of the use flag.

(In reply to Ian Stakenvicius from comment #2)
> Also, I believe there was a rumour that udev-init-scripts is going to be
> retired soon in favour of each udev provider packaging their own.  So this
> bug becomes moot if that happens.

I haven't heard this, and I wouldn't recommend it.

The reason the scripts were split out is that this allows them to be tested and stabled separately from the package. MySQL/mariadb/etc do the same thing; the init scripts are a separate package.
Comment 9 William Hubbs gentoo-dev 2015-04-29 15:32:46 UTC
My understanding of why this was being forced into the sysinit runlevel
is it was being done for the stages and livecd.

I have been told that this can be handled another way by
releng, so I am fixing the live ebuild so that it will not add the
services to the sysinit runlevel any longer.