diff options
author | makefu <github@syntax-fehler.de> | 2015-09-18 22:33:00 +0200 |
---|---|---|
committer | makefu <github@syntax-fehler.de> | 2015-09-18 22:33:00 +0200 |
commit | bb0ec5e74b6ca0737bc49408f00f8918710872a6 (patch) | |
tree | c5a7c91994ffffea181203d8098839cf259d930a /makefu/2configs/Reaktor | |
parent | 8039584d66efd9275f94e411cbfb664732fc732f (diff) |
add titlebot implementation
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')) + ''; +} |