view README.txt @ 0:6873638f82ce default tip

initial commit
author Jeff Hammel <k0scist@gmail.com>
date Mon, 06 Feb 2017 03:40:08 +0000
parents
children
line wrap: on
line source

# pypedream

python + other packaging works

      ______
     |______|
      |    |
      |____|



## What's inside

This is a toolbox for dealing with packages as it stands.  Install
this your usual way, e.g.:  `python setup.py develop`

## Console scripts

Invoke with `--help` for usage info.

- `py2rpm`: script for fetching an python package from http://pypi.python.org/
  and its dependencies using `pip` and converting to RPMs using
  `python setup.py bdist_rpm`.  Requires the `pip` and `rpmbuild` on
  your system.

- `py2centos`: the problem with using `bdist_rpm` is that it converts
  the python package to an RPM as appropriate for your current
  environment.  What is desired is a package for, at current, the
  Centos 6 operating system.  In order to surmount these difficulties,
  Docker is used by `py2centos` to provision a Centos 6 container,
  copy the `py2rpm.py` python script into the container, and set up an
  execution endpoint that will generate the Centos RPMs in an output
  directory.


## fpm

`fpm` is a ruby package manipulation tool.  You can use `py2rpm` with
the `--fpm` option, if you have the `fpm` command line program on your
path, to do the conversion with this tool.  The advantage is that the
package dependencies are noted correctly.  By default, an additional
namespace of `python-` is prepended to the package name.  This is
probably desirable.


## RPM

Querying rpm dependencies:

    # rpm -qpR *.rpm

Listing files in an rpm:

    # rpm -qlp *.rpm


## Links

- https://github.com/jordansissel/fpm
- https://github.com/jordansissel/fpm/wiki/ConvertingPython
- http://www.alexhudson.com/2013/05/24/packaging-a-virtualenv-really-not-relocatable/