title: What is the difference between an 'sdist' .tar.gz distribution and an python egg?
body: <p>I am a bit confused. There seem to be two different kind of Python packages, source distributions (setup.py sdist) and egg distributions (setup.py bdist_egg).</p>
  
  <p>Both seem to be just archives with the same data, the python source files. One difference is that <code>pip</code>, the most recommended package manager, is not able to install eggs.</p>
  
  <p>What is the difference between the two and what is 'the' way to do distribute my packages?</p>
  
  <p>(Note, I am not wanting to distribute my packages through PyPI, but I want to use a package manager that fetches my dependencies from PyPI)</p>