Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ 2 lib, 3 stdenv, 4 xdg-utils, 5 gnugrep, 6 fetchFromGitHub, 7 installShellFiles, 8 makeWrapper, 9 pandoc, 10}: 11 12stdenv.mkDerivation rec { 13 pname = "git-open"; 14 version = "3.1.0"; 15 16 src = fetchFromGitHub { 17 owner = "paulirish"; 18 repo = "git-open"; 19 rev = "v${version}"; 20 sha256 = "sha256-bZOknoRMkPqm1pFFFbvrHrSi90ANLEE5fLcABYHov6Q="; 21 }; 22 23 nativeBuildInputs = [ 24 installShellFiles 25 makeWrapper 26 pandoc 27 ]; 28 29 buildPhase = '' 30 # marked-man is broken and severly outdated. 31 # pandoc with some extra metadata is good enough and produces a by man readable file. 32 cat <(echo echo '% git-open (1) Version ${version} | Git manual') git-open.1.md > tmp 33 mv tmp git-open.1.md 34 pandoc --standalone --to man git-open.1.md -o git-open.1 35 ''; 36 37 installPhase = '' 38 mkdir -p $out/bin 39 mv git-open $out/bin 40 installManPage git-open.1 41 wrapProgram $out/bin/git-open \ 42 --prefix PATH : "${lib.makeBinPath [ gnugrep ]}" \ 43 --suffix PATH : "${lib.makeBinPath [ xdg-utils ]}" 44 ''; 45 46 meta = with lib; { 47 homepage = "https://github.com/paulirish/git-open"; 48 description = "Open the GitHub page or website for a repository in your browser"; 49 license = licenses.mit; 50 platforms = platforms.all; 51 maintainers = with maintainers; [ SuperSandro2000 ]; 52 mainProgram = "git-open"; 53 }; 54}