================================================================================
portsreinstall - ports upgrading utility for massive forced reinstallation
- Version 3.1.0, July 7, 2014
+ Version 3.1.0, July 9, 2014
Copyright (C) 2010-2014 Mamoru Sakaue, MwGhennndo, All Rights Reserved.
================================================================================
# MYVERSION=3.1.0
# COMPATIBLE_VERSIONS='^(3\.1\.[0-9]+)$'
# Template for development versions
-MYVERSION=3.0.5+toward_3.1.0_20140708112157
+MYVERSION=3.0.5+toward_3.1.0_20140709012553
COMPATIBLE_VERSIONS='^(3\.0\.[0-9]+\+toward_3\.1\.[0-9]+_[0-9]+|3\.0\.[0-9]+\+toward_3\.0\.[0-9]+_[0-9]+|3\.1\.[0-9]+)$'
MYPREFIX=`dirname "\`dirname \"$0\"\`" | sed 's|/bin$||'`
MYPREFIX=${MYPREFIX:-/usr/local}
PROGRAM_DEPENDS=''
_program_exec_and_record_completion__operation ()
{
+ local tmp_installed_ports tmp_installed_pkgs
message_section_title "Collecting all installed packages"
- pkg_info_qoa > ${DBDIR}/installed_ports
- pkg_info_gen_pkg_origin_table
+ if [ -e "${DBDIR}/installed_ports.inspected" ]
+ then
+ if ! [ "${DBDIR}/installed_ports" -ot "${DBDIR}/initial" -a "${DBDIR}/installed_ports:pkg_vs_origin.tbl" -ot "${DBDIR}/initial" ]
+ then
+ tmp_installed_ports=${TMPDIR}/COLLECT_ALL_INSTALLED_PACKAGES:installed_ports.tmp
+ tmp_installed_pkgs=${TMPDIR}/COLLECT_ALL_INSTALLED_PACKAGES:installed_pkgs
+ cp /dev/null "$tmp_installed_ports"
+ cp /dev/null "$tmp_installed_pkgs"
+ find "${DBDIR}/initial" -depth 2 -type d | while read dbpath
+ do
+ echo "$dbpath" >> $tmp_installed_ports
+ cat "$dbpath/installed_version" >> $tmp_installed_pkgs >&2 || :
+ done
+ sed -E 's|.*/([^/]+/[^/]+)$|\1|' "$tmp_installed_ports" > ${DBDIR}/installed_ports
+ paste "$tmp_installed_pkgs" "${DBDIR}/installed_ports" > ${DBDIR}/installed_ports:pkg_vs_origin.tbl
+ fi
+ else
+ pkg_info_qoa > ${DBDIR}/installed_ports
+ pkg_info_gen_pkg_origin_table
+ fi
str_escape_regexp_filter < "${DBDIR}/installed_ports" \
| sed 's/^/^/; s/$/$/' > ${DBDIR}/installed_ports.grep_pattern
message_echo
case $COMMAND_MODE in
reset)
message_echo "Starting to reset the temporary database by preserving the initial snapshot of installed packages..."
+ program_chk_stage_complete INSPECT_ALL_DEPENDENCIES && touch "${DBDIR}/installed_ports.inspected"
find "${DBDIR}" -depth 1 \
-not \( -name saved_options.sh \
-or -name initial -or -name MYVERSION \