flake/home-manager/user.nix

99 lines
2.9 KiB
Nix
Raw Permalink Normal View History

{
pkgs,
config,
user,
...
}:
{
2024-12-02 15:56:32 -05:00
home.username = user;
home.homeDirectory = "/home/${user}";
2024-11-16 13:38:09 -05:00
2024-11-18 16:49:06 -05:00
home.file = {
".face.icon".source = config.lib.file.mkOutOfStoreSymlink "/etc/nixos/assets/img/clownfish.png";
".config/fastfetch/config.jsonc".source = config.lib.file.mkOutOfStoreSymlink "/etc/nixos/config/fastfetch.jsonc";
".psqlrc".source = config.lib.file.mkOutOfStoreSymlink "/etc/nixos/config/.psqlrc";
".config/btop/btop.conf".source = config.lib.file.mkOutOfStoreSymlink "/etc/nixos/config/btop.conf";
".config/btop/themes/catppuccin_mocha.theme".source = config.lib.file.mkOutOfStoreSymlink "/etc/nixos/config/themes/btop.theme";
".config/glow/glow.yml".source = config.lib.file.mkOutOfStoreSymlink "/etc/nixos/config/glow.yml";
".config/glow/theme.json".source = config.lib.file.mkOutOfStoreSymlink "/etc/nixos/config/themes/glow.json";
};
2024-11-16 13:38:09 -05:00
# link the configuration file in current directory to the specified location in home directory
# home.file.".config/i3/wallpaper.jpg".source = ./wallpaper.jpg;
# link all files in `./scripts` to `~/.config/i3/scripts`
# home.file.".config/i3/scripts" = {
# source = ./scripts;
# recursive = true; # link recursively
# executable = true; # make all files executable
# };
# encode the file content in nix configuration file directly
# home.file.".xxx".text = ''
# xxx
# '';
# set cursor size and dpi for 4k monitor
xresources.properties = {
"Xcursor.size" = 16;
"Xft.dpi" = 172;
};
# Packages that should be installed to the user profile.
home.packages = with pkgs; [ vesktop ];
2024-11-16 13:38:09 -05:00
# basic configuration of git, please change to your own
programs.git = {
enable = true;
2024-12-02 15:56:32 -05:00
userName = user;
2024-11-16 13:38:09 -05:00
userEmail = "seaswimmerthefsh@gmail.com";
extraConfig = {
2024-12-14 09:08:13 -05:00
core = {
editor = "code -w";
};
commit = {
gpgsign = true;
};
2024-11-18 16:49:06 -05:00
signing = {
signByDefault = true;
};
init = {
defaultBranch = "master";
};
safe = {
directory = "/etc/nixos";
};
2024-11-16 13:38:09 -05:00
url = {
"git@coastalcommits.com:" = {
insteadOf = [
"https://www.coastalcommits.com/"
"cc:"
"coastalcommits:"
];
2024-11-16 13:38:09 -05:00
};
"git@github.com:" = {
insteadOf = [
"https://github.com/"
"gh:"
"github:"
];
2024-11-16 13:38:09 -05:00
};
};
2024-11-22 09:09:38 -05:00
hub.protocol = "ssh";
2024-11-16 13:38:09 -05:00
};
};
# 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";
# Let home Manager install and manage itself.
programs.home-manager.enable = true;
}