[Comm-en] RPM in ALT Linux (4.0.4 vs 4.13)
imz at altlinux.org
Mon Sep 5 01:16:17 MSK 2016
On Sun, 4 Sep 2016, Neal Gompa wrote:
>>>> The first thing to do on this way was to rebase many ALT's features
>>>> rpm(-install)-4.13. (Not yet features relevant for rpm-build.)
>>>>  https://www.altlinux.org/Rpm-4.13
> I looked through the wiki page and also the git repository on ALT
> Linux's gear for rpm-4.13, and there were some commits of concern:
> * git hash: 08677107ea8efb30099b05c0c9876e0cfdbd9799: Add support of
> ALT Linux traditional posttrans filetriggers
> - This commit is interesting because it's completely redundant. My
> understanding is that the legacy file triggers implementation in ALT
> Linux is derived from the original one developed by Mandriva. In
I don't know enough about the history of it to tell this for sure.
> Mageia, we've ported all of the Mandriva style file triggers over to
> the system that's part of rpm 4.13, and we'd be happy to share with
> you guys the newer versions of these and help you guys get up to speed
One issue is that the new rpm should be able to work with the old
packages, published in the old distro branches, at least in order to
enable an upgrade.
Another one is that the rpm maintainer (like Gleb) can't rewrite the
filetriggers in all the packages at once; rather he can provide the tool
which implements the old and new features and wait for the maintainers of
the packages who own the triggers to catch up; and ultimately, the old
feature can be removed.
I might be misunderstanding something about the mechanism.
> * git hash: 61a1aaa2c0795f8bd564bdbef2b45cc4f44902ac: Write to syslog
> about installed/removed packages
> - Why exactly is this necessary? This isn't a huge deal, but wouldn't
> apt handle this already? This also feels like it should be written as
Some users invoke the bare rpm command.
> an rpm plugin rather than be a mandatory part of rpm. Other resolvers
> (like Yum/DNF and Zypper) do record this information already to some
> form of database/log which is accessible at any time, so it would be
> redundant in that case.
What kind of plugin do you mean?
> * git hash: 4487281b1ed93cc8a997adb56be51c33c52ebce9: Add
> /usr/lib/rpm/macros.d/*, /etc/rpm/macros.d/* to macrofiles
> - This one seems weird, as it disables the *.attr files and
> eliminates the macros file name convention we've used in Fedora,
> CentOS, Mageia, and openSUSE. I suspect this patch will remain
> specific to ALT Linux.
> * git hash: 60ea90eeb0341c2f8c761133033cd3e015c082c7: Add scripts/find-package
> - I understand why this exists (apt metadata doesn't include file
> lists, so you can't resolve them). We have the same problem in Mageia
> with urpmi's hdlist2 metadata. We have patches that alter rpm's own
> find-requires script to work as you need it to so that you don't have
> to disable the internal generators. I've attached them to this email,
> with a "series" file to indicate the order in which the patches can be
> applied. These patches were written by Thierry Vignaud of Mageia for
> our rpm package to solve the same issue while leveraging the new
> dependency generator framework.
Mageia's implementation is not in the upstream, too, is it? Which
implementation is better: the Mageia's one or the ALT's one?
> I'll admit, I'm not really certain about many of the other ones...
> Perhaps someone else here can take a deeper review of some of the
> other patches and provide some feedback?
> Do you guys have an equivalent package to redhat-rpm-config or
> rpm-mageia-setup which contains your vendor configuration for RPM?
> It seems like some of this stuff (like the GROUPS file, macros, etc.)
> belong there...
As for build-stage macros, many of them are maintained in separate
language/compiler specific small packages rpm-build-* or rpm-macros-*,
like rpm-build-python, rpm-build-python3, etc.
> : http://git.altlinux.org/tasks/166699/gears/560/git?p=git;a=log
> : http://pkgs.fedoraproject.org/cgit/rpms/redhat-rpm-config.git/
> : http://gitweb.mageia.org/software/rpm/rpm-setup/about/
More information about the community-en