2023-10-05 13:43:28 -05:00
|
|
|
{
|
|
|
|
pkgs,
|
|
|
|
lib,
|
|
|
|
system,
|
|
|
|
inputs,
|
|
|
|
outputs,
|
2024-02-21 20:10:10 -06:00
|
|
|
config,
|
2023-10-05 13:43:28 -05:00
|
|
|
...
|
|
|
|
}: {
|
|
|
|
# TODO: fonts? right now they are only handled at the nixos-level (desktop-usage module)
|
|
|
|
# TODO: wallpaper?
|
|
|
|
|
2023-10-06 23:56:28 -05:00
|
|
|
imports = with outputs.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-03-24 20:39:24 -05:00
|
|
|
services.ssh-agent.enable = true;
|
|
|
|
|
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";
|
|
|
|
};
|
|
|
|
|
2023-10-05 13:43:28 -05:00
|
|
|
packages = [
|
|
|
|
# tools I use when editing nix code
|
|
|
|
pkgs.nil
|
|
|
|
pkgs.alejandra
|
|
|
|
|
2024-01-04 17:20:02 -06:00
|
|
|
# common scripts
|
2023-10-05 13:43:28 -05:00
|
|
|
(pkgs.buildEnv {
|
|
|
|
name = "my-scripts-common";
|
|
|
|
paths = [./scripts/common];
|
|
|
|
})
|
|
|
|
];
|
|
|
|
};
|
|
|
|
|
2024-01-02 18:54:46 -06:00
|
|
|
# TODO: not common?
|
|
|
|
# programs.password-store = {
|
|
|
|
# enable = true;
|
|
|
|
# package = pkgs.pass.withExtensions (exts: [exts.pass-otp]);
|
|
|
|
# };
|
2023-10-05 13:43:28 -05:00
|
|
|
|
2024-01-02 18:54:46 -06:00
|
|
|
# programs.gitui = {
|
|
|
|
# enable = true;
|
|
|
|
# };
|
2023-10-05 13:43:28 -05:00
|
|
|
|
|
|
|
programs.direnv = {
|
|
|
|
enable = true;
|
|
|
|
nix-direnv.enable = true;
|
|
|
|
};
|
|
|
|
|
|
|
|
programs.eza = {
|
|
|
|
enable = true;
|
2023-10-18 09:14:19 -05:00
|
|
|
package = inputs.nixpkgs.legacyPackages.${system}.eza;
|
2023-10-05 13:43:28 -05:00
|
|
|
};
|
|
|
|
|
|
|
|
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-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
|
|
|
}
|