84 lines
2.4 KiB
Nix
84 lines
2.4 KiB
Nix
{pkgs, ...}: {
|
|
home = {
|
|
# 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.
|
|
stateVersion = "23.05";
|
|
|
|
shellAliases = {
|
|
# navigation
|
|
"l" = "${pkgs.eza}/bin/eza -Fhl --icons --git";
|
|
"ll" = "${pkgs.eza}/bin/eza -Fahl --icons --git";
|
|
"ls" = "${pkgs.eza}/bin/eza -F --icons --git";
|
|
"la" = "${pkgs.eza}/bin/eza -Fa --icons --git";
|
|
"tree" = "${pkgs.eza}/bin/eza --icons --git --tree";
|
|
".." = "cd ..";
|
|
|
|
# replacements
|
|
#"code" = "codium";
|
|
#"neofetch" = "fastfetch";
|
|
#"ranger" = "joshuto"; # rust
|
|
#"grep" = "rg";
|
|
#"top" = "btm -b";
|
|
#"htop" = "btm -b";
|
|
#"btop" = "btm";
|
|
|
|
"yd" = "ydict -c";
|
|
"farsee" = "curl -F 'c=@-' 'https://fars.ee/'"; # pb
|
|
"clock" = "tty-clock -5Ccs";
|
|
|
|
# proxy
|
|
"setproxy" = let
|
|
proxy = "http://127.0.0.1:7890/";
|
|
in "export http_proxy=${proxy} https_proxy=${proxy} ftp_proxy=${proxy} rsync_proxy=${proxy}";
|
|
"unsetproxy" = "set -e http_proxy https_proxy all_proxy"; # fish syntax (?)
|
|
};
|
|
sessionVariables = {
|
|
# misc
|
|
"MANPAGER" = "sh -c 'col -bx | bat -l man -p'"; # man: use bat as man's pager
|
|
"MANROFFOPT" = "-c"; # man: fix formatting issue with bat
|
|
"SKIM_DEFAULT_COMMAND" = "fd --type f || git ls-tree -r --name-only head || rg --files || find ."; # skim: use fd by default
|
|
};
|
|
};
|
|
programs = {
|
|
# Let Home Manager install and manage itself.
|
|
home-manager.enable = true;
|
|
|
|
tealdeer.enable = true;
|
|
zoxide.enable = true;
|
|
starship = {
|
|
enable = true;
|
|
settings = {
|
|
add_newline = false;
|
|
aws.disabled = true;
|
|
gcloud.disabled = true;
|
|
line_break.disabled = true;
|
|
};
|
|
};
|
|
|
|
#eza = {
|
|
# enable = true;
|
|
# git = true;
|
|
# icons = true;
|
|
#};
|
|
|
|
git = {
|
|
enable = true;
|
|
userName = "Guanran Wang";
|
|
userEmail = "guanran928@outlook.com";
|
|
delta.enable = true;
|
|
signing.signByDefault = true;
|
|
signing.key = "~/.ssh/id_github_signing";
|
|
extraConfig = {
|
|
gpg.format = "ssh";
|
|
pull.rebase = true;
|
|
};
|
|
};
|
|
};
|
|
services.ssh-agent.enable = true;
|
|
}
|