Merge pull request #268619 from tweag/lib-descriptions
[NixPkgs.git] / pkgs / applications / misc / mya / default.nix
blobd33e6aecdf2918b5543a90359ed15b0d8f3d97c2
1 { lib
2 , stdenv
3 , fetchFromGitHub
4 , cmake
5 , ninja
6 , curl
7 , json_c
8 , libbsd
9 , argp-standalone
12 stdenv.mkDerivation (finalAttrs: {
13   pname = "mya";
14   version = "1.0.0";
16   src = fetchFromGitHub {
17     owner = "jmakhack";
18     repo = "myanimelist-cli";
19     rev = "refs/tags/v${finalAttrs.version}";
20     hash = "sha256-EmdkPpYEUIk9hr6rbnixjvznKSEnTCSMZz/17BfHGCk=";
21   };
23   nativeBuildInputs = [
24     cmake
25     ninja
26   ];
28   buildInputs = [
29     curl
30     json_c
31     libbsd
32   ] ++ lib.optionals (!stdenv.hostPlatform.isGnu) [
33     argp-standalone
34   ];
36   patches = [
37     ./argp.patch
38   ];
40   installPhase = ''
41     runHook preInstall
43     # Based on the upstream PKGBUILD
44     mkdir -p $out/share/doc/${finalAttrs.pname}
45     cp -a bin $out
46     cp $cmakeDir/README.md $out/share/doc/${finalAttrs.pname}
48     runHook postInstall
49   '';
51   meta = with lib; {
52     description = "Minimalistic command line interface for fetching user anime data from MyAnimeList";
53     longDescription = ''
54       Minimalistic command line interface for fetching user anime data from MyAnimeList.
56       You have to run this with the MYANIMELIST_CLIENT_ID environ variable set.
57       Where to get one: <https://myanimelist.net/apiconfig>.
58       Select the type `other`.
59     '';
60     homepage = "https://github.com/jmakhack/myanimelist-cli";
61     changelog = "https://github.com/jmakhack/myanimelist-cli/releases/tag/v${finalAttrs.version}";
62     license = licenses.mit;
63     maintainers = with maintainers; [ pbsds ];
64     mainProgram = "mya";
65     platforms = platforms.all;
66   };