nixpkgs/pkgs/shells/hilbish/default.nix

48 lines
1.3 KiB
Nix
Raw Normal View History

2021-05-06 23:40:42 +00:00
{ lib, buildGoModule, fetchFromGitHub, readline }:
buildGoModule rec {
pname = "hilbish";
2021-10-18 00:18:16 +00:00
version = "0.6.0";
2021-05-06 23:40:42 +00:00
src = fetchFromGitHub {
2021-06-13 00:15:26 +00:00
owner = "Rosettea";
2021-05-06 23:40:42 +00:00
repo = "Hilbish";
rev = "v${version}";
2021-10-18 00:18:16 +00:00
sha256 = "sha256-ACHHHGT3VGnvZVi1UZb57+g/slcld5e3bh+DDhUVVpQ=";
2021-10-06 17:00:35 +00:00
fetchSubmodules = true;
2021-05-06 23:40:42 +00:00
};
2021-10-18 00:18:16 +00:00
vendorSha256 = "sha256-SVGPMFpQjVOWCfiPpEmqhp6MEO0wqeyAZVyeNmTuXl0=";
2021-05-06 23:40:42 +00:00
buildInputs = [ readline ];
2021-10-06 17:00:35 +00:00
ldflags = [ "-s" "-w" ];
postPatch = ''
2021-10-18 00:18:16 +00:00
substituteInPlace vars_linux.go \
2021-10-06 17:00:35 +00:00
--replace "/usr/share" "${placeholder "out"}/share/"
'';
postInstall = ''
mkdir -p "$out/share/hilbish"
cp .hilbishrc.lua $out/share/hilbish/
2021-10-18 00:18:16 +00:00
cp -r docs -t $out/share/hilbish
2021-10-06 17:00:35 +00:00
cp -r libs -t $out/share/hilbish/
cp preload.lua $out/share/hilbish/
2021-10-18 00:18:16 +00:00
# segfaults and it's already been generated upstream
# we copy the docs over with the above cp command
rm $out/bin/docgen
2021-10-06 17:00:35 +00:00
'';
2021-05-06 23:40:42 +00:00
meta = with lib; {
description = "An interactive Unix-like shell written in Go";
2021-06-13 00:15:26 +00:00
changelog = "https://github.com/Rosettea/Hilbish/releases/tag/v${version}";
homepage = "https://github.com/Rosettea/Hilbish";
2021-05-06 23:40:42 +00:00
maintainers = with maintainers; [ fortuneteller2k ];
license = licenses.mit;
platforms = platforms.linux; # only officially supported on Linux
};
}