Merge pull request #268619 from tweag/lib-descriptions
[NixPkgs.git] / pkgs / by-name / ab / aba / package.nix
blob14a32c61375d54fe80ce9583f6b9477bf5afbdd8
1 { fetchFromSourcehut
2 , just
3 , lib
4 , nix-update-script
5 , rustPlatform
6 , scdoc
7 }:
8 let
9   version = "0.7.1";
11 rustPlatform.buildRustPackage {
12   pname = "aba";
13   inherit version;
15   src = fetchFromSourcehut {
16     owner = "~onemoresuza";
17     repo = "aba";
18     rev = version;
19     hash = "sha256-Sz9I1Dw7wmoUPpTBNfbYbehfNO8FK6r/ubofx+FGb04=";
20     domain = "sr.ht";
21   };
23   cargoSha256 = "sha256-Ihoh+yp12qN74JHvJbEDoYz+eoMwPOQar+yBEy+bqb0=";
25   nativeBuildInputs = [
26     just
27     scdoc
28   ];
30   postPatch = ''
31     # Suppress messages of command not found. jq is not needed for the build, but just calls it anyway.
32     sed -i '/[[:space:]]*|[[:space:]]*jq -r/s/jq -r .*/: \\/' ./justfile
33     # Let only nix strip the binary by disabling cargo's `strip = true`, like buildRustPackage does.
34     sed -i '/strip[[:space:]]*=[[:space:]]*true/s/true/false/' ./Cargo.toml
35   '';
37   preBuild = ''
38     justFlagsArray+=(
39       PREFIX=${builtins.placeholder "out"}
40       MANIFEST_OPTS="--frozen --locked --profile=release"
41       INSTALL_OPTS=--no-track
42     )
43   '';
45   # There are no tests
46   doCheck = false;
47   dontUseJustCheck = true;
49   passthru.updateScript = nix-update-script { };
51   meta = {
52     description = "An address book for aerc";
53     homepage = "https://sr.ht/~onemoresuza/aba/";
54     changelog = "https://git.sr.ht/~onemoresuza/aba/tree/main/item/CHANGELOG.md";
55     downloadPage = "https://git.sr.ht/~onemoresuza/aba/refs/${version}";
56     maintainers = with lib.maintainers; [ onemoresuza ];
57     license = lib.licenses.isc;
58     mainProgram = "aba";
59   };