While digging deeper into packaging the blog I've realised that there are more options to add to the admin page:
- the default timezone (required to take DST into account)
- SMTP server/account settings so that comment/webmention notifications can be sent
With this in mind, I decided to remove the theming options as they are a bit more frivolous and I don't want the admin page to grow too large.
I made some good progress on the setup process last night — you load the setup page and enter some initial details. The config file is created based on these, the database tables created and the options table populated with the base information. If successfully completed the admin page is then opened which deletes the setup page (to avoid the risk of overwriting) and allows you to add the remaining options.
I now need to finish sanitising the code and ensure it is all generic.