Re: [CFT] sysutils/bsdconfig: Replacement for sysinstall(8) post-install configuration abilities

2012-06-20 Thread Vitaly Magerya
Devin Teske  wrote:
> If you have the time and/or energy, please test and report any issues that
> you experience.

"Toggle Startup Services" dialog shows sendmail_enable and
sendmail_msp_queue_enable variables, but doesn't seem to show
sendmail_submit_enable and sendmail_outbound_enable. Is this
by design?

It also hangs if I try to toggle sendmail_msp_queue_enable.

(Tell me if you can't reproduce this easily, I'll provide more
details).
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: [CFT] sysutils/bsdconfig: Replacement for sysinstall(8) post-install configuration abilities

2012-06-20 Thread Devin Teske

On Jun 20, 2012, at 5:16 PM, Vitaly Magerya wrote:

> Devin Teske  wrote:
>> If you have the time and/or energy, please test and report any issues that
>> you experience.
> 
> "Toggle Startup Services" dialog shows sendmail_enable and
> sendmail_msp_queue_enable variables, but doesn't seem to show
> sendmail_submit_enable and sendmail_outbound_enable. Is this
> by design?
> 

What does the following produce:

service sendmail rcvar

Now what does this say:

grep sendmail /var/run/bsdconfig/startup_rcvar_map.cache

Do they agree?

The list is generated dynamically. If there's a variable that's missing, it's 
because it wasn't reported by the rc.d script.


> It also hangs if I try to toggle sendmail_msp_queue_enable.
> 
> (Tell me if you can't reproduce this easily, I'll provide more
> details).

Wow, that was an obscure bug! Thanks for finding that!

The nature of this bug is that if the item that you select in the menu is 
evenly divisible by both 2 and 3 landing on a boundary, the item works as 
expected, otherwise you can only toggle the item ON (not off).

Details are too boring to explain, I'll have to roll a new version.

Thank you so very much for finding this bug. I'll try to have it fixed today in 
the next hour or so.

Other areas should be unaffected.
-- 
Devin

_
The information contained in this message is proprietary and/or confidential. 
If you are not the intended recipient, please: (i) delete the message and all 
copies; (ii) do not disclose, distribute or use the message in any manner; and 
(iii) notify the sender immediately. In addition, please be aware that any 
message addressed to our domain is subject to archiving and review by persons 
other than the intended recipient. Thank you.
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: [CFT] sysutils/bsdconfig: Replacement for sysinstall(8) post-install configuration abilities

2012-06-20 Thread Devin Teske

On Jun 20, 2012, at 6:24 PM, Devin Teske wrote:

> 
> On Jun 20, 2012, at 5:16 PM, Vitaly Magerya wrote:
> 

[snip]

>> It also hangs if I try to toggle sendmail_msp_queue_enable.
>> 
>> (Tell me if you can't reproduce this easily, I'll provide more
>> details).
> 
> Wow, that was an obscure bug! Thanks for finding that!
> 

[snip]

>  I'll try to have it fixed today in the next hour or so.
> 
> Other areas should be unaffected.

Fixed, and I filed ports/169280.

As soon as someone commits that, you'll be able to portupgrade to the fixed 
version.
-- 
Devin

_
The information contained in this message is proprietary and/or confidential. 
If you are not the intended recipient, please: (i) delete the message and all 
copies; (ii) do not disclose, distribute or use the message in any manner; and 
(iii) notify the sender immediately. In addition, please be aware that any 
message addressed to our domain is subject to archiving and review by persons 
other than the intended recipient. Thank you.
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: [CFT] sysutils/bsdconfig: Replacement for sysinstall(8) post-install configuration abilities

2012-06-21 Thread Vitaly Magerya
Devin Teske wrote:
>> "Toggle Startup Services" dialog shows sendmail_enable and
>> sendmail_msp_queue_enable variables, but doesn't seem to show
>> sendmail_submit_enable and sendmail_outbound_enable. Is this
>> by design?
> 
> What does the following produce:
> 
>   service sendmail rcvar
> 
> Now what does this say:
> 
>   grep sendmail /var/run/bsdconfig/startup_rcvar_map.cache
> 
> Do they agree?

OK, both list sendmail_enable and sendmail_msp_queue_enable only. It
appears that /etc/rc.d/sendmail only registers sendmail_submit_enable
and sendmail_outbound_enable if they are enabled (and enabling or
disabling one of the four affects the status of others).

That behavior combined with the fact that bsdconfig does not recompute
rcvars each time you make modifications means that you can't manipulate
(i.e. disable) sendmail from bsdconfig.

