pkg-stat() {
PACKAGE=$1
STAT=( $( apt-cache policy $PACKAGE 2>/dev/null |grep "Candidat\|Installé"|sed "s/..Candidat.:.//"|sed "s/..Installé.:.//") )
if [[ -n $STAT ]] ; then
  case $STAT[1] in
    ('(aucun)')
      case $STAT[2] in
        ('aucun') return 3
          ;;
        (*) return 2
          ;;
      esac
      ;;
    (*) return 0
      ;;
  esac
else
  return 1
fi
}

test-pkg() {
local PACKAGES=( $@ )
INST=()
for PACKAGE in $PACKAGES ; do
  pkg-stat $PACKAGE ; RET=$?
  ALIGN=$(( 30-${#PACKAGE} ))
  case $RET in
    (0) printf "\x1b[32m%s%${ALIGN}s\x1b[0;1m[\x1b[32;1mINSTALLÉ\x1b[0;1m]\x1b[0m\n" "$PACKAGE"
      ;;
    (1) printf "\x1b[31;1m%s%${ALIGN}s\x1b[0;1m[\x1b[31;1mN'EXISTE PAS\x1b[0;1m]\x1b[0m\n" "$PACKAGE"
      ;;
    (2) printf "\x1b[34;1m%s%${ALIGN}s\x1b[0;1m[\x1b[34;1mSERA INSTALLÉ\x1b[0;1m]\x1b[0m\n" "$PACKAGE"
      ;;
    (3) printf "\x1b[33;1m%s%${ALIGN}s\x1b[0;1m[\x1b[33;1mPAS DE VERSION CANDIDATE\x1b[0;1m]\x1b[0m\n" "$PACKAGE"
      ;;
  esac
done
}

test-pkg
