The Cygnus Tree and Free Software Maintenance
An anonymous reader writes "Michael Sokolov (a Special Agent of the International Free Computing Task Force - and that's not a joke!) has published an interresting article about how is maintened gcc, gdb and the GNU compilation toolchains on
his ftp site
(also send to several related mailing lists - gcc, gdb, etc..)
It points at some problem and one may think that Cygnus-Redhat is again trying to take over the linux world... but that's not the point." The conspiracy theorists will definitely find room for conspiracy, but really this looks like a major issue for development, and one that warrants discussion.
Michael Sokolov "maintained" the gcc toolchain (for the PalmOS) much in the same way an armed gunman maintains his hostages in a bank holdup. After hijacking the (Palm) gcc project from John Marshall ("official" maintainer who works for Palm, see his earlier comment) he bombarded the palm-dev-forum incessantly, ranting about how his toolchain was better and personally attacking anyone who voiced an opinion otherwise.
Eventually, the list owners (Palm) banished him from the forum, and hopefully that's the last Palm developers have seen or heard of him. I don't doubt that he's a great programmer, but his back-handed ways of going about "maintaining" the gcc toolchain have made him quite a few enemies. Slashdot would be wise to look these things up before proclaiming him some sort of anti-cygwin hero.
--
Have fun: Join D.N.A. (National Dyslexics Association)
Excuse my ignorance, but could anybody fill me in on the "International Free Computing Task Force"?
What kind of an organization is it?
Who are the officers of the organization?
What is their charter?
Where is their headquarters?
Is it a for profit organization or a non-profit organization?
What are some of their past activities?
Are they affiliated with any public or private companies?
Are they affiliated with any governments?
Are they affiliated with any universities?
Can anyone join the task force?
What credentials does one have to poccess to become a member?
How many members do they have?
I'm just curious about this organization because I have never heard of it before.
-- Weiqi Gao weiqigao@speakeasy.net
Well, I guess there's a topic that warrants discussion, but I don't think it's the compilation toolchains.
I took the time to follow the links to Mr. Sokolov's verious postings. He reminds me of me when I was much less mature: carefully argumentative, inflexible, willing to drive others to distraction rather than yield to evidence. You know, an asshole.
I'm recovering. My recovery began when I realized that my technical skills counted for little when compared with my inability to get along with other people. I mean, I was losing out on cool projects and pay raises. I'm a different person today, believe me.
Play with the Special Agent if you will. I'm more inclined to let his comments go without specific reply and let reality eventually catch up with him.
Anyway, what warrants discussion, IMHO, is how to accelerate the maturing process. Personally, I wish that someone had simply fired me (now *there's* a slap with a two-by-four), or let me know that *I* wasn't getting the cool project, or that *I* was getting the miniscule raise. Something, *anything* to let me know how the world saw me (Oh wad some power the giftie gie us...).
668: Neighbour of the Beast
http://minnie.cs.adfa.edu.au/ Quasijarus/tmachine.html
Another project of Quasijarus and the demented mind of Agent Sokolov.
Umm... Red Hat did not write Linuxconf; they simply use it. So if it's technically flawed, it's not because Red Hat designed it that way or built it that way.
Blah, blah monolithic. You still have the option to not use linuxconf(1), just like I didn't when I used to use RedHat. And we have a basic misunderstanding about the term monolithic here: providing a (arguably) nice visual interface to a lot of utilities and /proc fiddling is not the same as being monolithic in my book. Would you consider smit(1) under AIX to be monolithic? Or are you using monolithic as short for "stuff I don't like"?
There are tools (those above?) which seem to keep shadow copies of some config files.
I can't recall any from my RH days, and I feel obliged to remind you that there isn't any tool you are forced to use. right?
What bothers me about it is that there are very few computer newbies around. Most linux newbies come from Windows, and the RH model (followed by quite a few others too) seems to be "make linux look like Windows". I don't see any efforts to teach the unix ways (examples: stdin/stdout, X server vs. X client, text! text! text! config files...). Creating Windows all over again going the wrong way.
You really need to go out more if you think there aren't a lot of computer newbies around. Linux newbies may come from the Windows, Macintosh or Big Blue sky world. There is no need for them ro become deft sysadmins to use their Linux box, unless they plan to follow that unfortunate career path (oops, gratuitous flamebait >:-). Although, I'm not sure what you mean by "Unix ways" (which UN*X? SysV flavored or BSD flavored?), you can find the kind of documentation you request here, there and everywhere. I don't know how they could go about "teaching" it, but then again, I never took of the courses they offer...
And, frankly, all this talk of "making it look like Windows" is quite boring and inaccurate. The only default installation that tried to mimic the Windows look was that fvwm95 thing by RH, but they have moved out from it a long time ago. Even then, you still had the option to customize it, right?
--
Information wants to be beer, or something like that.
I would hardly call it a "major issue for development".
Putting it on Slashdot is like shooting gophers with a double-barreled shotgun. Sure, it'll probably solve the problem, but the gore left behind will disgust messy.
Note that Cygnus isn't just some greedy corporation -- it employs many of the hard-core free software engineers which make up the FSF. These people aren't being held at gunpoint to work there -- they work there because they think it's a great deal to be employed full-time to contribute to free software.
When Cygnus "took control" of gcc from RMS, it was for very good reason. RMS had not been competently maintaining the source tree, and many would-be code contributors who had good solutions to genuine problems were getting increasingly disgusted. The more gung-ho of them formed splinter groups, while others simply walked away. It was a bad situation, and Cygnus dealt with it by starting their own source repository, contributing several remarkable improvements (like Jim Wilson's gcse), and going out of their way to gather up the various splinter-groups that RMS had alienated.
Many people got very excited over the "Experimental GNU Compiler System" and stopped even bothering to submit their code updates to RMS's "official" repository. When RMS finally relented and told Cygnus to go ahead and take over the job, he had essentially a dead project on his hands.
Cygnus is full of genuine FSF engineers trying to do what is best for free software. They are not outsiders trying to take things over.
Disclaimer: I am not in any way affiliated with Cygnus or RedHat. In fact, I pretty much despise RedHat
-- Guges --
In general, I like to recommend that people do a little research before they take what Michael says too literally. Unfortunately, Google seems to have got bored with Michael's magnum opus (the page in which he describes his love for the GNU project is particularly fun), but it still lists many of the other mailing lists Michael has tortured over the years.
Is this Cygnus tree what Cywin32 is based on? I was recently digusted when I discovered it was no longer available. I have had Cygwin32 B20 since last summer and decided to see if there was an update available. 1) It took me ages to even find the old B20 release 2) All other references to Cygwin32 were a commercial release by Red Hat. Is there anywhere where I can get binutils, etc, for Win32?
Yes, please do follow that link into the GCC mailing list archive! And also read the followups to his post from the GCC engineers themselves. His article is full of inaccuracies and misstatements. (He later explains them as "tongue in cheek," but those kinds of comments would be completely inappropriate for something designed to be informative information for public relations purposes.)
You cannot apply a technological solution to a sociological problem. (Edwards' Law)
He's obsessed with 4.3BSD, and is trying to recreate pristine sources of it so as to continue to use it well into the next millenium (with as few modifications as possible, of course).
He thinks that 10BaseT is the "evil intruder" in the world of network cabling; 10Base2 is acceptable, but 10Base5 is the One True Cable.
He made his own version of gzip and switched one of the bytes in the header; it's incompatible, but it's Sokolovian.
How do I know this? He used to work at CWRU before he made death threats against the president and VP of IS. Then they threw him in the nuthouse. Apparently he's loose again and on the rampage.
There's already a huge discussion on the gcc mailing-list. Unfortunately for this `free agent', some of his facts are dead-wrong. For instance, Cygnus never did take control of gcc development. In fact the steering committee of former EGCS/now gcc has always been very careful to include representatives from everywhere... and never been controlled by former Cygnus/now redhat. Likewise, the EGCS vs. gcc issues were solved handsomely, thanks to large diplomatic efforts from people involved, so that the project could go on without bump, and with all parties concerned satisfied. Except for some stupid people who are ready to yell `conspiracy' every time something like this appears, there is absolutely no political controversy with the Cygnus tree. Namely, those issues are developer-only, and fairly boring to the mundane user. This has to do with somewhat largish portions of the binutils, gas, gcc, trees being shared, and this increasingly leading to troubles thanks to the differing release schedules of all threes, and a growing need to merge everything in a single CVS repository to avoid needless administrative work. Now, if you want a developer's controversy, take linux's binutils. Those are mostly developped by H.J.Lu, who is doing a great job, but is not playing ball with neither the gcc team nor the binutils team (he's notorious at not stopping to explain what he's doing, and then griping three months later that his work was not included). In fact, by churning private release after private release of binutils from development source, he's rendering a disservice to the open development community at large: since the linux crowd is happy, there is not much pressure to do actual new releases of the real binutils main work, and there is not much test of that work occurring either. This can become serious. It looks more and more like yet a new version of the gcc vs. pgcc split, and we all know how bad this can become, don't we ? (think emacs vs. xemacs)
The 'Cygnus Tree' that he talks about has existed for quite some time now; I know it existed when I first built GCC 2.8.1 back in October of 1998. All it really boils down to is that most of the GNU projects can be put into a directory with a single large makefile at the top level that runs through each project in turn, and already knows which ones have to be made first. The GCC and GDB distributions already come made with that structure, because of the number of other projects they're based on. (Like libiberty, which contains a lot of library routines like the extended GNU getopt that aren't guaranteed to exist on all systems.)
He's not the only one who would like to see a full 'tree' release, but he's probably the only one who considers it some massive coverup and mismanagement that has to be dealt with as opposed to just different project groups having different release schedules.
-- Bryan Feir
Reading the article it seemed to me that at least part of the problem here is that CVS is making it difficult to work with multiple repositories linked in at various points in the tree. Wouldnt BitKeeper help here?
http://www.bitmover.com/bitkeeper/bk03.html
Creating a monolithic CVS repository is one answer, but its not the only answer.
article at gcc mailing list archive on gnu.org
Boffoonery - downloadable Comedy Benefit for Bletchley Park
Could you see this as Cygnus/RedHat being the evil agents in the Matrix while the International Free Computing Task Force are the good guys?
The Cygnus tree is of course the Matrix. I think I'll jump in.
:wq!
That box is probably a Redhat box. I was looking for Redhat's mirror of the email to share the load and noticed this:
[paulm@beefcake package]$ nslookup gcc.gnu.org
Non-authoritative answer:
Name: gcc.gnu.org
Address: 205.180.83.71
[paulm@beefcake package]$ nslookup sources.redhat.com
Non-authoritative answer:
Name: sources.redhat.com
Address: 205.180.83.71
Boffoonery - downloadable Comedy Benefit for Bletchley Park
And what was it with the leadin about conspiracies. There is nothing conspiratorial about this, just some historical hiccups.
C.
I sometimes write stuff