nixos-config/config/home-manager/base.nix

145 lines
3.8 KiB
Nix
Raw Normal View History

2022-06-12 19:29:42 +00:00
desktop: { pkgs, ... }: {
2022-01-15 15:54:18 +00:00
imports = [
../programs/zsh.nix
2022-06-12 19:29:42 +00:00
../programs/vim
2022-01-21 08:22:11 +00:00
../programs/tmux.nix
2022-04-13 09:59:45 +00:00
../programs/ssh.nix
2022-01-15 15:54:18 +00:00
];
programs = {
zsh = {
2022-04-22 14:01:08 +00:00
enable = true;
2022-04-23 16:44:58 +00:00
enableVteIntegration = true;
2022-01-15 15:54:18 +00:00
oh-my-zsh = {
enable = true;
};
initExtraBeforeCompInit = "source ${pkgs.zsh-powerlevel10k}/share/zsh-powerlevel10k/powerlevel10k.zsh-theme";
initExtra = ''
[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh
2022-06-10 20:33:12 +00:00
test -n "$KITTY_INSTALLATION_DIR" || export KITTY_INSTALLATION_DIR=${pkgs.kitty}/lib/kitty
export KITTY_SHELL_INTEGRATION=enabled
autoload -Uz -- "$KITTY_INSTALLATION_DIR"/shell-integration/zsh/kitty-integration
kitty-integration
unfunction kitty-integration
'';
2022-04-22 14:01:08 +00:00
sessionVariables = {
GTK_IM_MODULE = "ibus";
QT_IM_MODULE = "ibus";
XMODIFIERS = "@im=ibus";
};
2022-01-31 18:23:36 +00:00
plugins = [
];
2022-01-15 15:54:18 +00:00
};
};
2022-01-15 16:03:02 +00:00
home.file.".p10k.zsh".source = ./.p10k.zsh;
2022-01-19 13:47:14 +00:00
2022-04-06 08:11:56 +00:00
accounts.email.maildirBasePath = "Maildir";
2022-01-19 13:47:14 +00:00
accounts.email.accounts = rec {
lotte = {
2022-06-12 19:29:42 +00:00
aliases = [ "darkkirb@darkkirb.de" "postmaster@darkkirb.de" "postmaster@chir.rs" "postmaster@miifox.net" ];
2022-01-19 13:47:14 +00:00
gpg = {
encryptByDefault = true;
key = "B4E3D4801C49EC5E";
2022-01-19 13:47:14 +00:00
signByDefault = true;
};
imap.host = "mail.chir.rs";
2022-01-19 13:47:14 +00:00
imapnotify = {
enable = true;
2022-06-12 19:29:42 +00:00
boxes = [ "Inbox" ];
onNotify = "${pkgs.isync}/bin/mbsync -a || true";
2022-06-12 15:39:15 +00:00
onNotifyPost =
if desktop
then "${pkgs.notmuch}/bin/notmuch new && ${pkgs.libnotify}/bin/notify-send 'New mail arrived'"
else "${pkgs.notmuch}/bin/notmuch new";
2022-01-19 13:47:14 +00:00
};
smtp.host = "mail.chir.rs";
address = "lotte@chir.rs";
2022-01-19 13:47:14 +00:00
mbsync = {
enable = true;
create = "both";
expunge = "both";
remove = "both";
};
msmtp.enable = true;
neomutt.enable = true;
notmuch.enable = true;
realName = "Charlotte 🦝 Delenk";
passwordCommand = "${pkgs.coreutils}/bin/cat /run/secrets/email/lotte@chir.rs";
primary = true;
signature.text = ''
Charlotte
2022-02-09 10:01:10 +00:00
https://darkkirb.de GPG Key EF5F 367A 95E0 BFA6 https://keybase.io/darkkirb
2022-01-19 13:47:14 +00:00
'';
2022-01-19 13:56:46 +00:00
signature.showSignature = "append";
2022-01-19 13:47:14 +00:00
userName = "lotte@chir.rs";
};
2022-06-12 15:39:15 +00:00
mdelenk =
lotte
// {
address = "mdelenk@hs-mittweida.de";
2022-06-12 19:29:42 +00:00
aliases = [ ];
2022-06-12 15:39:15 +00:00
gpg =
lotte.gpg
// {
key = "5130416C797067B6";
};
imap.host = "xc.hs-mittweida.de";
mbsync =
lotte.mbsync
// {
extraConfig.account = {
AuthMechs = "LOGIN";
};
};
passwordCommand = "${pkgs.coreutils}/bin/cat /run/secrets/email/mdelenk@hs-mittweida.de";
realName = "Morten Delenk";
signature.text = ''
Morten
'';
signature.showSignature = "append";
smtp = {
host = "xc.hs-mittweida.de";
port = 587;
tls.useStartTls = true;
2022-01-19 14:57:35 +00:00
};
2022-06-12 15:39:15 +00:00
userName = "mdelenk@hs-mittweida.de";
primary = false;
2022-01-19 14:57:35 +00:00
};
2022-01-19 13:47:14 +00:00
};
2022-01-19 13:56:46 +00:00
home = {
sessionVariables = {
EDITOR = "nvim";
};
shellAliases = {
vim = "nvim";
2022-01-21 07:41:19 +00:00
cat = "bat";
less = "bat";
2022-06-10 19:44:01 +00:00
icat = "${pkgs.kitty}/bin/kitty +kitten icat";
d = "${pkgs.kitty}/bin/kitty +kitten diff";
hg = "${pkgs.kitty}/bin/kitty +kitten hyperlinked_grep";
2022-01-19 13:56:46 +00:00
};
2022-01-24 06:55:46 +00:00
packages = with pkgs; [
mosh
2022-02-02 09:55:56 +00:00
yubikey-manager
2022-02-02 13:53:19 +00:00
yubico-piv-tool
2022-06-10 19:44:01 +00:00
ripgrep
2022-01-24 06:55:46 +00:00
];
2022-01-19 13:56:46 +00:00
};
2022-01-21 07:41:19 +00:00
programs.exa = {
enable = true;
enableAliases = true;
};
programs.bat = {
enable = true;
};
programs.fzf = {
enable = true;
tmux.enableShellIntegration = true;
};
2022-04-06 19:05:19 +00:00
home.stateVersion = "22.05";
2022-05-13 20:47:21 +00:00
xdg.configFile."htop/htoprc".source = ../../extra/htoprc;
2022-01-15 15:54:18 +00:00
}