Дистрибутив для разработчика

Занимаюсь разработкой под web на Ruby On Rails - что примечательно развертывание проекта под rvm (типа emerge только в инфраструктуре ruby) требует даже на бинарном дистре кучу -dev пакетов и build тулзы.

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

Но как то надоело собирать пакеты с флагом -b и выкладывать их на локальную шару, чтобы остальной народ в компании мог обновиться.
Понятно, что мейнстрим кальки не будет собирать всякие dev-lang да еще и в разных версиях

Народ, как вы считаете, имеет смысл заморочиться и (в примитивнейшем случае) разродиться бинхостом для таких dev- тулз?

Но как то надоело собирать пакеты с флагом -b

echo “FEATURES=”${FEATURES} buildpkg" >>/etc/portage/make.conf

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

если машина в домене - все собираемые пакеты автоматически будут доступны для всех членов домена в /var/calculate/remote/packages/

А еще можете заморочиться с подъемом/настройкой PXE. Я тут описывал свои “надстройки” над стандартной установкой pxe.
С тех пор в моих наработках кое-что изменилось.
Как найду время - доведу до вида “показать не стыдно” и опишу обновленный вариант.

да, pxe с хомяками на шаре это конечно супер. можете подсказать что-то свежее и желательно пошаговое по этой теме (влючая подготовку образа)

ну и желательно услышать время загрузки по сети.

хотя есть одно но. специфика рельс например в том, что там политика “не вмешиваться в систему”, т.е. в ~/.rvm ставится около 2,5 Gb начитая от интерпритатора, до си-биндингов и просто либ. такое желательно иметь на своем винте. отсюда проблема синхронизации

Господа - Вы чего-то не в ту тему залезли
Но по сути если нужно=а поддержка в виде зеркала - то могу помочь

ну почему же, можно just4fun собрать дистр (который мы например будем ставить на новые компы для “новобранцев”, а я дома с удовольствием буду обновлять домашний рабочий ноут), binhost это ж минимальный вариант.

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

ну и желательно услышать время загрузки по сети.

порядка полуминуты-трех на 100MB в раб.станцию и гигабите в сервер
зависит от машины

это с убранными ненужными действиями(весь мой полугодовой опыт работы с pxe говорить что ненужными) утяжеляющими загруженную систему через “грязные хаки”, вроде:

* gtk-update-icon-cache в шаблонах

find ${NEW_ROOT}/var/lib/layman/calculate/profiles/templates/ -name icons-update -exec rm -vf \{\} \;

* “трогание”(touch) ядра+либ, а также создание странных, ненужных ни для pxe ни для scratch симлинков (у меня во всяком случае ни там ни там нет в них необходимости) в шаблоне

find ${NEW_ROOT}/var/lib/layman/calculate/profiles/templates/ -name prepare-scratch -exec rm -vf \{\} \;

* аналогичное (якобы нужное) “трогание” (touch /* /bin/* /sbin/*) в службе /etc/init.d/calculate подобным скриптом:

sed -ri 's/(^\s+touch.*$)/#\1/' ${NEW_ROOT}/etc/init.d/calculate

* отключением жрущих ценную память prelink и preload следующим образом:

rm -f ${NEW_ROOT}/etc/runlevels/boot/preload
echo 'PRELINKING=""' >>${NEW_ROOT}/etc/conf.d/prelink

Про NEWROOT и то как выполнить некоторые действия из ядра можно почитать тут

С тех пор в этой системе загрузки сделаны некоторые “улучшения”.
Среди прочего - многослойное подключение squash-ей с “дополнительным набором софта” и нечто вроде DNA с целыми группами конфигов/шаблонов и прочей мелочи которая должна присутствовать ДО ПЕРВОГО ВВОДА В ДОМЕН

Создание упомянутых squash-ей пока приходится делать вручную.
Но можно допилить набор утилит cl-assemble cl-builder cl-image для автоматизации этого процесса.
все монтирование слоев основано на подобном действии:

mount -vo "remount,ins:1:${new_branch}=ro+wh" ${NEW_ROOT}

В планах также вынос части (или всех) этих действий, а также ряда других интересных фишек, из ядра в службу на уровень загрузки sysinit сразу после udev и sysfs.
Но на это все сейчас времени нет, работы поуши.
<<<мысли вслух обращенные к девелоперам>>>
Кстати, часть шаблонов накладываемых перед созданием squashfs тоже неплохо было бы вынести на этот уровень. Вроде патчей inittab для livecd
<<</мысли>>>