Skip to content

Instantly share code, notes, and snippets.

@ylixir
Created April 10, 2018 11:57
Show Gist options
  • Save ylixir/6aaf74b714ed5c3d19e30ee508f0af3d to your computer and use it in GitHub Desktop.
Save ylixir/6aaf74b714ed5c3d19e30ee508f0af3d to your computer and use it in GitHub Desktop.
Getting fish and javascript to play nicely with nixpkg #blog #fish

Getting rolling with nix has a much steeper learning curve than I imagined. It seems one should treat it more like learning a full programming language, rather than just a simple utility.

So progress is slow, but I have good successes. The one I'll talk about today isn't really nix related as much. Fish is a really nice shell to use, but has some serious pain points when trying integrate the thing with the rest of ones system. The reason for both of these is the same: it ditches posix compliance. In practice that means that using the friendly interactive shell and writing scripts for it is a dream. Also none of your environment like paths, etc work really, because they are configured through posix compliant shell scripts...

Of course you can setup paths oneself, and do all the other things, but it is a giant pain point, and it's difficult to do so in a cross platform way. Which means that my shell configuration in my dotfiles is useless.

This time around I took a different tack. Instead of configuring fish to be the default shell, I just made bash the default shell. Next I configured bash to exec fish when it's started interactively. This works fantastically and so far works in both manjaro and os x.

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