* Re: [Comm-en] RPM in ALT Linux (4.0.4 vs 4.13)
@ 2016-09-04 11:28 ` Ivan Zakharyaschev
0 siblings, 1 reply; 4+ messages in thread
From: Ivan Zakharyaschev @ 2016-09-04 11:28 UTC (permalink / raw)
To: Neal Gompa; +Cc: legion, alexey.tourbin, glebfm, at, community-en
Hello!
On Sat, 3 Sep 2016, Neal Gompa wrote:
> I saw you guys listed as the most recent ones to change the rpm
> package in ALT Linux, and I was wondering if you guys had contemplated
> upgrading from rpm 4.0.4 to rpm 4.13?
glebfm@ and legion@ are busy now with this.
https://lists.altlinux.org/pipermail/devel/2016-July/201603.html
They could give most details about this process.
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
> If so, why haven't you? What's holding you back from upgrading? I'd
Apart from the first important step (rebasing ALT's rpm-install) which has
been done and is ready for testing, there are things would hold us back
from putting the new version into ALT Sisyphus:
those packages which use librpm and/or access RPM's db will have to be
adapted for the new version. (The first one, of course, is APT; then,
there are some Perl bindings actively used by the tools for automatic
package analysis, modification, submission; perhaps, some more, I don't
know the list of things that hold this back well, but other involved
people could tell you more.)
> like to see the ALT Linux rpm maintainer team be involved in upstream
> rpm.org development, as I'm sure your perspective would be valuable to
> ensure a vibrant ecosystem around rpm.
As said, there are a few ALT-specific nice, important and
non-trivial features in RPM, which would always require maintaining a
separate fork unless they are taken up by another RPM project, say, the
rpm-4.13 project. Then the forces could be joined.
One of these features is the support for set-versions (the <= relation,
which is used to constrain Requires/Provides, which would behave not like
a linear order, but like inclusion of sets), developed by at@ in the past.
Now, he has announced that he is developing an enhanced varaint of this
feature and could tell the details about the current developments to those
who are interested.
(https://lists.altlinux.org/pipermail/devel/2016-July/201614.html :
support for prototypes/signatures similar to C++ mangling, but for C).
at@ has pointed to his new work at https://github.com/svpv/rpmss --
https://lists.altlinux.org/pipermail/devel/2016-August/201701.html . At
the same time, at@ shared his belief that if there is some code in ALT's
RPM which was once written and works correctly since then, there will be
no need to put efforts into maintaining it; and so, he sees no
justification in the complex work of rebasing onto rpm-4.13 because this
would not save us any future efforts in maintaining ALT's RPM compared to
the current situation. (Zero efforts if the current code of RPM works
correctly.)
glebfm@ -- Gleb Fontengauer-Malinovskiy
legion@ -- Alexey Gladkov
at@ -- Alexey Tourbin
community-en@lists -- a mailing list for the community around ALT for
discussions in English
--
Best regards,
Ivan
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Comm-en] RPM in ALT Linux (4.0.4 vs 4.13)
@ 2016-09-04 16:11 ` Ivan Zakharyaschev
2016-09-04 16:23 ` Ivan Zakharyaschev
1 sibling, 0 replies; 4+ messages in thread
From: Ivan Zakharyaschev @ 2016-09-04 16:11 UTC (permalink / raw)
To: Neal Gompa
Cc: rpm-ecosystem, legion, alexey.tourbin, glebfm, at, community-en
On Sun, 4 Sep 2016, Neal Gompa wrote:
> On Sun, Sep 4, 2016 at 7:28 AM, Ivan Zakharyaschev <imz@altlinux.org> wrote:
>>> package in ALT Linux, and I was wondering if you guys had contemplated
>>> upgrading from rpm 4.0.4 to rpm 4.13?
>>
>>
>> glebfm@ and legion@ are busy now with this.
>> https://lists.altlinux.org/pipermail/devel/2016-July/201603.html
>>
>> They could give most details about this process.
>>
>> 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.)
>>
>
> I'm sorry, I'm not too familiar with ALT's rpm setup, what is rpm-install?
Simply, there is the rpm-build part of RPM which is used to create files
of RPM format; and the "other" part, the essential one, the tool of the
administrator which takes an RPM file and installs it, etc. To distinguish
this basic part from rpm-build, we have been calling it rpm-install
sometimes.
(Theoretically, they are not tightly connected, and any other tool could
be used instead of the standard rpm-build to produce RPM files if you
target a distro which uses rpm to install packages, to control their
dependencies etc. So, if someone thinks that the language of spec-files is
ugly--like me--one can think about creating an alternative tool to
describe the packages in another language, but still submit them to the
same distro; for example, I'm interested in the way nix packages are done,
and sometimes I'm thinking about various proxies like a tool to build an
RPM package from nix rules, but also other kinds of proxies, in order to
make the current work in ALT Sisyphus and in NixOS closer and more
suitable for exchanging packages, switching the sources of the "specs".)
>> [1] https://www.altlinux.org/Rpm-4.13
>>> like to see the ALT Linux rpm maintainer team be involved in upstream
>>> rpm.org development, as I'm sure your perspective would be valuable to
>>> ensure a vibrant ecosystem around rpm.
>>
>>
>> As said, there are a few ALT-specific nice, important and non-trivial
>> features in RPM, which would always require maintaining a separate fork
>> unless they are taken up by another RPM project, say, the rpm-4.13 project.
>> Then the forces could be joined.
> If any of you guys who know about the extra features of your variant
> of rpm can talk about them, it'd be great if they could bring them up
> in the rpm-ecosystem mailing list[3] to propose for them to be merged
> upstream into the rpm.org codebase. Florian Festi (the manager of the
Thanks for the links! Let's look forward. One more small comment from
me: in a sense, it would be a good moment now to merge some patches right
after Gleb has rebased the features onto 4.13, so that there is no delta.
If you are interested in the patches, of course, you can have a look in
the Git repository in the linked task (in one of the linked posts) and ask
the authors any questions, but I'd suggest to wait until it is committed
to ALT Sisyphus; then, it would be in a more finalized state.
http://git.altlinux.org/tasks/166699/
> rpm project) is always interested in receiving patches for new
> features and such. Patches are accepted via rpm-maint mailing list[4]
> or GitHub[5]. Discussions can also occur on IRC on Freenode in
> #rpm-ecosystem and #rpm.org.
Best regards,
Ivan
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Comm-en] RPM in ALT Linux (4.0.4 vs 4.13)
2016-09-04 16:11 ` Ivan Zakharyaschev
@ 2016-09-04 16:23 ` Ivan Zakharyaschev
1 sibling, 1 reply; 4+ messages in thread
From: Ivan Zakharyaschev @ 2016-09-04 16:23 UTC (permalink / raw)
To: Neal Gompa
Cc: rpm-ecosystem, legion, alexey.tourbin, glebfm, at, community-en
On Sun, 4 Sep 2016, Neal Gompa wrote:
> On Sun, Sep 4, 2016 at 7:28 AM, Ivan Zakharyaschev <imz@altlinux.org> wrote:
>>> package in ALT Linux, and I was wondering if you guys had contemplated
>>> upgrading from rpm 4.0.4 to rpm 4.13?
>>
>>
>> glebfm@ and legion@ are busy now with this.
>> https://lists.altlinux.org/pipermail/devel/2016-July/201603.html
>>
>> They could give most details about this process.
>>
>> 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
>> As said, there are a few ALT-specific nice, important and non-trivial
>> features in RPM, which would always require maintaining a separate fork
The list (published under the given link on the wiki) is quite long, and
Gleb has recently done a big job bringing them up-to-date with 4.13 (only
the rpm-install part, not the rpm-build one):
feature stage
pdeath_execute.c rpm
rpm --fancypercent rpm
filetriggers rpm
write installed/removed package buildtime to syslog rpm
enhanced rebuilding database messages rpm
rpm -q --lastchange rpm
rpm -q --changes-since= rpm
the '>'-test (required by changes-since) rpm
':nothing' format variant (required by changes-since) rpm
library set:versions comparison (install part) rpm
export RPM_INSTALL_{NAME,ARG1,ARG2} variables to scripts rpm
tools/rpm{ver,evr}cmp.c rpm
syslog info message for {installed,removed} packages rpm
_wait_for_lock rpm
%homedir rpm
import language guessing mechanism from glibc/intl rpm
honor_buildtime rpm
rpm --ignorebuildtime rpm
disabled tsort presentation order rpm
alpha segments are always newer than numeric segments in rpm
versions/releases
use 'chmod -c' and 'chown -c -h' rpm
use posix_fadvise(2) to disable readahead rpm
do not exclude Requires(pre) dependencies from rpmdb index rpm
[epoch = (none)] != [epoch = 0] rpm
closeall.c both
/usr/lib/rpm/functions both
filesize.c rpmbuild
relative.c rpmbuild
GROUPS rpmbuild
%_bindir/gendiff rpmbuild
_configure_{script,target,update_config,...} rpmbuild
rpm -C rpmbuild
%_allow_root_build rpmbuild
/usr/lib/rpm/.provides.sh rpmbuild
rpmbuild -bE, --nopatch, --nosource rpmbuild
%check_def(), %def_with(), %def_without(), %def_enable rpmbuild
(), %def_disable(),...
verify_elf rpmbuild
%set_{autoconf,automake,libtool,gcc,...}_version rpmbuild
rpminit rpmbuild
nice_change rpmbuild
enhanced RPM_SCRIPTS_DEBUG support, implemented debug levels rpmbuild
enhanced RPM_SCRIPTS_DEBUG support, implemented debug levels rpmbuild
/usr/lib/rpm/setcmp rpmbuild
find-debuginfo-files rpmbuild
add "-bt" %check-only option rpmbuild
library set:versions generation (build part) rpmbuild
buildhost macro defines package's buildhost tag rpmbuild
dump_ld_config rpmbuild
--
Best regards,
Ivan
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Comm-en] RPM in ALT Linux (4.0.4 vs 4.13)
@ 2016-09-04 22:16 ` Ivan Zakharyaschev
0 siblings, 0 replies; 4+ messages in thread
From: Ivan Zakharyaschev @ 2016-09-04 22:16 UTC (permalink / raw)
To: Neal Gompa
Cc: rpm-ecosystem, legion, Alexey Tourbin, glebfm, at, community-en
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.
> * 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[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.
> [1]: http://git.altlinux.org/tasks/166699/gears/560/git?p=git;a=log
> [2]: http://pkgs.fedoraproject.org/cgit/rpms/redhat-rpm-config.git/
> [3]: http://gitweb.mageia.org/software/rpm/rpm-setup/about/
Best regards,
Ivan
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2016-09-04 22:16 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-09-04 11:28 ` [Comm-en] RPM in ALT Linux (4.0.4 vs 4.13) Ivan Zakharyaschev
2016-09-04 16:11 ` Ivan Zakharyaschev
2016-09-04 16:23 ` Ivan Zakharyaschev
2016-09-04 22:16 ` Ivan Zakharyaschev
ALT Linux users (in English only)
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/community-en/0 community-en/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 community-en community-en/ http://lore.altlinux.org/community-en \
community-en@lists.altlinux.org community-en@lists.altlinux.ru community-en@lists.altlinux.com
public-inbox-index community-en
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.community-en
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git