<kc version="0.1.0">

<title>Wine Traffic</title>

<author contact="mailto:vinn@theshell.com">Brian Vincent</author>

<issue num="115" date="12 Feb 2002 23:00:00 -0800" />

<intro>
<p>
This is the 115th release of the Wine's kernel cousin publication. It's main 
goal is to distribute widely what's going on around Wine (the Un*x windows 
emulator). </p>

</intro>

<stats posts="361" size="1220" contrib="92" multiples="52" lastweek="32">

<person posts="30" size="100" who="Brett Glass &lt;brett@lariat.org&gt;" />
<person posts="24" size="128" who="Patrik Stridvall &lt;ps@leissner.se&gt;" />
<person posts="17" size="49" who="Andreas Mohr &lt;andi@rhlx01.fht-esslingen.de&gt;" />
<person posts="17" size="41" who="Dimitrie O. Paun &lt;dimi@cs.toronto.edu&gt;" />
<person posts="15" size="69" who="Steve Langasek &lt;vorlon@dodds.net&gt;" />
<person posts="14" size="34" who="Lawson Whitney &lt;lawson_whitney@juno.com&gt;" />
<person posts="13" size="62" who="Roger Fujii &lt;rmf@lookhere.com&gt;" />
<person posts="12" size="35" who="Dan Kegel &lt;dank@kegel.com&gt;" />
<person posts="11" size="73" who="David Elliott &lt;dfe@tgwbd.org&gt;" />
<person posts="10" size="34" who="Francois Gouget &lt;fgouget@free.fr&gt;" />
<person posts="9" size="22" who="Gerhard W. Gruber &lt;sparhawk@gmx.at&gt;" />
<person posts="8" size="19" who="Eric Pouech &lt;eric.pouech@wanadoo.fr&gt;" />
<person posts="7" size="14" who="Ricardo &lt;r00tzz@yahoo.co.uk&gt;" />
<person posts="6" size="25" who="Fredrik Ohrn &lt;ohrn@chl.chalmers.se&gt;" />
<person posts="6" size="25" who="Jeremy White &lt;jwhite@codeweavers.com&gt;" />
<person posts="6" size="18" who="Ove Kaaven &lt;ovehk@ping.uio.no&gt;" />
<person posts="6" size="17" who="Joerg Mayer &lt;jmayer@loplof.de&gt;" />
<person posts="6" size="16" who="Sean Farley &lt;scf@farley.org&gt;" />
<person posts="6" size="15" who="Daniel Walker &lt;diwalker@earthlink.net&gt;" />
<person posts="6" size="15" who="Uwe Bonnes &lt;bon@elektron.ikp.physik.tu-darmstadt.de&gt;" />
<person posts="6" size="13" who="Alexandre Julliard &lt;julliard@winehq.com&gt;" />
<person posts="6" size="11" who="Steven Edwards &lt;Steven_Ed4153@yahoo.com&gt;" />
<person posts="5" size="25" who="Michael Robertson &lt;michael@lindows.com&gt;" />
<person posts="5" size="10" who="Joe Tennies &lt;rotund@fatnsoft.com&gt;" />
<person posts="4" size="20" who="Gavriel State &lt;gav@transgaming.com&gt;" />
<person posts="4" size="15" who="&lt;winedev@admdev.com&gt;" />
<person posts="4" size="12" who="John Alvord &lt;jalvo@mbay.net&gt;" />
<person posts="4" size="11" who="Roland &lt;roland@netquant.com.br&gt;" />
<person posts="6" size="14" who="Marcus Meissner &lt;marcus@jet.franken.de&gt;" />
<person posts="3" size="11" who="Anthony Taylor &lt;tony@searhc.org&gt;" />
<person posts="3" size="9" who="Huw D M Davies &lt;h.davies1@physics.ox.ac.uk&gt;" />
<person posts="3" size="7" who="Hetz Ben Hamo &lt;hetz@kde.org&gt;" />
<person posts="4" size="7" who="Medland, Bill &lt;Bill.Medland@accpac.com&gt;" />
<person posts="2" size="12" who="J.Brown (Ender/Amigo) &lt;ender@enderboi.com&gt;" />
<person posts="2" size="9" who="Paul Millar &lt;paulm@astro.gla.ac.uk&gt;" />
<person posts="2" size="9" who="Sean Farley &lt;sean@farley.org&gt;" />
<person posts="2" size="8" who="Rolf Kalbermatter &lt;rolf.kalbermatter@citeng.com&gt;" />
<person posts="2" size="7" who="Rick Romero &lt;rick@valeoinc.com&gt;" />
<person posts="2" size="6" who="Andriy Palamarchuk &lt;apa3a@yahoo.com&gt;" />
<person posts="2" size="6" who="Sylvain Petreolle &lt;spetreolle@yahoo.fr&gt;" />
<person posts="2" size="5" who="Daniel Sabo &lt;sorry@nospam.com&gt;" />
<person posts="2" size="5" who="James &lt;jas88@cam.ac.uk&gt;" />
<person posts="2" size="5" who="Eric Pouech &lt;eric.pouech@voila.fr&gt;" />
<person posts="2" size="5" who="Lean Fuglsang &lt;leanf@mailme.dk&gt;" />
<person posts="2" size="5" who="Stefan Gorling &lt;stefan@gorling.se&gt;" />
<person posts="2" size="4" who="Chris Green &lt;chris@massey-green.com&gt;" />
<person posts="2" size="4" who="James Hatheway &lt;james@macadamian.com&gt;" />
<person posts="2" size="4" who="Dmitry Timoshkov &lt;dmitry@baikal.ru&gt;" />
<person posts="2" size="4" who="David Laight &lt;david@l8s.co.uk&gt;" />
<person posts="2" size="3" who="Laurent Pinchart &lt;laurent.pinchart@skynet.be&gt;" />
<person posts="2" size="3" who="Steven Edwards &lt;steven_ed4153@yahoo.com&gt;" />
<person posts="1" size="6" who="Joe Tennies &lt;rotund@fatnsoft.com&gt;" />
<person posts="1" size="5" who="Marcus Brubaker &lt;marcus.brubaker@utoronto.ca&gt;" />
<person posts="1" size="4" who="ivan &lt;ivanovich@menta.net&gt;" />
<person posts="1" size="3" who="admiral Coeyman &lt;admiral@corner.net&gt;" />
<person posts="1" size="3" who="Aric Stewart &lt;aric@codeweavers.com&gt;" />
<person posts="1" size="3" who="Hetz Ben Hamo &lt;hetz@witch.dyndns.org&gt;" />
<person posts="1" size="3" who="Plato &lt;tom-wine@redant.freeserve.co.uk&gt;" />
<person posts="3" size="5" who="jasonp &lt;jasonp1@cox.net&gt;" />
<person posts="1" size="3" who="Douglas Ridgway &lt;ridgway@gmcl.com&gt;" />
<person posts="1" size="3" who="g.russell@ieee.org" />
<person posts="1" size="3" who="David Wheeler &lt;dwheeler@ida.org&gt;" />
<person posts="1" size="3" who="Lean Fuglsang &lt;s011272@student.dtu.dk&gt;" />
<person posts="1" size="3" who="Brian Vincent &lt;vinn@arsenic.theshell.com&gt;" />
<person posts="1" size="2" who="Michael Stefaniuc &lt;mstefani@redhat.de&gt;" />
<person posts="1" size="2" who="James Juran &lt;jamesjuran@alumni.psu.edu&gt;" />
<person posts="1" size="2" who="Fruhwirth Clemens &lt;clemens@endorphin.org&gt;" />
<person posts="1" size="2" who="Plato &lt;tom@redant.freeserve.co.uk&gt;" />
<person posts="1" size="2" who="Dave Jones &lt;dajones@purdue.edu&gt;" />
<person posts="1" size="2" who="Michael Cardenas &lt;michaelc@lindows.com&gt;" />
<person posts="1" size="2" who="Gerard Patel &lt;gerard.patel@nerim.net&gt;" />
<person posts="1" size="2" who="Claus Fischer &lt;claus.fischer@clausfischer.com&gt;" />
<person posts="1" size="2" who="Shane Shields &lt;locutusenterprises@yahoo.com&gt;" />
<person posts="1" size="2" who="Phillip Ezolt &lt;ezolt@perf.zko.dec.com&gt;" />
<person posts="1" size="2" who="dschwarz@bellatlantic.net" />
<person posts="1" size="2" who="David Speckbacher &lt;dsp@gmx.li&gt;" />
<person posts="1" size="2" who="Christopher Morgan &lt;chmorgan@speakeasy.net&gt;" />
<person posts="1" size="2" who="Derek J Witt &lt;djw@flinthills.com&gt;" />
<person posts="1" size="2" who="Damjan Lango &lt;damjan.lango@hermes.si&gt;" />
<person posts="1" size="2" who="Derek Witt &lt;djw@flinthills.com&gt;" />
<person posts="1" size="2" who="Keith Matthews &lt;keith_m@sweeney.demon.co.uk&gt;" />
<person posts="1" size="2" who="Guy L. Albertelli &lt;galberte@neo.lrun.com&gt;" />
<person posts="1" size="1" who="info2000@telecable.es" />
<person posts="1" size="1" who="James Tabor &lt;jimtabor@adsl-64-217-116-74.dsl.hstntx.swbell.net&gt;" />
<person posts="1" size="1" who="Duane Clark &lt;dclark@akamail.com&gt;" />
<person posts="1" size="1" who="Robert Boucher &lt;rboucher@bcssi.com&gt;" />
<person posts="1" size="1" who="Gerhard Gruber &lt;sparhawk@gmx.at&gt;" />

