GNU's Bulletin, vol. 1 no. 19

 [image of the Head of a GNU]


Table of Contents


------------------------------------------------------------------------------


GNU's Bulletin June, 1995


The GNU's Bulletin is the semi-annual newsletter of the Free Software Foundation, bringing you news about the GNU Project.

Free Software Foundation, Inc. Telephone: +1--617--542--5942
51 Franklin St -- Fifth Floor Fax: (including Japan) +1--617--542--2652
Boston, MA 02110-1301 Free Dial Fax (in Japan):
USA 0031--13--2473 (KDD)
Electronic mail: gnu@prep.ai.mit.edu 0066--3382--0158 (IDC)


------------------------------------------------------------------------------

GNU's Who

Miles Bader has joined us to work on the Hurd with Michael Bushnell and Roland McGrath. Roland also maintains make and the GNU C library. Ian Murdock does Debian GNU/Linux releases and other programming tasks. Karl Heuer enhances GNU Emacs.

Daniel Hagerty is our system obfuscator and release coordinator. Melissa Weisshaus is working on special documentation projects. Volunteer Charles Hannum helps with typesetting and many other jobs.

Robert J. Chassell is our Secretary/Treasurer. Lisa Bloch is our Executive Director. Bryttan Bradley manages many of the functions of the FSF Office, and Mike Drain is our Distribution Manager. Gena L. Bean has been working part time on special projects.

Richard Stallman continues as a volunteer who does countless tasks, such as Emacs maintenance. Thanks to volunteer Scott Ewing for helping to coordinate all the volunteers in the GNU Project. Thanks to volunteer Tami Friedman for handling much administrivia here at the FSF. Volunteer Len Tower remains our online JOAT (jack-of-all-trades), handling mailing lists, gnUSENET newsgroups, information requests, etc.

Administrivia and Copyright

Written and Edited by: Melissa Weisshaus, Daniel Hagerty,
Robert J. Chassell, and Leonard H. Tower Jr.

Illustrations by: Etienne Suvasa

Japanese Edition by: Mieko Hikichi and Nobuyuki Hikichi

ISSN (International Standard Serial Number): 1075-7813

The GNU's Bulletin is published at the end of January and the end of June each year. Please note that there is no postal mailing list. To get a copy, send your name and address with your request to the address on the top menu. Enclosing $0.78 in US Postage and/or a donation of a few dollars is appreciated but not required. If you're from outside the USA, sending a mailing label and enough International Reply Coupons for a package of about 100 grams is appreciated but not required. (Including a few extra International Reply Coupons for copying costs is also appreciated.)

Copyright (C) 1995 Free Software Foundation, Inc.

Permission is granted to anyone to make or distribute verbatim copies of this document, in any medium, provided that the copyright notice and permission notice are preserved, and that the distributor grants the recipient permission for further redistribution as permitted by this notice.

------------------------------------------------------------------------------

...imagine how little used calculus would have been if a court had decided that no one could study, use, or do research on it without paying a royalty to Newton's designated heirs.

- The Independent, October 5, 1992

------------------------------------------------------------------------------

What Is the FSF?

The Free Software Foundation is dedicated to eliminating restrictions on people's right to use, copy, modify, and redistribute computer programs. We do this by promoting the development and use of free software. Specifically, we are putting together a complete, integrated software system named "GNU" (pronounced "guh-new", "GNU's Not Unix") that will be upwardly compatible with Unix. Most parts of this system are already being used and distributed.

The word "free" in our name refers to freedom, not price. You may or may not pay money to get GNU software, but either way you have two specific freedoms once you get it: first, the freedom to copy a program, and distribute it to your friends and co-workers; and second, the freedom to change a program as you wish, by having full access to source code. You can study the source and learn how such programs are written. You may then be able to port it, improve it, and share your changes with others. If you redistribute GNU software you may charge a distribution fee or give it away, so long as you include the source code and the GPL; see section What Is Copyleft?, for details.

Other organizations distribute whatever free software happens to be available. By contrast, the Free Software Foundation concentrates on the development of new free software, working towards a GNU system complete enough to eliminate the need to use a proprietary system.

Besides developing GNU, the FSF distributes GNU software and manuals for a distribution fee, and accepts gifts (tax-deductible in the U.S.) to support GNU development. Most of the FSF's funds come from its distribution service.

The Board of the Foundation is: Richard M. Stallman, President;
Robert J. Chassell, Secretary/Treasurer; Gerald J. Sussman, Harold Abelson, and Leonard H. Tower Jr., Directors.

What Is Copyleft?

The simplest way to make a program free is to put it in the public domain, uncopyrighted. But this permits proprietary modified versions, which deny others the freedom to redistribute and modify; such versions undermine the goal of giving freedom to all users. To prevent this, copyleft uses copyrights in a novel manner. Typically, copyrights take away freedoms; copyleft preserves them. It is a legal instrument that requires those who pass on a program to include the rights to use, modify, and redistribute the code; the code and the freedoms become legally inseparable.

The copyleft used by the GNU Project is made from the combination of a regular copyright notice and the GNU General Public License (GPL). The GPL is a copying license which basically says that you have the aforementioned freedoms. An alternate form, the GNU Library General Public License (LGPL), applies to a few GNU libraries. This license permits linking the libraries into proprietary executables under certain conditions. The appropriate license is included in each GNU source code distribution and in many manuals. Printed copies are available upon request.

We strongly encourage you to copyleft your programs and documentation, and we have made it as simple as possible for you to do so. The details on how to apply either form of GNU Public License appear at the end of each license.

What Is the Hurd?

The Hurd will be the foundation of the GNU system. It is a collection of server processes that run on top of Mach, a free message-passing kernel developed at CMU. Mach's virtual memory management facilities are also used by the Hurd. The GNU C Library will provide the Unix system call interface, using the Hurd servers for those services it can't provide itself.

One goal of the Hurd is to establish a framework for shared development and maintenance. The Hurd is like GNU Emacs in that it will allow users to create and share useful projects without knowing much about the internal workings of the system--projects that might never have been attempted without freely available source, a well-designed interface, and a multiple server design.

Currently, there are free ports of the Mach kernel to the 386 PC, the DEC PMAX workstation, and several other machines, with more in progress, including the Amiga, PA-RISC HP 700, & DEC Alpha-3000. Contact us if you want to help with one of these or start your own. Porting the GNU Hurd & GNU C Library is easy (easier than porting GNU Emacs, certainly easier than porting the compiler) once a Mach port to a particular platform exists. Right now we are using the University of Utah's Mach distribution which we hope will be unified with the distribution produced by the Open Software Foundation.

See section GNUs Flashes for a report on recent progress.

We need volunteers for significant projects relating to the Hurd. Experienced system programmers who are interested should please send mail to gnu@prep.ai.mit.edu. Porting the Mach kernel or the GNU C Library to new systems is another way to help development of the Hurd.

GNU Utilities Safer!

Barton P. Miller & his colleagues tested the reliability of Unix utility programs in 1990 & 1995. Each time, GNU's utilities came out considerably ahead. They tested seven commercial Unix systems as well as GNU. By subjecting them to a random input stream, they could "crash (with core dump) or hang (infinite loop) over 40% (in the worst case) of the basic utility programs ..." They found that the commercial Unix systems had a failure rate that ranged from 15% -- 43%. In contrast, the failure rate for GNU was only 7%.

For details, see the paper Fuzz Revisited: A Re-examination of the Reliability of Unix Utilities and Services by Barton P. Miller, David Koski, Cjin Pheow Lee, Vivekananda Maganty, Ravi Murthy, Ajitkumar Natarajan, and Jeff Steidl, which is available on the World Wide Web at URL: `ftp://grilled.cs.wisc.edu/technical_papers/fuzz-revisited.ps.Z'.

Conditions for Using Bison

As of Bison version 1.24, we have changed the distribution terms for yyparse to permit using Bison's output in non-free programs. Formerly, Bison parsers could be used only in programs that were free software.

The other GNU tools, such as the GNU C compiler, have never had such a requirement. They could always be used for non-free software. The reason Bison was different was not due to a special policy decision; it resulted from applying the usual General Public License to all of the Bison source code.

The output of the Bison utility--a parser file--contains a verbatim copy of a sizable piece of Bison: the code for the yyparse function. (The actions from your grammar are inserted into yyparse at one point, but the rest of the function is not changed.) When we applied the GPL terms to the code for yyparse, the effect was to restrict the use of Bison output to free software.

We didn't change the terms because of sympathy for people who want to make software proprietary. Software should be free. But we concluded that limiting Bison's use to free software was doing little to encourage people to make other software free. So we decided to make the practical conditions for using Bison match the practical conditions for using the other GNU tools.

GNUs Flashes

Help from Free Software Companies

When choosing a free software business, ask those you are considering how much they do to assist free software development, e.g., by contributing money to free software development or by writing free software improvements themselves for general use. By basing your decision partially on this factor, you can help encourage those who profit from free software to contribute to its growth.

Wingnut (SRA's special GNU support group) regularly donates a part of its income to the FSF to support the development of new GNU programs. Listing them here is our way of thanking them. Wingnut has made a pledge to donate 10% of their income to the FSF, and has purchased several Deluxe Distribution packages in Japan. Also see section Cygnus Matches Donations!.

   Wingnut Project
   Software Research Associates, Inc.
   1-1-1 Hirakawa-cho, Chiyoda-ku
   Tokyo 102, Japan

   Phone:  (+81-3)3234-2611
   Fax:    (+81-3)3942-5174
   E-mail: info-wingnut@sra.co.jp

Free Software Redistributors Donate

The Sun Users Group Deutschland and ASCII Corporation (Japan) have added donations to the FSF to the price of their next CD-ROM of GNU software. The producers of the SNOW 2.1 CD added the words "Includes $5 donation to the FSF" to the front of their CD. Potential buyers will know precisely how much of the price is for the FSF and how much is for the redistributor.

Austin Code Works, a redistributor of free software, is supporting free software development by giving the FSF 20% of the selling price for the GNU software packages they produce and sell. Walnut Creek CDROM and Info Magic, two more free software redistributors, are also giving us a percentage of their selling price. CQ Publishing made a large donation from the sales of their book about GAWK in Japanese.

In the long run, the success of free software depends on how much new free software people develop. Free software distribution offers an opportunity to raise funds for such development in an ethical way. These redistributors have made use of the opportunity. Many others let it go to waste.

You can help promote free software development by convincing for-a-fee redistributors to contribute--either by doing development themselves or by donating to development organizations (the FSF and others).

The way to convince distributors to contribute is to demand and expect this of them. This means choosing among distributors partly by how much they give to free software development. Then you can show distributors they must compete to be the one who gives the most.

To make this work, you must insist on numbers that you can compare, such as, "We will give ten dollars to the Foobar project for each disk sold." A vague commitment, such as "A portion of the profits is donated," doesn't give you a basis for comparison. Even a precise fraction "of the profits from this disk" is not very meaningful, since creative accounting and unrelated business decisions can greatly alter what fraction of the sales price counts as profit.

Also, press developers for firm information about what kind of development they do or support. Some kinds make much more long-term difference than others. For example, maintaining a separate version of a GNU program contributes very little; maintaining a program on behalf of the GNU Project contributes much. Easy new ports contribute little, since someone else would surely do them; difficult ports such as adding a new CPU to the GNU compiler contribute more; major new features and programs contribute the most.

By establishing the idea that supporting further development is "the proper thing to do" when distributing free software for a fee, we can assure a steady flow of resources for making more free software.

Free Software Support

The Free Software Foundation does not provide technical support. Our mission is developing software, because that is the most time-efficient way to increase what free software can do. We leave it to others to earn a living providing support. We see programmers as providing a service, much as doctors and lawyers now do; both medical and legal knowledge are freely redistributable, but their practitioners charge for service.

The GNU Service Directory is a list of people who offer support and other consulting services. It is in the file `etc/SERVICE' in the GNU Emacs distribution, `SERVICE' in the GCC distribution, and `/pub/gnu/GNUinfo/SERVICE' on a GNU FTP host (listed in section How to Get GNU Software). Contact us to get a copy or to be listed in it. Those service providers who share their income with the FSF are listed in section Help from Free Software Companies.

If you find a deficiency in any GNU software, we want to know. We have many Internet mailing lists for bug reports, announcements, and questions. They are also gatewayed into USENET news as the gnu.* newsgroups. You can request a list of the mailing lists from either address on the top menu.

When we receive a bug report, we usually try to fix the problem. While our bug fixes may seem like individual assistance, they are not; they are part of preparing a new improved version. We may send you a patch for a bug so that you can help us test the fix and ensure its quality. If your bug report does not evoke a solution from us, you may still get one from another user who reads our bug report mailing lists. Otherwise, use the Service Directory.

Please do not ask us to help you install software or learn how to use it--but do tell us how an installation script fails or where documentation is unclear.

If you have no Internet access, you can get mail and USENET news via UUCP. Contact a local UUCP site or a commercial UUCP site such as:

   UUNET Communications Services
   3060 Williams Drive
   Fairfax, VA   22031-4648
   USA

   Telephone: +1-800-4UUNET4
              +1-703-206-5600
   Fax:       +1-703-206-5601
   Electronic-Mail: info@uunet.uu.net

A list of commercial UUCP and Internet service providers is posted periodically to USENET in the newsgroup news.announce.newusers with `Subject: How to become a USENET site'. You can also get it via anonymous FTP from the host rtfm.mit.edu in the file `How_to_become_a_USENET_site', in the directory `/pub/usenet-by-group/news.announce.newusers'.

When choosing a service provider, ask those you are considering how much they do to assist free software development, e.g., by contributing money to free software development or by writing free software improvements themselves for general use. By basing your decision partially on this factor, you can encourage those who profit from free software to contribute to its growth.

Postcards Only!

CyberWire Dispatch points out that the United States government is continuing its efforts to ban messages that it cannot read.

Such messages use various methods of encryption. These methods are like a traditional paper envelope in that they prevent an unintended person from reading the message. But they are more effective in that only the intended recipient can `open the envelope', that is, decrypt the message and read it. From the point of view of the United States government, a ban on private encryption would turn letters into postcards.

