SLiMS

Senayan Library Management System

SLiMS (Senayan Library Management System) is an open-source library management software designed to simplify the management of book collections, memberships, loans, and returns in libraries. Developed in Indonesia, SLiMS supports various international library standards such as MARC (Machine-Readable Cataloging) and Z39.50.

SLiMS comes with comprehensive features like OPAC (Online Public Access Catalog), membership management, catalog management, borrowing statistics, and multi-language support. This software is suitable for school libraries, universities, and other public institutions because it is easy to install and configure. With an active user community, SLiMS continues to be updated and developed to meet the needs of modern digital-based libraries.

1. System Requirements

System requirements for SLiMS 9 Bulian:

  • PHP 8.1+
  • Apache
  • MySQL 5.7+ or MariaDB 10.3+

Before starting the deployment, prepare the following:

  • A VPS or server with Ubuntu 24.04 OS
  • SSH access to the server
  • A domain already pointed to the server

2. Server Preparation

Update the system.

sudo apt update
sudo apt upgrade -y

Install Apache

sudo apt install apache2 -y

Install MariaDB

sudo apt install mariadb-server -y

Install the PPA ondrej/php repository.

sudo add-apt-repository ppa:ondrej/php -y
sudo apt update 
sudo apt upgrade -y

Install PHP 8.3 and the required extensions.

sudo apt install libapache2-mod-php8.3 php8.3 php8.3-cli \
  php8.3-common php8.3-mbstring php8.3-gd php8.3-intl \
  php8.3-xml php8.3-mysql php8.3-zip php8.3-curl \
  php8.3-tidy php8.3-imagick php8.3-bcmath php8.3-dev \
  php-pear libyaz-dev yaz -y	

Install the yaz extension.

sudo pecl install yaz	

Example of the output displayed if the yaz library is successfully installed.

Build process completed successfully
Installing '/usr/lib/php/20230831/yaz.so'
install ok: channel://pecl.php.net/yaz-1.2.4
configuration option "php_ini" is not set to php.ini location
You should add "extension=yaz.so" to php.ini

Open the php.ini configuration file.

sudo nano /etc/php/8.3/apache2/php.ini	

Add the yaz extension.

...	
;extension=ldap
extension=yaz.so
;extension=curl
...

Restart apache2

sudo systemctl restart apache2	
sudo systemctl status apache2	

3. Create a Database

Log in to MariaDB:

sudo mysql

Create a database and user.

CREATE DATABASE slims;
GRANT ALL PRIVILEGES ON slims.* TO 'slims'@'localhost' IDENTIFIED BY 'rahasia';
FLUSH PRIVILEGES;
exit

4. Download SLiMS

Download SLiMS v9 from GitHub:

wget https://github.com/slims/slims9_bulian/releases/download/v9.6.1/slims9_bulian-9.6.1.tar.gz  

Extract SLiMS:

tar xzvf slims9_bulian-9.6.1.tar.gz  

Move the SLiMS directory to /var/www:

sudo mv slims9_bulian-9.6.1 /var/www/slims.universitas.ac.id

Change the user and group of the SLiMS directory:

sudo chown -R www-data:www-data /var/www/slims.universitas.ac.id

5. Apache Configuration

Create a virtual host configuration:

sudo nano /etc/apache2/sites-available/slims.universitas.ac.id.conf

Enter the configuration.

<VirtualHost *:80>
    ServerName slims.universitas.ac.id
    DocumentRoot /var/www/slims.universitas.ac.id

    <Directory /var/www/slims.universitas.ac.id>
        Options -Indexes +FollowSymLinks +MultiViews
        AllowOverride All
        Require all granted
    </Directory>

    ErrorLog /var/log/apache2/slims.universitas.ac.id_error.log
    CustomLog /var/log/apache2/slims.universitas.ac.id_requests.log combined
</VirtualHost>  	

Enable the virtual host.

sudo a2ensite slims.universitas.ac.id
sudo systemctl restart apache2	

6. Install SSL

Install certbot

sudo apt install certbot python3-certbot-apache -y	

Request an SSL certificate.

sudo certbot --non-interactive \
  -m [email protected] \
  --agree-tos \
  --no-eff-email \
  --apache -d slims.universitas.ac.id \
  --redirect	

7. Install SLiMS

Access https://slims.universitas.ac.id to install SLiMS:

  1. Click Get Started.
  2. Check the System requirements; if all are met, click Next.
  3. Click Install SLiMS.
  4. Enter the database name, username, and password. Click Test Connection. If successful, click Connection OK. Next.
  5. For Generate Sample Data, select Yes, please to generate sample data.
  6. For Super User profiles, enter the username and password. Then click Run the installation.

SLiMS installation is complete.
Delete the install directory:

sudo rm -rf /var/www/slims.universitas.ac.id/install	
  • Admin login URL: https://slims.universitas.ac.id/index.php?p=login
  • Member login URL: https://slims.universitas.ac.id/index.php?p=member