ae1c0add81
cc @Profpatsch
47 lines
1.2 KiB
Nix
47 lines
1.2 KiB
Nix
{ stdenv, fetchFromGitHub, pandoc }:
|
||
|
||
stdenv.mkDerivation rec {
|
||
name = "git-dit-${version}";
|
||
version = "0.1.0";
|
||
|
||
buildInputs = [ pandoc ];
|
||
|
||
src = fetchFromGitHub {
|
||
owner = "neithernut";
|
||
repo = "git-dit";
|
||
rev = "v${version}";
|
||
sha256 = "1rvp2dhnb8yqrracvfpvf8z1vz4fs0rii18hhrskr6n1sfd7x9kd";
|
||
};
|
||
|
||
# the Makefile doesn’t work, we emulate it below
|
||
dontBuild = true;
|
||
|
||
postPatch = ''
|
||
# resolve binaries to the right path
|
||
sed -e "s|exec git-dit-|exec $out/bin/git-dit-|" -i git-dit
|
||
|
||
# we change every git dit command to the local subcommand path
|
||
# (git dit foo -> /nix/store/…-git-dit/bin/git-dit-foo)
|
||
for script in git-dit-*; do
|
||
sed -e "s|git dit |$out/bin/git-dit-|g" -i "$script"
|
||
done
|
||
'';
|
||
|
||
installPhase = ''
|
||
mkdir -p $out/{bin,share/man/man1}
|
||
# from the Makefile
|
||
${stdenv.lib.getBin pandoc}/bin/pandoc -s -t man git-dit.1.md \
|
||
-o $out/share/man/man1/git-dit.1
|
||
cp git-dit* $out/bin
|
||
'';
|
||
|
||
meta = with stdenv.lib; {
|
||
inherit (src.meta) homepage;
|
||
description = "Decentralized Issue Tracking for git";
|
||
license = licenses.gpl2;
|
||
maintainers = with maintainers; [ profpatsch matthiasbeyer ];
|
||
};
|
||
|
||
|
||
}
|