[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: X Configuration Interface for Debian

(NOTE: cc a copy to jgoerzen@complete.org of your response.  thanks)

> Well, I would like to help with this. Here are a couple of ideas I had
> about it:-
> 	1. Make the user-interface calls as generic as possible, so we can
> make a version that will work with ncurses and X (tk).

This sounds like it might be a good idea, but I will leave it to someone else 
to implement :-)

Tk "lives a lot higher in the food chain" than ncurses does; for instance, Tk 
has a lot more widgets (sliders, dialog box building, forms, etc) than ncurses 
does.  A comparison would be that ncurses is the "Xlib" of programming.

I don't have time to do all the necessary programming in ncurses.

I do know, however, that there is a limited Tk available (called "ctk" I 
believe) that uses curses/ncurses to do its interface work.

I am also using the Tix extension to Tk, which provides a lot of needed 
widgets that are not in Tk itself -- notebooks, file open boxes, and some 
general conveniences.

Perhaps I should tar and gzip what I have right now (which is really nothing 
more than the framework) and e-mail it to you and anyone else that is 
interested -- then you can see what it looks like.  It is not very big yet :-)

> 	2. Support .so-loading for extra configuration modules. This way,
> packages can provide their own control panels (for example, a apache
> control panel).

With Tcl/Tk, I could very easily support additional modules written, at least 
partially, in Tcl/Tk.  The interface would need to be written in Tcl/Tk, but 
the rest could be in C or whatever.

As far as .so loading goes...I really don't know if that would be possible.  
Perhaps it would be possible to add a button that, when clicked, would launch 
a separate application or something?  I don't know very much about Tcl/Tk's 
shared library mechanism yet.  I think a more efficient way (well, easier at 
least <g>) to do this would be as I have outlined in the prior paragraph.

As it stands now, it is basically a collection of modules anyway, with one 
module kinda managing the whole thing.

Here's what I need from the Debian community to make this work:
 * Somebody to do the package management stuff.  At least write C or Tcl
   procedures to get list of packages, installed packages, etc. (like dconfig
   does).  I can take care of the user interface.  I don't know a lot about
   the internals of the package system.
 * Somebody to do parsing of some various configuration files...eg:
   INN configs, XF86Config, crontab (I already have that, but it's a good
   example), mail (not necessarily sendmail.cf but its "macro" source),
 * Perhaps somebody to write code to write the changed configuration
   files back out.  This shouldn't be very difficult, so I can probably do it.
 * Get it included with Debian when finished
 * Bug catchers :-)

Here's what I'm willing to do:
 * Write the interface in X, using Tcl/Tk+Tix, or maybe Perl+Tk or Python or Qt
   (what would y'all reccommend?  Tcl/Tk+Tix is looking pretty good to me right
    now)  If somebody else can parse existing config files, I can take care of
   putting a nice interface on the configuration process
 * "Manage" the project
 * Write documentation
 * Provide mailing list(s) via Majordomo, if necessary
 * Provide info on the web

What you can probably see here is that I'm willing to do all of the interface stuff, from designing layouts to implementing controlls for buttons.  I can also handle writing configs back out.  But for each config file format, I'll need someone familiar with it to write a parser.  This parser doesn't have to be in Tcl/Tk, although that would be nice.  I have the ability to do that, but I simply don't have the time, especially considering that /etc/hosts uses a format totally different from /etc/printcap, for instance.

Also there needs to be some way to control what software is loaded at boot, etc.  But there seems no uniform configuration file for doing this -- just an inittab and a bunch of scripts.

Let me explain a little about why I want to do this.  First, I think that one reason that a lot of people stay away from Unix is the perception (whether real or not) that it is hard to configure.  One classic example is window managers -- you need to use a text editor and edit a text configuration file to add options to your WM menu.  An easy-to-use, graphical, X-based program would ease a lot of these fears.  Red Hat's program is a step in the right direction, but it is not yet all the way there.  Debian's program would have a potential to be a systemwide configuration tool.  I might even find myself using it :-)

I think that such a program is a way to "unify" all the disjoint configuration files that float around all over the place.  We can start with the basics -- networking, filesystems, cron, printer, mail, etc.  Eventually, it could be expanded to cover things like Majordomo, apache/httpd, ftpd, etc.

So...give me feedback everybody!  Good idea or bad idea?  Sound possible?  Are there people willing to help, esp. with parsers?

NOTE: please CC to jgoerzen@complete.org a copy of your response.  thanks.

John Goerzen          | System administrator & owner, The Communications
Custom programming    | Centre and Complete Network (complete.org)
jgoerzen@complete.org | Free Unix shell access, 316-367-8490 w/ your modem.

TO UNSUBSCRIBE FROM THIS MAILING LIST: e-mail the word "unsubscribe" to
debian-devel-REQUEST@lists.debian.org . Trouble? e-mail to Bruce@Pixar.com

Reply to: