From 7a0c48604395328a2ea6132e2935fb113751dc8f Mon Sep 17 00:00:00 2001
From: Ramakrishnan Muthukrishnan <ram@rkrishnan.org>
Date: Wed, 9 Dec 2015 15:31:59 +0530
Subject: [PATCH] some misc packaging fixes

---
 init.el     |  6 ++++--
 packages.el | 18 ++++++++++++++----
 2 files changed, 18 insertions(+), 6 deletions(-)

diff --git a/init.el b/init.el
index a054cfb..3a0cf34 100644
--- a/init.el
+++ b/init.el
@@ -1,3 +1,4 @@
+(package-initialize)
 (show-paren-mode 1)
 ;; y-or-n instead of yes-or-no
 (defalias 'yes-or-no-p 'y-or-n-p)
@@ -28,6 +29,7 @@
  ;; If there is more than one, they won't work right.
  '(initial-frame-alist (quote ((fullscreen . maximized))))
  '(send-mail-function (quote smtpmail-send-it)))
+
 ;; Who use the bar to scroll?
 (when (display-graphic-p)
   (progn
@@ -77,8 +79,8 @@
 (add-hook 'haskell-mode-hook 'turn-on-haskell-doc-mode)
 
 ;; haskell mode
-(require 'haskell-interactive-mode)
 (require 'haskell-process)
+(require 'haskell-interactive-mode)
 (add-hook 'haskell-mode-hook 'interactive-haskell-mode)
 
 (custom-set-variables
@@ -170,7 +172,7 @@
 ;; addressbook
 (require 'notmuch-address)
 (setq notmuch-address-command "/usr/bin/notmuch-addrlookup")
-(notmuch-address-message-insinuate)
+;;(notmuch-address-message-insinuate)
 
 (require 'smtpmail)
 (setq message-send-mail-function 'smtpmail-send-it)
diff --git a/packages.el b/packages.el
index 0ca2637..a98100a 100644
--- a/packages.el
+++ b/packages.el
@@ -1,14 +1,22 @@
 ; my-packages.el
 (require 'package)
+
+(defconst emacs-d
+  (file-name-directory
+   (file-chase-links load-file-name))
+  "The giant turtle on which the world rests.")
+
+(setq package-user-dir
+      (expand-file-name "elpa" emacs-d))
+
 (add-to-list 'package-archives
              '("melpa" . "http://melpa.milkbox.net/packages/") t)
 (add-to-list 'package-archives
-             '("marmalade" . "http://marmalade-repo.org/packages/") t)
+             '("gnu" . "http://elpa.gnu.org/packages/") t)
 (package-initialize)
 
 ; fetch the list of packages available
-(unless package-archive-contents
-  (package-refresh-contents))
+(package-refresh-contents)
 
 ;; make sure my list of packages are installed
 (setq package-list '(go-mode
@@ -25,7 +33,9 @@
                      racket-mode
                      auto-complete
                      magit
-                     ledger-mode))
+                     ledger-mode
+                     company
+                     company-ghc))
 
 ; install the missing packages
 (dolist (package package-list)
-- 
2.45.2