Hi guys, the default builder in Nixpkgs (and pretty much all other shell code in all our packages) assumes that it's interpreted by "bash". Now, we've had a lot of trouble with "bash" recently:
- crazy security vulnerabilities; - auto completion is slow, gives unexpected results, or doesn't work at all; - /bin/sh is not "bash" on many non-NixOS host systems; and - many of other problems. This makes me wonder whether maybe we should switch all shell scripting in Nixpkgs to "csh"? Wouldn't that solve a lot of problems? I've heard experts say that "csh" is generally considered superior for scripting tasks because of its more intuitive syntax. Now, the only minor obstacle is to transition the existing package base from "bash" to "csh". That wouldn't be difficult to accomplish, though. There's probably a bash2csh converter available somewhere that we could use. Of course, for consistency's sake we'd have to make "csh" the only supported user shell for accounts on NixOS machines too. We don't want our users messing with other shells. All that diversity will just make our lives harder as developers. These people will drive us crazy with bug reports on Github, complaining about how they freaky "bash" environment no longer works with "nix-shell" etc., and that's just going to be a maintenance nightmare. It's probably better to decide once and for all that Nix supports only "csh" and move on to other, more important things. Anyway, let me know that you think. Shall I prepare a pull request? Best regards, Peter _______________________________________________ nix-dev mailing list [email protected] http://lists.science.uu.nl/mailman/listinfo/nix-dev
