add aspects/cli/ home-manager modules

CLI tool configurations: btop, comma, direnv, helix, hm-cli, starship, tmux

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
William 2026-02-06 22:36:30 -03:00
parent f5c44965a8
commit a2f013c529
7 changed files with 144 additions and 0 deletions

13
aspects/cli/btop.nix Normal file
View file

@ -0,0 +1,13 @@
{ ... }:
{
flake.modules.homeManager.cli-btop = { config, lib, pkgs, ... }: {
programs.btop = {
enable = true;
settings = {
theme_background = false;
proc_sorting = "cpu direct";
update_ms = 500;
};
};
};
}

8
aspects/cli/comma.nix Normal file
View file

@ -0,0 +1,8 @@
{ ... }:
{
flake.modules.homeManager.cli-comma = { config, lib, pkgs, inputs, ... }: {
imports = [ inputs.nix-index-database.homeModules.nix-index ];
programs.nix-index-database.comma.enable = true;
};
}

9
aspects/cli/direnv.nix Normal file
View file

@ -0,0 +1,9 @@
{ ... }:
{
flake.modules.homeManager.cli-direnv = { config, lib, pkgs, ... }: {
programs.direnv = {
enable = true;
nix-direnv.enable = true;
};
};
}

50
aspects/cli/helix.nix Normal file
View file

@ -0,0 +1,50 @@
{ ... }:
{
flake.modules.homeManager.cli-helix = { config, lib, pkgs, ... }: {
home.sessionVariables = {
EDITOR = "hx";
};
programs.helix = {
enable = true;
settings = {
editor = {
file-picker.hidden = false;
idle-timeout = 0;
line-number = "relative";
cursor-shape = {
normal = "underline";
insert = "bar";
select = "underline";
};
soft-wrap.enable = true;
auto-format = true;
indent-guides.render = true;
};
keys.normal = {
space = {
o = "file_picker_in_current_buffer_directory";
esc = [
"collapse_selection"
"keep_primary_selection"
];
};
};
};
languages = {
language = [
{
name = "nix";
auto-format = true;
formatter.command = "nixfmt";
}
{
name = "typst";
auto-format = true;
formatter.command = "typstyle -c 1000 -i";
}
];
};
};
};
}

11
aspects/cli/hm-cli.nix Normal file
View file

@ -0,0 +1,11 @@
{ ... }:
{
flake.modules.homeManager.cli-base = { config, lib, pkgs, ... }: {
home = {
packages = with pkgs; [ hm-cli ];
sessionVariables = {
HM_PATH = "/etc/nixos";
};
};
};
}

41
aspects/cli/starship.nix Normal file
View file

@ -0,0 +1,41 @@
{ ... }:
{
flake.modules.homeManager.cli-starship = { config, lib, pkgs, ... }: {
programs.starship = {
enable = true;
enableBashIntegration = true;
enableFishIntegration = true;
settings = {
add_newline = false;
format = ''
$hostname$directory$git_branch$git_status$nix_shell
[ ](bold green)
'';
right_format = "$cmd_duration$character";
hostname = {
ssh_symbol = "󰖟 ";
};
character = {
error_symbol = "[](red)";
success_symbol = "[󱐋](green)";
};
cmd_duration = {
format = "[󰄉 $duration ]($style)";
style = "yellow";
min_time = 500;
};
git_branch = {
symbol = " ";
style = "purple";
};
git_status.style = "red";
nix_shell = {
format = "via [$symbol$state]($style)";
heuristic = true;
style = "blue";
symbol = "󱄅 ";
};
};
};
};
}

12
aspects/cli/tmux.nix Normal file
View file

@ -0,0 +1,12 @@
{ ... }:
{
flake.modules.homeManager.cli-tmux = { config, lib, pkgs, ... }: {
programs.tmux = {
enable = true;
clock24 = true;
terminal = "xterm-256color";
mouse = true;
keyMode = "vi";
};
};
}