You can either do this explicitly at runtime:
~$ /usr/bin/pypy /usr/bin/twistd ...
This works because it specifically launches PyPy and tells it to start interpreting the twistd script.
Or you can do it persistently during installation:
~/Twisted-11.0.0$ /usr/bin/pypy setup.py install
This works because distutils (which uses setup.py) overwrites the line #! each script that it installs to point to the interpreter used for installation. Thus, #! / Usr / bin / env python in the installation source becomes #! / Usr / bin / pypy in the installed copy.
source share