aboutsummaryrefslogtreecommitdiff
path: root/nixpkgs/pkgs/tools/misc/bat-extras/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/tools/misc/bat-extras/default.nix')
-rw-r--r--nixpkgs/pkgs/tools/misc/bat-extras/default.nix42
1 files changed, 20 insertions, 22 deletions
diff --git a/nixpkgs/pkgs/tools/misc/bat-extras/default.nix b/nixpkgs/pkgs/tools/misc/bat-extras/default.nix
index 0f98b819b0f..36adc09cdba 100644
--- a/nixpkgs/pkgs/tools/misc/bat-extras/default.nix
+++ b/nixpkgs/pkgs/tools/misc/bat-extras/default.nix
@@ -1,5 +1,6 @@
-{ stdenv, callPackage, fetchFromGitHub, bash, makeWrapper, ncurses, bat
-# batgrep and batwatch
+{ stdenv, callPackage, fetchFromGitHub, bash, makeWrapper, bat
+# batdiff, batgrep, and batwatch
+, coreutils
, less
# batgrep
, ripgrep
@@ -10,34 +11,35 @@
, withRustFmt ? rustfmt != null, rustfmt ? null
# batwatch
, withEntr ? entr != null, entr ? null
- }:
+# batdiff
+, gitMinimal
+, withDelta ? gitAndTools?delta, gitAndTools ? null
+}:
let
# Core derivation that all the others are based on.
# This includes the complete source so the per-script derivations can run the tests.
core = stdenv.mkDerivation rec {
pname = "bat-extras";
- version = "20200408";
+ # there hasn't been a release since 2020-05-01 but there are important bugfixes
+ # to the test suite so we'll pull the latest commit as of 2020-06-17.
+ version = "20200515-dev"; # latest commit was dated 2020-05-15
src = fetchFromGitHub {
owner = "eth-p";
repo = pname;
- rev = "v${version}";
- sha256 = "184d5rwasfpgbj2k98alg3wy8jmzna2dgfik98w2a297ky67s51v";
+ rev = "3029b6749f61f7514e9eef30e035cfab0e31eb1d";
+ sha256 = "08mb94k2n182ql97c5s5j1v7np25ivynn5g0418whrx11ra41wr7";
fetchSubmodules = true;
};
- nativeBuildInputs = [ bash makeWrapper ];
+ # bat needs to be in the PATH during building so EXECUTABLE_BAT picks it up
+ nativeBuildInputs = [ bash bat ];
dontConfigure = true;
postPatch = ''
- substituteInPlace lib/constants.sh \
- --replace 'EXECUTABLE_BAT="bat"' 'EXECUTABLE_BAT="${bat}/bin/bat"'
-
patchShebangs --build test.sh test/shimexec .test-framework/bin/best.sh
- wrapProgram .test-framework/bin/best.sh \
- --prefix PATH : "${ncurses}/bin"
'';
buildPhase = ''
@@ -131,17 +133,13 @@ let
stdenv.lib.optional cond dep;
in
{
- batgrep = script "batgrep" [ less ripgrep ];
- batman = (script "batman" []).overrideAttrs (drv: {
- doCheck = stdenv.isDarwin; # test fails on Linux due to SIGPIPE (eth-p/bat-extras#19)
- });
- batwatch = script "batwatch" ([ less ] ++ optionalDep withEntr entr);
- prettybat = (script "prettybat" ([]
+ batdiff = script "batdiff" ([ less coreutils gitMinimal ] ++ optionalDep withDelta gitAndTools.delta);
+ batgrep = script "batgrep" [ less coreutils ripgrep ];
+ batman = script "batman" [];
+ batwatch = script "batwatch" ([ less coreutils ] ++ optionalDep withEntr entr);
+ prettybat = script "prettybat" ([]
++ optionalDep withShFmt shfmt
++ optionalDep withPrettier nodePackages.prettier
++ optionalDep withClangTools clang-tools
- ++ optionalDep withRustFmt rustfmt)
- ).overrideAttrs (drv: {
- doCheck = stdenv.isDarwin; # test fails on Linux due to SIGPIPE (eth-p/bat-extras#19)
- });
+ ++ optionalDep withRustFmt rustfmt);
}