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

Avoid conflicts in emacs withpackages #14429

Merged

Conversation

samuelrivas
Copy link
Contributor

#12738 introduced a change that exposes all dependencies of a wrapped emacs in the general bin directory (same for the elisp dependencies in the general site-lisp directory).

I use emacsWithPackages to install an emacs in my env with all the packages I use, after that change I both get conflicts with installed packages and undesired binaries in my PATH.

This change moves the binaries and elisp files to a "private" directory to avoid exposing them too much.

Still, I preferred the previous implementation that just added the paths in the store to site-start, but I gather that is too slow for some users. Maybe a better solution would be to create a path in the store with links to all the dependencies and add that single path to site-start.

Things done:
  • Tested using sandboxing (nix-build --option build-use-chroot true or nix.useChroot on NixOS)
  • Built on platform(s)
    • NixOS
    • OS X
    • Linux
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Fits CONTRIBUTING.md.
More

Fixes issue #

cc @ttuegel


Please note, that points are not mandatory, but rather desired.

This is to avoid unwanted side effects when installing a wrapped emacs in the environment:

  * All executables in the dependencies become available in the user environment
  * All site-lisp binaries in the dependencies become accessible to unwrapped emacs

Also, both bin and site-lisp would generate conflicts so installing a wrapped emacs becomes really cumbersome
@mention-bot
Copy link

By analyzing the blame information on this pull request, we identified @ttuegel to be a potential reviewer

@joachifm joachifm added 0.kind: enhancement Add something new 6.topic: emacs Text editor labels Apr 3, 2016
@ttuegel
Copy link
Member

ttuegel commented Apr 4, 2016

Maybe a better solution would be to create a path in the store with links to all the dependencies and add that single path to site-start.

I agree this would be ideal, but I think this suffices for now. Thanks!

@ttuegel ttuegel merged commit c74cbb8 into NixOS:master Apr 4, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
0.kind: enhancement Add something new 6.topic: emacs Text editor
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants