Skip to contentSkip to conversation

Kernel configuration. It's not just a job, it's an adventure!

DISCUSSION Eric S. Raymond 4 participants 6 messages Jun 17, 2001

lore
Share & tools
lore
#0 lore raw

Various people on the Linux kernel mailing list and elsewhere have been heard to opine that CML2's user interface is too oriented towards nontechnical users. In response to these complaints, I have implemented a fourth CML2 front end with an interface style expressly designed for the serious, hard-core hacker. A transcript of an example session follows:

----------------------------------------------------------------------------
Welcome to CML2 Adventure, version 1.6.1.
You are in a maze of twisty little Linux kernel options menus, all different. The main room. A sign reads `Linux Kernel Configuration System'. Passages lead off in all directions.

Quoted 1 line

n

The arch room. A sign reads `Processor type'.
A passage leads upwards.

Choose your processor architecture.
A brass lantern is here.
There is a row of buttons on the wall of this room. They read:
X86, ALPHA, SPARC32, SPARC64, MIPS32, MIPS64, PPC, M68K, ARM, SUPERH, IA64, PARISC, S390, S390X, CRIS The button marked X86 is pressed.

Quoted 1 line

take lantern

Lantern: taken.

Quoted 1 line

look X86

Value of X86 is y.
This is Linux's home port. Linux was originally native to the Intel 386, and runs on all the later x86 processors including the Intel 486, 586, Pentiums, and various instruction-set-compatible chips by AMD, Cyrix, and others.

Quoted 1 line

up

In main room.

Quoted 1 line

nearby

The arch room. A sign reads `Processor type'.
The archihacks room. A sign reads Architecture-specific hardware hacks'. The buses room. A sign reads System buses and controller types'. The pm room. A sign reads `Power management'.
The mtd room. A sign reads Memory Technology Device (MTD) support'. The x86 room. A sign reads Intel and compatible 80x86 processor options'. The policy room. A sign reads Configuration policy options'. The generic room. A sign reads Architecture-independent feature selections'. The block_devices room. A sign reads `Block devices'.

Quoted 1 line

go generic

The generic room. A sign reads `Architecture-independent feature selections'. A passage leads upwards.

There is an option named MODULES here.
There is an option named NET here.
There is an option named SYSVIPC here.
There is an option named BSD_PROCESS_ACCT here.
There is an option named SYSCTL here.
There is an option named BINFMT_AOUT here.
There is an option named BINFMT_MISC here.
There is an option named SMP here.

Quoted 1 line

take NET

NET: taken.

Quoted 1 line

take MODULES

Tristate symbols won't default to M.
MODULES: taken.

Quoted 1 line

up

In main room.

Quoted 1 line

nearby

The arch room. A sign reads `Processor type'.
The archihacks room. A sign reads Architecture-specific hardware hacks'. The buses room. A sign reads System buses and controller types'. The pm room. A sign reads `Power management'.
The mtd room. A sign reads Memory Technology Device (MTD) support'. The x86 room. A sign reads Intel and compatible 80x86 processor options'. The policy room. A sign reads Configuration policy options'. The generic room. A sign reads Architecture-independent feature selections'. The block_devices room. A sign reads `Block devices'.

Quoted 1 line

go buses

The buses room. A sign reads `System buses and controller types'. A passage leads upwards.

Specify the buses, disk controllers, and internal interconnection standards that you want your kernel to support.
It is very dark. If you continue, you are likely to be eaten by a grue. There is an option named EISA here.
There is an option named PCI here.
There is an option named PNP here.
There is an option named PARPORT here.
There is an option named HOTPLUG here.
There is an option named IDE here.
There is an option named SCSI here.
There is an option named USB here.
There is an option named I2O here.
There is an option named MTD here.
There is an option named WATCHDOG here.

Quoted 1 line

light lantern

The lantern radiates a mellow golden light.

Quoted 1 line

take PCI

PCI: taken.

Quoted 1 line

help