</stats>


<section
  title="Lindows, CVS updates, Wine Wiki"
  subject="News"
  archive="http://www.winehq.com/hypermail/wine-devel/2002/02/0312.html"
  posts="3"
  startdate="29 Jan 2002 23:00:00 -0800"
  enddate="12 Feb 2002 23:00:00 -0800"
>
<topic>News</topic>

<mention>CodeWeavers</mention>
<mention></mention>
<mention>codeweavers</mention>
<mention>Transgaming</mention>
<mention>Jeremy White</mention>
<mention>Lindows.com</mention>
<mention>Ove K&#229;ven</mention>
<mention>News</mention>
<mention>Marcus Meissner</mention>

<p>There was a relatively slow week on the wine-devel list followed by the past
week of intense debate over licensing.  Alexandre continues to integrate patches
sifted from the large CodeWeavers patch Jeremy White posted a few weeks ago.  
There were a ton of changes made to the Listview code that were done over a
series of 4 commits.  Marcus Meissner, in a quest to get DreamWeaver 4 to install, 
submitted a huge patch to implement local server COM and a typelib based marshaller.  
This is a duplicate of a lot of work done by Transgaming, but that code is never
made it into the Wine CVS (in part because it's in Transgaming's AFPL'ed WineX
tree and partly because Ove K&#229;ven thought it was rather ugly.)</p>

<p>Seen at the bottom of Daniel Schwarz's signature was a reference to a Wine
Wiki.  Check it out over at <a href="http://www.winecentric.com">http://www.winecentric.com</a>
and add a page or three.</p>

<p>Also of note this week are several postings by Lindows.com.  Several emails
arrived from them, perhaps the most interesting one came from Michael
Robertson explaining Lindows.com's involvement:</p>
<quote who="Michael Robertson">
<p>
Just to set the record straight.
</p><p>
Lindows.com has had a partner company producing the majority of our WINE 
code. The vast majority of the code that came from that partnership is in 
the public tree already.
</p><p>
Lindows.com has contributed code to open source projects. We have hired 
open source companies (spending over 500K) to help us reach our goals with 
the majority of the code going back to open source. Lindows.com has given 
financial support to several open source initiatives (such as KDE). 
Lindows.com has made significant investments in linux companies.  All told, 
we've spent about 2 million in the 5 months that we've been a company.
</p><p>
Linux (and all the other pieces) does 95% of what people want to do today, 
but only has 1% market share. Our belief is that the code is largely not 
the limiting factor for adoption now. It's all the pieces that go around 
the code. It's education, it's marketing, it's lobbying, it's business 
development, etc. These are big tasks which are critical to success, even 
more so than the code itself (think AOL). I know this won't be a popular 
thing to stay on a mailing list with "devel" in the title, but it's where 
we believe linux is and what we believe needs to happen to get to the next 
level. This doesn't mean the code isn't important, it is but there are 
other critical elements.
</p><p>
We need Lindows.com and 10 more thriving companies to help with the expense 
of educating, lobbying, marketing, etc. desktop solutions. It's expensive 
to do those things and a burden that needs to be shared by several 
companies because the job is so enormous and the competitor so strong. The 
Linux community, especially the desktop community needs healthy ongoing 
companies to put in capital, organization, and other support. If we can put 
a few million more people running Linux on the desktop, then magical things 
will happen. Drivers for linux will be available, higher quality linux 
software will emerge, more OEMs will offer linux as an option, devices will 
have linux interfaces, governments will view linux differently, etc.
</p><p>
There are some small, but meaningful for-profit companies out there today 
in linux (such as codeweavers and transgaming). The more companies in the 
linux desktop space there are, the more companies that will be able to pay 
their rates on an ongoing basis and hire them to code great products. 
There's tremendous opportunity and the more companies out there the better.
</p><p>
As for our marketing message, it's designed for my Grandma. Anytime there's 
a word on the website she doesn't understand she calls me up. Try 
explaining a recursive acronym to your Grandma. Yikes. Our goal with 
Lindows.com is to bring Linux to the segment of the world who thinks linux 
is spelled with a 'y' and is a small bobcat.
</p></quote>

</section>




<section
  title="Wine License Change, Round 2"
  subject="Wine license change"
  archive="http://www.winehq.com/hypermail/wine-devel/2002/02/0089.html"
  posts="207"
  startdate="05 Feb 2002 23:00:00 -0800"
  enddate="11 Feb 2002 23:00:00 -0800"
>
<topic>Licensing</topic>

<mention>CodeWeavers</mention>
<mention></mention>
<mention>Transgaming</mention>
<mention>ReactOS</mention>
<mention>Ove K&#229;ven</mention>
<mention>Lindows.com</mention>
<mention>TransGaming</mention>
<mention>Marcus Meissner</mention>
<mention>Codeweavers</mention>

<p>A little over a month ago a discussion spawned about possibly 
switching Wine over to using an LGPL license rather than the
current X11 (BSD-style) license.  Alexandre effectively ended
the debate with, <quote who="Alexandre Julliard">
 My conclusion is that there clearly isn't enough support in 
 the developers community to justify changing the license. So 
 I'm not going to proceed with any change, either now or in 
 the foreseeable future.</quote>  Please refer to the 
previous discussion for details of the various positions.</p>

<p>Perhaps the forseeable future was only a month?  Jeremy White
of CodeWeavers posted a lengthy note and opened
discussion again.  This post was also linked from 
<a href="http://www.slashdot.org">Slashdot</a>
and the <a href="http://slashdot.org/article.pl?sid=02/02/07/0221223">
corresponding discussion</a> ran the usual gamut of ill-informed
to somewhat interesting.  Jeremy wrote:</p>

<quote who="Jeremy White">
	<p>Some recent events have occurred that have made me change my opinion
	 about a Wine license change. </p>

	<p> During my involvement in the Wine project, I have always striven to
	 make sure that I, and my company, did what was best for the Wine
	 project.  I believe Wine's success will help to make the world a
	 better place.  To that end, often through difficult personal
	 negotiations, I have always insured that all of my contracts require
	 that all code changes be returned to Wine.  This, in effect, treats
	 Wine as an LGPL product. </p>

	<p> You can argue that the flexibility granted by the Wine license has
	 meant that I received some business I would not otherwise have had.
	 Gav, for example, has pointed out that Corel would never have worked
	 on Wine if not for its license.  There are two ironies there - first,
	 Corel has always been a great Wine citizen, IMO, never 'abusing' the
	 license.  Second, while we did work with Corel to help them with Wine,
	 we never signed a contract with them.  Their lawyers and I were never
	 able to agree on a contract that we thought would sufficiently protect
	 Wine.  Fortunately for me, we were able to work with Corel without a
	 contract, but this issue to this day creates unnecessary friction
	 between my company and Corel.</p>

	<p>However, with some recent events I cannot disclose, it is clear to me
	 that the opportunity for Wine to be used in a proprietary product is
	 too tempting and has caused some harm to the Wine project.  Based on
	 experience, I feel strongly that the potential for harm is great
	 enough that CodeWeavers needs to take two actions. First, we would
	 like to release all new code we develop under an LGPL style license.
	 Second, I would like to open another call for a license change and
	 thereby strongly add my voice to Alexandre's.</p>

	<p>Thus, I would like to call for a change in the Wine license.  I think
	 we all agreed that the LGPL formed the basis for a good 'alternate'
	 license strategy.  Eben Moglen, the counsel for the FSF, has kindly
	 offered to help review licensing strategies for Wine.  The goal is to
	 attempt to secure some form of Copyleft protection for Wine while
	 still permitting proprietary software to link and bind with Wine.  I
	 think it it is great that we have, in Eben, not only the leading legal
	 scholar on free software licensing, but a great hacker to boot.  I
	 think he will clarify exactly what is possible and what is not
	 possible with GPL style licenses and insure that the license we choose
	 will meet our goals.
	</p>

	<p>
	 When Alexandre last brought up this issue, he was very disappointed.
	 He felt that there was not enough support from the 'silent majority'
	 of Wine developers for a license change.  His overriding lament to me
	 was 'No one cares'.  He further felt that since a small number of
	 major Wine contributors objected, that it was not appropriate to
	 change the license.
	</p>

	<p>
	 I would like to ask for a more formal process.  I would like each and
	 every contributor to Wine to send Alexandre a private email with an
	 'Agree' or 'Disagree' opinion, so that he can more truly assess what
	 the contributors to Wine really want.  The specific question I wish to
	 pose is as follows:

	 <blockquote>
	    Should the Wine project switch to a license which has as
	    its goal to attempt to secure some form of Copyleft
	    protection for Wine while still permitting proprietary
	    software to link and bind with Wine?
	 </blockquote>

	 Please privately let Alexandre (julliard@winehq.com) know what you
	 think, and then publicly respond to this thread as you feel
	 appropriate.
	</p>

	<p>
	 Finally, in closing, I wanted to summarize our position.  We plan to 
	 release our future work under an xGPL style license, and we would like
	 the rest of the Wine community to join us.  If the bulk of the
	 community wants to stick with the current license, then we will
	 probably end up making a separate CVS development tree.  Anyone would
	 be free to use our work from that tree, under the xGPL-style license
	 terms the FSF's lawyers recommend.
	</p>
</quote>

<p>Wow.. that's a pretty big announcement from a big contributor to
Wine.  Of course the current Wine license allows anyone to to do
anything they wish with Wine - including opening a new tree with a
different license.  Keep in mind that Alexandre Julliard works for
CodeWeavers, so a lot of code would ultimately make it into the "xGPL"
tree. One can only
imagine what "recent events" prompted this from Jeremy.  As James
Juran mentioned, <quote who="James Juran">
 I think Codeweavers' actions over the past two years or so more than
 sufficiently establishes the fact that they deserve to be given the
 benefit of the doubt in regards to statements like these.</quote></p>

<p>It appears over 
the past month or so a lot of thought has
gone into what a license change would mean.  This time the discussion
tended to be more focused and offered some new ideas.  J&#214;rg Mayer
threw out the first:</p>

<quote who="Joerg Mayer">
	<p>OK, when the last discussion was going on, I started out with the opinion
	that the change would be good and changed it to not so good, because if
	proprietary stuff that *is* part of the windows kernel (or drivers) needs
	to be implemented, this can't be done with an LGPLed wine. My final idea
	(which I never mailed) was, that maybe a X11-licensed kernel (including
	wineserver and driver emulation) and LGPLed dlls for the rest would be
	the best solution.</p>
</quote>
 
<p>A few people didn't really understand why licensing some parts different
than others would be necessary.  But, having two licenses isn't as strange as
it seems.   For example, it's been discussed recently that perhaps the test 
framework should not be under the X11 license.</p>

<p>And in regards to forking the code, Steve Langasek felt, 
<quote who="Steve Langasek">
	One thing to bear in mind is that others already ARE forking the Wine 
	code.  Given the nature of their work, Codeweavers must maintain a 
	separate CVS tree locally; although we're fortunate in that their fork is 
	open to backporting to the official tree.  Other companies are forking 
	with no intention to contribute back (see Lindows.com); still others 
	(Transgaming) have made reintegration of their work contingent on turning 
	an profit.[1]  Jeremy is at least being courteous enough to let us know 
	where /his/ company is going with the Wine code, and is inviting the rest 
	of the Wine community to come along with him.
 </quote>
 </p>
 
<p>Dimitrie Paun responded to Dan Kegel's vote for changing to a GPL-style
license:</p>

<quote who="Dimitrie Paun">
	<p>
	 This is a fundamental point which we haven't had a chance of discussing
	 last time as we argued over silly future (unlikely) possible changes in
	 copyright law.
	</p>

	<p>One important argument was that building a thriving economic environment
	 around Wine is essential for its success.
	</p>

	<p>
	 Everybody agreed on this premise, IIRC.
	</p>

	<p>
	 The argument followed that BSD license is better for creating such an
	 environment, and hence better for Wine, since more business will
	 contribute more code back.
	</p>

	<p>
	 This, I'm afraid, is entirely false. 
	</p>

	<p>
	 I argue that in fact, the BSD license is a STRONG DETERANT for businesses
	 to contribute code back, while the LGPL provides an INCENTIVE. 
	</p>

	<p>
	 Note that I do not care, for the purpose of this discussion, about
	 businesses which don't intend to contribute code back. They are of no help
	 to Wine, and thus irrelevant (if not a little harmful, for reasons so
	 eloquently explained by Alexandre).
	</p>

	<p>
	 A BSD license is a STRONG DETERANT for a business to contribute code
	 back. The reason for this is that they have no guarantee that another
	 business will not improve a little the code, and thus get a competitive
	 advantage. Or that other companies will not use that code on top of the
	 code they wrote but not released, and thus again, get that edge. This is a
	 fantastic <u>deterant</u> for releasing code back. In fact, Gav validated
	 exactly this point when he tried to argue for the BSD license last time:
	</p>

	<blockquote>
	  &lt;talking about the DCOM work&gt;
	  But there are companies out there who will benefit significantly 
	  from commercial use of this code, and who can afford to sponsor a 
	  portion of the development cost.  Until such a sponsorship happens, 
	  we cannot apply the WineHQ license to that code.  
	</blockquote>

	<p>
	 In other words, they needed that code. They invested some money do get
	 it. They are happy with the results. Why not release the code? They have
	 what they needed in the first place? The reason is clear -- it cost them
	 to get there, they can not aford to bring everybody there for free. I can
	 100% understand that. But if the code was under the LGPL, it would not
	 matter, because even if they brought everybody there, other companies
	 could not step ahead of them, since if they did, they themselves could
	 have used that code.
	</p>

	<p>
	 In other words, TG could have kept Direct3D proprietary, released
	 everything else back under LGPL, and they could have _known_ they still
	 have the competitive edge in the D3D work! This is why the LGPL is in fact
	 an <u>incentive</u> for such colaboration.
	</p>

	<p>
	 Bottom line is clear: as the project matures and becomes more useful, the
	 deterant of contributing code back from a business perspective is going to
	 greatly increase, while at the same time, the incentive under the LGPL
	 would have also increased.
	</p>
</quote>

<p>Gavriel State disagreed and felt he'd been quoted out of context:</p>
<quote who="Gavriel State">
	<p>While I do want to contribute further to this debate, I need some time
	 to gather my thoughts.  In the meantime though, I want to address Dimitrie's
	 quote - and fundamental misunderstanding - of me below.
	</p>

	<p>
	 Quite the opposite: It is not 'competitive advantage' that concerns us, 
	 or others using our code without contributing their own code.  It is 
	 simply that we could not and cannot afford to do our development without
	 monetary compensation.  If the OLE DLLs had been LGPLed, we could not
	 have been able to afford to do any DCOM work, since we would have had 
	 no prospect of getting paid for it.  
	</p>

	<p>Under the LGPL, the only possible business model is this:
	<ol>
	  <li>Find someone who might need some piece of code</li>
	  <li>Sell them on: "We can do this for you, and release it under
	     the LGPL for $x dollars. We're really good at what we do,
	     honest"</li>
	  <li>Do the work, and hope to actually get paid.</li>
	</ol>
	</p>

	<p>
	 The current license, by contrast, allows many other alternate models that
	 are worth trying.  In the case of the DCOM code, there was something 
	 that we had a need for with our current subscriber base, but we could 
	 not afford to do the work just for that base, since it is not yet 
	 large enough.  Instead, we have this business model:
	<ol>
	  <li> Do the work up front, proving that it works, covering a small
	     portion of the cost from our current subscribers.  </li>
	  <li> Talk to potential sponsors who need the work</li>
	  <li> If they agree on a price, release the code under the Wine 
	     license.</li>
	</ol>
	</p>

	<p>
	 The TransGaming subscription model is simply this writ large, trying to 
	 get the individual users to act collectively as sponsors of the work.  
	</p>

	<p>
	 The LGPL simply slams the door shut on that whole model, saying in effect 
	 "It's my way or the highway".  
	</p>

	<p>
	 At the same time, I believe that I understand the main concern of the 
	 LGPL proponents: the current license allows the possibility of benefiting 
	 from the project without any contribution.  Where I differ from them is 
	 that someone else's code is not enough to keep my employees eating.  
	 What I need as a contribution is not code, but cash.
	</p>

	<p>
	 Anyhow, I'm going to go and put my thinking cap on, and try to see if 
	 I can think of some arrangement that might work better for everyone.  
	</p>
</quote>

<p>Andreas Mohr read through some of the Slashdot posts and found 
<a href="http://slashdot.org/comments.pl?sid=27605;cid=2967009">
one idea</a> interesting enough to pass along, <quote who="Andreas Mohr">
One guy made an interesting suggestion:
a "dual license" scheme (like MySQL uses) where you switch to (L)GPL,
but certain companies are allowed to take code without contributing
everything and their arms and legs back...</quote></p>

<p>Then he added, <quote who="Andreas Mohr">
 Another drawback of a license change might be that reverting from
 (L)GPL license to previous licenses is said to be very hard.</quote></p>

<p>This time the debate centered more on what a license change
would mean rather than copyright issues and possible legal interpretations.
Several people pointed out that only a strict interpretation of the LGPL
would disallow wrapper functions - namely, have an open source function
simply call the actual function linked in a proprietary DLL, hence it
would be easy to get around.  Views on licensing ranged from,

<quote who="Dan Kegel">
 Putting Wine under the xGPL is the best way
 I can think of to ensure its future.  The xGPL makes it possible
 for competitors to cooperate for their common good - which is pretty amazing.
</quote> (Dan Kegel) to 

<quote who="Brett Glass">The fact is that both the GPL and the LGPL
were written for the express purpose of destroying commercial software
vendors and hurting ALL programmers' livelihoods. </quote> (Brett Glass).

Ove K&#229;ven posted a rather amusing 
"Wine Developer License Test" to help everyone figure out where
they stand.  (Full text at:
<a href="http://www.winehq.com/hypermail/wine-devel/2002/02/0285.html">
http://www.winehq.com/hypermail/wine-devel/2002/02/0285.html</a></p>

<p>After much discussion, Alexandre interjected to thank everyone for
emailing him their opinions.  He asked for more developers to write
him so that a conclusion could be reached.  Ideas continued to flow.
Gavriel State had one of the most interesting: set up a non-profit
organization to manage the code and license it to corporations.  Under
this arrangement it would be possible for companies to gain exclusive
access to the code for a royalty fee, or require that all modifications
be submitted back to the main tree, or whatever was deemed appropriate.
This isn't as strange as it seems - idSoftware has done this with the
Quake 1 and 2 code it's released 
( <a href="http://www.idsoftware.com/corporate/idtech/index.html">
http://www.idsoftware.com/corporate/idtech/index.html</a> ).  Under 
this arrangement, developers that don't want to operate under the GPL
can download the code from idSoftware, pay $10,000, and have the
ability to keep their modifications confidential.  Gavriel proposed:
</p>


<quote who="Gavriel State">

<p>As I mentioned, I have been considering the license issue for the last
several days.  It is a matter very near to my heart, as I believe that 
it affects not only TransGaming, but really the entire software industry.
This posting is somewhat lengthy, but please bear with me.  </p>

<p>Open Source software has made enormous strides in the last several 
years, and incredible amounts of great code have been produced.  At the
same time, it has been unable to compete effectively with proprietary 
software vendors like Microsoft, except in those areas where sufficient
well financed companies have been able to direct full-time developer 
resources to the problem.</p>

<p>With the wellspring of dot com VC funding going dry, the question arises:
where will the money come from to pay full-time Open Source developers?
Just imagine where Wine would be without the code contributed by the 
half-dozen or so companies that have been involved.  Imagine where Linux
would be without the efforts of the companies paying for dozens of full-time
Kernel hackers.
</p>

<p>And imagine where we could be if just one or two percent of Microsoft's 
annual $25 Billion in revenue were being directed at Open Source projects.</p>

<p>The business models capable of supporting traditional Open Source projects
are really rather limited: consulting services, technical support, and selling 
ancilary products with the software.  None of these come close to delivering 
the levels of revenue that traditional mass-market shrinkwrap software can.
So far, it is unclear whether they can support much profit at all for their 
proponents: RedHat, VA, and others bear witness to that.  </p>

<p>TransGaming, for one, is working with some new ideas on how to do things
differently, and profitably.  There are a number of interesting possible
approaches out there, and it is important to the entire world that we 
find models that work.  Otherwise we are going to be stuck with the kind
of information police states envisioned by the RIAAs, MPAAs, and Microsoft's
of this world.</p>

<p>Now we are all here because we think that there are better ways to do 
software than the wholly proprietary approach.  We want to be able to 
look at the code, tear it apart, fix the bugs, and make it cooler.  And 
we want others to have the freedom to do the same.</p>
<p>Ultimately, the questions that need answering are these:</p>
<ul>
 <li> What freedoms are important to the community?</li>
 <li> Can those freedoms be achieved without sacrificing other goals?</li>
 <li> What is the best mechanism for ensuring those freedoms, and
   ensuring the continued development of the code?</li>
</ul>

<p>The Wine X11-style license essentially allows the code to be used
anywhere, in any way.  Users don't need to pay, Developers can take bits 
and pieces as they deem appropriate, and corporations can sell the product 
in whatever way they feel like.  But it also has no legal mechanism to 
try to coerce further development of the project.</p>

<p>Current proponents of an LGPL license switch believe that a legal mechanism 
is important to protect the project.  </p>

<p>Frankly, I am at a loss to understand the reasoning behind such a switch.  
I don't see any way in which any company could maintain their own fully 
proprietary fork of Wine without doing periodic merges into the public 
project.  It's hard enough for TransGaming to do it despite the fact that 
we deal mostly in very specific areas.  And even if someone was able to 
do so, how does it affect the Wine project any more than the existence of 
Windows or MainWin does?  At most, it would affect the userbase, but in 
the current model that doesn't matter, since that userbase doesn't 
contribute significantly to the project.  Only the developers contribute, 
and it is not at all clear to me that they would stop.</p>

<p>Marcus Meissner has already shown that the existance of our AFPLed DCOM 
code didn't stop him from going ahead and doing it himself.  On the 
contrary - it helped him, since he got hints from our design. It's a shame 
that he had to, since we've been working hard to find a way to contribute 
that code back, and now we may have no way to recoup our investment.  We 
still have a 2nd pass, more complete DCOM implementation under development, 
so it is possible that we be able to get a sponsor for that.  But regardless, 
it clearly shows that having code outside the WineHQ tree is no impediment to 
the community reimplementing it if necessary.</p>

<p>The LGPL would severely limit a number of possible commercial applications 
of Wine, such as:</p>
<ul>
  <li> Companies or groups that might want to take a small bit of Wine 
    code here and there without taking the whole thing.  IE: Corel's 
    Mac porting work, or projects like MicroWindows or Odin (similar
    projects like Xine and ReactOS use parts of Wine this way, though 
    they're GPLed, and thus would not be affected).  </li>

  <li> Porting Wine to platforms with NDAed APIs.  Or commercially oriented
    ports to other platforms which might not be viable under the LGPL.</li>

  <li> The work that TransGaming has done to support copy protection. 
    Releasing that code all at once - as would be required under the 
    LGPL - might violate the DCMA, since it reveals something of how 
    the copy protection systems work.  </li>

  <li> New business models like TransGaming's, with conditional-future-
    release of code.</li>
</ul>

<p>While I am open to considering license changes that have the potential to 
benefit the project, I am very very concerned about the LGPL.  Going that 
route is a one-way street with no turning back.  </p>

<p>I've been thinking about these problems for a long time.  As much as for
any other reason, I started TransGaming with the desire to try to find good
long-term solutions to the problem of how to fund Open Source development
through the people who are actually using the code.</p>

<p>I have the germ of an idea that might be useful to address some of the 
concerns that the LGPL-license-change camp has had, while at the same
time leaving the doors open for a much wider variety of different commercial
activities.  I have been trying to flesh it out while at the same time 
working to some very tight deadlines, and I have not had time to really 
think through some of the the possibilities that it entails.  I am posting 
it to the list now anyway so that it's out there for people to think about.  
</p>

<p>Here's the quick and dirty version:</p>
<ul>
 <li> A new non-profit company is created: WineCorp </li>
 <li> Developers contribute their work to WineCorp - possibly assigning
   copyright, or at least giving WineCorp the rights to do with the
   code whatever it pleases.</li>
 <li> WineCorp distributes the code under an AFPL-like license - no 
   commercial redistribution allowed.</li>
 <li> WineCorp has a set of standing licenses allowing for commercial 
   redistribution.  A company can redistribute commercially if it
   does one of the following things:
   <ul>
     <li> Releases source modifications to WineCorp immediately.</li>
     <li> Releases source modifications within a preset timeframe 
       (maybe one year).</li>
     <li> Releases source modifications with some appropriate prearranged 
       condition (ie: the TransGaming subscriber limit).</li>
     <li> Pays WineCorp a pre-set royalty, which WineCorp can then 
       use to sponsor other Wine development</li>
   </ul>
 </li>
 <li> For cases that don't fall into the above conditions, the WineCorp
   board of directors can vote to allow some other licensing arrangements.
   This helps prevent the kind of one-way ticket we have with the LGPL.</li>
 <li> WineCorp could also serve as a way for the userbase to direct funding
   and attention to different parts of Wine.  To my mind, this is one of
   the biggest problem Open Source projects have.  The end users get everything, 
   but many don't contribute: no code, no money, no bug reports, nothing.  The 
   more they can be encouraged to contribute, the better off everyone is.  
   WineCorp could solicit donations from users who can't contribute otherwise
   and possibly institute a subscription/voting system similar to TransGaming's.</li>
</ul>

<p>One hard question the above idea creates is how does money gets split
fairly amongst different developers working on particular parts of the 
code?  I am sure that there are other problems as well.  That said, I 
think that the importance of new models like this go far beyond the Wine
project.  Ideally, I hope that methods like these can be profitable enough
to make proprietary software companies begin to consider opening up their
code in a similar fashion.</p>

<p>Just imagine the day that Microsoft makes their first contribution to Wine,
openly and without coersion by the government, because they recognize that
doing so is in their own best interests.  </p>

<p>Food for thought, anyway.</p>

</quote>

<p>This thread is far from over.  I'll try to publish the next issue
as soon as there's an answer.</p>

</section>







<section
  title="ODBC and Wine"
  subject="Example of ODBC and wine"
  archive="http://www.winehq.com/hypermail/wine-devel/2002/02/0134.html"
  posts="3"
  startdate="06 Feb 2002 23:00:00 -0800"
  enddate="06 Feb 2002 23:00:00 -0800"
>
<topic>Fixes</topic>

<mention></mention>

<p>Someone wondered what was involved with using a program that required
ODBC access to a database, <quote who="Ricardo">
has anyone used wine with a program that conects to an ODBC database? How
have you set this? I was thinking about FreeTDS but i configured it and
doesn't know what to do nexe. Any help?</quote></p>
<p>Steve Langasek replied, </p>
	<quote who="Steve Langasek">
	<p>Based on what an ODBC driver actually does, and assuming a technically 
	 sound model, I see no reason that you shouldn't be able to use an existing 
	 Win32 ODBC driver under Wine to talk to a SQL server. 
	</p>

	<p>
	 In practice, the issue may be far more hairy than that. :)
	</p>

	<p>
	 If the Win32 ODBC doesn't work for you, maybe the next thing to look at 
	 would be compiling FreeTDS's ODBC driver using libwine...
	</p>
</quote>

<p>Bill Medland offered a quick suggestion, 
<quote who="Bill Medland">unixODBC and DB2. It's easy enough for that.
</quote></p>






</section>







<section
  title="Wine Compilation with MSVC"
  subject="Re: Some more MSVC fixes"
  archive="http://www.winehq.com/hypermail/wine-devel/2002/02/0063.html"
  posts="19"
  startdate="05 Feb 2002 23:00:00 -0800"
  enddate="06 Feb 2002 23:00:00 -0800"
>
<topic>Fixes</topic>

<mention></mention>
<mention>Patrik Stridval</mention>

<p>
Patrik Stridvall submitted some patches to allow compilation with
Microsoft's compiler.  Gerhard Gruber asked, 
<quote who="Gerhard Gruber">Is this correct that tests are made to compile Wine on MSVC? 
What good is this for? I thought Wine should be an emulation of windows 
code on a Unix platform, what good is it to run Windows on Windows?
</quote></p>

<p>Patrik replied:</p>
<quote who="Patrik Stridvall">
<p>
It would be quite nice to have all non core DLL compiling and 
working and with winetest ported. Then you could just run winetest
through the debugger and be able to set breakpoint and step through
the code in Visual Studio in order to get all to tests to run properly. :-)
</p><p>
Also note that this would make it possible to debug each dll in an
enviroment where all other DLLs except the DLL tested were real
Windows DLLs.
</p></quote>
</section>







<section
  title="wineconf 2002"
  subject="more on wineconf 2002"
  archive="http://www.winehq.com/hypermail/wine-devel/2002/02/0131.html"
  posts="9"
  startdate="06 Feb 2002 23:00:00 -0800"
  enddate="11 Feb 2002 23:00:00 -0800"
>
<topic>Lindows</topic>

<mention></mention>
<mention>Ulrich Weigand</mention>
<mention>Transgaming</mention>
<mention>ReactOS</mention>
<mention>Lindows.com</mention>
<mention>Codeweavers</mention>
<mention>Max</mention>
<mention>Jeremy White</mention>
<mention>Xandros</mention>

<p>
Michael Robertson of Lindows.com has invited many of the key 
Wine developers to attend a conference in San Diego next month.
<quote who="Cheryl Schwarzman">
 The agenda and speakers will
 be the members of the WINE community. It will be a two day event on Friday
 and Saturday where new ideas can be shared, new connections made, and you
 can hear from the best and brightest pushing the WINE initiative forward.
</quote></p>

<p>Several people expressed interest in attending.  As Alexandre
put it, <quote who="Alexandre Julliard">
 Just to clarify my position, I'll be going, provided that there are
 enough other developers to make it worth it. In fact that seems to be
 the general sentiment around here: "I'll go if you go"  &lt;g&gt;
</quote></p>
<p>Mr. Robertson also posted a tentative agenda:</p>
<quote who="Michael Robertson"><p>

<u>Company Presentations</u><br />
<ul>
 Transgaming, Success To Date [Transgaming/State]<br />
 ReactOS - Where it's at, where it's going [ReactOS/Filby]<br />
 Corel, A Look Back [Xandros/Tranter]<br />
 Crossover Strategy [Codeweavers/JW]<br />
 Macadamian - Making It As A Software House [Macadamian/???]
</ul></p><p>

<u>Business</u>
<ul>
 WINE's "Most Wanted": Features To Make WINE Great [???]<br />
 Developer Funding, Who Pays The Rent [???]<br />
 Future of WINE licensing [CW/White]
</ul></p><p>

<u>Technical</u><br />
<ul>
 Development Model [CW/AJ]<br />
 NORM - The secret weapon [Codeweavers/???]<br />
 Making Fonts Not Look Like Crap [CW/Timoshkov/Davies]<br />
 Multimedia And WINE [eric.pouech@wanadoo.fr]<br />
 Regression Testing [???]<br />
 How To Improve The Debugger [Meissner/marcus@jet.franken.de]<br />
 Maximizing performance of WINE [???]<br />
 Package streamlining of WINE [???]<br />
 WinNT APIs (Odin, ReactOS, winNT wine, WINE) [???]<br />
 DirectX [Transgaming/Kaaven]<br />
 WINE as a porting tool [Macadamian/Jacques]<br />
 Native user.dll [Dr. Ulrich Weigand]<br />
 API Standardization [???]
</ul>
</p></quote>
<p>Jeremy White pointed out that he hadn't agreed to any of the
topics with his name or Codeweavers.</p>

</section>







<section
  title="MFC DLL's"
  subject="Greetings and a question"
  archive="http://www.winehq.com/hypermail/wine-devel/2002/02/0336.html"
  posts="4"
  startdate="11 Feb 2002 23:00:00 -0800"
  enddate="11 Feb 2002 23:00:00 -0800"
>
<topic>Commercial Development</topic>

<mention></mention>
<mention>Lindows.com</mention>
<mention>Ove K&#229;ven</mention>

<p>Michael Cardenas had a question about implementing a new DLL:</p>
<quote who="Michael Cardenas"><p>
 Hello everyone. My name is Michael Cardenas and I'm working on Wine for
 Lindows.com. I'd like to start a lot more communication with all of you and
 I have a couple of questions.
</p><p>
 I'm working on an app that uses a custom dll which requires msvcp60.dll to
 be loaded at launch time and won't launch without it.
</p><p>
 Currently there's no implementation of msvcp60.dll in wine. Is that just
 because no one has needed it yet? Or has someone looked into this and seen
 that it's too large to do? Or is it just not needed and there's some
 substitute dll? Doing some research, I see that on a fresh install of
 Windows98, the dll is present, so it seems to be a common windows dll. MSDN
 mentions the dll in this article:
 <a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnwxp/html/sidexsidewinxp.asp">
 http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnwxp/html/sidexsidewinxp.asp</a>
<blockquote>
 "A good example of this is the Microsoft Visual C++ Runtime assembly, which
 includes atl.dll, mfc42.dll, mfc42u.dll, and msvcp60.dll."
</blockquote>
</p><p>
 Also, there's been basically no discussion of this dll on this mailing 
 list. So, to proceed, I'm going to create a stub dll and hope the app will launch
 and not need many functions from that dll. I'd like to know if there's a
 good way to make a complete stub for the dll. Right now, I just made a stub
 dll with one function.
</p></quote>
<p>Uwe Bonnes replied,<quote who="Uwe Bonnes">
There is no "good way" know yet. It seems msvcp60.dll exports a huge number
of entries ( >2000). So I guess it falls in the mfc42 category (nearly
impossible to reimplement because of sheer size). 
<a href="http://groups.google.com/groups?q=msvcp60;hl=en;selm=8502qq%24931%241%40nnrp1.deja.com;rnum=1">
http://groups.google.com/groups?q=msvcp60;hl=en;selm=8502qq%24931%241%40nnrp1.deja.com;rnum=1</a>
also has some good explanations around that redistribution license.</quote></p>
<p>Andreas Mohr suggested:</p>
<quote who="Andreas Mohr"><p>
 Well, you might want to create an export table with the *real* function
 names...
</p><p>
 Use pedump for that.
</p><p>
 Also, it contains some common functions like mbrtowc() and such,
 so maybe it should be based on msvcrt.
 Most functions have mangled names and appear to be different, though.
 There was a way to demangle these function names.
 (I think winedbg includes demangling support)
</p></quote><p>
Ove K&#229;ven's suggestion was to just run something like
<quote who="Ove Kaaven"><code>winedump spec dllname.dll -I/dir/to/headers -c -t -D
</code></quote></p>

</section>







<section
  title="Open Source Direct3D Wrapper for OpenGL"
  subject="Direct 3D 8.0 Wrapper for OpenGL Open Sourced"
  archive="http://www.winehq.com/hypermail/wine-devel/2002/02/0326.html"
  posts="4"
  startdate="11 Feb 2002 23:00:00 -0800"
  enddate="11 Feb 2002 23:00:00 -0800"
>
<topic>Multimedia</topic>

<mention></mention>
<mention>Patrik Stridvall</mention>

<p>Damjan Lango pointed out the following news item:</p>
<quote who="Damjan Lango">
<p>
Just found this on <a href="http://www.osnews.com">
http://www.osnews.com/</a>:
</p><p>
Direct 3D 8.0 Wrapper for OpenGL Open Sourced
<a href="http://www.osnews.com/story.php?news_id=613">
http://www.osnews.com/story.php?news_id=613</a>
</p><p>
Not sure what is the license, but maybe it could
be incorporated to wine as an alternative to the
transgaming's version.
</p></quote>
<p>Patrik Stridvall pointed out the copyrights on the
files weren't consistent and it was also unclear what
the license status of the whole thing was.  Gavriel
State didn't seem too concerned:</p>
<quote who="Gavriel State"><p>
 Well, you're welcome to try, but their 'library' seems to 
 consist mostly of stubs and Microsoft's own code.  There
 is very very little there. The prospect is certainly not
 keeping me up at nights.  8-)
</p><p>
 It might be better to help find us more subscribers so that
 we can release our real, working code to the WineHQ tree.
</p></quote>


</section>







<section
  title="Setting Serial Port Speeds"
  subject="RFC: Re: Problem with COM (fwd)"
  archive="http://www.winehq.com/hypermail/wine-devel/2002/02/0322.html"
  posts="11"
  startdate="08 Feb 2002 23:00:00 -0800"
  enddate="11 Feb 2002 23:00:00 -0800"
>
<topic>Fixes</topic>

<mention></mention>

<p>Dusko Rusmir needed to access a serial port at a speed of 5726, 5760, or
9600 bps.  When he tried 9600 he got an error, so he assumed he needed to
use a different speed.  Lawson Whitney thought those were really bizarre
speeds, but Dusko assured him the application required 5726 or 5760.  After
looking into it, Lawson determined that 5760 was possible, but Wine wasn't
capable of handling that speed natively.  He explained a little trick
that could be done with setserial to get the desired speed:</p>
<quote who="Lawson Whitney"><p>
Oops, 5760 is physically possible with a custom divisor of 20, I
think.  5726 is not.  You set the speed of a UART by loading an integer
valus into the divisor regisgter.  The UART then divides its maximum
speed by that number.  If the divisor is 2, it runs at 57600.  There is
no integer you can divide 115200 by to get 5726.  There is also no
provision in Wine to use a custom divisor, I think, but combined with
linux system commands, there is.  Set the app to use 38400.
Beforstarting the app, do
</p><p><ul>
<code>setserial /dev/ttyS&lt;n&gt; spd_cust divisor 20</code></ul></p>

<p>when the app asks for 38400, it should actually get 5760.  If it doesn't
work, show me the output of:
</p><p><ul>
 <code>setserial -a /dev/ttyS&lt;n&gt;</code>
</ul></p><p>
&lt;n&gt; is the number of the comm port -1, unless you have ~/.wine/config
set oddly.  You can make "Com1" = "/any/damn/thing" but it might not
work, or "Com1" = "/dev/ttyS3"  (if the serial port you mean to use is
on com4, that will work, but it will confuse me unless I see your
.wine/config)) and
</p><p><ul>
 <code>wine --debugmsg +file,+comm blah.exe 2>&#038;1 |tee ~/logfile</code>
