4) db_input medium neurodebian-repository/components || true ;;
5) db_input low neurodebian-repository/overwrite || true ;;
6) db_input low neurodebian-repository/suffix || true ;;
- 7) db_input low neurodebian-repository/apt-update || true ;;
+ 7) db_input medium neurodebian-repository/run-update-note || true ;;
esac
if db_go; then
case "$1" in
configure)
# obtain all the options and call nd-aptenable
- opts=""
+ opts="--do-not-update"
db_get neurodebian-repository/release; [ "$RET" = "auto" ] || opts+=" -r '$RET'"
db_get neurodebian-repository/mirror; nd_mirror="${RET##* }" # get just a url if it came together with alias
db_get neurodebian-repository/flavor; nd_flavor="$RET"
- db_get neurodebian-repository/components; nd_components="$RET"
+ db_get neurodebian-repository/components; nd_components="${RET// /}"
db_get neurodebian-repository/overwrite; [ "$RET" = "true" ] && opts+=" --overwrite" || :
db_get neurodebian-repository/suffix; [ "$RET" = "" ] || opts+=" --suffix='$RET'" || :
- db_get neurodebian-repository/apt-update; [ "$RET" = "true" ] || opts+=" --do-not-update" || :
- eval nd-aptenable -m "$nd_mirror" $opts
+ eval nd-aptenable -m "$nd_mirror" -c "$nd_components" $opts
;;
abort-upgrade|abort-remove|abort-deconfigure)
# nothing to do
set -e
-
case "$1" in
purge)
rm -f /etc/apt/sources.list.d/neurodebian.sources*.list
- db_get neurodebian-repository/apt-update || :
- if [ "$RET" = "true" ] ; then
- apt-get update
- fi
;;
remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
(e.g. NeuroDebian devel) or release, without interfering with the
main/default configuration file.
-Template: neurodebian-repository/apt-update
-Type: boolean
-Default: true
-Description: Should apt-get update be run to update list of packages?
-
-Template: neurodebian-repository/apt-update-failed
-Type: error
-Description: apt-get update failed
- An attempt to update package lists of enabled APT repositories (via
- apt-get update) has failed.
-
-Template: neurodebian-repository/netselect-not-found
-Type: error
-Description: netselect tool was not found
- Please install netselect tool first (apt-get install netselect) or
- choose a specific mirror.
+Template: neurodebian-repository/run-update-note
+Type: note
+Description: Upon completion of installation invoke update in your APT frontend.
+ For the installed NeuroDebian APT configuration to take an effect,
+ list of packages needs to be updated. This needs to be done
+ "manually" (e.g. apt-get update) upon completion of installation of
+ the neurodebian-repository package.
Template: neurodebian-repository/netselect-not-found
Type: error
netselect_opts+=" -I"
fi
best_mirror=$(get_mirrors | awk '{print $2;}' | eval $ae_sudo xargs netselect $netselect_opts | awk '{print $2;}')
- print_verbose 2 "Best mirror: $best_mirror"
- echo $best_mirror
+ if [ -z "$best_mirror" ]; then
+ print_verbose 1 "Failed to select mirror using netselect. Selecting default one ($nd_mirror_default)"
+ echo "$nd_mirror_default"
+ else
+ print_verbose 2 "Best mirror: $best_mirror"
+ echo $best_mirror
+ fi
fi
}
# if absent -- check availability of the package
apt_cache=$(LANG=C apt-cache policy "$pkg" 2>&1)
- if [[ "$apt_cache" =~ "Unable to locate package" ]] || [[ "$apt_cache" =~ "Candidate: (none)" ]]; then
+ if [[ "$apt_cache" =~ Unable\ to\ locate\ package ]] || [[ "$apt_cache" =~ Candidate:\ (none) ]]; then
print_verbose 1 "Package $pkg providing command $cmd is N/A. Skipping"
return 10;
fi
if [ -z "$ae_mirror" ]; then # none specified
ae_mirror_url=$nd_mirror_origin
else
- if ! [[ "$ae_mirror" =~ ".*://.*" ]]; then
+ if ! [[ "$ae_mirror" =~ .*://.* ]]; then
case "$ae_mirror" in
best) ae_mirror_url=$(netselect_mirror);;
default) ae_mirror_url=$nd_mirror_default;;
else
eval_dry apt-get update
fi
+else
+ print_verbose 1 "apt-get update was not run. Please run to take an effect of changes"
fi
if [ "$ae_verbose" -ge 2 ]; then