index : pacman | |
Archlinux32 fork of pacman | gitolite user |
summaryrefslogtreecommitdiff |
author | Dave Reisner <dreisner@archlinux.org> | 2012-04-19 12:55:20 -0400 |
---|---|---|
committer | Dave Reisner <dreisner@archlinux.org> | 2012-04-24 09:54:06 -0400 |
commit | 1b494ab77198a6cbb9c06a13435159641e2dc0c5 (patch) | |
tree | 6daca2567d4705e4d7ce6b284b91a34b4f1ce376 /contrib/paclog-pkglist.in | |
parent | 71fcb69028d6e02bc7f24459918e504d261f86cd (diff) |
-rwxr-xr-x | contrib/paclog-pkglist.in | 83 |
diff --git a/contrib/paclog-pkglist.in b/contrib/paclog-pkglist.in deleted file mode 100755 index 222bbc4c..00000000 --- a/contrib/paclog-pkglist.in +++ /dev/null @@ -1,83 +0,0 @@ -#!/bin/bash -# -# paclog-pkglist - Parse a log file into a list of currently installed packages -# -# Copyright (C) 2011 Dave Reisner <dave@archlinux.org> -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -declare -r myname='paclog-pkglist' -declare -r myver='@PACKAGE_VERSION@' - -export TEXTDOMAIN='pacman' -export TEXTDOMAINDIR='/usr/share/locale' -declare logfile=${1:-@localstatedir@/log/pacman.log} - -usage() { - printf 'usage: %s [pacman log]\n' "$myname" - printf 'example: %s @localstatedir@/log/pacman.log\n' "$myname" - printf '\ndefaults to: @localstatedir@/log/pacman.log\n' -} - -version() { - printf "%s %s\n" "$myname" "$myver" - echo 'Copyright (C) 2011 Dave Reisner <dave@archlinux.org>' -} - -if [[ $1 ]]; then - if [[ $1 = -@(h|-help) ]]; then - usage - exit 0 - elif [[ $1 = -@(V|-version) ]]; then - version - exit 0 - elif [[ ! -e $logfile ]]; then - printf $"target not found: %s\n" "$1" - exit 1 - fi -fi - -<"$logfile" awk ' -{ - action = $3 - pkgname = $4 - pkgver = $5 - upgver = $7 -} - -NF == 5 && action == "installed" { - gsub(/[()]/, "", pkgver) - pkg[pkgname] = pkgver - next -} - -NF == 7 && action == "upgraded" { - sub(/\)/, "", upgver) - pkg[pkgname] = upgver - next -} - -NF == 5 && action == "removed" { - pkg[pkgname] = -1 -} - -END { - for (i in pkg) { - if (pkg[i] != -1) { - printf "%s %s\n",i,pkg[i] - } - } -}' | sort - -# vim: set ts=2 sw=2 noet: |