Chapter 3: Current Open Source Software Products | |
John Houser | |
|
|
Abstract |
In a time where an economic downturn and concerns about climate change are influencing decisions, many libraries are looking for ways to save money and to reduce their impact on the environment. This report provides detailed information about the operating systems, software, and approaches used by three libraries and one academic institution that have implemented open source public workstations. It explains how open source operating systems and applications, when installed on appropriate hardware, can decrease power utilization while providing a reliable and satisfying customer experience. It will help library decision makers who want to find out about alternatives to Microsoft Windows-based PCs running Microsoft Office, not only as a means of cutting costs or reducing a carbon footprint, but also as a means of providing a better experience for library customers. |
This chapter lists and describes a number of open source products that are currently available. This is by no means an exhaustive list; the open source software packages described in this chapter were selected because they are utilized by one or more of the libraries contacted for this report. Many additional open source applications are in fact available. There is a large, regularly updated list of open source products available at Wikipedia, as well as many other websites.1
A computer's operating system is the permanently installed program that administers all of the computer's activity. While Microsoft Windows is the best-known proprietary operating system, there are considerably more options when it comes to open source operating systems. While all of the organizations mentioned in this report use Linux, it is not the only open source operating system, nor is it the only one worthy of attention. The Berkeley Standard Distribution, or BSD family of Unix operating systems, is a Linux alternative that is highly regarded by many systems administrators. The Crawford County Federated Library System uses OpenBSD on some of its servers, including those that support LTSP terminals.
The term Linux is used as shorthand for the GNU/Linux operating system. GNU/Linux refers to the combination of system utilities and software developed as part of the GNU project and the Linux kernel. The GNU project began in 1983 with the goal of producing a free Unix-like operating system that would be open, cooperative, and give users the ability to access the source code and modify the software.2 The Linux kernel is the core of a Linux operating system, which was originally developed by Linus Torvalds.
Unfortunately, there is no one way to organize and distribute all the system utilities and software that typically come with the Linux kernel; thus, there are many Linux distributions. Among the more popular for general use are Debian, Mandriva, Red Hat (and its free variant CentOS), SUSE, and Ubuntu. Each of these has its supporters and advocates, but Ubuntu Linux is perhaps the most popular for use as a desktop operating system. Ubuntu's developers have placed particular emphasis on ease of installation, ease of use, a complete set of graphical system utilities, good printing support, and an extensive application menu–the things that are needed to make an operating system viable for use on a desktop computing system. Ubuntu Linux is the starting point on which the Groovix Linux distribution used by Howard County Library is based.
Ubuntu website
The OpenBSD operating system is a variant of Berkeley Standard Unix. It can run many of the same utilities and software as Linux, but uses a different kernel and is licensed somewhat differently. The Linux kernel is licensed with the GNU General Public License (GPL), which insists that source code must be distributed or available for download for all derivatives of GNU copyrighted code. OpenBSD is licensed so that the code can be used by anyone for any purpose “and imposes only simple and uniform requirements for maintaining copyright notices in redistributed versions and crediting the originator of the material only in advertising.”3 FreeBSD is another variant of Berkeley Standard Unix that may include GPL licensed code. OpenBSD and FreeBSD are not often used for desktop computing but are considered particularly secure and reliable, so some users prefer them for server applications.
Linux shares common roots with the BSD family of operating systems. Many utilities in these two systems are similar, and many applications can be compiled or installed to run on either one of the BSD variants or on Linux. The libraries of the Crawford County Federated Library System use OpenBSD for some server applications, including running the LTSP server software.
OpenBSD website
The Linux Terminal Server Project (LTSP) produces thin-client software for Linux. Typically, this type of software is used to create efficient, low-cost multi-user computing environments where one server does most application processing and inexpensive terminal hardware is used for user displays or keyboard and mouse input. With suitable terminal hardware, virtually any applications available for the parent platform–which is Linux in this case–may be run on a thin client. For example, as described in this report, Meadville Public Library is running twenty general purpose public-access workstations off one server. The library runs a full suite of browsers and office productivity applications on their terminals. UNC is currently running twenty-two single-purpose kiosk terminals with a single server.
Thin clients are distinguished from fat clients by the amount of processing that is off-loaded to the server. In a thin-client arrangement, the processing handled by the client is minimized and generally limited to what is necessary to create a visual display and transmit keyboard and mouse input to and from the server. In a typical fat-client arrangement, most processing is done by the client, and the server handles that which is needed for storage and communication.
Commonly cited reasons for implementing a thin-client solution include the desire for low-cost hardware, low power consumption, low heat output, quiet operation, ease of administration, low bandwidth requirements between the client and server, and lack of appeal to thieves. While all of these reasons may well influence any library in moving towards this architecture, public libraries may find this approach particularly attractive. Public facilities often find it hard to adequately fund their technology, and their public computer environments tend to be very hard on exposed hardware. With this approach, most of the expensive hardware remains safe in the confines of the server room.
The desire to “go green” has also led some communities to set goals for reducing carbon emissions in public buildings. The use of low-power-consumption, low-heat-production terminal equipment can reduce power utilization both directly and through a reduced load on air conditioning systems. To realize this benefit, however, libraries must purchase new terminal equipment rather than converting old PCs for use as terminals.
One major limitation of this approach is the potential for poor performance when users are allowed to view or edit high-bandwidth video or multimedia applications. The high-bandwidth processing requirements may demand either a very expensive server whose capacity will be wasted much of the time or one that can handle only a small amount of video before users experience a loss of performance. Some terminals do not support sound. Libraries for which video or other high-bandwidth multimedia is a priority should analyze their requirements carefully and consider loading Linux on each individual workstation.
One advantage of using LTSP is that it can be used to create a very pleasant working environment. Terminals generally have no cooling fan or hard drive, so they are virtually silent. Lower cooling requirements may allow for less obtrusive air conditioning. Terminals are smaller than desktop or tower PCs and can be attached to the underside of a desk.
A note concerning the different iterations of LTSP software: sound support in older versions of LTSP is problematic. If you want to support sound on your terminals, you need version 5.x or later. LTSP 5.x is available as a package for installation on Ubuntu Linux. Other distributions may include an older version of LTSP. Check the version if you want to support sound.
LTSP website
The ability to control the terms of a patron's session on a public computer is crucial to any public library. By adjusting the amount of bandwidth and types of programs a patron can use, administrators can ensure that they get the maximum performance from whatever Internet connection they are able to perform. These programs are tools that can help manage patron sessions on public-access computers.
Internet Station Manager (ISM), developed at the Grand Rapids Public Library in Michigan, is a Perl application licensed under the GPL. The program runs on a server and controls Internet access for public workstations by manipulating a proxy server. The software was written to run under FreeBSD or one of the other BSD variants, but a Perl programmer can be modify it to run under Linux. It does not prevent use of local software on the workstation–only Internet access–so it is an incomplete session management solution. It does not support advance reservations, but it can produce usage statistics. User authentication is handled via a local database, which would typically be exported from the library's ILS database. The system can also generate temporary use codes and can use Codabar barcode checksums for authentication. The system can also be used to block access to specific Internet services, including telnet, ftp, IRC, and chat. Please note that this software requires some network administration skill to install and configure. Familiarity with Perl is very helpful.
ISM page on Google Code
LibKi is a session management utility written by Kyle Hall for the Crawford County Federated Library System. It is written in PHP and consists of a server application with a Web-based administrative interface and a client. The client can run on any system that has Gtk2 support, including Linux, OpenBSD or FreeBSD, and Microsoft Windows. The system allows patrons to log in to any public-access workstation and authenticate with a username or library card number and password taken from the library's ILS. Patrons can then use the workstation for a predefined amount of time each day. The administrative interface shows username, minutes, status, and machine name and will allow the system administrator to edit the user's time, log out and lock an account, delete the user's account, un-pause the session, send a message to the user, or log the user out.
libKi information on Kyle Hall's website
Anyone who has administered a network knows that maintenance and performance issues come with the territory. System imaging is a crucial tool for securing and maximizing the your network's performance. These utilities are particularly helpful in managing large numbers of similar workstations, especially where high uptime is expected.
Partimage allows a system administrator to save a hard drive partition containing a supported file system to an image file. The resulting image can be burned to a CD and installed on a computer using other tools. Partimage is one of the key utilities included in the SystemRescueCd project. Please note that effective use of this tool requires basic Linux command line skills.
Partimage website
The SystemRescueCd project produces a Linux live CD (bootable CD) that includes a set of useful tools for creating, copying, or restoring system images and for doing other Linux system repair work. It contains all the tools necessary to create and restore a system image that a library could create for its public workstations. This utility can also be used to boot from a USB drive in the event that an organization does not configure public workstations with a CD drive. The SystemRescueCd website contains many links to how-to information. The website also includes a number of useful forums that may be used to exchange information with users of the software. Please note that effective use of this tool requires basic Linux command line skills.
SystemRescueCd website
These applications are open source alternatives to common proprietary programs. They are available at little or no cost and can be used on public workstations effectively. The case study sites in this report use the applications described here on their public-access workstations.
OpenOffice.org is the name of both an open source software project and the product that project produces. The product is an office productivity suite including word processing, spreadsheet, presentation, drawing, data charting, formula editing, database, and file conversion tools. It is most often used as an open source replacement for Microsoft Office. The software is based on Sun Microsystems StarOffice product; Sun is the largest contributor to the OpenOffice.org source code. Other major contributors include Novell, Red Hat, RedFlag CH2000, IBM, and Google.4 OpenOffice.org applications can open and save documents created in most Microsoft Office formats. Both Howard County Library and Crawford County Federated Library System use OpenOffice.org on all public-access workstations. Extensive help and support services are available for users wishing to migrate from Microsoft Office to OpenOffice.org.
OpenOffice.org website
Firefox is a popular open source browser that competes directly with Microsoft Internet Explorer. It is a product of the Mozilla project, which is sponsored by the Mozilla Foundation. Mozilla developers produce security updates when needed, rather than on a fixed schedule as is generally done by Microsoft for Internet Explorer. Firefox is also highly standards-compliant and easy to extend. As a consequence, there are more add-ons and extensions available for Firefox (particularly related to library services) than for Internet Explorer. Firefox is the primary browser used by both Howard County Library and Crawford County Federated Library System.
Firefox website
MPlayer is a widely used open source multimedia player for Windows, Mac OS/X, and Linux. It can be used to view many of the same file types that can be viewed with Windows Media Player or RealPlayer. Supported file types include MPEG/VOB, AVI, Ogg/OGM, VIVO, ASF/WMA/WMV, QT/MOV/MP4, RealMedia, Matroska, NUT, NuppelVideo, FLI, YUV4MPEG, FILM, RoQ, PVA files, supported by many native, XAnim, and Win32 DLL codecs. It also supports display of VideoCD, SVCD, DVD, 3ivx, DivX 3/4/5, WMV, and H.264 movies. A complete list of supported formats is updated regularly on the MPlayer website. Howard County Library has elected to load RealPlayer as well as MPlayer in order to avoid problems with unsupported codecs.
MPlayer download page
www.mplayerhq.hu/design7/dload.html
MPlayer list of supported formats
Not all proprietary software costs money. The public libraries involved in this case study have mentioned two proprietary, cost-free applications as being effective in meeting customer requirements, despite the fact that they are not open source. Adobe Reader is popular for viewing PDF files, and RealPlayer is widely used for streaming audio. Both programs run under Linux. While most Linux distributions come with an application called xpdf that displays PDF files, Howard County Library reports that the open source software application has not kept up with enhancements to the PDF format. HCL specifically mentions problems with PDF files that contain forms for users to fill in. Crawford County Federated Library System also loads Adobe Reader.
There is also an open source analog to RealPlayer called Helios for streaming media, but it does not support some proprietary data formats. HCL has chosen to avoid user complaints by loading RealPlayer. CCFLS does not currently support sound on its LTSP terminals.
GCompris is a free, open source suite of educational games that originated in France. Today, GCompris is available in at least twenty-eight languages, including English and Spanish. Its games provide more than eighty activities for children aged 2 to 10.
GCompris English-language website
GCompris wiki
Many users of Microsoft alternatives still find it necessary to use some Microsoft applications. Linux users, particularly in public settings, will often require some Windows applications. These utilities may be useful to libraries with one or more required Microsoft Windows applications.
Wine is a software layer that allows users to run Windows applications under Linux and other operating systems as long as the hardware platform is Intel x86. Unlike some other systems, this software aims to replace the Windows API, so it is not necessary to purchase a Windows version or license to run Windows applications with Wine. Some applications will not run properly under Wine, so testing applications prior to making them available to the public is required. A database of compatible applications is available.5
WineHQ website
CrossOver is a commercial, enhanced version of Wine, which includes support from CodeWeavers. CrossOver is supported by Open Sense Solutions for use with its Groovix product.
CodeWeavers website
Notes
1. | “List of Open Source Software Packages,” Wikipedia, http://en.wikipedia.org/wiki/List_of_open_source_software_packages (accessed Jan. 3, 2009). |
2. | See “Overview of the GNU System,” www.gnu.org/gnu/gnu-history.html (accessed Jan. 14, 2009). |
3. | “Copyright Policy,” OpenBSD website, www.openbsd.org/policy.html (accessed Jan. 3, 2009). |
4. | “About OpenOffice.org,” OpenOffice.org website, http://about.openoffice.org/index.html (accessed Jan. 3, 2009). |
5. | “WineHQ: Run Windows Applications on Linux, BSD and Mac OS X,” WineHQ website, www.winehq.org (accessed Jan. 3, 2009). |
Figures
[Figure ID: fig1] |
Figure 1
Ubuntu Linux desktop with menu open. |
[Figure ID: fig2] |
Figure 2
Meadville Public Library thin terminal. |
[Figure ID: fig3] |
Figure 3
Meadville Public Library thin terminal mounted under table. |
[Figure ID: fig4] |
Figure 4
Linux Terminal Server Project homepage. |
[Figure ID: fig5] |
Figure 5
libKi login screen. |
[Figure ID: fig6] |
Figure 6
libKi timer. |
[Figure ID: fig7] |
Figure 7
libKi administrative interface. |
[Figure ID: fig8] |
Figure 8
OpenOffice.org Writer. |
[Figure ID: fig9] |
Figure 9
OpenOffice.org Impress. |
[Figure ID: fig10] |
Figure 10
OpenOffice.org Calc. |
Article Categories:
|
Refbacks
- There are currently no refbacks.
Published by ALA TechSource, an imprint of the American Library Association.
Copyright Statement | ALA Privacy Policy