Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 456128
Collapse All | Expand All

(-)etc-update (-15 / +25 lines)
Lines 77-86 scan() { Link Here
77
			[[ ! -f ${path} ]] && continue
77
			[[ ! -f ${path} ]] && continue
78
			local my_basename="${path##*/}"
78
			local my_basename="${path##*/}"
79
			path="${path%/*}"
79
			path="${path%/*}"
80
			find_opts=( -maxdepth 1 -name "._cfg????_${my_basename}" )
80
			find_opts=( -maxdepth 1 \( -name "._cfg????_${my_basename}" -o -name "${my_basename}.rpmnew" \) )
81
		else
81
		else
82
			# Do not traverse hidden directories such as .svn or .git.
82
			# Do not traverse hidden directories such as .svn or .git.
83
			find_opts=( -name '.*' -type d -prune -o -name '._cfg????_*' )
83
			find_opts=( -name '.*' -type d -prune -o \( -name '._cfg????_*' -o -name '*.rpmnew' \) )
84
		fi
84
		fi
85
		find_opts+=( ! -name '.*~' ! -iname '.*.bak' -print )
85
		find_opts+=( ! -name '.*~' ! -iname '.*.bak' -print )
86
86
Lines 93-99 scan() { Link Here
93
		for file in $(find "${path}"/ "${find_opts[@]}" |
93
		for file in $(find "${path}"/ "${find_opts[@]}" |
94
		              sed \
94
		              sed \
95
						-e 's://*:/:g' \
95
						-e 's://*:/:g' \
96
						-e "s:\(^.*/\)\(\._cfg[0-9]*_\)\(.*$\):\1\2\3$b\1$b\2$b\3:" |
96
						-e "s:\(^.*/\)\(\._cfg[0-9]*_\)\(.*$\):\1\2\3$b\1$b\2$b\3:" \
97
						-e "s:\(^.*/\)\(.*\)\(\.rpmnew\):\1\2\3$b\1$b\3$b\2:" |
97
		              sort -t"$b" -k2,2 -k4,4 -k3,3 |
98
		              sort -t"$b" -k2,2 -k4,4 -k3,3 |
98
		              LC_ALL=C cut -f1 -d"$b")
99
		              LC_ALL=C cut -f1 -d"$b")
99
		do
100
		do
Lines 101-107 scan() { Link Here
101
			rpath=${file%/*}
102
			rpath=${file%/*}
102
			rfile=${file##*/}
103
			rfile=${file##*/}
103
			cfg_file="${rpath}/${rfile}"
104
			cfg_file="${rpath}/${rfile}"
104
			live_file="${rpath}/${rfile:10}"
105
			live_file="${cfg_file%.rpmnew}"
106
			[[ "${live_file}" !=  "${cfg_file}" ]] || live_file="${rpath}/${rfile:10}"
105
107
106
			local mpath
108
			local mpath
107
			for mpath in ${CONFIG_PROTECT_MASK}; do
109
			for mpath in ${CONFIG_PROTECT_MASK}; do
Lines 620-636 while [[ -n $1 ]] ; do Link Here
620
done
622
done
621
${SET_X} && set -x
623
${SET_X} && set -x
622
624
623
type portageq >/dev/null || die "missing portageq"
625
if type portageq 2>/dev/null; then
624
portage_vars=(
626
	portage_vars=(
625
	CONFIG_PROTECT{,_MASK}
627
		CONFIG_PROTECT{,_MASK}
626
	PORTAGE_CONFIGROOT
628
		PORTAGE_CONFIGROOT
627
	PORTAGE_INST_{G,U}ID
629
		PORTAGE_INST_{G,U}ID
628
	PORTAGE_TMPDIR
630
		PORTAGE_TMPDIR
629
	EROOT
631
		EROOT
630
	USERLAND
632
		USERLAND
631
	NOCOLOR
633
		NOCOLOR
632
)
634
	)
633
eval $(portageq envvar -v ${portage_vars[@]})
635
	eval $(portageq envvar -v ${portage_vars[@]})
636
else
637
	[[ ! -f /etc/gentoo-release ]] || die "missing portageq"
638
	PORTAGE_CONFIGROOT='/'
639
	PORTAGE_TMPDIR='/tmp'
640
	CONFIG_PROTECT='/etc'
641
	CONFIG_PROTECT_MASK=''
642
	[[ ! -f /etc/sysconfig/etc-update ]] || . /etc/sysconfig/etc-update
643
fi
634
export PORTAGE_TMPDIR
644
export PORTAGE_TMPDIR
635
SCAN_PATHS=${*:-${CONFIG_PROTECT}}
645
SCAN_PATHS=${*:-${CONFIG_PROTECT}}
636
646

Return to bug 456128