Lese-Ansicht

Hilfe, pip funktioniert nicht mehr!

pip ist das Paketverwaltungs-Tool von Python. Wenn Sie in einem Script ein Zusatzmodul benötigen, führen Sie einfach pip install xxx bzw. unter macOS und bei manchen Linux-Distributionen pip3 install xxx aus. pip lädt das erforderliche Modul sowie eventuelle Abhängigkeiten herunter und installiert die Pakete lokal (d.h., sie brauchen meine root-Rechte).

Meistens funktioniert pip gut — aber nicht immer. Die häufigste Fehlerquelle unter Windows ist die Parallelinstallation mehrerer Python-Versionen. Dann ist nicht immer klar, auf welche Python-Version sich pip bezieht. Nach meiner Erfahrung scheint pip zumeist die falsche Version zu nehmen. Daher mein Tipp: Vermeiden Sie unter Windows unbedingt die Mehrfachinstallation von Python!

Aber auch unter Linux kann es Probleme geben. Die Ursache hier besteht darin, dass viele Distributionen selbst eine riesige Sammlung von Paketen mit Python-Erweiterungen anbieten. Die Parallelinstallation eines Moduls, einmal mit apt oder dnf und ein zweites Mal mit pip, kann dann zu Konflikten führen — insbesondere dann, wenn nicht exakt dieselben Versionen zum Einsatz kommen. Die Python-Entwickler haben deswegen im ‎Python Enhancement Proposals (PEP) 668 festgeschrieben, dass in solchen Fällen Pakete aus Linux-Repositories vorzuziehen sind. PEP 668 gilt grundsätzlich seit Python 3.11. Tatsächlich implementiert ist es momentan nur in aktuellen Linux-Distributionen:

  • Ubuntu ab Version 23.04
  • Debian ab Version 12
  • Raspberry Pi OS ab dem Bookworm-Release (Okt. 2023)
  • Arch Linux

Noch nicht implementiert ist PEP 668 dagegen unter RHEL und Fedora (auch nicht in Version 39 Beta).

pip-Fehlermeldung

Der Versuch, mit pip ein Modul zu installieren, führt bei aktuellen Debian-, Ubuntu- und Raspberry-Pi-OS-Versionen zur folgenden Fehlermeldung:

$ pip install matplotlib

error: externally-managed-environment
This environment is externally managed

    To install Python packages system-wide, try apt install
    python3-xyz, where xyz is the package you are trying to
    install.

    If you wish to install a non-Debian-packaged Python package,
    create a virtual environment using python3 -m venv path/to/venv.
    Then use path/to/venv/bin/python and path/to/venv/bin/pip. Make
    sure you have python3-full installed.

    If you wish to install a non-Debian packaged Python application,
    it may be easiest to use pipx install xyz, which will manage a
    virtual environment for you. Make sure you have pipx installed.

    See /usr/share/doc/python3.11/README.venv for more information.

note: If you believe this is a mistake, please contact your Python 
installation or OS distribution provider. You can override this, 
at the risk of breaking your Python installation or OS, by 
passing --break-system-packages. Hint: See PEP 668 for the 
detailed specification.

Lösung 1: Installation des äquivalenten Linux-Pakets

Die obige Fehlermeldung weist direkt auf die beste Lösung hin — nämlich die Installation des entsprechenden Linux-Pakets mit apt python3-xxx, wobei xxx der Paketname ist. Für die matplotlib führen Sie unter Debian, Ubuntu und Raspberry Pi OS das folgende Kommando aus:

sudo apt install python3-matplotlib

Diese Empfehlung ist mit zwei Einschränkungen verbunden: Sie erfordert, dass Sie root– oder sudo-Rechte haben, und sie setzt voraus, dass das gewünschte Modul tatsächlich im Repository Ihrer Linux-Distribution zur Verfügung steht. Letzteres ist oft der Fall, aber nicht immer. Auf pypi.org gibt es fast 500.000 Projekte, die Debian-Standard-Repositories enthalten dagegen »nur« gut 4000 (apt list | grep python3- | wc -l).

Lösung 2: Verwendung einer virtuellen Umgebung

