{ config, pkgs, callPackage, ... }: { nixpkgs.overlays = [ (import (builtins.fetchTarball { url = https://github.com/nix-community/emacs-overlay/archive/master.tar.gz; })) ]; home.username = "gsimmer"; home.homeDirectory = "/home/gsimmer"; nixpkgs.config.allowUnfree = true; programs.bash.enable = false; programs.zsh = { enable = true; shellAliases = { cat = "bat"; }; oh-my-zsh = { enable = true; plugins = [ "git" ]; theme = "robbyrussell"; }; }; programs.direnv = { enable = true; nix-direnv.enable = true; }; services.lorri.enable = true; programs.git = { enable = true; userName = "Gabriel Simmer"; userEmail = "gsimmer@protonmail.com"; signing = { key = "C81B106D46C5B875"; signByDefault = true; }; }; programs.emacs = { enable = true; package = pkgs.emacsGit; }; programs.exa = { enable = true; enableAliases = true; }; programs.bat = { enable = true; }; home.packages = with pkgs; [ discord spotify bitwarden-cli mullvad-vpn transmission-qt vlc obs-studio python3 lmms prismlauncher ripgrep ]; # This value determines the Home Manager release that your # configuration is compatible with. This helps avoid breakage # when a new Home Manager release introduces backwards # incompatible changes. # # You can update Home Manager without changing this value. See # the Home Manager release notes for a list of state version # changes in each release. home.stateVersion = "22.05"; # Let Home Manager install and manage itself. programs.home-manager.enable = true; }