I'm a student at the Georgia (US) Institute of Technology seeking to participate in Google's Summer of Code for the general Linux community. Please forgive this mass distribution, as I was very unsure of where to send this message to. I'm thinking of sending my proposal to the KDE, openSUSE, and Fedora communities. I know it's kind of late to try, but I just realized that I indeed could (and should) try with an idea I've had festering for a while. I've pasted below an informal and abridged version of my proposal in the hopes that I can first get some feedback and input on it. Please, any ideas and constructive criticism are perfectly welcome and encouraged. ;)
~Nicholas (Alex) Marquez
My name is Nicholas Marquez, and I am a 19-year-old 2nd year undergrad in CS at the Georgia Institute of Technology. (I am, however, a 4th year by way of credits.) [I have a good bit more biographical information to provide, but I'll do so in the formal version of this.] In terms of my project proposal... partition management is a bit of a niche topic, given that it is rarely used in an active manner, apart from the preparation of the disk in installation and the tweaking of the disk for power users. Nevertheless, one is given a few tools with which to do this... one of them being QTParted. However, this was last actively developed in 2005... 3 years ago. Worse still, GParted has been suffering from development draught for a while, only recently gaining a much needed C++ dev. To be clear, I mean no disrespect to either project. They are simply in need of updating and a development surge. I do, however, feel that the need is here for something new and more sustainable for the coming years. What I propose is that I base something new on VisParted (a recent GParted fork for partedmagic): ~Abstract it a tad more and adapt it to QT instead of GTKmm (which seem quite similar). ~I also wish to add optional extra functionality to partition operations (like block sizes and whatnot) in the form of an extension arrow in the dialog box for the partition operation. ~If time permits, I'd also like to make it such that one can use the program as a widget primitive of sorts (a component) to insert it into installation wizards or any sort of program needing such functionality. ~Perhaps make the viewing of the partitions separate from the two panels provided and abstracting the ways that one can change the partitions (so that one could use, for example, a popup-menu for that), such that one could easily put it into a Plasma applet to niftily monitor disk space. Certainly this can be done with KPart, but I'd rather first see if one could do it in pure QT first, and then add the option to use a KPart. ~If time permits, I'd like to make certain graphical primitives (tabs, dialog, etc.) for VisParted and thereby allow it to use either a QT "backend" or a GTKmm one (of course leaving it abstracted out enough to provide even an ncurses backend). This program could hopefully then become the de facto standard for Linux distribution installation, by embedding it in the native toolkit inside of the installation medium used. ~Other more minor things that could be done are the possibility to click on the "X" (denoting lack of functionality for a certain filesystem type in the capabilities table) which would seek the required external program via the system's native package manager (through pluggable scripts that individual distro's developer's can provide). This would all make the resulting program a very distinct fork of VisParted and so would require its own support base and name (though perhaps the maintainers of VisParted could be contacted and asked to use this new version, given that it can use a GTKmm backend; thereby keeping the name). I have indeed viewed the VisParted source and like what is there thus far, but see far more potential. I have never used QT before nor C++, but they appeal to me and I'd like to take this project as a chance to learn how to use them. I do not pretend that I am the "right person" for this task. I'm sure there are plenty of other developers out there with more experience in this sort of thing than I and with possibly more time to dedicate to it. I am, however, offering myself as available and very interested and willing to develop this application. I can offer that I'll work likely around 10~20 hours a week on this project, given that I plan to intern over the summer as well. (I don't wish to lie about my availability to the community.) I am perfectly comfortable working with a mentor through solely online interaction. As far as where I will be over the summer... this I am not certain of yet, but I can provide the information as soon as it becomes available. If need be, I am also fluent in Spanish and French, and so I can communicate with a developer of that native language, if it is more convenient to the community. I sincerely hope that there is interest in this idea, as GUI paritioning has been ignored and really needed a new breath of life for a few years.
Thank you for your consideration,
Nicholas (Alex) Marquez firstname.lastname@example.org (alias: email@example.com)