Cross package maker. DEB/RPM generation or conversion. Derived from jordansissel/fpm.

⌈⌋ ⎇ branch:  cross package maker


Research

(Preliminary) Research

(This is just a growing list of cross-distro packaging systems / formats / initiatives. Meant to look for viable alternatives before venturing off with inst.)

  • appstream and freedesktop AppStream - Utilities to generate, maintain and access the AppStream Xapian database. AppStream itself shares user contributed content/ratings/etc. for GUI installers.

  • AppData is the subset of AppStream that distro application stores/managers utilize to augment package data (for screenshots mainly), and which makes sense for xpm to support as implicit post-processing --filter

  • distromatch - universal package names across distributions

  • PRM - a APT and YUM repo maker in Ruby.

  • ArchWiki:Pacman_Rosetta - pacman/yum/apt-get/zypper/emerge comparison

  • PackageKit provides a DBUS package update management API and command-line tools (pkgcon).

Listaller

Zero Install

  • https://0install.de/
  • based on raw ZIP/TARs, with XML meta description format; virtual installs into a per-application cache directory
  • works on Linux and Windows, C#-based
  • https://0install.de/about/product-comparison/?lang=en

PortableLinuxapps

  • http://portablelinuxapps.org/
  • Repository and packaging format
  • based on AppImageKit for self-contained semi-static bundles https://github.com/probonopd/appimagekit

Limba

SPM/Smart Package Manager

  • https://labix.org/smart
  • cross-distro management toolset/GUI, utilizing dpkg/rpm atop yum/apt/urpmi, can't install packages on incompatible distros though.

OpenPKG

Nix

Glick2

CDE (CDEpack)

  • http://www.pgbovine.net/cde.html
  • is a container format, which wraps up application "Code, Data and Environemnt settings" for deployment across different distros.
  • Provides a lightweight virtualization runtime tool cde and a plain zip package format (containing absolute virtual paths and all (straced?) dependencies). Neat. (Not sure if that's wrappable as fpm target though.)

Ubuntu Click

EPM (Easy Package Maker)

  • https://www.msweet.org/projects.php?Z2
  • → State: no new development, still functional
  • Similar to fpm, but requires spec-files. Quite a few packaging targets, and provides a custom X11 installer and raw packaging format.

SuperDebs / RUNZ Framework

  • http://en.wikipedia.org/wiki/Super_OS
  • → State: defunct
  • Multiple .deb packages (bin, data, libraries, dependencies bundled) in a TARball with shell prefix. Used a clever APT-source approach for installation and updates.

MojoSetup

klik

AutoPackage

Chakra Bundles

Linspire CNR

PC-BSD/FreeBSD PBI packages

  • http://wiki.pcbsd.org/index.php/Create_PBIs
  • → Are no longer a useful target. Initially considered it for BSD/Linux cross-packages.
  • They formerly (PBI-9) used a binary+tar bundle, but PBI-10 / PBI_Manager is now just a GUI frontend to the BSDs internal ports system. (Confirmed by dlavigne via IRC #pcbsd.)

GoboLinux

Bedrock Linux

  • http://bedrocklinux.org/introduction.html
  • Provides built-in virtualization, allows to run applications with dependencies from different distros. In fact it basically turns distros into interchangeable client runtimes.
Attribution

Thanks also to /u/gondur for a couple of references, and ximion of course.