HoldMyType<p><span class="h-card" translate="no"><a href="https://23.social/@alios" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>alios</span></a></span> <br>GOAL: or Isolated , interoperable env , shells by path, w/ central config cc</p><p>envs need not be interoperaple for different langs , say cc has a "devenv.lib.mkshell" for a rust tool `x` which is a runtime dep of epkgs 'ey`for rust work<br>Now If I enter this devshell with nix `develop ` and do a ` cargo install x` here <br>path of x is <br>> .devenv/state/cargo-install/bin/<br>Do note that my PWD is not ${HOME} here.<br>> But if I do a cargo install x from ${HOME} , it ll be in ~/.cargo/bin<br>Now lets say I install a melpapackages `ey` with my dotfiles' emacs.nix "emacs overlay`<br>It may be<br>`ls ~/.emacs.d/elpa/ | grep ey.elc` iff it's byte-compiled.<br> ey won't find it `x` , till you explicitly add this emacs load-path or to NIX-BUFFER's default.nix list of deps /project [This is just for the projects of 1 lang , nearly any serious work has > = 2] ,<br>or write .envrc /per project , so no global devenv/devshell. <br>Not every dir need be byte compiled <br>Possible reasons<br>While - <br>1. Nix does follow the XDG specs, Emacs does not fully follow it for its configuration and data files.<br>2. NIx Does not follow FHS hierarchy, Emacs Does.<br>3. Nix build re reproducible.<br>4. Nix is content addressed , store (hashed) paths <br>nix-instantiate --eval-only --expr '(import <nixpkgs> {}).emacs.outPath', it could be emacs or go or cargo or whatever your need, it need not have .<br>Some of your emacs data can be here. But I care bout getting deps in the path</p><p>One possible way could be to write a global devshell just for my init.el and launch it from there. But it's not easily extendable , more langs' projects ll put me back to square one.<br>Just nix-buffer seems to unsustainable <br><a href="https://mathstodon.xyz/tags/nix" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>nix</span></a> <a href="https://mathstodon.xyz/tags/emacs" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>emacs</span></a></p>