I think the right thing to do is to fix /etc/rc.d/sendmail, but I don't
know how: removing the conditions around sendmail_submit_enable and
sendmail_outbound_enable parts fixes rcvar, but probably breaks other
commands.

Any ideas how to fix this?

> The nature of this bug is that if the item that you select in the
> menu is evenly divisible by both 2 and 3 landing on a boundary,
> the item works as expected, otherwise you can only toggle the item
> ON (not off).

Sounds interesting; there must be some really hairy stuff inside
bsdconfig if this is the kind of edge cases it has.
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: [CFT] sysutils/bsdconfig: Replacement for sysinstall(8) post-install configuration abilities

2012-06-21 Thread Devin Teske

On Jun 21, 2012, at 3:53 AM, Vitaly Magerya wrote:

> Devin Teske wrote:
>>> "Toggle Startup Services" dialog shows sendmail_enable and
>>> sendmail_msp_queue_enable variables, but doesn't seem to show
>>> sendmail_submit_enable and sendmail_outbound_enable. Is this
>>> by design?
>> 
>> What does the following produce:
>> 
>>  service sendmail rcvar
>> 
>> Now what does this say:
>> 
>>  grep sendmail /var/run/bsdconfig/startup_rcvar_map.cache
>> 
>> Do they agree?
> 
> OK, both list sendmail_enable and sendmail_msp_queue_enable only. It
> appears that /etc/rc.d/sendmail only registers sendmail_submit_enable
> and sendmail_outbound_enable if they are enabled (and enabling or
> disabling one of the four affects the status of others).
> 
> That behavior combined with the fact that bsdconfig does not recompute
> rcvars each time you make modifications means that you can't manipulate
> (i.e. disable) sendmail from bsdconfig.
> 

I wouldn't say that.

I'd say that because the output of "rcvar" is conditional, you can't [fully] 
manipulate sendmail. (i.e. you can't toggle "sendmail_outbound_enable" using 
bsdconfig).

BTW, if rcvar map cache was regenerated every time a variable got toggled, the 
menu would be unusable on my VM (which takes ~6-7 seconds to generate the cache 
-- passing "rcvar" to each rc.d script).


> I think the right thing to do is to fix /etc/rc.d/sendmail, but I don't
> know how: removing the conditions around sendmail_submit_enable and
> sendmail_outbound_enable parts fixes rcvar, but probably breaks other
> commands.
> 
> Any ideas how to fix this?
> 

I'll have a look at it, but the situation is thus:

Sysinstall's startup menu (replicated as-is in "bsdconfig startup_misc") is a 
hard-coded list with a hard-coded set of actions for each item.

I thought we could do better, and that's where "bsdconfig startup_rcvar" comes 
in.

I knew that startup_rcvar could not work perfectly because what's missing is a 
map of relational dependence between each of the rcvar's. In example, there's 
no way for me to know that toggling variable X will cause variables Y and Z to 
appear on the subsequent "rcvar" call to the rc.d script. Furthermore (and 
similarly), there's no way for me to tell if, while toggling a given service, 
that any other service should be toggled at the same time.

The former is a real issue, while the latter could perhaps be gleaned from 
reading the rcorder bits from the rc.d script to see if anything else needs to 
be toggled (ignoring the fake REQUIRES such as FILESYSTEMS, NETWORK, etc.).

Either way, I do feel that the initial offering is light years ahead of 
sysinstall(8)'s "Startup" menu even if it's not perfect.

Other options on the table are:
1. Change the rcvar output (of all scripts) to indicate dependency relationships
2. Change bsdconfig's startup_rcvar module to use a static list of variables 
(less desirable imho)
3. Fix sendmail's rcvar output to simply report all variables (haven't looked 
at the script yet to see how hard this will be -- but I'm leaning on this one 
first)


>> The nature of this bug is that if the item that you select in the
>> menu is evenly divisible by both 2 and 3 landing on a boundary,
>> the item works as expected, otherwise you can only toggle the item
>> ON (not off).
> 
> Sounds interesting; there must be some really hairy stuff inside
> bsdconfig if this is the kind of edge cases it has.

Well, it doesn't sound so hairy when I explain it…

dialog(1) (and Xdialog(1) too) support two different modes for menu-list 
widgets.

Item/Value pair's (this is the default)
and
Item/Value/Help triplets (enabled by passing "--item-help")

The latter functionality is used on the bsdconfig main menu as well as many of 
the menus in the "Startup" module to offer additional information at the bottom 
of the screen (or bottom of the window when using Xdialog).

