Basic home-manager setup on Debian KDE

This commit is contained in:
Leonora Tindall 2024-02-05 09:57:44 -06:00
parent 0f25ddcffc
commit f2d4d27a3d
1 changed files with 68 additions and 0 deletions

68
home.nix Normal file
View File

@ -0,0 +1,68 @@
{ config, pkgs, lib, ... }:
let inherit (lib) hm;
in
{
programs.git = {
enable = true;
userName = "Leonora Tindall";
userEmail = "nora@nora.codes";
delta.enable = true;
extraConfig = {
init.defaultBranch = "main";
};
};
programs.zsh = {
enable = true;
enableAutosuggestions = true;
enableCompletion = true;
enableVteIntegration = true;
};
home.packages = with pkgs; [
htop
wget
ripgrep
bat
fd
neofetch
dfc
];
# Home Manager is pretty good at managing dotfiles. The primary way to manage
# plain files is through 'home.file'.
home.file = {
# # Building this configuration will create a copy of 'dotfiles/screenrc' in
# # the Nix store. Activating the configuration will then make '~/.screenrc' a
# # symlink to the Nix store copy.
# ".screenrc".source = dotfiles/screenrc;
# # You can also set the file content immediately.
# ".gradle/gradle.properties".text = ''
# org.gradle.console=verbose
# org.gradle.daemon.idletimeout=3600000
# '';
};
# env vars
home.sessionVariables = {};
# Let Home Manager install and manage itself.
programs.home-manager.enable = true;
# Basic information
home.username = "nora";
home.homeDirectory = "/home/nora";
home.stateVersion = "23.11";
# Because we're on Debian
targets.genericLinux.enable = true;
# Because we're on KDE; this refreshes the icon cache and .desktop file cache
home.activation.updateKdeIconCache = hm.dag.entryAfter [ "installPackages" ] ''
run /usr/bin/kbuildsycoca5 --noincremental
'';
# Because I want Firefox
nixpkgs.config.allowUnfree = true;
}