Relatedly, what's the correct way to install Python 3 on a Linux server (debian based) so I can try this? while keeping Python 2.x.
The last time I tried doing that I ended up in some weird quagmire with the LD_LIBRARY_PATH being messed up. There must be a standard way to install it?
In that case, I wouldn't worry about installing for all users. I'd build from source and configure with the --prefix argument. Then I'd start Django using that specific Python.
Or, since Django on Python3 doesn't seem production ready yet, I'd "upgrade" to Debian testing or unstable, and hope that by the time Django became production ready Py3.2 was in Debian stable.
Debian and Ubuntu have their own way of managing Python libraries and paths and I can't say I understand it. The modules are stored all over the place, with 'site-packages' being in one place, another called 'distro-packages' (if memory doesn't fail me) somewhere else, and user installed packages in yet another directory. It's hell.
It is absolute confusion, and when you think you've got it, they change it again. I suppose it makes sense to someone somewhere, who probably thinks they're being helpful by inventing all these complicated schemes.
The last time I tried doing that I ended up in some weird quagmire with the LD_LIBRARY_PATH being messed up. There must be a standard way to install it?