Installation

Pre-requisites

Before downloading and installing Roadkill, make sure you have the following requirements installed/enabled:
  • Some basic technical knowledge of Windows
  • ASP.NET MVC 3 (from http://www.asp.net/downloads)
  • IIS 7+ (although it will work with IIS Express and Cassini)
  • 64bit Windows for SQLite (see the note below for 32 bit)

You do not need a database server - you can use SQLite if you choose. SQL Server Compact is also supported, however a bug in NHibernate 3.2 means the current (1.3) version of Roadkill will not operate correctly.

Installing

Download the current version which is a ZIP file, and unzip it to a new folder. If you are planning to use Roadkill on your development machine or remote access to another machine, you will need to create an IIS site before installing - Roadkill does not do this for you in the wizard. There is a howto on this Microsoft page: http://support.microsoft.com/kb/323972.

Once that step is complete, copy/FTP the unzipped Roadkill files to your website root folder. Now open your site in your browser, for example: http://localhost/roadkill/

Roadkill has been designed to work from any virtual path, provided the path is configured as an application.

The installation wizard will then guide you through the installation step by step, and write your web.config settings at the end of the wizard. You can manually tweak your web.config settings if you prefer, guidance on the Roadkill settings can be found on the web.config page.

If your installation fails at any point, simply change the "installed=true" in the roadkill section of your web.config to "installed=false" to reset the installation.

installer.png

Using SQLite on Windows 32 bit

From Roadkill 1.4 onwards, the correct SQLite version is now copied to your /bin folder for you (64 bit or 32 bit binaries). This is done at the beginning of each installation, if you choose to switch to 32/64 bit mode for your website, you will need to copy the correct binary files (two .dll files), which can be found in the App_Data\SQLiteBinaries folder.

Common Issues

Web.config can't be written to

This is probably the commonest problem with the installer. If you hosting Roadkill on shared hosting, your control panel should be able to change these permissions to the web.config. However the application pool that Roadkill is running as should have enough permissions to write to the web.config.

If you are running Roadkill on your home/development machine then the simplest solution to the problem is to run the application pool as LOCALSYSTEM or LOCALSERVICE.

NHibernate exceptions at Finished stage

These are almost always caused by your connection string login details or a missing dependency (if you're using something other than SQL Server or SQLite). The stack trace you will see on the Finished page will give you full information of the problem, if you scroll down. You can also look at the event log if you have access to it.

Last edited Aug 6, 2012 at 5:11 PM by mrshrinkray, version 13

Comments

FrankV1971 Dec 5, 2012 at 12:38 PM 
You need to install http://system.data.sqlite.org/downloads/1.0.82.0/sqlite-netFx40-setup-bundle-x64-2010-1.0.82.0.exe to get the install running.

mrshrinkray Nov 22, 2012 at 9:44 AM 
@hstidsen that bug is being looked into, search for bug #92 on Bitbucket
@AlexOnASPDotNET Upgrade.txt files are included in each release
@Trapulo MVC runtime dlls are now included since version 1.4

hstidsen Oct 8, 2012 at 10:08 PM 
Had to wait for my webhost to upgrade my site to .net 4.0 so I could run RoadKill. They did that this morning and within 5 minutes I had completed the installation ... from my smartphone while waiting to donate blood. If that is not an easy-to-use installer I don´t know what is :)

...I am, however, wondering why it seems to always fail the last step once and then, when you redo it, complete the installation and work fine.

AlexOnASPDotNET Aug 1, 2012 at 12:19 PM 
What is the preferred way to update a RoadKill installation?

Trapulo Jul 31, 2012 at 2:16 PM 
Why MVC runtime dlls are not included? Setup on a production server is an hell... :(