LINUX.ORG.RU

Gentoo distfiles на переносном жестком диске

 


0

1

Т.к. дома очень тормозной компьютер, а по сети гигабайты гонять долго, да и место хочется сэкономить, у меня возникло желание поместить все distfiles вместе с бинарными сборками и .ccache на USB-HDD.

И если с distfiles и ccache все понятно (в настройках make.conf указываются), то как быть со списком установленных пакетов? Как синхронизировать — скажем, поставил я дома новый пакет, а на работе при обновления «мира» этот пакет тоже должен появиться?

☆☆☆☆☆

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

Black_Shadow, TDrive, а как в генте хранятся номера установленных пакетов? А то вот пытался сейчас обновиться по бинарникам с работы, а emerge стал материться на несоответствие флагов и версий (хотя /etc/portage и дома, и на работе одинаковые).

Eddy_Em ☆☆☆☆☆
() автор топика

man emerge на предмет --buildpkg --buildpkgonly --getbinpkg --getbinpkgonly , man quickpkg. Там же в man написано куда кладутся собранные бинарные пакеты и как это изменить.

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

поставь вместо генту кальку

Кстати да. Именно из за этого я два года назад смигрировал в кальку. Некогда на работе компилять, работать надо. А там всё бинарное и дефолт у кде неплох, его мне тоже некогда и лень настраивать, дефолт устраивает. Дефолтное скомилённое ядро тоже кстати вполне вменяемое, на работе я его не трогаю.

А дома калька не мешает мне жить в ~amd64, иметь самосборное ядро и мир скомпилённый и заточенный под себя. Ибо по сути та же гента, не сильно отличается, надо только к утилитам и шаблонам привыкнуть и научиться их продуктивно использовать.

Jameson ★★★★★
()

Эдик копит скор на толксы

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

Спасибо, почитаю. Сделаю.

// сейчас борюсь с udev: почему-то не работает правило автомонтирования

Eddy_Em ☆☆☆☆☆
() автор топика
Ответ на: комментарий от Eddy_Em

сейчас борюсь с udev: почему-то не работает правило автомонтирования

Ты глобальное хочешь? Помочь не смогу, считаю его идеологически вредным. Меня устраивает монтирование руками в консоли и кдешная менюшка, предлагающая варианты действий и монтирующая в /run/media/blablabla... Кстати, ныне по феншую модно не в /mount, а в /run/media/<имя воткнувшего флешку юзера>/disk_label автомонтировать. У каждого юзверя в системе свои точки монтирования ныне.

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

Я уже разобрался: раньше не надо было делать udevadm control -R, а теперь — надо.

Монтирую по правилам, которые я в местной вики выкладывал. Т.е. udev создает директорию в /media и добавляет запись в fstab, чтобы я мог флешку подмонтировать.

Eddy_Em ☆☆☆☆☆
() автор топика
Ответ на: комментарий от Eddy_Em

/var/db/pkg, синхронизировать очень не советую, если не разбираешься в потрохах portage на уровне программиста этого самого portage :-)

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

Спасибо за совет. Тогда для начала синхронизирую хотя бы world.

Это кстати не обязательно совсем. Зачем? Лучше синхронизируй use флаги, чтобы бинарные пакеты с одной машины на другую ложились не вызывая конфликтов и не требуя разрешения зависимостей.

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

Там вообще дикость какая-то!

Там костылями лечат уже решённый баг. Просто по ходу разбираются в устройстве модного нынче механизма индивидуального монтирования в каталог юзера в /run

Ты же накостылил своё, личное решение. Я не против, каждый извращается как желает, це ж генту. Просто я оччень не люблю, когда менять конфиг лезут автоматическими скриптами. А fstab - таки конфиг. Меня это в утилитах calculate linux бесит кстати, но радует хотя бы наличие механизма пользовательских clt шаблонов, которыми я могу сам на поведение утилит влиять.

IMHO это всё таки некрасиво - автоматически менять содержимое статических системных конфигов скриптами.

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

разбираются в устройстве модного нынче механизма индивидуального монтирования в каталог юзера в /run

Ох уж эти извращенцы — любители BDSM!

Ты же накостылил своё, личное решение

