34 lines
1.1 KiB
Nix
34 lines
1.1 KiB
Nix
{ stdenv, fetchFromGitHub, rustPlatform, coreutils }:
|
|
|
|
rustPlatform.buildRustPackage rec {
|
|
pname = "heatseeker";
|
|
version = "1.7.1";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "rschmitt";
|
|
repo = "heatseeker";
|
|
rev = "v${version}";
|
|
sha256 = "1x7mdyf1m17s55f6yjdr1j510kb7a8f3zkd7lb2kzdc7nd3vgaxg";
|
|
};
|
|
|
|
cargoSha256 = "0jnlcm7v29m4nc318qgf7r7jvs80s7n04fw83imm506vwr9rxbx9";
|
|
|
|
# https://github.com/rschmitt/heatseeker/issues/42
|
|
# I've suggested using `/usr/bin/env stty`, but doing that isn't quite as simple
|
|
# as a substitution, and this works since we have the path to coreutils stty.
|
|
patchPhase = ''
|
|
substituteInPlace src/screen/unix.rs --replace "/bin/stty" "${coreutils}/bin/stty"
|
|
'';
|
|
|
|
# some tests require a tty, this variable turns them off for Travis CI,
|
|
# which we can also make use of
|
|
TRAVIS = "true";
|
|
|
|
meta = with stdenv.lib; {
|
|
description = "A general-purpose fuzzy selector";
|
|
homepage = "https://github.com/rschmitt/heatseeker";
|
|
license = licenses.mit;
|
|
maintainers = [ maintainers.michaelpj ];
|
|
platforms = platforms.unix;
|
|
};
|
|
}
|