NixConfig/modules/nix/user.nix
fqbn207 a9880669c0 kekl
2024-12-15 01:59:48 +01:00

80 lines
2.0 KiB
Nix

{ config, pkgs, ... }:
{
programs = {
bash = {
enable = true;
enableCompletion = true;
sessionVariables = {
DEVKITPRO = "/opt/devkitpro";
DEVKITPPC = "/opt/devkitpro/devkitPPC";
DEVKITA64 = "/opt/devkitpro/devkitA64";
DEVKITARM = "/opt/devkitpro/devkitARM";
PATH = "/opt/devkitpro/tools/bin:$PATH";
};
shellAliases = {
http = "python3 -m http.server";
rm = "rm -rfv";
ls = "${pkgs.eza}/bin/eza -l --icons";
cp = "cp -rv";
mv = "mv -v";
mkdir = "mkdir -pv";
update = "sudo nixos-rebuild switch";
};
shellOptions = [
"histappend"
"checkwinsize"
"extglob"
"globstar"
"checkjobs"
];
initExtra = ''
eval "$(fzf --bash)"
PS1="\w % "
'';
};
git = {
enable = true;
userName = "fqbn207";
userEmail = "fqbn207";
};
tmux = {
enable = true;
plugins = with pkgs; [
tmuxPlugins.net-speed
tmuxPlugins.cpu
tmuxPlugins.battery
tmuxPlugins.gruvbox
];
disableConfirmationPrompt = true;
mouse = true;
keyMode = "vi";
extraConfig = ''
unbind C-b
set-option -g prefix C-a
bind-key C-a send-prefix
bind \\ split-window -h
bind - split-window -v
unbind '"'
unbind %
bind t new-window
bind -n M-q previous-window
bind -n M-e next-window
bind r source-file ~/.tmux.conf
bind -n M-Left select-pane -L
bind -n M-Right select-pane -R
bind -n M-Up select-pane -U
bind -n M-Down select-pane -D
set -g status-position top
set -g @net_speed_interfaces "wg0-mullvad"
set -g @download_speed_format "%10s"
set -g @upload_speed_format "%10s"
set -g @net_speed_format "D:%10s U:%10s"
set -g status-right '#{cpu_bg_color} CPU: #{cpu_icon} #{cpu_percentage} | %a %h-%d %H:%M '
'';
};
};
}