python-pyspf Installation
Hallo! Auf einem etwas älteren OS mit Python 2.7.12 bringt der Paketmanager kein python-pyspf mit und auch kein python-policyd-spf. Da ich absoluter Laie hinsichtlich Python bin, möchte ich hier nachfragen, ob es mittels pip oder ähnlich möglich ist, diese Pakete nachzuinstallieren? Danke für jeden Hinweis! Grüße Andreas
Am 28.01.19 um 17:37 schrieb ratatouille:
Hallo!
Auf einem etwas älteren OS mit Python 2.7.12 bringt der Paketmanager kein python-pyspf mit und auch kein python-policyd-spf.
Da ich absoluter Laie hinsichtlich Python bin, möchte ich hier nachfragen, ob es mittels pip oder ähnlich möglich ist, diese Pakete nachzuinstallieren?
Jein. Du kannst die Python-Bibliothek 'pyspf' vom Python Package Index (PyPI) mit pip installieren, dass ist dann aber am Paketverwaltungssystem des OS vorbei, d.h. du hast dann evtl. Dateien im Dateisystem, bei denen sich nicht mehr überprüfen lässt, woher sie installiert wurden. Außerdem musst du dich dann auch selbst um die Aktualisierung kümmern, falls eine neuere Version herauskommt. Ein Paket namens "python-policyd-spf" habe ich nirgendwo gefunden, ich schätze mal, die entsprechende Distribution auf PyPI heißt "pypolicyd-spf"? Wenn du ein Python Paket mit pip systemweit installieren willst, so das es für alle Benutzer verfügbar ist, musst du "sudo" benutzen, z.B.: sudo python -m pip install pyspf Das installiert das Paket für die Standardpythonversion des Systems. Das hat aber die oben beschriebenen Probleme. Du kannst ein Paket auch nur für den aktuellen Benutzer installieren: python -m pip install --user pyspf Das installiert das Paket dann unter ~/.local/lib/pythonX.Y/site-packages und Skripte unter ~/.local/bin (letzteres müsstest du dann zur PATH Environmentvariable hinzufügen). Dann wird das Paket aber nur von Python-Programmen gefunden, die unter diesem User laufen. Zu guter Letzt kannst du auch ein Virtual Environment anlegen, und das Paket dort hin installieren: virtualenv /path/to/virtualenv source /path/to/virtualenv/bin/activate python -m pip install pyspf Das installiert das Paket dann nach /path/to/virtualenv/lib/pythonX.Y/site-packages und Skripte nach /path/to/virtualenv/bin. Das Paket ist dann nur in Python-Interpretern verfügbar, die mit diesem aktiven Virtual Environment gestartet wurden (ich vereinfache hier etwas). Gruß, Chris
Hallo! Christopher Arndt <chris@chrisarndt.de> schrieb am 28.01.19 um 19:47:24 Uhr:
Am 28.01.19 um 17:37 schrieb ratatouille:
Hallo!
Auf einem etwas älteren OS mit Python 2.7.12 bringt der Paketmanager kein python-pyspf mit und auch kein python-policyd-spf.
Da ich absoluter Laie hinsichtlich Python bin, möchte ich hier nachfragen, ob es mittels pip oder ähnlich möglich ist, diese Pakete nachzuinstallieren?
Jein. Du kannst die Python-Bibliothek 'pyspf' vom Python Package Index (PyPI) mit pip installieren, dass ist dann aber am Paketverwaltungssystem des OS vorbei, d.h. du hast dann evtl. Dateien im Dateisystem, bei denen sich nicht mehr überprüfen lässt, woher sie installiert wurden. Außerdem musst du dich dann auch selbst um die Aktualisierung kümmern, falls eine neuere Version herauskommt.
Ein Paket namens "python-policyd-spf" habe ich nirgendwo gefunden, ich schätze mal, die entsprechende Distribution auf PyPI heißt "pypolicyd-spf"?
Wenn du ein Python Paket mit pip systemweit installieren willst, so das es für alle Benutzer verfügbar ist, musst du "sudo" benutzen, z.B.:
sudo python -m pip install pyspf
Danke für Deine ausführliche Antwort! Ich habe hier ein python-policyd-spf-1.0-45.1.noarch.rpm, das ich mit rpm -i python-policyd-spf-1.0-45.1.noarch.rpm installieren möchte, erhalte aber: error: Failed dependencies: python-pyspf is needed by python-policyd-spf-1.0-45.1.noarch python -m pip install pyspf ergibt Requirement already satisfied: pyspf in /usr/lib/python2.7/site-packages (2.0.11) python -m pip install policyd-pyspf ergibt No matching distribution found for policyd-pyspf Also das rpm findet das pyspf nicht, obwohl es installiert ist.
Gruß, Chris
Grüße Andreas
Am 28.01.19 um 22:18 schrieb ratatouille:
error: Failed dependencies: python-pyspf is needed by python-policyd-spf-1.0-45.1.noarch
Also das rpm findet das pyspf nicht, obwohl es installiert ist.
Dependencies von RPM-Paketen funktionieren nur innerhalb der Distributionspakete. Python-Pakete, die von PyPI installierst, kennt das RPM-System nicht. Wenn es kein RPM-Paket 'python-pyspf' für deine Distro gibt, dann ist das RPM-Paket 'python-policyd-spf' auch nicht mit deiner Distro kompatibel. Wenn du die Software benutzen willst, musst du also herausfinden, auf welchem Python-Paket (nicht zu verwechseln mit RPM-Paket) 'python-policyd-spf' beruht (höchstwahrscheinlich 'pypolicyd-spf') und dieses, wie von mir beschrieben mit pip 'von Hand' installieren. Es kann allerdings sein, dass das RPM-Paket noch zusätzliche Komponenten enthält, die im reinen Python-Pakete nicht enthalten sind, wie z.B. Konfigurationsdateien, Systemd-Units, Log-Verzeichnisse usw. Am besten fragst du mal auf der Projekthomepage nach, wie die Software auf deiner Distribution am besten installiert wird: https://launchpad.net/pypolicyd-spf Chris
Christopher Arndt <chris@chrisarndt.de> schrieb am 28.01.19 um 22:34:13 Uhr:
Am 28.01.19 um 22:18 schrieb ratatouille:
error: Failed dependencies: python-pyspf is needed by python-policyd-spf-1.0-45.1.noarch
Also das rpm findet das pyspf nicht, obwohl es installiert ist.
Dependencies von RPM-Paketen funktionieren nur innerhalb der Distributionspakete. Python-Pakete, die von PyPI installierst, kennt das RPM-System nicht. Wenn es kein RPM-Paket 'python-pyspf' für deine Distro gibt, dann ist das RPM-Paket 'python-policyd-spf' auch nicht mit deiner Distro kompatibel.
Wenn du die Software benutzen willst, musst du also herausfinden, auf welchem Python-Paket (nicht zu verwechseln mit RPM-Paket) 'python-policyd-spf' beruht (höchstwahrscheinlich 'pypolicyd-spf') und dieses, wie von mir beschrieben mit pip 'von Hand' installieren.
Es kann allerdings sein, dass das RPM-Paket noch zusätzliche Komponenten enthält, die im reinen Python-Pakete nicht enthalten sind, wie z.B. Konfigurationsdateien, Systemd-Units, Log-Verzeichnisse usw.
Danke recht herzlich für Deine Ausführungen! Es scheint gut gegangen zu sein. Ich habe dann auch noch python3 aus der Distribution installiert. python3 -m pip install pyspf Downloading/unpacking pyspf Downloading pyspf-2.0.11.tar.gz (63kB): 63kB downloaded Running setup.py (path:/tmp/pip_build_root/pyspf/setup.py) egg_info for package pyspf Installing collected packages: pyspf Running setup.py install for pyspf changing mode of build/scripts-3.4/type99.py from 644 to 755 changing mode of build/scripts-3.4/spfquery.py from 644 to 755 changing mode of /usr/bin/type99.py to 755 changing mode of /usr/bin/spfquery.py to 755 Successfully installed pyspf Cleaning up... python3 -m pip install pypolicyd-spf Downloading/unpacking pypolicyd-spf Downloading pypolicyd-spf-2.0.2.tar.gz Running setup.py (path:/tmp/pip_build_root/pypolicyd-spf/setup.py) egg_info for package pypolicyd-spf Installing collected packages: pypolicyd-spf Running setup.py install for pypolicyd-spf changing mode of build/scripts-3.4/policyd-spf from 644 to 755 changing mode of /usr/bin/policyd-spf to 755 Successfully installed pypolicyd-spf Cleaning up... Jetzt will ich mal versuchen, das anzuwenden.
Am besten fragst du mal auf der Projekthomepage nach, wie die Software auf deiner Distribution am besten installiert wird:
https://launchpad.net/pypolicyd-spf
Chris
Grüße Andreas
participants (2)
-
Christopher Arndt -
ratatouille