title: How do I package a python application to make it pip-installable?
body: <p>I'm writing a django application in my spare time for a footy-tipping competition we're running at work. I figured I'd use this time wisely, and get up to speed on virtualenv, pip, packaging, django 1.3, and how to write an easily redistributable application. So far, so good.</p>
  
  <p>I'm up to the packaging part. A lot of the django apps on GitHub for instance are mostly bundled (roughly) the same way. I'll use <a href="https://github.com/pydanny/django-uni-form" rel="noreferrer">django-uni-forms</a> as an example.</p>
  
  <p>An assumption I'm making is that the <code>MANIFEST.in</code> and <code>setup.py</code> are the only required pieces that pip needs to do its job. Is that correct? What other components are necessary if my assumption is wrong?</p>
  
  <p>Are the required packaging files generally generated, or are they crafted by hand? Can dependencies be described and then installed also? My application depends on <code>django-uni-forms</code>, and I have it listed in a <code>requirements.txt</code> file within my app which I used to install the dependency; but is that something that the packaging system can take care of?</p>
  
  <p>What are the steps I need to follow to package my application in such a way that pip will be able to install it and any dependencies?</p>