Wie kann ich unter Gentoo Linux „emerge --sync“ verwenden, ohne ältere Ebuilds zu entfernen?

Wie kann ich unter Gentoo Linux „emerge --sync“ verwenden, ohne ältere Ebuilds zu entfernen?

Wenn ich emerge --syncmeine älteren .ebuild-Dateien verwende, werden sie gelöscht. Wie bekomme ich neuere .ebuild-Dateien, ohne die älteren zu verlieren?

Antwort1

Eine Möglichkeit, dies zu tun, besteht darin, die Standard-Rsync-Optionen von Portage außer den Löschoptionen zu überschreiben. Die Standardoptionen sind /usr/lib/portage/pym/_emerge/actions.pybei mir derzeit ab Zeile 2039 fest einprogrammiert.

Ohne "--force" und "--delete" würden Sie hinzufügen

PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --whole-file --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"

zu /etc/make.conf. Hierzu sollen keine Dateien oder Verzeichnisse mehr gelöscht werden.

Bearbeiten:Beachten Sie, dass Sie normalerweise nicht behalten möchtenbeliebigsolche Ebuilds innerhalb des Portage-Baums, mit dem Sie synchronisieren.

Wenn Sie bestimmte Ebuilds beibehalten möchten, gibt es zwei typische Szenarien:

  • Sie verwenden ein veraltetes Ebuild, das Sie behalten möchten.
  • Sie haben selbst ein Ebuild geschrieben oder irgendwo ein Ebuild gefunden und es dem Portage-Baum hinzugefügt, mit dem Sie synchronisieren.

In beiden Fällen ist es die beste Lösung, diese Ebuilds in ein lokales Overlay zu kopieren. Möglicherweise müssen Sie auch die Ebuilds kopieren, von denen sie abhängen. So erstellen Sie ein einfaches lokales Overlay:http://forums.gentoo.org/viewtopic-t-827407.html

verwandte Informationen