nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 fetchFromSourcehut,
3 just,
4 lib,
5 nix-update-script,
6 rustPlatform,
7 scdoc,
8}:
9let
10 version = "0.8.0";
11in
12rustPlatform.buildRustPackage {
13 pname = "aba";
14 inherit version;
15
16 src = fetchFromSourcehut {
17 owner = "~onemoresuza";
18 repo = "aba";
19 tag = version;
20 hash = "sha256-2zVQNchL4DFh2v2/kwupJTBSmXiKqlxzUMrP9TbfCMs=";
21 };
22
23 cargoHash = "sha256-U1f68DY+yV6Uxwk1Re0eSNCFWYrYKCN08hJAYcp4ksE=";
24
25 nativeBuildInputs = [
26 just
27 scdoc
28 ];
29
30 postPatch = ''
31 # Let only nix strip the binary by disabling cargo's `strip = true`, like
32 # buildRustPackage does when not using just's setup hooks.
33 sed -i '/strip[[:space:]]*=[[:space:]]*true/s/true/false/' ./Cargo.toml
34 '';
35
36 preBuild = ''
37 justFlagsArray+=(
38 PREFIX=${placeholder "out"}
39 MANIFEST_OPTS="--frozen --locked --profile=release"
40 INSTALL_OPTS="--no-track"
41 )
42 '';
43
44 # There are no tests
45 doCheck = false;
46 dontUseJustCheck = true;
47
48 passthru.updateScript = nix-update-script { };
49
50 meta = {
51 description = "Address book for aerc";
52 homepage = "https://sr.ht/~onemoresuza/aba/";
53 changelog = "https://git.sr.ht/~onemoresuza/aba/tree/main/item/CHANGELOG.md";
54 downloadPage = "https://git.sr.ht/~onemoresuza/aba/refs/${version}";
55 maintainers = with lib.maintainers; [ onemoresuza ];
56 license = lib.licenses.isc;
57 mainProgram = "aba";
58 };
59}