|
|
@ -77,10 +77,11 @@ if [ $delete_mode = 1 ] ; then |
|
|
|
exit $? |
|
|
|
fi |
|
|
|
|
|
|
|
if [ $do_config_cycle = 0 ] ; then |
|
|
|
|
|
|
|
rm -f config.data config.dialog config.out config.help |
|
|
|
rm -f config.pcache.data config.pcache.cmd |
|
|
|
if [ $do_config_cycle = 0 ] |
|
|
|
then |
|
|
|
export swpid=swp$$ |
|
|
|
rm -f CONFIg.data.$swpid config.dialog.$swpid config.out.$swpid config.help.$swpid |
|
|
|
rm -f config.pcache.data.$swpid config.pcache.cmd.$swpid |
|
|
|
rm -f rockdialog.scrltmp # src/rockdialog.bin |
|
|
|
mkdir -p src |
|
|
|
|
|
|
@ -88,12 +89,12 @@ if [ $do_config_cycle = 0 ] ; then |
|
|
|
echo "Creating rockdialog tool." |
|
|
|
command="gcc misc/rockdialog/*.c ` |
|
|
|
`-Imisc/rockdialog -lncurses -o src/rockdialog.bin" |
|
|
|
echo "$command" ; eval "$command.$$" |
|
|
|
mv src/rockdialog.bin.$$ src/rockdialog.bin |
|
|
|
echo "$command" ; eval "$command.$swpid" |
|
|
|
mv src/rockdialog.bin.$swpid src/rockdialog.bin |
|
|
|
fi |
|
|
|
|
|
|
|
echo "Creating configuration script." |
|
|
|
cat << EOT > src/rockconfig.awk.$$ |
|
|
|
cat << EOT > src/rockconfig.awk.$swpid |
|
|
|
#!/usr/bin/awk -f |
|
|
|
|
|
|
|
FNR == 1 { |
|
|
@ -117,9 +118,9 @@ END { |
|
|
|
\$1 == "#" { next; } |
|
|
|
{ print; } |
|
|
|
EOT |
|
|
|
mv src/rockconfig.awk.$$ src/rockconfig.awk |
|
|
|
awk -f src/rockconfig.awk scripts/config.in > src/rockconfig.in.$$ 2> /dev/null |
|
|
|
mv src/rockconfig.in.$$ src/rockconfig.in |
|
|
|
mv src/rockconfig.awk.$swpid src/rockconfig.awk |
|
|
|
awk -f src/rockconfig.awk scripts/config.in > src/rockconfig.in.$swpid 2> /dev/null |
|
|
|
mv src/rockconfig.in.$swpid src/rockconfig.in |
|
|
|
|
|
|
|
echo "Running ROCK Linux $rockver configuration ..." |
|
|
|
while "$0" -cfg $config $oldconfig $profile $nobashmod -cycle ; do : ; done |
|
|
@ -176,24 +177,27 @@ mkdir -p config/$config |
|
|
|
touch config/$config/config |
|
|
|
touch config/$config/packages |
|
|
|
|
|
|
|
rm -rf config/$config.$swpid |
|
|
|
cp -r config/$config config/$config.$swpid |
|
|
|
|
|
|
|
configtitle="$(printf ' %-50s %6s active packages ]' \ |
|
|
|
"ROCK Linux $rockver Configuration - $config" \ |
|
|
|
"[ $(echo `grep '^X' config/$config/packages | wc -l`)" )" |
|
|
|
|
|
|
|
bprof main stop |
|
|
|
. ./config/$config/config |
|
|
|
if [ -f config/$config/config_usr ]; then |
|
|
|
. ./config/$config.$swpid/config |
|
|
|
if [ -f config/$config.$swpid/config_usr ]; then |
|
|
|
nousrconfig=0 |
|
|
|
. ./config/$config/config_usr |
|
|
|
. ./config/$config.$swpid/config_usr |
|
|
|
else |
|
|
|
nousrconfig=1 |
|
|
|
fi |
|
|
|
bprof main start |
|
|
|
|
|
|
|
rm -f config.dialog config.data config.help |
|
|
|
touch config.dialog config.data config.help |
|
|
|
echo -e "#\n# ROCK Linux $rockver Config File\n#" > config/$config/config |
|
|
|
echo -e "#\n# ROCK Linux $rockver User Config File\n#" > config/$config/config_usr |
|
|
|
rm -f config.dialog.$swpid config.data.$swpid config.help.$swpid |
|
|
|
touch config.dialog.$swpid config.data.$swpid config.help.$swpid |
|
|
|
echo -e "#\n# ROCK Linux $rockver Config File\n#" > config/$config.$swpid/config |
|
|
|
echo -e "#\n# ROCK Linux $rockver User Config File\n#" > config/$config.$swpid/config_usr |
|
|
|
spacer="" ; expert=0 ; tabspace="5" ; tabspace_list="" |
|
|
|
commentnr=0 ; editfilenr=0 |
|
|
|
|
|
|
@ -202,28 +206,28 @@ cmd="./scripts/Create-PkgList" |
|
|
|
[ "$ROCKCFG_DISABLE_BROKEN" = 1 ] && cmd="$cmd -nobroken" |
|
|
|
cmd="$cmd $ROCKCFG_ARCH" |
|
|
|
|
|
|
|
if [ "$cmd" != "`cat config.pcache.cmd 2> /dev/null`" ] ; then |
|
|
|
eval "$cmd" | tee config.pcache.data > config/$config/packages |
|
|
|
echo "$cmd" > config.pcache.cmd |
|
|
|
if [ "$cmd" != "`cat config.pcache.cmd.$swpid 2> /dev/null`" ] ; then |
|
|
|
eval "$cmd" | tee config.pcache.data.$swpid > config/$config.$swpid/packages |
|
|
|
echo "$cmd" > config.pcache.cmd.$swpid |
|
|
|
else |
|
|
|
cat config.pcache.data > config/$config/packages |
|
|
|
cat config.pcache.data.$swpid > config/$config.$swpid/packages |
|
|
|
fi |
|
|
|
bprof mkpkglist stop |
|
|
|
|
|
|
|
export ROCKCFG_ID="$rockver"; pkgin; . src/rockconfig.in; pkgout |
|
|
|
echo "export ROCKCFG_ID='$ROCKCFG_ID'" >> config/$config/config |
|
|
|
rm -f config/$config/*.tmp |
|
|
|
echo "export ROCKCFG_ID='$ROCKCFG_ID'" >> config/$config.$swpid/config |
|
|
|
rm -f config/$config.$swpid/*.tmp |
|
|
|
|
|
|
|
cut -f1,2,4,5,8- -d' ' config/$config/packages | sed 's, [^ ]*$,,' | \ |
|
|
|
tr ' ' '\t' | expand -t2,15,35, > config/$config/packages.txt |
|
|
|
cut -f1,2,4,5,8- -d' ' config/$config.$swpid/packages | sed 's, [^ ]*$,,' | \ |
|
|
|
tr ' ' '\t' | expand -t2,15,35, > config/$config.$swpid/packages.txt |
|
|
|
|
|
|
|
for x in ${!ROCKCFGUSR_*}; do |
|
|
|
eval "echo \"$x='\$$x'\"" |
|
|
|
done >> config/$config/config_usr |
|
|
|
done >> config/$config.$swpid/config_usr |
|
|
|
|
|
|
|
configtitle="$(printf ' %-50s %6s active packages ]' \ |
|
|
|
"ROCK Linux $rockver Configuration - $config" \ |
|
|
|
"[ $(echo `grep '^X' config/$config/packages | wc -l`)" )" |
|
|
|
"[ $(echo `grep '^X' config/$config.$swpid/packages | wc -l`)" )" |
|
|
|
|
|
|
|
bprof main stop |
|
|
|
|
|
|
@ -232,8 +236,8 @@ if [ -z "$oldconfig" ] ; then |
|
|
|
--backtitle '$configtitle' \ |
|
|
|
--menu 'Arrow keys navigate the menu. Press <Enter> to activate menu items. Highlighted letters are hotkeys.' \ |
|
|
|
$(( $lines - 4 )) $(( $columns - 5 )) $(( $lines - 12 )) \ |
|
|
|
'$current' `tr '\n' ' ' < config.dialog`" 2> config.out |
|
|
|
returncode=$? ; item="`cat config.out`" |
|
|
|
'$current' `tr '\n' ' ' < config.dialog.$swpid`" 2> config.out.$swpid |
|
|
|
returncode=$? ; item="`cat config.out.$swpid`" |
|
|
|
else |
|
|
|
returncode=1 |
|
|
|
fi |
|
|
@ -242,25 +246,37 @@ bprof main start |
|
|
|
|
|
|
|
[ "$returncode" = 1 -a "$menu_back" -ne -1 ] && returncode="menu-back" |
|
|
|
|
|
|
|
writeback() { |
|
|
|
for x in $( ls config/$config.$swpid ); do |
|
|
|
cp config/$config.$swpid/$x config/$config.$swpid/__tmp |
|
|
|
mv config/$config.$swpid/__tmp config/$config/$x |
|
|
|
done |
|
|
|
for x in $( ls config/$config ); do |
|
|
|
[ -e config/$config.$swpid/$x ] || rm -f config/$config/$x |
|
|
|
done |
|
|
|
rm -rf config/$config.$swpid |
|
|
|
} |
|
|
|
|
|
|
|
case "$returncode" in |
|
|
|
0|6) |
|
|
|
command="`grep "^$item " config.data | cut -f2-`" |
|
|
|
command="`grep "^$item " config.data.$swpid | cut -f2-`" |
|
|
|
{ echo -e "\n# Remember menu position:\ncurrent='$item'" |
|
|
|
echo -e "\n# Remember sub-menu:\nmenu_current='$menu_current'" |
|
|
|
echo -e "\n# Execute this config command:\n$command" |
|
|
|
} >> config/$config/config_usr |
|
|
|
} >> config/$config.$swpid/config_usr |
|
|
|
;; |
|
|
|
menu-back) |
|
|
|
{ echo -e "\n# New menu position:\ncurrent='$menu_backpos'" |
|
|
|
echo -e "\n# New sub-menu:\nmenu_current='$menu_back'" |
|
|
|
} >> config/$config/config_usr |
|
|
|
} >> config/$config.$swpid/config_usr |
|
|
|
;; |
|
|
|
1|255) |
|
|
|
rm -f config.data config.dialog config.out config.help |
|
|
|
rm -f config.pcache.data config.pcache.cmd |
|
|
|
rm -f config.data.$swpid config.dialog.$swpid config.out.$swpid config.help.$swpid |
|
|
|
rm -f config.pcache.data.$swpid config.pcache.cmd.$swpid |
|
|
|
rm -f rockdialog.scrltmp # src/rockdialog.bin |
|
|
|
echo "New config written to config/$config/*." |
|
|
|
echo "Cleaning up. Configuration finished." |
|
|
|
writeback |
|
|
|
bprof main stop |
|
|
|
bprof_print |
|
|
|
exit 1 ;; |
|
|
@ -269,24 +285,27 @@ case "$returncode" in |
|
|
|
item=$(echo $item | cut -f1 -d' ') # dialog(1) bug? |
|
|
|
{ echo -e "\n# Remember menu position:\ncurrent='$item'" |
|
|
|
echo -e "\n# Remember sub-menu:\nmenu_current='$menu_current'" |
|
|
|
} >> config/$config/config_usr |
|
|
|
} >> config/$config.$swpid/config_usr |
|
|
|
|
|
|
|
get_help $item > config.dialog |
|
|
|
get_help $item > config.dialog.$swpid |
|
|
|
|
|
|
|
bprof main stop |
|
|
|
./src/rockdialog.bin --title 'ROCK Linux Config - Help' \ |
|
|
|
--backtitle "ROCK Linux $rockver Configuration" \ |
|
|
|
--textbox config.dialog \ |
|
|
|
--textbox config.dialog.$swpid \ |
|
|
|
$(( $lines - 4 )) $(( $columns - 5 )) |
|
|
|
bprof main start |
|
|
|
;; |
|
|
|
*) |
|
|
|
echo "unknown returncode: $returncode" |
|
|
|
writeback |
|
|
|
bprof main stop |
|
|
|
bprof_print |
|
|
|
exit 1 ;; |
|
|
|
esac |
|
|
|
|
|
|
|
writeback |
|
|
|
|
|
|
|
bprof main stop |
|
|
|
bprof_print |
|
|
|
|
|
|
|