Commit 65556ba7 authored by Vitaly Lipatov's avatar Vitaly Lipatov

epm history: print rpm sessions too

parent 2eea4c64
......@@ -17,9 +17,16 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
EHOG='\(apt-get\|rpm\)'
__alt_epm_history_journal()
{
a= journalctl -t apt-get -t rpm
}
__alt_epm_history_uniq()
{
a= journalctl -t apt-get | grep "apt-get\[[0-9][0-9]*\]:" | sed -e "s|.*apt-get\[\([0-9][0-9]*\)\]: .*|\1|" | uniq | tac
__alt_epm_history_journal | grep "$EHOG\[[0-9][0-9]*\]:" | sed -e "s@.*$EHOG\[\([0-9][0-9]*\)\]: .*@\2@" | uniq | tac
}
# args: pid, removed|installed
......@@ -27,25 +34,41 @@ __alt_epm_history_select()
{
local pid="$1"
local verb="$2"
a= journalctl -t apt-get | grep "apt-get\[$pid\]: .*$verb" | sed -e "s|.*apt-get\[[0-9][0-9]*\]: ||" | cut -d" " -f 1
__alt_epm_history_journal | grep "$EHOG\[$pid\]: .*$verb" | sed -e "s@.*$EHOG\[[0-9][0-9]*\]: @@" | cut -d" " -f 1
}
_alt_epm_history_date()
{
local pid="$1"
a= journalctl -t apt-get | grep "apt-get\[$pid\]: " | head -n1 | cut -d" " -f 1-3
__alt_epm_history_journal | grep "$EHOG\[$pid\]: " | head -n1 | cut -d" " -f 1-3,5 | sed -e 's|:$||'
}
_alt_epm_history_print_group()
{
local i
if [ -n "$2" ] ; then
echo
echo "$1 session:"
shift
else
return
fi
for i in $* ; do
echo " $i"
done
}
__alt_epm_history_removed()
{
echo "Removed packages history:"
__alt_epm_history_uniq | while read pid ; do
date="$(_alt_epm_history_date $pid)"
echo
echo "$date apt-get session $pid:"
removed="$(epm print shortname for $(__alt_epm_history_select $pid "removed") )"
installed="$(epm print shortname for $(__alt_epm_history_select $pid "installed") )"
epm tool --quiet estrlist exclude "$installed" "$removed" | xargs -n1 echo | sed -e "s|^| |"
_alt_epm_history_print_group "$date" $(estrlist exclude "$installed" "$removed")
done
}
......@@ -53,13 +76,11 @@ __alt_epm_history_installed()
{
echo "Installed packages history:"
__alt_epm_history_uniq | while read pid ; do
echo
date="$(_alt_epm_history_date $pid)"
echo "$date apt-get session $pid:"
#epm print shortname for $(__alt_epm_history_select $pid "installed") | sed -e "s|^| |"
removed="$(epm print shortname for $(__alt_epm_history_select $pid "removed") )"
installed="$(epm print shortname for $(__alt_epm_history_select $pid "installed") )"
epm tool --quiet estrlist exclude "$removed" "$installed" | xargs -n1 echo | sed -e "s|^| |"
_alt_epm_history_print_group "$date" $(estrlist exclude "$removed" "$installed")
done
}
......@@ -67,13 +88,11 @@ __alt_epm_history_updated()
{
echo "Updated packages history:"
__alt_epm_history_uniq | while read pid ; do
echo
date="$(_alt_epm_history_date $pid)"
echo "$date apt-get session $pid:"
#epm print shortname for $(__alt_epm_history_select $pid "installed") | sed -e "s|^| |"
removed="$(epm print shortname for $(__alt_epm_history_select $pid "removed") )"
installed="$(epm print shortname for $(__alt_epm_history_select $pid "installed") )"
epm tool --quiet estrlist intersection "$removed" "$installed" | xargs -n1 echo | sed -e "s|^| |"
_alt_epm_history_print_group "$date" $(estrlist intersection "$removed" "$installed")
done
}
......@@ -125,7 +144,7 @@ fi
case $PMTYPE in
apt-rpm)
docmd journalctl -t apt-get
docmd journalctl -t apt-get -t rpm -r
;;
apt-dpkg)
docmd less /var/log/dpkg.log
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment