1{ lib
2, fetchFromGitHub
3, rustPlatform
4, stdenv
5, pkg-config
6, libgpg-error
7, gpgme
8, dbus
9, openssl
10, Security
11}:
12
13rustPlatform.buildRustPackage rec {
14 pname = "git-ps-rs";
15 version = "6.7.0";
16
17 src = fetchFromGitHub {
18 owner = "uptech";
19 repo = "git-ps-rs";
20 rev = version;
21 hash = "sha256-yBZ+YJxiVO8+rI7FLtI0xse8hoirjt5Bc2KxPeBidd0=";
22 };
23
24 cargoLock = {
25 lockFile = ./Cargo.lock;
26 outputHashes = {
27 "home-dir-0.1.0" = "sha256-k5GYZcR1FI/JEfJhPWOdICBZ9CqJCqX+fYygxxWvFp4=";
28 };
29 };
30
31 nativeBuildInputs = [
32 pkg-config
33 gpgme # gpgme runs a small script at build time so has to go here
34 ];
35
36 buildInputs = [ openssl dbus libgpg-error gpgme ]
37 ++ lib.optionals stdenv.isDarwin [ Security ];
38
39 meta = with lib; {
40 description = "Tool for working with a stack of patches";
41 homepage = "https://git-ps.sh/";
42 license = licenses.mit;
43 maintainers = with maintainers; [ alizter ];
44 };
45}