diff options
author | Matt McHenry <github@matt.mchenryfamily.org> | 2023-08-30 15:10:58 -0400 |
---|---|---|
committer | Matt McHenry <github@matt.mchenryfamily.org> | 2023-09-01 09:58:35 -0400 |
commit | 58a476519e5878ae1467452e15c77dd913c21fe2 (patch) | |
tree | 9393d66acf4ab11740408a2b4ed084c29e4b4f33 /pkgs/applications/office | |
parent | d680ded26da5cf104dd2735a51e88d2d8f487b4d (diff) | |
download | nixpkgs-58a476519e5878ae1467452e15c77dd913c21fe2.tar nixpkgs-58a476519e5878ae1467452e15c77dd913c21fe2.tar.gz nixpkgs-58a476519e5878ae1467452e15c77dd913c21fe2.tar.bz2 nixpkgs-58a476519e5878ae1467452e15c77dd913c21fe2.tar.lz nixpkgs-58a476519e5878ae1467452e15c77dd913c21fe2.tar.xz nixpkgs-58a476519e5878ae1467452e15c77dd913c21fe2.tar.zst nixpkgs-58a476519e5878ae1467452e15c77dd913c21fe2.zip |
timetrap: add shell completions
Diffstat (limited to 'pkgs/applications/office')
-rw-r--r-- | pkgs/applications/office/timetrap/default.nix | 50 |
1 files changed, 44 insertions, 6 deletions
diff --git a/pkgs/applications/office/timetrap/default.nix b/pkgs/applications/office/timetrap/default.nix index 579c9e115be..7ece5e9b4b0 100644 --- a/pkgs/applications/office/timetrap/default.nix +++ b/pkgs/applications/office/timetrap/default.nix @@ -1,11 +1,49 @@ -{ lib, bundlerApp, bundlerUpdateScript }: +{ stdenv +, lib +, pkgs +, bundlerEnv +, bundlerApp +, bundlerUpdateScript +, installShellFiles +}: -bundlerApp { - pname = "timetrap"; - gemdir = ./.; - exes = [ "t" "timetrap" ]; +let + ttBundlerApp = bundlerApp { + pname = "timetrap"; + gemdir = ./.; + exes = [ "t" "timetrap" ]; - passthru.updateScript = bundlerUpdateScript "timetrap"; + passthru.updateScript = bundlerUpdateScript "timetrap"; + }; + + ttGem = bundlerEnv { + pname = "timetrap"; + gemdir = ./.; + }; + +in + +stdenv.mkDerivation { + name = "timetrap"; + + dontUnpack = true; + + nativeBuildInputs = [ installShellFiles ]; + + installPhase = '' + mkdir $out; + cd $out; + + mkdir bin; pushd bin; + ln -vs ${ttBundlerApp}/bin/t; + ln -vs ${ttBundlerApp}/bin/timetrap; + popd; + + for c in t timetrap; do + installShellCompletion --cmd $c --bash ${ttGem}/lib/ruby/gems/*/gems/timetrap*/completions/bash/*; + installShellCompletion --cmd $c --zsh ${ttGem}/lib/ruby/gems/*/gems/timetrap*/completions/zsh/*; + done; + ''; meta = with lib; { description = "A simple command line time tracker written in ruby"; |