## Удалить старые версии дубликато пакетов в базе pacman
## Удалить версии дубликатов пакетов в базе pacman
exec_remove_duplicated_pacman(){
PATH_PACMAN_DB="/var/lib/pacman/local/"
## Если в полном сохранении пользователь обновиляет систему и в очередное обновление обновил только модули, то изменения останутся старыми, т.к. /changes/ имеет приориетный низкий слой
## т.е. по факту приложения останутся старыми. В БД пакетов будут новые имена из модуля видны, и далее могут не дать обновить на новые пакеты.
## т.е. в базе pacman будут новые пакеты, а по факту файлы/бинарники старые
local PATH_PACMAN_DB="/var/lib/pacman/local/"
local PKG_PACMAN_DB_OLD=()
local PKG_PACMAN_DB_NEW=()
# Из всех дубликатов приложений в базе pacman удалить старые версии
cd ${PATH_PACMAN_DB}; rm -rdf $(ls -1vr ${PATH_PACMAN_DB} | sed -En 's/((.*)-([^-]+)-([^-]+))/\2|\1/p' | awk -F '|' 'prefixes[$1]++ {print $2}') #'
# Ситуация для которой нет обработки
# Если в полном сохранении пользователь обновиляет систему и в очередное обновление обновил только модули, то изменения останутся старыми, т.к. /changes/ имеет верхний слой
# т.е. по факту прилложения останутся старыми. Новые файлы из модуля будут видны, и далее могут не дать обновить на новые пакеты. Поэтому старые пакеты из базы pacman удаляем
# т.е. в базе pacman будут новые пакеты, а по факту файлы/бинарники старые