55 lines
1.1 KiB
Nix
55 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=";
|
|
};
|
|
|
|
nativeCheckInputs = [ 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;
|
|
};
|
|
}
|