Follow Slashdot blog updates by subscribing to our blog RSS feed

 



Forgot your password?
typodupeerror
×
Linux Software

CML2 Coming in Kernel 2.5 190

MrHat writes: "Eric S. Raymond's CML2, or 'Configuration Menu Language' -- part of the next-generation Linux kernel build system -- is now officially ready for 2.5. CML2 includes a compiler for a domain-specific configuration language, used to configure kernel subsystems and resolve dependencies between them. CML2 and Linux 2.5 will 'ship' with several different configuration interfaces, including an adventure game, whipped up by ESR during an extended flight. The story from the horse's mouth (or LKML, if you prefer):'This release resolves all known logic bugs and rulebase problems. The only things left on the to-do list are convenience features and some minor improvements in the test/coverage tools. This code is now officially ready for the 2.5 fork.'"
This discussion has been archived. No new comments can be posted.

CML2 Coming in Kernel 2.5

Comments Filter:
  • Other Projects (Score:4, Interesting)

    by aridhol ( 112307 ) <ka_lac@hotmail.com> on Thursday November 15, 2001 @02:49PM (#2570154) Homepage Journal
    The other examples posted on ESR's page are for kernel-oriented projects. How hard is it to stick this in another project? Something slightly smaller-scale than the kernel?

    Also, this seems to only be concerned with compilation-time configuration. Although pre-compilation config is important, how hard is it to adapt this to work after compilation? If another app could use this configuration engine after it's been compiled and distributed, it may make it easier to customize pre-compiled packages (RPMs, DEBs, etc).
  • Hmmm (Score:5, Interesting)

    by einhverfr ( 238914 ) <chris.travers@g m a i l.com> on Thursday November 15, 2001 @02:57PM (#2570196) Homepage Journal
    I read the article and I was immediately impressed at how much MORE readable CML1 was... Perhaps because I know enough shell scripting to follow it in my head. CLM2 was impossible for me to quickly follow what was going on and I had to think about it quite a bit more.

    I think the basic idea of CLM2 remains sound, but I wonder if it will result in more "cutting and pasting" rather than direct editing...
  • Re:Other Projects (Score:3, Interesting)

    by Telex4 ( 265980 ) on Thursday November 15, 2001 @03:04PM (#2570240) Homepage
    Post compilation, configuration can only really be done with configuration files, like those used by LILO, XFree86 and various other apps. At the moment, you're right, there's no standard for the layout and internals of config files, and no standard program to interpret them. Some of the biggest steps forward have been made in this area in GUIs like KDE and GNOME, where configuration has been made simple and accessible. Although it would be a mammoth task given the number of config files in any OS already, it would be a good project to try and extend ESR's idea to formalise config files for compiled packages.
  • Why not XML? (Score:3, Interesting)

    by Anonymous Coward on Thursday November 15, 2001 @03:17PM (#2570327)
    If it's a tree then why not use XML? I mean there are hundreds of tools available right now on every platform - why bother making your own language?
  • another language? (Score:3, Interesting)

    by krokodil ( 110356 ) on Thursday November 15, 2001 @03:22PM (#2570347) Homepage
    Why people keep inventing new pet laguages?
    Whe he could not use GUILE, which is designed for things like this, adding domain-specific functions.
  • Better, I hope. (Score:1, Interesting)

    by rice_burners_suck ( 243660 ) on Thursday November 15, 2001 @03:28PM (#2570387)

    It would be great if this makes Linux kernel configuration easier and more flexible. With all the things Linux is designed to do nowadays (that is, operate on pretty much everything from a wristwatch to a computer the size of a building and everything in between), with so many different processor types and kernel configuration options, it must be a nightmare to configure a kernel from scratch. Hopefully CML2 will make this process easier for everybody.

  • Python ? (Score:0, Interesting)

    by Anonymous Coward on Thursday November 15, 2001 @03:34PM (#2570420)
    Sorry ESR, but I don't want to install Python to be able to configure and compile the kernel.
  • by Anonymous Coward on Thursday November 15, 2001 @03:34PM (#2570423)
    One issue for newbies with the current linux kernel configuration is the "inverse problem:"

    I want feature X, what requirements will enable me to select it?

    A trivial example: 2.4.0 required "experimental features" to allow resiserfs to be selected.

    I hope that CML2 will alow for searching for and selecting choices anywhere in the decision tree, and "pushing-up" the requirements imposed by the decision (or pointing out problems).
  • Re:Other Projects (Score:2, Interesting)

    by Telex4 ( 265980 ) on Thursday November 15, 2001 @03:41PM (#2570448) Homepage
    Yes, it is. Making a GNU/Linux registry would have its ups and downs - the downs probably outweighing the ups. The up would be that it would make using the OS a lot easier for newer users. The downs would be that it would be hell to implement, it would put a lot of developers off, and it would make cross-platform compatability harder to achieve.
  • by 2Bits ( 167227 ) on Thursday November 15, 2001 @03:50PM (#2570519)
    Why can't we have a very simple but intelligent suggestion for newbie kernel config?

    For example, the utility starts by doing a hardware diagnostics first, to see what does the system has. Then ask a few simple questions on the normal usage patterns, like

    - Do you have any plug-and-play hardwares that you plug in on run-time?
    - what kind of pnp hardwares?
    - do you do multimedia?
    - ...

    Then base on the user answers, just come up with an "optimal" configuration, and ask for the user's approval (you may want to tell the user the reason behind this config, e.g. put the sound module as loadable module, because the user said s/he is using sound only once a while). Then compile the kernel for optimal performance for the user's specific hardware configuration and usage patterns.
  • by MikeBabcock ( 65886 ) <mtb-slashdot@mikebabcock.ca> on Thursday November 15, 2001 @05:27PM (#2571013) Homepage Journal
    The current configuration system is really bloated and hard to maintain, especially for new module coders. The main thing that CML2 did first was to organise the configuration dependancies and information into a logical system that's consistent across the kernel. More importantly to me though is that it has a 'solver' if you will in it. It can 'prove' that a given configuration is valid before you go through the rigors of a 'make bzImage'. This keeps you from selecting options that unselect others (without telling you first) and makes it easier for module maintainers to code in these dependancies themselves.

Ya'll hear about the geometer who went to the beach to catch some rays and became a tangent ?

Working...