In a Congressional hearing on 11 May 1995, FBI Director Louis Freeh said, "[W]e're in favor of strong encryption ... We just want to make sure we have a trap door and key ...".

Freeh fears that crooks will use unbreakable methods of encryption for their communications unless they are banned; but if these methods are banned, he expects crooks will obligingly use the readable, government-provided methods.

Those who oppose a ban and favor non-governmental encryption point out that a ban will be ineffective against such crooks. The encryption software already exists and is readily available. The law-abiding will send messages that can be read by the government; smart crooks will not.

As a practical matter, the FBI will have little choice but to focus on the messages of law-abiding people who are carrying out actions that are legal and patriotic, but unpopular. This has happened in the past, and there is no reason not to expect this to happen in the future.

If Freeh's hopes become law, non-governmental encryption will become illegal. In the past, the government has favored its `Clipper chip', but a more likely future plan would be for the government to certify several private companies to provide legal encryption, but only for messages that people in the government (and people who bribe them) can read.

We urge you to write your Senators and Representatives in Congress opposing this attack on Americans' Constitutional right "to be secure in their persons, houses, papers, and effects, against unreasonable search and seizures ...".

Zimmermann Legal Defense Fund Appeal

Phil Zimmermann, who wrote the public-key encryption program known as Pretty Good Privacy ("PGP") and released it on the Internet, is facing prosecution for "exporting" it out of the United States.

There is a law prohibiting the export of encryption software from the US. Zimmermann did not do this, but the U.S. government hopes to establish that posting an encryption program on a BBS or on the Internet constitutes exporting it--in effect, stretching export control into domestic censorship.

If the U.S. wins, that will have a chilling effect on the free flow of information on the global network, as well as on everyone's privacy from government snooping.

Estimates are that Zimmermann's defense will cost over $100,000--and that doesn't even count lawyers' fees. To help pay this, a legal trust fund, the Philip Zimmermann Defense Fund (PZDF), has been established. Donations are accepted in any reliable form, check, money order, or wire transfer, and in any currency, as well as by credit card.

To send a check or money order by mail, make it payable, not to Phil Zimmermann, but to "Philip L. Dubois, Attorney Trust Account." Mail the check or money order to the following address:

   Philip Dubois
   2305 Broadway
   Boulder, CO   80304
   USA

   Telephone: +1-303-444-3885

To send a wire transfer, your bank will need the following information:

   Bank: VectraBank
   Routing #: 107004365
   Account #: 0113830
   Account Name: ``Philip L. Dubois, Attorney Trust Account''

