Skip to content

Software Package Management

Schuyler Erle edited this page Jun 12, 2019 · 2 revisions

Project version numbering conventions

There are three kinds of package version numbers:

  • 0.8.4 — This is a public release.
  • 0.8.4+b15 — This is CircleCI build number 15, and the most recent preceding release is 0.8.4.
  • 0.8.4~123456 — This is a developer build at Git commit number 123456, and the most recent preceding release is 0.8.4. If this version number also contains the text "dirty", then the build was made from a Git tree with uncommitted changes.

How to locally build a .deb package

cd buendia                                            # your clone of the 'buendia' repo
cd packages/buendia-whatever

# you must manually choose a version number, with 1, 2, or 3 parts
# each part must consist only of digits

PACKAGE_VERSION=0.3.1 make
# produces buendia-whatever-0.3.1.deb

How to manually replace a .deb package

Using these steps you can force-install, upgrade, or downgrade a package to a specific version.

scp -P 9022 buendia-whatever-0.0.234.deb server:/usr/share/buendia/packages
ssh -p 9022 root@server
edison# buendia-pkgserver-index-debs
edison# apt-get update
edison# apt-get install buendia-whatever=0.0.234    # to force a specific version
edison# apt-get install buendia-whatever            # to install highest available version
edison# buendia-status                              # see what's installed

How to check what the system knows about an installed package

edison# dpkg -s buendia-whatever

Prints out the installation state, version, and dependencies of the currently known/installed version of the package.

How to check what packages the system thinks are available

edison# apt-cache policy buendia-whatever

This prints out the versions of the package that are available and where Debian thinks it can get them. This list is updated after you run apt-get update (which downloads the index generated by buendia-pkgserver-index-debs).

Clone this wiki locally