The nature of the bug was that I was using f_dialog_menutag2item to translate 
the user's selection back into the value for said chosen-item. Problem was that 
this function expects item/value pairs, so I had to create a new API routine, 
f_dialog_menutag2item_with_help which does the same thing but expects 
item/value/help triplets.

So you can see why (when you're sending a list of sets-of-3 to a function that 
expects sets-of-2) the nature of the bug was that only the menu items that were 
evenly bounded worked as-expected while others did not.

Oh, and the reason for only being able to enable the broken items (but not 
disable) was because the fallback case for the mapped value was to to set to 
"YES" while we only set to "NO" when the mapped value has it's checkmark 
displayed (and since the mapped-value was NULL 2 out of 3 times, this resulted 
in not detecting the checkmark, defaulting to enabling the item).
-- 
Devin

_
The information contained in this message is proprietary and/or confidential. 
If you are not the intended recipient, please: (i) delete the messag

Re: [CFT] sysutils/bsdconfig: Replacement for sysinstall(8) post-install configuration abilities

2012-06-21 Thread Devin Teske
New minor revision 0.7.1 committed to ports.

Bugfix:
- Certain services in "Toggle Startup Services" (under the "Startup" menu) 
could not be toggled off.

If you have already installed 0.7.0, portupgrade should make short work of 
updating to the latest version.
-- 
Devin

P.S. Sorry for top-post.
P.P.S. Thanks goes to Vitaly Magerya for the bug report.
P.P.P.S. Thanks to wxs@ for help in ports.

On Jun 20, 2012, at 4:40 PM, Devin Teske wrote:

> Hi Folks,
> 
> This is a call for testing of the new sysutils/bsdconfig port.
> 
> Back in February, Ron McDowell and myself together decided we were going to 
> take-on the task of salvaging sysinstall(8)'s "Configure" menu while 
> simultaneously rewriting it into a system of shell scripts (making it similar 
> to bsdinstall) so that sysinstall(8) could be safely and quietly "put to 
> pasture" (meanwhile contradictorily _increasing_ functionality due to several 
> enhancements performed in the process).
> 
> After talking with a lot of other developers and really helpful folks, we 
> decided to shoot for the 9.1-R freeze to coincide with other new features 
> like pkgng. Currently, bsdconfig cannot do what sysinstall is known most for 
> (package installation), but that is because we have a plan to _start_ with 
> pkgng (and it just works better if pkgng can mature before the integration).
> 
> If the thought of losing sysinstall has ever made you uneasy because unique 
> functionality not found elsewhere, please try the sysutils/bsdconfig port to 
> help get it some testing.
> 
> With ~25,000 lines of code, we really need to get some testing on this before 
> adding this to HEAD and I've turned the source into a port to make the 
> testing process easier and to widen the audience.
> 
> If you have the time and/or energy, please test and report any issues that 
> you experience.
> 
> If things go well, we can get this MFC'd from HEAD before the 9.1 freeze.
> -- 
> Devin
> 
> _
> The information contained in this message is proprietary and/or confidential. 
> If you are not the intended recipient, please: (i) delete the message and all 
> copies; (ii) do not disclose, distribute or use the message in any manner; 
> and (iii) notify the sender immediately. In addition, please be aware that 
> any message addressed to our domain is subject to archiving and review by 
> persons other than the intended recipient. Thank you.
> ___
> freebsd-current@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"

_
The information contained in this message is proprietary and/or confidential. 
If you are not the intended recipient, please: (i) delete the message and all 
copies; (ii) do not disclose, distribute or use the message in any manner; and 
(iii) notify the sender immediately. In addition, please be aware that any 
message addressed to our domain is subject to archiving and review by persons 
other than the intended recipient. Thank you.
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: [CFT] sysutils/bsdconfig: Replacement for sysinstall(8) post-install configuration abilities

2012-06-24 Thread Bruce Cran

On 21/06/2012 00:40, Devin Teske wrote:

If you have the time and/or energy, please test and report any issues that you 
experience.


I've noticed a few typos and other minor issues:

In bsdconfig(8):
  Contains a link to itself under SEE ALSO.
  "bsdconfig takes a commands as an argument" - should be "command".

bsdconfig mouse:
  Typo "se Configuration menu".
  "Please Specify the mouse daemon flags" - don't need upper-case S.

bsdconfig hostname:
  The example should probably be in the example.com domain.

bsdconfig netdev:
  "Select a TCP/IP network interface to configure" doesn't need "TCP/IP".

bsdconfig nameservers:
  "Please enter the new TCP/IP address of the DNS nameserver" should 
just be "IP address". "TCP/IP" is being used where just "IP" was needed 
in other places too.


