Go to file
Panu Matilainen 725ca51695 Allow building rpm without OpenPGP support
For bootstrapping purposes, having rpm depend on Rust is painful, but
directing people to unmaintained crypto code as an alternative is
hair-raising. As a middle ground, let rpm be built without OpenPGP
support at all, which at least gives you a functional rpm and rpm-build
even if you can't sign or verify signatures.

Achieving this is a moderately complex dance which can't meaningfully
be split into multiple commits because everything is interconnected:

Add a new WITH_SEQUOIA option to control use of Sequoia, on by default.
When Sequoia is disabled, default to a newly added dummy PGP implementation
instead which just returns error on everything. And finally, if the
older WITH_INTERNAL_OPENPGP is enabled, use the old PGP implementation.

As the intent is to cut out rpmpgp_legacy to a separate repository,
sanity requires that we also split the openssl/libgcrypt code at the
digest/signature fault line. It's not ideal, but the alternative of
having unused crypto code on which an external component depends on
is just not sustainable. This way, the signature side of things is
quite neatly cut off with the PGP stuff. The diff looks big but there
are no code/functional changes in the libgcrypt/openssl split.
2024-03-20 12:42:33 +02:00
.github Work around ASAN incompatibility with GH runner image >= 20240310.1.0 2024-03-14 13:27:37 +01:00
build parseSpecSection() expects an enum, give it one 2024-03-18 10:12:39 +02:00
cmake Add a cmake shortcut to the macros.d directory 2023-10-05 09:28:19 +03:00
docs Buildsystem documentation cosmetics 2024-03-18 14:21:20 +02:00
fileattrs Fix comment line handling in sysusers.d(8) files 2023-11-07 10:09:38 +02:00
include/rpm An enumeration is not a bitfield, use an integer instead 2024-03-18 10:12:39 +02:00
lib Fix int/enum mismatches from rpmChrootIn() returns in psm 2024-03-18 12:16:32 +02:00
misc Fix libintl linkage and include directories (cmake transition fallout) 2024-01-08 12:32:35 +02:00
plugins Avoid an unnecessary cast in selinux callback setting 2024-03-18 10:12:39 +02:00
po@d5cc5d368e Update the po submodule to pull in the tools/ path change 2024-02-21 08:43:05 +02:00
python Add a path lookup example for Python bindings 2024-03-13 15:10:00 +02:00
rpmio Allow building rpm without OpenPGP support 2024-03-20 12:42:33 +02:00
scripts Remove perl dependency generators from the repo 2024-03-07 11:47:13 +02:00
sign Sanity check the IMA digest algo name lower bound too 2024-03-18 10:12:39 +02:00
tests Allow building rpm without OpenPGP support 2024-03-20 12:42:33 +02:00
tools rpm2archive: fix hardlink handling in cpio output 2024-03-18 10:08:06 +02:00
.dockerignore Turn Dockerfile into a standalone RPM image 2023-07-25 19:54:48 +02:00
.gitignore Standardize on OCI images in test-suite 2023-10-31 14:53:29 +02:00
.gitmodules Add rpm-l10n as a submodule into po/ 2022-11-02 14:22:13 +02:00
.mailmap Update credits for a change 2021-03-18 09:37:17 +02:00
CMakeLists.txt Allow building rpm without OpenPGP support 2024-03-20 12:42:33 +02:00
CONTRIBUTING.md Ask people to run "make ci" successfully before submitting PRs 2024-03-14 11:59:33 +02:00
COPYING Explicitly mention that the rpmio/ sub dir is under LGPL 2020-01-29 14:48:38 +02:00
CREDITS Update credits for a change 2021-03-18 09:37:17 +02:00
INSTALL Allow building rpm without OpenPGP support 2024-03-20 12:42:33 +02:00
README Fix typos 2023-10-31 08:52:08 +01:00
config.h.in Add a build option for enabling address sanitizer, use for CI 2024-01-31 10:13:08 +02:00
installplatform Allow setting platform macro settings externally (#2585) 2023-07-28 12:16:56 +02:00
macros.in Introduce an rpm-controlled per-build directory 2024-03-14 13:26:39 +01:00
platform.in Make RUNDIR lower case (rundir) 2023-07-17 15:54:47 +02:00
rpm.pc.in Make our plugin directory a global cache configurable and export it 2023-10-03 15:40:04 +03:00
rpmpopt.in Implement --json query format 2024-02-19 11:47:54 +02:00
rpmrc.in Call RPM_CONFIGDIR just that consistently 2023-03-30 11:52:59 +03:00

README

This is RPM, the RPM Package Manager.

The latest releases are always available at:

	http://rpm.org/download.html

Additional RPM documentation (papers, slides, HOWTOs) can also be
found at the same site: http://rpm.org.

http://rpm.org/community all rpm related mailing lists.

RPM was originally written by:

    Erik Troan <ewt@redhat.com>
    Marc Ewing <marc@redhat.com>

See the CREDITS file for a list of folks who have helped us out
tremendously.  RPM is Copyright (c) 1998 by Red Hat Software, Inc.,
and may be distributed under the terms of the GPL and LGPL (see  the
file COPYING for details).