Chapter 5. Selected OSS
Introduction
Below is a list of open source software especially useful in libraries and
open source software in general. This list is not intended to be comprehensive
but selective instead. It is representative of the types of open source soft-
ware available and the most used tools.
A more comprehensive lists of open source software especially designed for li-
braries can be found at OSS4Lib (http://www.oss4lib.org/). There you will also
find the archives of the OSS4Lib mailing list, a low-traffic but ongoing dis-
cussion surrounding the issues of open source software in libraries. For an
even more comprehensive list of software, check out SourceForge
(http://sourceforge.net/). There you will find just about any type of open
source software you desire.
Apache
Link: http://httpd.apache.org/
Apache is the most popular Web (HTTP) server on the Internet and a standard
open source piece of software. It's name doesn't really have anything to do
with American Indians. Instead, it's name comes from the way it is built. It
is "a patchy" server, meaning that it is made up of many modular parts to cre-
ate a coherent whole. This design philosophy has made the application very ex-
tensible. For example, there are the core modules that make up the server's
ability to listen for connections, retrieve files, and return them to the re-
questing client (the "user agent" in HTTP parlance). There are other modules
dealing with logging transactions and CGI (common gateway interface) script-
ing. Other modules allow you to rewrite incoming requests, manage email, im-
plement the little-used HTTP PUT method, write other modules in Perl, or
transform XML files using XSLT. Apache is currently at version 2.0, but for
some reason many people are still using the 1.3 series. I don't really know
why. I have not upgraded my Apache servers to version 2.0 because I do not
want to loose the functionality of AxKit, an XML transformation engine. Apache
is a part of LAMP (Linux Apache MySQL Perl/PHP), a term coined by RedHat to
denote the core open source applications dealing with stuff Web.
CVS
Link: http://www.cvshome.org/
CVS is an acronym for Concurrent Versions System. It is the way open source
software is shared by developers. It consists of a client and server applica-
tion. The server is set up and points to a directory where one or more
projects are saved. Usernames and passwords are created, and the server sits
and waits for connections. For the most part, the CVS client is command-line
driven. On the command-line you specify the location of a CVS server, the pro-
tocol you are going to use to connect to the server, and your username/pass-
word. Once logged in you give CVS various commands used to download remote
projects. You then spend your time hacking away at the source code. When you
think you have created the latest and great hack, you issue the CVS diff com-
mand to create a diff file. This file lists the changes you made to the origi-
nal source. By sending this diff file to the project's maintainer, your hack
can be incorporated into the next release. Alternatively, you might be granted
write access to the remote project. In which case you issue CVS commit com-
mand, and your hacks are automatically incorporated. If you are going to do
any open source software development, then you must get acquainted with CVS.
Luckily, it comes pre-installed with many Unix variants, but it is just as
easily compiled.
25
Do'stlaringiz bilan baham: |