summaryrefslogtreecommitdiff
path: root/modules/basic-tools.nix
diff options
context:
space:
mode:
Diffstat (limited to 'modules/basic-tools.nix')
-rw-r--r--modules/basic-tools.nix97
1 files changed, 97 insertions, 0 deletions
diff --git a/modules/basic-tools.nix b/modules/basic-tools.nix
new file mode 100644
index 0000000..1500f82
--- /dev/null
+++ b/modules/basic-tools.nix
@@ -0,0 +1,97 @@
+{ config, pkgs, ... }:
+
+{
+ environment.systemPackages = with pkgs; [
+ bat
+ exa
+ fd
+ file
+ fzf
+ gitFull
+ gnupg
+ htop
+ irssi
+ killall
+ mercurial
+ neovim
+ ripgrep
+ tealdeer
+ tokei
+ traceroute
+ tree
+ liquidprompt
+ (aspellWithDicts (ps: with ps; [ en en-science en-computers ru de ]))
+ exfatprogs
+ nmap
+ bind
+ nnn
+ man-pages
+ neomutt
+ cachix
+ ];
+
+ nix = {
+ package = pkgs.nixUnstable;
+ autoOptimiseStore = true;
+ extraOptions = ''
+ experimental-features = nix-command flakes
+ '';
+ };
+
+
+ programs.tmux = {
+ enable = true;
+ keyMode = "vi";
+ escapeTime = 0;
+ historyLimit = 50000;
+ aggressiveResize = true;
+ terminal = "tmux-256color";
+ };
+
+ # set appropriate environ variables
+ environment.variables = {
+ EDITOR = "nvim";
+ PAGER = "less -F";
+ };
+
+ environment.shellAliases = {
+ vim = "nvim";
+ vi = "nvim";
+ vf = "$EDITOR $(fzf)";
+ vff = "$EDITOR $(ls|fzf)";
+ ls = "exa";
+ ll = "exa -l";
+ l = "exa -al";
+ ssh="TERM=xterm-256color ssh";
+ mutt="neomutt";
+ };
+
+ users.defaultUserShell = pkgs.zsh;
+ programs.zsh = {
+ enable = true;
+ enableCompletion = true;
+ syntaxHighlighting.enable = true;
+ interactiveShellInit = ''
+ bindkey -e
+ '';
+ promptInit = ''
+ source /run/current-system/sw/share/zsh/plugins/liquidprompt/liquidprompt
+if [[ -n "$IN_NIX_SHELL" ]]; then
+ prompt_tag "(nix-shell)"
+fi
+ '';
+ };
+
+ environment.etc.liquidpromptrc = {
+ text = ''
+ LP_ENABLE_SSH_COLORS=1
+ LP_ENABLE_TITLE=1
+ LP_ENABLE_SCREEN_TITLE=1
+ '';
+ };
+ programs.msmtp = {
+ enable = true;
+ };
+ programs.iftop.enable = true;
+ programs.mosh.enable = true;
+}