Ein Virtual Environment im Kontext von Python ist ganz einfach ein Projektverzeichnis, in das die für das Projekt erforderlichen Module lokal und projektspezifisch installiert werden. Das hat mehrere Vorteile:

  • Es ist klar, welche Module ein bestimmtes Projekt benötigt. Das Projekt lässt sich später einfacher auf einen anderen Rechner übertragen.
  • Es kann keine Konflikte zwischen unterschiedlichen Projekten geben, die unterschiedliche Module erfordern.
  • Sie sind nicht auf die von Ihrer Linux-Distribution angebotenen Python-Module eingeschränkt und brauchen keine Administratorrechte zur Installation von Linux-Paketen.

Virtuelle Umgebungen werden von Python durch das Modul venv unterstützt. Dieses Modul muss vorweg installiert werden, entweder mit apt install python3-venv oder durch apt install python3-full. Anschließen richten Sie Ihr Projekt ein:

$ python3 -m venv my-project

Python erzeugt das Verzeichnis my-project, falls dieses noch nicht existiert, und richtet dort eine minimale Python-Umgebung ein. (»Minimal« bedeutet: ca. 1500 Dateien, Platzbedarf ca. 25 MByte. Nun ja.) Nun führen Sie in Ihrem Terminal-Fenster mit source das Shell-Script activate aus, um die Umgebung zu aktivieren:

$ cd my-project
$ source bin/activate
(my-project)$ 

In dieser Umgebung funktioniert pip wie gewohnt. In der Folge können Sie Ihr Script ausführen, das die lokal installierte Module nutzt:

(my-project)$ pip install requests beautifulsoup4
(my-project)$ ./my-webscraping-script.py

Anstelle venv direkt zu nutzen, gibt es diverse Tools, um die Verwaltung Ihrer virtuellen Umgebungen zu vereinfachen. Am bekanntesten sind pipenv und virtualenv. Persönlich ist mir pipenv am liebsten. Das Tool muss vorweg installiert werden (apt install pipenv).

Lösung 3: Das Kommando pipx

pipx ist eine Variante zum klassischen pip-Kommando, das sich gleichzeitig um die Einrichtung einer virtuellen Umgebung kümmert (siehe auch die Dokumentation). pipx ist allerdings nicht zur Installation von Bibliotheken gedacht, sondern zur Installation fertiger Python-Programme. Diese werden in .local/bin gespeichert.

pipx ist nur dann eine attraktive Option, wenn Sie ein als Python-Modul verfügbares Programm unkompliziert installieren und ausführen wollen. Wenn Sie dagegen selbst Scripts entwickeln, die von anderen Modulen abhängig sind, ist pipx nicht das richtige Werkzeug.

Lösung 4: Option pip --break-system-packages

Ein vierter Lösungsweg besteht darin, an pip die Option --break-system-packages zu übergeben. Die Option ist weniger schlimm, als ihr Name vermuten lässt. Im Prinzip funktioniert pip jetzt so wie bisher und installiert das gewünschte Modul, ganz egal, ob es ein äquivalentes Paket Ihrer Distribution gibt oder nicht, und unabhängig davon, ob dieses Paket womöglich schon installiert ist.

Empfehlenswert ist der Einsatz dieser Option in CI-Scripts (Continuous Integration), z.B. in Test- oder Deploy-Scripts für git (siehe auch diesen Blog-Beitrag von Louis-Philippe Véronneau). Die Option --break-system-packages ist oft der schnellste und bequemste Weg, nicht mehr funktionierende Scripts wieder zum Laufen zu bringen.

Quellen/Links

  •  

Puppy Linux 22.12 – speziell für ältere Systeme

Oldie but goldie, heißt es doch so schön, wenn man nach Jahren seinen alten Computer wieder heraus kramt. Für ältere Systeme moderne Anwendungen zu erhalten, welche darauf auch laufen, stellt eine Seltenheit dar. Mit Puppy Linux 22.12 gibt es eine auf Slackware basierte Umsetzung, die für frühere Systeme ausgelegt ist.

Der Beitrag Puppy Linux 22.12 – speziell für ältere Systeme erschien zuerst auf Linux Abos.

  •  

Debian feiert den 30. Geburtstag: Von einem schlanken Newcomer zu einem Open-Source-Schwergewicht

30 Jahre Debian - 30 Jahre felsenfeste Entwicklung und noch kein Ende in Sicht.

An diesem Tag vor 30 Jahren, am 16.08.1993, erschien in der Newsgroup comp.os.linux.development eine Ankündigung, die den Anfang eines der größten und langlebigsten Projekte im Linux-Ökosystem markieren sollte. Lasst uns für einen kurzen Moment zurückblicken.

Es ist nicht nur ein gepimptes SLS, es ist das "Debian Linux Release". Ian Murdock, der selbst mit der vermutlich ersten Linux-Distribution unzufrieden war und beschlossen hat, die Sache selbst in die Hand zu nehmen, hätte sich womöglich nie erträumen können, dass sein "brand-new Linux release", wie er es damals nannte, irgendwann seinen 30. Geburtstag feiern würde.

Begründer eines Distributionszweiges

Im Laufe der Jahre hat Debian bewiesen, dass es mehr als nur ein übereifriger Rebell unter den Betriebssystemen ist. Es hat die Grundlage für viele andere Distributionen wie z. B. Ubuntu gelegt. Es hat die Freiheit und Offenheit verkörpert, die das Herzstück der Open-Source-Bewegung bilden. Es hat glaubhafte Alternativen zu proprietären Betriebssystemen aufgezeigt und Zweifler zum Schweigen gebracht. Auch, wenn der letzte Punkt in der öffentlichen Diskussion nicht ganz offensichtlich ist, sprechen die Zahlen für sich: Debian ist ein fester Bestandteil vieler produktiver Serversetups.

Mit der tief verwurzelten Philosophie, die sich im Debian-Gesellschaftsvertrag widerspiegelt, unterstreicht das Projekt seine kompromisslose Haltung zugunsten freier Software, auch wenn über die Jahre insgesamt eine gewisse Toleranz gegenüber nachinstallierbarer unfreier Software Einzug gehalten hat.

Debian ist heute wichtiger denn je, da die Distribution den Test of Time bestand und sich zu einer Alternative zu Enterprise-Distributionen gemausert hat. Stabilität und Kontinuität sind entscheidende Faktoren, denn Debian baut auf klassischen Releases auf, von denen - je nach Zählweise - bereits 20 erschienen sind. Die Release werden seit Version 1.1 nach Toy-Story-Charakteren bezeichnet. Debian ist ein Leuchtturm, ein einsamer Fels in der Brandung einer Welt, die zunehmend von Anbietern dominiert wird, welche Daten und Freiheiten der Nutzer nicht beachten und sie an ihre Plattformen binden.

In diesem Sinne, lasst uns auf 30 Jahre technologischer Alternativen anstoßen. Herzlichen Glückwunsch, Debian! Auf 30 weitere Jahre der Innovation und Unabhängigkeit.

  •  

Mandriva Linux: Geschichte, Besonderheiten & mehr

Mandriva Linux, bekannt für seine vielfältigen Einsatzmöglichkeiten, zeichnet sich durch seine intuitive Bedienung und innovativen Features aus. Mit Produkten wie One und Business Server bietet es Lösungen für eine breite Benutzerbasis. Seine benutzerfreundlichen Tools für die Systemkonfiguration und Paketverwaltung und die Unterstützung von 3D-Desktop-Effekten machen Mandriva zu einer interessanten Linux-Distribution.

Der Beitrag Mandriva Linux: Geschichte, Besonderheiten & mehr erschien zuerst auf Linux Abos.

  •  

Neuer Bug im Linux Kernel führt zur BSI Sicherheitswarnung

Nicht nur die Sicherheit im offline Straßenverkehr ist wichtig. Auch das Bewegen auf Datenautobahnen muss auf sicheren Wegen erfolgen. Leider gibt es wie auf normalen Straßen auch immer wieder Schlaglöcher, sprich Sicherheitslücken, welche behoben werden müssen. Der Linux- Kernel ist davon häufig betroffen, doch eine Abhilfe verschiedener Lücken ist kein Hexenwerk.

Der Beitrag Neuer Bug im Linux Kernel führt zur BSI Sicherheitswarnung erschien zuerst auf Linux Abos.

  •  

LegacyOS als Linux-Distribution für ältere Computer

LegacyOS stellt eine Distribution dar, welche zukünftig helfen soll, älteren Rechnern eine längere Nutzungsdauer zu ermöglichen beziehungsweise Anwendern den sanften Systemumstieg zu offerieren. Dank dieser Softwarelösung ist es realisierbar, mehr aus einem vorhandenen Computer herauszuholen, ohne dass eine komplette Neuanschaffung notwendig ist. Dadurch wird für Computernutzer ein längerer Mehrwert generiert.

Der Beitrag LegacyOS als Linux-Distribution für ältere Computer erschien zuerst auf Linux Abos.

  •  

HDR-Experimente bei Linux

Schon mal etwas von HDR-Bildern gehört? "HDR" steht hier für "high dynamic Range" und beschreibt ein Verfahren, um einen möglichst großen Kontrastumfang darzustellen. In der Fotografie zum Beispiel ist dies schon länger Thema. Doch auch für Linux gibt es mittlerweile erste Versuche der HDR-Implementierung. Wir berichten über den aktuellen Stand.

Der Beitrag HDR-Experimente bei Linux erschien zuerst auf Linux Abos.

  •  

Linux Mythen » beliebte Klischees zum Linux-Betriebssystem

Mythen sowie Vorurteile sind auch heute noch allgegenwärtig. Gerade wenn es um das Betriebssystem Linux angeht, werden beide Faktoren synonym mit diesem genannt. Nicht jeder ist von Linux überzeugt, was sich in den Gerüchten widerspiegelt, welche derzeit überall kursieren. Was es mit den Klischees auf sich hat, erfährt man hier.

Der Beitrag Linux Mythen » beliebte Klischees zum Linux-Betriebssystem erschien zuerst auf Linux Abos.

  •  

Linux FAQ » die häufigsten Fragen und Antworten zu Linux

Linux bietet den Benutzern viele Möglichkeiten, doch gerade für Einsteiger ist das Betriebssystem nicht ganz einfach zu verstehen. Dieser Artikel ist unsere Linux FAQ und behandelt die wichtigsten Linux Fragen, die immer wieder im Zusammenhang mit dem beliebten Betriebssystem auftauchen.

Der Beitrag Linux FAQ » die häufigsten Fragen und Antworten zu Linux erschien zuerst auf Linux Abos.

  •  

Die 25 beliebtesten Programme für Linux

Die Vielfalt an Linux-Software ist groß. Jeder einigermaßen begabte Programmierer kann seine Werke der Community zur Verfügung stellen. Viele schaffen es auch in den großen Verteiler der Software-Center. Hier verwaltete Programme sind geprüft und sicher, solange man sich an die stable-Releases hält. Hier sind die besten 25 Programme zu finden.

Der Beitrag Die 25 beliebtesten Programme für Linux erschien zuerst auf Linux Abos.

  •  

Linux auf USB-Stick installieren: So geht’s ganz einfach!

Betriebssysteme findet man mittlerweile nicht mehr nur auf festverbaute Festplatten. Mittlerweile ist es auch möglich, Windows beziehungsweise Linux fest auf einen transportablen USB-Stick zu installieren. Doch nicht jeder kann dies auf Anhieb realisieren. Wir zeigen euch im nachfolgenden Artikel, wie es konkret funktioniert und auf was dabei zu achten ist.

Der Beitrag Linux auf USB-Stick installieren: So geht’s ganz einfach! erschien zuerst auf Linux Abos.

  •  

Mehr Ordnung im Arbeitsspeicher durch Fedora 32

Die neue Fedora 32 Version ist erschienen und birgt einige Vor- und Nachteile in der finalen Linux Workstation. Der drohenden RAM Knappheit bei geringen Ressourcen wird jetzt durch EarlyOOM entgegengewirkt und die Wayland-Baustelle ist zum nächsten Desktop weitergezogen. Des Weiteren gibt es Empfehlungen zur Installation mit Anaconda in Fedora 32.

Der Beitrag Mehr Ordnung im Arbeitsspeicher durch Fedora 32 erschien zuerst auf Linux Abos.

  •  

MX Linux veröffentlicht MX-21 Wildflower

