J&P Group J&P BMCG J&P InfoSol J&P Multimedia Labs J&P NoBoS

J&P Group > J&P InfoSol > Applications > Package Managers (apt, dpkg, port, rpm, ...)

Package Managers (apt, dpkg, port, rpm, ...)


Introduction <top>

  Linux Distros BSD-Based Mac OS X
Base/Origin Debian Slackware RedHat BSD (BSD-core)
Derivates / More known distros1 Knoppix, Ubuntu Suse CentOS FreeBSD, NetBSD, OpenBSD Mac OS X 10.x
Pkg Mgr(s)
apt, dpkg pkgtool rpm google to learn more

MacPorts, Fink, Homebrew (brew)

1Aside base/origin distros.

General <top>



Distros, History - Linux, *NIX


APT - Advanced Package Tool (Debian origin) <top>

dpkg (Debian origin) <top>


Mac OS X - Related <top>

MacPorts (was DarwinPorts)

Fink - apt/dpkg-based

Homebrew, brew

RPM (RedHat origin) <top>

Slackware <top>


Embedded Systems - Use <top>

(2014 Oct)

Use cases:

  1. Use on Host, development workstation (e.g. Mac OS X with virtual machine running a Debian distro, X86)
    1. For tools etc for host-only use - easy and defintely appropriate
    2. For libraries used in development of target code, then also require integration in build system with cross compilation etc
  2. Use on Target, possibly... (e.g. Debian-based, w/ BusyBox, Arm)
    Functionality needs: How advanced capabilities do we really need?
    Overhead: For learning how to actually package files for some more capable package manager system ('PMS')
    In building and maintaining, cross-compiling, PMS tool(s) for use on embedded systems.
    Availability: If PMS even available for cross compilation on your target env?
    Footprint (size) How much resources will PMS take up on embedded system?

Example, specific case Oct 2014

Package Manager Solution

Runtime Env.    


Target w/



APT – Advanced Package Tool





dpkg – for Debian package mgmt.





RPM Package Manager (RedHat)





Host – whether package exist in development environment host (*Debian 7.6 in this case), if exist simplifies dev and test of packages, as doesn’t have to get and build package also for this environment.
BusyBox – whether functionality is available in this package, not that we’re currently including among options when building it.
Fetch – whether package include capabilities to also fetch packages from remote destination


Programming Language - Specific <top>

This section uses Nov 08 CSS Frames.