System/home-manager/common/programs/core.nix

80 lines
2.0 KiB
Nix
Raw Normal View History

2022-10-02 16:42:53 -04:00
{ config, lib, pkgs, inputs, ... }:
with lib; {
2022-07-02 02:44:43 -04:00
config = mkMerge [
2022-07-03 00:40:04 -04:00
(mkIf config.nathan.programs.util.core {
home.packages = with pkgs; [
# Rust rewrites of common shell utilites
exa
bat
fd
sd
du-dust
ripgrep
ripgrep-all
hyperfine
dogdns
duf
2023-04-18 23:51:10 -04:00
xcp
2022-07-03 00:40:04 -04:00
# User friendly cut
choose
# Man but terse
tealdeer
2022-07-03 23:34:12 -04:00
# rsync for _The Cloud_ :tm:
rclone
2023-06-16 21:02:52 -04:00
# File
file
2022-07-03 00:40:04 -04:00
];
2022-09-05 02:31:37 -04:00
# Configure tmux
programs.tmux = {
enable = true;
aggressiveResize = true;
2023-05-14 19:55:38 -04:00
keyMode = "vi";
shortcut = "x";
terminal =
if pkgs.stdenv.isLinux then "tmux-256color" else "screen-256color";
escapeTime = 100;
plugins = with pkgs; [ tmuxPlugins.cpu tmuxPlugins.jump ];
extraConfig = ''
2022-09-05 02:31:37 -04:00
set -ag terminal-overrides ",xterm-256color:RGB"
2022-10-15 04:57:42 -04:00
set-option -g status-interval 1
set-option -g automatic-rename on
2023-05-14 19:55:38 -04:00
set-option -g automatic-rename-format '#{b:pane_current_path}: #{pane_current_command}'
2022-09-05 02:31:37 -04:00
'';
};
2023-01-27 20:06:22 -05:00
# Configure btop
programs.btop = { enable = true; };
2022-07-03 00:40:04 -04:00
})
(mkIf config.nathan.programs.util.productivity {
home.packages = with pkgs; [
tokei
# Spell check
hunspell
hunspellDicts.en-us
# CLI Markdown renderer
glow
# Command line file manager
broot
# Much better curl
httpie
# CLI spreadsheets
visidata
# Cheatsheet manager
cheat
# Ping with a graph
gping
# Pandoc for documentation
pandoc
2022-08-11 11:25:05 -04:00
# Tmate for pair programming
2023-07-23 21:06:20 -04:00
upterm
2022-07-03 00:40:04 -04:00
];
})
2022-07-02 02:44:43 -04:00
(mkIf config.nathan.programs.util.json {
#########################
## JSON Utilities
#########################
programs.jq = { enable = true; };
home.packages = with pkgs; [ jc fx ];
2022-07-02 02:44:43 -04:00
})
];
2022-06-23 02:57:41 -04:00
}