Когда я использую emerge --sync
мои старые файлы .ebuild удаляются. Как получить более новые .ebuild-ы, но не потерять старые?
решение1
Один из способов сделать это — переопределить параметры portage rsync по умолчанию, за исключением параметров, связанных с удалением. Параметры по умолчанию в настоящее время жестко закодированы в /usr/lib/portage/pym/_emerge/actions.py
строке 2039 у меня дома.
За исключением "--force" и "--delete" вы бы добавили
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --whole-file --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
в /etc/make.conf
. В том смысле, что никакие файлы или каталоги больше не должны удаляться.
Редактировать:Обратите внимание, что обычно вам не захочется сохранятьлюбойтакие ebuild-файлы находятся в дереве портежей, с которым вы синхронизируетесь.
Если вы хотите сохранить определенные ebuild-файлы, есть два типичных сценария:
- Вы используете устаревшую версию ebuild, которую хотите сохранить.
- Вы написали ebuild самостоятельно или где-то нашли ebuild и добавили его в дерево portage, с которым вы синхронизируетесь.
В обоих случаях лучшим решением будет скопировать эти ebuilds в локальный оверлей. Возможно, вам также придется скопировать ebuilds, от которых они зависят. Вот как создать простой локальный оверлей:http://forums.gentoo.org/viewtopic-t-827407.html