Comment 0 for bug 919216

Revision history for this message
Thomas Nygreen (nygreen-gmail) wrote :

I have experienced two cases where aptitude returns a 0 exit status code, even if it prints error messages to the terminal:

Case 1: A package cannot be installed due to unmet dependencies.
Example: (installing something that depends on sun-java on a host with the "partner" repository disabled)

 > sudo /usr/bin/aptitude -y install hadoop-0.20
 Reading package lists... Done
 Building dependency tree
 Reading state information... Done
 Reading extended state information
 Initializing package states... Done
 The following packages are BROKEN:
   hadoop-0.20
 The following NEW packages will be installed:
   hadoop-0.20-native{a} liblzo2-2{a}
 0 packages upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
 Need to get 41.2MB of archives. After unpacking 92.3MB will be used.
 The following packages have unmet dependencies:
   hadoop-0.20: Depends: sun-java6-jre which is a virtual package.
                Depends: sun-java6-bin which is a virtual package.
 The following actions will resolve these dependencies:

 Keep the following packages at their current version:
 hadoop-0.20 [Not Installed]
 hadoop-0.20-native [Not Installed]

 Score is -9868

 Writing extended state information... Done
 Reading package lists... Done
 Building dependency tree
 Reading state information... Done
 Reading extended state information
 Initializing package states... Done
 > echo $?
 0

Expected result: Non-zero exit status code

Case 2: The package name does not exist
Example:
> sudo aptitude install bogus-package
Reading package lists... Done
Building dependency tree
Reading state information... Done
Reading extended state information
Initializing package states... Done
Couldn't find any package whose name or description matched "bogus-package"
Couldn't find any package whose name or description matched "bogus-package"
No packages will be installed, upgraded, or removed.
0 packages upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 0B of archives. After unpacking 0B will be used.
Reading package lists... Done
Building dependency tree
Reading state information... Done
Reading extended state information
Initializing package states... Done
> echo $?
0

Expected result: Non-zero exit status code