{ inputs, osConfig, pkgs, ... }: { imports = [ inputs.lazyvim.homeManagerModules.default ../features/starship.nix ../features/home-env.nix ]; home.shellAliases = import ../features/aliases.nix { inherit pkgs; }; programs = { bash = { enable = true; initExtra = '' eval "$(jump shell)" eval "$(devenv hook bash)" clear;fastfetch ''; }; zsh = if pkgs.stdenv.hostPlatform.isDarwin then { enable = true; enableCompletion = true; autosuggestion.enable = true; syntaxHighlighting.enable = true; initContent = '' eval "$(jump shell)" eval "$(devenv hook zsh)" clear;fastfetch ''; } else { }; fastfetch = { enable = true; settings = { modules = [ "title" "separator" "os" "kernel" "uptime" "host" "localip" "packages" "shell" "terminal" "wm" "cpu" "gpu" "memory" "disk" "break" ]; logo = { source = if pkgs.stdenv.hostPlatform.isDarwin then "macos" else "nixos2"; }; }; }; ssh = { enable = true; enableDefaultConfig = false; settings = { "*" = { IdentityFile = [ osConfig.sops.secrets."personal_ssh_key_ed25519".path osConfig.sops.secrets."work_ssh_key_rsa".path ]; }; "daguerro.net" = { User = "almalinux"; }; "panel.daguerro.net" = { User = "floturcocantsee"; }; "voffice.picerne.com" = { User = "pdcadmin"; }; }; }; lazyvim = { enable = true; config = { # Enable light mode and configure tabstop # to two spaces rather than 4. options = '' vim.o.background = "light" vim.opt.tabstop = 2 vim.opt.shiftwidth = 2 vim.opt.expandtab = true ''; }; plugins = { colorscheme = '' return { { "LazyVim/LazyVim", opts = { colorscheme = "tokyonight-day" }, }, { "folke/tokyonight.nvim", lazy = false, priority = 1000, opts = { style = "day" }, }, } ''; }; extras = { lang = { nix.enable = true; python.enable = true; rust.enable = true; dotnet.enable = true; }; }; extraPackages = with pkgs; [ nix alejandra statix ]; }; git = { enable = true; lfs.enable = true; signing = { key = osConfig.sops.secrets."personal_ssh_key_ed25519.pub".path; signByDefault = true; }; settings = { init.defaultBranch = "main"; safe.directory = if pkgs.stdenv.hostPlatform.isDarwin then "/etc/nix-darwin" else "/etc/nixos"; user = { name = "Frank LoTurco"; email = "floturcocantsee@protonmail.com"; }; gpg = { format = "ssh"; }; }; }; }; home.stateVersion = "26.05"; }