--- /dev/null
+. lib/apt_get_edited
+. lib/ensure_packages_of_tags
+
+minimize_installation() {
+    _INSTALL_TAGS="$@"
+
+    echo '### minimize_installation: narrow system to what's required explicitly by us and Debian'
+    _PATH_LIST_PREFIX=/tmp/list_
+    _TOK_REQ=' required'
+
+    echo "# Collect packages deemed '${_TOK_REQ}' by Debian: "
+    _PATH_LIST_UNSORTED="${_PATH_LIST_PREFIX}unsorted"
+    dpkg-query -Wf '${Package} ${Priority}\n' | grep "${_TOK_REQ}" | cut -d' ' -f1 > "${_PATH_LIST_UNSORTED}"
+    _PATH_LIST_WHITE="${_PATH_LIST_PREFIX}white"
+    sort "${_PATH_LIST_UNSORTED}" > "${_PATH_LIST_WHITE}"
+    echo $(cat "${_PATH_LIST_WHITE})
+
+    echo -n '# Collect installed packages outside this selection: '
+    dpkg-query -Wf '${Package}\n' > "${_PATH_LIST_UNSORTED}"
+    _PATH_LIST_ALL_PACKAGES="${_PATH_LIST_PREFIX}all_packages"
+    sort "${_PATH_LIST_UNSORTED}" > "${_PATH_LIST_ALL_PACKAGES}"
+    _PATH_LIST_BLACK="${_PATH_LIST_PREFIX}black"
+    comm -3 "${_PATH_LIST_ALL_PACKAGES}" "${_PATH_LIST_WHITE}" > "${_PATH_LIST_BLACK}"
+    echo $(cat "${_PATH_LIST_BLACK})
+
+    echo '# apt-mark auto packages from diff …'
+    apt-mark auto `cat "${_PATH_LIST_BLACK}"` > /dev/null
+    rm "${_PATH_LIST_UNSORTED}" "${_PATH_LIST_ALL_PACKAGES}" "${_PATH_LIST_WHITE}" "${_PATH_LIST_BLACK}"
+
+    echo '# install or mark as manually installed packages from our own selections …'
+    ensure_packages_of_tags ${_INSTALL_TAGS} 
+
+    echo '# run autopurge to get rid of all unwanted packages …'
+    apt_get_edited '-q -q autopurge'
+}