<p dir="auto">When building a native addon for Electron on Windows, node-gyp downloads the <code class="notranslate">.lib</code> files for linking from <code class="notranslate">https://atom.io/download/electron/&lt;version number&gt;/win-x86/node.lib</code>. This link is now accessible for version numbers 4.0.0 and above, and 404 for lower version numbers. I assume that is unintentional because I have not seen any announcement about those versions no longer being supported.</p>
<h3 dir="auto">Preflight Checklist</h3>
<ul class="contains-task-list">
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> I have read the <a href="https://github.com/electron/electron/blob/master/CONTRIBUTING.md">Contributing Guidelines</a> for this project.</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> I agree to follow the <a href="https://github.com/electron/electron/blob/master/CODE_OF_CONDUCT.md">Code of Conduct</a> that this project adheres to.</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> I have searched the <a href="https://www.github.com/electron/electron/issues">issue tracker</a> for a feature request that matches the one I want to file, without success.</li>
</ul>
<h3 dir="auto">Problem Description</h3>
<p dir="auto">Electron's docs indicate that it is not possible to run an electron app without a display server running (see <a href="https://www.electronjs.org/docs/tutorial/testing-on-headless-ci" rel="nofollow">https://www.electronjs.org/docs/tutorial/testing-on-headless-ci</a> ).</p>
<p dir="auto">However, chromium no longer needs a display server to run in headless mode.</p>
<p dir="auto">I believe it should be possible for electron to be run in the same way as chromium and no longer require that the linux system have xvfb installed or have a display server.</p>
<h3 dir="auto">Proposed Solution</h3>
<p dir="auto">Ideally, this ends up being a documentation issue only and electron can already be run without a display server but the docs need to be updated to reflect that.</p>
<p dir="auto">Electron might need a different set of startup flags to run in a headless mode. Chromium needs to be run using its own <code class="notranslate">--headless</code> flag to enable this behavior. Maybe that flag could be used for electron as well.</p>
<h3 dir="auto">Alternatives Considered</h3>
<p dir="auto">Electron already interacts with the environment variable <code class="notranslate">ELECTRON_RUN_AS_NODE</code> to spawn electron as a node process. Maybe that is a better escape hatch for the display server requirement.</p>
<h3 dir="auto">Additional Information</h3>
<p dir="auto">I'm filling this bug since I wish to be able run the cypress test runner without having to use <code class="notranslate">xvfb</code>. I've filed an associated issue on their repo with a bit more context for that use case <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="891226699" data-permission-text="Title is private" data-url="https://github.com/cypress-io/cypress/issues/16505" data-hovercard-type="issue" data-hovercard-url="/cypress-io/cypress/issues/16505/hovercard" href="https://github.com/cypress-io/cypress/issues/16505">cypress-io/cypress#16505</a></p>