diff --git a/pkgs/tools/misc/shellspec/default.nix b/pkgs/tools/misc/shellspec/default.nix new file mode 100644 index 00000000000..27eead6e1c3 --- /dev/null +++ b/pkgs/tools/misc/shellspec/default.nix @@ -0,0 +1,34 @@ +{ lib, stdenv, fetchFromGitHub }: + +stdenv.mkDerivation rec { + pname = "shellspec"; + version = "0.28.1"; + + src = fetchFromGitHub { + owner = "shellspec"; + repo = pname; + rev = version; + sha256 = "1ib5qp29f2fmivwnv6hq35qhvdxz42xgjlkvy0i3qn758riyqf46"; + }; + + makeFlags = [ "PREFIX=${placeholder "out"}" ]; + + checkPhase = '' + ./shellspec --no-banner --task fixture:stat:prepare + ./shellspec --no-banner spec --jobs "$(nproc)" + ''; + + # "Building" the script happens in Docker + dontBuild = true; + + meta = with lib; { + description = + "A full-featured BDD unit testing framework for bash, ksh, zsh, dash and all POSIX shells"; + homepage = "https://shellspec.info/"; + changelog = + "https://github.com/shellspec/shellspec/releases/tag/${version}"; + license = licenses.mit; + maintainers = with maintainers; [ j0hax ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d6813e01ab8..9a3531492d1 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -9745,6 +9745,8 @@ with pkgs; shelldap = callPackage ../tools/misc/shelldap { }; + shellspec = callPackage ../tools/misc/shellspec { }; + schema2ldif = callPackage ../tools/text/schema2ldif { }; sharedown = callPackage ../tools/misc/sharedown { };