diff options
author | lassulus <lassulus@lassul.us> | 2021-01-23 18:32:56 +0100 |
---|---|---|
committer | lassulus <lassulus@lassul.us> | 2021-01-23 18:32:56 +0100 |
commit | df53de085f35b9da52e31ca2db6c1f6d97062127 (patch) | |
tree | a703bd67d9d4fedaa207b5613b91049ed92d5e36 /lass/2configs | |
parent | 9e4d47c5b46a92436d8e71c17a61ab729d4c4133 (diff) |
l: add missing IM.nix
Diffstat (limited to 'lass/2configs')
-rw-r--r-- | lass/2configs/IM.nix | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/lass/2configs/IM.nix b/lass/2configs/IM.nix new file mode 100644 index 000000000..b79af3b49 --- /dev/null +++ b/lass/2configs/IM.nix @@ -0,0 +1,45 @@ +with (import <stockholm/lib>); +{ config, lib, pkgs, ... }: + +{ + imports = [ + ./bitlbee.nix + ]; + + systemd.services.chat = let + tmux = pkgs.writeDash "tmux" '' + exec ${pkgs.tmux}/bin/tmux -f ${pkgs.writeText "tmux.conf" '' + set-option -g prefix ` + unbind-key C-b + bind ` send-prefix + + set-option -g status off + set-option -g default-terminal screen-256color + + #use session instead of windows + bind-key c new-session + bind-key p switch-client -p + bind-key n switch-client -n + bind-key C-s switch-client -l + ''} "$@" + ''; + in { + description = "chat environment setup"; + after = [ "network.target" ]; + wantedBy = [ "multi-user.target" ]; + + restartIfChanged = false; + + path = [ + pkgs.rxvt_unicode.terminfo + ]; + + serviceConfig = { + User = "lass"; + RemainAfterExit = true; + Type = "oneshot"; + ExecStart = "${tmux} -2 new-session -d -s IM ${pkgs.weechat}/bin/weechat"; + ExecStop = "${tmux} kill-session -t IM"; + }; + }; +} |