в /etc/rc.d/rc необходимо перенести splash_update "$subsys" выше чем [ -f "/var/lock/subsys/$subsys" -o -f "/var/lock/subsys/$subsys.init" ] && continue для START и STOP скриптов. Иначе не получается расчитать точное количество скриптов, необходимых для отображения в bootsplash.
Перенёс, хотя мотивации не понял. Fixed in startup-0.9.5.1-alt1
Спасибо. Мотивация такова: количество шагов progress'а подсчитывается как: for i in /etc/rc$runlevel.d/* do a=$[splash_nbservices++] done for i in /etc/rc$runlevel.d/*.rpm* do a=$[splash_nbservices--] done Далее при выполнении каждого шага увеличивается некая переменная и splash ползет по формуле: $(( 65534 * ( $splash_progress + 1) / $num )) Где $splash_progress - текущее значение, $num - общее количество, а 65534 - 100% splash'а (при записи этого значения в /proc/splash получим полностью заполненный прогресс-бар). Соответственно, т.к. мы общее количество сервисов подсчитали, то нам нужно в цикле на каждый сервис, который мы проходим - увеличивать progress bar. Иначе он просто не дойдет до конца, если мы будем скипать часть сервисов. В общем примерно так ;-) Да, я эту беду написал что бы потом самому не забыть.
Created attachment 776 [details] old version of splash functions Вот те splash-функции, глядя на которые я понял, что мантейнить их я не могу. Кладу их сюда на пямять, может кому понадобятся.