]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
install_prereq: Check if is installed aptitude otherwise to install. 31/2431/1
authorRodrigo Ramírez Norambuena <decipher.hk@gmail.com>
Thu, 4 Jun 2015 01:12:50 +0000 (21:12 -0400)
committerKevin Harwell <kharwell@digium.com>
Thu, 17 Mar 2016 19:19:03 +0000 (14:19 -0500)
If in Debian or system based, dont have aptitude installed the script do
nothing. This patch checked if aptitude  installed, if not installed.

Also, if execute script with all packages installed yet, the script not show
nothing and return exit 1 because the command 'grep' get nothing from pipe from
'awk'.

ASTERISK-25113 #close
Reported By: Rodrigo Ramírez Norambuena <decipher.hk@gmail.com>

Change-Id: Iebdff55805d3917166e5e08e0a1e2176f36ff27f
(cherry picked from commit 6737ded0581a9e1256bdfe30c1d747e7ca93f8b3)

contrib/scripts/install_prereq

index a47f38b103c7b15313cbf7cbee876f63827999d9..f8d5c534d87f250004493768798a645982d02ec7 100755 (executable)
@@ -70,9 +70,10 @@ check_installed_debs() {
        do
                tocheck="${tocheck} ^${pack}$"
        done
-       aptitude -F '%c %p' search ${tocheck} 2>/dev/null \
-               | awk '/^p/{print $2}' \
-               | grep -v ':i386$'
+       pkgs=$(aptitude -F '%c %p' search ${tocheck} 2>/dev/null | awk '/^p/{print $2}')
+       if ! [ ${#pkgs} -eq 0 ]; then
+               echo $pkgs | grep -v ':i386$'
+       fi
 }
 
 # parsing the output of yum is close to impossible.
@@ -96,6 +97,9 @@ check_installed_pkgs() {
 }
 
 handle_debian() {
+       if ! [ -x "$(command -v aptitude)" ]; then
+               apt-get install aptitude
+       fi
        extra_packs=`check_installed_debs $PACKAGES_DEBIAN`
        $testcmd aptitude install -y $extra_packs
 }