On Thu, Nov 06, 2003 at 07:38:13PM -0500, Jeremy Katz wrote: > On Thu, 2003-11-06 at 19:10, Matt Jarjoura wrote: > > I'm interested in working on a config tool for easily creating complex > > IPTables firewall rules. > > Sounds like a reasonable project to me. Some people have suggested just adopting Firestarter. I'm not an IPTables expert, so it's kind of hard for me to judge. I'm curious as to what people would say about Firestarter versus creating something from scratch. > > > I'm am not familiar with the fedora config culture, so if anyone working > > on another config tool could point me in the right direction on how to go > > about starting this project? > > In general, our config tools have traditionally been written in python > and use pygtk. That's not to say other things are bad, per se, but as > far as look and feel go, anything that doesn't use GTK+ isn't likely to > fit in as far as widgets, etc. Keeping things in Python isn't an absolute requirement, but I'd prefer it if possible. It just makes continuing maintenance easier if we stick to a common toolchain. > My thought (although I'm stealing from Havoc quite a bit here :-) on a > good way to start is probably to first come up with some use > cases/personas of who would use this tool and how they would use it. > This will then help you to determine the common tasks so that you can > design for that. Then, I'd start on some mockups and just see what > people think about them and go from there. Glade can really help you get some UI mockups together quickly in order to help convey the idea of what you're trying to do. > > Brent is sort of heading this up I think and my have some other ideas, > but that's what I think of quickly. So here's a list of things I have planned for the config tools in the near future: - create a text UI for firstboot. This is mostly done on the firstboot side, but some of the config tools that plug into it will need TUIs. - go through and make our existing tools comply with the Gnome HIG (http://developer.gnome.org/projects/gup/hig/) - create a "control center" like program. I'll send a more detailed email on this soon. - figure out what to do about redhat-config-packages That's a lot of things to be done, and that doesn't even take into account creating any new tools! There are many possible tools to be created but it seems to me that we would do better to focus on a few key areas rather than starting new projects willy nilly. What sticks out to me as the most glaring needs for new development: - making redhat-config-packages yum-ified. As Jeremy said, we have a design spec for the redhat-config-packages UI and workflow that we need to make public. That's the easy part. The hard part is the yum backend and we'll definitely need some help on that. - A partitioning tool. Something that can be used during installation as well as after installation. Needs to be able to handle RAID and LVM. Needs to make it easy to do things like add new hard drives to the system, resize partitions, etc. As I understand it, the 2.6 kernel will change how LVM currently works, so parts of this tool are dependent on that. No point in developing for 2.4 kernel at this point. - A firewall tool. Something more fine grained than redhat-config-securitylevel. My hunch is that we can't do all of these at once. Actually, I'd be happy if we just got the package tool in shape for Fedora Core 2. What I have found is (borrowing from Havoc again) that the hardest part of creating a good config tool is getting the use cases right. In other words, figure out what the common use cases are and then make them simple. It sounds simple in theory but in practice it can be rather tricky to shield a non-expert user from some of the underlying complexity of the OS. Cheers, Brent