Compare commits
No commits in common. "f38" and "master" have entirely different histories.
17
.gitignore
vendored
17
.gitignore
vendored
@ -40,20 +40,3 @@
|
||||
/rpm-4.15.90-git14971.tar.bz2
|
||||
/rpm-4.16.0-beta1.tar.bz2
|
||||
/rpm-4.16.0-beta3.tar.bz2
|
||||
/rpm-4.16.0-rc1.tar.bz2
|
||||
/rpm-4.16.0.tar.bz2
|
||||
/rpm-4.16.1.tar.bz2
|
||||
/rpm-4.16.1.1.tar.bz2
|
||||
/rpm-4.16.1.2.tar.bz2
|
||||
/rpm-4.16.1.3.tar.bz2
|
||||
/rpm-4.16.90-git15395.tar.bz2
|
||||
/rpm-4.17.0-beta1.tar.bz2
|
||||
/rpm-4.17.0-rc1.tar.bz2
|
||||
/rpm-4.17.0.tar.bz2
|
||||
/rpm-4.18.0-alpha1.tar.bz2
|
||||
/rpm-4.18.0-alpha2.tar.bz2
|
||||
/rpm-4.18.0-beta1.tar.bz2
|
||||
/rpm-4.18.0-rc1.tar.bz2
|
||||
/rpm-4.18.0.tar.bz2
|
||||
/rpm-4.18.1.tar.bz2
|
||||
/rpm-4.18.2.tar.bz2
|
||||
|
95
0001-Revert-Improve-ARM-detection.patch
Normal file
95
0001-Revert-Improve-ARM-detection.patch
Normal file
@ -0,0 +1,95 @@
|
||||
From 2426c2a066e44f4d9a342585e76cdbdb0a8a2db1 Mon Sep 17 00:00:00 2001
|
||||
From: Peter Robinson <pbrobinson@gmail.com>
|
||||
Date: Wed, 23 Oct 2019 20:22:19 +0100
|
||||
Subject: [PATCH] Revert "Improve ARM detection"
|
||||
|
||||
This reverts commit 8c3a7b8fa92b49a811fe36b60857b12f5d7db8a8.
|
||||
|
||||
This is the final piece in fixing rhbz 1691430. It's a clean revert
|
||||
so let's do that for F-31 and we can discuss the details later.
|
||||
|
||||
Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
|
||||
---
|
||||
lib/rpmrc.c | 37 +++++++++----------------------------
|
||||
1 file changed, 9 insertions(+), 28 deletions(-)
|
||||
|
||||
diff --git a/lib/rpmrc.c b/lib/rpmrc.c
|
||||
index 0806e1b07..cada3f788 100644
|
||||
--- a/lib/rpmrc.c
|
||||
+++ b/lib/rpmrc.c
|
||||
@@ -82,7 +82,6 @@ struct rpmOption {
|
||||
static struct rpmat_s {
|
||||
const char *platform;
|
||||
uint64_t hwcap;
|
||||
- uint64_t hwcap2;
|
||||
} rpmat;
|
||||
|
||||
typedef struct defaultEntry_s {
|
||||
@@ -951,9 +950,6 @@ static int is_geode(void)
|
||||
|
||||
|
||||
#if defined(__linux__)
|
||||
-#ifndef AT_HWCAP2 /* glibc < 2.18 */
|
||||
-#define AT_HWCAP2 26
|
||||
-#endif
|
||||
/**
|
||||
* Populate rpmat structure with auxv values
|
||||
*/
|
||||
@@ -967,7 +963,6 @@ static void read_auxv(void)
|
||||
if (!rpmat.platform)
|
||||
rpmat.platform = "";
|
||||
rpmat.hwcap = getauxval(AT_HWCAP);
|
||||
- rpmat.hwcap2 = getauxval(AT_HWCAP2);
|
||||
#else
|
||||
rpmat.platform = "";
|
||||
int fd = open("/proc/self/auxv", O_RDONLY);
|
||||
@@ -989,9 +984,6 @@ static void read_auxv(void)
|
||||
case AT_HWCAP:
|
||||
rpmat.hwcap = auxv.a_un.a_val;
|
||||
break;
|
||||
- case AT_HWCAP2:
|
||||
- rpmat.hwcap2 = auxv.a_un.a_val;
|
||||
- break;
|
||||
}
|
||||
}
|
||||
close(fd);
|
||||
@@ -1225,27 +1217,16 @@ static void defaultMachine(rpmrcCtx ctx, const char ** arch, const char ** os)
|
||||
# if !defined(HWCAP_ARM_VFPv3)
|
||||
# define HWCAP_ARM_VFPv3 (1 << 13)
|
||||
# endif
|
||||
-# if !defined(HWCAP2_AES)
|
||||
-# define HWCAP2_AES (1 << 0)
|
||||
-# endif
|
||||
- /*
|
||||
- * un.machine is armvXE, where X is version number and E is
|
||||
- * endianness (b or l)
|
||||
- */
|
||||
- if (rstreqn(un.machine, "armv", 4)) {
|
||||
- char endian = un.machine[strlen(un.machine)-1];
|
||||
- char *modifier = un.machine + 5;
|
||||
- /* keep armv7, armv8, armv9, armv10, ... */
|
||||
- while(risdigit(*modifier))
|
||||
- modifier++;
|
||||
- if (rpmat.hwcap & HWCAP_ARM_VFPv3)
|
||||
- *modifier++ = 'h';
|
||||
- if (rpmat.hwcap2 & HWCAP2_AES)
|
||||
- *modifier++ = 'c';
|
||||
+ if (rstreq(un.machine, "armv7l")) {
|
||||
+ if (rpmat.hwcap & HWCAP_ARM_VFPv3) {
|
||||
if (rpmat.hwcap & HWCAP_ARM_NEON)
|
||||
- *modifier++ = 'n';
|
||||
- *modifier++ = endian;
|
||||
- *modifier++ = 0;
|
||||
+ strcpy(un.machine, "armv7hnl");
|
||||
+ else
|
||||
+ strcpy(un.machine, "armv7hl");
|
||||
+ }
|
||||
+ } else if (rstreq(un.machine, "armv6l")) {
|
||||
+ if (rpmat.hwcap & HWCAP_ARM_VFP)
|
||||
+ strcpy(un.machine, "armv6hl");
|
||||
}
|
||||
# endif /* arm*-linux */
|
||||
|
||||
--
|
||||
2.23.0
|
||||
|
@ -0,0 +1,30 @@
|
||||
From f2bc669cd0a080792522dd1bb7f50ef7025f16f0 Mon Sep 17 00:00:00 2001
|
||||
From: Mark Wielaard <mark@klomp.org>
|
||||
Date: Sat, 21 Jul 2018 10:13:04 +0200
|
||||
Subject: [PATCH] find-debuginfo.sh: decompress DWARF compressed ELF sections
|
||||
|
||||
debugedit and dwz do not support DWARF compressed ELF sections, let's
|
||||
just decompress those before extracting debuginfo.
|
||||
|
||||
Tested-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
|
||||
---
|
||||
scripts/find-debuginfo.sh | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/scripts/find-debuginfo.sh b/scripts/find-debuginfo.sh
|
||||
index 90a44942d..7b01bc036 100755
|
||||
--- a/scripts/find-debuginfo.sh
|
||||
+++ b/scripts/find-debuginfo.sh
|
||||
@@ -357,6 +357,9 @@ do_file()
|
||||
get_debugfn "$f"
|
||||
[ -f "${debugfn}" ] && return
|
||||
|
||||
+ echo "explicitly decompress any DWARF compressed ELF sections in $f"
|
||||
+ eu-elfcompress -q -p -t none "$f"
|
||||
+
|
||||
echo "extracting debug info from $f"
|
||||
# See also cpio SOURCEFILE copy. Directories must match up.
|
||||
debug_base_name="$RPM_BUILD_DIR"
|
||||
--
|
||||
2.18.0
|
||||
|
18
rpm-4.12.0-rpm2cpio-hack.patch
Normal file
18
rpm-4.12.0-rpm2cpio-hack.patch
Normal file
@ -0,0 +1,18 @@
|
||||
diff --git a/rpm2cpio.c b/rpm2cpio.c
|
||||
index 89ebdfa..ae999ff 100644
|
||||
--- a/rpm2cpio.c
|
||||
+++ b/rpm2cpio.c
|
||||
@@ -84,7 +84,12 @@ int main(int argc, char *argv[])
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
- rc = (ufdCopy(gzdi, fdo) == payload_size) ? EXIT_SUCCESS : EXIT_FAILURE;
|
||||
+ /*
|
||||
+ * XXX HACK for #1142949: should be equality test, but archive size
|
||||
+ * short by cpio trailer size in packages built with rpm 4.12.0
|
||||
+ * and its pre-releases.
|
||||
+ */
|
||||
+ rc = (ufdCopy(gzdi, fdo) >= payload_size) ? EXIT_SUCCESS : EXIT_FAILURE;
|
||||
|
||||
Fclose(fdo);
|
||||
|
15
rpm-4.15.x-ldflags.patch
Normal file
15
rpm-4.15.x-ldflags.patch
Normal file
@ -0,0 +1,15 @@
|
||||
diff -up rpm-4.9.1.1/macros.in.jx rpm-4.9.1.1/macros.in
|
||||
--- rpm-4.9.1.1/macros.in.jx 2011-08-03 16:19:05.000000000 -0400
|
||||
+++ rpm-4.9.1.1/macros.in 2011-08-08 09:41:52.981064316 -0400
|
||||
@@ -674,9 +674,10 @@ print (t)\
|
||||
RPM_BUILD_DIR=\"%{u2p:%{_builddir}}\"\
|
||||
RPM_OPT_FLAGS=\"%{optflags}\"\
|
||||
+ RPM_LD_FLAGS=\"%{?build_ldflags}\"\
|
||||
RPM_ARCH=\"%{_arch}\"\
|
||||
RPM_OS=\"%{_os}\"\
|
||||
RPM_BUILD_NCPUS=\"%{_smp_build_ncpus}\"\
|
||||
- export RPM_SOURCE_DIR RPM_BUILD_DIR RPM_OPT_FLAGS RPM_ARCH RPM_OS RPM_BUILD_NCPUS\
|
||||
+ export RPM_SOURCE_DIR RPM_BUILD_DIR RPM_OPT_FLAGS RPM_LD_FLAGS RPM_ARCH RPM_OS RPM_BUILD_NCPUS RPM_LD_FLAGS\
|
||||
RPM_DOC_DIR=\"%{_docdir}\"\
|
||||
export RPM_DOC_DIR\
|
||||
RPM_PACKAGE_NAME=\"%{NAME}\"\
|
12
rpm-4.15.x-siteconfig.patch
Normal file
12
rpm-4.15.x-siteconfig.patch
Normal file
@ -0,0 +1,12 @@
|
||||
diff -up rpm-4.11.1-rc1/macros.in.siteconfig rpm-4.11.1-rc1/macros.in
|
||||
--- rpm-4.11.1-rc1/macros.in.siteconfig 2013-06-07 13:19:21.000000000 +0300
|
||||
+++ rpm-4.11.1-rc1/macros.in 2013-06-11 15:06:59.525747503 +0300
|
||||
@@ -647,6 +647,8 @@ package or when debugging this package.\
|
||||
export CLASSPATH}\
|
||||
PKG_CONFIG_PATH=\"${PKG_CONFIG_PATH}:%{_libdir}/pkgconfig:%{_datadir}/pkgconfig\"\
|
||||
export PKG_CONFIG_PATH\
|
||||
+ CONFIG_SITE=${CONFIG_SITE:-NONE}\
|
||||
+ export CONFIG_SITE\
|
||||
\
|
||||
%{verbose:set -x}\
|
||||
umask 022\
|
@ -1,12 +0,0 @@
|
||||
diff '--color=auto' -rup rpm-4.17.0-orig/macros.in rpm-4.17.0/macros.in
|
||||
--- rpm-4.17.0-orig/macros.in 2021-08-20 04:44:56.264259007 -0400
|
||||
+++ rpm-4.17.0/macros.in 2022-01-26 20:11:26.864195884 -0500
|
||||
@@ -140,7 +140,7 @@
|
||||
%_buildshell /bin/sh
|
||||
|
||||
# The location of the rpm database file(s).
|
||||
-%_dbpath %{_var}/lib/rpm
|
||||
+%_dbpath %{_usr}/lib/sysimage/rpm
|
||||
|
||||
# The location of the rpm database file(s) after "rpm --rebuilddb".
|
||||
%_dbpath_rebuild %{_dbpath}
|
@ -1,225 +0,0 @@
|
||||
diff -up rpm-4.18.2/configure.ac.orig rpm-4.18.2/configure.ac
|
||||
--- rpm-4.18.2/configure.ac.orig 2023-11-13 13:18:27.694107699 +0100
|
||||
+++ rpm-4.18.2/configure.ac 2023-11-13 16:18:59.917784964 +0100
|
||||
@@ -384,7 +384,7 @@ AC_SUBST(WITH_LIBGCRYPT_LIB)
|
||||
WITH_RPM_SEQUOIA_INCLUDE=
|
||||
WITH_RPM_SEQUOIA_LIB=
|
||||
if test "$with_crypto" = sequoia ; then
|
||||
- PKG_CHECK_MODULES([RPM_SEQUOIA], [rpm-sequoia], [have_rpm_sequoia=yes], [have_rpm_sequoia=no])
|
||||
+ PKG_CHECK_MODULES([RPM_SEQUOIA], [rpm-sequoia >= 1.4.0], [have_rpm_sequoia=yes], [have_rpm_sequoia=no])
|
||||
if test "$have_rpm_sequoia" = "yes"; then
|
||||
WITH_RPM_SEQUOIA_INCLUDE="$RPM_SEQUOIA_CFLAGS"
|
||||
WITH_RPM_SEQUOIA_LIB="$RPM_SEQUOIA_LIBS"
|
||||
diff -up rpm-4.18.2/include/rpm/rpmpgp.h.orig rpm-4.18.2/include/rpm/rpmpgp.h
|
||||
--- rpm-4.18.2/include/rpm/rpmpgp.h.orig 2023-11-13 13:18:27.697107681 +0100
|
||||
+++ rpm-4.18.2/include/rpm/rpmpgp.h 2023-11-13 16:18:59.918784958 +0100
|
||||
@@ -1014,6 +1014,18 @@ int pgpPrtParams(const uint8_t *pkts, si
|
||||
pgpDigParams * ret);
|
||||
|
||||
/** \ingroup rpmpgp
|
||||
+ * Parse a OpenPGP packet(s).
|
||||
+ * @param pkts OpenPGP packet(s)
|
||||
+ * @param pktlen OpenPGP packet(s) length (no. of bytes)
|
||||
+ * @param pkttype Expected packet type (signature/key) or 0 for any
|
||||
+ * @param[out] ret signature/pubkey packet parameters on success (alloced)
|
||||
+ * @param[out] lints error messages and lints
|
||||
+ * @return -1 on error, 0 on success
|
||||
+ */
|
||||
+int pgpPrtParams2(const uint8_t *pkts, size_t pktlen, unsigned int pkttype,
|
||||
+ pgpDigParams * ret, char **lints);
|
||||
+
|
||||
+/** \ingroup rpmpgp
|
||||
* Parse subkey parameters from OpenPGP packet(s).
|
||||
* @param pkts OpenPGP packet(s)
|
||||
* @param pktlen OpenPGP packet(s) length (no. of bytes)
|
||||
@@ -1192,6 +1204,17 @@ const uint8_t *pgpDigParamsSignID(pgpDig
|
||||
const char *pgpDigParamsUserID(pgpDigParams digp);
|
||||
|
||||
/** \ingroup rpmpgp
|
||||
+ * Verify a PGP signature and return a error message or lint.
|
||||
+ * @param key public key
|
||||
+ * @param sig signature
|
||||
+ * @param hashctx digest context
|
||||
+ * @param lints error messages and lints
|
||||
+ * @return RPMRC_OK on success
|
||||
+ */
|
||||
+rpmRC pgpVerifySignature2(pgpDigParams key, pgpDigParams sig, DIGEST_CTX hashctx,
|
||||
+ char **lints);
|
||||
+
|
||||
+/** \ingroup rpmpgp
|
||||
* Retrieve the object's version.
|
||||
*
|
||||
* Returns the object's version.
|
||||
diff -up rpm-4.18.2/lib/rpmvs.c.orig rpm-4.18.2/lib/rpmvs.c
|
||||
--- rpm-4.18.2/lib/rpmvs.c.orig 2023-11-13 13:18:27.703107645 +0100
|
||||
+++ rpm-4.18.2/lib/rpmvs.c 2023-11-13 16:18:59.918784958 +0100
|
||||
@@ -193,10 +193,23 @@ static void rpmsinfoInit(const struct vf
|
||||
}
|
||||
|
||||
if (sinfo->type == RPMSIG_SIGNATURE_TYPE) {
|
||||
- if (pgpPrtParams(data, dlen, PGPTAG_SIGNATURE, &sinfo->sig)) {
|
||||
- rasprintf(&sinfo->msg, _("%s tag %u: invalid OpenPGP signature"),
|
||||
- origin, td->tag);
|
||||
+ char *lints = NULL;
|
||||
+ int ec = pgpPrtParams2(data, dlen, PGPTAG_SIGNATURE, &sinfo->sig, &lints);
|
||||
+ if (ec) {
|
||||
+ if (lints) {
|
||||
+ rasprintf(&sinfo->msg,
|
||||
+ ("%s tag %u: invalid OpenPGP signature: %s"),
|
||||
+ origin, td->tag, lints);
|
||||
+ free(lints);
|
||||
+ } else {
|
||||
+ rasprintf(&sinfo->msg,
|
||||
+ _("%s tag %u: invalid OpenPGP signature"),
|
||||
+ origin, td->tag);
|
||||
+ }
|
||||
goto exit;
|
||||
+ } else if (lints) {
|
||||
+ rpmlog(RPMLOG_WARNING, "%s\n", lints);
|
||||
+ free(lints);
|
||||
}
|
||||
sinfo->hashalgo = pgpDigParamsAlgo(sinfo->sig, PGPVAL_HASHALGO);
|
||||
sinfo->keyid = pgpGrab(pgpDigParamsSignID(sinfo->sig)+4, 4);
|
||||
diff -up rpm-4.18.2/rpmio/rpmkeyring.c.orig rpm-4.18.2/rpmio/rpmkeyring.c
|
||||
--- rpm-4.18.2/rpmio/rpmkeyring.c.orig 2023-11-13 13:18:27.719107550 +0100
|
||||
+++ rpm-4.18.2/rpmio/rpmkeyring.c 2023-11-13 16:18:59.919784952 +0100
|
||||
@@ -328,7 +328,12 @@ rpmRC rpmKeyringVerifySig(rpmKeyring key
|
||||
pgpkey = key->pgpkey;
|
||||
|
||||
/* We call verify even if key not found for a signature sanity check */
|
||||
- rc = pgpVerifySignature(pgpkey, sig, ctx);
|
||||
+ char *lints = NULL;
|
||||
+ rc = pgpVerifySignature2(pgpkey, sig, ctx, &lints);
|
||||
+ if (lints) {
|
||||
+ rpmlog(rc ? RPMLOG_ERR : RPMLOG_WARNING, "%s\n", lints);
|
||||
+ free(lints);
|
||||
+ }
|
||||
}
|
||||
|
||||
if (keyring)
|
||||
diff -up rpm-4.18.2/rpmio/rpmpgp_internal.c.orig rpm-4.18.2/rpmio/rpmpgp_internal.c
|
||||
--- rpm-4.18.2/rpmio/rpmpgp_internal.c.orig 2023-11-13 13:18:27.719107550 +0100
|
||||
+++ rpm-4.18.2/rpmio/rpmpgp_internal.c 2023-11-13 16:18:59.919784952 +0100
|
||||
@@ -1095,6 +1095,14 @@ int pgpPrtParams(const uint8_t * pkts, s
|
||||
return rc;
|
||||
}
|
||||
|
||||
+int pgpPrtParams2(const uint8_t * pkts, size_t pktlen, unsigned int pkttype,
|
||||
+ pgpDigParams * ret, char **lints)
|
||||
+{
|
||||
+ if (lints)
|
||||
+ *lints = NULL;
|
||||
+ return pgpPrtParams(pkts, pktlen, pkttype, ret);
|
||||
+}
|
||||
+
|
||||
int pgpPrtParamsSubkeys(const uint8_t *pkts, size_t pktlen,
|
||||
pgpDigParams mainkey, pgpDigParams **subkeys,
|
||||
int *subkeysCount)
|
||||
@@ -1264,6 +1272,13 @@ rpmRC pgpVerifySig(pgpDig dig, DIGEST_CT
|
||||
pgpDigGetParams(dig, PGPTAG_SIGNATURE), hashctx);
|
||||
}
|
||||
|
||||
+rpmRC pgpVerifySignature2(pgpDigParams key, pgpDigParams sig, DIGEST_CTX hashctx, char **lints)
|
||||
+{
|
||||
+ if (lints)
|
||||
+ *lints = NULL;
|
||||
+ return pgpVerifySignature(key, sig, hashctx);
|
||||
+}
|
||||
+
|
||||
static pgpArmor decodePkts(uint8_t *b, uint8_t **pkt, size_t *pktlen)
|
||||
{
|
||||
const char * enc = NULL;
|
||||
diff -up rpm-4.18.2/rpmio/rpmpgp_sequoia.c.orig rpm-4.18.2/rpmio/rpmpgp_sequoia.c
|
||||
--- rpm-4.18.2/rpmio/rpmpgp_sequoia.c.orig 2023-11-13 13:18:27.719107550 +0100
|
||||
+++ rpm-4.18.2/rpmio/rpmpgp_sequoia.c 2023-11-13 16:18:59.919784952 +0100
|
||||
@@ -36,6 +36,9 @@ W(uint32_t, pgpDigParamsCreationTime, (p
|
||||
W(rpmRC, pgpVerifySignature,
|
||||
(pgpDigParams key, pgpDigParams sig, DIGEST_CTX hashctx),
|
||||
(key, sig, hashctx))
|
||||
+W(rpmRC, pgpVerifySignature2,
|
||||
+ (pgpDigParams key, pgpDigParams sig, DIGEST_CTX hashctx, char **lints),
|
||||
+ (key, sig, hashctx, lints))
|
||||
W(int, pgpPubkeyKeyID,
|
||||
(const uint8_t * pkt, size_t pktlen, pgpKeyID_t keyid),
|
||||
(pkt, pktlen, keyid))
|
||||
@@ -51,6 +54,10 @@ W(int, pgpPubKeyCertLen,
|
||||
W(int, pgpPrtParams,
|
||||
(const uint8_t *pkts, size_t pktlen, unsigned int pkttype, pgpDigParams *ret),
|
||||
(pkts, pktlen, pkttype, ret))
|
||||
+W(int, pgpPrtParams2,
|
||||
+ (const uint8_t *pkts, size_t pktlen, unsigned int pkttype, pgpDigParams *ret,
|
||||
+ char **lints),
|
||||
+ (pkts, pktlen, pkttype, ret, lints))
|
||||
W(int, pgpPrtParamsSubkeys,
|
||||
(const uint8_t *pkts, size_t pktlen,
|
||||
pgpDigParams mainkey, pgpDigParams **subkeys,
|
||||
diff -up rpm-4.18.2/tests/rpmi.at.orig rpm-4.18.2/tests/rpmi.at
|
||||
--- rpm-4.18.2/tests/rpmi.at.orig 2023-11-13 13:18:27.721107538 +0100
|
||||
+++ rpm-4.18.2/tests/rpmi.at 2023-11-13 16:21:40.657790792 +0100
|
||||
@@ -254,7 +254,7 @@ RPMTEST_CLEANUP
|
||||
|
||||
AT_SETUP([rpm -U <corrupted signed 1>])
|
||||
AT_KEYWORDS([install])
|
||||
-RPMTEST_CHECK([
|
||||
+RPMTEST_CHECK_UNQUOTED([
|
||||
RPMDB_INIT
|
||||
|
||||
pkg="hello-2.0-1.x86_64-signed.rpm"
|
||||
@@ -267,7 +267,13 @@ runroot rpm -U --ignorearch --ignoreos -
|
||||
],
|
||||
[1],
|
||||
[],
|
||||
-[error: /tmp/hello-2.0-1.x86_64-signed.rpm: Header RSA signature: BAD (package tag 268: invalid OpenPGP signature)
|
||||
+[`if test x$PGP = xinternal; then
|
||||
+ echo 'error: /tmp/hello-2.0-1.x86_64-signed.rpm: Header RSA signature: BAD (package tag 268: invalid OpenPGP signature)'
|
||||
+else
|
||||
+ echo 'error: /tmp/hello-2.0-1.x86_64-signed.rpm: Header RSA signature: BAD (package tag 268: invalid OpenPGP signature: Parsing an OpenPGP packet:'
|
||||
+ echo ' Failed to parse Signature Packet'
|
||||
+ echo ' because: Malformed packet: Subpacket extends beyond the end of the subpacket area)'
|
||||
+fi`
|
||||
error: /tmp/hello-2.0-1.x86_64-signed.rpm cannot be installed
|
||||
])
|
||||
RPMTEST_CLEANUP
|
||||
diff -up rpm-4.18.2/tests/rpmsigdig.at.orig rpm-4.18.2/tests/rpmsigdig.at
|
||||
--- rpm-4.18.2/tests/rpmsigdig.at.orig 2023-11-13 13:18:27.722107532 +0100
|
||||
+++ rpm-4.18.2/tests/rpmsigdig.at 2023-11-13 16:21:03.842018500 +0100
|
||||
@@ -539,7 +539,7 @@ RPMTEST_CLEANUP
|
||||
# Test pre-built corrupted package verification (corrupted signature)
|
||||
AT_SETUP([rpmkeys -Kv <corrupted signed> 1])
|
||||
AT_KEYWORDS([rpmkeys digest signature])
|
||||
-RPMTEST_CHECK([
|
||||
+RPMTEST_CHECK_UNQUOTED([
|
||||
RPMDB_INIT
|
||||
|
||||
pkg="hello-2.0-1.x86_64-signed.rpm"
|
||||
@@ -553,14 +553,28 @@ runroot rpmkeys -Kv /tmp/${pkg}
|
||||
],
|
||||
[1],
|
||||
[/tmp/hello-2.0-1.x86_64-signed.rpm:
|
||||
- Header RSA signature: BAD (package tag 268: invalid OpenPGP signature)
|
||||
+`if test x$PGP = xinternal; then
|
||||
+ echo ' Header RSA signature: BAD (package tag 268: invalid OpenPGP signature)'
|
||||
+else
|
||||
+ echo ' Header RSA signature: BAD (package tag 268: invalid OpenPGP signature: Parsing an OpenPGP packet:'
|
||||
+ echo ' Failed to parse Signature Packet'
|
||||
+ echo ' because: Signature appears to be created by a non-conformant OpenPGP implementation, see <https://github.com/rpm-software-management/rpm/issues/2351>.'
|
||||
+ echo ' because: Malformed MPI: leading bit is not set: expected bit 1 to be set in 0 (0))'
|
||||
+fi`
|
||||
Header SHA256 digest: OK
|
||||
Header SHA1 digest: OK
|
||||
Payload SHA256 digest: OK
|
||||
V4 RSA/SHA256 Signature, key ID 1964c5fc: NOKEY
|
||||
MD5 digest: OK
|
||||
/tmp/hello-2.0-1.x86_64-signed.rpm:
|
||||
- Header RSA signature: BAD (package tag 268: invalid OpenPGP signature)
|
||||
+`if test x$PGP = xinternal; then
|
||||
+ echo ' Header RSA signature: BAD (package tag 268: invalid OpenPGP signature)'
|
||||
+else
|
||||
+ echo ' Header RSA signature: BAD (package tag 268: invalid OpenPGP signature: Parsing an OpenPGP packet:'
|
||||
+ echo ' Failed to parse Signature Packet'
|
||||
+ echo ' because: Signature appears to be created by a non-conformant OpenPGP implementation, see <https://github.com/rpm-software-management/rpm/issues/2351>.'
|
||||
+ echo ' because: Malformed MPI: leading bit is not set: expected bit 1 to be set in 0 (0))'
|
||||
+fi`
|
||||
Header SHA256 digest: OK
|
||||
Header SHA1 digest: OK
|
||||
Payload SHA256 digest: OK
|
@ -1,16 +0,0 @@
|
||||
diff -up rpm-4.18.1/macros.in.orig rpm-4.18.1/macros.in
|
||||
--- rpm-4.18.1/macros.in.orig 2023-03-15 13:57:06.385361527 +0100
|
||||
+++ rpm-4.18.1/macros.in 2023-03-15 13:58:09.613971713 +0100
|
||||
@@ -727,10 +727,11 @@ package or when debugging this package.\
|
||||
RPM_SOURCE_DIR=\"%{_sourcedir}\"\
|
||||
RPM_BUILD_DIR=\"%{_builddir}\"\
|
||||
RPM_OPT_FLAGS=\"%{optflags}\"\
|
||||
+ RPM_LD_FLAGS=\"%{?build_ldflags}\"\
|
||||
RPM_ARCH=\"%{_arch}\"\
|
||||
RPM_OS=\"%{_os}\"\
|
||||
RPM_BUILD_NCPUS=\"%{_smp_build_ncpus}\"\
|
||||
- export RPM_SOURCE_DIR RPM_BUILD_DIR RPM_OPT_FLAGS RPM_ARCH RPM_OS RPM_BUILD_NCPUS\
|
||||
+ export RPM_SOURCE_DIR RPM_BUILD_DIR RPM_OPT_FLAGS RPM_ARCH RPM_OS RPM_BUILD_NCPUS RPM_LD_FLAGS\
|
||||
RPM_DOC_DIR=\"%{_docdir}\"\
|
||||
export RPM_DOC_DIR\
|
||||
RPM_PACKAGE_NAME=\"%{NAME}\"\
|
@ -1,12 +0,0 @@
|
||||
diff -up rpm-4.18.1/docs/Makefile.am.orig rpm-4.18.1/docs/Makefile.am
|
||||
--- rpm-4.18.1/docs/Makefile.am.orig 2023-03-15 14:48:27.955720807 +0100
|
||||
+++ rpm-4.18.1/docs/Makefile.am 2023-03-15 14:48:43.634626934 +0100
|
||||
@@ -1,8 +1,6 @@
|
||||
## Process this file with automake to produce Makefile.in
|
||||
|
||||
-if PANDOC
|
||||
SUBDIRS = man
|
||||
-endif
|
||||
|
||||
EXTRA_DIST =
|
||||
|
@ -1,14 +0,0 @@
|
||||
diff -up rpm-4.18.1/macros.in.orig rpm-4.18.1/macros.in
|
||||
--- rpm-4.18.1/macros.in.orig 2023-03-15 13:52:55.211928040 +0100
|
||||
+++ rpm-4.18.1/macros.in 2023-03-15 13:55:04.113129930 +0100
|
||||
@@ -746,7 +746,9 @@ package or when debugging this package.\
|
||||
%{?_javaclasspath:CLASSPATH=\"%{_javaclasspath}\"\
|
||||
export CLASSPATH}\
|
||||
PKG_CONFIG_PATH=\"${PKG_CONFIG_PATH}:%{_libdir}/pkgconfig:%{_datadir}/pkgconfig\"\
|
||||
- export PKG_CONFIG_PATH
|
||||
+ export PKG_CONFIG_PATH\
|
||||
+ CONFIG_SITE=${CONFIG_SITE:-NONE}\
|
||||
+ export CONFIG_SITE
|
||||
|
||||
%___build_pre \
|
||||
%{___build_pre_env} \
|
495
rpm.spec
495
rpm.spec
@ -1,54 +1,71 @@
|
||||
|
||||
# run internal testsuite?
|
||||
# fakechroot is severely broken beyond fedora 33, disable...
|
||||
%if 0%{?fedora} > 33 || 0%{?rhel} > 8
|
||||
%bcond_with check
|
||||
%else
|
||||
%bcond_without check
|
||||
%endif
|
||||
|
||||
# build against xz?
|
||||
%bcond_without xz
|
||||
# run internal testsuite?
|
||||
%bcond_without check
|
||||
# build with plugins?
|
||||
%bcond_without plugins
|
||||
# build with libarchive? (needed for rpm2archive)
|
||||
%bcond_without libarchive
|
||||
# build with libimaevm.so
|
||||
%bcond_without libimaevm
|
||||
# build with fsverity support?
|
||||
%bcond_without fsverity
|
||||
# build with zstd support?
|
||||
%bcond_without zstd
|
||||
# build with ndb backend?
|
||||
%bcond_without ndb
|
||||
# build with sqlite support?
|
||||
%bcond_without sqlite
|
||||
# build with bdb support?
|
||||
%bcond_without bdb
|
||||
# build with internal Berkeley DB?
|
||||
%bcond_with int_bdb
|
||||
# build with bdb_ro support?
|
||||
%bcond_without bdb_ro
|
||||
# build with sequoia crypto?
|
||||
%bcond_without sequoia
|
||||
|
||||
%define rpmhome /usr/lib/rpm
|
||||
|
||||
%global rpmver 4.18.2
|
||||
#global snapver rc1
|
||||
%global baserelease 1
|
||||
%global sover 9
|
||||
%global rpmver 4.16.0
|
||||
%global snapver beta3
|
||||
%global rel 2
|
||||
|
||||
%global srcver %{rpmver}%{?snapver:-%{snapver}}
|
||||
%global srcdir %{?snapver:testing}%{!?snapver:rpm-%(echo %{rpmver} | cut -d'.' -f1-2).x}
|
||||
|
||||
%if %{with bdb}
|
||||
%define bdbver 5.3.15
|
||||
|
||||
# Build-dependency on systemd for the sake of one macro would be a bit much...
|
||||
%{!?_tmpfilesdir:%global _tmpfilesdir /usr/lib/tmpfiles.d}
|
||||
%endif
|
||||
|
||||
Summary: The RPM package management system
|
||||
Name: rpm
|
||||
Version: %{rpmver}
|
||||
Release: %{?snapver:0.%{snapver}.}%{baserelease}%{?dist}
|
||||
Release: %{?snapver:0.%{snapver}.}%{rel}%{?dist}.3
|
||||
Url: http://www.rpm.org/
|
||||
Source0: http://ftp.rpm.org/releases/%{srcdir}/rpm-%{srcver}.tar.bz2
|
||||
%if %{with bdb} && %{with int_bdb}
|
||||
Source1: db-%{bdbver}.tar.gz
|
||||
%endif
|
||||
|
||||
Source10: rpmdb-rebuild.service
|
||||
|
||||
Source20: rpmdb-migrate.service
|
||||
Source21: rpmdb_migrate
|
||||
# Disable autoconf config.site processing (#962837)
|
||||
Patch1: rpm-4.15.x-siteconfig.patch
|
||||
# In current Fedora, man-pages pkg owns all the localized man directories
|
||||
Patch3: rpm-4.9.90-no-man-dirs.patch
|
||||
# Temporary band-aid for rpm2cpio whining on payload size mismatch (#1142949)
|
||||
Patch5: rpm-4.12.0-rpm2cpio-hack.patch
|
||||
# https://github.com/rpm-software-management/rpm/pull/473
|
||||
Patch6: 0001-find-debuginfo.sh-decompress-DWARF-compressed-ELF-se.patch
|
||||
|
||||
# Patches already upstream:
|
||||
|
||||
# These are not yet upstream
|
||||
Patch906: rpm-4.7.1-geode-i686.patch
|
||||
# Probably to be upstreamed in slightly different form
|
||||
Patch907: rpm-4.15.x-ldflags.patch
|
||||
|
||||
Patch912: 0001-Revert-Improve-ARM-detection.patch
|
||||
|
||||
# Partially GPL/LGPL dual-licensed and some bits with BSD
|
||||
# SourceLicense: (GPLv2+ and LGPLv2+ with exceptions) and BSD
|
||||
@ -59,9 +76,12 @@ Requires: popt%{_isa} >= 1.10.2.1
|
||||
Requires: curl
|
||||
Obsoletes: python2-rpm < %{version}-%{release}
|
||||
|
||||
%if %{with bdb} && %{without int_bdb}
|
||||
BuildRequires: libdb-devel
|
||||
%endif
|
||||
|
||||
%if %{with check}
|
||||
BuildRequires: fakechroot gnupg2
|
||||
BuildRequires: debugedit >= 0.3
|
||||
%endif
|
||||
|
||||
# XXX generally assumed to be installed but make it explicit as rpm
|
||||
@ -73,6 +93,7 @@ BuildRequires: gawk
|
||||
BuildRequires: elfutils-devel >= 0.112
|
||||
BuildRequires: elfutils-libelf-devel
|
||||
BuildRequires: readline-devel zlib-devel
|
||||
BuildRequires: openssl-devel
|
||||
# The popt version here just documents an older known-good version
|
||||
BuildRequires: popt-devel >= 1.10.2
|
||||
BuildRequires: file-devel
|
||||
@ -94,15 +115,6 @@ BuildRequires: libzstd-devel
|
||||
%if %{with sqlite}
|
||||
BuildRequires: sqlite-devel
|
||||
%endif
|
||||
|
||||
%if %{with sequoia}
|
||||
%global crypto sequoia
|
||||
BuildRequires: rpm-sequoia-devel >= 1.4.0
|
||||
%else
|
||||
%global crypto openssl
|
||||
BuildRequires: openssl-devel
|
||||
%endif
|
||||
|
||||
# Couple of patches change makefiles so, require for now...
|
||||
BuildRequires: automake libtool
|
||||
|
||||
@ -116,34 +128,6 @@ BuildRequires: audit-libs-devel
|
||||
BuildRequires: ima-evm-utils-devel >= 1.0
|
||||
%endif
|
||||
|
||||
%if %{with fsverity}
|
||||
BuildRequires: fsverity-utils-devel
|
||||
%endif
|
||||
|
||||
# For the rpmdb migration scriptlet (#2055033)
|
||||
Requires(pre): coreutils
|
||||
Requires(pre): findutils
|
||||
Requires(pre): sed
|
||||
|
||||
%patchlist
|
||||
# Set rpmdb path to /usr/lib/sysimage/rpm
|
||||
rpm-4.17.x-rpm_dbpath.patch
|
||||
# Disable autoconf config.site processing (#962837)
|
||||
rpm-4.18.x-siteconfig.patch
|
||||
# In current Fedora, man-pages pkg owns all the localized man directories
|
||||
rpm-4.9.90-no-man-dirs.patch
|
||||
|
||||
# Patches already upstream:
|
||||
rpm-4.18.x-add-pgpVerifySignature2-and-pgpPrtParams2.patch
|
||||
|
||||
# These are not yet upstream
|
||||
rpm-4.7.1-geode-i686.patch
|
||||
# Probably to be upstreamed in slightly different form
|
||||
rpm-4.18.x-ldflags.patch
|
||||
# We either need pandoc in buildroot or this patch in order for man pages to
|
||||
# actually be installed, choose the latter
|
||||
rpm-4.18.x-revert-pandoc-cond.patch
|
||||
|
||||
%description
|
||||
The RPM Package Manager (RPM) is a powerful command line driven
|
||||
package management system capable of installing, uninstalling,
|
||||
@ -154,11 +138,7 @@ the package like its version, a description, etc.
|
||||
%package libs
|
||||
Summary: Libraries for manipulating RPM packages
|
||||
License: GPLv2+ and LGPLv2+ with exceptions
|
||||
Requires(meta): %{name} = %{version}-%{release}
|
||||
%if %{with sequoia}
|
||||
# >= 1.4.0 required for pgpVerifySignature2() and pgpPrtParams2()
|
||||
Requires: rpm-sequoia%{_isa} >= 1.4.0
|
||||
%endif
|
||||
Requires: %{name} = %{version}-%{release}
|
||||
|
||||
%description libs
|
||||
This package contains the RPM shared libraries.
|
||||
@ -209,7 +189,6 @@ Requires: tar unzip gzip bzip2 cpio xz
|
||||
%if %{with zstd}
|
||||
Requires: zstd
|
||||
%endif
|
||||
Requires: debugedit >= 0.3
|
||||
Requires: pkgconfig >= 1:0.24
|
||||
Requires: /usr/bin/gdb-add-index
|
||||
# https://fedoraproject.org/wiki/Changes/Minimal_GDB_in_buildroot
|
||||
@ -238,6 +217,7 @@ BuildRequires: python3-devel
|
||||
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
|
||||
Provides: %{name}-python3 = %{version}-%{release}
|
||||
Obsoletes: %{name}-python3 < %{version}-%{release}
|
||||
Obsoletes: platform-python-%{name} < %{version}-%{release}
|
||||
|
||||
%description -n python3-%{name}
|
||||
The python3-rpm package contains a module that permits applications
|
||||
@ -268,7 +248,7 @@ packages on a system.
|
||||
%package plugin-selinux
|
||||
Summary: Rpm plugin for SELinux functionality
|
||||
Requires: rpm-libs%{_isa} = %{version}-%{release}
|
||||
Requires(meta): selinux-policy-base
|
||||
Requires: selinux-policy-base
|
||||
|
||||
%description plugin-selinux
|
||||
%{summary}.
|
||||
@ -312,41 +292,20 @@ Requires: rpm-libs%{_isa} = %{version}-%{release}
|
||||
%description plugin-audit
|
||||
%{summary}.
|
||||
|
||||
%package plugin-fsverity
|
||||
Summary: Rpm plugin for fsverity file signatures
|
||||
Requires: rpm-libs%{_isa} = %{version}-%{release}
|
||||
|
||||
%description plugin-fsverity
|
||||
%{summary}.
|
||||
|
||||
%package plugin-fapolicyd
|
||||
Summary: Rpm plugin for fapolicyd support
|
||||
Requires: rpm-libs%{_isa} = %{version}-%{release}
|
||||
Provides: fapolicyd-plugin = %{version}-%{release}
|
||||
# fapolicyd-dnf-plugin currently at 1.0.4
|
||||
Obsoletes: fapolicyd-dnf-plugin < 1.0.5
|
||||
|
||||
%description plugin-fapolicyd
|
||||
%{summary}.
|
||||
|
||||
See https://people.redhat.com/sgrubb/fapolicyd/ for information about
|
||||
the fapolicyd daemon.
|
||||
|
||||
%package plugin-dbus-announce
|
||||
Summary: Rpm plugin for announcing transactions on the DBUS
|
||||
Requires: rpm-libs%{_isa} = %{version}-%{release}
|
||||
|
||||
%description plugin-dbus-announce
|
||||
The plugin announces basic information about rpm transactions to the
|
||||
system DBUS - like packages installed or removed. Other programs can
|
||||
subscribe to the signals to get notified when packages on the system
|
||||
change.
|
||||
|
||||
# with plugins
|
||||
%endif
|
||||
|
||||
%prep
|
||||
%autosetup -n rpm-%{srcver} -p1
|
||||
%autosetup -n rpm-%{srcver} %{?with_int_bdb:-a 1} -p1
|
||||
|
||||
%if %{with bdb} && %{with int_bdb}
|
||||
ln -s db-%{bdbver} db
|
||||
%endif
|
||||
|
||||
# switch to sqlite db by default, including during build-time tests
|
||||
%if %{with sqlite}
|
||||
sed -i -e "/_db_backend/ s/ bdb/ sqlite/g" macros.in
|
||||
%endif
|
||||
|
||||
%build
|
||||
%set_build_flags
|
||||
@ -369,32 +328,38 @@ done;
|
||||
--build=%{_target_platform} \
|
||||
--host=%{_target_platform} \
|
||||
--with-vendor=redhat \
|
||||
%{?with_bdb: --enable-bdb} \
|
||||
%{!?with_int_bdb: --with-external-db} \
|
||||
%{!?with_plugins: --disable-plugins} \
|
||||
--with-lua \
|
||||
--with-selinux \
|
||||
--with-cap \
|
||||
--with-acl \
|
||||
--with-fapolicyd \
|
||||
%{?with_ndb: --enable-ndb} \
|
||||
%{?with_libimaevm: --with-imaevm} \
|
||||
%{?with_fsverity: --with-fsverity} \
|
||||
%{?with_zstd: --enable-zstd} \
|
||||
%{?with_sqlite: --enable-sqlite} \
|
||||
%{?with_bdb_ro: --enable-bdb-ro} \
|
||||
--enable-python \
|
||||
--with-crypto=%{crypto}
|
||||
--with-crypto=openssl
|
||||
|
||||
%make_build
|
||||
|
||||
pushd python
|
||||
%py3_build
|
||||
popd
|
||||
|
||||
%install
|
||||
%make_install
|
||||
|
||||
# We need to build with --enable-python for the self-test suite, but we
|
||||
# actually package the bindings built with setup.py (#531543#c26)
|
||||
pushd python
|
||||
%py3_install
|
||||
popd
|
||||
|
||||
mkdir -p $RPM_BUILD_ROOT%{_unitdir}
|
||||
install -m 644 %{SOURCE10} $RPM_BUILD_ROOT/%{_unitdir}
|
||||
install -m 644 %{SOURCE20} $RPM_BUILD_ROOT/%{_unitdir}
|
||||
|
||||
mkdir -p $RPM_BUILD_ROOT%{rpmhome}
|
||||
install -m 755 %{SOURCE21} $RPM_BUILD_ROOT/%{rpmhome}
|
||||
|
||||
# Save list of packages through cron
|
||||
mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/cron.daily
|
||||
@ -403,19 +368,21 @@ install -m 755 scripts/rpm.daily ${RPM_BUILD_ROOT}%{_sysconfdir}/cron.daily/rpm
|
||||
mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d
|
||||
install -m 644 scripts/rpm.log ${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d/rpm
|
||||
|
||||
%if %{with bdb}
|
||||
mkdir -p ${RPM_BUILD_ROOT}%{_tmpfilesdir}
|
||||
echo "r /var/lib/rpm/__db.*" > ${RPM_BUILD_ROOT}%{_tmpfilesdir}/rpm.conf
|
||||
%endif
|
||||
|
||||
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/rpm
|
||||
mkdir -p $RPM_BUILD_ROOT%{rpmhome}/macros.d
|
||||
mkdir -p $RPM_BUILD_ROOT/usr/lib/sysimage/rpm
|
||||
mkdir -p $RPM_BUILD_ROOT/var/lib/rpm
|
||||
|
||||
# init an empty database for %ghost'ing for all supported backends
|
||||
for be in %{?with_ndb:ndb} %{?with_sqlite:sqlite}; do
|
||||
for be in %{?with_ndb:ndb} %{?with_sqlite:sqlite} %{?with_bdb:bdb}; do
|
||||
./rpmdb --define "_db_backend ${be}" --dbpath=${PWD}/${be} --initdb
|
||||
cp -va ${be}/. $RPM_BUILD_ROOT/usr/lib/sysimage/rpm/
|
||||
cp -va ${be}/. $RPM_BUILD_ROOT/var/lib/rpm/
|
||||
done
|
||||
|
||||
# some packages invoke find-debuginfo directly, preserve compat for now
|
||||
ln -s ../../bin/find-debuginfo $RPM_BUILD_ROOT/usr/lib/rpm/find-debuginfo.sh
|
||||
|
||||
%find_lang rpm
|
||||
|
||||
find $RPM_BUILD_ROOT -name "*.la"|xargs rm -f
|
||||
@ -423,52 +390,39 @@ find $RPM_BUILD_ROOT -name "*.la"|xargs rm -f
|
||||
# These live in perl-generators and python-rpm-generators now
|
||||
rm -f $RPM_BUILD_ROOT/%{rpmhome}/{perldeps.pl,perl.*,pythond*}
|
||||
rm -f $RPM_BUILD_ROOT/%{_fileattrsdir}/{perl*,python*}
|
||||
rm -rf $RPM_BUILD_ROOT/var/tmp
|
||||
|
||||
%if %{with check}
|
||||
%check
|
||||
make check TESTSUITEFLAGS=-j%{_smp_build_ncpus} || (cat tests/rpmtests.log; exit 1)
|
||||
# rpm >= 4.16.0 testsuite leaves a read-only tree behind, clean it up
|
||||
make clean
|
||||
make check || (cat tests/rpmtests.log; exit 1)
|
||||
%endif
|
||||
|
||||
%pre
|
||||
# Symlink all rpmdb files to the new location if we're still using /var/lib/rpm
|
||||
if [ -d /var/lib/rpm ]; then
|
||||
mkdir -p /usr/lib/sysimage/rpm
|
||||
rpmdb_files=$(find /var/lib/rpm -maxdepth 1 -type f | sed 's|^/var/lib/rpm/||g' | sort)
|
||||
for rpmdb_file in ${rpmdb_files[@]}; do
|
||||
ln -sfr /var/lib/rpm/${rpmdb_file} /usr/lib/sysimage/rpm/${rpmdb_file}
|
||||
done
|
||||
fi
|
||||
|
||||
%triggerun -- rpm < 4.17.0-7
|
||||
# Handle rpmdb migrate service on erasure of old to avoid ordering issues
|
||||
# Handle rpmdb rebuild service on erasure of old to avoid ordering issues
|
||||
# https://pagure.io/fesco/issue/2382
|
||||
%triggerun -- rpm < 4.15.90-0.git14971.10
|
||||
if [ -x /usr/bin/systemctl ]; then
|
||||
systemctl --no-reload preset rpmdb-migrate ||:
|
||||
systemctl --no-reload preset rpmdb-rebuild ||:
|
||||
fi
|
||||
|
||||
%posttrans
|
||||
if [ -d /var/lib/rpm ]; then
|
||||
touch /var/lib/rpm/.migratedb
|
||||
fi
|
||||
if [ ! -d /var/lib/rpm ] && [ -d /usr/lib/sysimage/rpm ] && [ ! -f /usr/lib/sysimage/rpm/.rpmdbdirsymlink_created ]; then
|
||||
ln -sfr /usr/lib/sysimage/rpm /var/lib/rpm
|
||||
touch /usr/lib/sysimage/rpm/.rpmdbdirsymlink_created
|
||||
if [ -f /var/lib/rpm/Packages ]; then
|
||||
touch /var/lib/rpm/.rebuilddb
|
||||
fi
|
||||
|
||||
%files -f rpm.lang
|
||||
%license COPYING
|
||||
%doc CREDITS docs/manual/[a-z]*
|
||||
%doc CREDITS doc/manual/[a-z]*
|
||||
|
||||
%if %{with bdb}
|
||||
%{_tmpfilesdir}/rpm.conf
|
||||
%endif
|
||||
|
||||
%{_unitdir}/rpmdb-rebuild.service
|
||||
%{_unitdir}/rpmdb-migrate.service
|
||||
|
||||
%dir %{_sysconfdir}/rpm
|
||||
|
||||
%attr(0755, root, root) %dir /usr/lib/sysimage/rpm
|
||||
%attr(0644, root, root) %ghost %config(missingok,noreplace) /usr/lib/sysimage/rpm/*
|
||||
%attr(0644, root, root) %ghost /usr/lib/sysimage/rpm/.*.lock
|
||||
%attr(0755, root, root) %dir /var/lib/rpm
|
||||
%attr(0644, root, root) %ghost %config(missingok,noreplace) /var/lib/rpm/*
|
||||
%attr(0644, root, root) %ghost /var/lib/rpm/.*.lock
|
||||
|
||||
%{_bindir}/rpm
|
||||
%{_bindir}/rpm2archive
|
||||
@ -513,10 +467,8 @@ fi
|
||||
%dir %{rpmhome}/fileattrs
|
||||
|
||||
%files libs
|
||||
%{_libdir}/librpmio.so.%{sover}
|
||||
%{_libdir}/librpm.so.%{sover}
|
||||
%{_libdir}/librpmio.so.%{sover}.*
|
||||
%{_libdir}/librpm.so.%{sover}.*
|
||||
%{_libdir}/librpmio.so.*
|
||||
%{_libdir}/librpm.so.*
|
||||
%if %{with plugins}
|
||||
%dir %{_libdir}/rpm-plugins
|
||||
|
||||
@ -536,13 +488,6 @@ fi
|
||||
%{_libdir}/rpm-plugins/ima.so
|
||||
%{_mandir}/man8/rpm-plugin-ima.8*
|
||||
|
||||
%files plugin-fsverity
|
||||
%{_libdir}/rpm-plugins/fsverity.so
|
||||
|
||||
%files plugin-fapolicyd
|
||||
%{_libdir}/rpm-plugins/fapolicyd.so
|
||||
%{_mandir}/man8/rpm-plugin-fapolicyd.8*
|
||||
|
||||
%files plugin-prioreset
|
||||
%{_libdir}/rpm-plugins/prioreset.so
|
||||
%{_mandir}/man8/rpm-plugin-prioreset.8*
|
||||
@ -551,35 +496,29 @@ fi
|
||||
%{_libdir}/rpm-plugins/audit.so
|
||||
%{_mandir}/man8/rpm-plugin-audit.8*
|
||||
# with plugins
|
||||
|
||||
%files plugin-dbus-announce
|
||||
%{_libdir}/rpm-plugins/dbus_announce.so
|
||||
%{_mandir}/man8/rpm-plugin-dbus-announce.8*
|
||||
%{_sysconfdir}/dbus-1/system.d/org.rpm.conf
|
||||
%endif
|
||||
|
||||
%files build-libs
|
||||
%{_libdir}/librpmbuild.so.%{sover}
|
||||
%{_libdir}/librpmbuild.so.%{sover}.*
|
||||
%{_libdir}/librpmbuild.so.*
|
||||
|
||||
%files sign-libs
|
||||
%{_libdir}/librpmsign.so.%{sover}
|
||||
%{_libdir}/librpmsign.so.%{sover}.*
|
||||
%{_libdir}/librpmsign.so.*
|
||||
|
||||
%files build
|
||||
%{_bindir}/rpmbuild
|
||||
%{_bindir}/gendiff
|
||||
%{_bindir}/rpmspec
|
||||
%{_bindir}/rpmlua
|
||||
|
||||
%{_mandir}/man1/gendiff.1*
|
||||
%{_mandir}/man8/rpmbuild.8*
|
||||
%{_mandir}/man8/rpmdeps.8*
|
||||
%{_mandir}/man8/rpmspec.8*
|
||||
%{_mandir}/man8/rpmlua.8*
|
||||
|
||||
%{rpmhome}/brp-*
|
||||
%{rpmhome}/check-*
|
||||
%{rpmhome}/debugedit
|
||||
%{rpmhome}/sepdebugcrcfix
|
||||
%{rpmhome}/find-debuginfo.sh
|
||||
%{rpmhome}/find-lang.sh
|
||||
%{rpmhome}/*provides*
|
||||
%{rpmhome}/*requires*
|
||||
@ -588,19 +527,14 @@ fi
|
||||
%{rpmhome}/*.req
|
||||
%{rpmhome}/mkinstalldirs
|
||||
%{rpmhome}/fileattrs/*
|
||||
%{rpmhome}/find-debuginfo.sh
|
||||
%{rpmhome}/rpmuncompress
|
||||
|
||||
%files sign
|
||||
%{_bindir}/rpmsign
|
||||
%{_mandir}/man8/rpmsign.8*
|
||||
|
||||
%files -n python3-%{name}
|
||||
%{python3_sitearch}/rpm/
|
||||
%{python3_sitearch}/rpm-%{rpmver}*.egg-info
|
||||
%{python3_sitearch}/rpm/__init__.py
|
||||
%{python3_sitearch}/rpm/transaction.py
|
||||
%{python3_sitearch}/rpm/_rpm.so
|
||||
%artifact %{python3_sitearch}/rpm/__pycache__/
|
||||
|
||||
%files devel
|
||||
%{_mandir}/man8/rpmgraph.8*
|
||||
@ -615,238 +549,9 @@ fi
|
||||
|
||||
%files apidocs
|
||||
%license COPYING
|
||||
%doc docs/librpm/html/*
|
||||
%doc doc/librpm/html/*
|
||||
|
||||
%changelog
|
||||
* Mon Nov 13 2023 Michal Domonkos <mdomonko@redhat.com> - 4.18.2-1
|
||||
- Rebase to rpm 4.18.2 (https://rpm.org/wiki/Releases/4.18.2)
|
||||
|
||||
* Tue Apr 25 2023 Miro Hrončok <mhroncok@redhat.com> - 4.18.1-3
|
||||
- Explicitly require rpm-sequoia >= 1.4.0 on runtime to avoid
|
||||
rpm: symbol lookup error: /lib64/librpmio.so.9: undefined symbol: _pgpVerifySignature2
|
||||
|
||||
* Thu Apr 20 2023 Panu Matilainen <pmatilai@redhat.com> - 4.18.1-2
|
||||
- Backport improved crypto error messages from upstream
|
||||
|
||||
* Wed Mar 15 2023 Michal Domonkos <mdomonko@redhat.com> - 4.18.1-1
|
||||
- Rebase to rpm 4.18.1 (https://rpm.org/wiki/Releases/4.18.1)
|
||||
|
||||
* Thu Feb 16 2023 Panu Matilainen <pmatilai@redhat.com> - 4.18.0-11
|
||||
- Disable debuginfod lookups in rpmbuild scripts
|
||||
- Exclude kernel modules from ELF dependency generation
|
||||
|
||||
* Fri Jan 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 4.18.0-10
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
|
||||
|
||||
* Mon Jan 09 2023 Panu Matilainen <pmatilai@redhat.com> - 4.18.0-9
|
||||
- Generate Python egg-info from automake (#2135561)
|
||||
- Drop setup.py-based Python build (#2135719)
|
||||
|
||||
* Wed Dec 07 2022 Panu Matilainen <pmatilai@redhat.com> - 4.18.0-8
|
||||
- Fix hang-up on failed key import (related to #2149762)
|
||||
|
||||
* Thu Nov 24 2022 Panu Matilainen <pmatilai@redhat.com> - 4.18.0-7
|
||||
- Require rpm-sequoia >= 1.2.0 for V3 signature support, re-enable (#2141686)
|
||||
|
||||
* Thu Nov 10 2022 Panu Matilainen <pmatilai@redhat.com> - 4.18.0-6
|
||||
- Revert back to internal OpenPGP parser for V3 signature support (#2141686)
|
||||
|
||||
* Tue Nov 01 2022 Panu Matilainen <pmatilai@redhat.com> - 4.18.0-5
|
||||
- Switch to Sequoia crypto (https://fedoraproject.org/wiki/Changes/RpmSequoia)
|
||||
|
||||
* Fri Oct 14 2022 Panu Matilainen <pmatilai@redhat.com> - 4.18.0-4
|
||||
- Add an option for building with Sequoia crypto
|
||||
|
||||
* Wed Oct 05 2022 Panu Matilainen <pmatilai@redhat.com> - 4.18.0-3
|
||||
- Break ancient rpm <-> rpm-libs ordering loop
|
||||
|
||||
* Mon Oct 03 2022 Panu Matilainen <pmatilai@redhat.com> - 4.18.0-2
|
||||
- Drop the temporary build-dependency on pandoc before it grows a beard
|
||||
- Start utilizing %%patchlist, finally
|
||||
|
||||
* Wed Sep 21 2022 Panu Matilainen <pmatilai@redhat.com> - 4.18.0-1
|
||||
- Rebase to rpm 4.18.0 (https://rpm.org/wiki/Releases/4.18.0)
|
||||
|
||||
* Wed Sep 14 2022 Panu Matilainen <pmatilai@redhat.com> - 4.18.0-0.rc1.4
|
||||
- Fix a largish directory walk related memory leak in transactions
|
||||
|
||||
* Wed Sep 07 2022 Panu Matilainen <pmatilai@redhat.com> - 4.18.0-0.rc1.3
|
||||
- Fix buffer overrun on rpmdb queries involving ^ in version
|
||||
|
||||
* Wed Sep 07 2022 Panu Matilainen <pmatilai@redhat.com> - 4.18.0-0.rc1.2
|
||||
- Break selinux-policy <-> rpm-plugin-selinux ordering loop (#1851266)
|
||||
|
||||
* Fri Sep 02 2022 Panu Matilainen <pmatilai@redhat.com> - 4.18.0-0.rc1.1
|
||||
- Rebase to 4.18.0-rc1 (https://rpm.org/wiki/Releases/4.18.0)
|
||||
|
||||
* Tue Aug 02 2022 Michal Domonkos <mdomonko@redhat.com> - 4.18.0-0.beta1.4
|
||||
- Revert %%autosetup -S git patch due to another regression
|
||||
|
||||
* Sat Jul 23 2022 Fedora Release Engineering <releng@fedoraproject.org> - 4.18.0-0.beta1.3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
|
||||
|
||||
* Mon Jul 11 2022 Michal Domonkos <mdomonko@redhat.com> - 4.18.0-0.beta1.2
|
||||
- Fix check-buildroot regression wrt bundled SRPM (#2104150)
|
||||
- Fix %%autosetup -S git regression wrt default git branch
|
||||
|
||||
* Tue Jun 28 2022 Panu Matilainen <pmatilai@redhat.com> - 4.18.0-0.beta1.1
|
||||
- Rebase to 4.18.0-beta1 (https://rpm.org/wiki/Releases/4.18.0)
|
||||
|
||||
* Mon Jun 13 2022 Python Maint <python-maint@redhat.com> - 4.18.0-0.alpha2.2
|
||||
- Rebuilt for Python 3.11
|
||||
|
||||
* Mon May 23 2022 Panu Matilainen <pmatilai@redhat.com> - 4.18.0-0.alpha2.1
|
||||
- Rebase to 4.18.0-0.alpha2
|
||||
- Prevent uncontrolled sqlite WAL growth during large transactions
|
||||
|
||||
* Thu Apr 28 2022 Panu Matilainen <pmatilai@redhat.com> - 4.18.0-0.alpha1.6
|
||||
- Fix rubygem unpack regression, causing rubygem builds to fail
|
||||
|
||||
* Wed Apr 27 2022 Panu Matilainen <pmatilai@redhat.com> - 4.18.0-0.alpha1.5
|
||||
- Fix verbose source uncompress regression (#2079127)
|
||||
|
||||
* Tue Apr 26 2022 Panu Matilainen <pmatilai@redhat.com> - 4.18.0-0.alpha1.4
|
||||
- Further dynamic buildrequires cli switch regression fixes (#2078744)
|
||||
|
||||
* Tue Apr 26 2022 Panu Matilainen <pmatilai@redhat.com> - 4.18.0-0.alpha1.3
|
||||
- Fix rpmbuild -ba --nodeps regression wrt dynamic buildrequires (#2078744)
|
||||
|
||||
* Tue Apr 26 2022 Panu Matilainen <pmatilai@redhat.com> - 4.18.0-0.alpha1.2
|
||||
- Fix rpmbuild -br not producing a src.rpm regression (#2078744)
|
||||
|
||||
* Mon Apr 25 2022 Panu Matilainen <pmatilai@redhat.com> - 4.18.0-0.alpha1.1
|
||||
- Rebase to 4.18.0 alpha (https://fedoraproject.org/wiki/Changes/RPM-4.18)
|
||||
- Add patches for two late discovered regressions
|
||||
|
||||
* Mon Mar 21 2022 Neal Gompa <ngompa@fedoraproject.org> - 4.17.0-10
|
||||
- Create rpmdb directory symlink in posttrans by default (#2066427)
|
||||
|
||||
* Wed Feb 16 2022 Neal Gompa <ngompa@fedoraproject.org> - 4.17.0-9
|
||||
- Add dependencies for the rpmdb migration scriptlet (#2055033)
|
||||
|
||||
* Wed Feb 02 2022 Panu Matilainen <pmatilai@redhat.com> - 4.17.0-8
|
||||
- Really fix spurious %%transfiletriggerpostun execution (#2023311, #2048168)
|
||||
|
||||
* Wed Jan 26 2022 Neal Gompa <ngompa@fedoraproject.org> - 4.17.0-7
|
||||
- Migrate rpmdb to /usr/lib/sysimage/rpm (#2042099)
|
||||
https://fedoraproject.org/wiki/Changes/RelocateRPMToUsr
|
||||
|
||||
* Fri Jan 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 4.17.0-6
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
|
||||
|
||||
* Thu Jan 20 2022 Björn Esser <besser82@fedoraproject.org> - 4.17.0-5
|
||||
- Rebuild (ima-evm-utils)
|
||||
- Use baserelease for rpm release tag to make rpmdev-bumpspec work
|
||||
|
||||
* Fri Jan 14 2022 Panu Matilainen <pmatilai@redhat.com> - 4.17.0-4
|
||||
- Fix spurious %%transfiletriggerpostun execution (#2023311)
|
||||
|
||||
* Fri Jan 14 2022 Panu Matilainen <pmatilai@redhat.com> - 4.17.0-3
|
||||
- Fix fapolicyd plugin dependencies to replace fapolicyd-dnf-plugin (#2007639)
|
||||
|
||||
* Mon Nov 08 2021 Peter Robinson <pbrobinson@fedoraproject.org> - 4.17.0-2
|
||||
- Rebuils for ima-evm-utils 1.4 soname bump
|
||||
|
||||
* Tue Sep 14 2021 Sahana Prasad <sahana@redhat.com> - 4.17.0-1.1
|
||||
- Rebuilt with OpenSSL 3.0.0
|
||||
|
||||
* Fri Sep 03 2021 Panu Matilainen <pmatilai@redhat.com> - 4.17.0-1
|
||||
- Rebase to 4.17.0 final (https://rpm.org/wiki/Releases/4.17.0)
|
||||
|
||||
* Thu Aug 19 2021 Panu Matilainen <pmatilai@redhat.com> - 4.17.0-0.rc1.1
|
||||
- Rebase to 4.17.0 rc1
|
||||
|
||||
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 4.17.0-0.beta1.0.2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
||||
|
||||
* Tue Jun 22 2021 Panu Matilainen <pmatilai@redhat.com> - 4.17.0-0.beta1.1
|
||||
- Rebase to 4.17.0 beta1
|
||||
- Add back /usr/lib/rpm/find-debuginfo.sh as a compat symlink
|
||||
- Add temporary buildrequire on pandoc due to makefile bugs in beta1
|
||||
|
||||
* Wed Jun 02 2021 Python Maint <python-maint@redhat.com> - 4.16.90-0.git15395.8.1
|
||||
- Rebuilt for Python 3.10
|
||||
|
||||
* Mon May 17 2021 Panu Matilainen <pmatilai@redhat.com> - 4.16.90-0.git15395.8
|
||||
- Switch to external debugedit
|
||||
|
||||
* Mon May 17 2021 Panu Matilainen <pmatilai@redhat.com> - 4.16.90-0.git15395.7
|
||||
- Handle different find-debuginfo.sh location with external debugedit
|
||||
|
||||
* Fri May 07 2021 Panu Matilainen <pmatilai@redhat.com> - 4.16.90-0.git15395.6
|
||||
- Fix regression causing a crash on Lua state reset (#1958095)
|
||||
|
||||
* Thu Apr 29 2021 Panu Matilainen <pmatilai@redhat.com> - 4.16.90-0.git15395.5
|
||||
- Proper fix for comments affecting macro file parsing (#1953910)
|
||||
|
||||
* Tue Apr 27 2021 Panu Matilainen <pmatilai@redhat.com> - 4.16.90-0.git15395.4
|
||||
- Enable fapolicyd plugin build
|
||||
|
||||
* Tue Apr 27 2021 Panu Matilainen <pmatilai@redhat.com> - 4.16.90-0.git15395.3
|
||||
- Temporarily revert macro file loading fix due to regression #1953910
|
||||
|
||||
* Mon Apr 26 2021 Panu Matilainen <pmatilai@redhat.com> - 4.16.90-0.git15395.2
|
||||
- Add a bcond to build with external debugedit
|
||||
|
||||
* Mon Apr 26 2021 Panu Matilainen <pmatilai@redhat.com> - 4.16.90-0.git15395.1
|
||||
- Rebase to rpm 4.17.0 alpha (https://rpm.org/wiki/Releases/4.17.0)
|
||||
- Drop a local hack for a cosmetic Fedora 22 era rpm2cpio issue
|
||||
- Drop BDB support leftovers from the spec
|
||||
- Add build conditional for fsverity plugin
|
||||
|
||||
* Mon Mar 22 2021 Panu Matilainen <pmatilai@redhat.com> - 4.16.1.3-1
|
||||
- Rebase to rpm 4.16.1.3 (https://rpm.org/wiki/Releases/4.16.1.3)
|
||||
|
||||
* Wed Feb 03 2021 Panu Matilainen <pmatilai@redhat.com> - 4.16.1.2-6
|
||||
- Drop support for read-write Berkeley DB format (#1787311)
|
||||
|
||||
* Wed Feb 03 2021 Panu Matilainen <pmatilai@redhat.com> - 4.16.1.2-5
|
||||
- Make with/without bdb build option actually work
|
||||
- Clean up unpackaged /var/tmp from the build root
|
||||
|
||||
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 4.16.1.2-4.1
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
||||
|
||||
* Fri Jan 22 2021 Mark Wielaard <mjw@fedoraproject.org> - 4.16.1.2-4
|
||||
- Fix edit_attributes_str_comp_dir in Patch916 (#1919107)
|
||||
|
||||
* Tue Jan 19 2021 Jeff Law <law@redhat.com> - 4.16.1.2-3
|
||||
- Fix typo in test for F33 or newer
|
||||
|
||||
* Tue Jan 19 2021 Mark Wielaard <mjw@fedoraproject.org> - 4.16.1.2-2
|
||||
- Add debugedit DWARF5 support
|
||||
|
||||
* Wed Dec 16 2020 Panu Matilainen <pmatilai@redhat.com> - 4.16.1.2-1
|
||||
- Rebase to rpm 4.16.1.2 (http://rpm.org/wiki/Releases/4.16.1.2)
|
||||
- Add a spec safeguard for accidental soname bumps
|
||||
|
||||
* Wed Dec 16 2020 Panu Matilainen <pmatilai@redhat.com> - 4.16.1.1-1
|
||||
- Rebase to rpm 4.16.1.1 (http://rpm.org/wiki/Releases/4.16.1.1)
|
||||
|
||||
* Thu Dec 10 2020 Panu Matilainen <pmatilai@redhat.com> - 4.16.1-1
|
||||
- Rebase to rpm 4.16.1 (http://rpm.org/wiki/Releases/4.16.1)
|
||||
|
||||
* Mon Nov 30 2020 Panu Matilainen <pmatilai@redhat.com> - 4.16.0-5
|
||||
- Only disable test-suite where it's actually broken
|
||||
|
||||
* Mon Nov 30 2020 Panu Matilainen <pmatilai@redhat.com> - 4.16.0-4
|
||||
- Fix BDB crashing on failed open attempts (#1902395, #1898299, #1900407)
|
||||
- Fix unnecessary double failure on lazy keyring open
|
||||
|
||||
* Wed Oct 28 2020 Panu Matilainen <pmatilai@redhat.com> - 4.16.0-3
|
||||
- Issue deprecation warning when creating BDB databases (#1787311)
|
||||
- Temporarily disable test-suite due to massive fakechroot breakage
|
||||
|
||||
* Mon Oct 05 2020 Panu Matilainen <pmatilai@redhat.com> - 4.16.0-2
|
||||
- Clean up after test-suite which leaves a read-only tree behind
|
||||
|
||||
* Wed Sep 30 2020 Panu Matilainen <pmatilai@redhat.com> - 4.16.0-1
|
||||
- Rebase to 4.16.0 final (https://rpm.org/wiki/Releases/4.16.0)
|
||||
|
||||
* Mon Aug 31 2020 Panu Matilainen <pmatilai@redhat.com> - 4.16.0-0.rc1.1
|
||||
- Rebase to 4.16.0-rc1
|
||||
- Run test-suite in parallel
|
||||
|
||||
* Sat Aug 01 2020 Fedora Release Engineering <releng@fedoraproject.org> - 4.16.0-0.beta3.2.3
|
||||
- Second attempt - Rebuilt for
|
||||
https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
||||
|
@ -1,18 +0,0 @@
|
||||
[Unit]
|
||||
Description=RPM database migration to /usr
|
||||
ConditionPathExists=/var/lib/rpm/.migratedb
|
||||
|
||||
# This should run before any daemons that may open the rpmdb
|
||||
DefaultDependencies=no
|
||||
After=sysinit.target
|
||||
Before=basic.target shutdown.target
|
||||
Conflicts=shutdown.target
|
||||
# In case /var is remote-mounted
|
||||
RequiresMountsFor=/var
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
ExecStart=/usr/lib/rpm/rpmdb_migrate
|
||||
|
||||
[Install]
|
||||
WantedBy=basic.target
|
@ -1,19 +1,19 @@
|
||||
[Unit]
|
||||
Description=RPM database rebuild
|
||||
ConditionPathExists=/usr/lib/sysimage/rpm/.rebuilddb
|
||||
ConditionPathExists=/var/lib/rpm/.rebuilddb
|
||||
|
||||
# This should run before any daemons that may open the rpmdb
|
||||
DefaultDependencies=no
|
||||
After=sysinit.target
|
||||
Before=basic.target shutdown.target
|
||||
Conflicts=shutdown.target
|
||||
# In case /usr is remote-mounted
|
||||
RequiresMountsFor=/usr
|
||||
# In case /var is remote-mounted
|
||||
RequiresMountsFor=/var
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
ExecStart=/usr/bin/rpmdb --rebuilddb
|
||||
ExecStartPost=rm -f /usr/lib/sysimage/rpm/.rebuilddb
|
||||
ExecStartPost=rm -f /var/lib/rpm/.rebuilddb
|
||||
|
||||
[Install]
|
||||
WantedBy=basic.target
|
||||
|
@ -1,40 +0,0 @@
|
||||
#!/bin/bash
|
||||
# Script to migrate rpmdb from /var/lib/rpm to new rpmdb path in /usr
|
||||
|
||||
# Copyright (C) 2022 Neal Gompa <ngompa@fedoraproject.org>.
|
||||
#
|
||||
# Fedora-License-Identifier: GPLv2+
|
||||
# SPDX-2.0-License-Identifier: GPL-2.0+
|
||||
# SPDX-3.0-License-Identifier: GPL-2.0-or-later
|
||||
#
|
||||
# This program is free software.
|
||||
# For more information on the license, see COPYING or
|
||||
# <https://www.gnu.org/licenses/gpl-2.0.en.html>.
|
||||
# For more information on free software, see
|
||||
# <https://www.gnu.org/philosophy/free-sw.en.html>.
|
||||
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
# Script to migrate the rpmdb to /usr
|
||||
rpmdb_path="$(rpm --eval '%_dbpath')"
|
||||
rpmdb_path_old="/var/lib/rpm"
|
||||
rpmdb_path_new="${rpmdb_path}"
|
||||
|
||||
|
||||
if [ "${rpmdb_path}" = "${rpmdb_path_old}" ]; then
|
||||
echo "The rpmdb path is still in /var, exiting!"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if [ -L "${rpmdb_path_old}" ]; then
|
||||
echo "The rpmdb has already been migrated, exiting!"
|
||||
rm -v "${rpmdb_path_old}/.migratedb"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
rpm --verbose --rebuilddb
|
||||
|
||||
rm -rfv ${rpmdb_path_old}
|
||||
|
||||
ln -srv ${rpmdb_path_new} ${rpmdb_path_old}
|
2
sources
2
sources
@ -1 +1 @@
|
||||
SHA512 (rpm-4.18.2.tar.bz2) = 1544efef04190299ac988f52c4f6e58ba9ff8943fe1f3e1353fb2bf4d73248935dac65a8a73b32c5d2d96f6875ce25c5196a78ed645d9504465cf1e89e0a268a
|
||||
SHA512 (rpm-4.16.0-beta3.tar.bz2) = 20efa638a7fe85b1b4d3d42fb07172c20a1f3c62024a29e4184b67a2d52ff3f94a186f178e9a5bfee9bf6c826a1023995d970b5c0ddaffe8b61fd2c888b44032
|
||||
|
@ -1,26 +0,0 @@
|
||||
---
|
||||
- hosts: localhost
|
||||
tags:
|
||||
- classic
|
||||
tasks:
|
||||
- dnf:
|
||||
name: "*"
|
||||
state: latest
|
||||
|
||||
- hosts: localhost
|
||||
roles:
|
||||
- role: standard-test-basic
|
||||
tags:
|
||||
- classic
|
||||
repositories:
|
||||
- repo: "https://src.fedoraproject.org/rpms/pyproject-rpm-macros.git"
|
||||
dest: "pyproject-rpm-macros"
|
||||
tests:
|
||||
# regression test for https://bugzilla.redhat.com/show_bug.cgi?id=2078744
|
||||
- pyproject_rpm_macros:
|
||||
dir: pyproject-rpm-macros/tests
|
||||
run: ./mocktest.sh python-pluggy
|
||||
required_packages:
|
||||
- mock
|
||||
- rpmdevtools
|
||||
- rpm-build
|
Loading…
Reference in New Issue
Block a user