Meanwhile, the U.S. wants to prohibit the use of encryption which it cannot break, as a "counterterrorist" measure (see section Postcards Only!). To protect your privacy, write your Senators and Representatives in Congress now.

What Is the LPF?

The League for Programming Freedom (LPF) aims to protect the freedom to write software. This freedom is threatened by "look-and-feel" interface copyright lawsuits and by software patents.

The LPF is a grass-roots organization of professors, students, business people, programmers, users, and even software companies dedicated to bringing back the freedom to write programs. The League is not opposed to the legal system that Congress intended--copyright on individual programs. The LPF aims to reverse the recent changes made by judges in response to special interests.

Membership dues in the League are $42 per year for programmers, managers, and professionals; $10.50 for students; $21 for others.

To join, please send a check and the following information:

The League is not connected with the Free Software Foundation, and is not concerned with the issue of free software. The FSF supports the LPF because, like any software developer smaller than IBM, it is endangered by software patents, and interface copyrights. You are in danger, too! It would be easy to ignore the problem until you or your employer is sued, but it is more prudent to organize before that happens.

If you haven't made up your mind yet, write to LPF for more information:

   League for Programming Freedom
   1 Kendall Square - #143
   P.O. Box 9171
   Cambridge, MA   02139
   USA

   Telephone: +1-617-621-7084
   Electronic-Mail: lpf@uunet.uu.net
   WWW: `http://www.lpf.org/'
   FTP: ftp.uu.net:/doc/lpf

News from the LPF

by Dean Anderson, President, League for Programming Freedom

Borland won its appeal of the Lotus suit!! Lotus successfully sued Borland for infringing on a copyright of its menu structure and may have stood to gain $100 million dollars in a ruling issued in 1993. This appeal reversed that ruling. Lotus has reportedly decided to file an appeal with the Supreme Court. The LPF is making arrangements to file a revised amicus brief should the Supreme Court decide to hear the case.

This is outstanding news and a great victory for the LPF. The arguments and decision very closely match our position, and the amicus brief arranged by the LPF was partly responsible for the outcome of the case. If the decision stands, it may spell the end of user interface copyrights.

The LPF is also happy to have received a tremendous amount of support on the GIF issue. This issue had the double benefit of expressing disapproval of the Unisys patent, and gaining exposure and publicity for the LPF.

Qualcomm recently settled some protracted patent litigation with Interdigital over CDMA technology. (CDMA is a technology for cellular phones picked up by Sprint, AT&T, etc.) In 1993, Interdigital sued Qualcomm and was countersued. After 10 trial days went by, the parties settled.

Even though Qualcomm felt it was not infringing any patents, it paid Interdigital $5.5 million for a blanket license because continuing with the trial and inevitable appeal would be more expensive, even if they eventually won.

Qualcomm just released its earnings report. It wrote off a one-time charge of $13 million to cover the entire case. By simple subtraction, its litigation costs were $7.5 million. Interdigital's own legal and support costs were reportedly $4.5 million. That leaves $1 million for their shareholders and $12 million in litigation costs for the two companies. This is just another example of the excessive costs of software patents.

Things are beginning to heat up. Keep writing letters! Write the LPF, your representatives, and others. See our Web page at `http://www.lpf.org/' for more info on how to help the LPF (suggestions to: webmasters@lpf.org).

GNU & Other Free Software in Japan

Mieko (h-mieko@sra.co.jp) and Nobuyuki Hikichi (hikichi@sra.co.jp) continue to volunteer for the GNU Project in Japan. They translate each issue of this Bulletin into Japanese and distribute it widely, along with their translation of the GNU General Public License Version 2. This translation of the GPL is authorized by the FSF and is available by anonymous FTP from ftp.sra.co.jp in `/pub/gnu/local-fix/GPL2-j'. They are working on a formal translation of the GNU Library General Public License. They also solicit donations and offer GNU software consulting.

nepoch (the Japanese version of Epoch) & MULE are available & widely used in Japan. MULE (the MULtilingual Enhancement of GNU Emacs) can handle many character sets at once. Its features are being merged into the principal version of Emacs. See section GNU Software, for more details on MULE. The FSF does not distribute nepoch, but MULE is available (see section June 1995 Source Code CD-ROM & the section Emacs Diskettes). You can FTP it from sh.wide.ad.jp in `/JAPAN/mule', or etlport.etl.go.jp in `/pub/mule'.

The Village Center, Inc. prints a Japanese translation of the GNU Emacs Lisp Reference Manual and uploads the Texinfo source to various bulletin boards. They have also published a copylefted book, Nobuyuki's and Mieko's Think GNU. This appears to be the first non-FSF copylefted publication in Japan. Part of their profits are donated to the FSF. Their address is:

   Village Center, Inc.
   3-2 Kanda Jinbo-cho, Chiyoda-ku
   Tokyo 101,   Japan

   Telephone: 03-3221-3520

Addison-Wesley Publishers Japan Ltd. has printed a Japanese translation of the GNU Make Manual and the GAWK Manual. Their address is:

   Addison-Wesley Publishers Japan Ltd.
   Nichibou Bldg. 2F
   1-2-2 Sarugaku-cho, Chiyoda-ku
   Tokyo 101,   Japan

   Telephone: 03-3291-4581

