1{ stdenv, fetchFromGitHub, fetchpatch, rustPlatform, openssl, cmake, perl, pkgconfig, zlib }:
2
3with rustPlatform;
4
5buildRustPackage rec {
6 version = "0.9.1";
7 name = "git-series-${version}";
8
9 src = fetchFromGitHub {
10 owner = "git-series";
11 repo = "git-series";
12 rev = version;
13 sha256 = "07mgq5h6r1gf3jflbv2khcz32bdazw7z1s8xcsafdarnm13ps014";
14 };
15
16 cargoSha256 = "06w864f73kijq24xzljfaf47d97aqyg4md3crzbq8hns157m3sv2";
17
18 cargoDepsHook = ''
19 (
20 cd */
21 # see https://github.com/git-series/git-series/pull/56
22 patch -p1 < ${fetchpatch {
23 url = "https://github.com/Mic92/git-series/commit/3aa30a47d74ebf90b444dccdf8c153f07f119483.patch";
24 sha256 = "06v8br9skvy75kcw2zgbswxyk82sqzc8smkbqpzmivxlc2i9rnh0";
25 }}
26 )
27 '';
28
29 nativeBuildInputs = [ cmake pkgconfig perl ];
30 buildInputs = [ openssl zlib ];
31
32 postBuild = ''
33 install -D "$src/git-series.1" "$out/man/man1/git-series.1"
34 '';
35
36 meta = with stdenv.lib; {
37 description = "A tool to help with formatting git patches for review on mailing lists";
38 longDescription = ''
39 git series tracks changes to a patch series over time. git
40 series also tracks a cover letter for the patch series,
41 formats the series for email, and prepares pull requests.
42 '';
43 homepage = https://github.com/git-series/git-series;
44
45 license = licenses.mit;
46 maintainers = [ maintainers.vmandela ];
47 };
48}