Begin supporting notmuch in Emacs
I'm borrowing from @tazjin's dotfiles, which are stored in Git on Borg. When you
call `nix-build ~/briefcase/mail`, result will output a systemd units, which you
should move to ~/.config/systemd/user/.
The path to `gmi`, which is Lieer's executable, exists in /nix/store, and you
can read it from the systemd unit file (i.e. lieer-google.service). Lieer
synchronizes notmuch with Gmail and Gmail with notmuch.
Here's a general sequence of commands that I ran to set everything up. Special
thank you to @tazjin for helping me with all of this. These steps are not
certified as a tutorial; I'm recalling them from memory. When I set this up
things didn't work as expected immediately and I had to troubleshoot.
```shell
> mkdir -p ~/mail/account.google
> cd ~/mail/account.google
> nix-env -iA nixpkgs.notmuch
> notmuch setup
> nix-build ~/briefcase/mail
> cp ./result/lieer-google.{service,timer} ~/.config/systemd/user
> rm ./result
> systemctl --user cat lieer-google
...copy the /nix/store path to gmi...
> notmuch new
> /nix/store/gmi init
...follow the OAuth login flow...
>
```
Unknowns?
- Do I need to call `systemctl --user start lieer-google` at startup? Or should
I move these units to user/default.target.wants?
- Can I send email from notmuch?
- How do I use notmuch to delete email? To respond to emails? To do anything?
Todo:
- Once this configuration stabilizes, I should package everything with Nix.
This commit is contained in:
parent
9fa97eab67
commit
3677a7a39e
3 changed files with 22 additions and 0 deletions
7
configs/shared/.config/systemd/user/lieer-google.service
Normal file
7
configs/shared/.config/systemd/user/lieer-google.service
Normal file
|
|
@ -0,0 +1,7 @@
|
||||||
|
[Unit]
|
||||||
|
Description=Lieer sync for account 'google'
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=oneshot
|
||||||
|
ExecStart=/nix/store/n6c4pr4fyrsjfksspkapb7yqc6fzl166-corp-lieer/bin/gmi sync
|
||||||
|
WorkingDirectory=%h/mail/account.google
|
||||||
9
configs/shared/.config/systemd/user/lieer-google.timer
Normal file
9
configs/shared/.config/systemd/user/lieer-google.timer
Normal file
|
|
@ -0,0 +1,9 @@
|
||||||
|
[Unit]
|
||||||
|
Description=Run lieer sync for account 'google'
|
||||||
|
|
||||||
|
[Timer]
|
||||||
|
OnActiveSec=1
|
||||||
|
OnUnitActiveSec=120
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=timers.target
|
||||||
6
mail/default.nix
Normal file
6
mail/default.nix
Normal file
|
|
@ -0,0 +1,6 @@
|
||||||
|
{ depot ? import <depot> {}, ... }:
|
||||||
|
|
||||||
|
let
|
||||||
|
inherit (builtins) fetchGit;
|
||||||
|
tazjdots = import (fetchGit "sso://user/tazjin/dotfiles") { pkgs = depot; };
|
||||||
|
in tazjdots.services.lieer
|
||||||
Loading…
Add table
Add a link
Reference in a new issue