Add a specialized "github" fetcher, as a shorthand for corresponding git URLs (fixes #34)

This commit is contained in:
Steve Purcell 2012-04-09 20:37:45 +01:00
parent 78e49f553f
commit cae2ac3513
112 changed files with 124 additions and 117 deletions

View file

@ -77,8 +77,9 @@ the repository.
Packages are specified by files in the `recipes` directory. You can contribute a new package by adding a new file under `recipes` using the following form,
(name :url "<repo url>"
:fetcher [git|svn|darcs|wiki]
(name :url "<repo url>"
:fetcher [git|github|svn|darcs|wiki]
[:repo "github-user/repo-name"]
[:files ("<file1>", ...)])
`name`
@ -88,12 +89,13 @@ Packages are specified by files in the `recipes` directory. You can contribute
: specifies the URL of the version control repository. *not required for the `wiki` fetcher*
`:fetcher`
: specifies the type of repository that `:url` points to. Right now package-build supports [git][git], [subversion (svn)][svn], [darcs][darcs], and [Emacs Wiki (wiki)][emacswiki] as possible mechanisms for checking out the repository. With the exception of the Emacs Wiki fetcher, package-build uses the corresponding application to update files before building the package. The Emacs Wiki fetcher gets the latest version of the package from `http://www.emacswiki.org/emacs/download/<NAME>.el` where `NAME` is the package name. Note that the `:url` property is not needed for the `wiki` engine unless the name of the package file on the EmacsWiki differs from the package name being built.
: specifies the type of repository that `:url` points to. Right now package-build supports [git][git], [github][github], [subversion (svn)][svn], [darcs][darcs], and [Emacs Wiki (wiki)][emacswiki] as possible mechanisms for checking out the repository. With the exception of the Emacs Wiki fetcher, package-build uses the corresponding application to update files before building the package. The Emacs Wiki fetcher gets the latest version of the package from `http://www.emacswiki.org/emacs/download/<NAME>.el` where `NAME` is the package name. Note that the `:url` property is not needed for the `wiki` engine unless the name of the package file on the EmacsWiki differs from the package name being built. In the case of the `github` fetcher, use `repo` instead of `url`; the git URL will then be deduced.
`:files`
: optional property specifying the explicit files used to build the package. Automatically populated by matching all `.el` files in the root of the repository. This is necessary when there are multiple `.el` files in the repository but the package should only be built from a subset.
[git]: http://git-scm.com/
[github]: https://github.com/
[svn]: http://subversion.apache.org/
[darcs]: http://darcs.net/
[emacswiki]: http://www.emacswiki.org/

View file

@ -226,6 +226,11 @@ seconds; the server cuts off after 10 requests in 20 seconds.")
(pb/find-parse-time
"\\([0-9]\\{4\\}-[0-9]\\{2\\}-[0-9]\\{2\\} [0-9]\\{2\\}:[0-9]\\{2\\}:[0-9]\\{2\\}\\)"))))
(defun pb/checkout-github (name config dir)
"Check package NAME with config CONFIG out of github into DIR."
(let* ((url (format "git://github.com/%s.git" (plist-get config :repo))))
(pb/checkout-git name (plist-put (copy-sequence config) :url url) dir)))
(defun pb/dump (data file)
"Write DATA to FILE as a pretty-printed Lisp sexp."
(write-region (concat (pp-to-string data) "\n") nil file))

View file

@ -1 +1 @@
(ac-slime :url "https://github.com/purcell/ac-slime.git" :fetcher git)
(ac-slime :repo "purcell/ac-slime" :fetcher github)

View file

@ -1,3 +1,3 @@
(ace-jump-mode
:url "https://github.com/winterTTr/ace-jump-mode.git"
:fetcher git)
:repo "winterTTr/ace-jump-mode"
:fetcher github)

View file

@ -1,2 +1,2 @@
(ack-and-a-half :url "https://github.com/jhelwig/ack-and-a-half.git" :fetcher git)
(ack-and-a-half :repo "jhelwig/ack-and-a-half" :fetcher github)

View file

@ -1,2 +1,2 @@
(ansi :url "https://github.com/rejeep/ansi.git" :fetcher git)
(ansi :repo "rejeep/ansi" :fetcher github)

View file

