From: Alexandros Stergiakis on 14 Mar 2010 07:30 MikroConf is a command-line administration interface for embedded Linux devices, similar to those found in commercial routers. In other words, you can do things like: Router> en Router# conf term Router(config)# hostname TclTk TclTk(config)# end TclTk# write TclTk# show run … MikroConf is not only 100% written in Tcl, but also makes heavy use of certain Tcl features to facilitate implementation, and also allow administrators to do interesting things like: * In-line scripting in Tcl. Regular configuration commands and Tcl commands can be intertwined on the same command prompt. This is possible in a safe manner, using Tcl's safe interpreters. * It supports multiple concurrent UI sessions, using Tcl threads. * It supports an event-based/reactive configuration paradigm. Tcl procedures can be registered to be invoked when certain events occur (e.g. link up/down). * Automation of repeated tasks (sort of macros) with stored Tcl procedures. * Command output can be captured, filtered, manipulated, emailed etc. with all the power of Tcl. * Usability features such as: ANSI terminal colors and highlights, full screen editing of configuration, and others. Of course, as expected by such an interface, it supports all the standard command-line editing conveniences: in-help, command abbreviations, command expansion, history substitutions, command-line editing keys and others. MikroConf has a very well-thought design, which makes it particularly easy for developers to extend with new functionality. In particular: * It features a modular architecture. New functionality is introduced in the form of MikroConf modules, which can easily be written in Tcl by gluing together various underlying embedded Linux components. Tcl is particularly appropriate for this task as a glue language. * There is clear separation between the declaration of command syntax and its enforcement code (Tcl command handler). * XML description of command structure, syntax and hierarchy, authentication/configuration modes, running-config sections etc. * The highest possible flexibility in specifying command syntax, described as a deterministic finite automaton. * Server-Client architecture and transport protocol independence. There is complete documentation on the framework, design document, and a tutorial on how to write new configuration modules. Users will find a Getting Started Guide and a command reference with description on each supported command. It comes with a patch that fully integrates it to OpenWRT's development environment. There are also ready-to-use VirtualBox & VMWare OpenWRT images that you can try it out. It's currently in Pre-Alpha stage, and until more configuration modules are written, it is not recommended for any real-life deployments. Main Web Page: http://mikroconf.sourceforge.net/ Design Document: https://sourceforge.net/apps/mediawiki/mikroconf/index.php?title=The_MikroConf_Framework Command Reference: http://sourceforge.net/apps/mediawiki/mikroconf/index.php?title=Category:MikroConf_Module Help Wanted: http://sourceforge.net/apps/mediawiki/mikroconf/index.php?title=How_to_help
|
Pages: 1 Prev: Is anybody use tclVFS? Next: ANN: Updates for macsheet and windowlist |