| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
(cherry picked from commit e3c11a790367016aed7ea48cfcc78751a71ce862)
|
|
|
|
| |
(cherry picked from commit 045dd10e1f52190b6bada3c83e4537354889626f)
|
|
|
|
|
|
|
|
| |
Take the opportunity to document the recommended and deprecated syntaxes
and their availability across rpm versions.
Fixes: #2209
(cherry picked from commit c18f62e7b0630394e0bf2ccee0239a0cddd93d0a)
|
|
|
|
|
|
|
| |
In order to properly deprecate the syntax, we need to move ourselves
off it first...
(cherry picked from commit 6edbb02d30a862be990c634d859ac80c6239f3f8)
|
|
|
|
|
|
|
|
| |
Historically only %{!?foo} syntax has been used, the reversed ?! version
was only introduced in 0d75ef1e0a0609ee61386f02fa311d6d8ac79450 (perhaps
accidentally) and should not be used, much less recommended.
(cherry picked from commit 7b0b5e7d2cf53817ec5e2545c5f591a26db72cec)
|
|
|
|
| |
(cherry picked from commit 642dafdfc9920a563796f117923376904cf6671a)
|
|
|
|
|
|
|
|
|
| |
… introduced in [commit 8b635e2](https://github.com/rpm-software-management/rpm/commit/8b635e2016931ec5bb7dddd6608c09b0b16f7b8e):
- [Lines 98 - 101](https://github.com/rpm-software-management/rpm/commit/8b635e2016931ec5bb7dddd6608c09b0b16f7b8e#diff-f0f022b189e54462e3284599236a3b192b721928da4bea1a85d738b25ba5eaa7R98-R101): The two tildes lacked quoting, hence the text between them was struck out.
- [Line 96](https://github.com/rpm-software-management/rpm/commit/8b635e2016931ec5bb7dddd6608c09b0b16f7b8e#diff-f0f022b189e54462e3284599236a3b192b721928da4bea1a85d738b25ba5eaa7R96): Eliminate IMO superfluous triple quoting: "**\`\`\`**" → "*\`*"
- Rephrase [lines 95 - 96](https://github.com/rpm-software-management/rpm/commit/8b635e2016931ec5bb7dddd6608c09b0b16f7b8e#diff-f0f022b189e54462e3284599236a3b192b721928da4bea1a85d738b25ba5eaa7R95-R96), to be more concise.
(cherry picked from commit a108d36acf29796b443285658a606c1b13866d9a)
|
|
|
|
| |
(cherry picked from commit 7064a63a61ca631e745156a64c5ba9387df5e467)
|
|
|
|
| |
(cherry picked from commit 752ed08d1026aeb4aa1716f32064453005e12d5e)
|
|
|
|
| |
(cherry picked from commit 43155029ccf530a5cd184a53c68ddcb46ce7983b)
|
|
|
|
| |
(cherry picked from commit 14e14a5c2a5140b00816ac7b8f104af810ab5208)
|
|
|
|
|
|
| |
Just refer to the newly added mode string API docs.
(cherry picked from commit bf6a97da0b035ce1d341f01b6301407dcad5a5af)
|
|
|
|
|
|
|
|
|
|
| |
Pandoc is only required for converting .md to man pages, which is not
terribly interesting unless you're creating a dist tarball. We already
have an automake conditional for pandoc, might as well use it.
"make dist" will still fail without pandoc, but that's exactly how we
want it.
(cherry picked from commit 1b8f7a182fe917ed5af5086d715cae529540a4d3)
|
|
|
|
| |
(cherry picked from commit 9f59af51b5969ab38f64bb7dcf881f45b8a41e7f)
|
|
|
|
|
|
|
|
|
|
|
| |
The key to understanding `%bcond_with` and `%bcond_without` is that these
options *create command line switches* and unless the user thinks in those
exact terms, there's little hope of understanding them. Further, take
care to differentiate between option creation, enablement and defaults
in terminology and document `%bcond` version availability.
Fixes: #2150
(cherry picked from commit 8ee98091b7f50cfeab61e069c1cad0c74fa567a8)
|
|
|
|
|
|
|
|
|
| |
to set a separate license to the source RPM. This can be useful if the
sources have code under additional licenses that do not end up in the
binary packeges.
Resolves: #2079
(cherry picked from commit 9ed9d3fce34bc3c8121989e0cf263528e7e68756)
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Create a new optional UpstreamReleases tag that allows to specify an URL
of the location, where the source code could be downloaded. In
contrast to the URL part of the Source tag, this is intended for
the referrer of the sorce code, e. g. download top dir or the
sub-page of the web that contains references to the source files.
Third party tools or the package maintainer can use this tag and
find the latest version of the source code.
Co-authoredby: Florian Festi <ffesti@redhat.com>
(cherry picked from commit c0b417f572d2450f060f8cde901a8edb4f9a3b33)
|
|
|
|
|
|
|
|
| |
Create a new optional TranslationURL tag that allows to specify URL
for translators. Third party tools can visualize it and motivate
people to translate.
(cherry picked from commit c10073d1932a536c9f2db59b8426d4e630b21216)
|
|
|
|
|
| |
Fixes: #2081
(cherry picked from commit 370c58746c3b8c178808aaa95e1acb009fc4a677)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Traditionally rpmbuild has only cleaned up the build directory on
--rebuild mode, but by default leaving tonnes of digital waste behind in
the far more common -bb mode. Default to cleaning up build directory
in addition to buildroot on successfull binary package creation,
with the exception of short-circuit'ed builds.
To go with this, have --noclean affect the build directory removal too.
Change the diagnostics message from "--clean" to "rmbuild" because
--clean is just misleading as it can get executed by other means too.
(cherry picked from commit b34333fa021c0ee7215714eeef96d1a2843ea08e)
|
|
|
|
|
|
|
|
| |
News about rpm 4.0.1 ordering algorithm changes are getting a bit
long in the tooth. Rewrite the whole doc to make it reflect modern rpm
behavior.
(cherry picked from commit 944b14fe0d680eb21a452e978f6ba189daa640c1)
|
|
|
|
|
|
| |
in reference manual and define a format
(cherry picked from commit de5bd4990ce3ec99f3e996934458c701bf586b5e)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The trend of packaging is to hide more and more of what actually happens
behind helper macros and other dynamically generated constructs. While
this is mostly a good thing, it makes understanding and postmortem
analysis harder than it should be. Add the spec in its parsed and
expanded form into the src.rpm header to make the actual contents of the
build more trackable.
It can be argued this does not belong in the header and should be in
payload instead, my rationale for the placement is that this way the
payload remains effectively arch independent, whereas the header already
heavily reflects the particular environment where it was built.
Probably worth noting that %setup and %patch built-in macros are not
properly expanded in the stored spec, but that's a separate issue
related the special way %prep is processed.
Fixes: #1241
|
|
|
|
| |
(cherry picked from commit 44a2201dac198868a3ca3c948f8069177364b305)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The example command in the "Query Expressions" section fails because of
the backslash added in a9678c2dc (Insert space between the "{" and "%",
2021-05-06):
$ # rpm -qa --queryformat "%-30{NAME} %|PREINPROG?{ %{PREINPROG\}}:{no}|\n"
error: incorrect format: unknown tag: "PREINPROG\"
...
While this is relatively easy to spot and fix, it is better to avoid
non-working examples in the documentation.
Fortunately, there is no need to escape the closing `}}` as there is no
opening `{{` tag. The dependency_generators and macros pages both
contain un-escaped `}}` strings which are displayed correctly.
Add a space to the else condition as well, to align the output.
|
|
|
|
|
|
| |
Commits 20aff386fd642e6777082fefd6061eb0dabc0da1 and
47314cab91a308eb1a7dd04d503824b014eeefb1 failed to drop the relevant
files from the tarball. It's a doc removal, what can possibly break?!
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
RPMTAG_ARCHSUFFIX from commit e6a6399cb4c87f049bb75b8da83f5759522bcc58
assumes all headers have RPMTAG_ARCH, but a notable exception is gpg-pubkey
headers in rpmdb, causing segfaults on `rpm -qa` on normal systems.
Special case conditionals in queryformats get ugly and error-prone real
fast, which is why we have all the NEVRA formatter extensions. Avoid
adding yet more of those tags by handling the dot formatting in
ARCHSUFFIX instead - the "suffix" in the name seems to imply this
anyway.
Also add tests to cover the common -qa cases.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Configuring the sources (eg ./configure, cmake and whatnot) is really a
distinct step which is very unlike the actual build, in that the actual
build steps are generally equal for all projects using a given build system,
but configuration differs greatly once you go beyond the default paths and
the like.
This is essentially a pre-requisite for implementing build system templating
in spec files.
Fixes: #1086
|
|
|
|
|
|
| |
These APIs never belonged to rpmpgp.h anyway, it was only used for
being the least-worst fit within rpm. As if it was so hard to just
add a new header...
|
|
|
|
|
| |
The new tag returns src/nosrc instead of the build architecture of
(no)source packages.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
without building anything if everything is ok. This is similar to the
-br, -tr, -rr family of commands that run the dynamic build dependency
generator and check for missing build requires.
But the newly added -bd,-td,-rd will only create the buildreqs.nosrc.rpm
package on missing dynamic build requirements and nothing else. This is
a much cheaper operation for packages with large sources where creating
a source rpm needlessly may be undesired.
For now there is no way to skip the creation of the buildreqs.nosrc.rpm
package. But it is cheap to create for reasonable amounts of build
requires.
Co-authored-by: Florian Festi <ffesti@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This section uses the `_with_*` macro, which is dangerous when used in
combination with `%bcond` or `%bcond_without` because it doesn't honor
the "default".
The section above already explains what users should do -- some variation of:
%{?with_gnutls:--with static} \
%{!?with_openssl:--without openssl}
... which is more verbose, but works with %bcond` & `%bcond_without`.
|
|
|
|
|
| |
Move documentation from comments to reference manual
Fixes: https://github.com/rpm-software-management/rpm/issues/941
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
--setperms, --setugids and --setcaps were fun demos of alias capabilities
in the nineties, but they can be downright dangerous when used
separately, are blisfully unaware of all state in rpm yet try to
duplicate functionality existing in C, and thus are a constant source
of bugs that are between hard to impossible to fix in the alias space.
Add a new transaction element type for the restore operation, wire
through all the necessary places. In places (like ordering) this is
an overkill but otherwise it seems like a natural thing to be able
to process restore alongside package install/remove. The restore
operation is a cross between install and erase codepath-wise so touches
some funny places, but FA_TOUCH does just the thing, and now all the
regular disablers like --nocontext and --nocaps can be used if
necessary, plugins get to do their work and also timestamps are
restored.
Remove the dangerous shell implementations of things and just make them
aliases to --restore.
Fixes: #965
|
|
|
|
|
|
| |
* Explicitly state that \0 is not supported in queryformat strings.
Signed-off-by: Thomas Moschny <thomas.moschny@gmx.de>
Co-authored-by: Florian Festi <ffesti@redhat.com>
|
|
|
|
|
|
|
| |
Sometimes you just want to extract the files without touching the
database, just like sometimes you just want the database changed.
Potential use-cases include rpm2cpio style operation and src.rpm
install.
|
|
|
|
|
|
|
|
|
|
|
| |
Pass relocatable package prefixes as RPM_INSTALL_PREFIX Lua table
to Lua scriptlets, add a test-case.
In Lua, indexes start at 1 rather than 0, so the numbers appear
off by one which is annoying, but consistent within Lua and our other
similar Lua constructs such as scriptlet arg.
Fixes: #1531
|
| |
|
|
|
|
| |
Add new generator type to refence manual
|
| |
|
| |
|
| |
|
|
|
|
| |
for better readability. No change to the content.
|
| |
|