The Institute for New Generation Computer Technology, ICOT, has released the "ICOT Free Software (IFS)" distribution. The famous Fifth Generation Computing System project produced IFS, which includes 100 systems for symbol processing, knowledge processing, problem solving, inference, & natural language processing. Many of them are based on parallel logic programming. Nearly half of them run on Unix workstations. The ICOT research center closed in March 1995, but distribution & maintenance of IFS will continue. For details, contact ifs@icot.or.jp, or refer to `http://www.icot.or.jp/'.

There is a mailing list in Japan to discuss both hardware & software which is under the GNU General Public License, providing information about making your own computer system. The main language of the list is Japanese. If you are interested in getting information or having discussions in English, ask mka@apricot.juice.or.jp or ishiz@muraoka.info.waseda.ac.jp.

Many groups in Japan now distribute GNU software. They include JUG, a PC user group; ASCII, a periodical and book publisher; the Fujitsu FM Towns users group; and SRA's special GNU support group, called Wingnut, who also purchased the first Deluxe package in Japan. (Since then, there have been several other purchases of the Deluxe package in Japan.)

It is easy to place an order directly with the FSF from Japan, thus funding new software. To get an FSF Order Form written in Japanese, ask japan-fsf-orders@prep.ai.mit.edu. We encourage you to buy software on tapes or CDs: for example, 140 CD-ROM orders at the corporate rate allows the FSF to hire a programmer for a year to write more free software.

Freely Available Texts

Freely redistributable information isn't just software. We have a list of groups providing various books, historical documents, and more. You can FTP the list in file `/pub/gnu/FreelyAvailableTexts' from from a GNU FTP host (listed in section How to Get GNU Software). Please let either address on the top menu know of additional entries.

------------------------------------------------------------------------------

Those that give up their freedom in the name of security deserve neither.

- Benjamin Franklin

------------------------------------------------------------------------------

Help the GNU Translation Project

GNU is going international! The GNU Translation Project will get maintainers, translators, and users all together, so GNU will gradually speak many native languages.

The GNU gettext tool set contains everything maintainers need for internationalizing their packages for messages. It has quite useful tools for helping translators add messages for their native language, once a package has been internationalized.

To achieve the GNU Translation Project, we need many interested people who like their own language and write it well, and who are also able to synergize with other translators speaking the same language. If you'd like to volunteer to work at translating messages, please send mail to your translating team.

These teams exist, as of May 1995: Chinese (zh), Czech (cs), Danish (da), Dutch (nl), Esperanto (eo), Finnish (fi), French (fr), Irish (ga), German (de), Greek (el), Italian (it), Japanese (ja), Indonesian (in), Norwegian (no), Polish (pl), Portuguese (pt), Russian (ru), Spanish (es), Swedish (sv), & Turkish (tr). Each team has its own mailing list, courtesy of Linux International. You may reach your translating team at the address `xx@li.org', replacing xx by the two-letter ISO 639 code for your language. Please note that language codes are not the same as country codes. When you become a member of the translating team for your own language, you may subscribe to its list. To subscribe, send a message with the message body `subscribe' to the appropriate list.

Team members should be interested in working at translations or at solving translational difficulties, rather than merely lurking around. If you want to start a new team, write gnu-translation@prep.ai.mit.edu.

GUILE

The GNU Project continues to build GUILE: GNUs' Ubiquitous Extension Language. We are building a library which programmers can use to make any ordinary C program extensible. We expect to use this library in many GNU programs and hope to see wide use elsewhere.

We are basing GUILE on SCM, a version of Scheme written by Aubrey Jaffer (see the JACAL item in section GNU Software). The interpreter has been repackaged as a C library. GUILE currently includes, with various degrees of completion, a Posix system-call interface, an SCSH-like library, a module system, a Tk interface, and a byte-code interpreter. Projects are underway to build into GUILE support for Emacs Lisp and for a more C-like language.

