1{ lib, stdenv, fetchFromGitHub, bash }:
2
3stdenv.mkDerivation rec {
4 pname = "shellspec";
5 version = "0.28.1";
6
7 src = fetchFromGitHub {
8 owner = "shellspec";
9 repo = pname;
10 rev = version;
11 sha256 = "1ib5qp29f2fmivwnv6hq35qhvdxz42xgjlkvy0i3qn758riyqf46";
12 };
13
14 strictDeps = true;
15 buildInputs = [ bash ];
16 makeFlags = [ "PREFIX=${placeholder "out"}" ];
17
18 checkPhase = ''
19 ./shellspec --no-banner --task fixture:stat:prepare
20 ./shellspec --no-banner spec --jobs "$(nproc)"
21 '';
22
23 # "Building" the script happens in Docker
24 dontBuild = true;
25
26 meta = with lib; {
27 description =
28 "A full-featured BDD unit testing framework for bash, ksh, zsh, dash and all POSIX shells";
29 homepage = "https://shellspec.info/";
30 changelog =
31 "https://github.com/shellspec/shellspec/releases/tag/${version}";
32 license = licenses.mit;
33 maintainers = with maintainers; [ j0hax ];
34 platforms = platforms.unix;
35 };
36}