Package Installer
Attached to this post is a small extension which is really just a proof of concept. To install it, do the regular routine: unzip and install files into corresponding locations. This is what we always do to install extension in BlogEngine. It is not hard, but requires you to have FTP client, opened port for FTP connection and, most importantly, you must have some basic administration skills. As I said nothing extra ordinary here, but still – we should not assume casual blogger comfortable doing all this little tricks. It’s a good thing most of BE users are also .NET developers ;)
Here is what this extension does: it let you upload zip files, then extract and install them into corresponding locations. You’ll have to follow convention for installer to understand what goes where. For example, extension itself (.cs file) should be in the app_code/extensions folder and app_code has to be in the root of your archive etc. And obviously you’ll need ASP.NET have write permissions on directories where your files will be copied. With these requirements met, go to your site and navigate to admin/extensions, locate PackageInstaller in the list and click “edit”. Use provided form to upload any extension packaged into zip archive and installer will take care of the rest.
Sure this little toy is not a big deal by itself. But if it proves to work well, it opens up some interesting possibilities. Consider this scenario. You wrote an extension (of any kind, themes and widgets are not different) and want to share it with the world. So you go to admin panel on your blog and navigate to “extensions” tab and next to the list of installed extensions there is sub-tab called “publish” where you can fill up and submit a form describing your extension and where to find a package. And another sub-tab called “find more” where you can browse extensions published by others and install them with a button click. Add to the mix reviews, ratings, download counts etc – and it gets even better. I think it has a potential.