On 16/11/16 12:03 PM, William Hubbs wrote:
> On Wed, Nov 16, 2016 at 10:14:02AM -0500, Ian Stakenvicius wrote:
>> On 16/11/16 10:08 AM, William Hubbs wrote:
>>> opentmpfiles will be updated to install the service scripts which
>>> will be run when OpenRC boots a system. There is nothing for
>>> it to do if systemd is used to boot the system.
>>>
>>> William
>>>
>>
>> But there is something to do if openrc is used to boot the system and
>> systemd is the package providing tmpfiles.d processing via the virtual.
> 
> The providers (opentmpfiles and systemd) will not block each other, so
> the only way this will happen is if you have openrc and systemd
> installed then forcefully remove opentmpfiles. I think you would not
> want to do that until you are ready to migrate to booting with systemd.
> 
> William
> 

I think I'm having a hard time getting across the issue here...:

1 - we will have a virtual/tmpfiles that will bring in EITHER systemd,
or opentmpfiles.

2 - openrc will NOT depend on opentmpfiles (nor virtual/tmpfiles)

3 - Applications that install stuff into /usr/lib/tmpfiles.d/ will
need to depend on virtual/tmpfiles in order to make sure that the
system has something installed that will process them at boot-time.

GIVEN THIS, if a system has both systemd and openrc installed (that
is, they dual-boot), then virtual/tmpfiles will NOT bring in
opentmpfiles, and so if opentmpfiles is the only package that installs
init scripts then openrc won't trigger any processing of
/usr/lib/tmpfiles.d/* at bootup in this situation.

Just because systemd is installed doesn't mean it's the actual init in
use.  We deal with this with virtual/udev via udev-init-scripts, and
we will need -some sort- of similar situation here.  This case needs
to be addressed, and be done WITHOUT requiring the end-user to add
opentmpfiles to @world by hand.

I think, given the opentmpfiles and the systemd tmpfiles commands and
arguments can differ, it would likely make more sense to have a
virtual service in openrc (that is, keep tmpfiles.dev and
tmpfiles.setup as virtuals) and have opentmpfiles and systemd both
install init scripts for their respective implementation that will
provide each of those in openrc.  The alternative would be to make a
tmpfiles-init-scripts package that will contain a single set of
scripts that'll call either the opentmpfiles or the systemd-tmpfiles
implementation at runtime depending on what is available.



Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to