On Tue, Mar 8, 2011 at 9:50 PM, Zygmunt Krynickiu zkrynicki@ubuntu.com wrote:
I'd like to define and document the recommended best practice of packaging Django 1.0+ (and especially 1.3) web applications and projects for Debian. I started this on the Debian wiki at http://wiki.debian.org/DjangoPackagingDraft
Some things I (as a sysadmin user of Debian) would like to suggest for all web apps, django based or not:
Use debconf to ask if the sysadmin wants to setup a site and then ask for enough detail to do so. The package should ship a script that can be called either manually by the sysadmin or automatically by the maintainer scripts (using debconf answers) to setup a site or a sub-path of a site.
Database (with South etc) and configuration upgrades (with Config::Model or similar) are great, please do them as automatically as possible after confirmation using debconf and or provide scripts for the sysadmin to do them.
Data: I like to differentiate between data supporting the package and data that belongs to the sysadmin/site. IMO the former belongs in /var somewhere and the latter at a path chosen by the sysadmin. I don't think this is gotten right by much software, including by all database packages.