Arch-Deinstallationspaket aus einem bestimmten Repository

849
airbournenation

Ich bin auf ein ungewöhnliches Problem gestoßen. Ich habe zwei verschiedene Versionen von xorg-server in zwei verschiedenen Repositorys in meinem Computer: Extra Repo - 1.19 und Xorg116 Repo (aus Quelle erstellt) - 1.16. Wie deinstalliere ich das Paket aus einem zusätzlichen Repository, während eine andere Version in xorg116 beibehalten wird? Ich hätte eine andere Version als / var / cache / pacman / pkg installiert, aber ich habe den Ordner gelöscht.

PS: Ich muss es downgraden, um AMD-Treiber installieren zu können. PPS: Hier einige Ausgaben von "pacman -Si xorg-server":

Repository : extra Name : xorg-server Version : 1.19.3-1 Description : Xorg X server Architecture : x86_64 URL : http://xorg.freedesktop.org Licenses : custom Groups : xorg Provides : X-ABI-VIDEODRV_VERSION=23 X-ABI-XINPUT_VERSION=24.1 X-ABI-EXTENSION_VERSION=10.0 x-server Depends On : libepoxy libxfont2 pixman xorg-server-common libunwind dbus libgl xf86-input-libinput libpciaccess libdrm libxshmfence Optional Deps : None Conflicts With : nvidia-utils<=331.20 glamor-egl xf86-video-modesetting Replaces : glamor-egl xf86-video-modesetting Download Size : 1283.00 KiB Installed Size : 3557.00 KiB Packager : Laurent Carlier <lordheavym@gmail.com> Build Date : Thu 16 Mar 2017 04:49:41 PM EET Validated By : MD5 Sum SHA-256 Sum Signature  Repository : xorg116 Name : xorg-server Version : 1.16.4-1 Description : Xorg X server Architecture : x86_64 URL : http://xorg.freedesktop.org Licenses : custom Groups : xorg Provides : X-ABI-VIDEODRV_VERSION=18 X-ABI-XINPUT_VERSION=21 X-ABI-EXTENSION_VERSION=8.0 x-server Depends On : libepoxy libxdmcp libxfont libpciaccess libdrm pixman libgcrypt libxau xorg-server-common xf86-input-evdev libxshmfence libgl Optional Deps : None Conflicts With : nvidia-utils<=331.20 glamor-egl Replaces : glamor-egl Download Size : 1298.91 KiB Installed Size : 3632.00 KiB Packager : Laurent Carlier <lordheavym@gmail.com> Build Date : Wed 11 Feb 2015 10:11:37 AM EET Validated By : MD5 Sum SHA-256 Sum Signature 
0
Das klingt, als würden Sie das falsche Problem verfolgen ... Warum müssen Sie ein Downgrade durchführen, um die Treiber zu verwenden? Die "offiziellen" Binär-Treiber von AMD werden nicht mehr verwendet und durch die Open-Source-Treiber ersetzt, zu denen AMD beiträgt. Können Sie nicht einfach die Radeon-Treiber verwenden? acejavelin vor 7 Jahren 0
Die neuesten Open Source-Versionen unterstützen Xorg 1.19 oder neuer nicht. airbournenation vor 7 Jahren 0

1 Antwort auf die Frage

2
grawity

Die gesamte Frage beruht auf falschen Voraussetzungen.

  • Sie können nicht zwei Pakete mit demselben Namen installieren. Wenn Sie dies versuchen, wird lediglich das vorhandene Paket aktualisiert oder heruntergestuft.

  • pacman -Si zeigt keine installierten Pakete an - es zeigt Pakete an, die aus diesen Repositorys zur Installation verfügbar sind .

    Um installierte Pakete zu prüfen, würde man verwenden, und solche Pakete hätten überhaupt keinen Bezug zu ihrem "Ursprungs" -Repository.pacman -Qi

Außerdem sind die alten AMD "Catalyst" -Treiber wahrscheinlich nicht die erste Verwendung wert, es sei denn, Sie möchten wirklich das Beste aus einer alten (Vor amdgpu) Grafikkarte herausholen. Ansonsten bleib einfach beim Standardtreiber radeon.

Und wenn Ihre Karte amdgpustattdessen neu genug ist, installieren Sie trotzdem die vollständig falschen Treiber - Sie möchten amdgpu-prostattdessen das Paket.


Das heißt, wenn Sie möchten, dass Pacman ein bestimmtes Repository bevorzugt, listen Sie es zuerst auf pacman.conf- das heißt, setzen Sie den gesamten [xorg116]Abschnitt voran[core] und [extra].

Erzwingen Sie dann ein Downgrade mit pacman -Syuu und die 1.16-Pakete werden installiert.

Alternativ ist es möglich, einzelne Pakete von einem nicht bevorzugten Repository aus zu installieren, dies wird jedoch nicht gespeichert .pacman -S xorg116/xorg-server

praktischer Gedächtnis: `pacman -S` zum * Suchen * von Repos; `pacman -Q`, um lokale Pakete abzufragen. quixotic vor 7 Jahren 0