On Sun, Mar 24, 2019 at 3:34 PM Dale <[email protected]> wrote: > > Rich Freeman wrote: > > On Sun, Mar 24, 2019 at 1:02 PM Dale <[email protected]> wrote: > >> Rich Freeman wrote: > >>> Suppose you have an Acme model 1234 network card. You've previously > >>> answered Yes to enabling its driver, and No to enabling the Acme model > >>> 2345 card. > >>> > >>> Now a new option comes along to show/hide all the Acme cards. That is > >>> a new option, so it has no existing value as far as the config > >>> database design goes. If you answer No, then you disable your model > >>> 1234 card (without even being asked, because that isn't a new option). > >>> If you answer yes then effectively your previous choices remain in > >>> effect (model 1234 remains enabled, and model 2345 remains disabled). > >>> > >> One would think it should ask if you want any ACME drivers first. If > >> you say yes then ask which ones you want. If you answer no then disable > >> them all and move to the Better-than-nothing drivers next in the list, > >> assuming the are alphabetical. > > This is exactly what it is doing. There is a new question about > > whether you want any ACME drivers. It defaults to Yes. If you answer > > Yes then it prompts you for each individual driver, though it will > > skip those prompts since you've already answered them. > > > > If you answer No then it will set all the individual drivers to No > > (including the ones you previously set to Yes), and not prompt you > > further. > > > >> Once you get past that driver, nothing > >> else should disable the drivers you wanted. > > But the drivers you wanted WERE Acme drivers, so if you answered No to > > that question why would it prompt for those? > > > > The point I was making is once set to yes, then questions after that > should not go back and disable what you said yes too. If a person goes > to the trouble of saying yes, then nothing after that should reverse > that option back to no. From what I understand, if it asks a question > later on and you say no, it reverses a previous yes even if you want > that first one included.
The new question comes before the old question in sequence. Before the questions were: 1. Do you want to install the Acme 1234 driver? 2. Do you want to install the Acme 2345 driver? After the upgrade the questions are: 0. Do you want to install any Acme drivers? 1. Do you want to install the Acme 1234 driver? 2. Do you want to install the Acme 2345 driver? So, if you answer question 0 with a no, then it sets 1/2 to a no as well. These questions come AFTER question 0, even if you had already answered them in an earlier kernel version that was missing question 0. Again, I'm not saying it is ideal. However, this is why question 0 defaults to yes. If you accidentally answer Yes for question 0 when you intended no, the only effect is asking questions 1/2, which won't actually get asked since you had previously answered them anyway. Question 0 doesn't actually change the kernel build - it just controls whether questions 1/2 get asked, and if you answer it no then it sets 1/2 to no as well. It is a design compromise so that they didn't have to rethink the entire kernel config design. -- Rich

