{ inputs, pkgs, ... }: let sshSigningKey = builtins.readFile ./ssh-signing-key.pub; in { imports = [ inputs.lazyvim.homeManagerModules.default ../features/starship.nix ]; home.shellAliases = import ../features/aliases.nix { inherit pkgs; }; xdg = if pkgs.stdenv.hostPlatform.isDarwin then { } else { configFile = { "systemd/user/plasma-kwallet-pam.service.d/style.conf" = { text = '' [Service] Environment=QT_STYLE_OVERRIDE=Breeze ''; }; "systemd/user/kde-baloo.service.d/override.conf" = { text = '' [Unit] After=plasma-kwin_wayland.service ''; }; "qimgv" = { source = ./config/qimgv; recursive = true; }; "zathura" = { source = ./config/zathura; recursive = true; }; }; dataFile = { "applications" = { source = ./local/share/applications; recursive = true; }; }; }; programs = { bash = { enable = true; # Import SSH identities and # display fastfetch on shell open. initExtra = '' eval "$(devenv hook bash)" [ -f $HOME/.ssh/id_floturcocantsee@daguerro.net ] && ssh-add $HOME/.ssh/id_floturcocantsee@daguerro.net [ -f $HOME/.ssh/id_rsa ] && ssh-add $HOME/.ssh/id_rsa clear;fastfetch ''; }; # Configure ZSH if using darwin (macOS). zsh = if pkgs.stdenv.hostPlatform.isDarwin then { enable = true; initContent = '' eval "$(devenv hook zsh)" [ -f $HOME/.ssh/id_floturcocantsee@daguerro.net ] && ssh-add --apple-use-keychain $HOME/.ssh/id_floturcocantsee@daguerro.net [ -f $HOME/.ssh/id_rsa ] && --apple-use-keychain ssh-add $HOME/.ssh/id_rsa 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."*" = { AddKeysToAgent = "yes"; }; }; 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 = sshSigningKey; 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"; }; }; }; }; fonts = { fontconfig = { enable = true; subpixelRendering = "none"; hinting = "slight"; }; }; home.stateVersion = "26.05"; }