diesdas
This commit is contained in:
parent
40539ae163
commit
9fdeb99a61
11 changed files with 122 additions and 251 deletions
|
|
@ -5,4 +5,10 @@
|
||||||
aichat
|
aichat
|
||||||
glow
|
glow
|
||||||
];
|
];
|
||||||
|
|
||||||
|
programs.fish.shellAliases = {
|
||||||
|
vibe = "aichat -c";
|
||||||
|
clank = "aichat -e";
|
||||||
|
slop = "aichat";
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@
|
||||||
let
|
let
|
||||||
|
|
||||||
myRemote = slug: {
|
myRemote = slug: {
|
||||||
passwordCommand = [ "pass" "ktiu/radicale" ];
|
passwordCommand = [ "pass" "accounts/ktiu-radicale" ];
|
||||||
userName = "ktiu";
|
userName = "ktiu";
|
||||||
type = "caldav";
|
type = "caldav";
|
||||||
url = "https://kalender.ktiu.net/ktiu/${slug}";
|
url = "https://kalender.ktiu.net/ktiu/${slug}";
|
||||||
|
|
@ -127,7 +127,7 @@ in
|
||||||
remote = {
|
remote = {
|
||||||
type = "caldav";
|
type = "caldav";
|
||||||
url = "https://cloud.gridisnotajournal.de/remote.php/dav/calendars/till/grid/";
|
url = "https://cloud.gridisnotajournal.de/remote.php/dav/calendars/till/grid/";
|
||||||
passwordCommand = [ "pass" "grid/nextcloud" ];
|
passwordCommand = [ "pass" "uni/grid-caldav-nextcloud" ];
|
||||||
userName = "till";
|
userName = "till";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -1,25 +1,18 @@
|
||||||
# Navigation
|
# Navigation
|
||||||
bind pager k previous-entry
|
bind pager k previous-entry
|
||||||
bind pager j next-entry
|
bind pager j next-entry
|
||||||
# bind index,pager \Cu half-up
|
|
||||||
# bind index,pager \Cd half-down
|
|
||||||
# bind pager gg top
|
|
||||||
# bind index gg first-entry
|
|
||||||
# bind pager G bottom
|
|
||||||
# bind index G last-entry
|
|
||||||
# bind index,pager N search-opposite
|
|
||||||
bind index <return> display-message
|
bind index <return> display-message
|
||||||
bind index <space> collapse-thread
|
bind index <space> collapse-thread
|
||||||
bind index,pager gf change-folder
|
bind index,pager gf change-folder
|
||||||
|
|
||||||
# Read HTML
|
# Read HTML
|
||||||
bind index,pager V noop
|
bind index,pager V noop
|
||||||
macro index,pager V "<view-attachments><search>html<enter><view-mailcap><exit>"
|
macro index,pager V "<view-attachments><search>html<enter><view-mailcap><exit>" "View as HTML"
|
||||||
|
|
||||||
# compose
|
# compose
|
||||||
bind compose p postpone-message
|
bind compose p postpone-message
|
||||||
bind compose P pgp-menu
|
bind compose P pgp-menu
|
||||||
# macro compose I "<attach-file>`tmpfile=$(mktemp -u --suffix .png -t XXXXXXXXXXXX -p ~/tmp) && wl-paste -t image/png > "$tmpfile" && echo "$tmpfile"`<enter>" "attach image from clipboard"
|
macro compose I "<attach-file>\`tmpfile=$(mktemp -u --suffix .png -t XXXXXXXXXXXX -p ~/tmp) && wl-paste -t image/png > \"$tmpfile\" && echo \"$tmpfile\"\`<enter>" "attach image from clipboard"
|
||||||
|
|
||||||
bind editor <Tab> complete-query
|
bind editor <Tab> complete-query
|
||||||
bind editor ^T complete
|
bind editor ^T complete
|
||||||
|
|
@ -28,58 +21,47 @@ bind index,pager m noop
|
||||||
macro index,pager mar "<tag-pattern>new<enter><tag-prefix-cond><clear-flag>n<enter><tag-prefix-cond><clear-flag>*<enter>" "Mark all read"
|
macro index,pager mar "<tag-pattern>new<enter><tag-prefix-cond><clear-flag>n<enter><tag-prefix-cond><clear-flag>*<enter>" "Mark all read"
|
||||||
|
|
||||||
# compose with signature management
|
# compose with signature management
|
||||||
macro index,pager @ "<enter-command>set signature=$my_signature<enter><compose-to-sender>" "Compose to sender"
|
|
||||||
macro index,pager c "<enter-command>set signature=$my_signature<enter><mail>" "Compose new message"
|
macro index,pager c "<enter-command>set signature=$my_signature<enter><mail>" "Compose new message"
|
||||||
macro index,pager r "<enter-command>unset signature<enter><reply>" "Reply to message"
|
macro index,pager r "<enter-command>unset signature<enter><reply>" "Reply to message"
|
||||||
macro index,pager a "<enter-command>unset signature<enter><group-reply>" "Reply all"
|
macro index,pager a "<enter-command>unset signature<enter><group-reply>" "Reply all"
|
||||||
macro index,pager f "<enter-command>unset signature<enter><forward-message>" "Forward message"
|
macro index,pager f "<enter-command>unset signature<enter><forward-message>" "Forward message"
|
||||||
|
|
||||||
# moving messages
|
# moving messages
|
||||||
macro index,pager J ":set resolve=no\n<clear-flag>n:set resolve=yes\n<save-message>$my_junk<enter>" \
|
macro index,pager J ":set resolve=no\n<clear-flag>n:set resolve=yes\n<save-message>$my_junk<enter>" "Move to junk"
|
||||||
"Move to junk folder"
|
macro index,pager y ":set resolve=no\n<clear-flag>n:set resolve=yes\n<save-message>$mbox<enter>" "Move to archive"
|
||||||
macro index,pager y ":set resolve=no\n<clear-flag>n:set resolve=yes\n<save-message>$mbox<enter>" \
|
macro index,pager I "<save-message>$spoolfile<enter>" "Move to inbox"
|
||||||
"Move message to the archive"
|
|
||||||
macro index,pager I "<save-message>$spoolfile<enter>" "Move message to the inbox"
|
|
||||||
|
|
||||||
# switch folders
|
# switch folders
|
||||||
macro index,pager g! "<change-folder>$spoolfile<enter><refresh>" "Go to inbox"
|
macro index,pager g! "<change-folder>$spoolfile<enter><refresh>" "Go to inbox"
|
||||||
macro index,pager gd "<change-folder>$postponed<enter><refresh>" "Go to drafts"
|
macro index,pager gd "<change-folder>$postponed<enter><refresh>" "Go to drafts"
|
||||||
macro index,pager g< "<change-folder>$record<enter><refresh>" "Go to sent"
|
macro index,pager g< "<change-folder>$record<enter><refresh>" "Go to sent"
|
||||||
macro index,pager ga "<change-folder>$mbox<enter>" "Go to archive"
|
macro index,pager g> "<change-folder>$mbox<enter><refresh>" "Go to archive"
|
||||||
macro index,pager g> "<change-folder>$mbox<enter><refresh>" "Go to archive"
|
macro index,pager gt "<change-folder>$trash<enter><refresh>" "Go to trash"
|
||||||
macro index,pager gt "<change-folder>$trash<enter><refresh>" "Go to trash"
|
macro index,pager gj "<change-folder>$my_junk<enter><refresh>" "Go to junk"
|
||||||
macro index,pager gj "<change-folder>$my_junk<enter><refresh>" "Go to junk"
|
|
||||||
|
|
||||||
# accounts
|
# accounts
|
||||||
macro index,pager gu "<change-folder>~/.local/share/mail/gu/Inbox<enter><refresh>" "Go to GU"
|
macro index,pager gu "<change-folder>~/.local/share/mail/gu/Inbox<enter><refresh>" "Go to gu"
|
||||||
# macro index,pager gp "<change-folder>+systemli/IMAP/Inbox<enter><refresh>" "Go to Systemli"
|
macro index,pager gm "<change-folder>~/.local/share/mail/t9e/Inbox<enter><refresh>" "Go to t9e"
|
||||||
macro index,pager gm "<change-folder>~/.local/share/mail/t9e/Inbox<enter><refresh>" "Go to t9e"
|
macro index,pager gk "<change-folder>~/.local/share/mail/ksh/Inbox<enter><refresh>" "Go to ksh"
|
||||||
# macro index,pager gm "<change-folder>+gmail/IMAP/Inbox<enter><refresh>" "Go to Gmail"
|
macro index,pager gi "<change-folder>~/.local/share/mail/ktiu/Inbox<enter><refresh>" "Go to ktiu"
|
||||||
macro index,pager gk "<change-folder>~/.local/share/mail/ksh/Inbox<enter><refresh>" "Go to KSH"
|
|
||||||
macro index,pager gi "<change-folder>~/.local/share/mail/ktiu/Inbox<enter><refresh>" "Go to ktiu"
|
|
||||||
# macro index,pager gf "<change-folder>~/.local/share/mail/dkg/Inbox<enter><refresh>" "Go to DKG"
|
|
||||||
|
|
||||||
macro index,pager L "<limit>all\n" "Show all messages (undo limit)"
|
macro index,pager L "<limit>all\n" "Show all messages (undo limit)"
|
||||||
|
|
||||||
# macro index,pager go "<shell-escape>mbsync -c ~/.config/mbsync/mbsyncrc $my_mbsync_acct && notmuch new &<enter>" \
|
macro index,pager go "<shell-escape>mbsync $my_account && notmuch new<enter>" "Sync this account"
|
||||||
# "Run mbsync to sync mail for this account"
|
macro index,pager gO "<shell-escape>mbsync -a && notmuch new<enter>" "Sync all accounts"
|
||||||
|
|
||||||
macro index,pager go "<shell-escape>mbsync $my_mbsync_acct && notmuch new<enter>" \
|
bind index,pager / noop
|
||||||
|
macro index,pager // "<vfolder-from-query-readonly>folder:/$my_account/" "Find in account"
|
||||||
|
macro index,pager g/ "<vfolder-from-query-readonly>" "Find in all accounts"
|
||||||
|
macro index,pager /! "<vfolder-from-query-readonly>folder:+$my_account/$my_nm_spoolfile" "Find in inbox"
|
||||||
|
macro index,pager /< "<vfolder-from-query-readonly>folder:+$my_account/$my_nm_record" "Find in sent"
|
||||||
|
macro index,pager /> "<vfolder-from-query-readonly>folder:+$my_account/$my_nm_mbox" "Find in archive"
|
||||||
|
macro index,pager /d "<vfolder-from-query-readonly>folder:+$my_account/$my_nm_postponed" "Find in drafts"
|
||||||
|
macro index,pager /t "<vfolder-from-query-readonly>folder:+$my_account/$my_nm_trash" "Find in trash"
|
||||||
|
macro index,pager /j "<vfolder-from-query-readonly>folder:+$my_account/$my_nm_junk" "Find in junk"
|
||||||
|
|
||||||
macro index,pager g/ "<vfolder-from-query-readonly>" "find in nm"
|
macro index,pager A "<pipe-message>khard add-email --vcard-version=4.0<return>" "Add sender to khard"
|
||||||
|
|
||||||
macro index,pager A \
|
macro index,pager S "<pipe-message> ripmime -i - -d ~/tmp && rm ~/tmp/textfile*" "Save all attachments"
|
||||||
"<pipe-message>khard add-email --vcard-version=4.0<return>" \
|
|
||||||
"add the sender email address to khard"
|
|
||||||
|
|
||||||
macro index,pager S \
|
macro index,pager gb "<pipe-message> urlscan<enter>" "Extract URLs"
|
||||||
"<pipe-message> ripmime -i - -d ~/tmp && rm ~/tmp/textfile*" \
|
|
||||||
"save all non-text attachments using ripmime"
|
|
||||||
|
|
||||||
macro index,pager gb \
|
|
||||||
"<pipe-message> urlscan<enter>" \
|
|
||||||
"extract URLs out of a message"
|
|
||||||
|
|
||||||
macro index,pager gO \
|
|
||||||
"<shell-escape>mbsync -a && notmuch new<enter>" \
|
|
||||||
"run mbsync to sync all mail"
|
|
||||||
|
|
|
||||||
|
|
@ -3,10 +3,10 @@ source $alias_file
|
||||||
|
|
||||||
set mailcap_path = ~/.config/neomutt/mailcap
|
set mailcap_path = ~/.config/neomutt/mailcap
|
||||||
|
|
||||||
# source ./smime.neomuttrc
|
|
||||||
|
|
||||||
set my_download_folder = ~/tmp
|
set my_download_folder = ~/tmp
|
||||||
|
|
||||||
|
set shell = /bin/sh
|
||||||
|
|
||||||
# Caching and tmp
|
# Caching and tmp
|
||||||
set header_cache = $XDG_CACHE_HOME/neomutt/headers
|
set header_cache = $XDG_CACHE_HOME/neomutt/headers
|
||||||
set message_cachedir = $XDG_CACHE_HOME/neomutt/bodies
|
set message_cachedir = $XDG_CACHE_HOME/neomutt/bodies
|
||||||
|
|
@ -16,42 +16,24 @@ set tmpdir = $XDG_CACHE_HOME/neomutt/tmp
|
||||||
# Basic options
|
# Basic options
|
||||||
unset wait_key
|
unset wait_key
|
||||||
set mbox_type = Maildir
|
set mbox_type = Maildir
|
||||||
# set delete
|
|
||||||
set mail_check_stats
|
set mail_check_stats
|
||||||
unset confirm_append
|
unset confirm_append
|
||||||
unset beep
|
unset beep
|
||||||
unset mark_old
|
unset mark_old
|
||||||
set sleep_time = 0
|
set sleep_time = 0
|
||||||
# set shell = /bin/bash
|
|
||||||
|
|
||||||
# Sending
|
# Sending
|
||||||
set use_envelope_from
|
set use_envelope_from
|
||||||
unset reverse_realname
|
unset reverse_real_name
|
||||||
|
|
||||||
# Searching
|
# Searching
|
||||||
set nm_default_url = "notmuch:///home/till/.local/share/mail/"
|
set nm_default_url = "notmuch:///home/till/.local/share/mail/"
|
||||||
|
set my_nm_spoolfile = 'Inbox'
|
||||||
|
set my_nm_postponed = 'Drafts'
|
||||||
|
set my_nm_record = 'Sent'
|
||||||
|
set my_nm_trash = 'Trash'
|
||||||
|
|
||||||
# Multi-account setup
|
folder-hook . source ~/.config/neomutt/bindings.neomuttrc
|
||||||
# source ~/.config/neomutt/accounts/dkg.neomuttrc
|
|
||||||
# source ~/.config/neomutt/accounts/gu.neomuttrc
|
|
||||||
# bind index,pager g noop
|
|
||||||
|
|
||||||
# folder-hook $folder/gu/ source ~/.config/neomutt/accounts/gu.neomuttrc
|
|
||||||
# folder-hook $folder/systemli/ source ~/.config/neomutt/accounts/systemli.neomuttrc
|
|
||||||
# folder-hook $folder/ks/ source ~/.config/neomutt/accounts/ks.neomuttrc
|
|
||||||
# folder-hook $folder/gmail/ source ~/.config/neomutt/accounts/gmail.neomuttrc
|
|
||||||
# folder-hook $folder/ktiu/ source ~/.config/neomutt/accounts/ktiu.neomuttrc
|
|
||||||
# folder-hook $folder/dkg/ source ~/.config/neomutt/accounts/dkg.neomuttrc
|
|
||||||
# folder-hook $folder/papa/ source ~/.config/neomutt/accounts/papa.neomuttrc
|
|
||||||
|
|
||||||
folder-hook . source ~/.config/neomutt/bindings.neomuttrc
|
|
||||||
|
|
||||||
# # Source config
|
|
||||||
# source ~/.config/neomutt/views.neomuttrc
|
|
||||||
# source ~/.config/neomutt/sidebar.neomuttrc
|
|
||||||
# source ~/.config/neomutt/colors.neomuttrc
|
|
||||||
# source ~/.config/neomutt/smime.neomuttrc
|
|
||||||
# source ~/.config/neomutt/pgp.neomuttrc
|
|
||||||
|
|
||||||
# Compose
|
# Compose
|
||||||
set editor = "nvim -c 'call woof#init#Init()'"
|
set editor = "nvim -c 'call woof#init#Init()'"
|
||||||
|
|
@ -118,13 +100,6 @@ color header brightgreen default "^(Subject)"
|
||||||
color header yellow default "^(From|To|CC|BCC)"
|
color header yellow default "^(From|To|CC|BCC)"
|
||||||
color header blue default "^Date"
|
color header blue default "^Date"
|
||||||
|
|
||||||
## Status
|
|
||||||
# color status yellow default '\[ ↻ \]'
|
|
||||||
# color status green default '\[ ✔ \]'
|
|
||||||
# color status magenta default '\[ ٪ \]'
|
|
||||||
# color status black default '\[ [0-9]+ new \]'
|
|
||||||
# color status red default '\[ [0-9]+ to delete \]'
|
|
||||||
|
|
||||||
## Mutt
|
## Mutt
|
||||||
color message cyan default
|
color message cyan default
|
||||||
color error red default
|
color error red default
|
||||||
|
|
|
||||||
|
|
@ -1,37 +1,26 @@
|
||||||
{ config, pkgs, lib, ... }:
|
{ config, pkgs, lib, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
programs.msmtp = {
|
programs.msmtp.enable = true;
|
||||||
enable = true;
|
|
||||||
configContent = lib.mkOrder 1200 ''
|
|
||||||
defaults
|
|
||||||
logfile ${config.xdg.stateHome}/msmtp/msmtp.log
|
|
||||||
port 587
|
|
||||||
|
|
||||||
account ktiu : t9e
|
|
||||||
from *@ktiu.net
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.mbsync.enable = true;
|
programs.mbsync.enable = true;
|
||||||
|
|
||||||
|
programs.notmuch.enable = true;
|
||||||
|
|
||||||
programs.neomutt = {
|
programs.neomutt = {
|
||||||
enable = true;
|
enable = true;
|
||||||
vimKeys = true;
|
vimKeys = true;
|
||||||
extraConfig = builtins.readFile ./config.neomuttrc;
|
extraConfig = builtins.readFile ./config.neomuttrc;
|
||||||
};
|
};
|
||||||
|
|
||||||
programs.notmuch.enable = true;
|
|
||||||
|
|
||||||
xdg.configFile."neomutt/bindings.neomuttrc".source = ./bindings.neomuttrc;
|
xdg.configFile."neomutt/bindings.neomuttrc".source = ./bindings.neomuttrc;
|
||||||
xdg.configFile."neomutt/smime.neomuttrc".source = ./smime.neomuttrc;
|
|
||||||
xdg.configFile."neomutt/mailcap".source = ./neomutt_mailcap;
|
xdg.configFile."neomutt/mailcap".source = ./neomutt_mailcap;
|
||||||
|
|
||||||
accounts.email = {
|
accounts.email = {
|
||||||
maildirBasePath = "${config.xdg.dataHome}/mail";
|
maildirBasePath = "${config.xdg.dataHome}/mail";
|
||||||
accounts = {
|
accounts = {
|
||||||
|
|
||||||
gu = {
|
gu = { name, ... }: {
|
||||||
primary = true;
|
primary = true;
|
||||||
address = "straube@geo.uni-frankfurt.de";
|
address = "straube@geo.uni-frankfurt.de";
|
||||||
realName = "Till Straube";
|
realName = "Till Straube";
|
||||||
|
|
@ -39,7 +28,6 @@
|
||||||
smtp.host = "smtpauth.rz.uni-frankfurt.de";
|
smtp.host = "smtpauth.rz.uni-frankfurt.de";
|
||||||
smtp.tls.useStartTls = true;
|
smtp.tls.useStartTls = true;
|
||||||
userName = "tstraube";
|
userName = "tstraube";
|
||||||
notmuch.enable = true;
|
|
||||||
passwordCommand = "pass uni/hrz";
|
passwordCommand = "pass uni/hrz";
|
||||||
signature = {
|
signature = {
|
||||||
text = ''
|
text = ''
|
||||||
|
|
@ -49,6 +37,7 @@
|
||||||
'';
|
'';
|
||||||
showSignature = "append";
|
showSignature = "append";
|
||||||
};
|
};
|
||||||
|
notmuch.enable = true;
|
||||||
mbsync = {
|
mbsync = {
|
||||||
enable = true;
|
enable = true;
|
||||||
create = "maildir";
|
create = "maildir";
|
||||||
|
|
@ -57,11 +46,15 @@
|
||||||
msmtp.enable = true;
|
msmtp.enable = true;
|
||||||
neomutt = {
|
neomutt = {
|
||||||
enable = true;
|
enable = true;
|
||||||
sendMailCommand = lib.getExe pkgs.msmtp;
|
sendMailCommand = "${lib.getExe pkgs.msmtp} -a ${ name }";
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
|
set my_account='${ name }'
|
||||||
|
|
||||||
set mbox='+Archive'
|
set mbox='+Archive'
|
||||||
|
set my_nm_mbox='Archive'
|
||||||
|
|
||||||
set my_junk='+Spamverdacht'
|
set my_junk='+Spamverdacht'
|
||||||
set my_mbsync_acct='gu'
|
set my_nm_junk='Spamverdacht'
|
||||||
|
|
||||||
set crypt_auto_smime
|
set crypt_auto_smime
|
||||||
unset crypt_auto_pgp
|
unset crypt_auto_pgp
|
||||||
|
|
@ -71,10 +64,8 @@
|
||||||
set crypt_replysign
|
set crypt_replysign
|
||||||
set crypt_replysignencrypted
|
set crypt_replysignencrypted
|
||||||
set crypt_verify_sig
|
set crypt_verify_sig
|
||||||
# set smime_default_key = "f1355556.0"
|
|
||||||
set smime_sign_as = "f1355556.0"
|
set smime_sign_as = "f1355556.0"
|
||||||
set pgp_default_key = ""
|
set pgp_default_key = ""
|
||||||
# unset crypt_use_gpgme
|
|
||||||
|
|
||||||
unalternates *
|
unalternates *
|
||||||
alternates ^straube@em.uni-frankfurt.de$ \
|
alternates ^straube@em.uni-frankfurt.de$ \
|
||||||
|
|
@ -82,40 +73,37 @@
|
||||||
^tstraube@rz.uni-frankfurt.de$ \
|
^tstraube@rz.uni-frankfurt.de$ \
|
||||||
^tstraube@uni-frankfurt.de$
|
^tstraube@uni-frankfurt.de$
|
||||||
unset reverse_name
|
unset reverse_name
|
||||||
set my_signature = ${
|
|
||||||
pkgs.writeText
|
set my_signature = ${ pkgs.writeText "signature.txt" config.accounts.email.accounts.gu.signature.text }
|
||||||
"signature.txt"
|
|
||||||
config.accounts.email.accounts.gu.signature.text
|
|
||||||
}
|
|
||||||
color status blue default
|
color status blue default
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
t9e = {
|
t9e = { name, ... }: {
|
||||||
address = "till.straube@t9e.me";
|
address = "till.straube@t9e.me";
|
||||||
realName = "Till Straube";
|
realName = "Till Straube";
|
||||||
imap.host = "arielle.ktiu.net";
|
imap.host = "arielle.ktiu.net";
|
||||||
smtp.host = "arielle.ktiu.net";
|
smtp.host = "arielle.ktiu.net";
|
||||||
smtp.tls.useStartTls = true;
|
smtp.tls.useStartTls = true;
|
||||||
notmuch.enable = true;
|
|
||||||
userName = "till.straube@t9e.me";
|
userName = "till.straube@t9e.me";
|
||||||
signature.text = ''
|
signature.text = ''
|
||||||
Till Straube (he/him)
|
Till Straube (he/him)
|
||||||
PGP key: https://keys.openpgp.org/search?q=till.straube@t9e.me
|
PGP key: https://keys.openpgp.org/search?q=till.straube@t9e.me
|
||||||
'';
|
'';
|
||||||
signature.showSignature = "append";
|
gpg.signByDefault = true;
|
||||||
gpg = {
|
notmuch.enable = true;
|
||||||
key = "5FA6782F543D12ED07110780BA1B73F10BABF8E3";
|
|
||||||
signByDefault = true;
|
|
||||||
};
|
|
||||||
neomutt = {
|
neomutt = {
|
||||||
enable = true;
|
enable = true;
|
||||||
sendMailCommand = lib.getExe pkgs.msmtp;
|
sendMailCommand = "${lib.getExe pkgs.msmtp} -a ${ name }";
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
set my_mbsync_acct='t9e'
|
set my_mbsync_account='${ name }'
|
||||||
|
|
||||||
set mbox='+Archive'
|
set mbox='+Archive'
|
||||||
|
set my_nm_mbox='Archive'
|
||||||
|
|
||||||
set my_junk='+Junk'
|
set my_junk='+Junk'
|
||||||
|
set my_nm_junk='Junk'
|
||||||
|
|
||||||
set crypt_auto_pgp
|
set crypt_auto_pgp
|
||||||
unset crypt_auto_smime
|
unset crypt_auto_smime
|
||||||
|
|
@ -124,11 +112,7 @@
|
||||||
alternates @t9e.me$ @ktiu.net$
|
alternates @t9e.me$ @ktiu.net$
|
||||||
set reverse_name
|
set reverse_name
|
||||||
|
|
||||||
set my_signature = ${
|
set my_signature = ${ pkgs.writeText "signature.txt" config.accounts.email.accounts.t9e.signature.text }
|
||||||
pkgs.writeText
|
|
||||||
"signature.txt"
|
|
||||||
config.accounts.email.accounts.t9e.signature.text
|
|
||||||
}
|
|
||||||
color status green default
|
color status green default
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
@ -139,87 +123,37 @@
|
||||||
};
|
};
|
||||||
msmtp = {
|
msmtp = {
|
||||||
enable = true;
|
enable = true;
|
||||||
extraConfig.from = "*@t9e.me";
|
extraConfig.port = "587";
|
||||||
};
|
};
|
||||||
passwordCommand = "pass mail/arielle.ktiu.net";
|
passwordCommand = "pass accounts/ktiu-imap";
|
||||||
};
|
};
|
||||||
|
|
||||||
ktiu = {
|
ksh = { name, ...}: {
|
||||||
address = "till@ktiu.net";
|
|
||||||
realName = "Till Straube";
|
|
||||||
imap.host = "shorbut.ktiu.net";
|
|
||||||
smtp.host = "shorbut.ktiu.net";
|
|
||||||
smtp.tls.useStartTls = true;
|
|
||||||
notmuch.enable = true;
|
|
||||||
userName = "till";
|
|
||||||
signature.text = ''
|
|
||||||
Till Straube (he/him)
|
|
||||||
PGP key: https://keys.openpgp.org/search?q=till@ktiu.net
|
|
||||||
'';
|
|
||||||
signature.showSignature = "append";
|
|
||||||
gpg = {
|
|
||||||
key = "5FA6782F543D12ED07110780BA1B73F10BABF8E3";
|
|
||||||
signByDefault = true;
|
|
||||||
};
|
|
||||||
neomutt = {
|
|
||||||
enable = true;
|
|
||||||
sendMailCommand = lib.getExe pkgs.msmtp;
|
|
||||||
extraConfig = ''
|
|
||||||
set my_mbsync_acct='ktiu'
|
|
||||||
|
|
||||||
set mbox='+Archive'
|
|
||||||
set my_junk='+Junk'
|
|
||||||
|
|
||||||
set crypt_auto_pgp
|
|
||||||
unset crypt_auto_smime
|
|
||||||
|
|
||||||
unalternates *
|
|
||||||
alternates @ktiu.net$
|
|
||||||
set reverse_name
|
|
||||||
set my_signature = ${
|
|
||||||
pkgs.writeText
|
|
||||||
"signature.txt"
|
|
||||||
config.accounts.email.accounts.ktiu.signature.text
|
|
||||||
}
|
|
||||||
color status green default
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
mbsync = {
|
|
||||||
enable = true;
|
|
||||||
create = "maildir";
|
|
||||||
expunge = "both";
|
|
||||||
};
|
|
||||||
msmtp = {
|
|
||||||
enable = false;
|
|
||||||
# extraConfig.from = "*@ktiu.net";
|
|
||||||
};
|
|
||||||
passwordCommand = "secret-tool lookup server shorbut.ktiu.net account till";
|
|
||||||
};
|
|
||||||
|
|
||||||
ksh = {
|
|
||||||
address = "kein_schlussstrich_hessen@systemli.org";
|
address = "kein_schlussstrich_hessen@systemli.org";
|
||||||
realName = "Kein Schlussstrich Hessen";
|
realName = "Kein Schlussstrich Hessen";
|
||||||
imap.host = "mail.systemli.org";
|
imap.host = "mail.systemli.org";
|
||||||
smtp.host = "mail.systemli.org";
|
smtp.host = "mail.systemli.org";
|
||||||
smtp.tls.useStartTls = true;
|
smtp.tls.useStartTls = true;
|
||||||
notmuch.enable = true;
|
|
||||||
userName = "kein_schlussstrich_hessen@systemli.org";
|
userName = "kein_schlussstrich_hessen@systemli.org";
|
||||||
signature.text = ''
|
signature.text = ''
|
||||||
Kein Schlussstrich Hessen
|
Kein Schlussstrich Hessen
|
||||||
PGP Key: https://keys.openpgp.org/search?q=kein_schlussstrich_hessen@systemli.org
|
PGP Key: https://keys.openpgp.org/search?q=kein_schlussstrich_hessen@systemli.org
|
||||||
'';
|
'';
|
||||||
signature.showSignature = "append";
|
signature.showSignature = "append";
|
||||||
|
gpg.signByDefault = true;
|
||||||
|
notmuch.enable = true;
|
||||||
neomutt = {
|
neomutt = {
|
||||||
enable = true;
|
enable = true;
|
||||||
# sendMailCommand = "/home/till/.nix-profile/bin/msmtp";
|
sendMailCommand = "${lib.getExe pkgs.msmtp} -a ${ name }";
|
||||||
sendMailCommand = lib.getExe pkgs.msmtp;
|
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
set my_mbsync_acct='ksh'
|
set my_mbsync_account='${ name }'
|
||||||
|
|
||||||
set mbox='+Erledigt'
|
set mbox='+Erledigt'
|
||||||
|
set my_nm_mbox='Erledigt'
|
||||||
|
|
||||||
set my_junk='+Junk'
|
set my_junk='+Junk'
|
||||||
set postponed='+Drafts'
|
set my_nm_junk='Junk'
|
||||||
set record='+Sent'
|
|
||||||
set trash='+Trash'
|
|
||||||
set crypt_auto_pgp
|
set crypt_auto_pgp
|
||||||
unset crypt_auto_smime
|
unset crypt_auto_smime
|
||||||
|
|
||||||
|
|
@ -238,11 +172,8 @@
|
||||||
create = "maildir";
|
create = "maildir";
|
||||||
expunge = "both";
|
expunge = "both";
|
||||||
};
|
};
|
||||||
msmtp = {
|
msmtp.enable = true;
|
||||||
enable = true;
|
passwordCommand = "pass ksh/systemli";
|
||||||
extraConfig.from = "kein_schlussstrich_hessen@systemli.org";
|
|
||||||
};
|
|
||||||
passwordCommand = "pass other/ksh_systemli";
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -1,24 +0,0 @@
|
||||||
# Locations
|
|
||||||
# set smime_ca_location="~/.keys/neomutt/smime/ca"
|
|
||||||
# set smime_certificates="~/.keys/neomutt/smime/public"
|
|
||||||
# set smime_keys="~/.keys/neomutt/smime/private"
|
|
||||||
|
|
||||||
# Commands (smime_keys)
|
|
||||||
set smime_pk7out_command="openssl smime -verify -in %f -noverify -pk7out"
|
|
||||||
set smime_get_cert_command="openssl pkcs7 -print_certs -in %f"
|
|
||||||
set smime_get_signer_cert_command="openssl smime -verify -in %f -noverify -signer %c -out /dev/null"
|
|
||||||
set smime_get_cert_email_command="openssl x509 -in %f -noout -email"
|
|
||||||
set smime_import_cert_command="smime_keys add_cert %f"
|
|
||||||
|
|
||||||
# Outgoing
|
|
||||||
set smime_encrypt_with="aes256"
|
|
||||||
set smime_encrypt_command="openssl smime -encrypt -%a -outform DER -in %f %c"
|
|
||||||
set smime_sign_digest_alg="sha256"
|
|
||||||
set smime_sign_command="openssl smime -sign -md %d -signer %c -inkey %k -passin stdin -in %f -certfile %i -outform DER"
|
|
||||||
|
|
||||||
# Incoming
|
|
||||||
set smime_decrypt_command="openssl smime -decrypt -passin stdin -inform DER -in %f -inkey %k -recip %c"
|
|
||||||
set smime_verify_command="openssl smime -verify -inform DER -in %s %C -content %f"
|
|
||||||
set smime_verify_opaque_command="\
|
|
||||||
openssl smime -verify -inform DER -in %s %C || \
|
|
||||||
openssl smime -verify -inform DER -in %s -noverify 2>/dev/null"
|
|
||||||
|
|
@ -23,8 +23,8 @@ set splitright
|
||||||
set tabstop=2
|
set tabstop=2
|
||||||
set updatetime=300
|
set updatetime=300
|
||||||
|
|
||||||
" set foldmethod=expr
|
set foldmethod=expr
|
||||||
" set foldexpr=nvim_treesitter#foldexpr()
|
set foldexpr=nvim_treesitter#foldexpr()
|
||||||
|
|
||||||
let g:netrw_liststyle = 3
|
let g:netrw_liststyle = 3
|
||||||
let g:netrw_fastbrowse = 0
|
let g:netrw_fastbrowse = 0
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
{ lib, pkgs, ... }:
|
{ pkgs, lib, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
|
|
@ -73,7 +73,7 @@
|
||||||
nnoremap <silent> [og :Goyo 80<return>
|
nnoremap <silent> [og :Goyo 80<return>
|
||||||
nnoremap <silent> ]og :Goyo!<return>
|
nnoremap <silent> ]og :Goyo!<return>
|
||||||
'';
|
'';
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
plugin = limelight-vim;
|
plugin = limelight-vim;
|
||||||
config = ''
|
config = ''
|
||||||
|
|
@ -115,7 +115,23 @@
|
||||||
'';
|
'';
|
||||||
}
|
}
|
||||||
|
|
||||||
(nvim-treesitter.withPlugins (p: [ p.nix p.lua p.r p.typescript ]))
|
{
|
||||||
|
plugin = (nvim-treesitter.withPlugins (p: [ p.nix p.lua p.r p.typescript ]));
|
||||||
|
type = "lua";
|
||||||
|
config = ''
|
||||||
|
vim.api.nvim_create_autocmd('FileType', {
|
||||||
|
pattern = { 'nix', 'markdown', 'lua', 'r' },
|
||||||
|
callback = function()
|
||||||
|
-- Enable Tree-sitter-based folding
|
||||||
|
vim.o.foldexpr = 'v:lua.vim.treesitter.foldexpr()'
|
||||||
|
vim.o.foldmethod = 'expr'
|
||||||
|
-- Optional: configure fold behavior
|
||||||
|
vim.o.foldlevel = 99
|
||||||
|
vim.o.foldlevelstart = 99
|
||||||
|
end,
|
||||||
|
})
|
||||||
|
'';
|
||||||
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
plugin = papercolor-theme;
|
plugin = papercolor-theme;
|
||||||
|
|
@ -154,7 +170,10 @@
|
||||||
'';
|
'';
|
||||||
}
|
}
|
||||||
|
|
||||||
vim-fish
|
{
|
||||||
|
plugin = vim-fish;
|
||||||
|
}
|
||||||
|
|
||||||
vim-nix
|
vim-nix
|
||||||
|
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -8,18 +8,15 @@ cmp.setup({
|
||||||
end,
|
end,
|
||||||
},
|
},
|
||||||
|
|
||||||
window = {
|
mapping = cmp.mapping.preset.insert(
|
||||||
-- completion = cmp.config.window.bordered(),
|
{
|
||||||
-- documentation = cmp.config.window.bordered(),
|
['<C-b>'] = cmp.mapping.scroll_docs(-4),
|
||||||
},
|
['<C-f>'] = cmp.mapping.scroll_docs(4),
|
||||||
|
['<C-Space>'] = cmp.mapping.complete(),
|
||||||
mapping = cmp.mapping.preset.insert({
|
['<C-e>'] = cmp.mapping.abort(),
|
||||||
['<C-b>'] = cmp.mapping.scroll_docs(-4),
|
['<Tab>'] = cmp.mapping.confirm({ select = false }),
|
||||||
['<C-f>'] = cmp.mapping.scroll_docs(4),
|
}
|
||||||
['<C-Space>'] = cmp.mapping.complete(),
|
),
|
||||||
['<C-e>'] = cmp.mapping.abort(),
|
|
||||||
['<Tab>'] = cmp.mapping.confirm({ select = true }),
|
|
||||||
}),
|
|
||||||
|
|
||||||
sources = cmp.config.sources({
|
sources = cmp.config.sources({
|
||||||
{ name = 'cmp_pandoc' },
|
{ name = 'cmp_pandoc' },
|
||||||
|
|
@ -34,17 +31,6 @@ cmp.setup({
|
||||||
|
|
||||||
})
|
})
|
||||||
|
|
||||||
-- To use git you need to install the plugin petertriho/cmp-git and uncomment lines below
|
|
||||||
-- Set configuration for specific filetype.
|
|
||||||
--[[ cmp.setup.filetype('gitcommit', {
|
|
||||||
sources = cmp.config.sources({
|
|
||||||
{ name = 'git' },
|
|
||||||
}, {
|
|
||||||
{ name = 'buffer' },
|
|
||||||
})
|
|
||||||
})
|
|
||||||
require("cmp_git").setup() ]]--
|
|
||||||
|
|
||||||
-- Use buffer source for `/` and `?` (if you enabled `native_menu`, this won't work anymore).
|
-- Use buffer source for `/` and `?` (if you enabled `native_menu`, this won't work anymore).
|
||||||
cmp.setup.cmdline({ '/', '?' }, {
|
cmp.setup.cmdline({ '/', '?' }, {
|
||||||
mapping = cmp.mapping.preset.cmdline(),
|
mapping = cmp.mapping.preset.cmdline(),
|
||||||
|
|
@ -66,8 +52,3 @@ cmp.setup.cmdline(':', {
|
||||||
|
|
||||||
-- Set up lspconfig.
|
-- Set up lspconfig.
|
||||||
local capabilities = require('cmp_nvim_lsp').default_capabilities()
|
local capabilities = require('cmp_nvim_lsp').default_capabilities()
|
||||||
-- Replace <YOUR_LSP_SERVER> with each lsp server you've enabled.
|
|
||||||
-- vim.lsp.config('<YOUR_LSP_SERVER>', {
|
|
||||||
-- capabilities = capabilities
|
|
||||||
-- })
|
|
||||||
-- vim.lsp.enable('<YOUR_LSP_SERVER>')
|
|
||||||
|
|
|
||||||
|
|
@ -4,8 +4,9 @@
|
||||||
services.pcscd.enable = true;
|
services.pcscd.enable = true;
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
yubikey-personalization
|
|
||||||
keymapp
|
keymapp
|
||||||
|
yubikey-personalization
|
||||||
|
yubikey-manager
|
||||||
];
|
];
|
||||||
|
|
||||||
services.udev = {
|
services.udev = {
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,7 @@ in {
|
||||||
{
|
{
|
||||||
id = "outline";
|
id = "outline";
|
||||||
name = "Outline Client";
|
name = "Outline Client";
|
||||||
redirectURIs = [ "https://${outline.hostname}/auth/oidc.callback" ];
|
redirectURIs = [ "https://${config.services.outline.hostname}/auth/oidc.callback" ];
|
||||||
secretFile = "/var/custom-access/outline-oidc-secret.txt";
|
secretFile = "/var/custom-access/outline-oidc-secret.txt";
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue