------------------------------------------------------------------------------
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)
------------------------------------------------------------------------------
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.
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
------------------------------------------------------------------------------
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.
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.
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.
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'.
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.
g77), ncurses, & ucblogo are now on the
section Languages Tape.
cfengine, GIT, mkisofs, pine, & saoimage have
been added to the section Utilities Tape.
phi.sinica.edu.tw has Postscript files (for A4
paper) of GNU manuals in `/pub/aspac/gnu/'. The FSF is not
responsible for these files.
ext2 file system used by Linux.
It can run GCC, make, Emacs, & most other GNU utilities. Progress
is being made so rapidly that by the time you read this it probably does
much more. It is right on the verge of being self-hosting (able to run on
its own well enough to compile its own source code, & be used for its own
development). We have much better device supportm & some new utilities,
including a fancy ps & settrans.
For a complete system we still have much more work to do, but we will make
an alpha release as soon as the network software is finished & shared
libraries have been well tested. We have a mailing list to
announce progress; to be added to it, ask
hurd-announce-request@prep.ai.mit.edu.
mach4-users-request@cs.utah.edu.
arnold@gnu.ai.mit.edu, a long-time volunteer
for the GNU Project, writes "What's GNU?", a semi-regular
column in the monthly magazine Linux Journal. The column discusses
the GNU Project, its software, and other interesting free software. Authors
of significant GNU software packages occasionally write columns as guest
columnists.
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
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.
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.
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 ...".
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.
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.netWWW: `http://www.lpf.org/' FTP:ftp.uu.net:/doc/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).
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 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
------------------------------------------------------------------------------
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.
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'.
Information about the current status of released GNU programs can be found in section GNU Software. Here is some news of future plans.
locale & localedef
programs & catalogs for displaying program messages in languages other than
English. The library can now be built as a shared library for the Hurd &
other systems using the ELF object file format. Included is the run-time
loader ld.so which sets up the shared libraries when a program runs;
it works now on the Hurd and should be easy to port (using ELF) to
GNU/Linux, SVR4 & Solaris 2.
Paul_Kunz@slac.stanford.edu. Check
`http://fvkma.tu-graz.ac.at/gnustep/gnustep.html' for more
info.
makeinfo and the World Wide Web (Also see section GNU Software)
makeinfo is being modified to translate Texinfo source files into
HTML documents that can be displayed on the Internet's World Wide Web.
schelter@math.utexas.edu.
gnu@prep.ai.mit.edu.
cs.nyu.edu in `/pub/gnat'. News about
GNAT is posted to the USENET newsgroup comp.lang.ada.
f2c & GCC, see section GNU Software)
The GNU Fortran (g77) front end is stable, but work is needed to
bring its overall packaging, feature set, and performance up to the levels
the Fortran community expects. Tasks to be done include: writing
documentation; improving diagnostics; speeding up compilation, especially
for large initialized data tables; implementing INTEGER*2,
INTEGER*8, and similar features; and arranging to build and install
libf2c automatically. We don't know when these things will be done,
but hope some will be finished in the coming months. You can speed
progress by working on them or by offering funding.
A mailing list exists for announcements about g77. To subscribe,
ask info-gnu-fortran-request@prep.ai.mit.edu. To contact the
developer of g77 or get current status, write or finger
fortran@gnu.ai.mit.edu.
gmp (For current status, see section GNU Software)
The GNU mp library, version 2.0, will have arbitrary multiple precision
floating point arithmetic, be more portable, and be up to 4 times
faster than previous versions.
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:
[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.
acm (SrcCD, UtilT)
acm is a LAN-oriented, multiplayer aerial combat simulation that
runs under the X Window System. Players engage in air to air combat
against one another using heat seeking missiles and cannons.
We are working on more accurate simulation of real airplane flight
characteristics.
m4 macro calls. Autoconf
requires GNU m4 to operate, but the resulting configure scripts it
generates do not.
sh and offers many extensions found in csh and
ksh. BASH has job control, csh-style command history,
command-line editing (with Emacs and vi modes built-in, and the
ability to rebind keys) via the readline library. BASH conforms to the
POSIX 1003.2 shell specification.
bc (DjgpD, DosBC, SrcCD, UtilT)
bc is an interactive algebraic language with arbitrary precision
numbers. GNU bc follows the POSIX.2-1992
standard, with several extensions including multi-character variable names,
an else statement, and full Boolean expressions.
The RPN calculator dc is now distributed as part of the same
package, but GNU bc is not implemented as a dc preprocessor.
ld or GDB) to support many
different formats in a clean way. BFD provides a portable interface, so
that only BFD needs to know the details of a particular format. One result
is that all programs using BFD will support formats such as a.out, COFF,
and ELF. BFD comes with source for Texinfo documentation (not yet
published on paper).
Presently BFD is not distributed separately; it is included with
packages that use it.
ar,
c++filt,
demangle,
gas,
gprof,
ld,
nlmconv,
nm,
objcopy,
objdump,
ranlib,
size,
strings,
&
strip.
Binutils Version 2 uses the BFD library. GNU's linker ld emits
source-line numbered error messages for multiply-defined symbols &
undefined references, & interprets a superset of AT&T's Linker Command
Language, which gives control over where segments are placed in memory.
nlmconv converts object files into Novell NetWare Loadable Modules.
objdump can disassemble code for a29k, ALPHA, H8/300, H8/500, HP-PA,
i386, i960, m68k, m88k, MIPS, SH, SPARC & Z8000 CPUs, & can display other
data (e.g., symbols & relocations) from any file format read by BFD.
yacc. Texinfo source for the Bison Manual
and reference card are included. See section GNU Documentation.
A recent policy change allows non-free programs to use Bison-generated
parsers. See section GNUs Flashes.
malloc which
wastes less memory than the old GNU version. The GNU regular-expression
functions (regex and rx) now nearly conform to the POSIX 1003.2
standard.
GNU stdio lets you define new kinds of streams, just by writing a
few C functions. The fmemopen function uses this to open a
stream on a string, which can grow as necessary. You can define your
own printf formats to use a C function you have written. For
example, you can safely use format strings from user input to implement
a printf-like function for another programming language.
Extended getopt functions are already used to parse options,
including long options, in many GNU utilities.
The C Library runs on Sun-3 (SunOS 4.1), Sun-4 (SunOS 4.1 or Solaris 2),
HP 9000/300 (4.3BSD), SONY News 800 (NewsOS 3 or 4), MIPS DECstation
(Ultrix 4), DEC Alpha (OSF/1), i386/i486 (System V, SVR4, BSD, SCO 3.2 &
SCO ODT 2.0), Sequent Symmetry i386 (Dynix 3) & SGI (Irix 4). Texinfo
source for the GNU C Library Reference Manual is included
(see section GNU Documentation); the manual is now being updated.
gnuplot, & comes with source for a reference card & a manual.
See section GNU Documentation.
cfengine (SrcCD, UtilT)
cfengine is used for maintaining site-wide configuration of a
heterogeneous Unix network using a simple high level language. Its
functionality is similar to rdist, but also allows many more
operations to be performed automatically.
xboard program).
GNU Chess has many special features including the null move heuristic, a
hash table with aging, the history heuristic (another form of the earlier
killer heuristic), caching of static evaluations, & a database which lets
it play the first several moves of the game quickly.
Recent improvements include better heuristics, faster evaluation, thinking
on opponent's time, a perfect King and Pawn vs King endgame routine,
Swedish & German language support, support for more book formats, a
rudimentary Bobby Fischer clock, & bug fixes.
It is primarily supported by Stuart Cracraft, Chua Kong Sian, & Tim Mann on
behalf of the FSF.
cpio (DjgpD, DosBC, SrcCD, UtilD, UtilT)
cpio is an alternative archive program with all the features of SVR4
cpio, including support for the final POSIX 1003.1 ustar
standard. mt, a program to position magnetic tapes, is included with
cpio.
office@usenix.org.
expect, which runs scripts to conduct dialogs
with programs.
diff compares files showing line-by-line changes in several
flexible formats. It is much faster than traditional Unix versions. The
Diffutils package contains diff, diff3, sdiff, &
cmp.
Recent improvements include more consistent handling of character sets and
a new diff option to do all input/output in binary; this is useful
on some non-Posix hosts. Plans for the Diffutils package include support
for internationalization (e.g., error messages in Chinese) and for some
non-Unix PC environments.
flex, GAS & Binutils. Full source code is provided.
It needs at least 5MB of hard disk space to install & 512K
of RAM to use.
It supports SVGA (up to 1024x768),
XMS & VDISK memory allocation,
himem.sys,
VCPI (e.g., QEMM, DESQview & 386MAX) &
DPMI (e.g., Windows 3.x, OS/2, QEMM & QDPMI).
Ask djgpp-request@sun.soe.clarkson.edu to join a DJGPP users
mailing list.
dld (LangT, SrcCD)
dld is a dynamic linker written by W. Wilson Ho. Linking your
program with the dld library allows you to dynamically load object
files into the running binary. Currently supported are VAX (Ultrix), Sun 3
(SunOS 3.4 & 4.0), SPARC (SunOS 4.0), Sequent Symmetry (Dynix) & Atari ST.
doschk (DjgpD, DosBC, SrcCD, UtilT)
This program is intended as a utility to help software developers ensure
that their source file names are distinguishable on System V platforms with
14-character filenames and on MS-DOS with 8+3 character filenames.
ecc (LangT, SrcCD)
ecc is a Reed-Solomon error correction checking program, which can
correct three byte errors in a block of 255 bytes and detect more severe
errors. Contact paulf@Stanford.EDU for more information.
ed (SrcCD, UtilT)
Ed is the standard text editor.
es (SrcCD, UtilT)
es is an extensible shell based on rc with first class
functions, lexical scope, exceptions and rich return values (i.e.,
functions can return values other than just numbers). es's
extensibility comes from the ability to modify and extend the shell's
built-in services, such as path searching and redirection. Like rc,
it is great for both interactive use and for scripting, particularly since
its quoting rules are much less baroque than the C or Bourne shells.
f2c (LangT, SrcCD)
f2c converts Fortran-77 source into C or C++, which can be
compiled with GCC or G++. Get bug fixes by FTP from site
netlib.att.com or by email from
netlib@research.att.com. See file
`/netlib/f2c/changes.Z' for a summary. See section Forthcoming GNUs,
for info about GNU Fortran.
chgrp,
chmod,
chown,
cp,
dd,
df,
dir,
du,
install,
ln,
ls,
mkdir,
mkfifo,
mknod,
mv,
mvdir,
rm,
rmdir,
sync,
touch,
&
vdir.
find is frequently used both interactively and in shell scripts to
find files which match certain criteria and perform arbitrary operations on
them. Also included are xargs, which apply a command to a list of
files, and locate, which scans a database for file names that match
a pattern.
flex (BinCD, DjgpD, DosBC, LangT, SrcCD, UtilD) [FSFman, FSFrc]
flex is a replacement for the lex scanner generator.
flex was written by Vern Paxson of the Lawrence Berkeley Laboratory
and generates far more efficient scanners than lex does.
Source for the Flex Manual and reference card are included.
See section GNU Documentation.
g77) See section Forthcoming GNUs (LangT, SrcCD)
GNU Fortran (g77), developed by Craig Burley, is available for
public beta testing on the Internet. For now, g77 produces code
that is mostly object-compatible with f2c & uses the same
run-time library (libf2c).
bpltobzr,
bzrto,
charspace,
fontconvert,
gsrenderfont,
imageto,
imgrotate,
limn,
&
xbfe)
create fonts for use with Ghostscript or TeX (starting with a scanned
type image & converting the bitmaps to outlines), convert between font
formats, et al.
awk. It also provides several useful extensions not found in other
awk implementations. Texinfo source for the GAWK Manual
comes with the software. See section GNU Documentation.
object). As much as possible,
G++ is kept compatible with the evolving draft ANSI standard, but not
with cfront (AT&T's compiler), which has been diverging from ANSI.
The GNU C Compiler is a fairly portable optimizing compiler which
performs automatic register allocation, common sub-expression
elimination, invariant code motion from loops, induction variable
optimizations, constant propagation and copy propagation, delayed
popping of function call arguments, tail recursion elimination,
integration of inline functions and frame pointer elimination,
instruction scheduling, loop unrolling, filling of delay slots, leaf
function optimization, optimized multiplication by constants, a certain
amount of common subexpression elimination (CSE) between basic blocks
(though not all of the supported machine descriptions provide for
scheduling or delay slots), a feature for assigning attributes to
instructions and many local optimizations that are automatically
deduced from the machine description.
Position-independent code is supported on the 68k, i386, i486, Pentium,
Hitachi Slt, Hitachi H8/300, Clipper, 88k, SPARC & SPARClite.
GCC can open-code most arithmetic on 64-bit values (type long long
int). It supports extended floating point (type long double) on
the 68k; other machines will follow.
GCC supports full ANSI C, traditional C, & GNU C extensions (including:
nested functions support, nonlocal gotos, & taking the address of a label).
GCC can generate a.out, COFF, ELF, & OSF-Rose files when used with a
suitable assembler. It can produce debugging information in these
formats: BSD stabs, COFF, ECOFF, ECOFF with stabs & DWARF.
GCC generates code for many CPUs, including: a29k, Alpha, ARM, AT&T
DSP1610, Convex cN, Clipper, Elxsi, Fujitsu Gmicro, H8/300, HP--PA (1.0 and
1.1) i370, i386, i486, Pentium, i860, i960, m68k, m68020, m68030, m68040,
m88k, MIL-STD-1750a, MIPS, ns32k, PDP-11, Pyramid, ROMP, RS6000, SH, SPARC,
SPARClite, VAX & we32k.
Operating systems supported include: GNU/Linux, AIX, ACIS, AOS, BSD, Clix,
Ctix, DG/UX, Dynix, Genix, GNU, HP-UX, ISC, Irix, Luna, LynxOS, Mach,
Minix, NetBSD, NewsOS, OSF, OSF-Rose, RISCOS, SCO, Solaris 2, SunOS 4,
SysV, Ultrix, Unos, VMS & Windows/NT.
Using the configuration scheme for GCC, building a cross-compiler is as
easy as building a native compiler.
We no longer maintain version 1 of GCC, G++, or libg++.
Texinfo source for the Using and Porting GNU CC manual,
is included with GCC.
See section Forthcoming GNUs, for plans for later releases of GCC.
xxgdb provides an X interface (but it is not distributed or
maintained by the FSF; FTP it from ftp.x.org in directory
`/contrib/utilities').
Executable files and symbol tables are read via the BFD library, which
allows a single copy of GDB to debug programs with multiple object file
formats (e.g., a.out, COFF, ELF). Other features include a rich command
language, remote debugging over serial lines or TCP/IP, and watchpoints
(breakpoints triggered when the value of an expression changes).
GDB uses a standard remote interface to a simulator library which (so far)
has simulators for the
Zilog Z8001/2, Hitachi H8/300, H8/500, & Super-H.
GDB can perform cross-debugging. To say that GDB targets a platform
means it can perform native or cross-debugging for it. To say that
GDB can host a given platform means that it can be built on it, but
cannot necessarily debug native programs. GDB can:
gdbm (LangT, SrcCD, UtilD)
gdbm is the GNU replacement for the traditional dbm and
ndbm libraries. It implements a database using quick lookup by
hashing. gdbm does not ordinarily make sparse files (unlike its
Unix and BSD counterparts).
enscript); a
utility to extract the text from a Postscript language document; a much more
reliable (and faster) Microsoft Windows implementation; support for
Microsoft C/C++ 7.0; drivers for many new printers, including the
SPARCprinter, and for TIFF/F (fax) file format; many more Postscript Level
2 facilities, including most of the color space facilities (but not
patterns), and the ability to switch between Level 1 and Level 2
dynamically. Version 2.6.2 adds a LaserJet 4 driver and several
important bug fixes to version 2.6.1.
Ghostscript executes commands in the Postscript language
by writing
directly to a printer, drawing on an X window or writing to a file for
later printing (or to a bitmap file that you can manipulate with other
graphics programs).
Ghostscript includes a C-callable graphics library (for client programs
that do not want to deal with the Postscript language). It also supports
IBM PCs and compatibles with EGA, VGA or SuperVGA graphics (but please do
not ask the FSF staff any questions about this; we do not use PCs).
ghostview@cs.wisc.edu, created Ghostview, a
previewer for multi-page files with an X user interface. Ghostview &
Ghostscript work together; Ghostview creates a viewing window & Ghostscript
draws in it.
gmp (LangT, SrcCD)
GNU mp is a library for arbitrary precision arithmetic on signed
integers and rational numbers. It has a rich set of functions with a
regular interface.
gnuplot (SrcCD, UtilT, WdwsD)
gnuplot is an interactive program for plotting mathematical
expressions and data. It plots both curves (2 dimensions) & surfaces (3
dimensions). Curiously, it was neither written nor named for the GNU
Project; the name is a coincidence. Various GNU programs use
gnuplot.
gperf (LangT, SrcCD)
gperf generates perfect hash tables. The C version is in package
cperf. The C++ version is in libg++. Both produce hash functions
in either C or C++.
spline interpolation program; examples
of shell scripts using graph and plot; a statistics
toolkit; and output in TekniCAD TDA and ln03 file formats. Email bugs or
queries to Rich Murphey, Rich@lamprey.utmb.edu.
grep, egrep, and fgrep which find
lines that match inputed patterns. They are much faster than the
traditional Unix versions.
eqn,
nroff,
pic,
refer,
tbl,
troff;
the
man,
ms,
mm macros;
& drivers for Postscript, TeX dvi format and typewriter-like
devices. Groff's mm macro package is almost compatible with the DWB
mm macros with several extensions. Also included is a modified
version of the Berkeley me macros and an enhanced version of the X11
xditview previewer. Written in C++, these programs can be
compiled with GNU C++ Version 2.5 or later. A driver for the LaserJet
4 series of printers is currently in test.
Groff users are encouraged to contribute enhancements. Most needed
are complete Texinfo documentation, a grap emulation (a pic
preprocessor for typesetting graphs), a page-makeup postprocessor similar
to pm (see Computing Systems, Vol. 2, No. 2; ask
office@usenix.org how to get a copy), and an ASCII
output class for pic so that pic can be integrated with
Texinfo. Questions and bug reports from users who have read the
documentation provided with groff can be sent to
bug-groff@prep.ai.mit.edu.
gzip (DjgpD, DosBC, LangT, LspEmcT, SrcCD, UtilT)
gzip can expand LZW-compressed files but uses another, unpatented
algorithm for compression which generally produces better results. It also
expands files compressed with System V's pack program.
hello (DjgpD, DosBC, SrcCD, UtilT)
The GNU hello program produces a familiar, friendly greeting. It
allows non-programmers to use a classic computer science tool which would
otherwise be unavailable to them. Because it is protected by the GNU
General Public License, users are free to share and change it.
Like any truly useful program, hello contains a built-in mail
reader.
hp2xx (SrcCD, UtilT)
GNU hp2xx reads HP-GL files, decomposes all drawing commands into
elementary vectors, and converts them into a variety of vector and raster
output formats. It is also an HP-GL previewer. Currently supported vector
formats include encapsulated Postscript, Uniplex RGIP, Metafont, and various
special TeX-related formats, and simplified HP-GL (line drawing only)
for imports. Raster formats supported include IMG, PBM, PCX & HP-PCL
(including Deskjet & DJ5xxC support). Previewers work under X11 (Unix),
OS/2 (PM & full screen), MS-DOS (SVGA, VGA & HGC).
indent (DjgpD, DosBC, LangT, SrcCD, UtilD)
GNU indent is a revision of the BSD version. By default, it formats
C source according to the GNU coding standards. The BSD default, K&R, and
other formats are available as options. It is also possible to define your
own format.
GNU indent is more robust and provides more functionality than other
versions, for example, it handles C++ comments.
Aubrey Jaffer 84 Pleasant Street Wakefield, MA 01880-1846 USA
less (SrcCD, UtilD, UtilT)
less is a display paginator similar to more and pg but
with various features (such as the ability to scroll backwards) that most
pagers lack.
m4 (DjgpD, DosBC, SrcCD, UtilD, UtilT)
GNU m4 is an implementation of the traditional Unix macro processor.
It is mostly SVR4 compatible, although it has some extensions (e.g.,
handling more than 9 positional parameters to macros). m4 also has
built-in functions for including files, running shell commands, doing
arithmetic, etc.
make (BinCD,DjgpD,DosBC,LangT,LspEmcT,SrcCD,UtilD,UtilT)[FSFman]
GNU make supports POSIX 1003.2 and has all but a few obscure
features of the BSD and System V versions of make. GNU extensions
include long options, parallel compilation, flexible implicit pattern
rules, conditional execution, & powerful text manipulation functions.
Texinfo source for the Make Manual comes with the program.
See section GNU Documentation.
mkisofs (SrcCD, UtilT)
mkisofs is a pre-mastering program to generate an ISO 9660 file system.
It takes a snapshot of a directory tree, and makes a binary
image which corresponds to an ISO 9660 file system when written to a
block device.
mkisofs can also generate the System Use Sharing Protocol
records of the Rock Ridge Interchange Protocol
(used to further describe the files in an ISO 9660 file system to a Unix
host, and provides information such as longer filenames, uid/gid,
POSIX permissions, and block and character devices).
ncurses (LangT, SrcCD)
ncurses is an implementation of the Unix curses library for
developing screen based programs that are terminal independent.
nvi (SrcCD, UtilT)
nvi is a free implementation of the vi/ex Unix editor.
It has most of the functionality of the original vi/ex,
except "open" mode & the lisp option, which will be added.
Enhancements over vi/ex include split screens with multiple
buffers, handling 8-bit data, infinite file & line lengths, tag stacks,
infinite undo & extended regular expressions. It runs under GNU/Linux,
BSD, NetBSD, FreeBSD, BSDI, AIX, HP-UX, DGUX, IRIX, PSF, PTX, Solaris,
SunOS, Ultrix, Unixware & should port easily to many other systems.
libobjects) has general-purpose,
non-graphical Objective-C objects written by Andrew McCallum & other
volunteers. It includes collection classes for using groups of objects & C
types, I/O streams, coders for formatting objects & C types to streams,
ports for network packet transmission, distributed objects (remote object
messaging), string classes, pseudo-random number generators & time handling
facilities. It will also include the foundation classes for the GNUStep
project; over 50 of them have already been implemented. The library is
known to work on i386, i486, Pentium, m68k, SPARC, MIPS & RS6000. Send
queries & bug reports to mccallum@gnu.ai.mit.edu.
OBST (LangT, SrcCD)
OBST is a persistent object management system with bindings to C++.
OBST supports incremental loading of methods. Its graphical tools
require the X Window System.
It features a hands-on tutorial including sample programs. It compiles
with G++, and should install easily on most Unix platforms.
gnuplot.
Send queries & bug reports to: bug-octave@che.utexas.edu.
Texinfo source is included for a 220+ page Octave manual, not yet
published by the FSF.
p2c (LangT, SrcCD)
p2c is Dave Gillespie's Pascal-to-C translator. It
inputs many dialects (HP, ISO, Turbo, VAX, et al.) & produces readable,
maintainable, portable C.
patch (DjgpD, DosBC, SrcCD, UtilT)
patch is our version of Larry Wall's program to take diff's
output and apply those differences to an original file to generate the
modified version.
perl (LangT, SrcCD)
Larry Wall's perl combines the features and capabilities of
sed, awk, sh, and C, as well as interfaces to the Unix
system calls and many C library routines.
pine (SrcCD, UtilT)
pine is a friendly, menu-driven electronic mail manager.
ptx (SrcCD, UtilD, UtilT)
GNU ptx is our version of the traditional permuted index
generator. It handles multiple input files at once, produces TeX
compatible output, & outputs readable KWIC (KeyWords In Context)
indexes.
It does not yet handle input files that do not fit in memory all at
once.
rc (SrcCD, UtilT)
rc is a shell that features a C-like syntax (much more so than
csh) and far cleaner quoting rules than the C or Bourne shells.
It's intended to be used interactively, but is also great for writing
scripts. It inspired the shell es.
diff, RCS can
handle binary files (executables, object files, 8-bit data, etc).
Also see the CVS item above.
recode (SrcCD, UtilT)
GNU recode converts files between character sets and usages.
When exact transliterations are not possible, it may get rid of the
offending characters or fall back on approximations. This program
recognizes or produces nearly 150 different character sets and is able to
transliterate files between almost any pair. Most RFC 1345 character
sets are supported.
regex (LangT, SrcCD)
The GNU regular expression library supports POSIX.2, except for
internationalization features. It is included in many GNU programs which
do regular expression matching & is available separately. An alternate
regular expression package, rx, is faster than regex in most
cases & will replace regex over time.
rx, a new regular expression library which is
faster than the older GNU regex library. It is now being
distributed with sed and tar. rx will be used in the
next releases of m4 and ptx.
saoimage (UtilT)
SAOimage is an X-based astronomical image viewer. It reads data images and
displays them with a pseudocolor colormap. There is full interactive
control of the colormap, reading, and writing of colormaps, etc.
screen (SrcCD, UtilT)
screen is a terminal multiplexer that runs several separate
"screens" (ttys) on a single character-based terminal. Each
virtual terminal emulates a DEC VT100 plus several ISO 6429 (ECMA 48,
ANSI X3.64) and ISO 2022 functions. Arbitrary keyboard input translation
is also supported. screen sessions can be detached and resumed
later on a different terminal type. Output in detached sessions is saved
for later viewing.
sed (DjgpD, DosBC, SrcCD, UtilD, UtilT)
sed is a stream-oriented version of ed. It comes with the
rx library.
shar makes so-called shell archives out of many files, preparing
them for transmission by electronic mail services, while unshar
helps unpack these shell archives after reception. uuencode prepares a
file for transmission over an electronic channel which ignores or otherwise
mangles the high order bit of bytes, while uudecode does the
converse transformation.
basename,
date,
dirname,
echo,
env,
expr,
false,
groups,
hostname,
id,
logname,
nice,
nohup,
pathchk,
printenv,
printf,
pwd,
sleep,
stty,
su,
tee,
test,
true,
tty,
uname,
users,
who,
whoami,
&
yes.
tar (SrcCD, UtilT)
GNU tar includes multivolume support, the ability to archive sparse
files, automatic archive compression/decompression, remote archives, and
special features that allow tar to be used for incremental and full
backups. Unfortunately, GNU tar implements an early draft of the
POSIX 1003.1 ustar standard which is different from the final
standard. Adding support for the new changes in a backward-compatible
fashion is unfortunately not trivial.
web2c
TeX package. Sources are available via anonymous ftp; retrieval
instructions are in `pub/tex/unixtex.ftp' on ftp.cs.umb.edu.
If you receive any installation support from the University of Washington,
consider sending them a donation.
To order a full distribution written in tar on either a
1/4inch 4-track QIC-24 cartridge or a 4mm DAT cartridge, send
$210.00 to:
Pierre A. MacKay
Department of Classics
DH-10, Denny Hall 218
University of Washington
Seattle, WA 98195
USA
Electronic-Mail: mackay@cs.washington.edu
Telephone: +1-206-543-2268
Please make checks payable to: `University of Washington'.
Do not specify any other payee. That causes accounting problems.
Checks must be in U.S. dollars, drawn on a U.S. bank.
Only prepaid orders can be handled.
Overseas sites: please add to the base cost $20.00 to ship via
air parcel post or $30.00 to ship via courier.
Please check with the above for current prices & formats.
makeinfo,
info,
texi2dvi,
texindex,
tex2patch,
&
fixfonts)
which generate both printed manuals & online hypertext documentation
(called "Info"), & can read online Info documents. Version 3 has both
Emacs Lisp & standalone programs written in C or shell script. Texinfo
mode for Emacs enables easy editing & updating of Texinfo files. Source
for the Texinfo Manual is included. See section GNU Documentation.
cat,
cksum,
comm,
csplit,
cut,
expand,
fmt,
fold,
head,
join,
nl,
od,
paste,
pr,
sort,
split,
sum,
tac,
tail,
tr,
unexpand,
uniq,
and
wc.
time (SrcCD, UtilT)
time reports (usually from a shell) the user, system, & real time
used by a process. On some systems it also reports memory usage, page
faults, et al.
tput (SrcCD, UtilT)
tput is a portable way for shell scripts to use special terminal
capabilities. Our tput uses the Termcap database, instead of
Terminfo as most others do.
ucblogo (LangT, SrcCD)
An implementation of the classic teaching language, Logo.
f,
g & v (in all window & packet sizes),
G,
t,
e,
Zmodem,
&
two new bidirectional (i & j) protocols.
With a BSD sockets library, it can make TCP connections. With TLI
libraries, it can make TLI connections. Source is included for a manual
(not yet published by the FSF).
wdiff (DjgpD, DosBC, SrcCD, UtilT)
wdiff is a front-end to GNU diff. It compares two files,
finding the words deleted or added to the first to make the
second. It has many output formats and works well with terminals and pagers.
wdiff is very useful when two texts differ only by a few words and
paragraphs have been refilled.
Ygl (SrcCD, UtilT)
Ygl emulates SGI's GL (Graphics Language) library under X11 on
GNU/
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 * rwhod bsd44 * s2p perl * sail bsd44 * saoimage saoimage * savecore bsd44 * sc bsd44 * sccs bsd44 * sccs2rcs CVS * scdisp xopt * screen screen * script bsd44 * scsiformat bsd44 * sctext xopt * sdiff Diffutils * sed sed * send-pr GNATS * sendfax HylaFAX * sendmail bsd44 * sgi2fax HylaFAX * sh bsd44 * shar Sharutils * shinbun xopt * shogi Shog