nixos-config/home/shell/terminal.nix

33 lines
966 B
Nix
Raw Normal View History

2020-06-18 16:25:53 +02:00
{ config, pkgs, lib, ... }:
with pkgs;
with lib;
2020-06-18 16:25:53 +02:00
let
yamlToJSON = path:
runCommand "yaml.json" { nativeBuildInputs = [ pkgs.ruby ]; } ''
ruby -rjson -ryaml -e "puts YAML.load(ARGF).to_json" < ${path} > $out
'';
in {
# doesn't yet support font ligatures & undercurls
2020-06-18 16:25:53 +02:00
programs.alacritty = {
enable = true;
package = runCommand "alacritty" { buildInputs = [ makeWrapper ]; } ''
mkdir $out
ln -s ${alacritty}/* $out
rm $out/bin
makeWrapper ${tabbed}/bin/tabbed $out/bin/alacritty \
--add-flags "-c -n Alacritty" \
--add-flags "${alacritty}/bin/alacritty --embed"
'';
2020-06-18 16:25:53 +02:00
settings = recursiveUpdate {
key_bindings =
# disable font size bindings
map (key: {
inherit key;
mods = "Control";
action = "ReceiveChar";
}) [ "Key0" "Equals" "Add" "Subtract" "Minus" ];
2020-06-18 16:25:53 +02:00
} (trivial.importJSON (yamlToJSON ./alacritty-gruvbox-dark.yml));
};
}