# Contents:

- Release Notes
- Install Instructions (New Systems)
- Updating from a previous version of OpenBiblio

# Release Notes:

OpenBiblio 0.6.0 introduces a new reports and printing system. This new system avoids the privilege escalation security hole in the old reports system.

See the ChangeLog for more details.

OpenBiblio test suite ran successfully on the following configurations:

> Operating System: | Ubuntu 6.06.1 (GNU/Linux) | Ubuntu 6.06.1 (GNU/Linux) | Ubuntu 6.06.1 (GNU/Linux)
> PHP Version: | 5.1.2 | 5.1.2 | 5.1.2
> Web Server: | lighttpd/1.4.8 | lighttpd/1.4.8 | lighttpd/1.4.8
> MySql Version: | 5.0.22 | 5.0.22 | 4.0.12
> Browser: | Firefox 1.5.0.8 | MS Internet Explorer 6.0.2800.1106 (under Wine) | Firefox 1.5.0.8

# Install Instructions (New Systems):

### Requirements

- PHP version 4.2.0 or higher and a web server which supports it
- MySQL version 4.0.12 or higher
- A relatively modern web browser. Versions of Internet Explorer before 6.0 may have problems with PDF files generated by OpenBiblio. Users of Netscape 4.x and earlier may suffer from appearance problems.

### Procedure

1. Install a web server such as Apache that is compatible with PHP. If you install Apache, get familiar with starting and stopping your Apache Web Server. If you are running Windows 95 or Windows 98 there will be "Start Apache" and "Stop Apache" icons that will help you start and stop your web server. You may want to consider adding the "Start Apache" icon to your startup folder. If you are running NT or Windows 2000 you can add Apache as a service which will be running, even if you are logged off. If you are running Linux your Apache server should be packaged with your Linux installation and will start when you start Linux.
2. Add PHP to your web server as a CGI or a module. If you are using Apache 2.0, I would highly recommend that you install PHP as a module instead of a cgi application. In my experience the Apache PHP module performed over 4 times faster than the cgi PHP. See Example 3-9. PHP and Apache 2.0 as Module in the PHP Manual for more info on how to install PHP as a module.

   OpenBiblio uses session data. Therefore, you will need to make sure PHP sessions are turned on. Be sure to create a directory for your session data on your server and specify the session.save_path in your php.ini file. The default php.ini sets session.save_path to "/tmp". Therefore, you have to create a directory called c:/tmp (for Windows) users. However, I usually create a more descriptive name inside my PHP directory and then change my php.ini file to match it.

   Example php.ini directive:

       session.save_path = d:\PHP\sessiondata

   See section XCIII. Session handling functions in the PHP manual for more details on PHP sessions.

3. Install the MySQL database from http://www.mysql.com/. Get familiar with starting and stopping your MySQL Server. See Starting MySQL on Windows 95 or Windows 98 for more information.
   If you are running NT or Windows 2000, setup MySQL as a service so it starts whenever the machine powers up. See Starting MySQL on Windows NT or Windows 2000 for more information on starting MySQL as a service.
   If you are running Linux, MySQL should be packaged with your Linux installation and will start when you start Linux.
4. Get familiar with logging into MySQL with your admin account within a DOS prompt window. You can use the following command sequence as a test.

   >     C:\>c:\mysql\bin\mysql -uroot mysql
   >     Enter password: *********
   >     Welcome to the MySQL monitor.  Commands end with ; or \g.
   >     Your MySQL connection id is 8 to server version: 3.23.26-beta

   >     Type 'help;' or '\h' for help. Type '\c' to clear the buffer

   >     mysql> show databases;
   >     +--------------+
   >     | Database     |
   >     +--------------+
   >     | mysql        |
   >     +--------------+
   >     6 rows in set (0.00 sec)

   >     mysql> exit
   >     Bye

   >     C:\>

5. Create an OpenBiblio database. To do this, log into MySQL with your admin account and run the following SQL command.

   >     mysql> create database OpenBiblio;

   > To check to make sure the OpenBiblio database was created properly, run the following command.

   >     mysql> show databases;
   >     +--------------+
   >     | Database     |
   >     +--------------+
   >     | mysql        |
   >     | OpenBiblio   |
   >     +--------------+

6. Create an OpenBiblio database user. To do this, login to MySQL under the admin userid and run the following SQL command, substituting obiblio_user and obiblio_password with the userid and password of your choice.

   >     mysql> grant all privileges on OpenBiblio.* to obiblio_user@localhost
   >         -> identified by 'obiblio_password';

7. Verify your OpenBiblio database and user by logging into the new MySQL database under the new user.

   >     C:\mysql\bin\mysql -uobiblio_user -pobiblio_password OpenBiblio

8. Copy the openbiblio directory and all of its contents into your web server's htdocs root or any subdirectory within the htdocs root.
9. Edit the database_constants.php file (located in the main openbiblio directory) with the text editor of your choice. Change the username and password to match the new MySQL user and password that you created in the previous steps.
10. Create the OpenBiblio database tables. To do this run the install php script located at http://localhost/openbiblio/install/index.php, assuming you placed the openbiblio directory in the root htdocs directory.
11. For security: Remove the openbiblio/install directory completely to prevent unauthorized use of install or upgrade tools.
12. For security: Verify that the `display_errors` setting in php.ini is 'Off' to prevent unintended information disclosure.
13. Access your new library automation system at http://localhost/openbiblio/index.php, assuming you placed the openbiblio directory in the root htdocs directory. Enter "admin" for both the userid and password whenever you are prompted to signon. You can change the admin password from the "Admin" tab -> staff list, where you can also add more library staff members.

# Updating from a previous version of OpenBiblio:

IMPORTANT: Updates from OpenBiblio.de versions (e.g. 0.5.1.7) must be performed manually at the moment. The automatic upgrade script does not know how to handle the database format differences.

1. Rename your old openbiblio installation directory so that you don't lose its contents. We'll call the old directory openbiblio-old.
2. Copy the new openbiblio directory and all of its contents into the directory where the old openbiblio installation was.
3. Copy the database_constants.php file from the openbiblio-old directory into the new openbiblio directory, replacing the database_constants.php file there.
4. Backup your database. See your MySQL documentation for instructions.
5. Update your OpenBiblio database tables by using the conversion tool located at http://localhost/openbiblio/install/index.php, assuming you placed the openbiblio directory in the root htdocs directory.
6. For security: Remove the openbiblio/install directory completely to prevent unauthorized use of install or upgrade tools.
7. For security: Verify that the `display_errors` setting in php.ini is 'Off' to prevent unintended information disclosure.