progfolio / elpaca

An elisp package manager
GNU General Public License v3.0
650 stars 33 forks source link

[Support]: git stuck on cloning #377

Open LionyxML opened 3 days ago

LionyxML commented 3 days ago

Confirmation

Elpaca Version

Elpaca 5b5b319 grafted, HEAD -> master, origin/master, origin/HEAD installer: 0.8 emacs-version: GNU Emacs 30.0.92 (build 2, aarch64-apple-darwin24.0.0, NS appkit-2566.00 Version 15.0.1 (Build 24A348)) of 2024-10-31 git --version: git version 2.39.5 (Apple Git-154)

Operating System

macOS Darwin MacBook-Pro.local 24.0.0 Darwin Kernel Version 24.0.0: Tue Sep 24 23:36:26 PDT 2024; root:xnu-11215.1.12~1/RELEASE_ARM64_T8103 arm64

Description

I have a huge config using package.el and use-package.

I installed Elpaca following the the manual and activated the use-package macro expansion thing.

Problem is, git is stuck on cloning.

I have a huge buffer like:

 Package Status Info Time ▼ 
evil                           cloning              $git clone https://github.com/emacs-evil/evil.git /Users/rmj/.emacs.d/elpaca/repos/evil/ 00.239296
evil-collection                cloning              $git clone https://github.com/emacs-evil/evil-collection.git /Users/rmj/.emacs.d/elpaca/repos/evil-collection/ 00.243560
evil-surround                  cloning              $git clone https://github.com/emacs-evil/evil-surround.git /Users/rmj/.emacs.d/elpaca/repos/evil-surround/ 00.245877
evil-matchit                   cloning              $git clone https://github.com/redguardtoo/evil-matchit.git /Users/rmj/.emacs.d/elpaca/repos/evil-matchit/ 00.248403
...

the log inside each line ends with:

log:
  [2024-11-02 10:58:24] Package queued
  [2024-11-02 10:58:24] Continued by: elpaca--process
  [2024-11-02 10:58:24] Cloning
  [2024-11-02 10:58:24] :remotes incompatible with treeless, blobless clones; using :depth nil
  [2024-11-02 10:58:24] $git clone https://github.com/emacs-evil/evil.git /Users/my_user/.emacs.d/elpaca/repos/evil/

They're all the same.

Macos does not pop anything related to permissions.

How can I further debug it? Also, is there any way to force Elpaca using another install from git?

Thanks!

LionyxML commented 3 days ago

Adding, partially my fault I guess, since I haven't set the :depth and just saw nil is the worst option...

I'd like to maintain my use-package entries intact, like:

(use-package package-lint
  :ensure t
  :defer t)

Can I make Elpaca use another :depth as default for all entries?

progfolio commented 21 hours ago

Confirmation

  • [X] I have checked the documentation (README, Wiki, docstrings, etc)
  • [ ] I am checking these without reading them.
  • [X] I have searched previous issues to see if my question is a duplicate.

Elpaca Version

Elpaca 5b5b319 grafted, HEAD -> master, origin/master, origin/HEAD installer: 0.8 emacs-version: GNU Emacs 30.0.92 (build 2, aarch64-apple-darwin24.0.0, NS appkit-2566.00 Version 15.0.1 (Build 24A348)) of 2024-10-31 git --version: git version 2.39.5 (Apple Git-154)

Operating System

macOS Darwin MacBook-Pro.local 24.0.0 Darwin Kernel Version 24.0.0: Tue Sep 24 23:36:26 PDT 2024; root:xnu-11215.1.12~1/RELEASE_ARM64_T8103 arm64

Description

I have a huge config using package.el and use-package.

I installed Elpaca following the the manual and activated the use-package macro expansion thing.

Problem is, git is stuck on cloning.

[each log] ends with:

log:
  [2024-11-02 10:58:24] Package queued
  [2024-11-02 10:58:24] Continued by: elpaca--process
  [2024-11-02 10:58:24] Cloning
  [2024-11-02 10:58:24] :remotes incompatible with treeless, blobless clones; using :depth nil
  [2024-11-02 10:58:24] $git clone https://github.com/emacs-evil/evil.git /Users/my_user/.emacs.d/elpaca/repos/evil/

How can I further debug it?

Do the commands work from the shell? I would try running them without emacs involved first to rule out any networking and/or git configuration issues.

$ git clone https://github.com/emacs-evil/evil.git /Users/my_user/.emacs.d/elpaca/repos/evil/

If they work from the terminal, I would then try running them via elisp without Elpaca involved. e.g.

(with-temp-buffer
  (call-process "git" nil t t  "--version")
  (buffer-string))

(with-temp-buffer
  (call-process "git" nil t t  "clone" "https://github.com/emacs-evil/evil.git")
  (buffer-string))

is there any way to force Elpaca using another install from git?

I'm not sure what you are asking here. Elpaca uses whatever version of git is on PATH for the Emacs process. I know there can be issues with that on MacOS. The following package exists to remedy that: https://github.com/purcell/exec-path-from-shell