MX-21 Wildflower ist verfügbar Das Linux Betriebssystem MX Linux stellt ab sofort die neue Version MX-21 Wildflower zur Verfügung. Diese nutzt als Basis Debian 11 Bullseye. Dies ist die aktuelle stabile Version von Debian. Selbstverständlich wird diese Distribution auch mit deutschen Sprachpaketen ausgeliefert. MX-21 Wildflower wird wie seine Vorgänger mit drei Desktopumgebungen angeboten. XFCE in… Weiterlesen MX Linux veröffentlicht MX-21 Wildflower

Der Beitrag MX Linux veröffentlicht MX-21 Wildflower erschien zuerst auf Die Seite für LINUX UMSTEIGER.

  •  

Debian Derivat Q4OS 4.6 wurde veröffentlicht.

Neue Version von Debian Derivat Q4OS Das Team von Q4OS veröffentlicht eine neue Version ihres Linux Betriebssystems. Version 4.6 nennt sich Gemini. Die Basis bildet Debian 11 Bullseye. Für Q4OS wird eine Unterstützung von 5 Jahren in Aussicht gestellt. Es handelt sich also um eine LTS-Version. Zwei Desktops Für Q4OS Gemini stehen zwei Desktopumgebungen zur… Weiterlesen Debian Derivat Q4OS 4.6 wurde veröffentlicht.

Der Beitrag Debian Derivat Q4OS 4.6 wurde veröffentlicht. erschien zuerst auf Die Seite für LINUX UMSTEIGER.

  •  

Safe Browsing mit Linux: VM und Remote machen es möglich

Im Internet sicher zu surfen, ist vielen Linuxnutzern mittlerweile sehr wichtig. Safe Browsing ist bei diesem Betriebssystem durch verschiedene getroffene Maßnahmen möglich. Eine davon stellt ein Browser dar, welcher nicht auf dem Rechner installiert sein muss. Das hat den Vorteil, dass Bestandsdaten auf dem genutzten Computer so nicht gefährdet sind.

Der Beitrag Safe Browsing mit Linux: VM und Remote machen es möglich erschien zuerst auf Linux Abos.

  •  

Debian 11 Bullseye ist erschienen – Neue Version der beliebten Linux Distribution

Die neueste Stable Version von Debian Getreu dem Motto, „Debian Stable wird veröffentlicht, wenn es fertig ist“, kam es auch dieses Mal zu einer leichten Verspätung. Seit ein paar Tagen steht das Linux Betriebssystem Debian 11 mit dem Codenamen Bullseye jedoch zum Download bereit. Insgesamt wird für diese Version eine Unterstützung von 5 Jahren angeboten.… Weiterlesen Debian 11 Bullseye ist erschienen – Neue Version der beliebten Linux Distribution

Der Beitrag Debian 11 Bullseye ist erschienen – Neue Version der beliebten Linux Distribution erschien zuerst auf Die Seite für LINUX UMSTEIGER.

  •  

Debian Derivat Siduction veröffentlicht Version 2021.2.0

Siduction – Debian immer topaktuell Siduction: Vielen Linux Anwendern ist Debian Stable zu konservativ. Selbst Debian Testing hinkt im Vergleich zu Rolling Release Distributionen wie beispielsweise Arch Linux gewaltig hinterher. Wer auf topaktuelle Pakete steht und ein gewissen Risiko nicht scheut, kann sein System mit den instabilen Paketquellen (Sid) von Debian bestücken. Siduction vereinfacht diesen… Weiterlesen Debian Derivat Siduction veröffentlicht Version 2021.2.0

Der Beitrag Debian Derivat Siduction veröffentlicht Version 2021.2.0 erschien zuerst auf Die Seite für LINUX UMSTEIGER.

  •  

Nitrux 1.5.1 veröffentlicht – Debian Derivat mit Plasma Desktop

Was ist Nitrux? Nitrux benutzt als Basis Debian und wird mit einem optimierten KDE Plasma Desktop ausgeliefert. Dieser Desktop nennt sich NX Desktop. Dabei wird auf eine enge Zusammenarbeit mit den Machern von KDE Neon hingewiesen. Dies gewährleistet, dass Plasma stets in einer sehr aktuellen Version genutzt werden kann. Nitrux verzichtet außerdem auf systemd als… Weiterlesen Nitrux 1.5.1 veröffentlicht – Debian Derivat mit Plasma Desktop