Отчасти стырил на просторах интернета. Известное решение, ему 100 лет в обед! Кроме него я никаких монтирований не признаю!

Просто я очень не люблю, когда менять конфиг лезут автоматическими скриптами

Это самый простой и эффективный способ. Иначе придется другой костыль использовать, который позволит юзверю монтировать что-то.

Eddy_Em ☆☆☆☆☆
() автор топика
Ответ на: комментарий от Eddy_Em

Ох уж эти извращенцы — любители BDSM!
Это самый простой и эффективный способ. Иначе придется другой костыль использовать, который позволит юзверю монтировать что-то.

Дык вроде штатное решение делать это через udisks и udisks-glue ныне, man udisks, emerge udisks-glue, man udisks-glue... Решает ту же задачу что и ты решаешь, только штатным способом в соответствии с ныне принятыми стандартами построения системы.

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

У меня профдеформация просто, лол. Всегда думаю «а как я потом это буду поддерживать и передавать», даже если это моя личная машина, лол.

Jameson ★★★★★
()

Черт знает что!

Стер все из корня, развернул stage3, вернул взад /boot, /etc и перелил бинарники в /usr/portage/distfiles.

Пытаюсь установить glibc — ругается на тест /bin/date; если замаскировать и просто поставить gcc, то gcc отказывается работать!

Ну что за дурдом? Пересобираю (уже минут 25 как собирается) на работе glbc — может, был коцаный бинарник?

Eddy_Em ☆☆☆☆☆
() автор топика
Ответ на: комментарий от Eddy_Em

Откатил на работе скриптом (мегабакса?) glibc до .17, сейчас пересобирается все. Надеюсь, к завтрашнему вечеру будет готово — попробую еще раз перенести к себе на домашний.

Eddy_Em ☆☆☆☆☆
() автор топика
Ответ на: комментарий от Lavos

Работа требует 100% проца и памяти? Жабокодер?

Нет, работа требует множества виртуалок и не отвлекаться на разруливание внезапных катастроф с хостом. Кроме того железо абсолютно середнячковое, разве что памяти много, и не требует самосборного ядра. Так что дефолт меня полностью устраивает, а раз так, зачем компилять?

Jameson ★★★★★
()

может на USB-HDD таскать виртуалку и синхронизировать? Хотя, придется повозиться с корректными настройками arch...

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

это только идея: поднять виртуалку. Есть distcc (сам не пользовал, но наслышан). На работе обновляешь виртуалку - дома, синхронизируешь свою машину с виртуалкой по distcc.

В качестве системы виртуализации бери qemu.

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

Есть distcc (сам не пользовал, но наслышан)

Пользую. Если не менять постоянно USE-флаги, то ускоряет компеляние.

На работе обновляешь виртуалку

???

На кой черт так делать, если есть chroot?

Eddy_Em ☆☆☆☆☆
() автор топика
Ответ на: комментарий от Eddy_Em

На кой черт так делать, если есть chroot?

с «червоным рутом» нет особо большого опыта, кроме ремонта и установок, а с виртуалками как-то интереснее что-ли. В стиле, типа: ...для того чтобы собачка переставила лапку, не нужно отдавать команду на перемещение лапки...

Пользую. Если не менять постоянно USE-флаги, то ускоряет компеляние.

ccache немного помогает

swwwfactory ★★
()

Едрен батон!

На работе i5, дома core2. А я в CFLAGS указал -march=native. Теперь понятно, какого фига у меня glibc бинарная нифига не взлетала!

Ну я и коняра! Сейчас запущу полную перекомпиляцию системы на работе без -march. На всякий случай вообще только -O2 оставлю. Нефиг.

Eddy_Em ☆☆☆☆☆
() автор топика

Итак, пишу уже с десктопа.

Вот только еще маленько непонятно: вроде бы обновил все, однако, ssh матерится:

ssh: symbol lookup error: ssh: undefined symbol: EC_GROUP_set_asn1_flag

При этом, гугол говорит, что функция EC_GROUP_set_asn1_flag поставляется openssl, который установлен:

equery l openssl
 * Searching for openssl ...
[IP-] [  ] dev-libs/openssl-1.0.1h-r1:0

Что за фантастика?

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