Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

pyenv-mode and pyenv-mode-auto from melpa no longer avaialble #2762

Open
kidmose opened this issue May 13, 2020 · 5 comments
Open

pyenv-mode and pyenv-mode-auto from melpa no longer avaialble #2762

kidmose opened this issue May 13, 2020 · 5 comments

Comments

@kidmose
Copy link

kidmose commented May 13, 2020

I believe I used to haveel-get install pyenv-mode and pyenv-mode-auto with this part if my init.el.
However, after cleaning out ~/.emacs.d and starting up emacs anew, expecting my init.el to use el-get to install everything, I get this error (emacs --debug-init):

Debugger entered--Lisp error: (error "El-get can not find a recipe for package \"pyenv-mode\"")
  signal(error ("El-get can not find a recipe for package \"pyenv-mode\""))
  error("El-get can not find a recipe for package \"%s\"" "pyenv-mode")
  el-get-read-recipe("pyenv-mode")
  el-get-package-def("pyenv-mode")
  el-get-dependencies-graph(pyenv-mode)
  mapcar(el-get-dependencies-graph (visual-fill-column auctex bash-completion ein magit magit-gitflow magit-popup markdown-mode openwith restclient flyspell python-mode flycheck pyenv-mode f pyenv-mode-auto))
  el-get-dependencies((visual-fill-column auctex bash-completion ein magit magit-gitflow magit-popup markdown-mode openwith restclient flyspell python-mode flycheck pyenv-mode f pyenv-mode-auto))
  el-get-init-and-install((visual-fill-column auctex bash-completion ein el-get magit magit-gitflow magit-popup markdown-mode openwith restclient flyspell python-mode flycheck pyenv-mode f pyenv-mode-auto))
  el-get(sync (visual-fill-column auctex bash-completion ein el-get magit magit-gitflow magit-popup markdown-mode openwith restclient flyspell python-mode flycheck pyenv-mode f pyenv-mode-auto))
  eval-buffer(#<buffer  *load*> nil "/home/egk/.emacs.d/init.el" nil t)  ; Reading at buffer position 1319
  load-with-code-conversion("/home/egk/.emacs.d/init.el" "/home/egk/.emacs.d/init.el" t t)
  load("/home/egk/.emacs.d/init" t t)
  #f(compiled-function () #<bytecode 0x1de679>)()
  command-line()
  normal-top-level()

Comparing my backup (.emacs.d.bak) to the new .emacs.d believe I see where el-get used to get the recipes and they seem to be missing in the new .emacs.d:

egk@egk-ThinkPad-T450s:~/git-reps/dotfiles/.emacs.d$ ll ~/.emacs.d.bak/el-get/el-get/recipes/elpa/*pyenv*
-rw-rw-r-- 1 egk users 212 Sep 24  2019 /home/egk/.emacs.d.bak/el-get/el-get/recipes/elpa/pyenv-mode-auto.rcp
-rw-rw-r-- 1 egk users 164 Sep 24  2019 /home/egk/.emacs.d.bak/el-get/el-get/recipes/elpa/pyenv-mode.rcp
egk@egk-ThinkPad-T450s:~/git-reps/dotfiles/.emacs.d$ ll ~/.emacs.d/el-get/el-get/recipes/elpa
ls: cannot access '/home/egk/.emacs.d/el-get/el-get/recipes/elpa': No such file or directory
egk@egk-ThinkPad-T450s:~/git-reps/dotfiles/.emacs.d$ find . -iname '*pyenv-mode*'
egk@egk-ThinkPad-T450s:~/git-reps/dotfiles/.emacs.d$ 

Can anyone help me understand why those two packages are not available and if/how I can fix that?

@npostavs
Copy link
Collaborator

You can run M-x el-get-elpa-build-local-recipes to generate recipes from ELPA repos.

@kidmose
Copy link
Author

kidmose commented May 13, 2020

You can run M-x el-get-elpa-build-local-recipes to generate recipes from ELPA repos.

That indeed creates the .../recipes/elpa folder, with some of the files that is in my backup, but far from all, and not the two packages i miss :/

egk@egk-ThinkPad-T450s:~/git-reps/dotfiles/nixos$ ll ~/.emacs.d.bak/el-get/el-get/recipes/elpa | wc -l
4975
egk@egk-ThinkPad-T450s:~/git-reps/dotfiles/nixos$ ll ~/.emacs.d/el-get/el-get/recipes/elpa | wc -l
249
egk@egk-ThinkPad-T450s:~/git-reps/dotfiles/nixos$ grep -rl 'melpa'  ~/.emacs.d.bak/el-get/el-get/recipes/elpa | wc -l
4379
egk@egk-ThinkPad-T450s:~/git-reps/dotfiles/nixos$ grep -rl 'melpa'  ~/.emacs.d/el-get/el-get/recipes/elpa | wc -l
0

So 4379 recipes containing "melpa" are in my backup, and none are in the new (accounting for most, but not all, of the difference).

@npostavs
Copy link
Collaborator

I think you might have to update package-archives before running el-get-elpa-build-local-recipes

@kidmose
Copy link
Author

kidmose commented Jun 3, 2020

I had a look at https://www.gnu.org/software/emacs/manual/html_node/elisp/Package-Archives.html and tried to add this;

(require 'package)
(add-to-list 'package-archives
             '("melpa-stable" . "https://stable.melpa.org/packages/") t)

and I was able to el-get-install pyenv-mode, but not pyenv-mode-auto (error: El-get can not find a recipe for package "pyenv-mode-auto". I commented it out of my packages list for now..).

Cleaning out my ~/.emacs.d and trying to have it reinstall everything it fails on first startup, missing pyenv-mode. Doing el-get-elpa-build-local-recipes and starting emacs again it successfully installs, including pyenv-mode.

It seems that I need to trigger (el-get-elpa-build-local-recipes), but it takes a bit of time, so I do not want to wait for it everytime emacs starts.

(Not done trying to fix this, but out of time for today..)

@npostavs
Copy link
Collaborator

npostavs commented Jun 3, 2020

It seems that I need to trigger (el-get-elpa-build-local-recipes), but it takes a bit of time, so I do not want to wait for it everytime emacs starts.

You don't need to do it every time Emacs starts (unless you're deleting ~/.emacs.d/ every time Emacs starts).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants