Re: [Rpm-maint] [rpm-software-management/rpm] Reproducible builds improvements (Issue #2894)

2024-02-20 Thread Panu Matilainen
Forward-looking defaults aside... Do you agree with the idea that there should be a single macro to set the buildtime source (clock/macro/source_date_epoch), and then have a separate flag for clamping mtimes to buildtime, or am I again missing some finer detail here? I've nothing against repro

Re: [Rpm-maint] [rpm-software-management/rpm] `update-po` target fails (needs submodule update) (Issue #2899)

2024-02-20 Thread Panu Matilainen
(and fwiw, pulling that path change into 4.19.x makes no difference whatsoever because the translations should NOT be updated in the branches, and hence there's no reason to do so) -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/2899#i

Re: [Rpm-maint] [rpm-software-management/rpm] `update-po` target fails (needs submodule update) (Issue #2899)

2024-02-20 Thread Panu Matilainen
So with the submodule update done, this can be closed. Sorry @dmnks for stealing your ticket :sweat_smile: -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/2899#issuecomment-1956028313 You are receiving this because you are subscribed t

Re: [Rpm-maint] [rpm-software-management/rpm] `update-po` target fails (needs submodule update) (Issue #2899)

2024-02-20 Thread Panu Matilainen
Closed #2899 as completed. -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/2899#event-11871913923 You are receiving this because you are subscribed to this thread. Message ID: ___ Rpm-maint m

Re: [Rpm-maint] [rpm-software-management/rpm] `update-po` target fails (needs submodule update) (Issue #2899)

2024-02-20 Thread Panu Matilainen
Well yeah, *ideally* you'd have an official string freeze period with translation notifications for major releases. And ideally you'd also have per-release branches for translations because over time they grow different so you can't safely pull updated translations to stable releases. Why we ne

Re: [Rpm-maint] [rpm-software-management/rpm] RPM v6 package format, first public draft for commenting (Discussion #2374)

2024-02-20 Thread Panu Matilainen
Because in rpm < 4.18, we have this silly check in there: ``` if (lead->major < 3 || lead->major > 4) { *msg = xstrdup(_("unsupported RPM package version")); return RPMRC_FAIL; } ``` Putting 6 in the otherwise unused lead would render v6 packages unreadable by a huge rang

Re: [Rpm-maint] [rpm-software-management/rpm] RPM v6 package format draft, major update (Discussion #2919)

2024-02-20 Thread Panu Matilainen
Figuring out what to do with this is one of the next things on my plate. -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/discussions/2919#discussioncomment-8529580 You are receiving this because you are subscribed to this thread. Message ID:

Re: [Rpm-maint] [rpm-software-management/rpm] RPM v6 package format draft, major update (Discussion #2919)

2024-02-20 Thread Panu Matilainen
There's now also a draft PR that implements mosts of this draft, as far as package generation goes: https://github.com/rpm-software-management/rpm/pull/2920 -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/discussions/2919#discussioncomment-852

Re: [Rpm-maint] [rpm-software-management/rpm] RPM v6 package generation rough-cut (PR #2920)

2024-02-20 Thread Panu Matilainen
@pmatilai pushed 2 commits. 30d352e1c188a68fdeb97fd1737d3eba891a19ee Don't populate os and arch in the lead structure 01df85ccec5c00ebd46802a67fcc53f8274926a3 Bump the rpm version in the lead to 4 for v6 packages -- View it on GitHub: https://github.com/rpm-software-management/rpm/pull/2920/

[Rpm-maint] [rpm-software-management/rpm] RPM v6 package generation rough-cut (PR #2920)

2024-02-20 Thread Panu Matilainen
This should fairly closely reflect the latest v6 draft just published at https://github.com/rpm-software-management/rpm/discussions/2919 The focus here is on the generation of v6 format packages, asserting various aspects of the format is mostly a post 4.20 topic. You can view, comment on, or me

Re: [Rpm-maint] [rpm-software-management/rpm] RPM v6 package format, first public draft for commenting (Discussion #2374)

2024-02-20 Thread Panu Matilainen
There's now what should be much closer to final (but isn't yet, certainly) draft with clarified scope and compatibility info at https://github.com/rpm-software-management/rpm/discussions/2919 Closing this topic as it has served its purpose and is getting too cluttered to follow. Thanks everybod

Re: [Rpm-maint] [rpm-software-management/rpm] RPM v6 package format, first public draft for commenting (Discussion #2374)

2024-02-20 Thread Panu Matilainen
Closed #2374 as resolved. -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/discussions/2374 You are receiving this because you are subscribed to this thread. Message ID: ___ Rpm-maint mailing list Rp

[Rpm-maint] [rpm-software-management/rpm] RPM v6 package format draft, major update (Discussion #2919)

2024-02-20 Thread Panu Matilainen
Based on the feedback on the [initial draft](https://github.com/rpm-software-management/rpm/discussions/2374) and work in the background, here's a major update to the v6 package format draft. Starting a new topic as the original one is getting bogged down in details that are no longer relevant.

Re: [Rpm-maint] [rpm-software-management/rpm] RPM v6 package format, first public draft for commenting (Discussion #2374)

2024-02-20 Thread Panu Matilainen
Coming back to this: to avoid gratuitious compatibility breakage, we can't put either 0 or 6 in there. The best we can do is put 4 in there because all of rpm 4.x used 3 as the major version for alleged LSB compatibility, so it at least differentiates it a bit. It's not such a terrible lie even

Re: [Rpm-maint] [rpm-software-management/rpm] No build directives in generated spec parts (PR #2917)

2024-02-20 Thread Panu Matilainen
@pmatilai commented on this pull request. > @@ -21,6 +21,11 @@ #define ALLOWED_CHARS_EVR ALLOWED_CHARS_VERREL "-:" #define LEN_AND_STR(_tag) (sizeof(_tag)-1), (_tag) +enum parseStages { +SPECFILE, +BUILDSYS, +GENERATED, Use some unique prefix on the enum names, makes it easier t

Re: [Rpm-maint] [rpm-software-management/rpm] No build directives in generated spec parts (PR #2917)

2024-02-20 Thread Panu Matilainen
@pmatilai commented on this pull request. > + if (stage == GENERATED) { + switch (tag) { + case RPMTAG_SOURCE: + case RPMTAG_PATCH: + case RPMTAG_NOSOURCE: + case RPMTAG_NOPATCH: +

Re: [Rpm-maint] [rpm-software-management/rpm] Introduction of "rpms.lock.yaml" file (Discussion #2908)

2024-02-20 Thread Panu Matilainen
Just a random observation: Fedora is being used as the example here, but Fedora does NOT preserve the updates history in the repository, only the first (in the base repo) and the last are kept. So any of this basically requires maintaining a local mirror which never deletes packages. And with th

Re: [Rpm-maint] [rpm-software-management/rpm] Add a test group for package format matters (PR #2916)

2024-02-19 Thread Panu Matilainen
Merged #2916 into master. -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/2916#event-11848850444 You are receiving this because you are subscribed to this thread. Message ID: ___ Rpm-maint mail

[Rpm-maint] [rpm-software-management/rpm] Add a test group for package format matters (PR #2916)

2024-02-19 Thread Panu Matilainen
Details in the commits, but basically add a new test group for package format matters + a test for v4 package format utilizing rpmdump. You can view, comment on, or merge this pull request online at: https://github.com/rpm-software-management/rpm/pull/2916 -- Commit Summary -- * Split our r

Re: [Rpm-maint] [rpm-software-management/rpm] Generate rpmtests.at automatically to avoid redundant book-keeping (PR #2915)

2024-02-19 Thread Panu Matilainen
Merged #2915 into master. -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/2915#event-11848573139 You are receiving this because you are subscribed to this thread. Message ID: ___ Rpm-maint mail

Re: [Rpm-maint] [rpm-software-management/rpm] Introduction of "rpms.lock.yaml" file (Discussion #2908)

2024-02-19 Thread Panu Matilainen
Yeah this doesn't seem particularly relevant to rpm itself. But if people want to use this as a depsolver agnostic place to discuss it, you're welcome to do so. -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/discussions/2908#discussioncommen

[Rpm-maint] [rpm-software-management/rpm] Generate rpmtests.at automatically to avoid redundant book-keeping (PR #2915)

2024-02-19 Thread Panu Matilainen
We have the list of tests in cmake, we can just as well generate the master rpmtests.at file from there. As the order of tests now depends on the list in tests/CMakeLists.txt, update it to match the former order in rpmtests.at. As arbitrary as that order is, people seem to get attached to certa

Re: [Rpm-maint] [rpm-software-management/rpm] CMakeLists.txt: eliminate floating dependencies (PR #2914)

2024-02-19 Thread Panu Matilainen
@pmatilai requested changes on this pull request. These are all optional dependencies and must remain that way, some of these dependencies aren't available outside Linux at all. Without the corresponding cmake options this is a no-go. -- Reply to this email directly or view it on GitHub: htt

Re: [Rpm-maint] [rpm-software-management/rpm] Implement --json query format (PR #2913)

2024-02-19 Thread Panu Matilainen
Merged #2913 into master. -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/2913#event-11847031818 You are receiving this because you are subscribed to this thread. Message ID: ___ Rpm-maint mail

Re: [Rpm-maint] [rpm-software-management/rpm] Implement --json query format (PR #2913)

2024-02-18 Thread Panu Matilainen
All your remarks should be covered now, just squashed the fixups in the last push. Oh and thanks for the review! I'm not friends with escapes so I conveniently tend to forget all about them. My main motivation with this one was human consumption more than computer, but of course if we claim it'

Re: [Rpm-maint] [rpm-software-management/rpm] Implement --json query format (PR #2913)

2024-02-16 Thread Panu Matilainen
@pmatilai pushed 1 commit. ce82dcaaa71f990054cb22b72553f6dac05ea433 fixup! Implement --json query format -- View it on GitHub: https://github.com/rpm-software-management/rpm/pull/2913/files/479795192525cd1a282d279215deff7fb7f3e492..ce82dcaaa71f990054cb22b72553f6dac05ea433 You are receiving this

Re: [Rpm-maint] [rpm-software-management/rpm] Implement --json query format (PR #2913)

2024-02-16 Thread Panu Matilainen
@pmatilai pushed 1 commit. 479795192525cd1a282d279215deff7fb7f3e492 fixup! Implement --json query format -- View it on GitHub: https://github.com/rpm-software-management/rpm/pull/2913/files/34667b308a14992e4fae15a5cc4ce803fddbaa78..479795192525cd1a282d279215deff7fb7f3e492 You are receiving this

Re: [Rpm-maint] [rpm-software-management/rpm] Implement --json query format (PR #2913)

2024-02-16 Thread Panu Matilainen
There you go, that hopefully covers it. Annoyingly this also easily doubles the patch size, as these things always do. Also all this string appending is of course all horribly inefficient, but that can be improved later. -- Reply to this email directly or view it on GitHub: https://github.com

Re: [Rpm-maint] [rpm-software-management/rpm] Implement --json query format (PR #2913)

2024-02-16 Thread Panu Matilainen
@pmatilai pushed 1 commit. 34667b308a14992e4fae15a5cc4ce803fddbaa78 fixup! Implement --json query format -- View it on GitHub: https://github.com/rpm-software-management/rpm/pull/2913/files/cb102a6dd315c1d89da8f38b6fa83b83f4d1..34667b308a14992e4fae15a5cc4ce803fddbaa78 You are receiving this

Re: [Rpm-maint] [rpm-software-management/rpm] Implement --json query format (PR #2913)

2024-02-16 Thread Panu Matilainen
Oh, indeed. It's just the kind of dumb luck to miss such characters in the test-material you try to reparse for validation :sweat_smile: The newlines in base64Format() was trying to ring some bells but was too busy hacking the rest of it up. -- Reply to this email directly or view it on GitHub

[Rpm-maint] [rpm-software-management/rpm] Implement --json query format (PR #2913)

2024-02-16 Thread Panu Matilainen
The existing --xml output is extremely useful when inspecting oddities but the format is such an eyesore. JSON is much saner to look at. Details in the commits and their messages, but the first commits are just refactoring to make this feasible. The actual feature in the last commit is quite sm

Re: [Rpm-maint] [rpm-software-management/rpm] Add "local_generator" (PR #2734)

2024-02-14 Thread Panu Matilainen
@pmatilai commented on this pull request. > if (rpmGlob(attrPath, NULL, &files) == 0) { - nattrs = argvCount(files); - fc->atypes = xcalloc(nattrs + 1, sizeof(*fc->atypes)); - for (int i = 0; i < nattrs; i++) { - char *bn = basename(files[i]); - bn[strl

[Rpm-maint] [rpm-software-management/rpm] Add support for spec local file attributes and generators (PR #2911)

2024-02-14 Thread Panu Matilainen
Allow declaring file attributes from the spec via %_local_file_attrs macro. This allows enabling file attributes and their dependency generators even if they are only shipped in the package itself and are not yet installed. The names need to be separated by colons (:). Co-authored-by: Florian

Re: [Rpm-maint] [rpm-software-management/rpm] Arguments are not propagated into global lua macro (Issue #2910)

2024-02-14 Thread Panu Matilainen
%global expands it's the macro body at the time of definition rather than at the time of use, so it cannot possibly work for the function-like parametric macros. I do agree it should raise an error, thanks for reporting. -- Reply to this email directly or view it on GitHub: https://github.com/

Re: [Rpm-maint] [rpm-software-management/rpm] rpm --rebuilddb in an overlayfs without redirect_dir=on (Discussion #2905)

2024-02-14 Thread Panu Matilainen
> As a matter of fact, if I turn this on via: > > ``` > echo "Y" > /sys/module/overlay/parameters/redirect_dir > ``` > the command succeeds This is an interesting bit that I haven't seen before. That clue reveals what is no doubt another wonderful rabbithole... https://www.kernel.org/doc/Documen

Re: [Rpm-maint] [rpm-software-management/rpm] Noarch RPMs that contain EBPF binaries code incorrectly fail with "Arch dependent binaries in noarch package" (Issue #2875)

2024-02-14 Thread Panu Matilainen
I don't know what rpmlint does, it's a separate project. -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/2875#issuecomment-1943732006 You are receiving this because you are subscribed to this thread. Message ID:

Re: [Rpm-maint] [rpm-software-management/rpm] How to specify a fallback package for unpackaged files? (Discussion #2907)

2024-02-14 Thread Panu Matilainen
That said, you can already make rpm ignore unpackaged files. Just flip %_unpackaged_files_terminate_build to zero. -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/discussions/2907#discussioncomment-8464016 You are receiving this because you ar

Re: [Rpm-maint] [rpm-software-management/rpm] How to specify a fallback package for unpackaged files? (Discussion #2907)

2024-02-14 Thread Panu Matilainen
That's a workflow problem really. Making rpm look the other way is not a solution. -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/discussions/2907#discussioncomment-8463982 You are receiving this because you are subscribed to this thread. Me

Re: [Rpm-maint] [rpm-software-management/rpm] How to specify a fallback package for unpackaged files? (Discussion #2907)

2024-02-14 Thread Panu Matilainen
Right. Well, that's exactly why the *packager* needs to decide where those files belong. -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/discussions/2907#discussioncomment-8462949 You are receiving this because you are subscribed to this threa

Re: [Rpm-maint] [rpm-software-management/rpm] A duplicate code (Issue #2904)

2024-02-14 Thread Panu Matilainen
Yeah, could be a rebase incident. It's dead code anyhow. Not exactly a bug, but thanks for reporting. -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/2904#issuecomment-1943317701 You are receiving this because you are subscribed to this

Re: [Rpm-maint] [rpm-software-management/rpm] A duplicate code (Issue #2904)

2024-02-14 Thread Panu Matilainen
Closed #2904 as completed via 41974f46f90473e395731e22fb2f89c561971e33. -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/2904#event-11798578252 You are receiving this because you are subscribed to this thread. Message ID: __

Re: [Rpm-maint] [rpm-software-management/rpm] How to specify a fallback package for unpackaged files? (Discussion #2907)

2024-02-14 Thread Panu Matilainen
No. systemd is widely packaged already, I'd pick up an existing spec as a basis instead of reinventing the wheel. -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/discussions/2907#discussioncomment-8462832 You are receiving this because you ar

Re: [Rpm-maint] [rpm-software-management/rpm] Update Docs for "Users and Groups" in the manual (Issue #2857)

2024-02-14 Thread Panu Matilainen
Closed #2857 as completed via #2903. -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/2857#event-11798448522 You are receiving this because you are subscribed to this thread. Message ID: ___ R

Re: [Rpm-maint] [rpm-software-management/rpm] Adjust User/Group handling Documentation (PR #2903)

2024-02-14 Thread Panu Matilainen
Merged #2903 into master. -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/2903#event-11798448279 You are receiving this because you are subscribed to this thread. Message ID: ___ Rpm-maint mail

Re: [Rpm-maint] [rpm-software-management/rpm] Ignore %config flag where not supported (PR #2906)

2024-02-14 Thread Panu Matilainen
This isn't the only place where a misplaced %config can yield weird results though. I think we should just strip the %config bit out from the file flags entirely, in rpmfilesPopulate() probably. Kinda like we fixup missing rpmlib() flags in rpmdsNewPool(). -- Reply to this email directly or vi

Re: [Rpm-maint] [rpm-software-management/rpm] Add "local_generator" (PR #2734)

2024-02-14 Thread Panu Matilainen
@pmatilai commented on this pull request. > if (rpmGlob(attrPath, NULL, &files) == 0) { - nattrs = argvCount(files); - fc->atypes = xcalloc(nattrs + 1, sizeof(*fc->atypes)); - for (int i = 0; i < nattrs; i++) { - char *bn = basename(files[i]); - bn[strl

Re: [Rpm-maint] [rpm-software-management/rpm] Add "local_generator" (PR #2734)

2024-02-13 Thread Panu Matilainen
@pmatilai commented on this pull request. > if (rpmGlob(attrPath, NULL, &files) == 0) { - nattrs = argvCount(files); - fc->atypes = xcalloc(nattrs + 1, sizeof(*fc->atypes)); - for (int i = 0; i < nattrs; i++) { - char *bn = basename(files[i]); - bn[strl

Re: [Rpm-maint] [rpm-software-management/rpm] Checksum test failure on Ubuntu (Issue #2874)

2024-02-13 Thread Panu Matilainen
Mmm, but with current master the test would be running on Fedora because there's no native test-suite for Ubuntu? Those matryoshkas as really out to get us now. -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/2874#issuecomment-19413597

Re: [Rpm-maint] [rpm-software-management/rpm] Let eBPF ELF files be packaged in noarch packages (PR #2902)

2024-02-13 Thread Panu Matilainen
@pmatilai pushed 1 commit. 3b787e5c375f830180c2e0bc8643cb80c23cc277 Let eBPF ELF files be packaged in noarch packages -- View it on GitHub: https://github.com/rpm-software-management/rpm/pull/2902/files/91f4d3fd56c41faa2f21db17f4bdff10cb01d746..3b787e5c375f830180c2e0bc8643cb80c23cc277 You are

[Rpm-maint] [rpm-software-management/rpm] Let eBPF ELF files be packaged in noarch packages (PR #2902)

2024-02-13 Thread Panu Matilainen
eBPF ELF represents a virtual machine where our file colors make no sense at all. Filter out the color from these files to avoid a "Arch dependent binaries in noarch package" error from them in noarch packages. We don't want to pull in clang to the check images just because of this, so add a pr

Re: [Rpm-maint] [rpm-software-management/rpm] Use Ninja-compatible syntax for passing TESTOPTS (PR #2901)

2024-02-13 Thread Panu Matilainen
Merged #2901 into master. -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/2901#event-11784881206 You are receiving this because you are subscribed to this thread. Message ID: ___ Rpm-maint mail

[Rpm-maint] [rpm-software-management/rpm] Use Ninja-compatible syntax for passing TESTOPTS (PR #2901)

2024-02-13 Thread Panu Matilainen
Ninja doesn't support passing environment as command line arguments like make does, access TESTOPTS through environment instead of the make syntax to make it work for both generators. You can view, comment on, or merge this pull request online at: https://github.com/rpm-software-management/rpm

Re: [Rpm-maint] [rpm-software-management/rpm] Drop erroneous BYPRODUCTS uses from the cmake files (PR #2900)

2024-02-12 Thread Panu Matilainen
Merged #2900 into master. -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/2900#event-11784582614 You are receiving this because you are subscribed to this thread. Message ID: ___ Rpm-maint mail

Re: [Rpm-maint] [rpm-software-management/rpm] Run build scriptlets with closed stdin to enforce unattended builds (PR #2898)

2024-02-12 Thread Panu Matilainen
Merged #2898 into master. -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/2898#event-11784579272 You are receiving this because you are subscribed to this thread. Message ID: ___ Rpm-maint mail

Re: [Rpm-maint] [rpm-software-management/rpm] Remove cycles from CMake dependency graph (PR #2820)

2024-02-12 Thread Panu Matilainen
Solved a bit differently by just dropping the bogus BYPRODUCTS directives: #2900 Thanks for reporting, and the patch even if it didn't get used as-is! -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/2820#issuecomment-1940624460 You are

Re: [Rpm-maint] [rpm-software-management/rpm] Remove cycles from CMake dependency graph (PR #2820)

2024-02-12 Thread Panu Matilainen
Closed #2820. -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/2820#event-11784571037 You are receiving this because you are subscribed to this thread. Message ID: ___ Rpm-maint mailing list Rpm

[Rpm-maint] [rpm-software-management/rpm] Drop erroneous BYPRODUCTS uses from the cmake files (PR #2900)

2024-02-12 Thread Panu Matilainen
BYPRODUCTS is only relevant for Ninja generator which we officially don't even support, but on which these usages cause Ninja to error out with "phony target names itself as an input" messages. I don't remember why exactly I put these BYPRODUCTS in there, but I know it was NOT to support Ninja

Re: [Rpm-maint] [rpm-software-management/rpm] Compiling RPM Version 4.8 on Centos 7 (Discussion #2895)

2024-02-12 Thread Panu Matilainen
You compile it the same as any autotools software: grab the release tarball (not git branch), ./configure and so on. The rpm version being several years older than the distro you'd be compiling it on could cause issues with library and compiler compatibility and such. Any breakage you get to kee

Re: [Rpm-maint] [rpm-software-management/rpm] RPM v6 package format, first public draft for commenting (Discussion #2374)

2024-02-12 Thread Panu Matilainen
There hasn't been much direct activity here recently, but doesn't mean no work has been going on. I'm planning to produce an updated version of the draft in the coming weeks, but the main point is going to be: The overriding priority for V6 is the obsolence of V4 crypto. We need a replacement f

Re: [Rpm-maint] [rpm-software-management/rpm] RPM v6 package format, first public draft for commenting (Discussion #2374)

2024-02-12 Thread Panu Matilainen
FWIW, this is now (briefly) documented in https://rpm-software-management.github.io/rpm/manual/format_header.html#immutable-regions -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/discussions/2374#discussioncomment-8439422 You are receiving th

Re: [Rpm-maint] [rpm-software-management/rpm] Run build scriptlets with closed stdin to enforce unattended builds (PR #2898)

2024-02-12 Thread Panu Matilainen
I only remember a couple of tickets where the issue was rpmbuild being interactive, eg #978. -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/2898#issuecomment-1938331913 You are receiving this because you are subscribed to this thread.

Re: [Rpm-maint] [rpm-software-management/rpm] Document rpm design philosophy in the manual (Issue #2897)

2024-02-12 Thread Panu Matilainen
Yup, there's a lot of related detail which deserves to be documented, but this must not become a 1000 page packaging guide. My primary goal here is a TLDR version of the higher level principles behind rpm operation, such as pristine sources and unattended operation, that you can point the uninit

Re: [Rpm-maint] [rpm-software-management/rpm] Is it possible for an RPM package to have no version? (Discussion #2896)

2024-02-12 Thread Panu Matilainen
> Was it ever possible, at any point in the history of RPM, for a RPM package > to be created without a version or a release? No. Absolutely not. A package with empty or missing name, version, release, arch, os, license or summary tags is simply invalid, and rpm could and should (but apparently

[Rpm-maint] [rpm-software-management/rpm] Run build scriptlets with closed stdin to enforce unattended builds (PR #2898)

2024-02-12 Thread Panu Matilainen
Even max-rpm philosophy section points out that rpm builds are unattended, but then we do nothing at all to prevent it? I first though maybe this regressed when we switched the build scripts to use rpmfcExec() a few years ago, but there wasn't anything before that either. Weird. You can view, co

[Rpm-maint] [rpm-software-management/rpm] Document rpm design philosophy in the manual (Issue #2897)

2024-02-12 Thread Panu Matilainen
Max-rpm has a section on [philosophy](https://ftp.osuosl.org/pub/rpm/max-rpm/ch-rpm-philosophy.html) but it's a source one doesn't really want to link to because it's *s* outdated now. We should have a section explaining the fundamental design principles of rpm in our reference manual, many

Re: [Rpm-maint] [rpm-software-management/rpm] Reproducible builds improvements (Issue #2894)

2024-02-09 Thread Panu Matilainen
In other words, this all would make a whole lot more sense to me if there was a switch that decides where the buildtime gets set from (clock/macro/source_date_epoch), and then the clamping options relate to *buildtime* and not source_date_epoch. @ffesti mentioned elsewhere that maybe, instead o

Re: [Rpm-maint] [rpm-software-management/rpm] Reproducible builds improvements (Issue #2894)

2024-02-09 Thread Panu Matilainen
We have `%_buildhost` macro which seems like it should be paired with `%_buildtime` so adding that seems to make sense, but I guess the latter is missing because you can set it with SOURCE_DATE_EPOCH if you care. I'd totally fine with adding `%_buildtime` override if that means tossing the `?us

Re: [Rpm-maint] [rpm-software-management/rpm] Stop populating os and arch in the lead structure (Issue #2368)

2024-02-09 Thread Panu Matilainen
Dropping from 4.20, as there's zero benefit to doing so just now. We're not bumping the soname in 4.20 so we couldn't remove rpmGetArchInfo() / rpmGetOsInfo() from the API and so we couldn't remove the associated number data yet either. We've waited this long, we can wait a little more. -- Rep

Re: [Rpm-maint] [rpm-software-management/rpm] RFE: file trigger scriptlet arguments (Issue #2755)

2024-02-09 Thread Panu Matilainen
Closed #2755 as completed via 7f59c7dd2f4ff1476bec5c59f37babb1fd231e5a. -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/2755#event-11755075899 You are receiving this because you are subscribed to this thread. Message ID: __

Re: [Rpm-maint] [rpm-software-management/rpm] Pass arg2 to file trigger scripts (PR #2883)

2024-02-09 Thread Panu Matilainen
Merged #2883 into master. -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/2883#event-11755075580 You are receiving this because you are subscribed to this thread. Message ID: ___ Rpm-maint mail

Re: [Rpm-maint] [rpm-software-management/rpm] Pass arg2 to file trigger scripts (PR #2883)

2024-02-09 Thread Panu Matilainen
After mulling on it for a few days, I don't know what *else* we should do with this really. And, it doesn't seem to be pulling a whole lot of attention either. Let's just merge. -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/2883#issuec

Re: [Rpm-maint] [rpm-software-management/rpm] Allow to specify a default for bcond features in a macro file (PR #2405)

2024-02-09 Thread Panu Matilainen
@pmatilai commented on this pull request. > @@ -2413,6 +2414,7 @@ runroot rpm -q --provides -p > /build/RPMS/noarch/bcondtest-1.0-1.noarch.rpm | ], []) + Couple of unrelated empty lines getting added here and above, and also just before and between the new tests. It's a good idea to eyeba

Re: [Rpm-maint] [rpm-software-management/rpm] Proof-of-concept native support for vpath-style builds (PR #2886)

2024-02-09 Thread Panu Matilainen
Closed #2886. -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/2886#event-11754968569 You are receiving this because you are subscribed to this thread. Message ID: ___ Rpm-maint mailing list Rpm

Re: [Rpm-maint] [rpm-software-management/rpm] Proof-of-concept native support for vpath-style builds (PR #2886)

2024-02-09 Thread Panu Matilainen
Okay this PR served its purpose, lessons learned: not this way, and not just now. -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/2886#issuecomment-1935490089 You are receiving this because you are subscribed to this thread. Message ID

Re: [Rpm-maint] [rpm-software-management/rpm] Add a low-level package dump utility (PR #2893)

2024-02-09 Thread Panu Matilainen
Merged #2893 into master. -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/2893#event-11754933396 You are receiving this because you are subscribed to this thread. Message ID: ___ Rpm-maint mail

[Rpm-maint] [rpm-software-management/rpm] Add a low-level package dump utility (PR #2893)

2024-02-08 Thread Panu Matilainen
This started life as pkgdump.c written way back when I needed to analyze some low-level issues with malformed packages and the like. Since then it's proven necessary every once in a blue moon, so might as well include it in the rpm codebase where it may actually be kept up to date and even evolv

Re: [Rpm-maint] [rpm-software-management/rpm] Enhance the recoverability and location of database exceptions (Issue #2828)

2024-02-08 Thread Panu Matilainen
> I think the database is abnormal because the verification fails when I run > the rpm command, You mean 'rpm --verify'? What errors? > or the "rpm -qa" command cannot find the kernel package, but the "rpm -q" > command can find the kernel package. According to the result, the problem is > ca

Re: [Rpm-maint] [rpm-software-management/rpm] Noarch RPMs that contain EBPF binaries code incorrectly fail with "Arch dependent binaries in noarch package" (Issue #2875)

2024-02-07 Thread Panu Matilainen
Okay, managed to produce one by myself: > [pmatilai🎩︎localhost ~]$ clang -target bpf -c bpf.c -o bpf.o > [pmatilai🎩︎localhost ~]$ file bpf.o > bpf.o: ELF 64-bit LSB relocatable, eBPF, version 1 (SYSV), not stripped So it's an architecture by itself, speced to be always 64bit: https://www.ietf.

Re: [Rpm-maint] [rpm-software-management/rpm] Introduce an rpm-controlled per-build directory (PR #2885)

2024-02-07 Thread Panu Matilainen
Other ponderings include the per-build directory macro name, should it be just %builddir without the underscore (instead of %pkgbuilddir) -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/2885#issuecomment-1931865327 You are receiving this

Re: [Rpm-maint] [rpm-software-management/rpm] Introduce an rpm-controlled per-build directory (PR #2885)

2024-02-07 Thread Panu Matilainen
Merged this into a single commit at least for now as the changing paths clashed in maddening ways in the test-suite on rebases, making simple changes too hard to bother with. Buildroot is just BUILDROOT now. I would've used name-version-release.arch for the per-build directory, but this turns

Re: [Rpm-maint] [rpm-software-management/rpm] Introduce an rpm-controlled per-build directory (PR #2885)

2024-02-07 Thread Panu Matilainen
@pmatilai commented on this pull request. > @@ -303,6 +300,24 @@ static rpmRC doCheckBuildRequires(rpmts ts, rpmSpec > spec, int test) return rc; } +static rpmRC doBuildDir(rpmSpec spec, int test, StringBuf *sbp) +{ +char *doDir = rstrscat(NULL, + "rm -rf ",

Re: [Rpm-maint] [rpm-software-management/rpm] Introduce an rpm-controlled per-build directory (PR #2885)

2024-02-07 Thread Panu Matilainen
@pmatilai pushed 1 commit. 9d19699f6c8dc0c3eeaf8dcea820e76171aac84d Introduce an rpm-controlled per-build directory -- View it on GitHub: https://github.com/rpm-software-management/rpm/pull/2885/files/80a60aa2bddb78a897e6279891ec58d862d92d74..9d19699f6c8dc0c3eeaf8dcea820e76171aac84d You are re

Re: [Rpm-maint] [rpm-software-management/rpm] Introduce an rpm-controlled per-build directory (PR #2885)

2024-02-07 Thread Panu Matilainen
The thing is (well, one of the things) is that, foo-1.0/foo-1.0 can mask a bug or packaging error. The ugly -PKG suffix was absolutely necessary for seeing which path a thing is actually trying to use when developing this PR, and will be equally necessary for packagers trying to troubleshoot som

Re: [Rpm-maint] [rpm-software-management/rpm] Enhance the recoverability and location of database exceptions (Issue #2828)

2024-02-07 Thread Panu Matilainen
Um, what exactly do you mean by "database being abnormal" then? -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/2828#issuecomment-1931688028 You are receiving this because you are subscribed to this thread. Message ID: _

Re: [Rpm-maint] [rpm-software-management/rpm] Clarify %_build*, %_host* and %_target* macros (Discussion #2889)

2024-02-07 Thread Panu Matilainen
AFAICS --target was always wrong from the autoconf cross-compilation terminology point of view. For what it does in rpm, --host would be closer to the mark. But outside a autoconf terminology explanation, would anybody ever guess that --host somehow relates to output architecture and stuff? --

Re: [Rpm-maint] [rpm-software-management/rpm] Introduce an rpm-controlled per-build directory (PR #2885)

2024-02-07 Thread Panu Matilainen
> Not a fan of the `-PKG` and `-root` suffixes. The -PKG is ugly for sure, but *some* differentation from the traditional %setup created directory seems necessary to drive the point across, and make logs easier to look at. If you just have 'foo-1.0/foo-1.0/' its easy to mix up etc. NEVRA might

Re: [Rpm-maint] [rpm-software-management/rpm] Introduce an rpm-controlled per-build directory (PR #2885)

2024-02-07 Thread Panu Matilainen
@pmatilai commented on this pull request. > @@ -303,6 +300,24 @@ static rpmRC doCheckBuildRequires(rpmts ts, rpmSpec > spec, int test) return rc; } +static rpmRC doBuildDir(rpmSpec spec, int test, StringBuf *sbp) +{ +char *doDir = rstrscat(NULL, + "rm -rf ",

Re: [Rpm-maint] [rpm-software-management/rpm] Clarify %_build*, %_host* and %_target* macros (Discussion #2889)

2024-02-06 Thread Panu Matilainen
Nobody knows. See https://github.com/rpm-software-management/rpm/issues/1650 -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/discussions/2889#discussioncomment-8382986 You are receiving this because you are subscribed to this thread. Message I

Re: [Rpm-maint] [rpm-software-management/rpm] Pass arg2 to file trigger scripts (PR #2883)

2024-02-06 Thread Panu Matilainen
Aside from those three-way indiretions making me cringe a bit (not that it makes any difference here), looks pretty straight-forward to me. This is one where feedback from active packagers would be useful. -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-man

Re: [Rpm-maint] [rpm-software-management/rpm] Introduce an rpm-controlled per-build directory (PR #2885)

2024-02-06 Thread Panu Matilainen
Multiple buildroots could be useful for the the "variant builds" case, but the arch-os naming doesn't help with *that* at all, the potential benefits I see are more far fetched. But, it's useful to shake things a bit, it doesn't *have* to be BUILDROOT just because we've had such a thing in the p

Re: [Rpm-maint] [rpm-software-management/rpm] Allow to specify a default for bcond features in a macro file (PR #2405)

2024-02-06 Thread Panu Matilainen
I'll still want to see the "real-world" test cases added to this. The gotchas and bugs are always in the part that you didn't think needs testing :laughing: -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/2405#issuecomment-1929442665 You

Re: [Rpm-maint] [rpm-software-management/rpm] Allow to specify a default for bcond features in a macro file (PR #2405)

2024-02-06 Thread Panu Matilainen
@pmatilai commented on this pull request. > @@ -91,5 +91,16 @@ macros which is nicer in other situations, e.g.: Always test for the `with`-condition, not the `without`-counterpart! +## Overrinding Defaults + +For distributions it can be useful to overwrite the build conditionals on a globa

Re: [Rpm-maint] [rpm-software-management/rpm] Add "local_generator" (PR #2734)

2024-02-06 Thread Panu Matilainen
One more thing wrt the macro name: I wonder if this is a case where it should *not* have those leading underscores. The generator itself is full of those, but the newly added macro here is something directly intended for packager use. -- Reply to this email directly or view it on GitHub: https:

Re: [Rpm-maint] [rpm-software-management/rpm] Add "local_generator" (PR #2734)

2024-02-06 Thread Panu Matilainen
@pmatilai commented on this pull request. > @@ -995,6 +995,25 @@ runroot rpm -qp --requires > /build/RPMS/noarch/shebang-0.1-1.noarch.rpm|grep -v ^ []) RPMTEST_CLEANUP +AT_SETUP([Local dependency generator]) +AT_KEYWORDS([build]) +RPMTEST_CHECK([ +RPMDB_INIT + +runroot rpmbuild -bb --quiet

Re: [Rpm-maint] [rpm-software-management/rpm] Add "local_generator" (PR #2734)

2024-02-06 Thread Panu Matilainen
@pmatilai commented on this pull request. > - bn[strlen(bn)-strlen(".attr")] = '\0'; - fc->atypes[i] = rpmfcAttrNew(bn); + nfiles = argvCount(files); +} +char * local_attr_names = rpmExpand("%{?__local_file_attrs}", NULL); +ARGV_t local_attrs = argvSplitString

Re: [Rpm-maint] [rpm-software-management/rpm] Add "local_generator" (PR #2734)

2024-02-06 Thread Panu Matilainen
@pmatilai commented on this pull request. > - fc->atypes = xcalloc(nattrs + 1, sizeof(*fc->atypes)); - for (int i = 0; i < nattrs; i++) { - char *bn = basename(files[i]); - bn[strlen(bn)-strlen(".attr")] = '\0'; - fc->atypes[i] = rpmfcAttrNew(bn); +

Re: [Rpm-maint] [rpm-software-management/rpm] Add "local_generator" (PR #2734)

2024-02-06 Thread Panu Matilainen
@pmatilai commented on this pull request. > - bn[strlen(bn)-strlen(".attr")] = '\0'; - fc->atypes[i] = rpmfcAttrNew(bn); + nfiles = argvCount(files); +} +char * local_attr_names = rpmExpand("%{?__local_file_attrs}", NULL); +ARGV_t local_attrs = argvSplitString

Re: [Rpm-maint] [rpm-software-management/rpm] RPM 4.19.1.1 bugfix update (PR #2888)

2024-02-06 Thread Panu Matilainen
> > There are a few memleak fixes > > Oh, you mean (some commits from) #2879. Indeed, I somehow ignored this whole > PR due to it starting with "Add support for ..." 😄 I'll look at those patches > and see if cherry picking at least some of them would make sense, thanks. Yup, those. OTOH you cou

Re: [Rpm-maint] [rpm-software-management/rpm] Introduce an rpm-controlled per-build directory (PR #2885)

2024-02-06 Thread Panu Matilainen
@kloczek , this is not about SPECPARTS although if you *look* at the PR, that's one of the issues that gets solved by this. See #2532 for the background. -- Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/2885#issuecomment-1929038038 You are

Re: [Rpm-maint] [rpm-software-management/rpm] Is there a way to merge several RPMs (Discussion #2887)

2024-02-06 Thread Panu Matilainen
I guess what you mean by "merging" is something entirely different than me & ffesti think of. Binary rpm's are immutable end products of a spec which directs rpmbuild to produce said rpms. Somehow undoing a separation set by the packager is just not a meaningful operation at all. The only meani

<    10   11   12   13   14   15   16   17   18   19   >