You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

modules.nix 5.5KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198
  1. { stdenv, fetchFromGitHub, znc }:
  2. let
  3. zncDerivation = a@{
  4. name, src, module_name,
  5. buildPhase ? "${znc}/bin/znc-buildmod ${module_name}.cpp",
  6. installPhase ? "install -D ${module_name}.so $out/lib/znc/${module_name}.so", ...
  7. } : stdenv.mkDerivation (a // {
  8. inherit buildPhase;
  9. inherit installPhase;
  10. buildInputs = znc.buildInputs;
  11. meta = a.meta // { platforms = stdenv.lib.platforms.unix; };
  12. passthru.module_name = module_name;
  13. });
  14. in {
  15. backlog = zncDerivation rec {
  16. name = "znc-backlog-${version}";
  17. version = "git-2017-06-13";
  18. module_name = "backlog";
  19. src = fetchFromGitHub {
  20. owner = "FruitieX";
  21. repo = "znc-backlog";
  22. rev = "42e8f439808882d2dae60f2a161eabead14e4b0d";
  23. sha256 = "1k7ifpqqzzf2j7w795q4mx1nvmics2higzjqr3mid3lp43sqg5s6";
  24. };
  25. meta = with stdenv.lib; {
  26. description = "Request backlog for IRC channels.";
  27. homepage = https://github.com/fruitiex/znc-backlog/;
  28. license = licenses.asl20;
  29. maintainers = with maintainers; [ infinisil ];
  30. };
  31. };
  32. clientbuffer = zncDerivation rec {
  33. name = "znc-clientbuffer-${version}";
  34. version = "git-2015-08-27";
  35. module_name = "clientbuffer";
  36. src = fetchFromGitHub {
  37. owner = "jpnurmi";
  38. repo = "znc-clientbuffer";
  39. rev = "fe0f368e1fcab2b89d5c94209822d9b616cea840";
  40. sha256 = "1s8bqqlwy9kmcpmavil558rd2b0wigjlzp2lpqpcqrd1cg25g4a7";
  41. };
  42. meta = with stdenv.lib; {
  43. description = "ZNC module for client specific buffers";
  44. homepage = https://github.com/jpnurmi/znc-clientbuffer;
  45. license = licenses.asl20;
  46. maintainers = with maintainers; [ hrdinka ];
  47. };
  48. };
  49. clientaway = zncDerivation rec {
  50. name = "znc-clientaway-${version}";
  51. version = "git-2017-04-28";
  52. module_name = "clientaway";
  53. src = fetchFromGitHub {
  54. owner = "kylef";
  55. repo = "znc-contrib";
  56. rev = "f6724a4a3b16b050088adde0cbeed74f189e5044";
  57. sha256 = "0ikd3dzjjlr0gs0ikqfk50msm6mij99ln2rjzqavh58iwzr7n5r8";
  58. };
  59. meta = with stdenv.lib; {
  60. description = "ZNC clientaway module";
  61. homepage = https://github.com/kylef/znc-contrib;
  62. license = licenses.gpl2;
  63. maintainers = with maintainers; [ kiwi ];
  64. };
  65. };
  66. fish = zncDerivation rec {
  67. name = "znc-fish-${version}";
  68. version = "git-2017-06-26";
  69. module_name = "fish";
  70. src = fetchFromGitHub {
  71. # this fork works with ZNC 1.7
  72. owner = "oilslump";
  73. repo = "znc-fish";
  74. rev = "7d91467dbb195f7b591567911210523c6087662e";
  75. sha256 = "1ky5xg17k5f393whrv5iv8zsmdvdyk2f7z5qdsmxcwy3pdxy6vsm";
  76. };
  77. meta = {
  78. description = "ZNC FiSH module";
  79. homepage = https://github.com/dctrwatson/znc-fish;
  80. maintainers = [ stdenv.lib.maintainers.offline ];
  81. };
  82. };
  83. ignore = zncDerivation rec {
  84. name = "znc-ignore-${version}";
  85. version = "git-2017-04-28";
  86. module_name = "ignore";
  87. src = fetchFromGitHub {
  88. owner = "kylef";
  89. repo = "znc-contrib";
  90. rev = "f6724a4a3b16b050088adde0cbeed74f189e5044";
  91. sha256 = "0ikd3dzjjlr0gs0ikqfk50msm6mij99ln2rjzqavh58iwzr7n5r8";
  92. };
  93. meta = with stdenv.lib; {
  94. description = "ZNC ignore module";
  95. homepage = https://github.com/kylef/znc-contrib;
  96. license = licenses.gpl2;
  97. maintainers = with maintainers; [ kiwi ];
  98. };
  99. };
  100. palaver = zncDerivation rec {
  101. name = "znc-palaver-${version}";
  102. version = "2018-09-18";
  103. module_name = "palaver";
  104. src = fetchFromGitHub {
  105. owner = "cocodelabs";
  106. repo = "znc-palaver";
  107. rev = "c70e8112686f917d39197d582db36c3ea37a4cb6";
  108. sha256 = "1gjr8yqgpkpcc18rf0zfgil3rcd1ihqk0q9f8rwbfvs5381h3c58";
  109. };
  110. meta = with stdenv.lib; {
  111. description = "Palaver ZNC module";
  112. homepage = "https://github.com/cocodelabs/znc-palaver";
  113. license = licenses.mit;
  114. maintainers = with maintainers; [ kiwi ];
  115. };
  116. };
  117. playback = zncDerivation rec {
  118. name = "znc-playback-${version}";
  119. version = "git-2015-08-04";
  120. module_name = "playback";
  121. src = fetchFromGitHub {
  122. owner = "jpnurmi";
  123. repo = "znc-playback";
  124. rev = "8691abf75becc1f3d7b5bb5ad68dad17cd21863b";
  125. sha256 = "0mgfajljy035051b2sx70i8xrb51zw9q2z64kf85zw1lynihzyh4";
  126. };
  127. meta = with stdenv.lib; {
  128. description = "An advanced playback module for ZNC";
  129. homepage = https://github.com/jpnurmi/znc-playback;
  130. license = licenses.asl20;
  131. maintainers = with maintainers; [ hrdinka ];
  132. };
  133. };
  134. privmsg = zncDerivation rec {
  135. name = "znc-privmsg-${version}";
  136. version = "git-2015-02-22";
  137. module_name = "privmsg";
  138. src = fetchFromGitHub {
  139. owner = "kylef";
  140. repo = "znc-contrib";
  141. rev = "9f1f98db56cbbea96d83e6628f657e0d62cd9517";
  142. sha256 = "0n82z87gdxxragcaixjc80z8bw4bmfwbk0jrf9zs8kk42phlkkc2";
  143. };
  144. meta = {
  145. description = "ZNC privmsg module";
  146. homepage = https://github.com/kylef/znc-contrib;
  147. };
  148. };
  149. push = zncDerivation rec {
  150. name = "znc-push-${version}";
  151. version = "git-2016-10-12";
  152. module_name = "push";
  153. src = fetchFromGitHub {
  154. owner = "jreese";
  155. repo = "znc-push";
  156. rev = "cf08b9e0f483f03c28d72dd78df932cbef141f10";
  157. sha256 = "0xpwjw8csyrg736g1jc1n8d6804x6kbdkrvldzhk9ldj4iwqz7ay";
  158. };
  159. meta = {
  160. description = "Push notification service module for ZNC";
  161. homepage = https://github.com/jreese/znc-push;
  162. license = stdenv.lib.licenses.mit;
  163. maintainers = with stdenv.lib.maintainers; [ offline schneefux ];
  164. };
  165. };
  166. }