nixpkgs/pkgs/applications/networking/znc/modules.nix
Profpatsch 4a7f99d55d treewide: with stdenv.lib; in meta -> with lib;
Part of: https://github.com/NixOS/nixpkgs/issues/108938

meta = with stdenv.lib;

is a widely used pattern. We want to slowly remove
the `stdenv.lib` indirection and encourage people
to use `lib` directly. Thus let’s start with the meta
field.

This used a rewriting script to mostly automatically
replace all occurances of this pattern, and add the
`lib` argument to the package header if it doesn’t
exist yet.

The script in its current form is available at
https://cs.tvl.fyi/depot@2f807d7f141068d2d60676a89213eaa5353ca6e0/-/blob/users/Profpatsch/nixpkgs-rewriter/default.nix
2021-01-11 10:38:22 +01:00

199 lines
5.5 KiB
Nix

{ lib, stdenv, fetchFromGitHub, znc }:
let
zncDerivation = a@{
name, src, module_name,
buildPhase ? "${znc}/bin/znc-buildmod ${module_name}.cpp",
installPhase ? "install -D ${module_name}.so $out/lib/znc/${module_name}.so", ...
} : stdenv.mkDerivation (a // {
inherit buildPhase;
inherit installPhase;
buildInputs = znc.buildInputs;
meta = a.meta // { platforms = stdenv.lib.platforms.unix; };
passthru.module_name = module_name;
});
in {
backlog = zncDerivation rec {
name = "znc-backlog-${version}";
version = "git-2017-06-13";
module_name = "backlog";
src = fetchFromGitHub {
owner = "FruitieX";
repo = "znc-backlog";
rev = "42e8f439808882d2dae60f2a161eabead14e4b0d";
sha256 = "1k7ifpqqzzf2j7w795q4mx1nvmics2higzjqr3mid3lp43sqg5s6";
};
meta = with lib; {
description = "Request backlog for IRC channels.";
homepage = "https://github.com/fruitiex/znc-backlog/";
license = licenses.asl20;
maintainers = with maintainers; [ infinisil ];
};
};
clientbuffer = zncDerivation rec {
name = "znc-clientbuffer-${version}";
version = "git-2020-04-24";
module_name = "clientbuffer";
src = fetchFromGitHub {
owner = "CyberShadow";
repo = "znc-clientbuffer";
rev = "2e32d508aa975c0a307d09575a0198f8c56c11fa";
sha256 = "1jaspnrbv3pzsnbysqygc8s8g3q07zx5nlrdpgwv9j8aryg0pcnh";
};
meta = with lib; {
description = "ZNC module for client specific buffers";
homepage = "https://github.com/CyberShadow/znc-clientbuffer";
license = licenses.asl20;
maintainers = with maintainers; [ hrdinka szlend ];
};
};
clientaway = zncDerivation rec {
name = "znc-clientaway-${version}";
version = "git-2017-04-28";
module_name = "clientaway";
src = fetchFromGitHub {
owner = "kylef";
repo = "znc-contrib";
rev = "f6724a4a3b16b050088adde0cbeed74f189e5044";
sha256 = "0ikd3dzjjlr0gs0ikqfk50msm6mij99ln2rjzqavh58iwzr7n5r8";
};
meta = with lib; {
description = "ZNC clientaway module";
homepage = "https://github.com/kylef/znc-contrib";
license = licenses.gpl2;
maintainers = with maintainers; [ kiwi ];
};
};
fish = zncDerivation rec {
name = "znc-fish-${version}";
version = "git-2017-06-26";
module_name = "fish";
src = fetchFromGitHub {
# this fork works with ZNC 1.7
owner = "oilslump";
repo = "znc-fish";
rev = "7d91467dbb195f7b591567911210523c6087662e";
sha256 = "1ky5xg17k5f393whrv5iv8zsmdvdyk2f7z5qdsmxcwy3pdxy6vsm";
};
meta = {
description = "ZNC FiSH module";
homepage = "https://github.com/dctrwatson/znc-fish";
maintainers = [ stdenv.lib.maintainers.offline ];
};
};
ignore = zncDerivation rec {
name = "znc-ignore-${version}";
version = "git-2017-04-28";
module_name = "ignore";
src = fetchFromGitHub {
owner = "kylef";
repo = "znc-contrib";
rev = "f6724a4a3b16b050088adde0cbeed74f189e5044";
sha256 = "0ikd3dzjjlr0gs0ikqfk50msm6mij99ln2rjzqavh58iwzr7n5r8";
};
meta = with lib; {
description = "ZNC ignore module";
homepage = "https://github.com/kylef/znc-contrib";
license = licenses.gpl2;
maintainers = with maintainers; [ kiwi ];
};
};
palaver = zncDerivation rec {
name = "znc-palaver-${version}";
version = "2018-09-18";
module_name = "palaver";
src = fetchFromGitHub {
owner = "cocodelabs";
repo = "znc-palaver";
rev = "c70e8112686f917d39197d582db36c3ea37a4cb6";
sha256 = "1gjr8yqgpkpcc18rf0zfgil3rcd1ihqk0q9f8rwbfvs5381h3c58";
};
meta = with lib; {
description = "Palaver ZNC module";
homepage = "https://github.com/cocodelabs/znc-palaver";
license = licenses.mit;
maintainers = with maintainers; [ kiwi ];
};
};
playback = zncDerivation rec {
name = "znc-playback-${version}";
version = "git-2015-08-04";
module_name = "playback";
src = fetchFromGitHub {
owner = "jpnurmi";
repo = "znc-playback";
rev = "8691abf75becc1f3d7b5bb5ad68dad17cd21863b";
sha256 = "0mgfajljy035051b2sx70i8xrb51zw9q2z64kf85zw1lynihzyh4";
};
meta = with lib; {
description = "An advanced playback module for ZNC";
homepage = "https://github.com/jpnurmi/znc-playback";
license = licenses.asl20;
maintainers = with maintainers; [ hrdinka ];
};
};
privmsg = zncDerivation rec {
name = "znc-privmsg-${version}";
version = "git-2015-02-22";
module_name = "privmsg";
src = fetchFromGitHub {
owner = "kylef";
repo = "znc-contrib";
rev = "9f1f98db56cbbea96d83e6628f657e0d62cd9517";
sha256 = "0n82z87gdxxragcaixjc80z8bw4bmfwbk0jrf9zs8kk42phlkkc2";
};
meta = {
description = "ZNC privmsg module";
homepage = "https://github.com/kylef/znc-contrib";
};
};
push = zncDerivation rec {
name = "znc-push-${version}";
version = "git-2016-10-12";
module_name = "push";
src = fetchFromGitHub {
owner = "jreese";
repo = "znc-push";
rev = "cf08b9e0f483f03c28d72dd78df932cbef141f10";
sha256 = "0xpwjw8csyrg736g1jc1n8d6804x6kbdkrvldzhk9ldj4iwqz7ay";
};
meta = {
description = "Push notification service module for ZNC";
homepage = "https://github.com/jreese/znc-push";
license = stdenv.lib.licenses.mit;
maintainers = with stdenv.lib.maintainers; [ offline schneefux ];
};
};
}