1{
2 lib,
3 fetchFromGitHub,
4 rustPlatform,
5 installShellFiles,
6}:
7rustPlatform.buildRustPackage rec {
8 pname = "tabiew";
9 version = "0.11.0";
10
11 src = fetchFromGitHub {
12 owner = "shshemi";
13 repo = "tabiew";
14 tag = "v${version}";
15 hash = "sha256-ilZOXV9P3i2Gzcop9PRCHznorEdGMje097d9my0JVeU=";
16 };
17
18 cargoHash = "sha256-TYOsE0v2m0lTTK/+S82URDk4+ywu2nzzTQAi9pdBu2U=";
19
20 nativeBuildInputs = [ installShellFiles ];
21
22 outputs = [
23 "out"
24 "man"
25 ];
26
27 postInstall = ''
28 installManPage target/manual/tabiew.1
29
30 installShellCompletion \
31 --bash target/completion/tw.bash \
32 --zsh target/completion/_tw \
33 --fish target/completion/tw.fish
34 '';
35
36 doCheck = false; # there are no tests
37
38 meta = {
39 description = "Lightweight, terminal-based application to view and query delimiter separated value formatted documents, such as CSV and TSV files";
40 homepage = "https://github.com/shshemi/tabiew";
41 changelog = "https://github.com/shshemi/tabiew/releases/tag/v${version}";
42 license = lib.licenses.mit;
43 mainProgram = "tw";
44 maintainers = with lib.maintainers; [ anas ];
45 platforms = with lib.platforms; unix ++ windows;
46 };
47}