Using RadiantCMS in 2020

After a very long time and being recently frustrated by using Wordpress for one of our sites, I was keen to go back and check how things were with RadiantCMS which had long been my go-to CMS for my work. I really liked how it worked. However, the rapid jumps in Rails versions at one time meant that Radiant found itself a bit left in the cold, and lost favour.

So, if you need to use Radiant CMS in 2020, this is what you really need to do.

You need Ruby 1.9.3

The first thing you need to know is that you can only use Ruby 1.9.3. Follow the installation instructions for your platform. If you’re using Windows, you can get it from the archives page for RubyInstaller – the last version is Ruby 1.9.3-p551

Install Radiant and Create a new Radiant Site

Once you have Ruby 1.9.3, you should be able to install the RadiantCMS gem.

e:\blog> gem install radiant

Next, you create a new Radiant site using the normal method on the command line.

e:\blog> radiant new_site

You will see a lot of running text as files are created in the new_site directory and eventually, you will find that things did not fully succeed. So, let’s handle the problems next.

Solving the Problems

There are a problems that are preventing you from starting to use RadiantCMS properly again. So, let’s handle these issues one by one!

HTTPS on Windows

For some reason, I got errors such as these on my Windows PC.

Fetching source index from https://rubygems.org/

Retrying fetcher due to error (2/4): Bundler::HTTPError Could not fetch specs from https://rubygems.org/
Retrying fetcher due to error (3/4): Bundler::HTTPError Could not fetch specs from https://rubygems.org/
Retrying fetcher due to error (4/4): Bundler::HTTPError Could not fetch specs from https://rubygems.org/
Could not fetch specs from https://rubygems.org/

I did look for a solution and also re-installed Ruby 1.9.3 on Windows. Unfortunately, the only solution that did work for me was to change the Gemfile to connect using HTTP.

Look for this line:

source 'https://rubygems.org' 

and change it to:

source 'http://rubygems.org' 

You will be able to make some progress and you will get some other issues when you run bundle install again but it is still progress.

Fixing the Gemfile: compass-rails

When you generate the new Radiant CMS site, you will see this warning on the console.

Your Gemfile lists the gem compass-rails (~> 1.0.3) more than once.

This is easily resolved by editing the Gemfile – the same gem is repeated on Lines 7 and 36. Just remove one of the 2 lines and this is handled.

Fixing the Gemfile – recent gems that work

It takes a lot of trial and error to find the versions of gems that will allow the bundle to be successfully installed due to the dependency on Ruby 1.9.3 and other dependencies that the gems themselves have. After doing that, I was able to determine that the versions that work are as follows:

gem "rake", "12.2.1"
gem "rdoc", "~> 4.3.0"
gem "mime-types", "~> 2.99.3"
gem "rack-cache", "~>1.2.0"

Add these to the Gemfile so that it picks up the correct versions of the gems

You should now be able to run bundle install and then get started as the instructions on the command line would have shown you:

1. Decide which database you want to use. SQLite is configured by default and
   the easiest way to get started. If you want to use another database:
   - Enable your preferred database adapter in the Gemfile
   - Run `bundle update`

2. Run `bundle exec rake production db:bootstrap` to initialize the database

Once you do this, you will be taken through the basic steps and you’ll be good to get started!

Optional: Lock the version of SQLite3

On Windows, I also did have some problem with setting up SQLite3. The bundle install gave me 1.3.13 but that did not work properly for me. Version 1.3.6 worked fine.

So, I changed the SQLite3 gem line to force it to 1.3.6 by doing:

#gem "sqlite3", "~> 1.3.5"
gem "sqlite3", "1.3.6"

Things worked fine then!

Optional: Fixing the Gemfile – force Ruby 1.9.3

You can force the Gemfile to define Ruby 1.9.3 as required. Just add the line below to the top of your Gemfile to force bundler to only run it with Ruby 1.9.3.

 ruby "1.9.3"

You’re ready!

Basically, at this point, things should work fine since the dependencies are all in place.

I did the following one last time to get the ball rolling again.

e:\blog> bundle update
...
e:\blog> bundle exec rake production db:bootstrap

It all ran succesfully and finally came to this:

Create the admin user (press enter for defaults).
Name (Administrator):
Username (admin):
Password (radiant):

Initializing configuration...........OK

Select a database template:
1. Empty
2. High Five!
3. Roasters (a coffee-themed blog / brochure)
4. Simple Blog
5. Styled Blog
[1-5]: 3

It did what it needed to get things ready and finally showed me this:

Your Radiant application is ready to use. Run `script/server -e production` to
start the server. Your site will then be running at http://localhost:3000

You can access the administrative interface at http://localhost:3000/admin

This is what success looks like.


The website looks like this since we chose the Roasters theme to have a prettier page.



Going to /admin brings up the login page.



Once in, you have the familiar adminsitration console to manage the content.


Final Notes

If you want to see a copy of what the final Gemfile and Gemfile.lock look for this site, you can head on over to the gists on this page: https://gist.github.com/mohits/c5a1fca5b9557496596fce346f6ef2cf

I have not tried all the features of the site – just bootstrapped it and it loads. So, shout out if things don’t work and I will try to get back and take a look at it.

comments powered by Disqus