From: Joshua Ferraro Date: Sun, 30 Dec 2007 17:58:27 +0000 (-0500) Subject: re-naming some files prior to release X-Git-Tag: v3.00.00-alpha~178 X-Git-Url: http://koha-dev.rot13.org:8081/gitweb/?a=commitdiff_plain;h=062d46800e2baf83412f93781067becb1afb87a7;p=koha_fer re-naming some files prior to release Signed-off-by: Joshua Ferraro --- diff --git a/INSTALL b/INSTALL new file mode 100644 index 0000000000..769abc198a --- /dev/null +++ b/INSTALL @@ -0,0 +1,82 @@ +Koha - award-winning open-source Integrated Library System + +Koha is the first open-source Integrated Library System. Developed initially in +New Zealand by Katipo Communications, Ltd and first deployed in January of 2000 +for the Horowhenua Library Trust, it is currently maintained by a team of +software providers and library technology staff from around the globe. Learn +more about the Koha project at http://koha.org. + +INSTALLATION +============ + +Koha 3.0 comes with a new installer, based on MakeMaker, the tool that +is usually used to install CPAN modules. This means that if you know +how to customise CPAN-installed modules, the same things should work +for you with Koha. If not, don't worry. If you want to customise the +installation more than described below, run "man ExtUtils::MakeMaker" + +You need to have a server running MySQL 5 or PostgreSQL 8.2.5, Zebra +2.0.22 or greater and a webserver (preferably Apache2) before installing +Koha. + +MySQL 5: Create a database called 'koha,' owned by 'kohaadmin' +user, with a password set. Note: kohaadmin must have at least the +following privileges: SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, +ALTER, and LOCK TABLES. + +PostgreSQL 8.2.5: Create a database called 'koha,' owned by 'kohaadmin' +user, with a password set. Note: kohaadmin must be a superuser. You +must also add plpgsql to the koha database. + +Default installation instructions: + +1. perl Makefile.PL + (you will be prompted to answer a number of questions) +2. make +3.(optional) make test +4. sudo make install +5. sudo ln -s /etc/koha/koha-httpd.conf /etc/apache2/sites-available/koha + (note that the path to koha-httpd.conf may be different depending on your + installation choices) +6. sudo a2enmod rewrite +7. sudo a2ensite koha && /etc/init.d/apache2 reload +8. sudo zebrasrv -f /etc/koha/koha-conf.xml + (note that you will want to run Zebra in daemon mode for a production + system) +9. Browse to http://servername:8080/ and answer the questions + +OR if you want to install all dependencies from CPAN and are root, you can +replace steps 1-3 with "perl install-CPAN.pl" but this is non-standard and +may not be safe. Nevertheless, it's pretty cool when it works. + +The defaults will install Koha to places that follow relevant standards, +such as the File Hierarchy Standard. If you want to install Koha to a +different directory like /opt/koha, then replace step 1 with (for example): + +1. perl Makefile.PL INTRANET_CGI_DIR=/www/cgi-bin + +You can change most of the defaults in a similar way, such as DB_HOST. +For full instructions on how to override the default settings, run + +$ perldoc rewrite-config.PL + + +IF YOU HAVE PROBLEMS +==================== + +IF THIS IS A PRE-RELEASE TREE: please contact developers by email via +http://lists.nongnu.org/mailman/listinfo/koha-devel +or +http://dir.gmane.org/gmane.education.libraries.koha.devel + +IF THIS IS A RELEASED VERSION: please see the support pages at +http://www.koha.org/ + +Released versions usually have three-digit numbers, like 3.00.01, +while other version number styles are usually snapshots or previews. + + +DEVELOPER NOTES +=============== + +For instructions on how to package releases, run perldoc Makefile.PL diff --git a/INSTALL.debian b/INSTALL.debian new file mode 100644 index 0000000000..e08c09b39d --- /dev/null +++ b/INSTALL.debian @@ -0,0 +1,328 @@ +============================= +Installation Guide for Installing Koha on Debian Etch with MySQL 5 +============================= + +Copyright (C) 2007, LibLime + +Maintainer: Joshua Ferraro (jmf AT liblime DOT com) +Feedback/bug reports: jmf AT liblime DOT com +This document last modified: 29 December 2007 + +Installation Instructions +============================= + +All commands can be performed as a system user with sudo privileges, +as indicated or by running the command directly as root. + +Your locale should be set to UTF-8, as should Apache2 and MySQL 5. +This step is VERY IMPORTANT for a UNICODE compliant system. Please +read over the following document carefully: + +http://wiki.koha.org/doku.php?id=encodingscratchpad + +1. Prepare System and Install Dependencies + +1.1 Install Debian Etch via Businesscard CD + +See http://www.debian.org/devel/debian-installer/ + +1.2 Set up apt sources for Git, Yaz and Zebra packages + +Edit your /etc/apt/sources.list file and add the following: + + # Index Data + deb http://ftp.indexdata.dk/debian etch main + deb-src http://ftp.indexdata.dk/debian etch main + + # Backports + deb http://www.backports.org/debian etch-backports main contrib non-free + +Backports packages are signed with a key you can install as follows: + + $ sudo apt-get install debian-backports-keyring + +The Index Data packages are signed with a key you can install as follows: + + $ wget http://ftp.indexdata.dk/debian/indexdata.asc + $ sudo apt-key add indexdata.asc + +Run the following command to update your system: + + $ sudo apt-get update + $ sudo apt-get -t etch-backports install git-core git-email + $ sudo apt-get install yaz idzebra-2.0 idzebra-2.0-doc + +1.3 Get Koha + +1.3.1 Option A: Download Koha via Git (optional) + + $ git clone git://git.koha.org/pub/scm/koha.git kohaclone + $ cd kohaclone + $ git checkout -b myinstall origin + +Note: for more information about Git, please see the Koha Git Usage Guide: + + http://wiki.koha.org/doku.php?id=en:development:git_usage + +1.3.2 Option B: Download Koha from koha.org + +1.4 Install additional Debian dependencies + +IMPORTANT: You should only use CPAN for Perl dependencies which are NOT available from the package maintainer. + You have been warned! + +Using the debian.packages file included in the Koha source tree, +run the following: + + $ sudo dpkg --set-selections < install_misc/debian.packages + +Now start dselect: + + $ sudo dselect + +Choose [I]nstall and accept packages to be installed (hit return) + +(may take a while) + +Choose [C]onfigure, [R]emove and [Q]uit until dselect has completed. + +1.5 Install Perl dependencies that aren't packaged into Debian Etch +sources + +Run the following command: + + $ sudo cpan MARC::Record Class::Accessor MARC::Charset MARC::File::XML \ + Net::Z3950::ZOOM HTML::Template::Pro MARC::Crosswalk::DublinCore \ + PDF::Reuse PDF::Reuse::Barcode Data::ICal GD::Barcode::UPCE \ + XML::RSS Algorithm::CheckDigits::M43_001 Biblio::EndnoteStyle POE Schedule::At + +There is a known but benign error in the test case for Barcode::Code128, +which is required by PDF::Reuse::Barcode. If this module is not installed, +you can do a forced installation of Barcode::Code128. + +Note: you may need to run CPAN initialization if you've not run cpan +before: + + /etc/perl/CPAN/Config.pm initialized. + + CPAN is the world-wide archive of perl resources. It consists of about + 100 sites that all replicate the same contents all around the globe. + Many countries have at least one CPAN site already. The resources + found on CPAN are easily accessible with the CPAN.pm module. If you + want to use CPAN.pm, you have to configure it properly. + + If you do not want to enter a dialog now, you can answer 'no' to this + question and I'll try to autoconfigure. (Note: you can revisit this + dialog anytime later by typing 'o conf init' at the cpan prompt.) + + Are you ready for manual configuration? [yes] + +When the configuration is completed CPAN will install the Perl modules. + +2. Configuration of dependencies + +2.1 Update root MySQL password (if dselect didn't do it for you already) + + $ sudo mysqladmin password + +2.2 Create the Koha database + + Create the database and user with associated privileges: + + $ mysqladmin -uroot -p create database + $ mysql -uroot -p + + Welcome to the MySQL monitor. Commands end with ; or \g. + Your MySQL connection id is 22 + Server version: 5.0.32-Debian_7etch3-log Debian etch distribution + + Type 'help;' or '\h' for help. Type '\c' to clear the buffer. + + mysql> grant all on .* to ''@'localhost' identified by ''; + Query OK, 0 rows affected (0.00 sec) + + mysql> flush privileges; + Query OK, 0 rows affected (0.00 sec) + + mysql> quit + +2.3 Create test database in order to install DBD::mysql + +In order to handle UTF-8 correctly, Koha requires at least version 4.004 +of the DBD::mysql Perl module. However, Debian Etch has a stable package +only for version 3.0008, so it is necessary to install the module from CPAN. +Because of DBD::mysql's test suite, it is necessary to temporarily create a +test database and user: + + $ mysql -uroot -p + + Create the database and user with associated privileges: + + Welcome to the MySQL monitor. Commands end with ; or \g. + Your MySQL connection id is 22 + Server version: 5.0.32-Debian_7etch3-log Debian etch distribution + + Type 'help;' or '\h' for help. Type '\c' to clear the buffer. + + mysql> create database test; + Query OK, 1 row affected (0.00 sec) + + mysql> grant all on test.* to 'test'@'localhost' identified by 'test'; + Query OK, 0 rows affected (0.00 sec) + (test database, user, and password can be different if need be) + + mysql> flush privileges; + Query OK, 0 rows affected (0.00 sec) + + mysql> quit + +Next install DBD::mysql: + + $ sudo cpan + + cpan> o conf makepl_arg + (get current value of this CPAN parameter) + + cpan> o conf makepl_arg "--testdb=test --testuser=test --testpass=test" + + cpan> install DBD::mysql + + cpan> o conf makepl_arg '' + (clear this setting to not interface with future CPAN installs). + + +Finally, remove the test database: + + $ mysql -uroot -p + + mysql> drop database test; + Query OK, 1 row affected (0.00 sec) + + mysql> exit + Bye + +3. Run the Koha installer + + $ perl Makefile.PL + ( answer questions ) + $ make + $ make test + $ sudo make install + +4. Configure and start Apache + $ sudo ln -s /etc/koha/koha-httpd.conf /etc/apache2/sites-available/koha + (note that the path to koha-httpd.conf may be different depending on your + installation choices) + +Add the following lines to /etc/apache2/ports.conf: + + Listen 80 + Listen 8080 + +Run the following commands: + + $ sudo a2enmod rewrite + $ sudo a2ensite koha + $ sudo apache2ctl restart + +5. Configure and start Zebra + +Note: it's recommended that you daemonize the Zebra process and add it to your +startup profile. For a non-production test/development installation, running +Zebra from the command line can be useful. Pick from the two available options +below, or roll your own :-) + +Note: it's also recommended that you create a Koha system user, which you will +have specified during the install process. Alternatively, Zebra can be +configured to run as the root user. + +Option 1: run the Zebra processes from the command line: + + Zebra Server: + $ sudo -u ${KOHA_USER} zebrasrv -f /etc/koha/koha-conf.xml + (note that the path to koha-conf.xml may be different depending on your + installation choices) + + Note: the user you run Zebra as will be the only user with write permission + on the Zebra index; in development mode, you may wish to use your system + user. + + Zebraqueue Daemon: + $ sudo -u ${KOHA_USER} misc/bin/zebraqueue_daemon.pl + + Note: if you are running in this mode, you may wish to defer starting the + zebraqueue until you've run the web installer (see below). + +Option 2: run the Zebra processes as daemons, and add to startup process: + +Note that references to $SCRIPT_DIR refer to the directory where +Koha's command-line scripts are installed, e.g., /usr/share/koha/bin. + + Zebra Server: + $ sudo ln -s ${SCRIPT_DIR}/koha-zebra-ctl.sh /etc/init.d/koha-zebra-daemon + (Note: ${SCRIPT_DIR} is /usr/share/koha/bin/ by default in a standard install) + $ sudo update-rc.d koha-zebra-daemon defaults + ( Note: see man chkconfig(8) on other distros ) + + $ sudo ${SCRIPT_DIR}/koha-zebra-ctl.sh start + + Zebraqueue Daemon: + $ sudo ln -s ${SCRIPT_DIR}/koha-zebraqueue-ctl.sh /etc/init.d/koha-zebraqueue-daemon + $ sudo update-rc.d koha-zebraqueue-daemon defaults + ( Note: see man chkconfig(8) on other distros ) + + $ sudo ${SCRIPT_DIR}/koha-zebraqueue-ctl.sh start + +6. Run the Web Installer, populate the database, initial configuration of settings + + Point your browser to http://:8080/ + + It should redirect you to the Web installer where you can continue the setup. + +Uninstall Instructions +============================= +1) Stop Services: + $ sudo a2dissite koha + $ sudo rm /etc/apache2/sites-available/koha + $ sudo apache2ctl restart + + $ sudo update-rc.d koha-zebra-daemon remove + $ sudo update-rc.d koha-zebraqueue-daemon remove + $ sudo rm /etc/init.d/koha-zebra-daemon + $ sudo rm /etc/init.d/koha-zebraqueue-daemon + +2) Remove Koha Databases + + # MySQL + $ mysql -u -p + > drop database koha; + + # Zebra Indexes + $ zebraidx -c /etc/zebradb/zebra-biblios.cfg -g iso2709 -d biblios init + $ zebraidx -c /etc/zebradb/zebra-authorities.cfg -g iso2709 -d authorities init + +3) Remove Koha Install Directories and Configuration Files + +Tested on the following operating environments +============================================== +- Debian Etch 4.0 + +Installer Bug reports +===================== +Please send any installer bug reports to jmf AT liblime DOT com + +Other Notes +===================== +This file is part of Koha + +Koha is free software; you can redistribute it and/or modify it under the +terms of the GNU General Public License as published by the Free Software +Foundation; either version 2 of the License, or (at your option) any later +version. + +Koha is distributed in the hope that it will be useful, but WITHOUT ANY +WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR +A PARTICULAR PURPOSE. See the GNU General Public License for more details. +You should have received a copy of the GNU General Public License along with +Koha; if not, write to the Free Software Foundation, Inc., 59 Temple Place, +Suite 330, Boston, MA 02111-1307 USA diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000000..60549be514 --- /dev/null +++ b/LICENSE @@ -0,0 +1,340 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc. + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Library General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) 19yy + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) 19yy name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + , 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Library General +Public License instead of this License. diff --git a/README.debian b/README.debian deleted file mode 100644 index e08c09b39d..0000000000 --- a/README.debian +++ /dev/null @@ -1,328 +0,0 @@ -============================= -Installation Guide for Installing Koha on Debian Etch with MySQL 5 -============================= - -Copyright (C) 2007, LibLime - -Maintainer: Joshua Ferraro (jmf AT liblime DOT com) -Feedback/bug reports: jmf AT liblime DOT com -This document last modified: 29 December 2007 - -Installation Instructions -============================= - -All commands can be performed as a system user with sudo privileges, -as indicated or by running the command directly as root. - -Your locale should be set to UTF-8, as should Apache2 and MySQL 5. -This step is VERY IMPORTANT for a UNICODE compliant system. Please -read over the following document carefully: - -http://wiki.koha.org/doku.php?id=encodingscratchpad - -1. Prepare System and Install Dependencies - -1.1 Install Debian Etch via Businesscard CD - -See http://www.debian.org/devel/debian-installer/ - -1.2 Set up apt sources for Git, Yaz and Zebra packages - -Edit your /etc/apt/sources.list file and add the following: - - # Index Data - deb http://ftp.indexdata.dk/debian etch main - deb-src http://ftp.indexdata.dk/debian etch main - - # Backports - deb http://www.backports.org/debian etch-backports main contrib non-free - -Backports packages are signed with a key you can install as follows: - - $ sudo apt-get install debian-backports-keyring - -The Index Data packages are signed with a key you can install as follows: - - $ wget http://ftp.indexdata.dk/debian/indexdata.asc - $ sudo apt-key add indexdata.asc - -Run the following command to update your system: - - $ sudo apt-get update - $ sudo apt-get -t etch-backports install git-core git-email - $ sudo apt-get install yaz idzebra-2.0 idzebra-2.0-doc - -1.3 Get Koha - -1.3.1 Option A: Download Koha via Git (optional) - - $ git clone git://git.koha.org/pub/scm/koha.git kohaclone - $ cd kohaclone - $ git checkout -b myinstall origin - -Note: for more information about Git, please see the Koha Git Usage Guide: - - http://wiki.koha.org/doku.php?id=en:development:git_usage - -1.3.2 Option B: Download Koha from koha.org - -1.4 Install additional Debian dependencies - -IMPORTANT: You should only use CPAN for Perl dependencies which are NOT available from the package maintainer. - You have been warned! - -Using the debian.packages file included in the Koha source tree, -run the following: - - $ sudo dpkg --set-selections < install_misc/debian.packages - -Now start dselect: - - $ sudo dselect - -Choose [I]nstall and accept packages to be installed (hit return) - -(may take a while) - -Choose [C]onfigure, [R]emove and [Q]uit until dselect has completed. - -1.5 Install Perl dependencies that aren't packaged into Debian Etch -sources - -Run the following command: - - $ sudo cpan MARC::Record Class::Accessor MARC::Charset MARC::File::XML \ - Net::Z3950::ZOOM HTML::Template::Pro MARC::Crosswalk::DublinCore \ - PDF::Reuse PDF::Reuse::Barcode Data::ICal GD::Barcode::UPCE \ - XML::RSS Algorithm::CheckDigits::M43_001 Biblio::EndnoteStyle POE Schedule::At - -There is a known but benign error in the test case for Barcode::Code128, -which is required by PDF::Reuse::Barcode. If this module is not installed, -you can do a forced installation of Barcode::Code128. - -Note: you may need to run CPAN initialization if you've not run cpan -before: - - /etc/perl/CPAN/Config.pm initialized. - - CPAN is the world-wide archive of perl resources. It consists of about - 100 sites that all replicate the same contents all around the globe. - Many countries have at least one CPAN site already. The resources - found on CPAN are easily accessible with the CPAN.pm module. If you - want to use CPAN.pm, you have to configure it properly. - - If you do not want to enter a dialog now, you can answer 'no' to this - question and I'll try to autoconfigure. (Note: you can revisit this - dialog anytime later by typing 'o conf init' at the cpan prompt.) - - Are you ready for manual configuration? [yes] - -When the configuration is completed CPAN will install the Perl modules. - -2. Configuration of dependencies - -2.1 Update root MySQL password (if dselect didn't do it for you already) - - $ sudo mysqladmin password - -2.2 Create the Koha database - - Create the database and user with associated privileges: - - $ mysqladmin -uroot -p create database - $ mysql -uroot -p - - Welcome to the MySQL monitor. Commands end with ; or \g. - Your MySQL connection id is 22 - Server version: 5.0.32-Debian_7etch3-log Debian etch distribution - - Type 'help;' or '\h' for help. Type '\c' to clear the buffer. - - mysql> grant all on .* to ''@'localhost' identified by ''; - Query OK, 0 rows affected (0.00 sec) - - mysql> flush privileges; - Query OK, 0 rows affected (0.00 sec) - - mysql> quit - -2.3 Create test database in order to install DBD::mysql - -In order to handle UTF-8 correctly, Koha requires at least version 4.004 -of the DBD::mysql Perl module. However, Debian Etch has a stable package -only for version 3.0008, so it is necessary to install the module from CPAN. -Because of DBD::mysql's test suite, it is necessary to temporarily create a -test database and user: - - $ mysql -uroot -p - - Create the database and user with associated privileges: - - Welcome to the MySQL monitor. Commands end with ; or \g. - Your MySQL connection id is 22 - Server version: 5.0.32-Debian_7etch3-log Debian etch distribution - - Type 'help;' or '\h' for help. Type '\c' to clear the buffer. - - mysql> create database test; - Query OK, 1 row affected (0.00 sec) - - mysql> grant all on test.* to 'test'@'localhost' identified by 'test'; - Query OK, 0 rows affected (0.00 sec) - (test database, user, and password can be different if need be) - - mysql> flush privileges; - Query OK, 0 rows affected (0.00 sec) - - mysql> quit - -Next install DBD::mysql: - - $ sudo cpan - - cpan> o conf makepl_arg - (get current value of this CPAN parameter) - - cpan> o conf makepl_arg "--testdb=test --testuser=test --testpass=test" - - cpan> install DBD::mysql - - cpan> o conf makepl_arg '' - (clear this setting to not interface with future CPAN installs). - - -Finally, remove the test database: - - $ mysql -uroot -p - - mysql> drop database test; - Query OK, 1 row affected (0.00 sec) - - mysql> exit - Bye - -3. Run the Koha installer - - $ perl Makefile.PL - ( answer questions ) - $ make - $ make test - $ sudo make install - -4. Configure and start Apache - $ sudo ln -s /etc/koha/koha-httpd.conf /etc/apache2/sites-available/koha - (note that the path to koha-httpd.conf may be different depending on your - installation choices) - -Add the following lines to /etc/apache2/ports.conf: - - Listen 80 - Listen 8080 - -Run the following commands: - - $ sudo a2enmod rewrite - $ sudo a2ensite koha - $ sudo apache2ctl restart - -5. Configure and start Zebra - -Note: it's recommended that you daemonize the Zebra process and add it to your -startup profile. For a non-production test/development installation, running -Zebra from the command line can be useful. Pick from the two available options -below, or roll your own :-) - -Note: it's also recommended that you create a Koha system user, which you will -have specified during the install process. Alternatively, Zebra can be -configured to run as the root user. - -Option 1: run the Zebra processes from the command line: - - Zebra Server: - $ sudo -u ${KOHA_USER} zebrasrv -f /etc/koha/koha-conf.xml - (note that the path to koha-conf.xml may be different depending on your - installation choices) - - Note: the user you run Zebra as will be the only user with write permission - on the Zebra index; in development mode, you may wish to use your system - user. - - Zebraqueue Daemon: - $ sudo -u ${KOHA_USER} misc/bin/zebraqueue_daemon.pl - - Note: if you are running in this mode, you may wish to defer starting the - zebraqueue until you've run the web installer (see below). - -Option 2: run the Zebra processes as daemons, and add to startup process: - -Note that references to $SCRIPT_DIR refer to the directory where -Koha's command-line scripts are installed, e.g., /usr/share/koha/bin. - - Zebra Server: - $ sudo ln -s ${SCRIPT_DIR}/koha-zebra-ctl.sh /etc/init.d/koha-zebra-daemon - (Note: ${SCRIPT_DIR} is /usr/share/koha/bin/ by default in a standard install) - $ sudo update-rc.d koha-zebra-daemon defaults - ( Note: see man chkconfig(8) on other distros ) - - $ sudo ${SCRIPT_DIR}/koha-zebra-ctl.sh start - - Zebraqueue Daemon: - $ sudo ln -s ${SCRIPT_DIR}/koha-zebraqueue-ctl.sh /etc/init.d/koha-zebraqueue-daemon - $ sudo update-rc.d koha-zebraqueue-daemon defaults - ( Note: see man chkconfig(8) on other distros ) - - $ sudo ${SCRIPT_DIR}/koha-zebraqueue-ctl.sh start - -6. Run the Web Installer, populate the database, initial configuration of settings - - Point your browser to http://:8080/ - - It should redirect you to the Web installer where you can continue the setup. - -Uninstall Instructions -============================= -1) Stop Services: - $ sudo a2dissite koha - $ sudo rm /etc/apache2/sites-available/koha - $ sudo apache2ctl restart - - $ sudo update-rc.d koha-zebra-daemon remove - $ sudo update-rc.d koha-zebraqueue-daemon remove - $ sudo rm /etc/init.d/koha-zebra-daemon - $ sudo rm /etc/init.d/koha-zebraqueue-daemon - -2) Remove Koha Databases - - # MySQL - $ mysql -u -p - > drop database koha; - - # Zebra Indexes - $ zebraidx -c /etc/zebradb/zebra-biblios.cfg -g iso2709 -d biblios init - $ zebraidx -c /etc/zebradb/zebra-authorities.cfg -g iso2709 -d authorities init - -3) Remove Koha Install Directories and Configuration Files - -Tested on the following operating environments -============================================== -- Debian Etch 4.0 - -Installer Bug reports -===================== -Please send any installer bug reports to jmf AT liblime DOT com - -Other Notes -===================== -This file is part of Koha - -Koha is free software; you can redistribute it and/or modify it under the -terms of the GNU General Public License as published by the Free Software -Foundation; either version 2 of the License, or (at your option) any later -version. - -Koha is distributed in the hope that it will be useful, but WITHOUT ANY -WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR -A PARTICULAR PURPOSE. See the GNU General Public License for more details. -You should have received a copy of the GNU General Public License along with -Koha; if not, write to the Free Software Foundation, Inc., 59 Temple Place, -Suite 330, Boston, MA 02111-1307 USA diff --git a/README.txt b/README.txt deleted file mode 100644 index 769abc198a..0000000000 --- a/README.txt +++ /dev/null @@ -1,82 +0,0 @@ -Koha - award-winning open-source Integrated Library System - -Koha is the first open-source Integrated Library System. Developed initially in -New Zealand by Katipo Communications, Ltd and first deployed in January of 2000 -for the Horowhenua Library Trust, it is currently maintained by a team of -software providers and library technology staff from around the globe. Learn -more about the Koha project at http://koha.org. - -INSTALLATION -============ - -Koha 3.0 comes with a new installer, based on MakeMaker, the tool that -is usually used to install CPAN modules. This means that if you know -how to customise CPAN-installed modules, the same things should work -for you with Koha. If not, don't worry. If you want to customise the -installation more than described below, run "man ExtUtils::MakeMaker" - -You need to have a server running MySQL 5 or PostgreSQL 8.2.5, Zebra -2.0.22 or greater and a webserver (preferably Apache2) before installing -Koha. - -MySQL 5: Create a database called 'koha,' owned by 'kohaadmin' -user, with a password set. Note: kohaadmin must have at least the -following privileges: SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, -ALTER, and LOCK TABLES. - -PostgreSQL 8.2.5: Create a database called 'koha,' owned by 'kohaadmin' -user, with a password set. Note: kohaadmin must be a superuser. You -must also add plpgsql to the koha database. - -Default installation instructions: - -1. perl Makefile.PL - (you will be prompted to answer a number of questions) -2. make -3.(optional) make test -4. sudo make install -5. sudo ln -s /etc/koha/koha-httpd.conf /etc/apache2/sites-available/koha - (note that the path to koha-httpd.conf may be different depending on your - installation choices) -6. sudo a2enmod rewrite -7. sudo a2ensite koha && /etc/init.d/apache2 reload -8. sudo zebrasrv -f /etc/koha/koha-conf.xml - (note that you will want to run Zebra in daemon mode for a production - system) -9. Browse to http://servername:8080/ and answer the questions - -OR if you want to install all dependencies from CPAN and are root, you can -replace steps 1-3 with "perl install-CPAN.pl" but this is non-standard and -may not be safe. Nevertheless, it's pretty cool when it works. - -The defaults will install Koha to places that follow relevant standards, -such as the File Hierarchy Standard. If you want to install Koha to a -different directory like /opt/koha, then replace step 1 with (for example): - -1. perl Makefile.PL INTRANET_CGI_DIR=/www/cgi-bin - -You can change most of the defaults in a similar way, such as DB_HOST. -For full instructions on how to override the default settings, run - -$ perldoc rewrite-config.PL - - -IF YOU HAVE PROBLEMS -==================== - -IF THIS IS A PRE-RELEASE TREE: please contact developers by email via -http://lists.nongnu.org/mailman/listinfo/koha-devel -or -http://dir.gmane.org/gmane.education.libraries.koha.devel - -IF THIS IS A RELEASED VERSION: please see the support pages at -http://www.koha.org/ - -Released versions usually have three-digit numbers, like 3.00.01, -while other version number styles are usually snapshots or previews. - - -DEVELOPER NOTES -=============== - -For instructions on how to package releases, run perldoc Makefile.PL diff --git a/misc/info/Hints b/misc/info/Hints deleted file mode 100644 index e697ce7314..0000000000 --- a/misc/info/Hints +++ /dev/null @@ -1,99 +0,0 @@ -Example /etc/koha.conf file entries - -database=Koha -hostname=localhost -user=Koha -pass=xxxxxx -includes=/usr/local/www/koha/htdocs/includes - -Please note the final line (includes=path) - The path entry can be -used as an alternative to manually editing the path in Output.pm file -(see INSTALL manual). - - --------------------------------------------------------------------------------- -Example apache httpd.conf entries: -Koha makes extensive use of Server Side Includes (SSI): - - -http://httpd.apache.org/docs/mod/mod_include.html - -If your page headers and footers do not show, then you may need to -re-configure your web server. - -Here is an example of entries suitable for Apache httpd.conf: - - - - ServerName koha.example.com - ServerPath /var/www/library - DocumentRoot /var/www/library/koha/html - Alias /images/ "/var/www/library/koha/html/images/" - ScriptAlias /cgi-bin/koha/ "/var/www/library/koha/cgi-bin/" - SetEnv PERL5LIB "/var/www/library/modules" - ErrorLog /var/log/httpd/koha-error_log - # - # ======== koha uses Server Side Includes ========= - # Normally here, use the same path as "DocRoot" above - - # - AllowOverride None - # - # First, you MUST enable +Includes or +IncludesNoExec - # - Options +Includes -FollowSymlinks -Indexes - # - # Second, you must also configure one of following: - # - # 1. server-parsed content (SSI) for files ending in ".html" - # - AddHandler server-parsed .html - # - # ...OR... (not "AND" !!!!)... - # - # 2. Allow SSI if executable bit set using "XBitHack" - # XBitHack on|off|full - # - # XBitHack on - any file that has the user-execute bit - # - set will be treated as a server-parsed html doc. - # - The "full" = "on" but, in addition, will test the - # - group-execute bit. If the group execute bit is set - # - then the Last-modified date of the returned file - # - is sent. If group-execute bit is not set, then no - # - last-modified date is sent. - # - Setting this bit allows clients and proxies to - # - cache the result of the request! - # - # For example, enable XBitHack (on) if you want to - # - include non-executable content in documents like: - # - # - # - # XBitHack on - # - # Remember - do not use XBitHack if using AddHandler! - - - - - ServerName opac.example.com - ServerPath /var/www/library - DocumentRoot /var/www/library/opac/html - Alias /images/ "/var/www/library/opac/html/images/" - ScriptAlias /cgi-bin/opac/ "/var/www/library/opac/cgi-bin/" - SetEnv PERL5LIB "/var/www/library/modules" - ErrorLog /var/log/httpd/opac-error_log - # - - AllowOverride None - Options +Includes -FollowSymLinks -Indexes - AddHandler server-parsed .html - - - - -Read your web server docs for more information about how Server Side -Includes work. - - - diff --git a/misc/info/LICENSE b/misc/info/LICENSE deleted file mode 100644 index 60549be514..0000000000 --- a/misc/info/LICENSE +++ /dev/null @@ -1,340 +0,0 @@ - GNU GENERAL PUBLIC LICENSE - Version 2, June 1991 - - Copyright (C) 1989, 1991 Free Software Foundation, Inc. - 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -License is intended to guarantee your freedom to share and change free -software--to make sure the software is free for all its users. This -General Public License applies to most of the Free Software -Foundation's software and to any other program whose authors commit to -using it. (Some other Free Software Foundation software is covered by -the GNU Library General Public License instead.) You can apply it to -your programs, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -this service if you wish), that you receive source code or can get it -if you want it, that you can change the software or use pieces of it -in new free programs; and that you know you can do these things. - - To protect your rights, we need to make restrictions that forbid -anyone to deny you these rights or to ask you to surrender the rights. -These restrictions translate to certain responsibilities for you if you -distribute copies of the software, or if you modify it. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must give the recipients all the rights that -you have. You must make sure that they, too, receive or can get the -source code. And you must show them these terms so they know their -rights. - - We protect your rights with two steps: (1) copyright the software, and -(2) offer you this license which gives you legal permission to copy, -distribute and/or modify the software. - - Also, for each author's protection and ours, we want to make certain -that everyone understands that there is no warranty for this free -software. If the software is modified by someone else and passed on, we -want its recipients to know that what they have is not the original, so -that any problems introduced by others will not reflect on the original -authors' reputations. - - Finally, any free program is threatened constantly by software -patents. We wish to avoid the danger that redistributors of a free -program will individually obtain patent licenses, in effect making the -program proprietary. To prevent this, we have made it clear that any -patent must be licensed for everyone's free use or not licensed at all. - - The precise terms and conditions for copying, distribution and -modification follow. - - GNU GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License applies to any program or other work which contains -a notice placed by the copyright holder saying it may be distributed -under the terms of this General Public License. The "Program", below, -refers to any such program or work, and a "work based on the Program" -means either the Program or any derivative work under copyright law: -that is to say, a work containing the Program or a portion of it, -either verbatim or with modifications and/or translated into another -language. (Hereinafter, translation is included without limitation in -the term "modification".) Each licensee is addressed as "you". - -Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running the Program is not restricted, and the output from the Program -is covered only if its contents constitute a work based on the -Program (independent of having been made by running the Program). -Whether that is true depends on what the Program does. - - 1. You may copy and distribute verbatim copies of the Program's -source code as you receive it, in any medium, provided that you -conspicuously and appropriately publish on each copy an appropriate -copyright notice and disclaimer of warranty; keep intact all the -notices that refer to this License and to the absence of any warranty; -and give any other recipients of the Program a copy of this License -along with the Program. - -You may charge a fee for the physical act of transferring a copy, and -you may at your option offer warranty protection in exchange for a fee. - - 2. You may modify your copy or copies of the Program or any portion -of it, thus forming a work based on the Program, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) You must cause the modified files to carry prominent notices - stating that you changed the files and the date of any change. - - b) You must cause any work that you distribute or publish, that in - whole or in part contains or is derived from the Program or any - part thereof, to be licensed as a whole at no charge to all third - parties under the terms of this License. - - c) If the modified program normally reads commands interactively - when run, you must cause it, when started running for such - interactive use in the most ordinary way, to print or display an - announcement including an appropriate copyright notice and a - notice that there is no warranty (or else, saying that you provide - a warranty) and that users may redistribute the program under - these conditions, and telling the user how to view a copy of this - License. (Exception: if the Program itself is interactive but - does not normally print such an announcement, your work based on - the Program is not required to print an announcement.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Program, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Program, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Program. - -In addition, mere aggregation of another work not based on the Program -with the Program (or with a work based on the Program) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may copy and distribute the Program (or a work based on it, -under Section 2) in object code or executable form under the terms of -Sections 1 and 2 above provided that you also do one of the following: - - a) Accompany it with the complete corresponding machine-readable - source code, which must be distributed under the terms of Sections - 1 and 2 above on a medium customarily used for software interchange; or, - - b) Accompany it with a written offer, valid for at least three - years, to give any third party, for a charge no more than your - cost of physically performing source distribution, a complete - machine-readable copy of the corresponding source code, to be - distributed under the terms of Sections 1 and 2 above on a medium - customarily used for software interchange; or, - - c) Accompany it with the information you received as to the offer - to distribute corresponding source code. (This alternative is - allowed only for noncommercial distribution and only if you - received the program in object code or executable form with such - an offer, in accord with Subsection b above.) - -The source code for a work means the preferred form of the work for -making modifications to it. For an executable work, complete source -code means all the source code for all modules it contains, plus any -associated interface definition files, plus the scripts used to -control compilation and installation of the executable. However, as a -special exception, the source code distributed need not include -anything that is normally distributed (in either source or binary -form) with the major components (compiler, kernel, and so on) of the -operating system on which the executable runs, unless that component -itself accompanies the executable. - -If distribution of executable or object code is made by offering -access to copy from a designated place, then offering equivalent -access to copy the source code from the same place counts as -distribution of the source code, even though third parties are not -compelled to copy the source along with the object code. - - 4. You may not copy, modify, sublicense, or distribute the Program -except as expressly provided under this License. Any attempt -otherwise to copy, modify, sublicense or distribute the Program is -void, and will automatically terminate your rights under this License. -However, parties who have received copies, or rights, from you under -this License will not have their licenses terminated so long as such -parties remain in full compliance. - - 5. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Program or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Program (or any work based on the -Program), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Program or works based on it. - - 6. Each time you redistribute the Program (or any work based on the -Program), the recipient automatically receives a license from the -original licensor to copy, distribute or modify the Program subject to -these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties to -this License. - - 7. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Program at all. For example, if a patent -license would not permit royalty-free redistribution of the Program by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Program. - -If any portion of this section is held invalid or unenforceable under -any particular circumstance, the balance of the section is intended to -apply and the section as a whole is intended to apply in other -circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system, which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 8. If the distribution and/or use of the Program is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Program under this License -may add an explicit geographical distribution limitation excluding -those countries, so that distribution is permitted only in or among -countries not thus excluded. In such case, this License incorporates -the limitation as if written in the body of this License. - - 9. The Free Software Foundation may publish revised and/or new versions -of the General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - -Each version is given a distinguishing version number. If the Program -specifies a version number of this License which applies to it and "any -later version", you have the option of following the terms and conditions -either of that version or of any later version published by the Free -Software Foundation. If the Program does not specify a version number of -this License, you may choose any version ever published by the Free Software -Foundation. - - 10. If you wish to incorporate parts of the Program into other free -programs whose distribution conditions are different, write to the author -to ask for permission. For software which is copyrighted by the Free -Software Foundation, write to the Free Software Foundation; we sometimes -make exceptions for this. Our decision will be guided by the two goals -of preserving the free status of all derivatives of our free software and -of promoting the sharing and reuse of software generally. - - NO WARRANTY - - 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY -FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN -OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES -PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED -OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS -TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE -PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, -REPAIR OR CORRECTION. - - 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR -REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, -INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING -OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED -TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY -YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER -PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE -POSSIBILITY OF SUCH DAMAGES. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -convey the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - - Copyright (C) 19yy - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - - -Also add information on how to contact you by electronic and paper mail. - -If the program is interactive, make it output a short notice like this -when it starts in an interactive mode: - - Gnomovision version 69, Copyright (C) 19yy name of author - Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, the commands you use may -be called something other than `show w' and `show c'; they could even be -mouse-clicks or menu items--whatever suits your program. - -You should also get your employer (if you work as a programmer) or your -school, if any, to sign a "copyright disclaimer" for the program, if -necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the program - `Gnomovision' (which makes passes at compilers) written by James Hacker. - - , 1 April 1989 - Ty Coon, President of Vice - -This General Public License does not permit incorporating your program into -proprietary programs. If your program is a subroutine library, you may -consider it more useful to permit linking proprietary applications with the -library. If this is what you want to do, use the GNU Library General -Public License instead of this License.