On Sun, Sep 4, 2016 at 6:16 PM, Ivan Zakharyaschev <i...@altlinux.org> wrote:
>
> On Sun, 4 Sep 2016, Neal Gompa wrote:
>
>>>>> The first thing to do on this way was to rebase many ALT's features[1]
>>>>> onto
>>>>> rpm(-install)-4.13. (Not yet features relevant for rpm-build.)
>>>>> [1] 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[1], 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
>> there.
>
>
> 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.

That does make sense. Hopefully that will be properly communicated as
the migration begins. Feel free to reach out to Mageia on the dev
mailing list[1] if you'd like assistance on this.

>
>> * 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.
>

That's fair.

>> 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?
>

RPM has a plugin architecture[2] which I think could implement what
you're looking for. In fact, it looks like there already is a syslog
plugin[3]. If it doesn't do all what you need, it might be worth
extending it to emit the extra logging you want.


>> * 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?
>

Our patches are not upstream because both Fedora and openSUSE use
dependency resolvers that use rpm-md metadata, which supports file
dependencies (so they don't need it). We're also going to support it
in Mageia 6 with our implementation of DNF[4], but we still keep the
patches up in order to support urpmi. In my opinion, Mageia's
implementation is better because it leverages the modern dependency
generators included in rpm 4.13. I'm not sure if file dependencies
would work if you used rpm-md repository metadata with apt-rpm, since
it does support the rpm-md repository metadata format.

>> 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[2] or
>> rpm-mageia-setup[3] 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.

I see, so you guys maintain most of your macros separately. We do that
as well in Mageia (and Fedora does as well), but I would have figured
the base RPM vendor configuration would be in its own package?

>
> Best regards,
> Ivan

Best regards,
Neal

[1]: https://ml.mageia.org/l/info/dev
[2]: http://rpm.org/wiki/DevelDocs/Plugins
[3]: https://github.com/rpm-software-management/rpm/blob/master/plugins/syslog.c
[4]: https://blog.mageia.org/en/2016/09/04/dandifying-mageia/

-- 
真実はいつも一つ!/ Always, there's only one truth!
_______________________________________________
Rpm-ecosystem mailing list
Rpm-ecosystem@lists.rpm.org
http://lists.rpm.org/mailman/listinfo/rpm-ecosystem

Reply via email to