doomemacs / doomemacs/core

Install fails during stage "building straight" with error "Too many open files" on Windows with MySys2 shell

Open
#7,870 1 comment 0 reactions 0 assignees View on GitHub
is:bug needs-triage
Dominant language
Emacs Lisp
Stars
22.7k
Forks
3.1k
Avg merge
10h 46m
Merged PRs (30d)
4

Description

### I confirm that...

- [X] I have searched the [issue tracker](https://github.com/doomemacs/doomemacs/issues), [documentation](https://docs.doomemacs.org), [FAQ](https://docs.doomemacs.org/-/faq), [Discourse](https://discourse.doomemacs.org), and [Google](https://google.com), in case this issue has already been reported/resolved.

- [X] I have read "[How to Debug Issues](https://doomemacs.org/d/how2debug)", and will use it to provide as much information about this issue as possible.

- [X] The issue can be reproduced on the **latest** available commit of Doom.

- [X] The issue can be reproduced on a stable release of Emacs, such as 27, 28, or 29. *(Unstable versions end in .50, .60, or .9x)*

### Expected behavior

When I run the doom script with the `install` flag, it should successfully install.

### Current behavior

Following the instructions on the Doom main page, I am unable to download and install Doom.
When I run `doom install`, the script fails at the line "Building straight":

> Building straight...
x There was an unexpected runtime error
Message: File error
Details: ("Creating pipe" "Too many open files")
Backtrace:
(make-process :name "Compiling: c:/tools/msys64/mingw64/share/emacs/29.1/lisp/obsolete/pgg-gpg.el" :buffer # :command ("c:/tools/msys6...
(#)
(apply # nil)
(let ((temporary-file-directory (expand-file-name "comp/" doom-profile-cache-dir))) (make-directory temporary-file-directory t) (apply fn args))
(comp-run-async-workers@dont-litter-tmpdir #)
(apply comp-run-async-workers@dont-litter-tmpdir # nil)
(comp-run-async-workers)
(#[514 "\304\305\303\242\"\210\306☻!\210\3071▬\310\301!0\210\202↨\210\311\302!\300\2033\312♥!\313U\2033\314☺!\2033\315☺\300\316=\"\210\210\317 \207" [nil...
(sleep-for 0.1)
(let ((inhibit-message t)) (if (> timer timeout) (let* ((prc nil) (--cl-var-- t) (--cl-var-- t) --cl-var--) (catch '--cl-b" pending))) (progn (setq previous pen...file-n...
(while (progn (setq pending (+ (length comp-files-queue) (comp-async-runnings))) (not (= 0 pending))) (if (/= previous pending) (progn (doom-print (doom-print--format (d...
Creating process pipe: Too many open files

This occurs with installing via MySys2 and with Powershell. For MySys2 I installed Emacs using the Pacman: ` pacman -S mingw-w64-x86_64-emacs`. For Powershell, I installed Emacs using `choco install emacs`.

The docs recommend using WSL, unfortunately, that is not an option for me since my workplace disables WSL on our Windows machines.

### Steps to reproduce

1. Install [MySys2](https://www.msys2.org/)
2. Open a MySys2 shell and install Emacs using `pacman -S mingw-w64-x86_64-emacs`
3. Clone Doom emacs to `C:\[USERNAME]\.config\emacs`
4. Run `C:\[USERNAME]\.config\emacs\bin\doom install`

Note the issue reproduces even with the default config generated by the install script. There is no need to create a custom config to recreate the issue.

### System Information

https://pastebin.com/eZc3KAtG

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.