South have a already know issue  about no update permissions of added models. The common fix is run manage.py syncdb –all, Django Extensions  app also have a management command called update_permissions what is very usefull and also do the job.
But, any of us want to remember about that every time, so to automatize permissions creation I ‘copied’ idea of Django Extensions update_permissions command and put it to a method connect to a post_migrate  South signal. This do the job every time a app is migrated and with time can be extended to remove permissions also . The code use built in Django features.
Here is the code, I put it in my project/__init__.py: