[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Orgmode] ELPA Howto
From: |
Jambunathan K |
Subject: |
[Orgmode] ELPA Howto |
Date: |
Thu, 30 Sep 2010 13:00:52 +0530 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/23.1.91 (windows-nt) |
I managed to create an elpa compatible tar for orgmode. Recording here
what I did in the hope that it will be useful.
Creating ELPA-compatible tar:
1. Add the enclosed changes to Makefile.
2. Create an ELPA-compatible tarfile with
$ make TAG=20100930 elpa
3. Copy the generated org-20100930.tar to the package server
ELPA Server-side setup:
1. Server is running on loopback IP.
,----[ C-h v package-archives RET ]
| package-archives is a variable defined in `package.el'.
| Its value is
| (("self" . "http://127.0.0.1/packages/"))
|
`----
2. Directory structure
,----
| > dir packages
| 97 archive-contents
| 3,778,560 org-20100930.tar
| 2 File(s) 3,778,657 bytes
|
| > cat packages/archive-contents
|
| (1
| (org .
| [(20100930)
| nil "Outline-based notes management and organizer" tar])
| )
|
`----
3. .emacs
,----
| (custom-set-variables
| '(package-archives (quote (("self" . "http://127.0.0.1/packages/")))))
`----
,---- [ .emacs ]
| (when (load (expand-file-name "~/elisp/package.el"))
| (package-initialize))
`----
The tar file is now ready for installation with M-x list-packages etc
etc.
An Observation:
package.el generates an 'org-autoloads.el' as part of compilation and
loads the same as part of activation. This means that autoloads such as
'org-agenda' gets served from the newly installed package while
non-autoloads like 'org-overview' still point to the old installation.
This means that a restart of Emacs is necessary for the new changes to
take effect. I am not sure whether it is intended. But this behaviour
could surprise the user.
Jambunathan K.
Attachments:
X diff --git a/Makefile b/Makefile
X old mode 100644
X new mode 100755
X index 1c1f317..a84b62f
X --- a/Makefile
X +++ b/Makefile
X @@ -53,6 +53,9 @@ CP = cp -p
X # Name of the program to install info files
X INSTALL_INFO=install-info
X
X +
X +DOCSTRING = "Outline-based notes management and organizer"
X +
X ##----------------------------------------------------------------------
X ## BELOW THIS LINE ON YOUR OWN RISK!
X ##----------------------------------------------------------------------
X @@ -325,6 +328,14 @@ distfile:
X zip -r org-$(TAG).zip org-$(TAG)
X gtar zcvf org-$(TAG).tar.gz org-$(TAG)
X
X +elpa: install-info
X + $(MKDIR) org-$(TAG)
X + cp -r $(LISPFILES0) org-$(TAG)/
X + cp $(infodir)/dir org-$(TAG)
X + cp $(INFOFILES) org-$(TAG)
X + echo "(define-package \"org\" \"$(TAG)\" \"$(DOCSTRING)\")" >
org-$(TAG)/org-pkg.el
X + tar cf org-$(TAG).tar org-$(TAG) --remove-files
X +
X makerelease:
X @if [ "X$(TAG)" = "X" ]; then echo "*** No tag ***"; exit 1; fi
X ${MAKE} distfile
X
Jambunathan K.
- [Orgmode] ELPA Howto,
Jambunathan K <=