LINUX.ORG.RU
ФорумAdmin

gentoo binhost

 ,


0

1

привет
есть пк и ноут

пк скопировал ноут:/etc/ в пк:/usr/н/etc/
ноут:/etc/ и пк:/usr/н/etc/ настроил PORTAGE_BINHOST= в оба конца
пк:/usr/н/ настроил make.conf
ноут сделал quickpkg "*/*"

лучше все это делать еще и в chroot чтобы одинаковые профили были, но это еще больше времени компиляции


пк пытаюсь скопировать с ноут на пк уже собранные пакеты
для последующей компиляции браузера

PORTAGE_CONFIGROOT=$(pwd) ROOT=$(pwd) SYSROOT=$(pwd) emerge -av1g --binpkg-changed-deps=n @system

пк получаю

*** много стандартного вывода
[binary  N     ] *** to /usr/н ***
***
Total: 90 packages (90 new, 77 binaries), Size of downloads: 123 315 KiB

 * Error: circular dependencies:

(sys-apps/util-linux-2.36.2-r1:0/0::gentoo, ebuild scheduled for merge to '/usr/н/') depends on
 (sys-apps/systemd-248.6:0/2::gentoo, binary scheduled for merge to '/usr/н/') (buildtime)
  (sys-apps/util-linux-2.36.2-r1:0/0::gentoo, ebuild scheduled for merge to '/usr/н/') (runtime_slot_op)

It might be possible to break this cycle
by applying any of the following changes:
- sys-apps/util-linux-2.36.2-r1 (Change USE: -systemd)
- sys-apps/util-linux-2.36.2-r1 (Change USE: +build)
***

как это лучше и быстрее обойти?

обошел так -1O =sys-apps/util-linux-2.36.2-r1 gentoo binhost (комментарий)
можно просто PORTAGE_CONFIGROOT=$(pwd) ROOT=$(pwd) SYSROOT=$(pwd) emerge -av -1OG sys-apps/util-linux


и еще много записей после

The following USE changes are necessary to proceed:
 (see "package.use" in the portage(5) man page for more details)

в основном там ABI_X86 как это теперь лучше и быстрее обойти?

обошел копипастой


если не в chroot и без указания PKGDIR= сохраняет бинари в / а не $ROOT/
не понимаю как сделать quickpkg $ROOT



Последнее исправление: nanosecond (всего исправлений: 17)

Ответ на: комментарий от theLORdweller

сделал так

PORTAGE_CONFIGROOT=$(pwd) ROOT=$(pwd) SYSROOT=$(pwd) emerge -av1g --binpkg-changed-deps=n --binpkg-respect-use=n -1O =sys-apps/util-linux-2.36.2-r1

это решило

* Error: circular dependencies:

но как теперь быть с

The following USE changes are necessary to proceed:
 (see "package.use" in the portage(5) man page for more details)

"package.use" т.е. portage просит это на пк:/etc/portage/ сделать
а вот и нет это нужно было сделать в пк:/usr/ноут/etc/portage/
сделал копи паст в пк:/usr/ноут/./etc/portage/package.use/99crosstmp

странно, я думал нужные записи уже должны были быть

неужели нужно все прописывать?

nanosecond
() автор топика
Последнее исправление: nanosecond (всего исправлений: 5)

другие проблемы с которыми столкнулся

Detected file collision(s):
решается пк:/usr/ноут/./etc/portage/make.conf COLLISION_IGNORE= или вроде-бы даже FEATURES нужный есть для этого

такой способ копирования системы довольно медленный
несмотря на установленный многопоточный декомпрессор, portage бинари распаковывает в один поток

PORTAGE_BINHOST= через ssh иногда виснет или обрывается

с флагом -g некоторые-новые пакеты по умолчанию компилируются
с флагом -G не проверял, т.к. на самом деле у меня не все пакеты доступны

nanosecond
() автор топика
Последнее исправление: nanosecond (всего исправлений: 8)

успешно завершил

PORTAGE_CONFIGROOT=$(pwd) ROOT=$(pwd) SYSROOT=$(pwd) emerge -av1 --binpkg-changed-deps=n --binpkg-respect-use=n -g --exclude "sys-devel/gcc" @system

gcc установлен уже собранный с указанием старой версии

чтобы запустить компиляцию chromium пришлось снова сделать копи паст в package.use, и исправить очередной circular dependencies с помощью PORTAGE_CONFIGROOT=$(pwd) ROOT=$(pwd) SYSROOT=$(pwd) emerge -av --binpkg-changed-deps=n --binpkg-respect-use=n -1O media-libs/harfbuzz
без конфликтов запустил

PORTAGE_CONFIGROOT=$(pwd) ROOT=$(pwd) SYSROOT=$(pwd) emerge -av1 --binpkg-changed-deps=n --binpkg-respect-use=n -g chromium

но до компиляции chromium еще много пакетов

portage предупреждает * IMPORTANT: 2 config files in '/usr/ноут/etc/portage' need updating. игнорю

nanosecond
() автор топика
Последнее исправление: nanosecond (всего исправлений: 3)
Ответ на: комментарий от nanosecond

совет: лучше параллельно запустить то-же самое но с -f т.к. не все distfiles могут быть доступны, некоторые придется скачать вручную, чтобы не обломалась сборка

nanosecond
() автор топика

binhost предполагает, что на машинах одинаковый профиль. Если юзы разные, то нужно собирать отличающийся пакет руками, а не использовать emerge world. Я думал, это и так понятно. Геморно будет автоматизировать обновление. И binhost в генте в зачаточном состоянии.

arrecck ★★★
()
Ответ на: комментарий от arrecck

тоже умничать пришел? вопрос немного другой вообще-то

как это лучше и быстрее обойти?

chromium не собрался кст из-за avx, которых нет на целевой

nanosecond
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.