Well, when you have no choice. The developer said that he wouldn't accept outside patches and we already had the software installed on a dozen servers. So, I emailed him begging - please, please - the administrators want me to change the program around a bit and I did not want to maintain my own patches. After a few days, a few emails later, I asked him if I could fork the project and he agreed and all is fine.
So, I am a forker.
Really, I get the best of both worlds - I get great piece of software to build on and any changes I make go back under the GPL. Really, though, I wanted to work with the developer.
So, I added the GNU build system, broke out a bunch of code into libraries. I can pretty much do what I want now, you know. Though it is written in C, I gave it a quasi-OOP system so I can just pass structs between interfaces. And I gave it on of those really annoying names that means absolutely nothing: focaza.
is really fucking cool. Eveything that I ever wanted in a source control system. I don't understand why people think that CVS is easier than GNU Arch - have any of you guys/girls who think this ever tried to delete a directory in CVS, change a file name or move one large section of your code to another section. Arch makes all of this simple.