
On 12/01/2009 05:35 AM, Chris Morgan wrote:
I've polluted two threads just recently with this, so I'll start a fresh one before they deviate too much more from their original topics.
(A bit of) background information: currently we use simple PHP scripts for www.inkscape.org http://www.inkscape.org, Planet http://www.planetplanet.org/ for planet.inkscape.org http://planet.inkscape.org and MediaWiki http://mediawiki.org for wiki.inkscape.org http://wiki.inkscape.org. Plans have been underway for moving www.inkscape.org http://www.inkscape.org and probably wiki.inkscape.org http://wiki.inkscape.org to Drupal http://drupal.org (and possibly also merging inkscapeforum.com http://inkscapeforum.com into it as well). However, with the (renewal?) of discussion of an extensions repository http://wiki.inkscape.org/wiki/index.php/ExtensionsRepository, I suggested Django http://djangoproject.com for the framework to use for it. Then I thought about the migration of www. and wiki. and thought that Django would really be a better solution than Drupal. (Not sure about the forum yet, having looked at it now I think it's probably best kept as it is rather than migrated to anything.)
The main things we need to be sure of (the reasons for switching to a CMS in the first place) are:
- Ease of use for contributors - Ease of maintenance (probably the biggest drawback to Django - it requires some programming knowledge, while Drupal doesn't) - Some ease of styling ability
Can you comment on these things?
I've been wondering about where we want to have it though; formerly we've had a repository on SourceForge and a post-commit hook (I think, possibly also it was just a regular synchronisation?) to push the content to the OSUOSL server. It seems to me it'd make sense to host the actual repository on the OSUOSL server. Git is installed there, could we use that? Or would we want to put it into a Bazaar repository and thus need to put Bazaar on it if it isn't? Or perhaps there's some other way we could mirror it? Anyone with expert knowledge in this area?
I should think it would be simple enough to get a script to pull it from a Bazaar repo. I think it's important to keep all of the Inkscape stuff together, that way people won't have to know and use different VCSes just for Inkscape. Is it possible to get bzr on OSUOSL?
As for content migration, how would this be done (especially considering the wiki)? I assume the content files could easily be parsed to work with Django.
I think this is the biggest thing in Django's favour over Drupal. With Drupal, we'd need to migrate the main site content in quite a messy way, whereas with Django there's no need really to change how it is at all (it's file-based, you can work with that easily in Django). For the Wiki it would have to be turned into HTML for Drupal - and most people in the Inkscape community don't like working in HTML, they find the Wiki format much simpler. With py-wikimarkup http://github.com/dcramer/py-wikimarkup we should be able to continue to use the Wiki /content/ as it is; as for the database schema, I have no idea what that's like with MediaWiki; we may be able to work with it as is, we might need to migrate it in some way). Personally I think I'd be a proponent of the following workflow for the wiki.inkscape.org http://wiki.inkscape.org and www.inkscape.org http://www.inkscape.org:
* All content is stored in the file-system (this would mean extracting it out of the database, in the case of the Wiki; a database->files script for that would be no harder than a database->database script)
Right - shouldn't be too difficult...
* Content can then be updated through two or three methods: o the website o the version control system
We'd have to determine which method to use, wouldn't we? Otherwise we'd have two differing sets of data, unless any update by the Django backend would also commit to the repo. Hmm...is that possible?
o possibly also vi (or whatever your preference is) over SSH (probably not the best way of doing it as you'd have to handle committing with the version control)
planet.inkscape.org http://planet.inkscape.org could be replaced quickly with Feedjack http://www.feedjack.org/ (or more likely the newer continuation of it django-planet http://github.com/matagus/django-planet). The hardest step would probably be making sure we keep the old content and migrating it.
Long emails like this are always fragmented. I hope you get what you were looking for out of it in the way of information as to what I'm proposing.
Please think and give opinions :-)
I think it sounds fine, so long as we've got people who are able to manage the process. It would be good to have all (or most) of the website content managed by one backend which is really capable of doing it. How do you feel about it? I think you'd be the one to do most of the difficult stuff, unless someone else with appropriate knowledge steps up.
JF