[ For those looking for just a summary, scroll down about a screen ] On Fri, May 07, 1999 at 02:04:19PM -0500, Manoj Srivastava wrote: > Anthony> Since when is code in contrib not free software? > > If it were really fee, it would be in Debian. Debian is seen > as a bastion of free software, hence, if it ain't in Debian ...
After digging, RMS has commented that the software in contrib is in his opinion a compromise of freedom. Oh sure it bugs him that software under certain DFSG free licenses (BSDish, X, etc) is able to be so easily exploited, but it's at least free software... The stuff in contrib isn't actually free, by my understanding of his views, taken from several messages and digging a bit on dejanews. Sure it could be freed, but as long as you have to install something non-free on your system, it's pretty much useless. I'm Cc'ing RMS because (while I reserve the right to disagree) I'm quite curious as to what he thinks about this issue. [ SUMMARY begins ] For those who have left the thread because it long ago passed the boiling point, or have been mercilessly dragged into the flames (Hi Richard), I offer the following: A package was uploaded, tik. It's a tk client for the AOL Instant Messaging service. What it does is somewhat a cross between email and irc. Why anybody would want this is beyond me---but that's not the point. The point is that AOL's server for this service is not free software in any sense of the word. One of our archive maintainers determined the package useless without AOL's non-free server and therefore should not go into main. Whether or not main allows such a thing currently is not contested, it does. The archive maintainer who made the determination wishes this policy to be changed and have these packages moved to contrib, which is currently for those packages which are free software but require installation of non-free software to run or build the packages from source. Some people in the discussion agree with the archive maintainer and wish to change current practice because they believe that packages such as tik which use non-free servers are akin to software which uses a non-free library such as xforms or glide. Without a free server, the binary packages are essentially useless. Examples of packages they wish to remove are tik and more than a dozen implementations of icq, which they want to move to contrib. It was pointed out first by me that there are two projects to build icq servers which are free, and within the last 48 hours someone else (sorry for not remembering you and giving you proper credit) cited an actual working icq server I didn't know about even. This camp has agreed that icq servers are a bad example since they do now have free servers. Another person brought up smsclient, but I don't recall whether it made it to the lists or not. smsclient sends SMS messages to cellfones which support the feature. The server is by no means remotely free, so I offer it in place of icq. Some others involved with the discussion (myself included---I declare my bias) believe for a number of reasons a software package using a socket to talk to a non-free server is very different than another program that links xforms. Our reasons, and the arguments against them: Software currently in contrib actually requires you to install something not free to be able to use the software. OTOH something which links xforms requires you to actually install xforms to compile or use it. COUNTER-ARGUMENT: Just because you need not install the non-free software does not mean that the dependency on that non-free software goes away just like that. There are at least two generic servers which work with any program that connects over a socket as these programs do: netcat and perl! COUNTER: Oh come on! That may sound cool on irc, but the argument doesn't hold weight. You can't actually USE these programs with something like netcat and if you could, the average user isn't going to anyway are they? COUNTER-COUNTER: You can't apply that argument objectively. Who is to decide whether a given free server is "good enough" to make a given package worthy of main. Manoj has created a server for tik in perl which he describes as "quite buggy". While even I consider his server not useful (because it doesn't do anythung but send the client a single response to everything) who has the right to decide that his buggy server isn't a pre-alpha quality free server and therefore valid? I (Joseph) have used netcat and tik together, acting in place of the server by simply sending the things tik wanted to see in response to what it sent. Worked surprisingly well actually, and I could probably have written something quickly in bash to make it so I didn't have to manually control netcat. Maybe a loopback test or something? Hey, it WOULD be a server and it WOULD be useful for testing clients at least. Of course if my server isn't functional enough, someone else is free to write their own right? In any event, this leads into the next argument... While you cannot (easily) replace xforms with a free implementation without jumping through hoops, you CAN easily replace what's at the other end of a socket. Projects such as lesstif had a problem implementing lesstif in a binary-compatible fashion because the header files which contain the motif API are themselves non-free. With a network protocol, ANY openly published document containing the protocol can be used to create the server. Since tik was written and its code is free, one can argue that tik itself is such a document, but I won't argue that. Instead I'll point at the file included in the tik source named PROTOCOL which has a notice at the top saying the document is under the GPL. So while the main AOL server isn't free, the protocol it uses is. COUNTER: (Based on the above premise that netcat and perl aren't valid as servers for tik) Okay, so the protocol isn't proprietary even though some have claimed it is. But there still are no free servers! Using their own example (which they no longer claim) against them, let's look at ICQ a moment. They cited it as something with many clients which are free and based on a incompletely-documented protocol. They've had to figure out what's missing or changed since the document was published through trial, error, and debugging. If they didn't know about the two projects I found, how can I be sure sufficient research is done before a package is rejected or removed from main? Even worse: I found out just in the last 48 hours about a working server _I_ didn't find out about while researching! COUNTER: If a free server appears, the maintainer is free to re-upload his package for main and send a message to the archive maintainers asking them to edit the override file when they have a moment. And one more argument they haven't had a chance to refute yet, but I suspect they aren't likely to: if the above about servers out of netcat and bash or perl is decided to be good enough for tik, it'd be good enough for any free network client. If they decide to counter this argument, they'll definitely counter that I would consider the bash or perl script do be a configuration script if nothing else, but I'm getting ahead of myself here---this is a summary after all. Richard, many of us are curious what you think about this. I doubt the argument will end just because you offered your opinion. All the same, I sure would like to know. From my interpretation of previous messages you've written, you consider programs with dependencies on non-free software such as those found in contrib now to be a dangerous compromise of the freedom of those programs. At least one reason I've interpretted for this is that the free program is at the mercy of the non-free software, which really does make it less free. It is also my interpretation that you believe such compromised software is ultimately A Bad Thing. (FWIW, I tend to agree.) I'm hoping when the argument is all over with, those who share my views will have satisfactorily shown that a program that communicates with a server over a socket using a documented protocol is different than a program that depends on motif or xforms even to build, and different enough that the former stays in main while the latter stays in contrib, but we shall see. Was I right about my interpretations of previous messages on the subject of the things in contrib reasonably accurate? Do you believe I am misrepresenting you above? (Someone is going to accuse me of that sooner or later I'm sure) Do you consider software such as tik to be in the same class as not-actually-really-free software? Or since there are people working on things that resemble servers which are free in the case of tik, how about smsclient which nobody has bothered to even touch to my knowledge? If I ask you one more question are you going to go insane? Can I ask it anyway? <g> -- Joseph Carter <[EMAIL PROTECTED]> Debian GNU/Linux developer PGP: E8D68481E3A8BB77 8EE22996C9445FBE The Source Comes First! ------------------------------------------------------------------------- "This is the element_data structure for elements whose *element_type = FORM_TYPE_SELECT_ONE, FORM_TYPE_SELECT_MULT. */ /* * nesting deeper and deeper, harder and harder, go, go, oh, OH, OHHHHH!! * Sorry, got carried away there. */ struct lo_FormElementOptionData_struct." -- Mozilla source code (Hey Branden, did you know this message is over 200 lines long?)
pgp2XF7qyP4Tf.pgp
Description: PGP signature