There're a lot of combinations to manage your email with emacs, but this works for me. I've a backup and I can manage my daily email.
The stack:
- emacs
- offlineimap
- mu
- mu4e
# Copyright 2012 Erlware, LLC. All Rights Reserved. | |
# | |
# This file is provided to you under the Apache License, | |
# Version 2.0 (the "License"); you may not use this file | |
# except in compliance with the License. You may obtain | |
# a copy of the License at | |
# | |
# http://www.apache.org/licenses/LICENSE-2.0 | |
# | |
# Unless required by applicable law or agreed to in writing, |
(setq mu4e-mu-binary "/usr/local/bin/mu" | |
mu4e-sent-folder "/[Gmail].Sent Mail" | |
mu4e-drafts-folder "/[Gmail].Drafts" | |
mu4e-trash-folder "/[Gmail].Trash" | |
mu4e-refile-folder "/Archives" | |
mu4e-use-fancy-chars nil) | |
(setq user-mail-address "foo" | |
user-full-name "bar" | |
mail-user-agent 'message-user-agent |
%% @author Bryan Fink | |
%% @doc formjson_resource takes x-www-form-urlencoded data and | |
%% re-encodes it as JSON. The data is expected as query | |
%% parameters for a GET, and request body for a POST. | |
%% | |
%% ``` | |
%% In: one=two&me=pope | |
%% Out: {"one":"two","me":"pope"} | |
%% ''' | |
-module(formjson_resource). |
worker_processes 4; | |
events { | |
worker_connections 1024; | |
} | |
http { | |
default_type application/octet-stream; | |
log_format main '$remote_addr - $remote_user [$time_local] "$request" ' | |
'$status $body_bytes_sent "$http_referer" ' |
;; Clutch provides a pretty comprehensive API, but I'm frustated that 95% of database | |
;; interactions require using something other than the typical Clojure vocabulary of | |
;; assoc/conj/dissoc/get/seq/reduce/etc, even though those semantics are entirely appropriate | |
;; (modulo the whole stateful database thing). | |
;; | |
;; This is (the start of) an attempt to create a type to provide most of the | |
;; functionality of Clutch with a more pleasant, concise API (it uses the Clutch API | |
;; under the covers, and rare operations would generally remain accessible only | |
;; at that lower level). | |
;; |
module Resque | |
# Provides a Failover to MySQL. | |
module Failover | |
def self.extended(base) | |
base.class_eval do | |
class << self | |
alias_method_chain :enqueue, :active_record_failover | |
alias_method_chain :enqueue_at, :active_record_failover | |
end | |
end |
# in /usr/share/xsessions | |
[Desktop Entry] | |
Name=Xmonad GNOME | |
Comment=Tiling window manager | |
TryExec=/usr/bin/gnome-session | |
Exec=gnome-session --session=xmonad | |
Type=XSession |
webserver: webserver.c libuv/uv.a http-parser/http_parser.o | |
gcc -I libuv/include \ | |
-lrt -lm -lpthread -o \ | |
webserver webserver.c \ | |
libuv/uv.a http-parser/http_parser.o | |
libuv/uv.a: | |
$(MAKE) -C libuv | |
http-parser/http_parser.o: |