[PyVault-users] can't make setuptools 0.6a9dev-r41477 bdist_rpm with PyVault Pyth on 2.4

Jeff Pitman jeff.pitman at gmail.com
Sat Nov 19 00:57:47 CET 2005


On 11/19/05, Jennings Jared L Contr 46 SK/CCI <jared.jennings at eglin.af.mil>
wrote:
>
> This patch which is part of the PyVault adds a --record_rpm= switch with a
> function to the distutils/command/install.py, and makes the spec file use
> that switch instead of --record=. It appears to deal with shared objects and
> LC_MESSAGES files in a way that RPM wants.
>
> https://opensvn.csie.org/traccgi/pyvault
> /trac.cgi/file/rpms/trunk/python24/python-2.3.4-recordrpm.patch
>

The patch is based on one I submitted to the python project found here:

https://sourceforge.net/tracker/index.php?func=detail&aid=1035576&group_id=5470&atid=305470

However, I just found that a SuSE employee worked on a similar patch:

https://sourceforge.net/tracker/?func=detail&atid=305470&aid=755286&group_id=5470

Both were developed totally independently and I have not had time to look at
what #755286 is doing. I do know that there are scenarios #1035576 doesn't
work quite right and I am not sure whether the earlier patch has the same
ailments. The advantage of mine is that it handles LC_MESSAGES related files
by coloring it with the %lang(...) tag. The ... is automatically computed
based on the path.

> When I built a PyVault python24 RPM with this patch, I couldn't make an
> rpm out of setuptools using python setup.py bdist_rpm. I found that the
> patched distutils bdist_rpm command was calling setup.py with a
> --record-rpm argument, but setuptools supplants the --record-rpm code added
> to distutils by the above patch with its own code, which has no
> --record-rpm. I tried to add the record_rpm stuff to
> setuptools/command/easy_install.py; but record_rpm depends on the values of
> some options that are initialized and finalized very fancily, so that it
> looks like I'd have to pull in huge chunks of distutils/command/install.py
> to make the thing fly.
>
> When I used a PyVault Python without the recordrpm patch, I was able to
> make a setuptools bdist_rpm. I haven't figured out what happens to compiled
> or locale-ized extensions without this patch; but I'm hoping that setuptools
> might be the last bdist_rpm I have to make and so maybe it won't matter.
>
I used to be subscribed to the distutils list. But, a few months ago I just
got info overload and dropped a bunch of lists which included distutils. At
the time, they were just barely getting this setuptools stuff off the ground
and I've kind of lost touch.

The "record-rpm" option is totally unofficial right now, but, I put it in
PyVault to give it a stretch to see where the thing could go. It really
simplified the spec file quite a bit and allowed for directories to be
properly owned by the package. However, it also made the spec files
non-portable between repositories. In the middle of implementing pyvault
packages, I had an idea that these spec files could be tossed back and forth
between Fedora Extras and RPMforge. To do that, I had to deprecate the use
of record-rpm.

There are some packages that still use record-rpm and the patch is still
included in the python package to allow for its use. And, as you have found,
it's used by default when creating a bdist_rpm.

So ... sorry for the long historical look at the whole thing. Going forward,
I guess we need to talk about what we really want to do. Do we drop the
whole thing and forget it ever happened? Or, do we drop #1035576 in favor of
#755286? Or, do we create an enhanced version of the two combined?

Fedora Extras also has some pedantic policies where they %ghost the .pyo
files. Which means that they do not package them, but, if they so happened
to be generated, then the package will remove those files upon package
removal. Would record-rpm need to be enhanced to take this into account?

At this point, I am totally open to suggestions. We may be able to get
something included into 2.5. (Just means I need to re-subscribe to distutils
:-D)

--
-jeff
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.python.org/pipermail/pyvault-users/attachments/20051119/58990025/attachment.html


More information about the PyVault-users mailing list