emacs-pms-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[emacs-pms] Adding to package.el to support git.


From: Donald Ephraim Curtis
Subject: [emacs-pms] Adding to package.el to support git.
Date: Sat, 10 Sep 2011 01:44:14 -0500

Hello everyone.  I am not currently subscribed to the list so please include me 
in replies.

With all due respect to other package management systems out there, I was 
annoyed because I agree with Technomancy in supporting what will be the 
"built-in" package management system (package.el).  It has plenty of it's own 
flaws and there are probably much better things out there but software is 
timing.

Anyways, I added some support to package.el to allow for `git` based packages.  
It was a pretty simple hack that really only took adding one check for a "new" 
type of package and a minor augmentation to the `archive-contents` format to 
also include repository location.

(1                                                                              
                                       
 (magit
  .
  [(2305843009213693951)
   nil "Control Git from Emacs." git "https://github.com/magit/magit.git";])
 (yasnippet
  .
  [(2305843009213693951)
   nil "do snippets" git "https://github.com/emacsmirror/yasnippet.git";]))


So for now I had to just pick a really high version number as I didn't know how 
to make a symbol named "HEAD" even though i'm sure there is a way to do it.  
Maybe someone interested here can help make this better???

Currently I am just hosting this file on my own server: 
http://milkbox.net/elpa-git/archive-contents

But this is really awesome because it should be fairly easy to write something 
that uses the epkg metadata and adds the git repos to a compatible file.

What is nice is that it was pretty easy to write a function to update the 
directories too.

Not knowing what `epkg` does or how it's going to turn out, this seems like a 
decent solution to a lot of peoples problems.  Basically because it allows 
using git repos as well as stuff on marmalade.

I'm working on doing a similar updating thing for normal packages but it is 
going to take a bit more work.

Here is the code: 
https://github.com/milkypostman/dotemacs/blob/master/elisp/package.el

--
Donald


reply via email to

[Prev in Thread] Current Thread [Next in Thread]