SCO is currently saying defamatory things about Linux, that it is ruinous to the economy, a security risk because it's available over the internet, and a threat to capitalism because it is released under the GPL license, which it laughably claims is violative of copyright law. I was thinking back to when SCO first began, when it was named Caldera, and when substantially all of its revenues were derived from sales of Linux products and related services, and I thought it would be interesting to see what Caldera had to say about Linux back when it was trying to get people to invest in the company when it first went public in January, 2000.
What the company said about Linux then in their S-1 filing with the SEC is exactly the opposite of what the company, now named SCO Group, is telling Congress about Linux now. The two positions are mutually exclusive. Which is the truth? Was what they filed with the SEC not truthful information? If so, what about the millions they raised? Or are they being less than honest now? Or is it this simple, that when they wanted to make money from Linux, it was the best thing for US business since white bread and now when they think they can make money attacking Linux, it's the wicked witch of the north? The hypocrisy is palpable.
So you can see for yourself, here are some excerpts from that S-1, filed with the SEC on January 10, 2000. It's quite long, even though I collected only excerpts about Linux, but that's because they had a lot of good things to say about Linux, and they raised a great deal of money saying these good things.
They acknowledge making money from Linus Torvalds' work and depending upon him and his helpers. They not only sold Linux, they taught it as a part of their business, so if there are a lot of folks who know how to use Linux, they helped to make that happen. They also list all the standards groups and Linux fostering groups they belonged to, including the Trillian project. And they state they released their products under the GPL. Attached to the S-1 are all the contracts and license agreements they then used, including the GPL, quoted in full, as you will see.
Additionally, the Evergreen contract includes this clause:
"3.10 GNU General Public LicenseBoth parties understand that Linux and certain software in eBuilder are or may be subject to or governed by the applicable GNU General Public License and/or other applicable open source agreements, and nothing in this Agreement or the Business Alliance shall require either party to act in contradiction of the applicable GNU General Public License and/or other applicable open source agreements. . . .
"3.13 OpenLinux for eBuilder is licensed, not sold.
The Linux kernel and any other GNU General Public License software or open source software are distributed pursuant to and governed by the applicable GNU General Public License or open source software agreement."
There is also in one of the contracts, the one with Evergreen, a notification that the Linux products were not to be made available to countries such as North Korea, which reads like this:
"IMPORTANT NOTICE: THIS SOFTWARE OR ANY UNDERLYING INFORMATION OR ANY UNDERLYING TECHNOLOGY MAY NOT BE DOWNLOADED, DISTRIBUTED OR OTHERWISE EXPORTED OR RE-EXPORTED OUTSIDE THE UNITED STATES (OR CANADA) OR TO ANY FOREIGN ENTITY OR "FOREIGN PERSON" AS DEFINED BY U.S. GOVERNMENT REGULATIONS. INCLUDING WITHOUT LIMITATION ANYONE WHO IS NOT A CITIZEN, NATIONAL, OR LAWFUL PERMANENT RESIDENT OF THE UNITED STATES (OR CANADA) OR TO ANYONE ON THE U.S. TREASURY DEPARTMENT'S LIST OF SPECIALLY DESIGNATED NATIONALS OR ON THE U.S. COMMERCE DEPARTMENT'S TABLE OF DENIAL ORDERS OR ENTITY LIST, OR INTO (OR TO A NATIONAL OR RESIDENT OF) CUBA, IRAQ, LIBYA, NORTH KOREA, IRAN OR ANY OTHER COUNTRY TO WHICH THE U.S. EMBARGOES GOODS. BY DOWNLOADING OR USING THIS SOFTWARE, YOU AND YOUR COMPANY ARE AGREEING TO ABIDE BY THE FOREGOING AND ARE WARRANTING THAT YOU AND YOUR COMPANY ARE NOT A FOREIGN PERSON OR FOREIGN ENTITY (OTHER THAN A CANADIAN PERSON OR CANADIAN ENTITY) OR UNDER THE CONTROL OF A FOREIGN PERSON OR FOREIGN ENTITY (OTHER THAN A CANADIAN PERSON OR CANADIAN ENTITY)."
So SCO knows full well that the charge they have just sent in a letter to Congress that Linux is made available to anyone in the world, even to embargoed countries like North Korea, is a lie. With that introduction, here are excerpts from Caldera's first SEC filing.
Caldera Systems, Inc. enables the development, deployment and management of Linux specialized servers and Internet access devices that simplify computing. Our Linux software products and service offerings are specifically designed to meet the complex needs of eBusiness, or business over the Internet. We employ commercial software development practices in producing our Linux products by assembling open source code so that it is logically arranged and then rigorously testing for quality and performance. Our use of this process, known as self-hosting, is unique in the Linux community and gives our products a high level of stability and reliability. During 1999 our OpenLinux technology received many awards and recognitions including Internetweek's "Best of the Best," The Linux Show's "Best Distribution of Millennium," Linux Journal's Product of the Year award at Comdex and Network Computing's Well-Connected Award for Best Network Operating System.
We complement our product offerings with value-added services. We offer a comprehensive, distribution-neutral education and training for Linux. A student who has successfully completed our courses will be proficient with the leading distributions, or versions, of Linux. Other services that we offer include technical support to assist end users during installation and operation of our products, consulting and custom development, optimization and certification for specific hardware platforms and documentation on Linux usage. . . .
The Internet has accelerated the introduction of processes for managing information, providing services and solutions and handling customers and has changed the way software applications are developed and deployed. The Internet has also enabled and accelerated a trend towards distributed software applications. This has led to a rise of thin appliance servers, or specialized servers. Dataquest projects that the worldwide market for thin appliance servers will grow from approximately $2.2 billion in 1999 to approximately $16.0 billion by 2003. In addition, low cost Internet access devices, such as personal digital assistants and television set-top boxes, are emerging to allow more users the ability to participate in eBusiness.
This new eBusiness computing environment requires an operating system that can accommodate its accelerated evolution. Linux, with its comprehensive Internet functionality, flexibility and customizability, high scalability, stability, interoperability with multiple systems and networks and multi-appliance capability is an optimal operating system for eBusiness. International Data Corporation projects the total market for Linux shipments will increase at a compound annual growth rate of 25% from 1999 to 2003. Also, Dataquest has predicted that Linux thin servers will account for approximately $3.8 billion in server appliance revenues by 2003. However, historically, business users have lacked a Linux solution that is specifically tailored for eBusiness. We seek to fulfill this need with our solution for eBusiness.
Our goal is to become the leading provider of Linux for eBusiness. Key elements of our strategy to achieve this goal include:
- providing Linux software for specialized servers and Internet access devices, which are becoming key components in the new eBusiness environment;
- remaining committed to our research and development effort and staying abreast of the fast changing eBusiness environment;
- increasing our channel presence in Linux, which has given us a head start in accessing the business community with our Linux products;
- leveraging our technology, marketing and distribution partners to facilitate faster growth;
- facilitating the adoption of Linux for eBusiness through education and training;
- establishing our Web site as the one-stop center for eBusiness; and
- expanding our international presence to take advantage of growing market opportunities.
WE RELY ON INDEPENDENT DEVELOPERS IN THE OPEN SOURCE COMMUNITY, SUCH AS LINUS TORVALDS, IN ORDER TO RELEASE UPGRADES OF OUR LINUX-BASED PRODUCTS.
Many of the components of our software products, including the Linux kernel, the core of the Linux operating system, are developed by independent developers in the open source community and are available for inclusion in our products without cost. Linus Torvalds, the original developer of the Linux kernel, and a small group of independent engineers are primarily responsible for the development and evolution of the Linux kernel. Neither Mr. Torvalds nor any significant contributor to the Linux kernel is an employee of ours. If these independent developers and others in the open source community do not further develop the Linux kernel and other open source software included in our products on a timely basis, or at all, our ability to enhance our product offerings will suffer. As a consequence, we will be forced to rely to a greater extent on our own development efforts or license commercial software products as replacements, which would increase our expenses and delay enhancements to our products. . . .
Substantially all of our revenues since fiscal 1996 have been derived from sales of Linux products and related services. We expect that for the foreseeable future the majority of our revenues will continue to be derived from our OpenLinux product line, while revenues from our service offerings including training, customer support, and consulting will increase as a percentage of revenue.
Caldera Systems, Inc. enables the development, deployment and management of Linux specialized servers and Internet access devices that simplify computing. Our Linux software products and service offerings are specifically designed to meet the complex needs of eBusiness, or business over the Internet. During 1999 our OpenLinux technology received many awards and recognitions, including Internetweek's "Best of the Best," The Linux Show's "Best Distribution of Millennium," Linux Journal's Product of the Year award at Comdex and Network Computing's Well-Connected Award for Best Network Operating System. We facilitate the adoption of Linux by providing educational programs designed to help our customers to develop, deploy and administer Linux systems. We embrace the open source model and participate as a key member of many open source, industry standards and partner initiatives, including Linux Professional Institute, Linux Standards Base and Linux International Group. . . .
The dynamic and fast changing nature of eBusiness requires an operating system, the software that enables a computer and its various components to interact, that can change with the accelerated evolution of eBusiness. The ideal operating system must enable companies to connect specialized servers and Internet access devices to the Internet network to conduct eBusiness. It must be customizable to adapt to the changing software applications environment, shifting hardware infrastructures and emergence of new Internet access devices. It must be scalable to accommodate the growing number of users and the ways that they access the Internet. The ideal operating system must be highly stable and easy to maintain to minimize overall operating and maintenance costs. It must allow for rapid deployment and development and be easily upgradeable to keep pace with the changing needs of eBusiness. Finally, this operating system must interface with existing systems and embrace open technical and communications standards like Java and extensible mark-up language, or XML, to take full advantage of the Internet.
Linux is an optimal operating system for eBusiness. The term open source applies to software that has its internal source code open to the public for viewing, copying, examining and modification. As a result, the Linux source code is available for download over the Internet. Open source code allows thousands of developers around the world to continually collaborate to improve and enhance the software. The Internet has facilitated and greatly enhanced this collaborative environment. In fact, IDC has projected that the total market for Linux shipments will increase at a compound annual growth rate of 25% from 1999 through 2003. Also, Dataquest has predicted that Linux thin appliance servers will account for approximately $3.8 billion in server appliance revenues by 2003. Benefits of Linux include:
- comprehensive Internet functionality;
- flexibility and customizability;
- high scalability;
- interoperability with multiple systems and networks;
- multi-appliance capability, including Internet access devices;
- low acquisition and maintenance costs; and
- compliance with technical and communications standards. . . .
CALDERA SYSTEMS SOLUTION
We enable the development, deployment and management of Linux specialized servers and Internet access devices that simplify computing. We believe that our Linux solution is a comprehensive solution for eBusiness. Key benefits of our solution include:
Focused business framework. We were the first to tailor Linux open source code from various sources into sound discrete products that are usable, deployable and manageable for eBusiness. Our development team consists of experienced Linux engineers and business professionals. We develop our products by first carefully choosing the Linux features that are the most relevant and useful for eBusiness. Then we assemble the code so that it is logically arranged and works together as seamless applications in which source and binary code match for logic and order. Our products are then tested for quality and performance. This enhances reliability and reduces the need for technical support when used under strenuous business conditions. This process, known as self-hosting, is unique in the Linux community and accounts for the high levels of stability and performance of our products. Our products are also designed to be interoperable with multiple platforms to enable businesses to make efficient use of existing information technology investments. . . .
Comprehensive, distribution-neutral education and training. Many companies are delivering different versions of Linux called distributions. We provide a comprehensive distribution-neutral training program for Linux. Our courses focus on educating and training the business community on Linux's benefits for business use. We offer a comprehensive set of courses designed to prepare students to develop, deploy and manage Linux in a business environment, including system, network and Internet administration and programming. A student who has successfully completed our courses will be proficient with the leading distributions of Linux. We offer high-quality instructor-led training through our own training center at our headquarters and also offer our educational programs indirectly through our Authorized Linux Education Centers, or ALECs, around the world.
Business community catalyst and open source advocate. We were the first Linux provider to introduce an open source operating system designed for the business environment. By demonstrating to key information technology companies such as Corel and Netscape that open source systems can work well with proprietary systems, we believe that we have sparked the interest of more conservative technology adopters and accelerated acceptance of Linux for business use. We help port, or convert, business applications to the Linux platform and offer ways to incorporate those products into existing systems. We are a major driver of Linux standards based initiatives such as Linux Professional Institute, or LPI, an independent organization dedicated to the establishment of professional certification standards for Linux professionals, and Linux Standards Base, or LSB, an initiative that is designed to standardize application development for the Linux platform. An application that meets all the criteria for LSB should work on all compliant distributions of Linux. If LSB is widely adopted, we believe it will significantly reduce the fragmentation of Linux.
We fully embrace the open source model and continuously contribute tools and technology to the open source community. We give away CD ROMs containing our Linux operating system at trade shows and allow it to be freely downloaded from the Internet to encourage interest. . . .
We foster multiple development projects over the Internet and help each project progress smoothly.
CALDERA SYSTEMS STRATEGY
Our goal is to become the leading provider of Linux solutions for eBusiness. Key elements of our strategy to achieve our goal include:
Providing Linux software for specialized servers and Internet access devices. By providing focused Linux business solutions that simplify systems management, increasing interoperability and improving ease of use, we have the goal of becoming the number one provider of Linux eBusiness products. We are a leader in applying commercial development practices to Linux, resulting in Linux products that can be more easily deployed and managed. We intend to facilitate the proliferation of highly customized,integrated Linux business solutions by offering both a Linux client and server product and further optimization and certification services to solution providers and end users. In addition, during the first half of 2000 we plan to release eBuilder, an open standards, component-based eBusiness framework, written in Java for the Linux environment. eBuilder is designed to provide businesses with the ability to incorporate existing software applications, file directories and databases into workable eBusiness solutions, such as Web storefronts.
Remaining committed to research and development. We are committed to continuing our research and development efforts to enhance our products to be efficient and effective platforms for delivering eBusiness solutions. Our primary focus will be to design and implement the software that will allow organizations to install and manage these Linux systems in a flexible and cost effective manner. We will contribute time and technology to various industry initiatives to expand the range of computing hardware on which our products can be offered. Additionally, we will support and seek to influence technology standards that will expand the scope in which our products can be sold and deployed. We are committed to the open source model for software development and will work to contribute much of our efforts to the open source development community. We will continually seek out new innovative solutions to address the needs of our customers and the evolution of the marketplace.
Increasing our channel presence in Linux. We believe that the best way to reach the business user is through solution providers. Solution providers will be invaluable in providing turnkey solutions and local support for specialized servers. We plan to enhance our product and service offerings to solution providers by introducing new products for eBusiness, increasing the reach of our education and training services and expanding resources for solution providers on our Web site.
Leveraging partners for growth. We believe that in order for us to accelerate our growth, we must enlist the help of partners to promote our brand, proliferate our products and provide us with valuable feedback. Through our partner programs, we plan to provide our partners with appropriate knowledge, tools and certifications to effectively implement our solutions for eBusiness. This will increase awareness of Caldera Systems and our extended network of partners, thus increasing the end user's confidence in us and Linux as a viable business platform. We intend to expand our partner programs for:
- independent software vendors, or ISVs;
- original equipment manufacturers;
- hardware vendors;
- system integrators;
- value-added resellers;
- education providers (ALECs); and
- Web partners.
Facilitating the adoption of Linux for eBusiness through education and training. In addition to simply selling educational products, our strategy is to educate our partners on how to deploy, manage and administer Linux solutions. As these partners train other users, we expect increased sales referrals. We plan to expand our ALEC channel through industry partnerships to help establish market share. In addition, we plan to expand our educational offerings through Web-based classroom training, academic textbooks and training materials, and to develop additional courses to maintain our leadership in Linux educational products. Finally, we plan to expand our partnerships to include universities, course developers, communities and other institutions who may offer opportunities to increase exposure of Linux.
Establishing our Web site as the one-stop center for eBusiness. We intend to continue to enhance our Web site to provide a one-stop center for eBusiness. We expect that this will attract Linux business users, particularly those from small to medium businesses, as well as the business users who contemplate using Linux but lack the confidence that there will be sufficient education, products and support. We plan to expand our Web site as an electronic channel for our solution providers by providing information, sales and service leads.
Expanding our international presence. We currently have distribution channel representation in 47 countries to take advantage of what we believe will be high international demand for Linux business solutions. We plan to continue to penetrate the international market by recruiting local distributors and solution providers in each region, leveraging their access to the surrounding community, and by reaching partners to proliferate our brand and products. These partners will begin to generate momentum for our products and services as the international markets become educated about our solutions. Local partners will also be able to add value and customize our products and Web site to meet local language and regulatory requirements. As our international penetration continues, we plan to expand our support resources to overcome time zone and language barriers as we are now doing in Germany and Japan.
We develop, market and support Linux products and solutions specifically designed to meet the complex needs of eBusiness. According to PC Data, during the period from January 1, 1999 through October 31, 1999, Caldera Systems was third in sales of Linux operating systems in the United States, both in terms of units sold and aggregate dollar amount. Our products and solutions integrate both commercial and open source software products developed by us and third parties. For example, we have included applications that we have open sourced, such as LInux wiZARD (LIZARD), our award-winning graphical Linux step-by-step installation tool. We apply development and testing procedures to the open source code included in our products similar to those procedures applied to commercial products. This process known as self-hosting is unique in the Linux community and accounts for the high levels of stability and performance of our products. Our rigorous development procedures result in a highly consistent product that enables easier and more rapid customization, integration and support of our solutions. Our products are designed to work both individually and together to provide a rapidly expandable platform as enterprises extend their eBusiness infrastructure.
We first released our principal product, OpenLinux, a Linux operating system, in 1995. We began shipping the latest release, OpenLinux 2.3, in September 1999. OpenLinux 2.3 is an integrated and pre-tested collection of approximately 300 business-relevant third-party software components, which provide for a variety of functions that can be utilized either on a single desktop computer or in a networked environment. We have historically developed OpenLinux for the first time Linux user, which predominantly has come from a Windows, desktop environment. OpenLinux 2.3 is currently available for the Intel and Sun SPARC platforms. According to Ziff-Davis, in laboratory tests, OpenLinux was 50% faster than any other Linux product in Web server performance and 200% faster than Windows NT at file and print services. We believe that these performance results are largely due to our self-hosting approach.
The suggested retail price for packaged OpenLinux 2.3 is $49.95. . . .
OpenLinux 2.3, in the next release, will be renamed OpenLinux Desktop to reflect its emphasis for desktop.
OpenLinux eServer 2.3
OpenLinux eServer 2.3 is targeted at solution providers, system integrators and resellers who provide specialized, thin and high-end servers to their customers. eServer supports server-oriented hardware. It is a component-based server operating system designed for OEMs, solution providers, system integrators and resellers and makes Linux server solutions easy to install, configure and operate. It is readily customizable and, in particular, has been developed for use by AST Computers, Fujitsu and Motorola. OpenLinux eServer 2.3 has been shipped to strategic partners such as Fujitsu, IBM and Motorola and will be generally available in the first quarter of 2000.
We plan to release our eBusiness framework, eBuilder, in the first half of 2000. eBuilder is one of the first fully open standards, component-based eBusiness frameworks written in Java for the Linux environment. eBuilder can be used to develop ecommerce components, packages and processes. These packages and processes can be re-used in multiple client environments. eBuilder utilizes Java to introduce plug-and-play capability into an environment for a business' existing software applications, file directories and databases. eBuilder is Java and CORBA compliant, utilizes XML for data encapsulation and is Enterprise Java Bean compliant. The eBuilder framework, coupled with eServer, will provide solution providers the ability to transform traditional products and services into integral components of a comprehensive eBusiness solution, allowing them to provide new eBusiness services to their existing customers without requiring them to totally replace their existing business solutions.
Linux Education and Training Services
Our educational programs and products are designed to help our customers learn to develop, deploy and administer Linux systems. Our courses provide preparation for Linux certification tests being provided by the Linux Professional Institute, an independent organization. We provide the most comprehensive distribution-neutral training program for Linux.
We provide Linux training through our training center in Orem, Utah and through 24 ALECs located in the United States and abroad. ALECs are independent centers that we have authorized to provide courses that we have developed. Currently, we offer eight separate courses relating to Linux training and network administration, which are categorized by their educational objective. The three categories of courses we provide allow multiple educational tracks, including:
- Linux certification;
- system administration; and
- Linux developer training.
The suggested retail price for our non-developer courses is $1,995. Developer courses have a suggested retail price of $2,250.
eBusiness Consulting, Custom Development and Optimization Services
Our eBusiness consulting services stem from our experience testing and integrating software products to work in a Linux environment. We assist ISVs and solution providers by helping them in creating customized Internet solutions which they can then pass along as products and solutions for their customers. Examples of the eBusiness consulting services we provide include:
- Customization and optimization of our products to support a client's proprietary system or configuration. Fees for this service start at $10,000.
- Assessment services relating to the proposed migration of a client's software for use with Linux. Fees for this service start at $3,000.
- Porting services for customers migrating their software to Linux. Fees are billed on a daily, weekly or monthly basis. . . .
We participate as a key member of many industry standard, partner and open source initiatives, including the following:
- Linux Professional Institute, an independent organization dedicated to the establishment of professional certification standards for Linux professionals;
- Linux Standards Base, a Linux community initiative dedicated to addressing problems and defining standards associated with the many versions of Linux distributions currently in the marketplace;
- Linux Internationalization Group, a voluntary Linux community working group, of which we are one of the founding members, dedicated to addressing interoperability, internationalization and localization of Linux applications in the international context;
- The Trillian Project, an Intel-sponsored initiative to port the Linux kernel to the Intel Itanium processor;
- Distributed Management Task Force, an independent organization including most of the largest software and systems vendors in the world, dedicated to creating new standards for computer systems management. We are working with this task force to incorporate into our OpenLinux products commonality standards already in place among enterprise-level businesses; and
- Java, Sun Microsystem's proprietary software programming language. We plan to incorporate standards that will allow the majority of current Java applications to run on Linux and to provide for developers to create new applications in Java for use on Linux.
SALES, MARKETING AND DISTRIBUTION
Our focus on Linux for eBusiness enables us to promote the development, deployment, and management of Linux appliances and devices that facilitate the eBusiness infrastructure. Our primary strategy is to distribute our products and services through our indirect distribution channel model. . . .
Our Web site, www.calderasystems.com, is focused on strengthening our Linux for eBusiness strategy. In addition to allowing visitors to download free software, our Web team is expanding our current Web strategy of branding, direct sales through our online store and linking customers to channel partners. Through our Web site, we plan to join together ISVs, hardware partners, customers, channel players, developers, ISPs and other Linux players who want to connect for business reasons and to generate royalties based on introductions, advertising and transactions. . . .
Certain components of OpenLinux have been developed and made available for licensing under the GNU General Public License and similar licenses, which generally allow any person or organization to copy, modify and distribute the software. The only restriction is that any resulting or derivative work must be made available to the public under the same terms. Therefore, although we retain the copyrights to the code that we develop ourselves, due to the open source nature of our software products and the licenses under which we develop and distribute them, our collection of trademarks constitutes our most important intellectual property. . . .
RELATIONSHIP WITH CALDERA, INC.
We began operations in 1994 as a business unit comprising substantially all of the operations of Caldera, Inc. In July 1996, through an asset purchase, Caldera, Inc. acquired an additional business unit which was not engaged in developing and marketing Linux software. Caldera, Inc. subsequently made the strategic determination to separate its two business lines into separate entities. Therefore, pursuant to an Asset Purchase and Sale Agreement dated as of September 1, 1998, as amended, by and between Caldera, Inc. and Caldera Systems, Inc., Caldera, Inc. sold to Caldera Systems certain assets of its Linux software business unit for $19.9 million, $15.0 million of which was paid in the form of a cash payment in fiscal year 1999, $36,174 of which was in the form of assumption of liabilities and $4.9 million of which was in the form of forgiveness of a note receivable from Caldera, Inc.
On September 1, 1998, we entered into a sublease with Caldera, Inc. for office space in Orem, Utah. The sublease provides for annual rent of approximately $150,000 and terminates August 31, 2000.
Ralph J. Yarro III, chairman of our board of directors, and Raymond J. Noorda, one of our directors, are directors of Caldera, Inc. Caldera, Inc. is majority-owned by The Canopy Group, Inc. which holds more than 5% of our common stock. The Noorda Family Trust, of which Mr. Noorda and his spouse are co-trustees, is the controlling stockholder of The Canopy Group, Inc. . . .
GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed.
The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too.
When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights.
We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations.
Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and modification follow.
GNU GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does.
1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program.
You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.
2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:
a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change.
b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.
c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program.
In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License.
3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following:
a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.
If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code.
4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.
5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it.
6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License.
7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program.
If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances.
It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice.
This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License.
8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License.
9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.
Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation.
10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally.
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found.
(one line to give the program's name and a brief idea of what it does.)
Copyright (C) 19yy (name of author)
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Also add information on how to contact you by electronic and paper mail.
If the program is interactive, make it output a short notice like this when it starts in an interactive mode:
Gnomovision version 69, Copyright (C) 19yy name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program.
You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker.
(signature of Ty Coon), 1 April 1989
Ty Coon, President of Vice
This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License.