home/natto: email config and misc shit

Signed-off-by: Amneesh Singh <natto@weirdnatto.in>
This commit is contained in:
2022-11-10 19:17:20 +05:30
parent f9723b1f11
commit 67f879cfc1
10 changed files with 224 additions and 28 deletions

View File

@@ -7,7 +7,6 @@ feh --bg-scale ~/Downloads/gruvbox.jpg &
killall "polybar" killall "polybar"
polybar main & polybar main &
killall node killall node
node /mnt/Stuff/code/muhbot

10
home/natto/config/mailcap Normal file
View File

@@ -0,0 +1,10 @@
text/plain; $EDITOR %s ;
text/html; $BROWSER %s; test=test -n "$DISPLAY"
text/html; w3m %s; nametemplate=%s.html; needsterminal
text/html; w3m -v -F -T text/html -dump %s; copiousoutput
image/*; sxiv %s ;
video/*; setsid mpv --quiet %s &; copiousoutput
audio/*; mpv %s ;
application/pdf; zathura %s ;
application/pgp-encrypted; gpg -d '%s'; copiousoutput;
application/pgp-keys; gpg --import '%s'; copiousoutput;

View File

@@ -0,0 +1,36 @@
set editor="nvim"
#set index_format="%4C %Z %{%b %d %R} %-15.15L (%?l?%4l&%4c?) %s"
set sidebar_visible
#set sidebar_format="%B%?F? [%F]?%* %?N?%N/?%S"
set mail_check_stats
bind attach,index,pager \CU next-page
bind attach,index,pager \CD previous-page
bind attach,index,pager n next-entry
bind attach,index,pager e previous-entry
bind attach,index,pager 9 group-reply
bind pager g top
bind pager G bottom
bind pager n next-line
bind pager e previous-line
bind pager i view-attachments
bind attach,index g first-entry
bind attach,index G last-entry
bind index,pager \CE sidebar-prev
bind index,pager \CN sidebar-next
bind index,pager \CI sidebar-open
bind index,pager \CB sidebar-toggle-visible
set sleep_time = 0
set markers = no
set mark_old = no
set mime_forward = yes
set wait_key = no
set fast_reply
set fcc_attach
set forward_format = "Fwd: %s"
set forward_quote
set reverse_name
set include
set mail_check=60
auto_view text/html
alternative_order text/enriched text/plain text/html text
macro index,pager U "<shell-escape>mbsync -a<enter>" "run mbsync to sync all emails"

View File

@@ -0,0 +1,73 @@
# A convenient colorscheme(r) I got from somewhere but forgot from where
color index yellow default '.*'
color index_author red default '.*'
color index_number blue default
color index_subject cyan default '.*'
# New mail is boldened:
color index brightyellow black "~N"
color index_author brightred black "~N"
color index_subject brightcyan black "~N"
# Tagged mail is highlighted:
color index brightyellow blue "~T"
color index_author brightred blue "~T"
color index_subject brightcyan blue "~T"
# Other colors and aesthetic settings:
mono bold bold
mono underline underline
mono indicator reverse
mono error bold
color normal default default
color indicator brightblack white
color sidebar_highlight red default
color sidebar_divider brightblack black
color sidebar_flagged red black
color sidebar_new green black
color normal brightyellow default
color error red default
color tilde black default
color message cyan default
color markers red white
color attachment white default
color search brightmagenta default
color status brightyellow black
color hdrdefault brightgreen default
color quoted green default
color quoted1 blue default
color quoted2 cyan default
color quoted3 yellow default
color quoted4 red default
color quoted5 brightred default
color signature brightgreen default
color bold black default
color underline black default
color normal default default
# Regex highlighting:
color header blue default ".*"
color header brightmagenta default "^(From)"
color header brightcyan default "^(Subject)"
color header brightwhite default "^(CC|BCC)"
color body brightred default "[\-\.+_a-zA-Z0-9]+@[\-\.a-zA-Z0-9]+" # Email addresses
color body brightblue default "(https?|ftp)://[\-\.,/%~_:?&=\#a-zA-Z0-9]+" # URL
color body green default "\`[^\`]*\`" # Green text between ` and `
color body brightblue default "^# \.*" # Headings as bold blue
color body brightcyan default "^## \.*" # Subheadings as bold cyan
color body brightgreen default "^### \.*" # Subsubheadings as bold green
color body yellow default "^(\t| )*(-|\\*) \.*" # List items as yellow
color body brightcyan default "[;:][-o][)/(|]" # emoticons
color body brightcyan default "[;:][)(|]" # emoticons
color body brightcyan default "[ ][*][^*]*[*][ ]?" # more emoticon?
color body brightcyan default "[ ]?[*][^*]*[*][ ]" # more emoticon?
color body red default "(BAD signature)"
color body cyan default "(Good signature)"
color body brightblack default "^gpg: Good signature .*"
color body brightyellow default "^gpg: "
color body brightyellow red "^gpg: BAD signature from.*"
mono body bold "^gpg: Good signature"
mono body bold "^gpg: BAD signature from.*"
color body red default "([a-z][a-z0-9+-]*://(((([a-z0-9_.!~*'();:&=+$,-]|%[0-9a-f][0-9a-f])*@)?((([a-z0-9]([a-z0-9-]*[a-z0-9])?)\\.)*([a-z]([a-z0-9-]*[a-z0-9])?)\\.?|[0-9]+\\.[0-9]+\\.[0-9]+\\.[0-9]+)(:[0-9]+)?)|([a-z0-9_.!~*'()$,;:@&=+-]|%[0-9a-f][0-9a-f])+)(/([a-z0-9_.!~*'():@&=+$,-]|%[0-9a-f][0-9a-f])*(;([a-z0-9_.!~*'():@&=+$,-]|%[0-9a-f][0-9a-f])*)*(/([a-z0-9_.!~*'():@&=+$,-]|%[0-9a-f][0-9a-f])*(;([a-z0-9_.!~*'():@&=+$,-]|%[0-9a-f][0-9a-f])*)*)*)?(\\?([a-z0-9_.!~*'();/?:@&=+$,-]|%[0-9a-f][0-9a-f])*)?(#([a-z0-9_.!~*'();/?:@&=+$,-]|%[0-9a-f][0-9a-f])*)?|(www|ftp)\\.(([a-z0-9]([a-z0-9-]*[a-z0-9])?)\\.)*([a-z]([a-z0-9-]*[a-z0-9])?)\\.?(:[0-9]+)?(/([-a-z0-9_.!~*'():@&=+$,]|%[0-9a-f][0-9a-f])*(;([-a-z0-9_.!~*'():@&=+$,]|%[0-9a-f][0-9a-f])*)*(/([-a-z0-9_.!~*'():@&=+$,]|%[0-9a-f][0-9a-f])*(;([-a-z0-9_.!~*'():@&=+$,]|%[0-9a-f][0-9a-f])*)*)*)?(\\?([-a-z0-9_.!~*'();/?:@&=+$,]|%[0-9a-f][0-9a-f])*)?(#([-a-z0-9_.!~*'();/?:@&=+$,]|%[0-9a-f][0-9a-f])*)?)[^].,:;!)? \t\r\n<>\"]"

View File

@@ -3,6 +3,7 @@ let
in in
{ {
imports = [ imports = [
./email.nix
./secrets ./secrets
./programs.nix ./programs.nix
./xsession.nix ./xsession.nix

69
home/natto/email.nix Normal file
View File

@@ -0,0 +1,69 @@
{ config, lib, pkgs, ... }:
let
key = "53EC089EF230E47A83BA8F8195949BD4B853F559";
host = "mail.weirdnatto.in";
in
{
accounts.email = {
accounts = {
natto = rec {
realName = "Amneesh Singh";
primary = true;
address = "natto@weirdnatto.in";
userName = address;
gpg = {
inherit key;
signByDefault = true;
};
imap = {
inherit host;
tls.enable = true;
};
imapnotify.enable = true;
smtp = {
inherit host;
tls.enable = true;
};
mbsync = {
enable = true;
create = "both";
};
passwordCommand = "pass show email/${address}";
neomutt = {
enable = true;
extraMailboxes = [
"Sent"
"Drafts"
"Trash"
"Junk"
];
};
};
};
};
programs = {
mbsync.enable = true;
neomutt = rec {
enable = true;
package = pkgs.neomutt;
sort = "reverse-date";
extraConfig =
lib.concatMapStringsSep
"\n"
builtins.readFile
[
./config/neomutt/neomuttrc
./config/neomutt/theme
];
};
};
home = {
packages = with pkgs; [ mailcap ];
file = {
mailcap = {
source = ./config/mailcap;
target = "${config.home.homeDirectory}/.mailcap";
};
};
};
}

View File

@@ -72,6 +72,7 @@
})) }))
tlauncher tlauncher
lutris lutris
citra
# Dev shit # Dev shit
rust-analyzer rust-analyzer
@@ -99,7 +100,6 @@
teams teams
anki-bin anki-bin
tor-browser-bundle-bin tor-browser-bundle-bin
neomutt
mailcap mailcap
(ncmpcpp.override { (ncmpcpp.override {
visualizerSupport = true; visualizerSupport = true;

View File

@@ -24,5 +24,6 @@
}; };
}; };
go.enable = true; go.enable = true;
password-store.enable = true;
}; };
} }

View File

@@ -37,6 +37,17 @@ in
}; };
extraConfig = builtins.readFile ./config/mpd/mpd.conf; extraConfig = builtins.readFile ./config/mpd/mpd.conf;
}; };
mpd-discord-rpc.enable = true; mpd-discord-rpc = {
enable = true;
settings = {
id = 1039532008424099850; # dont really care
format = {
large_image = "koishi";
small_image = "";
large_text = "real";
small_text = "the";
};
};
};
}; };
} }

View File

@@ -1,30 +1,26 @@
{ config, lib, pkgs, ... }: { { config, lib, pkgs, ... }: {
home = home = {
let sessionVariables = {
home = config.home.homeDirectory; LV2_PATH = lib.makeSearchPath "lib/lv2" (with pkgs; [ calf ]);
in TERM = "st-24bits";
{ };
sessionVariables = { file = with config; {
LV2_PATH = lib.makeSearchPath "lib/lv2" (with pkgs; [ calf ]); dunstrc = {
TERM = "st-24bits"; source = ./config/dunst/dunstrc;
target = "${xdg.configHome}/dunst/dunstrc";
}; };
file = { stalonetray = {
dunstrc = { source = ./config/stalonetrayrc;
source = ./config/dunst/dunstrc; target = "${home.homeDirectory}/.stalonetrayrc";
target = "${home}/.config/dunst/dunstrc"; };
}; ncmpcpp = {
stalonetray = { source = ./config/ncmpcpp/config;
source = ./config/stalonetrayrc; target = "${xdg.configHome}/ncmpcpp/config";
target = "${home}/.stalonetrayrc"; };
}; mpv = {
ncmpcpp = { source = ./config/mpv/mpv.conf;
source = ./config/ncmpcpp/config; target = "${xdg.configHome}/mpv/mpv.conf";
target = "${home}/.config/ncmpcpp/config";
};
mpv = {
source = ./config/mpv/mpv.conf;
target = "${home}/.config/mpv/mpv.conf";
};
}; };
}; };
};
} }