dimitri / el-get

Manage the external elisp bits and pieces upon which you depend!
http://tapoueh.org/emacs/el-get.html
1.64k stars 456 forks source link

Error happened by using el-get-bundle. #2501

Closed moyotar closed 7 years ago

moyotar commented 7 years ago

At first , I used:

(el-get-bundle melpa:ace-mc)

in my init file.

Then I got error that unknown type mepla. Then I removed it from my init file and used el-get-elpa-build-local-recipes. I restarted emacs with --debug-init and got this.

Debugger entered--Lisp error: (error "El-get can not find a recipe for package \"\"")
  signal(error ("El-get can not find a recipe for package \"\""))
  error("El-get can not find a recipe for package \"%s\"" "")
  (if filename (el-get-read-from-file filename) (error "El-get can not find a recipe for package \"%s\"" package))
  (let ((filename (el-get-recipe-filename package))) (if filename (el-get-read-from-file filename) (error "El-get can not find a recipe for package \"%s\"" package)))
  el-get-read-recipe("")
  (cond ((or (null source) (symbolp source)) (el-get-read-recipe package)) ((null (plist-get source :type)) (el-get-recipe-merge (el-get-read-recipe package) source)) (t source))
  (let ((source (let* ((--cl-var-- el-get-sources) (src nil) (--cl-var-- t) --cl-var--) (while (and (consp --cl-var--) (progn (setq src ...) (if ... ... t))) (setq --cl-var-- (cdr --cl-var--))) --cl-var--))) (cond ((or (null source) (symbolp source)) (el-get-read-recipe package)) ((null (plist-get source :type)) (el-get-recipe-merge (el-get-read-recipe package) source)) (t source)))
  el-get-package-def("")
  (let* ((source (el-get-package-def (symbol-name package))) (method (el-get-package-method source)) (pdeps (el-get-as-list (plist-get source :depends))) (alldeps (if (and (not (eq package (quote package))) (eq method (quote elpa))) (cons (quote package) pdeps) pdeps))) (append (list (append (list package) alldeps)) (let* ((--cl-var-- pdeps) (p nil) (--cl-var-- nil)) (while (consp --cl-var--) (setq p (car --cl-var--)) (setq --cl-var-- (nconc (reverse (el-get-dependencies-graph p)) --cl-var--)) (setq --cl-var-- (cdr --cl-var--))) (nreverse --cl-var--))))
  el-get-dependencies-graph(##)
  mapcar(el-get-dependencies-graph (##))
  (apply (quote append) (mapcar (quote el-get-dependencies-graph) (el-get-as-list packages)))
  (topological-sort (apply (quote append) (mapcar (quote el-get-dependencies-graph) (el-get-as-list packages))))
  (let* ((--cl-var-- (topological-sort (apply (quote append) (mapcar (quote el-get-dependencies-graph) (el-get-as-list packages))))) (plist (nth 0 --cl-var--)) (all-sorted-p (nth 1 --cl-var--)) (non-sorted (nth 2 --cl-var--))) (if all-sorted-p plist (error "Couldn't sort package dependencies for \"%s\"" packages)))
  el-get-dependencies((##))
  (let* ((p-s-alist (el-get-read-status-file)) (required (el-get-filter-package-alist-with-status p-s-alist "required")) (installed (el-get-filter-package-alist-with-status p-s-alist "installed")) (to-init (if packages (let* ((--cl-var-- packages) (p nil) (--cl-var-- nil)) (while (consp --cl-var--) (setq p (car --cl-var--)) (if (member ... installed) (progn ...)) (setq --cl-var-- (cdr --cl-var--))) (nreverse --cl-var--)) (mapcar (quote el-get-as-symbol) installed))) (init-deps (el-get-dependencies to-init)) (req-inits (let* ((--cl-var-- init-deps) (p nil) (--cl-var-- nil)) (while (consp --cl-var--) (setq p (car --cl-var--)) (if (member (el-get-as-string p) installed) (progn) (setq --cl-var-- (cons p --cl-var--))) (setq --cl-var-- (cdr --cl-var--))) (nreverse --cl-var--))) (to-install (if packages (let* ((--cl-var-- packages) (p nil) (--cl-var-- nil)) (while (consp --cl-var--) (setq p (car --cl-var--)) (if (member p init-deps) (progn) (setq --cl-var-- ...)) (setq --cl-var-- (cdr --cl-var--))) (nreverse --cl-var--)) (mapcar (quote el-get-as-symbol) required))) (install-deps (el-get-dependencies to-install)) done) (if req-inits (progn (setq install-deps (append req-inits install-deps)) (setq init-deps (set-difference init-deps req-inits)))) (el-get-verbose-message "el-get-init-and-install: install %S" install-deps) (el-get-verbose-message "el-get-init-and-install: init %S" init-deps) (let* ((--cl-var-- install-deps) (p nil) (done nil)) (while (consp --cl-var--) (setq p (car --cl-var--)) (if (condition-case err (progn (el-get-do-install p)) ((debug error) (display-warning (quote el-get) (concat ... ...) :error) nil)) (progn (setq done (nconc done (list p))))) (setq --cl-var-- (cdr --cl-var--))) nil) (let* ((--cl-var-- init-deps) (p nil) (done nil)) (while (consp --cl-var--) (setq p (car --cl-var--)) (if (condition-case err (progn (el-get-do-init p)) ((debug error) (display-warning (quote el-get) (concat ... ...) :error) nil)) (progn (setq done (nconc done (list p))))) (setq --cl-var-- (cdr --cl-var--))) nil) done)
  el-get-init-and-install(nil)
  (prog1 (el-get-init-and-install (mapcar (quote el-get-as-symbol) packages)) (el-get-eval-autoloads))
  (let* ((packages (let* ((--cl-var-- packages) (p nil) (--cl-var-- nil)) (while (consp --cl-var--) (setq p (car --cl-var--)) (if (listp p) (progn (setq --cl-var-- ...)) (setq --cl-var-- (cons p --cl-var--))) (setq --cl-var-- (cdr --cl-var--))) (nreverse --cl-var--))) (el-get-default-process-sync sync)) (if el-get-is-lazy nil (el-get-eval-autoloads)) (prog1 (el-get-init-and-install (mapcar (quote el-get-as-symbol) packages)) (el-get-eval-autoloads)))
  el-get(sync)
  eval-buffer(#<buffer  *load*-427836> nil "d:/Program Files/emacs-config/.emacs.d/my-config-file/el-get-config.el" nil t)  ; Reading at buffer position 357
  load-with-code-conversion("d:/Program Files/emacs-config/.emacs.d/my-config-file/el-get-config.el" "d:/Program Files/emacs-config/.emacs.d/my-config-file/el-get-config.el" nil t)
  require(el-get-config)
  eval-buffer(#<buffer  *load*> nil "d:/Program Files/emacs-config/.emacs.d/init.el" nil t)  ; Reading at buffer position 170
  load-with-code-conversion("d:/Program Files/emacs-config/.emacs.d/init.el" "d:/Program Files/emacs-config/.emacs.d/init.el" t t)
  load("d:/Program Files/emacs-config/.emacs.d/init" t t)
  #[0 "\205\262
moyotar commented 7 years ago

This is my el-get config:

;;; el-get-config.el
(unless (require 'el-get nil 'noerror)
  (require 'package)
  (add-to-list 'package-archives
               '("melpa" . "http://melpa.org/packages/"))
  (package-refresh-contents)
  (package-initialize)
  (package-install 'el-get)
  (require 'el-get))

(add-to-list 'el-get-recipe-path "~/.emacs.d/el-get-user/recipes")

(el-get 'sync)

(provide 'el-get-config)
;;;
moyotar commented 7 years ago

image

This is my recipes. If I don't create a recipe for multiple-cursors. The traceback will be these:

Debugger entered--Lisp error: (error "El-get can not find a recipe for package \"multiple-cursors\"")
  signal(error ("El-get can not find a recipe for package \"multiple-cursors\""))
  error("El-get can not find a recipe for package \"%s\"" "multiple-cursors")
  el-get-read-recipe("multiple-cursors")
  el-get-package-def("multiple-cursors")
  el-get-dependencies-graph(multiple-cursors)
  mapcar(el-get-dependencies-graph (ace-jump-mode ag anaphora cl-lib company-mode dash deferred el-get emacs-ycmd epl expand-region f flycheck google-c-style helm helm-ag helm-gtags helm-projectile let-alist multiple-cursors package pkg-info popup projectile rainbow-delimiters request s seq))
  el-get-dependencies((ace-jump-mode ag anaphora cl-lib company-mode dash deferred el-get emacs-ycmd epl expand-region f flycheck google-c-style helm helm-ag helm-gtags helm-projectile let-alist multiple-cursors package pkg-info popup projectile rainbow-delimiters request s seq))
  el-get-init-and-install(nil)
  el-get(sync)
  eval-buffer(#<buffer  *load*-992048> nil "d:/Program Files/emacs-config/.emacs.d/my-config-file/el-get-config.el" nil t)  ; Reading at buffer position 357
  load-with-code-conversion("d:/Program Files/emacs-config/.emacs.d/my-config-file/el-get-config.el" "d:/Program Files/emacs-config/.emacs.d/my-config-file/el-get-config.el" nil t)
  require(el-get-config)
  eval-buffer(#<buffer  *load*> nil "d:/Program Files/emacs-config/.emacs.d/init.el" nil t)  ; Reading at buffer position 170
  load-with-code-conversion("d:/Program Files/emacs-config/.emacs.d/init.el" "d:/Program Files/emacs-config/.emacs.d/init.el" t t)
  load("d:/Program Files/emacs-config/.emacs.d/init" t t)
  #[0 "\205\262
npostavs commented 7 years ago

At first , I used:

(el-get-bundle melpa:ace-mc)

in my init file.

Then I got error that unknown type mepla.

You should use elpa:ace-mc, melpa is not a type.

moyotar commented 7 years ago

@npostavs How to solve it now?

npostavs commented 7 years ago

Not sure. Can you post the contents of ~/.emacs.d/el-get/.status.el EDIT: does ~/.emacs.d/el-get/el-get/recipes/ contain multiple-cursors.rcp?

moyotar commented 7 years ago
((## status "required" recipe nil)
 (ace-jump-mode status "installed" recipe
      (:name ace-jump-mode :website "https://github.com/winterTTr/ace-jump-mode/wiki" :description "A quick cursor location minor mode for emacs." :type github :pkgname "winterTTr/ace-jump-mode" :prepare
             (eval-after-load "ace-jump-mode"
           '(ace-jump-mode-enable-mark-sync))))
 (ag status "installed" recipe
     (:name ag :description "A simple ag frontend, loosely based on ack-and-half.el." :type github :pkgname "Wilfred/ag.el" :depends
      (dash s)))
 (anaphora status "installed" recipe
     (:name anaphora :description "Anaphoric expressions for Emacs Lisp, providing implicit temporary variables" :type github :website "https://github.com/rolandwalker/anaphora" :pkgname "rolandwalker/anaphora"))
 (cl-lib status "installed" recipe
   (:name cl-lib :builtin "24.3" :type elpa :description "Properly prefixed CL functions and macros" :url "http://elpa.gnu.org/packages/cl-lib.html"))
 (company-mode status "installed" recipe
         (:name company-mode :website "http://company-mode.github.io/" :description "Modular in-buffer completion framework for Emacs" :type github :pkgname "company-mode/company-mode"))
 (dash status "installed" recipe
       (:name dash :description "A modern list api for Emacs. No 'cl required." :type github :pkgname "magnars/dash.el"))
 (deferred status "installed" recipe
   (:name deferred :description "Simple asynchronous functions for emacs lisp." :type github :pkgname "kiwanami/emacs-deferred"))
 (el-get status "installed" recipe
   (:name el-get :website "https://github.com/dimitri/el-get#readme" :description "Manage the external elisp bits and pieces you depend upon." :type github :branch "master" :pkgname "dimitri/el-get" :info "." :compile
      ("el-get.*\\.el$" "methods/")
      :features el-get :post-init
      (when
          (memq 'el-get
            (bound-and-true-p package-activated-list))
        (message "Deleting melpa bootstrap el-get")
        (unless package--initialized
          (package-initialize t))
        (when
            (package-installed-p 'el-get)
          (let
          ((feats
            (delete-dups
             (el-get-package-features
              (el-get-elpa-package-directory 'el-get)))))
            (el-get-elpa-delete-package 'el-get)
            (dolist
            (feat feats)
          (unload-feature feat t))))
        (require 'el-get))))
 (emacs-ycmd status "installed" recipe
       (:name emacs-ycmd :description "emacs bindings to the ycmd completion server." :website "https://github.com/abingham/emacs-ycmd" :type github :depends
          (anaphora request deferred popup)
          :pkgname "abingham/emacs-ycmd"))
 (epl status "installed" recipe
      (:name epl :description "EPL provides a convenient high-level API for various package.el versions, and aims to overcome its most striking idiocies." :type github :pkgname "cask/epl"))
 (expand-region status "installed" recipe
      (:name expand-region :type github :pkgname "magnars/expand-region.el" :description "Expand region increases the selected region by semantic units. Just keep pressing the key until it selects what you want." :website "https://github.com/magnars/expand-region.el#readme"))
 (f status "installed" recipe
    (:name f :website "https://github.com/rejeep/f.el" :description "Modern API for working with files and directories in Emacs" :depends
     (s dash)
     :type github :pkgname "rejeep/f.el"))
 (flycheck status "installed" recipe
     (:name flycheck :type github :pkgname "flycheck/flycheck" :minimum-emacs-version "24.3" :description "On-the-fly syntax checking extension" :depends
        (dash pkg-info let-alist seq)))
 (google-c-style status "installed" recipe
       (:name google-c-style :type http :description "Google's C/C++ style for c-mode." :url "https://raw.githubusercontent.com/google/styleguide/gh-pages/google-c-style.el" :prepare
          (progn
            (autoload 'google-set-c-style "google-c-style" nil t)
            (autoload 'google-make-newline-indent "google-c-style" nil t)
            (eval-after-load 'cc-styles
              '(progn
                 (require 'google-c-style)
                 (c-add-style "Google" google-c-style))))))
 (helm status "installed" recipe
       (:name helm :description "Emacs incremental completion and narrowing framework" :type github :pkgname "emacs-helm/helm" :autoloads "helm-autoloads" :build
        (("make"))
        :build/darwin
        `(("make" ,(format "EMACS_COMMAND=%s" el-get-emacs)))
        :build/windows-nt
        (let
        ((generated-autoload-file
          (expand-file-name "helm-autoloads.el"))
         \

         (backup-inhibited t))
      (update-directory-autoloads default-directory)
      nil)
        :features "helm-config" :post-init
        (helm-mode)))
 (helm-ag status "installed" recipe
    (:name helm-ag :description "The silver search with helm interface." :type github :pkgname "syohex/emacs-helm-ag" :depends
       (helm)))
 (helm-gtags status "installed" recipe
       (:name helm-gtags :description "GNU GLOBAL Helm interface." :type github :pkgname "syohex/emacs-helm-gtags" :depends
          (helm)))
 (helm-projectile status "installed" recipe
        (:name helm-projectile :description "Helm integration for Projectile." :type github :pkgname "bbatsov/helm-projectile" :depends
           (projectile helm dash cl-lib)))
 (let-alist status "installed" recipe
      (:name let-alist :description "Easily let-bind values of an assoc-list by their names." :builtin "25.0.50" :type elpa :url "https://elpa.gnu.org/packages/let-alist.html"))
 (multiple-cursors status "installed" recipe
         (:name multiple-cursors :description "An experiment in adding multiple cursors to emacs" :type github :pkgname "magnars/multiple-cursors.el"))
 (package status "installed" recipe
    (:name package :description "ELPA implementation (\"package.el\") from Emacs 24" :builtin "24" :type http :url "https://repo.or.cz/w/emacs.git/blob_plain/ba08b24186711eaeb3748f3d1f23e2c2d9ed0d09:/lisp/emacs-lisp/package.el" :features package :post-init
       (progn
         (let
             ((old-package-user-dir
           (expand-file-name
            (convert-standard-filename
             (concat
              (file-name-as-directory default-directory)
              "elpa")))))
           (when
           (file-directory-p old-package-user-dir)
             (add-to-list 'package-directory-list old-package-user-dir)))
         (setq package-archives
           (bound-and-true-p package-archives))
         (let
             ((protocol
           (if
               (and
                (fboundp 'gnutls-available-p)
                (gnutls-available-p))
               "https://"
             (lwarn
              '(el-get tls)
              :warning "Your Emacs doesn't support HTTPS (TLS)%s"
              (if
              (eq system-type 'windows-nt)
              ",\n  see https://github.com/dimitri/el-get/wiki/Installation-on-Windows." "."))
             "http://"))
          (archives
           '(("melpa" . "melpa.org/packages/")
             ("gnu" . "elpa.gnu.org/packages/")
             ("marmalade" . "marmalade-repo.org/packages/"))))
           (dolist
           (archive archives)
             (add-to-list 'package-archives
                  (cons
                   (car archive)
                   (concat protocol
                       (cdr archive)))))))))
 (pkg-info status "installed" recipe
     (:name pkg-info :description "Provide information about Emacs packages." :type github :pkgname "lunaryorn/pkg-info.el" :depends
        (dash epl)))
 (popup status "installed" recipe
  (:name popup :website "https://github.com/auto-complete/popup-el" :description "Visual Popup Interface Library for Emacs" :type github :submodule nil :depends cl-lib :pkgname "auto-complete/popup-el"))
 (projectile status "installed" recipe
       (:name projectile :description "Project navigation and management library for Emacs." :type github :pkgname "bbatsov/projectile" :depends pkg-info))
 (rainbow-delimiters status "installed" recipe
           (:name rainbow-delimiters :website "https://github.com/Fanael/rainbow-delimiters#readme" :description "Color nested parentheses, brackets, and braces according to their depth." :type github :pkgname "Fanael/rainbow-delimiters"))
 (request status "installed" recipe
    (:name request :description "Easy HTTP request for Emacs Lisp" :type github :submodule nil :pkgname "abingham/emacs-request" :depends
       (deferred)
       :provide
       (request-deferred)))
 (s status "installed" recipe
    (:name s :description "The long lost Emacs string manipulation library." :type github :pkgname "magnars/s.el"))
 (seq status "installed" recipe
      (:name seq :description "Sequence manipulation library for Emacs" :builtin "25" :type github :pkgname "NicolasPetton/seq.el")))
moyotar commented 7 years ago

@npostavs Thanks! I have solved it by using backup files to replace them.

npostavs commented 7 years ago

Ok, it's good that you've solved your issue.

((## status "required" recipe nil)

I wonder how you got that ## in there. If you can find a reliable way to trigger that please report.