diff --git a/home/aselimov/email.nix b/home/aselimov/email.nix deleted file mode 100644 index ec3b3e8..0000000 --- a/home/aselimov/email.nix +++ /dev/null @@ -1,143 +0,0 @@ -{config, pkgs, ... }: -let - mailNotify = pkgs.writeShellScript "mail-notify" '' - set -euo pipefail - - ${pkgs.notmuch}/bin/notmuch new >/dev/null - - ${pkgs.notmuch}/bin/notmuch search \ - --format=json \ - 'tag:new' | - ${pkgs.jq}/bin/jq -r '.[] | [.authors, .subject] | @tsv' | - while IFS=$'\t' read -r sender subject; do - ${pkgs.libnotify}/bin/notify-send \ - --app-name="Mail" \ - "New email from $sender" \ - "$subject" - done - - # Don't notify about these messages again next sync. - ${pkgs.notmuch}/bin/notmuch tag -new -- 'tag:new' - ''; -in -{ - accounts.email = { - maildirBasePath = "Mail"; - - accounts.personal = { - primary = true; - address = "alex@alexselimov.com"; - realName = "Alex Selimov"; - userName = "alex"; - - passwordCommand = "${pkgs.pass}/bin/pass show alex@alexselimov.xyz"; - - imap = { - host = "mail.alexselimov.com"; - port = 993; - - tls = { - enable = true; - useStartTls = false; - }; - }; - - maildir.path = "alex@alexselimov.com"; - - smtp = { - host = "mail.alexselimov.com"; - port = 587; - - tls = { - enable = true; - useStartTls = true; - }; - }; - mbsync = { - enable = true; - create = "both"; - }; - notmuch.enable = true; - aerc = { - enable = true; - extraAccounts = { - source = "notmuch://"; - }; - }; - }; - }; - - programs.mbsync.enable = true; - services.mbsync = { - enable = true; - frequency = "*:0/1"; - postExec = "${mailNotify}"; - }; - - programs.aerc = { - enable = true; - - extraConfig = { - general = { - unsafe-accounts-conf = true; - }; - ui.styleset-name = "zenwritten"; - filters = { - "text/plain" = "wrap -w 100 | colorize"; - "text/html" = "html | colorize"; - }; - - compose = { - editor = "nvim"; - }; - - viewer = { - pager = "less -R"; - }; - }; - - }; - - xdg.configFile."aerc/binds.conf".text = '' - ${builtins.readFile "${pkgs.aerc}/share/aerc/binds.conf"} - - [messages] - l = :view - ''; - - programs.notmuch = { - enable = true; - - new.tags = [ - "new" - "unread" - "inbox" - ]; - - extraConfig = { - user = { - name = "Alex Selimov"; - primary_email = "alex@alexselimov.com"; - }; - }; - }; - - xdg.configFile."aerc/stylesets/zenwritten".text = '' - *.default=true - *.normal=true - *.fg=default - *.bg=default - - *.selected.reverse=toggle - - title.bold=true - header.bold=true - msglist_unread.bold=true - dirlist_recent.bold=true - ''; - - xdg.configFile."aerc/mimeapps.conf".text = '' - text/html=xdg-open - ''; -} - diff --git a/home/aselimov/home.nix b/home/aselimov/home.nix index dfc5f1a..fbc315c 100644 --- a/home/aselimov/home.nix +++ b/home/aselimov/home.nix @@ -24,7 +24,6 @@ in ./theme/theme.nix ./fuzzel.nix ./mako.nix - ./email.nix ]; home.username = "aselimov"; home.homeDirectory = "/home/aselimov"; @@ -66,7 +65,6 @@ in dino wtype libnotify - prusa-slicer ]; home.pointerCursor = { enable = true; diff --git a/home/aselimov/theme/theme.nix b/home/aselimov/theme/theme.nix index 083839a..215bc61 100644 --- a/home/aselimov/theme/theme.nix +++ b/home/aselimov/theme/theme.nix @@ -1,23 +1,5 @@ {config, pkgs, ... }: { - services.darkman = { - enable = true; - - settings = { - lat = 33.7490; - lng = -84.3880; - }; - - darkModeScripts.gsettings = '' - ${pkgs.glib}/bin/gsettings \ - set org.gnome.desktop.interface color-scheme prefer-dark - ''; - - lightModeScripts.gsettings = '' - ${pkgs.glib}/bin/gsettings \ - set org.gnome.desktop.interface color-scheme prefer-light - ''; - }; home.file."bin/themer.sh" = { executable = true; text = '' @@ -51,8 +33,11 @@ ln -sf "$tmux" $HOME/.config/tmux/theme.conf makoctl reload tmux source-file ~/.config/tmux/theme.conf - for sock in "$XDG_RUNTIME_DIR"/nvim.*.0; do - timeout 1s nvim --server "$sock" --remote-send "$keys" >/dev/null 2>&1 || true + for dir in "$XDG_RUNTIME_DIR-}" "/tmp" "$HOME/.local/state/nvim"; do + [ -d "$dir" ] || continue + find "$dir" -type s -name 'nvim*' 2>/dev/null | while read -r sock; do + timeout 1s nvim --server "$sock" --remote-send "$keys" >/dev/null 2>&1 || true + done done }