Merge pull request #39684 from Ma27/fix-notary

notary: fix build

xeji 69d4bdc5 fd8dcdfa

Changed files
+36 -11
pkgs
tools
+21 -11
pkgs/tools/security/notary/default.nix
···
-
{ stdenv, fetchFromGitHub, buildGoPackage, git, libtool }:
buildGoPackage rec {
name = "notary-${version}";
-
version = "0.6.0";
-
gitcommit = "34f53ad";
src = fetchFromGitHub {
owner = "theupdateframework";
repo = "notary";
rev = "v${version}";
-
sha256 = "0lg7ab2agkk3rnladcvpdzk8cnf3m49qfm4sanh7yjvlvlv1wm4a";
};
-
buildInputs = [ libtool ];
-
-
goPackagePath = "github.com/theupdateframework/notary";
buildPhase = ''
cd go/src/github.com/theupdateframework/notary
-
make GITCOMMIT=${gitcommit} GITUNTRACKEDCHANGES= client
'';
installPhase = ''
install -D bin/notary $bin/bin/notary
'';
meta = with stdenv.lib; {
-
description = " Notary is a project that allows anyone to have trust over arbitrary collections of data";
longDescription = ''
The Notary project comprises a server and a client for running and
interacting with trusted collections. See the service architecture
···
'';
license = licenses.asl20;
homepage = https://github.com/theupdateframework/notary;
-
maintainers = with maintainers; [ vdemeester ];
-
platforms = with platforms; unix;
};
}
···
+
{ stdenv, fetchFromGitHub, buildGoPackage, libtool }:
buildGoPackage rec {
name = "notary-${version}";
+
version = "0.6.1";
+
gitcommit = "d6e1431f";
src = fetchFromGitHub {
owner = "theupdateframework";
repo = "notary";
rev = "v${version}";
+
sha256 = "1ak9dk6vjny5069hp3w36dbjawcnaq82l3i2qvf7mn7zfglbsnf9";
};
+
patches = [ ./no-git-usage.patch ];
+
buildInputs = [ libtool ];
buildPhase = ''
+
runHook preBuild
cd go/src/github.com/theupdateframework/notary
+
make client GITCOMMIT=${gitcommit}
+
runHook postBuild
'';
+
+
goPackagePath = "github.com/theupdateframework/notary";
installPhase = ''
+
runHook preInstall
install -D bin/notary $bin/bin/notary
+
runHook postInstall
+
'';
+
+
doCheck = true;
+
checkPhase = ''
+
make test PKGS=github.com/theupdateframework/notary/cmd/notary
'';
meta = with stdenv.lib; {
+
description = "Notary is a project that allows anyone to have trust over arbitrary collections of data";
longDescription = ''
The Notary project comprises a server and a client for running and
interacting with trusted collections. See the service architecture
···
'';
license = licenses.asl20;
homepage = https://github.com/theupdateframework/notary;
+
maintainers = with maintainers; [ vdemeester ma27 ];
+
platforms = platforms.unix;
};
}
+15
pkgs/tools/security/notary/no-git-usage.patch
···
···
+
diff --git a/Makefile b/Makefile
+
index ab794165..0cbd047f 100644
+
--- a/Makefile
+
+++ b/Makefile
+
@@ -5,8 +5,8 @@ PREFIX?=$(shell pwd)
+
# Add to compile time flags
+
NOTARY_PKG := github.com/theupdateframework/notary
+
NOTARY_VERSION := $(shell cat NOTARY_VERSION)
+
-GITCOMMIT := $(shell git rev-parse --short HEAD)
+
-GITUNTRACKEDCHANGES := $(shell git status --porcelain --untracked-files=no)
+
+GITCOMMIT ?= $(shell git rev-parse --short HEAD)
+
+GITUNTRACKEDCHANGES :=
+
ifneq ($(GITUNTRACKEDCHANGES),)
+
GITCOMMIT := $(GITCOMMIT)-dirty
+
endif