Der Beitrag Nitrux 1.5.1 veröffentlicht – Debian Derivat mit Plasma Desktop erschien zuerst auf Die Seite für LINUX UMSTEIGER.

  •  

MX Linux veröffentlicht Beta für neue Version

MX Linux stellt ab sofort die Beta-Version von MX 21 zur Verfügung. Diese nutzt als Basis Debian 11 Bullseye. Bullseye wird die nächste stabile Version von Debian und erscheint am 14.08.2021. MX Linux wird also so schnell wie möglich nachziehen und seinen Nutzern zeitnah ebenfalls eine aktualisierte Version anbieten. MX Linux 21 wird wie seine… Weiterlesen MX Linux veröffentlicht Beta für neue Version

Der Beitrag MX Linux veröffentlicht Beta für neue Version erschien zuerst auf Die Seite für LINUX UMSTEIGER.

  •  

Debian 11 Bullseye – Veröffentlichungstermin

Der Veröffentlichungstermin von Debian 11 Bullseye steht nun endgültig fest. Wie immer handelt das Debian Team nach der Devise, „Debian ist fertig, wenn es fertig ist!“ Anders als andere Distributionen legen sich die Entwickler nicht auf einen festen Termin für die endgültige Veröffentlichung einer neuen Stable Version fest. Debian 11 wird nun am 14.08.2021 endgültig… Weiterlesen Debian 11 Bullseye – Veröffentlichungstermin

Der Beitrag Debian 11 Bullseye – Veröffentlichungstermin erschien zuerst auf Die Seite für LINUX UMSTEIGER.

  •  

Debian 11 Bullseye – Veröffentlichung steht in den Startlöchern

Am 17.07.2021 erreicht Debian 11 Bullseye die finale Phase vor der endgültigen Veröffentlichung. Diese wird Full Freeze genannt.. Das heißt, dass von diesem Moment an jedes Paket eine manuelle Freigabe durch das Release-Team benötigt, wenn es noch in Bullseye integriert werden soll. Daher ist damit zu rechnen, dass die finale Version von Debian 11 Bullseye… Weiterlesen Debian 11 Bullseye – Veröffentlichung steht in den Startlöchern

Der Beitrag Debian 11 Bullseye – Veröffentlichung steht in den Startlöchern erschien zuerst auf Die Seite für LINUX UMSTEIGER.

  •  

Shell Helligkeit des externen Monitors steuern

Aufstehen, die gut versteckten Taster suchen, Einstellen, hinsetzen. Das gilt auch für meinen externen Monitor, welchen ich öfters wegen der Sonneneinstrahlung anpassen muss. Hier hilft mir xrandr in der Shell. Zuerst muss ich den richtigen angeschlossen Monitor finden und kann dann über Parameter die gewünschte Helligkeit einstellen. Bei Nutzung als Tastaturkürzel in TilingWMs eine große ... Weiterlesen

Der Beitrag Shell Helligkeit des externen Monitors steuern erschien zuerst auf Got tty.

  •  

Fedora Workstation die unmotivierte Kontaktaufnahme zu Fedoraproject.org abgewöhnen

Ich bin die Tage aus allen Wolken gefallen, als ich sah wie meine Workstation alle 5 Minuten Kontakt zu fedoraproject.org aufnahm. Faszinierend daran war, dass ich sie zu den Uhrzeiten nicht genutzt hatte. Diese Sache hatte für mich zuerst mehr … Weiterlesen

Der Beitrag Fedora Workstation die unmotivierte Kontaktaufnahme zu Fedoraproject.org abgewöhnen erschien zuerst auf Got tty.

  •  

Debian 10 Buster mod_md invalid (missing uri scheme): accepted

Debian 10 Buster liefert eine veraltete Version von Apache 2 mit dem Module mod_md für Let‘ encrypt aus. Dieses Modul unterstütz nur ACMEv1. Hier kommt es zu einem Fehler bei dem Beziehen des Zertifikats: Die Lösung ist es aus den … Weiterlesen

Der Beitrag Debian 10 Buster mod_md invalid (missing uri scheme): accepted erschien zuerst auf Got tty.

  •  
❌