home · contact · privacy
Add isync setup.
authorChristian Heller <c.heller@plomlompom.de>
Wed, 8 May 2019 21:30:57 +0000 (23:30 +0200)
committerChristian Heller <c.heller@plomlompom.de>
Wed, 8 May 2019 21:30:57 +0000 (23:30 +0200)
buster/home_files/user_eeepc/.mbsyncrc [new file with mode: 0644]
buster/setup_scripts/setup_home_eeepc.sh

diff --git a/buster/home_files/user_eeepc/.mbsyncrc b/buster/home_files/user_eeepc/.mbsyncrc
new file mode 100644 (file)
index 0000000..cab35a7
--- /dev/null
@@ -0,0 +1,26 @@
+IMAPAccount plom
+# Address to connect to
+Host core.plomlompom.com
+User plom
+# For some reason, mbsync doesn't accept a PassCmd output beyond 79 chars,
+# therefore ~/.imap_pass should not be longer than that.
+PassCmd "cat ~/.imap_pass"
+SSLType IMAPS
+AuthMechs LOGIN
+
+IMAPStore core-remote
+Account plom
+
+MaildirStore core-local
+# The trailing "/" is important
+Path ~/mail/maildir/
+Inbox ~/mail/inbox/
+
+Channel core
+Master :core-remote:
+Slave :core-local:
+Patterns *
+# Automatically create missing mailboxes, both locally and on the server
+Create Both
+# Save the synchronization state files in the relevant directory
+SyncState *
index 4422211572d05d6cb1e0bae4ef1c30090c618a8e..9b78394f69dbdf93d20557df0f82f313dd5efb6a 100755 (executable)
@@ -11,6 +11,7 @@ dir_secrets="${HOME}/tmp_secrets"
 borgkeys_dir=~/.config/borg/keys
 borgrepos_file=~/.borgrepos
 ssh_dir=~/.ssh
+imap_pass_file=.imap_pass
 
 ensure_repo() {
     repo_name="${1}"
@@ -41,6 +42,9 @@ stty echo
 tar xf borg_keyfiles.tar
 mkdir -p "${borgkeys_dir}"
 mv borg_keyfiles/* "${borgkeys_dir}"
+if [ -f "${imap_pass_file}" ]; then
+    cp "${imap_pass_file}" ~
+fi
 cd
 rm -rf "${dir_secrets}"
 
@@ -65,5 +69,13 @@ cat "${repos_list_file}" | while read line; do
     ensure_repo "${line}"
 done
 
+# Set up e-mail system. Note that we only do mbsync if the imap pass file
+# is found. It may not be present on every secrets drive yet, so we have to
+# deal with the possibility of it being absent at this point.
+mkdir -p ~/Mail/maildir  # expected by mbsync/isync
+if [ -f "~/${imap_pass_file}" ]; then
+    mbsync -a
+fi
+
 # Final note on how to integrate tridactyl.
 echo "TODO: As tridactyl user, don't forget to do :source on the first Firefox run and then re-start."