@ -1,3 +1,3 @@
(auto-complete :url "https://github.com/m2ym/auto-complete.git" :fetcher git :files
(auto-complete :repo "m2ym/auto-complete" :fetcher github :files
("*.el" "dict/*"))

View file

@ -1,2 +1,2 @@
(bm :url "https://github.com/joodland/bm.git" :fetcher git)
(bm :repo "joodland/bm" :fetcher github)

View file

@ -1,2 +1,2 @@
(browse-kill-ring :url "https://github.com/todesschaf/browse-kill-ring.git" :fetcher git)
(browse-kill-ring :repo "todesschaf/browse-kill-ring" :fetcher github)

View file

@ -1,2 +1,2 @@
(c-eldoc :url "https://github.com/nflath/c-eldoc.git" :fetcher git)
(c-eldoc :repo "nflath/c-eldoc" :fetcher github)

View file

@ -1,2 +1,2 @@
(citrus-mode :url "https://github.com/rejeep/citrus-mode.git" :fetcher git)
(citrus-mode :repo "rejeep/citrus-mode" :fetcher github)

View file

@ -1,3 +1,3 @@
(clojure-mode :url "https://github.com/technomancy/clojure-mode.git" :fetcher git :files
(clojure-mode :repo "technomancy/clojure-mode" :fetcher github :files
("clojure-mode.el"))

View file

@ -1,3 +1,3 @@
(clojure-test-mode :url "https://github.com/technomancy/clojure-mode.git" :fetcher git :files
(clojure-test-mode :repo "technomancy/clojure-mode" :fetcher github :files
("clojure-test-mode.el"))

View file

@ -1,3 +1,3 @@
(clojurescript-mode :url "https://github.com/technomancy/clojure-mode.git" :fetcher git :files
(clojurescript-mode :repo "technomancy/clojure-mode" :fetcher github :files
("clojurescript-mode.el"))

View file

@ -1,2 +1,2 @@
(coffee-mode :url "https://github.com/defunkt/coffee-mode.git" :fetcher git)
(coffee-mode :repo "defunkt/coffee-mode" :fetcher github)

View file

@ -1,2 +1,2 @@
(color-theme-sanityinc-solarized :url "https://github.com/purcell/color-theme-sanityinc-solarized.git" :fetcher git)
(color-theme-sanityinc-solarized :repo "purcell/color-theme-sanityinc-solarized" :fetcher github)

View file

@ -1,2 +1,2 @@
(color-theme-sanityinc-tomorrow :url "https://github.com/purcell/color-theme-sanityinc-tomorrow.git" :fetcher git)
(color-theme-sanityinc-tomorrow :repo "purcell/color-theme-sanityinc-tomorrow" :fetcher github)

View file

@ -1,2 +1,2 @@
(cperl-mode :url "https://github.com/jrockway/cperl-mode.git" :fetcher git)
(cperl-mode :repo "jrockway/cperl-mode" :fetcher github)

View file

@ -1,2 +1,2 @@
(csv-mode :url "https://github.com/emacsmirror/csv-mode.git" :fetcher git)
(csv-mode :repo "emacsmirror/csv-mode" :fetcher github)

View file

@ -1,2 +1,2 @@
(delim-kill :url "https://github.com/thomas11/delim-kill.git" :fetcher git)
(delim-kill :repo "thomas11/delim-kill" :fetcher github)

View file

@ -1,2 +1,2 @@
(drag-stuff :url "https://github.com/rejeep/drag-stuff.git" :fetcher git)
(drag-stuff :repo "rejeep/drag-stuff" :fetcher github)

View file

@ -1,2 +1,2 @@
(elisp-slime-nav :url "https://github.com/purcell/elisp-slime-nav.git" :fetcher git)
(elisp-slime-nav :repo "purcell/elisp-slime-nav" :fetcher github)

View file

@ -1,2 +1,2 @@
(enclose :url "https://github.com/rejeep/enclose.git" :fetcher git)
(enclose :repo "rejeep/enclose" :fetcher github)

View file

@ -1,3 +1,3 @@
(ess :url "https://github.com/milkypostman/ESS.git" :fetcher git :files
(ess :repo "milkypostman/ESS" :fetcher github :files
("*.el" "lisp/*.el" "etc/*"))

View file

@ -1,2 +1,2 @@
(evil-leader :url "https://github.com/cofi/evil-leader.git" :fetcher git)
(evil-leader :repo "cofi/evil-leader" :fetcher github)

View file

@ -1,2 +1,2 @@
(evil-numbers :url "https://github.com/cofi/evil-numbers.git" :fetcher git)
(evil-numbers :repo "cofi/evil-numbers" :fetcher github)

View file

@ -1,2 +1,2 @@
(evil-surround :url "https://github.com/timcharper/evil-surround.git" :fetcher git)
(evil-surround :repo "timcharper/evil-surround" :fetcher github)

View file

@ -1,2 +1,2 @@
(expand-region :url "https://github.com/magnars/expand-region.el.git" :fetcher git)
(expand-region :repo "magnars/expand-region.el" :fetcher github)

View file

@ -1,2 +1,2 @@
(find-file-in-project :url "https://github.com/technomancy/find-file-in-project.git" :fetcher git)
(find-file-in-project :repo "technomancy/find-file-in-project" :fetcher github)

View file

@ -1,3 +1,3 @@
(findr :url "https://github.com/milkypostman/jump.el.git" :fetcher git :files
(findr :repo "milkypostman/jump.el" :fetcher github :files
("findr.el"))

View file

@ -1 +1 @@
(flymake-coffee :url "https://github.com/purcell/flymake-coffee.git" :fetcher git)
(flymake-coffee :repo "purcell/flymake-coffee" :fetcher github)

View file

@ -1 +1 @@
(flymake-css :url "https://github.com/purcell/flymake-css.git" :fetcher git)
(flymake-css :repo "purcell/flymake-css" :fetcher github)

View file

@ -1 +1 @@
(flymake-haml :url "https://github.com/purcell/flymake-haml.git" :fetcher git)
(flymake-haml :repo "purcell/flymake-haml" :fetcher github)

View file

@ -1 +1 @@
(flymake-jslint :url "https://github.com/purcell/flymake-jslint.git" :fetcher git)
(flymake-jslint :repo "purcell/flymake-jslint" :fetcher github)

View file

@ -1,3 +1,3 @@
(flymake-perlcritic :url "https://github.com/illusori/emacs-flymake-perlcritic.git" :fetcher git :files
(flymake-perlcritic :repo "illusori/emacs-flymake-perlcritic" :fetcher github :files
("*.el" "bin/flymake_perlcritic"))

View file

@ -1 +1 @@
(flymake-php :url "https://github.com/purcell/flymake-php.git" :fetcher git)
(flymake-php :repo "purcell/flymake-php" :fetcher github)

View file

@ -1 +1 @@
(flymake-ruby :url "https://github.com/purcell/flymake-ruby.git" :fetcher git)
(flymake-ruby :repo "purcell/flymake-ruby" :fetcher github)

View file

@ -1 +1 @@
(flymake-sass :url "https://github.com/purcell/flymake-sass.git" :fetcher git)
(flymake-sass :repo "purcell/flymake-sass" :fetcher github)

View file

@ -1 +1 @@
(flymake-shell :url "https://github.com/purcell/flymake-shell.git" :fetcher git)
(flymake-shell :repo "purcell/flymake-shell" :fetcher github)

View file

@ -1,2 +1,2 @@
(full-ack :url "https://github.com/nschum/full-ack.git" :fetcher git)
(full-ack :repo "nschum/full-ack" :fetcher github)

View file

@ -1 +1 @@
(gh :url "https://github.com/sigma/gh.el.git" :fetcher git)
(gh :repo "sigma/gh.el" :fetcher github)

View file

@ -1,2 +1,2 @@
(gist :url "https://github.com/defunkt/gist.el.git" :fetcher git)
(gist :repo "defunkt/gist.el" :fetcher github)

View file

@ -1,3 +1,3 @@
(git-blame :url "https://github.com/tsgates/git-emacs.git" :fetcher git :files
(git-blame :repo "tsgates/git-emacs" :fetcher github :files
("git-blame.el"))

View file

@ -1,2 +1,2 @@
(haml-mode :url "https://github.com/nex3/haml-mode.git" :fetcher git)
(haml-mode :repo "nex3/haml-mode" :fetcher github)

View file

@ -1,2 +1,2 @@
(haskell-mode :url "https://github.com/haskell/haskell-mode.git" :fetcher git)
(haskell-mode :repo "haskell/haskell-mode" :fetcher github)

View file

@ -1,2 +1,2 @@
(helm :url "https://github.com/emacs-helm/helm.git" :fetcher git)
(helm :repo "emacs-helm/helm" :fetcher github)

View file

@ -1,3 +1,3 @@
(helm-projectile :url "https://github.com/bbatsov/projectile.git" :fetcher git :files
(helm-projectile :repo "bbatsov/projectile" :fetcher github :files
("helm-projectile.el"))

View file

@ -1 +1 @@
(hippie-expand-slime :url "https://github.com/purcell/hippie-expand-slime.git" :fetcher git)
(hippie-expand-slime :repo "purcell/hippie-expand-slime" :fetcher github)

View file

@ -1,2 +1,2 @@
(hl-sentence :url "https://github.com/milkypostman/hl-sentence.git" :fetcher git)
(hl-sentence :repo "milkypostman/hl-sentence" :fetcher github)

View file

@ -1,2 +1,2 @@
(html-script-src :url "https://github.com/rejeep/html-script-src.git" :fetcher git)
(html-script-src :repo "rejeep/html-script-src" :fetcher github)

View file

@ -1 +1 @@
(ibuffer-vc :url "https://github.com/purcell/ibuffer-vc.git" :fetcher git)
(ibuffer-vc :repo "purcell/ibuffer-vc" :fetcher github)

View file

@ -1,2 +1,2 @@
(idle-highlight-mode :url "https://github.com/nonsequitur/idle-highlight-mode.git" :fetcher git)
(idle-highlight-mode :repo "nonsequitur/idle-highlight-mode" :fetcher github)

View file

@ -1,2 +1,2 @@
(ido-ubiquitous :url "https://github.com/DarwinAwardWinner/ido-ubiquitous.git" :fetcher git)
(ido-ubiquitous :repo "DarwinAwardWinner/ido-ubiquitous" :fetcher github)

View file

@ -1,2 +1,2 @@
(inf-ruby :url "https://github.com/nonsequitur/inf-ruby.git" :fetcher git)
(inf-ruby :repo "nonsequitur/inf-ruby" :fetcher github)

View file

@ -1,3 +1,3 @@
(inflections :url "https://github.com/milkypostman/jump.el.git" :fetcher git :files
(inflections :repo "milkypostman/jump.el" :fetcher github :files
("inflections.el"))

View file

@ -1,2 +1,2 @@
(ir_black-theme :url "git://gist.github.com/2029034.git" :fetcher git)
(ir_black-theme :repo "2029034" :fetcher github)

View file

@ -1,2 +1,2 @@
(jaunte :url "https://github.com/kawaguchi/jaunte.el.git" :fetcher git)
(jaunte :repo "kawaguchi/jaunte.el" :fetcher github)

View file

@ -1,2 +1,2 @@
(js2-mode :url "https://github.com/mooz/js2-mode.git" :fetcher git)
(js2-mode :repo "mooz/js2-mode" :fetcher github)

View file

@ -1,2 +1,2 @@
(js3-mode :url "https://github.com/thomblake/js3-mode.git" :fetcher git)
(js3-mode :repo "thomblake/js3-mode" :fetcher github)

View file

@ -1,2 +1,2 @@
(jump :url "https://github.com/milkypostman/jump.el.git" :fetcher git)
(jump :repo "milkypostman/jump.el" :fetcher github)

View file

@ -1 +1 @@
(less-css-mode :url "https://github.com/purcell/less-css-mode.git" :fetcher git)
(less-css-mode :repo "purcell/less-css-mode" :fetcher github)

View file

@ -1 +1 @@
(logito :url "https://github.com/sigma/logito.git" :fetcher git)
(logito :repo "sigma/logito" :fetcher github)

View file

@ -1,3 +1,3 @@
(lua-mode
:url "git://github.com/immerrr/lua-mode.git"
:fetcher git)
:repo "immerrr/lua-mode"
:fetcher github)

View file

@ -1,2 +1,2 @@
(magit :url "https://github.com/magit/magit.git" :fetcher git)
(magit :repo "magit/magit" :fetcher github)

View file

@ -1,2 +1,2 @@
(magithub :url "https://github.com/nex3/magithub.git" :fetcher git)
(magithub :repo "nex3/magithub" :fetcher github)

View file

@ -1,2 +1,2 @@
(markdown-mode :url "https://github.com/milkypostman/markdown-mode.git" :fetcher git)
(markdown-mode :repo "milkypostman/markdown-mode" :fetcher github)

View file

@ -1,3 +1,3 @@
(markdown-mode+ :url "https://github.com/milkypostman/markdown-mode-plus.git" :fetcher git :files
(markdown-mode+ :repo "milkypostman/markdown-mode-plus" :fetcher github :files
("markdown-mode+.el" "HTML as Markdown in Emacs.applescript"))

View file

@ -1,3 +1,3 @@
(melpa :url "https://github.com/milkypostman/melpa.git" :fetcher git :files
(melpa :repo "milkypostman/melpa" :fetcher github :files
("melpa.el"))

View file

@ -1,2 +1,2 @@
(mmm-mode :url "https://github.com/purcell/mmm-mode.git" :fetcher git)
(mmm-mode :repo "purcell/mmm-mode" :fetcher github)

View file

@ -1,2 +1,2 @@
(molokai-theme :url "git://gist.github.com/2029061.git" :fetcher git)
(molokai-theme :repo "2029061" :fetcher github)

View file

@ -1,2 +1,2 @@
(multi-web-mode :url "https://github.com/fgallina/multi-web-mode.git" :fetcher git)
(multi-web-mode :repo "fgallina/multi-web-mode" :fetcher github)

View file

@ -1,3 +1,3 @@
(org-toodledo :url "https://github.com/christopherjwhite/org-toodledo.git" :fetcher git :files
(org-toodledo :repo "christopherjwhite/org-toodledo" :fetcher github :files
("http-post-simple.el" "org-toodledo.el" "w3mexcerpt.el"))

View file

@ -1,2 +1,2 @@
(package-spec :url "https://github.com/rejeep/package-spec.git" :fetcher git)
(package-spec :repo "rejeep/package-spec" :fetcher github)

View file

@ -1,3 +1,3 @@
(parenface
:url "https://github.com/emacsmirror/parenface.git"
:fetcher git)
:repo "emacsmirror/parenface"
:fetcher github)

View file

@ -1,2 +1,2 @@
(pastels-on-dark-theme :url "git://gist.github.com/1974259.git" :fetcher git)
(pastels-on-dark-theme :repo "1974259" :fetcher github)

View file

@ -1 +1 @@
(pcache :url "https://github.com/sigma/pcache.git" :fetcher git)
(pcache :repo "sigma/pcache" :fetcher github)

View file

@ -1,3 +1,3 @@
(pkgbuild-mode :url "https://github.com/juergenhoetzel/pkgbuild-mode.git" :fetcher git :files
(pkgbuild-mode :repo "juergenhoetzel/pkgbuild-mode" :fetcher github :files
("pkgbuild-mode.el"))

View file

@ -1,3 +1,3 @@
(popup :url "https://github.com/m2ym/popup-el.git" :fetcher git :files
(popup :repo "m2ym/popup-el" :fetcher github :files
("popup.el"))

View file

@ -1,2 +1,2 @@
(pretty-mode :url "https://github.com/emacsmirror/pretty-mode.git" :fetcher git)
(pretty-mode :repo "emacsmirror/pretty-mode" :fetcher github)

View file

@ -1,3 +1,3 @@
(projectile :url "https://github.com/bbatsov/projectile.git" :fetcher git :files
(projectile :repo "bbatsov/projectile" :fetcher github :files
("projectile.el"))

View file

@ -1,2 +1,2 @@
(python :url "https://github.com/fgallina/python.el.git" :fetcher git)
(python :repo "fgallina/python.el" :fetcher github)

View file

@ -1,2 +1,2 @@
(rinari :url "https://github.com/eschulte/rinari.git" :fetcher git)
(rinari :repo "eschulte/rinari" :fetcher github)

View file

@ -1,2 +1,2 @@
(rspec-mode :url "https://github.com/pezra/rspec-mode" :fetcher git)
(rspec-mode :url "https://github.com/pezra/rspec-mode" :fetcher github)

View file

@ -1,3 +1,3 @@
(ruby-compilation :url "https://github.com/eschulte/rinari.git" :fetcher git :files
(ruby-compilation :repo "eschulte/rinari" :fetcher github :files
("util/ruby-compilation.el"))

View file

@ -1,2 +1,2 @@
(ruby-end :url "https://github.com/rejeep/ruby-end.git" :fetcher git)
(ruby-end :repo "rejeep/ruby-end" :fetcher github)

View file

@ -1,3 +1,3 @@
(ruby-interpolation
:url "git://github.com/leoc/ruby-interpolation.el.git"
:fetcher git)
:repo "leoc/ruby-interpolation.el"
:fetcher github)

View file

@ -1,2 +1,2 @@
(rvm :url "https://github.com/senny/rvm.el.git" :fetcher git)
(rvm :repo "senny/rvm.el" :fetcher github)

View file

@ -1,2 +1,2 @@
(sass-mode :url "https://github.com/nex3/sass-mode.git" :fetcher git)
(sass-mode :repo "nex3/sass-mode" :fetcher github)

View file

@ -1,2 +1,2 @@
(scss-mode :url "https://github.com/antonj/scss-mode.git" :fetcher git)
(scss-mode :repo "antonj/scss-mode" :fetcher github)

View file

@ -1,3 +1,3 @@
(slime :url "https://github.com/nablaone/slime.git" :fetcher git :files
(slime :repo "nablaone/slime" :fetcher github :files
("slime.el"))

View file

@ -1,3 +1,3 @@
(slime-ritz :url "https://github.com/pallet/ritz.git" :fetcher git :files
(slime-ritz :repo "pallet/ritz" :fetcher github :files
("src/main/elisp/slime-ritz.el"))

View file

@ -1,2 +1,2 @@
(smart-tab :url "https://github.com/genehack/smart-tab.git" :fetcher git)
(smart-tab :repo "genehack/smart-tab" :fetcher github)

View file

@ -1,2 +1,2 @@
(smex :url "https://github.com/nonsequitur/smex.git" :fetcher git)
(smex :repo "nonsequitur/smex" :fetcher github)

View file

@ -1,2 +1,2 @@
(solarized-theme :url "https://github.com/bbatsov/solarized-emacs.git" :fetcher git)
(solarized-theme :repo "bbatsov/solarized-emacs" :fetcher github)

View file

@ -1,2 +1,2 @@
(starter-kit :url "https://github.com/technomancy/emacs-starter-kit.git" :fetcher git)
(starter-kit :repo "technomancy/emacs-starter-kit" :fetcher github)

View file

@ -1,3 +1,3 @@
(starter-kit-bindings :url "https://github.com/technomancy/emacs-starter-kit.git" :fetcher git :files
(starter-kit-bindings :repo "technomancy/emacs-starter-kit" :fetcher github :files
("modules/starter-kit-bindings.el"))

View file

@ -1,3 +1,3 @@
(starter-kit-eshell :url "https://github.com/technomancy/emacs-starter-kit.git" :fetcher git :files
(starter-kit-eshell :repo "technomancy/emacs-starter-kit" :fetcher github :files
("modules/starter-kit-eshell.el"))

View file

@ -1,3 +1,3 @@
(starter-kit-js :url "https://github.com/technomancy/emacs-starter-kit.git" :fetcher git :files
(starter-kit-js :repo "technomancy/emacs-starter-kit" :fetcher github :files
("modules/starter-kit-js.el"))

View file

@ -1,3 +1,3 @@
(starter-kit-lisp :url "https://github.com/technomancy/emacs-starter-kit.git" :fetcher git :files
(starter-kit-lisp :repo "technomancy/emacs-starter-kit" :fetcher github :files
("modules/starter-kit-lisp.el"))

View file

@ -1,3 +1,3 @@
(starter-kit-perl :url "https://github.com/technomancy/emacs-starter-kit.git" :fetcher git :files
(starter-kit-perl :repo "technomancy/emacs-starter-kit" :fetcher github :files
("modules/starter-kit-perl.el"))

Some files were not shown because too many files have changed in this diff Show more