diff --git a/pkgs/servers/irc/solanum/default.nix b/pkgs/servers/irc/solanum/default.nix new file mode 100644 index 00000000000..9455929e3be --- /dev/null +++ b/pkgs/servers/irc/solanum/default.nix @@ -0,0 +1,60 @@ +{ stdenv +, fetchFromGitHub +, autoreconfHook +, pkg-config +, bison +, flex +, openssl +, sqlite +, lksctp-tools +}: + +stdenv.mkDerivation rec { + pname = "solanum"; + version = "unstable-2020-12-14"; + + src = fetchFromGitHub { + owner = "solanum-ircd"; + repo = pname; + rev = "551e5a146eab4948ce4a57d87a7f671f2d7cc02d"; + sha256 = "14cd2cb04w6nwck7q49jw5zvifkzhkmblwhjfskc2nxcdb5x3l96"; + }; + + patches = [ + ./dont-create-logdir.patch + ]; + + configureFlags = [ + "--enable-epoll" + "--enable-ipv6" + "--enable-openssl=${openssl.dev}" + "--with-program-prefix=solanum-" + "--localstatedir=/var/lib/solanum" + "--with-rundir=/run/solanum" + "--with-logdir=/var/log/solanum" + ] ++ stdenv.lib.optionals (stdenv.isLinux) [ + "--enable-sctp=${lksctp-tools.out}/lib" + ]; + + nativeBuildInputs = [ + autoreconfHook + bison + flex + pkg-config + ]; + + buildInputs = [ + openssl + sqlite + ]; + + doCheck = !stdenv.isDarwin; + + meta = with stdenv.lib; { + description = "An IRCd for unified networks"; + homepage = "https://github.com/solanum-ircd/solanum"; + license = licenses.gpl2Only; + maintainers = with maintainers; [ hexa ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/servers/irc/solanum/dont-create-logdir.patch b/pkgs/servers/irc/solanum/dont-create-logdir.patch new file mode 100644 index 00000000000..e348dd7b85b --- /dev/null +++ b/pkgs/servers/irc/solanum/dont-create-logdir.patch @@ -0,0 +1,14 @@ +diff --git a/Makefile.am b/Makefile.am +index 19e7b396..21093521 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -35,9 +35,6 @@ include/serno.h: + echo '#define DATECODE 0UL' >>include/serno.h; \ + fi + +-install-data-hook: +- test -d ${DESTDIR}${logdir} || mkdir -p ${DESTDIR}${logdir} +- + install-exec-hook: + rm -f ${DESTDIR}${libdir}/*.la + rm -f ${DESTDIR}${moduledir}/*.la diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 4dfdcfd3ae0..a4876851f10 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7528,6 +7528,8 @@ in solaar = callPackage ../applications/misc/solaar {}; + solanum = callPackage ../servers/irc/solanum {}; + sourceHighlight = callPackage ../tools/text/source-highlight { }; spacebar = callPackage ../os-specific/darwin/spacebar {