archive mirror
 help / color / mirror / Atom feed
From: Anuradha Ratnaweera <>
To: Linux Kernel <>
Subject: Few thoughts about CML2 and kernel configuration
Date: Sat, 16 Jun 2001 11:22:27 +0600 (LKT)	[thread overview]
Message-ID: <Pine.LNX.4.21.0106160026320.7462-100000@presario> (raw)

Hello all,

I used CML2 on my laptop running Debian 2.2 (Linux 2.4.5). I think that it
would be fruitful to share my first CML2 experience with others as someone
who know the whereabouts of the kernel tree and very much used to CML1.

Most of the things worked great, except few exceptions.

Notice that I will be giving many details such as colors of the menus etc.
so that many others who haven't used CML2 yet would get an idea about it.

Also I would be describing my thoughts all over the process, which, I
believe, is an important feedback for good user interface design.

I remember Alan Cox seperating issues related to cml2 kernel configuration
into four of so different catagories. In that light, many things that
follow would apply to cml2 configuration tools and kernel cml2 rulebase,
and not to the cml2 language itself.

- I started with a fresh kernel source tree (2.4.2 + 2.4.[3-5] patches)

- CML2 installation (install-cml2) was quite straightforward. It found
  /usr/src/linux and applied necessary "patches".

- I ran make menuconfig, to which I am much used to. I rushed through the
  initial help screen, hoping that nothing unexpected would happen.

- The menu items were of different colors (and the meanings were obvious -
  good!). The architecture (x86) was frozen and _shown_ (in blue). Some
  items had the familiar [ ] and < > mark to the left while others didn't.
  I assumed that the latter should be leading to sub-menus (which was
  correct). The selected (y or m) items and sub-menu items were green
  while the others (unselected) were white.

- I entered "Configuration policy options" and turned on "Prompt for
  expert choices". CONFIG_EXPERIMENTAL was already set.

- "Architecture independent features" were quite straightforward.
  Here I turned on "BSD process accounting" (this had a "(NEW)" to its
  right, which I was rather suprised at) and turned off SMP.

- Intel x86 specific options were again straightforward where I set
  processor type to Pentium MMX, turned off MTTR, and turned on IO-APIC.
  Since the processor type selection had to turn off the already selected
  default processor, a dialog-box appeared to inform that it was set to n.

- "System busses and controller types" selection was again easy. "ISA BUS"
  was selected and marked frozen. The others were EISA, PCI, PNP/ISAPNP,

  Here I ran into two problems. The first is not really a problem.

  Both "PNP" and "ISAPNP" were selected to be build static into the
  kernel. I turned "PNP" to a module, and expected "ISAPNP" also to be
  converted to a module automatically, but it didn't. I had to do this
  by hand.

  Then I tried to turn on "Parallel port support". Here a dialog-box
  informed that this violates the rule

    (X86 implies (PARPORT_PC == PARPORT))

  Although the message is very clear (tristate values of PARPORT_PC
  should be the same as PARPORT for X86 boxes) I hadn't seen PARPORT_PC

  A better option would be to change PARPORT_PC at this poing and
  inform that (in a similar manner to processor type selection). Most,
  if not all, who configure an x86 box and trying to select PARPORT would
  give the same answer to PARPORT_PC.

  I also turned off SCSI and USB.

- I came back to the main menu and noticed that the sub-menu items related
  to SCSI and USB are gone (as expected - good!)

- PM and "Architecture specific hacks" was fine.

- MTD was turned off

- Block devices and Networking options, Network device support was

- Linux telephony support was rather different from others. For some
  sub-menus (such as MTD, SOUND) a question is asked on the main screen
  and if the answer is y or m the sub-menu is shown. But for telephony,
  the sub-menu is shown and items in it are shown only if its first
  item "Linux telephony support" is selected (which is similar to
  cml1 configuration).

- The other configuration options were also quite straighforward.

- I didn't find PARPORT_PC (probably I missed it somewhere) ;-(

I have some comments about the cml2 configuration system for Linux kernel.
These are my own comments and would be very different from someone else's,
because many of them depends on the taste.

- Its design is much better than cml1 which is simply a way of showing
  a hierachy of menus.

- The feeling is much similar to that of using lynx (especially using
  left-arrow). It would be very nice if pressing right-arrow gives the
  same effect as pressing enter.

- Some changes (say changing Y of "loadable module support" to M) would
  change many other selections and the configuration will first do
  those changes and tell us that it did them. Isn't it better to ask a
  question like "This would change the followings, so do you want to
  do those changes, too? or do you want to revert this selection?", so
  that accidents will not cause big problems.

- Some sub-menus on the main screen are turned on/off by a selection of an
  item in a sub-menu (e.g.: SCSI, USB) while others are turned on/off at 
  the main screen itself (e.g.: MTD, SOUND). How about moving them also to
  a seperate sub-menu (say "Miscellaneous ..."). Then we have two kinds of
  sub-menus on the main screen. Some are always shown (e.g. "System busses
  and controller types"). Depending on the user's selections of the items
  in these menus, other submenus are shown or supressed. Then the main
  menu doesn't contain any tristate questions, but only sub-menus.

CML2 is a great way to configure a system with complicated dependencies
and I am already starting to use it for some. Hope that its original and
most important (to me at least ;) application, the configuration of the
Linux kernel would be a great success.

Regards and greetings,


Lanka Linux User Group (LKLUG)


             reply	other threads:[~2001-06-16  6:40 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-06-16  5:22 Anuradha Ratnaweera [this message]
2001-06-16  8:14 ` John R Lenton

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=Pine.LNX.4.21.0106160026320.7462-100000@presario \ \ \
    --subject='Re: Few thoughts about CML2 and kernel configuration' \

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).