void-linux / void-linux/void-packages

emacs-specific initialization issue only in voidlinux

Open
#51,727 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug needs-testing
Dominant language
Shell
Stars
3.4k
Forks
2.8k
Avg merge
2d 5h
Merged PRs (30d)
299

Description

Is this a new report?

Yes

System Info

│Void 6.1.98_1 x86_64 GenuineIntel notuptodate rrrrmmnFFFFFFFFF

Package(s) Affected

emacs

Does a report exist for this bug with the project's home (upstream) and/or another distro?

No response

Expected behaviour

Emacs since v28 accepts a flag --init-directory=/path/to/config to assign user-emacs-directory from the standard ~/.emacs.d or ~/.emacs or ~/.config/emacs. once emacs --init-dirctory=/path/to/config is run, it should load early-init.el and init.el on its own. This applies in all other distros.

Actual behaviour

In the case of emacs xbps binary package from voidlinux, running emacs --init-directory=/path/to/directory does not load early-init.el and init.el on its own. Instead it searches for an init file and fails with the message load-with-code-conversion: Cannot open load file: No such file or directory, init.

Yet when I compiled emacs from master with ./configure ;; make, the binary produced launches does not search for the init file and launches emacs as it is expected.

Steps to reproduce
  1. Git clone any emacs-config, say scimax (https://github.com/jkitchin/scimax) or emacs-writing studio (https://github.com/pprevos/emacs-writing-studio) or any other emacs-configs of your choice to your selected directory.
  2. Then run emacs --debug-init --init-directory=/path/to/chosen/dir
  3. You get load-with-code-conversion: Cannot open load file: No such file or directory, init. So you have to load early-init.el and init.el manually each time you launch emacs with the command in 2.
  4. Yet when emacs is launched with the same command as in (2) above with the emacs binary compiled from source with ./configure --with-native-compilation=aot --with-rsvg && make && make install, it does not search for the init file and loads both early-init.el and init.el file as it should.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the Void xbps package behavior with emacs --debug-init --init-directory=/path/to/chosen/dir, then compare it with the binary built from Emacs source using the commands in the report. Inspect the Emacs package configuration and packaging behavior to determine why early-init.el and init.el are not loaded. Done means the Void package handles the same init-directory invocation like the source-built binary.

Written by the indexing model from the issue text.

Assessment

Tech stack
emacs
Domain
build-system, operating-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.