Para o desenvolvimento de python, geralmente uso a combinação da configuração nix-shell e virtualenv .
% nix-shell -p pythonPackages.virtualenv postgresql
(nix-shell) % virtualenv env
(nix-shell) % ./env/bin/pip install psycopg2
A parte importante acima é você instala postgresql ao lado de virtualenv
Alguns pacotes, como o Pillow, fazem muitas suposições onde bibliotecas deveriam estar e você pode precisar usá-lo diretamente de pythonPackages .
Você também pode estar interessado em pypi2nix que pode converter seu arquivo requirements.txt em expressões nix. se você ficar preso a ele por favor ping me no irc, eu adoraria fazer o teste.