diff -r edac75d0b435 -r c0b5afb89088 update_config_0.4.x-0.5.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/update_config_0.4.x-0.5.py Mon Aug 10 03:29:52 2009 +0000 @@ -0,0 +1,49 @@ +#!/usr/bin/env python +# -*- coding: UTF-8 -*- +# Copyright (c) 2008 - 2009, VEB IT +# See COPYING for distribution information. + +import sys +from ConfigParser import ConfigParser +from shutil import copy2 + +cf = '/usr/local/etc/vmm.cfg' +fh = file(cf, 'r') +cp = ConfigParser() +cp.readfp(fh) +fh.close() + +if not cp.has_option('maildir', 'name') or not cp.has_option('maildir', + 'folders') or cp.has_option('maildir', 'folder'): + copy2(cf, cf+'.bak_upd_0.4.x-0.5') + fh = file(cf, 'w') + if not cp.has_option('maildir', 'name'): + if cp.has_option('maildir', 'folder'): + cp.set('maildir', 'name', cp.get('maildir', 'folder')) + cp.remove_option('maildir', 'folder') + else: + cp.set('maildir', 'name', 'Maildir') + if not cp.has_option('maildir', 'folders'): + cp.set('maildir', 'folders', 'Drafts:Sent:Templates:Trash') + if cp.has_option('maildir', 'folder'): + cp.remove_option('maildir', 'folder') + cp.write(fh) + fh.close() + +if not cp.has_option('bin', 'postconf'): + fh = file(cf, 'w') + try: + postconf = sys.argv[1].strip() + if len(postconf): + cp.set('bin', 'postconf', postconf) + else: # possible? + cp.set('bin', 'postconf', '/usr/sbin/postconf') + except IndexError: + cp.set('bin', 'postconf', '/usr/sbin/postconf') + cp.write(fh) + fh.close() + print + print "Please have a look at your %s" %cf + print "and verify the value from option 'postconf' in section 'bin'." + print +