Browse Source

Clifford Wolf:


			
			
				rocklinux
			
			
		
Clifford Wolf 20 years ago
parent
commit
33807c6ea4
14 changed files with 135 additions and 116 deletions
  1. +5
    -5
      Documentation/Developers/HACKING-HOWTO
  2. +5
    -5
      Documentation/i18n/Spanish/HACKING-HOWTO.es
  3. +1
    -1
      misc/jailing/config.in
  4. +6
    -6
      package/avm/bootsplash/config.in
  5. +1
    -1
      package/base/dietlibc/config-350.in
  6. +3
    -3
      package/base/linux/config-500.in
  7. +3
    -3
      package/base/linux/linux.conf
  8. +1
    -1
      package/base/lprng/config.in
  9. +1
    -1
      package/base/sendmail/config.in
  10. +1
    -1
      package/mnemoc/boehm-gc/subconfig-libs.in
  11. +1
    -1
      package/rene/apache/config.in
  12. +56
    -37
      scripts/Config
  13. +30
    -30
      scripts/config.func
  14. +21
    -21
      scripts/config.in

+ 5
- 5
Documentation/Developers/HACKING-HOWTO

@ -732,9 +732,9 @@ Packages.new file and renaming it to Packages. E.g.:
if [ $ROCKCFG_TRG_GENERIC_BUILDSF != 1 ] ; then
awk '$4 != "sourceforge" { print }' \
< config/$config/packages \
> config/$config/packages.new
mv config/$config/packages.new config/$config/packages
< config/$config.$swpid/packages \
> config/$config.$swpid/packages.new
mv config/$config.$swpid/packages.new config/$config.$swpid/packages
fi
The packages file is blank-separated and easy to parse with grep, sed and awk.
@ -766,8 +766,8 @@ Because of the 'counter' field, categories and flags are always pre- and
postfixed with a ' '. So you can e.g. easy remove all not dietlibc-ready
packages with a command like:
grep ' DIETLIBC ' < config/$config/packages \
> config/$config/packages.new
grep ' DIETLIBC ' < config/$config.$swpid/packages \
> config/$config.$swpid/packages.new
Read the existing config.in files for details.

+ 5
- 5
Documentation/i18n/Spanish/HACKING-HOWTO.es

@ -762,9 +762,9 @@ ejemplo:
if [ $ROCKCFG_TRG_GENERIC_BUILDSF != 1 ] ; then
awk '$4 != "sourceforge" { print }' \
< config/$config/packages \
> config/$config/packages.new
mv config/$config/packages.new config/$config/packages
< config/$config.$swpid/packages \
> config/$config.$swpid/packages.new
mv config/$config.$swpid/packages.new config/$config.$swpid/packages
fi
EL fichero de paquetes esta separado por blancos y es facil de analizar con
@ -800,8 +800,8 @@ C
precedidas de un ' ', puedes de forma sencilla borrar todos los paquetes menos
dietlibc-ready con un comando como:
grep ' DIETLIBC ' < config/$config/packages \
> config/$config/packages.new
grep ' DIETLIBC ' < config/$config.$swpid/packages \
> config/$config.$swpid/packages.new
Leete los ficheros config.in que hay para más detalles.

+ 1
- 1
misc/jailing/config.in

@ -32,7 +32,7 @@ menu_begin MENU_JAILING 'Chroot-Jailing Options'
fi
comment "-- Packages --"
for y in `grep '^X.* JAIL ' \
config/$config/packages | cut -d' ' -f5`
config/$config.$swpid/packages | cut -d' ' -f5`
do
bool "Enable jailing in package $y" \
ROCKCFG_JAILING_$y 1

+ 6
- 6
package/avm/bootsplash/config.in

@ -29,15 +29,15 @@ then
if [ $ROCKCFG_KERNEL_BOOTSPLASH == '1' ]; then
for x in CONFIG_FBCON_SPLASHSCREEN ; do
grep -s -v $x config/$config/linux.cfg > config/$config/linux.cfg.$$
echo "$x=y" >> config/$config/linux.cfg.$$
mv config/$config/linux.cfg.$$ config/$config/linux.cfg
grep -s -v $x config/$config.$swpid/linux.cfg > config/$config.$swpid/linux.cfg.$$
echo "$x=y" >> config/$config.$swpid/linux.cfg.$$
mv config/$config.$swpid/linux.cfg.$$ config/$config.$swpid/linux.cfg
done
else
for x in CONFIG_FBCON_SPLASHSCREEN ; do
grep -s -v $x config/$config/linux.cfg > config/$config/linux.cfg.$$
# echo "$x=n" >> config/$config/linux.cfg.$$
mv config/$config/linux.cfg.$$ config/$config/linux.cfg
grep -s -v $x config/$config.$swpid/linux.cfg > config/$config.$swpid/linux.cfg.$$
# echo "$x=n" >> config/$config.$swpid/linux.cfg.$$
mv config/$config.$swpid/linux.cfg.$$ config/$config.$swpid/linux.cfg
done
fi
menu_end

+ 1
- 1
package/base/dietlibc/config-350.in

@ -36,7 +36,7 @@ then
if [ $ROCKCFG_DIETLIBC_ALL = 0 ]; then
block_begin 2
pkgout
for i in `grep " DIETLIBC " config/$config/packages | \
for i in `grep " DIETLIBC " config/$config.$swpid/packages | \
cut -f5 -d" " | sort`
do
x="${i//-/_}" ; x="${x//+/_}"

