797: debian-main
debian-main |
Title text: dpkg: error processing package (--purge): subprocess pre-removal script returned error exit 163: OH_GOD_THEYRE_INSIDE_MY_CLOTHES |
Explanation
Debian is a Linux distribution most notable for introducing APT (Advanced Packaging Tool). APT is a tool that functions as an automated general software installer for Linux systems; all one has to do is tell it what software package they would like to install, and the program will automatically fetch the software and all of its dependencies (other packages that a program relies on, such as a library for processing ZIP archives) from a central repository. It will also automatically handle upgrades by automatically checking if the repository version of a package is higher than the currently installed version, and it can even handle the use of multiple repositories and linking between them; for example, if a piece of software is deemed worthy of inclusion in Debian's main repository, but as a stable release, the software developers can provide their own repository to provide a more experimental version for users who want it, and once that repository is added to APT's source list, APT will automatically realize that it should use the experimental version, since it has a higher version than that of the main repository. Although this wasn't the first packaging system for easy Linux installation (that honor goes to RPM), it is the first one that seamlessly integrated online installation and upgrades into the mix.
debian-main is Debian's main repository, included by default in all Debian installations. It's what you might call the "canon" of Debian, containing only those packages that have been approved by official Debian developers. Thus, getting a package on debian-main means that it, theoretically, conforms to a standard of quality.
In this case, however, the Debian developers seem to have not noticed that one of the dependencies for the package is "locusts." Locusts are a real insect, closely related to the grasshopper, that are best known for breeding extremely quickly, swarming, and devouring all green plant matter they come across, resulting in plagues. In some parts of the world they are also considered a delicacy. Cueball probably does not appreciate this as they crawl over his body searching for food, apparently spontaneously generated by APT as it saw that it needed "locusts" to install the package.
The title text is an error line from dpkg
, the program used to install APT packages. Every package contains several scripts (although some of them may be empty) that are run on various events related to that package; these are used to perform any setup/cleanup tasks the package needs. This line is an error line indicating that one of those scripts has failed. The relevant portions are:
-
error processing package (--purge)
: --purge is the option to purge a package completely from the system. This means that the program itself, all related data files, and all configuration files are removed from the system. So, the user was attempting to completely remove the locusts from the system without leaving a trace. -
subprocess pre-removal script
: The pre-removal script is the code run before actually removing a piece of software. Mostly, this allows long-running software (such as webservers) to stop themselves before removing anything, to avoid corrupting the hard disk. That means the error came while the computer was preparing to get rid of the locusts. -
returned error exit 163
: "Returned error" means just what it says, the script returned an error. "Exit" means that the error was a result of calling theexit()
function with a non-zero value, specifically the value 163. The exact value has no real significance other than signifying to a user or other application that understands what the code means; neitherdpkg
nor the Linux kernel itself treat any exit value specially, apart from checking whether the value is 0 (which means no error). -
OH_GOD_THEYRE_INSIDE_MY_CLOTHES
: This is the message returned along with the error. This seems to be the computer indicating that it is unwilling to go any further with the deletion because the locusts are crawling under its clothes.
Transcript
- AAAAAAAA
- [A swarm of insects cover Cueball and his computer. He is leaning back on their chair, flailing to get away.]
- My package made it into Debian-main because it looked innocuous enough; no one noticed "locusts" in the dependency list.
Discussion
Locusts may very well be grasshoppers. There doesn't seem to be any difference in the species, the grasshoppers change into locusts when they are crowded. Wikipedia - Locust swarming behaviour --Macxcool (talk) 14:50, 13 February 2014 (UTC)
I disagree with the last part of the explanation. I feel that the statement OH_GOD_THEYRE_INSIDE_MY_CLOTHES is the (possibly final) code comment from the programmer writing the dependencies, and has nothing to do with the server on the other end (why would a computer be wearing clothes in the first place?). 141.101.81.216 14:23, 24 February 2014 (UTC)
- Why would they be attacking Cueball or is Debian a bug for Haiku? -- Weatherlawyer (talk) (please sign your comments with ~~~~)
- The capitalisation and underscores are consistant with the error codes given by apt commands. 108.162.246.117 05:06, 30 April 2014 (UTC)
- Maybe the title text is just parsing the characters panicked thoughts as a somewhat appropriate command structure? -Pennpenn 108.162.250.162 03:54, 28 July 2015 (UTC)
- The Statement looks suspiciously like the messages lintian outputs on checking a package before it is uploaded to debian. An example would be: https://lintian.debian.org/tags/binary-file-built-without-LFS-support.html A longer list of examples is here: https://lintian.debian.org/tags.html Gunterkoenigsmann (talk) 20:55, 28 October 2016 (UTC)