|
|
@ -1,28 +1,43 @@ |
|
|
|
{ lib, fetchFromGitHub, gitMinimal, makeWrapper, rustPlatform }: |
|
|
|
{ fetchFromGitHub |
|
|
|
|
|
|
|
, gitMinimal |
|
|
|
|
|
|
|
, gfold |
|
|
|
|
|
|
|
, lib |
|
|
|
|
|
|
|
, libiconv |
|
|
|
|
|
|
|
, makeWrapper |
|
|
|
|
|
|
|
, rustPlatform |
|
|
|
|
|
|
|
, Security |
|
|
|
|
|
|
|
, stdenv |
|
|
|
|
|
|
|
, testVersion |
|
|
|
|
|
|
|
}: |
|
|
|
|
|
|
|
|
|
|
|
rustPlatform.buildRustPackage rec { |
|
|
|
let |
|
|
|
pname = "gfold"; |
|
|
|
pname = "gfold"; |
|
|
|
version = "3.0.0"; |
|
|
|
version = "4.0.0"; |
|
|
|
|
|
|
|
in |
|
|
|
|
|
|
|
rustPlatform.buildRustPackage { |
|
|
|
|
|
|
|
inherit pname version; |
|
|
|
|
|
|
|
|
|
|
|
src = fetchFromGitHub { |
|
|
|
src = fetchFromGitHub { |
|
|
|
owner = "nickgerace"; |
|
|
|
owner = "nickgerace"; |
|
|
|
repo = pname; |
|
|
|
repo = pname; |
|
|
|
rev = version; |
|
|
|
rev = version; |
|
|
|
sha256 = "0ss6vfrc6h3jlh5qilh82psd3vdnfawf1wl4cf64mfm4hm9dda63"; |
|
|
|
sha256 = "1yh5173qhi9bd41zss9k21nm0xnr2sa918kvlyr5xvzhq47rrwz5"; |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
cargoSha256 = "09ywwgxm8l1p0jypp65zpqryjnb2g4gririf1dmqb9148dsj29x2"; |
|
|
|
cargoSha256 = "sha256-o2fMIlj+veTmhfqi7BVpxr3520SOwWLmVS2UU83EVjo="; |
|
|
|
|
|
|
|
|
|
|
|
nativeBuildInputs = [ makeWrapper ]; |
|
|
|
buildInputs = lib.optionals stdenv.isDarwin [ libiconv Security ]; |
|
|
|
|
|
|
|
|
|
|
|
postInstall = '' |
|
|
|
passthru.tests.version = testVersion { |
|
|
|
wrapProgram "$out/bin/gfold" --prefix PATH : "${gitMinimal}/bin" |
|
|
|
package = gfold; |
|
|
|
''; |
|
|
|
command = "gfold --version"; |
|
|
|
|
|
|
|
inherit version; |
|
|
|
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
meta = with lib; { |
|
|
|
meta = with lib; { |
|
|
|
inherit (src.meta) homepage; |
|
|
|
|
|
|
|
description = |
|
|
|
description = |
|
|
|
"A tool to help keep track of your Git repositories, written in Rust"; |
|
|
|
"CLI tool to help keep track of your Git repositories, written in Rust"; |
|
|
|
|
|
|
|
homepage = "https://github.com/nickgerace/gfold"; |
|
|
|
license = licenses.asl20; |
|
|
|
license = licenses.asl20; |
|
|
|
maintainers = [ maintainers.shanesveller ]; |
|
|
|
maintainers = [ maintainers.shanesveller ]; |
|
|
|
platforms = platforms.unix; |
|
|
|
platforms = platforms.unix; |
|
|
|