#!/bin/bash
umask 022

grep -q '^friendly_name' /etc/media.conf
if [ $? -eq 0 ]; then
    sed -i "/friendly_name/cfriendly_name = $(hostname)(MEDIA)"  /etc/media.conf
else
    echo "friendly_name = $(hostname)(MEDIA)" >> /etc/media.conf
fi

vol_dir=`mainvol`
if [ "xxx${vol_dir}" = "xxx" ]; then
        echo "No main vol dir"
        exit
fi

database=${vol_dir}/@system/media/pgsql

logdir=/var/log/mediadb
debug=">/dev/null 2>&1"

service_init() {
        #init  user & group
        local ret=$(getent passwd postgres)
        [ -z "$ret" ] && useradd -U postgres
        if [ ! -d $database ]; then
                mkdir -p $database
        fi
        chmod -R 755 `dirname $database`
        chown -R postgres:postgres $database
        chmod -R 750 $database
        if [ ! -f $database/PG_VERSION ]; then
                echo "Initializing postgresql data base..."
                su - postgres -c "/usr/bin/pg_ctl initdb -D $database"
                su - postgres -c ""
        fi
        if [ ! -d $logdir ]; then
                mkdir $logdir
        fi
        [ ! -f $logdir/mediadb.log ] && touch $logdir/mediadb.log
        chown -R postgres:postgres $logdir
        chmod -R 770 $logdir
        sed -i "/#listen_addresses/clisten_addresses = '*'" ${database}/postgresql.conf
}

service_init

echo "database=$database" > /etc/default/mediadb