diff options
Diffstat (limited to 'makefu/2configs/Reaktor')
-rw-r--r-- | makefu/2configs/Reaktor/titlebot.nix | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/makefu/2configs/Reaktor/titlebot.nix b/makefu/2configs/Reaktor/titlebot.nix new file mode 100644 index 000000000..9ef02548b --- /dev/null +++ b/makefu/2configs/Reaktor/titlebot.nix @@ -0,0 +1,38 @@ +{ stdenv,config, lib, pkgs, ... }: + +with pkgs; +let + pypkgs = pkgs.python3Packages; + titlebot_cmds = pypkgs.buildPythonPackage { + name = "titlebot_cmds"; + propagatedBuildInputs = with pypkgs; [ setuptools ]; + src = fetchurl { + # https://github.com/makefu/reaktor-titlebot tag 2.1.0 + url = "https://github.com/makefu/reaktor-titlebot/archive/2.1.0.tar.gz"; + sha256 = "0wvf09wmk8b52f9j65qrw81nwrhs9pfhijwrlkzp5l7l2q8cjkp6"; + }; + }; + pub_cmds = ["up" "help" "list" "top" "highest" "undo" ]; + priv_cmds = [ "clear" ]; +in { + # TODO: write identify file in + # {config.users.extraUsers.Reaktor.home}/state/admin.lst + krebs.Reaktor.extraConfig = '' + def titlebot_cmd(cmd): + return { + 'capname': cmd, + 'env': { + 'TITLEDB': + '${config.users.extraUsers.Reaktor.home}/suggestions.json' + }, + 'pattern': '^\\.' + cmd + '\\s*(?:\\s+(?P<args>.*))?$$', + 'argv': [ '${titlebot_cmds}/bin/' + cmd ] } + # TODO: for each element in ${titlebot_cmds}/bin/* + public_commands.insert(0,titlebot_cmd('up')) + public_commands.insert(0,titlebot_cmd('help')) + public_commands.insert(0,titlebot_cmd('list')) + public_commands.insert(0,titlebot_cmd('top')) + public_commands.insert(0,titlebot_cmd('new')) + commands.insert(0,titlebot_cmd('clear')) + ''; +} |