fluffychat: 1.22.1 -> 1.23.0 (#364091)
[NixPkgs.git] / pkgs / by-name / di / discord-sh / package.nix
blob7276a9529d3b628a25bd86363d6b1446331b658d
2   lib,
3   stdenvNoCC,
4   fetchFromGitHub,
5   makeWrapper,
6   curl,
7   jq,
8   coreutils,
9   file,
12 stdenvNoCC.mkDerivation rec {
13   pname = "discord-sh";
14   version = "2.0.0";
16   src = fetchFromGitHub {
17     owner = "ChaoticWeg";
18     repo = "discord.sh";
19     rev = "v${version}";
20     sha256 = "sha256-ZOGhwR9xFzkm+q0Gm8mSXZ9toXG4xGPNwBQMCVanCbY=";
21   };
23   # ignore Makefile by disabling buildPhase. Upstream Makefile tries to download
24   # binaries from the internet for linting
25   dontBuild = true;
27   # discord.sh looks for the .webhook file in the source code directory, which
28   # isn't mutable on Nix
29   postPatch = ''
30     substituteInPlace discord.sh \
31       --replace 'thisdir="$(cd "$(dirname "$(readlink -f "''${BASH_SOURCE[0]}")")" && pwd)"' 'thisdir="$(pwd)"'
32   '';
34   nativeBuildInputs = [ makeWrapper ];
36   doInstallCheck = true;
38   installCheckPhase = ''
39     runHook preCheck
40     $out/bin/discord.sh --help
41     runHook postCheck
42   '';
44   installPhase = ''
45     runHook preInstall
46     install -Dm555 discord.sh $out/bin/discord.sh
47     wrapProgram $out/bin/discord.sh \
48       --set PATH "${
49         lib.makeBinPath [
50           curl
51           jq
52           coreutils
53           file
54         ]
55       }"
56     runHook postInstall
57   '';
59   meta = with lib; {
60     description = "Write-only command-line Discord webhook integration written in 100% Bash script";
61     mainProgram = "discord.sh";
62     homepage = "https://github.com/ChaoticWeg/discord.sh";
63     license = licenses.gpl3;
64     platforms = platforms.unix;
65     maintainers = with maintainers; [ matthewcroughan ];
66   };