From mboxrd@z Thu Jan 1 00:00:00 1970 From: David Masterson Subject: Re: The Org Package Date: Fri, 11 Apr 2014 21:10:44 -0700 Message-ID: <86zjjrchmj.fsf@gmail.com> References: <86ob07e0r9.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:43764) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WYpHb-0005z1-RM for emacs-orgmode@gnu.org; Sat, 12 Apr 2014 00:11:19 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WYpHU-0000QZ-AK for emacs-orgmode@gnu.org; Sat, 12 Apr 2014 00:11:11 -0400 Received: from plane.gmane.org ([80.91.229.3]:55772) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WYpHU-0000QU-3w for emacs-orgmode@gnu.org; Sat, 12 Apr 2014 00:11:04 -0400 Received: from list by plane.gmane.org with local (Exim 4.69) (envelope-from ) id 1WYpHN-0003aY-Hy for emacs-orgmode@gnu.org; Sat, 12 Apr 2014 06:10:57 +0200 Received: from 71-84-12-50.dhcp.trlk.ca.charter.com ([71.84.12.50]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Sat, 12 Apr 2014 06:10:57 +0200 Received: from dsmasterson by 71-84-12-50.dhcp.trlk.ca.charter.com with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Sat, 12 Apr 2014 06:10:57 +0200 List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: emacs-orgmode@gnu.org John Hendy writes: > On Fri, Apr 11, 2014 at 9:32 PM, David Masterson wrote: >> I still need more understanding of the Emacs packaging system. >> Something doesn't seem right and I'm sure I'm missing some key in >> understanding how its supposed to work. What I see right now seems like >> something doesn't match up -- particularly with the Org package: >> >> 1. Most modern Emacs have Org pre-installed. >> 2. Unfortunately, that Org is not up-to-date (24.3 has 7.9.3f). >> 3. Therefore, installing the latest Org package seems natural. >> 4. However, this does not uninstall the built-in Org package. >> 5. Packages are not initialized until after .emacs is run. >> 6. Therefore, any of the latest variables are not defined yet. >> 7. Therefore, setting a hook may not do what you think. >> 8. The documentation for Org suggests hooks (etc.) to set. >> 9. I've run into times when org-version was still 7.9.3f. >> >> Do you see where I'm heading? Does anyone else run into this >> problem? Or do most people ignore the Org package and install the >> latest from GitHub in a more manual process (a la Bernt Hansen's >> paper)? Do we need more concrete documentation on setting up the Org >> Package? > I learned emacs /for/ Org-mode, so keep that in mind as I'm pretty > ignorant of emacs in genera. I *think* that packages for emacs are > sort of a recent thing, and since I was already using git, I've never > bothered to switch my setup. I find git ridiculously easy and have > never had a reason to do anything else. Basically, I'm used to your style here, but let it not be said that I didn't, at least, try to be more modern. ;-) > Once ever: > > #+begin_src sh > mkdir ~/.elisp/ > cd ~/.elisp > git clone [orgmode git path] org.git # I like adding the .git so I > know it's a git repo > cd org.git > make clean && make > #+end_src How do you find the value of "[orgmode git path]"? > Then put in config: > > #+begin_src .emacs > (add-to-list 'load-path "~/.elisp/org.git/lisp/") > (add-to-list 'load-path "~/.elisp/org.git/contrib/lisp") > #+end_src Where does "/lisp" and "/contrib/lisp" come from? What do they contain? > That's it. Anywhere between once a week and once every three months, I > do: > > #+begin_src sh > cd ~/.elisp/org.git > git pull > make clean && make > #+end_src Do you run into any problems where something is picked up out of the "built-in" Org because of overlapping requires? > Is this more difficult than packages? What is the advantage of ELPA > vs. this? I could see it if I had a lot of these sorts of things, but > I really just use Org + ESS, so I'm not constantly > updating/installing/removing emacs add-ons other than those two. It's not more difficult and you could probably easily expand on this for any number of packages by simply expanding your last shell to walk thru all the interesting packages and pull the latest version in. As far as I can see, ELPA's plus is the GUI for pulling in new versions of packages, but its minus is that it moves the package setup *somewhat* out of .emacs and into the after-init area. For instance, I'm installing org-toodledo which hasn't been packagized yet, so, when you (require 'org-toodledo) in your .emacs, the org package is also pulled in. However, if you've updated the org package via ELPA, the wrong version of org will be pulled in *unless* you (package-initialize) in your .emacs. If you follow the basic rules, things work, but the rules aren't explicitly documented, so it can be confusing. -- David Masterson