solanum: fix MOTD

Previously this defaulted to the default MOTD in the solanum source
tree, and I don't want my friends to laugh at me. Includes a patch to
the tests to ensure that the MOTD is actually set.

This replicates the fix done in #109705 (solanum is a fork of charybdis,
so they share fundamental logic for this).

Signed-off-by: Christine Dodrill <me@christine.website>

Changed files
+12
nixos
tests
pkgs
servers
irc
solanum
+8
nixos/tests/solanum.nix
···
networking.firewall.allowedTCPPorts = [ ircPort ];
services.solanum = {
enable = true;
+
motd = ''
+
The default MOTD doesn't contain the word "nixos" in it.
+
This one does.
+
'';
};
};
} // lib.listToAttrs (builtins.map (client: lib.nameValuePair client {
···
${client}.systemctl("start ii")
${client}.wait_for_unit("ii")
${client}.wait_for_file("${iiDir}/${server}/out")
+
''
+
# look for the custom text in the MOTD.
+
''
+
${client}.wait_until_succeeds("grep 'nixos' ${iiDir}/${server}/out")
''
# wait until first PING from server arrives before joining,
# so we don't try it too early
+4
pkgs/servers/irc/solanum/default.nix
···
./dont-create-logdir.patch
];
+
postPatch = ''
+
substituteInPlace include/defaults.h --replace 'ETCPATH "' '"/etc/solanum'
+
'';
+
configureFlags = [
"--enable-epoll"
"--enable-ipv6"