Effing Package Management 1.6.2

FPM is an incomplex software package build tool. It can import distribution files simply from source directories or zips, and generate RPM, DEB, TAR.GZ, Solaris packages, or OSXpkg from there. It also provides unified command line options for defining dependencies or add common meta attributes.

Tags ruby gem installation packaging package-builder rpm deb osxpkg tar solaris
License MITL
State stable

Recent Releases

1.6.202 Jul 2016 19:05 minor bugfix: Reduce `json` dependency version to avoid requiring Ruby 2.0. Pacman: skip automatic dependnecies if --no-auto-depends is given (Leo P). Rpm: where --rpm-tag was accidentally ignored. Deb: Omit certain fields from control file if (Breaks, Depends, Recommends. Etc) if there are no values to put in that field. Rpm: remove trailing slash from Prefor rpm packages (#819, luto). Virtualenv: Now supports being given a requirements.txt as the input. (Nick Griffiths).
1.6.027 May 2016 17:05 major bugfix: New source: pleaserun. This lets you create packages that will install a. System service. An after-install script is used in the package to determine Which service platform to target (systemd, upstart, etc). New target: Alpine Linux "apk" packages.. Deb: don't append `.conf` to an upstart file if the file name already ends in `.conf`.. Freebsd: where --package flag was ignored.. - Improvements to the fpm rake tasks.
1.5.015 Apr 2016 09:45 major feature: Arch package support is now available via -s pacman and -t pacman. (#916; wonderful community effort making this happen!). - FreeBSD packages can now be built `-t freebsd`. You can now set fpm flags and arguments with the FPMOPTS environment. Variable (#977, mildred) Using --exclude-file no longer causes a crash. Yay! (#982, wyaeld). - A new rake task is available for folks who want to invoke fpm from rake. (#756, pstengel). - On FreeBSD, when tarring, gtar is now used.. Virtualenv: Add --virtualenv-pypi-extra-url flag to specify additional PyPI. Locations to use when searching for packages Deb: Init scripts, etc/default, and upstart files are automatically added as config files in a debian package. Disable this behavior with. ---deb-auto-config-files. Deb: Small changes to make lintian complain less about our resulting debs. Deb: New flag --deb-systemd lets you specify a systemd service file to include in your package. (#952, Jens Peter Schroer). Cpan: Add -- no- cpan-cpanm-force flag to pass --force to cpanm. Rpm: File names with both spaces and symbols should now be packageable. (#946, iwonbigbro). Cpan: Now queries MetaCPAN for package info if we can't find any in the. Cpan archive we just downloaded. (#849, BaxterStockman) Rpm: You can now specify custom rpm tags at the command line. Be careful, as no validation is done on this before sending to rpmbuild. (#687, vStone). Cpan: Install if the package name given is a local file (#986, mdom). - sh: Metadata now available as env vars for post-install scripts. Rpm: No more warning if you don't set an epoch..
1.4.027 Jul 2015 03:45 minor feature: Solaris 11 IPS packages 'p5p' now supported `-t p5p`. (Jonathan Craig). - Python Virtualenv is now supported `-t virtualenv` (#930, Simone Margaritelli and Daniel Haskin). - deb: Files in /etc are now by default marked as config files. (#877, Vincent Bernat). - `fpm --help` output now includes a list of supported package types (#896, Daniel Haskin). - cpan: -- no- cpan-sandbox-non-core flag to make non-core module sandboxing optional during packaging (#752, Matt Sharpe). - rpm: Add --rpm-dist flag for specifically setting the target distribution of an rpm. (Adam Lamar). - rpm: Fix a crash if --before-upgrade or --after-upgrade were used. (#822, Dave Anderson). - deb: Ensure maintainer scripts have shebang lines (#836, Wesley Spikes). - deb: Fix bug in maintainer scripts where sometimes we would write an empty shell function. Empty functions aren't valid in shell. (Wesley Spikes). - Fix symlink copying bug (#863, Pete Fritchman). - python: Default to https for pypi queries (Timothy Sutton). - New flag --exclude-file for providing a file containing line-delimited exclusions (Jamie Lawrence). - python: new flag --python-disable-dependency to disable specific python dependencies (Ward Vandewege). - python: ensure we avoid wheel packages for now until fpm better supports them. (#885, Matt Callaway). - deb: Add support for installation states "abort-remove" and "abort-install". (#887, Daniel Haskin). - If PATH isn't set, and we need it, tell the user (#886, Ranjib Dey). - cpan: -- no- cpan-test now works correctly (#853, Matt Schreiber). - deb-to-rpm: some improved support for config file knowledge passing from deb to rpm packages (Daniel Haskin).
1.3.316 Dec 2014 08:05 minor feature: The fpm project now uses Contributor Covenant. You can read more about this on the website: http://contributor-covenant.org/ npm: Fix bug causing all `-s npm` attempts to fail due to a missing method. This bug was introduced in 1.3.0. rpm: fix bug in rpm input causing a crash if the input rpm did not have any triggers
1.3.210 Nov 2014 13:45 minor feature: DEB: conversion from another deb will automatically use any changelog found in the source deb.