Since we want to encourage everyone to adopt a common interpreter, the copyright terms for GUILE will permit the use of the library even in proprietary programs. Get snapshots of GUILE from `ftp.cygnus.com:pub/lord'.

Forthcoming GNUs

Information about the current status of released GNU programs can be found in section GNU Software. Here is some news of future plans.

GNU Software

All our software is available via FTP; see section How to Get GNU Software. We also offer software on various media and printed documentation:

In these articles describing the contents of each medium, the version number listed after each program name was current when we published this Bulletin. When you order a distribution tape, diskette, or newer CD-ROM, some of the programs may be newer and therefore the version number higher. See the see section Free Software Foundation Order Form, for ordering information.

Some of the contents of our tape and FTP distributions are compressed. We have software on our tapes and FTP sites to uncompress these files. Due to patent troubles with compress, we use another compression program, gzip. (Such prohibitions on software development are fought by the League for Programming Freedom, see section What Is the LPF?, for details.)

GNU make is on several of our tapes because some system vendors supply no make utility at all and some native make programs lack the VPATH feature essential for using the GNU configure system to its full extent. The GNU make sources have a shell script to build make itself on such systems.

We welcome all bug reports and enhancements sent to the appropriate electronic mailing list (see section Free Software Support).

Configuring GNU Software:

We are using a uniform scheme for configuring GNU software packages in order to compile them. It uses the Autoconf program (see item below, in this article). The goal is to have all GNU software support the same alternatives for naming machine and system types.

When the GNU system is complete, it will be possible to configure and build the entire system at once, eliminating the need to separately configure each individual package.

You can also specify both the host and target system to build cross-compilation tools. Most GNU programs now use Autoconf-generated configure scripts.

GNU Software currently available:

For future programs and features, see section Forthcoming GNUs.

Key to cross reference:


BinCD
Dec. 1994 Binaries CD-ROM
DjgpD
Djgpp Diskettes
DosBC
MS-DOS Book with CD-ROM
EmcsD
Emacs Diskettes
LangT
Languages Tape
LiteT
4.4BSD-Lite Tape
LspEmcT
Lisps/Emacs Tape
SchmT
Scheme Tape
SrcCD
June 95 Source CD-ROM
UtilD
Selected Utilities Diskettes
UtilT
Utilities Tape
VMSCmpT
VMS Compiler Tape
VMSEmcsT
VMS Emacs Tape
WdwsD
Windows Diskette
X11OptT
X11 Optional Tape
X11ReqT
X11 Required Tape

[FSFman] shows that we sell a manual for that package. [FSFrc] shows we sell a reference card for that package. To order them, see the see section Free Software Foundation Order Form. See section GNU Documentation for more information on the manuals. Source code for each manual or reference card is included with each package.

Program/Package Cross Reference

Here is a list of what package each GNU program or library is in. You can anonymously FTP a full list in the file `/pub/gnu/ProgramIndex' from a GNU FTP host (listed in section How to Get GNU Software).

   *  a2p perl
   * a2x xopt
   * ac bsd44
   * accton bsd44
   * acl bsd44
   * acm acm
   * acms acm
   * addftinfo Groff
   * adventure bsd44
   * afm2tfm TeX
   * amd bsd44
   * ansitape bsd44
   * AnswerGarden xopt
   * apply bsd44
   * appres xreq
   * apropos bsd44
   * ar Binutils
   * arithmetic bsd44
   * arp bsd44
   * atc bsd44
   * autoconf Autoconf
   * autoheader Autoconf
   * autoreconf Autoconf
   * autoscan Autoconf
   * autoupdate Autoconf
   * auto_box xopt
   * auto_box xreq

   * b2m Emacs
   * backgammon bsd44
   * bad144 bsd44
   * badsect bsd44
   * banner bsd44
   * basename Shellutils
   * bash BASH
   * battlestar bsd44
   * bc bc
   * bcd bsd44
   * bdes bsd44
   * bdftops Ghostscript
   * beach_ball xopt
   * beach_ball xreq
   * beach_ball2 xopt
   * bibtex TeX
   * biff bsd44
   * bison Bison
   * bitmap xreq
   * boggle bsd44
   * bpltobzr Fontutils
   * bugfiler bsd44
   * build ispell
   * bzrto Fontutils

   * c++ GCC
   * c++filt Binutils
   * c2ph perl
   * ca100 xopt
   * caeser bsd44
   * cal bsd44
   * calendar bsd44
   * canfield bsd44
   * cat Textutils
   * cbars wdiff
   * cc GCC
   * cc1 GCC
   * cc1obj GCC
   * cc1plus GCC
   * cccp GCC
   * cfengine cfengine
   * charspace Fontutils
   * checknr bsd44
   * chess bsd44
   * chflags bsd44
   * chgrp Fileutils
   * ching bsd44
   * chmod Fileutils
   * chown Fileutils
   * chpass bsd44
   * chroot bsd44
   * ci RCS
   * cksum Textutils
   * cktyps g77
   * clisp CLISP
   * clri bsd44
   * cmail xboard
   * cmmf TeX
   * cmodext xopt
   * cmp Diffutils
   * co RCS
   * col bsd44
   * colcrt bsd44
   * colrm bsd44
   * column bsd44
   * comm Textutils
   * compress bsd44
   * comsat bsd44
   * connectd bsd44
   * cp Fileutils
   * cpicker xopt
   * cpio cpio
   * cpp GCC
   * cppstdin perl
   * cribbage bsd44
   * crock xopt
   * csh bsd44
   * csplit Textutils
   * ctags Emacs
   * ctwm xopt
   * cu UUCP
   * cut Textutils
   * cvs CVS
   * cvscheck CVS
   * cvtmail Emacs
   * cxterm xopt

   * d Fileutils
   * date Shellutils
   * dc bc
   * dd Fileutils
   * delatex TeX
   * demangle Binutils
   * descend CVS
   * detex TeX
   * df Fileutils
   * diff Diffutils
   * diff3 Diffutils
   * digest-doc Emacs
   * dipress bsd44
   * dir Fileutils
   * dirname Shellutils
   * dish xopt
   * disklabel bsd44
   * diskpart bsd44
   * dld dld
   * dm bsd44
   * dmesg bsd44
   * doschk doschk
   * dox xopt
   * du Fileutils
   * dump bsd44
   * dump mkisofs
   * dumpfs bsd44
   * dvi2tty TeX
   * dvicopy TeX
   * dvips TeX
   * dvitype TeX

   * ecc ecc
   * echo Shellutils
   * ed ed
   * edit-pr GNATS
   * editres xreq
   * edquota bsd44
   * eeprom bsd44
   * egrep grep
   * emacs Emacs
   * emacsclient Emacs
   * emacsserver Emacs
   * emacstool Emacs
   * emu xopt
   * env Shellutils
   * eqn Groff
   * error bsd44
   * es es
   * esdebug es
   * etags Emacs
   * ex nvi
   * expand Textutils
   * expect DejaGnu
   * expr Shellutils
   * exterm xopt

   * f2c f2c
   * factor bsd44
   * fakemail Emacs
   * false Shellutils
   * fastboot bsd44
   * fax2ps HylaFAX
   * faxalter HylaFAX
   * faxanswer HylaFAX
   * faxcover HylaFAX
   * faxd HylaFAX
   * faxd.recv HylaFAX
   * faxmail HylaFAX
   * faxquit HylaFAX
   * faxrcvd HylaFAX
   * faxrm HylaFAX
   * faxstat HylaFAX
   * fc f2c
   * fdraw xopt
   * ffe g77
   * fgrep grep
   * file bsd44
   * find Findutils
   * find2perl perl
   * finger finger
   * fingerd finger
   * fish bsd44
   * fixfonts Texinfo
   * fixinc.svr4 GCC
   * fixincludes GCC
   * flex flex
   * flex++ flex
   * fmt bsd44
   * fold Textutils
   * font2c Ghostscript
   * fontconvert Fontutils
   * forth Tile Forth
   * forthicon Tile Forth
   * forthtool Tile Forth
   * fortune bsd44
   * fpr bsd44
   * freq ispell
   * freqtbl ispell
   * from bsd44
   * fsck bsd44
   * fsplit bsd44
   * fstat bsd44
   * ftp bsd44
   * ftpd bsd44

   * g++ GCC
   * gas Binutils
   * gawk Gawk
   * gcc GCC
   * gcore bsd44
   * gdb GDB
   * genclass libg++
   * getty bsd44
   * gftodvi TeX
   * gftopk TeX
   * gftype TeX
   * ghostview Ghostview
   * git GIT
   * gitaction GIT
   * gitcmp GIT
   * gitkeys GIT
   * gitmatch GIT
   * gitmount GIT
   * gitps GIT
   * gitredir GIT
   * gitrgrep GIT
   * gitview GIT
   * gitwipe GIT
   * gnats GNATS
   * gnuchess Chess
   * gnuchessc Chess
   * gnuchessn Chess
   * gnuchessr Chess
   * gnuchessx Chess
   * gnupdisp Shogi
   * gnuplot gnuplot
   * gnuplot_x11 gnuplot
   * gnushogi Shogi
   * gnushogir Shogi
   * gnushogix Shogi
   * go GnuGo
   * gpc xopt
   * gpc xreq
   * gperf cperf
   * gperf libg++
   * gprof Binutils
   * graph Graphics
   * grep grep
   * grodvi Groff
   * groff Groff
   * grops Groff
   * grotty Groff
   * groups Shellutils
   * gs Ghostscript
   * gsbj Ghostscript
   * gsdj Ghostscript
   * gslj Ghostscript
   * gslp Ghostscript
   * gsnd Ghostscript
   * gsrenderfont Fontutils
   * gunzip gzip
   * gwm xopt
   * gzexe gzip
   * gzip gzip

   * h2ph perl
   * h2pl perl
   * hack bsd44
   * hangman bsd44
   * head Textutils
   * hello hello
   * hexdump bsd44
   * hexl Emacs
   * hostname Shellutils
   * hp2xx hp2xx
   * hterm xopt

   * i18nOlwmV2 xopt
   * i2mif xopt
   * ico xopt
   * ico xreq
   * id Shellutils
   * ident RCS
   * ifconfig bsd44
   * ifnames Autoconf
   * ImageMagick xopt
   * imageto Fontutils
   * iman xopt
   * imgrotate Fontutils
   * indent indent
   * indxbib Groff
   * inetd bsd44
   * info Texinfo
   * inimf TeX
   * init bsd44
   * initex TeX
   * inn bsd44
   * install Fileutils
   * iostat bsd44
   * isodiag mkisofs
   * isodump mkisofs
   * ispell ispell
   * ixterm xopt
   * ixx xopt

   * join Textutils
   * jot bsd44
   * jove bsd44

   * kdestroy bsd44
   * kdump bsd44
   * kermit bsd44
   * kgames xopt
   * kgmon bsd44
   * kill bsd44
   * kinit bsd44
   * kinput2 xopt
   * klist bsd44
   * kpasswdd bsd44
   * ksrvtgt bsd44
   * kterm xopt
   * ktrace bsd44

   * lam bsd44
   * larn bsd44
   * lasergnu gnuplot
   * last bsd44
   * lastcomm bsd44
   * latex TeX
   * lclock xopt
   * ld Binutils
   * leave bsd44
   * less less
   * lesskey less
   * libbfd.a Binutils
   * libbfd.a GAS
   * libbfd.a GDB
   * libbzr.a Fontutils
   * libc.a C Library
   * libcompat.a bsd44
   * libcurses.a bsd44
   * libcurses.a nvi
   * libdcurses.a ncurses
   * libedit.a bsd44
   * libF77.a f2c
   * libF77.a g77
   * libg++.a libg++
   * libgdbm.a gdbm
   * libgf.a Fontutils
   * libgmp.a gmp
   * libI77.a f2c
   * libI77.a g77
   * libkvm.a bsd44
   * libm.a bsd44
   * libncurses.a ncurses
   * libnihcl.a NIHCL
   * libnihclmi.a NIHCL
   * libnihclvec.a NIHCL
   * libnls.a xreq
   * libobjects.a libobjects
   * liboctave.a Octave
   * liboldX.a xreq
   * libpbm.a Fontutils
   * libPEXt.a xopt
   * libpk.a Fontutils
   * libresolv.a bsd44
   * librpc.a bsd44
   * libtcl.a DejaGnu
   * libtelnet.a bsd44
   * libterm.a bsd44
   * libtermcap.a Termcap
   * libtfm.a Fontutils
   * libutil.a bsd44
   * libWc.a xopt
   * libwidgets.a Fontutils
   * libX.a xreq
   * libXau.a xreq
   * libXaw.a xreq
   * libXcp.a xopt
   * libXcu.a xopt
   * libXdmcp.a xreq
   * libXmp.a xopt
   * libXmu.a xreq
   * libXO.a xopt
   * libXop.a xopt
   * libXp.a xopt
   * libXpex.a xopt
   * libXt.a xopt
   * libXt.a xreq
   * libXwchar.a xopt
   * liby.a bsd44
   * libYgl.a Ygl
   * limn Fontutils
   * listres xopt
   * listres xreq
   * lkbib Groff
   * ln Fileutils
   * locate Findutils
   * lock bsd44
   * logger bsd44
   * login bsd44
   * logname Shellutils
   * logo ucblogo
   * look ispell
   * lookbib Groff
   * lorder bsd44
   * lpr bsd44
   * ls Fileutils

   * m4 m4
   * mail bsd44
   * mail-files Sharutils
   * mailshar Sharutils
   * make Make
   * make-docfile Emacs
   * make-path Emacs
   * makeindex TeX
   * makeinfo Texinfo
   * MakeTeXPK TeX
   * man bsd44
   * man-macros Groff
   * mattrib mtools
   * maze xopt
   * maze xreq
   * mazewar xopt
   * mcd mtools
   * mcopy mtools
   * mdel mtools
   * mdir mtools
   * me-macros Groff
   * merge RCS
   * mesg bsd44
   * mf TeX
   * mformat mtools
   * mft TeX
   * mgdiff xopt
   * mh bsd44
   * mille bsd44
   * mkdep bsd44
   * mkdir Fileutils
   * mkfifo Fileutils
   * mkisofs mkisofs
   * mklocale bsd44
   * mkmanifest mtools
   * mkmf bsd44
   * mkmodules CVS
   * mknod Fileutils
   * mkstr bsd44
   * mlabel mtools
   * mm-macros Groff
   * mmd mtools
   * monop bsd44
   * more bsd44
   * morse bsd44
   * mount bsd44
   * mountd bsd44
   * movemail Emacs
   * mprof bsd44
   * mrd mtools
   * mread mtools
   * mren mtools
   * ms-macros Groff
   * msgs bsd44
   * mst Smalltalk
   * mt cpio
   * mterm xopt
   * mtree bsd44
   * mtype mtools
   * mule MULE
   * muncher xopt
   * mv Fileutils
   * mvdir Fileutils
   * mwrite mtools

   * nethack Nethack
   * netstat bsd44
   * newfs bsd44
   * nfsd bsd44
   * nfsiod bsd44
   * nfsstat bsd44
   * nice Shellutils
   * nl Textutils
   * nlmconv Binutils
   * nm Binutils
   * nohup Shellutils
   * notify HylaFAX
   * nroff Groff
   * number bsd44

   * objc GCC
   * objcopy Binutils
   * objdump Binutils
   * objective-c GCC
   * obst-boot OBST
   * obst-CC OBST
   * obst-cct OBST
   * obst-cgc OBST
   * obst-cmp OBST
   * obst-cnt OBST
   * obst-cpcnt OBST
   * obst-csz OBST
   * obst-dir OBST
   * obst-dmp OBST
   * obst-gen OBST
   * obst-gsh OBST
   * obst-init OBST
   * obst-scp OBST
   * obst-sil OBST
   * obst-stf OBST
   * oclock xreq
   * octave Octave
   * od Textutils
   * oleo Oleo
   * ora-examples xopt

   * p2c p2c
   * pagesize bsd44
   * palette xopt
   * pascal bsd44
   * passwd bsd44
   * paste Textutils
   * patch patch
   * patgen TeX
   * pathalias bsd44
   * pathchk Shellutils
   * pax bsd44
   * pbmplus xopt
   * perl perl
   * pfbtops Groff
   * phantasia bsd44
   * pic Groff
   * pico pine
   * pig bsd44
   * pine pine
   * ping bsd44
   * pixedit xopt
   * pixmap xopt
   * pktogf TeX
   * pktype TeX
   * plaid xopt
   * plot2fig Graphics
   * plot2plot Graphics
   * plot2ps Graphics
   * plot2tek Graphics
   * pltotf TeX
   * pollrcvd HylaFAX
   * pom bsd44
   * pooltype TeX
   * portmap bsd44
   * ppt bsd44
   * pr Textutils
   * pr-addr GNATS
   * pr-edit GNATS
   * primes bsd44
   * printenv Shellutils
   * printf Shellutils
   * protoize GCC
   * ps bsd44
   * ps2ascii Ghostscript
   * ps2epsi Ghostscript
   * ps2fax HylaFAX
   * psbb Groff
   * pstat bsd44
   * psycho xopt
   * ptx ptx
   * pubdic+ xopt
   * puzzle xopt
   * puzzle xreq
   * pwd Shellutils
   * pyramid xopt

   * query-pr GNATS
   * quiz bsd44
   * quot bsd44
   * quota bsd44
   * quotacheck bsd44
   * quotaon bsd44

   * rain bsd44
   * random bsd44
   * ranlib Binutils
   * rbootd bsd44
   * rc rc
   * rcp bsd44
   * rcs RCS
   * rcs-to-cvs CVS
   * rcs2log Emacs
   * rcsdiff RCS
   * rcsfreeze RCS
   * rcsmerge RCS
   * rdist bsd44
   * reboot bsd44
   * recode recode
   * recvstats HylaFAX
   * red ed
   * refer Groff
   * remsync Sharutils
   * renice bsd44
   * repquota bsd44
   * restore bsd44
   * rev bsd44
   * rexecd bsd44
   * rlog RCS
   * rlogin bsd44
   * rlogind bsd44
   * rm Fileutils
   * rmail bsd44
   * rmdir Fileutils
   * rmt cpio
   * rmt tar
   * robots bsd44
   * rogue bsd44
   * route bsd44
   * routed bsd44
   * rr xopt
   * rs bsd44
   * rsh bsd44
   * rshd bsd44
   * runtest DejaGnu
   * runtest.exp DejaGnu
   * ruptime bsd44
   * rwho bsd44
   *