Re: X Configuration Interface for Debian
(NOTE: cc a copy to firstname.lastname@example.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
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 email@example.com a copy of your response. thanks.
John Goerzen | System administrator & owner, The Communications
Custom programming | Centre and Complete Network (complete.org)
firstname.lastname@example.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