fix polybar, neomutt (sorta), and probably some lazygit stuff probs?

This commit is contained in:
Anish L 2022-01-05 00:27:58 +10:00
parent 3762b72745
commit 674c2fcb15
7 changed files with 310 additions and 260 deletions

View file

@ -120,7 +120,7 @@
base = [ core users.root nvim users.anish ]; # TODO make anish non gui base = [ core users.root nvim users.anish ]; # TODO make anish non gui
sealight = [ base ]; # matrix rsshub backup wireguard website sealight = [ base ]; # matrix rsshub backup wireguard website
mossnet = [ base ]; # shaarli wallabag nextcloud taskwarrior headphones mossnet = [ base ]; # shaarli wallabag nextcloud taskwarrior headphones
graphical = [ base users.profiles.firefox users.profiles.desktop bluetooth music sync ]; graphical = [ base users.profiles.firefox users.profiles.desktop bluetooth music sync wireguard ];
curve = [ graphical ]; curve = [ graphical ];
}; };
}; };

View file

@ -12,14 +12,14 @@
ips = [ "10.0.69.2/24" ]; ips = [ "10.0.69.2/24" ];
listenPort = 60990; # to match firewall allowedUDPPorts (without this wg uses random port numbers) listenPort = 60990; # to match firewall allowedUDPPorts (without this wg uses random port numbers)
privateKeyFile = "/run/secrets/curve-wg"; privateKeyFile = "/run/agenix/curve-wg";
peers = [ peers = [
# For a client configuration, one peer entry for the server will suffice. # For a client configuration, one peer entry for the server will suffice.
{ {
publicKey = "c1J4p63rD3IlszugMZiki7UBV3YmDdqa3DU4UejXzAI="; publicKey = "c1J4p63rD3IlszugMZiki7UBV3YmDdqa3DU4UejXzAI=";
allowedIPs = [ "10.0.69.0/24" ]; allowedIPs = [ "10.0.69.0/24" ];
# Set this to the server IP and port. # Set this to the server IP and port.
endpoint = "sealight.xyz:60990"; # ToDo: route to endpoint not automatically configured https://wiki.archlinux.org/index.php/WireGuard#Loop_routing https://discourse.nixos.org/t/solved-minimal-firewall-setup-for-wireguard-client/7577 endpoint = "149.28.163.78:60990"; # ToDo: route to endpoint not automatically configured https://wiki.archlinux.org/index.php/WireGuard#Loop_routing https://discourse.nixos.org/t/solved-minimal-firewall-setup-for-wireguard-client/7577
# Send keepalives every 25 seconds. Important to keep NAT tables alive. # Send keepalives every 25 seconds. Important to keep NAT tables alive.
persistentKeepalive = 25; persistentKeepalive = 25;

View file

@ -1,20 +1,20 @@
!! Colors !! Colors
#define blk #1E2029 #define blk #1F2430
#define bblk #282a36 #define bblk #F28779
#define red #ffb86c #define red #A6CC70
#define bred #de935f #define bred #FFCC66
#define grn #50fa7b #define grn #5CCFE6
#define bgrn #0189cc #define bgrn #F29E74
#define ylw #f0c674 #define ylw #77A8D9
#define bylw #f9a03f #define bylw #5C6773
#define blu #61bfff #define blu #707A8C
#define bblu #8be9fd #define bblu #F27983
#define mag #bd93f9 #define mag #BAE67E
#define bmag #ff79c6 #define bmag #FFD580
#define cyn #8be9fd #define cyn #73D0FF
#define bcyn #0189cc #define bcyn #FFA759
#define wht #f8f8f2 #define wht #95E6CB
#define bwht #e2e2dc #define bwht #CBCCC6
#define bg blk #define bg blk
#define fg wht #define fg wht

View file

@ -2,7 +2,7 @@
! Generated with : ! Generated with :
! XRDB2Xreources.py ! XRDB2Xreources.py
! !
*.foreground: #e6e1cf *.foreground: #1F2430
*.background: #0f1419 *.background: #0f1419
*.cursorColor: #f29718 *.cursorColor: #f29718
! !

View file

@ -1,5 +1,12 @@
{ pkgs, config, lib, ... }: { pkgs, config, lib, ... }:
let
dracula-gtk = pkgs.fetchFromGitHub {
owner = "dracula";
repo = "gtk";
rev = "502f212d83bc67e8f0499574546b99ec6c8e16f9";
sha256 = "1wx9nzq7cqyvpaq4j60bs8g7gh4jk8qg4016yi4c331l4iw1ymsa";
};
in
{ {
# TODO modularize # TODO modularize
#imports = [ ./xdg.nix ]; #imports = [ ./xdg.nix ];
@ -18,6 +25,11 @@
home-manager.users.anish.xdg.enable = true; # This doesn't seem to do anything so we have below home-manager.users.anish.xdg.enable = true; # This doesn't seem to do anything so we have below
home-manager.users.anish.xdg.configHome = "/home/anish/.config"; # TODO bad hard coded home-manager.users.anish.xdg.configHome = "/home/anish/.config"; # TODO bad hard coded
home-manager.users.anish.xdg.configFile = {
"Kvantum/Dracula/Dracula.kvconfig".source = "${dracula-gtk}/kde/kvantum/Dracula-purple-solid/Dracula-purple-solid.kvconfig";
"Kvantum/Dracula/Dracula.svg".source = "${dracula-gtk}/kde/kvantum/Dracula-purple-solid/Dracula-purple-solid.svg";
"Kvantum/kvantum.kvconfig".text = "[General]\ntheme=Dracula";
};
environment.sessionVariables = rec { environment.sessionVariables = rec {
XDG_CACHE_HOME = "\${HOME}/.cache"; XDG_CACHE_HOME = "\${HOME}/.cache";
XDG_CONFIG_HOME = "\${HOME}/.config"; XDG_CONFIG_HOME = "\${HOME}/.config";
@ -36,7 +48,8 @@
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
# TODO move somewhere meaningful # TODO move somewhere meaningful
tdesktop # TODO get rid of this once bridged on sealight signal-desktop # bridge to sealight?
scrot
ripcord ripcord
feh feh
mupdf mupdf
@ -75,37 +88,54 @@
defaultSession = "none+bspwm"; defaultSession = "none+bspwm";
sessionCommands = '' sessionCommands = ''
${pkgs.xorg.xrdb}/bin/xrdb -merge <<EOF ${pkgs.xorg.xrdb}/bin/xrdb -merge <<EOF
*.foreground: #e6e1cf #define blk #1F2430
*.background: #0f1419 #define bblk #F28779
*.cursorColor: #f29718 #define red #A6CC70
! Black #define bred #FFCC66
*.color0: #000000 #define grn #5CCFE6
*.color8: #323232 #define bgrn #F29E74
! Red #define ylw #77A8D9
*.color1: #ff3333 #define bylw #5C6773
*.color9: #ff6565 #define blu #707A8C
! Green #define bblu #F27983
*.color2: #b8cc52 #define mag #BAE67E
*.color10: #eafe84 #define bmag #FFD580
! Yellow #define cyn #73D0FF
*.color3: #e7c547 #define bcyn #FFA759
*.color11: #fff779 #define wht #95E6CB
! Blue #define bwht #CBCCC6
*.color4: #36a3d9 #define bg blk
*.color12: #68d5ff #define fg wht
! Magenta
*.color5: #f07178 *.foreground: fg
*.color13: #ffa3aa *.background: bg
! Cyan *.cursorColor: mag
*.color6: #95e6cb
*.color14: #c7fffd *.color0: blk
! White *.color8: bblk
*.color7: #ffffff *.color1: red
*.color15: #ffffff *.color9: bred
! Bold, Italic, Underline *.color2: grn
*.colorBD: #e6e1cf *.color10: bgrn
!*.colorIT: *.color3: ylw
!*.colorUL: *.color11: bylw
*.color4: blu
*.color12: bblu
*.color5: mag
*.color13: bmag
*.color6: cyn
*.color14: bcyn
*.color7: wht
*.color15: bwht
! greys
*.color234: #1E2029
*.color235: #282a36
*.color236: #373844
*.color237: #44475a
*.color239: #565761
*.color240: #6272a4
*.color241: #b6b6b2
EOF EOF
''; '';
lightdm.enable = true; lightdm.enable = true;
@ -139,40 +169,47 @@
home-manager.users.anish = { home-manager.users.anish = {
# Install themes # Install themes
home.packages = with pkgs; [ home.packages = with pkgs; [
ayu-theme-gtk
dracula-theme dracula-theme
capitaine-cursors
paper-icon-theme paper-icon-theme
libsForQt5.qtstyleplugin-kvantum
qt5ct
gtk-engine-murrine
gtk_engines
themechanger
]; ];
xresources.properties = { xresources.properties = {
"Xcursor.theme" = "Paper"; "Xcursor.theme" = "Paper";
#"Xcursor.size"= 64; #"Xcursor.size"= 64;
"*.foreground" = "#e6e1cf"; "*.foreground" = "#95E6CB";
"*.background" = "#0f1419"; "*.background" = "#1F2430";
"*.cursorColor" = "#f29718"; "*.cursorColor" = "#BAE67E";
# Black # Black
"*.color0" = "#000000"; "*.color0" = "#1F2430";
"*.color8" = "#323232"; "*.color8" = "#F28779";
# Red # Red
"*.color1" = "#ff3333"; "*.color1" = "#A6CC70";
"*.color9" = "#ff6565"; "*.color9" = "#FFCC66";
# Green # Green
"*.color2" = "#b8cc52"; "*.color2" = "#5CCFE6";
"*.color10" = "#eafe84"; "*.color10" = "#F29E74";
# Yellow # Yellow
"*.color3" = "#e7c547"; "*.color3" = "#77A8D9";
"*.color11" = "#fff779"; "*.color11" = "#5C6773";
# Blue # Blue
"*.color4" = "#36a3d9"; "*.color4" = "#707A8C";
"*.color12" = "#68d5ff"; "*.color12" = "#F27983";
# Magenta # Magenta
"*.color5" = "#f07178"; "*.color5" = "#BAE67E";
"*.color13" = "#ffa3aa"; "*.color13" = "#FFD580";
# Cyan # Cyan
"*.color6" = "#95e6cb"; "*.color6" = "#73D0FF";
"*.color14" = "#c7fffd"; "*.color14" = "#FFA759";
# White # White
"*.color7" = "#ffffff"; "*.color7" = "#95E6CB";
"*.color15" = "#ffffff"; "*.color15" = "#CBCCC6";
# Bold, Italic, Underline # Bold, Italic, Underline
"*.colorBD" = "#e6e1cf"; "*.colorBD" = "#e6e1cf";
}; };
@ -199,7 +236,7 @@
[Settings] [Settings]
gtk-theme-name=Dracula gtk-theme-name=Dracula
gtk-icon-theme-name=Paper gtk-icon-theme-name=Paper
gtk-cursor-theme-name=Paper gtk-cursor-theme-name=Capitaine Cursors - White
gtk-fallback-icon-theme=gnome gtk-fallback-icon-theme=gnome
gtk-application-prefer-dark-theme=true gtk-application-prefer-dark-theme=true
gtk-xft-hinting=1 gtk-xft-hinting=1
@ -208,14 +245,19 @@
''; '';
# GTK2 global theme (widget and icon theme) # GTK2 global theme (widget and icon theme)
".config/gtk-2.0/gtkrc".text = '' ".config/gtk-2.0/gtkrc".text = ''
gtk-theme-name=Dracula gtk-theme-name=Ayu-Mirage
gtk-icon-theme-name=Paper gtk-icon-theme-name=Capitaine Cursors - White
gtk-font-name="Sans 10" gtk-font-name="Sans 10"
''; '';
"$XDG_BIN_HOME/passmenu".source = ./bin/passmenu; "$XDG_BIN_HOME/passmenu".source = ./bin/passmenu;
"$XDG_BIN_HOME/powermenu".source = ./bin/powermenu; "$XDG_BIN_HOME/powermenu".source = ./bin/powermenu;
}; };
qt = {
enable = true;
platformTheme = "gtk";
style = { name = "qt5ct-style"; };
};
# Compositor # Compositor
services.picom = { services.picom = {

View file

@ -27,210 +27,216 @@
#set virtual_spoolfile=yes #set virtual_spoolfile=yes
set folder="~/Mail/" set folder="~/Mail/"
set mbox_type = Maildir set mbox_type = Maildir
#virtual-mailboxes "inbox" "notmuch://?query=tag:inbox" mailboxes `find ~/Mail/anish/* -maxdepth 0 -type d | grep -v "tmp\|new\|cur" | sed 's|/home/asinha/Mail/|=\"|g' | sed 's|$|\"|g' | tr '\n' ' '`
#virtual-mailboxes "archive" "notmuch://?query=tag:archive"
#virtual-mailboxes "sent" "notmuch://?query=tag:sent"
## Folder with emails ## Folder with emails
#set folder = "~/Mail/anish" #set folder = "~/Mail/anish"
## Type of mailbox # Type of mailbox
## Directory to poll for new mail # Directory to poll for new mail
#set spoolfile = +Inbox #set spoolfile = +Inbox
## Directory to save sent messages into # Directory to save sent messages into
#set record = +Sent #set record = +Sent
## Sets the drafts folder # Sets the drafts folder
#set postponed = +Drafts #set postponed = +Drafts
## File that headers will be cached # File that headers will be cached
## set header_cache = ~/.cache/mutt # set header_cache = ~/.cache/mutt
#set my_name = "Anish" set my_name = "Anish"
#set imap_check_subscribed set imap_check_subscribed
## Set preffered view modes # Set preffered view modes
#auto_view text/html text/calendar application/ics # view html automatically auto_view text/html text/calendar application/ics # view html automatically
## alternative_order text/html text/plain text/enriched text/* # alternative_order text/html text/plain text/enriched text/*
## main options # main options
##set envelope_from #set envelope_from
##set edit_headers # show headers when composing #set edit_headers # show headers when composing
##set fast_reply # skip to compose when replying #set fast_reply # skip to compose when replying
##set askcc # ask for CC: #set askcc # ask for CC:
##set fcc_attach # save attachments with the body #set fcc_attach # save attachments with the body
##set forward_format = "Fwd: %s" # format of subject when forwarding #set forward_format = "Fwd: %s" # format of subject when forwarding
##set forward_decode # decode when forwarding #set forward_decode # decode when forwarding
##set attribution = "On %d, %n wrote:" # format of quoting header #set attribution = "On %d, %n wrote:" # format of quoting header
##set reply_to # reply to Reply to: field #set reply_to # reply to Reply to: field
##set reverse_name # reply as whomever it was to #set reverse_name # reply as whomever it was to
##set include # include message in replies #set include # include message in replies
##set forward_quote # include message in forwards #set forward_quote # include message in forwards
##set text_flowed #set text_flowed
##unset sig_dashes # no dashes before sig #unset sig_dashes # no dashes before sig
##unset mime_forward # forward attachments as part of body #unset mime_forward # forward attachments as part of body
##unset help # No help bar at the top of index #unset help # No help bar at the top of index
### set status_on_top # Status bar on top of index ## set status_on_top # Status bar on top of index
##set tmpdir = ~/Programs/neomutt/temp # where to keep temp files #set tmpdir = ~/Programs/neomutt/temp # where to keep temp files
#unset confirmappend # don't ask, just do! unset confirmappend # don't ask, just do!
#set quit # don't ask, just do!! set quit # don't ask, just do!!
#unset mark_old # read/new is good enough for me unset mark_old # read/new is good enough for me
##set beep_new # bell on new mails #set beep_new # bell on new mails
#set pipe_decode # strip headers and eval mimes when piping set pipe_decode # strip headers and eval mimes when piping
#set thorough_search # strip headers and eval mimes before searching set thorough_search # strip headers and eval mimes before searching
#set timeout = 0 set timeout = 0
## status bar, date format, finding stuff etc. # status bar, date format, finding stuff etc.
#set status_chars = " *%A" set status_chars = " *%A"
#set status_format = "[ Folder: %f ] [%r%m messages%?n? (%n new)?%?d? (%d to delete)?%?t? (%t tagged)? ]%>─%?p?( %p postponed )?" set status_format = "[ Folder: %f ] [%r%m messages%?n? (%n new)?%?d? (%d to delete)?%?t? (%t tagged)? ]%>%?p?( %p postponed )?"
#set date_format = "%d.%m.%Y %H:%M" set date_format = "%d.%m.%Y %H:%M"
##set sort = threads #set sort = threads
##set sort_aux = reverse-last-date-received #set sort_aux = reverse-last-date-received
##set uncollapse_jump #set uncollapse_jump
##set sort_re #set sort_re
#set reply_regexp = "^(([Rr][Ee]?(\[[0-9]+\])?: *)?(\[[^]]+\] *)?)*" set reply_regexp = "^(([Rr][Ee]?(\[[0-9]+\])?: *)?(\[[^]]+\] *)?)*"
#set quote_regexp = "^( {0,4}[>|:#%]| {0,4}[a-z0-9]+[>|]+)+" set quote_regexp = "^( {0,4}[>|:#%]| {0,4}[a-z0-9]+[>|]+)+"
#set send_charset = "utf-8:iso-8859-1:us-ascii" set send_charset = "utf-8:iso-8859-1:us-ascii"
#set charset = "utf-8" set charset = "utf-8"
#set arrow_cursor = "no" # Change `color indicator` depending set arrow_cursor = "no" # Change `color indicator` depending
## Pager View Options # notmuch shortcuts
#set pager_index_lines = 10 # Shows 10 lines of index when pager is active # Points to the notmuch directory
#set pager_context = 3 set nm_default_url = "notmuch://$HOME/Mail/anish"
#set pager_stop # Makes notmuch return threads rather than messages
#set menu_scroll set nm_query_type = "threads"
#set tilde # Binding for notmuch search
#unset markers bind index \\ vfolder-from-query
##set mailcap_path = ~/.config/neomutt/mailcap # Pager View Options
##set header_cache = "~/.cache/mutt" set pager_index_lines = 10 # Shows 10 lines of index when pager is active
##set message_cachedir = "~/.cache/mutt" set pager_context = 3
set pager_stop
set menu_scroll
set tilde
unset markers
#set query_command = "khard email --parsable --search-in-source-files '%s'" #set mailcap_path = ~/.config/neomutt/mailcap
#set header_cache = "~/.cache/mutt"
#set message_cachedir = "~/.cache/mutt"
#### Color Settings set query_command = "khard email --parsable --search-in-source-files '%s'"
## Header colors:
#color header blue default ".*"
#color header brightmagenta default "^(From)"
#color header brightcyan default "^(Subject)"
#color header brightwhite default "^(CC|BCC)"
#mono bold bold ### Color Settings
#mono underline underline # Header colors:
#mono indicator reverse color header blue default ".*"
#mono error bold color header brightmagenta default "^(From)"
#color normal default default color header brightcyan default "^(Subject)"
#color indicator brightyellow default # currently selected message. default makes bar clear, disabled arrow to save space. color header brightwhite default "^(CC|BCC)"
#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
#color body brightred default "[\-\.+_a-zA-Z0-9]+@[\-\.a-zA-Z0-9]+" # Email addresses mono bold bold
#color body brightblue default "(https?|ftp)://[\-\.,/%~_:?&=\#a-zA-Z0-9]+" # URL mono underline underline
#color body green default "\`[^\`]*\`" # Green text between ` and ` mono indicator reverse
#color body brightblue default "^# \.*" # Headings as bold blue mono error bold
#color body brightcyan default "^## \.*" # Subheadings as bold cyan color normal default default
#color body brightgreen default "^### \.*" # Subsubheadings as bold green color indicator brightyellow default # currently selected message. default makes bar clear, disabled arrow to save space.
#color body yellow default "^(\t| )*(-|\\*) \.*" # List items as yellow color sidebar_highlight red default
#color body brightcyan default "[;:][-o][)/(|]" # emoticons color sidebar_divider brightblack black
#color body brightcyan default "[;:][)(|]" # emoticons color sidebar_flagged red black
#color body brightcyan default "[ ][*][^*]*[*][ ]?" # more emoticon? color sidebar_new green black
#color body brightcyan default "[ ]?[*][^*]*[*][ ]" # more emoticon? color normal brightyellow default
#color body red default "(BAD signature)" color error red default
#color body cyan default "(Good signature)" color tilde black default
#color body brightblack default "^gpg: Good signature .*" color message cyan default
#color body brightyellow default "^gpg: " color markers red white
#color body brightyellow red "^gpg: BAD signature from.*" color attachment white default
#mono body bold "^gpg: Good signature" color search brightmagenta default
#mono body bold "^gpg: BAD signature from.*" color status brightyellow black
#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<>\"]" 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
## Default index colors: color body brightred default "[\-\.+_a-zA-Z0-9]+@[\-\.a-zA-Z0-9]+" # Email addresses
#color index yellow default '.*' color body brightblue default "(https?|ftp)://[\-\.,/%~_:?&=\#a-zA-Z0-9]+" # URL
#color index_author red default '.*' color body green default "\`[^\`]*\`" # Green text between ` and `
#color index_number blue default color body brightblue default "^# \.*" # Headings as bold blue
#color index_subject cyan default '.*' 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<>\"]"
## For new mail: # Default index colors:
#color index brightyellow black "~N" color index yellow default '.*'
#color index_author brightred black "~N" color index_author red default '.*'
#color index_subject brightcyan black "~N" color index_number blue default
color index_subject cyan default '.*'
#color progress black cyan # For new mail:
color index brightyellow black "~N"
color index_author brightred black "~N"
color index_subject brightcyan black "~N"
#### Mappings Settings color progress black cyan
#
## General rebindings ### Mappings Settings
#bind attach <return> view-mailcap
#bind attach l view-mailcap # General rebindings
#bind editor <space> noop bind attach <return> view-mailcap
#bind pager c imap-fetch-mail bind attach l view-mailcap
#bind index G last-entry bind editor <space> noop
#bind index g noop bind pager c imap-fetch-mail
#bind index gg first-entry bind index G last-entry
#bind pager,attach h exit bind index g noop
#bind pager j next-line bind index gg first-entry
#bind pager k previous-line bind pager,attach h exit
#bind pager l view-attachments bind pager j next-line
#bind index D delete-message bind pager k previous-line
#bind index U undelete-message bind pager l view-attachments
#bind index L limit bind index D delete-message
#bind index h noop bind index U undelete-message
#bind index l display-message bind index L limit
#bind browser h goto-parent bind index h noop
#bind browser l select-entry bind index l display-message
#bind pager,browser gg top-page bind browser h goto-parent
#bind pager,browser G bottom-page bind browser l select-entry
#bind index,pager,browser d half-down bind pager,browser gg top-page
#bind index,pager,browser u half-up bind pager,browser G bottom-page
#bind index,pager R group-reply bind index,pager,browser d half-down
#bind index \031 previous-undeleted # Mouse wheel bind index,pager,browser u half-up
#bind index \005 next-undeleted # Mouse wheel bind index,pager R group-reply
#bind pager \031 previous-line # Mouse wheel bind index \031 previous-undeleted # Mouse wheel
#bind pager \005 next-line # Mouse wheel bind index \005 next-undeleted # Mouse wheel
#bind editor <Tab> complete-query bind pager \031 previous-line # Mouse wheel
bind pager \005 next-line # Mouse wheel
bind editor <Tab> complete-query
## sidebar mappings # sidebar mappings
#bind index,pager \Ck sidebar-prev bind index,pager \Ck sidebar-prev
#bind index,pager \Cj sidebar-next bind index,pager \Cj sidebar-next
#bind index,pager \Co sidebar-open bind index,pager \Co sidebar-open
#bind index,pager \Cp sidebar-prev-new bind index,pager \Cp sidebar-prev-new
#bind index,pager \Cn sidebar-next-new bind index,pager \Cn sidebar-next-new
#bind index,pager B sidebar-toggle-visible bind index,pager B sidebar-toggle-visible
## global index and pager shortcuts # global index and pager shortcuts
#bind index,pager @ compose-to-sender bind index,pager @ compose-to-sender
#bind index,pager D purge-message bind index,pager D purge-message
#bind index <tab> sync-mailbox bind index <tab> sync-mailbox
#bind index <space> collapse-thread bind index <space> collapse-thread
## Email completion bindings # Email completion bindings
#bind editor <Tab> complete-query bind editor <Tab> complete-query
#bind editor ^T complete bind editor ^T complete
## Press A to add contact to Khard address book # Press A to add contact to Khard address book
#macro index,pager A \ macro index,pager A \
#"<pipe-message>khard add-email<return>" \ "<pipe-message>khard add-email<return>" \
#"add the sender email address to khard" "add the sender email address to khard"
''; '';
}; };
services.imapnotify.enable = true; services.imapnotify.enable = true;
@ -273,7 +279,7 @@
''; '';
showSignature = "append"; showSignature = "append";
}; };
passwordCommand = "cat /run/secrets/fastmail"; passwordCommand = "cat /run/agenix/fastmail";
smtp = { smtp = {
host = "fastmail.com"; host = "fastmail.com";
}; };

View file

@ -5,6 +5,8 @@
"git/attributes".source = ./attributes; "git/attributes".source = ./attributes;
}; };
programs.lazygit.enable = true;
programs.git = { programs.git = {
enable = true; enable = true;