nixpkgs-suyu/pkgs/applications/version-management/git-open/default.nix
AndersonTorres d994dabace treewide: remove git-and-tools directory
We do not use a "plugin system" for Git addons anymore, and therefore this
directory is no longer useful. Indeed that directory is way more confusing,
given that it includes more than mere Git addons, going from Bitbucket server
command-line tools to complete rewrites of Git in exotic programming languages.

Also, without this directory, the mental load of decision-making reduces a lot.
When anyone is interested in including a new git-related tool, just put it into
pkgs/applications/version-management, without apologies.
2022-12-19 15:05:22 -03:00

40 lines
1.3 KiB
Nix

{ lib, stdenv, git, xdg-utils, gnugrep, fetchFromGitHub, installShellFiles, makeWrapper, pandoc }:
stdenv.mkDerivation rec {
pname = "git-open";
version = "2.1.0";
src = fetchFromGitHub {
owner = "paulirish";
repo = "git-open";
rev = "v${version}";
sha256 = "11n46bngvca5wbdbfcxzjhjbfdbad7sgf7h9gf956cb1q8swsdm0";
};
nativeBuildInputs = [ installShellFiles makeWrapper pandoc ];
buildPhase = ''
# marked-man is broken and severly outdated.
# pandoc with some extra metadata is good enough and produces a by man readable file.
cat <(echo echo '% git-open (1) Version ${version} | Git manual') git-open.1.md > tmp
mv tmp git-open.1.md
pandoc --standalone --to man git-open.1.md -o git-open.1
'';
installPhase = ''
mkdir -p $out/bin
cp git-open $out/bin
installManPage git-open.1
wrapProgram $out/bin/git-open \
--prefix PATH : "${lib.makeBinPath [ git gnugrep ]}" \
--suffix PATH : "${lib.makeBinPath [ xdg-utils ]}"
'';
meta = with lib; {
homepage = "https://github.com/paulirish/git-open";
description = "Open the GitHub page or website for a repository in your browser";
license = licenses.mit;
platforms = platforms.all;
maintainers = with maintainers; [ jlesquembre SuperSandro2000 ];
};
}