about summary refs log tree commit diff stats
path: root/pkgs/projectdo
diff options
context:
space:
mode:
authorAlan Pearce2025-03-09 18:08:53 +0100
committerAlan Pearce2025-03-09 18:08:53 +0100
commitaffbe9a165a939dc51b38f3f0214552c237b2e6e (patch)
treeeeabc1816d7fd7d75ef13f892d96e57695fe1b92 /pkgs/projectdo
parent7d98b3c0cabcb5fd697225bda690b75542c93afe (diff)
downloadnix-packages-affbe9a165a939dc51b38f3f0214552c237b2e6e.tar.lz
nix-packages-affbe9a165a939dc51b38f3f0214552c237b2e6e.tar.zst
nix-packages-affbe9a165a939dc51b38f3f0214552c237b2e6e.zip
add projectdo package
Diffstat (limited to 'pkgs/projectdo')
-rw-r--r--pkgs/projectdo/default.nix55
1 files changed, 55 insertions, 0 deletions
diff --git a/pkgs/projectdo/default.nix b/pkgs/projectdo/default.nix
new file mode 100644
index 0000000..b80de95
--- /dev/null
+++ b/pkgs/projectdo/default.nix
@@ -0,0 +1,55 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, ncurses
+, nodejs
+, pnpm
+, yarn
+, just
+,
+}:
+let
+  rev = "27c6fbc7fa534ce891db75361f2d2a27db64bb63";
+in
+stdenv.mkDerivation rec {
+  pname = "projectdo";
+  version = "unstable-2025-03-08";
+
+  src = fetchFromGitHub {
+    owner = "paldepind";
+    repo = "projectdo";
+    inherit rev;
+    hash = "sha256-ZBAzHo7/Sy8uyjWganSFs/uOJkmuDP8WxU3WVGttPTo=";
+  };
+
+  dontConfigure = true;
+  dontBuild = true;
+
+  doCheck = true;
+  checkPhase = ''
+    make test
+  '';
+
+  nativeBuildInputs = [
+    ncurses
+    nodejs
+    pnpm
+    yarn
+    just
+  ];
+
+  installPhase = ''
+    make PREFIX=$out install
+    install -D functions/* -t $out/share/fish/vendor_functions.d
+    install -D completions/* -t $out/share/fish/vendor_completions.d
+  '';
+
+  meta = {
+    description = "Context-aware single-letter project commands to speed up your terminal workflow";
+    homepage = "https://github.com/paldepind/projectdo";
+    license = lib.licenses.gpl3Only;
+    maintainers = with lib.maintainers; [ alanpearce ];
+    mainProgram = "projectdo";
+    platforms = lib.platforms.all;
+  };
+}