PyPy is an alternate implementation of the Python 2.7.13 and 3.5.3 interpreters. PyPy's benefits are in the area of speed, memory usage, sandboxing and stacklessness. It is compatible with CPython with some exceptions. PyPy also can be used to compile RPython programs to C code.
For Python 2.7, install the official repositories. For Python 3, install the package.package from the
PyPy is installed in /opt/pypy/ or /opt/pypy3 and the main pypy executable is bin/pypy-c
Basic PyPy usage is done through the
pypy3 command and functions similarly to CPython usage. Enter
$ pypy -h
to view the listing of
To load the pypy interactive interpreter run
Run program from file
To run a Python program from a file in pypy run
$ pypy example.py
where example.py is the file name of the program.
Virtual environment creation
To make a virtual environment with PyPy
$ virtualenv --python=/usr/bin/pypy venv-pypy
see Python/Virtual environment for further information
As python packages for pypy aren't distributed as Arch packages the most convenient thing is to install what you require as your own user.
$ pypy -m ensurepip --user $ pypy -m pip install --user --upgrade pip
Once you have pip you can install any package you need, eg:
$ pypy -m pip install --user sqlalchemy
If you'd prefer to install packages system wide just run the previous commands as root without the --user. Note that this will result in the packages being installed in /opt/pypy without the package manager being aware of them.
Python libraries and programs can be installed in PyPy through EasyInstall. PyPy libraries are stored in a different folder then CPython libraries.
EasyInstall does not come with the PyPy package and must be installed manually. Create the /opt/pypy/site-packages/ folder which will be needed for the EasyInstall installation.
# mkdir /opt/pypy/site-packages/
Download distribute_setup.py to the folder /opt/pypy/ and run it. distribute_setup.py will install EasyInstall.
$ cd /opt/pypy/ # wget python-distribute.org/distribute_setup.py # pypy distribute_setup.py
EasyInstall is located at /opt/pypy/bin/easy_install
Installing EasyInstall packages
To install EasyInstall package package_name into PyPy enter
# /opt/pypy/bin/easy_install package_name
Packages Will be Located at
Installed libraries and applications will be at
Programs installed through EasyInstall on PyPy can usually be ran with
/opt/pypy/bin/program_name where program_name is the name of the PyPy program.
EasyInstall package example
The following will install the Lamson email framework.
# /opt/pypy/bin/easy_install lamson
The following will run the framework's gen-project option
$ /opt/pypy/bin/lamson gen -project testproject