diff options
Diffstat (limited to 'debian')
-rw-r--r-- | debian/changelog | 12 | ||||
-rw-r--r-- | debian/control | 3 | ||||
-rw-r--r-- | debian/librnp-dev.install | 1 | ||||
-rw-r--r-- | debian/librnp0.symbols | 1 | ||||
-rw-r--r-- | debian/patches/0002-Use-system-libsexpp-library.patch | 175 | ||||
-rw-r--r-- | debian/patches/0003-Relax-GnuPG-version-parsing.patch | 26 | ||||
-rw-r--r-- | debian/patches/0003-test_set_expire-increase-short-expiry-time-from-10s-.patch | 4 | ||||
-rw-r--r-- | debian/patches/0004-Clarify-text-in-rnp-1.patch | 27 | ||||
-rw-r--r-- | debian/patches/series | 3 |
9 files changed, 71 insertions, 181 deletions
diff --git a/debian/changelog b/debian/changelog index 1884568..3923faf 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,15 @@ +rnp (0.17.1-1) unstable; urgency=medium + + * New upstream version (Closes: #1064486) + * Drop build-dep on python3-distutils (Closes: #1065948) + * Stop shipping librnp.a, following upstream + * Permit normal testing when gpg-from-sq is installed + * debian/librnp0.symbols: add rnp_signature_get_features + * move from pkg-config to pkgconf + * fix manpage grammar + + -- Daniel Kahn Gillmor <dkg@fifthhorseman.net> Fri, 10 May 2024 17:15:05 -0400 + rnp (0.17.0-3) unstable; urgency=medium * avoid test timeouts on mipsel/mips64el (see diff --git a/debian/control b/debian/control index eea266c..7f29e00 100644 --- a/debian/control +++ b/debian/control @@ -12,9 +12,8 @@ Build-Depends: libbz2-dev, libjson-c-dev (>= 0.11), libsexpp-dev, - pkg-config, + pkgconf, python3 <!nocheck>, - python3-distutils <!nocheck>, zlib1g-dev, Standards-Version: 4.6.2 Vcs-Git: https://salsa.debian.org/debian/rnp.git diff --git a/debian/librnp-dev.install b/debian/librnp-dev.install index 09c411d..1a3877e 100644 --- a/debian/librnp-dev.install +++ b/debian/librnp-dev.install @@ -1,5 +1,4 @@ usr/include/rnp/*.h usr/lib/${DEB_HOST_MULTIARCH}/cmake/rnp/rnp-*.cmake -usr/lib/${DEB_HOST_MULTIARCH}/librnp.a usr/lib/${DEB_HOST_MULTIARCH}/librnp.so usr/lib/${DEB_HOST_MULTIARCH}/pkgconfig/librnp.pc diff --git a/debian/librnp0.symbols b/debian/librnp0.symbols index 2fde4f9..2325545 100644 --- a/debian/librnp0.symbols +++ b/debian/librnp0.symbols @@ -58,6 +58,7 @@ librnp.so.0 librnp0 #MINVER# rnp_key_get_default_key@Base 0.15.2 rnp_key_get_dsa_qbits@Base 0.14.0 rnp_key_get_expiration@Base 0.14.0 + rnp_signature_get_features@Base 0.17.1 rnp_key_get_fprint@Base 0.14.0 rnp_key_get_grip@Base 0.14.0 rnp_key_get_keyid@Base 0.14.0 diff --git a/debian/patches/0002-Use-system-libsexpp-library.patch b/debian/patches/0002-Use-system-libsexpp-library.patch deleted file mode 100644 index 4338313..0000000 --- a/debian/patches/0002-Use-system-libsexpp-library.patch +++ /dev/null @@ -1,175 +0,0 @@ -From: Daniel Kahn Gillmor <dkg@fifthhorseman.net> -Date: Wed, 21 Jun 2023 14:12:26 +0200 -Subject: Use system libsexpp library - -cherry picked the necessary pieces from upstream commits: - - 3e9831ac3409095db40b7967866b9197eb36ff64 - df4f24bd48b6691692379f1370fde3c12e96e3ab - f9147e72a369f1e412d2f2385cf23a3e9dd6882d - 82d9747f1da36db0393c122b451a847cf561bb7c ---- - CMakeLists.txt | 29 +++++++++++++++++++++++++---- - src/lib/CMakeLists.txt | 28 +++++++++++++++++++--------- - src/librekey/g23_sexp.hpp | 4 ++-- - src/tests/CMakeLists.txt | 3 ++- - 4 files changed, 48 insertions(+), 16 deletions(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index bb6d40c..1d75f1a 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -58,6 +58,8 @@ option(ENABLE_COVERAGE "Enable code coverage testing.") - option(ENABLE_SANITIZERS "Enable ASan and other sanitizers.") - option(ENABLE_FUZZERS "Enable fuzz targets.") - option(DOWNLOAD_GTEST "Download Googletest" On) -+option(SYSTEM_LIBSEXPP "Use system sexpp library" OFF) -+ - # crypto components - function(tristate_feature_auto NAME DESCRIPTION) - set(${NAME} Auto CACHE STRING ${DESCRIPTION}) -@@ -176,10 +178,29 @@ if (ENABLE_FUZZERS) - endif() - add_subdirectory(src/common) - --set(WITH_SEXP_CLI OFF) --set(WITH_SEXP_TESTS OFF) --set(CMAKE_INSTALL_DEFAULT_COMPONENT_NAME development) --add_subdirectory(src/libsexp EXCLUDE_FROM_ALL) -+if (SYSTEM_LIBSEXPP) -+ find_package(PkgConfig QUIET) -+ pkg_check_modules(REQUIRED sexpp>=0.8.7) -+ find_library(SEXPP_LIBRARY -+ NAMES -+ "libsexpp" -+ "sexpp" -+ HINTS -+ "${SEXPP_LIBRARY_DIRS}" -+ ) -+ add_library(sexpp UNKNOWN IMPORTED) -+ set_target_properties(sexpp -+ PROPERTIES -+ INTERFACE_INCLUDE_DIRECTORIES "${SEXPP_INCLUDE_DIR}" -+ IMPORTED_LINK_INTERFACE_LANGUAGES "CXX" -+ IMPORTED_LOCATION "${SEXPP_LIBRARY}" -+ ) -+else (SYSTEM_LIBSEXPP) -+ set(WITH_SEXP_CLI OFF) -+ set(WITH_SEXP_TESTS OFF) -+ set(CMAKE_INSTALL_DEFAULT_COMPONENT_NAME development) -+ add_subdirectory(src/libsexp EXCLUDE_FROM_ALL) -+endif(SYSTEM_LIBSEXPP) - - add_subdirectory(src/lib) - add_subdirectory(src/rnp) -diff --git a/src/lib/CMakeLists.txt b/src/lib/CMakeLists.txt -index 086ac57..e05d1c1 100755 ---- a/src/lib/CMakeLists.txt -+++ b/src/lib/CMakeLists.txt -@@ -320,6 +320,7 @@ target_include_directories(librnp-obj - PRIVATE - "${CMAKE_CURRENT_SOURCE_DIR}" - "${PROJECT_SOURCE_DIR}/src" -+ "${SEXPP_INCLUDE_DIRS}" - ) - target_link_libraries(librnp-obj PRIVATE JSON-C::JSON-C) - if (CRYPTO_BACKEND_BOTAN) -@@ -328,7 +329,7 @@ elseif (CRYPTO_BACKEND_OPENSSL) - target_link_libraries(librnp-obj PRIVATE OpenSSL::Crypto) - endif() - --target_link_libraries(librnp-obj PRIVATE sexp) -+target_link_libraries(librnp-obj PRIVATE sexpp) - - set_target_properties(librnp-obj PROPERTIES CXX_VISIBILITY_PRESET hidden) - if (TARGET BZip2::BZip2) -@@ -384,7 +385,7 @@ foreach (prop LINK_LIBRARIES INTERFACE_LINK_LIBRARIES INCLUDE_DIRECTORIES INTERF - get_target_property(val librnp-obj ${prop}) - if (BUILD_SHARED_LIBS) - set_property(TARGET librnp-static PROPERTY ${prop} ${val}) -- list(REMOVE_ITEM val "$<LINK_ONLY:sexp>") -+ list(REMOVE_ITEM val "$<LINK_ONLY:sexpp>") - set_property(TARGET librnp PROPERTY ${prop} ${val}) - else() - set_property(TARGET librnp PROPERTY ${prop} ${val}) -@@ -417,8 +418,8 @@ endif() - # On Unix like systems we will build/install/pack shared and static libraries librnp.so and librnp.a - # On Windows we will build/install/pack dynamic, import and static libraries rnp.dll, rnp.lib and rnp-static.lib - --# If a client application uses shared rnp library, sexp is statically linked to librnp.so --# If a client application uses static rnp library, it still needs libsexp.a -+# If a client application uses shared rnp library, sexpp is statically linked to librnp.so -+# If a client application uses static rnp library, it still needs libsexpp.a - - if (BUILD_SHARED_LIBS) - # both static and shared libraries -@@ -432,21 +433,30 @@ install(TARGETS librnp - DESTINATION "${CMAKE_INSTALL_LIBDIR}" - COMPONENT development - ) -- -- install(TARGETS librnp-static sexp -+ install(TARGETS librnp-static - EXPORT rnp-targets - ARCHIVE - DESTINATION "${CMAKE_INSTALL_LIBDIR}" - COMPONENT development - ) - else(BUILD_SHARED_LIBS) --# static libraries only --install(TARGETS librnp sexp -+# static libraries -+# install libsexpp unless system-installed libsexpp is used -+ if (SYSTEM_LIBSEXPP) -+ install(TARGETS librnp -+ EXPORT rnp-targets -+ ARCHIVE -+ DESTINATION "${CMAKE_INSTALL_LIBDIR}" -+ COMPONENT development -+ ) -+ else (SYSTEM_LIBSEXPP) -+ install(TARGETS librnp sexpp - EXPORT rnp-targets - ARCHIVE - DESTINATION "${CMAKE_INSTALL_LIBDIR}" - COMPONENT development --) -+ ) -+ endif (SYSTEM_LIBSEXPP) - endif(BUILD_SHARED_LIBS) - - # install dll only for windows -diff --git a/src/librekey/g23_sexp.hpp b/src/librekey/g23_sexp.hpp -index b888680..b062c52 100644 ---- a/src/librekey/g23_sexp.hpp -+++ b/src/librekey/g23_sexp.hpp -@@ -27,8 +27,8 @@ - #ifndef RNP_G23_SEXP_HPP - #define RNP_G23_SEXP_HPP - --#include "sexp/sexp.h" --#include "sexp/ext-key-format.h" -+#include "sexpp/sexp.h" -+#include "sexpp/ext-key-format.h" - - #define SXP_MAX_DEPTH 30 - -diff --git a/src/tests/CMakeLists.txt b/src/tests/CMakeLists.txt -index 7d2a6b0..16d30fb 100644 ---- a/src/tests/CMakeLists.txt -+++ b/src/tests/CMakeLists.txt -@@ -171,12 +171,13 @@ target_include_directories(rnp_tests - "${PROJECT_SOURCE_DIR}/src" - "${PROJECT_SOURCE_DIR}/src/lib" - "${BOTAN2_INCLUDE_DIRS}" -+ "${SEXPP_INCLUDE_DIRS}" - ) - target_link_libraries(rnp_tests - PRIVATE - librnp-static - JSON-C::JSON-C -- sexp -+ sexpp - ${GTestMain} - ) - if (CRYPTO_BACKEND_LOWERCASE STREQUAL "openssl") diff --git a/debian/patches/0003-Relax-GnuPG-version-parsing.patch b/debian/patches/0003-Relax-GnuPG-version-parsing.patch new file mode 100644 index 0000000..a1f00ac --- /dev/null +++ b/debian/patches/0003-Relax-GnuPG-version-parsing.patch @@ -0,0 +1,26 @@ +From: Daniel Kahn Gillmor <dkg@fifthhorseman.net> +Date: Fri, 10 May 2024 15:56:16 -0400 +Subject: Relax GnuPG version parsing + +The sequoia implementation of the /usr/bin/gpg interface (gpg-sq) +doesn't use a literal "(GnuPG)" in the version string. + +Avoid spurious test failures like https://bugs.debian.org/1070866 when +gpg-from-sq is installed. +--- + src/tests/cli_tests.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/tests/cli_tests.py b/src/tests/cli_tests.py +index 5a414a2..f0e8749 100755 +--- a/src/tests/cli_tests.py ++++ b/src/tests/cli_tests.py +@@ -840,7 +840,7 @@ def gpg_check_features(): + GPG_AEAD_EAX = re.match(r'(?s)^.*AEAD:.*EAX.*', out) is not None + GPG_AEAD_OCB = re.match(r'(?s)^.*AEAD:.*OCB.*', out) is not None + # Version 2.3.0-beta1598 and up drops support of 64-bit block algos +- match = re.match(r'(?s)^.*gpg \(GnuPG\) (\d+)\.(\d+)\.(\d+)(-beta(\d+))?.*$', out) ++ match = re.match(r'(?s)^.*gpg \(GnuPG[^\)]*\) (\d+)\.(\d+)\.(\d+)(-beta(\d+))?.*$', out) + if not match: + raise_err('Failed to parse GnuPG version.') + ver = [int(match.group(1)), int(match.group(2)), int(match.group(3))] diff --git a/debian/patches/0003-test_set_expire-increase-short-expiry-time-from-10s-.patch b/debian/patches/0003-test_set_expire-increase-short-expiry-time-from-10s-.patch index 35ba2f4..987e462 100644 --- a/debian/patches/0003-test_set_expire-increase-short-expiry-time-from-10s-.patch +++ b/debian/patches/0003-test_set_expire-increase-short-expiry-time-from-10s-.patch @@ -10,10 +10,10 @@ Fixes #2100, #2059 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/tests/cli_tests.py b/src/tests/cli_tests.py -index e6f5ed7..f0bcc75 100755 +index 47f6890..5a414a2 100755 --- a/src/tests/cli_tests.py +++ b/src/tests/cli_tests.py -@@ -1997,14 +1997,14 @@ class Keystore(unittest.TestCase): +@@ -2010,14 +2010,14 @@ class Keystore(unittest.TestCase): matches = re.findall(r'(key expiration time: 63072000 seconds \(730 days\))', out) self.assertEqual(len(matches), 1) diff --git a/debian/patches/0004-Clarify-text-in-rnp-1.patch b/debian/patches/0004-Clarify-text-in-rnp-1.patch new file mode 100644 index 0000000..2d54ebb --- /dev/null +++ b/debian/patches/0004-Clarify-text-in-rnp-1.patch @@ -0,0 +1,27 @@ +From: Daniel Kahn Gillmor <dkg@fifthhorseman.net> +Date: Fri, 10 May 2024 16:56:23 -0400 +Subject: Clarify text in rnp(1) + +This avoids a lintian warning: + +I: rnp: typo-in-manual-page "allows to" "allows one to" [usr/share/man/man1/rnp.1.gz:595] + +While I was editing the manpage, I took the liberty of cleaning up the +language further, too. +--- + src/rnp/rnp.1.adoc | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/rnp/rnp.1.adoc b/src/rnp/rnp.1.adoc +index ce1173e..cd72e10 100644 +--- a/src/rnp/rnp.1.adoc ++++ b/src/rnp/rnp.1.adoc +@@ -330,7 +330,7 @@ By default RNP uses system's time in all signature/key checks, however in some s + Override or set a file name, stored inside of OpenPGP message. + + + + By default RNP will store input filename (or empty string for *stdin*/*env* input) in the resulting OpenPGP message during encryption or embedded signing. +-This option allows to override this. Special value *_CONSOLE* may be used for "for your eyes only"-message. Refer OpenPGP documentation for the details. ++This option allows the user to override this filename. Special value *_CONSOLE* may be used for "for your eyes only"-message. Refer to OpenPGP documentation for details. + + *--allow-hidden* :: + Allow hidden recipient support. + diff --git a/debian/patches/series b/debian/patches/series index 0e06ee0..220fb76 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,3 +1,4 @@ 0001-Pull-version-information-from-debian-changelog-avoid.patch -0002-Use-system-libsexpp-library.patch 0003-test_set_expire-increase-short-expiry-time-from-10s-.patch +0003-Relax-GnuPG-version-parsing.patch +0004-Clarify-text-in-rnp-1.patch |