Welcome to the adventure configurator. For a command summary, type `commands'. In general, a three-letter abbreviation of any command word is sufficient to identify it to the parser.

This interface emulates the style of classic text adventure games such as Colossal Cave Adventure and Zork. Configuration menus are rooms, and configuration options are objects that can be taken and dropped (except for choice/radiobutton symbols, which become buttons on various room walls). Objects and rooms may silently appear and disappear as visibilities change.

Have fun, and beware of the grues!

In main room.

Quoted 1 line

commands

look [target] -- look here or at target (direction or option).

nearby        -- list nearby rooms (useful with go)
go            -- go to a named menu (follow with the label).
inventory     -- show which options you have picked up.
drop          -- unset option.
take [module] -- set option, follow with option name.
press         -- press a button (follow with the button name).
set           -- set numeric or string; follow with symbol and value.
load          -- read in a configuration (follow with the filename).
save          -- save the configuration (follow with a filename).
xyzzy         -- toggle suppression flag.
quit          -- quit, discarding changes.
exit          -- exit, saving the configuration.

You can move in compass directions n,e,w,s,ne,nw,se,sw or dn for down.

Quoted 1 line

quit

----------------------------------------------------------------------------

Signature · 5 lines
		<a href="http://www.tuxedo.org/~esr/">Eric S. Raymond</a>

What, then is law [government]? It is the collective organization of
the individual right to lawful defense."
	-- Frederic Bastiat, "The Law"
#1 lore raw
Quoted 5 lines · Eric S. Raymond

Various people on the Linux kernel mailing list and elsewhere have been heard to opine that CML2's user interface is too oriented towards nontechnical users. In response to these complaints, I have implemented a fourth CML2 front end with an interface style expressly designed for the serious, hard-core hacker. A transcript of an example session follows:<snip>

don't you have some linux advocating to be doing? :)

_WAY_ too much time on your hands!

i could not, however, resist matching the original adventure games:

Quoted 1 line

take SCSI

It won't budge.

Quoted 1 line

take SCSI

Seriously, it is not going to move an inch.

Quoted 1 line

take SCSI

You try, but it won't move.

Quoted 1 line

take SCSI

It moves a little!

Quoted 1 line

take SCSI

SCSI: taken.

Signature · 3 lines
Robert M. Love
[email protected]
[email protected]
#2 lore raw
In reply to Eric S. Raymond
Quoted 3 lines · Eric S. Raymond

Welcome to CML2 Adventure, version 1.6.1.
You are in a maze of twisty little Linux kernel options menus, all different. The main room. A sign reads `Linux Kernel Configuration System'.

Sick, Eric, very, very sick!

ps. Replace the grue with a mundie, much easier to kill.

#3 lore raw
In reply to Eric S. Raymond

Robert Love <[email protected]>:

Quoted 1 line

_WAY_ too much time on your hands!

I wrote most of CML2 Adventure on a long airplane flight.

Signature · 6 lines
		<a href="http://www.tuxedo.org/~esr/">Eric S. Raymond</a>

"This country, with its institutions, belongs to the people who inhabit it. 
Whenever they shall grow weary of the existing government, they can exercise
their constitutional right of amending it or their revolutionary right to 
dismember it or overthrow it."	-- Abraham Lincoln, 4 April 1861
#4 lore raw
In reply to Eric S. Raymond
Quoted 13 lines · Eric S. Raymond
Quoted 1 line

go buses

The buses room. A sign reads `System buses and controller types'. A passage leads upwards.

Specify the buses, disk controllers, and internal interconnection standards that you want your kernel to support.
It is very dark. If you continue, you are likely to be eaten by a grue. There is an option named EISA here.
There is an option named PCI here.
There is an option named PNP here.
There is an option named PARPORT here.
There is an option named HOTPLUG here.

Quoted 1 line

take HOTPLUG

You can now plug, if you are hot enough.

SCNR, but a nice game indeed ;-)

Regards

Ingo Oeser

Signature · 1 line
Use ReiserFS to get a faster fsck and Ext2 to fsck slowly and gently.
#5 lore raw
In reply to Eric S. Raymond

[email protected] <[email protected]>:

Quoted 2 lines

I have to ask, is this something you wrote, or an actual log from something you wrote? (=:]

What? Moi, perpetrate a trifling and crude hoax? You wound me, sir, by supposing I would ever stoop to such gaucherie. It is so much more *elegantly* absurd to actually write the program, is it not?

CML2 Adventure is part of the 1.6.1 release of CML2. You can download it from <http://www.tuxedo.org/~esr/cml2/> and try it out yourself.

Signature · 9 lines
		<a href="http://www.tuxedo.org/~esr/">Eric S. Raymond</a>

Hoplophobia (n.): The irrational fear of weapons, correctly described by 
Freud as "a sign of emotional and sexual immaturity".  Hoplophobia, like
homophobia, is a displacement symptom; hoplophobes fear their own
"forbidden" feelings and urges to commit violence.  This would be
harmless, except that they project these feelings onto others.  The
sequelae of this neurosis include irrational and dangerous behaviors
such as passing "gun-control" laws and trashing the Constitution.