Radiant is designed to be run in shared hosting or multi-site scenarios,
aka instance mode. Thus, the majority of the Radiant code lives in the
gem directory when not frozen. This allows each site or instance the
ability to have the minimum amount of code and configuration necessary
and avoid duplication. However, just like with Rails, there are two
primary reasons to ‘freeze’ Radiant:
- To set constant the version of Radiant you are using, either via the
gem or edge, to a version that is solid and works for you.
- To have the absolute latest code from the development repository,
i.e. “be on the edge”.
And yes, all it does is dump a bunch of files in vendor/radiant. There
is some duplication, but the files that are duplicated probably never
run from vendor/radiant (I’m thinking dispatch scripts, the boot and
environment scripts, etc), only from the root of your instance.
Regarding your site-specific assets – images, CSS files, etc – place
them in your public/ directory. The vendor/radiant/public/ directory is
never touched by the web server. Place extensions in vendor/extensions,
Freezing edge is equivalent to an SVN checkout/export IFF you checkout
to the vendor/radiant directory. A straight checkout is called
‘application mode’ and really should be used for core development