ports/162049: The Ports tree lacks a framework to restart services

Dominic Fandrey kamikaze at bsdforen.de
Mon Oct 31 10:41:32 UTC 2011


On 31/10/2011 09:37, Doug Barton wrote:
> On 10/31/2011 00:38, Dominic Fandrey wrote:
>> On 31/10/2011 07:28, Doug Barton wrote:
>>> On 10/27/2011 09:27, Scott Lambert wrote:
>>>> On Thu, Oct 27, 2011 at 11:15:00AM +0200, Ed Schouten wrote:
>>>>> What really bothers me when I use the FreeBSD Ports tree on one of my
>>>>> systems, is that the behaviour of dealing with services is quite
>>>>> inconsistent. 
>>>>
>>>> If all of that is contingent upon a boolean knob the admin can set,
>>>> something like NO_RESTART_SERVICES, I suspect everyone could get
>>>> what they want and the bikeshed would be limitted to what the default
>>>> for that boolean should be.
>>>>
>>>> The people who don't want the services restarted automagically can
>>>> set it and, once things use the new ports framewoork properly, not
>>>> have to worry about suprises.  The people who want everything to
>>>> restarted as soon as possible can set the knob the other way.  
>>>>
>>>
>>>
>>> I think Scott's on the right track. The way that I envision it working
>>> would be a 3-knob system. One knob to always restart the services, one
>>> to never do it; and then asking on a per-port basis, which should be the
>>> default. I can imagine portmaster detecting this option in the pre-build
>>> phase similarly to how it detects and warns about IS_INTERACTIVE now,
>>> and giving the user a menu of options for how to handle it. I'm happy to
>>> add more details if people are interested.
>>
>> I think this should be handled in the pkg-install script. Pkg based
>> upgrade tools _do_ exist.
> 
> Yeah, that's what I said below. :)

Sorry about that, I read the entire thread in one go, might have overlooked
something. Ironic, because the purpose was to avoid posting redundant
feedback.

>>> Where this actually becomes interesting is not in the ports
>>> build/install process, which is pretty easy to deal with, but with
>>> package installs/deinstalls. I definitely think it's doable, what we
>>> probably want to do is put a knob for this in the port's Makefile, and
>>> handle the stop/start for both the port and the package with a little
>>> script that can be included in the package, and run with @exec and @unexec.
>>
>> Note the Porters' Handboock chapter 6.23.1. The knob to stop services is
>> already there.
> 
> That feature as it exists currently isn't even close to adequate, and is
> causing more problems than it solves. Hence the discussion.

Well, I am one of the people who see no need for this feature and my vote
is for default off, if it's implemented.

I just wanted to hint that such a function is already in place and I don't
think it would be difficult to add the possibility to start a service.

What has to be done after an update is often very specific, though.
I don't envy the person having to come up with an adequate implementation.
E.g. it's not always the service installed by the pkg that needs to be
restarted:
http://www.freebsd.org/cgi/cvsweb.cgi/ports/sysutils/automounter/pkg-message?rev=1.2;content-type=text%2Fplain

Regards

-- 
A: Because it fouls the order in which people normally read text.
Q: Why is top-posting such a bad thing?
A: Top-posting.
Q: What is the most annoying thing on usenet and in e-mail? 


More information about the freebsd-ports mailing list