Go to file
Panu Matilainen 227cddca88 Fix %{uncompress:...} double-expanding arguments + other miscellania
%{uncompress:...} is fairly complicated as far as builtin macros go:
it needs to first expand its argument to discover the actual file
its supposed to look at, then determine whether the file exists and
what sort of compression to use, then determine the macro to use
for decompressing that kind of file, expand said macro and finally
catenate the expanded argument to the lot. That's a lot of goo to
do inline doFoo(), so refactor it into a separate function.

Up to now the last step was implemented by re-expanding the argument
too, which makes it impossible to reliably handle paths with percent
signs. Just expand the command, and catenate the argument as deity
intended.

Additionally make behavior with empty argument consistent with other
builtins: %{uncompress:} expands to nothing instead of printing out
an error message with an empty filename.
2020-02-10 14:43:50 +02:00
build If fork fails in getOutputFrom(), close opened unused pipe fds on error code path 2020-02-05 14:50:29 +01:00
ci Add support for reading BDB without the library 2020-01-13 16:12:13 +02:00
db3 Remove BDB RPC "support" 2009-09-21 11:00:50 +03:00
doc Add man pages for plugins 2020-01-30 17:23:45 +02:00
fileattrs Drop outdated and unmaintained Mono dependency generators 2019-04-24 13:43:01 +03:00
lib Fix pointer dereference before testing for NULL in rpmtdGetNumber() 2020-02-06 15:32:54 +01:00
luaext Move redirect2null() out of posix extensions but preserve compatibility 2019-03-01 14:56:31 +02:00
misc Revert "Only build bundled fts if system has a bad version that doesn't handle LFS" 2017-08-10 20:15:02 +03:00
plugins Fix a minor memory leak on suppressed inhibition lock warning message 2020-01-29 15:19:18 +01:00
po All database backend sources may have translatable messages 2019-10-18 16:16:10 +03:00
python Replace all PyInt_* uses with PyLong_* in the codebase 2019-08-12 09:54:44 +03:00
rpmio Fix %{uncompress:...} double-expanding arguments + other miscellania 2020-02-10 14:43:50 +02:00
scripts Make check-files compatible with busybox diff 2020-01-30 09:27:07 +02:00
sign Rename variable to make its usage and the surrounding code clearer 2019-06-05 10:33:07 +03:00
tests Fix %{uncompress:...} double-expanding arguments + other miscellania 2020-02-10 14:43:50 +02:00
tools Fix sepdebugcrcfix compilation on platforms without MAP_POPULATE 2020-01-14 12:37:41 +02:00
.gitignore gitignore update 2018-02-27 11:25:09 +02:00
.mailmap mailmap: invert emails for Igor Gnatenko 2018-09-17 13:55:04 +03:00
CHANGES Spelling fixes 2017-06-27 14:42:21 +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 last years new contributors 2019-09-26 11:38:26 +03:00
INSTALL Document popt build-requirement and point a download location 2019-11-08 10:50:02 +02:00
Makefile.am Change the default crypto implementation to libgcrypt (from NSS) 2019-09-11 09:58:00 +03:00
Makefile.maint Fix "make dist" work out of the box again 2016-11-04 11:02:50 +02:00
README Update community link in README 2017-04-05 11:57:00 +03:00
autogen.sh Just use autoreconf in autogen.sh (ticket #109) 2009-11-26 09:46:48 +02:00
cliutils.c Stop NSPR from messing with our signals 2017-05-10 13:59:58 +03:00
cliutils.h add short summaries to headers that miss one 2016-01-28 14:42:47 +01:00
configure.ac Add support for reading BDB without the library 2020-01-13 16:12:13 +02:00
debug.h Eliminate debug junk from the API 2007-12-04 11:25:46 +02:00
installplatform RISCV 64-bit (riscv64) support. 2016-08-22 21:16:48 +01:00
macros.in Add architecture macro for all RISC-V processors 2020-02-04 08:58:36 +01:00
mkinstalldirs update mkinstalldirs to latest version (2009) 2017-07-27 13:59:01 +02:00
platform.in platform: Ensure empty buildroot for %install 2020-02-05 15:57:19 +02:00
preinstall.am Move cli verify flags to rpmcli.h where they belong, lose rpmvf.h 2017-11-13 16:39:28 +02:00
rpm.am Bump soname in preparation of 4.15.x branch 2019-06-05 15:04:18 +03:00
rpm.c Rename rpmqv.c to rpm.c, as it's the main source for the rpm command 2019-06-03 15:10:46 +03:00
rpm.pc.in Add LMDB backend to RPM 2017-08-17 12:49:06 +03:00
rpm2archive.c Fix recently introduced uninitialized variable warning in rpm2archive 2019-05-07 15:24:43 +02:00
rpm2cpio.c rpm2cpio cannot handle files over 4GB, error out cleanly (RhBug:1662481) 2019-01-02 11:36:50 +02:00
rpmbuild.c Add support for dynamic BuildRequires 2019-05-28 09:24:01 +03:00
rpmdb.c Remove bunch of redundant environ declarations 2017-06-09 11:37:03 +03:00
rpmkeys.c Create transaction set only after initializing rpm itself, oops 2018-06-19 11:46:41 +03:00
rpmpopt.in Remove --sign from rpmbuild 2020-01-31 10:02:57 +02:00
rpmrc.in Remove problematic sub variants of armv8 and related 2019-10-24 11:22:12 +03:00
rpmsign.c Make rpmsign exit values more consistent with our other tools 2019-03-18 15:28:43 +02:00
rpmspec.c Remove unused target variable from rpmspec.c 2019-06-05 09:46:19 +03:00
system.h Move <dlfcn.h> out of system.h 2020-02-04 16:39:16 +02:00

README

This is RPM, the RPM Package Manager.

The latest releases are always available at:

	http://rpm.org/releases/

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

http://rpm.org/community all rpm releated 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).