nixos/homes/josh/home.nix

73 lines
1.4 KiB
Nix

{
config,
lib,
pkgs,
profile,
...
}:
with lib;
let gpgCfg = config.modules.gpg;
in
{
imports = [
../../modules/homes
../../modules/options
../../profiles/${profile}
];
modules.zsh.enable = true;
modules.shell.defaultShell = "zsh";
home = {
username = "josh";
homeDirectory = "/home/josh";
stateVersion = "25.11";
packages = with pkgs; [
git
tldr
tmux
vim-full
wl-clipboard
];
};
programs.git = {
enable = true;
settings = {
user = {
name = "Joshua Yuen";
email = "joshuayuen99@gmail.com";
signingkey = mkIf (gpgCfg.signingKey != null) gpgCfg.signingKey;
};
commit.gpgsign = true;
init.defaultBranch = "main";
};
};
# Enable GPG-agent for git signing
modules.gpg.enable = true;
# Let Home Manager install and manage itself
programs.home-manager.enable = true;
nix = {
package = mkDefault pkgs.nix;
settings = {
allowed-users = [ "josh" ];
trusted-users = [ "root" "@wheel" "josh" ];
experimental-features = [
"nix-command"
"flakes"
];
extra-substituters = [
"https://walker.cachix.org"
"https://walker-git.cachix.org"
];
extra-trusted-public-keys = [
"walker.cachix.org-1:fG8q+uAaMqhsMxWjwvk0IMb4mFPFLqHjuvfwQxE4oJM="
"walker-git.cachix.org-1:vmC0ocfPWh0S/vRAQGtChuiZBTAe4wiKDeyyXM0/7pM="
];
};
};
}