73 lines
1.9 KiB
Nix
73 lines
1.9 KiB
Nix
{ pkgs, ... }:
|
|
{
|
|
# Home Manager needs a bit of information about you and the paths it should
|
|
# manage.
|
|
home.username = "coder";
|
|
home.homeDirectory = "/home/coder";
|
|
|
|
# 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 should not change this value, even if you update Home Manager. If you do
|
|
# want to update the value, then make sure to first check the Home Manager
|
|
# release notes.
|
|
home.stateVersion = "22.11"; # Please read the comment before changing.
|
|
|
|
# The home.packages option allows you to install Nix packages into your
|
|
# environment.
|
|
home.packages = with pkgs; [
|
|
procps
|
|
icdiff
|
|
kubectl
|
|
kubernetes-helm
|
|
krew
|
|
proxychains-ng
|
|
nil
|
|
coreutils
|
|
|
|
# temp develop pkgs below
|
|
#virtualenv
|
|
#python39
|
|
#rustup
|
|
#gcc
|
|
];
|
|
|
|
# Home Manager is pretty good at managing dotfiles. The primary way to manage
|
|
# plain files is through 'home.file'.
|
|
home.file = {
|
|
".cargo/config".source = ./config/cargo-config;
|
|
".profile".source = ./config/profile;
|
|
".bashrc".text = "source .profile";
|
|
};
|
|
|
|
# You can also manage environment variables but you will have to manually
|
|
# source
|
|
#
|
|
# ~/.nix-profile/etc/profile.d/hm-session-vars.sh
|
|
#
|
|
# or
|
|
#
|
|
# /etc/profiles/per-user/coder/etc/profile.d/hm-session-vars.sh
|
|
#
|
|
# if you don't want to manage your shell through Home Manager.
|
|
home.sessionVariables = {
|
|
LANG = "zh_CN.UTF-8";
|
|
GOPROXY = "https://goproxy.cn,direct";
|
|
PKG_CONFIG_PATH = "$HOME/.nix-profile/lib/pkgconfig";
|
|
};
|
|
|
|
home.sessionPath = [
|
|
"$HOME/.local/bin"
|
|
"$HOME/.cargo/bin"
|
|
];
|
|
|
|
home.shellAliases = {
|
|
cao = "fuck";
|
|
cat = "bat -p --paging=never -u";
|
|
diff = "icdiff";
|
|
};
|
|
|
|
targets.genericLinux.enable = true;
|
|
}
|