How to install which programs requires “sudo” in virtualenv?

I'm trying to install kivy, in the docs it says:

$ sudo apt-get install python-setuptools python-pygame python-opengl \ python-gst0.10 python-enchant gstreamer0.10-plugins-good cython python-dev \ build-essential libgl1-mesa-dev libgles2-mesa-dev $ sudo easy_install kivy

But I don't want to use sudo I like to keep my projects organized in virtualenv, so how install the requirements without using sudo. apt-get install won't work unless i use sudo. and i can't find the requirements in pip. Lets say i want to install easy_install in virtualenv for example, how to do that?


I do not think you can get around installing kivy's dependent packages without sudo/root access.

Once you have them installed, follow steps outlined in Andrew's answer.


when you use virtualenv and start it running, you can use the easy_install / pip that is installed there. that doesn't require sudo because it installs directly to virtualenv.

in other words - it just works. have you tried it?

there's a simple example here http://www.arthurkoziel.com/2008/10/22/working-virtualenv/


    sudo easy_install virtualenv (the last sudo you need)

    </li> <li>

    virtualenv kivydir

    </li> <li>

    source kivydir/bin/activate

    </li> <li>

    easy_install kivy (installs to kivydir)

    </li> </ul>


  • Run OpenGL programs on older hardware through mesa [closed]
  • What Does Happen If I Use Sudo Pip in Python Virtualenv? [duplicate]
  • Schedule [Virtualenv Dependent] Python Script with Windows Task Scheduler
  • Python/Cython trouble importing files and methods
  • mkproject: command not found
  • Attempting to build a cython extension to a python package, not creating shared object (.so) file
  • Why is assignment operation still giving MemoryError for large arrays in Python?
  • Can't get rid of “nonexistent parent node” in django 1.11
  • What is the Difference between system initialization and update in hybris?
  • Issue declaring extern class object
  • Can't install scipy
  • C# dynamic support?
  • applying background to first, and every third row in a dynamically generated table
  • Working with big files in classic ASP
  • Calling PowerShell's where-object from C#
  • Representing intervals or ranges? [closed]
  • composer dependency stating in doesn't have php-xsl
  • Extending the Django 1.11 User Model
  • perl, mysql - fasting way to upload a csv file into mysql?
  • Installing iPhone App to iPhone
  • Display images in Django
  • How to match http request and response using Jersey ContainerRequestFilter and ContainerResponseFilt
  • Moving mysql files across servers
  • VSO Build — Response status code does not indicate success: 404 (Not Found)
  • $wpdb not working in file of WordPress plugin
  • How to use an array of arrays with array_map(…) in PHP?
  • Paperclip, set path outside of rails root folder
  • R - Combining Columns to String Based on Logical Match
  • Get one-time binding to work for ng-if
  • Installing Hadoop, Java Exception about illegal characters at index 7?
  • Running a C# exe file
  • Convert array of 8 bytes to signed long in C++
  • Do create extension work in single-user mode in postgres?
  • R: gsub and capture
  • jqPlot EnhancedLegendRenderer plugin does not toggle series for Pie charts
  • Arrays break string types in Julia
  • Comma separated Values
  • -fvisibility=hidden not passed by compiler for Debug builds
  • Net Present Value in Excel for Grouped Recurring CF
  • How to load view controller without button in storyboard?