Eine andere Alternative besteht darin, die Datei mit herunterzuladen, mit zu apt-get download
extrahieren dpkg -x
und die extrahierten Dateien in Ihre virtuelle Umgebung zu verschieben:
Beispiel:
apt-get download python-xyz
Nehmen wir an, dies führt zu:
./python-xyz_1.2.3-3ubuntu5_amd64.deb
Verwenden Sie dann dpkg, um den Datenteil der .deb-Datei zu extrahieren:
dpkg -x python-xyz_1.2.3-3ubuntu5_amd64.deb ./xyz-tmp
In dem neu erstellten ./xyz-tmp
Verzeichnis haben Sie nun alle Dateien, die bei Verwendung von /
(root) installiert worden wären apt-get install
.
Angenommen, sie sind:
./xyz-tmp/usr/lib/python2.7/dist-packages/xyz/
./xyz-tmp/usr/lib/python2.7/dist-packages/xyz-1.2.3.egg-info
Sie müssen die Unterverzeichnisse noch zuordnen ( z. B. dist-packages
vs. site-packages
) und können dann die Dateien in Ihre virtuelle Umgebung verschieben (unter der Annahme einer virtuellen Umgebung /home/user/.virtualenvs/py27
):
mv ./xyz-tmp/usr/lib/python2.7/dist-packages/* /home/user/.virtualenvs/py27/lib/python2.7/site-packages/
Gegenüber meiner vorherigen Antwort hat dieser Ansatz den Vorteil, dass Sie nicht nachforschen müssen, welche Dateien installiert wurden, da Sie sie im Extraktionsverzeichnis sehen können. Es ist weiterhin eine Zuordnung von Verzeichnissen zwischen dem extrahierten Archiv und dem virtuellen Verzeichnis erforderlich.