[systemd-devel] [PATCH] shared/install: don't report 'static' when unit contains only Also=

Zbigniew Jędrzejewski-Szmek zbyszek at in.waw.pl
Fri Nov 7 05:24:26 PST 2014


On Fri, Nov 07, 2014 at 01:06:41PM +0100, Lennart Poettering wrote:
> On Fri, 07.11.14 09:49, Jan Synacek (jsynacek at redhat.com) wrote:
> 
> > Lennart Poettering <lennart at poettering.net> writes:
> > > On Thu, 06.11.14 10:49, Jan Synacek (jsynacek at redhat.com) wrote:
> > >
> > >> I think that this patch might be a bit ineffective, as it calls
> > >> unit_file_load() again just to get an InstallContext. I wasn't sure
> > >> how to get Also= targets in any other way.
> > >> 
> > >> If such change makes sense, this patch should probably be considered a
> > >> preview rather than something to be committed right away.
> > >
> > > Hmm, wouldn't it be nicer to introduce a new UnitFileState enum value
> > > for this?
> > >
> > > Maybe UNIT_FILE_ALSO or so? 
> > >
> > > I am not sure I like the idea of implicitly following the Also= setting here, due
> > > to the awkwarndess if multiple units are listed and how to map exotic
> > > states of that other unit back to ours...
> > >
> > > Would that make sense?
> > >
> > > Lennart
> > 
> > Yes, that makes sense. What should a string representation of
> > UNIT_FILE_ALSO be? I don't think that reporting 'also' would feel
> > right.
Maybe I'm missing something, but wouldn't be enough to report is as 'enabled'?
For some units adding another name from Also= really enables the unit,
and for other units the name from Also= is mostly cosmetic. What I'm
trying to say is that having or not the Also= name enabled is only approximate
information and does not always tell us if the unit will be started.

I'd prefer to redefine enabled/disabled/static as "this unit has at
least on of the declared links in the filesystem/the unit does not
have any defined links in the filesystem/this unit does not declare
any links in the filesystem", which is something that we can actually
check.

Zbyszek


More information about the systemd-devel mailing list