+ 3
- 3
package/base/linux/config-500.in

@ -96,13 +96,13 @@ then
if [ "$ROCKCFG_PKG_LINUX_CUSTCONFIG" = 1 ] ; then
block_begin 3
comment 'The kernel config is stored in:'
comment "config/$config/linux.cfg"
comment "config/$config.$swpid/linux.cfg"
editfile ROCKCFG_PKG_LINUX_CUSTCONFIG_FILE \
config/$config/linux.cfg \
config/$config.$swpid/linux.cfg \
'Linux kernel build config settings'
block_end
else
rm -f config/$config/linux.cfg
rm -f config/$config.$swpid/linux.cfg
fi
menu_end

+ 3
- 3
package/base/linux/linux.conf

@ -142,7 +142,7 @@ auto_config ()
cp .config .config.3
# merge various text/plain config files
for x in $base/config/$config/linux.cfg \
for x in $base/config/$config.$swpid/linux.cfg \
$base/target/$target/kernel.conf ; do
if [ -f $x ] ; then
echo " merging: '$x'"
@ -253,9 +253,9 @@ lx_config ()
fi
if [ "$ROCKCFG_PKG_LINUX_CONFIG_STYLE" = none ] ; then
echo "Using \$base/config/\$config/linux.cfg."
echo "Using \$base/config/\$config.$swpid/linux.cfg."
echo "Since automatic generation is disabled ..."
cp -v $base/config/$config/linux.cfg .config
cp -v $base/config/$config.$swpid/linux.cfg .config
else
echo "Automatically creating default configuration ...."
auto_config

+ 1
- 1
package/base/lprng/config.in

@ -24,7 +24,7 @@ menu_begin MENU_PRINTER 'Selecting Print System'
pkgout; list=''
while read pkg ver ; do
list="$list $pkg Use_${pkg}_($ver)_as_standard_printer"
done < <(grep "^X .* PRINTER " config/$config/packages | cut -f5,6 -d' ')
done < <(grep "^X .* PRINTER " config/$config.$swpid/packages | cut -f5,6 -d' ')
list="$list none Do_not_configure_a_default_printer"
choice ROCKCFG_DEFAULT_PRINTER none $list
menu_end

+ 1
- 1
package/base/sendmail/config.in

@ -27,7 +27,7 @@ menu_begin MENU_MAILER 'Selecting MTA (mail transfer agent)'
default=${default:-$pkg}
[ $pkg = sendmail ] && default=sendmail
list="$list $pkg Use_${pkg}_($ver)_as_standard_MTA"
done < <(grep "^X .* MTA " config/$config/packages | cut -f5,6 -d' ')
done < <(grep "^X .* MTA " config/$config.$swpid/packages | cut -f5,6 -d' ')
default=${default:-none}
list="$list none Do_not_configure_a_default_MTA"
choice ROCKCFG_DEFAULT_MTA $default $list

+ 1
- 1
package/mnemoc/boehm-gc/subconfig-libs.in

