diff --git a/pkgs/applications/blockchains/stellar-core-dirty-version.patch b/pkgs/applications/blockchains/stellar-core-dirty-version.patch deleted file mode 100644 index 57d66ce5919..00000000000 --- a/pkgs/applications/blockchains/stellar-core-dirty-version.patch +++ /dev/null @@ -1,15 +0,0 @@ -Subject: Prevent "-dirty" from being erroneously added to the version - -diff --git a/src/Makefile.am b/src/Makefile.am -index d36d1a3..00048fc 100644 ---- a/src/Makefile.am -+++ b/src/Makefile.am -@@ -28,7 +28,7 @@ always: - # Always rebuild because .git/HEAD is a symbolic ref one can't depend on - StellarCoreVersion.h: always - @vers=$$(cd "$(srcdir)" \ -- && git describe --always --dirty --tags 2>/dev/null \ -+ && git describe --always --tags 2>/dev/null \ - || echo "$(PACKAGE) $(VERSION)"); \ - echo "#define STELLAR_CORE_VERSION \"$$vers\"" > $@~ - @if cmp -s $@~ $@; then rm -f $@~; else \ diff --git a/pkgs/applications/blockchains/stellar-core.nix b/pkgs/applications/blockchains/stellar-core.nix index ceb48bf6aa4..197453599b2 100644 --- a/pkgs/applications/blockchains/stellar-core.nix +++ b/pkgs/applications/blockchains/stellar-core.nix @@ -1,31 +1,30 @@ -{ lib, stdenv, fetchgit, autoconf, libtool, automake, pkg-config, git -, bison, flex, postgresql }: +{ lib, stdenv, fetchFromGitHub, autoconf, libtool, automake, pkg-config, git +, bison, flex, postgresql, ripgrep }: -let +stdenv.mkDerivation rec { pname = "stellar-core"; - version = "0.5.1"; + version = "17.0.0"; -in stdenv.mkDerivation { - name = "${pname}-${version}"; - - src = fetchgit { - url = "https://github.com/stellar/stellar-core.git"; - rev = "refs/tags/v${version}"; - sha256 = "0ldw3qr0sajgam38z2w2iym0214ial6iahbzx3b965cw92n8n88z"; + src = fetchFromGitHub { + owner = "stellar"; + repo = pname; + rev = "v${version}"; + sha256 = "1ngl8yjqb8xzhdwzlxzzxf14q2hgwy2ysb17sn5380rrn0jswin1"; fetchSubmodules = true; - leaveDotGit = true; }; - nativeBuildInputs = [ pkg-config ]; - buildInputs = [ autoconf automake libtool git ]; + nativeBuildInputs = [ automake autoconf git libtool pkg-config ripgrep ]; propagatedBuildInputs = [ bison flex postgresql ]; - patches = [ ./stellar-core-dirty-version.patch ]; - preConfigure = '' + # Due to https://github.com/NixOS/nixpkgs/issues/8567 we cannot rely on + # having the .git directory present, so directly provide the version + substituteInPlace src/Makefile.am --replace '$$vers' '${pname} ${version}'; + # Everything needs to be staged in git because the build uses # `git ls-files` to search for source files to compile. + git init git add . ./autogen.sh