mirror of
https://github.com/kmein/niveum
synced 2026-03-16 10:11:08 +01:00
feat: big upgrade to 20.03
use emojis for i3status-rust remove overlays configure mail via home-manager adapt to 20.03 config options automatically symlink cloud directories into home
This commit is contained in:
@@ -13,7 +13,6 @@ in
|
||||
./chromium.nix
|
||||
./cloud.nix
|
||||
./compton.nix
|
||||
./default.nix
|
||||
./direnv.nix
|
||||
./distrobump.nix
|
||||
./docker.nix
|
||||
@@ -29,7 +28,7 @@ in
|
||||
./kdeconnect.nix
|
||||
./keybase.nix
|
||||
./keyboard.nix
|
||||
# ./mail.nix
|
||||
./mail.nix
|
||||
./mpv.nix
|
||||
./nano.nix
|
||||
./neovim.nix
|
||||
@@ -48,13 +47,11 @@ in
|
||||
./theming.nix
|
||||
./tmux.nix
|
||||
./todo-txt.nix
|
||||
./traadfri.nix
|
||||
# ./traadfri.nix
|
||||
./unclutter.nix
|
||||
# ./urxvt.nix
|
||||
./version.nix
|
||||
./vscode.nix
|
||||
./xautolock.nix
|
||||
# ./xresources.nix
|
||||
./zsh.nix
|
||||
{
|
||||
niveum.user = {
|
||||
@@ -74,10 +71,7 @@ in
|
||||
};
|
||||
}
|
||||
{
|
||||
nix.nixPath = [
|
||||
"/var/src"
|
||||
"nixpkgs-overlays=${toString ../overlays}"
|
||||
];
|
||||
nix.nixPath = [ "/var/src" ];
|
||||
}
|
||||
{
|
||||
services.dbus.packages = [ pkgs.gnome3.dconf ];
|
||||
@@ -102,24 +96,17 @@ in
|
||||
nur = import (builtins.fetchTarball "https://github.com/nix-community/NUR/archive/master.tar.gz") {
|
||||
inherit pkgs;
|
||||
};
|
||||
writeDashBin = pkgs.writers.writeDashBin;
|
||||
writeDash = pkgs.writers.writeDash;
|
||||
gfs-fonts = pkgs.callPackage <niveum/packages/gfs-fonts.nix> {
|
||||
scardanelli = config.networking.hostName == "scardanelli";
|
||||
};
|
||||
iolanguage = pkgs.callPackage <niveum/packages/iolanguage.nix> {};
|
||||
ix = pkgs.callPackage <niveum/packages/ix.nix> {};
|
||||
};
|
||||
};
|
||||
overlays = [
|
||||
# (import <stockholm/submodules/nix-writers>)
|
||||
(import <niveum/overlays/toml.nix>)
|
||||
(import <niveum/overlays/scripts.nix>)
|
||||
(import <niveum/overlays/rust.nix>)
|
||||
(self: super: {
|
||||
writeDashBin = super.writers.writeDashBin;
|
||||
writeDash = super.writers.writeDash;
|
||||
|
||||
ix = super.callPackage <niveum/packages/ix.nix> {};
|
||||
|
||||
iolanguage = super.callPackage <niveum/packages/iolanguage.nix> {};
|
||||
gfs-fonts = super.callPackage <niveum/packages/gfs-fonts.nix> {
|
||||
scardanelli = config.networking.hostName == "scardanelli";
|
||||
};
|
||||
})
|
||||
# (import <niveum/overlays/rust.nix>)
|
||||
];
|
||||
};
|
||||
}
|
||||
@@ -277,7 +264,6 @@ in
|
||||
indicators = [ "~spacer" "~host" "~spacer" "~session" "~power" ];
|
||||
};
|
||||
};
|
||||
desktopManager.default = "none";
|
||||
};
|
||||
}
|
||||
{
|
||||
@@ -305,178 +291,5 @@ in
|
||||
'';
|
||||
};
|
||||
}
|
||||
{
|
||||
environment.systemPackages = [ pkgs.neomutt ];
|
||||
home-manager.users.me.xdg.configFile."neomutt/neomuttrc".text = ''
|
||||
set mailcap_path = ${pkgs.writeText "mailcap" ''
|
||||
text/plain; $EDITOR %s ;
|
||||
text/html; ${pkgs.lynx} -assume_charset=%{charset} -display_charset=utf-8 -dump %s; nametemplate=%s.html; copiousoutput;
|
||||
image/*; ${pkgs.sxiv}/bin/sxiv %s ;
|
||||
video/*; ${pkgs.utillinux}/bin/setsid ${pkgs.mpv}/bin/mpv --quiet %s &; copiousoutput
|
||||
application/*; ${pkgs.xdg_utils}/bin/xdg-open %s ;
|
||||
''}
|
||||
|
||||
set sort = reverse-threads
|
||||
set sleep_time = 0 # Pause 0 seconds for informational messages
|
||||
set markers = no # Disables the `+` displayed at line wraps
|
||||
set mark_old = no # Unread mail stay unread until read
|
||||
set mime_forward = yes # attachments are forwarded with mail
|
||||
set wait_key = no # mutt won't ask "press key to continue"
|
||||
set fast_reply # skip to compose when replying
|
||||
set fcc_attach # save attachments with the body
|
||||
set forward_format = "Fwd: %s" # format of subject when forwarding
|
||||
set forward_quote # include message in forwards
|
||||
set reverse_name # reply as whomever it was to
|
||||
set include = no # dont include message in replies
|
||||
set mail_check=60 # to avoid lags using IMAP with some email providers (yahoo for example)
|
||||
auto_view text/html # automatically show html (mailcap uses w3m)
|
||||
alternative_order text/plain text/enriched text/html
|
||||
|
||||
source ${pkgs.neomutt}/share/doc/neomutt/vim-keys/vim-keys.rc
|
||||
source ${pkgs.writeText "vim-keys.rc" ''
|
||||
bind index j next-entry
|
||||
bind index k previous-entry
|
||||
bind attach <return> view-mailcap
|
||||
bind attach l view-mailcap
|
||||
bind editor <space> noop
|
||||
bind index G last-entry
|
||||
bind index gg first-entry
|
||||
bind pager,attach h exit
|
||||
bind pager j next-line
|
||||
bind pager k previous-line
|
||||
bind pager l view-attachments
|
||||
bind index D delete-message
|
||||
bind index U undelete-message
|
||||
bind index L limit
|
||||
bind index h noop
|
||||
bind index l display-message
|
||||
bind index <space> tag-entry
|
||||
bind index,pager H view-raw-message
|
||||
bind browser l select-entry
|
||||
bind pager,browser gg top-page
|
||||
bind pager,browser G bottom-page
|
||||
# bind index,pager,browser d half-down
|
||||
# bind index,pager,browser u half-up
|
||||
bind index,pager S sync-mailbox
|
||||
bind index,pager R group-reply
|
||||
bind index \031 previous-undeleted # Mouse wheel
|
||||
bind index \005 next-undeleted # Mouse wheel
|
||||
bind pager \031 previous-line # Mouse wheel
|
||||
bind pager \005 next-line # Mouse wheel
|
||||
bind editor <Tab> complete-query
|
||||
|
||||
set sidebar_visible = yes
|
||||
set sidebar_width = 20
|
||||
set sidebar_short_path = yes
|
||||
set sidebar_next_new_wrap = yes
|
||||
set mail_check_stats
|
||||
set sidebar_format = '%B%?F? [%F]?%* %?N?%N/? %?S?%S?'
|
||||
bind index,pager \Ck sidebar-prev
|
||||
bind index,pager \Cj sidebar-next
|
||||
bind index,pager \Co sidebar-open
|
||||
bind index,pager \Cp sidebar-prev-new
|
||||
bind index,pager \Cn sidebar-next-new
|
||||
bind index,pager B sidebar-toggle-visible
|
||||
''}
|
||||
|
||||
source ${pkgs.writeText "colours.rc" ''
|
||||
# Default index colors:
|
||||
# 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<>\"]"
|
||||
''}
|
||||
|
||||
set index_format="%2C %Z %?X?A& ? %D %-15.15F %s (%-4.4c)"
|
||||
set smtp_authenticators = 'gssapi:login'
|
||||
|
||||
source ${
|
||||
let emailUser = "kieran.meinhardt";
|
||||
in pkgs.writeText "gmail.rc" ''
|
||||
set from="${emailUser}@gmail.com"
|
||||
set realname="${config.niveum.user.name}"
|
||||
|
||||
set imap_login="${emailUser}@gmail.com"
|
||||
set imap_pass="`${pkgs.pass}/bin/pass mail/${emailUser}@gmail.com`"
|
||||
|
||||
set smtp_url="smtps://${emailUser}@gmail.com@smtp.gmail.com:465/"
|
||||
set smtp_pass="$imap_pass"
|
||||
|
||||
set folder=imaps://${emailUser}@imap.gmail.com/
|
||||
set spoolfile="+INBOX"
|
||||
set record="+[Gmail]/Gesendet"
|
||||
set postponed="+[Gmail]/Entwürfe"
|
||||
set mbox="+[Gmail]/Archiv"
|
||||
|
||||
mailboxes =INBOX, =[Gmail]/Gesendet, =[Gmail]/Entwürfe, =[Gmail]/Archiv
|
||||
''}
|
||||
'';
|
||||
}
|
||||
];
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user