biome: 1.9.2 -> 1.9.3
[NixPkgs.git] / pkgs / by-name / co / cook-cli / package.nix
blob846d3fb5277773b9512f57611a2715011951ed6e
1 { lib
2 , stdenv
3 , fetchFromGitHub
4 , buildNpmPackage
5 , rustPlatform
6 , pkg-config
7 , openssl
8 , darwin
9 }:
10 rustPlatform.buildRustPackage rec {
11   pname = "cook-cli";
12   version = "0.7.1";
14   src = fetchFromGitHub {
15     owner = "cooklang";
16     repo = "cookcli";
17     rev = "v${version}";
18     hash = "sha256-3gLVsk6GCxOG24Md7E9fk28Vnc4kVDdwyZUD/GtSwFE=";
19   };
21   cargoHash = "sha256-6lnURuE1cgNAniHl5ozXo1W3cLYYje7er+ZhvZDKdVg=";
23   nativeBuildInputs = [ pkg-config openssl ];
25   buildInputs = [
26     openssl
27   ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ darwin.apple_sdk.frameworks.SystemConfiguration ];
29   postPatch = ''
30     rm -rf "ui/public"
31     ln -s ${passthru.ui} "ui/public"
32   '';
34   OPENSSL_NO_VENDOR = 1;
36   passthru.ui = buildNpmPackage {
37     name = "ui";
38     src = "${src}/ui";
39     npmDepsHash = "sha256-uMyOAYLVHhY4ytvEFvVzdoQ7ExzQ4sH+ZtDrEacu5bk=";
40     makeCacheWritable = true;
41     npmFlags = [ "--legacy-peer-deps" ];
42     installPhase = ''
43       runHook preInstall
44       mv public/ $out
45       runHook postInstall
46     '';
47   };
49   meta = with lib; {
50     changelog = "https://github.com/cooklang/cookcli/releases/tag/v${version}";
51     description = "Suite of tools to create shopping lists and maintain recipes";
52     homepage = "https://cooklang.org/";
53     license = [ licenses.mit ];
54     mainProgram = "cook";
55     maintainers = [ maintainers.emilioziniades ];
56     platforms = platforms.linux ++ platforms.darwin;
57   };