Re: [Rpm-maint] [rpm-software-management/rpm] Support threading for zstd compression. (#1303)
I'm also not so sure about the "the multi-threaded output produces the same compressed data no matter how many threads you use" statement, because the block size seems to depend on the number of workers (see ZSTDMT_compress_advanced_internal). -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1303#issuecomment-658026374___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Support threading for zstd compression. (#1303)
Note that the zstd people *did* say that threaded compression has a different output than unthreaded operation: it compresses a bit worse. So the pull request will break delta rpms. Can you please change the code so that it uses unthreaded mode if there is no 'T' in the compression flags? I.e. initialize `threads` with 0 instead of -1? -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1303#issuecomment-658021442___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Cannot import a GPG key with signatures (#1306)
I guess it can't deal with the ECDSA and EdDSA signatures. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1306#issuecomment-656772125___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] zstd compression: port to the new API. (#1303)
You need to recreate the same bytewise identical compression when applying the deltarpm. The parallel compression implementations tend to partition the data and compress the chunks individually, leading to a different result. I haven't checked the zstd implementation, I admit, I just know that this was the problem with parallel bzip2/xz compression. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1303#issuecomment-656002046___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] zstd compression: port to the new API. (#1303)
You're aware that this breaks delta rpms? -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1303#issuecomment-655579498___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Add dbus-announce plugin (#1255)
(Colin, see issue #1124 for a solution using a named pipe) -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1255#issuecomment-645250342___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Add dbus-announce plugin (#1255)
@mlschroe commented on this pull request. > +state->logging = 1; + +/* ...don't log test transactions */ +if (rpmtsFlags(ts) & (RPMTRANS_FLAG_TEST|RPMTRANS_FLAG_BUILD_PROBS)) + state->logging = 0; + +/* ...don't log chroot transactions */ +if (!rstreq(rpmtsRootDir(ts), "/")) + state->logging = 0; + +/* Don't open */ +if (!state->logging || state->bus) + return RPMRC_OK; + +if (lstat("/run/systemd/system/", ) == 0) { +if (S_ISDIR(st.st_mode)) { Pardon my ignorance, but why is this depending on some systemd directory? Does dbus need systemd? -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1255#pullrequestreview-426476154___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Support ed25519 signatures (#1202)
Thanks for the info. Note that this pull request does not make rpm use some different signature system: it still only supports pgp (RFC4880) signatures. Only very old rpm versions used gpg to verify the signatures, rpm has its own pgp functions since ages. (See also issue #1193 for a discussion about different signature systems) -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1202#issuecomment-634037280___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Support ed25519 signatures (#1202)
@mlschroe commented on this pull request. > @@ -168,7 +169,8 @@ typedef enum pgpPubkeyAlgo_e { PGPPUBKEYALGO_EC = 18, /*!< Elliptic Curve */ PGPPUBKEYALGO_ECDSA= 19, /*!< ECDSA */ PGPPUBKEYALGO_ELGAMAL = 20, /*!< Elgamal */ -PGPPUBKEYALGO_DH = 21/*!< Diffie-Hellman (X9.42) */ +PGPPUBKEYALGO_DH = 21, /*!< Diffie-Hellman (X9.42) */ +PGPPUBKEYALGO_EDDSA= 22/*!< EdDSA */ It's now also in the commit message ;) -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1202#discussion_r430381333___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Support ed25519 signatures (#1202)
@mlschroe commented on this pull request. > @@ -168,7 +169,8 @@ typedef enum pgpPubkeyAlgo_e { PGPPUBKEYALGO_EC = 18, /*!< Elliptic Curve */ PGPPUBKEYALGO_ECDSA= 19, /*!< ECDSA */ PGPPUBKEYALGO_ELGAMAL = 20, /*!< Elgamal */ -PGPPUBKEYALGO_DH = 21/*!< Diffie-Hellman (X9.42) */ +PGPPUBKEYALGO_DH = 21, /*!< Diffie-Hellman (X9.42) */ +PGPPUBKEYALGO_EDDSA= 22/*!< EdDSA */ I added it to the header file, I hope that's also ok -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1202#discussion_r430378716___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] RFC: support rpm version comparison in expression parser (#1220)
Yeah, I should read the comments instead of just looking at the "Files Changed" tab... -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1220#issuecomment-628682647___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] RFC: support rpm version comparison in expression parser (#1220)
How about supporting EVR syntax instead of that rpmvercmp() call? -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1220#issuecomment-628650459___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] RFC: support rpm version comparison in expression parser (#1220)
Another possibility would be the pythonish/perlish `v"1.2.3"`. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1220#issuecomment-628647876___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] rpm --eval "%{lua:rpm.interactive()}" does not immediately print the output (#1215)
This happens because you're in a macro expansion, so all the output is collected and returned to the macro engine. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1215#issuecomment-627852393___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Support ed25519 signatures (#1202)
But when I asked you about that in #1050 you said: "It could be multiple groups or whatever, but certainly not about new algorithms"... -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1202#issuecomment-625769798___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] WIP: RFC: Buildsystem overhaul (meson) (#1209)
(But I admit that this point is moot if util-linux really switches to meson. Systemd is currently not a problem, as it is not needed for building.) -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1209#issuecomment-625726930___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] WIP: RFC: Buildsystem overhaul (meson) (#1209)
No, Panu is right. Rpm being behind python *is* an issue for distribution builders because it introduces a nasty dependency cycle. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1209#issuecomment-625719009___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Support ed25519 signatures (#1202)
Things that need to be discussed: - which signature header tags to (re-)use? (My preference is the gpg tags.) - do we want to add `RPMRC_UNSUPPORTED` for unsupported algorithms/curves? Currently unsupported sigs are reported as bad, which is not nice. - do we want to allow the import of unsupported pubkeys? We currently do not allow that, my preference is to keep it that way. Bonus questions: - what is RPMRC_NOTTRUSTED? - what is `sinfo->sigalgo`? It does not seem to be set anywhere. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1202#issuecomment-625704348___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] WIP: RFC: Buildsystem overhaul (meson) (#1209)
See also issue #887. The hard part is not the build process, but converting all the tests. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1209#issuecomment-625694952___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Support ed25519 signatures (#1202)
Note that this is incomplete: there needs to be another commit to define which tag to use for ed25519 signatures. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1202#issuecomment-621251757___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
[Rpm-maint] [rpm-software-management/rpm] Support ed25519 signatures (#1202)
You can view, comment on, or merge this pull request online at: https://github.com/rpm-software-management/rpm/pull/1202 -- Commit Summary -- * Support the EdDSA public key algorithm * Support ed25519 signatures in digest_openssl.c * Support ed25519 signatures in digest_libgcrypt.c -- File Changes -- M rpmio/digest.h (3) M rpmio/digest_beecrypt.c (2) M rpmio/digest_libgcrypt.c (130) M rpmio/digest_nss.c (2) M rpmio/digest_openssl.c (121) M rpmio/rpmpgp.c (45) M rpmio/rpmpgp.h (27) -- Patch Links -- https://github.com/rpm-software-management/rpm/pull/1202.patch https://github.com/rpm-software-management/rpm/pull/1202.diff -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1202 ___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Don't check source package provides against installed conflicts (#1192)
@mlschroe approved this pull request. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1192#pullrequestreview-398143102___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] RFE: Signing packages with signify (#1193)
You mean verification of metadata signatures? Is that what you want to change? For this it would make more sense if rpm offers an API so that it can do the verification. Currently upper layers have to export the keys from the rpmdb, import them into gpg (if they use gpg for this) and then use gpg for verification. But we're hijacking this issue about signify by discussing something completely different. Could you please open another issue? -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1193#issuecomment-617742461___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] RFE: Signing packages with signify (#1193)
But rpm does not use gpg for signature verification. Using PKCS#7 basically just means a different encoding format for the signature, the crypto libraries would not change at all. It's much pain with no gain. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1193#issuecomment-617726007___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] RFE: Signing packages with signify (#1193)
X.509? You mean PKCS#7? I don't think this would be an improvement ;-) -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1193#issuecomment-617723867___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] RFE: Signing packages with signify (#1193)
I don't understand that comment. Rpm's trust model is identical to the one used in signify. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1193#issuecomment-617701734___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] RFE: Signing packages with signify (#1193)
But rpm does not use any "web of trust" concept at all. And RFC 4880 also is not about trust. In rpm a signature is valid if and only if the public key is in the database. I think you're confusing the format with the implementation. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1193#issuecomment-617694555___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] NEVR provides in source package lead to rpmbuild errors (#1189)
Why is that cured by #1192? It just changes things for conflicts of installed packages. My example was about a build requires being satisfied by a provides of a source package. I think this needs to be fixed in rpmal.c -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1189#issuecomment-617686841___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] NEVR provides in source package lead to rpmbuild errors (#1189)
I wonder if the added provides also can lead to problems if we have a transaction with both source and binary packages. The provides from the source packages must not satisfy the dependencies of the binary packages. Another thing to test would be a spec file that has a BuildRequires to one of the packages it builds. For example, gcc.spec might have a `BuildRequires: gcc`. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1189#issuecomment-617664388___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Self-conflicts and self-obsoletes don't work correctly with --replacepkgs (#1190)
Oops, wrong issue ;) -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1190#issuecomment-617664011___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] RFE: Signing packages with signify (#1193)
Why would we want to use a different format? There's nothing wrong with the pgp signature format. (I totally agree that the gpg code itself is horrible. Fortunately rpm does not use it.) This is like saying we should switch to dpkg's packaging format because it is used by Debian. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1193#issuecomment-61766___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Self-conflicts and self-obsoletes don't work correctly with --replacepkgs (#1190)
I wonder if the added provides also can lead to problems if we have a transaction with both source and binary packages. The provides from the source packages must not satisfy the dependencies of the binary packages. Another thing to test would be a spec file that has a BuildRequires to one of the packages it builds. For example, gcc.spec might have a `BuildRequires: gcc`. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1190#issuecomment-617650646___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] RFE: Signing packages with signify (#1193)
You can sign with any tool you like as long as you wrap the result as a pgp signature. I don't see any reason why we should use a different *format* for the signature. (What we should do is support ed25519 though. We currently only support rsa and dsa) -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1193#issuecomment-617641451___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Self-conflicts and self-obsoletes don't work correctly with --replacepkgs (#1191)
duplicate of #1190 caused by github incident. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1191#issuecomment-617316732___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Self-conflicts and self-obsoletes don't work correctly with --replacepkgs (#1191)
Closed #1191. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1191#event-3257228317___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
[Rpm-maint] [rpm-software-management/rpm] Self-conflicts and self-obsoletes don't work correctly with --replacepkgs (#1190)
`rpm -i --replacepkgs` will not add an erasure element for an identical installed package. This makes the dependency check see the installed package and report an error even though the package will be removed later on. I've stumbled over this in another bug report. I don't mind if it does not get fixed, I opened this issue just to make this problem known. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1190___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
[Rpm-maint] [rpm-software-management/rpm] Self-conflicts and self-obsoletes don't work correctly with --replacepkgs (#1191)
`rpm -i --replacepkgs` will not add an erasure element for an identical installed package. This makes the dependency check see the installed package and report an error even though the package will be removed later on. I've stumbled over this in another bug report. I don't mind if it does not get fixed, I opened this issue just to make this problem known. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1191___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
[Rpm-maint] [rpm-software-management/rpm] NEVR provides in source package lead to rpmbuild errors (#1189)
This is a regression caused by commit 75ec16e660e784d7897b37cac1a2b9b135825f25. The provides added to the source rpms will be checked against the dependencies of the installed packages. Because of this you will get an error if you try to build an rpm where the package name matches a conflict of an installed package. I.e.: ``` error: Failed build dependencies: bash <= 2.0.4-21 conflicts with (installed) setup-2.8.71-2.fc20.noarch ``` -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1189___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Question: the way to check if "load" macro is built-in in a spec file (#1104)
If you want hacks you can do something like: ``` %if "%{load:/dev/null}" == "" ``` -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1104#issuecomment-616423526___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] RFE: optional one-shot/cached macro expansion (#1155)
Well, we don't need to allow %global. Anyway, let's move a step back and talk about this issue. This is about one shot macros. Implementation wise this is not hard, it's more a question of syntax. It would be nice to have the following options: - literal: do not expand the macro when using it - global: put macro in global namespace - expand: expand macro right away - once: cache expanded macro (this issue) So %global is %define plus the global + expand flags. Macro names can't start with a `-`, so we could make use normal options: ``` %global foo bar %define -g -x foo bar ``` As next step can can discuss how we support this in the macro files ;) -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1155#issuecomment-614169509___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] RFE: optional one-shot/cached macro expansion (#1155)
Crazy thought: we could allow to use %define/%global in the macro file, as those are illegal macro names. I.e. we could allow this: ``` %foo hello %define bar world ``` (rpm internally somewhat rewrites the %foo to %define foo anyway) Then we could also allow ``` %undefine foo ``` which is something I wanted to have since quite some time. The downside is of course that people will start to try to use %if statements, because the macro file looks too much like a spec file. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1155#issuecomment-614012836___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Warn on undefined macro uses in specs (#1170)
You could also just use some macro to turn it on/off like with the other rpm flags, i.e.: ``` %define _warn_on_undefined_macro_expansion 1 ``` That would make it easy to turn it on for a whole project in OBS. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1170#issuecomment-614010307___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] RFE: store a copy of files maked as config in /usr/lib/rpm/config (#1178)
Regarding doing the copies at install time: The nice thing about having them as normal files in the header is that we get automatic de-dup and refcounting. I.e. we can do a 'rpm -qf ...' to find out the owners of a config file and they get automatically removed if nobody owns them anymore. We can opt to have them as ghosts in the header and do some magic at install time, but I'm not sure if it's worth the trouble as config files tend to be small. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1178#issuecomment-613447480___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
[Rpm-maint] [rpm-software-management/rpm] RFE: store a copy of files maked as config in /usr/lib/rpm/config (#1178)
If a file is marked as config file, rpmbuild could automatically create a copy and store it in `/usr/lib/rpm/config/first-digest-byte/file-digest`. We can then make use of this to: - allow to display the changes done by the user - use a three-way merge algorithm - handle digest algorithm changes more gracefully To support this, we just need to change the build part. No incompatibilities arise. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1178___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Handle manually specified debuginfo package more gracefully (#1177)
@mlschroe approved this pull request. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1177#pullrequestreview-392794740___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Fix regression causing all ELF files classified as OCaml (#1174)
@mlschroe approved this pull request. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1174#pullrequestreview-390727170___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Ocaml dependency generators running on all ELF files (#1173)
Of course rpm can do that, you need to put "magic_and_path" in the flags. ``` %__ocaml_flags magic_and_path ``` -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1173#issuecomment-611485340___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Discussion: spec tag order and side-effects (#1161)
There is no "new evaluate on declaration thing". Rpm always evaluates macros when it parses lines. How do you think macros like ``` %perl_req Requires: perl = %{perl_version} ``` work? You can also do something like this: ``` %define p0 Patch0: patch.diff %p0 ``` There is no way to get rid of that initial expansion. The question is whether we should go back to expanding the source/patch tags twice for compatibility reasons. Even if it's an undocumented and unclean feature that wasn't intended that way- (The downside of expanding multiple times is that it is not easy to have a literal '%' character in the patch name.) -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1161#issuecomment-611201614___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
[Rpm-maint] [rpm-software-management/rpm] Support DSA2 in digest_libgcrypt.c (#1168)
For DSA2 we need to truncate the hash to the size of the pubkeys Q value. You can view, comment on, or merge this pull request online at: https://github.com/rpm-software-management/rpm/pull/1168 -- Commit Summary -- * Support DSA2 in digest_libgcrypt.c -- File Changes -- M rpmio/digest_libgcrypt.c (6) -- Patch Links -- https://github.com/rpm-software-management/rpm/pull/1168.patch https://github.com/rpm-software-management/rpm/pull/1168.diff -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1168 ___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Discussion: spec tag order and side-effects (#1161)
Btw, what the commit changed was that the Source/Patch arguments are no longer expanded *twice*. They used to be macro expanded when the tag was parsed and then expanded again when the files were used. This issue is not a tag ordering issue at all. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1161#issuecomment-610474749___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Discussion: spec tag order and side-effects (#1161)
My 2 cents: I don't see what macro expansion has to do with the free order of spec tags. It's should not surprise anybody that using %name does not work before the "Name:" tag is given. And how is the following different? ``` Patch0: %{foo} %define foo bar.diff ``` This has nothing to do with the order of the tags. I'd *hate* if rpm would insist on some specific order, though. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1161#issuecomment-610317827___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Sqlite backend's prefix match cannot deal with '%' characters (#1018)
I learned a bit more about sqlite in another project. Turns out that using a custom match function is much slower than the LIKE version, because of sqlite's LIKE optimization: https://www.sqlite.org/optoverview.html#the_like_optimization So I think we should go back to use LIKE and escape the % and _ characters. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1018#issuecomment-603164781___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Sqlite backend's prefix match cannot deal with '%' characters (#1018)
Reopened #1018. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1018#event-3159073617___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] RFE: add database change notification API (#1124)
A linux specific way would be to offer some functions around inotify(). We can also try something more generic: We could create a named pipe in /var/lib/rpm. At the start of the transaction we open the pipe O_WRONLY, at the end we simply close the fd. Some other process that wants to be notified can open the named pipe with O_RDONLY|O_NONBLOCK and then use poll/select on the fd. (Reading will not block for some reason if there is no writer.) When rpm opens the named pipe for writing nothing will happen, but closing it will make all the select/poll users get a read event (because of the EOF). -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1124#issuecomment-603157916___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] RFE: add database change notification API (#1124)
I don't think sqlite notification hooks work for different processes. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1124#issuecomment-601139635___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Always open (and initialize) the entire database at once (#1119)
Sorry, I haven't had time to have a closer look at this. Things are a bit chaotic here at SUSE with everything being locked down because of the corona virus. But from my glancing over the changes everything looked fine. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1119#issuecomment-56556___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Make "rpmspec -q --srpm foo.spec" say .src, not .%{arch} (#1116)
What about nosrc packages? -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1116#issuecomment-598149647___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] %force file list directive (#1118)
It's not so easy, it needs some changes in rpm's aliasing detection code (i.e. symlinked directories) so that the rpm internals know what's going on. I'm already working on this, but the development has been stalled the last weeks due to other work needing to be done first. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1118#issuecomment-598129379___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Fix prefix match searches on strings containing % on sqlite backend (#1085)
mlschroe approved this pull request. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1085#pullrequestreview-365581861___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Add a --salvagedb option to the rpmdb tool (#1042)
Oh, I'm sorry. I forgot about that commit message change you requested. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1042#issuecomment-591389159___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Fix prefix match searches on strings containing % on sqlite backend (#1085)
Or: `SUBSTR(key,1,LENGTH('%q')) = '%q'` But it's also a bit unsafe to assume that `strlen(key) == keylen`. (OTOH the prefix iterator is currently not exposed and for rpm's usage the length matches). -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1085#issuecomment-591386443___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Fix prefix match searches on strings containing % on sqlite backend (#1085)
You could use `INSTR(key, '%q') = 1` but that may be a too slow. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1085#issuecomment-591368866___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Fix prefix match searches on strings containing % on sqlite backend (#1085)
Do we still need that length comparison then? Also, the sqlite documentation says that for text string the length is UTF8 characters, not bytes. So this might not work correctly for non-ASCII. Oh, that's also true for the LENGTH function, it returns characters not bytes. I.e. the original code is also incorrect. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1085#issuecomment-591364610___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Make parametric macro arguments available as native Lua table (#1063)
I must admit I liked the old implementation better as it didn't do the lua setup if it is not needed by some lua macro. I.e. it had a more lazy approach. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1063#issuecomment-590800408___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Speed up dependency solving by using pool ids (#1081)
@mlschroe pushed 1 commit. 4c43d263ee1e01b5f3a9822e8bc24aff17cc0461 Use the transaction set as argument in rpmalCreate() -- You are receiving this because you are subscribed to this thread. View it on GitHub: https://github.com/rpm-software-management/rpm/pull/1081/files/d9ffe24cd45a16a9c2ea258d40fbf2e967760d2c..4c43d263ee1e01b5f3a9822e8bc24aff17cc0461 ___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Speed up dependency solving by using pool ids (#1081)
@mlschroe pushed 1 commit. d9ffe24cd45a16a9c2ea258d40fbf2e967760d2c Use the transaction set as argument in rpmalCreate() -- You are receiving this because you are subscribed to this thread. View it on GitHub: https://github.com/rpm-software-management/rpm/pull/1081/files/9c5dd5c2f12862687b81ca9c8775db8fedbd543d..d9ffe24cd45a16a9c2ea258d40fbf2e967760d2c ___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Add ability to calculate filedigests using Streebog-256 and Streebog-… (#1082)
mlschroe commented on this pull request. > @@ -266,6 +266,8 @@ typedef enum pgpHashAlgo_e { PGPHASHALGO_SHA384 = 9, /*!< SHA384 */ PGPHASHALGO_SHA512 = 10, /*!< SHA512 */ PGPHASHALGO_SHA224 = 11, /*!< SHA224 */ +PGPHASHALGO_GOST12_256 = 100, /*!< GOST R 34.11-2012 256 */ +PGPHASHALGO_GOST12_512 = 101, /*!< GOST R 34.11-2012 512 */ Dunno, I thought something like http://gostcrypt.github.io/ -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1082#discussion_r382635112___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Add ability to calculate filedigests using Streebog-256 and Streebog-… (#1082)
mlschroe commented on this pull request. > @@ -266,6 +266,8 @@ typedef enum pgpHashAlgo_e { PGPHASHALGO_SHA384 = 9, /*!< SHA384 */ PGPHASHALGO_SHA512 = 10, /*!< SHA512 */ PGPHASHALGO_SHA224 = 11, /*!< SHA224 */ +PGPHASHALGO_GOST12_256 = 100, /*!< GOST R 34.11-2012 256 */ +PGPHASHALGO_GOST12_512 = 101, /*!< GOST R 34.11-2012 512 */ (I'd actually prefer to use official values. Is the GOST project in contact with the pgp folks?) -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1082#discussion_r382520747___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Add ability to calculate filedigests using Streebog-256 and Streebog-… (#1082)
mlschroe commented on this pull request. > @@ -266,6 +266,8 @@ typedef enum pgpHashAlgo_e { PGPHASHALGO_SHA384 = 9, /*!< SHA384 */ PGPHASHALGO_SHA512 = 10, /*!< SHA512 */ PGPHASHALGO_SHA224 = 11, /*!< SHA224 */ +PGPHASHALGO_GOST12_256 = 100, /*!< GOST R 34.11-2012 256 */ +PGPHASHALGO_GOST12_512 = 101, /*!< GOST R 34.11-2012 512 */ It should match the hash algorithm id used in pgp. 12 is SHA3-256, 14 is SHA3-512. 100-110 is reserved for Private/Experimental algorithms. See https://tools.ietf.org/html/draft-ietf-openpgp-rfc4880bis-05 -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1082#discussion_r382516910___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
[Rpm-maint] [rpm-software-management/rpm] Speed up dependency solving by using pool ids (#1081)
This gets rid of a couple of id-str-id roundtrips and also makes the dependency hashes in rpmtsCheck() use pool ids instead of strings. You can view, comment on, or merge this pull request online at: https://github.com/rpm-software-management/rpm/pull/1081 -- Commit Summary -- * Add fingerprint lookup/compare variants that take ids * Get rid of id-str-id roundtrips in rpmalAllFileSatisfiesDepend() * Only lookup the fingerprint when the directories do not match * Switch dependency checking to use pool ids instead of strings -- File Changes -- M lib/depends.c (106) M lib/fprint.c (17) M lib/fprint.h (17) M lib/rpmal.c (17) -- Patch Links -- https://github.com/rpm-software-management/rpm/pull/1081.patch https://github.com/rpm-software-management/rpm/pull/1081.diff -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1081 ___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] More fpLookupSubdir cleanups (#1071)
@mlschroe pushed 1 commit. 4db183db61ca56d035712ca752234aa7c8e8b097 Only look at symlinks in new packages in fpLookupSubdir -- You are receiving this because you are subscribed to this thread. View it on GitHub: https://github.com/rpm-software-management/rpm/pull/1071/files/fe90d1990af3809b9f1174bbf77e458435154328..4db183db61ca56d035712ca752234aa7c8e8b097 ___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] More fpLookupSubdir cleanups (#1071)
@mlschroe pushed 1 commit. fe90d1990af3809b9f1174bbf77e458435154328 Only look at symlinks in new packages in fpLookupSubdir -- You are receiving this because you are subscribed to this thread. View it on GitHub: https://github.com/rpm-software-management/rpm/pull/1071/files/841134ef4697842f1fb3ef4bb2f3993deb8f2a5c..fe90d1990af3809b9f1174bbf77e458435154328 ___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] More fpLookupSubdir cleanups (#1071)
@mlschroe pushed 1 commit. 841134ef4697842f1fb3ef4bb2f3993deb8f2a5c Only look at symlinks in new packages in fpLookupSubdir -- You are receiving this because you are subscribed to this thread. View it on GitHub: https://github.com/rpm-software-management/rpm/pull/1071/files/954c491165cacf9156d2e4b0f3afaaaef9c3d529..841134ef4697842f1fb3ef4bb2f3993deb8f2a5c ___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] More fpLookupSubdir cleanups (#1071)
Oh yes, we'll need to do the rpmfilesFpLookup() call for TR_REMOVED packages. Fixing... -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1071#issuecomment-588183440___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Implement %{macrobody:...} built-in for retrieving the literal macro body (#1064)
As it now expands the argument I think it should be handled in doFoo(). -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1064#issuecomment-588161577___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Auto-enable optimizations for non-rotational disks on Linux (#949)
mlschroe commented on this pull request. > @@ -109,6 +121,27 @@ static char *getMntPoint(const char *dirName, dev_t dev) return res; } +static int getRotational(const char *dirName, dev_t dev) +{ +int rotational = 1;/* Be a good pessimist, assume the worst */ +#if defined(__linux__) +char *devpath = NULL; +FILE *f = NULL; + +rasprintf(, "/sys/dev/block/%d:%d/queue/rotational", + major(dev), minor(dev)); +if ((f = fopen(devpath, "r")) != NULL) { + int v; + if (fscanf(f, "%d", ) == 1) + rotational = v; That maybe the case with current kernels, but with kernel version 6.0.0 it will probably return '-1' for some disks... I'm just nitpicking because the rest of the code assumes that it returns a boolean, which is not something fscanf guarantees. Feel free to ignore this comment ;-) -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/949#discussion_r381217245___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] More fpLookupSubdir cleanups (#1071)
@mlschroe pushed 1 commit. 954c491165cacf9156d2e4b0f3afaaaef9c3d529 Only look at symlinks in new packages in fpLookupSubdir -- You are receiving this because you are subscribed to this thread. View it on GitHub: https://github.com/rpm-software-management/rpm/pull/1071/files/1732cc787d6f508019edc7c455aa02d9b9ad78e6..954c491165cacf9156d2e4b0f3afaaaef9c3d529 ___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] More fpLookupSubdir cleanups (#1071)
mlschroe commented on this pull request. > pi = rpmtsiInit(ts); while ((p = rpmtsiNext(pi, 0)) != NULL) { fingerPrint *fpList; (void) rpmsqPoll(); + if (rpmteType(p) == TR_REMOVED) + continue; /* we are only interested in new packages */ Oh, I didn't know about that. Force pushed. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1071#discussion_r381214248___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Auto-enable optimizations for non-rotational disks on Linux (#949)
mlschroe commented on this pull request. > @@ -109,6 +121,27 @@ static char *getMntPoint(const char *dirName, dev_t dev) return res; } +static int getRotational(const char *dirName, dev_t dev) +{ +int rotational = 1;/* Be a good pessimist, assume the worst */ +#if defined(__linux__) +char *devpath = NULL; +FILE *f = NULL; + +rasprintf(, "/sys/dev/block/%d:%d/queue/rotational", + major(dev), minor(dev)); +if ((f = fopen(devpath, "r")) != NULL) { + int v; + if (fscanf(f, "%d", ) == 1) + rotational = v; Should that be `rotational = v ? 1 : 0` or something like that? -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/949#pullrequestreview-361006475___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] More fpLookupSubdir cleanups (#1071)
I've added a commit that makes the code only consider symlinks. Florian, any objections to this? -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1071#issuecomment-588151243___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] More fpLookupSubdir cleanups (#1071)
@mlschroe pushed 1 commit. 1732cc787d6f508019edc7c455aa02d9b9ad78e6 Only look at symlinks in new packages in fpLookupSubdir -- You are receiving this because you are subscribed to this thread. View it on GitHub: https://github.com/rpm-software-management/rpm/pull/1071/files/1c9343142a728dce571ee0c8ce4f6fae42354588..1732cc787d6f508019edc7c455aa02d9b9ad78e6 ___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] More fpLookupSubdir cleanups (#1071)
I didn't plan to push more commits, but now that you ask: Does it really make sense to have the symlinks of already installed packages in the `symlinks` hash? If a symlink is deleted on disk, the code will ignore it anyway (see the "Ignore already removed (by eg %pretrans) links" comment). If it's still on disk, the fingerprint lookup code will have found it and it will not be part of the "subDir" element. So what's the point? -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1071#issuecomment-587448013___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] More fpLookupSubdir cleanups (#1071)
Regarding your b81b4a35240f16fa8b45156b0151fab9e130a8e8 commit: fpLookupSubdir's slash handling is still somewhat broken, it tends to duplicate slashes when creating the link. The fingerprint lookup fortunately calls rpmCleanPath() with gets rid of the extra slashes again. BTW, why do the subDir entries in the fingerprints both have a leading and a trailing `/`? Is that something we should fix? -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1071#issuecomment-586929882___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] More fpLookupSubdir cleanups (#1071)
Ok, that's what I thought. But it's somewhat brittle, that example from the mail will not work if FOO-DOC is installed before FOO as then /usr/share/FOO-1 will get created as directory and the install of FOO will fail with a RPMERR_EXIST_AS_DIR error. (I'm trying to make dir -> symlink-to-dir transactions work in the easy cases, I think this will be fixed with the changes as well.) -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1071#issuecomment-586927889___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] More fpLookupSubdir cleanups (#1071)
Ok, I have to admit I'm not entirely sure what fpLookupSubdir is trying to fix. It was added by Florian in commits c6ccc90d7fef0f1b65e4bf5b77d5b800d4b53ffd and af3464a053ecb0b56cc5af494ea22955fb350757, unfortunately without a reference to some bug. It seems to be about having a symlink in one to-be-installed package and then installing over that symlink in another to-be-installed package, but that use case does not work reliable anyway because the symlink package must be installed first for it to work. Florian, do you remember more details what this was about? -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1071#issuecomment-586331219___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] More fpLookupSubdir cleanups (#1071)
@mlschroe pushed 1 commit. 1c9343142a728dce571ee0c8ce4f6fae42354588 Reduce the number of calls to fpLookupSubdir() -- You are receiving this because you are subscribed to this thread. View it on GitHub: https://github.com/rpm-software-management/rpm/pull/1071/files/0fdc9a865711454ceb8312bc50a6c22d1b2ceb15..1c9343142a728dce571ee0c8ce4f6fae42354588 ___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
[Rpm-maint] [rpm-software-management/rpm] More fpLookupSubdir cleanups (#1071)
This reduces the number of calls to fpLookupSubdir() and also gets rid of a poolid-str-poolid roundtrip. You can view, comment on, or merge this pull request online at: https://github.com/rpm-software-management/rpm/pull/1071 -- Commit Summary -- * fpLookupSubdir: get rid of a poolid-str-poolid roundtrip * Reduce the number of calls to fpLookupSubdir() -- File Changes -- M lib/fprint.c (24) -- Patch Links -- https://github.com/rpm-software-management/rpm/pull/1071.patch https://github.com/rpm-software-management/rpm/pull/1071.diff -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1071 ___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Cleanup fingerprint cache creation (#1068)
@mlschroe pushed 1 commit. 3252e1e25872bc7820828425e1daea51d0700b13 Remove duplicated code in fpLookupSubdir -- You are receiving this because you are subscribed to this thread. View it on GitHub: https://github.com/rpm-software-management/rpm/pull/1068/files/03676d0c776d7fa7e000322e5f7c2ec9efe5e13f..3252e1e25872bc7820828425e1daea51d0700b13 ___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] fsmMkdirs: Remove dnlx array (#1069)
@mlschroe pushed 1 commit. 6232c8e1e515833f3a51af2800d3ab70d82a9e05 fsmMkdirs: do not dup the last verified directory name -- You are receiving this because you are subscribed to this thread. View it on GitHub: https://github.com/rpm-software-management/rpm/pull/1069/files/c410531402fe2541566d16b963b1ed575cab8ea9..6232c8e1e515833f3a51af2800d3ab70d82a9e05 ___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] fsmMkdirs: Remove dnlx array (#1069)
@mlschroe pushed 1 commit. c410531402fe2541566d16b963b1ed575cab8ea9 fsmMkdirs: Remove dnlx array -- You are receiving this because you are subscribed to this thread. View it on GitHub: https://github.com/rpm-software-management/rpm/pull/1069/files/c5cebdd796fa39f86a4a1b6c9ad9c910842e6e92..c410531402fe2541566d16b963b1ed575cab8ea9 ___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
[Rpm-maint] [rpm-software-management/rpm] fsmMkdirs: Remove dnlx array (#1069)
It gets only written to and nobody uses it, so be gone. You can view, comment on, or merge this pull request online at: https://github.com/rpm-software-management/rpm/pull/1069 -- Commit Summary -- * fsmMkdirs: Remove dnlx array -- File Changes -- M lib/fsm.c (8) -- Patch Links -- https://github.com/rpm-software-management/rpm/pull/1069.patch https://github.com/rpm-software-management/rpm/pull/1069.diff -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1069 ___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
[Rpm-maint] [rpm-software-management/rpm] Cleanup fingerprint cache creation (#1068)
Simplify the way the fingerprint cache is created. You can view, comment on, or merge this pull request online at: https://github.com/rpm-software-management/rpm/pull/1068 -- Commit Summary -- * Move fingerprint hash setting out of fpLookupSubdir() * Remove duplicated code in fpLookupSubdir -- File Changes -- M lib/fprint.c (156) -- Patch Links -- https://github.com/rpm-software-management/rpm/pull/1068.patch https://github.com/rpm-software-management/rpm/pull/1068.diff -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1068 ___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Add a --salvagedb option to the rpmdb tool (#1042)
@mlschroe pushed 1 commit. dd4bb9f38fdf1d147a09ca0cdbf38ed75e409b17 Add a --salvagedb option to the rpmdb tool -- You are receiving this because you are subscribed to this thread. View it on GitHub: https://github.com/rpm-software-management/rpm/pull/1042/files/54d454b32eb99856e2d8df88160d5b1958c15788..dd4bb9f38fdf1d147a09ca0cdbf38ed75e409b17 ___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Implement %{body:...} built-in for retrieving the literal macro body (#1064)
I'd prefer if we named this %macrobody, so that there's less chance that it clashes with somebody else's use of %body. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1064#issuecomment-585118045___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Add a --salvagedb option to the rpmdb tool (#1042)
No, there's a (very) small chance that it picks up entries that have been deleted. It's like the .recover command of the sqlite cli: Like the ".dump" command, ".recover" attempts to convert the entire contents of a database file to text. The difference is that instead of reading data using the normal SQL database interface, ".recover" attempts to reassemble the database based on data extracted directly from as many database pages as possible. If the database is corrupt, ".recover" is usually able to recover data from all uncorrupted parts of the database, whereas ".dump" stops when the first sign of corruption is encountered. BerkeleyDB has a db_recover utility for this. My initial plan was to also create a ndb_recover tool, but then I realized it was way easier to integrate it into the rpmdb command. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1042#issuecomment-585106709___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] RFE: please add a way to get the unexpanded content of a rpm variable (#582)
Is the argument a macro name or some generic string? I.e. is it `%{body:_builddir}` which should then return ` %{_topdir}/BUILD`? Or is it `%{noexpand:%_builddir}` which then should only do one level of expansion? I find the latter a bit weird. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/582#issuecomment-584551949___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Add support for macro-only dependency generators (#1053)
mlschroe approved this pull request. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1053#pullrequestreview-356505622___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Add support for macro-only dependency generators (#1053)
mlschroe commented on this pull request. > @@ -1784,6 +1784,29 @@ rpmDefineMacro(rpmMacroContext mc, const char * macro, > int level) return rc; } +int rpmMacroIsDefined(rpmMacroContext mc, const char *n) +{ +int defined = 0; +if ((mc = rpmmctxAcquire(mc)) != NULL) { + if (findEntry(mc, n, 0, NULL)) + defined = 1; + rpmmctxRelease(mc); +} +return defined; +} + +int rpmMacroIsCallable(rpmMacroContext mc, const char *n) +{ Maybe `rpmMacroHasParameters()`? -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1053#discussion_r377514959___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] A saner way for marco argument escaping (#1060)
(Oh, and I renamed ME_NOEXPAND to ME_LITERAL for consistency) -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1060#issuecomment-584127915___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] A saner way for marco argument escaping (#1060)
Ok, done. I also used RPMMACRO_LITERAL at some other places where it made sense. I tried to add it to the buildroot macro (re-)definition, but with buildroot it is pretty hopeless. rpm's rpmGenPath always expands all arguments, which leads to the buildroot getting expanded over and over again. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1060#issuecomment-584127264___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint