.files/nix/packages/by-name/hbrainfuck/package.nix
2025-05-28 13:42:43 +02:00

33 lines
953 B
Nix

{
haskellPackages,
haskell,
fetchFromGitea,
installShellFiles,
}: let
inherit (haskell.lib.compose) justStaticExecutables overrideCabal;
drv =
haskellPackages.callCabal2nix "hbrainfuck"
(fetchFromGitea {
domain = "git.confusedcompiler.org";
owner = "leana8959";
repo = "hbrainfuck";
rev = "5eea5ff0d7efc0bd866a2273686032ba9cab5baa";
hash = "sha256-/htXOULUJN8+PsAYaG281Ge/9ULZoWip63IUxuVbTSg=";
})
{};
cabalOverrides = o: {
buildTools = o.buildTools or [] ++ [installShellFiles];
postInstall =
o.postInstall or ""
+ ''
installShellCompletion --cmd hbrainfuck \
--bash <("$out/bin/hbf" --bash-completion-script "$out/bin/hbf") \
--fish <("$out/bin/hbf" --fish-completion-script "$out/bin/hbf") \
--zsh <("$out/bin/hbf" --zsh-completion-script "$out/bin/hbf")
'';
};
in
justStaticExecutables
(overrideCabal cabalOverrides drv)