nix-managed-macbook/programs/default.nix

118 lines
2.5 KiB
Nix

{ inputs, config, pkgs, ... }:
let
nixPackages = with pkgs; [
config.nix.package
niv
nix
nix-diff
nix-tree
nixfmt
nvd
statix
cachix
];
networkingPackages = with pkgs; [ curl dig httpie openssh mosh ];
cmdLineUtilPackages = with pkgs; [ bash broot coreutils-full fd gnugrep less ranger tree ];
miscPackages = with pkgs; [
binutils
cabal2nix
cloc
comma
difftastic
dua
entr
hyperfine
gitui
graphviz-nox
iterm2
jetbrains.idea-community
just
micro
fastfetch
proselint
shellcheck
typos
];
fonts = with pkgs; [
fira-mono
inconsolata
jetbrains-mono
nanum-gothic-coding
roboto-mono
source-code-pro
(pkgs.callPackage ../packages/dm-mono.nix { dm-mono-src = "${inputs.dm-mono-font}"; })
(pkgs.callPackage ../packages/monaspace.nix { monaspace-src = "${inputs.monaspace-font}"; })
(nerdfonts.override { fonts = [ "Monoid" "Agave" "Iosevka" "Lekton" "VictorMono" ]; })
];
in {
imports = [ ./fish.nix ./git.nix ./starship.nix ./vscode.nix ];
home.packages = nixPackages ++ networkingPackages ++ cmdLineUtilPackages ++ miscPackages ++ fonts;
programs = {
htop = {
enable = true;
settings = {
hide_kernel_threads = true;
hide_threads = true;
hide_userland_threads = true;
highlight_base_name = true;
show_program_path = false;
sort_direction = false;
sort_key = "PERCENT_CPU";
tree_view = true;
};
};
eza.enable = true;
direnv = {
enable = true;
nix-direnv = { enable = true; };
};
nix-index = {
enable = true;
enableFishIntegration = true;
};
bat = {
enable = true;
config = {
italic-text = "always";
paging = "always";
tabs = "2";
theme = "DarkNeon";
};
};
fzf = {
enable = true;
enableFishIntegration = true;
fileWidgetCommand = "fd --type f --no-ignore";
historyWidgetOptions = [ "--reverse" "--sort" "--exact" ];
};
micro = {
enable = true;
settings = {
autoindent = true;
colorcolumn = 100;
colorscheme = "gruvbox";
diffgutter = true;
hlsearch = true;
mkparents = true;
savecursor = true;
softwrap = true;
tabsize = 2;
tabstospaces = true;
# plugins
manipulator = true;
};
};
zoxide.enable = true;
};
}