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

⌈⌋ ⎇ branch:  cross package maker


Update of "cross package maker"

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview

Artifact ID: c622c7a273ef542208bff67cb7a59760a50b9235
Page Name:cross package maker
Date: 2014-12-14 21:29:49
Original User: mario
Mimetype:text/x-markdown
Parent: 8e2ba4c2f983e75a5480d4127b92566eefe809b3 (diff)
Next 52528c470c8aed0b06f2b650c5d8405235be09d6
Content

xpm is currently a personalized branch of fpm (Effing Package Management), which simplifies cross-distro package generation.

It creates or converts between

  • Debian .deb
  • RedHat .rpm
  • Node .npm
  • OSX .pkg
  • Ruby .gem
  • solaris packages
  • plain ZIPs or TARs

and more. See the Howto on common usage.

xpm target/source extensions

This variant (precautiosly renamed for parallel installation) adds a few more modules:

  • target exe for Windows SFX installers

  • reader src to consume per-file relative pack: specifiers and meta fields from primarily source-based bundles

  • target phar which bundles PHP scripts into .phar zip/tars with meta fields

ToDo

It's further planned to support:

  • Multi-target creation

    fpm -t deb,rpm,exe
    

    (Not yet sure, but seems feasible.)

  • Introduce simple filters (semi-build scripts that resemble debian helpers, or quick tasks to reduce manual build scripts)

    fpm -m mangz,appdata
    

    (Non-conclusive list.)

Still pondering

And slightly overambitous extensions:

  • Like a GUI-based cross-distro installer

    • Basically a zip, with shell prefix (derived from the existing sh target),
    • But the primary payload being a Python script (__init__.py),
    • Later Perl, Shell as optional fallback,
    • xdialog/xmessage/zenity in absence of Tk/gtk/qt bindings for either,
    • And one or multiple .debs included
    • DEBs are for all practical purposes the currently most widely supported format (Debian/Ubuntu/Mint family, OSX flint, OpenWRT ipkg, Windows wpkg.exe)
    • Still can be converted to native RPMs on target systems (using alien or an included slim fpm)
    • Else can easily be just extracted raw with ar|tar anyway).

GitHub

I just don't fancy git. That's all. But this fossil repo will be synced back to https://github.com/prof-milki/xpm once in a while.

Name

Yes, I'm aware xpm is technically a taken moniker. Just sounded cool. (Though firefox has long abondened them, and Wayland will eradicate xpixmaps anyway... So xpm is just a historic format; moreover libxpm never provide a binary by that name anyway.)