I mentioned elsewhere that I am working on updating the Install Script for Xoops and since I will be getting back to this in the next week or so depending on my progress for a major project for my class I wanted to throw this out there and see if anyone has any other ideas they would like to see incorporated.
I am redoing this script because I see that it seems like 90% of the newbie questions are related to problems with their install. No one has really spent the time to simplify the install process and we now have an install guide. My intent is to simplify this for the normal user while allowing the experienced user flexibility.
I have an SVN where I am keeping my lastest version stored. The link for that is...
http://sourceforge.net/projects/xoopinstall/At the time of this writing you will note that I haven't touched it in months. My time is opening up due to where I am at with my classes so I will be getting back to this.
Some of the changes...
Allow a fully automatic install from a configuration file.
multiple levels of install complexity currently to include:
Basic - this will install xoops without any need for input assuming the defaults work
Intermediate - Will ask for information on the install and perform everything for you
Expert - Will allow many more adjustments and will display the install similar to current. Basic and intermediate will show a progress indicator only.
I will use Ajax and Javascript to validate entries and to automate many things. I will also incorporate a help system to make having an install guide hopefully obsolete.
The current system makes extensive use of POST variables which makes it very slow and cumbersome. I will be simplifying it by making use of SESSION data where possible instead which should also make it quicker.
I will be separating a lot of the settings out to specific settings files to make customization easier and support unattended installs.
It appears a number of developers have made quick hacks on this to make it work and things are in disarray. I plan to clean them up and remove all dependencies on the xoops source code to make it stand alone. This includes support for multi language and multi theme.
I plan to change it to use PDO directly to access the database to support future use of other databases. It will look at the settings to see which databases to allow. In other words it will only use the PDO engine to access MySQL at this point but in the future it will be VERY simple to support other databases once the core does.
It will offer choices for databases, languages and themes if more than one exists in the install modes other than basic.
If anyone can think of anything else that would be nice to see in the install program let me know... Will be written for English for now. Once it is in RC I will ask for translations. Considered at prealpha stage at this point since it does not work yet.
Attending College working towards Bachelors in Software Engineering and Network Security.