{ stdenv, lib, fetchFromGitHub, ncurses }: let INSTALL_PATH="${placeholder "out"}/share/fzf-tab"; in stdenv.mkDerivation rec { pname = "zsh-fzf-tab"; version = "unstable-2022-02-10"; src = fetchFromGitHub { owner = "Aloxaf"; repo = "fzf-tab"; rev = "e8145d541a35d8a03df49fbbeefa50c4a0076bbf"; sha256 = "h/3XP/BiNnUgQI29gEBl6RFee77WDhFyvsnTi1eRbKg="; }; buildInputs = [ ncurses ]; patches = lib.optionals stdenv.isDarwin [ ./darwin.patch ]; postConfigure = '' pushd modules ./configure --disable-gdbm --without-tcsetpgrp popd ''; postBuild = '' pushd modules make -j$NIX_BUILD_CORES popd ''; installPhase = '' mkdir -p ${INSTALL_PATH} cp -r lib ${INSTALL_PATH}/lib install -D fzf-tab.zsh ${INSTALL_PATH}/fzf-tab.zsh install -D fzf-tab.plugin.zsh ${INSTALL_PATH}/fzf-tab.plugin.zsh install -D modules/Src/aloxaf/fzftab.so ${INSTALL_PATH}/modules/Src/aloxaf/fzftab.so ''; meta = with lib; { homepage = "https://github.com/Aloxaf/fzf-tab"; description = "Replace zsh's default completion selection menu with fzf!"; license = licenses.mit; maintainers = with maintainers; [ vonfry ]; platforms = platforms.unix; }; }