Ubuntu Home Manager config

This commit is contained in:
Aaron Honeycutt 2024-10-16 02:30:14 +00:00
parent 54fe38f5fb
commit 8d2fda266e

87
ubuntu-home.nix Normal file
View file

@ -0,0 +1,87 @@
{ config, pkgs, ... }:
{
# Home Manager needs a bit of information about you and the
# paths it should manage.
home.username = "aaronh";
home.homeDirectory = "/home/aaronh";
# 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 = "24.05";
nixpkgs.config = {
allowUnfree = true;
};
home.packages = with pkgs; [
# GUI
# libreoffice-fresh
# signal-desktop
# tuba
# VM
# quickemu
# spice-gtk
# CLI
# freshfetch
# gcc
];
programs.bash = {
enable = true;
shellAliases = {
home-upgrade = "home-manager switch";
};
# bashrcExtra = "eval `ssh-agent`";
};
programs.git = {
enable = true;
lfs.enable = true;
userName = "Aaron Honeycutt";
userEmail = "aaronhoneycutt@protonmail.com";
aliases = {
undo = "reset HEAD~1 --mixed";
amend = "commit -a --amend";
feature = "commit -m feat: -m new-feature";
fix = "commit -m fix: -m issue#";
};
extraConfig = {
color = {
ui = "auto";
};
color.status = {
added = "green bold";
changed = "yellow bold";
untracked = "red bold";
};
push = {
autoSetupRemote = "true";
};
init = {
defaultBranch = "main";
};
};
};
programs.gh.enable = true;
programs.helix = {
enable = true;
settings = {
theme = "onedark";
};
};
# Let Home Manager install and manage itself.
programs.home-manager.enable = true;
}