@ -28,6 +28,6 @@ then
while read x; do
bool "Use it in Objective-C (${x#gcc=})" ROCKCFG_PKG_BOEHMGC_OBJC${x#gcc=gcc} 0
bool "Use it in Java (${x#gcc=})" ROCKCFG_PKG_BOEHMGC_JAVA${x#gcc=gcc} 0
done < <( grep '^X .* gcc=' config/$config/packages | grep -v cross | cut -d' ' -f 5 )
done < <( grep '^X .* gcc=' config/$config.$swpid/packages | grep -v cross | cut -d' ' -f 5 )
fi

+ 1
- 1
package/rene/apache/config.in

@ -36,7 +36,7 @@ then
default="$pkg"
fi
list="$list $pkg Use_${pkg}_($ver)_as_standard_DB"
done < <(grep "^X .* bdb[0-9 ]*" config/$config/packages | \
done < <(grep "^X .* bdb[0-9 ]*" config/$config.$swpid/packages | \
cut -f5,6 -d' ' | sort)
if [ "$list" ] ; then

+ 56
- 37
scripts/Config

@ -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

+ 30
- 30
scripts/config.func

@ -34,7 +34,7 @@ var_insert() {
eval "$1=\"$3\$$1\""
}
# Functions for working with config/$config/packages
# Functions for working with config/$config.$swpid/packages
#
# pkgenable package-list
# pkgdisable package-list
@ -47,8 +47,8 @@ then
pkgin() { :; }
pkgout() { :; }
__pkgfilter() {
"$@" < config/$config/packages > config/$config/packages.new
mv config/$config/packages.new config/$config/packages
"$@" < config/$config.$swpid/packages > config/$config.$swpid/packages.new
mv config/$config.$swpid/packages.new config/$config.$swpid/packages
}
pkgfilter() {
bprof pkgfilter start
@ -92,18 +92,18 @@ then
pkgcheck() {
bprof pkgcheck start
local pattern="$1"; pattern="${pattern//+/\\+}"
egrep -q "^$2.*[ =]($pattern) " config/$config/packages; local ret=$?
egrep -q "^$2.*[ =]($pattern) " config/$config.$swpid/packages; local ret=$?
bprof pkgcheck stop
return $ret
}
else
pkgin() { cfghlp pkg_in config/$config/packages; }
pkgout() { cfghlp pkg_out config/$config/packages ; }
pkgin() { cfghlp pkg_in config/$config.$swpid/packages; }
pkgout() { cfghlp pkg_out config/$config.$swpid/packages ; }
pkgfilter() {
bprof pkgfilter start
cfghlp pkg_out config/$config/packages.tmp
"$@" < config/$config/packages.tmp > config/$config/packages
cfghlp pkg_in config/$config/packages
cfghlp pkg_out config/$config.$swpid/packages.tmp
"$@" < config/$config.$swpid/packages.tmp > config/$config.$swpid/packages
cfghlp pkg_in config/$config.$swpid/packages
bprof pkgfilter stop
}
pkgenable() {
@ -171,7 +171,7 @@ comment() {
if [ $ROCKCFG_EXPERT -eq 1 -o $expert -eq 0 ] && \
[ $menu_current = $menu_this ] ; then
commentnr=$(( $commentnr + 1 ))
echo "COMMENT_$commentnr '$spacer$1'" >> config.dialog
echo "COMMENT_$commentnr '$spacer$1'" >> config.dialog.$swpid
# Hi, esden here, very ill stuff here I save the help
# strings here to a temporary file named config.help
@ -188,7 +188,7 @@ comment_id() {
bprof comment_id start
if [ $ROCKCFG_EXPERT -eq 1 -o $expert -eq 0 ] &&
[ $menu_current = $menu_this ] ; then
echo "$2 '$spacer$1'" >> config.dialog
echo "$2 '$spacer$1'" >> config.dialog.$swpid
# If you do not know what mighty esden
# is doing here see comment()
@ -204,7 +204,7 @@ const() {
local q="'"
local v="${2//$q/$q\\$q$q}"
eval "$1=\"\$2\""
echo "export $1='$v'" >> config/$config/config
echo "export $1='$v'" >> config/$config.$swpid/config
bprof const stop
}
@ -243,7 +243,7 @@ set_data() {
eval "$1=\"\$data\""
item="$1"
echo "export $1='${data//$q/$q\\$q$q}'" >> config/$config/config
echo "export $1='${data//$q/$q\\$q$q}'" >> config/$config.$swpid/config
bprof set_data stop
}
@ -267,18 +267,18 @@ choice() {
)
if [ "$fallback_hack" = 1 ]; then
obegin="?"; oend="?"; data="$dfl_data"; eval "$1=\"\$data\""
echo "export $1='${data//$q/$q\\$q$q}'" >> config/$config/config
echo "export $1='${data//$q/$q\\$q$q}'" >> config/$config.$swpid/config
fi
if [ "$menumode" -gt 0 -a $menu_current = $menu_this ] ; then
{ echo -en "$item\tchoice_action '$usr_name' '$usr_data'" ; shift ; shift
echo -n " '' 'Reset_this_switch_to_default_value'"
for x ; do echo -n " '$x'" ; done ; echo ; } >> config.data
for x ; do echo -n " '$x'" ; done ; echo ; } >> config.data.$swpid
xdata="$obegin$data$oend"
while [ "$1" -a "$1" != "$data" ] ; do shift ; shift ; done
printf "'$item' '$spacer%-${tabspace}s ${2//_/ }'\n" "$xdata" >> config.dialog
printf "'$item' '$spacer%-${tabspace}s ${2//_/ }'\n" "$xdata" >> config.dialog.$swpid
fi
bprof choice stop
@ -315,13 +315,13 @@ text() {
if [ "$menumode" -gt 0 -a $menu_current = $menu_this ] ; then
echo -e "$2\ttext_action '$1' '$usr_name'" \
"'${data//$q/$q\\$q$q}'" >> config.data
"'${data//$q/$q\\$q$q}'" >> config.data.$swpid
xdata="${obegin}$( printf "%-${tabspace}s" \
"$(echo $data | cut -c1-20)")${oend}"
printf "'$2' '$spacer%s $1'\n" \
"${xdata//$q/$q\\$q$q}" >> config.dialog
"${xdata//$q/$q\\$q$q}" >> config.dialog.$swpid
# If you do not know what mighty esden
# is doin here see comment()
@ -346,9 +346,9 @@ bool() {
if [ "$menumode" -gt 0 -a $menu_current = $menu_this ] ; then
if [ $data -eq 0 ] ; then x="${obegin} ${oend}" ; else x="${obegin}*${oend}" ; fi
echo -e "$2\tbool_action '$usr_name' '$usr_data'" >> config.data
echo -e "$2\tbool_action '$usr_name' '$usr_data'" >> config.data.$swpid
printf "$2 '$spacer%-${tabspace}s ${1//_/ }'\n" "$x" >> config.dialog
printf "$2 '$spacer%-${tabspace}s ${1//_/ }'\n" "$x" >> config.dialog.$swpid
# If you do not know what mighty esden is doin here see comment()
if [ "$4" != "" ] ; then
@ -379,10 +379,10 @@ editfile() {
line="${line//$q/$q\\$q$q}"
if [ $menu_current = $menu_this ] ; then
printf "$1:${editfilenr} '$spacer%-${tabspace}s %s'\n" \
`printf "%03d:" $line_nr` "$line" >> config.dialog
`printf "%03d:" $line_nr` "$line" >> config.dialog.$swpid
echo -e "$1:${editfilenr}\teditfile_action $2" \
"$line_nr '$3'" >> config.data
"$line_nr '$3'" >> config.data.$swpid
fi
editfilenr=$(( $editfilenr + 1 ))
@ -391,10 +391,10 @@ editfile() {
if [ $menu_current = $menu_this ] ; then
printf "$1:${editfilenr} '$spacer%-${tabspace}s %s'\n" \
`printf "%03d:" $line_nr` "<add new rule>" >> config.dialog
`printf "%03d:" $line_nr` "<add new rule>" >> config.dialog.$swpid
echo -e "$1:${editfilenr}\teditfile_action $2" \
"$line_nr '$3'" >> config.data
"$line_nr '$3'" >> config.data.$swpid
fi
editfilenr=$(( $editfilenr + 1 ))
@ -428,8 +428,8 @@ startprog() {
if [ $ROCKCFG_EXPERT -eq 1 -o $expert -eq 0 ] &&
[ $menu_current = $menu_this ] ; then
printf "$1 '$spacer%-${tabspace}s %s'\n" \
"-->" "$2" >> config.dialog
echo -e "$1\t$3" >> config.data
"-->" "$2" >> config.dialog.$swpid
echo -e "$1\t$3" >> config.data.$swpid
fi
bprof startprog stop
}
@ -469,13 +469,13 @@ menu_begin() {
if [ $ROCKCFG_EXPERT -eq 1 -o $expert -eq 0 ] &&
[ $menu_current = $menu_this ] ; then
printf "$1 '$spacer%-${tabspace}s %s'\n" \
"===>" "$2" >> config.dialog
echo -e "$1\tmenu_current=$menu_counter" >> config.data
"===>" "$2" >> config.dialog.$swpid
echo -e "$1\tmenu_current=$menu_counter" >> config.data.$swpid
fi
if [ $ROCKCFG_EXPERT -eq 1 -o $expert -eq 0 ] &&
[ $menu_current = $menu_counter ] ; then
echo "$1 '===> $2'" >> config.dialog
echo -e "$1\tmenu_current=$menu_this" >> config.data
echo "$1 '===> $2'" >> config.dialog.$swpid
echo -e "$1\tmenu_current=$menu_this" >> config.data.$swpid
fi
if [ $menu_current = $menu_counter ] ; then

+ 21
- 21
scripts/config.in

@ -212,22 +212,22 @@ expert_begin
menu_begin MENU_PKGSEL_RULES 'Edit package selection rules'
# Active error checking: explicitly show an annoying popup
filter=`printf "^[-xXoO][ \t]\+[a-zA-Z0-9_/*+.-]"`
if grep -lvq "$filter" config/$config/pkgsel 2> /dev/null && \
if grep -lvq "$filter" config/$config.$swpid/pkgsel 2> /dev/null && \
./src/rockdialog.bin --title "Build Config" --yesno \
"Invalid line(s) in package rule set. Remove?" 5 50
then
grep "$filter" < config/$config/pkgsel \
> config/$config/pkgsel.new
mv config/$config/pkgsel.new config/$config/pkgsel
grep "$filter" < config/$config.$swpid/pkgsel \
> config/$config.$swpid/pkgsel.new
mv config/$config.$swpid/pkgsel.new config/$config.$swpid/pkgsel
fi
unset filter
editfile ROCKCFG_PKGSEL_FILE config/$config/pkgsel \
editfile ROCKCFG_PKGSEL_FILE config/$config.$swpid/pkgsel \
'Package selection rules'
# Create an awk program from the list of package selection rules stored in
# config/$config/pkgsel which is applied to the list of packages stored in
# config/$config/packages.
# config/$config.$swpid/pkgsel which is applied to the list of packages stored in
# config/$config.$swpid/packages.
# Syntax for package selection rules is:
# <action> <patternlist>
# <action> is a single character: x or X enables the packages matching
@ -242,7 +242,7 @@ expert_begin
# such a <pattern> will duplicate the line of the <base-pkg> and substitute its
# package name with the name of the pkgforked package, that is, the <pattern>.
echo "# created from 'pkgsel'" > config/$config/pkgsel.awk
echo "# created from 'pkgsel'" > config/$config.$swpid/pkgsel.awk
while read action patternlist ; do
case "$action" in
[xX])
@ -271,28 +271,28 @@ expert_begin
fi
done < <( echo "$patternlist" | tr '\t ' '\n\n' )
echo "$address ) { $action; }"
done < config/$config/pkgsel >> config/$config/pkgsel.awk
echo '{ print; }' >> config/$config/pkgsel.awk
done < config/$config.$swpid/pkgsel >> config/$config.$swpid/pkgsel.awk
echo '{ print; }' >> config/$config.$swpid/pkgsel.awk
pkgout
gawk -f config/$config/pkgsel.awk < config/$config/packages \
> config/$config/packages.new 2> /dev/null
if [ -s config/$config/packages.new ] ; then
mv config/$config/packages.new config/$config/packages
gawk -f config/$config.$swpid/pkgsel.awk < config/$config.$swpid/packages \
> config/$config.$swpid/packages.new 2> /dev/null
if [ -s config/$config.$swpid/packages.new ] ; then
mv config/$config.$swpid/packages.new config/$config.$swpid/packages
else
rm -f config/$config/packages.new
rm -f config/$config.$swpid/packages.new
comment '---- Syntax error(s) in rule set!'
fi
pkgin
menu_end
else
rm -f config/$config/pkgsel
rm -f config/$config/pkgsel.awk
rm -f config/$config.$swpid/pkgsel
rm -f config/$config.$swpid/pkgsel.awk
fi
startprog ROCKCFG_SHOW_PKGLIST 'Show the current package list' \
"./src/rockdialog.bin --title 'ROCK Linux Config - Package List' \
--backtitle 'ROCK Linux $rockver Configuration' \
--textbox config/$config/packages.txt \
--textbox config/$config.$swpid/packages.txt \
$(( $lines - 4 )) $(( $columns - 5 ))"
block_end
@ -302,11 +302,11 @@ expert_begin
comment ' '
comment '- Additional GNU Configure Options'
block_begin 5
editfile ROCKCFG_CONFOPT_FILE config/$config/confopt \
editfile ROCKCFG_CONFOPT_FILE config/$config.$swpid/confopt \
'GNU Configure Options'
if [ -f config/$config/confopt ] ; then
if [ -f config/$config.$swpid/confopt ] ; then
const ROCKCFG_CONFIGURE_OPTS "`tr '\n' ' ' \
< config/$config/confopt`"
< config/$config.$swpid/confopt`"
else
const ROCKCFG_CONFIGURE_OPTS ""
fi

Loading…
Cancel
Save