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

dir file missing from the Info directory #437

Open
ksqsf opened this issue Feb 22, 2022 · 10 comments
Open

dir file missing from the Info directory #437

ksqsf opened this issue Feb 22, 2022 · 10 comments
Assignees

Comments

@ksqsf
Copy link

ksqsf commented Feb 22, 2022

The following command

brew install emacs-plus@29 --with-native-comp

installs all info files into /usr/local/Cellar/emacs-plus@29/29.0.50/share/info/emacs. However, this directory does not include a dir file, and the info reader will hence be not able to find these files.

A workaround is to manually install these files by

cd /usr/local/Cellar/emacs-plus@29/29.0.50/share/info/emacs
for f in *.info.gz; do install-info $f dir; done

I hope the emacs-plus formula could do that automatically.

@ksqsf
Copy link
Author

ksqsf commented Feb 22, 2022

I checked Emacs's build scripts, and it seems that it should have taken care of this by using install-info. I'm not sure what went wrong.

@augustfengd
Copy link

Just chiming in.

Similar experience too, with brew install emacs-plus@28 --with-native-comp on M1 though:

  cd /opt/homebrew/Cellar/emacs-plus@28/28.0.50/share/info/emacs/
  for f in *.info.gz
         do install-info $f dir
  done

@d12frosted
Copy link
Owner

Hey folks,

I can't address this issue right now cause I got left without my personal laptop. Have not ETA when I can go back home. So I would gladly accept contributions on this one.

@augustfengd
Copy link

I did a bit of debugging and found that the dir file is actually being created correctly by make; make install, but then it's being deleted in the Cleaning phase:

brew install emacs-plus@29 --verbose
# ...
# Cleaning
# rm /opt/homebrew/Cellar/emacs-plus@29/29.0.50/share/info/emacs/dir

Seems like this is intentional on brew's part, just don't fully understand why.

@d12frosted
Copy link
Owner

I also don't understand why they remove them. But it looks like there is a way to skip their cleaning using skip_clean function.

@dabrahams
Copy link

@d12frosted did you ever figure out how to make use of that function from the command line?

@d12frosted
Copy link
Owner

@dabrahams unfortunately no, and I doubt that it's possible to use it from the command line.

@dabrahams
Copy link

dabrahams commented Jun 28, 2022

Here's what I had to do to get my info files found:

cd /opt/homebrew/share/info
ln -s emacs/* .
mv dir dir.orig
for file in * ; do install-info "$file" dir; done

@chuxubank
Copy link

chuxubank commented Feb 8, 2023

I have same problem for both emacs-plus@29 and emacs-plus@30, I recently fond emacs-mac merged a pr about it, don't know if it will help: railwaycat/homebrew-emacsmacport@16b4014
@dabrahams I just notice that you provide this fix, thanks! Could you also fix it for emacs-plus 😆

For both M1 and non M1 users:

cd $(brew --prefix)/share/info/emacs
for file in * ; do install-info "$file" dir; done

@dabrahams
Copy link

Don't think it will help, and I quote:

However, it does not deal with
the info files since those would require external program
install-info to work properly.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants