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

Problem when installing el-get on emacs 29.1 #2912

Closed
renatocan opened this issue Sep 23, 2023 · 11 comments
Closed

Problem when installing el-get on emacs 29.1 #2912

renatocan opened this issue Sep 23, 2023 · 11 comments

Comments

@renatocan
Copy link

Hi everyone,

I'm following the procedure for "The lazy installer" and I'm getting a Debugger error: https://gist.github.com/renatocan/0d8cf809520ab00976b6bb06e865705b

I'm testing on a fresh installed emacs on Archlinux: GNU Emacs 29.1 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.38,

Thanks you for your assistance,

Renato.

@7kilobytes
Copy link

Have the same issue

@Pitometsu
Copy link
Contributor

Pitometsu commented Nov 12, 2023

The same error.
Any updates?

Could that help? #2890 or that #2895 ?

@dimitri FYI

@renatocan
Copy link
Author

Any updates on this issue? I have tried a fresh install again and it seems to be happening the same error...

I tried to fix as suggested in https://github.com/dimitri/el-get/pull/2890/files but it didn't solve either.

I would be glad to help fixing this, appreciate it if someone can guide me how :-)

Thanks!

@Pitometsu
Copy link
Contributor

Pitometsu commented Dec 23, 2023

+++ b/site-lisp/getelget.el
@@ -72,8 +74,14 @@ PKG - accepted package name in hook."
       ;; bootstrap
       (url-retrieve-synchronously
        "https://raw.github.com/dimitri/el-get/master/el-get-install.el")
-    (let (el-get-master-branch
-          el-get-install-skip-emacswiki-recipes)
+    (let ((el-get-install-skip-emacswiki-recipes t)
+         (el-get-install-branch "emacs-29-patch")
+         ;; (el-get-master-branch t)
+         )
+      ;; workaround https://github.com/dimitri/el-get/issues/2912
+      (while (search-forward "https://github.com/dimitri/el-get.git" nil t)
+       (replace-match "https://github.com/nevsan/el-get.git" nil nil))
+      

As a workaround for me helped.


UPD: FIY, this workaround lead to stucking with old recipes this way

@lispstudent
Copy link
Contributor

This is affecting me as well. I rely on el-get since ages, but now I am stuck. I do not want to use other systems, but I can't help fixing it, I have written a plea to the developers.

@okkez
Copy link
Contributor

okkez commented Mar 26, 2024

Have the same issue.

I don't have .status.el and got the error error: (wrong-type-argument listp t).

I created .status.el with followings:

()

And execute (el-get 'sync).
Then generated imcomplete .status.el and got errors.

Debugger entered--Lisp error: (void-variable el-get-bundle-init-count-alist)
  el-get-bundle-clear-init-count("/home/kenji/.emacs.d/el-get/el-get/el-get-core.elc")
  do-after-load-evaluation("/home/kenji/.emacs.d/el-get/el-get/el-get-core.elc")
  require(el-get-core)
  byte-code("\303\304!\210\303\305!\210\303\306!\210\303\307!\210\303\310!\210\303\311!\210\303\312!\210\303\313!\210\303\314!\210\303\315!\210\303\316!\210\303\317!\210\320\10..." [load-file-name el-get-dir bundle require cl-lib el-get-core el-get-custom el-get-methods el-get-recipes el-get-status el-get-build el-get-byte-compile el-get-dependencies el-get-notify el-get-list-packages el-get-autoloading file-name-directory expand-file-name "el-get-bundle" autoload el-get-bundle-el-get el-get-bundle nil macro el-get-bundle!] 6)
  require(el-get)
  (progn (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-elpa-delete-package 'el-get) (dolist (feat feats) (unload-feature feat t)))) (require 'el-get))
  (if (memq 'el-get (bound-and-true-p package-activated-list)) (progn (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-delete-package 'el-get) (dolist (feat feats) (unload-feature feat t)))) (require 'el-get)))
  (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-elpa-delete-package 'el-get) (dolist (feat feats) (unload-feature feat t)))) (require 'el-get))
  eval((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-delete-package 'el-get) (dolist (feat feats) (unload-feature feat t)))) (require 'el-get)) nil)
  el-get-run-package-support((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-delete-package 'el-get) (dolist (feat feats) (unload-feature feat t)))) (require 'el-get)) "post-init" el-get)
  el-get-do-init(el-get)
  el-get-post-install-build(el-get)
  el-get-start-process-list(el-get ((:command-name "byte-compile" :buffer-name "*el-get-build: el-get*" :default-directory "/home/kenji/.emacs.d/el-get/el-get/" :shell t :stdin (:load-path ("." "/home/kenji/.emacs.d/elpa/yasnippet-snippets-20240..." "/home/kenji/.emacs.d/elpa/org-modern-20240316.1109" "/home/kenji/.emacs.d/elpa/poly-erb-20200316.1314" "/home/kenji/.emacs.d/elpa/poly-ruby-20180905.929" "/home/kenji/.emacs.d/elpa/poly-markdown-20230202.1..." "/home/kenji/.emacs.d/elpa/polymode-20230317.1218" "/home/kenji/.emacs.d/elpa/yaml-mode-20240317.1602" "/home/kenji/.emacs.d/elpa/vue-mode-20240101.333" "/home/kenji/.emacs.d/elpa/ssass-mode-20200211.132" "/home/kenji/.emacs.d/elpa/vue-html-mode-20180428.2..." "/home/kenji/.emacs.d/elpa/edit-indirect-20240128.1..." "/home/kenji/.emacs.d/elpa/mmm-mode-20240222.428" "/home/kenji/.emacs.d/elpa/typescript-mode-20230116..." "/home/kenji/.emacs.d/elpa/slim-mode-20170728.1348" "/home/kenji/.emacs.d/elpa/scss-mode-20180123.1708" "/home/kenji/.emacs.d/elpa/svelte-mode-20211016.652" "/home/kenji/.emacs.d/elpa/rustic-20230130.912" "/home/kenji/.emacs.d/elpa/rust-mode-20240313.157" "/home/kenji/.emacs.d/elpa/markdown-mode-20240318.1..." "/home/kenji/.emacs.d/elpa/spinner-1.7.4" "/home/kenji/.emacs.d/elpa/rhtml-mode-20130422.1311" "/home/kenji/.emacs.d/elpa/inf-ruby-20240310.1803" "/home/kenji/.emacs.d/elpa/ruby-end-20230205.115" "/home/kenji/.emacs.d/elpa/json-mode-20240228.1443" "/home/kenji/.emacs.d/elpa/json-snatcher-20200916.1..." "/home/kenji/.emacs.d/elpa/js2-mode-20240310.1755" "/home/kenji/.emacs.d/elpa/vcl-mode-1.1" "/home/kenji/.emacs.d/elpa/lua-mode-20231023.947" "/home/kenji/.emacs.d/elpa/nginx-mode-20170612.437" "/home/kenji/.emacs.d/elpa/terraform-mode-20240321...." "/home/kenji/.emacs.d/elpa/hcl-mode-20240220.1534" "/home/kenji/.emacs.d/elpa/haml-mode-20230608.1833" "/home/kenji/.emacs.d/elpa/go-mode-20230823.2304" "/home/kenji/.emacs.d/elpa/dockerfile-mode-20240324..." "/home/kenji/.emacs.d/elpa/magit-delta-20220125.50" "/home/kenji/.emacs.d/elpa/magit-20240320.2336" "/home/kenji/.emacs.d/elpa/git-commit-20240320.2311" "/home/kenji/.emacs.d/elpa/magit-section-20240311.1..." "/home/kenji/.emacs.d/elpa/dash-20240103.1301" "/home/kenji/.emacs.d/elpa/transient-20240321.2209" "/home/kenji/.emacs.d/elpa/with-editor-20240101.222..." "/home/kenji/.emacs.d/elpa/xterm-color-20230321.3" "/home/kenji/.emacs.d/elpa/atomic-chrome-20230304.1..." "/home/kenji/.emacs.d/elpa/websocket-20230809.305" "/home/kenji/.emacs.d/elpa/editorconfig-20240318.20..." "/home/kenji/.emacs.d/elpa/wgrep-20230203.1214" "/home/kenji/.emacs.d/elpa/amx-20230413.1210" "/home/kenji/.emacs.d/elpa/consult-ghq-20231111.130..." "/home/kenji/.emacs.d/elpa/affe-20240102.331" ...) :compile-files ("/home/kenji/.emacs.d/el-get/el-get/methods/" "el-get.el" "el-get-status.el" "el-get-recipes.el" "el-get-notify.el" "el-get-methods.el" "el-get-list-packages.el" "el-get-install.el" "el-get-dependencies.el" "el-get-custom.el" "el-get-core.el" "el-get-check.el" "el-get-byte-compile.el" "el-get-bundle.el" "el-get-build.el" "el-get-autoloading.el") :clean-directory "/home/kenji/.emacs.d/el-get/el-get/") :sync sync :program "/usr/bin/emacs" :args ("-Q" "-batch" "-f" "toggle-debug-on-error" "-l" "/home/kenji/.emacs.d/elpa/el-get-20230618.1453/el-..." "-f" "el-get-byte-compile-from-stdin") :message "el-get-build el-get: byte-compile ok." :error "el-get could not byte-compile el-get")) el-get-post-install-build)
  (let ((bytecomp-files (when el-get-byte-compile (el-get-assemble-files-for-byte-compilation package)))) (el-get-start-process-list package (list (el-get-byte-compile-process package "*el-get-build: el-get*" "/home/kenji/.emacs.d/el-get/el-get/" sync bytecomp-files)) #'el-get-post-install-build))
  (lambda (package) (let ((bytecomp-files (when el-get-byte-compile (el-get-assemble-files-for-byte-compilation package)))) (el-get-start-process-list package (list (el-get-byte-compile-process package "*el-get-build: el-get*" "/home/kenji/.emacs.d/el-get/el-get/" sync bytecomp-files)) #'el-get-post-install-build)))(el-get)
  funcall((lambda (package) (let ((bytecomp-files (when el-get-byte-compile (el-get-assemble-files-for-byte-compilation package)))) (el-get-start-process-list package (list (el-get-byte-compile-process package "*el-get-build: el-get*" "/home/kenji/.emacs.d/el-get/el-get/" sync bytecomp-files)) #'el-get-post-install-build))) el-get)
  (lambda (package) (el-get-install-or-init-info package 'build) (funcall (lambda (package) (let ((bytecomp-files (when el-get-byte-compile ...))) (el-get-start-process-list package (list (el-get-byte-compile-process package "*el-get-build: el-get*" "/home/kenji/.emacs.d/el-get/el-get/" sync bytecomp-files)) #'el-get-post-install-build))) package))(el-get)
  el-get-start-process-list(el-get nil (lambda (package) (el-get-install-or-init-info package 'build) (funcall (lambda (package) (let ((bytecomp-files (when el-get-byte-compile ...))) (el-get-start-process-list package (list (el-get-byte-compile-process package "*el-get-build: el-get*" "/home/kenji/.emacs.d/el-get/el-get/" sync bytecomp-files)) #'el-get-post-install-build))) package)))
  el-get-build(el-get nil nil sync el-get-post-install-build)
  el-get-post-install(el-get)
  el-get-start-process-list(el-get (nil (:command-name "*git submodule update*" :buffer-name "*git clone el-get*" :default-directory "/home/kenji/.emacs.d/el-get/el-get/" :program "/usr/bin/git" :args ("--no-pager" "submodule" "update" "--init" "--recursive") :message "git submodule update ok" :error "Could not update git submodules")) el-get-post-install)
  el-get-start-process-list(el-get ((:command-name "*git clone el-get*" :buffer-name "*git clone el-get*" :default-directory "/home/kenji/.emacs.d/el-get" :program "/usr/bin/git" :args ("--no-pager" "clone" "-b" "master" "https://github.com/dimitri/el-get.git" "el-get") :message "Package el-get installed." :error "Could not install package el-get.") nil (:command-name "*git submodule update*" :buffer-name "*git clone el-get*" :default-directory "/home/kenji/.emacs.d/el-get/el-get/" :program "/usr/bin/git" :args ("--no-pager" "submodule" "update" "--init" "--recursive") :message "git submodule update ok" :error "Could not update git submodules")) el-get-post-install)
  el-get-git-clone(el-get "https://github.com/dimitri/el-get.git" el-get-post-install)
  el-get-github-clone(el-get nil el-get-post-install)
  el-get-do-install(el-get)
  el-get-init-and-install(nil)
  el-get(sync)
  elisp--eval-last-sexp(nil)
  eval-last-sexp(nil)
  funcall-interactively(eval-last-sexp nil)
  command-execute(eval-last-sexp)

.status.el is below.

((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)))))

@saffroy
Copy link
Contributor

saffroy commented Aug 25, 2024

Last year I also faced problems with el-get on Emacs 29 (I think it was 29.1), today I found that a fresh check-out of el-get worked well with Emacs 29.3, no fix or workaround needed. So you people may want to give it a try.

@lispstudent
Copy link
Contributor

Thank you very much for letting us know, it works again on my side as well.

One wonders, how was it fixed? I can't see any commit relating to this issue?

PS: I like el-get very much, still my favourite package manager. But it does not seem an easy task to have feedback from maintainers. To non-skilled users like me, this does not give much confidence.

@saffroy
Copy link
Contributor

saffroy commented Aug 26, 2024

One wonders, how was it fixed? I can't see any commit relating to this issue?

The only fix I could find in el-get logs is #2890, I am not sure it explains everything. Maybe there were also changes in Emacs between 29.1 and 29.3, or in the distribution patches and scripts.

@renatocan
Copy link
Author

Since it was confirmed to work with emacs 29.3, I'll close this issue.

I have been using el-get for over 10 years and I am very grateful to the contributors. However, since I ran into this issue, I switched to straight (https://github.com/radian-software/straight.el) and it has proven to be a great alternative.

Thank you!

@lispstudent
Copy link
Contributor

@saffroy Thank you for pointing to that MR.
@renatocan Thanks. I hear elpaca is also worth a try, perhaps closer to el-get spirit. Personally, for now, I will stick to el-get. Let us see where it will lead us.

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

6 participants