1{ lib
2, curl
3, fetchFromGitHub
4, jq
5, makeBinaryWrapper
6, please-cli
7, stdenv
8, testers
9}:
10
11stdenv.mkDerivation (finalAttrs: {
12 pname = "please-cli";
13 version = "0.3.0";
14
15 src = fetchFromGitHub {
16 owner = "TNG";
17 repo = "please-cli";
18 rev = "v${finalAttrs.version}";
19 hash = "sha256-rJIR4eMhXL4K9iO7JxnkgWNsICV3hPQb0aobWNuHAG0=";
20 };
21
22 nativeBuildInputs = [ makeBinaryWrapper ];
23
24 installPhase = ''
25 runHook preInstall
26 install -Dm555 please.sh "$out/bin/please"
27 wrapProgram $out/bin/please \
28 --prefix PATH : ${lib.makeBinPath [ curl jq ]}
29 runHook postInstall
30 '';
31
32 passthru.tests = testers.testVersion {
33 package = please-cli;
34 version = "v${finalAttrs.version}";
35 };
36
37 meta = with lib; {
38 description = "An AI helper script to create CLI commands based on GPT prompts";
39 homepage = "https://github.com/TNG/please-cli";
40 license = licenses.asl20;
41 maintainers = with maintainers; [ _8-bit-fox ];
42 mainProgram = "please";
43 platforms = platforms.all;
44 };
45})