</ul></p><p>
(a copy of the debug messages will be in ~/logfile)
gzip it before putting it in the mail, please.
</p></quote>
<p>Then Lawson turned to the wine-devel list for an explanation of how
it might be possible for a UART to run at 5726 bps.  Gerard Patel
explained:</p>
<quote who="Gerard Patel"><p>
If you have access to Google, search for the following Usenet posting,
for example: UnHy6.600095$JT5.16435354@news20.bellglobal.com
</p><p>
If you can't use Google, you could see that this is a common request 
under Windows. quite a few programmers need to access devices
with non-standard crystals, or even non 8251 chips with specific
drivers.
In this post, you could see that SetCommState accepts any baud 
rate up to 9600 bauds, and that over 9600 bauds the idea is that
the Windows driver should accept values that are inside a +-1% 
interval of the 'correct' value (although the poster says that the
calculation is bugged and works only for negative differences).
</p><p>
The Windows code for the 8251 family is probably always rounding
to the next integer value under 9600, and if the wanted rate falls
to +-1% of the 'normal' value over 9600. As I understand it, the 1%
tolerance is explained because such a small difference don't matter
for asynchronous serial  communication.
</p></quote><p>
That made sense to Lawson and he offered to take a stab at 
fixing SetCommState to behave like the native one.
</p>
</section>




</kc>
