git-svn-id: http://svn.calculate.ru/calculate/trunk@2243 c91db197-33c1-4113-bf15-f8a5c547ca64

master
atratsevskiy 15 years ago
parent 1dadba8fc0
commit d1ba7c0c9c

@ -5,7 +5,7 @@ CHANGE LOG
* Добавлена поддержка сборки CLD/CLDX на базе CLS вместо stage3.
* Исправлен баг вразмаскировке пакетов последних версий.
* Эффекты рабочего стола по умолчанию включаются.
* Добавлена bash утилита emerge-scratch - вызывающая emerge для установки пакетов в Scratch режиме.
* Добавлена bash утилита scratch - переводящая консоль в chroot, монтирующая ресурсы для последующей сборки пакетов в Scratch слое.
* Добавлена переменная sleep со значением количества секунд до выполнения форматирования и других действий. По умолчанию значение равно 10 секундам. Поддерживается значение 'off' ('no' и 'false' - эквиваленты). Пример '--set-sleep=5'.
* Улучшено распознавание ноутбуков.

@ -18,7 +18,7 @@ install: all
@${FIND} install -wholename \*.svn -prune -o -type f -exec ${INSTALL} {} ${DESTDIR}/usr/${NAME}/{} \;
@${FIND} install -wholename \*.svn -prune -o -type l -exec ${COPYLINK} {} ${DESTDIR}/usr/${NAME}/{} \;
@${CHMOD} 755 ${DESTDIR}/usr/${NAME}/install/calculate
@${CHMOD} 755 ${DESTDIR}/usr/${NAME}/install/emerge-scratch
@${CHMOD} 755 ${DESTDIR}/usr/${NAME}/install/scratch
@${MKDIR} ${DESTDIR}/usr/bin
@${LN} ${DESTDIR}/usr/calculate/install/calculate ${DESTDIR}/usr/bin/calculate
@${LN} ${DESTDIR}/usr/calculate/install/emerge-scratch ${DESTDIR}/usr/bin/emerge-scratch
@${LN} ${DESTDIR}/usr/calculate/install/scratch ${DESTDIR}/usr/bin/scratch

@ -0,0 +1,5 @@
#!/bin/bash
env-update
source /etc/profile

@ -1,6 +1,6 @@
#!/bin/bash
#------------------------------------------------------------------------------
# emerge-scratch
# Scratch
# Copyright ©2009 Calculate Pack
#
# This program is free software: you can redistribute it and/or modify
@ -17,7 +17,6 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#------------------------------------------------------------------------------
MOUNT_DIRS="${MOUNT_DIRS} /dev /proc /usr/calculate/share /usr/calculate/install"
REMOUNT="mount -t unionfs -o remount,dirs=/ unionfs /"
BUILDER=/mnt/builder
TIMERUN=`python -c "import time;print str(time.time())[:10]"`
@ -32,7 +31,7 @@ watching() {
while read line;
do
if [ `echo "$line" | awk -F: '{print $1;}'` -ge $TIMERUN ] &&
[ "`echo "$line" | grep "$1"`" ]
[ "`echo "$line" | grep -e "unemerge success" -e "completed emerge"`" ]
then
echo ">>> Updating Scratch layers..."
$REMOUNT &>/dev/null
@ -55,11 +54,10 @@ mountres() {
#------------------------------------------------------------------------------
# Выполним emerge
#------------------------------------------------------------------------------
emergechroot() {
runchroot() {
touch $EMERGELOG
[ "`echo "$*" | grep -P "(\B-\w*C\w*|--unmerge)"`" ] && WHATWATCH="unemerge success" || WHATWATCH="completed emerge"
watching $WHATWATCH & 2>/dev/null
chroot $BUILDER /bin/bash -c "env-update &>/dev/null; source /etc/profile; emerge $*"
watching & 2>/dev/null
chroot $BUILDER /bin/bash --rcfile /usr/calculate/install/config/chroot.rc
WATCHINGPID=`ps axo pid,cmd | sed -nr "s|^\s*([0-9]+)\s+${TAILEMERGELOG}.*|\1|p"`
[ "${WATCHINGPID}" ] && kill -9 $WATCHINGPID &>/dev/null
$REMOUNT &>/dev/null
@ -91,6 +89,6 @@ then
cp /etc/resolv.conf ${BUILDER}/etc/
fi
mountres && emergechroot $*
mountres && runchroot $*
umountres
Loading…
Cancel
Save