Das Paket kann so nicht funzen.
Kurze Erklärung:
Die Ordner web & sql sowie die Dateien sql_tables & (in diesem Fall) joomla müssen in der obersten Ebene des Archivs zu finden sein.
Ein übergeordneter Ordner "joomla" funkioniert nicht.
Das Shell-Script muss muss der Software angepasst werden.
Es bringt nichts, wenn du eine configuration.php erstellst, die den Inhalt einer phpbb-config.php hat.
So sollte die in deinem Fall aussehen:
Code:
#!/bin/sh
#
# Do not make changes to this static vars
#
type=$1
sw_software_db=$2
sw_software_prefix=$3
sw_database=$4
sw_database_user=$5
sw_database_tmp_pwd=$6
dmn_name=$7
sw_dest_path=$8
sw_pfad=$9
db_tables="sql_tables"
#
# This is the place for dynamic vars
#
config_file="configuration.php"
pfad=${sw_pfad:7}
email="webmaster@$dmn_name"
config="config"
new_config=$sw_software_prefix$config
users="users"
new_users=$sw_software_prefix$users
#
# install/delete
#
case "$type" in
install)
cat > $sw_dest_path/$config_file << "EOF"
<?php
class JConfig {
/* Site Settings */
var $offline = '0';
var $offline_message = 'Diese Website ist zurzeit im Wartungsmodus.<br /> Bitte kommen Sie später wieder.';
var $sitename = 'ispCP-Joomla';
var $editor = 'tinymce';
var $list_limit = '20';
var $legacy = '0';
/* Debug Settings */
var $debug = '0';
var $debug_lang = '0';
/* Database Settings */
var $dbtype = 'mysql';
var $host = 'localhost';
/* Server Settings */
var $live_site = '';
var $secret = 'XBg1HJl5b8wYpE1d';
var $gzip = '0';
var $error_reporting = '-1';
var $helpurl = 'http://help.joomla.org';
var $xmlrpc_server = '0';
var $ftp_host = '127.0.0.1';
var $ftp_port = '21';
var $ftp_user = '';
var $ftp_pass = '';
var $ftp_root = '';
var $ftp_enable = '0';
/* Locale Settings */
var $offset = '0';
var $offset_user = '0';
/* Mail Settings */
var $mailer = 'mail';
var $fromname = 'ispCP-Joomla';
var $sendmail = '/usr/sbin/sendmail';
var $smtpauth = '0';
var $smtpuser = '';
var $smtppass = '';
var $smtphost = 'localhost';
/* Cache Settings */
var $caching = '0';
var $cachetime = '15';
var $cache_handler = 'file';
/* Meta Settings */
var $MetaDesc = 'Joomla! - dynamische Portal-Engine und Content-Management-System';
var $MetaKeys = 'joomla, Joomla';
var $MetaTitle = '1';
var $MetaAuthor = '1';
/* SEO Settings */
var $sef = '0';
var $sef_rewrite = '0';
var $sef_suffix = '0';
/* Feed Settings */
var $feed_limit = 10;
/* Session Setting */
var $lifetime = '15';
var $session_handler = 'database';
}
?>
EOF
sed -i "15 a\\var \$dbprefix = '$sw_software_prefix';" $sw_dest_path/$config_file
sed -i "15 a\\var \$db = '$sw_database';" $sw_dest_path/$config_file
sed -i "15 a\\var \$password = '$sw_database_tmp_pwd';" $sw_dest_path/$config_file
sed -i "15 a\\var \$user = '$sw_database_user';" $sw_dest_path/$config_file
sed -i "37 a\\var \$mailfrom = '$email';" $sw_dest_path/$config_file
sed -i "59 a\\var \$tmp_path = '$sw_dest_path/tmp';" $sw_dest_path/$config_file
sed -i "59 a\\var \$log_path = '$sw_dest_path/logs';" $sw_dest_path/$config_file
mysql -u$sw_database_user -p$sw_database_tmp_pwd $sw_database < ./sql/sql.sql
exec 4<$db_tables
while read -u 4 table; do
echo "ALTER TABLE $table RENAME AS $sw_software_prefix$table" | mysql -u$sw_database_user -p$sw_database_tmp_pwd $sw_database
done
#### Hier müssen die DB-Änderungen hin... ####
#### Benutzerpasswort, evtl. Pfade usw. ####
;;
delete)
exec 4<$db_tables
while read -u 4 table; do
echo "DROP TABLE IF EXISTS $sw_software_prefix$table" | mysql -u$sw_database_user -p$sw_database_tmp_pwd $sw_database
done
;;
*)
exit 0
;;
esac
exit 0
Da jede Software individuelle Anpassungen benötigt, kannst du nicht einfach ein Script 1:1 übernehmen.
Das ist im Übrigen der einzige Grund, weshalb es das Shell-Script gibt. Ich hab keine Ahnung, wie ich den Prozess ansonsten automatisieren kann.
Edit: Die Datei sql_tables benötigt eine Leerzeile am Ende.
Edit2:
In der sql.sql würde ich folgendes entfernen:
INSERT INTO `session` <-- den ganzen Insert-Block. Du schleppst nur unnötige Daten rum.
INSERT INTO `users` <-- die E-Mail Adresse und das Passwort des Administrators. Die fügst du noch über das Shell-Script ein.