2021-08-31 22:21:37 +00:00
|
|
|
{ config, pkgs, lib, ... }:
|
2021-09-08 00:32:11 +00:00
|
|
|
let
|
|
|
|
cfg = config.sconfig.alacritty;
|
|
|
|
in
|
2021-08-31 22:21:37 +00:00
|
|
|
{
|
2021-09-08 00:32:11 +00:00
|
|
|
options.sconfig.alacritty.enable = lib.mkEnableOption "Enable Alacritty";
|
|
|
|
|
|
|
|
config = lib.mkIf cfg.enable {
|
|
|
|
|
2021-11-02 21:33:58 +00:00
|
|
|
environment.systemPackages = [
|
|
|
|
pkgs.alacritty
|
|
|
|
(pkgs.writeTextFile {
|
|
|
|
name = "alacritty.yml";
|
|
|
|
destination = "/etc/xdg/alacritty.yml";
|
|
|
|
text = ''
|
|
|
|
env:
|
|
|
|
TERM: xterm-256color
|
|
|
|
key_bindings:
|
|
|
|
- { key: N, mods: Control|Shift, action: SpawnNewInstance }
|
|
|
|
- { key: T, mods: Control|Shift, action: SpawnNewInstance }
|
|
|
|
- { key: PageUp, mods: Shift, action: ScrollHalfPageUp }
|
|
|
|
- { key: PageDown, mods: Shift, action: ScrollHalfPageDown }
|
|
|
|
'';
|
|
|
|
})
|
|
|
|
];
|
2021-09-08 00:32:11 +00:00
|
|
|
|
2021-08-31 22:21:37 +00:00
|
|
|
programs.bash.interactiveShellInit = ''
|
|
|
|
function _set_title() {
|
|
|
|
printf "\033]0;%s@%s:%s\007" "''${USER}" "''${HOSTNAME%%.*}" "''${PWD/#$HOME/\~}"
|
|
|
|
}
|
|
|
|
[ -z "$VTE_VERSION" ] && PROMPT_COMMAND="_set_title; $PROMPT_COMMAND"
|
|
|
|
'';
|
|
|
|
|
2021-11-02 21:33:58 +00:00
|
|
|
environment.etc."xdg/alacritty.yml".source =
|
|
|
|
"/run/current-system/sw/etc/xdg/alacritty.yml";
|
2021-08-31 22:21:37 +00:00
|
|
|
|
|
|
|
};
|
|
|
|
}
|