feat(home): Cheat

This commit is contained in:
punkfairie 2024-11-16 12:57:30 -08:00
parent 9aecfe94a7
commit 8dd10cdeb3
Signed by: punkfairie
GPG key ID: A509E8F77FB9D696
3 changed files with 52 additions and 36 deletions

View file

@ -18,6 +18,7 @@ in
bat = enabled; bat = enabled;
btop = enabled; btop = enabled;
cava = enabled; cava = enabled;
cheat = enabled;
fish = enabled; fish = enabled;
journalctl = enabled; journalctl = enabled;
neo = enabled; neo = enabled;

View file

@ -0,0 +1,51 @@
{
lib,
config,
namespace,
pkgs,
...
}:
let
inherit (lib) mkIf;
inherit (lib.${namespace}) mkEnableModule;
cfg = config.${namespace}.programs.cheat;
inherit (config.${namespace}) theme;
toYAML = (pkgs.formats.yaml { }).generate;
in
{
options = mkEnableModule "programs.cheat";
config = mkIf cfg.enable {
home.packages = with pkgs; [
cheat
];
xdg.configFile."cheat/conf.yml".source = toYAML "conf.yml" {
colorize = true;
style = "${theme.colors.base}";
formatter = "terminal256";
pager = "less -FRX";
cheatpaths =
let
cheatDir = "${config.xdg.configHome}/cheat/cheatsheets";
in
[
{
name = "community";
path = "${cheatDir}/community";
tags = [ "community" ];
readonly = true;
}
{
name = "personal";
path = "${cheatDir}/personal";
tags = [ "personal" ];
readonly = false;
}
];
};
};
}

View file

@ -1,36 +0,0 @@
{ pkgs, config, ... }:
let
toYaml = (pkgs.formats.yaml { }).generate;
in
{
home.packages = with pkgs; [
cheat
];
xdg.configFile."cheat/conf.yml".source = toYaml "conf.yml" {
colorize = true;
# TODO set based on global color scheme
style = "rose-pine";
formatter = "terminal256";
pager = "less -FRX";
cheatpaths =
let
cheatDir = "${config.xdg.configHome}/cheat/cheatsheets";
in
[
{
name = "community";
path = "${cheatDir}/community";
tags = [ "community" ];
readonly = true;
}
{
name = "personal";
path = "${cheatDir}/personal";
tags = [ "personal" ];
readonly = false;
}
];
};
}