'bsdconfig command -h' doesn't always work:

> bsdconfig hostname -h
Illegal option -h

--
Bruce Cran
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: [CFT] sysutils/bsdconfig: Replacement for sysinstall(8) post-install configuration abilities

2012-06-26 Thread Devin Teske
Hi Bruce,

On Jun 24, 2012, at 5:14 PM, Bruce Cran wrote:

> On 21/06/2012 00:40, Devin Teske wrote:
>> If you have the time and/or energy, please test and report any issues that 
>> you experience.
> 
> I've noticed a few typos and other minor issues:
> 
> In bsdconfig(8):
>  Contains a link to itself under SEE ALSO.
>  "bsdconfig takes a commands as an argument" - should be "command".
> 

Fixed.


> bsdconfig mouse:
>  Typo "se Configuration menu".
>  "Please Specify the mouse daemon flags" - don't need upper-case S.
> 

Fixed.


> bsdconfig hostname:
>  The example should probably be in the example.com domain.
> 

Replaced with "full.example.com"


> bsdconfig netdev:
>  "Select a TCP/IP network interface to configure" doesn't need "TCP/IP".
> 

Done.


> bsdconfig nameservers:
>  "Please enter the new TCP/IP address of the DNS nameserver" should just be 
> "IP address". "TCP/IP" is being used where just "IP" was needed in other 
> places too.
> 

Done.


> 'bsdconfig command -h' doesn't always work:
> 

Enough people complained about this, that… it too is "fixed" (though I argue 
that there's absolutely nothing wrong with having "-h" be invalid to getopts -- 
the end result is the same with exception to the "illegal option -h" extra-line 
of output that everybody seems to complain about. Also mind you, that much of 
the FreeBSD Operating System suffers from this ""bug""


> > bsdconfig hostname -h
> Illegal option -h
> 

Like "tzsetup -h" and many others that are this way. I just can't win 
(inconsistencies everywhere in the system w/respect to this).
-- 
Devin

P.S. Fixes are in the up-coming 0.7.3 PORTVERSION of sysutils/bsdconfig.

_
The information contained in this message is proprietary and/or confidential. 
If you are not the intended recipient, please: (i) delete the message and all 
copies; (ii) do not disclose, distribute or use the message in any manner; and 
(iii) notify the sender immediately. In addition, please be aware that any 
message addressed to our domain is subject to archiving and review by persons 
other than the intended recipient. Thank you.
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: [CFT] sysutils/bsdconfig: Replacement for sysinstall(8) post-install configuration abilities

2012-06-26 Thread Bruce Cran

On 27/06/2012 02:11, Devin Teske wrote:
Like "tzsetup -h" and many others that are this way. I just can't win 
(inconsistencies everywhere in the system w/respect to this). 


Not at all: bsdconfig claims to support -h whereas tzsetup doesn't:

SYNOPSIS
 tzsetup [-nrs] [-C chroot_directory] [zoneinfo_file | zoneinfo_name]

SYNOPSIS
 bsdconfig [-h]
 bsdconfig command [-h]
 bsdconfig [OPTIONS] [command [OPTIONS]]


--
Bruce Cran
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: [CFT] sysutils/bsdconfig: Replacement for sysinstall(8) post-install configuration abilities

2012-06-27 Thread Bruce Cran

On 27/06/2012 02:11, Devin Teske wrote:

Fixed.


Thanks!
The mouse daemon flags text still seems to have an upper-case 'S' 
('Please Specify').


--
Bruce Cran
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: [CFT] sysutils/bsdconfig: Replacement for sysinstall(8) post-install configuration abilities

2012-06-27 Thread Devin Teske

On Jun 27, 2012, at 8:58 AM, Bruce Cran wrote:

> On 27/06/2012 02:11, Devin Teske wrote:
>> Fixed.
> 
> Thanks!
> The mouse daemon flags text still seems to have an upper-case 'S' ('Please 
> Specify').
> 

Oops, forgot that one. Thanks Bruce!

Fixed.
-- 
Devin

NOTE: I probably won't be rushing to roll a new port version for this change; 
just know that it will make it into the next snapshot (and has been made to the 
tree that will be imported to HEAD later, if there aren't any other issues 
reported by end-of-day).

_
The information contained in this message is proprietary and/or confidential. 
If you are not the intended recipient, please: (i) delete the message and all 
copies; (ii) do not disclose, distribute or use the message in any manner; and 
(iii) notify the sender immediately. In addition, please be aware that any 
message addressed to our domain is subject to archiving and review by persons 
other than the intended recipient. Thank you.
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"