Wie bringe ich pacman dazu, meine benutzerdefinierten PKGBUILDs beim Aktualisieren zu verwenden?

7

Ich habe a PKGBUILDfür Apache angepasst , ausgeführt makepkgund installiert pacman -U httpd.tar.xz, was gut funktioniert hat. Einige Monate später aktualisierte ich mein System, bei pacman -Syudem die Systemstandardkonfiguration für Apache verwendet wurde, die meinen Webserver beschädigte. Wie kann ich pacman anweisen, immer meine benutzerdefinierten Kompilierungseinstellungen zu verwenden, damit ich nicht jedes Mal manuell aktualisieren muss, wenn eine neue Version veröffentlicht wird?

Hugh Guiney
quelle

Antworten:

10

Pacman aktualisiert Apache nicht mit Ihrem angepassten PKGBUILD. Sie müssen dies manuell mit ABS tun . Sie können verhindern, dass Pacman Ihr benutzerdefiniertes Paket überschreibt.

Um die Antwort von Renan zu erweitern : Wenn Sie mehr als ein Paket haben, dessen pacmanAktualisierung Sie verhindern möchten , können Sie ein groupsFeld in die entsprechenden PKGBUILDs einfügen und dann /etc/pacman.confdie IgnoreGroupZeile verwenden.

Dies gibt Ihnen ein wenig mehr Kontrolle über mehrere Pakete, ohne dass pacman.confSie beim Hinzufügen und Entfernen von benutzerdefinierten PKGBUILDs daran denken müssen, diese zu bearbeiten .

In Ihren PKGBUILDs können Sie beispielsweise Folgendes verwenden:

groups=('modified')

und in /etc/pacman.conf:

IgnoreGroup = modified
Jasonwryan
quelle
2

Sie können /etc/pacman.confden Namen Ihres Pakets bearbeiten und zur IgnorePkgZeile hinzufügen . Auf diese Weise berührt Pacman Ihr Paket beim Upgrade nicht.

Renan
quelle
2

Ich habe dieses Problem gelöst, indem ich yaourt und customizepkg installiert habe , mit denen ich das Beste aus beiden Welten nutzen kann: die neuesten und besten Versionen aus den offiziellen Repositories, die automatisch auf meine spezifischen Anforderungen gepatcht werden.

Hugh Guiney
quelle