diff options
-rw-r--r-- | pkgs/tools/security/rnp/cmake_nogit.patch | 51 | ||||
-rw-r--r-- | pkgs/tools/security/rnp/default.nix | 6 |
2 files changed, 55 insertions, 2 deletions
diff --git a/pkgs/tools/security/rnp/cmake_nogit.patch b/pkgs/tools/security/rnp/cmake_nogit.patch new file mode 100644 index 0000000000000..733b093de5eae --- /dev/null +++ b/pkgs/tools/security/rnp/cmake_nogit.patch @@ -0,0 +1,51 @@ +diff --git i/cmake/version.cmake w/cmake/version.cmake +index 0ed123b5..4348e7e1 100644 +--- i/cmake/version.cmake ++++ w/cmake/version.cmake +@@ -90,41 +90,12 @@ function(determine_version source_dir var_prefix) + else() + message(STATUS "Found no version.txt.") + endif() +- # for GIT_EXECUTABLE +- find_package(Git REQUIRED) +- # get a description of the version, something like: +- # v1.9.1-0-g38ffe82 (a tagged release) +- # v1.9.1-0-g38ffe82-dirty (a tagged release with local modifications) +- # v1.9.0-3-g5b92266 (post-release snapshot) +- # v1.9.0-3-g5b92266-dirty (post-release snapshot with local modifications) +- _git(version describe --abbrev=${GIT_REV_LEN} --match "v[0-9]*" --long --dirty) +- if (NOT _git_ec EQUAL 0) +- # no annotated tags, fake one +- message(STATUS "Found no annotated tags.") +- _git(revision rev-parse --short=${GIT_REV_LEN} --verify HEAD) +- if (_git_ec EQUAL 0) +- set(version "v${base_version}-0-g${revision}") +- # check if dirty (this won't detect untracked files, but should be ok) +- _git(changes diff-index --quiet HEAD --) +- if (NOT _git_ec EQUAL 0) +- string(APPEND version "-dirty") +- endif() +- # append the commit timestamp of the most recent commit (only +- # in non-release branches -- typically master) +- _git(commit_timestamp show -s --format=%ct) +- if (_git_ec EQUAL 0) +- string(APPEND version "+${commit_timestamp}") +- endif() +- elseif(has_version_txt) +- # Nothing to get from git - so use version.txt completely +- set(version "${version_file}") +- else() +- # Sad case - no git, no version.txt +- set(version "v${base_version}") +- endif() ++ if(has_version_txt) ++ # Nothing to get from git - so use version.txt completely ++ set(version "${version_file}") + else() +- set(has_release_tag YES) +- message(STATUS "Found annotated tag ${version}") ++ # Sad case - no git, no version.txt ++ set(version "v${base_version}") + endif() + extract_version_info("${version}" "${local_prefix}") + if ("${has_version_txt}" AND NOT ${base_version} STREQUAL ${local_prefix}_VERSION) diff --git a/pkgs/tools/security/rnp/default.nix b/pkgs/tools/security/rnp/default.nix index 3c60190f12870..38e6c80428fc5 100644 --- a/pkgs/tools/security/rnp/default.nix +++ b/pkgs/tools/security/rnp/default.nix @@ -15,15 +15,17 @@ stdenv.mkDerivation rec { pname = "rnp"; - version = "0.15.1"; + version = "0.15.2"; src = fetchFromGitHub { owner = "rnpgp"; repo = "rnp"; rev = "v${version}"; - sha256 = "1l7y99rcss5w24lil6nqwr0dzh2jvq0qxmdvq7j5yx3fdssd5xsv"; + sha256 = "1jph69nsz245fbv04nalh1qmhniyh88sacsf3nxv1vxm190314i9"; }; + patches = [ ./cmake_nogit.patch ]; + buildInputs = [ zlib bzip2 json_c botan2 ]; cmakeFlags = [ |