diff --git a/users/aaron/home.nix b/users/aaron/home.nix index f81df79..0ea8dde 100644 --- a/users/aaron/home.nix +++ b/users/aaron/home.nix @@ -1,151 +1,18 @@ -{ config, pkgs, inputs, ... }: +{ config, pkgs, ... }: { - # user config - home.username = "aaron"; - home.homeDirectory = "/home/aaron"; - # set env vars - home.sessionVariables = { - EDITOR = "vim"; - NH_FLAKE = "/home/aaron/git/nixconfig"; - }; - # don't change - home.stateVersion = "25.11"; - - # nixvim config - programs.nixvim = { - globals.mapleader = " "; - enable = true; - viAlias = false; - vimAlias = true; - opts = { - number = true; - relativenumber = true; - shiftwidth = 2; - tabstop = 2; - expandtab = true; - incsearch = true; - }; - colorschemes.nord.enable = true; - plugins.lualine.enable = true; - plugins.nix.enable = true; - plugins.nvim-tree.enable = true; - plugins.treesitter.enable = true; - plugins.telescope.enable = true; - plugins.web-devicons.enable = true; - plugins.indent-blankline.enable = true; - }; - - # tmux config - programs.tmux = { - enable = true; - # Basic options - prefix = "C-a"; - keyMode = "vi"; - mouse = true; - # Terminal settings - terminal = "screen-256color"; - # Extra configuration - extraConfig = '' - # Status keys - set -g status-keys vi - # Status bar options - set -g status-interval 1 - set -g status on - set -g status-justify left - # Clock mode - setw -g clock-mode-colour cyan - # Colors - set -g status-bg black - set -g status-fg white - # Key bindings - # Reload configuration - bind r source-file ~/.config/tmux/tmux.conf - # Panel split and selection - unbind % - unbind '"' - bind v split-window -v - bind c split-window -h - bind i new-window - bind b previous-window - bind n next-window - # Move around panes with hjkl - bind h select-pane -L - bind j select-pane -D - bind k select-pane -U - bind l select-pane -R - # Resize panes - bind H resize-pane -L 5 - bind J resize-pane -D 5 - bind K resize-pane -U 5 - bind L resize-pane -R 5 - # Kill commands - bind q kill-window - bind Q kill-session - # Bars - set -g status-left "#[fg=black,bg=blue,bold] #S#[fg=blue,bg=black,nobold,noitalics,nounderscore]" - set -g status-left "#[fg=black,bg=blue,bold] #S #[fg=blue,bg=black,nobold,noitalics,nounderscore]" - set -g status-right "#{prefix_highlight}#[fg=brightblack,bg=black,nobold,noitalics,nounderscore]#[fg=white,bg=brightblack] %Y-%m-%d #[fg=white,bg=brightblack,nobold,noitalics,nounderscore]#[fg=white,bg=brightblack] %H:%M #[fg=cyan,bg=brightblack,nobold,noitalics,nounderscore]#[fg=black,bg=cyan,bold] #H " - # Windows - set -g window-status-format "#[fg=black,bg=brightblack,nobold,noitalics,nounderscore] #[fg=white,bg=brightblack]#I #[fg=white,bg=brightblack,nobold,noitalics,nounderscore] #[fg=white,bg=brightblack]#W #F #[fg=brightblack,bg=black,nobold,noitalics,nounderscore]" - set -g window-status-current-format "#[fg=black,bg=cyan,nobold,noitalics,nounderscore] #[fg=black,bg=cyan]#I #[fg=black,bg=cyan,nobold,noitalics,nounderscore] #[fg=black,bg=cyan]#W #F #[fg=cyan,bg=black,nobold,noitalics,nounderscore]" - set -g window-status-separator "" - ''; - }; - - # user packages - home.packages = with pkgs; [ - discord - fastfetch - keepassxc - nerd-fonts.sauce-code-pro - powerline-fonts - powerline-symbols - screenfetch + imports = [ + ../../modules/home-manager/git.nix + ../../modules/home-manager/nvim.nix + ../../modules/home-manager/programs.nix + ../../modules/home-manager/shell.nix + ../../modules/home-manager/styling.nix + ../../modules/home-manager/tmux.nix ]; - - # configure git - programs.git.settings = { - enable = true; - userName = "aaron"; - userEmail = "aaron@0x29a.ch"; - }; - # configure zsh theme - programs.zsh = { - enable = true; - autosuggestion.enable = true; - syntaxHighlighting.enable = true; - oh-my-zsh = { - enable = true; - theme = "agnoster"; - #plugins = [ "git" "ssh-agent" ]; - }; + home = { + username = "aaron"; + homeDirectory = "/home/aaron"; + stateVersion = "25.11"; }; - - # set gtk theme - gtk = { - enable = true; - theme = { - name = "Adwaita-dark"; - package = pkgs.gnome-themes-extra; - }; - gtk3.extraConfig.gtk-application-prefer-dark-theme = 1; - gtk4.extraConfig.gtk-application-prefer-dark-theme = 1; - }; - - # set qt theme - qt = { - enable = true; - platformTheme.name = "qt6"; - style = { - name = "adwaita-dark"; - package = pkgs.adwaita-qt; - }; - }; - - # enable syncthing for user - services.syncthing.enable = true; - # enable home manager - programs.home-manager.enable = true; }