2023-05-28 20:02:28 +02:00
|
|
|
{ pkgs, config, lib, ... }:
|
|
|
|
with lib;
|
|
|
|
let
|
|
|
|
hoardSrc = pkgs.fetchFromGitHub {
|
|
|
|
owner = "Hyde46";
|
|
|
|
repo = "hoard";
|
|
|
|
rev = "v1.3.1";
|
|
|
|
sha256 = "sha256-Gm3X6/g5JQJEl7wRvWcO4j5XpROhtfRJ72LNaUeZRGc=";
|
|
|
|
};
|
|
|
|
in
|
|
|
|
{
|
|
|
|
options.components.terminal.hoard.enable = mkOption {
|
|
|
|
type = lib.types.bool;
|
|
|
|
default = config.components.terminal.enable;
|
|
|
|
};
|
|
|
|
|
|
|
|
config = mkIf (config.components.terminal.hoard.enable) {
|
|
|
|
|
|
|
|
# todo : sync via syncthing
|
|
|
|
backup.dirs = [
|
|
|
|
"/root/.config/hoard"
|
|
|
|
"/home/palo/.config/hoard"
|
|
|
|
];
|
|
|
|
|
2023-06-29 18:02:42 +02:00
|
|
|
environment.systemPackages = [ pkgs.legacy_2211.hoard ];
|
2023-05-28 20:02:28 +02:00
|
|
|
|
|
|
|
home-manager.users.mainUser = {
|
|
|
|
xdg.configFile."hoard/config.yml".text = builtins.toJSON {
|
|
|
|
version = "1.0.1";
|
|
|
|
default_namespace = "default";
|
|
|
|
config_home_path = "/home/palo/.config/hoard";
|
|
|
|
trove_path = "/home/palo/.config/hoard/trove.yml";
|
|
|
|
query_prefix = " >";
|
|
|
|
primary_color = [ 87 142 87 ];
|
|
|
|
secondary_color = [ 203 184 144 ];
|
|
|
|
tertiary_color = [ 30 30 30 ];
|
|
|
|
command_color = [ 30 30 30 ];
|
|
|
|
parameter_token = "#";
|
|
|
|
read_from_current_directory = true;
|
|
|
|
};
|
|
|
|
programs.zsh.initExtra = ''
|
|
|
|
export HOARD_NOBIND=1
|
|
|
|
source ${hoardSrc}/src/shell/hoard.zsh
|
|
|
|
bindkey '^x' _hoard_list_widget
|
|
|
|
'';
|
|
|
|
};
|
|
|
|
|
|
|
|
# use showkey -a
|
|
|
|
# Ctrl-h is equivalent to Ctrl-Backspace (for some reason)
|
|
|
|
programs.zsh.interactiveShellInit = ''
|
|
|
|
export HOARD_NOBIND=1
|
|
|
|
source ${hoardSrc}/src/shell/hoard.zsh
|
|
|
|
bindkey '^x' _hoard_list_widget
|
|
|
|
'';
|
|
|
|
programs.bash.interactiveShellInit = ''
|
|
|
|
export HOARD_NOBIND=1
|
|
|
|
source ${hoardSrc}/src/shell/hoard.bash
|
|
|
|
bind -x '"\C-x": __hoard_list'
|
|
|
|
'';
|
|
|
|
|
|
|
|
};
|
|
|
|
}
|