about summary refs log tree commit diff
path: root/nixpkgs/pkgs/servers/irc
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/servers/irc')
-rw-r--r--nixpkgs/pkgs/servers/irc/charybdis/default.nix37
-rw-r--r--nixpkgs/pkgs/servers/irc/ircd-hybrid/default.nix26
-rw-r--r--nixpkgs/pkgs/servers/irc/ngircd/default.nix28
3 files changed, 91 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/servers/irc/charybdis/default.nix b/nixpkgs/pkgs/servers/irc/charybdis/default.nix
new file mode 100644
index 000000000000..dc053f4581cc
--- /dev/null
+++ b/nixpkgs/pkgs/servers/irc/charybdis/default.nix
@@ -0,0 +1,37 @@
+{ stdenv, fetchFromGitHub, autoreconfHook, bison, flex, openssl, gnutls }:
+
+stdenv.mkDerivation rec {
+  name = "charybdis-4.1.1";
+
+  src = fetchFromGitHub {
+    owner = "charybdis-ircd";
+    repo = "charybdis";
+    rev = name;
+    sha256 = "0wvssc8b1xq6svcqrwxrpc1ga8ip0sksv73wwbk8na0pmysdvpg0";
+  };
+
+  postPatch = ''
+    substituteInPlace include/defaults.h --replace 'PKGLOCALSTATEDIR "' '"/var/lib/charybdis'
+  '';
+
+  autoreconfPhase = "sh autogen.sh";
+
+  configureFlags = [
+    "--enable-epoll"
+    "--enable-ipv6"
+    "--enable-openssl=${openssl.dev}"
+    "--with-program-prefix=charybdis-"
+  ];
+
+  nativeBuildInputs = [ autoreconfHook bison flex ];
+  buildInputs = [ openssl gnutls ];
+
+  meta = with stdenv.lib; {
+    description = "IRCv3 server designed to be highly scalable";
+    homepage    = http://atheme.org/projects/charybdis.html;
+    license     = licenses.gpl2;
+    maintainers = with maintainers; [ lassulus fpletz ];
+    platforms   = platforms.unix;
+  };
+
+}
diff --git a/nixpkgs/pkgs/servers/irc/ircd-hybrid/default.nix b/nixpkgs/pkgs/servers/irc/ircd-hybrid/default.nix
new file mode 100644
index 000000000000..cf5b572c9eb4
--- /dev/null
+++ b/nixpkgs/pkgs/servers/irc/ircd-hybrid/default.nix
@@ -0,0 +1,26 @@
+{ stdenv, fetchurl, openssl, zlib }:
+
+stdenv.mkDerivation rec {
+  name = "ircd-hybrid-8.2.24";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/ircd-hybrid/${name}.tgz";
+    sha256 = "03nmzrhqfsxwry316nm80m9p285v65fz75ns7fg623hcy65jv97a";
+  };
+
+  buildInputs = [ openssl zlib ];
+
+  configureFlags = [
+    "--with-nicklen=100"
+    "--with-topiclen=360"
+    "--enable-openssl=${openssl.dev}"
+  ];
+
+  postInstall = "echo postinstall; mkdir -p \${out}/ ; rm -rf \${out}/logs ; ln -s /home/ircd \${out}/logs;";
+
+  meta = {
+    description = "An IPv6-capable IRC server";
+    platforms = stdenv.lib.platforms.unix;
+    homepage = http://www.ircd-hybrid.org/;
+  };
+}
diff --git a/nixpkgs/pkgs/servers/irc/ngircd/default.nix b/nixpkgs/pkgs/servers/irc/ngircd/default.nix
new file mode 100644
index 000000000000..f3b67741c191
--- /dev/null
+++ b/nixpkgs/pkgs/servers/irc/ngircd/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, fetchurl, zlib, openssl, pam, libiconv }:
+
+stdenv.mkDerivation rec {
+  name = "ngircd-24";
+
+  src = fetchurl {
+    url = "https://ngircd.barton.de/pub/ngircd/${name}.tar.xz";
+    sha256 = "020h9d1awyxqr0l42x1fhs47q7cmm17fdxzjish8p2kq23ma0gqp";
+  };
+
+  configureFlags = [
+    "--with-syslog"
+    "--with-zlib"
+    "--with-pam"
+    "--with-openssl"
+    "--enable-ipv6"
+    "--with-iconv"
+  ];
+
+  buildInputs = [ zlib pam openssl libiconv ];
+
+  meta = {
+    description = "Next Generation IRC Daemon";
+    homepage    = https://ngircd.barton.de;
+    license     = stdenv.lib.licenses.gpl2;
+    platforms   = stdenv.lib.platforms.all;
+  };
+}