summaryrefslogtreecommitdiffstats
path: root/lass/2configs/IM.nix
diff options
context:
space:
mode:
Diffstat (limited to 'lass/2configs/IM.nix')
-rw-r--r--lass/2configs/IM.nix54
1 files changed, 31 insertions, 23 deletions
diff --git a/lass/2configs/IM.nix b/lass/2configs/IM.nix
index b79af3b49..5108f6bc1 100644
--- a/lass/2configs/IM.nix
+++ b/lass/2configs/IM.nix
@@ -1,29 +1,37 @@
with (import <stockholm/lib>);
-{ config, lib, pkgs, ... }:
+{ config, lib, pkgs, ... }: let
+ weechat = pkgs.weechat.override {
+ configure = { availablePlugins, ... }: with pkgs.weechatScripts; {
+ plugins = lib.attrValues (availablePlugins // {
+ python = availablePlugins.python.withPackages (_: [ weechat-matrix ]);
+ });
+ scripts = [ weechat-matrix ];
+ };
+ };
-{
- imports = [
- ./bitlbee.nix
- ];
+ tmux = pkgs.writeDashBin "tmux" ''
+ exec ${pkgs.tmux}/bin/tmux -f ${pkgs.writeText "tmux.conf" ''
+ set-option -g prefix `
+ unbind-key C-b
+ bind ` send-prefix
- 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
- 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
+ ''} "$@"
+ '';
- #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 {
+in {
+ imports = [
+ ./bitlbee.nix
+ ];
+ environment.systemPackages = [ tmux ];
+ systemd.services.chat = {
description = "chat environment setup";
after = [ "network.target" ];
wantedBy = [ "multi-user.target" ];
@@ -38,8 +46,8 @@ with (import <stockholm/lib>);
User = "lass";
RemainAfterExit = true;
Type = "oneshot";
- ExecStart = "${tmux} -2 new-session -d -s IM ${pkgs.weechat}/bin/weechat";
- ExecStop = "${tmux} kill-session -t IM";
+ ExecStart = "${tmux}/bin/tmux -2 new-session -d -s IM ${weechat}/bin/weechat";
+ ExecStop = "${tmux}/bin/tmux kill-session -t IM"; # TODO run save in weechat
};
};
}