From c46b9cc072334a92cb76f270be747ece41d19dc1 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Jan=20R=C4=99korajski?= Date: Sun, 7 Nov 2021 22:29:21 +0100 Subject: [PATCH] - started update to 4.17 --- allow-at-in-ver-rel.patch | 8 +- default-patch-flags.patch | 4 +- missing-macros.patch | 16 +- no-exe-for-elf-debuginfo.patch | 10 - no-exeonly-for-elf-reqprov.patch | 53 ---- pkgconfig.patch | 4 +- rpm-debuginfo.patch | 14 - rpm-man_pl.patch | 10 +- rpm-perl-macros.patch | 4 +- rpm-pl.po-update.patch | 456 ------------------------------- rpm.spec | 107 +++++--- sqlite-db-backend.patch | 11 - x32.patch | 31 --- 13 files changed, 93 insertions(+), 635 deletions(-) delete mode 100644 no-exe-for-elf-debuginfo.patch delete mode 100644 no-exeonly-for-elf-reqprov.patch delete mode 100644 rpm-pl.po-update.patch delete mode 100644 sqlite-db-backend.patch diff --git a/allow-at-in-ver-rel.patch b/allow-at-in-ver-rel.patch index 66964a6..06241f8 100644 --- a/allow-at-in-ver-rel.patch +++ b/allow-at-in-ver-rel.patch @@ -3,9 +3,9 @@ @@ -18,7 +18,7 @@ #undef HTDATATYPE - #define WHITELIST_NAME ".-_+%{}" --#define WHITELIST_VERREL "._+%{}~^" -+#define WHITELIST_VERREL "._+%{}~^@" - #define WHITELIST_EVR WHITELIST_VERREL "-:" + #define ALLOWED_CHARS_NAME ".-_+%{}" +-#define ALLOWED_CHARS_VERREL "._+%{}~^" ++#define ALLOWED_CHARS_VERREL "._+%{}~^@" + #define ALLOWED_CHARS_EVR ALLOWED_CHARS_VERREL "-:" #define LEN_AND_STR(_tag) (sizeof(_tag)-1), (_tag) diff --git a/default-patch-flags.patch b/default-patch-flags.patch index df4b8a8..8e872c3 100644 --- a/default-patch-flags.patch +++ b/default-patch-flags.patch @@ -5,8 +5,8 @@ # Default patch flags -#%_default_patch_flags -s --%_default_patch_flags --no-backup-if-mismatch -+%_default_patch_flags -s +-%_default_patch_flags --no-backup-if-mismatch -f ++%_default_patch_flags -s -f #============================================================================== # ---- Build configuration macros. diff --git a/missing-macros.patch b/missing-macros.patch index ba9620d..055f9a0 100644 --- a/missing-macros.patch +++ b/missing-macros.patch @@ -7,7 +7,7 @@ +AC_PATH_PROG(__BASH, bash, /bin/bash, $MYPATH) AC_PATH_PROG(__BZIP2, bzip2, /usr/bin/bzip2, $MYPATH) AC_PATH_PROG(__CAT, cat, /bin/cat, $MYPATH) - AC_PATH_PROG(__CHGRP, chgrp, /bin/chgrp, $MYPATH) + AC_PATH_PROG(__CHMOD, chmod, /bin/chmod, $MYPATH) @@ -91,6 +92,7 @@ AC_PATH_PROG(__UNZIP, unzip, /usr/bin/unzip, $MYPATH) AC_PATH_PROG(__ID, id, /usr/bin/id, $MYPATH) @@ -17,13 +17,13 @@ AC_PATH_PROG(__LZIP, lzip, /usr/bin/lzip, $MYPATH) AC_PATH_PROG(__XZ, xz, /usr/bin/xz, $MYPATH) @@ -104,6 +106,7 @@ - AC_PATH_PROG(__RSH, rsh, /usr/bin/rsh, $MYPATH) + AC_PATH_PROG(__PATCH, patch, /usr/bin/patch, $MYPATH) + AC_PATH_PROG(__RM, rm, /bin/rm, $MYPATH) AC_PATH_PROG(__SED, sed, /bin/sed, $MYPATH) - AC_PATH_PROG(__SEMODULE, semodule, /usr/bin/semodule, $MYPATH) +AC_PATH_PROG(__SH, sh, /bin/sh, $MYPATH) - AC_PATH_PROG(__SSH, ssh, /usr/bin/ssh, $MYPATH) AC_PATH_PROG(__TAR, tar, /bin/tar, $MYPATH) AC_PATH_PROG(__ZSTD, zstd, /usr/bin/zstd, $MYPATH) + --- rpm-4.16.0/macros.in~ 2020-11-21 19:41:19.000000000 +0100 +++ rpm-4.16.0/macros.in 2020-11-22 19:45:24.182620411 +0100 @@ -6,6 +6,7 @@ @@ -41,7 +41,7 @@ +%__bash @__BASH@ %__bzip2 @__BZIP2@ %__cat @__CAT@ - %__chgrp @__CHGRP@ + %__chmod @__CHMOD@ @@ -39,6 +40,7 @@ %__id @__ID@ %__id_u %{__id} -u @@ -51,10 +51,10 @@ %__lrzip @__LRZIP@ %__lzip @__LZIP@ @@ -54,6 +57,7 @@ - %__rsh @__RSH@ + %__patch @__PATCH@ + %__rm @__RM@ %__sed @__SED@ - %__semodule @__SEMODULE@ +%__sh @__SH@ - %__ssh @__SSH@ %__tar @__TAR@ %__unzip @__UNZIP@ + %__zstd @__ZSTD@ diff --git a/no-exe-for-elf-debuginfo.patch b/no-exe-for-elf-debuginfo.patch deleted file mode 100644 index 70d37cd..0000000 --- a/no-exe-for-elf-debuginfo.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- rpm-4.16.1.3/scripts/find-debuginfo.sh.orig 2021-11-05 00:19:27.239390489 +0100 -+++ rpm-4.16.1.3/scripts/find-debuginfo.sh 2021-11-05 00:21:27.102128386 +0100 -@@ -352,7 +352,6 @@ - # Build a list of unstripped ELF files and their hardlinks - touch "$temp/primary" - find "$RPM_BUILD_ROOT" ! -path "${debugdir}/*.debug" -type f \ -- \( -perm -0100 -or -perm -0010 -or -perm -0001 \) \ - -print | LC_ALL=C sort | - file -N -f - | sed -n -e 's/^\(.*\):[ ]*.*ELF.*, not stripped.*/\1/p' | - xargs --no-run-if-empty stat -c '%h %D_%i %n' | diff --git a/no-exeonly-for-elf-reqprov.patch b/no-exeonly-for-elf-reqprov.patch deleted file mode 100644 index 3eb4f00..0000000 --- a/no-exeonly-for-elf-reqprov.patch +++ /dev/null @@ -1,53 +0,0 @@ -* Provides for libraries are not populated if %install does not set - executable bit on ELF file. One such notable example is libgcc_s - installed with mode 644 by `make install`: - -rpm5: - -$ rpm -q --provides libgcc | grep libgcc_s -libgcc_s.so.1 -libgcc_s.so.1(GCC_3.0) -libgcc_s.so.1(GCC_3.3) -libgcc_s.so.1(GCC_3.3.1) -libgcc_s.so.1(GCC_3.4) -libgcc_s.so.1(GCC_3.4.2) -libgcc_s.so.1(GCC_4.0.0) -libgcc_s.so.1(GCC_4.2.0) -libgcc_s.so.1(GCC_4.3.0) -libgcc_s.so.1(GCC_4.4.0) -libgcc_s.so.1(GCC_4.5.0) -libgcc_s.so.1(GCC_4.7.0) -libgcc_s.so.1(GCC_4.8.0) -libgcc_s.so.1(GCC_7.0.0) -libgcc_s.so.1(GLIBC_2.0) -libgcc_s.so.1()(64bit) -libgcc_s.so.1(GCC_3.0)(64bit) -libgcc_s.so.1(GCC_3.3)(64bit) -libgcc_s.so.1(GCC_3.3.1)(64bit) -libgcc_s.so.1(GCC_3.4)(64bit) -libgcc_s.so.1(GCC_3.4.2)(64bit) -libgcc_s.so.1(GCC_3.4.4)(64bit) -libgcc_s.so.1(GCC_4.0.0)(64bit) -libgcc_s.so.1(GCC_4.2.0)(64bit) -libgcc_s.so.1(GCC_4.3.0)(64bit) -libgcc_s.so.1(GCC_4.7.0)(64bit) -libgcc_s.so.1(GCC_4.8.0)(64bit) -libgcc_s.so.1(GCC_7.0.0)(64bit) - -rpm4: - -$ rpm -q --provides -p libgcc-10.2.0-1.x86_64.rpm | grep libgcc_s -(empty) - -Aa a workaround we could remove "exeonly" from %__elf_flags in -/usr/lib/rpm/fileattrs/elf.attr but ideally RPM should not look at -actual file mode on disk but rather on mode configured in %files. - ---- rpm-4.16.0/fileattrs/elf.attr~ 2020-05-28 12:04:25.000000000 +0200 -+++ rpm-4.16.0/fileattrs/elf.attr 2020-11-21 19:35:52.405659895 +0100 -@@ -1,4 +1,4 @@ - %__elf_provides %{_rpmconfigdir}/elfdeps --provides %{?__filter_GLIBC_PRIVATE:--filter-private} - %__elf_requires %{_rpmconfigdir}/elfdeps --requires %{?__filter_GLIBC_PRIVATE:--filter-private} - %__elf_magic ^(setuid,? )?(setgid,? )?(sticky )?ELF (32|64)-bit.*$ --%__elf_flags exeonly -+#__elf_flags exeonly diff --git a/pkgconfig.patch b/pkgconfig.patch index d4f39e6..25be042 100644 --- a/pkgconfig.patch +++ b/pkgconfig.patch @@ -1,11 +1,11 @@ --- rpm-4.16.0/rpm.pc.in.orig 2020-05-28 12:04:25.000000000 +0200 +++ rpm-4.16.0/rpm.pc.in 2020-10-18 23:32:46.339081527 +0200 @@ -11,6 +11,6 @@ - URL: http://rpm.org + Requires: popt Requires.private: @ZSTD_REQUIRES@ # Conflicts: -Cflags: -I${includedir} -Libs: -L${libdir} -lrpm -lrpmio +Cflags: -I${includedir}/rpm +Libs: -L${libdir} -lrpm -lrpmio -lrpmbuild - Libs.private: -lpopt -lrt -lpthread @WITH_LZMA_LIB@ @WITH_DB_LIB@ @WITH_BZ2_LIB@ @WITH_ZLIB_LIB@ @WITH_BEECRYPT_LIB@ @WITH_NSS_LIB@ @LUA_LIBS@ + Libs.private: -lpopt -lrt -lpthread @WITH_LZMA_LIB@ @WITH_BZ2_LIB@ @WITH_ZLIB_LIB@ @LUA_LIBS@ diff --git a/rpm-debuginfo.patch b/rpm-debuginfo.patch index fbe2dfc..abd920e 100644 --- a/rpm-debuginfo.patch +++ b/rpm-debuginfo.patch @@ -1,17 +1,3 @@ ---- rpm-5.3.1/scripts/find-debuginfo.sh.wiget 2009-09-10 03:52:13.000000000 +0200 -+++ rpm-5.3.1/scripts/find-debuginfo.sh 2010-05-30 16:53:33.275994510 +0200 -@@ -254,7 +254,10 @@ strip_to_debug() - $strip_glibs && case "$(file -bi "$2")" in - application/x-sharedlib*) g=-g ;; - esac -- eu-strip --remove-comment $r $g ${keep_remove_args} -f "$1" "$2" || exit -+ local t=$(mktemp "/tmp/rpm.stripped.XXXXXX") -+ objcopy --compress-debug-sections "$2" || exit -+ eu-strip --remove-comment $r -f "$1" "$2" -o "$t" || exit -+ rm -f "$t" - chmod 444 "$1" || exit - } - --- rpm-4.16.1.3/macros.in.orig 2021-03-24 09:50:21.000000000 +0100 +++ rpm-4.16.1.3/macros.in 2021-03-24 10:05:10.129698408 +0100 @@ -534,7 +534,7 @@ diff --git a/rpm-man_pl.patch b/rpm-man_pl.patch index c9e03ea..8ed712f 100644 --- a/rpm-man_pl.patch +++ b/rpm-man_pl.patch @@ -1,10 +1,10 @@ ---- rpm-4.16.0/doc/pl/rpm.8.orig 2020-05-28 12:04:25.022136604 +0200 -+++ rpm-4.16.0/doc/pl/rpm.8 2020-10-13 08:06:11.442087617 +0200 +--- rpm-4.16.0/docs/man/pl/rpm.8.orig 2020-05-28 12:04:25.022136604 +0200 ++++ rpm-4.16.0/docs/man/pl/rpm.8 2020-10-13 08:06:11.442087617 +0200 @@ -318,6 +318,7 @@ - Instaluje pakiety nawet jeśli niektóre z nich są już zainstalowane na tym - systemie. + Instaluje pakiety nawet je\[u015B]li niekt\['o]re z nich s\[u0105] + ju\[u017C] zainstalowane na tym systemie. .TP +\fB--test\fR Nie instaluje pakietu, po prostu sprawdza i raportuje potencjalne konflikty. - .SS "OPCJE USUWANIA" + .SS OPCJE USUWANIA diff --git a/rpm-perl-macros.patch b/rpm-perl-macros.patch index 1d09638..bd04c59 100644 --- a/rpm-perl-macros.patch +++ b/rpm-perl-macros.patch @@ -7,8 +7,8 @@ - po/Makefile.in scripts/Makefile fileattrs/Makefile + po/Makefile.in scripts/Makefile scripts/perl.req scripts/perl.prov fileattrs/Makefile misc/Makefile - doc/Makefile - python/Makefile + docs/Makefile + docs/man/Makefile --- rpm-5.3.1/scripts/perl.req.wiget 2008-10-26 10:50:53.000000000 +0100 +++ rpm-5.3.1/scripts/perl.req 2010-05-30 16:35:36.999438206 +0200 @@ -45,7 +45,11 @@ diff --git a/rpm-pl.po-update.patch b/rpm-pl.po-update.patch deleted file mode 100644 index a806287..0000000 --- a/rpm-pl.po-update.patch +++ /dev/null @@ -1,456 +0,0 @@ ---- rpm-4.16.1.3/po/pl.po.orig 2021-07-10 10:24:51.698850580 +0200 -+++ rpm-4.16.1.3/po/pl.po 2021-07-12 16:17:10.198195581 +0200 -@@ -376,9 +376,8 @@ msgid "verify database files" - msgstr "sprawdzenie plików bazy danych" - - #: rpmdb.c:29 --#, fuzzy - msgid "salvage database" --msgstr "zainicjowanie bazy danych" -+msgstr "odzyskanie bazy danych" - - #: rpmdb.c:31 - msgid "export database to stdout header list" -@@ -589,9 +588,8 @@ msgid "delete package signatures" - msgstr "usunięcie podpisów pakietów" - - #: rpmsign.c:37 --#, fuzzy - msgid "create rpm v3 header+payload signatures" --msgstr "bez sprawdzania podpisu nagłówka+danych" -+msgstr "utworzenie podpisów nagłówka+danych rpm v3" - - #: rpmsign.c:41 - msgid "sign package(s) files" -@@ -808,9 +806,9 @@ msgid "Symlink points to BuildRoot: %s - - msgstr "Dowiązanie symboliczne wskazuje na BuildRoot: %s → %s\n" - - #: build/files.c:1335 --#, fuzzy, c-format -+#, c-format - msgid "Illegal character (0x%x) in filename: %s\n" --msgstr "Niedozwolony znak „%c” (0x%x)" -+msgstr "Niedozwolony znak (0x%x) w nazwie pliku: %s\n" - - #: build/files.c:1372 - #, c-format -@@ -833,9 +831,9 @@ msgid "Not a directory: %s\n" - msgstr "Nie jest katalogiem: %s\n" - - #: build/files.c:1592 --#, fuzzy, c-format -+#, c-format - msgid "Can't read content of file: %s\n" --msgstr "Odczytanie pliku polityki się nie powiodło: %s\n" -+msgstr "Nie można odczytać zawartości pliku: %s\n" - - #: build/files.c:1633 - #, c-format -@@ -933,14 +931,14 @@ msgstr "" - "regularnego.\n" - - #: build/files.c:2237 --#, fuzzy, c-format -+#, c-format - msgid "Could not open %s file %s: %m\n" --msgstr "Nie można otworzyć pliku %s w %%files: %m\n" -+msgstr "Nie można otworzyć pliku %s %s: %m\n" - - #: build/files.c:2262 --#, fuzzy, c-format -+#, c-format - msgid "Empty %s file %s\n" --msgstr "Pusty plik %s w %%files\n" -+msgstr "Pusty plik %s %s\n" - - #: build/files.c:2307 - #, c-format -@@ -991,9 +989,9 @@ msgstr "" - "%s" - - #: build/files.c:2878 --#, fuzzy, c-format -+#, c-format - msgid "package %s already exists\n" --msgstr "%d. wiersz: %s: pakiet %s już istnieje\n" -+msgstr "pakiet %s już istnieje\n" - - #: build/files.c:2942 - #, c-format -@@ -1658,7 +1656,7 @@ msgstr "Ignorowanie nieprawidłowego wyr - #: build/rpmfc.c:219 - #, c-format - msgid "%s: mime and magic supplied, only mime will be used\n" --msgstr "" -+msgstr "%s: przekazano mime i magic, użyte będzie tylko mime\n" - - #: build/rpmfc.c:290 - #, c-format -@@ -1816,55 +1814,51 @@ msgid "error(%d) allocating new package - msgstr "błąd(%d) podczas przydzielania nowej instancji pakietu\n" - - #: lib/backend/dbi.c:82 --#, fuzzy, c-format -+#, c-format - msgid "invalid %%_db_backend: %s\n" --msgstr "Nieprawidłowy token %s: %s\n" -+msgstr "nieprawidłowy %%_db_backend: %s\n" - - #: lib/backend/dbi.c:100 - #, c-format - msgid "Converting database from %s to %s backend\n" --msgstr "" -+msgstr "Konwersja bazy danych z backendu %s do %s\n" - - #: lib/backend/dbi.c:104 --#, fuzzy, c-format -+#, c-format - msgid "Found %s %s database while attempting %s backend: using %s backend.\n" --msgstr "" --"Odnaleziono bazę danych Packages BDB podczas próby użycia mechanizmu %s: " --"używanie mechanizmu bdb.\n" -+msgstr "Odnaleziono bazę danych %s %s podcza próby użycia backendu %s: używanie backendu %s.\n" - - #: lib/backend/ndb/glue.c:102 --#, fuzzy - msgid "Detected outdated index databases\n" --msgstr "nie można usunąć poprzedniej bazy danych w %s\n" -+msgstr "Wykryto nieaktualne bazy danych indeksów\n" - - #: lib/backend/ndb/glue.c:104 --#, fuzzy - msgid "Rebuilding outdated index databases\n" --msgstr "nie można usunąć poprzedniej bazy danych w %s\n" -+msgstr "Przebudowywanie nieaktualnych baz danych indeksów\n" - - #: lib/backend/ndb/rpmidx.c:204 - #, c-format - msgid "rpmidx: Version mismatch. Expected version: %u. Found version: %u\n" --msgstr "" -+msgstr "rpmidx: niezgodność wersji. Oczekiwano wersji: %u. Znaleziono wersję: %u\n" - - #: lib/backend/ndb/rpmpkg.c:126 - #, c-format - msgid "rpmpkg: Version mismatch. Expected version: %u. Found version: %u\n" --msgstr "" -+msgstr "rpmpkg: niezgodność wersji. Oczekiwano wersji: %u. Znaleziono wersję: %u\n" - - #: lib/backend/ndb/rpmpkg.c:500 - msgid "rpmpkg: detected non-zero blob, trying auto repair\n" --msgstr "" -+msgstr "rpmpkg: oczekiwano danych niezerowych, próba automatycznej naprawy\n" - - #: lib/backend/ndb/rpmxdb.c:241 - #, c-format - msgid "rpmxdb: Version mismatch. Expected version: %u. Found version: %u\n" --msgstr "" -+msgstr "rpmxdb: niezgodność wersji. Oczekiwano wersji: %u. Znaleziono wersję: %u\n" - - #: lib/backend/sqlite.c:157 --#, fuzzy, c-format -+#, c-format - msgid "Unable to open sqlite database %s: %s\n" --msgstr "Nie można otworzyć pliku spec %s: %s\n" -+msgstr "Nie można otworzyć bazy danych sqlite %s: %s\n" - - #: lib/depends.c:87 - #, c-format -@@ -2010,14 +2004,14 @@ msgid "region %d: tag number mismatch il - msgstr "region %d: numer znacznika się nie zgadza il %d ril %d dl %d rdl %d\n" - - #: lib/header.c:1919 --#, fuzzy, c-format -+#, c-format - msgid "hdr tags: BAD, no. of tags(%) out of range" --msgstr "znaczniki hdr: BŁĘDNE, liczba znaczników(%d) jest poza zakresem" -+msgstr "znaczniki hdr: BŁĘDNE, liczba znaczników(%) jest poza zakresem" - - #: lib/header.c:1923 --#, fuzzy, c-format -+#, c-format - msgid "hdr data: BAD, no. of bytes(%) out of range" --msgstr "dane hdr: BŁĘDNE, liczba bajtów(%d) jest poza zakresem" -+msgstr "dane hdr: BŁĘDNE, liczba bajtów(%) jest poza zakresem" - - #: lib/header.c:1945 - #, c-format -@@ -2043,9 +2037,8 @@ msgid "signature " - msgstr "podpis " - - #: lib/header.c:2001 --#, fuzzy - msgid "hdr length: BAD" --msgstr "load hdr: BŁĘDNE" -+msgstr "długość hdr: BŁĘDNA" - - #: lib/header.c:2019 - #, c-format -@@ -2093,7 +2086,7 @@ msgstr "nieoczekiwane }" - - #: lib/headerfmt.c:473 - msgid "escaped char expected after \\" --msgstr "" -+msgstr "oczekiwano chronionego znaku po \\" - - #: lib/headerfmt.c:515 - msgid "? expected in expression" -@@ -2124,9 +2117,9 @@ msgid "array iterator used with differen - msgstr "iterator tablicy użyty na tablicach o różnych rozmiarach" - - #: lib/package.c:306 --#, fuzzy, c-format -+#, c-format - msgid "RPM v3 packages are deprecated: %s\n" --msgstr "%d. wiersz: %s jest przestarzałe: %s\n" -+msgstr "Pakiety RPM v3 są przestarzałe: %s\n" - - #: lib/poptALL.c:142 rpmio/macro.c:1282 - #, c-format -@@ -2322,9 +2315,8 @@ msgid "+" - msgstr "+" - - #: lib/poptI.c:138 --#, fuzzy - msgid "do not install artifacts" --msgstr "bez instalacji dokumentacji" -+msgstr "bez instalacji artefaktów" - - #: lib/poptI.c:141 lib/poptI.c:181 - msgid "do not install configuration files" -@@ -3393,9 +3385,9 @@ msgid "package %s is already installed" - msgstr "pakiet %s jest już zainstalowany" - - #: lib/rpmprob.c:125 --#, fuzzy, c-format -+#, c-format - msgid "package %s is not installed" --msgstr "pakiet %s nie jest zainstalowany\n" -+msgstr "pakiet %s nie jest zainstalowany" - - #: lib/rpmprob.c:128 - #, c-format -@@ -3418,15 +3410,15 @@ msgid "package %s (which is newer than % - msgstr "pakiet %s (nowszy niż %s) jest już zainstalowany" - - #: lib/rpmprob.c:148 --#, fuzzy, c-format -+#, c-format - msgid "" - "installing package %s needs %%cB more space on the %s filesystem" --msgstr "instalowanie pakietu %s wymaga %%c B w systemie plików %s" -+msgstr "instalowanie pakietu %s wymaga %%cB więcej miejsca w systemie plików %s" - - #: lib/rpmprob.c:158 --#, fuzzy, c-format -+#, c-format - msgid "installing package %s needs % more inodes on the %s filesystem" --msgstr "instalowanie pakietu %s wymaga % i-węzłów w systemie plików %s" -+msgstr "instalowanie pakietu %s wymaga % więcej i-węzłów w systemie plików %s" - - #: lib/rpmprob.c:162 - #, c-format -@@ -3670,9 +3662,9 @@ msgid "%s: tag %u: invalid hex" - msgstr "%s znacznik %u: nieprawidłowa liczba szesnastkowa" - - #: lib/rpmvs.c:264 lib/rpmvs.c:277 --#, fuzzy, c-format -+#, c-format - msgid "%s%s%s %s" --msgstr "%s%s %s" -+msgstr "%s%s%s %s" - - #: lib/rpmvs.c:268 - msgid "digest" -@@ -3762,102 +3754,87 @@ msgstr "" - "Zarejestrowanie programu obsługującego rozdzielanie się nie powiodło: %m\n" - - #: rpmio/expression.c:347 --#, fuzzy - msgid "syntax error while parsing ==" --msgstr "błąd składni podczas przetwarzania ==\n" -+msgstr "błąd składni podczas przetwarzania ==" - - #: rpmio/expression.c:377 --#, fuzzy - msgid "syntax error while parsing &&" --msgstr "błąd składni podczas przetwarzania &&\n" -+msgstr "błąd składni podczas przetwarzania &&" - - #: rpmio/expression.c:386 --#, fuzzy - msgid "syntax error while parsing ||" --msgstr "błąd składni podczas przetwarzania ||\n" -+msgstr "błąd składni podczas przetwarzania ||" - - #: rpmio/expression.c:414 - msgid "macro expansion returned a bare word, please use \"...\"" --msgstr "" -+msgstr "rozwinięcie makra zwróciło gołe słowo, proszę używać \"...\"" - - #: rpmio/expression.c:416 - msgid "macro expansion did not return an integer" --msgstr "" -+msgstr "rozwinięcie makra nie zwróciło liczby" - - #: rpmio/expression.c:417 --#, fuzzy, c-format -+#, c-format - msgid "expanded string: %s\n" --msgstr "%d. wiersz: %s w: %s\n" -+msgstr "rozwinięty ciąg: %s\n" - - #: rpmio/expression.c:446 --#, fuzzy - msgid "unterminated string in expression" --msgstr "oczekiwano { po ? w wyrażeniu" -+msgstr "niezakończony ciąg w rozwinięciu" - - #: rpmio/expression.c:460 --#, fuzzy - msgid "invalid version" --msgstr "(nieprawidłowy typ)" -+msgstr "nieprawidłowa wersja" - - #: rpmio/expression.c:465 - msgid "bare words are no longer supported, please use \"...\"" --msgstr "" -+msgstr "gołe słowa nie są już obsługiwane, proszę używać \"...\"" - - #: rpmio/expression.c:469 --#, fuzzy - msgid "parse error in expression" --msgstr "błąd przetwarzania w wyrażeniu\n" -+msgstr "błąd przetwarzania w wyrażeniu" - - #: rpmio/expression.c:507 --#, fuzzy - msgid "unmatched (" --msgstr "niesparowane (\n" -+msgstr "niesparowane (" - - #: rpmio/expression.c:530 --#, fuzzy - msgid "- only on numbers" --msgstr "- tylko na liczbach\n" -+msgstr "- tylko na liczbach" - - #: rpmio/expression.c:549 --#, fuzzy - msgid "unexpected end of expression" --msgstr "oczekiwano | na końcu wyrażenia" -+msgstr "nieoczekiwany koniec wyrażenia" - - #: rpmio/expression.c:553 rpmio/expression.c:843 rpmio/expression.c:897 - #: rpmio/expression.c:934 --#, fuzzy - msgid "syntax error in expression" --msgstr "błąd składni w wyrażeniu\n" -+msgstr "błąd składni w wyrażeniu" - - #: rpmio/expression.c:594 rpmio/expression.c:656 rpmio/expression.c:722 - #: rpmio/expression.c:799 rpmio/expression.c:858 --#, fuzzy - msgid "types must match" --msgstr "typy muszą się zgadzać\n" -+msgstr "typy muszą się zgadzać" - - #: rpmio/expression.c:604 - msgid "division by zero" --msgstr "" -+msgstr "dzielenie przez zero" - - #: rpmio/expression.c:612 --#, fuzzy - msgid "* and / not supported for versions" --msgstr "* / nie są obsługiwane dla ciągów\n" -+msgstr "* i / nie są obsługiwane dla wersji" - - #: rpmio/expression.c:615 --#, fuzzy - msgid "* and / not supported for strings" --msgstr "* / nie są obsługiwane dla ciągów\n" -+msgstr "* i / nie są obsługiwane dla ciągów" - - #: rpmio/expression.c:668 --#, fuzzy - msgid "+ and - not supported for versions" --msgstr "* / nie są obsługiwane dla ciągów\n" -+msgstr "+ i - nie są obsługiwane dla wersji" - - #: rpmio/expression.c:674 --#, fuzzy - msgid "- not supported for strings" --msgstr "- nie jest obsługiwane dla ciągów\n" -+msgstr "- nie jest obsługiwane dla ciągów" - - #: rpmio/macro.c:348 - #, c-format -@@ -3870,9 +3847,9 @@ msgid "%3d<%*s(empty)\n" - msgstr "%3d<%*s(puste)\n" - - #: rpmio/macro.c:496 --#, fuzzy, c-format -+#, c-format - msgid "Failed to open shell expansion pipe for command: %s: %m \n" --msgstr "Otwarcie potoku tar się nie powiodło: %m\n" -+msgstr "Nie udało się otworzyć potoku rozwinięcia przez powłokę dla polecenia: %s: %m\n" - - #: rpmio/macro.c:634 - #, c-format -@@ -3922,7 +3899,7 @@ msgstr "Nieznana opcja %c w %s(%s)\n" - #: rpmio/macro.c:1027 - #, c-format - msgid "no such macro: '%s'\n" --msgstr "" -+msgstr "brak makra: „%s”\n" - - #: rpmio/macro.c:1390 - msgid "" -@@ -3943,14 +3920,12 @@ msgid "A %% is followed by an unparseabl - msgstr "Makro niemożliwe do przetworzenia po %%\n" - - #: rpmio/macro.c:1487 --#, fuzzy - msgid "argument expected" --msgstr "nieoczekiwane ]" -+msgstr "oczekiwano argumentu" - - #: rpmio/macro.c:1487 --#, fuzzy - msgid "unexpected argument" --msgstr "nieoczekiwane ]" -+msgstr "nieoczekiwany argument" - - #: rpmio/macro.c:1796 - #, c-format -@@ -4075,14 +4050,14 @@ msgid "Unsupported PGP pubkey algorithm - msgstr "Nieobsługiwany algorytm klucza publicznego PGP %u\n" - - #: sign/rpmgensig.c:191 --#, fuzzy, c-format -+#, c-format - msgid "Could not create pipe for signing: %m\n" --msgstr "Nie można utworzyć potoku dla %s: %m\n" -+msgstr "Nie udało się utworzyć potoku do podpisywania: %m\n" - - #: sign/rpmgensig.c:205 --#, fuzzy, c-format -+#, c-format - msgid "Could not set GPG_TTY to stdin: %m\n" --msgstr "Nie można otworzyć pliku %s w %%files: %m\n" -+msgstr "Nie udało się ustawić GPG_TTY na stdin: %m\n" - - #: sign/rpmgensig.c:220 - #, c-format -@@ -4090,9 +4065,9 @@ msgid "Could not exec %s: %s\n" - msgstr "Nie można wykonać %s: %s\n" - - #: sign/rpmgensig.c:231 --#, fuzzy, c-format -+#, c-format - msgid "Could not open pipe for writing: %m\n" --msgstr "Nie można utworzyć potoku dla %s: %m\n" -+msgstr "Nie udało się utworzyć potoku do zapisu: %m\n" - - #: sign/rpmgensig.c:246 - msgid "Could not write to pipe\n" diff --git a/rpm.spec b/rpm.spec index 231690b..6973ccf 100644 --- a/rpm.spec +++ b/rpm.spec @@ -11,10 +11,10 @@ %bcond_without audit # audit plugin %bcond_without selinux # SELinux plugin %bcond_without systemd # systemd inhibit plugin +%bcond_without fsverity # fsverity plugin -%define db_ver 5.3.28.0 %define popt_ver 1.15 -%define sover 9.1.3 +%define sover 9.2.0 %if "%{_rpmversion}" >= "4.12" && "%{_rpmversion}" < "5" %define with_recommends_tags 1 @@ -33,13 +33,13 @@ Summary(pt_BR.UTF-8): Gerenciador de pacotes RPM Summary(ru.UTF-8): Менеджер пакетов от RPM Summary(uk.UTF-8): Менеджер пакетів від RPM Name: rpm -Version: 4.16.1.3 -Release: 8 +Version: 4.17.0 +Release: 0.1 Epoch: 1 License: GPL v2 / LGPL v2.1 Group: Base -Source0: http://ftp.rpm.org/releases/rpm-4.16.x/%{name}-%{version}.tar.bz2 -# Source0-md5: 576277fafa5d0681a8a92c8716aca5f0 +Source0: http://ftp.rpm.org/releases/rpm-4.17.x/%{name}-%{version}.tar.bz2 +# Source0-md5: ba23b5d2403fd2f9163dfd0dadce1820 Source1: ftp://ftp.pld-linux.org/dists/th/PLD-3.0-Th-GPG-key.asc # Source1-md5: 23914bb49fafe7153cee87126d966461 Source2: macros.local @@ -83,34 +83,30 @@ Patch23: shortcircuited-deps.patch Patch24: cpuinfo-deps.patch Patch25: rpmio-read-proc-files.patch Patch26: allow-at-in-ver-rel.patch -Patch27: no-exeonly-for-elf-reqprov.patch Patch28: default-patch-flags.patch Patch29: %{name}-noarch_py_prov.patch Patch30: missing-ghost-terminate-build.patch Patch31: missing-doc-terminate-build.patch Patch32: noexpand.patch -Patch33: sqlite-db-backend.patch Patch34: skip-symlinks.patch Patch35: pl-po.patch Patch36: build-locale.patch -Patch37: %{name}-pl.po-update.patch -Patch38: no-exe-for-elf-debuginfo.patch URL: https://rpm.org/ BuildRequires: acl-devel %{?with_audit:BuildRequires: audit-libs-devel} BuildRequires: autoconf >= 2.63 BuildRequires: automake >= 1:1.10 BuildRequires: bzip2-devel >= 1.0.2-17 -BuildRequires: db-devel >= %{db_ver} -%{?with_systemd:BuildRequires: dbus-devel >= 1.3} +%{?with_plugins:BuildRequires: dbus-devel >= 1.3} BuildRequires: elfutils-devel >= 0.108 +%{?with_fsverity:BuildRequires: fsverity-utils-devel} BuildRequires: gettext-tools >= 0.19.2 %{?with_imaevm:BuildRequires: ima-evm-utils-devel >= 1.0} BuildRequires: libarchive-devel BuildRequires: libcap-devel -BuildRequires: libmagic-devel BuildRequires: libgcrypt-devel BuildRequires: libgomp-devel >= 6:4.5 +BuildRequires: libmagic-devel %{?with_selinux:BuildRequires: libselinux-devel >= 2.1.0} # needed only for AM_PROG_CXX used for CXX substitution in rpm.macros BuildRequires: libstdc++-devel @@ -140,10 +136,10 @@ BuildRequires: tetex-pdftex Requires(posttrans): coreutils Requires: %{name}-base = %{epoch}:%{version}-%{release} Requires: %{name}-lib = %{epoch}:%{version}-%{release} -Requires: rpm-pld-macros >= 2.002 Requires: FHS >= 3.0-2 Requires: libgcrypt Requires: popt >= %{popt_ver} +Requires: rpm-pld-macros >= 2.002 %if %{with recommends_tags} Recommends: rpm-plugin-audit Recommends: rpm-plugin-prioreset @@ -244,7 +240,6 @@ Zawiera on: Summary: RPMs library Summary(pl.UTF-8): Biblioteki RPM-a Group: Libraries -Requires: db >= %{db_ver} Requires: libmagic >= 1.15-2 Requires: popt >= %{popt_ver} Requires: sqlite3-libs >= 3.22.0 @@ -269,10 +264,9 @@ Summary(uk.UTF-8): Хедери та бібліотеки для програм, Group: Development/Libraries Requires: %{name}-lib = %{epoch}:%{version}-%{release} Requires: bzip2-devel -Requires: db-devel >= %{db_ver} Requires: elfutils-devel -Requires: libmagic-devel Requires: libgcrypt-devel +Requires: libmagic-devel %if %{with selinux} Requires: libselinux-devel Requires: libsemanage-devel @@ -359,7 +353,6 @@ Group: Applications/File Requires(pretrans): coreutils Requires(pretrans): findutils Requires: %{name}-utils = %{epoch}:%{version}-%{release} -Requires: rpm-pld-macros-build >= 1.744 Requires: /bin/id Requires: awk Requires: bzip2 @@ -370,6 +363,7 @@ Requires: elfutils Requires: file >= 4.17 Requires: fileutils Requires: findutils +Requires: rpm-pld-macros-build >= 1.744 %ifarch athlon Requires: gcc >= 3.0.3 %else @@ -536,8 +530,8 @@ This plugin adds support for enforcing and verifying IMA file signatures in an rpm. %description plugin-ima -l pl.UTF-8 -Ta wtyczka dodaje obsługę wymuszania i weryfikacji podpisów plików -IMA w RPM-ie. +Ta wtyczka dodaje obsługę wymuszania i weryfikacji podpisów plików IMA +w RPM-ie. %package plugin-prioreset Summary: Plugin for resetting scriptlet priorities for SysV init @@ -568,6 +562,36 @@ Plugin for SELinux functionality. %description plugin-selinux -l pl.UTF-8 Wtyczka do funkcjonalności SELinux. +%package plugin-fsverity +Summary: Plugin for fsverity file signatures +Group: Base +Requires: %{name}-lib = %{epoch}:%{version}-%{release} + +%description plugin-fsverity +Plugin for fsverity file signatures. + +%package plugin-fapolicyd +Summary: Plugin for fapolicyd support +Group: Base +Requires: %{name}-lib = %{epoch}:%{version}-%{release} + +%description plugin-fapolicyd +Plugin for fapolicyd support. + +See https://people.redhat.com/sgrubb/fapolicyd/ for information about +the fapolicyd daemon. + +%package plugin-dbus-announce +Summary: Plugin for announcing transactions on the DBUS +Group: Base +Requires: %{name}-lib = %{epoch}:%{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. + %package sign Summary: Package signing support Summary(pl.UTF-8): Obsługa podpisywania pakietów @@ -604,8 +628,8 @@ Dokumentacja API RPM-a oraz przewodniki w formacie HTML generowane ze %patch5 -p1 %patch6 -p0 %patch7 -p1 -%patch8 -p1 -%patch9 -p1 +#%patch8 -p1 +#%patch9 -p1 %patch10 -p1 %patch11 -p1 %patch12 -p1 @@ -623,18 +647,14 @@ Dokumentacja API RPM-a oraz przewodniki w formacie HTML generowane ze %patch24 -p1 %patch25 -p1 %patch26 -p1 -%patch27 -p1 %patch28 -p1 -%patch29 -p1 +#%patch29 -p1 %patch30 -p1 %patch31 -p1 %patch32 -p1 -%patch33 -p1 %patch34 -p1 %patch35 -p1 %patch36 -p1 -%patch37 -p1 -%patch38 -p1 %{__rm} po/*.gmo @@ -645,7 +665,7 @@ install %{SOURCE15} scripts/perl.prov.in # generate Group translations to *.po awk -f %{SOURCE6} %{SOURCE5} -%{__sed} -i -e '1s,/usr/bin/python,%{__python3},' scripts/pythondistdeps.py +#%{__sed} -i -e '1s,/usr/bin/python,%{__python3},' scripts/pythondistdeps.py %build %{__libtoolize} @@ -678,6 +698,7 @@ awk -f %{SOURCE6} %{SOURCE5} --with-archive \ --with-audit%{!?with_audit:=no} \ --with-cap \ + --with-fapolicyd \ %{?with_imaevm:--with-imaevm} \ --with-lua \ %{?with_python3:--enable-python} \ @@ -976,9 +997,7 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f %attr(755,root,root) %{_bindir}/rpm2cpio %attr(755,root,root) %{_bindir}/rpmgraph %attr(755,root,root) %{_rpmlibdir}/rpm2cpio.sh -%attr(755,root,root) %{_rpmlibdir}/find-debuginfo.sh %attr(755,root,root) %{_rpmlibdir}/tgpg -%attr(755,root,root) %{_rpmlibdir}/debugedit %attr(755,root,root) %{_rpmlibdir}/rpmdeps %{_mandir}/man8/rpm2archive.8* %{_mandir}/man8/rpm2cpio.8* @@ -999,7 +1018,7 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f %attr(755,root,root) %{_rpmlibdir}/check-files %attr(755,root,root) %{_rpmlibdir}/install-build-tree %attr(755,root,root) %{_rpmlibdir}/elfdeps -%attr(755,root,root) %{_rpmlibdir}/libtooldeps.sh +#%attr(755,root,root) %{_rpmlibdir}/libtooldeps.sh # needs hacked pkg-config to return anything %attr(755,root,root) %{_rpmlibdir}/pkgconfigdeps.sh %attr(755,root,root) %{_rpmlibdir}/mkinstalldirs @@ -1024,21 +1043,18 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f %attr(755,root,root) %{_rpmlibdir}/find-requires %attr(755,root,root) %{_rpmlibdir}/ocamldeps.sh %attr(755,root,root) %{_rpmlibdir}/script.req -%attr(755,root,root) %{_rpmlibdir}/sepdebugcrcfix %dir %{_rpmlibdir}/fileattrs %{_rpmlibdir}/fileattrs/debuginfo.attr %{_rpmlibdir}/fileattrs/desktop.attr %{_rpmlibdir}/fileattrs/elf.attr %{_rpmlibdir}/fileattrs/font.attr -%{_rpmlibdir}/fileattrs/libtool.attr +#%{_rpmlibdir}/fileattrs/libtool.attr %{_rpmlibdir}/fileattrs/metainfo.attr %{_rpmlibdir}/fileattrs/ocaml.attr %{_rpmlibdir}/fileattrs/perl.attr %{_rpmlibdir}/fileattrs/perllib.attr %{_rpmlibdir}/fileattrs/pkgconfig.attr -%{_rpmlibdir}/fileattrs/python.attr -%{_rpmlibdir}/fileattrs/pythondist.attr %{_rpmlibdir}/fileattrs/script.attr %attr(755,root,root) %{_bindir}/gendiff @@ -1058,7 +1074,7 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f %files pythonprov %defattr(644,root,root,755) -%attr(755,root,root) %{_rpmlibdir}/pythondistdeps.py +#%attr(755,root,root) %{_rpmlibdir}/pythondistdeps.py %if %{with python3} %files -n python3-rpm @@ -1102,6 +1118,23 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/rpm-plugins/selinux.so %{_mandir}/man8/rpm-plugin-selinux.8* + +%if %{with fsverity} +%files plugin-fsverity +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/rpm-plugins/fsverity.so +%endif + +%files plugin-fapolicyd +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/rpm-plugins/fapolicyd.so +%{_mandir}/man8/rpm-plugin-fapolicyd.8* + +%files plugin-dbus-announce +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/rpm-plugins/dbus_announce.so +%{_mandir}/man8/rpm-plugin-dbus-announce.8* +%{_sysconfdir}/dbus-1/system.d/org.rpm.conf %endif %files sign @@ -1112,5 +1145,5 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f %if %{with apidocs} %files apidocs %defattr(644,root,root,755) -%doc doc/librpm/html/* +%doc docs/librpm/html/* %endif diff --git a/sqlite-db-backend.patch b/sqlite-db-backend.patch deleted file mode 100644 index 12b4160..0000000 --- a/sqlite-db-backend.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- rpm-4.16.1.2/macros.in~ 2020-12-25 11:29:20.000000000 +0100 -+++ rpm-4.16.1.2/macros.in 2021-01-05 22:55:49.955934996 +0100 -@@ -627,7 +627,7 @@ - # sqlite Sqlite database - # dummy dummy backend (no actual functionality) - # --%_db_backend bdb -+%_db_backend sqlite - - # - # Macros used to configure Berkley db parameters. diff --git a/x32.patch b/x32.patch index 1162841..cdaae33 100644 --- a/x32.patch +++ b/x32.patch @@ -62,37 +62,6 @@ diff -ur rpm-4.16.1.2/configure.ac rpm-4.16.1.2.x32/configure.ac if echo "$host_os" | grep '.*-gnu' > /dev/null ; then host_os=`echo "${host_os}" | sed 's/-gnu$//'` fi -diff -ur rpm-4.16.1.2/fileattrs/python.attr rpm-4.16.1.2.x32/fileattrs/python.attr ---- rpm-4.16.1.2/fileattrs/python.attr 2020-08-31 11:14:07.991087349 +0200 -+++ rpm-4.16.1.2.x32/fileattrs/python.attr 2021-03-21 21:50:04.127398387 +0100 -@@ -14,14 +14,15 @@ - %__python_requires() %{lua: - -- Match buildroot paths of the form - -- /PATH/OF/BUILDROOT/usr/lib/pythonMAJOR.MINOR/ and -- -- /PATH/OF/BUILDROOT/usr/lib64/pythonMAJOR.MINOR/ -+ -- /PATH/OF/BUILDROOT/usr/lib64/pythonMAJOR.MINOR/ and -+ -- /PATH/OF/BUILDROOT/usr/libx32/pythonMAJOR.MINOR/ - -- generating a line of the form: - -- python(abi) = MAJOR.MINOR - local path = rpm.expand('%1') -- if path:match('/usr/lib%d*/python%d+%.%d+/.*') then -- local requires = path:gsub('.*/usr/lib%d*/python(%d+%.%d+)/.*', 'python(abi) = %1') -+ if path:match('/usr/lib%w*/python%d+%.%d+/.*') then -+ local requires = path:gsub('.*/usr/lib%w*/python(%d+%.%d+)/.*', 'python(abi) = %1') - print(requires) - end - } - --%__python_path ^((%{_prefix}/lib(64)?/python[[:digit:]]+\\.[[:digit:]]+/.*\\.(py[oc]?|so))|(%{_bindir}/python[[:digit:]]+\\.[[:digit:]]+))$ -+%__python_path ^((%{_prefix}/lib(64|x32)?/python[[:digit:]]+\\.[[:digit:]]+/.*\\.(py[oc]?|so))|(%{_bindir}/python[[:digit:]]+\\.[[:digit:]]+))$ -diff -ur rpm-4.16.1.2/fileattrs/pythondist.attr rpm-4.16.1.2.x32/fileattrs/pythondist.attr ---- rpm-4.16.1.2/fileattrs/pythondist.attr 2020-05-28 12:04:25.026136626 +0200 -+++ rpm-4.16.1.2.x32/fileattrs/pythondist.attr 2021-03-21 21:50:04.127398387 +0100 -@@ -1,3 +1,3 @@ - %__pythondist_provides %{_rpmconfigdir}/pythondistdeps.py --provides --majorver-provides - %__pythondist_requires %{_rpmconfigdir}/pythondistdeps.py --requires --%__pythondist_path /lib(64)?/python[[:digit:]]\\.[[:digit:]]+/site-packages/[^/]+\\.(dist-info|egg-info|egg-link)$ -+%__pythondist_path /lib(64|x32)?/python[[:digit:]]\\.[[:digit:]]+/site-packages/[^/]+\\.(dist-info|egg-info|egg-link)$ diff -ur rpm-4.16.1.2/installplatform rpm-4.16.1.2.x32/installplatform --- rpm-4.16.1.2/installplatform 2020-05-28 12:04:25.027136631 +0200 +++ rpm-4.16.1.2.x32/installplatform 2021-03-21 21:51:47.671145954 +0100 -- 2.44.0