Un'altra alternativa è scaricare il file con apt-get download
, estrarlo con dpkg -x
e spostare i file estratti su virtualenv:
Esempio:
apt-get download python-xyz
supponiamo che ciò si traduca in:
./python-xyz_1.2.3-3ubuntu5_amd64.deb
Quindi, utilizzare dpkg per estrarre la parte di dati del file .deb:
dpkg -x python-xyz_1.2.3-3ubuntu5_amd64.deb ./xyz-tmp
Nella ./xyz-tmp
directory appena creata , ora hai tutti i file che sarebbero stati installati su /
(root) se avessi usato apt-get install
.
Supponiamo che siano:
./xyz-tmp/usr/lib/python2.7/dist-packages/xyz/
./xyz-tmp/usr/lib/python2.7/dist-packages/xyz-1.2.3.egg-info
È ancora necessario mappare le sottodirectory (ad es. dist-packages
Vs. site-packages
), quindi è possibile spostare i file nella virtualenv (assumendo virtualenv /home/user/.virtualenvs/py27
):
mv ./xyz-tmp/usr/lib/python2.7/dist-packages/* /home/user/.virtualenvs/py27/lib/python2.7/site-packages/
Rispetto alla mia precedente risposta, questo approccio ha il vantaggio di non dover ricercare quali file sono stati installati, poiché è possibile visualizzarli nella directory di estrazione. Richiede ancora una mappatura delle directory tra l'archivio estratto e virtualenv.