Überwindung aptitude
des Multiarch Bug fürppa-purge
Normalerweise als Vadim Rutkovsky und Takkat haben erklärt , läuft ppa-purge
mit Default - Syntax ist ein effektiver Weg , um alle Pakete von einem PPA bereitgestellt zu entfernen, richtig , wann immer möglich in andere konfigurierten Software Quellen zur Verfügung gestellt , sie zu Versionen Herabstufung.
Wie Takkat hervorgehoben hat, verhindert der Fehler 831768 jedoch, dass Multiarch- Pakete (wie 32-Bit-Pakete, die auf 64-Bit-Systemen installiert sind) ppa-purge
ordnungsgemäß entfernt werden können. Dies liegt daran , nicht in Konflikt Abhängigkeiten in multiarch Paketen verarbeiten (das ist , was der Fehler über ist) und das Standardverhalten verwenden Pakete degradieren.aptitude
ppa-purge
aptitude
Akzeptiert zum Glück ppa-purge
das -i
Flag, das es bevorzugt apt-get
, aptitude
als Backend. Wie im Fehlerbericht dokumentiert, ist die Verwendung apt-get
eine effektive Alternative zum manuellen Aufrufen. Daher sollte dasaptitude
Ausführen ppa-purge
mit dem -i
Flag eine effektive Umgehung für das Entfernen / Downgraden aller von einer PPA bereitgestellten Pakete sein, einschließlich Multiarch-Paketen .
Wie es geht
Hier ist die Syntax:
sudo ppa-purge -i ppa:ppaowner/ppaname
Wie gewohnt (wie wenn die -i
Flagge nicht benutzt wird):
ppaowner
wird durch den Besitzer des PPA ersetzt.
/ppaname
es ist optional. Wenn vorhanden, ppaname
wird durch den Namen der PPA ersetzt. Wenn nicht, ist der Standardwert ppa
.
Zum Beispiel , nehme ich das hatte PPA für instabil von qBittorrent baut installiert, und ich wollte es vollständig entfernen, automatisch qBittorrent Herabstufung, was auch immer Version durch meine andere Software - Quellen zur Verfügung steht mit apt-get
hinter den Kulissen stattaptitude
. Dann würde ich laufen:
sudo ppa-purge -i ppa:hydr0g3n/qbittorrent-unstable
Wo es dokumentiert ist
Aus irgendeinem Grund sind einige nützliche Optionen für ppa-purge
nicht in der Handbuchseite dokumentiert , einschließlich -i
. Sie können jedoch Informationen dazu erhalten, indem Sie Folgendes ausführen ppa-purge -h
(oder einfach ppa-purge
ohne Argumente):
ek@Del:~$ ppa-purge -h
Usage: sudo ppa-purge [options] <ppa:ppaowner>[/ppaname]
ppa-purge will reset all packages from a PPA to the standard
versions released for your distribution.
Options:
-p [ppaname] PPA name to be disabled (default: ppa)
-s [host] Repository server (default: ppa.launchpad.net)
-d [distribution] Override the default distribution choice.
-y Pass -y --force-yes to apt-get or -y to aptitude
-i Reverse preference of apt-get upon aptitude.
-h Display this help text
Example usage commands:
sudo ppa-purge xorg-edgers
will remove https://launchpad.net/~xorg-edgers/+archive/ppa
sudo ppa-purge -p xorg-testing sarvatt
will remove https://launchpad.net/~sarvatt/+archive/xorg-testing
sudo ppa-purge ppa:ubuntu-x-swat/x-updates
will remove https://launchpad.net/~ubuntu-x-swat/+archive/x-updates
Notice: If ppa-purge fails for some reason and you wish to try again,
(For example: you left synaptic open while attempting to run it) simply
uncomment the PPA from your sources, run apt-get update and try again.
"Umgekehrte Präferenz von apt-get upon aptitude" ist ein bisschen kryptisch. Mit Blick auf den relevanten Teil des Quellcodes ( ppa-purge
nur ein Shell - Skript, nachdem alle), können wir , dass dies bedeutet , dass das Standardverhalten zu bevorzugen ist aptitude
zu apt-get
, und die -i
Flagge kehrt diese Präferenz.