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