---
name: "pkg-order"
section: "1p"
platform: "linux"
package: "pkg-order"
version: "1.12"
release: "Debian 2.2 (Potato)"
platforms: ["linux"]
url: "https://new.carta.tech/pkg-order"
---

# pkg-order(1p)

pkg-order - A Package dependency checker and install ordering tool.

```
 usage: pkg-order [options] <Package-file-for-new-packages>
 where the options are:
```

```
 This utility does dependency checks, if you wish. It knows the
 difference between installed, new (and available) packages, and the
 relationship fields (pre-depends, depends, recommends, and
 suggests). (For example, the current packages list need not be read
 in unless you want dependency checks; you may already have done that
 and now merely wish an ordering). It comes with a Test::Harness test
 suite, to protect the world against my typos. Oh, it knows about
 epochs as well if your dpkg does. This could be the basis of mass
 compiling the packages on a new architecture, or to build a release
 from scratch.

 It creates associative arrays of currently installed packages
 (/var/lib/dpkg/status), and new packages (given a packages file at
 the command line). Then, in the checking dependency phase, for each
 package in the new packages list, it looks at the dependencies, and
 ensure that each dependency is satisfied in either the new list or
 the installed list If the directive is satisfied from the new list,
 add a line to an output file with the format required by tsort, which
 is the entity that gives us the ordered list.
```

```
 The default is to assume that the list of installed packages may be
 derived from the file I</var/lib/dpkg/status>, but the user may
 override this by providing a I<Packages> file listing all the
 packages that are assumed to be already installed.
```

**list\_diff** This is an example of how to detect packages and list packages in list A that are not in list B. Takes two Package::List objects, and returns a list object. This is how one may take an installed list, a final list, and figure out the packages to be removed, and the new packages, by just taking A - B and B - A set differences.  This is very inchoate, at the moment, and needs testing. None Known so far. Manoj Srivastava \<srivasta@debian.org\>
