dotfiles.nix/home/programs.nix

111 lines
2.8 KiB
Nix
Raw Normal View History

2022-12-21 05:22:57 +00:00
{ pkgs, lib, ... }: {
2022-09-15 21:17:21 +00:00
# Programs + packages with configuration --------------------------------------------------------------- {{{
2022-01-23 01:32:58 +00:00
programs = {
# a nicer cat
# https://rycee.gitlab.io/home-manager/options.html#opt-programs.bat.enable
bat = {
enable = true;
2023-08-23 00:50:29 +00:00
config = { style = "auto"; };
2022-01-23 01:32:58 +00:00
};
# Direnv, load and unload environment variables depending on the current directory.
# https://direnv.net
# https://rycee.gitlab.io/home-manager/options.html#opt-programs.direnv.enable
direnv = {
enable = true;
nix-direnv.enable = true;
};
2023-08-23 00:50:29 +00:00
nix-index = { enable = true; };
nushell = { enable = true; };
2022-07-29 22:01:24 +00:00
ssh = {
enable = true;
2022-10-16 23:43:04 +00:00
matchBlocks."*".extraOptions = lib.optionalAttrs pkgs.stdenv.isDarwin {
2022-07-29 22:01:24 +00:00
UseKeychain = "yes";
AddKeysToAgent = "yes";
};
};
2023-07-30 23:42:05 +00:00
# vscode = {
# enable = true;
2023-08-23 00:50:29 +00:00
# extensions = [ pijul-vscode ];
2023-07-30 23:42:05 +00:00
# };
2023-08-23 00:50:29 +00:00
zoxide = { enable = true; };
2022-01-23 01:32:58 +00:00
};
# }}}
# Other packages ----------------------------------------------------------------------------- {{{
2022-12-21 05:22:57 +00:00
home.packages = builtins.attrValues ({
inherit (pkgs)
2023-08-23 00:50:29 +00:00
# GUI apps
cinny discord-ptb lagrange obsidian slack zoom-us
2022-12-21 05:22:57 +00:00
# System
2023-08-23 00:50:29 +00:00
curl wget
2022-12-21 05:22:57 +00:00
# lightweight session management
abduco
# archive tool
atool
# fancy version of `top` with ASCII graphs
bottom
# fancy version of `du`
du-dust
# fancy version of `ls`
exa
# fancy version of `find`
fd
# wrapper for `ssh` that better at not dropping connections
mosh
# fancy version of `ps`
procs
# pipe progress viewer
pv
# command line file encryption
rage
2023-04-14 19:57:47 +00:00
# terminal color support testing
terminal-colors
# automatic command line fixes
2022-12-21 05:22:57 +00:00
thefuck
# extract RAR archives
unrar
# extract XZ archives
xz
2022-01-23 01:32:58 +00:00
2022-12-21 05:22:57 +00:00
# Dev stuff
# source code line counter
cloc
# command line tools for digitalocean
doctl
# command line tools for fly.io
flyctl
# benchmarking tool
hyperfine
# json processor
jq
2023-06-07 20:14:01 +00:00
# task runner
just
2022-12-21 05:22:57 +00:00
# alternative to `git`
pijul
# better version of `grep`
ripgrep
# rust implementation of `tldr`
tealdeer
# reimplementation of `httpie` in rust
xh
2022-07-17 17:24:28 +00:00
2022-12-21 05:22:57 +00:00
# Useful nix related tools
2023-08-23 00:50:29 +00:00
nixfmt nix-prefetch-git nix-tree
2022-12-21 05:22:57 +00:00
# adding/managing alternative binary caches hosted by Cachix
cachix
# run software from nixpkgs without installing it
comma
# nix language server
2023-08-23 00:50:29 +00:00
nil;
2022-12-21 05:22:57 +00:00
} // lib.optionalAttrs pkgs.stdenv.isDarwin {
inherit (pkgs)
2023-08-23 00:50:29 +00:00
# useful macOS CLI commands
2022-12-21 05:22:57 +00:00
m-cli
# see /overlays/colors.nix
2023-08-23 00:50:29 +00:00
is-dark-mode;
2022-12-21 05:22:57 +00:00
});
2022-01-23 01:32:58 +00:00
# }}}
}