{ pkgs, fetchurl, ... }: { imports = [ ../progs/alacritty ../progs/i3 ../progs/i3status-rust ../progs/kitty ../progs/neovim ../progs/rofi ]; # Let Home Manager install and manage itself. programs.home-manager.enable = true; home = { username = "daniel"; homeDirectory = "/home/daniel"; sessionVariables = { EDITOR = "hx"; }; sessionPath = [ "$HOME/go/bin" ]; file = { ".icons/default".source = "${pkgs.capitaine-cursors}/share/icons/capitaine-cursors"; ".config/helix" = { source = ../progs/helix; recursive = true; }; "bin/aupdate" = { source = ../../scripts/aupdate; executable = true; }; "bin/bupdate" = { source = ../../scripts/bupdate; executable = true; }; "bin/hmupdate" = { source = ../../scripts/hmupdate; executable = true; }; "bin/supdate" = { source = ../../scripts/supdate; executable = true; }; "bin/update" = { source = ../../scripts/update; executable = true; }; }; packages = with pkgs; [ _1password _1password-gui aerc discord entr feh fzf go_1_18 gomuks gopls helix i3lock i3utils iosevka mpv nerdfonts oh-my-zsh pavucontrol playerctl ( let my-python-packages = python-packages: with python-packages; [ tkinter requests ]; python-with-my-packages = python3.withPackages my-python-packages; in python-with-my-packages ) ranger restic rust-analyzer spotify starship xclip ]; keyboard = { layout = "gb"; options = [ "caps:escape" ]; }; stateVersion = "21.05"; }; programs = { git = { enable = true; package = pkgs.gitFull; userName = "Daniel Patterson"; userEmail = "me@danielpatterson.dev"; extraConfig = { pull.rebase = true; init.defaultBranch = "main"; format.signOff = "yes"; sendemail = { annotate = "yes"; smtpUser = "me@danielpatterson.dev"; smtpServer = "smtp.fastmail.com"; smtpEncryption = "tls"; smtpServerPort = 587; }; }; }; lazygit = { enable = true; settings = { gui = { showFileTree = false; }; }; }; starship.enable = true; vscode.enable = true; zsh = { enable = true; enableAutosuggestions = true; oh-my-zsh = { enable = true; plugins = [ "git" "fzf" ]; theme = "agnoster"; }; }; }; services ={ dunst.enable = true; syncthing = { enable = true; }; }; }