1{ lib, stdenv, fetchFromGitHub, lua52Packages, makeWrapper }:
2
3stdenv.mkDerivation rec {
4 pname = "z-lua";
5 version = "1.8.16";
6
7 src = fetchFromGitHub {
8 owner = "skywind3000";
9 repo = "z.lua";
10 rev = version;
11 sha256 = "sha256-VVJXBVENXlJXVj831Hx4sa7AzGHXpsui6tga9uA6ZnE=";
12 };
13
14 dontBuild = true;
15
16 nativeBuildInputs = [ makeWrapper ];
17
18 buildInputs = [ lua52Packages.lua ];
19
20 installPhase = ''
21 runHook preInstall
22
23 install -Dm755 z.lua $out/bin/z.lua
24 wrapProgram $out/bin/z.lua --set LUA_CPATH "${lua52Packages.luafilesystem}/lib/lua/5.2/lfs.so" --set _ZL_USE_LFS 1;
25 # Create symlink for backwards compatibility. See: https://github.com/NixOS/nixpkgs/pull/96081
26 ln -s $out/bin/z.lua $out/bin/z
27
28 runHook postInstall
29 '';
30
31 meta = with lib; {
32 homepage = "https://github.com/skywind3000/z.lua";
33 description = "A new cd command that helps you navigate faster by learning your habits";
34 license = licenses.mit;
35 maintainers = with maintainers; [ marsam ];
36 mainProgram = "z.lua";
37 };
38}