2023-10-05 13:43:28 -05:00
|
|
|
{
|
|
|
|
pkgs,
|
|
|
|
lib,
|
2024-02-21 20:10:10 -06:00
|
|
|
config,
|
2023-10-05 13:43:28 -05:00
|
|
|
...
|
2024-06-28 14:01:32 -05:00
|
|
|
}: let
|
|
|
|
inherit (pkgs) system;
|
|
|
|
in {
|
|
|
|
imports = with homeManagerModules; [
|
2023-10-05 13:43:28 -05:00
|
|
|
# nix-colors.homeManagerModules.default
|
2023-10-06 23:56:28 -05:00
|
|
|
fish
|
2023-11-07 21:30:26 -06:00
|
|
|
bat
|
2023-10-06 23:56:28 -05:00
|
|
|
helix
|
|
|
|
git
|
|
|
|
zellij
|
|
|
|
broot
|
2023-11-21 18:27:53 -06:00
|
|
|
nnn
|
2023-11-29 21:27:15 -06:00
|
|
|
htop
|
2023-11-01 11:07:55 -05:00
|
|
|
tmux
|
2023-10-05 13:43:28 -05:00
|
|
|
];
|
|
|
|
|
2024-01-19 09:40:57 -06:00
|
|
|
programs.home-manager.enable = true;
|
|
|
|
|
2024-05-28 10:41:54 -05:00
|
|
|
# services.ssh-agent.enable = true;
|
2024-03-24 20:39:24 -05:00
|
|
|
|
2023-10-05 13:43:28 -05:00
|
|
|
home = {
|
2024-01-04 17:20:02 -06:00
|
|
|
username = lib.mkDefault "lytedev";
|
|
|
|
homeDirectory = lib.mkDefault "/home/lytedev";
|
2023-10-05 13:43:28 -05:00
|
|
|
stateVersion = lib.mkDefault "23.11";
|
|
|
|
|
2023-10-06 01:34:46 -05:00
|
|
|
sessionVariables = {
|
|
|
|
EDITOR = "hx";
|
|
|
|
VISUAL = "hx";
|
|
|
|
PAGER = "less";
|
|
|
|
MANPAGER = "less";
|
|
|
|
};
|
|
|
|
|
2024-05-29 13:42:13 -05:00
|
|
|
packages = with pkgs; [
|
2023-10-05 13:43:28 -05:00
|
|
|
# tools I use when editing nix code
|
2024-05-29 13:42:13 -05:00
|
|
|
nil
|
|
|
|
alejandra
|
|
|
|
gnupg
|
2024-06-24 10:03:00 -05:00
|
|
|
(pkgs.buildEnv {
|
|
|
|
name = "my-common-scripts";
|
|
|
|
paths = [./scripts/common];
|
|
|
|
})
|
2023-10-05 13:43:28 -05:00
|
|
|
];
|
|
|
|
};
|
|
|
|
|
|
|
|
programs.direnv = {
|
|
|
|
enable = true;
|
|
|
|
nix-direnv.enable = true;
|
|
|
|
};
|
|
|
|
|
|
|
|
programs.eza = {
|
|
|
|
enable = true;
|
|
|
|
};
|
|
|
|
|
|
|
|
programs.skim = {
|
2023-11-09 15:41:27 -06:00
|
|
|
# https://github.com/lotabout/skim/issues/494
|
|
|
|
enable = false;
|
|
|
|
enableFishIntegration = true;
|
|
|
|
defaultOptions = ["--no-clear-start" "--color=16"];
|
|
|
|
};
|
|
|
|
|
2024-02-21 20:10:10 -06:00
|
|
|
programs.atuin = {
|
|
|
|
enable = true;
|
|
|
|
enableBashIntegration = config.programs.bash.enable;
|
|
|
|
enableFishIntegration = config.programs.fish.enable;
|
|
|
|
enableZshIntegration = config.programs.zsh.enable;
|
|
|
|
enableNushellIntegration = config.programs.nushell.enable;
|
|
|
|
|
2024-02-21 23:47:45 -06:00
|
|
|
flags = [
|
|
|
|
"--disable-up-arrow"
|
|
|
|
];
|
|
|
|
|
2024-02-21 20:10:10 -06:00
|
|
|
settings = {
|
2024-02-21 22:59:49 -06:00
|
|
|
auto_sync = true;
|
|
|
|
sync_frequency = "1m";
|
|
|
|
sync_address = "https://atuin.h.lyte.dev";
|
|
|
|
keymap_mode = "vim-insert";
|
2024-04-10 11:42:05 -05:00
|
|
|
inline_height = 10;
|
|
|
|
show_preview = true;
|
2024-04-10 11:33:41 -05:00
|
|
|
|
|
|
|
sync = {
|
|
|
|
records = true;
|
|
|
|
};
|
2024-04-10 11:42:05 -05:00
|
|
|
|
|
|
|
dotfiles = {
|
|
|
|
enabled = true;
|
|
|
|
};
|
2024-02-21 20:10:10 -06:00
|
|
|
};
|
|
|
|
};
|
|
|
|
|
2023-11-09 15:41:27 -06:00
|
|
|
programs.fzf = {
|
|
|
|
# using good ol' fzf until skim sucks less out of the box I guess
|
2023-10-05 13:43:28 -05:00
|
|
|
enable = true;
|
2024-02-21 20:10:10 -06:00
|
|
|
# enableFishIntegration = true;
|
2023-11-09 16:55:01 -06:00
|
|
|
# defaultCommand = "fd --type f";
|
|
|
|
# defaultOptions = ["--height 40%"];
|
|
|
|
# fileWidgetOptions = ["--preview 'head {}'"];
|
2023-10-05 13:43:28 -05:00
|
|
|
};
|
|
|
|
|
2024-01-02 18:54:46 -06:00
|
|
|
# TODO: regular cron or something?
|
2023-10-05 13:43:28 -05:00
|
|
|
programs.nix-index = {
|
|
|
|
enable = true;
|
|
|
|
|
2024-02-21 20:33:50 -06:00
|
|
|
enableBashIntegration = config.programs.bash.enable;
|
|
|
|
enableFishIntegration = config.programs.fish.enable;
|
|
|
|
enableZshIntegration = config.programs.zsh.enable;
|
|
|
|
};
|
2023-10-05 13:43:28 -05:00
|
|
|
}
|