46 lines
1.1 KiB
Nix
46 lines
1.1 KiB
Nix
{ stdenvNoCC, lib, fetchFromGitHub, bats }:
|
|
|
|
let version = "0.5.0";
|
|
in stdenvNoCC.mkDerivation {
|
|
pname = "bash-preexec";
|
|
inherit version;
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "rcaloras";
|
|
repo = "bash-preexec";
|
|
rev = version;
|
|
sha256 = "sha256-+FU5n7EkY78X5nUiW3WN9+6Bf6oiPjsG2MSRCleooFs=";
|
|
};
|
|
|
|
checkInputs = [ bats ];
|
|
|
|
dontConfigure = true;
|
|
doCheck = true;
|
|
dontBuild = true;
|
|
|
|
patchPhase = ''
|
|
# Needed since the tests expect that HISTCONTROL is set.
|
|
sed -i '/setup()/a HISTCONTROL=""' test/bash-preexec.bats
|
|
|
|
# Skip tests failing with Bats 1.5.0.
|
|
# See https://github.com/rcaloras/bash-preexec/issues/121
|
|
sed -i '/^@test.*IFS/,/^}/d' test/bash-preexec.bats
|
|
'';
|
|
|
|
checkPhase = ''
|
|
bats test
|
|
'';
|
|
|
|
installPhase = ''
|
|
install -Dm755 $src/bash-preexec.sh $out/share/bash/bash-preexec.sh
|
|
'';
|
|
|
|
meta = with lib; {
|
|
description = "preexec and precmd functions for Bash just like Zsh";
|
|
license = licenses.mit;
|
|
homepage = "https://github.com/rcaloras/bash-preexec";
|
|
maintainers = [ maintainers.hawkw maintainers.rycee ];
|
|
platforms = platforms.unix;
|
|
};
|
|
}
|